From 24f74b5d998a2bc3090ecbb7243add66a990d087 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=89=91=E5=8F=A4=E6=95=9B=E9=94=8B?= <3045316072@qq.com> Date: Wed, 20 Mar 2024 15:33:49 +0800 Subject: [PATCH] =?UTF-8?q?=E7=8E=AF=E5=A2=83=E9=85=8D=E7=BD=AE=20TODO?= =?UTF-8?q?=EF=BC=9A=E6=B7=BB=E5=8A=A0=E7=82=B9=E4=BA=91=E6=A8=A1=E5=9D=97?= =?UTF-8?q?=EF=BC=8C=E4=BB=BF=E7=9C=9F=E7=AE=97=E6=B3=95=E7=AE=97=E4=BE=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .idea/.gitignore | 8 + .idea/.name | 1 + .idea/FastCAE.iml | 2 + .idea/QtSettings.xml | 26 + .idea/codeStyles/Project.xml | 7 + .idea/codeStyles/codeStyleConfig.xml | 5 + .idea/misc.xml | 4 + .idea/modules.xml | 9 + .idea/vcs.xml | 7 + CMakeLists.txt | 97 +- CMakeLists.txt.user | 20 +- CMakePresets.json | 25 + CMakeUserPresets.json | 55 + ConfigFiles/Hello.png | Bin 0 -> 88894 bytes ConfigFiles/LAMPTool.qrc | 4 + ConfigFiles/OCCViewer/res/antialiasing.png | Bin 0 -> 230 bytes ConfigFiles/OCCViewer/res/cursor_rotate.png | Bin 0 -> 291 bytes ConfigFiles/OCCViewer/res/cursor_zoom.png | Bin 0 -> 245 bytes ConfigFiles/OCCViewer/res/help.png | Bin 0 -> 214 bytes ConfigFiles/OCCViewer/res/lamp.png | Bin 0 -> 1355 bytes ConfigFiles/OCCViewer/res/raytracing.png | Bin 0 -> 223 bytes ConfigFiles/OCCViewer/res/reflections.png | Bin 0 -> 217 bytes ConfigFiles/OCCViewer/res/shadows.png | Bin 0 -> 264 bytes ConfigFiles/OCCViewer/res/tool_color.png | Bin 0 -> 288 bytes ConfigFiles/OCCViewer/res/tool_delete.png | Bin 0 -> 203 bytes ConfigFiles/OCCViewer/res/tool_material.png | Bin 0 -> 293 bytes ConfigFiles/OCCViewer/res/tool_shading.png | Bin 0 -> 256 bytes .../OCCViewer/res/tool_transparency.png | Bin 0 -> 318 bytes ConfigFiles/OCCViewer/res/tool_wireframe.png | Bin 0 -> 259 bytes ConfigFiles/OCCViewer/res/view_axo.png | Bin 0 -> 392 bytes ConfigFiles/OCCViewer/res/view_back.png | Bin 0 -> 233 bytes ConfigFiles/OCCViewer/res/view_bottom.png | Bin 0 -> 233 bytes ConfigFiles/OCCViewer/res/view_comp_off.png | Bin 0 -> 199 bytes ConfigFiles/OCCViewer/res/view_comp_on.png | Bin 0 -> 180 bytes ConfigFiles/OCCViewer/res/view_fitall.png | Bin 0 -> 231 bytes ConfigFiles/OCCViewer/res/view_front.png | Bin 0 -> 238 bytes ConfigFiles/OCCViewer/res/view_left.png | Bin 0 -> 231 bytes ConfigFiles/OCCViewer/res/view_reset.png | Bin 0 -> 204 bytes ConfigFiles/OCCViewer/res/view_right.png | Bin 0 -> 230 bytes ConfigFiles/OCCViewer/res/view_top.png | Bin 0 -> 235 bytes ConfigFiles/PointCloudProcess/images/1.gif | Bin 0 -> 276082 bytes .../images/QTreeView/branch-closed.png | Bin 0 -> 328 bytes .../images/QTreeView/branch-end.png | Bin 0 -> 180 bytes .../images/QTreeView/branch-more.png | Bin 0 -> 109 bytes .../images/QTreeView/branch-open.png | Bin 0 -> 334 bytes .../images/QTreeView/vline.png | Bin 0 -> 122 bytes ConfigFiles/PointCloudProcess/images/RGB.png | Bin 0 -> 3331 bytes .../images/algorithm/DASHBOARD.png | Bin 0 -> 2785 bytes .../images/algorithm/DBSCAN.png | Bin 0 -> 2041 bytes .../images/algorithm/Histogram.png | Bin 0 -> 616 bytes .../images/algorithm/KMeans.png | Bin 0 -> 2555 bytes .../images/algorithm/binary.png | Bin 0 -> 1544 bytes .../images/algorithm/chooseMatrix.png | Bin 0 -> 2628 bytes .../images/algorithm/density.png | Bin 0 -> 1452 bytes .../images/algorithm/extract.png | Bin 0 -> 2922 bytes .../images/algorithm/filter.png | Bin 0 -> 1919 bytes .../images/algorithm/help.png | Bin 0 -> 1998 bytes .../images/algorithm/matrix.png | Bin 0 -> 1538 bytes .../images/algorithm/more.png | Bin 0 -> 2259 bytes .../images/algorithm/nihe.png | Bin 0 -> 2180 bytes .../images/algorithm/person.png | Bin 0 -> 1575 bytes .../images/algorithm/pingjie.png | Bin 0 -> 1853 bytes .../images/algorithm/transform.png | Bin 0 -> 2478 bytes .../images/algorithm/tree.png | Bin 0 -> 3256 bytes ConfigFiles/PointCloudProcess/images/back.png | Bin 0 -> 507 bytes .../PointCloudProcess/images/bottom.png | Bin 0 -> 475 bytes .../PointCloudProcess/images/camera.png | Bin 0 -> 4517 bytes .../PointCloudProcess/images/ccAddConstSF.png | Bin 0 -> 119 bytes .../PointCloudProcess/images/ccAlign.png | Bin 0 -> 185 bytes .../images/ccBilateralFilter.png | Bin 0 -> 630 bytes .../PointCloudProcess/images/ccCCExtract.png | Bin 0 -> 335 bytes .../images/ccCenteredPerspective32.png | Bin 0 -> 866 bytes .../images/ccClippingBox.png | Bin 0 -> 917 bytes .../images/ccClippingBoxMultExport.png | Bin 0 -> 1218 bytes .../images/ccClippingBoxSingleExport.png | Bin 0 -> 1107 bytes .../PointCloudProcess/images/ccClone.png | Bin 0 -> 2049 bytes .../images/ccCloudCloudDistance.png | Bin 0 -> 667 bytes .../images/ccCloudMeshDistance.png | Bin 0 -> 763 bytes .../images/ccCloudPrimitiveDistance.png | Bin 0 -> 3896 bytes .../images/ccComputeStat.png | Bin 0 -> 315 bytes .../PointCloudProcess/images/ccConsole.png | Bin 0 -> 1413 bytes .../PointCloudProcess/images/ccDelete.png | Bin 0 -> 544 bytes .../PointCloudProcess/images/ccDeleteSF.png | Bin 0 -> 484 bytes .../PointCloudProcess/images/ccExit.png | Bin 0 -> 387 bytes .../images/ccFilterByValue.png | Bin 0 -> 341 bytes .../PointCloudProcess/images/ccFullScreen.png | Bin 0 -> 198 bytes .../images/ccGaussianFilter.png | Bin 0 -> 407 bytes .../PointCloudProcess/images/ccGear.png | Bin 0 -> 704 bytes .../PointCloudProcess/images/ccGlobalZoom.png | Bin 0 -> 131 bytes .../PointCloudProcess/images/ccGradient.png | Bin 0 -> 276 bytes .../PointCloudProcess/images/ccGrid.png | Bin 0 -> 253 bytes .../PointCloudProcess/images/ccHistogram.png | Bin 0 -> 267 bytes .../images/ccInteractiveTransformation.png | Bin 0 -> 165 bytes .../PointCloudProcess/images/ccLevel.png | Bin 0 -> 651 bytes .../images/ccLightParams.png | Bin 0 -> 331 bytes .../PointCloudProcess/images/ccMerge.png | Bin 0 -> 292 bytes .../PointCloudProcess/images/ccMinus.png | Bin 0 -> 256 bytes .../PointCloudProcess/images/ccOpen.png | Bin 0 -> 1933 bytes .../images/ccOrthoMode32.png | Bin 0 -> 654 bytes .../PointCloudProcess/images/ccPencil.png | Bin 0 -> 623 bytes .../PointCloudProcess/images/ccPickCenter.png | Bin 0 -> 141 bytes .../images/ccPickCenterAuto.png | Bin 0 -> 396 bytes .../PointCloudProcess/images/ccPivotAuto.png | Bin 0 -> 1082 bytes .../PointCloudProcess/images/ccPivotOff.png | Bin 0 -> 1024 bytes .../PointCloudProcess/images/ccPivotOn.png | Bin 0 -> 1048 bytes .../PointCloudProcess/images/ccPlus.png | Bin 0 -> 687 bytes .../images/ccPointListPicking.png | Bin 0 -> 497 bytes .../images/ccPointPicking.png | Bin 0 -> 1167 bytes .../PointCloudProcess/images/ccPointSize.png | Bin 0 -> 203 bytes .../PointCloudProcess/images/ccRegister.png | Bin 0 -> 464 bytes .../PointCloudProcess/images/ccSORFilter.png | Bin 0 -> 877 bytes .../images/ccSampleCloud.png | Bin 0 -> 151 bytes .../images/ccSamplePoints.png | Bin 0 -> 988 bytes .../PointCloudProcess/images/ccSave.png | Bin 0 -> 1126 bytes .../images/ccSaveProject.png | Bin 0 -> 1743 bytes .../PointCloudProcess/images/ccSegment.png | Bin 0 -> 259 bytes .../images/ccSfArithmetic.png | Bin 0 -> 322 bytes .../PointCloudProcess/images/ccStatTest.png | Bin 0 -> 660 bytes .../PointCloudProcess/images/ccStereo.png | Bin 0 -> 1110 bytes .../PointCloudProcess/images/ccSunLight.png | Bin 0 -> 1690 bytes .../PointCloudProcess/images/ccSwapUpDown.png | Bin 0 -> 1440 bytes .../images/ccTracePolyline.png | Bin 0 -> 2537 bytes .../images/ccTracePolyline.svg | 79 + .../PointCloudProcess/images/ccUnstack.png | Bin 0 -> 2785 bytes .../PointCloudProcess/images/ccViewIso1.png | Bin 0 -> 1363 bytes .../PointCloudProcess/images/ccViewIso2.png | Bin 0 -> 1391 bytes .../PointCloudProcess/images/ccViewXneg.png | Bin 0 -> 314 bytes .../PointCloudProcess/images/ccViewXpos.png | Bin 0 -> 321 bytes .../PointCloudProcess/images/ccViewYneg.png | Bin 0 -> 305 bytes .../PointCloudProcess/images/ccViewYpos.png | Bin 0 -> 307 bytes .../PointCloudProcess/images/ccViewZneg.png | Bin 0 -> 286 bytes .../PointCloudProcess/images/ccViewZpos.png | Bin 0 -> 291 bytes .../images/ccViewerBasedPerspective32.png | Bin 0 -> 1143 bytes .../PointCloudProcess/images/ccZoomIn.png | Bin 0 -> 1610 bytes .../PointCloudProcess/images/clipboard.png | Bin 0 -> 360 bytes .../PointCloudProcess/images/color.png | Bin 0 -> 117 bytes .../PointCloudProcess/images/coodinate.png | Bin 0 -> 982 bytes .../images/dbAreaLabelSymbol.png | Bin 0 -> 294 bytes .../images/dbCalibratedImageSymbol.png | Bin 0 -> 313 bytes .../images/dbCamSensorSymbol.png | Bin 0 -> 427 bytes .../images/dbCloudSymbol.png | Bin 0 -> 302 bytes .../images/dbCloudSymbolLocked.png | Bin 0 -> 308 bytes .../images/dbContainerSymbol.png | Bin 0 -> 297 bytes .../images/dbContainerSymbolLocked.png | Bin 0 -> 362 bytes .../images/dbGBLSensorSymbol.png | Bin 0 -> 548 bytes .../images/dbHObjectSymbol.png | Bin 0 -> 1073 bytes .../images/dbHObjectSymbolLocked.png | Bin 0 -> 1060 bytes .../images/dbImageSymbol.png | Bin 0 -> 471 bytes .../images/dbLabelSymbol.png | Bin 0 -> 688 bytes .../PointCloudProcess/images/dbLockSymbol.png | Bin 0 -> 178 bytes .../images/dbMaterialSymbol.png | Bin 0 -> 522 bytes .../PointCloudProcess/images/dbMeshSymbol.png | Bin 0 -> 455 bytes .../images/dbMeshSymbolLocked.png | Bin 0 -> 409 bytes .../images/dbMiscGeomSymbol.png | Bin 0 -> 466 bytes .../images/dbMiscGeomSymbolLocked.png | Bin 0 -> 419 bytes .../images/dbOctreeSymbol.png | Bin 0 -> 368 bytes .../images/dbOctreeSymbolLocked.png | Bin 0 -> 364 bytes .../images/dbPolylineSymbol.png | Bin 0 -> 447 bytes .../images/dbSubMeshSymbol.png | Bin 0 -> 747 bytes .../images/dbSubMeshSymbolLocked.png | Bin 0 -> 782 bytes .../images/dbViewportSymbol.png | Bin 0 -> 1011 bytes .../PointCloudProcess/images/donate.png | Bin 0 -> 13517 bytes .../PointCloudProcess/images/exportIcon.png | Bin 0 -> 2591 bytes .../PointCloudProcess/images/files/CSV.png | Bin 0 -> 1452 bytes .../PointCloudProcess/images/files/add.png | Bin 0 -> 1832 bytes .../images/files/bgColor.png | Bin 0 -> 903 bytes .../PointCloudProcess/images/files/cloud.png | Bin 0 -> 2357 bytes .../PointCloudProcess/images/files/cloud2.png | Bin 0 -> 1960 bytes .../PointCloudProcess/images/files/copy.png | Bin 0 -> 695 bytes .../PointCloudProcess/images/files/cut.png | Bin 0 -> 2305 bytes .../PointCloudProcess/images/files/log.png | Bin 0 -> 1734 bytes .../PointCloudProcess/images/files/new1.png | Bin 0 -> 1438 bytes .../PointCloudProcess/images/files/new2.png | Bin 0 -> 642 bytes .../PointCloudProcess/images/files/paste.png | Bin 0 -> 741 bytes .../images/files/pointCloud.png | Bin 0 -> 2681 bytes .../PointCloudProcess/images/files/search.png | Bin 0 -> 2148 bytes .../images/files/snapshot.png | Bin 0 -> 1712 bytes .../PointCloudProcess/images/files/star.png | Bin 0 -> 2294 bytes .../PointCloudProcess/images/files/txt.png | Bin 0 -> 1359 bytes .../PointCloudProcess/images/front.png | Bin 0 -> 507 bytes .../PointCloudProcess/images/gamepad.png | Bin 0 -> 601 bytes .../PointCloudProcess/images/gearIcon.png | Bin 0 -> 704 bytes ConfigFiles/PointCloudProcess/images/grey.png | Bin 0 -> 2024 bytes .../PointCloudProcess/images/hashtag.png | Bin 0 -> 301 bytes .../PointCloudProcess/images/ic-redo.png | Bin 0 -> 1366 bytes .../PointCloudProcess/images/ic-undo.png | Bin 0 -> 1355 bytes .../PointCloudProcess/images/icon/cc_icon.ico | Bin 0 -> 39839 bytes .../PointCloudProcess/images/icon/cc_icon.rc | 1 + .../PointCloudProcess/images/icon/cc_icon.svg | 9 + .../images/icon/cc_icon_16.png | Bin 0 -> 590 bytes .../images/icon/cc_icon_256.png | Bin 0 -> 9089 bytes .../images/icon/cc_icon_32.png | Bin 0 -> 1046 bytes .../images/icon/cc_icon_64.png | Bin 0 -> 2041 bytes .../images/icon/cc_viewer_icon.svg | 12 + .../images/icon/cc_viewer_icon_16.png | Bin 0 -> 725 bytes .../images/icon/cc_viewer_icon_256.png | Bin 0 -> 13095 bytes .../images/icon/cc_viewer_icon_32.png | Bin 0 -> 1572 bytes .../images/icon/cc_viewer_icon_64.png | Bin 0 -> 3164 bytes .../PointCloudProcess/images/im3DxLogo.png | Bin 0 -> 2379 bytes .../PointCloudProcess/images/imLogoV2Qt.png | Bin 0 -> 21785 bytes .../PointCloudProcess/images/interactors.png | Bin 0 -> 373 bytes ConfigFiles/PointCloudProcess/images/keda.ico | Bin 0 -> 67646 bytes ConfigFiles/PointCloudProcess/images/left.png | Bin 0 -> 521 bytes ConfigFiles/PointCloudProcess/images/lock.png | Bin 0 -> 1533 bytes .../PointCloudProcess/images/mapIcon.png | Bin 0 -> 17559 bytes .../images/material/3DxLogo.png | Bin 0 -> 2379 bytes .../images/material/Raster_grid.pptx | Bin 0 -> 38704 bytes .../images/material/ccCenteredPerspective.svg | 199 + .../images/material/ccClippingBox.svg | 242 + .../images/material/ccClippingBoxBase.svg | 242 + .../images/material/ccOrthoMode.svg | 192 + .../images/material/ccOrthoSections.svg | 97 + .../images/material/ccPivot.svg | 223 + .../images/material/ccSectionExtraction.svg | 211 + .../images/material/ccViewIso1.svg | 186 + .../images/material/ccViewIso2.svg | 186 + .../material/ccViewerBasedPerspective.svg | 226 + .../PointCloudProcess/images/monitor.svg | 1 + .../PointCloudProcess/images/noFilter.png | Bin 0 -> 1481 bytes .../PointCloudProcess/images/nvidia.png | Bin 0 -> 1514 bytes .../PointCloudProcess/images/oculus.png | Bin 0 -> 321 bytes ConfigFiles/PointCloudProcess/images/open.png | Bin 0 -> 1408 bytes .../images/orthoSections.png | Bin 0 -> 264 bytes .../PointCloudProcess/images/photo-camera.svg | 1 + .../PointCloudProcess/images/primBox.gif | Bin 0 -> 92 bytes .../PointCloudProcess/images/primCone.gif | Bin 0 -> 92 bytes .../PointCloudProcess/images/primCylinder.gif | Bin 0 -> 93 bytes .../PointCloudProcess/images/primDish.gif | Bin 0 -> 82 bytes .../PointCloudProcess/images/primPlane.gif | Bin 0 -> 82 bytes .../PointCloudProcess/images/primSphere.gif | Bin 0 -> 96 bytes .../PointCloudProcess/images/primTorus.gif | Bin 0 -> 82 bytes .../PointCloudProcess/images/qCompass.png | Bin 0 -> 15651 bytes .../PointCloudProcess/images/raster_grid.jpg | Bin 0 -> 32534 bytes ConfigFiles/PointCloudProcess/images/redo.png | Bin 0 -> 937 bytes .../PointCloudProcess/images/reset.png | Bin 0 -> 2013 bytes .../PointCloudProcess/images/restore.png | Bin 0 -> 970 bytes .../PointCloudProcess/images/right.png | Bin 0 -> 509 bytes .../PointCloudProcess/images/rotate0.png | Bin 0 -> 2865 bytes .../PointCloudProcess/images/rotate180.png | Bin 0 -> 2373 bytes .../PointCloudProcess/images/rotate270.png | Bin 0 -> 2537 bytes .../PointCloudProcess/images/rotate90.png | Bin 0 -> 2587 bytes .../PointCloudProcess/images/search.svg | 1 + .../images/sectionExtraction.png | Bin 0 -> 242 bytes .../PointCloudProcess/images/seting.png | Bin 0 -> 3092 bytes .../PointCloudProcess/images/smallBasket.png | Bin 0 -> 679 bytes .../PointCloudProcess/images/smallCSVFile.png | Bin 0 -> 421 bytes .../PointCloudProcess/images/smallCancel.png | Bin 0 -> 192 bytes .../PointCloudProcess/images/smallPause.png | Bin 0 -> 229 bytes .../images/smallPointDistance.png | Bin 0 -> 263 bytes .../images/smallPointProperties.png | Bin 0 -> 587 bytes .../images/smallPointsAngle.png | Bin 0 -> 333 bytes .../images/smallPolygonSelect.png | Bin 0 -> 478 bytes .../images/smallRectangleSelect.png | Bin 0 -> 294 bytes .../PointCloudProcess/images/smallReset.png | Bin 0 -> 193 bytes .../PointCloudProcess/images/smallRevert.png | Bin 0 -> 349 bytes .../images/smallSegmentIn.png | Bin 0 -> 303 bytes .../images/smallSegmentOut.png | Bin 0 -> 307 bytes .../PointCloudProcess/images/smallSphere.png | Bin 0 -> 537 bytes .../PointCloudProcess/images/smallTrash.png | Bin 0 -> 454 bytes .../images/smallValidate.png | Bin 0 -> 257 bytes .../PointCloudProcess/images/square.png | Bin 0 -> 189 bytes .../PointCloudProcess/images/store.png | Bin 0 -> 979 bytes .../images/theme/snowman.png | Bin 0 -> 2836 bytes .../images/typeGrayColor.png | Bin 0 -> 176 bytes .../PointCloudProcess/images/typeNormal.png | Bin 0 -> 560 bytes .../images/typePositiveSF.png | Bin 0 -> 293 bytes .../images/typeQuaternion.png | Bin 0 -> 484 bytes .../images/typeRgbCcolor.png | Bin 0 -> 787 bytes .../PointCloudProcess/images/typeSF.png | Bin 0 -> 290 bytes .../images/typeXCoordinate.png | Bin 0 -> 153 bytes .../images/typeYCoordinate.png | Bin 0 -> 145 bytes .../images/typeZCoordinate.png | Bin 0 -> 148 bytes ConfigFiles/PointCloudProcess/images/undo.png | Bin 0 -> 990 bytes .../PointCloudProcess/images/unfoldSmall.png | Bin 0 -> 142 bytes ConfigFiles/PointCloudProcess/images/up.png | Bin 0 -> 487 bytes .../PointCloudProcess/images/zoomin.png | Bin 0 -> 2339 bytes .../PointCloudProcess/images/zoomout.png | Bin 0 -> 2399 bytes ConfigFiles/QUI/HEADERIMAGE.bmp | Bin 0 -> 64926 bytes ConfigFiles/QUI/UNWELCOMEFINISHPAGE.bmp | Bin 0 -> 64926 bytes ConfigFiles/QUI/WELCOMEFINISHPAGE.bmp | Bin 0 -> 64926 bytes ConfigFiles/QUI/beauty/Sticker_Star.png | Bin 0 -> 104466 bytes ConfigFiles/QUI/beauty/btn_close.png | Bin 0 -> 218 bytes ConfigFiles/QUI/beauty/btn_max.png | Bin 0 -> 116 bytes ConfigFiles/QUI/beauty/btn_min.png | Bin 0 -> 116 bytes ConfigFiles/QUI/beauty/btn_normal.png | Bin 0 -> 319 bytes ConfigFiles/QUI/beauty/checked.png | Bin 0 -> 214 bytes ConfigFiles/QUI/beauty/close_normal.png | Bin 0 -> 247 bytes ConfigFiles/QUI/beauty/close_pressed.png | Bin 0 -> 272 bytes ConfigFiles/QUI/beauty/dock_title.png | Bin 0 -> 406 bytes ConfigFiles/QUI/beauty/max_normal.png | Bin 0 -> 133 bytes ConfigFiles/QUI/beauty/max_pressed.png | Bin 0 -> 129 bytes ConfigFiles/QUI/beauty/min_normal.png | Bin 0 -> 120 bytes ConfigFiles/QUI/beauty/min_pressed.png | Bin 0 -> 115 bytes ConfigFiles/QUI/beauty/qianfan.qss | 353 + ConfigFiles/QUI/beauty/radio_selected.png | Bin 0 -> 475 bytes ConfigFiles/QUI/beauty/radio_unselected.png | Bin 0 -> 377 bytes ConfigFiles/QUI/beauty/restore_normal.png | Bin 0 -> 152 bytes ConfigFiles/QUI/beauty/restore_pressed.png | Bin 0 -> 160 bytes ConfigFiles/QUI/beauty/toolbar_bk.png | Bin 0 -> 122 bytes ConfigFiles/QUI/beauty/tree_expand.png | Bin 0 -> 208 bytes ConfigFiles/QUI/beauty/tree_item_checked.png | Bin 0 -> 342 bytes .../QUI/beauty/tree_item_unchecked.png | Bin 0 -> 127 bytes ConfigFiles/QUI/beauty/tree_normal.png | Bin 0 -> 240 bytes ConfigFiles/QUI/geometry/FitAll.png | Bin 0 -> 1274 bytes ConfigFiles/QUI/geometry/Home.png | Bin 0 -> 1223 bytes ConfigFiles/QUI/geometry/Rotate.png | Bin 0 -> 1291 bytes ConfigFiles/QUI/geometry/Zoom.png | Bin 0 -> 1154 bytes ConfigFiles/QUI/geometry/add.png | Bin 0 -> 462 bytes ConfigFiles/QUI/geometry/box.png | Bin 0 -> 1328 bytes ConfigFiles/QUI/geometry/chamfer.png | Bin 0 -> 1730 bytes ConfigFiles/QUI/geometry/common.png | Bin 0 -> 1213 bytes ConfigFiles/QUI/geometry/cone.png | Bin 0 -> 1802 bytes ConfigFiles/QUI/geometry/cut.png | Bin 0 -> 1240 bytes ConfigFiles/QUI/geometry/cylinder.png | Bin 0 -> 1511 bytes ConfigFiles/QUI/geometry/edgeDisplay.png | Bin 0 -> 1458 bytes ConfigFiles/QUI/geometry/extrude.png | Bin 0 -> 1423 bytes ConfigFiles/QUI/geometry/extrusion.png | Bin 0 -> 1518 bytes ConfigFiles/QUI/geometry/face.png | Bin 0 -> 1140 bytes ConfigFiles/QUI/geometry/facedisplay.png | Bin 0 -> 1481 bytes ConfigFiles/QUI/geometry/fillet.png | Bin 0 -> 1766 bytes ConfigFiles/QUI/geometry/fuse.png | Bin 0 -> 1195 bytes ConfigFiles/QUI/geometry/geoComponent.png | Bin 0 -> 1835 bytes ConfigFiles/QUI/geometry/geoFillHole.png | Bin 0 -> 1376 bytes ConfigFiles/QUI/geometry/geoFixSurface.png | Bin 0 -> 1515 bytes ConfigFiles/QUI/geometry/geoMeasure.png | Bin 0 -> 1208 bytes ConfigFiles/QUI/geometry/geoRemoveFace.png | Bin 0 -> 1509 bytes ConfigFiles/QUI/geometry/geoSSplit.png | Bin 0 -> 1119 bytes ConfigFiles/QUI/geometry/helix.png | Bin 0 -> 412 bytes ConfigFiles/QUI/geometry/lamp.png | Bin 0 -> 1609 bytes ConfigFiles/QUI/geometry/line.png | Bin 0 -> 1160 bytes ConfigFiles/QUI/geometry/loft.png | Bin 0 -> 1548 bytes ConfigFiles/QUI/geometry/matrix.png | Bin 0 -> 1121 bytes ConfigFiles/QUI/geometry/mirror.png | Bin 0 -> 1479 bytes ConfigFiles/QUI/geometry/move.png | Bin 0 -> 1254 bytes ConfigFiles/QUI/geometry/point.png | Bin 0 -> 1106 bytes ConfigFiles/QUI/geometry/pointDisplay.png | Bin 0 -> 1486 bytes ConfigFiles/QUI/geometry/redo.png | Bin 0 -> 1367 bytes ConfigFiles/QUI/geometry/remove.png | Bin 0 -> 1426 bytes ConfigFiles/QUI/geometry/revolve.png | Bin 0 -> 1464 bytes ConfigFiles/QUI/geometry/select.png | Bin 0 -> 702 bytes ConfigFiles/QUI/geometry/selectbody.png | Bin 0 -> 1662 bytes ConfigFiles/QUI/geometry/selectface.png | Bin 0 -> 1309 bytes ConfigFiles/QUI/geometry/selectpoint.png | Bin 0 -> 1316 bytes ConfigFiles/QUI/geometry/selectwire.png | Bin 0 -> 1489 bytes ConfigFiles/QUI/geometry/sphere.png | Bin 0 -> 1931 bytes ConfigFiles/QUI/geometry/split.png | Bin 0 -> 389 bytes ConfigFiles/QUI/geometry/sweep.png | Bin 0 -> 1657 bytes ConfigFiles/QUI/geometry/torus.png | Bin 0 -> 2176 bytes ConfigFiles/QUI/geometry/undo.png | Bin 0 -> 1238 bytes ConfigFiles/QUI/geometry/variableFillet.png | Bin 0 -> 1907 bytes ConfigFiles/QUI/geometry/wedge.png | Bin 0 -> 827 bytes .../QUI/icon/FastCAEFrame.png | Bin ConfigFiles/QUI/icon/Plugin_ava.png | Bin 0 -> 736 bytes ConfigFiles/QUI/icon/Plugin_ins.png | Bin 0 -> 886 bytes ConfigFiles/QUI/icon/about_us.png | Bin 0 -> 991 bytes ConfigFiles/QUI/icon/acce.png | Bin 0 -> 538 bytes ConfigFiles/QUI/icon/angle.png | Bin 0 -> 691 bytes ConfigFiles/QUI/icon/bc.png | Bin 0 -> 458 bytes ConfigFiles/QUI/icon/boxCell.png | Bin 0 -> 680 bytes ConfigFiles/QUI/icon/boxNode.png | Bin 0 -> 531 bytes ConfigFiles/QUI/icon/chinese_language.png | Bin 0 -> 525 bytes ConfigFiles/QUI/icon/counter.png | Bin 0 -> 1429 bytes ConfigFiles/QUI/icon/createNew.png | Bin 0 -> 513 bytes ConfigFiles/QUI/icon/createSet.png | Bin 0 -> 602 bytes ConfigFiles/QUI/icon/createSketch.png | Bin 0 -> 621 bytes ConfigFiles/QUI/icon/curve.png | Bin 0 -> 1179 bytes ConfigFiles/QUI/icon/datumPlane.png | Bin 0 -> 534 bytes ConfigFiles/QUI/icon/desCase.png | Bin 0 -> 31673 bytes ConfigFiles/QUI/icon/desGeo.png | Bin 0 -> 18151 bytes ConfigFiles/QUI/icon/desMesh.png | Bin 0 -> 66867 bytes ConfigFiles/QUI/icon/eleset.png | Bin 0 -> 590 bytes ConfigFiles/QUI/icon/english_language.png | Bin 0 -> 532 bytes ConfigFiles/QUI/icon/execScript.png | Bin 0 -> 646 bytes ConfigFiles/QUI/icon/expandL1.png | Bin 0 -> 208 bytes ConfigFiles/QUI/icon/exportGeometry.png | Bin 0 -> 753 bytes ConfigFiles/QUI/icon/exportMesh.png | Bin 0 -> 461 bytes ConfigFiles/QUI/icon/face.png | Bin 0 -> 572 bytes ConfigFiles/QUI/icon/faceWithEdge.png | Bin 0 -> 582 bytes ConfigFiles/QUI/icon/family.png | Bin 0 -> 948 bytes ConfigFiles/QUI/icon/far.png | Bin 0 -> 504 bytes ConfigFiles/QUI/icon/fit.png | Bin 0 -> 562 bytes ConfigFiles/QUI/icon/fix.png | Bin 0 -> 499 bytes ConfigFiles/QUI/icon/fulid.png | Bin 0 -> 543 bytes ConfigFiles/QUI/icon/geometry.png | Bin 0 -> 538 bytes ConfigFiles/QUI/icon/graphOption.png | Bin 0 -> 1085 bytes ConfigFiles/QUI/icon/help.png | Bin 0 -> 382 bytes ConfigFiles/QUI/icon/icon.png | Bin 0 -> 11584 bytes ConfigFiles/QUI/icon/importGeometry.png | Bin 0 -> 754 bytes ConfigFiles/QUI/icon/importMesh.png | Bin 0 -> 457 bytes ConfigFiles/QUI/icon/inlet.png | Bin 0 -> 588 bytes ConfigFiles/QUI/icon/iso.png | Bin 0 -> 654 bytes ConfigFiles/QUI/icon/language.png | Bin 0 -> 1298 bytes ConfigFiles/QUI/icon/material.png | Bin 0 -> 768 bytes ConfigFiles/QUI/icon/mesh.png | Bin 0 -> 393 bytes ConfigFiles/QUI/icon/meshChecking.png | Bin 0 -> 796 bytes ConfigFiles/QUI/icon/meshComponent.png | Bin 0 -> 1011 bytes ConfigFiles/QUI/icon/meshFilter.png | Bin 0 -> 756 bytes ConfigFiles/QUI/icon/meshFluid.png | Bin 0 -> 952 bytes ConfigFiles/QUI/icon/meshmodeling.png | Bin 0 -> 886 bytes ConfigFiles/QUI/icon/monitor.png | Bin 0 -> 614 bytes ConfigFiles/QUI/icon/near.png | Bin 0 -> 503 bytes ConfigFiles/QUI/icon/node.png | Bin 0 -> 555 bytes ConfigFiles/QUI/icon/nodeset.png | Bin 0 -> 782 bytes ConfigFiles/QUI/icon/normalL1.png | Bin 0 -> 240 bytes ConfigFiles/QUI/icon/open.png | Bin 0 -> 625 bytes ConfigFiles/QUI/icon/outlet.png | Bin 0 -> 584 bytes ConfigFiles/QUI/icon/physics.png | Bin 0 -> 265 bytes ConfigFiles/QUI/icon/pluginManager.png | Bin 0 -> 618 bytes ConfigFiles/QUI/icon/post.png | Bin 0 -> 1506 bytes ConfigFiles/QUI/icon/press.png | Bin 0 -> 335 bytes ConfigFiles/QUI/icon/ruler.png | Bin 0 -> 1055 bytes ConfigFiles/QUI/icon/save.png | Bin 0 -> 421 bytes ConfigFiles/QUI/icon/saveAnimate.png | Bin 0 -> 823 bytes ConfigFiles/QUI/icon/saveAs.png | Bin 0 -> 585 bytes ConfigFiles/QUI/icon/saveImage.png | Bin 0 -> 736 bytes ConfigFiles/QUI/icon/saveScript.png | Bin 0 -> 539 bytes ConfigFiles/QUI/icon/selectElement.png | Bin 0 -> 548 bytes ConfigFiles/QUI/icon/selectGeo.png | Bin 0 -> 561 bytes ConfigFiles/QUI/icon/selectNode.png | Bin 0 -> 403 bytes ConfigFiles/QUI/icon/selectOff.png | Bin 0 -> 999 bytes ConfigFiles/QUI/icon/setting.png | Bin 0 -> 583 bytes ConfigFiles/QUI/icon/sketchArc.png | Bin 0 -> 399 bytes ConfigFiles/QUI/icon/sketchCircle.png | Bin 0 -> 471 bytes ConfigFiles/QUI/icon/sketchLine.png | Bin 0 -> 344 bytes ConfigFiles/QUI/icon/sketchPolyLine.png | Bin 0 -> 431 bytes ConfigFiles/QUI/icon/sketchRectangle.png | Bin 0 -> 231 bytes ConfigFiles/QUI/icon/sketchSpline.png | Bin 0 -> 445 bytes ConfigFiles/QUI/icon/solidMesh.png | Bin 0 -> 802 bytes ConfigFiles/QUI/icon/solumationsetting.png | Bin 0 -> 486 bytes ConfigFiles/QUI/icon/solve.png | Bin 0 -> 319 bytes ConfigFiles/QUI/icon/speed.png | Bin 0 -> 368 bytes ConfigFiles/QUI/icon/stop.png | Bin 0 -> 510 bytes ConfigFiles/QUI/icon/streamline.png | Bin 0 -> 929 bytes ConfigFiles/QUI/icon/surface.png | Bin 0 -> 538 bytes ConfigFiles/QUI/icon/surfaceMesh.png | Bin 0 -> 1487 bytes ConfigFiles/QUI/icon/surfaceWithEdge.png | Bin 0 -> 609 bytes ConfigFiles/QUI/icon/symmetry.png | Bin 0 -> 646 bytes ConfigFiles/QUI/icon/tempure.png | Bin 0 -> 489 bytes ConfigFiles/QUI/icon/userguidance.png | Bin 0 -> 470 bytes ConfigFiles/QUI/icon/vector.png | Bin 0 -> 1047 bytes ConfigFiles/QUI/icon/wall.png | Bin 0 -> 806 bytes ConfigFiles/QUI/icon/water_drop.gif | Bin 0 -> 90736 bytes ConfigFiles/QUI/icon/wireFrame.png | Bin 0 -> 422 bytes ConfigFiles/QUI/icon/workdir.png | Bin 0 -> 443 bytes ConfigFiles/QUI/icon/xMinus.png | Bin 0 -> 462 bytes ConfigFiles/QUI/icon/xPlus.png | Bin 0 -> 469 bytes ConfigFiles/QUI/icon/yMinus.png | Bin 0 -> 455 bytes ConfigFiles/QUI/icon/yPlus.png | Bin 0 -> 448 bytes ConfigFiles/QUI/icon/zMinus.png | Bin 0 -> 485 bytes ConfigFiles/QUI/icon/zPlus.png | Bin 0 -> 481 bytes ConfigFiles/QUI/main.ico | Bin 0 -> 67646 bytes ConfigFiles/QUI/main.rc | 32 + ConfigFiles/QUI/post/Reflection.png | Bin 0 -> 657 bytes ConfigFiles/QUI/post/ScalarBar.png | Bin 0 -> 1429 bytes ConfigFiles/QUI/post/back.png | Bin 0 -> 428 bytes ConfigFiles/QUI/post/calculator.png | Bin 0 -> 402 bytes ConfigFiles/QUI/post/clip.png | Bin 0 -> 1200 bytes ConfigFiles/QUI/post/counter.png | Bin 0 -> 1429 bytes ConfigFiles/QUI/post/editColor.png | Bin 0 -> 1506 bytes ConfigFiles/QUI/post/end.png | Bin 0 -> 697 bytes ConfigFiles/QUI/post/first.png | Bin 0 -> 721 bytes ConfigFiles/QUI/post/fit.png | Bin 0 -> 562 bytes ConfigFiles/QUI/post/front.png | Bin 0 -> 415 bytes ConfigFiles/QUI/post/glyph.png | Bin 0 -> 1109 bytes ConfigFiles/QUI/post/isocurve.png | Bin 0 -> 2417 bytes ConfigFiles/QUI/post/isosurf.png | Bin 0 -> 1402 bytes ConfigFiles/QUI/post/last.png | Bin 0 -> 597 bytes ConfigFiles/QUI/post/next.png | Bin 0 -> 603 bytes ConfigFiles/QUI/post/open.png | Bin 0 -> 1187 bytes ConfigFiles/QUI/post/point.png | Bin 0 -> 204 bytes ConfigFiles/QUI/post/post.png | Bin 0 -> 1506 bytes ConfigFiles/QUI/post/previous.png | Bin 0 -> 597 bytes ConfigFiles/QUI/post/rep_point.png | Bin 0 -> 879 bytes ConfigFiles/QUI/post/rep_surface.png | Bin 0 -> 538 bytes ConfigFiles/QUI/post/rep_surfaceWithEdge.png | Bin 0 -> 609 bytes ConfigFiles/QUI/post/rep_wireFrame.png | Bin 0 -> 463 bytes ConfigFiles/QUI/post/run.png | Bin 0 -> 632 bytes ConfigFiles/QUI/post/saveImage.png | Bin 0 -> 736 bytes ConfigFiles/QUI/post/slice.png | Bin 0 -> 1075 bytes ConfigFiles/QUI/post/stop.png | Bin 0 -> 599 bytes ConfigFiles/QUI/post/streamline.png | Bin 0 -> 929 bytes ConfigFiles/QUI/post/up.png | Bin 0 -> 550 bytes ConfigFiles/QUI/post/val_on_cell.png | Bin 0 -> 590 bytes ConfigFiles/QUI/post/val_on_point.png | Bin 0 -> 782 bytes ConfigFiles/QUI/post/vector.png | Bin 0 -> 1109 bytes ConfigFiles/QUI/post/video.png | Bin 0 -> 472 bytes ConfigFiles/QUI/tools/XMaterial.ico | Bin 0 -> 3646 bytes ConfigFiles/QUI/uninstall.ico | Bin 0 -> 67646 bytes ConfigFiles/QUI/window/2dplot.png | Bin 0 -> 651 bytes ConfigFiles/QUI/window/3dgraph.png | Bin 0 -> 822 bytes ConfigFiles/QUI/window/preWindow.png | Bin 0 -> 727 bytes ConfigFiles/QUI/window/startpage.png | Bin 0 -> 368 bytes ConfigFiles/WBCLFZSystemModule.qrc | 91 + ConfigFiles/icons/application_go.png | Bin 0 -> 634 bytes ConfigFiles/icons/application_link.png | Bin 0 -> 701 bytes ConfigFiles/icons/application_side_list.png | Bin 0 -> 510 bytes ConfigFiles/icons/bullet_arrow_bottom.png | Bin 0 -> 229 bytes ConfigFiles/icons/bullet_arrow_down.png | Bin 0 -> 201 bytes ConfigFiles/icons/bullet_arrow_top.png | Bin 0 -> 230 bytes ConfigFiles/icons/bullet_arrow_up.png | Bin 0 -> 201 bytes ConfigFiles/icons/cancel.png | Bin 0 -> 587 bytes ConfigFiles/icons/chart_curve.png | Bin 0 -> 710 bytes ConfigFiles/icons/clear_filters.png | Bin 0 -> 791 bytes ConfigFiles/icons/clear_sorting.png | Bin 0 -> 558 bytes ConfigFiles/icons/cog.png | Bin 0 -> 512 bytes ConfigFiles/icons/cog_go.png | Bin 0 -> 859 bytes ConfigFiles/icons/color_swatch.png | Bin 0 -> 209 bytes ConfigFiles/icons/comment_block.png | Bin 0 -> 210 bytes ConfigFiles/icons/cross.png | Bin 0 -> 655 bytes ConfigFiles/icons/database.png | Bin 0 -> 390 bytes ConfigFiles/icons/database_add.png | Bin 0 -> 658 bytes ConfigFiles/icons/database_go.png | Bin 0 -> 698 bytes ConfigFiles/icons/database_link.png | Bin 0 -> 679 bytes ConfigFiles/icons/database_refresh.png | Bin 0 -> 770 bytes ConfigFiles/icons/database_save.png | Bin 0 -> 755 bytes ConfigFiles/icons/document-link.png | Bin 0 -> 853 bytes ConfigFiles/icons/document-open.png | Bin 0 -> 672 bytes ConfigFiles/icons/edit_cond_formats.png | Bin 0 -> 573 bytes ConfigFiles/icons/filter.png | Bin 0 -> 642 bytes ConfigFiles/icons/folder.png | Bin 0 -> 537 bytes ConfigFiles/icons/folder_user.png | Bin 0 -> 730 bytes ConfigFiles/icons/help.png | Bin 0 -> 786 bytes ConfigFiles/icons/hourglass.png | Bin 0 -> 744 bytes ConfigFiles/icons/icons.qrc | 106 + ConfigFiles/icons/internet-web-browser.png | Bin 0 -> 928 bytes ConfigFiles/icons/key.png | Bin 0 -> 612 bytes ConfigFiles/icons/layout_sidebar.png | Bin 0 -> 479 bytes ConfigFiles/icons/package.png | Bin 0 -> 853 bytes ConfigFiles/icons/package_go.png | Bin 0 -> 898 bytes ConfigFiles/icons/package_rename.png | Bin 0 -> 637 bytes ConfigFiles/icons/package_save.png | Bin 0 -> 888 bytes ConfigFiles/icons/page_add.png | Bin 0 -> 739 bytes ConfigFiles/icons/page_copy.png | Bin 0 -> 663 bytes ConfigFiles/icons/page_copy_sql.png | Bin 0 -> 833 bytes ConfigFiles/icons/page_delete.png | Bin 0 -> 740 bytes ConfigFiles/icons/page_edit.png | Bin 0 -> 807 bytes ConfigFiles/icons/page_find.png | Bin 0 -> 879 bytes ConfigFiles/icons/page_foreign_key.png | Bin 0 -> 841 bytes ConfigFiles/icons/page_green.png | Bin 0 -> 621 bytes ConfigFiles/icons/page_key.png | Bin 0 -> 801 bytes ConfigFiles/icons/page_paintbrush.png | Bin 0 -> 813 bytes ConfigFiles/icons/page_paste.png | Bin 0 -> 703 bytes ConfigFiles/icons/page_save.png | Bin 0 -> 774 bytes ConfigFiles/icons/page_white_copy.png | Bin 0 -> 309 bytes ConfigFiles/icons/page_white_database.png | Bin 0 -> 579 bytes ConfigFiles/icons/page_white_text.png | Bin 0 -> 342 bytes ConfigFiles/icons/picture.png | Bin 0 -> 606 bytes ConfigFiles/icons/picture_add.png | Bin 0 -> 745 bytes ConfigFiles/icons/picture_delete.png | Bin 0 -> 744 bytes ConfigFiles/icons/picture_edit.png | Bin 0 -> 826 bytes ConfigFiles/icons/picture_save.png | Bin 0 -> 755 bytes ConfigFiles/icons/plugin_add.png | Bin 0 -> 691 bytes ConfigFiles/icons/plugin_delete.png | Bin 0 -> 692 bytes ConfigFiles/icons/printer.png | Bin 0 -> 731 bytes ConfigFiles/icons/resultset_first.png | Bin 0 -> 522 bytes ConfigFiles/icons/resultset_last.png | Bin 0 -> 524 bytes ConfigFiles/icons/resultset_next.png | Bin 0 -> 395 bytes ConfigFiles/icons/resultset_previous.png | Bin 0 -> 389 bytes ConfigFiles/icons/save_all.png | Bin 0 -> 841 bytes ConfigFiles/icons/script.png | Bin 0 -> 748 bytes ConfigFiles/icons/script_add.png | Bin 0 -> 811 bytes ConfigFiles/icons/script_delete.png | Bin 0 -> 811 bytes ConfigFiles/icons/script_edit.png | Bin 0 -> 880 bytes ConfigFiles/icons/server_add.png | Bin 0 -> 676 bytes ConfigFiles/icons/server_go.png | Bin 0 -> 706 bytes ConfigFiles/icons/sqlitebrowser.png | Bin 0 -> 15047 bytes ConfigFiles/icons/style.png | Bin 0 -> 813 bytes ConfigFiles/icons/style_add.png | Bin 0 -> 844 bytes ConfigFiles/icons/style_delete.png | Bin 0 -> 865 bytes ConfigFiles/icons/style_edit.png | Bin 0 -> 927 bytes ConfigFiles/icons/tab.png | Bin 0 -> 323 bytes ConfigFiles/icons/tab_add.png | Bin 0 -> 488 bytes ConfigFiles/icons/table.png | Bin 0 -> 566 bytes ConfigFiles/icons/table_add.png | Bin 0 -> 663 bytes ConfigFiles/icons/table_delete.png | Bin 0 -> 660 bytes ConfigFiles/icons/table_edit.png | Bin 0 -> 744 bytes ConfigFiles/icons/table_row_delete.png | Bin 0 -> 656 bytes ConfigFiles/icons/table_row_insert.png | Bin 0 -> 657 bytes ConfigFiles/icons/table_save.png | Bin 0 -> 723 bytes ConfigFiles/icons/tag_blue.png | Bin 0 -> 586 bytes ConfigFiles/icons/tag_blue_add.png | Bin 0 -> 671 bytes ConfigFiles/icons/tag_blue_delete.png | Bin 0 -> 701 bytes ConfigFiles/icons/tag_blue_edit.png | Bin 0 -> 748 bytes ConfigFiles/icons/text_align_center.png | Bin 0 -> 234 bytes ConfigFiles/icons/text_align_justify.png | Bin 0 -> 209 bytes ConfigFiles/icons/text_align_left.png | Bin 0 -> 209 bytes ConfigFiles/icons/text_align_right.png | Bin 0 -> 209 bytes ConfigFiles/icons/text_bold.png | Bin 0 -> 304 bytes ConfigFiles/icons/text_indent.png | Bin 0 -> 353 bytes ConfigFiles/icons/text_italic.png | Bin 0 -> 223 bytes ConfigFiles/icons/text_paintbrush.png | Bin 0 -> 880 bytes ConfigFiles/icons/text_replace.png | Bin 0 -> 691 bytes ConfigFiles/icons/text_underline.png | Bin 0 -> 273 bytes ConfigFiles/icons/textfield_delete.png | Bin 0 -> 335 bytes ConfigFiles/icons/view-refresh.png | Bin 0 -> 912 bytes ConfigFiles/icons/wrench.png | Bin 0 -> 610 bytes ConfigFiles/qianfan.aps | Bin 0 -> 68312 bytes ConfigFiles/qianfan.qrc | 274 + ConfigFiles/qianfan.rc | 1 + ConfigFiles/tools.qrc | 5 + ConfigFiles/translations.qrc | 20 + .../translations/GeometryWidgets_zh_CN.qm | Bin 0 -> 26237 bytes .../translations/GeometryWidgets_zh_CN.ts | 2321 +++ ConfigFiles/translations/GmshModule_zh_CN.qm | Bin 0 -> 7954 bytes ConfigFiles/translations/GmshModule_zh_CN.ts | 682 + ConfigFiles/translations/IO_zh_CN.qm | Bin 0 -> 553 bytes ConfigFiles/translations/IO_zh_CN.ts | 47 + ConfigFiles/translations/MainWidgets_zh_CN.qm | Bin 0 -> 15862 bytes ConfigFiles/translations/MainWidgets_zh_CN.ts | 1370 ++ ConfigFiles/translations/MainWindow_zh_CN.qm | Bin 0 -> 13917 bytes ConfigFiles/translations/MainWindow_zh_CN.ts | 1596 ++ ConfigFiles/translations/Material_zh_CN.qm | Bin 0 -> 1004 bytes ConfigFiles/translations/Material_zh_CN.ts | 88 + ConfigFiles/translations/ModuleBase_zh_CN.qm | Bin 0 -> 4453 bytes ConfigFiles/translations/ModuleBase_zh_CN.ts | 414 + .../translations/PluginManager_zh_CN.qm | Bin 0 -> 561 bytes .../translations/PluginManager_zh_CN.ts | 51 + .../translations/PostInterface_zh_CN.qm | Bin 0 -> 14132 bytes .../translations/PostInterface_zh_CN.ts | 1282 ++ ConfigFiles/translations/PostWidgets_zh_CN.qm | Bin 0 -> 374 bytes ConfigFiles/translations/PostWidgets_zh_CN.ts | 49 + ConfigFiles/translations/ProjectTree_zh_CN.qm | Bin 0 -> 3270 bytes ConfigFiles/translations/ProjectTree_zh_CN.ts | 242 + ConfigFiles/translations/README | 1 + ConfigFiles/translations/SARibbonBar_zh_CN.qm | Bin 0 -> 231 bytes ConfigFiles/translations/SARibbonBar_zh_CN.ts | 207 + .../translations/SelfDefObject_zh_CN.qm | Bin 0 -> 335 bytes .../translations/SelfDefObject_zh_CN.ts | 183 + ConfigFiles/translations/Setting_zh_CN.qm | Bin 0 -> 3153 bytes ConfigFiles/translations/Setting_zh_CN.ts | 263 + .../translations/SolverControl_Zh_CN.qm | Bin 0 -> 2192 bytes .../translations/SolverControl_Zh_CN.ts | 176 + .../translations/UserGuidence_zh_CN.qm | Bin 0 -> 888 bytes .../translations/UserGuidence_zh_CN.ts | 79 + ConfigFiles/translations/flags/ar.png | Bin 0 -> 592 bytes ConfigFiles/translations/flags/br.png | Bin 0 -> 560 bytes ConfigFiles/translations/flags/cn.png | Bin 0 -> 571 bytes ConfigFiles/translations/flags/cs.png | Bin 0 -> 252 bytes ConfigFiles/translations/flags/de.png | Bin 0 -> 444 bytes ConfigFiles/translations/flags/eg.png | Bin 0 -> 239 bytes ConfigFiles/translations/flags/es.png | Bin 0 -> 258 bytes ConfigFiles/translations/flags/flags.qrc | 23 + ConfigFiles/translations/flags/fr.png | Bin 0 -> 616 bytes ConfigFiles/translations/flags/gb.png | Bin 0 -> 735 bytes ConfigFiles/translations/flags/it.png | Bin 0 -> 658 bytes ConfigFiles/translations/flags/jp.png | Bin 0 -> 420 bytes ConfigFiles/translations/flags/kr.png | Bin 0 -> 893 bytes ConfigFiles/translations/flags/nl.png | Bin 0 -> 119 bytes ConfigFiles/translations/flags/pl.png | Bin 0 -> 139 bytes ConfigFiles/translations/flags/roc.png | Bin 0 -> 329 bytes ConfigFiles/translations/flags/ru.png | Bin 0 -> 503 bytes ConfigFiles/translations/flags/tr.png | Bin 0 -> 792 bytes ConfigFiles/translations/flags/ua.png | Bin 0 -> 121 bytes ConfigFiles/translations/flags/us.png | Bin 0 -> 872 bytes .../translations/place_translations_here | 0 ConfigFiles/translations/sqlb_ar_SA.qm | Bin 0 -> 223625 bytes ConfigFiles/translations/sqlb_ar_SA.ts | 7051 +++++++++ ConfigFiles/translations/sqlb_cs.qm | Bin 0 -> 72122 bytes ConfigFiles/translations/sqlb_cs.ts | 6940 +++++++++ ConfigFiles/translations/sqlb_de.qm | Bin 0 -> 242646 bytes ConfigFiles/translations/sqlb_de.ts | 7015 +++++++++ ConfigFiles/translations/sqlb_en_GB.qm | Bin 0 -> 33039 bytes ConfigFiles/translations/sqlb_en_GB.ts | 6927 +++++++++ ConfigFiles/translations/sqlb_es_ES.qm | Bin 0 -> 252959 bytes ConfigFiles/translations/sqlb_es_ES.ts | 7034 +++++++++ ConfigFiles/translations/sqlb_fa.ts | 6922 +++++++++ ConfigFiles/translations/sqlb_fr.qm | Bin 0 -> 264290 bytes ConfigFiles/translations/sqlb_fr.ts | 7039 +++++++++ ConfigFiles/translations/sqlb_it.qm | Bin 0 -> 249391 bytes ConfigFiles/translations/sqlb_it.ts | 7020 +++++++++ ConfigFiles/translations/sqlb_ja.qm | Bin 0 -> 182656 bytes ConfigFiles/translations/sqlb_ja.ts | 7019 +++++++++ ConfigFiles/translations/sqlb_ko_KR.qm | Bin 0 -> 186801 bytes ConfigFiles/translations/sqlb_ko_KR.ts | 7012 +++++++++ ConfigFiles/translations/sqlb_nl.qm | Bin 0 -> 253683 bytes ConfigFiles/translations/sqlb_nl.ts | 7076 +++++++++ ConfigFiles/translations/sqlb_pl.qm | Bin 0 -> 224964 bytes ConfigFiles/translations/sqlb_pl.ts | 7032 +++++++++ ConfigFiles/translations/sqlb_pt_BR.qm | Bin 0 -> 236318 bytes ConfigFiles/translations/sqlb_pt_BR.ts | 7023 +++++++++ ConfigFiles/translations/sqlb_ru.qm | Bin 0 -> 177150 bytes ConfigFiles/translations/sqlb_ru.ts | 6996 +++++++++ ConfigFiles/translations/sqlb_tr.qm | Bin 0 -> 225322 bytes ConfigFiles/translations/sqlb_tr.ts | 7006 +++++++++ ConfigFiles/translations/sqlb_uk_UA.qm | Bin 0 -> 84283 bytes ConfigFiles/translations/sqlb_uk_UA.ts | 6959 +++++++++ ConfigFiles/translations/sqlb_zh.qm | Bin 0 -> 146200 bytes ConfigFiles/translations/sqlb_zh.ts | 7008 +++++++++ ConfigFiles/translations/sqlb_zh_TW.qm | Bin 0 -> 25059 bytes ConfigFiles/translations/sqlb_zh_TW.ts | 6931 +++++++++ ConfigFiles/translations/translations.qrc | 21 + README.md | 34 +- cmake/CMakePack.cmake | 12 +- cmake/FindCGNS.cmake | 24 +- cmake/FindGmsh.cmake | 2 +- cmake/FindHDF5.cmake | 76 +- cmake/FindOpenCASCADE.cmake | 19 +- cmake/FindPython.cmake | 24 +- cmake/FindQuaZIP.cmake | 20 +- cmake/FindQwt.cmake | 84 +- cmake/FindTecIO.cmake | 18 +- cmake/FindVTK.cmake | 10 +- cmake/InitRuntime.cmake | 16 +- docs/Doxyfile | 6 +- docs/Doxyfile.in | 2 +- docs/code-reference/mainwindow.rst | 2 +- docs/conf.py.in | 4 +- docs/index.rst | 2 +- .../v1/query/client-MicrosoftVS/query.json | 1 + .../reply/cache-v2-261c2d679b8e4328aa57.json | 2091 +++ .../cmakeFiles-v1-bc0bc38fca065813c476.json | 1024 ++ .../codemodel-v2-9e6acc76e9c260e6d44f.json | 1589 ++ ...irectory-.-Debug-d0094a50bb2071803777.json | 14 + ...ectory-src-Debug-f4eac5f7c5c995a2fc37.json | 1173 ++ ...src.BCBase-Debug-9e77281d0fa0abb8338d.json | 14 + ...src.Common-Debug-555e2cf014f3c4041037.json | 14 + ...figOptions-Debug-b71c617a15753e1feef7.json | 14 + ...taProperty-Debug-e62b5094254465b8eae0.json | 14 + ...c.Geometry-Debug-47abd9c13e3c83a6a38d.json | 14 + ...tryCommand-Debug-b092980e631bf26eb184.json | 14 + ...taExchange-Debug-16b712f9a4a5206a84d4.json | 14 + ...tryWidgets-Debug-922ebaeb3b27204f3e4a.json | 14 + ...GmshModule-Debug-71bc511684637510f759.json | 43 + ...ory-src.IO-Debug-876fd3c12fc7fb021ca1.json | 14 + ...rc.LAMPCAE-Debug-d4b5f01aaa164ad1f37b.json | 44 + ...ainWidgets-Debug-5da52c7e437fcddc0ffe.json | 14 + ...MainWindow-Debug-25a31dc44f25cea869e8.json | 14 + ...c.Material-Debug-8403bf3d1dcab886c6f5.json | 14 + ...c.MeshData-Debug-5535fb953f5df19194dd.json | 14 + ....ModelData-Debug-198cd6aedd7ee7546ca1.json | 14 + ...ModuleBase-Debug-9091614ce4dba507c4ca.json | 14 + ...assFactory-Debug-aa4d601bf85090c49228.json | 14 + ...Customizer-Debug-db1a160e57b0782567a9.json | 14 + ...ginManager-Debug-f052b377cd9a513b9f97.json | 14 + ...taExchange-Debug-be0db16a6f3c69ccc587.json | 14 + ...tAlgorithm-Debug-a68438d69bbbcbf3df12.json | 14 + ...ataManager-Debug-c74dde3dadceba73281b.json | 14 + ...tInterface-Debug-75f006e7614e11057388.json | 14 + ...PlotWidget-Debug-f99e9e350f45afa9f71f.json | 14 + ...RenderData-Debug-318d6865b7db010473b6.json | 14 + ...ostWidgets-Debug-0b40937599cd5da845cb.json | 14 + ...rojectTree-Debug-816dac64c9e8f726dac2.json | 14 + ...TreeExtend-Debug-b5fcdcc747efd1df86d8.json | 14 + ...thonModule-Debug-a63564c7b90f34c53d76.json | 85 + ...ARibbonBar-Debug-3c18d945d19d7e5f631e.json | 14 + ...fDefObject-Debug-3ea6c96be3c50bb4a22e.json | 14 + ...c.Settings-Debug-1a0da85cc8cd9667558f.json | 14 + ...verControl-Debug-b56b6244051353fee572.json | 14 + ...erGuidence-Debug-57335dbdcf929945098b.json | 14 + .../reply/index-2024-03-20T07-28-18-0317.json | 132 + ...get-BCBase-Debug-144852a9834429374bb4.json | 559 + ...se_autogen-Debug-f649e1b27d49b1d9297d.json | 87 + ...stamp_deps-Debug-9e43c69b5fb9d56c4fea.json | 74 + ...get-Common-Debug-2ad5fb95abe7e90e9794.json | 334 + ...on_autogen-Debug-7a9c97fb94c1a75c4478.json | 75 + ...stamp_deps-Debug-c800ba80b03ae3ff837c.json | 62 + ...figOptions-Debug-ff8a87d6a0b432232f7b.json | 834 ++ ...ns_autogen-Debug-0f028f409eab5bd73a58.json | 95 + ...stamp_deps-Debug-53ed4ccb992a5e4cbc43.json | 80 + ...taProperty-Debug-190bd1cfd1a97cd01ae2.json | 719 + ...ty_autogen-Debug-4638356d3a0e008ba910.json | 79 + ...stamp_deps-Debug-132f8d8c02350e7e52e1.json | 68 + ...et-Doxygen-Debug-7c3db3ebfd982f23d512.json | 89 + ...t-Geometry-Debug-db1a1175d1a0b7a8f351.json | 1208 ++ ...tryCommand-Debug-e7665f9611eab3eb73e1.json | 1337 ++ ...nd_autogen-Debug-56d273cbf7900b09f3d3.json | 91 + ...stamp_deps-Debug-e53ab7fdc37f75042932.json | 77 + ...taExchange-Debug-5d6ea264b5937e2f23f0.json | 817 + ...ge_autogen-Debug-6c7fe286560717d76526.json | 95 + ...stamp_deps-Debug-855d220c825b8f9cfc35.json | 80 + ...tryWidgets-Debug-6c94b9a64d9f27143666.json | 1565 ++ ...ts_autogen-Debug-393a3fe609df268019d7.json | 103 + ...stamp_deps-Debug-241de3747242e8545ef0.json | 86 + ...ry_autogen-Debug-9c4188e39387e0abef81.json | 79 + ...stamp_deps-Debug-99c4d4fa63338ef30171.json | 68 + ...GmshModule-Debug-5e78905b6525182a5524.json | 998 ++ ...le_autogen-Debug-509ee9ef7a5ae4da2083.json | 111 + ...stamp_deps-Debug-6afa7032252f83243033.json | 92 + .../target-IO-Debug-f80106a685279877c218.json | 788 + ...IO_autogen-Debug-22c115c696c207a789e7.json | 111 + ...stamp_deps-Debug-d6711c1a2e45884b1c54.json | 92 + ...et-LAMPCAE-Debug-928c22974a3b8f666c79.json | 735 + ...AE_autogen-Debug-0d0b1d60871bafd8bc8e.json | 171 + ...stamp_deps-Debug-dfa2f593c461c633ffef.json | 137 + ...ainWidgets-Debug-f8e8121f47f37f333d97.json | 1575 ++ ...ts_autogen-Debug-592aaa8f401193823229.json | 155 + ...stamp_deps-Debug-e7abf9d8f80a28535921.json | 125 + ...MainWindow-Debug-44755f896a47b1dbc6f9.json | 974 ++ ...ow_autogen-Debug-d639ea465a87551a348e.json | 171 + ...stamp_deps-Debug-c0405d9ecaf5d33d7de1.json | 134 + ...t-Material-Debug-5eb547a9a882c93cd5b5.json | 534 + ...al_autogen-Debug-3a16fd19d6edcf795fc2.json | 91 + ...stamp_deps-Debug-0a3c394b1d68fcc91773.json | 77 + ...t-MeshData-Debug-88542b4f910e26b63a07.json | 704 + ...ta_autogen-Debug-22ffdb3b77f8b12d1947.json | 79 + ...stamp_deps-Debug-ad6eb797f824e0a838c7.json | 68 + ...-ModelData-Debug-b7303bcf30f6288fb65c.json | 558 + ...ta_autogen-Debug-ca819f71b5a06fcc789a.json | 107 + ...stamp_deps-Debug-8dd7d80923bbd845d8b2.json | 89 + ...ModuleBase-Debug-7833b55ca88869f4c47f.json | 1159 ++ ...se_autogen-Debug-8042b02a7063075a047f.json | 107 + ...stamp_deps-Debug-4a476fbc7e9396f79643.json | 89 + ...assFactory-Debug-dfe56ff80bdc85aeee0c.json | 423 + ...ry_autogen-Debug-69b7aca5849f82b0b0aa.json | 87 + ...stamp_deps-Debug-46030b22a5aa0b5a1381.json | 74 + ...Customizer-Debug-0f948f4908d1c9eab8b8.json | 1757 +++ ...er_autogen-Debug-2812c6c3f3d05883a603.json | 163 + ...stamp_deps-Debug-60973f2e3d995049838b.json | 131 + ...ginManager-Debug-755ce2dd42422dcee2f8.json | 441 + ...er_autogen-Debug-ee1b7178c11752bbf1c0.json | 87 + ...stamp_deps-Debug-d0381371d1aa76811c59.json | 74 + ...taExchange-Debug-0c4480496742435080da.json | 1000 ++ ...ge_autogen-Debug-3ccfe21a7a9c5c090bf0.json | 139 + ...stamp_deps-Debug-d5be7669b02c7bdfa374.json | 113 + ...tAlgorithm-Debug-ec3da06ebd5001e51f61.json | 744 + ...hm_autogen-Debug-0861aa8a82e0acf36e01.json | 79 + ...stamp_deps-Debug-6945a732d8452980c390.json | 68 + ...ataManager-Debug-b7ed0d2c648b1281cac4.json | 361 + ...er_autogen-Debug-727985a535e65b59ad2e.json | 75 + ...stamp_deps-Debug-8d9d8030c97419083413.json | 62 + ...tInterface-Debug-322491428ba469c003e2.json | 1257 ++ ...ce_autogen-Debug-1d65f102a2d63a3c451a.json | 83 + ...stamp_deps-Debug-4fe15b4d2497d788318d.json | 71 + ...PlotWidget-Debug-48dff7a72d1b23e5c9d9.json | 497 + ...et_autogen-Debug-647111ef80ab4cde3314.json | 79 + ...stamp_deps-Debug-02e10c43fac702728a9a.json | 68 + ...RenderData-Debug-9bc3e88ef91e18f61eca.json | 830 + ...ta_autogen-Debug-5667dc414f67aff32c20.json | 79 + ...stamp_deps-Debug-9674524f44927d617d04.json | 68 + ...ostWidgets-Debug-06d84294f779838e50f9.json | 763 + ...ts_autogen-Debug-df90bd2e74782b99833d.json | 111 + ...stamp_deps-Debug-fae109ac3554477c847b.json | 92 + ...rojectTree-Debug-ae655f9358b07b0db3a5.json | 717 + ...TreeExtend-Debug-c97d2c16aa8719582815.json | 611 + ...nd_autogen-Debug-1f90c671bc251ce5a28b.json | 123 + ...stamp_deps-Debug-9cf59e40cdacd18dfb49.json | 101 + ...ee_autogen-Debug-aacc1fa8f685d0a8a59c.json | 127 + ...stamp_deps-Debug-90b72032cac148ad9743.json | 104 + ...thonModule-Debug-fd698a7d66a6c747bf3a.json | 457 + ...le_autogen-Debug-eea898c2e7cd943098a2.json | 79 + ...stamp_deps-Debug-962356fa62c85c36765e.json | 68 + ...ARibbonBar-Debug-c665fea387b990826aed.json | 869 ++ ...ar_autogen-Debug-814fabc12a6d548fd856.json | 75 + ...stamp_deps-Debug-844ac52f6fa9689c11e1.json | 62 + ...fDefObject-Debug-0a0a430956354cae4d00.json | 719 + ...ct_autogen-Debug-136452b2a8a8b2d57369.json | 87 + ...stamp_deps-Debug-0f063a5e80f0f7312065.json | 74 + ...t-Settings-Debug-679ee3a5d5a360adc2ed.json | 476 + ...gs_autogen-Debug-82a028e5e8bab467dc02.json | 75 + ...stamp_deps-Debug-10760dfb04a7ccf0a99b.json | 62 + ...verControl-Debug-0a504d50d19bbd8d63a5.json | 567 + ...ol_autogen-Debug-fd4fed30b702707b5aa3.json | 111 + ...stamp_deps-Debug-9f9b8da9be97a5cf17ab.json | 92 + ...erGuidence-Debug-b2ad728d7cda2c217487.json | 476 + ...ce_autogen-Debug-f95f6abacacf44ef7ec9.json | 83 + ...stamp_deps-Debug-6bd0d217bb37b698b434.json | 71 + .../toolchains-v1-2d3eac1e199c73b65707.json | 58 + out/build/CMakeCache.txt | 598 + out/build/CMakeDoxyfile.in | 301 + out/build/CMakeDoxygenDefaults.cmake | 721 + .../3.28.0-msvc1/CMakeCXXCompiler.cmake | 85 + .../CMakeDetermineCompilerABI_CXX.bin | Bin 0 -> 52736 bytes .../3.28.0-msvc1/CMakeRCCompiler.cmake | 6 + .../CMakeFiles/3.28.0-msvc1/CMakeSystem.cmake | 15 + .../CompilerIdCXX/CMakeCXXCompilerId.cpp | 869 ++ .../CompilerIdCXX/CMakeCXXCompilerId.exe | Bin 0 -> 115200 bytes .../CompilerIdCXX/CMakeCXXCompilerId.obj | Bin 0 -> 2018 bytes out/build/CMakeFiles/CMakeConfigureLog.yaml | 83 + out/build/CMakeFiles/ShowIncludes/foo.h | 1 + out/build/CMakeFiles/ShowIncludes/main.c | 2 + out/build/CMakeFiles/ShowIncludes/main.obj | Bin 0 -> 634 bytes out/build/CMakeFiles/TargetDirectories.txt | 365 + out/build/CMakeFiles/clean_additional.cmake | 112 + out/build/CMakeFiles/cmake.check_cache | 1 + out/build/CMakeFiles/rules.ninja | 713 + out/build/CPackConfig.cmake | 72 + out/build/CPackSourceConfig.cmake | 80 + out/build/Documentation/Doxygen/Doxyfile | 2533 ++++ out/build/Testing/Temporary/LastTest.log | 3 + out/build/VSInheritEnvironments.txt | 1 + out/build/build.ninja | 12460 ++++++++++++++++ out/build/cmake_install.cmake | 49 + .../BCBase_autogen.dir/AutogenInfo.json | 135 + out/build/src/BCBase/cmake_install.cmake | 34 + .../Common_autogen.dir/AutogenInfo.json | 97 + out/build/src/Common/cmake_install.cmake | 34 + .../AutogenInfo.json | 366 + .../src/ConfigOptions/cmake_install.cmake | 34 + .../DataProperty_autogen.dir/AutogenInfo.json | 329 + .../src/DataProperty/cmake_install.cmake | 34 + .../Geometry_autogen.dir/AutogenInfo.json | 413 + out/build/src/Geometry/cmake_install.cmake | 34 + .../AutogenInfo.json | 576 + .../__/qrc/qianfan.qrc.depends | 274 + .../__/qrc/translations.qrc.depends | 20 + .../src/GeometryCommand/cmake_install.cmake | 34 + .../AutogenInfo.json | 135 + .../GeometryDataExchange/cmake_install.cmake | 34 + .../AutogenInfo.json | 535 + .../__/qrc/qianfan.qrc.depends | 274 + .../__/qrc/translations.qrc.depends | 20 + .../src/GeometryWidgets/cmake_install.cmake | 34 + .../GmshModule_autogen.dir/AutogenInfo.json | 241 + .../src/GmshModule/__/qrc/qianfan.qrc.depends | 274 + .../__/qrc/translations.qrc.depends | 20 + out/build/src/GmshModule/cmake_install.cmake | 38 + .../IO_autogen.dir/AutogenInfo.json | 145 + out/build/src/IO/cmake_install.cmake | 34 + .../CMakeFiles/LAMPCAE.dir/post-build.bat | 1529 ++ .../LAMPCAE_autogen.dir/AutogenInfo.json | 97 + out/build/src/LAMPCAE/cmake_install.cmake | 41 + .../MainWidgets_autogen.dir/AutogenInfo.json | 508 + .../MainWidgets/__/qrc/qianfan.qrc.depends | 274 + .../__/qrc/translations.qrc.depends | 20 + out/build/src/MainWidgets/cmake_install.cmake | 34 + .../MainWindow_autogen.dir/AutogenInfo.json | 190 + .../src/MainWindow/__/qrc/qianfan.qrc.depends | 274 + .../__/qrc/translations.qrc.depends | 20 + out/build/src/MainWindow/cmake_install.cmake | 34 + .../Material_autogen.dir/AutogenInfo.json | 154 + .../src/Material/__/qrc/qianfan.qrc.depends | 274 + out/build/src/Material/cmake_install.cmake | 34 + .../MeshData_autogen.dir/AutogenInfo.json | 161 + out/build/src/MeshData/cmake_install.cmake | 34 + .../ModelData_autogen.dir/AutogenInfo.json | 153 + out/build/src/ModelData/cmake_install.cmake | 34 + .../ModuleBase_autogen.dir/AutogenInfo.json | 338 + .../src/ModuleBase/__/qrc/qianfan.qrc.depends | 274 + .../__/qrc/translations.qrc.depends | 20 + out/build/src/ModuleBase/cmake_install.cmake | 34 + .../AutogenInfo.json | 88 + .../src/ParaClassFactory/cmake_install.cmake | 34 + .../AutogenInfo.json | 796 + .../__/qrc/qianfan.qrc.depends | 274 + .../src/PluginCustomizer/cmake_install.cmake | 34 + .../resource/customizer.qrc.depends | 12 + .../AutogenInfo.json | 119 + .../src/PluginManager/cmake_install.cmake | 34 + .../AutogenInfo.json | 262 + .../__/qrc/qianfan.qrc.depends | 274 + .../__/qrc/translations.qrc.depends | 20 + .../cmake_install.cmake | 34 + .../AutogenInfo.json | 198 + .../src/PostAlgorithm/cmake_install.cmake | 34 + .../AutogenInfo.json | 116 + .../PostCurveDataManager/cmake_install.cmake | 34 + .../AutogenInfo.json | 431 + .../PostInterface/__/qrc/qianfan.qrc.depends | 274 + .../__/qrc/translations.qrc.depends | 20 + .../src/PostInterface/cmake_install.cmake | 34 + .../AutogenInfo.json | 139 + .../src/PostPlotWidget/cmake_install.cmake | 34 + .../AutogenInfo.json | 241 + .../src/PostRenderData/cmake_install.cmake | 34 + .../PostWidgets_autogen.dir/AutogenInfo.json | 203 + .../PostWidgets/__/qrc/qianfan.qrc.depends | 274 + .../__/qrc/translations.qrc.depends | 20 + out/build/src/PostWidgets/cmake_install.cmake | 34 + .../ProjectTree_autogen.dir/AutogenInfo.json | 171 + .../ProjectTree/__/qrc/qianfan.qrc.depends | 274 + .../__/qrc/translations.qrc.depends | 20 + out/build/src/ProjectTree/cmake_install.cmake | 34 + .../AutogenInfo.json | 122 + .../__/qrc/qianfan.qrc.depends | 274 + .../__/qrc/translations.qrc.depends | 20 + .../src/ProjectTreeExtend/cmake_install.cmake | 34 + .../PythonModule_autogen.dir/AutogenInfo.json | 118 + .../src/PythonModule/cmake_install.cmake | 58 + .../SARibbonBar_autogen.dir/AutogenInfo.json | 471 + out/build/src/SARibbonBar/cmake_install.cmake | 34 + .../src/SARibbonBar/resource.qrc.depends | 20 + .../AutogenInfo.json | 312 + .../SelfDefObject/__/qrc/qianfan.qrc.depends | 274 + .../__/qrc/translations.qrc.depends | 20 + .../src/SelfDefObject/cmake_install.cmake | 34 + .../Settings_autogen.dir/AutogenInfo.json | 163 + out/build/src/Settings/cmake_install.cmake | 34 + .../AutogenInfo.json | 141 + .../SolverControl/__/qrc/qianfan.qrc.depends | 274 + .../__/qrc/translations.qrc.depends | 20 + .../src/SolverControl/cmake_install.cmake | 34 + .../UserGuidence_autogen.dir/AutogenInfo.json | 119 + .../UserGuidence/__/qrc/qianfan.qrc.depends | 274 + .../__/qrc/translations.qrc.depends | 20 + .../src/UserGuidence/cmake_install.cmake | 34 + out/build/src/cmake_install.cmake | 817 + src/BCBase/BCBase.h | 6 +- src/BCBase/BCType.h | 6 +- src/BCBase/CMakeLists.txt | 2 +- src/CMakeLists.txt | 36 +- src/Common/CMakeLists.txt | 2 +- src/Common/DebugLogger.h | 6 +- src/ConfigOptions/BCConfig.h | 6 +- src/ConfigOptions/BCConfigReader.h | 6 +- src/ConfigOptions/CMakeLists.txt | 2 +- src/ConfigOptions/ConfigDataBase.h | 6 +- src/ConfigOptions/ConfigDataReader.cpp | 2 +- src/ConfigOptions/ConfigDataReader.h | 6 +- src/ConfigOptions/ConfigOptions.h | 6 +- src/ConfigOptions/DataConfig.h | 6 +- src/ConfigOptions/DataConfigReader.h | 6 +- src/ConfigOptions/GeometryConfig.h | 6 +- src/ConfigOptions/GlobalConfig.h | 6 +- src/ConfigOptions/GlobalConfigReader.h | 6 +- src/ConfigOptions/MaterialConfig.h | 6 +- src/ConfigOptions/MeshConfig.h | 6 +- src/ConfigOptions/MesherInfo.cpp | 6 +- src/ConfigOptions/MesherInfo.h | 6 +- src/ConfigOptions/MesherPy.h | 6 +- src/ConfigOptions/PostConfig.h | 6 +- src/ConfigOptions/PostConfigInfo.h | 6 +- src/ConfigOptions/PostCurve.h | 6 +- src/ConfigOptions/ProjectTreeConfig.h | 6 +- src/ConfigOptions/SolverConfig.cpp | 6 +- src/ConfigOptions/SolverConfig.h | 6 +- src/ConfigOptions/SolverInfo.cpp | 6 +- src/ConfigOptions/SolverInfo.h | 6 +- src/ConfigOptions/TreeConfigReader.h | 6 +- src/ConfigOptions/TreeItemData.h | 6 +- src/DataProperty/CMakeLists.txt | 2 +- src/DataProperty/ComponentBase.cpp | 6 +- src/DataProperty/ComponentBase.h | 6 +- src/DataProperty/DataBase.cpp | 6 +- src/DataProperty/DataBase.h | 6 +- src/DataProperty/ParameterBase.cpp | 6 +- src/DataProperty/ParameterBase.h | 6 +- src/DataProperty/ParameterBool.cpp | 6 +- src/DataProperty/ParameterBool.h | 6 +- src/DataProperty/ParameterColor.cpp | 6 +- src/DataProperty/ParameterColor.h | 6 +- src/DataProperty/ParameterDouble.cpp | 6 +- src/DataProperty/ParameterDouble.h | 6 +- src/DataProperty/ParameterGroup.cpp | 6 +- src/DataProperty/ParameterGroup.h | 6 +- src/DataProperty/ParameterInt.cpp | 6 +- src/DataProperty/ParameterInt.h | 6 +- src/DataProperty/ParameterList.cpp | 6 +- src/DataProperty/ParameterList.h | 6 +- src/DataProperty/ParameterPath.cpp | 6 +- src/DataProperty/ParameterPath.h | 6 +- src/DataProperty/PropertyList.cpp | 6 +- src/DataProperty/PropertyList.h | 6 +- src/DataProperty/modelTreeItemType.h | 6 +- src/Geometry/CMakeLists.txt | 2 +- src/Geometry/GeoComponent.cpp | 6 +- src/Geometry/GeoComponent.h | 6 +- src/Geometry/geometryAPI.h | 6 +- src/Geometry/geometryData.cpp | 6 +- src/Geometry/geometryData.h | 6 +- src/Geometry/geometryDatum.cpp | 6 +- src/Geometry/geometryDatum.h | 6 +- src/Geometry/geometryExporter.cpp | 6 +- src/Geometry/geometryExporter.h | 6 +- src/Geometry/geometryModelParaBase.cpp | 6 +- src/Geometry/geometryModelParaBase.h | 6 +- src/Geometry/geometryParaBoolOperation.cpp | 6 +- src/Geometry/geometryParaBoolOperation.h | 6 +- src/Geometry/geometryParaBox.cpp | 6 +- src/Geometry/geometryParaBox.h | 6 +- src/Geometry/geometrySet.cpp | 6 +- src/Geometry/geometrySet.h | 6 +- src/GeometryCommand/CMakeLists.txt | 2 +- src/GeometryCommand/GeoCommandBase.cpp | 6 +- src/GeometryCommand/GeoCommandBase.h | 6 +- src/GeometryCommand/GeoCommandBool.cpp | 6 +- src/GeometryCommand/GeoCommandBool.h | 6 +- src/GeometryCommand/GeoCommandCommon.h | 1 + src/GeometryCommand/GeoCommandCreateBox.cpp | 6 +- src/GeometryCommand/GeoCommandCreateBox.h | 6 +- src/GeometryDataExchange/BREPdataExchange.cpp | 6 +- src/GeometryDataExchange/BREPdataExchange.h | 6 +- src/GeometryDataExchange/CMakeLists.txt | 2 +- .../GeometryDataExchangeAPI.h | 6 +- .../GeometryThreadBase.cpp | 6 +- src/GeometryDataExchange/GeometryThreadBase.h | 6 +- src/GeometryDataExchange/IGESdataExchange.cpp | 6 +- src/GeometryDataExchange/IGESdataExchange.h | 6 +- src/GeometryDataExchange/STEPdataExchange.cpp | 6 +- src/GeometryDataExchange/STEPdataExchange.h | 6 +- src/GeometryDataExchange/STLdataExchange.h | 6 +- src/GeometryWidgets/CMakeLists.txt | 2 +- src/GeometryWidgets/SketchPointWidget.cpp | 6 +- src/GeometryWidgets/SketchPointWidget.h | 6 +- src/GeometryWidgets/dialogBoolOperation.cpp | 6 +- src/GeometryWidgets/dialogBoolOperation.h | 6 +- src/GeometryWidgets/geoDialogBase.cpp | 6 +- src/GeometryWidgets/geoDialogBase.h | 6 +- src/GeometryWidgets/geoPointWidget.cpp | 6 +- src/GeometryWidgets/geoPointWidget.h | 6 +- src/GeometryWidgets/geometryDialogFactory.cpp | 6 +- src/GeometryWidgets/geometryDialogFactory.h | 6 +- src/GmshModule/CMakeLists.txt | 2 +- src/GmshModule/DialogFluidMesh.cpp | 6 +- src/GmshModule/DialogFluidMesh.h | 6 +- src/GmshModule/DialogLocalSetting.cpp | 6 +- src/GmshModule/DialogLocalSetting.h | 6 +- src/GmshModule/GmshDialogBase.cpp | 6 +- src/GmshModule/GmshDialogBase.h | 6 +- src/GmshModule/GmshScriptWriter.cpp | 6 +- src/GmshModule/GmshScriptWriter.h | 6 +- src/GmshModule/GmshThreadManager.cpp | 6 +- src/GmshModule/GmshThreadManager.h | 6 +- src/GmshModule/LocalField.cpp | 6 +- src/GmshModule/LocalField.h | 6 +- src/GmshModule/MeshReader.cpp | 6 +- src/GmshModule/MeshReader.h | 6 +- src/IO/CMakeLists.txt | 6 +- src/{FastCAE => LAMPCAE}/CMakeLists.txt | 26 +- src/{FastCAE => LAMPCAE}/CommandLine.cpp | 10 +- src/{FastCAE => LAMPCAE}/CommandLine.h | 8 +- .../LAMPCAEVersionMacros.h} | 24 +- src/{FastCAE => LAMPCAE}/XBeautyUI.cpp | 6 +- src/{FastCAE => LAMPCAE}/XBeautyUI.h | 6 +- src/{FastCAE => LAMPCAE}/main.cpp | 33 +- .../BaseToollib/ImageOperatorBase.cpp | 4 +- src/LAMPTool/CMakeLists.txt | 2 +- src/License/CMakeLists.txt | 2 +- src/MainWidgets/CMakeLists.txt | 2 +- src/MainWidgets/ControlPanel.cpp | 16 +- src/MainWidgets/PhysicsWidget.cpp | 9 +- src/MainWidgets/meshKernalViewObject.cpp | 6 +- src/MainWidgets/meshKernalViewObject.h | 4 +- src/MainWidgets/meshViewProvider.h | 4 +- src/MainWidgets/preWindow.cpp | 3 - src/MainWindow/CMakeLists.txt | 2 +- src/MainWindow/MainWindow.cpp | 10 +- src/MainWindow/MainWindow.h | 6 +- src/MainWindow/MainWindowPy.cpp | 6 +- src/MainWindow/MainWindowPy.h | 4 +- src/MainWindow/SARibbonMWUi.cpp | 2 +- src/Material/CMakeLists.txt | 2 +- src/MeshData/CMakeLists.txt | 2 +- src/ModelData/CMakeLists.txt | 2 +- src/ModelData/modelDataBase.cpp | 6 +- src/ModelData/modelDataBase.h | 6 +- src/ModuleBase/CMakeLists.txt | 2 +- src/ModuleBase/ModuleBase.h | 6 +- src/ModuleBase/ThreadTask.cpp | 6 +- src/ModuleBase/ThreadTask.h | 6 +- src/ModuleBase/processBar.cpp | 6 +- src/ModuleBase/processBar.h | 6 +- src/ParaClassFactory/BCFactory.h | 6 +- src/ParaClassFactory/CMakeLists.txt | 2 +- src/PluginCustomizer/BoundaryModel.cpp | 4 +- src/PluginCustomizer/BoundaryModel.h | 2 +- src/PluginCustomizer/CMakeLists.txt | 2 +- src/PluginCustomizer/Common.h | 4 +- .../CreateChildModelFactory.cpp | 2 +- .../CreateChildModelFactory.h | 4 +- src/PluginCustomizer/CurveModel.cpp | 2 +- src/PluginCustomizer/CurveModel.h | 2 +- src/PluginCustomizer/CustomParameterModel.cpp | 4 +- src/PluginCustomizer/CustomParameterModel.h | 2 +- src/PluginCustomizer/DataManager.cpp | 6 +- src/PluginCustomizer/DataManager.h | 10 +- src/PluginCustomizer/Editor3DFileValue.cpp | 2 +- src/PluginCustomizer/Editor3DFileValue.h | 2 +- src/PluginCustomizer/EditorBoolValue.cpp | 2 +- src/PluginCustomizer/EditorBoolValue.h | 2 +- src/PluginCustomizer/EditorBoundaryModel.cpp | 2 +- src/PluginCustomizer/EditorBoundaryModel.h | 4 +- src/PluginCustomizer/EditorCurveInfo.cpp | 2 +- src/PluginCustomizer/EditorCurveInfo.h | 2 +- src/PluginCustomizer/EditorCurveModel.cpp | 2 +- src/PluginCustomizer/EditorCurveModel.h | 2 +- .../EditorDependencyFiles.cpp | 2 +- src/PluginCustomizer/EditorDependencyFiles.h | 2 +- .../EditorDescripttionSetup.cpp | 2 +- .../EditorDescripttionSetup.h | 4 +- src/PluginCustomizer/EditorDoubleValue.cpp | 2 +- src/PluginCustomizer/EditorDoubleValue.h | 2 +- src/PluginCustomizer/EditorEnumListValue.cpp | 2 +- src/PluginCustomizer/EditorEnumListValue.h | 2 +- src/PluginCustomizer/EditorEnumValue.cpp | 2 +- src/PluginCustomizer/EditorEnumValue.h | 2 +- src/PluginCustomizer/EditorIntValue.cpp | 2 +- src/PluginCustomizer/EditorIntValue.h | 2 +- src/PluginCustomizer/EditorNameValue.cpp | 2 +- src/PluginCustomizer/EditorNameValue.h | 2 +- src/PluginCustomizer/EditorPathValue.cpp | 2 +- src/PluginCustomizer/EditorPathValue.h | 2 +- src/PluginCustomizer/EditorSolverManager.cpp | 2 +- src/PluginCustomizer/EditorSolverManager.h | 2 +- src/PluginCustomizer/EditorSolverValue.cpp | 2 +- src/PluginCustomizer/EditorSolverValue.h | 2 +- src/PluginCustomizer/EditorStringValue.cpp | 2 +- src/PluginCustomizer/EditorStringValue.h | 2 +- src/PluginCustomizer/EditorTableValue.cpp | 2 +- src/PluginCustomizer/EditorTableValue.h | 2 +- src/PluginCustomizer/FileHelper.cpp | 2 +- src/PluginCustomizer/FileHelper.h | 2 +- src/PluginCustomizer/FunctionTreeSetup.cpp | 2 +- src/PluginCustomizer/FunctionTreeSetup.h | 2 +- .../Generateinstallationpackage.cpp | 32 +- .../Generateinstallationpackage.h | 2 +- .../GetModelItemIconFactory.cpp | 2 +- .../GetModelItemIconFactory.h | 2 +- src/PluginCustomizer/IOXml.cpp | 4 +- src/PluginCustomizer/IOXml.h | 2 +- src/PluginCustomizer/InputValidator.cpp | 2 +- src/PluginCustomizer/InputValidator.h | 2 +- src/PluginCustomizer/MeshModel.cpp | 2 +- src/PluginCustomizer/MeshModel.h | 2 +- src/PluginCustomizer/ModelBase.cpp | 4 +- src/PluginCustomizer/ModelBase.h | 2 +- src/PluginCustomizer/MonitorModel.cpp | 2 +- src/PluginCustomizer/MonitorModel.h | 2 +- src/PluginCustomizer/ParaBasicSetup.cpp | 2 +- src/PluginCustomizer/ParaBasicSetup.h | 2 +- src/PluginCustomizer/ParaExportMeshSetup.cpp | 6 +- src/PluginCustomizer/ParaExportMeshSetup.h | 2 +- .../ParaImportGeometrySetup.cpp | 12 +- .../ParaImportGeometrySetup.h | 2 +- src/PluginCustomizer/ParaImportMeshSetup.cpp | 6 +- src/PluginCustomizer/ParaImportMeshSetup.h | 2 +- src/PluginCustomizer/ParaLinkageData.cpp | 2 +- src/PluginCustomizer/ParaLinkageData.h | 2 +- src/PluginCustomizer/ParaLinkageManager.cpp | 2 +- src/PluginCustomizer/ParaLinkageManager.h | 2 +- src/PluginCustomizer/ParaManagerData.cpp | 2 +- src/PluginCustomizer/ParaManagerData.h | 2 +- src/PluginCustomizer/ParametersLinkage.cpp | 2 +- src/PluginCustomizer/ParametersLinkage.h | 2 +- src/PluginCustomizer/Post2DCurveModel.cpp | 2 +- src/PluginCustomizer/Post2DCurveModel.h | 2 +- src/PluginCustomizer/Post3DFileModel.cpp | 2 +- src/PluginCustomizer/Post3DFileModel.h | 2 +- src/PluginCustomizer/PostModel.cpp | 2 +- src/PluginCustomizer/PostModel.h | 2 +- src/PluginCustomizer/QFWidgetAction.cpp | 2 +- src/PluginCustomizer/QFWidgetAction.h | 2 +- src/PluginCustomizer/SimulationModel.cpp | 2 +- src/PluginCustomizer/SimulationModel.h | 2 +- src/PluginCustomizer/SolverModel.cpp | 2 +- src/PluginCustomizer/SolverModel.h | 2 +- src/PluginCustomizer/TreeInformation.cpp | 2 +- src/PluginCustomizer/TreeInformation.h | 4 +- src/PluginCustomizer/ValidatorName.cpp | 2 +- src/PluginCustomizer/ValidatorName.h | 2 +- src/PluginCustomizer/VectorModel.cpp | 2 +- src/PluginCustomizer/VectorModel.h | 2 +- src/PluginCustomizer/WriteTreeConfig.cpp | 2 +- src/PluginCustomizer/WriteTreeConfig.h | 2 +- src/PluginCustomizer/WriterBCConfig.cpp | 2 +- src/PluginCustomizer/WriterBCConfig.h | 2 +- src/PluginCustomizer/WriterBase.cpp | 2 +- src/PluginCustomizer/WriterBase.h | 2 +- src/PluginCustomizer/WriterDataConfig.cpp | 2 +- src/PluginCustomizer/WriterDataConfig.h | 2 +- src/PluginCustomizer/WriterGlobalConfig.cpp | 2 +- src/PluginCustomizer/WriterGlobalConfig.h | 2 +- .../customizerActionManager.cpp | 160 +- .../customizerActionManager.h | 38 +- .../translation/transtrations_zh_CN.ts | 48 +- src/PluginCustomizer/writerMaterialConfig.cpp | 2 +- src/PluginCustomizer/writerMaterialConfig.h | 2 +- src/PluginManager/CMakeLists.txt | 2 +- src/PluginManager/pluginBase.cpp | 4 +- src/PluginMeshDataExchange/CMakeLists.txt | 9 +- src/PostAlgorithm/CMakeLists.txt | 4 +- src/PostAlgorithm/FCGNSReader.cpp | 2 +- src/PostCurveDataManager/CMakeLists.txt | 2 +- src/PostInterface/CMakeLists.txt | 2 +- src/PostPlotWidget/CMakeLists.txt | 4 +- src/PostPlotWidget/PlotMainWidget.h | 6 +- src/PostPlotWidget/PlotTreeWidget.h | 6 +- src/PostPlotWidget/PlotWidget.h | 7 +- src/PostPlotWidget/PropertyWidget.h | 6 +- src/PostRenderData/CMakeLists.txt | 2 +- src/PostWidgets/CMakeLists.txt | 4 +- src/PostWidgets/Post2DInterface.cpp | 1 + src/PostWidgets/Post2DInterface.h | 6 +- src/PostWidgets/Post3DInterface.h | 6 +- src/PostWidgets/Post3DWidget.h | 6 +- src/PostWidgets/PostCustomPlot.h | 6 +- src/PostWidgets/PostWindowBase.h | 6 +- src/PostWidgets/RealTimeMonitor.h | 6 +- src/PostWidgets/RealTimeWindowBase.h | 6 +- src/ProjectTree/CMakeLists.txt | 4 +- src/ProjectTreeExtend/CMakeLists.txt | 4 +- src/PythonModule/CMakeLists.txt | 12 +- src/PythonModule/PyAgent.cpp | 2 +- .../py/{FastCAE.ini => LAMPCAE.ini} | 0 src/PythonModule/py/MainWindow.py | 4 +- src/SARibbonBar/CMakeLists.txt | 2 +- src/SelfDefObject/CMakeLists.txt | 2 +- src/SelfDefObject/QFDialog.cpp | 6 +- src/SelfDefObject/QFDialog.h | 6 +- src/Settings/BusAPI.cpp | 10 +- src/Settings/BusAPI.h | 6 +- src/Settings/CMakeLists.txt | 2 +- src/Settings/ColorCombobox.cpp | 6 +- src/Settings/ColorCombobox.h | 6 +- src/Settings/DialogGraphOption.cpp | 6 +- src/Settings/DialogGraphOption.h | 6 +- src/Settings/DialogWorkingDir.cpp | 6 +- src/Settings/DialogWorkingDir.h | 6 +- src/Settings/Ecolorcombobox.cpp | 6 +- src/Settings/Ecolorcombobox.h | 6 +- src/Settings/GraphOption.cpp | 6 +- src/Settings/GraphOption.h | 6 +- src/Settings/MainSetting.cpp | 6 +- src/Settings/MainSetting.h | 6 +- src/Settings/MessageSetting.cpp | 6 +- src/Settings/MessageSetting.h | 6 +- src/Settings/SettingAPI.h | 6 +- src/SolverControl/CMakeLists.txt | 2 +- src/SolverControl/SolverControlerBase.cpp | 6 +- src/SolverControl/SolverControlerBase.h | 6 +- src/SolverControl/solverControlAPI.h | 6 +- src/UserGuidence/CMakeLists.txt | 2 +- src/UserGuidence/DialogUserGuidence.cpp | 4 +- src/WBCLFZSystemModule/CMakeLists.txt | 2 +- .../PointCloudProcess/pclvisualizer.cpp | 5 +- .../SharedModuleLib/TaskTreeClass.cpp | 154 - src/XGenerateReport/CMakeLists.txt | 2 +- src/qrc/QUI/icon/LAMPCAEFrame.png | Bin 0 -> 368539 bytes src/qrc/qianfan.qrc | 2 +- src/qrc/translations/MainWindow_zh_CN.ts | 2 +- 1319 files changed, 217147 insertions(+), 1303 deletions(-) create mode 100644 .idea/.gitignore create mode 100644 .idea/.name create mode 100644 .idea/FastCAE.iml create mode 100644 .idea/QtSettings.xml create mode 100644 .idea/codeStyles/Project.xml create mode 100644 .idea/codeStyles/codeStyleConfig.xml create mode 100644 .idea/misc.xml create mode 100644 .idea/modules.xml create mode 100644 .idea/vcs.xml create mode 100644 CMakePresets.json create mode 100644 CMakeUserPresets.json create mode 100644 ConfigFiles/Hello.png create mode 100644 ConfigFiles/LAMPTool.qrc create mode 100644 ConfigFiles/OCCViewer/res/antialiasing.png create mode 100644 ConfigFiles/OCCViewer/res/cursor_rotate.png create mode 100644 ConfigFiles/OCCViewer/res/cursor_zoom.png create mode 100644 ConfigFiles/OCCViewer/res/help.png create mode 100644 ConfigFiles/OCCViewer/res/lamp.png create mode 100644 ConfigFiles/OCCViewer/res/raytracing.png create mode 100644 ConfigFiles/OCCViewer/res/reflections.png create mode 100644 ConfigFiles/OCCViewer/res/shadows.png create mode 100644 ConfigFiles/OCCViewer/res/tool_color.png create mode 100644 ConfigFiles/OCCViewer/res/tool_delete.png create mode 100644 ConfigFiles/OCCViewer/res/tool_material.png create mode 100644 ConfigFiles/OCCViewer/res/tool_shading.png create mode 100644 ConfigFiles/OCCViewer/res/tool_transparency.png create mode 100644 ConfigFiles/OCCViewer/res/tool_wireframe.png create mode 100644 ConfigFiles/OCCViewer/res/view_axo.png create mode 100644 ConfigFiles/OCCViewer/res/view_back.png create mode 100644 ConfigFiles/OCCViewer/res/view_bottom.png create mode 100644 ConfigFiles/OCCViewer/res/view_comp_off.png create mode 100644 ConfigFiles/OCCViewer/res/view_comp_on.png create mode 100644 ConfigFiles/OCCViewer/res/view_fitall.png create mode 100644 ConfigFiles/OCCViewer/res/view_front.png create mode 100644 ConfigFiles/OCCViewer/res/view_left.png create mode 100644 ConfigFiles/OCCViewer/res/view_reset.png create mode 100644 ConfigFiles/OCCViewer/res/view_right.png create mode 100644 ConfigFiles/OCCViewer/res/view_top.png create mode 100644 ConfigFiles/PointCloudProcess/images/1.gif create mode 100644 ConfigFiles/PointCloudProcess/images/QTreeView/branch-closed.png create mode 100644 ConfigFiles/PointCloudProcess/images/QTreeView/branch-end.png create mode 100644 ConfigFiles/PointCloudProcess/images/QTreeView/branch-more.png create mode 100644 ConfigFiles/PointCloudProcess/images/QTreeView/branch-open.png create mode 100644 ConfigFiles/PointCloudProcess/images/QTreeView/vline.png create mode 100644 ConfigFiles/PointCloudProcess/images/RGB.png create mode 100644 ConfigFiles/PointCloudProcess/images/algorithm/DASHBOARD.png create mode 100644 ConfigFiles/PointCloudProcess/images/algorithm/DBSCAN.png create mode 100644 ConfigFiles/PointCloudProcess/images/algorithm/Histogram.png create mode 100644 ConfigFiles/PointCloudProcess/images/algorithm/KMeans.png create mode 100644 ConfigFiles/PointCloudProcess/images/algorithm/binary.png create mode 100644 ConfigFiles/PointCloudProcess/images/algorithm/chooseMatrix.png create mode 100644 ConfigFiles/PointCloudProcess/images/algorithm/density.png create mode 100644 ConfigFiles/PointCloudProcess/images/algorithm/extract.png create mode 100644 ConfigFiles/PointCloudProcess/images/algorithm/filter.png create mode 100644 ConfigFiles/PointCloudProcess/images/algorithm/help.png create mode 100644 ConfigFiles/PointCloudProcess/images/algorithm/matrix.png create mode 100644 ConfigFiles/PointCloudProcess/images/algorithm/more.png create mode 100644 ConfigFiles/PointCloudProcess/images/algorithm/nihe.png create mode 100644 ConfigFiles/PointCloudProcess/images/algorithm/person.png create mode 100644 ConfigFiles/PointCloudProcess/images/algorithm/pingjie.png create mode 100644 ConfigFiles/PointCloudProcess/images/algorithm/transform.png create mode 100644 ConfigFiles/PointCloudProcess/images/algorithm/tree.png create mode 100644 ConfigFiles/PointCloudProcess/images/back.png create mode 100644 ConfigFiles/PointCloudProcess/images/bottom.png create mode 100644 ConfigFiles/PointCloudProcess/images/camera.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccAddConstSF.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccAlign.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccBilateralFilter.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccCCExtract.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccCenteredPerspective32.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccClippingBox.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccClippingBoxMultExport.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccClippingBoxSingleExport.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccClone.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccCloudCloudDistance.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccCloudMeshDistance.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccCloudPrimitiveDistance.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccComputeStat.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccConsole.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccDelete.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccDeleteSF.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccExit.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccFilterByValue.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccFullScreen.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccGaussianFilter.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccGear.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccGlobalZoom.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccGradient.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccGrid.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccHistogram.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccInteractiveTransformation.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccLevel.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccLightParams.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccMerge.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccMinus.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccOpen.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccOrthoMode32.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccPencil.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccPickCenter.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccPickCenterAuto.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccPivotAuto.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccPivotOff.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccPivotOn.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccPlus.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccPointListPicking.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccPointPicking.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccPointSize.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccRegister.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccSORFilter.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccSampleCloud.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccSamplePoints.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccSave.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccSaveProject.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccSegment.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccSfArithmetic.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccStatTest.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccStereo.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccSunLight.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccSwapUpDown.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccTracePolyline.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccTracePolyline.svg create mode 100644 ConfigFiles/PointCloudProcess/images/ccUnstack.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccViewIso1.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccViewIso2.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccViewXneg.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccViewXpos.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccViewYneg.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccViewYpos.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccViewZneg.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccViewZpos.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccViewerBasedPerspective32.png create mode 100644 ConfigFiles/PointCloudProcess/images/ccZoomIn.png create mode 100644 ConfigFiles/PointCloudProcess/images/clipboard.png create mode 100644 ConfigFiles/PointCloudProcess/images/color.png create mode 100644 ConfigFiles/PointCloudProcess/images/coodinate.png create mode 100644 ConfigFiles/PointCloudProcess/images/dbAreaLabelSymbol.png create mode 100644 ConfigFiles/PointCloudProcess/images/dbCalibratedImageSymbol.png create mode 100644 ConfigFiles/PointCloudProcess/images/dbCamSensorSymbol.png create mode 100644 ConfigFiles/PointCloudProcess/images/dbCloudSymbol.png create mode 100644 ConfigFiles/PointCloudProcess/images/dbCloudSymbolLocked.png create mode 100644 ConfigFiles/PointCloudProcess/images/dbContainerSymbol.png create mode 100644 ConfigFiles/PointCloudProcess/images/dbContainerSymbolLocked.png create mode 100644 ConfigFiles/PointCloudProcess/images/dbGBLSensorSymbol.png create mode 100644 ConfigFiles/PointCloudProcess/images/dbHObjectSymbol.png create mode 100644 ConfigFiles/PointCloudProcess/images/dbHObjectSymbolLocked.png create mode 100644 ConfigFiles/PointCloudProcess/images/dbImageSymbol.png create mode 100644 ConfigFiles/PointCloudProcess/images/dbLabelSymbol.png create mode 100644 ConfigFiles/PointCloudProcess/images/dbLockSymbol.png create mode 100644 ConfigFiles/PointCloudProcess/images/dbMaterialSymbol.png create mode 100644 ConfigFiles/PointCloudProcess/images/dbMeshSymbol.png create mode 100644 ConfigFiles/PointCloudProcess/images/dbMeshSymbolLocked.png create mode 100644 ConfigFiles/PointCloudProcess/images/dbMiscGeomSymbol.png create mode 100644 ConfigFiles/PointCloudProcess/images/dbMiscGeomSymbolLocked.png create mode 100644 ConfigFiles/PointCloudProcess/images/dbOctreeSymbol.png create mode 100644 ConfigFiles/PointCloudProcess/images/dbOctreeSymbolLocked.png create mode 100644 ConfigFiles/PointCloudProcess/images/dbPolylineSymbol.png create mode 100644 ConfigFiles/PointCloudProcess/images/dbSubMeshSymbol.png create mode 100644 ConfigFiles/PointCloudProcess/images/dbSubMeshSymbolLocked.png create mode 100644 ConfigFiles/PointCloudProcess/images/dbViewportSymbol.png create mode 100644 ConfigFiles/PointCloudProcess/images/donate.png create mode 100644 ConfigFiles/PointCloudProcess/images/exportIcon.png create mode 100644 ConfigFiles/PointCloudProcess/images/files/CSV.png create mode 100644 ConfigFiles/PointCloudProcess/images/files/add.png create mode 100644 ConfigFiles/PointCloudProcess/images/files/bgColor.png create mode 100644 ConfigFiles/PointCloudProcess/images/files/cloud.png create mode 100644 ConfigFiles/PointCloudProcess/images/files/cloud2.png create mode 100644 ConfigFiles/PointCloudProcess/images/files/copy.png create mode 100644 ConfigFiles/PointCloudProcess/images/files/cut.png create mode 100644 ConfigFiles/PointCloudProcess/images/files/log.png create mode 100644 ConfigFiles/PointCloudProcess/images/files/new1.png create mode 100644 ConfigFiles/PointCloudProcess/images/files/new2.png create mode 100644 ConfigFiles/PointCloudProcess/images/files/paste.png create mode 100644 ConfigFiles/PointCloudProcess/images/files/pointCloud.png create mode 100644 ConfigFiles/PointCloudProcess/images/files/search.png create mode 100644 ConfigFiles/PointCloudProcess/images/files/snapshot.png create mode 100644 ConfigFiles/PointCloudProcess/images/files/star.png create mode 100644 ConfigFiles/PointCloudProcess/images/files/txt.png create mode 100644 ConfigFiles/PointCloudProcess/images/front.png create mode 100644 ConfigFiles/PointCloudProcess/images/gamepad.png create mode 100644 ConfigFiles/PointCloudProcess/images/gearIcon.png create mode 100644 ConfigFiles/PointCloudProcess/images/grey.png create mode 100644 ConfigFiles/PointCloudProcess/images/hashtag.png create mode 100644 ConfigFiles/PointCloudProcess/images/ic-redo.png create mode 100644 ConfigFiles/PointCloudProcess/images/ic-undo.png create mode 100644 ConfigFiles/PointCloudProcess/images/icon/cc_icon.ico create mode 100644 ConfigFiles/PointCloudProcess/images/icon/cc_icon.rc create mode 100644 ConfigFiles/PointCloudProcess/images/icon/cc_icon.svg create mode 100644 ConfigFiles/PointCloudProcess/images/icon/cc_icon_16.png create mode 100644 ConfigFiles/PointCloudProcess/images/icon/cc_icon_256.png create mode 100644 ConfigFiles/PointCloudProcess/images/icon/cc_icon_32.png create mode 100644 ConfigFiles/PointCloudProcess/images/icon/cc_icon_64.png create mode 100644 ConfigFiles/PointCloudProcess/images/icon/cc_viewer_icon.svg create mode 100644 ConfigFiles/PointCloudProcess/images/icon/cc_viewer_icon_16.png create mode 100644 ConfigFiles/PointCloudProcess/images/icon/cc_viewer_icon_256.png create mode 100644 ConfigFiles/PointCloudProcess/images/icon/cc_viewer_icon_32.png create mode 100644 ConfigFiles/PointCloudProcess/images/icon/cc_viewer_icon_64.png create mode 100644 ConfigFiles/PointCloudProcess/images/im3DxLogo.png create mode 100644 ConfigFiles/PointCloudProcess/images/imLogoV2Qt.png create mode 100644 ConfigFiles/PointCloudProcess/images/interactors.png create mode 100644 ConfigFiles/PointCloudProcess/images/keda.ico create mode 100644 ConfigFiles/PointCloudProcess/images/left.png create mode 100644 ConfigFiles/PointCloudProcess/images/lock.png create mode 100644 ConfigFiles/PointCloudProcess/images/mapIcon.png create mode 100644 ConfigFiles/PointCloudProcess/images/material/3DxLogo.png create mode 100644 ConfigFiles/PointCloudProcess/images/material/Raster_grid.pptx create mode 100644 ConfigFiles/PointCloudProcess/images/material/ccCenteredPerspective.svg create mode 100644 ConfigFiles/PointCloudProcess/images/material/ccClippingBox.svg create mode 100644 ConfigFiles/PointCloudProcess/images/material/ccClippingBoxBase.svg create mode 100644 ConfigFiles/PointCloudProcess/images/material/ccOrthoMode.svg create mode 100644 ConfigFiles/PointCloudProcess/images/material/ccOrthoSections.svg create mode 100644 ConfigFiles/PointCloudProcess/images/material/ccPivot.svg create mode 100644 ConfigFiles/PointCloudProcess/images/material/ccSectionExtraction.svg create mode 100644 ConfigFiles/PointCloudProcess/images/material/ccViewIso1.svg create mode 100644 ConfigFiles/PointCloudProcess/images/material/ccViewIso2.svg create mode 100644 ConfigFiles/PointCloudProcess/images/material/ccViewerBasedPerspective.svg create mode 100644 ConfigFiles/PointCloudProcess/images/monitor.svg create mode 100644 ConfigFiles/PointCloudProcess/images/noFilter.png create mode 100644 ConfigFiles/PointCloudProcess/images/nvidia.png create mode 100644 ConfigFiles/PointCloudProcess/images/oculus.png create mode 100644 ConfigFiles/PointCloudProcess/images/open.png create mode 100644 ConfigFiles/PointCloudProcess/images/orthoSections.png create mode 100644 ConfigFiles/PointCloudProcess/images/photo-camera.svg create mode 100644 ConfigFiles/PointCloudProcess/images/primBox.gif create mode 100644 ConfigFiles/PointCloudProcess/images/primCone.gif create mode 100644 ConfigFiles/PointCloudProcess/images/primCylinder.gif create mode 100644 ConfigFiles/PointCloudProcess/images/primDish.gif create mode 100644 ConfigFiles/PointCloudProcess/images/primPlane.gif create mode 100644 ConfigFiles/PointCloudProcess/images/primSphere.gif create mode 100644 ConfigFiles/PointCloudProcess/images/primTorus.gif create mode 100644 ConfigFiles/PointCloudProcess/images/qCompass.png create mode 100644 ConfigFiles/PointCloudProcess/images/raster_grid.jpg create mode 100644 ConfigFiles/PointCloudProcess/images/redo.png create mode 100644 ConfigFiles/PointCloudProcess/images/reset.png create mode 100644 ConfigFiles/PointCloudProcess/images/restore.png create mode 100644 ConfigFiles/PointCloudProcess/images/right.png create mode 100644 ConfigFiles/PointCloudProcess/images/rotate0.png create mode 100644 ConfigFiles/PointCloudProcess/images/rotate180.png create mode 100644 ConfigFiles/PointCloudProcess/images/rotate270.png create mode 100644 ConfigFiles/PointCloudProcess/images/rotate90.png create mode 100644 ConfigFiles/PointCloudProcess/images/search.svg create mode 100644 ConfigFiles/PointCloudProcess/images/sectionExtraction.png create mode 100644 ConfigFiles/PointCloudProcess/images/seting.png create mode 100644 ConfigFiles/PointCloudProcess/images/smallBasket.png create mode 100644 ConfigFiles/PointCloudProcess/images/smallCSVFile.png create mode 100644 ConfigFiles/PointCloudProcess/images/smallCancel.png create mode 100644 ConfigFiles/PointCloudProcess/images/smallPause.png create mode 100644 ConfigFiles/PointCloudProcess/images/smallPointDistance.png create mode 100644 ConfigFiles/PointCloudProcess/images/smallPointProperties.png create mode 100644 ConfigFiles/PointCloudProcess/images/smallPointsAngle.png create mode 100644 ConfigFiles/PointCloudProcess/images/smallPolygonSelect.png create mode 100644 ConfigFiles/PointCloudProcess/images/smallRectangleSelect.png create mode 100644 ConfigFiles/PointCloudProcess/images/smallReset.png create mode 100644 ConfigFiles/PointCloudProcess/images/smallRevert.png create mode 100644 ConfigFiles/PointCloudProcess/images/smallSegmentIn.png create mode 100644 ConfigFiles/PointCloudProcess/images/smallSegmentOut.png create mode 100644 ConfigFiles/PointCloudProcess/images/smallSphere.png create mode 100644 ConfigFiles/PointCloudProcess/images/smallTrash.png create mode 100644 ConfigFiles/PointCloudProcess/images/smallValidate.png create mode 100644 ConfigFiles/PointCloudProcess/images/square.png create mode 100644 ConfigFiles/PointCloudProcess/images/store.png create mode 100644 ConfigFiles/PointCloudProcess/images/theme/snowman.png create mode 100644 ConfigFiles/PointCloudProcess/images/typeGrayColor.png create mode 100644 ConfigFiles/PointCloudProcess/images/typeNormal.png create mode 100644 ConfigFiles/PointCloudProcess/images/typePositiveSF.png create mode 100644 ConfigFiles/PointCloudProcess/images/typeQuaternion.png create mode 100644 ConfigFiles/PointCloudProcess/images/typeRgbCcolor.png create mode 100644 ConfigFiles/PointCloudProcess/images/typeSF.png create mode 100644 ConfigFiles/PointCloudProcess/images/typeXCoordinate.png create mode 100644 ConfigFiles/PointCloudProcess/images/typeYCoordinate.png create mode 100644 ConfigFiles/PointCloudProcess/images/typeZCoordinate.png create mode 100644 ConfigFiles/PointCloudProcess/images/undo.png create mode 100644 ConfigFiles/PointCloudProcess/images/unfoldSmall.png create mode 100644 ConfigFiles/PointCloudProcess/images/up.png create mode 100644 ConfigFiles/PointCloudProcess/images/zoomin.png create mode 100644 ConfigFiles/PointCloudProcess/images/zoomout.png create mode 100644 ConfigFiles/QUI/HEADERIMAGE.bmp create mode 100644 ConfigFiles/QUI/UNWELCOMEFINISHPAGE.bmp create mode 100644 ConfigFiles/QUI/WELCOMEFINISHPAGE.bmp create mode 100644 ConfigFiles/QUI/beauty/Sticker_Star.png create mode 100644 ConfigFiles/QUI/beauty/btn_close.png create mode 100644 ConfigFiles/QUI/beauty/btn_max.png create mode 100644 ConfigFiles/QUI/beauty/btn_min.png create mode 100644 ConfigFiles/QUI/beauty/btn_normal.png create mode 100644 ConfigFiles/QUI/beauty/checked.png create mode 100644 ConfigFiles/QUI/beauty/close_normal.png create mode 100644 ConfigFiles/QUI/beauty/close_pressed.png create mode 100644 ConfigFiles/QUI/beauty/dock_title.png create mode 100644 ConfigFiles/QUI/beauty/max_normal.png create mode 100644 ConfigFiles/QUI/beauty/max_pressed.png create mode 100644 ConfigFiles/QUI/beauty/min_normal.png create mode 100644 ConfigFiles/QUI/beauty/min_pressed.png create mode 100644 ConfigFiles/QUI/beauty/qianfan.qss create mode 100644 ConfigFiles/QUI/beauty/radio_selected.png create mode 100644 ConfigFiles/QUI/beauty/radio_unselected.png create mode 100644 ConfigFiles/QUI/beauty/restore_normal.png create mode 100644 ConfigFiles/QUI/beauty/restore_pressed.png create mode 100644 ConfigFiles/QUI/beauty/toolbar_bk.png create mode 100644 ConfigFiles/QUI/beauty/tree_expand.png create mode 100644 ConfigFiles/QUI/beauty/tree_item_checked.png create mode 100644 ConfigFiles/QUI/beauty/tree_item_unchecked.png create mode 100644 ConfigFiles/QUI/beauty/tree_normal.png create mode 100644 ConfigFiles/QUI/geometry/FitAll.png create mode 100644 ConfigFiles/QUI/geometry/Home.png create mode 100644 ConfigFiles/QUI/geometry/Rotate.png create mode 100644 ConfigFiles/QUI/geometry/Zoom.png create mode 100644 ConfigFiles/QUI/geometry/add.png create mode 100644 ConfigFiles/QUI/geometry/box.png create mode 100644 ConfigFiles/QUI/geometry/chamfer.png create mode 100644 ConfigFiles/QUI/geometry/common.png create mode 100644 ConfigFiles/QUI/geometry/cone.png create mode 100644 ConfigFiles/QUI/geometry/cut.png create mode 100644 ConfigFiles/QUI/geometry/cylinder.png create mode 100644 ConfigFiles/QUI/geometry/edgeDisplay.png create mode 100644 ConfigFiles/QUI/geometry/extrude.png create mode 100644 ConfigFiles/QUI/geometry/extrusion.png create mode 100644 ConfigFiles/QUI/geometry/face.png create mode 100644 ConfigFiles/QUI/geometry/facedisplay.png create mode 100644 ConfigFiles/QUI/geometry/fillet.png create mode 100644 ConfigFiles/QUI/geometry/fuse.png create mode 100644 ConfigFiles/QUI/geometry/geoComponent.png create mode 100644 ConfigFiles/QUI/geometry/geoFillHole.png create mode 100644 ConfigFiles/QUI/geometry/geoFixSurface.png create mode 100644 ConfigFiles/QUI/geometry/geoMeasure.png create mode 100644 ConfigFiles/QUI/geometry/geoRemoveFace.png create mode 100644 ConfigFiles/QUI/geometry/geoSSplit.png create mode 100644 ConfigFiles/QUI/geometry/helix.png create mode 100644 ConfigFiles/QUI/geometry/lamp.png create mode 100644 ConfigFiles/QUI/geometry/line.png create mode 100644 ConfigFiles/QUI/geometry/loft.png create mode 100644 ConfigFiles/QUI/geometry/matrix.png create mode 100644 ConfigFiles/QUI/geometry/mirror.png create mode 100644 ConfigFiles/QUI/geometry/move.png create mode 100644 ConfigFiles/QUI/geometry/point.png create mode 100644 ConfigFiles/QUI/geometry/pointDisplay.png create mode 100644 ConfigFiles/QUI/geometry/redo.png create mode 100644 ConfigFiles/QUI/geometry/remove.png create mode 100644 ConfigFiles/QUI/geometry/revolve.png create mode 100644 ConfigFiles/QUI/geometry/select.png create mode 100644 ConfigFiles/QUI/geometry/selectbody.png create mode 100644 ConfigFiles/QUI/geometry/selectface.png create mode 100644 ConfigFiles/QUI/geometry/selectpoint.png create mode 100644 ConfigFiles/QUI/geometry/selectwire.png create mode 100644 ConfigFiles/QUI/geometry/sphere.png create mode 100644 ConfigFiles/QUI/geometry/split.png create mode 100644 ConfigFiles/QUI/geometry/sweep.png create mode 100644 ConfigFiles/QUI/geometry/torus.png create mode 100644 ConfigFiles/QUI/geometry/undo.png create mode 100644 ConfigFiles/QUI/geometry/variableFillet.png create mode 100644 ConfigFiles/QUI/geometry/wedge.png rename {src/qrc => ConfigFiles}/QUI/icon/FastCAEFrame.png (100%) create mode 100644 ConfigFiles/QUI/icon/Plugin_ava.png create mode 100644 ConfigFiles/QUI/icon/Plugin_ins.png create mode 100644 ConfigFiles/QUI/icon/about_us.png create mode 100644 ConfigFiles/QUI/icon/acce.png create mode 100644 ConfigFiles/QUI/icon/angle.png create mode 100644 ConfigFiles/QUI/icon/bc.png create mode 100644 ConfigFiles/QUI/icon/boxCell.png create mode 100644 ConfigFiles/QUI/icon/boxNode.png create mode 100644 ConfigFiles/QUI/icon/chinese_language.png create mode 100644 ConfigFiles/QUI/icon/counter.png create mode 100644 ConfigFiles/QUI/icon/createNew.png create mode 100644 ConfigFiles/QUI/icon/createSet.png create mode 100644 ConfigFiles/QUI/icon/createSketch.png create mode 100644 ConfigFiles/QUI/icon/curve.png create mode 100644 ConfigFiles/QUI/icon/datumPlane.png create mode 100644 ConfigFiles/QUI/icon/desCase.png create mode 100644 ConfigFiles/QUI/icon/desGeo.png create mode 100644 ConfigFiles/QUI/icon/desMesh.png create mode 100644 ConfigFiles/QUI/icon/eleset.png create mode 100644 ConfigFiles/QUI/icon/english_language.png create mode 100644 ConfigFiles/QUI/icon/execScript.png create mode 100644 ConfigFiles/QUI/icon/expandL1.png create mode 100644 ConfigFiles/QUI/icon/exportGeometry.png create mode 100644 ConfigFiles/QUI/icon/exportMesh.png create mode 100644 ConfigFiles/QUI/icon/face.png create mode 100644 ConfigFiles/QUI/icon/faceWithEdge.png create mode 100644 ConfigFiles/QUI/icon/family.png create mode 100644 ConfigFiles/QUI/icon/far.png create mode 100644 ConfigFiles/QUI/icon/fit.png create mode 100644 ConfigFiles/QUI/icon/fix.png create mode 100644 ConfigFiles/QUI/icon/fulid.png create mode 100644 ConfigFiles/QUI/icon/geometry.png create mode 100644 ConfigFiles/QUI/icon/graphOption.png create mode 100644 ConfigFiles/QUI/icon/help.png create mode 100644 ConfigFiles/QUI/icon/icon.png create mode 100644 ConfigFiles/QUI/icon/importGeometry.png create mode 100644 ConfigFiles/QUI/icon/importMesh.png create mode 100644 ConfigFiles/QUI/icon/inlet.png create mode 100644 ConfigFiles/QUI/icon/iso.png create mode 100644 ConfigFiles/QUI/icon/language.png create mode 100644 ConfigFiles/QUI/icon/material.png create mode 100644 ConfigFiles/QUI/icon/mesh.png create mode 100644 ConfigFiles/QUI/icon/meshChecking.png create mode 100644 ConfigFiles/QUI/icon/meshComponent.png create mode 100644 ConfigFiles/QUI/icon/meshFilter.png create mode 100644 ConfigFiles/QUI/icon/meshFluid.png create mode 100644 ConfigFiles/QUI/icon/meshmodeling.png create mode 100644 ConfigFiles/QUI/icon/monitor.png create mode 100644 ConfigFiles/QUI/icon/near.png create mode 100644 ConfigFiles/QUI/icon/node.png create mode 100644 ConfigFiles/QUI/icon/nodeset.png create mode 100644 ConfigFiles/QUI/icon/normalL1.png create mode 100644 ConfigFiles/QUI/icon/open.png create mode 100644 ConfigFiles/QUI/icon/outlet.png create mode 100644 ConfigFiles/QUI/icon/physics.png create mode 100644 ConfigFiles/QUI/icon/pluginManager.png create mode 100644 ConfigFiles/QUI/icon/post.png create mode 100644 ConfigFiles/QUI/icon/press.png create mode 100644 ConfigFiles/QUI/icon/ruler.png create mode 100644 ConfigFiles/QUI/icon/save.png create mode 100644 ConfigFiles/QUI/icon/saveAnimate.png create mode 100644 ConfigFiles/QUI/icon/saveAs.png create mode 100644 ConfigFiles/QUI/icon/saveImage.png create mode 100644 ConfigFiles/QUI/icon/saveScript.png create mode 100644 ConfigFiles/QUI/icon/selectElement.png create mode 100644 ConfigFiles/QUI/icon/selectGeo.png create mode 100644 ConfigFiles/QUI/icon/selectNode.png create mode 100644 ConfigFiles/QUI/icon/selectOff.png create mode 100644 ConfigFiles/QUI/icon/setting.png create mode 100644 ConfigFiles/QUI/icon/sketchArc.png create mode 100644 ConfigFiles/QUI/icon/sketchCircle.png create mode 100644 ConfigFiles/QUI/icon/sketchLine.png create mode 100644 ConfigFiles/QUI/icon/sketchPolyLine.png create mode 100644 ConfigFiles/QUI/icon/sketchRectangle.png create mode 100644 ConfigFiles/QUI/icon/sketchSpline.png create mode 100644 ConfigFiles/QUI/icon/solidMesh.png create mode 100644 ConfigFiles/QUI/icon/solumationsetting.png create mode 100644 ConfigFiles/QUI/icon/solve.png create mode 100644 ConfigFiles/QUI/icon/speed.png create mode 100644 ConfigFiles/QUI/icon/stop.png create mode 100644 ConfigFiles/QUI/icon/streamline.png create mode 100644 ConfigFiles/QUI/icon/surface.png create mode 100644 ConfigFiles/QUI/icon/surfaceMesh.png create mode 100644 ConfigFiles/QUI/icon/surfaceWithEdge.png create mode 100644 ConfigFiles/QUI/icon/symmetry.png create mode 100644 ConfigFiles/QUI/icon/tempure.png create mode 100644 ConfigFiles/QUI/icon/userguidance.png create mode 100644 ConfigFiles/QUI/icon/vector.png create mode 100644 ConfigFiles/QUI/icon/wall.png create mode 100644 ConfigFiles/QUI/icon/water_drop.gif create mode 100644 ConfigFiles/QUI/icon/wireFrame.png create mode 100644 ConfigFiles/QUI/icon/workdir.png create mode 100644 ConfigFiles/QUI/icon/xMinus.png create mode 100644 ConfigFiles/QUI/icon/xPlus.png create mode 100644 ConfigFiles/QUI/icon/yMinus.png create mode 100644 ConfigFiles/QUI/icon/yPlus.png create mode 100644 ConfigFiles/QUI/icon/zMinus.png create mode 100644 ConfigFiles/QUI/icon/zPlus.png create mode 100644 ConfigFiles/QUI/main.ico create mode 100644 ConfigFiles/QUI/main.rc create mode 100644 ConfigFiles/QUI/post/Reflection.png create mode 100644 ConfigFiles/QUI/post/ScalarBar.png create mode 100644 ConfigFiles/QUI/post/back.png create mode 100644 ConfigFiles/QUI/post/calculator.png create mode 100644 ConfigFiles/QUI/post/clip.png create mode 100644 ConfigFiles/QUI/post/counter.png create mode 100644 ConfigFiles/QUI/post/editColor.png create mode 100644 ConfigFiles/QUI/post/end.png create mode 100644 ConfigFiles/QUI/post/first.png create mode 100644 ConfigFiles/QUI/post/fit.png create mode 100644 ConfigFiles/QUI/post/front.png create mode 100644 ConfigFiles/QUI/post/glyph.png create mode 100644 ConfigFiles/QUI/post/isocurve.png create mode 100644 ConfigFiles/QUI/post/isosurf.png create mode 100644 ConfigFiles/QUI/post/last.png create mode 100644 ConfigFiles/QUI/post/next.png create mode 100644 ConfigFiles/QUI/post/open.png create mode 100644 ConfigFiles/QUI/post/point.png create mode 100644 ConfigFiles/QUI/post/post.png create mode 100644 ConfigFiles/QUI/post/previous.png create mode 100644 ConfigFiles/QUI/post/rep_point.png create mode 100644 ConfigFiles/QUI/post/rep_surface.png create mode 100644 ConfigFiles/QUI/post/rep_surfaceWithEdge.png create mode 100644 ConfigFiles/QUI/post/rep_wireFrame.png create mode 100644 ConfigFiles/QUI/post/run.png create mode 100644 ConfigFiles/QUI/post/saveImage.png create mode 100644 ConfigFiles/QUI/post/slice.png create mode 100644 ConfigFiles/QUI/post/stop.png create mode 100644 ConfigFiles/QUI/post/streamline.png create mode 100644 ConfigFiles/QUI/post/up.png create mode 100644 ConfigFiles/QUI/post/val_on_cell.png create mode 100644 ConfigFiles/QUI/post/val_on_point.png create mode 100644 ConfigFiles/QUI/post/vector.png create mode 100644 ConfigFiles/QUI/post/video.png create mode 100644 ConfigFiles/QUI/tools/XMaterial.ico create mode 100644 ConfigFiles/QUI/uninstall.ico create mode 100644 ConfigFiles/QUI/window/2dplot.png create mode 100644 ConfigFiles/QUI/window/3dgraph.png create mode 100644 ConfigFiles/QUI/window/preWindow.png create mode 100644 ConfigFiles/QUI/window/startpage.png create mode 100644 ConfigFiles/WBCLFZSystemModule.qrc create mode 100644 ConfigFiles/icons/application_go.png create mode 100644 ConfigFiles/icons/application_link.png create mode 100644 ConfigFiles/icons/application_side_list.png create mode 100644 ConfigFiles/icons/bullet_arrow_bottom.png create mode 100644 ConfigFiles/icons/bullet_arrow_down.png create mode 100644 ConfigFiles/icons/bullet_arrow_top.png create mode 100644 ConfigFiles/icons/bullet_arrow_up.png create mode 100644 ConfigFiles/icons/cancel.png create mode 100644 ConfigFiles/icons/chart_curve.png create mode 100644 ConfigFiles/icons/clear_filters.png create mode 100644 ConfigFiles/icons/clear_sorting.png create mode 100644 ConfigFiles/icons/cog.png create mode 100644 ConfigFiles/icons/cog_go.png create mode 100644 ConfigFiles/icons/color_swatch.png create mode 100644 ConfigFiles/icons/comment_block.png create mode 100644 ConfigFiles/icons/cross.png create mode 100644 ConfigFiles/icons/database.png create mode 100644 ConfigFiles/icons/database_add.png create mode 100644 ConfigFiles/icons/database_go.png create mode 100644 ConfigFiles/icons/database_link.png create mode 100644 ConfigFiles/icons/database_refresh.png create mode 100644 ConfigFiles/icons/database_save.png create mode 100644 ConfigFiles/icons/document-link.png create mode 100644 ConfigFiles/icons/document-open.png create mode 100644 ConfigFiles/icons/edit_cond_formats.png create mode 100644 ConfigFiles/icons/filter.png create mode 100644 ConfigFiles/icons/folder.png create mode 100644 ConfigFiles/icons/folder_user.png create mode 100644 ConfigFiles/icons/help.png create mode 100644 ConfigFiles/icons/hourglass.png create mode 100644 ConfigFiles/icons/icons.qrc create mode 100644 ConfigFiles/icons/internet-web-browser.png create mode 100644 ConfigFiles/icons/key.png create mode 100644 ConfigFiles/icons/layout_sidebar.png create mode 100644 ConfigFiles/icons/package.png create mode 100644 ConfigFiles/icons/package_go.png create mode 100644 ConfigFiles/icons/package_rename.png create mode 100644 ConfigFiles/icons/package_save.png create mode 100644 ConfigFiles/icons/page_add.png create mode 100644 ConfigFiles/icons/page_copy.png create mode 100644 ConfigFiles/icons/page_copy_sql.png create mode 100644 ConfigFiles/icons/page_delete.png create mode 100644 ConfigFiles/icons/page_edit.png create mode 100644 ConfigFiles/icons/page_find.png create mode 100644 ConfigFiles/icons/page_foreign_key.png create mode 100644 ConfigFiles/icons/page_green.png create mode 100644 ConfigFiles/icons/page_key.png create mode 100644 ConfigFiles/icons/page_paintbrush.png create mode 100644 ConfigFiles/icons/page_paste.png create mode 100644 ConfigFiles/icons/page_save.png create mode 100644 ConfigFiles/icons/page_white_copy.png create mode 100644 ConfigFiles/icons/page_white_database.png create mode 100644 ConfigFiles/icons/page_white_text.png create mode 100644 ConfigFiles/icons/picture.png create mode 100644 ConfigFiles/icons/picture_add.png create mode 100644 ConfigFiles/icons/picture_delete.png create mode 100644 ConfigFiles/icons/picture_edit.png create mode 100644 ConfigFiles/icons/picture_save.png create mode 100644 ConfigFiles/icons/plugin_add.png create mode 100644 ConfigFiles/icons/plugin_delete.png create mode 100644 ConfigFiles/icons/printer.png create mode 100644 ConfigFiles/icons/resultset_first.png create mode 100644 ConfigFiles/icons/resultset_last.png create mode 100644 ConfigFiles/icons/resultset_next.png create mode 100644 ConfigFiles/icons/resultset_previous.png create mode 100644 ConfigFiles/icons/save_all.png create mode 100644 ConfigFiles/icons/script.png create mode 100644 ConfigFiles/icons/script_add.png create mode 100644 ConfigFiles/icons/script_delete.png create mode 100644 ConfigFiles/icons/script_edit.png create mode 100644 ConfigFiles/icons/server_add.png create mode 100644 ConfigFiles/icons/server_go.png create mode 100644 ConfigFiles/icons/sqlitebrowser.png create mode 100644 ConfigFiles/icons/style.png create mode 100644 ConfigFiles/icons/style_add.png create mode 100644 ConfigFiles/icons/style_delete.png create mode 100644 ConfigFiles/icons/style_edit.png create mode 100644 ConfigFiles/icons/tab.png create mode 100644 ConfigFiles/icons/tab_add.png create mode 100644 ConfigFiles/icons/table.png create mode 100644 ConfigFiles/icons/table_add.png create mode 100644 ConfigFiles/icons/table_delete.png create mode 100644 ConfigFiles/icons/table_edit.png create mode 100644 ConfigFiles/icons/table_row_delete.png create mode 100644 ConfigFiles/icons/table_row_insert.png create mode 100644 ConfigFiles/icons/table_save.png create mode 100644 ConfigFiles/icons/tag_blue.png create mode 100644 ConfigFiles/icons/tag_blue_add.png create mode 100644 ConfigFiles/icons/tag_blue_delete.png create mode 100644 ConfigFiles/icons/tag_blue_edit.png create mode 100644 ConfigFiles/icons/text_align_center.png create mode 100644 ConfigFiles/icons/text_align_justify.png create mode 100644 ConfigFiles/icons/text_align_left.png create mode 100644 ConfigFiles/icons/text_align_right.png create mode 100644 ConfigFiles/icons/text_bold.png create mode 100644 ConfigFiles/icons/text_indent.png create mode 100644 ConfigFiles/icons/text_italic.png create mode 100644 ConfigFiles/icons/text_paintbrush.png create mode 100644 ConfigFiles/icons/text_replace.png create mode 100644 ConfigFiles/icons/text_underline.png create mode 100644 ConfigFiles/icons/textfield_delete.png create mode 100644 ConfigFiles/icons/view-refresh.png create mode 100644 ConfigFiles/icons/wrench.png create mode 100644 ConfigFiles/qianfan.aps create mode 100644 ConfigFiles/qianfan.qrc create mode 100644 ConfigFiles/qianfan.rc create mode 100644 ConfigFiles/tools.qrc create mode 100644 ConfigFiles/translations.qrc create mode 100644 ConfigFiles/translations/GeometryWidgets_zh_CN.qm create mode 100644 ConfigFiles/translations/GeometryWidgets_zh_CN.ts create mode 100644 ConfigFiles/translations/GmshModule_zh_CN.qm create mode 100644 ConfigFiles/translations/GmshModule_zh_CN.ts create mode 100644 ConfigFiles/translations/IO_zh_CN.qm create mode 100644 ConfigFiles/translations/IO_zh_CN.ts create mode 100644 ConfigFiles/translations/MainWidgets_zh_CN.qm create mode 100644 ConfigFiles/translations/MainWidgets_zh_CN.ts create mode 100644 ConfigFiles/translations/MainWindow_zh_CN.qm create mode 100644 ConfigFiles/translations/MainWindow_zh_CN.ts create mode 100644 ConfigFiles/translations/Material_zh_CN.qm create mode 100644 ConfigFiles/translations/Material_zh_CN.ts create mode 100644 ConfigFiles/translations/ModuleBase_zh_CN.qm create mode 100644 ConfigFiles/translations/ModuleBase_zh_CN.ts create mode 100644 ConfigFiles/translations/PluginManager_zh_CN.qm create mode 100644 ConfigFiles/translations/PluginManager_zh_CN.ts create mode 100644 ConfigFiles/translations/PostInterface_zh_CN.qm create mode 100644 ConfigFiles/translations/PostInterface_zh_CN.ts create mode 100644 ConfigFiles/translations/PostWidgets_zh_CN.qm create mode 100644 ConfigFiles/translations/PostWidgets_zh_CN.ts create mode 100644 ConfigFiles/translations/ProjectTree_zh_CN.qm create mode 100644 ConfigFiles/translations/ProjectTree_zh_CN.ts create mode 100644 ConfigFiles/translations/README create mode 100644 ConfigFiles/translations/SARibbonBar_zh_CN.qm create mode 100644 ConfigFiles/translations/SARibbonBar_zh_CN.ts create mode 100644 ConfigFiles/translations/SelfDefObject_zh_CN.qm create mode 100644 ConfigFiles/translations/SelfDefObject_zh_CN.ts create mode 100644 ConfigFiles/translations/Setting_zh_CN.qm create mode 100644 ConfigFiles/translations/Setting_zh_CN.ts create mode 100644 ConfigFiles/translations/SolverControl_Zh_CN.qm create mode 100644 ConfigFiles/translations/SolverControl_Zh_CN.ts create mode 100644 ConfigFiles/translations/UserGuidence_zh_CN.qm create mode 100644 ConfigFiles/translations/UserGuidence_zh_CN.ts create mode 100644 ConfigFiles/translations/flags/ar.png create mode 100644 ConfigFiles/translations/flags/br.png create mode 100644 ConfigFiles/translations/flags/cn.png create mode 100644 ConfigFiles/translations/flags/cs.png create mode 100644 ConfigFiles/translations/flags/de.png create mode 100644 ConfigFiles/translations/flags/eg.png create mode 100644 ConfigFiles/translations/flags/es.png create mode 100644 ConfigFiles/translations/flags/flags.qrc create mode 100644 ConfigFiles/translations/flags/fr.png create mode 100644 ConfigFiles/translations/flags/gb.png create mode 100644 ConfigFiles/translations/flags/it.png create mode 100644 ConfigFiles/translations/flags/jp.png create mode 100644 ConfigFiles/translations/flags/kr.png create mode 100644 ConfigFiles/translations/flags/nl.png create mode 100644 ConfigFiles/translations/flags/pl.png create mode 100644 ConfigFiles/translations/flags/roc.png create mode 100644 ConfigFiles/translations/flags/ru.png create mode 100644 ConfigFiles/translations/flags/tr.png create mode 100644 ConfigFiles/translations/flags/ua.png create mode 100644 ConfigFiles/translations/flags/us.png create mode 100644 ConfigFiles/translations/place_translations_here create mode 100644 ConfigFiles/translations/sqlb_ar_SA.qm create mode 100644 ConfigFiles/translations/sqlb_ar_SA.ts create mode 100644 ConfigFiles/translations/sqlb_cs.qm create mode 100644 ConfigFiles/translations/sqlb_cs.ts create mode 100644 ConfigFiles/translations/sqlb_de.qm create mode 100644 ConfigFiles/translations/sqlb_de.ts create mode 100644 ConfigFiles/translations/sqlb_en_GB.qm create mode 100644 ConfigFiles/translations/sqlb_en_GB.ts create mode 100644 ConfigFiles/translations/sqlb_es_ES.qm create mode 100644 ConfigFiles/translations/sqlb_es_ES.ts create mode 100644 ConfigFiles/translations/sqlb_fa.ts create mode 100644 ConfigFiles/translations/sqlb_fr.qm create mode 100644 ConfigFiles/translations/sqlb_fr.ts create mode 100644 ConfigFiles/translations/sqlb_it.qm create mode 100644 ConfigFiles/translations/sqlb_it.ts create mode 100644 ConfigFiles/translations/sqlb_ja.qm create mode 100644 ConfigFiles/translations/sqlb_ja.ts create mode 100644 ConfigFiles/translations/sqlb_ko_KR.qm create mode 100644 ConfigFiles/translations/sqlb_ko_KR.ts create mode 100644 ConfigFiles/translations/sqlb_nl.qm create mode 100644 ConfigFiles/translations/sqlb_nl.ts create mode 100644 ConfigFiles/translations/sqlb_pl.qm create mode 100644 ConfigFiles/translations/sqlb_pl.ts create mode 100644 ConfigFiles/translations/sqlb_pt_BR.qm create mode 100644 ConfigFiles/translations/sqlb_pt_BR.ts create mode 100644 ConfigFiles/translations/sqlb_ru.qm create mode 100644 ConfigFiles/translations/sqlb_ru.ts create mode 100644 ConfigFiles/translations/sqlb_tr.qm create mode 100644 ConfigFiles/translations/sqlb_tr.ts create mode 100644 ConfigFiles/translations/sqlb_uk_UA.qm create mode 100644 ConfigFiles/translations/sqlb_uk_UA.ts create mode 100644 ConfigFiles/translations/sqlb_zh.qm create mode 100644 ConfigFiles/translations/sqlb_zh.ts create mode 100644 ConfigFiles/translations/sqlb_zh_TW.qm create mode 100644 ConfigFiles/translations/sqlb_zh_TW.ts create mode 100644 ConfigFiles/translations/translations.qrc create mode 100644 out/build/.cmake/api/v1/query/client-MicrosoftVS/query.json create mode 100644 out/build/.cmake/api/v1/reply/cache-v2-261c2d679b8e4328aa57.json create mode 100644 out/build/.cmake/api/v1/reply/cmakeFiles-v1-bc0bc38fca065813c476.json create mode 100644 out/build/.cmake/api/v1/reply/codemodel-v2-9e6acc76e9c260e6d44f.json create mode 100644 out/build/.cmake/api/v1/reply/directory-.-Debug-d0094a50bb2071803777.json create mode 100644 out/build/.cmake/api/v1/reply/directory-src-Debug-f4eac5f7c5c995a2fc37.json create mode 100644 out/build/.cmake/api/v1/reply/directory-src.BCBase-Debug-9e77281d0fa0abb8338d.json create mode 100644 out/build/.cmake/api/v1/reply/directory-src.Common-Debug-555e2cf014f3c4041037.json create mode 100644 out/build/.cmake/api/v1/reply/directory-src.ConfigOptions-Debug-b71c617a15753e1feef7.json create mode 100644 out/build/.cmake/api/v1/reply/directory-src.DataProperty-Debug-e62b5094254465b8eae0.json create mode 100644 out/build/.cmake/api/v1/reply/directory-src.Geometry-Debug-47abd9c13e3c83a6a38d.json create mode 100644 out/build/.cmake/api/v1/reply/directory-src.GeometryCommand-Debug-b092980e631bf26eb184.json create mode 100644 out/build/.cmake/api/v1/reply/directory-src.GeometryDataExchange-Debug-16b712f9a4a5206a84d4.json create mode 100644 out/build/.cmake/api/v1/reply/directory-src.GeometryWidgets-Debug-922ebaeb3b27204f3e4a.json create mode 100644 out/build/.cmake/api/v1/reply/directory-src.GmshModule-Debug-71bc511684637510f759.json create mode 100644 out/build/.cmake/api/v1/reply/directory-src.IO-Debug-876fd3c12fc7fb021ca1.json create mode 100644 out/build/.cmake/api/v1/reply/directory-src.LAMPCAE-Debug-d4b5f01aaa164ad1f37b.json create mode 100644 out/build/.cmake/api/v1/reply/directory-src.MainWidgets-Debug-5da52c7e437fcddc0ffe.json create mode 100644 out/build/.cmake/api/v1/reply/directory-src.MainWindow-Debug-25a31dc44f25cea869e8.json create mode 100644 out/build/.cmake/api/v1/reply/directory-src.Material-Debug-8403bf3d1dcab886c6f5.json create mode 100644 out/build/.cmake/api/v1/reply/directory-src.MeshData-Debug-5535fb953f5df19194dd.json create mode 100644 out/build/.cmake/api/v1/reply/directory-src.ModelData-Debug-198cd6aedd7ee7546ca1.json create mode 100644 out/build/.cmake/api/v1/reply/directory-src.ModuleBase-Debug-9091614ce4dba507c4ca.json create mode 100644 out/build/.cmake/api/v1/reply/directory-src.ParaClassFactory-Debug-aa4d601bf85090c49228.json create mode 100644 out/build/.cmake/api/v1/reply/directory-src.PluginCustomizer-Debug-db1a160e57b0782567a9.json create mode 100644 out/build/.cmake/api/v1/reply/directory-src.PluginManager-Debug-f052b377cd9a513b9f97.json create mode 100644 out/build/.cmake/api/v1/reply/directory-src.PluginMeshDataExchange-Debug-be0db16a6f3c69ccc587.json create mode 100644 out/build/.cmake/api/v1/reply/directory-src.PostAlgorithm-Debug-a68438d69bbbcbf3df12.json create mode 100644 out/build/.cmake/api/v1/reply/directory-src.PostCurveDataManager-Debug-c74dde3dadceba73281b.json create mode 100644 out/build/.cmake/api/v1/reply/directory-src.PostInterface-Debug-75f006e7614e11057388.json create mode 100644 out/build/.cmake/api/v1/reply/directory-src.PostPlotWidget-Debug-f99e9e350f45afa9f71f.json create mode 100644 out/build/.cmake/api/v1/reply/directory-src.PostRenderData-Debug-318d6865b7db010473b6.json create mode 100644 out/build/.cmake/api/v1/reply/directory-src.PostWidgets-Debug-0b40937599cd5da845cb.json create mode 100644 out/build/.cmake/api/v1/reply/directory-src.ProjectTree-Debug-816dac64c9e8f726dac2.json create mode 100644 out/build/.cmake/api/v1/reply/directory-src.ProjectTreeExtend-Debug-b5fcdcc747efd1df86d8.json create mode 100644 out/build/.cmake/api/v1/reply/directory-src.PythonModule-Debug-a63564c7b90f34c53d76.json create mode 100644 out/build/.cmake/api/v1/reply/directory-src.SARibbonBar-Debug-3c18d945d19d7e5f631e.json create mode 100644 out/build/.cmake/api/v1/reply/directory-src.SelfDefObject-Debug-3ea6c96be3c50bb4a22e.json create mode 100644 out/build/.cmake/api/v1/reply/directory-src.Settings-Debug-1a0da85cc8cd9667558f.json create mode 100644 out/build/.cmake/api/v1/reply/directory-src.SolverControl-Debug-b56b6244051353fee572.json create mode 100644 out/build/.cmake/api/v1/reply/directory-src.UserGuidence-Debug-57335dbdcf929945098b.json create mode 100644 out/build/.cmake/api/v1/reply/index-2024-03-20T07-28-18-0317.json create mode 100644 out/build/.cmake/api/v1/reply/target-BCBase-Debug-144852a9834429374bb4.json create mode 100644 out/build/.cmake/api/v1/reply/target-BCBase_autogen-Debug-f649e1b27d49b1d9297d.json create mode 100644 out/build/.cmake/api/v1/reply/target-BCBase_autogen_timestamp_deps-Debug-9e43c69b5fb9d56c4fea.json create mode 100644 out/build/.cmake/api/v1/reply/target-Common-Debug-2ad5fb95abe7e90e9794.json create mode 100644 out/build/.cmake/api/v1/reply/target-Common_autogen-Debug-7a9c97fb94c1a75c4478.json create mode 100644 out/build/.cmake/api/v1/reply/target-Common_autogen_timestamp_deps-Debug-c800ba80b03ae3ff837c.json create mode 100644 out/build/.cmake/api/v1/reply/target-ConfigOptions-Debug-ff8a87d6a0b432232f7b.json create mode 100644 out/build/.cmake/api/v1/reply/target-ConfigOptions_autogen-Debug-0f028f409eab5bd73a58.json create mode 100644 out/build/.cmake/api/v1/reply/target-ConfigOptions_autogen_timestamp_deps-Debug-53ed4ccb992a5e4cbc43.json create mode 100644 out/build/.cmake/api/v1/reply/target-DataProperty-Debug-190bd1cfd1a97cd01ae2.json create mode 100644 out/build/.cmake/api/v1/reply/target-DataProperty_autogen-Debug-4638356d3a0e008ba910.json create mode 100644 out/build/.cmake/api/v1/reply/target-DataProperty_autogen_timestamp_deps-Debug-132f8d8c02350e7e52e1.json create mode 100644 out/build/.cmake/api/v1/reply/target-Doxygen-Debug-7c3db3ebfd982f23d512.json create mode 100644 out/build/.cmake/api/v1/reply/target-Geometry-Debug-db1a1175d1a0b7a8f351.json create mode 100644 out/build/.cmake/api/v1/reply/target-GeometryCommand-Debug-e7665f9611eab3eb73e1.json create mode 100644 out/build/.cmake/api/v1/reply/target-GeometryCommand_autogen-Debug-56d273cbf7900b09f3d3.json create mode 100644 out/build/.cmake/api/v1/reply/target-GeometryCommand_autogen_timestamp_deps-Debug-e53ab7fdc37f75042932.json create mode 100644 out/build/.cmake/api/v1/reply/target-GeometryDataExchange-Debug-5d6ea264b5937e2f23f0.json create mode 100644 out/build/.cmake/api/v1/reply/target-GeometryDataExchange_autogen-Debug-6c7fe286560717d76526.json create mode 100644 out/build/.cmake/api/v1/reply/target-GeometryDataExchange_autogen_timestamp_deps-Debug-855d220c825b8f9cfc35.json create mode 100644 out/build/.cmake/api/v1/reply/target-GeometryWidgets-Debug-6c94b9a64d9f27143666.json create mode 100644 out/build/.cmake/api/v1/reply/target-GeometryWidgets_autogen-Debug-393a3fe609df268019d7.json create mode 100644 out/build/.cmake/api/v1/reply/target-GeometryWidgets_autogen_timestamp_deps-Debug-241de3747242e8545ef0.json create mode 100644 out/build/.cmake/api/v1/reply/target-Geometry_autogen-Debug-9c4188e39387e0abef81.json create mode 100644 out/build/.cmake/api/v1/reply/target-Geometry_autogen_timestamp_deps-Debug-99c4d4fa63338ef30171.json create mode 100644 out/build/.cmake/api/v1/reply/target-GmshModule-Debug-5e78905b6525182a5524.json create mode 100644 out/build/.cmake/api/v1/reply/target-GmshModule_autogen-Debug-509ee9ef7a5ae4da2083.json create mode 100644 out/build/.cmake/api/v1/reply/target-GmshModule_autogen_timestamp_deps-Debug-6afa7032252f83243033.json create mode 100644 out/build/.cmake/api/v1/reply/target-IO-Debug-f80106a685279877c218.json create mode 100644 out/build/.cmake/api/v1/reply/target-IO_autogen-Debug-22c115c696c207a789e7.json create mode 100644 out/build/.cmake/api/v1/reply/target-IO_autogen_timestamp_deps-Debug-d6711c1a2e45884b1c54.json create mode 100644 out/build/.cmake/api/v1/reply/target-LAMPCAE-Debug-928c22974a3b8f666c79.json create mode 100644 out/build/.cmake/api/v1/reply/target-LAMPCAE_autogen-Debug-0d0b1d60871bafd8bc8e.json create mode 100644 out/build/.cmake/api/v1/reply/target-LAMPCAE_autogen_timestamp_deps-Debug-dfa2f593c461c633ffef.json create mode 100644 out/build/.cmake/api/v1/reply/target-MainWidgets-Debug-f8e8121f47f37f333d97.json create mode 100644 out/build/.cmake/api/v1/reply/target-MainWidgets_autogen-Debug-592aaa8f401193823229.json create mode 100644 out/build/.cmake/api/v1/reply/target-MainWidgets_autogen_timestamp_deps-Debug-e7abf9d8f80a28535921.json create mode 100644 out/build/.cmake/api/v1/reply/target-MainWindow-Debug-44755f896a47b1dbc6f9.json create mode 100644 out/build/.cmake/api/v1/reply/target-MainWindow_autogen-Debug-d639ea465a87551a348e.json create mode 100644 out/build/.cmake/api/v1/reply/target-MainWindow_autogen_timestamp_deps-Debug-c0405d9ecaf5d33d7de1.json create mode 100644 out/build/.cmake/api/v1/reply/target-Material-Debug-5eb547a9a882c93cd5b5.json create mode 100644 out/build/.cmake/api/v1/reply/target-Material_autogen-Debug-3a16fd19d6edcf795fc2.json create mode 100644 out/build/.cmake/api/v1/reply/target-Material_autogen_timestamp_deps-Debug-0a3c394b1d68fcc91773.json create mode 100644 out/build/.cmake/api/v1/reply/target-MeshData-Debug-88542b4f910e26b63a07.json create mode 100644 out/build/.cmake/api/v1/reply/target-MeshData_autogen-Debug-22ffdb3b77f8b12d1947.json create mode 100644 out/build/.cmake/api/v1/reply/target-MeshData_autogen_timestamp_deps-Debug-ad6eb797f824e0a838c7.json create mode 100644 out/build/.cmake/api/v1/reply/target-ModelData-Debug-b7303bcf30f6288fb65c.json create mode 100644 out/build/.cmake/api/v1/reply/target-ModelData_autogen-Debug-ca819f71b5a06fcc789a.json create mode 100644 out/build/.cmake/api/v1/reply/target-ModelData_autogen_timestamp_deps-Debug-8dd7d80923bbd845d8b2.json create mode 100644 out/build/.cmake/api/v1/reply/target-ModuleBase-Debug-7833b55ca88869f4c47f.json create mode 100644 out/build/.cmake/api/v1/reply/target-ModuleBase_autogen-Debug-8042b02a7063075a047f.json create mode 100644 out/build/.cmake/api/v1/reply/target-ModuleBase_autogen_timestamp_deps-Debug-4a476fbc7e9396f79643.json create mode 100644 out/build/.cmake/api/v1/reply/target-ParaClassFactory-Debug-dfe56ff80bdc85aeee0c.json create mode 100644 out/build/.cmake/api/v1/reply/target-ParaClassFactory_autogen-Debug-69b7aca5849f82b0b0aa.json create mode 100644 out/build/.cmake/api/v1/reply/target-ParaClassFactory_autogen_timestamp_deps-Debug-46030b22a5aa0b5a1381.json create mode 100644 out/build/.cmake/api/v1/reply/target-PluginCustomizer-Debug-0f948f4908d1c9eab8b8.json create mode 100644 out/build/.cmake/api/v1/reply/target-PluginCustomizer_autogen-Debug-2812c6c3f3d05883a603.json create mode 100644 out/build/.cmake/api/v1/reply/target-PluginCustomizer_autogen_timestamp_deps-Debug-60973f2e3d995049838b.json create mode 100644 out/build/.cmake/api/v1/reply/target-PluginManager-Debug-755ce2dd42422dcee2f8.json create mode 100644 out/build/.cmake/api/v1/reply/target-PluginManager_autogen-Debug-ee1b7178c11752bbf1c0.json create mode 100644 out/build/.cmake/api/v1/reply/target-PluginManager_autogen_timestamp_deps-Debug-d0381371d1aa76811c59.json create mode 100644 out/build/.cmake/api/v1/reply/target-PluginMeshDataExchange-Debug-0c4480496742435080da.json create mode 100644 out/build/.cmake/api/v1/reply/target-PluginMeshDataExchange_autogen-Debug-3ccfe21a7a9c5c090bf0.json create mode 100644 out/build/.cmake/api/v1/reply/target-PluginMeshDataExchange_autogen_timestamp_deps-Debug-d5be7669b02c7bdfa374.json create mode 100644 out/build/.cmake/api/v1/reply/target-PostAlgorithm-Debug-ec3da06ebd5001e51f61.json create mode 100644 out/build/.cmake/api/v1/reply/target-PostAlgorithm_autogen-Debug-0861aa8a82e0acf36e01.json create mode 100644 out/build/.cmake/api/v1/reply/target-PostAlgorithm_autogen_timestamp_deps-Debug-6945a732d8452980c390.json create mode 100644 out/build/.cmake/api/v1/reply/target-PostCurveDataManager-Debug-b7ed0d2c648b1281cac4.json create mode 100644 out/build/.cmake/api/v1/reply/target-PostCurveDataManager_autogen-Debug-727985a535e65b59ad2e.json create mode 100644 out/build/.cmake/api/v1/reply/target-PostCurveDataManager_autogen_timestamp_deps-Debug-8d9d8030c97419083413.json create mode 100644 out/build/.cmake/api/v1/reply/target-PostInterface-Debug-322491428ba469c003e2.json create mode 100644 out/build/.cmake/api/v1/reply/target-PostInterface_autogen-Debug-1d65f102a2d63a3c451a.json create mode 100644 out/build/.cmake/api/v1/reply/target-PostInterface_autogen_timestamp_deps-Debug-4fe15b4d2497d788318d.json create mode 100644 out/build/.cmake/api/v1/reply/target-PostPlotWidget-Debug-48dff7a72d1b23e5c9d9.json create mode 100644 out/build/.cmake/api/v1/reply/target-PostPlotWidget_autogen-Debug-647111ef80ab4cde3314.json create mode 100644 out/build/.cmake/api/v1/reply/target-PostPlotWidget_autogen_timestamp_deps-Debug-02e10c43fac702728a9a.json create mode 100644 out/build/.cmake/api/v1/reply/target-PostRenderData-Debug-9bc3e88ef91e18f61eca.json create mode 100644 out/build/.cmake/api/v1/reply/target-PostRenderData_autogen-Debug-5667dc414f67aff32c20.json create mode 100644 out/build/.cmake/api/v1/reply/target-PostRenderData_autogen_timestamp_deps-Debug-9674524f44927d617d04.json create mode 100644 out/build/.cmake/api/v1/reply/target-PostWidgets-Debug-06d84294f779838e50f9.json create mode 100644 out/build/.cmake/api/v1/reply/target-PostWidgets_autogen-Debug-df90bd2e74782b99833d.json create mode 100644 out/build/.cmake/api/v1/reply/target-PostWidgets_autogen_timestamp_deps-Debug-fae109ac3554477c847b.json create mode 100644 out/build/.cmake/api/v1/reply/target-ProjectTree-Debug-ae655f9358b07b0db3a5.json create mode 100644 out/build/.cmake/api/v1/reply/target-ProjectTreeExtend-Debug-c97d2c16aa8719582815.json create mode 100644 out/build/.cmake/api/v1/reply/target-ProjectTreeExtend_autogen-Debug-1f90c671bc251ce5a28b.json create mode 100644 out/build/.cmake/api/v1/reply/target-ProjectTreeExtend_autogen_timestamp_deps-Debug-9cf59e40cdacd18dfb49.json create mode 100644 out/build/.cmake/api/v1/reply/target-ProjectTree_autogen-Debug-aacc1fa8f685d0a8a59c.json create mode 100644 out/build/.cmake/api/v1/reply/target-ProjectTree_autogen_timestamp_deps-Debug-90b72032cac148ad9743.json create mode 100644 out/build/.cmake/api/v1/reply/target-PythonModule-Debug-fd698a7d66a6c747bf3a.json create mode 100644 out/build/.cmake/api/v1/reply/target-PythonModule_autogen-Debug-eea898c2e7cd943098a2.json create mode 100644 out/build/.cmake/api/v1/reply/target-PythonModule_autogen_timestamp_deps-Debug-962356fa62c85c36765e.json create mode 100644 out/build/.cmake/api/v1/reply/target-SARibbonBar-Debug-c665fea387b990826aed.json create mode 100644 out/build/.cmake/api/v1/reply/target-SARibbonBar_autogen-Debug-814fabc12a6d548fd856.json create mode 100644 out/build/.cmake/api/v1/reply/target-SARibbonBar_autogen_timestamp_deps-Debug-844ac52f6fa9689c11e1.json create mode 100644 out/build/.cmake/api/v1/reply/target-SelfDefObject-Debug-0a0a430956354cae4d00.json create mode 100644 out/build/.cmake/api/v1/reply/target-SelfDefObject_autogen-Debug-136452b2a8a8b2d57369.json create mode 100644 out/build/.cmake/api/v1/reply/target-SelfDefObject_autogen_timestamp_deps-Debug-0f063a5e80f0f7312065.json create mode 100644 out/build/.cmake/api/v1/reply/target-Settings-Debug-679ee3a5d5a360adc2ed.json create mode 100644 out/build/.cmake/api/v1/reply/target-Settings_autogen-Debug-82a028e5e8bab467dc02.json create mode 100644 out/build/.cmake/api/v1/reply/target-Settings_autogen_timestamp_deps-Debug-10760dfb04a7ccf0a99b.json create mode 100644 out/build/.cmake/api/v1/reply/target-SolverControl-Debug-0a504d50d19bbd8d63a5.json create mode 100644 out/build/.cmake/api/v1/reply/target-SolverControl_autogen-Debug-fd4fed30b702707b5aa3.json create mode 100644 out/build/.cmake/api/v1/reply/target-SolverControl_autogen_timestamp_deps-Debug-9f9b8da9be97a5cf17ab.json create mode 100644 out/build/.cmake/api/v1/reply/target-UserGuidence-Debug-b2ad728d7cda2c217487.json create mode 100644 out/build/.cmake/api/v1/reply/target-UserGuidence_autogen-Debug-f95f6abacacf44ef7ec9.json create mode 100644 out/build/.cmake/api/v1/reply/target-UserGuidence_autogen_timestamp_deps-Debug-6bd0d217bb37b698b434.json create mode 100644 out/build/.cmake/api/v1/reply/toolchains-v1-2d3eac1e199c73b65707.json create mode 100644 out/build/CMakeCache.txt create mode 100644 out/build/CMakeDoxyfile.in create mode 100644 out/build/CMakeDoxygenDefaults.cmake create mode 100644 out/build/CMakeFiles/3.28.0-msvc1/CMakeCXXCompiler.cmake create mode 100644 out/build/CMakeFiles/3.28.0-msvc1/CMakeDetermineCompilerABI_CXX.bin create mode 100644 out/build/CMakeFiles/3.28.0-msvc1/CMakeRCCompiler.cmake create mode 100644 out/build/CMakeFiles/3.28.0-msvc1/CMakeSystem.cmake create mode 100644 out/build/CMakeFiles/3.28.0-msvc1/CompilerIdCXX/CMakeCXXCompilerId.cpp create mode 100644 out/build/CMakeFiles/3.28.0-msvc1/CompilerIdCXX/CMakeCXXCompilerId.exe create mode 100644 out/build/CMakeFiles/3.28.0-msvc1/CompilerIdCXX/CMakeCXXCompilerId.obj create mode 100644 out/build/CMakeFiles/CMakeConfigureLog.yaml create mode 100644 out/build/CMakeFiles/ShowIncludes/foo.h create mode 100644 out/build/CMakeFiles/ShowIncludes/main.c create mode 100644 out/build/CMakeFiles/ShowIncludes/main.obj create mode 100644 out/build/CMakeFiles/TargetDirectories.txt create mode 100644 out/build/CMakeFiles/clean_additional.cmake create mode 100644 out/build/CMakeFiles/cmake.check_cache create mode 100644 out/build/CMakeFiles/rules.ninja create mode 100644 out/build/CPackConfig.cmake create mode 100644 out/build/CPackSourceConfig.cmake create mode 100644 out/build/Documentation/Doxygen/Doxyfile create mode 100644 out/build/Testing/Temporary/LastTest.log create mode 100644 out/build/VSInheritEnvironments.txt create mode 100644 out/build/build.ninja create mode 100644 out/build/cmake_install.cmake create mode 100644 out/build/src/BCBase/CMakeFiles/BCBase_autogen.dir/AutogenInfo.json create mode 100644 out/build/src/BCBase/cmake_install.cmake create mode 100644 out/build/src/Common/CMakeFiles/Common_autogen.dir/AutogenInfo.json create mode 100644 out/build/src/Common/cmake_install.cmake create mode 100644 out/build/src/ConfigOptions/CMakeFiles/ConfigOptions_autogen.dir/AutogenInfo.json create mode 100644 out/build/src/ConfigOptions/cmake_install.cmake create mode 100644 out/build/src/DataProperty/CMakeFiles/DataProperty_autogen.dir/AutogenInfo.json create mode 100644 out/build/src/DataProperty/cmake_install.cmake create mode 100644 out/build/src/Geometry/CMakeFiles/Geometry_autogen.dir/AutogenInfo.json create mode 100644 out/build/src/Geometry/cmake_install.cmake create mode 100644 out/build/src/GeometryCommand/CMakeFiles/GeometryCommand_autogen.dir/AutogenInfo.json create mode 100644 out/build/src/GeometryCommand/__/qrc/qianfan.qrc.depends create mode 100644 out/build/src/GeometryCommand/__/qrc/translations.qrc.depends create mode 100644 out/build/src/GeometryCommand/cmake_install.cmake create mode 100644 out/build/src/GeometryDataExchange/CMakeFiles/GeometryDataExchange_autogen.dir/AutogenInfo.json create mode 100644 out/build/src/GeometryDataExchange/cmake_install.cmake create mode 100644 out/build/src/GeometryWidgets/CMakeFiles/GeometryWidgets_autogen.dir/AutogenInfo.json create mode 100644 out/build/src/GeometryWidgets/__/qrc/qianfan.qrc.depends create mode 100644 out/build/src/GeometryWidgets/__/qrc/translations.qrc.depends create mode 100644 out/build/src/GeometryWidgets/cmake_install.cmake create mode 100644 out/build/src/GmshModule/CMakeFiles/GmshModule_autogen.dir/AutogenInfo.json create mode 100644 out/build/src/GmshModule/__/qrc/qianfan.qrc.depends create mode 100644 out/build/src/GmshModule/__/qrc/translations.qrc.depends create mode 100644 out/build/src/GmshModule/cmake_install.cmake create mode 100644 out/build/src/IO/CMakeFiles/IO_autogen.dir/AutogenInfo.json create mode 100644 out/build/src/IO/cmake_install.cmake create mode 100644 out/build/src/LAMPCAE/CMakeFiles/LAMPCAE.dir/post-build.bat create mode 100644 out/build/src/LAMPCAE/CMakeFiles/LAMPCAE_autogen.dir/AutogenInfo.json create mode 100644 out/build/src/LAMPCAE/cmake_install.cmake create mode 100644 out/build/src/MainWidgets/CMakeFiles/MainWidgets_autogen.dir/AutogenInfo.json create mode 100644 out/build/src/MainWidgets/__/qrc/qianfan.qrc.depends create mode 100644 out/build/src/MainWidgets/__/qrc/translations.qrc.depends create mode 100644 out/build/src/MainWidgets/cmake_install.cmake create mode 100644 out/build/src/MainWindow/CMakeFiles/MainWindow_autogen.dir/AutogenInfo.json create mode 100644 out/build/src/MainWindow/__/qrc/qianfan.qrc.depends create mode 100644 out/build/src/MainWindow/__/qrc/translations.qrc.depends create mode 100644 out/build/src/MainWindow/cmake_install.cmake create mode 100644 out/build/src/Material/CMakeFiles/Material_autogen.dir/AutogenInfo.json create mode 100644 out/build/src/Material/__/qrc/qianfan.qrc.depends create mode 100644 out/build/src/Material/cmake_install.cmake create mode 100644 out/build/src/MeshData/CMakeFiles/MeshData_autogen.dir/AutogenInfo.json create mode 100644 out/build/src/MeshData/cmake_install.cmake create mode 100644 out/build/src/ModelData/CMakeFiles/ModelData_autogen.dir/AutogenInfo.json create mode 100644 out/build/src/ModelData/cmake_install.cmake create mode 100644 out/build/src/ModuleBase/CMakeFiles/ModuleBase_autogen.dir/AutogenInfo.json create mode 100644 out/build/src/ModuleBase/__/qrc/qianfan.qrc.depends create mode 100644 out/build/src/ModuleBase/__/qrc/translations.qrc.depends create mode 100644 out/build/src/ModuleBase/cmake_install.cmake create mode 100644 out/build/src/ParaClassFactory/CMakeFiles/ParaClassFactory_autogen.dir/AutogenInfo.json create mode 100644 out/build/src/ParaClassFactory/cmake_install.cmake create mode 100644 out/build/src/PluginCustomizer/CMakeFiles/PluginCustomizer_autogen.dir/AutogenInfo.json create mode 100644 out/build/src/PluginCustomizer/__/qrc/qianfan.qrc.depends create mode 100644 out/build/src/PluginCustomizer/cmake_install.cmake create mode 100644 out/build/src/PluginCustomizer/resource/customizer.qrc.depends create mode 100644 out/build/src/PluginManager/CMakeFiles/PluginManager_autogen.dir/AutogenInfo.json create mode 100644 out/build/src/PluginManager/cmake_install.cmake create mode 100644 out/build/src/PluginMeshDataExchange/CMakeFiles/PluginMeshDataExchange_autogen.dir/AutogenInfo.json create mode 100644 out/build/src/PluginMeshDataExchange/__/qrc/qianfan.qrc.depends create mode 100644 out/build/src/PluginMeshDataExchange/__/qrc/translations.qrc.depends create mode 100644 out/build/src/PluginMeshDataExchange/cmake_install.cmake create mode 100644 out/build/src/PostAlgorithm/CMakeFiles/PostAlgorithm_autogen.dir/AutogenInfo.json create mode 100644 out/build/src/PostAlgorithm/cmake_install.cmake create mode 100644 out/build/src/PostCurveDataManager/CMakeFiles/PostCurveDataManager_autogen.dir/AutogenInfo.json create mode 100644 out/build/src/PostCurveDataManager/cmake_install.cmake create mode 100644 out/build/src/PostInterface/CMakeFiles/PostInterface_autogen.dir/AutogenInfo.json create mode 100644 out/build/src/PostInterface/__/qrc/qianfan.qrc.depends create mode 100644 out/build/src/PostInterface/__/qrc/translations.qrc.depends create mode 100644 out/build/src/PostInterface/cmake_install.cmake create mode 100644 out/build/src/PostPlotWidget/CMakeFiles/PostPlotWidget_autogen.dir/AutogenInfo.json create mode 100644 out/build/src/PostPlotWidget/cmake_install.cmake create mode 100644 out/build/src/PostRenderData/CMakeFiles/PostRenderData_autogen.dir/AutogenInfo.json create mode 100644 out/build/src/PostRenderData/cmake_install.cmake create mode 100644 out/build/src/PostWidgets/CMakeFiles/PostWidgets_autogen.dir/AutogenInfo.json create mode 100644 out/build/src/PostWidgets/__/qrc/qianfan.qrc.depends create mode 100644 out/build/src/PostWidgets/__/qrc/translations.qrc.depends create mode 100644 out/build/src/PostWidgets/cmake_install.cmake create mode 100644 out/build/src/ProjectTree/CMakeFiles/ProjectTree_autogen.dir/AutogenInfo.json create mode 100644 out/build/src/ProjectTree/__/qrc/qianfan.qrc.depends create mode 100644 out/build/src/ProjectTree/__/qrc/translations.qrc.depends create mode 100644 out/build/src/ProjectTree/cmake_install.cmake create mode 100644 out/build/src/ProjectTreeExtend/CMakeFiles/ProjectTreeExtend_autogen.dir/AutogenInfo.json create mode 100644 out/build/src/ProjectTreeExtend/__/qrc/qianfan.qrc.depends create mode 100644 out/build/src/ProjectTreeExtend/__/qrc/translations.qrc.depends create mode 100644 out/build/src/ProjectTreeExtend/cmake_install.cmake create mode 100644 out/build/src/PythonModule/CMakeFiles/PythonModule_autogen.dir/AutogenInfo.json create mode 100644 out/build/src/PythonModule/cmake_install.cmake create mode 100644 out/build/src/SARibbonBar/CMakeFiles/SARibbonBar_autogen.dir/AutogenInfo.json create mode 100644 out/build/src/SARibbonBar/cmake_install.cmake create mode 100644 out/build/src/SARibbonBar/resource.qrc.depends create mode 100644 out/build/src/SelfDefObject/CMakeFiles/SelfDefObject_autogen.dir/AutogenInfo.json create mode 100644 out/build/src/SelfDefObject/__/qrc/qianfan.qrc.depends create mode 100644 out/build/src/SelfDefObject/__/qrc/translations.qrc.depends create mode 100644 out/build/src/SelfDefObject/cmake_install.cmake create mode 100644 out/build/src/Settings/CMakeFiles/Settings_autogen.dir/AutogenInfo.json create mode 100644 out/build/src/Settings/cmake_install.cmake create mode 100644 out/build/src/SolverControl/CMakeFiles/SolverControl_autogen.dir/AutogenInfo.json create mode 100644 out/build/src/SolverControl/__/qrc/qianfan.qrc.depends create mode 100644 out/build/src/SolverControl/__/qrc/translations.qrc.depends create mode 100644 out/build/src/SolverControl/cmake_install.cmake create mode 100644 out/build/src/UserGuidence/CMakeFiles/UserGuidence_autogen.dir/AutogenInfo.json create mode 100644 out/build/src/UserGuidence/__/qrc/qianfan.qrc.depends create mode 100644 out/build/src/UserGuidence/__/qrc/translations.qrc.depends create mode 100644 out/build/src/UserGuidence/cmake_install.cmake create mode 100644 out/build/src/cmake_install.cmake rename src/{FastCAE => LAMPCAE}/CMakeLists.txt (89%) rename src/{FastCAE => LAMPCAE}/CommandLine.cpp (96%) rename src/{FastCAE => LAMPCAE}/CommandLine.h (93%) rename src/{FastCAE/FastCAEVersionMacros.h => LAMPCAE/LAMPCAEVersionMacros.h} (60%) rename src/{FastCAE => LAMPCAE}/XBeautyUI.cpp (94%) rename src/{FastCAE => LAMPCAE}/XBeautyUI.h (96%) rename src/{FastCAE => LAMPCAE}/main.cpp (84%) rename src/PythonModule/py/{FastCAE.ini => LAMPCAE.ini} (100%) delete mode 100644 src/WBCLFZSystemModule/SharedModuleLib/TaskTreeClass.cpp create mode 100644 src/qrc/QUI/icon/LAMPCAEFrame.png diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..13566b8 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,8 @@ +# Default ignored files +/shelf/ +/workspace.xml +# Editor-based HTTP Client requests +/httpRequests/ +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml diff --git a/.idea/.name b/.idea/.name new file mode 100644 index 0000000..232d324 --- /dev/null +++ b/.idea/.name @@ -0,0 +1 @@ +LAMPCAE \ No newline at end of file diff --git a/.idea/FastCAE.iml b/.idea/FastCAE.iml new file mode 100644 index 0000000..f08604b --- /dev/null +++ b/.idea/FastCAE.iml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/.idea/QtSettings.xml b/.idea/QtSettings.xml new file mode 100644 index 0000000..e35db1d --- /dev/null +++ b/.idea/QtSettings.xml @@ -0,0 +1,26 @@ + + + + + + \ No newline at end of file diff --git a/.idea/codeStyles/Project.xml b/.idea/codeStyles/Project.xml new file mode 100644 index 0000000..f603881 --- /dev/null +++ b/.idea/codeStyles/Project.xml @@ -0,0 +1,7 @@ + + + + + + \ No newline at end of file diff --git a/.idea/codeStyles/codeStyleConfig.xml b/.idea/codeStyles/codeStyleConfig.xml new file mode 100644 index 0000000..79ee123 --- /dev/null +++ b/.idea/codeStyles/codeStyleConfig.xml @@ -0,0 +1,5 @@ + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..79b3c94 --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..a65901d --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..c132c9d --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/CMakeLists.txt b/CMakeLists.txt index 888e557..1402d21 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -4,16 +4,13 @@ # 指定所需cmake的最低版本 cmake_minimum_required(VERSION 3.21 FATAL_ERROR) # 设置项目åç§° 语言 -project(FastCAE +project(LAMPCAE VERSION 2.5.0 LANGUAGES CXX - DESCRIPTION "LAMPCAE,基于FastCAE的测é‡ä»¿çœŸåˆ†æžè½¯ä»¶ã€‚" - HOMEPAGE_URL "http://124.16.188.131:9699/web/server3/build/#/Guide/" + DESCRIPTION "LAMPCAE ,基于 FastCAE,一款å…费的CAEä»¿çœŸè½¯ä»¶ç ”å‘æ”¯æ’‘å¹³å°ã€‚" + HOMEPAGE_URL "http://www.LAMPCAE.com/" ) -# å¯åЍvcpkg -set(CMAKE_TOOLCHAIN_FILE D:/vcpkg/scripts/buildsystems/vcpkg.cmake) - #----------------------------------------------------------------------------- # 编译系统设置 #----------------------------------------------------------------------------- @@ -31,12 +28,12 @@ set(BUILD_SHARED_LIBS ON) # 检测æ“作系统 #----------------------------------------------------------------------------- if(CMAKE_SYSTEM_NAME STREQUAL "Linux") - set(FASTCAE_LINUX True) + set(LAMPCAE_LINUX True) if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) set(CMAKE_INSTALL_PREFIX "/opt/${PROJECT_NAME}" CACHE PATH "${PROJECT_NAME}的安装路径" FORCE) endif() elseif(CMAKE_SYSTEM_NAME STREQUAL "Windows") - set(FASTCAE_WIN True) + set(LAMPCAE_WIN True) if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) set(CMAKE_INSTALL_PREFIX "c:/Program Files/${PROJECT_NAME}" CACHE PATH "${PROJECT_NAME}的安装路径" FORCE) endif() @@ -47,14 +44,15 @@ endif() #----------------------------------------------------------------------------- # 测试环境定义(如果在支æŒcmake系统的IDE中编写代ç ï¼Œå¯ä»¥æ‰“开以下注释,并将路径修改为自己的Qt路径) #----------------------------------------------------------------------------- +set(LAMPCAE_WIN ON) set(CMAKE_INSTALL_PREFIX "${CMAKE_SOURCE_DIR}/install") message(STATUS "${PROJECT_NAME} will be installed to ${CMAKE_INSTALL_PREFIX}") if (NOT DEFINED Qt5_DIR) - if(FASTCAE_LINUX) + if(LAMPCAE_LINUX) set(Qt5_DIR "/opt/Qt5.14.2/5.14.2/gcc_64/lib/cmake/Qt5" CACHE PATH "Qt5Config.cmake所在目录" FORCE) - elseif(FASTCAE_WIN) - set(Qt5_DIR "D:/Qt/Qt5.14.2/5.14.2/msvc2017_64/lib/cmake/Qt5" CACHE PATH "Qt5Config.cmake所在目录" FORCE) + elseif(LAMPCAE_WIN) + set(Qt5_DIR "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5" CACHE PATH "Qt5Config.cmake所在目录" FORCE) endif() endif() @@ -62,14 +60,14 @@ endif() # 编译选项设置 #----------------------------------------------------------------------------- # 是å¦éœ€è¦ç¼–è¯‘è°ƒè¯•ç¨‹åº -option(FASTCAE_ENABLE_DEV "ON:å¼€å¯ä»£ç è°ƒè¯•,OFF:仅安装程åº" ON) +option(LAMPCAE_ENABLE_DEV "ON:å¼€å¯ä»£ç è°ƒè¯•,OFF:仅安装程åº" ON) # 是å¦è‡ªåŠ¨ä¸‹è½½ä¾èµ–库 -option(FASTCAE_AUTO_DOWNLOAD "如果extlibä¸å­˜åœ¨ï¼Œåˆ™è‡ªåŠ¨ä¸‹è½½(git)ä¾èµ–库" ON) -option(FASTCAE_ENABLE_OPENMP "使用OpenMP" OFF) -option(FASTCAE_ENABLE_MPI "使用MPI" OFF) -option(FASTCAE_DOXYGEN_DOC "生æˆDoxygen文档" OFF) -option(FASTCAE_INSTALLATION_PACKAGE "生æˆ${PROJECT_NAME}安装包" ON) -option(FASTCAE_DEBUG_INFO "输出调试信æ¯" ON) +option(LAMPCAE_AUTO_DOWNLOAD "如果extlibä¸å­˜åœ¨ï¼Œåˆ™è‡ªåŠ¨ä¸‹è½½(git)ä¾èµ–库" ON) +option(LAMPCAE_ENABLE_OPENMP "使用OpenMP" OFF) +option(LAMPCAE_ENABLE_MPI "使用MPI" OFF) +option(LAMPCAE_DOXYGEN_DOC "生æˆDoxygen文档" ON) +option(LAMPCAE_INSTALLATION_PACKAGE "生æˆ${PROJECT_NAME}安装包" ON) +option(LAMPCAE_DEBUG_INFO "输出调试信æ¯" ON) #----------------------------------------------------------------------------- # 指定编译选项 @@ -96,27 +94,27 @@ endif() #----------------------------------------------------------------------------- # 从系统查找OpenMP(动æ€åº“引入使用:OpenMP::OpenMP_CXX) #----------------------------------------------------------------------------- -if(FASTCAE_ENABLE_OPENMP) +if(LAMPCAE_ENABLE_OPENMP) find_package(OpenMP) if(OpenMP_CXX_FOUND) - add_definitions(-DFASTCAE_HAS_OPENMP) + add_definitions(-DLAMPCAE_HAS_OPENMP) endif() endif() #----------------------------------------------------------------------------- # 从系统查找MPI(头文件路径:${MPI_CXX_INCLUDE_DIRS} 动æ€åº“引入使用:MPI::MPI_CXX) #----------------------------------------------------------------------------- -if(FASTCAE_ENABLE_MPI) +if(LAMPCAE_ENABLE_MPI) find_package(MPI) if(MPI_CXX_FOUND) - add_definitions(-DFASTCAE_HAS_MPI) + add_definitions(-DLAMPCAE_HAS_MPI) endif() endif() #----------------------------------------------------------------------------- # è¾“å‡ºè°ƒè¯•ä¿¡æ¯ #----------------------------------------------------------------------------- -if(FASTCAE_DEBUG_INFO) +if(LAMPCAE_DEBUG_INFO) add_definitions(-DOUTPUT_DEBUG_INFO) endif() @@ -136,14 +134,8 @@ list(APPEND QtNeededModules OpenGL # Qwt PrintSupport # QwtPolar DBus - Qml - Sql - PrintSupport - QuickWidgets - DataVisualization - Charts ) -if(FASTCAE_LINUX) +if(LAMPCAE_LINUX) list(APPEND QtNeededModules XcbQpa) endif() @@ -160,11 +152,11 @@ endif() #----------------------------------------------------------------------------- # 从远程检索ä¾èµ–库 #----------------------------------------------------------------------------- -if(FASTCAE_AUTO_DOWNLOAD AND NOT EXISTS ${CMAKE_SOURCE_DIR}/extlib) - if(FASTCAE_WIN) - set(_extlibGitAddr "https://gitee.com/DISOGitee/FastCAEWinExtlib.git") - elseif(FASTCAE_LINUX) - set(_extlibGitAddr "https://gitee.com/DISOGitee/FastCAELinuxExtlib.git") +if(LAMPCAE_AUTO_DOWNLOAD AND NOT EXISTS ${CMAKE_SOURCE_DIR}/extlib) + if(LAMPCAE_WIN) + set(_extlibGitAddr "https://gitee.com/DISOGitee/LAMPCAEWinExtlib.git") + elseif(LAMPCAE_LINUX) + set(_extlibGitAddr "https://gitee.com/DISOGitee/LAMPCAELinuxExtlib.git") endif() find_package(Git REQUIRED) @@ -183,18 +175,12 @@ if(FASTCAE_AUTO_DOWNLOAD AND NOT EXISTS ${CMAKE_SOURCE_DIR}/extlib) endif() #----------------------------------------------------------------------------- -# 引入FastCAEçš„ä¾èµ–库 +# 引入LAMPCAEçš„ä¾èµ–库 #----------------------------------------------------------------------------- list(APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake") -# boost -set(BOOST_ROOT "D:/vcpkg/installed/x64-windows") -set(BOOST_INCLUDE_DIRS "${BOOST_ROOT}/include") -set(BOOST_LIBRARY_DIRS "${BOOST_ROOT}/lib") -find_package(Boost REQUIRED) - # VTK -find_package(VTK 9.3 REQUIRED ) +find_package(VTK REQUIRED) # OpenCASCADE find_package(OpenCASCADE REQUIRED) @@ -220,10 +206,6 @@ find_package(Gmsh REQUIRED) # Python find_package(Python REQUIRED) -# PCL -find_package(PCL REQUIRED) - - #----------------------------------------------------------------------------- # 检索系统python(需è¦ä¿®æ”¹cmakeæœç´¢è·¯å¾„) #----------------------------------------------------------------------------- @@ -235,7 +217,6 @@ find_package(PCL REQUIRED) # å¼€å¯é¡¹ç›®åˆ†ç»„ #----------------------------------------------------------------------------- set_property(GLOBAL PROPERTY USE_FOLDERS ON) - # å¯ä»¥ä¿®æ”¹cmake预定义的target分组åç§° #set_property(GLOBAL PROPERTY PREDEFINED_TARGETS_FOLDER "Predefined") @@ -248,22 +229,22 @@ set(CMAKE_INSTALL_LIBDIR "lib") #----------------------------------------------------------------------------- # 定义项目构建中间文件的生æˆç›®å½• #----------------------------------------------------------------------------- -if(FASTCAE_WIN) +if(LAMPCAE_WIN) set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY_DEBUG ${CMAKE_BINARY_DIR}/Debug) set(CMAKE_LIBRARY_OUTPUT_DIRECTORY_DEBUG ${CMAKE_BINARY_DIR}/Debug) set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_DEBUG ${CMAKE_BINARY_DIR}/Debug) set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY_RELEASE ${CMAKE_BINARY_DIR}/Release) set(CMAKE_LIBRARY_OUTPUT_DIRECTORY_RELEASE ${CMAKE_BINARY_DIR}/Release) set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_RELEASE ${CMAKE_BINARY_DIR}/Release) - if(FASTCAE_ENABLE_DEV) + if(LAMPCAE_ENABLE_DEV) set(DEVRUNTIME_BINDIR_DEBUG ${CMAKE_RUNTIME_OUTPUT_DIRECTORY_DEBUG}) set(DEVRUNTIME_BINDIR_RELEASE ${CMAKE_RUNTIME_OUTPUT_DIRECTORY_RELEASE}) endif() -elseif(FASTCAE_LINUX) +elseif(LAMPCAE_LINUX) set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_LIBDIR}) set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_LIBDIR}) set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_BINDIR}) - if(FASTCAE_ENABLE_DEV) + if(LAMPCAE_ENABLE_DEV) set(DEVRUNTIME_BINDIR ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}) set(DEVRUNTIME_LIBDIR ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}) endif() @@ -273,7 +254,7 @@ endif() # 定义å˜é‡ä½œä¸ºé¡¹ç›®çš„安装路径 #----------------------------------------------------------------------------- set(INSTALL_BINDIR ${CMAKE_INSTALL_BINDIR}) -if(FASTCAE_WIN) +if(LAMPCAE_WIN) set(INSTALL_LIBDIR ${CMAKE_INSTALL_BINDIR}) else() set(INSTALL_LIBDIR ${CMAKE_INSTALL_LIBDIR}) @@ -292,8 +273,8 @@ add_subdirectory(src) #----------------------------------------------------------------------------- # å•元测试Ctest #----------------------------------------------------------------------------- -option(FASTCAE_ENABLE_TEST "å¼€å¯å•元测试(尚未开å‘完æˆï¼‰" OFF) -if(FASTCAE_ENABLE_TEST) +option(LAMPCAE_ENABLE_TEST "å¼€å¯å•元测试(尚未开å‘完æˆï¼‰" OFF) +if(LAMPCAE_ENABLE_TEST) # 开坿µ‹è¯• enable_testing() #添加测试项目 @@ -303,7 +284,7 @@ endif() #----------------------------------------------------------------------------- # ç”Ÿæˆæ–‡æ¡£(Doxygen + Breathe + Sphinx) #----------------------------------------------------------------------------- -if(FASTCAE_DOXYGEN_DOC) +if(LAMPCAE_DOXYGEN_DOC) find_package(Doxygen REQUIRED) if(DOXYGEN_FOUND) message(STATUS "Found doc generate Tool: Doxygen") @@ -332,8 +313,8 @@ endif() #----------------------------------------------------------------------------- # 安装包生æˆ(windows环境光需è¦NSIS 3.03+) #----------------------------------------------------------------------------- -if(FASTCAE_INSTALLATION_PACKAGE) - if (FASTCAE_WIN) +if(LAMPCAE_INSTALLATION_PACKAGE) + if (LAMPCAE_WIN) find_program(NSIS_EXECUTABLE NSIS.exe) # WIXå°šæœªè°ƒè¯•ï¼Œæš‚æ—¶å–æ¶ˆ #find_program(WIX_EXECUTABLE candle.exe) diff --git a/CMakeLists.txt.user b/CMakeLists.txt.user index 7249f0e..9794693 100644 --- a/CMakeLists.txt.user +++ b/CMakeLists.txt.user @@ -1,6 +1,6 @@ - + EnvironmentId @@ -108,7 +108,7 @@ -DCMAKE_C_COMPILER:FILEPATH=%{Compiler:Executable:C} -DCMAKE_CXX_COMPILER:FILEPATH=%{Compiler:Executable:Cxx} -DCMAKE_CXX_FLAGS_INIT:STRING=%{Qt:QML_DEBUG_FLAG} - D:\WBFZCPP\source\build-FastCAE-Desktop_Qt_5_15_2_MSVC2019_64bit-Debug + D:\WBFZCPP\source\build-LAMPCAE-Desktop_Qt_5_15_2_MSVC2019_64bit-Debug @@ -164,7 +164,7 @@ -DCMAKE_C_COMPILER:FILEPATH=%{Compiler:Executable:C} -DCMAKE_CXX_COMPILER:FILEPATH=%{Compiler:Executable:Cxx} -DCMAKE_CXX_FLAGS_INIT:STRING=%{Qt:QML_DEBUG_FLAG} - D:\WBFZCPP\source\build-FastCAE-Desktop_Qt_5_15_2_MSVC2019_64bit-Release + D:\WBFZCPP\source\build-LAMPCAE-Desktop_Qt_5_15_2_MSVC2019_64bit-Release @@ -218,7 +218,7 @@ -DCMAKE_C_COMPILER:FILEPATH=%{Compiler:Executable:C} -DCMAKE_CXX_COMPILER:FILEPATH=%{Compiler:Executable:Cxx} -DCMAKE_CXX_FLAGS_INIT:STRING=%{Qt:QML_DEBUG_FLAG} - D:\WBFZCPP\source\build-FastCAE-Desktop_Qt_5_15_2_MSVC2019_64bit-RelWithDebInfo + D:\WBFZCPP\source\build-LAMPCAE-Desktop_Qt_5_15_2_MSVC2019_64bit-RelWithDebInfo @@ -273,7 +273,7 @@ -DCMAKE_CXX_COMPILER:FILEPATH=%{Compiler:Executable:Cxx} -DCMAKE_CXX_FLAGS_INIT:STRING=%{Qt:QML_DEBUG_FLAG} 0 - D:\WBFZCPP\source\build-FastCAE-Desktop_Qt_5_15_2_MSVC2019_64bit-Profile + D:\WBFZCPP\source\build-LAMPCAE-Desktop_Qt_5_15_2_MSVC2019_64bit-Profile @@ -327,7 +327,7 @@ -DCMAKE_C_COMPILER:FILEPATH=%{Compiler:Executable:C} -DCMAKE_CXX_COMPILER:FILEPATH=%{Compiler:Executable:Cxx} -DCMAKE_CXX_FLAGS_INIT:STRING=%{Qt:QML_DEBUG_FLAG} - D:\WBFZCPP\source\build-FastCAE-Desktop_Qt_5_15_2_MSVC2019_64bit-MinSizeRel + D:\WBFZCPP\source\build-LAMPCAE-Desktop_Qt_5_15_2_MSVC2019_64bit-MinSizeRel @@ -391,14 +391,14 @@ 2 false - FastCAE - CMakeProjectManager.CMakeRunConfiguration.FastCAE - FastCAE + LAMPCAE + CMakeProjectManager.CMakeRunConfiguration.LAMPCAE + LAMPCAE false true true true - D:/WBFZCPP/source/build-FastCAE-Desktop_Qt_5_15_2_MSVC2019_64bit-Debug/Debug + D:/WBFZCPP/source/build-LAMPCAE-Desktop_Qt_5_15_2_MSVC2019_64bit-Debug/Debug 1 diff --git a/CMakePresets.json b/CMakePresets.json new file mode 100644 index 0000000..927a1e3 --- /dev/null +++ b/CMakePresets.json @@ -0,0 +1,25 @@ +{ + "version": 3, + "configurePresets": [ + { + "hidden": true, + "name": "Qt", + "cacheVariables": { + "CMAKE_PREFIX_PATH": "$env{QTDIR}" + }, + "environment": { + "PATH": "$penv{PATH};$env{QTDIR}/bin" + }, + "vendor": { + "qt-project.org/Qt": { + "checksum": "Sp19WUpde73JS7nK33HZMqVZTyI=" + } + } + } + ], + "vendor": { + "qt-project.org/Presets": { + "checksum": "+knLrtcP3xTAxZGDu4uUoEIBvBs=" + } + } +} \ No newline at end of file diff --git a/CMakeUserPresets.json b/CMakeUserPresets.json new file mode 100644 index 0000000..a4f33d9 --- /dev/null +++ b/CMakeUserPresets.json @@ -0,0 +1,55 @@ +{ + "version": 3, + "configurePresets": [ + { + "name": "Qt-Debug", + "inherits": "Qt-Default", + "binaryDir": "${sourceDir}/out/build", + "cacheVariables": { + "CMAKE_BUILD_TYPE": "Debug", + "CMAKE_CXX_FLAGS": "-DQT_QML_DEBUG" + } + }, + { + "name": "Qt-Release", + "inherits": "Qt-Default", + "binaryDir": "${sourceDir}/out/build", + "cacheVariables": { + "CMAKE_BUILD_TYPE": "Release" + } + }, + { + "hidden": true, + "name": "Qt-Default", + "inherits": "5.15.2_msvc2019_64", + "vendor": { + "qt-project.org/Default": { + "checksum": "hFHqn7KAkQOhAQUh9kbJbv7R0NY=" + } + } + }, + { + "hidden": true, + "name": "5.15.2_msvc2019_64", + "inherits": "Qt", + "environment": { + "QTDIR": "C:/QT/5.15.2/MSVC2019_64" + }, + "architecture": { + "strategy": "external", + "value": "x64" + }, + "generator": "Ninja", + "vendor": { + "qt-project.org/Version": { + "checksum": "ptcEk6DrMo+x2qNR/kb8KvrnFFM=" + } + } + } + ], + "vendor": { + "qt-project.org/Presets": { + "checksum": "phjq3Wa78xncEM1Mjqgn2bZOHPo=" + } + } +} \ No newline at end of file diff --git a/ConfigFiles/Hello.png b/ConfigFiles/Hello.png new file mode 100644 index 0000000000000000000000000000000000000000..13e02cdbd5a78267bd2ff9ff6c6cc2e08613e9c6 GIT binary patch literal 88894 zcmeFZ`9IX(8$WD}rR+s1YeJDMWzAR$%*qm4)#8oZG(I_;X3dH5jh%0WK-j)dED7pKFAqUV>oP5%4Ur6*zk{pNCqg8bow zRmZ7$$-{@PQ~#I9|Fy~gjg$YsuASq_8U$FLXc#s`OTBOQg@n=LLkuY`vShteb1Z#_Cqvbd#+AM6T@E3S3WDU@cVjN(eeLCj9tOz zLN$*7$m%}))=hz6tYiYi%#XbLFnJ@Zga43;!GILAK7y@-YH}H+4Z#kf=$4HYlhBVLq1@o@<)1)mE9mK_8U2rt8R(NO_0J?gF8J5sYu6@$F_o@g{|?!>rT+Kx zOM$KItz6wwTlRPJ8&E)Ix&K%(i0?E9s1opVkGG|iN(2`qjmlt$atCXnf-| zy`wn^_%9!-q?DLExf7Sl7y=bt&b_S*43)N+bVy#;YYxL-&N#`Ylpu1!|ImOchX5{s zmV;m{_QVd=s5vzAz!{~$8TJ&06uB%9@U4M-7hpcm7pLo1DS51NvJ_|C|AdqNc<3U| zvxVE5F?xjU#L(fu%pUH||E#8ZXtnrjzqE)kv6Jab+8OGuR}TfLY5R|UUrjH?6noa$ zXSDW1T)yA`CyEdbvb}tyXXZbf{AbeV-s41SJaX1V^U&o3gxW40Zk@CugZ`S)CQ*hF zi4e1WL$O7wylC>-5hmJFdb8PX$gQPGBDErRiChxg-p9v$QK*wAxaSm9j9pR?#Lq`Y zhxsQw2asKoOh_a}-nPOfO(Ol?VT2fq?`TB$I=7q}VH{x{iSuxD7IyY60DpY*7ud*C z5cQNRzW=8FGE-je=QL<3O&vv__r)Y;HFoEVeCG*~voe6iCpoPx4>Zy)^^|)<_lD6O zoL7rO^43!O)Q}lVEhc#hvj!Toy*QEECcWII8oGschI9!X;j{GVoclnvXA$rCY9k5nkgC+P{S{$M2 zYwN7&ymW5t$(>k#GpDoKe8-1s&&%e%??%w@CabyDmtUVh-Lw;y$FOqtesUmP)Tt zxunQ%mo*WMN<`ZCSFp^mkfEZF(c^sUr`FWg#?rD=H?Kyd6@57bgyHo0^%5m$Ucv%- zuF?ym`&(!VQW5`pc7ZqJGy#DTRtp8TnwEXYWOtSN#)~Ezho^Y?+m2?EBK2W{UD|hA zAHEU8-WR@30G?Q^euh1|4$lVhgd|?$<50`F9T)&3YgB`6DSZub#{&^2Ty4(t%yA zkt|wx9=&LAFjt+gBdeC1>#6?WQc(|X5~`gR~jwT@9ox7 z;OIFcD=o0_O1;DpS`TakN&8N7SE-5V+&7~hZ{BDib3;0}F#~?G5hxf_Bj=xt%3!+< z@miE9i`4#)x zERs8;IYoCGC+~mu?OK=S`Gb;fh|`Ug+lq8H+)%Tk{9AVz}jf2Ma8a|lh8;MoD1EcdhSJ|yxDJ{1c z0o%uCu@J%9Kf$A4P}~?>$GYPzx%EABI`CP9mcI`OoQ0_6XDY8%;XmC*7`B(FqnGY? zZKbApFR$LI@p#YQ|LT96M)8D43GWjKt4^)<+Uc&UZ`Q*OFww}5Umk7gUlM-M{@QIP z=gx?4*X?cfozGaeQU~cD-(3Lh-`hyRiqbOf25un-H;9Hywsc&`8Oi4rWMcodm7B?V zP&om`zk5U^KCu9waZ$r3>%oIxBDKz)lvV)@S2|1u>t8(fBm2FQ3| z$rF@`l!_z-t)p05jS}bN-ZNN3ydui5axO*thfx3hgy) z+`M4abpgbda@H~Ut^sc~Z-7*_YIXR!MtaVxX#$DrfQ>eZ3D{`unmCffxjy~3z8gA# zW3550k`Wkt-fC;UPS|(LpzjN%5BZ_w>_ibCxWepI4U3pj7vCY(#AF23fL%c|DGO3Q z`Y>e!ua6HqGcS5=`ST`g3AH}w`|WLweP_a>K$UwiIHtUw{B+iga@yblI$TKq74oNW zd#f)hyvE>q2NXqVh0+CfWiQZnzS* zoq-LWvhMPK<4Y9VBxZmht5rbpEwstCpQ1(n!b8##f-Q0Sak=8&5I6)gpuY9QJ$C7C zW7yBQ(=nW5aT3x{kgzEoIb`GT3Kp}k6Sz~&1w@=bXATcvm2SvX{PHp)w?(d6EpF#r zed|;0yy`RK)c~&>`ekAajrAcKp4rkDD4KJt*M8tjYut#fCLK3gexD@lNwVM9aGKAT zGzvZhp!jwJ7a6j%mN5Kd{w?%6IEwM zuLbc}tME0n{$0IZD$)F;o}AA7b7iJ2ww8=s;^HK{OTeE`F5#M>Fdi!xAy%e8SjZ|> zMf2(R*I_wHzM~sLoA2Ip+SarG#48{S_y+1Cw!v!4Fh?iEV%B^q`e9VWN({2V$yP&^wUH zntQZOx{UYtw4!KGu@rHP2P9Ng2p7GjP>ul0M$7o5DX>@_)DHi)1JJGU0^91Q}?=fd&ADsV$s*298C;!`s;g+1B z{2A9~iG=>CO1*M#dI$L|qdV{B2pQ~VJ0PrVN>r#+J3FLDOkhLi#JP+3G2D&|EQSUs zqU>;QZ*QwD@y^MGHW;jr`4IobBQR8A%%6%yuSwi_*1b8nMP10LBU4Xb&=qAT9$aF| zVz_bY;SY34?6cTa`8V1mZ8y$qX+!4^`M4kQ8D-#tVz_)PymBWy!|@dKiM~z}wPg+$ z#ywKgdFvyjK@Y8K?>dEVk!JYcwu!G;ccZIo)*||ExT-kkzdaJJR z+IMKmg|U4rH<+keeFf41soEiQdDV*WMUq@{(1b=Br+FRLalv=ndZU6(3HE1!vlZ+v zc-srsq0A@NU!ZR|JA7fvLN8Abf_!JejsahiEZc&r+TJ-8J{C3xpuUo21*!!p*IW6* zwZtg8dd8{b=>qQ@!lL3tO%2!ss_Icy_p+tGaW}|o)`RTqnJ>c~h8(T=7h!hSEQ5^p z(Rwuat#}aQ*Z4aB<}sf$DnoHe_7lnrtu<9eC!x9EI8J-Jjy_ zFmjdI)6y1UVa<9(39qkiq0=`tlJe6&>C>S;P0N_UjFRplyZv;L z-O3z#v$?SQHy_Ph18`(E+Rf1IrtqyAxY9L}BT zE9tgAHTjJelh$!st)8x<6g?hQav09w|@X!dm_QQCE4cvy*u?9?EcaJVk0rb@R);s(*NfQul%? z#Lc$p36m=TA-X{~56oZPs-wsS2wt1<%2VCqf2wHmzdY-}r?5B5O_8AFEP8$4Id|98 z8I;A`KEzqIBq!Er&e{;#zVg~Y&AyrZlGBE4bDlC=sKBnpKbQOUsMS%0y!&&InOmHv zIBOXzEcufEQNtyeOSmU+#HCpTCNy_HRuNA$jk*w)pH}1rkft<`gFczra4zInT?@PR z^^zzB^W6>vrZY5Yz8io4>t+lnW}H0Y_+vp;;}lLm?e=)v>NY}qNgQiEch#*+L2(>6 zYMNz!+3Q<~9didmHY9tVCg^KCnsNe9p?MIW5hG#~2l4(&Lnc;m&_u8j#jkyaPYbAN zrkt8luGro6##8=$_a4B}Id^XftzT>+&={+OCrPbK@S;YRtTRcSlhk zg2@SW+golRzu_c*HxLfJb!}yGU-svepRbAYV3x;lW!Tk;up_WZEnlLJJuDB6@#1b+ zZL+=;v;MY@Oo0n5N|ru3gca9Arpd_93mWIOBpLyL_VyI1#L^jZnMC3jED8VIxO27| zs!xoLBu@3_FyFy%McL<@PfH&k!s$J3?VN@lICGPWpR2Fc?6hCYI~OAJm6Uz99;!8_ z2{4Frf{YKw%1SzEWC zN0MSmVtYc>C&3OA=u@0&6ob)c2zkN2B`;ZNk@orrz%bj1fPL2lNC~52qVeQiuIpT_ zNTgP^ONCY+zZv(HNi9;+x@|3)&Lkq46wN_B73xBXcMsXDw}|nYK6w6nj_V&iH1*jB zP7DI`?pvgE;d!S^CwCdwm76v#BRs2=4)G_o7T5iy)c7Pm%mK*|nnrf5cuPt*h=`c?fFatMt-y~>(< z=I(5zCo{jLU?hoJRQxQpS=r5%(`~az#tu?{hJPg_$;H8WIQQWMjLtF zrripJrb%FdWxqc0rxzzqQr3tJf+zK-)8N}fYb5Gt(*XIV7;T5`!iP(XeH5OaX4C^N z1^2&?9_eWRm?g+n&A6g7uz)B!{r(K8!t+}MYtMhhh_=i94(4+SVXdT5@#SHPZrFa*FS2j@2E;c zKSlt4TBq$_Z$1=lC!t+1R}0TMQY;g<8MmPws`}`L{r*2QQ9qVGEnGQyeBq-H@!`iK zk#grQTHlA|Y1b2DtK^zox(c5v8e7GKZjx2fZ@h4em}L;8I>yiV_M-;WDwR%Q50Jn1 z47u-g(BDAIsSmoTw2Ig}Iam3CK3$7at@9y18|`-|MLzX!ZWw1$2>bVE*3WD_k@5N4 zpy5SqrRlMKNQ6bu+Z0md;uvOzsk1e-?RBxFdqxopXvh^Ef8rmqDKN*iPL(HUN<>Q4 zq2O0$;IYkr5*?7N@Pqy^y774E{2|9L*xuOSFD2(zuODUGly2>;1{lhbP8DfG=zLdF zrVcNA`+^Qb1zRLn!BOlrg19p*PfLZyd50}${SWYBS|g}NkAN`!dm1y?LKFLfX-c67T-`rn)Vi&K?07z!%C&1Cq)(n8nr+9I7d>$U8k)5=z``FA zn&0+Ws z79u*q?xZL^;7?)M8^H4*S1qXnY8~4WJKQW52#RE-fn`r`|yKL1aKzk!^faM_Iul2vxWmmolqhAOR zuOd~ZiQig#hqFL^A4 z6uF_EHbFsm(wK5M`qN1dxw|H17XO=M^ySFie6A<#tYo&h1E^jxn9%ww!PgA-MdQZx)IqNmOI13hn2r}3UkMqQ! z-y%~fET%BJP=Kao&>-MQHPgiKFyA3ne;SeanR<2$1)+XT5d5&_F|fd32*;^{YAnPBSG z+2pIf_mA5wnm<3R*PrV=|3Vws0o5ll#EVaRZ?#3D1T`sNl96vrj}0!MdxVvIU^83a z9S#G9`-{wj$7!!!K5}d_NR(FjR+B8fUp1?)Gco)L{mVL@z_Es>=6$ z3Wqcv##8tzot_)q0_SRO>c6^3_dKI!r_GqoH~iUbg5s0 zps9J^<2eGewBO3u3AL;1Ma?C^|LbfFBW z3%Pa&a)&aZ$A2K_yY$)eFYW)#0wkA*QA=UaoleVW6)7zZj6+uw`O?~D$BKw{Yiw1< zRK!F~*=hLgtc2(*A=3(ZF0SwI&>sXgOlu_FahUQA$b-QbmlB?;p<8?hYT6;jRt6x9 zIWGwMM9lGkdQTO(^Y{G|l%o2N2?|^%=u*I-H#dCKY~Unw&#bwy{))v8x88a$W|U=( zJ4o~bonx&VB(PN!W+sR2A1Fmp#K$jMorTU?Bx61wgB9e~WwiZs&UuUC*vC%7u}BKNB^> zCk29T^@a;UI?*85)P#+Ug_*8h^^49;DO`Btwu8c;wL8WgvJ$lX4|#V3-u@%&w{*O8?U%213VGh-XN7GM317GXeW%UXQ zTHp~Fq7O52T0#4I@|(Z|gKPbxKc*U@lmB$GJ^%~pFARH{2Q@ma(x2gE^*&TN!sv~P zPqw&SZ9ez-8D<~CJ7VG% zPOCeF5Z?UV$)hA71#f3jVItRTLfrP9+z0b(@AY@vAzeF!CJ}6F`h<_zPUD_zYNUzv zS4};})jmtL`lMC$PXYld?Gbe%h^5-?`ll;A>90?#kkc-Ej;R=4!ydyjn}+#Xt)+Lc zpL4H7(POaRFZB;s9c=z-eZ*-&0lv7*p@v*pqjlA=;>z%|Zy& zy6i@D6H4elQ5z|*$ijIZ&i6TIQnvUl{NSIY-RU_&+a2C>Y|&}++B1yYNpe{|!n9;B z(3G6MRkK#@9ougyWX_VYS$`v1moMBo%B9o>fDdIgDpfZ9Gs-a*-T-X+x`tK4=-|hF zC#!Ql)ji8Q(9Di&ifQvly@_IT0sHEn#LQRC->2h7MJQ&rJJNRbf8T~VvA62n#k{R0 ztB^VUHiw!_K^|h`d}F4LtWO@^4A|dj;QcC#JtkjoN`3gJL((&LtlOk4qOD#l(u6?7 zK9{O)I_mGeF=P&-3j|0h?9~}!9>(iBP5BU&6`XDdcyyYubG4j4Ww^3B*oD75Pb4hj zDMMGF#HEwALsWh={|(0IOWV~B4YColX+xbp^OD0AE)JqvOj*zz5&ixbmH(u7ZuN%4 z=rh>UI(YBY$Wgt2bygvY+|VH$zWXB<^g``C&%R~L;dp-Cizv2yH#B$}2SuB#tdg(D zhqJ?sg1-S{I8Hb(wIx8fq3#epHhiw`D2{$?SG~F)(A&8Xj}E`?(KR?hX;(|%6H4a2 z|FE-_t)-UGN3WI7dH_`rP*d+BJ!k6joM;{ngK;Y`squz-EO+CdWPkyHMJU+)gWcmR zxM$dR!5n-(n{EY%?cRlE$FA6~)Z?(l5##ZqQ8RXR582G(i=SO5uRjDkZT(qB$ z&{^_MbqcT5b*j4ys|x>g@9T5zi?oglZ zU_Pkd!p+ay&}fK{2x0-%J>v?yN*2qnVavl$q!e2( z91>T>6V0`m#*T+x3~IWa2g{>6y{L)&wsg_usX3%K6%~e$)`g}O34j_wKtZqJZQWvD z#eK)Cl@+uALw()iiK2euVb5Kc$A4$9FjLEEdaNj*o?K>l*t;zU{Ztb2X@3{&vd+ZJ zw3>8~T_3JQhW;(|=qj@)3uaWET+i;{K3(rc=#VV+I@IDW&|(A<%@}#*9*v_O6su;e z1}(G&w+1x$cz4q10ai!y@XvaM_+f6jLGC}HL~fC&~>Z&Tm?z3#i4!e#|$J& z)d9H!U=+m$*4&cz;YC&>SPZYi##X1C_Ux9SJeh54(Y4s$Hgg)6FkNO=hT5hK((6Ev z*8deOkEU)#+dWrLMzZ9iR%?{k?ksiV5gbCX61HH3q7=?KJQb)VBPqQ^fY#kEoaV z2{o!?e>rAva8B+;h{RgwpH9U|oZgD!HnXeybTkK=VF9+BxvI z_=!lhU+^#UplRyr`Kx_B(s>hz98CcqG{3&sqTAJ|(KFRR$P~~Qb>w``RQbL}Nx1g9 zb^{q@(*7#;d?yYab#07AQab05ut5D^7ud1RUWVB-8aE!*lYzFipeGuzkE?QG(%Rpf zwYw2<@ab0z9K9GzLf3fzq~&Yma>GtGitb*gZF*IeI~p~Q_3vNQtbaww!>Y!b!egjOhBBv;Y+&_dfqS4$ zy?wDsZ?%<+T1XT!YA7>_PMK%jOG+7Hi_SKVLPecwbO$KYdaO~!XwjB0JgZFN@uBP= zA(_z6Y$AzYw5R!Ke~nW3O_{kRWw|ZCele-43SD&*lJr%5prL&>DJ67vUB=1ut?nYb zI70hjC~v>Fr0DW`P)~&HoaV^ujXi05qkp5{xxm>zIiL!f?&Z-fMpikq<5Xj4vxa_d z9Q{TCB1MhJqd8g75NtE=t)@%95Oeqq`gM{W$}d za3xVik^lTP9{k0zgbkyjy@|y%5Sg{AK->EB3P*QWR}8!SdtOaYf|Nm}aRVyig$nMx z{Z;Sfe}h$C_YY*b@qD3Aj_;(hUQj>ZARh2iOCuy2qA;I)zA}ej<#?%iq{bFz{b+(< z2@00is8_MM^rz4>{?*<92vxu2*-(zAh{2tL3G(8vnI<93HJZ2LG)w6F;1S_$COJ7H zO^|dBxA)0%O|gdxojN%YJ`@I{3p)3z<~DA;IQ-Z-;bUA@oT}&2EOJ4+k5zs~u}^Sb zIsedECEH;MLR`;Trv;cu8dwFw`pB)2WnM5U)&)jXZR*}R2<=G{%$&EJ+;L#wMqFVV zh)mTT%P3a2_$ynB2EmgbH7&-S)(q#Iukqrop~8Wd9OoFt?Qc4saAi4=rdRX@yCgOR-XN4me1Q!Phb46OV21YuI@{d<*9?TSx;-RF}0eX_~8&n zK%~tOjZ@AuVusb1QaF)?_$nA-D&NJ(D-@(;7cK`qJMGOd!UgBl3jO1&Rr) z3SH9Ad}zEwaLzX7YO2yFl%2R|UdRtUYzNj>N57Xo=P;Zelblp5dlGFf*&D_b5CSxu z&a1g#bQ>I2l=|p3WPOrbld87!Gfr(|iQtbm`)w?If;ruZxG!A2BWQj{c^24h&zfLS z1W}G9;!J{zqo#*i>w2@p`Kn>ec4+gHR4skyM)S8a0Wkg9an8^p;M^r9*^8y`KtDR& zZQ-P12gDqj{kR(r;C%|)IGTsvTd7f%+ET=aN#EK>m+nAj6PpSnyy{4iNf+Sm(j<+! zX?UI=2*k1Kuh+e70Q!D?;&;h4f^fMmJ<2<_?Ke;!Z7R}=I_mi!OV8(^^lB0plAj-7j4J2!? zh8TG%0m)hfzI@*t$C9uSgT(SB1O}?cK1KsnoJ1O>OILg@D1aw${whPq&Pc!JMD;aG&h^JhPQ(jO{_o5nrMVETmzR3yDTVGgr@M zn>$4EA);03tvs`#wAfcSGrL7rtB*2aDLFmp<-wHYcqqeFwTp9u0n3th`e2wmTAD57p zL0pka;)&kAN33@^4s;54Q6G8bj9ZI6DO5mhQ#Q+MOu%{0W-eg^g^%$-6wEULv zItV&}lTUT|mTm61Pj*U>9)2@FWkx@>=ICtfXB-GsV>ry6f{q0&4>S|0pEeDO_lDJ@ zes|1OLKSPgZ+A?D#U{jR!qEtN%(px%K0a0djXpHEn)S%dDL{R`yHDyfXXN z435sKCQ|ThX01Bh?Z&Ulk_yf{Ck*?wiiwHGTPyzl-v0ip1T?tlVE*PuaY!#^buQUt zt2B7;n>>V{@#Fn!6zlGlYt6uL(XH}VJ{RfsD9AtEQq8N^YBGqv^Cv83D{6(x<~$&1 z?zj_*%`f^g02+~svCoj)B`BF}K7l_4qx#^S^Ltg#z^@VvjjeOikK=-?B`C}Xok!js70DO^YxkJ{lFUU&;DC7vP|^Vowc;QK(c`I_F7%Y{I0G3>1ed_Di(X3!=$j&AC&zGI%*oW^BN`;Gq5 ztZ!x9r9K;7X(*p#Ok)vlLl5P%#cLGRMMn+e^nf`eE6WeeoktwZ;SEv&3|5Y(J}s5X zVuP{n&*0keA5g2|YsZ{N05AKumtWb0badM*K^h_U(5ql5D3V(?D~GE7aV;Q1q0fZ# zyMnxOey%RYB^~}T$Fb>%Zz$2KzQ$aIM<6i!u!Pf!Jo#~PPXg-f$ z2zNG-;^^k=1O8gS!FP##I9D6o)otZ?TG6%NFjgO1dD@%!RYzW#38<|zG84IIPk% zd^|z}&8wfonX}*Jc%BM#fs|H0fAh)XNPr)&(5SMkI7#EwLa}ZyFhb&%O5TLPS97HD zLof()!14h_=MLD+HiyTU5)6tUqZ+i==C5F?(XUoYja)EmpKgoz{jVu?0Z*wMkA`%I z|E=VW&Zv1|V|Qqk!lRXtn~%F|$Z1$D@T2-9PZvKt4xEkD=CLuXjEGTtFX z2qANR4m)>$K9+RLaB&it1H=~t2$$63BfAWr&i&IRMNaIc5si*+%0nYsC^xe0zTG^h zl&T%(kk5JQ#Kwdd7{gs^&P2Wej-<{?vzr9F0_uW{I}8=d;D|`7&u$DC&)K3Rb$Y&7 z*Qdo?7_GIYV5wB#eY-am^0y&6D!4JqDV8Fpu-@Z7LE~$@>WO_m_P0nm_H&_>dPchW zO0_ed0CWhswB|^dvs+Q8`5%>evDh(o`k5BfB*(G<-@@Ru9{aiTt+=am85sN- z^TGhaPs=qi8ohZHJ|%55UN>FBMPq8h_a>k5FLB&mX>Od${Q8S2X`^H0<$muSXYP1( zjdQ!)dD0Q8!0u)JsZdHd`efJb_g$v%7k^}53d(dmEtvG za4a9a^G3stxvHn}%jhi~T~&_I(BHt7>~c- z%$n9FQ9b>&2NCxPY()^oyP2=Fj@&uY-IX`}%cW9M^fOA{DR(KB9`3fj9%E+z(nhrd zXCHJ`NS}x>FWm8jJ41w8}RfH+lo+Tv^_1X$7w(fLh#qJ5=FPUuKM%Uve*s z9wMawc{=*NuM;+IAXeZL`Dp}?{wTxJN$r!nx?egs!F~rS>!vNR+s%DqM!~psky=}; z2JQZ_;!d|BshUS+(iRPt-l>|h_%YoiQQmTga?3io%;dsm{!(x{t7eMQZ5%+w8la++ za45rAIF8Odwp!s%4F4WJTnC0ccP|A3xgp1)-m>_xBb=MxUDW;G2sm+6g;E6I z992V^&thHSfSaiGO)1XC5k3FCiveKf^LZ_~-ExzoT5n%@pH?`>k+zsi>^6yS56@E% zwI$q4i_@@3AmXYR>XmpnPBl9J-m zV!Yoo$R7@>LuKsW4f%uft!SpPj7k0ZjiJB52Em={8CX=s=hZtEaXr_|pogxjp1yB= zw!lL~p>Fie5;%T3J@&W4-5;bmr;Cx7?-F@O&xO4F7-fQUhRukQA~U~ZUshezqP1Gz zyvX?h=y997QM6#id*rZ84q#U(K6o3|R@EY1DhGOI@okdr4_0+W_G(e7ZTRo*u_Vro zGWWyLRhB+8s~6@jFmqXe^!p4Z1}hJzpR?V(xb5jvVq$TQZ+fF+5{*ApLH{;;CZD z0D3UT1*`mkFPZx`7J<pHNXUyck!EqF{2OmGC6m(i$H8jp|J)K1x`K*fORWc|Q z^{pMu`EWFa5yKpL=3sF>tPE2Y)X%y-P?eYR9<4FsY*#NY{r+DSR)~-UPR_|~&lk-= z#8t5LZ%K`3$?18G!A3D81e?cXM{SqApac?IH@}|nrtd`f7KwCFBVL*i2raE5E zj3VdrF5j(^@%^be+f}nU?>HqUAAlP zkk$Cyh^Bafy~S0^oi%$WDD5m5jul6WK1!8s8s}1<)GC(d_9i~-C0|o$SYz7%i&VYgXFw@c{o^CvhBScrS#ywQSjIMPF-2Ss@aoQSDfmL<28mH zU@=_|z0(14x=vg73sGjLST(rrFsyftTI**%+&qgP5AE_)xP1dliv&&wI8iq$KjSIHk`f5<5Ro8FU8FTaxF}5N+TXpxvHq&oI zY(-9$c+!=lY5{;hP1g6RaYqL5!EQQ5eV{hH^L)s@@ zc9Vk-Q7gJLal2VB!d_MS!_-(6yp78H;8mQq2ktI(B?3F3)z_fTh55`E z)MixCD08oaFKtHx=72#$AB>$TiVk6D+Lktt{!yXhJ3-NgM94)Dx*ulD#N7YM|CSV4 zbrZT>YW$S_m`*l{Zg^e7pTndo57&B`Hb=430CtEBs4w5)Amq+VQjD}N`tA9 zd8}afQyHFOb3!tf%XtE?-MqedJJq19h31K7#8ddirtgkJ-KXtvUwnxXwPY*DL-KWV za?kDlJk73+*SvLSZK9kat?j^|T8G0tyuQGgwg+xobv=2OIR1IL7+ejo=D)DzX7>Vq z3N27t$zczRk*OXA=N`9j-klfuHHI@8AJGaKxa!Qfwz@XtG_`bb^L5^F7}GWj#`^0y z$*oImXdB|lRM5stokdDs@Bl7^g%SpuGA$p{wj2B>C|rb4LjK|S(2nt_qdzGUOg%EL z>bk?K4Eg}s9i-mBPcfA%psXl#aG#;12cCR!I8bRN><}^-kBHl?N$0)bHL_QXT0Nuk z!@GK+8G%_q57U_u4%^sUGfv>c&2A7FkQW+t+oLz)VrYU+9Y2`87(FvE-e)e(6=}qM z2Y{r@(lRXMqx0vqy+jwMGV3M3@IDU$;>?0Z9R!ShBvT)o1w&&s=|N8>rGXdsH%il#mIuE9Kfu`#4n=KVh4`o8cvFB1D;}8#` zd&|LOWIXz^%x2lLvKNtzOQqlcPVCIQ?a7Z1!-u)q_3DV$$7}w(8SELueHHX^oy8MZ zJy0#7b<^(YLzzIsMi$#vtE`A9#+;wjwRZ=2-7 zko{zL*J?_{eiOy+rUGNB*(1kvO?Wzq>VHVjme^VH2_--M9`rsxg0tE!Z05t6bh%>K=QUf3;%HI8z5gwAsXI?cIA26JNFNq1)S|<_b;TBUYMd2gb zM4Vj#m`-YU7#<$2GAw(uU2inQY<3~n$sP329#?$kkHM62UM~Z;Ps*T6K9@Z;!K?!O zM1Eo1eOdcp618C_+K<+B!pF8u?_e6YgIoztNUaDuRT&Jfbso+md0)zYtxWQLg@fQe zk`d8I0!)Bs^knSqt7f4PM1PEx zO*%hv3l?L@VTd`HWYpI6ej%-0eKSa9o1vEc?$_q;{yphKWSxVbH*#??@A!&fs9aYleYsDeN zQjSi%5AGcn6WP_G+zo(waE{5uA^}h=K@a`v%XueD#XKAa_x*gbwokEr9V3(Lux7^W z@Zxeo-ULO<4d!1z>O3;7@=rK%hc#FBir$^Q;G4H#c^91%u#&(5{`|F+E4Dmx|OinC`*aBN(c5 zt~860;n~U<2De_fo6LT`AWV2qlkiZkm$~da@(#m z{}G}c64I<@uP*3}A6}t?`Sez&agCNWQ!?3q5U@_|?7ISlmi{3CY;>MPgS%n+ zWmK4y+l>f(I~=kPq05ElM+0!Q?(A_wn=rS%-~(ffTd#t(uRMqfOc+(Q9oXBlhQ+ie z5&5U#Ul)sY3#cP7Z6)q&u)OyLpCoI^zuS&-K!3^{nXqU*_)x4qJgu^R9{W3Z5@#q} z?L4{sU0JQd!b%!+Aw4TC-Z6pSQm{w+@b6YmC^;GZ zDslQ)))}7)RkTA_|49ArB?aayS#H5V5eyFWFDb}8Nw{fN?%V9NwIRI5*_)T?1pWGhopOls9^ckrGi7&xQW9NLDfQRY*|9Bb~*sVC$w?&*ySrn5X<2J27O zf%40y1_g@LO|zGqf61wr**Jxd{xab#YVrM(cXv#1m)9bdM4iA+KKRUU7x+H^@aVy6 zhQd}IQOddq&cyiD0=~09%Xr-yTx$6UW7aIXj7MmBM!9@di}WcrA1^IOnS)y!GW+-Z zJu;I(+(t61y_npOM1te>5LV2cuSpW=&RLmz*a<=NUB0!7Z@ulo!#L6AKacgbFGlDM zb8J!?7)`yqX1*bYW#3b-*YlgT29r+l5lnQ*R}VB0+9 zpZ7TopOCjTUib$?!A=-L_?i7ItQbK?p||9t;i3_6<96F?ddGMJDKhoGFLMCa->LDZ z%&3XmClt6IUPJs||CG*hj=>+CXBj)WKbR4!)Q$i#Em99oVbK5{% zaMJeM{*!83ec9;LeDUosjP|PcI*JgO?VFYRYcuG8!Ou~RVxBKPqpF@Ev@UsM5sD?i z07E2~TA3N1Qiqh0Ih7&-oNikFdHs=I?9=aqOGT(ws;YLYXY|-evB8iwDYDLM3TGE2 z*n%DhH$)%h*-nhnv?GYZ&icXI^xjwj)9#N?ISXrL^RcVRl5ArZy3!ZyorchF6ANPR z>K0lRC0VskKaG3eVtMJphw8Cp0f(e>)frR8o^i^TYzrR{cRGFEMC{-u72WUqjUPnQ z#v@j9h&i7_?&DCz$UL&pGhy}WE2&q5_(tS3*Zl|?`Lp^riH19Z4OG5oU5^&le!Ss7 zd#-sK_D--e!rG>pv6L(yA7ObroxNY=XmpBlx8=(Mb^lkk>a_Ow-$ezcf6VfpernMO z7V~L3G8*-cVtTZc%+RnY*buq%L-=?>ytunl;;H3{RVLO(-Z8lkH;xTcQe)|qLGK-@ z-zc6iBmb$8FTb~Sv(yO{?Y6|8X4eG{COhYe7d+oOCyLKUb3JDXobQ#cQEwFvu$x(z zS>AAF>(_m$D1S`@$CScQK2*RrOfeud$Apt|Ltd5JB&Ninb_E@k8@%)v(L-Tk7jHFh zw)Zry{8Xa!yW~E6p_f;yzWQ(>L9G(@^~d!i5TNb1w~qV5t%8lCS+8Z|)U{{LtER}0 zZkb#?!d*(XB0lz@mpg|40XG?YRu6XGlvX<{mS)-N^&uZebyh9hw|vJVeEbUe>KIv% zu%zN}-tAnXiY+lY=AtO`eD=wcSLX~CBeQQN8ylhc3pfI%9_yH5?mlQ3uC*Yxt~9O) ze-b!R02On0I>L_l7eYPde2q_VP~W-o@gi|HHMtTtpIS9lSaL_K{JJ?xo(l-W;|uh; z#=k4FW+-(fnDzrRYxn%q2a80mgq$$3vo$8IvmwyRUaHcS;OVgsvdP$=+3?mK@iySs z##7TJ!nP=G#DbpBjfOJz550F#4X6A8Mf>J^n}(tIMcVoDJI98?ghpF1tGg$fJG|@@ zxncp?g3qVMaQ8WVx)!PBJykRNk?nFv`yYG?u#fM0JX7*GP|cT?mvgJQ2X7>QTf6O@ zUAVW{fD0+Dzm@U*)t{wgJfz{4jnuV-t2i{zv4w%vU0!5ipr~w_I$c7cx0+Gxnp0%c zMXMXPPxB9!52*ZN^ciZD7!I=*EG1uUpBHcrwnv^VB^U0cz}KhjIobPh!1s^D9QTA< zH3JG`=D%DUqU<28Ra>L|9~{5WZi#D0FtOJ@X zAc%knDkci+b80pmHDNJK=A2JbGu*-NaxA>iNc4CgO-5WSIZL$_8#S@t{V z3WNw;4C(em13K2H_Q=U&Zz-&0TWto;+x_=0HrYu5`c{(0pX+j>83whf_g*hl1N)KW z`3~NP1Kzim4RlxEIj1l8ap0Y02TSb+*G$RMU90yg`BZF)8*$a+eqMP9Qr&tD!r(nj z7XG+jXcu_F^k|MA>#UgPdPMJ#ZC3p0r~>PEUpSc_GU$>)@+E5PG??~>C##Za9wM;- z%Ca&1ZWm5rb?aWvy44Fvzs$IQQmPt+Y5j2~71P_grz-8Z zW}BEYpcs0;Sl7NUxHvur9hqLGf;oz5le@VT@STY9nS zT1SI^nfbQQ_h51@(w@5!YN4i#zHBAB!15*?_WW2yJ_5hTF+XSakrBEb^|7c=n|Jfl zGHeWJKl7VW1P{-vii`TJN53IJQX|5zW-E4Iw;(C9Y{${;zIK4r(V4*^OWFhetl?_R|3!@r6YPI;Q^*Wo%H6x~#^B6F zQ{zZ1Jx$X%faQV-%SF!9Oq&ON>X)Mm@D961s9QBmPvwmR-Lj33v-MNX97G5~<4-IPG=PWwk^G@*_Au(~h_dlglg-Pk zw2*e^loyH$#7@u>D9ghGD(73eRjT^1`*>Q@!k;<;(>~e?zdcsLe}VtQGSb zttuo*f!8@$1Hrn2Wue2c!TS4cQy>?x;2}*6IK!i2B0BCGR6HC{={Di;bNY&53#D#t_4xP{|oj5andulOhA57x6&)?j^MEYufg3OJ)O=7rFWsY zZJbf*w?}!38P6eMRbtjK%vUIX60do_c`0M%%ihBHg9!wjS_Vhp6ZBO#KN%y-zwG&n zj{&=>uFzq=V|aYX|j!OG1bfXbia|6nf$#XIa?_NJw@x_+p4`W9hh8} zD^Wq)>AMRFdU3w+sz;lFdHtpq6B7f)#lJl_QT5nJ=B)@K*&gJpQnm1ZA>_yzu_+y_ zoY~v`KjDWug(8f!)4D0s58L4FRH-Bi>A5B;u!XxSLv9Q zH7Q!D{^^74wD)Ruv_T1kJSU)zk(nH8)_#z4bJ$TqS#Bm_kWy5d4up=CeWcAJ zG)Ko%t&G#L$zq8G&wiEI7<<9+s6oaSBpo|R7UC37E8dw;DTU46;WUfdRw$NTjQvq}1eJ#{MFVAVHWjuYiN;`TrH(^}3}GODP_YGJ4TM{WdSJpY?MYYJ z-RBkrMW`CAmBcD{DI@{ER#yGXm{t1ZCn%iaoxx{P(i;hctAW4r@(~xsmSW9>^YUp) zpP_aN_C@E$mls;s$<;euLQUQ=xIWZ>HL<1yV@+k189e!TgoH7tJ zq0AKl!c}h{|C}@~h*>IU7GLm7o4T~leer@->62PUp?h5QBnX)n#pWXZw}j*`P;4bA zX&ky9N3$rAN5C+2w!b5L&BI9XNbg)M(NdAWdme8p&4zd2dg?GP7mw2zkb_)0dZxJ?z;?mm58OI>r^5~b_P<`QFcFAu$Vi% zsjvcCyV6(sEp|kd?8FdZWAR+883e3ZL2RD9F`rZmbrWSBw)JuZoRzRKkm?dT>uysJ z>)tC!-17G^ch^|+{%R*N4do z%;=^Z7=OoZHA$j(b{L|f-p0(0o3RUId`NYb<&I-ueXmZOK;bg`>(R`#Sm~V1fjj?wwK{iF>YCJXEFU&gSoduyvvi!d52L z<3=I#Lu?q+$Qy`>gTKzInb2^nYI1!+`H0CqpjJJcD*D#xqH7)c=1_FI^@4uPO;f18 zuED0U!FA@l5RXx*=S9%h>XoWs4AHRfZr+S1kwi8b>3!I*Q!vH7dGqw;ZR;3XkeI&RF34gnK_g^VS;=XE| z=l)tbFOjw!lkcrY(q7NCF?}TYRQc}Ac%?*XB!Urq)4GxPLhp=LuTV+QY6OowHV!}< z$7``oMh++jYJE}-&~|*x#JM{REOwYnKr2wlpFknXK&YjmhVfi5wChnTHf9#yfRY;JlGZ3^(?>io}Y%#vcYQRo1+PI z44cHgaGrbFya)Dh^8Z*!soMSLB+fZvjb))2u)rb1eJ!5lwAhxvQT2QqJwM^`gM6sC zJ2G< z$ZTRP33wM~7I-2K_q7rk=FF8_dMZ(x0k`!{ z*^xIr-8fRjgMt_&6x1zH3R!&ZE~4}$>!9D6jD%tDdrvG`S_q!(lmPP&sm30KBqHE_ z0WWXLsWN{@dg~h?=d?a9+*h@Ty2*w5az(o6tu8w$@3m8#$B2I4Avn|aXaA`kE<-4q zYOUAayJ%qCPhNWYDwBct-C(Mrtn=i_48f-H;B{^A#P-%f(s@mokEbC&@V~=Ckf{Ba zwZ{16L89>5r&(5rQIFt}0&eNuBM`vY+PWpV2eJGu_oWP)iGCak#n9`Z7iWnux95|o za)xbrP&gF)>WAm{6~Bu)=5##HIHmvGKS&JSnf;&;)}hm^gS-m5cwlkoS`#Mb^?h<6 zz<@lnl}54Hkt zR;*r9nHaP?dLv+^h8@V)zgCoF@~<(E3luU{Gro!lD%}{x$_28;n7(tFN%tfJb7!O8 z`=B?3;M62)6qIQW#@pX}MvxGR$7hOV35qNyRE+yosrgxhft4rOKYo5DW}PLad3Tld zU?0!Ddv$2)#eOLLt{c+lQ_T`Lz3W~rS_Xr;RnK=%bx9777SDL9GBv}iFtmi)i_z+~ z(C@C9(z=Ra;pd>i;8f47{w;u4;V#l0>znv~#m0Q&&g-AEUF>dTTa{G#*uu_r`el5s z^vZn~n!!vOT`a2y7CVa3<*hUdNz7O#7`}N15?1A(7Rx_qp24#tGQ?U3#Drv^)KV-! zUx(C?eVxq9!w&DN^&HaU02<*W9^fiY(K!!2HZ-|u_?gbhA58#~?PS8VIkqFIek0!` zX*1bbRB$H|mi)juPM!{R2$YmaZWBEX^KaRis2_MHwD93T>i6Gi;~BUNIA#=0``G3Z zeJVR?3=FZ>@oc-qEMn6bQS!<}$_qyb-&cIZm4uZ<0Yn!J{Hdg4c=5hN`U8%!0wQ-a zTSZoNd{A=89=zSAbS69@`?ZZ%|Jbv&Y+9nn$%I(<{gKRej;uek_s9Y~4gPQK^`Bhn z?gGWnw}f`X=Qqh#s>A^b^@5PIYTsDge~Z$qu&JIxynWFa^gFG1uQJHtvHMGf zD9>DEHr+9<9fbQ&3@HrK6I(V^=e_vdEsk`a$jqYM(a1%oc$3-O!q-bOlV;zw-#=SvavmlCvnQn^Vp4+@G?c4z8G@ceX-H9U zz8TQDhM3@`E1l(du;?K>#?i!c8&bYY7pWyHUctIz)`-O)BopQ72YL(r^s0ClIFv7b z%swL4)d6#__TC%?*7tEqe!3^XZgpi3ZZ5&&53(6(--3L? z+D~#Hl~XqJ<5brY?|MVhdFuQXm?As?IITecs%okngMU&RzZAph;Vbk+zi#h?4ptlI zcW9R$Qq;0(F^xOy!CfOnAXgrkd_`kD{RjNWx(M}AnBr;ymhM(=E~D2>9sT`re+!R~ z7H&H`iw2l}*u#%U$Rnt_@~nsR*m(&x{Rw?jomH7XynCB8j`j(=#qh0VGpb-pEn}!` z_F$2W@LL7oU37wdokIA3riFVpZjdo_n{Bli^(>G{assQ8$aFv5U5)TyqT{vqL z|0yrb$f(V6?EH3|$Q#a5neQo89SAD+@0@=@8%xak{t<917F-{@5M~LF!s4LGygyRd znJ1iQz#@rX`c!U{YI$b;)FroAkEFrP3B!_gcs2Vs4f23i;daKicV^2txn}SF!P{^$ zE?;D1KXryI*7n8NQ%%w{Yqi~#bX(9joZxGpVYhPd!gMp` zm|yZnb{cil(&4!ToCbc_^jY+%ie2f(7?8W`BfKi*Pb(({zkR-UXFbNIo|g{qB6z4l zBJ{M&!Nj8LwS+VO&CX&p;##QkpAIP^_Qp{kNw0~{`1kK=#>qU&l`pGl+`Qyk4u@%* zi}B4R#H;ieAg=)8SL?J(da1pfS@<-hM0H?7G#;_#1_!JLfNM zz3fA@#-G!=2l^H_uAHcx2)G-rMTS!quSy*tGs((uedw#`k}JiA?zPsTGVxHMvQwb! z#!aJ$z{vj)mEdmomMbz#Zq;0J=F*!c6%1QW1^%vGA*Zg@O2yf)00+&WzL|7LAZRYU z>%f@!O)kqr-HH!H^}W|s#G9A>r%qp|x=S^P6F6ikr9xu9y-SxT^u;@qs_SuQ-K8>?Ql5FPSY_-#O zy2axIyJKCi9wQc5ml16pG3)5cU7>hSb=?e>DYtn~&9mrFs(_|yBwpBxHh}@sGNj!b zt$)BvtjzH0GUE{exBtgYW{ArizJ=*A+^i- zyJCD(QC%8sTkCzlSnA||xC~r;Ie6Lg>SophcLt%>^P&e8-b}Pp@*-DbQDP*lpH`vE zJp~cwQ-l4^nG8L!L7&5Yuu01EK8z|t#dIwCyEW3Hqdj8P83JtxzFP~^>u!ca-x8kG zXW9iGa%Ukg+{(^ms;pU+c#kB{T3im&&tjN1KKVWLoomd(yXGJJG+$EDm$HOohV2`S z@QuG@g8GwbMbc&J)B47T5hK_PMa>AF>i~bw_jrQiu@<+VNT^k5(<4+F<)Rl;1>t|3 zvf##&vg+jwO}{iq>?q4$`W^O;~O7w2%GT#KP&(bGf55I z-){OwSL9{a_l}*_iVU}o|LQaGu`UmA=d=#&h(^C8uFcvsW;TNA3wE#|<^J?GgT9BzpTi6-_&;5;aGr-C zZOl}8Rjy?0Pj;R-mr~IfWMFPjUtLKUT}m}JC`9FLcno*$gguc&py3iN+NOJmVV=}K zMW_d1s44j%7i-pIns=5^i0?xa1Ky8N$}p0kPn$BfCqp1A`#a?!8j9KMm##-|AXS#n z8(4m9CoaDar+P91A`w%lPpC^)(dMOpmg69$>a)Qxk_2(Ujg;`6jT?6!D1o7g{8x5C zrSl_6hd*($6sf*a7L9-To-_LGFJ*vs9OH8S?dp{N+<%;YMbRkU1vQ# zWB}xyvM^Q7M=h_OJ?7kxpc z+4J%)wxf*yylQZn#1l1KtSE^@UB22rAel9%!okLH7mQ^X( zpV3!KVwp%1A!+3_=T8QtQ|mczM&W*MD-_s>m-(Yebl#Ia%z+z`eG4q{zz7ybV|9p` zJ}$3wT;(SeZL(=K&%3fM~ttj(w#P$Q|j-B*eDR|Gd51Rc&>Xnqf-(G$~XV) znMa>q`rT|(!(~+`h?t4-T)B{v=ii=1Q-;1wh>f6<`WL(`wa~=ki`emv<{tt)Ved^>4JmB>)fPeOFihWnWP# ztmR+e+8eJ(j)h?e>IXi!*WW-0z9kSdV`cNnU;`5DHlO4vE2V z^NcfpB5!c(N!gj3wwF_u!m-4`yjwNXJ>4HaU+xa4;yPk#c5WlpPhCp0ttYDS;IX#5 zumC#Yz4SAPg0R1|NWzOAh)hM85)6zt`8u%!M}IB9ye+ptDS4p^s`FRyFCQ~P2DomR zZf*w3x{sgRS28>!QE7WwpCS^L||EX0LNJ-${4Y^hAn?mE6C zK4qz=>M^U5t1Gt^UL2S>7j`>pMBN6{7WLE&e{vrok98O3?OfU3$-w>Y4u;%2#H=!@ z>1P3F>N&L&TJWX?>)QO>7~@spPx1(S6w!`zLQ5+ zo>_;_{t@9jb&oksT^I+CnCAuJEPxRcwQ=XT89(9;=fqRQ^x!jHMZ;*9@<}|Nq(@5Y5Wxn;%{!ju`<7xGHp+n#D z{j@YIls8^-zm2r{(P7HYTc&ey@j@`;Poe@Lh4Z&oYoyzaOYPC)=Vcj~10pw>OXblk zs+`slo8>dy1_DrHB@>dP`^K1js4Nsn`1^G!Hw(Sl2YW#L#alPdx74G-R zeC#D|`ScNgUmdDI9GBbS_P+J8FsWln{4*hVtr1`Wd!`CGtHy{*tS<6Rf67b*in^wW zQ4d!m0A0gtj|Emqgv7l!ji2J67{$bbh>fD7JCfHrEjzOmvWhmXb#d zVgH8>%Eoo%xSK^4(Z7wI@Q3vOcPw4D zKzboVut$Wv!Y zWjf9*!~-A^{BvC@&K|9aj(S`bLMCm`oj~Sb>xm?)ozPu8#OAmQ{24c%li5@&(KM;Z z6odV$&qmC5a2q8CQqZ)&w3XRhoDn%**swddnci(?v6QFVO|H3NLOBY zPB}Uwn^cd#wZU_fPZJLttQ(OvEWqVh%kR#diH@cH*-NVqYB9fi()kxDX*S|C{_8<# zW?O6EVF;TMm(mXuN7YQ2`P=z}EcXk1(YX-vJ-=f*bn^oxe+N6`BsT7~2Rb;g>q4NN zC_@S!*8T(_pZOAS@n{dO8^j0q^L5XivHebt3G|&7T(ZUe`9bbF230vhJ*0Ffbg%H{ zo?KAPR8hpLf9&(d&oA&4l4OCmyW$5ErktiY`DV`Wq5Dd*(OnLtHmo<5LCyq3-D$B%S+<1HOq<>n!m6#@z-9 z86T9s_Z6>4t@q+ISE*sH9%qa9x6tj&&v5IkHoyUBL1HMB(sVAI|G1XEvXXC!|2`YT z1`Z*T?!HT4j|n0bcXG^?m#px^45~V6meS=g{+q=NxHO%}d)=&}ZY1AGEj6PrMx85?rtMbXh@2dV(OaFi7TY%MK0{d_KaQ&Xk5X7oSWKwEV5UUV@clztGtO%7Yx3oJ z@}Z?sxzA^`flCTE$}$>egN1V43c$g1d!IF+&bZ z{_r2q*$Oq?`eK=5{!A(0uRZ*-3gXeji+5oYHZe&~OnnQ)Rom%e$0EEB{iZ@euxpDk z#|R#}rW2NCm#J%;!q8^iMv_eS%=nvz$kvbkXWkb+YhF}mR~+St2Ig9IHofGsQEyZB z0=jaR90d2gj(fELfD`6AZNlLM9iKGgX4pDh{9F96xeNt&iS zGZL0wZn`|bl3;P+v118W`{a7n$bWel)%X zzf3EYq%PkE(UDz;fOCc zeO;05WEgYU@ZbQQia7qh&oYs~Hm9luK<=UWE~wJ$NvZ1b3UC?xS(+Ul@7d7p*cv2& zNzAfWTAGJjLDO2H1NvLI`#^|Vgj#$?2{?u=toVzkU)N`hFfr>ZlJ3}ypj`Anx;N$+ z&coTX6VhD)x3!X~g8dFF3%KvqITSSY+7ackMHC#+a}dHDNOW!=+i~m0Uzw8-NkkWe zWh2Zh>P2(mpDLCQILyb3FN3thmWmVG)r@`&aJbH>l*GN%Va`G;>Rzv?bBUZI9l)9y3_I1-7`uIwT*waXL zZM~N;A6()28CHD3+->wR0ry2~f`qR3mBt26s6|LC3AkJ@CtR4!qKA}^_I<~G!ynoN z7HED-*-?C2f7J6Zpha_ObikRVah~%CpCCiE12uMJiC-n=jw{r5S{?JHQPQ~eYPc&6 z{H}n~t7@{1%&k!Q`Ncq)s^=kIx7}@&*jcS}g#vVW$r?yp)Wx6HgGr+J>xI3eUGr1v zEAK4ks zfUYDS@X@q?5cpDJ9FUsi9{* zpeKT8icFyI1=P4-Y_|~=m-y2mgn>0D?|On$+Zz-(-htj}#A8LLP}#7S*yVfQ#{A@Zm;(*5u1V9b zL;)ozlmv!I~}DZ3tr61k(T10T|0HUK2Fqq z5cw?sYMPI<*Kwk^TV`I)XX(RExt31L_9gCbM<`w)Zs7^^WHTVt&rSZdhf8PN4PCV_ zt4$XVm*mBPJf8+bejPUuQVpV?1n6WG10xhfR4m7k2l+J%FfcO}-D zt;jVU1E&p{?^rYX3;va({W7zNxnq+$v$)hypwrd9Qa-g{92c0H_w}=EkCd20fzWTr z_W62^Fhx9N;4QWJzXIZxFX9GHaQ}+%?vbTK%KpK&Cr*!`yQ#q=rnEWt_=c|Ut@`u} z)wB+NVqqbvqa(o1?FdwCDZUa|O1JO6Z7{lK1qbSRs#90p+Y5j#$`z>t?hzHYnrY7- zYt0wApL4AZcDWx_0&QM(V;}O73)C)A&0Q(V(qHroRLVITz2y|ZAY`DS#3`R_3PH4j z!@bfJvH_bHqdW$TwB|OjDfwgJzFTmWu?z0q`c&K#cF!OlrBpBrQGVG|!d@EMKdkVt z6h%@^$Ei4VrNuA|7(C*K=W5zM<@CKnXAz6N@$s5^*ktY&h+ z0t3q@(9SBj?K@bKr_kM5+>roQCC59Zs280&$Oji60*ZLS*v`*%CU) z8V1?B^K=1BJ}#P-s}-{F;pb5g{fLFyLcoOQ-QRPas9GI}jIMJeKFcBZv9Jco+5`J! zqK(SNT~c(+jRcD35M-@l*bF?2V@pgk^6QhM?Pu2v^dHN4FQ;GSux%e&8%agi+Pyrl+_te&bAS z6_v-x~i9OR}x^z1rZ+@Gh>*-D|4UH6z%w$IFDK6ZEd~$rBpx zDI5(YqI;(M;%+KntcI4v7{OdJe`z3WCIw%rn@&VPQMkw+m@h@L@hMzc>}R(^p5l_| z?uC@Q2-TVNSJ}8!fUgY{w4DJFFQ!Q_7RslD1-w{)mv{!IEqcaC8f!t4?%j*vrJtlf z(;^f@_Vh{710Mn2Dia*j%}KO2novHxVO@qOEb&JQ*uz@sPsi5fs{fg~!WMJ-blyy$ z!x?zfp-ZD5S3Rq?s!Gn!oGb|i_QGp6%ZUV%JUK|ZcvCa{SiqngLpn|5JCO(EhBc-q z2&#)Cv$S;0SMoXu(B{1hS)w}x2tKRIs_!Xnv6?2YkErbR?b*EKH{opyf17rbGzAy3 zKc2t2b>%O7obPhtCDBHUC$xZ?v3nM(xpWy|zO~e+ zb&EZg5=15fg%)|Sq+(hqO)Fnaay-$Gy>iBrw}2Cp@SDrg)*{noCP!;p*Pg7jmBITb zyi$y8V%|%q0U6i_H(om)Gk(KFf`r!e%S89miSCCrK}N&b*@h}2txLE>&i?=6MAv!? zAE~(3*d`Xyi#eJg9JvWrgS($P+b>GgD0yB$7%}IVzC9h>bS|vzr zGLC9hi&!|7g~f1j2b1r6EzhCL18?aVNrXluC@V^dSYQYw8O{&|Uw4OR&vI@p9Eh}% zIg51n4AQ!Mo8lf$AnPn})9PM(+0Ca#Ywd)$x`Ml?lN##D^apRG!d)nNeUSzKG1bY4B`PJWEy68W}s7wi&AN&4U+>2sW z#hUN*43G;r#}Xg1Ug8>U1`@BYoRptk*g3nwm{*nWteF_y8rC>Mt>!|eTFHy{f_@#} z^3QY+3NMmnoz(-&C4zl%ZG0`zkRoMK1tkE_;E|LzWUl6X==PfiFNTOAGeTiILacem zt6v=Z;INW)XBZaq>GP#r;;i*fd6zI+keVhM5Pd3CoddSD>Q0smBf#U18=*$ng$6&46 zjlrMN{izeV2lu`iOd|FwVW=D`kifdEEUg&Ea78%*YI1`nIu7A_k^X%LJVfYCh|Gvy z<7ym=u4Oroqm4tuusl7(K2#H=@7-iuKeqm?#Gee)=DQqf;-+0BKZ2Y#!x^Zh=~6(u zOk95V^Czgb8EnyQiNGz;eCi^6s}QS4mt12meC-BwUKK#_`(6x^Ch&T$D+>#eR7?EQ z%2+!3Iaj)MH@TyWnN!+1e$pDY(yq-LW>_dmw8jYUi zuRHJN-i=%R226-o1X!=gK9UF9=3*ERFeqC{fU>;!lS?YZGClks2hf$smaWVPhXU_^ zV97Crtav zBIhmYq3uwivffnrtM8QaZ=OZv>4*pD>UfvP{9^t0liy!_w?5lgA$+AN0>mLU(qKGP@`Fyop{62DEYlt67C zB=j6_lL(9Ka2Ts-(gttt=l({3)x$PI5UA-G;)+$8>J`eS0?lAohk~1(Z^myp? zE_OITAJL-5ME)UX_=wQ^C`1Pzc8%WXR=A_nwi))*M zuzY6_%9Wp9ZeoxR445E{=~hzZUfjLmvY0}je_Ay+JqyMeQw7Ff7OVe#&L=4rw0Zx- zTkZp(h%8a2MvbpjM%I>|j*)A@QITra?af}bVQ@Jsk zF^D=7L~>US+n!jvHW0y*eHQ*XV1uQJPI2}Bl+%9|H=(2La{(> z!tlgfzaRO4pRRoWDAFynb~8if7<{BT_(<)}-=P>$a7+2Gz8y59qs?y9tVZ6NIHlsI zj2=>1p;0h737lldb6Vd>padfat8D|}HK#|Jjq=07A&Z&O_5$I!1=&q1nfA;v*$4?p z1GHl9V!`-}K+x&ue1AOw36k1fX-(LocE>8pk%2kWhqsDoF^<|&sroB49?b0zQGwmb z>+(122{QZ;DP*OL+asrCL=9qPkD_`(z=*K5JT&tHF!MC|veM!PheuIHe3KWcmJ`Aq zg>U_CoFSwu7sU=TjQ7rCJbaYUI(C~anUOun2?-gwJ+dqk!FL_@^aTIyKmGay6x2!( zc-sUX>yt^Z!Rrk%nq`e!f5+nLyvK^WtXEtRA&?tR|(vrqOiH-cPtPw-as^) z0%mV32YzXHnKLDDi*Q_Vu0Ic{VC4gLo=C$$z`jv}y7B@=`c1$xK}W=uMt|30iNN$V zXYTumUR6-6TS6LeTEY8v^Y>c(8@?q;Ltd64E?)TtF0KQ1H6cxSq+ucI8QO{&@u%{j z7RTLspO1)v+-!4|1M?(l+6j^u;lQNTP9)4rZ>P<}o~F=oDmiXmlET}-3r~Mw->R@V z$G&3%u&n!ME%8`Z38tBn@h-)Tf89bq zziRT(&k1@_hESy(6QCuJAG*i`QmXM-sDK+RuWpM_p9H%8yy0Fj_(U*#zP~Rv!;7m4 zmRs$1>*^AJj+7dl=VK`N6DpufHG9t}cWrgcsr<0znex*pU0~2ta%H7xzM>+kE>>!Q zuUh8Hn!?hwi5T~xB4g5Bbq}bCe6J47>Uwd1`ZH-LGduzwFybT(gPTT|BGP<%UNZ%} z20MH??E1||c|&1SEk4TnNE$~$J%AVHq1tW8ea=yaaB6K)`}U_4rOA3M55;5{ha`#O zKdWV^CzWRuol>AqeDv-AumIOi=&gdf0?iH^IaoQPm_Eo_9@gdPMff(a-86d z2BoIW%SBp4k_0;7DmvSLL-avp>pHqiy_2B>8~bw}TP4Ghl`Nlktx8ht)?+}HI$n;< zB6Y*xb@duP8-1dbVQJ!VmM;MirLP*2KXa-8TEVm6>l#*EUiokhTiM-*fzi~4dt=L= zkg*d((@U@p3S|)~zVmGS=C5%6_Y1fqFV5;Eij>o~UIQ$CpIhQHFNF8uP%jDfo0u4z z6z$nkIKf*dspg3?C-hUWY>sGd|8jHb+dturH?q(b4MHss_lDQ86|zgm)-vR80z}jm=#6t$u58W&Hx)rD04Gyy zFko+&hFQ=H6r=I=wjeCBe@Q;^y1s`vT-bkp%4&5SvORF*U`$FNrly++R;@ND%yl>;?+!S z&BtYX;D?;vwOypKR7OwX>XsbIti5?GOZg*<&}}LfgPT4e+s*$;Aiu`D?ML$4si7q! ziniJU&;9(j8m3Rv&L@l?PFA-4v9Mxsk7rj(aO!@&6S%*p3+B$rKN1~R*Pdte;9P(T z$vvP$1usES@KfGNMdIBX(WAB0$peWixQkxy?L34E$ys3ZMSRj9ICpp0_O7ixHDayO z+;lYhsG8VC%!C;-e6g@}dFJNP#HF4H5LJ6P9bv!WQaIlg+sK6()ocW5Zn!$|2-O0% z+94JAMq)C4h9k1ofV)PxB3uzHPLSaV;88g8Q=fFzF*|h{prhzYTpd>_8+@vsaM}m{ z>?CRMNv&w)A%A9$QAkGd3cN#GZwfzuuecRt2aRj0h#B*K($^rIY<8QC1fWP*g)F&m zi_Xiz&wZ+SX@03@PoRB5P`9KGcRm2_mWq+A$jlEC;<6-+%ks>5oslIdS`sHKg6t^= zhvXAnU(C=Rb}!-wSdjSS*Ii^O+fWdEJpVSVBb3`Te$5Ep5mnUfCk{ezfq3-*%-W@B zSVLH5qOf=>RF`&2Ez-@cDN=f}?##tKgrdb<%J(qk^IL8=n!@iK#g?+CDd!Vj?{M(K zQujxLiRN#oMJLU#zp&LhoVKd@vh;yt3PGA6w74rM>}AktA}wfd!2y=3bcu7ysnv}# zFhq-QYp9|@*sJ88IZ+vUJ2Y1hP+;1S$rVo`os^+&*Z2dtM5K~W%OTm+XE+nQssCpp zw;@?dOSy8PUN-phubak0OmPhr!BUzS0KNocYV0THQJmH8^x#7Dr)gi)pB5ZkU1G>c zNnQYmbONum5!o)p`Rj$l<8ky-h)Fwi{nk4wY9WL#)73fMUu7&0ZGeYC9C4f}+~x?= z+6S=3r43hK3?}kDYofgYARaXE{#Gs^zBEz!Er4$^57k;LbwdvclGKU9jyZSG4c}uvLkP^VEn)oka+`} zHe2dTZrwk)m}gPVv}!Ow?tF`hAO^LTTAJL-JFq#ErvB=IpssHo!bc4t-dy7WP%D6; zilT9xAg1cjyA*MOzUzL!s=~TAX^uBi;~#ZRLT8a>ke~V0=IC_oqr+9lMXk;#gW1_nl<++(r)k+qu2-_Nq#&Zp@J_hINoDv5>ncW%kOt@ z2KHw0hqD@8e;h}jXvM$f+Fe@Bil$uAy!#DIo#Q%X3x65`fEK}oeHjAuY7|8ePOA~{ z;^m6sJ0i!~?^*RvB^;}89*&z`yDAR;O@x=@&_XZ|8^kXbozo4PpL|QcB`rLG-Un;s zF>el1Ctw-rP)m`-FF8Tr7(OqCA;?AN&E{nQ%Y^(1Qj&%^0o+-@1mvwL(*k6WiDN;i zf~(~_xf<$|T{vZz@!BevwM*|tE+s$RAx6@73Hcjz6mq)4wwo)}O<(Sji+y!-ElLq3 z0NXw;;qBrqiBL;PkX#$b7h#8%Ve$lD)yy;YTujQTRIpoWQ76CSWGOL%hjwnR-JF|d zg{w`CT1By7YV4`huGCuiXWyw-Q!35wKj2yp-Us{w$dwmuzvNP+{pg=?i9e&oeZ4=s z#7f{(A3f578ETwnjy_R37akv5S-DSqEEdE=h0%aQS+L1;N=FpQZe{nk>e&+<*sW1BV2xR>Ts_*sPxN^hP+dm2yW-Ew2ML8D^pgJPT0IP3HbrN11^ zoUX^idoN%T&(acm-qWzxMpdqsLig&=pxko}6n7rtcM4tKP51keC21a&A-VB!7o8Y8ZiMlU)IP)8w+I8fIP)t{V(;HxFz3 zteyF+sxdcG(3J=FW-m}+>)4IRAGZ+CEkIR)D=(;LU;;g_<=TjCNH^z`Bjy;yd6h^S z<*EyLHe0}#-2t^ks%_*<57^}F6}Gxw%{}i~6njX=b{A~clVfpVrr5`G?Do)p?8A&` z5GO?gFB)IWKEcQbb2of0JGf@>MY<>g9aoeCnKzJ0C-8y|B1|Dzs%j3C4cmh_tpaix)y6eHD(`1y^47d zpKSDU(!XiEGIhZOY&6NjF?ex!7QYPzp1>BzRX}|@ecKSbM|2Zg+C?x0FkjPHor)8Y z6#iFje+4TMY|ollgjU*{!Gn2O(~7atRHcH$4kFxK3LlUDUL>mvM$Nh%o{_sNU*M9< zgFxpC`al_&xY?SAMV4Z7SjA@pWt)^SZ=P#Eqjp^LyY2cv#XemSM{rSzZ>o_h5^+WBPtKZnnG<-7x?i z6#bq|yM^D{OG;yAznMoh-}1DtN}h=Uxs&5i5PfsGHrotz$W`DNgra1aM%e4-KLpfh zN)hczJ&T&gN}8JSkI5Za+s|R8sHjf!)8{;Y^>F~mD%c@DY&8=%n1C^(IVm=kAJ!H= zf#&l%byzn3tZH$h@i*Zsd0jCZIar$WZwmffrWp1%bfP;Fw3%veU@r3C&w_l)_e9In z=%TBXtEKPF@-LW;ep){u)aI@|A%7*t4`rqpVPQ8nOF!Dhp;l-JTb0J`fs8?awhd-V zSHv*Lxz=_`Oq#^LLid!czbUU{5MOIt7XR$jnV%S~tFj=DNhsEIk{YXoV=&3}w+_-N zAcThC^W8$x@VDgg=Jfhq66z?_nUs4P@YiR4(3IBJD zyC#T?P4>G>!}cUK-7iLXa60E$>Ryk@L`Q9|LOAP7i#%lsVvo>KW2D3#TDo7r9P-rw zvke;nx^>5je4o_H(o0)&Gf>(Xd9`;!uuC*)0N6+_$sT*EFkNIRwKZ}6xh9U_1hPvo z4|l)#Sji7^G_jHNZLsdd5UbtV{WyU{3S`PG=+a@9C|HSNG%V{D)h$7&CWVvH=; zWs}!`8}>}Iev}}kQfxIGRhGCWA(L8!P>G5U8%GWU>{j|6-ce6=hn11PE1Qo~UDV~`fYu>?;UAFaQ}Ee! z@5cPOZe~{0nS?mq6VL>5`RS?=6&@uz^^}uGw^Bq->Y7fLTA>n7X0h+0s*+7fKOWqkr!_%q~Xw<)Mi2z9X<|4SvB zqLspRC&y$-+6yA?itQ4(4JS^{5WZQ&YQvVnBDo<{&{z3?H&x%V7@NIZr1go1n-mtw z*<)JQ(0d|p)KeLU{o#7^K#r|@OLV5xe`Q}s>=95F4p2FPB08Qs>nFg}fgK#kr zt);6Q4e~7fI#ieOVdHy@?yP>TYgaCKal?W^4k+Ly+xq~g4kP!TWeXvtomAlBwbQ`Z zIZH^((=Kwg8*pz!tEB(5d!YRi2-F1?Z(`ikhi#Fv7B+*KuHxzIIRK>P>&f7}uAWXW z#4t5;o4!UJ5CUp(@=OqkD#Hik-jW8ZMoz~ddwO0%Es|ARUk^`4VAHVZgS=xIc|2`nCWarf-Xx`dGhvt^Z@+tERW6Akbc&}1*n32Q~+($)r6g-8c))fIpAg-w){tbjr#dRzcX3kgGts5k+FBczc z-LK;kA_BU{hClKBz;+wIv$B%yi4(_fbQuMKQ{6MXN4p_8u_2Y0P&T;T=#kRm;H&tj zpiFa%GOoMFWXM^wno^9$Wpm8Z^2Yy+`laKjlf?;LQh-(@zT=P^!<=w8#6^jncsn&b z_V$VZ+w=YS-(+qy9SmT~xw#8*^iMaw2cqE@My2>-)~)_dCUEb)B5MEUORu!2wAV+L ziRC4D+HGy2^yACs^=e&dn)d^mh+IZOk4lYi=7p#dfK|u_A2>!{tgA%H;q){n01 z3wMX9U=!jZt3FNpmsPzAhvdaWsWB^uclF&MzKfp};n_op9g$R-O>7rYk?#|?$4;`E zh`e6b?Y2tVdtI&arIKV)l|XCr3~nn7AX}0i#h6a$r)a)k;+^>Xf(}KGa)(~+OB(|0 zmo_A{4C*9&@_jSMqE=aCKjH~qi0!2_@bDJObxFzu=NDCptA}n&C4FYR-P%N{^;*S5 zPhZVvjouo8m*lg-?A`y|)1S1)2cC2}D^|HW7U!CLej6vad$SmI;B=f6yh%x?+P8hv zd(ia!4Iiki@@-)J+7h(*53NwZ2$7(lKapIu10Rcr#?}|2!G(2po(^L&ZaSH&ef~>H zCog$ObS*zHe2t$;&KGeS&Nr(Eed&P0{nD)qAQ7t;QR*>&sw1;JkVvx3*ZpE1P7lAu zaC!@+Xv-R=_`o26x3TVLE3!$GKIHjgBa1n_(HOg2gItl`D|D^(b_rB$p61Pi4-7~d&HQw-_Hyd$H;+x|w_9$h8a+PZ z2e}26;lx+TKil9=v~`kY%H^GT#5#f$YY0Mdn`YpL3y67+<~=&`ey7KbGf-DdNGjab zl8|MBbBAlDzZPVb`X?I1OHo(tI#p~S`kN4h%V8IyTDLt%vP(CGS!HK3tZ7-n{j?hl z{>b+I%ks0CD|zl!)+#c_IN}m;^F#6`4w$?5#)iK7lQ9C8GDbqFdwFR@UW|O>dB=yD zkNFz7pdSO%Q6meyvwJ|~`QTo!OE)KI)sHV#iOJIvl!3CY8a8lt{D!^2a_Z5St)F0M z8UR+R0bl4Irf0m4Ew~vtS-w7)bokdqJ#!X-Pr&_YY2d_6K;HTnG3WFMEJ%L4Y;~TP zLX$WZLQ!5`YCR;o70LYSnrYN%$!uvEyc-f82xj9VIE=g~t1TxbbEj8gO&EAN+n+(f zHo}t0>o!+TIr^P*&WPah*_+3}+)-~^?wewMCh$5@kYBoKkRpqWEE@6zkTD6kC62NS zT^?^zQ4XChH1I)E^>TfxN$A9@Az6?O6pJ|3X&K#nO-dY54q@ePzp6u;Ro(o7q+x@2 za8h>1airQc{L0MPl)u4<{X{t;ByhseU7`=tqUEpPP-JjXv znezy^r^`GhctRtH=;s+R6lL(c)-UEI1icTr_7*({N!|2pe3{l^ZZ)vHj=u4 z5hCCPjmqZ+IWFJa-RSZoeLl>hadC!lRo5Zz(ItYhSt5F^Y*q3qUy*<^D@LIo;r};xR6qu3NktNg; zmw2Ye*M-w6-Mh|;Nc#G1=A|U?>}Q8i5ht=80ysW0o0sc$anu6y9%>_6(XYnK8>Oo6 z!ju&F_hx}DI?kWF)z-#jaglXkUPpih?Ghyj4kS_UlbERX(=F>*1hYzig!tWh^BAGF z_YCH0P-Zzn449(=VuAgzO#Y=Z#%TVzP(ISz3#Gl=3Xwc){YNB!YoEY>0HOwyd+X@L zfRn&TQ@CL_+O`!_IbXuZn8Ea(@uMqRHNn>)8Rjt(<$iM?E9{kRDfIMOncP1QUu^-H z8u?iMXCSHpxlfovdL^xEG>*s{=3je$0H!sIkw$tDcNXxQ`8ra^owd(h{po0iic5*t zy@|UvPBu{A;TC1YtOqM*0m>sAXlj%}m#DaaTEbUC=ybd+2MBJ8|jFD1u@>$l;h zm(X8YK$cXrCcLZfs&W#vjnJH|K$n|t=F#i6k_o-bUWY1lA(wVkEiGAhwC7!fCoC}e z^T5g|sb*c^R)wkTLowY@Bn*+J$aQyMS-uSzW@GkTQP{Q%p`hm;Er>+ z0C6|E7YBSMKCm9Pu1^nnXvS79g}L6(M?XV?9C7m0Y5|G9O5D$8%8kp(D+KlU<&u=)Y#M@KLTj_m}deG7>8c!3)YC-W=6; zCiwwAK(}V&C7BWE?C<( zX1po7>uHjH9egpE-8KO;Z=GJ*A>LW+_^GzG-@qm;*8Sbk^YF`Y6AJ*h#2n!DXm!;N zmC2$q;n7|`k;;BWV?}S@O?dUX$#!#G2Dmo6dm71R(EB>W;r>(|I@Ue%A0o`W^A?n2w9q zVH7cw-K21miGgPeU;Qsx7Ov|nfG+IrvbOPZ>D~uAP~z9iCz(ISZZ_h$4?HN@0AG=n z@g1DyZOV_=Y^73hI&9JG;0WJGULn22!R&GWRugPPg0$fN1hsf<8qg1IrLXf^EpzmJ ztd4m8Rs%|`_|=BxWoi)$yN{9~J1A8UbvrG(=fx3*x^1O+_gwz@+wicUIp5b6h{R{+ z5wCx+Op$7|hVrvNBxFyaq#^O`rY4P`#{Wjh^WqT+-|*D8zUH@bBv=s@og4Fu48HZA zr)j)yKa=OhYsL2_!zoVFpf=Vg+uOThsALj58iSddpCH@RWzkzs`>-k|1$R=?B7 z2r0TL>nMip>Op$RI-0iHpw(c)Vu&3k(l4pUfEs15Kyia3guh{cC%2#)5)(M{t*GNz zJ?qG2acFa-2qloJT{hG`{rIsMy_emkG*_Js_)PWkV{&Ukb!Lbn%vE{wQH28>1*%rY zz0^g#KdMB^`kF?zr^e42txA4S!O#0mS}xDi3US~9zE`FynVr*LQ7L;SO-`aGS-mQj3Y7e9$OZI$Olz(Nu%VxOd1!+%Nfzp>925A!?xp zB1}|@*xMMbT8-qDk9w#9)q2L+$l7(&CTJz?CBFC?@lxlk!HUNH9 zn6THBkaq->6p_Mg3cNp@o2*IJwmO`eyDR8|9=y)(2pr9Dlrkxq&qq07+C2X$zWJov z{^gr-Z;OmJ_nlWzZc9ni)}zY8 z7k3(Adt$%FK9@vBUgW(w6wi)Q;5y3>uo^pm8yd(g#~N_DSEfSZ$3TgHq(rZTaIfZt z+(<7mE+IRsSp9c3lfyERevMiPi#+}Gq3*Ix!Qftas#b`h(1SCL`BjAflYFmpsS=7F zcfg9PqfcgTMgLLj8~sqPw@|GDSx6i3kT|e7FF?tM7>j&U^;!D;4!v5{{6{XgGmi7? z@gMlC7_DW#+f6DmGWtcUyln_nv09wrnMnaRNA^&lR$NIYrK*i_ZwjH`XBq~XoHvNq z@!rgW>fnZ82nC*VoUU(n1kwrN2@!7SFG!7hhl||mm=44U3pVd+I`jUxlF5PgjIg^* zAe*K$JQ==4=f)N;1Q;l5u{?jgfNMCI`pBLQI$$#>^I*50X#q0{a4@;C`Wu&d-Jk)2{Ilt;ckAE7J zh%kua6o|mwH>?1Eqb|k6vLR>9;#*<^xgTKf=$g`w5!hSv0LimrJ*9}^eM1C?=9RCsS zc&{|ycN=t#6fri)W$j#OiI-&yhd3O9ZnIkjIZtvu-ybD9D&=KMLA{ynI+SJJa8 zXhFHTv@Ds3GJ+yPr69_88iAU@JIjuwdQbrjL>&@flw1Q( z>I6$A!JGbNAe#zNojGClYe+wH)u*_akyw%2;zyaAbhuol{_b=0ZQpk(ij zlM)ru`y4!9GB=go$y%lE9z)WLvu=(hY9diILF!~qVhavbg{YYk;I6M6J*cKAjFyZW-Bk2Z8$u`Trd22Y;34B(Aa^PCK&YC@lW{z z-kSQTU{4@k_xWn55rC7zM{G=7Sq;^au{Cbkan($8Y^3GSkRYJIq(GoVFhSG7Y)))(o;`kNQdgtI<*f5LiiwRclsI=HoX&X_=gBUD=^76ss$p7m z{U4rqX_Pz3Y@Xw5bLYpc4X>x7H_m_6eb`_oE&Lj>M=hD+j;yCXd#*U|LB>oxLipCs zK$|@nScIW`@Q3C-gbRIZjUpT9b>Hv}j#Vy26rv)LS6Q!GbGYXOe89hH-ZRuq1^(pD zMHdeBI}jlK(#l93v}(&gOr32NfhFiAbx(WrIFR(h9Lr;g#h*_wQ=CEZ9RTbwqphfTtF0yB91U z$on%J9DVIE30fUwJ4>Fi$%(=)P-(UDSh5bgastv1o#t{(POUN%>~?q2A(6@E)futr zQ>!hGc&dV@wU&I6sRjG+VXNB&2B#yfWQs|DxQ?e*C}9yAGFZ#ucA`jM-s-T2>Nf zUeL0l8jq%$;aY?!O7}h35P0 zM0Z4SUX_T?X!#lNf@d5O4#JL1cKrdfqum^9ZdrKm5jZSCDoiT1 z_?z|O^N~>M^4quJ!#m+wkf=0rskJf8tfCN=@4u??H&-;}WumL}j$oHn>@8YGAodi+ z{`XAbK2TL9Gl3)vt^h|W!6|3xsHZ&{vuMMPU&jS}8U42~TzP3ycB}md(TVtI$+X@n z^mN}brt?hbOY%Z$8D>`E_4P@sRlJ#R$5slkcek*it2MZ$s zO!p56eh4o~K5*)Wz+&@ek9I;JMA|9=&G0dQ{?dXuUW!Y z-fhYvhi?W?b59K7{r=jXC`|a7OT?MX!HDeH<1@F0LY$@`i1sL)1&m!hJkOVTCrK#? zGnh|9<>ZkmOxOCLdSe`p2X{pFh%WJ#jINHb>b&rTA$Mygq>xkIX2QZPN_-ylz1TB& zbu?Z@K4+g-fug4V)|-c|eEZW(CD)>A-Rt@s1iEZdAg-P8$lyxJc0$7E4xz{?w>V8-xw2pD|ZYnju6lY;!U_&1r?mFW@g>61vd-F+UdQlS})egr!f4WBW#MfRP$NK=MH#sID=24O! z6SngCZtG&{+E>NHoreE&uY-C2VxQ7FBd}|m$QWf@vS*b;JTbeloXv4l6W)~}{mfpv z$e3Wua$k4TsfcQ+y5uV5qa-jpzq+5GY!wpAM4Sq1?MY^Rf0v|{TDbn`wrQ)ZNRNa& z1@RV!sH9;TE|9z{d#1M!*&6m6_lCM;W=mOspyE9JfE%{dId%{k78B_xO4s6F3nhYK zJ!ec&hqOlYzYp3R z2r<|SAD&H(d^W$F+T)O5fY~U;Mu>SVG&}a%?Oo4Jk)1J@=lgVY$d5CzIC66usXccO zYV#dkHCCVyEqi8smk>wr4DnMyjB9f>nl>l)%IWYvx&>tg9j|m}-;V{ML9fEhRpR^B zvv+s8zZKGYD^EwXEEsGkL}w^A-{L;8Iqn@L^<{JIzSo@CT{>$@L}WQLrkcp6%2HKMwwS~(zTPuK zyS}cAw>Y@|$ONnHrm-$3!q1soRrLGfOTJ+55{heMlH3KMnH^K6^9+Ym=Of+rr!cc3 z5fD`UFVGh%eg&-;X$@_%&uJblSep}uE;+@HnF2zb%K&{ znyPAw|0OrRGK-qZ(8=rfGSr3Dmm z`|c76BJP{geh$<w#n~=Y?#lbp$-nI}4U;QtD zaQBH02~WUuc;HyP59-ypw-y55zET?zLDbyY#n)p&7k4z1@yea(HtKzUzhIH9p$K|i zqa!l8fiOuuj1bIW2PPu+|KBJwW>G%TRNJrThS(mao*O831Ev5SyR z?{*X1>WC>Dw{s-9`U>_v!V6Jc0_u^HtxecnCutYxiWh=zD3ZLaPi2ZtuC))JyL$f zoz-6qT9L#v8ao%^!O+|Ob4;5jIa@3YYx0u`U-GKxoH6&e3LhjI6B?Qb9xFn!$({lH zQ6#cy$Qa0RIl!S;)#ml4p{)4eQ}S1T$5yU)CDmFDyF#u-rJ{h|QCFb{E8R{w)$(yp z@o(mZWk-jx-h2s?gBXu{`vrU)1o-Y9 z5@#Q<*us57iMctiFmb+tMpdy5U#{+?NOL#WT>S0#X-rJ7b`{{Mktq_{Ln%jH&pSI6 z@|I;wfkFpyg49$Al{u)vII+4@WJaS7Y>2x!1(L6VmlUlYn*{olT?X6$h37*h#@ZZQM&{Wq*m(MjzXL{_c3`<|7M zZaKaM)+6m@xLUwcTyiE^dS6ovPJf9U3J}6qYDHmUg(p2LiRTiHoNDZk43QveBA}JI ziaoVqUQnwI@T_6RZ*4*7yo(>qnf)@o~+Fs9n;iP0Cd zRRyTyUKG){1@7BoiKEKyBI0IyCo}B$iFeYA!>bF5WkW?T|8L)qWN!6jx&2S#`RUo! z5tF!E1=SB5wuQ_|oCV6Au6#m*%STI)O=TjtZ2O{1p8X~bTckP`%qDjmwpBs;jlL)l zani=&6sWLc)j=phVyDlH9FVTDQhX9FuVGa;LD!88_9n%L}CiHs!7w z%UibgyDe98ROvF-KrnaiA!L0P%gBRr7+r`!2xm%bBE)?!r<=~Af8qtBFO7?h{=#nu z#+E(5?47#8d+BWzXoHP*glmI!6pWt$#(-%Vz-@)*V z6#CbSlmdPD=!t(n_Hgc`>|JH4r~M#Dl{={-IBoz_n3s zvo>jS-nvdy)72OAqQ$- zHXPBl2s<7&@4(rS#sNa^HCMP@?a~UKI2p)2 z-hGv~z%mpTyGo7`h&7~lb2z`ZruigC_-%c2;^b1$RA>y>R~?b9qY4!Lm;0mV#q}8# zs1h!Z1x-~sT&{ZoTH=Rc@@8;yNNjhpD~Fyf%P-y2kUwbki$OM7(q*80dnaB~5{1;M zwJJii!75ubh08w#f-?lTnwDjU#7nC0|E#N`+PhMqi`SKdOLv0X*pG_`!^f574m{tb zpi_!Z_*{tkMet@*6Ph@BIOaVH8PJ9baxdssI;NsqeEKn3C~M?Gv)|azYmpGg`NmeD zjc3l#1IBEhwx@(y1ih~v_wfBdQw)XE>x|fFE?kxO^SxOlIT-G{qQy>#miArTWrrmS zxU4p2RNdqoxnU-Htt*k!0)tG>%Q^hR7=`O;0D^yS$^coL6`~g1JEx(%Po8UsSApvN z!31m2gFUIZA^;cupdr)(q4CQKwyw?H^7P;{URFd1u~sHo?!|gW4^Sv9fxQku#s1C zaId94PvaK3)s@+Y0GKJLQu{|AD#+Hq?pirl$R&-4&@?QhF3O<&b5bG+qVb{Msim35uS)9li%q(8S3>UDa27>EeafWAVH}cz4298$`sVJ<}hQ*n!9R!Fk7y zKg5mQSxV`itzG{R#W8QldTKP6|JQqPk|kPGZg0cfLX>bmiZ^(8ugUd~WPf65^#^tC z6YE}T*l*p~lpU>nX1y8oimM^kcM#*qLKLSa6z3r(1r8?8!|4o`GMDz;8~Z}hy>Nu>4`%?90n(fi-RrA(K??2}`2 zr-Wio*i-G-3Je23pYM1hJS7egU(bYfGh{BWkdLYksP_-NJbVlpU@#sMF5-eG%L<*XAbBybY0(#Le6>)^5mbBA9fEJ9hA0poO zmSe!sHXc-hkWEdrT8NCC0@S(@TH8)=YS5Rv<$b{N{#v?~F_CWu{H`QOJ(;eotB$HlwOnC+)Y+kAZ8r~rHC5ByR6xWC+((>#zEbbq?0YfjRI11B;;*Lo zoiCB51gOmT^}ZZ`qCTBpg2FM=6Py7%YaFwe1c!B!PO-g~gt85kKg(5_+7=6$oF$yC zfjZ~W42Ac84^vw}#bxX`JNI}G(wiARN@aI>@Va06^rLJAq7e=vD$HLMVnnU0pd3}AsCxkjYN%$2ta`qauj7Wi+T`hJ- zl1(0#IPOjo?{B)xuoMpDWxE|O(TV5~w}iicweDrgWZ<)z6T|&Au`<05b40)#u@ySO zlCOV&gmD{zk0b>(yThY*v!OMefA^ck?O-R|Rr}$w0s$l|2Xp&(WeHo@rxTfmhin#B zeb4=nk38-F0e`Ao+Km!8s+S08=gyUi@G9orj}O}SO8<3HUbI&zv5llN;#Cdf*$vVR zo;uHIvnTHiQ?AlET$f326%XyE9XyNcG2e2a<<+3xFckMv$s`|^;|tj2-I-WTVc`^; z`CRv*O}P3+im=Cxyy-xg&h1r7r>1S<*&OTcPU`?_qIcozABhFy3=Z-z`KUaUx8vF8 zN5YnozVis-b!70UM2i19n;<`Uv)%;!MGkWA^)Qyv?LXZC#VW<2V*9?Ek~fT4Az{ zdu0#lH-7FM&GSyCA`=8!f^L?*FSQW0ZUgy7BLzOrXy0)enQvw%I;0>AHor4I`?s~3 zJE?QpvmA8pi;;03d}|ItQs|ILw*}&0QJ_sWqh|a?pvG*U3Q>hajbnM$pd#<8{|%H8 zg5kkn+3VBCxLueU2yy2RebFe7*ET=67n1D5>3PXxS;9MNG|BLR1Fx?Ho(V_x2u)q)n92u{$41g&cp zbgjK6k418D?p>PV47CsrRNqDlM7ZUOhiC#gE-^yC5)>cv8Fkx($LlK*3Ca2rJ0|KZ ze)vfkS4Hdlc9A8*SJdP?+wL64Ir7j%#%jH#w2I8QS5WVqhm_;ze-Gtldxwx08;o8u z?uFFVE_sEoS-`bGIDrPIlXK z^W#17XbBz#N!V!sjBc@c7Q!5prL@r{t{e;$HZrzoG>?}G{-yuZY$o@Vsf>(?d2CYfQ7*T&Pidvc*hiU7QWNdQ`NAE zXc5j7YK*7jfBPkw{C4>rM~=l~6+j+dw|<52He$t9V}u=7&o$=qS2I z9Tej{P!y2(!x!bMP86X3u2&W6`AjQLVca`K0~$3NpU+TU4E`Z^zVOvd$sETB%O)*D zbz!=Qq{{p3XI8_y)Hx5Eu>9`xDWUEk=nAotao!vK0g1ktGu{}xTq+6X#r+7wOjX$N z;|eVs7x~EZbimFf@3XwVFK_RctUhXgyg3rMlTOnOoVxZtTUft1Dbs)M`~jD~ZTUm) zd)8cIF^YAR#xozqhFEXrNK8iWbIu@iYIBP_!`r;YvPQXHt)ocq5%y=rs~}puESj3% zQkcEdTel|piSs)trM;}V486AD|6u{J>--il^QsY>3$j-9F*}?D(ioGS4ub+U%2aG& z*jnrHb9#;L>$lI+KA5~BLi#yHDeCh>eTcW`3r>I6qTvS*zoiA`HI9NI6&w%!g9}VR zC!Y}VxdtH%rEp4z_NYYXg~W4=pVV8N!ujeq;RrkL=(e|uV(QAC~u28Pzi z*YvhFep(EFOT4`3HHKB#&3;7IBm9keb?nSLe%ac{(?T-kC#rbLK^hxn{}( zb1z%`Lm`F;D0i{4RjyEN-jsKh^y1m|y*Jliz4_$~J)MAnJ4nM|ZH2|X#T#L3g>U zlavx8XLoM-)duyS7#!1kG49jyWS`~xc6Zrz+LhUUvbDhnjcSKYKeA{R^Z6$3prYUf zj&%vI!LWK_WLS;DBR>Ems!@Gcc~Ur(sAW~sy>{2|wMN|XKFTN;A67@a;OSfcM*IhD!NLxe%7sCU;XEG z{p$Me+l#Tg@CMoR=dsFHWE1wLyRTV>tSgwQfwsDLVvrdiYhXRw#?78RRK#9p8Fq&w z`LQpLdrx>~sbc$DB$a(hOKw&Bw=W8Y8w^IIh&#V-*Pn$3?WRVj$yJgHAG;fyAZCk-CiG*_pb@51UH=&gS!!Htjin zUlx=7^dew1oNkfg=;|J2_U!oah^fS;&@*59{~U6Mj-N`YJW#EBt9)>=vwiUhKtif~_D&ZN8%md&g)#YzKh{Z&Sw0`0%n&<=4 zpNaF3ov8wZ+{a1{#3H6LhKIKfop%n^ThaN2tw>bz`c8&*zs?K6|KgXofLh4@zcQlU z*f}v?d&W*jG|nep6Liof$ICU$Vk=MrJzbYPU@y19bxUpJVgZk$2siCd?vZz?K?AWiYF&5NUT`3kZ(hAGcvhbQ z`dSNxLq#G{!1Ei2IREh`P8(rqf5_=BXoO=x6Xi)E_K4ysLAzjD1X<@tkO#(FQ-7B1 z<4otW)fjbYy#B-=4pZi+s=mLFdfPEl;zLYJ()J16kM%;}q_HMw>fDliuB^bs|Fbtv z1yR;~z+qp#hP$Pat#*@na*ib^C^$NSz8(Hx&N1Hvf_I5&NfI7HxOh!`R+sKb0||N3dK3)9`UFLPRDd&zQnZ)s(%ZT>K)>xdSC#pMQ zeJk?5Ef^nWM|~h%{+ytl`8CON^aK*6tN>!&>HS+@_$A85@GM6KeQQJf?271B_f)I$ zE1k^vw$|4@6Ie%RK3Jb=irwr>CdZuVcJQB4r#;)kerY7P30HT2^l!AD_?34};OWa- z+^ak160jTRO_RQN>Npz)`J{1!zbKFtPC3M9KX4#OQ$xJja@&3XUtHfgADVzak*c+zv!b z`;OpYPrO^+9Kt&P+4=CunD?q_aZUP&f;}+&UJcE~k3lQ&$hQ6DQ&A8ixRq2GtE}ZZ z@m)g0L_>Yj?U_>x)+7Ea-4q#hJ8Xh;gd-sQ0A-ROA*L zSQH%P=6SZNUveYKWoaUJ#XRBvBxQoX+3Xj{5owJz7@v7mgphRc&0D}sl=hOuGI4vU z4QWZcJ~q0H@cZy@j!j!eL9G(LMqpVo#OiOhe7%~*b&(GZ6|z0`Z=$28eUVy?Y${J% z>1)0xMmT`}Gw_l-@ww|@bB!v%quPCw+P|sXZ3GzAx%(T7`%X?vx9BG5T8Nz!?Hf#5 zHIRrjM0`m0Iv1k4tF&??1E8w9%LEtncs*g3D2ez;fTa&m+fBbn6zE2ts|;)aUADki zUkSdtizB!%OK|J%pS7fBWLk#5?v0Q2sStcOaYoS9P&Az&#o4PLCt?D|3QG`*@!poL z&K^HD15njwIlk~cv!KE!6pmQ01D9ScHNpkiUPR^~n<@r8gPzn7|2zrPxaW|#a${q4 zSDlItpA1`S99<*expt2vM|V%r_r`opJ#llUE58MF8-psp>2_p{hM z-c^`_dQVsJmecau7+ti~F64C;TS%i}+pZ8r3=3Dz&Gt%uX^lS+1cZp^=YIFE2$P6@ zuj1c`m<8uBDxhmgb0I135ny~p`y@hQU$LuOsbes;&}Y)U@-$~wnKqS|0gPZDYFfSt ztqlZ}1q7aW>lh(p5?=a6c>O)8EsKpiFP45}VkX!aUDc=f-6OX)6M0nZhZlv?18C%%jtBU2#t+iL|P2 zv<2^uc``WW8$VGBRRFtq7ft|t`W|K!){|I3c=PBAvXaMk-*IwG++&w|Nd*q`A#Q$; znYp7YhrxuoF?Inu@ij~eI#&fj&TCCLa<$zh2z$-=D{ZfX>tC`2CZvhg;wI{S#_Z;}G`9qv5bhcJ za3oV|Zfj)aFALX=Yjeb)kYa5s{#mOxaipWC!Jp}=W#8ITidV#^KXCLUpMvrze0Y-W zM1f0aJ1FznbcOYFu@B>yI`mJImXKUU0hz@;u2Nl5)8i{D80pUIK$p94P zOGfif@9eM!dd|(N-0YSidk`uBk=arVprPLZ2$Jqy_2P9@klsr>mrpLa64s<^(>JNR z%i+Ncg-j+f4#9-q<-Yv+eQ|ai9bdFX{;VD}^G59X6#2yp?4`J0GrwqSPSwGlsHdacKfplb;D-F|B(@-l2Hv#N-BhV9(Vu8GC=>c3X& zfLRWU8>9B?lhfyCvwIS8Yo%*)^I5AB7&o|A-~oE4|C2M}ebP2(RFj8Mv~n%QqYoXK zLxFf{JfKchd!ds#SS5ZYE~im=XC>+ZNNyxejIj8ghzvvX$2DdFUm@!mM_uv2t`evZ zL(})ibqr^P{4TuRL;aj7oE`xNri{*&2FqdU^qZhUKIJW)Ra`b?Gt%P43t^#3BK0{RgNEfr1=#wdPIf0iA@GOgEJ$U!?eck6$;o!l4VwxNu_AS{2 z=e^X&-TObL+%KyuQ1>J-B9l&+HZ~pk?L0LTm7@K(uR`DkZ5M1|q#(B*DR!T;hG+9E zo#i?`C;kJE>$4v9Dn_Jq{(0_NV&aNpFwaj)M2=(7d60A=_RYCr-a`+1@AAf0llZXCsweo#ieM=7i z0Sfei(`f}5e-TLrWk?d|nT9{>bT2HgNtXLg0=-v<7;K;YjJYez3=YB`?+zexhxUk` zyAIUNg9+ys{m{aDJ9vti7u2MMBHUCJttED?(T&AvqB+x|X9|~3ONV9;>Q!cHL~fb) zADem2f6U`b-PBeUIFi`dCVI8UgX_U`|H*94^6ijJsJK-48sD_;%q$B$lJNGSKr_zm zi9g2rLnZNm7f-#Yyihycfkx2|mRkVQ{M2Vrsfb!2K!q_c;EfsRdVwL!gr@sVy?NX& zMM{l1EH}Ts=$@ad_)WyBLT?)bA>^HrAVqXT8Il|-Q|?DpvW<2Q?V&54lvw(jLgtS; z!9I>zX9S#EuN2t*k1L~~r^&Lkf(Mb%Jwn5`^(7SKou4e9=MGT4Z3Out<}N_{eupML zT6K|SkUsOpfA=Z3}UG|Ev+lT27-(Ad^P#F2ODkjGT&Hp)9cm|a#lh^6m9`Bo8N5zE1?;X&Qyg3G)!nZ%`>l~!Rx|#b z!-tN~Lmc-6>mJ4;b_?F?)xOz7JL>jqF8$J|%}a9|35j`K{o0X9QN^|Kvr{{GEZij6 z21zfuXYsBpSrwpQ>EUm1TSj%2`n^*F1X6in!|s=j!LTtU`YetK{7tuk5|bzQZ#Pso z1`z!7Ez1&HS6xs^{T+Q1ndm#qvwe3f>EYqIUQLYO_f)s=52Q`QK@L$M$f`a8cCY%X zx@K^inG|cqWZ}I;{R+AJ9SRpY2`hkftT|vnJ&G`>_jL`Xap$XlL#NZ#F;xOO%Og>4<`F0 z-5PoOz=8La1YKi`Ueu`~r>&p>oY2Quq@hw&uHn$A5%~p;P`=gnAQ#Zweb2fOEYUqz zNs1MLuXRCK*kMmF;=3tWi2|Ft$_%*qk(L(7!7-)y@<`D{^XYQsH z7?%^kFoly8{U-`^68tNr2qUdLp)b(ww$}pFCZ7X|8w-9y%UJ_%7E_BTI=0H^gYH6K(~9N#45m7bA0$2SQ6rAkXZNw_-bpkY14Fja*{dSh z4Y<_U;f^is{>hm=>`hK1za2F8%WYZvZwd4c;xgmv;Conhn;OZ1ftGQCudlEN-9`|ul_=C=)Zc!~~*dAQ!K zHf$!Gvl&;P*qP9%k0Vvi9Kzih+5a^B#7BB?bmRUN?!FPNhmb%ph@9-{Obn%hx=7)V z=%{xS)EY-QeL~m-@_h#RZ@4PTbkwqJ-I~e79*kK;um9-Jd`mzdxP6)FzI?PwlfhHQ z`TSc(MFHn>xv_`~*M8zG+<};zxO2z400Z#qhGLe&Zz!?X-AG``%7%sM(;+9v(-4pP z72MOLK)fg&wKfSZ#!qp9LI;8D+Miovp1KTiL?$_=MB1SF!?(hih_X5kF3TCuEbueu za%RFENVlQLG_rd;H^EY=3}?m9w?1da%?PUpGkUqY*Vu*EF(!s6R%zDJUD?8Om*w~& zRRMo{V0QPDi;jQQF0;(PV{9ex$1Z&M*F(vg;3HS_CXG-Bh)Y4vSlBW8>f58pRBQx5vFr|pL z2pY0fK*e?Htg9t>IvmM|+?-eH8>!dpjokc2(Sjv(JFoW>dTakf;D>%o~Z1d1g_vyQ;-_r~4XVpz;tf zqmzsQXK~^5rRy`TAmw{+Kc1Crg_LGRD4)rWk%TYY&SYi=vQe@{mZAr|p9^0IBeUO+ znu$MlQRwzuBxJdUl%;cn8I+kF)D=Cyx}0KyO-?7^&aj_f&C7Bqz!MAWvR$Nh+NlsDT48K5JIS~HjG=+GnG%HUJbmx zNIchhZ3~RB2l!JPMiCyMkNR>v&i{AbT`%eXlNwL>;^f&#mqTS+$S)zokPYK{oOaUF zwZhvUM=Q)Pp7V9o(GlIwDh`IIRSh?axiWMJ(YfZ3i z=}_EGoa1`j*(Z7~?NuKq9)E=SD-xXdwZV>@gCm1$!(sHbs<;@tA*vI{zL_SQ(+y1P zjQ{@IG!ka`k(wl-2SLNYO~G-+RekoAZFJMoR}o11Q=FzamRY+cUpfi*5nFbgi;4^h zW9E*i)Scr?W4Ym=F_nR5xVEUgE|sFer#>A>df9UEryW8T__3CU!&6>%RNR_X*dfj0 z9#|fDKgW#lf4Or>f6ef(m3p-=iAzaZ6eiG_`;9>ONzYX=GCGjNtt@ zUbhf6=p98cPcK34A)}?c*~AsnAqS%PFK8wRx~2}Q6$PSz5i)Y#*pC|)Z`5p2mVR56 zS$6lvb2vrxfDd^fnsNL!XulVQ^=PW6 z&>et2c?uQ-hc^Xhv9kceEzoYQ|3uPCtuGV*Q?tM$Gn`LF{a1H1rD)vU zSx%%Sz;QJ<092Bx-(>ce`G~#_jegN^8AxioDf71~$U*Zr)rl-BZB&-esFC)f_Dc(= z*SBHGOt^2DIx7wIdRtgE6ZSbbN`(Nly*8Eas^!VXXaS^LU*FyBYEV99TmKO?E}!s( zj2+4pUs@^;!_P4>@hP2s4ZXecZfH`&V&h2IIC z(JbHMJ$yIv(un7n|9pwm`7i~Ypb^=o79g5Wfn@#tF^Km<^!@%c zs9{F-Nm3RNzToBMBmBak`8u#*=xSppg&m*9d@)L-#6{*{}Q*E3{`6p z#76yxyn4KO34wt9mNWo#wbGr(9y6)IC_ylr@*h4>$!V!^Ro?*3)>XZv2 zlO~e*y8b;Znb)K8PH~gbSN%qy*tF2X=9C1V2(q(s^^M$M_0vh-p`@Jxk$1n`;6wmAWeMVf zOLoPCC*T4XlGXV8&uxQqSz|B4_NLXP(7`KhRDx`vFJ<%Uaj@f3wENOgLfpG%P8IIk zXy=hj@<>4BY&5^}CJMf|5VCrO0raM)@icC%; z-gBv37@%&j8Soj}_UBx5B1#Vz_YQ-@L+@6EbXF8NgFgGqTLHYwwlMEHG+3pW#$cmOpt zC#6kQaKAb8!>iCY)dEbT&t9yiiyu31k>X^k8_V>-H|L#L_sc*7p60#BE2N}{(fVc* z>m51c;bKj3f`qzbSG>h%tAwplHign^y`Eq1bXN=4o(Jsuo*&C=O!ar!Tq0gLPb4C)DV`Rnc3_XJO->wEQ(5ZD zvHjjDR>S)cV6WZSTi)|(4h6xZB;}x*JH)s)0oWqN*x018s`su&qo7=OGwb0kAIa+Ca zupPoxR($8Lo|K;vMkxDNa%+z6o_$yTU00fJo_^lz7fJkuzT1P%2{(3?AIF#Hju*zT z{CZ$Rz_%A&HQZ$np0=Rm$}aK~-0Z?)UC}!bap7=X*y$?HTSPy~`$Apqo@QBX6LmcXJvKO~T}MLCo_tkSz3S4&2Wz-hLmPaoq@ zCSTWKdOZ6Y#pMYUBJhhN?2U;_*D<|BC)JpDpaPd_drF?peFt7+VP>Uo{p%uDjex4b z%E`t~0o%SNqf8gDW7_?@Kh3WL`)!&={x=}-gjpqWZM$am<7jJ3ww^ZknT?-17z*5( z;!4Y=x?x685Wj69tz0-d=9D{3$@cJ8PoDzPnP_wm{?+Ku9Kx4CmHE|{ z`pjcx%j{Ya0aKU&aeoMq=yK9nA=Mu1^)jYn=y}Z`p^fG}r>&FO zy*i=rP|S#rpTP3ZeDDvqXbFFnf$s*H8gLaHyo*^NnqM&8kmVtRhJ2{AkBY|y1+|KB zp5M$*^iYz9P4)k876AXuQ2C#={!X2+yy=XTm0DsA#67^@0c-^+q*t9f`|XuFS---m z@1OXs?ltsU-|9p`sH$Dns3!h!@uUtGjtXBHtF~A2qyqSvo&vA{t@YUg#;5^F`hF;a zN}KyT(?2q4?Bsu_S81r;1JRqqiJ1%{twc)DP_Of&YbXiqovXe?w;1;AUbyXPv$5fp zITr=vF%X!!sr?yyttPW1O#xl{tdZeMLx@*J*^^{YiC7`tZgyO+hj!ctCz!0d{UHiZ z36uI0_^A(gzJ%!#M0#T>g=H2=xM|r3^`=UYJN~YxO|;M18%vnR_xZP_dQ(0yzKE)Cy!DSE{pO~7edFmvJI+qRXB+vw3w2lbMDOZu|drBnOc z23)1JFb2GbME*g>;widim1d-ES12wD^QYH}t}ln@@6n#>E4M&^ypqOW1N&K#-;3O+ z(@*vOGT4J2d6C%?G8(KYMdKIlc;uWP zn_gqfhc*OX{x9(Jm0#7U#P_ch{;e;X6`nZ0E&?VByksx1y#Utl@2{ko`1?n!HTA@v zhN!J@4s&8kHlkZO#RYO&iq97v%E6@Hc!Ev3JsZ5De&te_{}PBwi99UpBxrk~7}CiL z0=Os}g;IoSV<`Z-C({ANUXhsybLaaCy&B3@Ny;b`LbFi#)hh8^-?&9pdBk9lS3#^GCF5|>4yXhS}Obq?Ca0s#N!nNB?AABKR}PIYrI{7FiR$6Yxl zP&&{V)h6+j{~Y0z8`mm)5VJSZ1GZacd}hMX!&-blU%BM!>GuAhpzq_!_3wz3RxiPJmGTkVZehDWS-TQF9zGPdrOojfP9 z0=zf@mErX9(*iA63aEe7HG&%4BcU&D`i2?Sn#g-O;p6L06q}b4aOr4!^U%iD*Ycym z8goQ`_r=tViaC=2_HVru;gF5McEwn<1c|(6+c#ZFf==abwqaeEyPsP*#`T7tl)}Ir zs8ymt56HHzNfv2u_^_cJMA@%j@xB98kj4$cc+3lXV6J2&eJ{(WCD?xANOK3|DWNCB ziO2Fh+9=CMQE{PTQgVN5M!6URw!H?$;c8Z`xr_QRnv}dvNw716#=MUdz5~dg!O5$v zJYumf_s?ZdP|U#fU_agWChG(t`M=E;)BP{uee2y_8}0*|5Zp@K8ely8;3YAZey_F? z4PZ1hkAy(Ji;X-6fY`+ zV70#rkVt~ICp}|8bd1yIzJQx1%Rc(aoGM!EK`|uOkI@*eHC-+h>01ee+(xua9_E)4 z%+QW7IbA*Ffp9;-iP zbE32o@G6q#fJ+hQTrMb1nsDi$f(z-u$`0@Cj!}(`vI4tdexpYGU=Yz^BDUw<6Fu}hn#f{8j^^z7mJTOxDF6w3$qcrA?l2MLY&l~w4rFTRnFcQZ-*#LF`@g%CE)tcOLXy% zOds5x2VInO$$by+nG7vcZ|t;W%0w+EEP|$wl~L?3Oc0j|nWu zD-SGxvr8*RlPU8QaQfdCYri&UI7a6wg0(+N`Bm}p*eRIqSfz+=1m-6%K0POj7gNxz zr1W;19*RfXE7-@Tk{60q6<-60#hU5&iT77IUC5H=R=t5Ml>-pKsWXzW0U(Pe)Xut+ zT&L<@x+ocZrjr3}?QdXtO~KSR(BYesFO88X$Ql9xaL4E|S84tqc5=AHaA|^n^@-!V77nHiC%YC*po})WnA(i*^s93hyU9xvr;^+!5T3V8(w7#;QhfS(B))=_?{G&*wWMsr|3Fb=(RC2tf$sJXr^8oT$JIE z*5g1P83#8s+tG(<7P_==2Dx&3Z=2Sbe9eQngNLUmpiEYQ$Q&SMu!YX}M`2fwHiGaZ ziSYWKBdv3Ca{qh)zR?tJ3FF_zKirxPW`=bwVi^PDZ;oW3p?B(>a9QBZx}A~2@$i*bKaObhWQxJEh)K_cCIgoQx|&O+_-x-$E^)U`5xZVA`=gK?HtHm z6bm2YD$V;dr2dRDx@_~(5UZ&`wNv|?!TscE86=cn!1>>{G9s}5WcDH-0Xh`cT!ox8 zm-?5=Htt@FpGez{1l$NpeK))xzaq=WV=I*r=f6JAxC49ir!(ATk(Y3aQcK^I%^G za0)aWce>NVZD~d`|FrcT_ylH6ioT->lY$Y0!WWsaDbuY_epKr;uWO+_6b2*0cZ2A6=F96O$2;6+p*s7M$f9) zrIRzCL2fSbTdOP+PLH9F3di8v1^m!-kSmx<5b>E&GXE5lYfh9=?RT8dZ;qaI+e`8GEGq6*30lngN}SSmwrk$YN#d~2ya%5n6a^(y5>#?%?dN(%}F>9KGk zzct2emDtIBoiB0_%<1Y$i5ax`<%#TWtDBdF@CpD=KiD$mt{{pN;a)PFlZ9n9IU>}- z`bn<@ua^y5p}#r1_6e+n_Pyb^2)^ZTgHnV$?xL=gP42GA@80Wgb`4t;oyWc2x8D-H z{nq_k!_T!(AISaB^eh!zbxzjt%m3h4aK&Ev+etP{s|k%M|2rFGW`FhNFV-XuJo1g`yvvK)vlKd?x${_lok-#DO2#z0g>bTD!ts z*7-LZW>Tm8a9N!9Gj)f;r0;fE9uJP%S@(BaS-OrNvgTa-%|`4qTSfSyG%V~z3`}^I zI*%sI!&B%x@7$Y_{?NSREzk(FBaLjMP(<;96>SP@E~djiSDKPpUEimT#KV6D@T zBMGaDkgaCj*ME@Yx72CZn;d}mVav9xY{T5VSTZehtigqm{Q&LPOE)i{*jPd;JtO#< zlvSYEXLFY0@qMmmSr6U+63d&~;sLI3OtVMv>0i!skZJ^PWv-GQl@;XL#c8Z)gWM`* z)S`NA`l^%cQaL_kn7H+KH`f)N(3D|&et9n^|tS7fibjhv2fD4iz|uat7BEOu7=-DhszVZ7N2 zr|3~+I?=ogTHJGO)_>;c`*+BW(U@qvJp?-$%U%Aa%j8b-)1XGX@0J`80F3EBUXdyS zuVby?{v|kkKpc1%r#-CnL+F+;>^ZI1-}jwWzs$|!yt$oz_lZy&Yu^5Elj^Qn-*`oz zrpOq?rOs9XLYy!NIXk?=7rAoV-TQf7ohWA+A9%G{#Cdk>{^({Mhbk^kj9Y__O}h@s z$SdNvJ3g8ptjXkqO_&Y0;?eQUloL3MDW6IvNpdlM{~uKnov|#$yn~v9p7+?DcA~}d zf!&hv^WFU;vGhdWgpo<(Oz03@T-~dBDH5eCIr?nrR;&dGX;5-RSqN*!oMn zflE753!AX+q1STW?&*vHMd7Jb@NI!VXDn8v`{%a`PvzkN*HLl2MDtOTrh^4JY=l-F&8azxOjS zE8}OE{y%4zrSX`KOJTWx-rW`=ZZ+e^1^x;!URuX_;&nRa1*RrV2>(~NtjqJddR2Ri zhrEU*lCUy-cbrS2zc0V~n0~ZtX|KqmHIgE=93aBRZ~ehvEn4@1K$BroLSQfF;2RwBX>@ za^tSJMkBw03FWO5dc)he8_KxfSU=>T$(P;~9=ky7_pvwD?w!*1<(5mz@S?Fv;kYCK z_ekDJEv!MuFec-JYo2-3){M_{ZVbz%A)GgkZ8yuQ*U53d%g~HA`;$dDV^y2qP>5g_ z#%m4Qy|plgprBt&P zX{0YV2kc|N`}K=Xf{c}6x?rXF;WD^fNKsePv{HG@Q?rY2pvO#aiZ(;0S5D1U-Vmgd zi)URCaXWMOWvI+wQ*6BRE$VB#KJ^at-){4c3VrDQ%#R=Egx_!TiIbyona%Ylq7}?t z=ToJr(-$rJ=JDeju7PwB$(p+g zCfiaCEiQi}%x1t{Vk@U~OxQ!>%L7|o9VOhcTOVh7)#~C&9YaEDS?1+BLg#+G_RL`Y z>zgG~kgzAXYoX>^))E(H8ZJd62|bGi;{}&p4V(Qb|J~xN%xae^YP88pCY!?J@z}Iw zR+0*HC(VxwL|=SlBWLkI{OMN>KMFyQx&v>LoR?+dqwV%3$FoMDe(Nnw zpW`zTQ*Sl#EBl}LFy&9|yqx&B!=9$u*m<$koS@1tU0BE6a5k;!yQAg&^$PNBq14U) zPJ6OsXtZuoeV;|2yCUVp74PfEUcX(2mL`2bhlb=%CGK?_vSdi+$y9#(_yy83RG65S zkO7wgOLp~f>okRgr4hcd(X+IT~vd*md5{ z2PzEUb^CXO#ppfEU^B+E-9W}p#=fa;ymZ$0t%buNisqsqBp8ujkDpk{T9>w(pk`DHS6 z-%}%qFiNvA@mOroSH%7LW*g?~N2Pz>Cxac;vRk@Xd{;RKr}{^SimJRBZqFO6hN=2D zjP%^xELO7C`Z$3~GZtEgkIJJGt?u5{p2?znamT4;D1O%5kQIGltFyi=A#^gF7MKv| zzC4QF_i$KmL$##^ETg3gRImHZDZMCkl8{MLd*SWeGJcbWR%y1nf2JN!X1@2B(Zgnp zQIw2Pl92R3(>j>tiUXg0E`M0!p&fk2c)3Lw4H%PO5sdv`pBo}4@hrt`w z`=HBX$1XFUe=0HszJ2riius~F#5jvw=-A+hW#s<+VRu1b8=2Xwb!R*FI~8wm(9cW% z-KoY+oe+0H9&_VCg@@>?dvycvq6>k&s3}oJ;*s<_YJZ_o?4-=_SM>|B`&2gZv}bAv!9{a zh?6t**~;Pt*QSeV2iVyzMIvNyaz?%BoXn4JQN1^zh2q!c)pYb?w}Re}RR*sM_IVF5 z`zKCdvc~)@D|f@hGYHu?s?W;x#4|gUuwrG33i`QwY@(Ub>s4s-`6@l9_)kZaa!60S zagqMxw0es%LD??{?e+4>Q3(EUA6*$;QVv~( zaHX`>YS_W!b?c33jQ3Qk4l$KR5Y@y}oZ66Ib(S;y89vMgS~85P$}udwpemOZtT^mA zI;6%-Lc8h3;wbDVy|KU}>!|Q3l}0D_d_KMaj(Wz?{pSn97&~cs05H5PY+?H%s1&{M z0IYe4Y=(O#y#pm7XbV7N{LqH&kuFxIrhhIyCGs0Bu{fKR2qE^wH~UH8*9~XLjqiY! zpe->`7!hE$yWnt_{CD3uAm3x2uMqNCe65ZuT{GAyc5iXO=MPUuvnYKSsle>AuKo=f0ayia-_K+x8g5?qJYXcOAK~>PUdk7e}k!g6i|HLETu*Ihs zA&OB;GAzZDj0h;T*?8PuLh`Oj%iw7}F)f}M#^q1XM~svHeVx`SKtDo?^z{fQPX1g# zu=4>L&>=HEwF~ z_TM>u<#@WIyEFe4tmQMwUinaPV%BWEAtlp9M^K?+Jf>G$?zou;$Aqi&$v12jmm^x+ z^4d9Gcn>^#9slCJX)}+9|FGUh9}A0X0kto58AeOOr+ErhxobkNP5VAEzoX$#gjQp? zrY-I|tOlz=rfhb4>TxLl!!o2X@>5~(2PZ=rb(^;3DlCg}4^v0_LhG+Z*0ggq_r9{z zZl1{2wU;XR$vXSfHxTB13yxO88=2~sL{cM7EJ^Puhg*M5jhX4dtf%&0sK+0EImN>) zqnYq7QaRV>^3^EirF9^rqu@BP7E*74!l-}^X9zt_sP{MPaR|HiTJua@oN2kJ7Q*5 ztBp)8CF$L8Lb zbd_h!72kw!zNOt*;)|VbjjmsfF3GYQ_e=lDz=k_!LM;ks2AiAXq2o@OeUEnvDt!gJu-a0~&+ z{6te0ccYc`C9T+sdxJ|0m5a?hS-3ttaBWY`vgnwmjtNkRk+{umF9}IK{8s7N-oIEM zqQB;E{r8)mxqT0kXPO>`ummpAQ^dDuvoReq2D|%ackQ$_LoIGr}K zgb+S=VOiRKuZIeud+XnwAK~Od;nAMElLv2pCS%EFB2}+JxJG$gTE)$G@{*^HEd^5v zL&7LM0QM@q+Sm73v53BA3B1_IbMX`&1E&m4BO3VdJmpviX>=2QnVRsusmN(z*?i^c zNO72Svis)fCz1-c{wQOLx#2Zq1Rk<3>Sb+0uBhrL>kREP8RAtvq#lcqU_?K+is@adlLdk(jP!t7i- zRoq^Nu!kj8cgxo`61aj<6xQ9GfPm2tc2;03jLth?`9y5KHkRhAccksS(tj3MAa7gJ z`Vle`lXmuyOw0SZqt`Zt8`rW#p)nbQY5l=J_p8Ljh0tMZxR4e16h-2UzmLL*^ksvA zG=9fW$5?Qv#h|G*sHa7bd6Aaw zA2fp6W`0IS9MM4p1uKN25~jFNb#9mT_q2bTuEM{m}h-Iht9|L}g!;Z<*OI~6vllBmj@y@2@YAT5Uc0(H zj|2}Ho-BixDEV*|F&1!`y>>D+UT?R>u~HsCCJuwb-@;ed+*hXUc`*Jk3cX^sBB(A~ zGaag-WR?gW1V%A`$7ru354BC$+v(JTD}_iOpFR61spgk=*b^<46e|0IT|SLwJX{GQ zkj0bJqn_*{J#4d(gn9FF&oOK0d;a6}X{xIzeb(4WXNjWeZ>A93<`T3s`xkm2QY?1P zb$73VXQM(E9HGY8wy`b&`GJpu0zi{`aYLQfYV<;EswNV!B!lTl+=Mn z3at!0s4xq`&n25Cd|D4U)|Ll2*4oQsD+9Q7CWCZjaXyVa(1BXdW{o7bFCWWR<>i4# zTCWqL7?`JRU;JwmE)FJRwc%rvec^K(%VdIBrmDJS0eggb%oO54vZ&kBQE7ih27kZH zWoB_cy*mWLh)^xG-U~dD3LcYBPSO+K`a%`dsU~cBDixe3$9HxxNd&}&Li5Mb4<7N8 z{7M%pHIVw3&wQ~RV(WuPjkVM^{yy$dtNg{n4tAvkvpYlP1RI>0M+il_|NmwIqEO|^ zMmbD}w4O&IQXkBMsrS<&&m{STe9Fil-#t<(f~t2Q9d7b%(QEO@D) zJB^VywxwMa6tI)F6(hJWESVn)LXdM8ssuXDvh_idPrN5C>E9gt+Odvf39JOQiN{0qA{*sx)(Iw1wP541#P@LFFBhvNh_ZPc1C(jg zi~2*o+`Yfzo!ut&m@stVzDD5RAsT)+4+zVhfhfJjciz@q`wBlgLQc2beAtjW;pj^( zv-^Wwi{F*RpVQZZ1cO}--J2|xix4#$jV7j7eoa@Nwl!L8a`bLIgH?nHBlb|^cR63L zCCqn=WX+nwgWe=L6KY$K=od0tvm1`g|h4JfRZDn_Z3zCxc#xhE*-Az4=W1LV!OX z_o$wY-QZ>2eN*4S0u@;h>p`r{-UYj=wP2ul3aR5GB5J1Pj`JBy&=?a!Xr*IJ^T;ssT%oEG!L^_oco?d}eu`qthP~m-(%xl4xI|sA z!39?_Ih0M*D0{EFn2@%q=5(2ju6O>BHYjP#c3$3(6e_x30=cvA8z z??ha6bb#DQDF^j=4PwLhn$;*KJ2Srqazp+z)b?L{)|OqKYTS3jBluU?wYHT5vy_9` z3sq=GWI{OE!3XtSa!y@^!KlKZJB#)!DP5bF9Uy@cdscr)iR3Ilqk5nv;ch)6c;422 zwWgX9MEz4n){z3(pYfOr^JC4Ev88LvCcK+W=Gk<+?I1#%uL)tHJsQ*vYn`;v&`T7f zbeQo}=~;?gApFzt_b&e#uoxA^RlH}!cT5eN|2=HMzHV8NQML6AWZn#7&s1F`80asADy(1| z)^8ISkdu}pc+wwLwuZc|x0}qnCc10Fj3z=ZZcb@(uiO=n$ZW)(zTnlJVjr12GZY+I z6`@|CsqgU1{VRSth>*g!Jma4BqH4!6r7K3iHY!ClNI2i@!UO%g*=b5&mTLl2VHqC1 z6I%KWQZd8RQ!z9GmZg zs5<$P?%H#t46>~37mhYcH%`5P$O25@d?${xAe& zVoG9O);L-Iw0h7pdBzc@E6Ue-V|a6aYbZ-csFiy|1g zf-)P8EjzrOe!JPpz7PQU;YPpYgBJA#>D)#i1YJ|73OmTHZ%8sW%Ip#?^?Bi5qqYfXYpUvOec|?Q^u*Tp<0*4MSss;9lFLe zm^Wyq@4l^S!YFGrI!TSxUrmH#djIYX?$d?&TH{+;FINw!to#czix_ZMr{7e~Xm)Fg zw}OV`+kjlPq$a_!1f3q4>Y{vChlF7LeO(?%3Pq9RDc!Iz6mXk*CPj6?Z7#qWk*csP zN??+e*+NklEwdc2;5SZpRv-}WahEUIh zGIk@8yUdhqfi7+?MLfEFs$)wHUDi1dQ(Jp%D>0c#1MwBniI<7 zKKn=No`C>J$X`nBXD|Gt)In)(3fU+QR%(qqOl~uVQKUDlmLp_Nf#O{o4hhP>xOb~~ zNlIY?M?J^nOZ4xvM|vMU3r==SAV!)npAijo@4)f4ii*)O+zTIpx)GLs{2BEa+wIWy zv)5n$;IPgTQ%4+bAD1cNtes=bDStA1SF@0tqidm=ygq9~Z@egCikq$cXh@ZcD6$?1 zLL=JcZ^DA$S%K3-g{d>CFgYqAHAO|FSadr@2OVu_ckno1{r%fB#e-nPM6$OP)6g41 z=a;Wy0eIgC9`4-=Dn=W=_asc>NVymP7RYbN_f5CG$Wq9j!Izj$hgJq2wLnVKZ*v*7TP@7oJ?n!z!z>2nbm zzv2NIrR>GyhHeX|L}q4K+eS%iojPkTd#oqj_ra48t%s(GkK(DZC-hYaHZBUI+Rff<`>Oos14Yrx z^*FVcP>vqKvT&}cG8Er|lNh;8vFAn!Vx{BX6@DT9W34o%2=iq!ms2^>D(_sx)~_4{ zwq(4ht0zi6X-Ui{Br`bcHu@A3jq+Q-Z;u_Jzc>=NR^-;OhYZ5E|ExS-_YZ78TpN;} z0p*o=f?G{0=xF%y!}{RsotM_$oGw3&OZ`E0#ga6Gv18^4yOm^`)|Isf5Hp)P)#g#jRhQ*XO!(zO z*v{O3m3>4G-3sn*A)`BVndwi%-B76XV{;m$fr6Yl)3|e)*6skZQ&v4MJIBPhkyqP% zdk04gRp7>+PjYLL5N61tewd=)%fB63)7ea=_iyVz-vy{<%0%xo4st!#8Zmvry^AaT zPvs}+)R`KRsVC#Tm~MMOrKe`9Df4^6p=o+cIg6#8=ig==6n(B2WDqPFsIJ) z^iW@rD=P6UGHz?Hly*0ji^?=QmFR>M;`pe)s#s_E}Wwg<1a2 zE&%~?7AJ4R%CJ1U#*W$~e7T@X3hmD*35}Qb?j1CnOMfcl>Np-tTS!;soFAUqXqsCka#S;`|dC z+O51t`LyXOH02mfXq5?4P>1b%f>sLP{_;HClOy#i$kb^uk7V$5elFdsZj=yO#6xlI zf{b(YfcYKM`_*IIWh@^ZlIcTxLEj~<+u>w65U%nO>xGGGuUt^-qJ%Co1oDcUBbA@c z-t8AFLG!3ucDTM~sls6$xQ+b+L3LajH;O7=tXw`z^(2P_+7zXvge{D1kTiU%je8l;xHnLUBG-KK9=? zO!@J;KKSsLk!Bz zZ+#jy&3uDRdoJUF;f}cAfANCymYeC-nU5eRvV$ey(X3xdY-9nI(&YRBl(7rAoLEmD z<~p&-!!(;9p{_vI&cX>nKje#qjv7oeNj!*wgPpV(al>4AR@k8Q=5s!ftvZTfe|RU= zJs-?#>Os2vOV>$oEL<^CBdWY7Uax>;`R7WpmiQ4G?IyurcCo(vuiD(F4U0pL4PR<^ zqIW*u_5DUB?hsi1`k>QSHQ~eNr9JZRU_8G5@=o}Mg_xTug$4F8z-ep-@sy!c0HylV z5ef}Rx}SlwO`4zohEEgX+K=;~gOw2T)DwppJ<9~R(2#%)p4B(Ymv26M-yV@@)5Y+T zQ1Z9;@W)DGM%=|eJU5$bGPb-I2PG~K5_ZDpLJp|@^CW7>2UgLUPo|%P#M|F$dA*Z` z6>|}Ho4H-$)zsOI4cEcelu9g-S6FwqZ#@{;Q8)GxjY8=_1+f}+fpAS5rJF^Pg;()% znD}su{`h-n=P~-MB>SUoy+am-eUsX3>Qjd3zPr@w&<+Ma<%Nf`FKmFHn6kUXORyB;rC@GAnd0+v)7u1Jz{y`}dAsha- zKDsjy4f{5@Mk{f96`1U7f zMvCDR&k_;81ZC4q2mj)hd~Cw8t{OR0Z)C|i%H*e?%wDK-lWA)#S5coiBe zUuvI(|Ed`WErX%RcKI5X{Kvpd?+~Ly3iPHUa*6ieWF4U}H_K9H!o(?yp~~YFO=Fsw z&poS4yuWM0ss5vACx>)I;hpaT(tox!tUB&&-;=19+CN~HFDcz3F$s^V3OuVBjE}HC z7rgWQd zLIDj^qPh9=Z#y$PF((*(Zu@+LUDj~o&i6oB_`B&$&#H>w8i>z;peFEa#LzJi=&>JT zY8LfoTd$5UpXwCm`a7U3_`RO$A9*Ii<=)um3X7*{WZN_vwB0;RTs#R=4W=nq1}7sa zAK>?b#YRJzGx-K4&xny$or+PH6pqGHtVfgnYiuhf2^|j|z>BG+8&so5H1LTQX@ck6 zAcpx_SzKjq{pKuN#l-aG-%Y^Sgy0l?bF&Y^T+8+m-3ypx;BZID@l^9)UmH<)i01-a zmcHF;6=H$gyVN)1X3)N`clUUKJDCNCWh>5sne0BV|F((UDdML ztg2n-t_}_e503lIkPb!IOoLq%x2hr&b~M#d0B)f4?{9a1E-uplHz>CGec_Ffi z+ySLoA0icbm&{=fp~!%h`-C0+=c{w#Mp3U9UwA^V@vVOJQjvwOwmwsDp)s4MX%aGk zfRjzIr9rYdUos)l)fG6U=v~z*r!w^YV2!43Xv3+9-KQ<`_T6Jk7NJ?99Sm?JAEn@( zs6DthjJU_T1X4ZimPs>6SC_DN(1v~93aVwTXCt~V2zR?SyHFpUm*m=8gW+#XlwkP7 z%4uhL2UHY9(gWa73s|GrU=NkU3uWl_a10NVPw@0_b->R?%xk>5$G_M%+v0q`s*2OK zC+dNoF@?CurPpX@pO2b3Y{u!&SVycf@SaTmCwy?uicI2Nk=#L|9jse=4Pw&?S4f3B zJU4zDiTUD&rd z^C+`<{W>S`dx1ZkvhVHSX4?&hrh7)+)`th|MqZ&oABB}?iIET_cR5~+L|C&`2*%}| ze_E(^*WV=w(FA%N2!=jbDXl`F0!^-??#b0!tx9K zmpX>0=AYU|^ha~j-FJ@*pD&Mbxd!S53sK%oJEp(-eo6I7qlQFHrdh)1w9!yRP@Q>Z ztSh^KZtj`h*8UC<3_OgLK#P@r;`GoD3$%nM#Wakc_G|w-@5P(v%lyI*Ua_Tco{>bm z3qOo5e>*yl|F*B3w<>z`h6$9L&cwZ%Vi6+mgh{xP=i>Pmm%ogL*OnScGE^6+!g}Yn zm|4MVEowt6dH?LVP4B0sVrB*oL54dh{qCRQS37tAmax^}o<)D$f>=RKnF%vKt(vS| z?_p0}@GhDinZLwRB%R(y|6AYs=$RYBo#!|ari_0C8pX2W9U~O-SqZz+i(&1Fbg5I7 zS0>09WG2CL=UcYB0k+pXoqPqC3A5JdBdKL`^e85lVjQGtl@s$w^EZ&H_x67XW*Pu-<^^fVbWr&W4RC(rku*Erq~W?=;m3s zR}#>OS~E2&n3TY9s;QAmFE#A^{xlss0QPKhh&gK*SL95vA97j_3-^b|`ow*$%9~!z zn-KWZnT{}j2sIJ9?nwxG^WqPbUl{!He8&F_IKLzRdHRZspE@zrlt~VioEQV z>UEPQ_wL`V27L&z43fPOSGdl;3{K(6`2_ULXb2}0+jY+_51oM*Og6ulr+DvPT{7sH z2!l3Jde~C?_#C}WVpU1|7|%9C=^W?(Y45GSqVS&oaXKXw5oweXP(narNdrW>kw!{D zLb_Wp2wA$jyBih}5QGJ#bLpiQS!&7e<@q|F|KaE0;0dWS}DqwM*|5<9{Z zkrbtmYz^htwi4hUewv*qKHRptYJC-+%7ZX>#HAUl@RDneD+{^)iwzL@D=WQP%2N@S zVw$_DbgowR(LTtw5}mYt@~rbLMfaaVr~}7hbcb8R$#cJ_ZAE3uiyx^3Z@2=VAYM&> zWFmyFJ$NO^*GocTZ7zH-%Y~WEbH~>@eTTZZI)3F;llE1rXjJ;}*wbi1Kb00c57WC~ zP^_oPdC#_S`|@sExujXjuHB+_T}WQRw`owT{5kU#9Tp+Mp^SY z4^OV33REAgzuqnbGgLTV4y$%x622xm{ZN{E+GwLDWW#`#D0J>&wHNp}&SpxHA16Ls z-0Q~}UX8X3e8B^NLInUQq-_f{)c4Pz^4d2mW8zg@)JrDS;A(VKJHc|O21V-2sB{l| zHMB%HhfGabj*C>4{b<<4rDHcNE?@nVdpI6C*t8hkQXei0d(na~LU0&j^R~f(Vv(s6 zGp5aZd9Sq8Zv_z}>L%4BMW-aJHQelmL)~tferKvFYt-q%mISd5vNXutPTG57GVT6b z!s|7yMFL3#xaXQ+8EcWq?(@NsPZg8Jny)z3U0z^}GcT`g0&!Af8#%r3tvj5H!s&k_m3X5?zi`Zt;pV z*dF4HqhDCv?#4IhAlpgrxEYUOo~a`{aic0OH>N8u?prcmB!&cXYD?H&#m{W{GCI9k z`zrrVrT3nrQc{=+zK9nHyaTOywUH()gVTji3~1<>N&gPp!iW>;H?v{VOC~ z`0&Zg^`6>Q>*l=F?09d*<@9L3#f1ckzUN2>Hpx+jRhrFPqs9KBoOgAz0G?W4pF9LZ z%yRzK4a1xT44c}T0c=wF(uoc@y(3!;VOE_SB zqv_BuhWefOBD6PnZM;%9uLylXA=+`AYpr|M57}N6^uSwSo50iN4e)3i_nHipI!>C~ zXq!{sD>+;IgU>|E0X0y7y}R!n`L*Hv@3ouZCk0u6=%V*C;0Ofz9f0Q|wEw8+T9Q}| zd0m+B#yh1lY zA^Xd?)eG@Y7K9w}G?DH0W63Yz|zy-8}E}| zg;R=VN;2yz%!!F4h$O%tFB2GYv6c2dMs++XUy$wF#{cxi$EuElQxlE!S*#nNU^;?y z2ec){{qj)e0r&TyT;{tC2qLeMT^!j*Q9YqdzWb`BL|Q^fTl2hU42UMR_k4Q1-MQEH0-KddpU*uxuhk z+8sh=W3tCYn*b6TOeqT#x5t#=ZArx!^B{S_8j?CrT>x&Wz$O=2`W%t=Bi8MpsMOF~ z#7V&6=wmsmUG96Swo=txY$f+-a1lB$RXjjpcLvFHXkgVC0>6(Vu{+EShTW^u4feXt z&jteidSJtyAQ=z0E5)j<2lsmsv!9fX~H0p|_ej4xh^hh#V&2O8hp z9NG?j5xsuP^7wMt&FVhX!)8C5TN+#!w98vAa#+|{!F4rQP&WkQ_x%2USELAgXJ-^-;*!3e*bknZLH~N`ZVoCwB(k}2tcy3+F#wlp zKI&WziQNli+K~QNX36q(Qo`SWNcgE&AkfEatYh4SSB!VvI+Q8hGF$=N6&(NE1|tH305urQ;spR;0l0?YKp4z8I;?*iajmAQ(!zg7TP(1r2G*c%3Xt0>3PrV{kkuKnO_ zlj|`=f0`XTGIptbEuGt8>*5Zhi#A=*_W{ zg3lX;D*F8>6sOoXmD35@7FDL+D*4)pYyA5c*VrDDu5Po1ozWU}6V?SQS;x(RHxesk z!&~u!|LGu&5=+qgPX_UOtX1TX?9_AEo27q+|TXdX+4+*w)c9fHR=EyV`-x7cu{ zX16#po@L&4SuO>W@)gQfb&!oXB4=(~#9RQZHrD4;g{`;M$3^xdW9hCI(m**GCAnPb z7r0{15#dK3Ku{4K0vzMB8^_25ViG<4^&J+kso*Gb*eF06apLt?R+O9~d$Xh{fv`#m znqldL^oT4JYXZ!JHY8RieR7***J_En&TiE{`h##qZq4(&6@#fu=r4}cDj4Xs|6)?^ zcjeXDEJSdC!iKw;yvK)%mzb26q7lJf8USl|wcWZX3VcisD6Ey2H;L#p(TZLCttHF= zjCU{AdDh>9td0d}j>))AKZEwDVv_c#j2gkJ+7?HJV)(XlNOqq#nbkK%kVg9LQCq$D z@%+q7cd~aLBKz75qy|H$lyC;p$ln*C83T2n){sO+g`3M3mm2=9YIg4LhGoDE)BmLo z#A}zEK1pi#mX*cb_^B_PU2(C2$NjI)qfa~i1g4yRQl}6hel5v=2;_%P4W0AJfiV3K zEzkGi6Fa+@nyohCi)Qb&l_=DRj+JPY`Jh&RDSY@4rKE9yDqtqoLYf?{#RNE~yO#_L znANIlBaPtky11>|3@izm#CAJXqdq@PJP6@m<|-HFJCY;AiW`+GS@Hyd3_ZVflXbnd zj^VbM$2t3aIg5k7*#gm?k?)jYv&HE806P)~*JcNYHZlsQ;syV>nj}(3V_nPdTd8=Z z;rEm;Md-k{q<4Lf{-J+g>bpbshau)Er0T@0qpInd8tn)F9wI)mhkXWGkPqjp(0g_+ z_ynETeW<50_%?q0`***Sw145#?VE`S;;5jT?B+v`*IKT9AL31!n(j<7WyxaDOPnA&|rh{SMZkYC#~AsmmIaI_WMJr}>kB)vr-G zpwGTTn<@wNkW2!&*uAZS^fQ zWdaOAb?0Px(bN!d`X`?8bp82KC9XX7Y(0ap`k%Ms8a*O}-9iFnogFrwwkcU^QBlgC zPp><;4BlUm6_}N}^2|1RT4d=Rjr|)s9>jQFT~r;GMw@&VsC+3jPkw=Rfcd82c#U@s zC8%8TR^@AT-i~u|{Be~gyqHatWW^QsQD=Ohk80ZJ2L&OHQI3aQ+o(`Q?m@G=$}y=< z_v;o)b7Aarg^{zAIpi$s^-du&HANYhgV9$y^+|it-5mqP_|BxyM?3UN8(D{#_x}D3 z!CtQ(rcs5u0t|+%+D+UQo$Y`-jD3&lpKwFK%XTLsp%k36+n_oeYulVXM4$Kp8=CJ^ z#*%k8GRXJvzE^oKNhCqh{zk3Wi^3-ZrAmo`SCGY@CGpYMi;a0N&63v5xFh|{Hqsy0 zm;G~7{>Gg!gyDJ+RY!LI_IjG`{BCFV@%d0bcH=!yc3xxeT9Z|Bd_+#Qk#}x&*kYgD zksswkk}Zy$@=kE@AM2kHj9D)RSqzs@{_p4QRz@v8e_{E_ylKTpBn7Y|Z@>Ovdnwho zw};h6?V8{tO9>5;B$sIa_J!8827(hkq%*88!S?A#OoAP8yw zdhS%8@gWCRYnkmh6^f&b-|uX@3^(JKm$N>sm3+)|b0k$un*qRpHDFf=-z_9OJZgSvro&&>B+s#E~*(XoGn)uIe!1*C6ApBXT0nqcO}|0Q>UP6R6e6Jr5*pT@p23 zQ2ASemd4twYVf5h{3}}P^}#o@u^3>JPcC@-zTlJ-n|6P06i3ZHS~fE&PO9d$#*xID z!|}#Sw$H;P1 zi@2ls)tDx7zMAmxnOld_(2R6s$pu?{9ob&MiOwR_tgl zq@9gfQOPmP8&gk!2lJ2c=>3>idDELT+s$Dbq8MS9GEzNM{%V-D0=%NIl<^|~X4_gY zIC4e>vF?S2Y zXG<10srJA6`Euxq6A7=R*$u9w(&sV-wXz<=k|%cK!(?u%z&LfiO*}dWsyOI$HTR_o zaZ93LN|PHZRP?29x%)eyyamC-g$&8kVu3L~q9C5>3eN z&Gd2Cbn$G8%a5>(o_=w##>4SsJ{*G8=f$i->~=*JsqyY_(EuV3EiyHR`Lu1^x!!Z? z#ZI&teRFpp1Y|H_XH=uU<%(1A6Fnlfq*>oQH#J7R~djL4FP{J6@h(hGrfK7@1ln6#34uQ?=fEA+R7!kjW7~+Gxj@p z)mJt??vPPu?`9yz_efs*vu6Dq1_nqx3n=22!`Hu&r?yYc85phMhajtl%nK zK}XxbB^hoQOL&*coL2lqbIp741^;>dE0#=vqG95P@kB-|oExgus-qkb!9$H--O!x= zyAWIoz^1+ip<&a?Bc?f$2&3!X`u>)>d=@t08>vkz2F~V|;dEWOc!tW0`c$m8+XK82 zC1oVRlxc&Ps`JF2j7`aM0v%oVg6ag_{N(^%&g1>vkqJ*Bm>yfIIJ5uH!N2_-r_QDJff566h~Bd=*?!EJpua8BJALmJWPU1gW;3Iaz1nP0dCW z9kmvtjZ6GInW8rLx)xhN{swX3#ZB}a2;UCT97XSR^JGg^TKXYyqRv)+9D5) znm#4Ar#jvi(@UkmP6WUyZc84LW?WuT2ECm;_=~0-Gw%$KdOJ%`2AAQP4EVnk_sT~d zBE?piJu!=mJy&75a_SHr-&;bP<@ILB)|8by=@$9u7^ZNO zOTt^ny(G5bxbk%Ou{lg5TQCVYE6I;CI2Usg@AnMUQC1n@cHUVjU@L5_c z-#Z{DUfEG{O7^4>KRdmu&%f|K%<}#P^%Q(&TN+2?b6TvSWtv-77-UFBqrY*wpkG^< zxxkl&VjuUEDA>?uv>GjsRat^b<`;igLqQOLLxL48vmj+PbHs2#qep&$>sbx>Z(;A7 z@h*i!Zl{^-hZ^XeVFDnTsXfc1YBY!GW3AUkFHtLw2*y%fIZrOQi-TzWvy8^QNaDZk z#+1u}z|V}3j7=t#k-5=()|fp-2)&c`*oyZ}r07r}3Yi3@>=W!s!20Xq#?j#K>lS++ z&ILjL*!Ul}9hA$Zl%NG|rF^;BIa^&GSn2KpYa6ZddR?kW&-tVgMg^k+ogDMGr}};} zn40c{3%mH;tK#`?CMXz$;vWhyzh5sSw$HUMu)h>`Vs-VmBp_7Pn=D=Q{{4G?KX<1O zyw~-kY?M3h`|`G%1U<|Y^Aw<+`cuq;AFy8LWB&XjgWv5?_s9sKs5)$*;m9Pga98$4 za4&q8;*v_V7O-5?QXc=oQ2!iiH3r5?Am_4wn{lwOBCB9}3PUT*ES0VjBmrc93jegg z2J)#7j?z~5MJ3wO693Br=dT#pr92z<`{+yWL|y^E`@)+-{(I67ztAR_3|6CGZ6i`7 z=JF~36KG>SDkg{R^|Yk}4|6pV2DTF5CMc4Jj4AbRoJA*gVsV~!=CqVmi(k+mEQ#G9cxgtk%*!i(IW;< zw+5XXoD5dOo-&rY&BltBpq1}pWdaTvb8)wi7;m(oHU=xsqx@;@8qSO!Tui?y z6KB?XtEoNdhNFP)g#AhpR+ZiyE!BEq<1GB7UTd1IN*qBZD$7dM#aG~kJ7V-8TV;Ky zQy)AR*>~2+F=?Y0_UF85lYswsDGP-ZRsrFWEM@5Xyr+Cb_Mv9ZxDyAe<@s=t%Q@`r zkTwZcWYwiF&0`|2=j$E05Q{y?nZ}}`Y2B8&m1yakj44oOE*=4Cd;w>VMW4kDKuKdb zHQ&Hs)pl&nmhTK%$m?g`jBYC#qJw`IUIMi4@ELq6Sujw#4(MPKj9rM}(1A?`G=N|wFxUf$S6Dj_D@bjZW1^i@NU38BqQV9?LX88t~AnbT+lDm1#D?IRuki{v) z2({ucd%G#OCp@X!W5=+44>egyu@%BX1i#6q+5Zv|euCYu%fICQI8Yq%QvNaZGCCry zJ4$mPY1IE<# zzM|V@tP6#5;ApI*zDclciZ9$OZ;L_cjN4SOs1yzSemcMoam+2`I;G{j;r^L3sV=hq zPC1I!h;zc$m-x2~mv-N zY_2R30o1V_Jtt_d*$pC=c?-BfW4%hg&|4`TJVIx&9xWj%7_bU~&B7J}b=Dw5;~0X) zloa7%L;c$IxUQT3c7PhLyJwZT_!Dz_EOe1j70KrLU&uJAX~hr%Xw!u5IyS7!G$_ zCYX@)&@V>c4^_eV5B$Nbh~!E3fK^gG?3tJWYMb-0@Gs{YZeW^#Q4QJ`ekrWuOUR%L z2y4B#pU+AlqWFUUby6igEqltHYinO@nmWuK*-x#Dmx zspDAq`9x0%anCICu_|R~=);@SdT=C+LJ$~!js^`}I>_A}{K4U0j2E&1kCUr?c{|i| zR5-vw1q=(Iz&61u3}db@UAW@;L2M}e!|_#i+)7sIjTOSqVSgKU1I z_rT`$aDvPgjvKy2{ul-o7*5UT!iH)xpupj6R4phRdDM(A>UNnb@_|I7fraSmCh-DI zI!ie*A&BbHAwGKE+=Fo2sL(iBz%l&@7{yN89AY_S{=m$2NZMw&0>e3kk5(+BZEHMg zpmbwOB1qFZ|5Ll`kOScZBUKJ{%l0~>@_>P*^(+KXW{LX284=0yiX#eKnjRiiH@AiB zea4f(g>C|L#{s^GjjF`t`IJE;HdCK|%S1@g$*voasU^R8XMEX_7dHWu^OoI00O2D% z+mvJWryKibg7@_RyH0Z>=DI)?m5GUU7Nj}WV|cS9NHuZ`C3yp59Ee+3AdA-GQ*K}c>dwdl+@+iCcx{O>XSEXF_b?BJ6m zY1oRRAb0815Dw!lKIMfY?17E-Iit9drW-1r(Nsu+ad`_2}da>J~Z!}y>mtu`ukWM|vW8oA``$DlDY z;JQ%h*7;T%^~ivKjUf7m;4OR?#F*)4%&*wkB%ir+*0RTPt zQ?$Ka(GYNm_g%~C7EJg|E7N3oO2t1J7%rmAiz$?UC!4jsz-fg;V|t$k%jYHg{`(|n ziVbr@bj&em_Frvqevv#c(p~p&qk32|bYW~?q@ExU7TmQXUf?aH(4?KZ@~CoRM(-;~L)Qrn{Y z`}w(Sd63$Q|2aWOh9zmid*Ol;spABDm}h2h@7QaEAT3ql_nC8ocW0=Kj>W2Rotn&?A0*IqMq2a7zTA>v07*YwMAUt39LSn>E9qnM~6ng~>Z0FC$)gv{p*&S+ct=usVvk zEzG!*Z>-P{%CBY@z-e%;$1D6Cay6Eo3j!901y%;B*p$IV?4Mx6iyviZ(n3}avnMk- z?!#;fx{PEB>L)MT^1q0i;2%EWNjdl?|4`SP+2?n*4DraH-;JLG{g=-$RE67dAenS= zV<$9{0GbDzpjRTRbo3vaI+B&b{wE#x{v04v%8gIvHDSw+`FfN!{R_tUX%N7_$0iTWsO=T6J zzAOLc6LH1rF|*Iz{b!*j;X>NTRDXXWL*wcX@UK(&c}yUqJO2l!m6iGCJ45q4cy2^6d{nbOr%$4B%-a_J+{V7NUEBvrn5!~_0v4iw{~0h`Kv{zz|6aHLH%J74 zIpsDO)(VzXS#1YU>9u*SEMGU%JZ7UeIu_67abgJjD4~PZ>8JHDkzRHTya2`OMcH&y z+ErW=BM0Q!Vdcx9+;iZw0UdZsrFzehF7?6CMB{)K2gsu9BFP8E;0s#P4zz7Sw6P5_miB z5tVmc>(a$huKS#$i$;q^rV2(q%foGDp%aC_jX7Phj{EfAF5xXwrtoG#TX;e9B#@qn zOHjadD=-9ENR9 zt6vtQCmzHHN>zzV=YqLAM+++Aqkx_5LD7K-NGsLaY&0yZ1`})Hna09)`^JB!#KdS< zaq7H!(rII&N#*zm3yaQE;iaq=Nio{Y;92K2S??Xw+iD+VHrKzNtgej@xK3}MGQnaZ zucNTcb^Ai;wm=Jx`X?zYrBgt#G`A)9>BGkBDTKLjf@|1Ig2VDkxR1jt>-Kx#`PF)m z&PR=rIQZQpXC3rjc)+pEWk&r`n(^RaaM~(IFe?ZVyKn^9>aIt%z__{;<(JzfBwF#| zD(_*ZC2{a~y&IDw#Ku}`O1Nmecv0ZTRRs6JT%=?3fRQOArsIIbXFhA(r{*W^Q7EDv z+*>u5+e}R{@;8kUQYD5FPZuvLrTqPqHLQZ40bO1oQNlYhT@YXQH3CDPqE~77*Ugnx z&fI%yrV*uL-$enL_RNcVWi0-bLxmE{m74DvRKQT+eK6KXaXjr-;pBcQ^KRg6;m3S4 z>FbdK;BtD{r1CbHh3y`wHav*z|HUne>xnhRMKvM8D=HK?>LLsJ)}YoW(_Gy2 zek=BTAOnAk!F4RDYhQ^d>b{??A&x;MNl9>f5qiOuKf-&_d$D>Z+T?rmNBZwzPrNet zRivNAnY~6VBR`&FPKl>(`I7ohdT!`0TARxA`&(ZQ!|%KHGz`32MX&A@E_<*$tyGob zWPI4VNFX1%IU~EVG}{M`r*#!DTPoI48$KyMK?0~*-2iY#qJI72o|+W$ zB$yhW8P&&bm&amKQ&(3*nlG*ypfk$#;>R6>9F@9H@0H#;m)uA61|Xihu-{vpmD|n? zL@;m{kwqRm?0hK2cd*tIB)`Vy*?51}E?7lBQvdJTsM{{e*j9Zi!49-(uqrJV!lkFX z_$x{;Pw|ttvm^U~07^J<-fWTOpu?Sb!+dr7;*B%KIxAI)@b{u3bk@C*Qa7Z-a1Y63(6#Koep<*(r?Cz0vNGmK(>t8=>aj<*qmX#u2aK zW2LD$a1-XcI$G*?YraY(fr`GQG~bcV1IJ->fx3e3rCnQ`_{p*nj)6K-5|@(9&7a+A zd@{2w$yqTtp9g5T`wzOWqqu)%(N`2Pvi*vZNZ=?)?na6ZOMADJK1Aqzi1-U z2O<|xBQm1QqS?MnLMGHFZRQ2EFv0s5&0>xyQ-6G?)ieB9%RO@0*Vs9)NM$Mirkri9 zU6)oGOW})B+CB5MR_e=K*bpMOt>;W3@4O=e>xEl5aBE+VMr4t73>-JumCV?hwKx>f z7N6Zae*8YpT%9zH_||tBspg`K#XlxNrD;*q_!KYx&9q7jG94HEhA3m0#+$FlAMZrk zk(J2l4;Ms5?zVxBtdcc6KZ+7k>juytkVhgq>&SxmMK*Hh*NfA3hL6h91W_?EAf_Nx z2l!7$ssY{&B17`tav@bI3jl~zN8Wam8u*zhel5t4d%AtYrxDt&Po}^Pp5NnVxKj)d z8F0CC`JP(>lLId-6~C6ws`6bLDjjEd{{X=13q$^;X~vLmU0B0z-&~}l5ze533jx*w zFG$VZjABvNRBudn(mPW>QN3~S?#k;q9#esXZ=2tu+va+8c-D7~V;p8prDpK2$!LO5 z#Fch*ebwmiO@UHR@7uJgHsYuTeH;Ze>22!=eis5X&63(F{ASFVg}x&^+*&Cc&!8HY zdnMw7I>~(_gYq=N{R&=?t8wBLJe|VqyV{7lUkx675|O5FU33B?*StmdpWUBrp|)vt z&vb)*zhMgHO$qot2dI7AaS|D6_bRkb=WF<}>NGMfo|Us~&%~dlYVP(w^8S%+usUlJ zZ%ESN#f^DIx6KE8*^P>2iI5p%bNF5ME9OTflPD;Hph56nWs&=ID>=cv~~P zhZL+`>F8X+NdD&dciDkJRG;SaWW=w|DlkEoL}&dVHAbw`zW<7YCA5ACqhZfFn~qXx z*u?nz2kKOIQ$J3^8(SBuSN1fMhT|#>?4M4A#!JHOQ%+_|Fv7X*S9^u1VK{R^)o4=V z3}nHQzaK4fxj(mphq1kM(HFs@H%A&n5VEay$ik{?@@Hv>vnqxV=^n)9vHa%ViHo|v zNXhQNa$?1lbbrbR(u3Xjhzmz(H=b8fq7_rpSO+0P%cFj2b}z5+=axT8!|zF7?E3aS zaQ_IAHj~)(4aY9ALsq`7c{f^b(&2m1uO55Fj{9x2<@Qv@45pf=9^KxEF4u-!cwkEM z7=(p9^>syZ3@-jspR+eV?HA+_+d6gRQ#{zp{+5WC9TEskew9QhK64WI!X#~VCr-j~ zyCx&Vpz!ug;Xi@O0+j2yip#dt>N5tfH;#Yl8S9s9(jg}^7;^JNZ^5=?x7`a=B7VGbN5yI1I z`#aNn=b$~djG1c<-=3rP^4m8}=ed!d-}CiM+?<2BkUA80I9zd?w%(d;Q?U-cVuM6# zL9UP3tUq)dx0P~c64lCHLxcF(y_8$srEKnP_}C*kKh$gDUWN+IJ5<>tB0F!}{ug0n(vLEJ43F}TNGt7L>?)Ac(-}5bPh;z604n6!n??I$$gbM_c>9T8lqOzR zq?%(1#`04LH8>)&qg4)$**N1ZP~j6w51MR{oNa&M(Fn^{#Abyfl9@pPuIvn7--e(2 zpA+*N9P-h6DnU`~UT25kamyV9Je_tO(vk8bym$t~_o6;$p?n|y5K(~7l zH;Xxk`f~Tnix_z_#yZ=lkMt~n;9gX8RR9;rV=r?5f5Z_Q_&)LV$uRYryB+TE}jOabd~m3zmf zyCmV6@hnEg-1RhM?9oVL@8w&4k7w6o1>5k}%1evn-Lu47ZQT9%{}Vk(d3q;Lzrc%- zLX*)CRSB>9GFl8YI=-(SL6Trd}5`Nl^L>oA*mph85ix?a>XN3pLy3s8;BTmVtyA<=a%dabb7{m zAm|FI5XEThBd06t|4*QB@0rHaf*41tjme0(gEPR4h^Ta9A>6Yo@Mf2Z^Lz7H-g(A@CJjDN9=sMGH~eG+588dH%Qb2{u|N9)4Oo>i&; zg3gH0u)1V~$5b0zrOGz>X}BG7Hd4I*&hCY4JsK#eKO1H)VSBi<`m)O`2N(~ZNVe_R zHvZ}9UEjZ}D1}i9YKY?~%gD(ToKqRs@0{W`T|HW%mg1|A1G2AUFFXC(0h&lwDVbY} z{KY4=9w#vQs}VzaehtQecn%TjcnCgI<1=IO)Eflb7gJbB&{+6x5&gyBJa}Pl+P$D^uZ$x*hIxD>CNLu|dG-=}Gcpf6-ah7mvCvo*J+wcV34ry?{vk&s2 zY$!(K#*$JBD*2ELujyk33^Dq`4@$u%=HfYIBUKbCCYMC${snUxp2!xSN4*oRSX1ck zKUey867F$7cTxs16Tnv9d#I?;QG=1Eado5Pam}5TsZ2-wp{#94zczw)f}h_)h$}g1 ze2W&djIP@oby}Sgo{d7U#6U%ERf_Gl&PS0Ak^}MiJ%p0>tz_%t^m5T4Uuf~Is6$ir zmhz9B%)wP9)KZOlBcDML1xKRIq?!Y|BG((iL%S4MkjeL1CI)XXwdKF-&@-6b4{r_< zySH`xT1VA6YfqC-Q0Z~w3JEGthY4fT;w{!j7HvBB+&`Ee1BIlu^uNCS?Qcuh@IQr& z`Ntz7c3R#Phm7wwfzUAa?$s&h=DK^DBm8S=|G||A{1ZU{O ziLvEctNP#4YzQUii+wQ5Jpk5pvv8t?vPOnT{}zhEwn-TjwKcXffNI6cNYA1@9iX}etMLjPHavCc+Ol*6)M9sIaxsCP*ZC46sE>dKdF98|LfbftYtvDu zC4DjoI|#yida+Y`_&;}6hwg7cY$vceGUx}a@!)^2RXW+q!0ajhxLG9tU!m{n_h z-#e|%YtqsrwSz^)N$)XL2Y^N0JP5JA&P>5*4nb`U^!Wq+Q-P zme4Tz9jGhtD%Bu2a(Lcwq3G!(E=!6d2nQK|Nbr|F*7ICl0qd+5#Xw)w?7lq)uH;)U&Owpg-w^U+52}`<@}_pty(VF>`vzDTuhw8o?Jybs_OhFzF=c|rv#VdOw-k1 zrhAf>{I@76j2ke@t1${4@vCD?_11>sQ>ou4yuoCZ&dYnW`jTuhLwq>lZFd zSF#N&^UO&@`g0rX$AEm8MZ6t@Ukmkz<$ZYV><6WfovT{wtwf9-I`QisJ~28TV9V^^ zI2tjqLC)?;ee4>vL0-HW7%x+8$YYf;c_-Cw6K>U6Gf%i>_ z-sd=O)<9Psp}ze6=CLU=n2(Bdb<_Qa_-6~VnCe-#_ehkAvn@1$v17HYB9mTv0c^F- z5!xC)S$;sku#wD9!T*Xh<6v15x|2DoR;ba{cbq$6y7X^k zn!ymp&Sh%&$FAxsFuguVWjl%TpBG#YP;3?{w`N9YLtCLAI#vqC_1&gEoh9&|$Feai z9?OfJ|JTY3TGRodpgx2nL^_8{!nHA#8ne$8AHeFj!7LYmTBUh zb!_(_{BO|M;rX#B8(NUtG&tv{Tq@MfQRaG_h&2L zURI?AKauG=b=x$NY8@NPJ*Ff7H&goRJQ{jpc__9rgZXDJ{do7{HJ6x3zfE^yn%|4m zNNlUSW=vS7GzLws(^Ro(8LP?)UqQf1IXVIKb8U{T(7sLUGvU_5L0qgsO43AL2!DSu zYd%Bfv9NDy4+zC^Bd#(2>8qp)QceH5V6SDxCpiFYMOeK@e9>WH^_NP+y7s zv_|m567Ez<)S+HjfwUFZS&ffhJHLYlu@UZkb?;ayWy1BV-1XgF3l-Q?I$&179QOW} zYRVqHg>B0Q2+_&`Ul>$${s5(d9vrZ>Do+);5-mcGT+a)vuT`1WW5a?vTHUWE6?oqq zAQUD(wC%jm_cWaVXMn{$7BKQf^|iAhbdvM!Q>(Q(TO{-Ar%9_9Q0G5j4cCCeWURq^ zKP0eZ*3KxztNHrvpluKPySOYDj<>DNAOUvJaRpwL{uu+_^Zm*hMq1N`n_snxxe8I4 znar zo1_g7Bgpj%uwxh%Xerdt=QlMo=0&a;?%-`e2aKU+f3a~dULzxQ6<;AEb`_{QqLZBa;%QBM< z#22a>Oo3l1L(i<|X-UjQ4%!YYd3 urvQKA|L;rx#|X>+lZgKxsmA&>_V?wS?vq@Td7z+J3a?aNRy;Qi{{H}|OH8@| literal 0 HcmV?d00001 diff --git a/ConfigFiles/LAMPTool.qrc b/ConfigFiles/LAMPTool.qrc new file mode 100644 index 0000000..f0987de --- /dev/null +++ b/ConfigFiles/LAMPTool.qrc @@ -0,0 +1,4 @@ + + + + diff --git a/ConfigFiles/OCCViewer/res/antialiasing.png b/ConfigFiles/OCCViewer/res/antialiasing.png new file mode 100644 index 0000000000000000000000000000000000000000..da8e5047a4ff2c2738718a56cfd47c1d19d24d1e GIT binary patch literal 230 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6;>1s;*b z3=DjSK$uZf!>a)(C{^MbQ4*Y=R#Ki=l*$m0n3-3i=jR%tP-d)Ws%L2E{@KYKs4B_R z#WBRfKl#W1|MtwP5^E$m99X#OzQ2<_94$HZzXDHEaxn8XZexZe9J0#N4SMWG6BaPu z;A!pTHDdl?DLP-qhNpm4Oy@}sOGTn}2R UAKHp91KP&m>FVdQ&MBb@07Pj*oB#j- literal 0 HcmV?d00001 diff --git a/ConfigFiles/OCCViewer/res/cursor_rotate.png b/ConfigFiles/OCCViewer/res/cursor_rotate.png new file mode 100644 index 0000000000000000000000000000000000000000..a3cb0c1ecc31ed66595b4387c55dd2731809a5e1 GIT binary patch literal 291 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnH%)r1{DZJ<-ki!|^6XJT{zyToh|NsBJ3q{m` zEXI-`zhDN3XE)M7oFs2|7lsa2Sq~sbti&~FS$q5M)5)u*~FeEXuNpvI#I2A}-X}F}rqr=I=%gfWlk;uj_@bD7j z6|DtF4jh=G!12UL&ENr>PlD1KMh`VE4Ti0yjJ+8Jj78ER4MKcUJUm)LTnfPsZpKOG zEV4cgmtt0nIY{(yPjhvQn8U-#ZQ{ry%Esx*uHnq2v$d(wm(@i-H9286!$zGf)iWM5 e)|F^Z8<^g0e zmIV0)GdMiEkp|?5mAFQf1m~xflqVLYGNfmw85QKED;Vh+=o#9^?aKhFU`h9MOJ`zW zkPLd4!Up7Lc)B=-RLn_EP!KOz+h7#dX4;UsjI)PRK$4w})1Y}W<0Lc-a$k!M*zN28VxpF`U#yCAY@F9!>Q{yu)SmYHks0PSS(boFyt=akR{08E}qwEzGB literal 0 HcmV?d00001 diff --git a/ConfigFiles/OCCViewer/res/help.png b/ConfigFiles/OCCViewer/res/help.png new file mode 100644 index 0000000000000000000000000000000000000000..e57336285ea67f393322fd6f19a64d9d1de42e53 GIT binary patch literal 214 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!9%)r1XI!iqT$l(m|32{Ae;K2X?Kn}y={c$Bg zim@cfFPOpM*^M+1C&}C0g(;1@2Bci9#5JNMI6tkVJh3R1Aw4tAs30$0!AQ?Q&(Jn* zUj|TxkEe@cNX4AwgoJ(PcjV()C>w#3=B*S3``o9LZ`&mG989ZJ6T-G@yGywpz CnKtYI literal 0 HcmV?d00001 diff --git a/ConfigFiles/OCCViewer/res/lamp.png b/ConfigFiles/OCCViewer/res/lamp.png new file mode 100644 index 0000000000000000000000000000000000000000..a5a6775c33f5655a31ef8152b0fa94fcaa73abf3 GIT binary patch literal 1355 zcmd^7i%XMH6hGglY)YE@mdni4rBLY*sVE7}O{Z?9Q&P-u!OCnICac6xjOt62ED8#G zTV`Zg2|ehcV$dp*UZzAy#gd9_84Ol4A0@4Gt{Oq~7j)pL)q+D}fNWcF8TBSX#DVWbcMABR%wvq6 zOe?HhV$RPqnX_{B%gwoKHrYyx&0C7MLMe)I8OC&Yiaz8gt9A+#DIszqR^lKJXN!gf zdPCEk%tJX`YNz1#Qvgeh$Seqj{!0-t;V7pgQ$0lrr$BvDEr;CzDwvB_oFRhL;;~vQ zt8s%S7-X=Q178M%`5VuK#w;tlE3po7iW0tj7{MBq5RF#SiErxA;I9Q{KpK;zi04j$tPAP#rd;Vs?mU!8tK9N|$Dx_y|RY@hW(Jp^Ii z6AG6Q8^jqTsEgQBIj02eoM4Q`!Ar!~Eo%{MXrn#@3!TC^Ha@dRj6a>d1gJy&`dl~b zS&qLNf*9=-G0l~7pa^mrHc|!NIp{+)xtkBW#&@&7E|vM{H*U949px)bxwNyi_5Uk* zYOD`&RNswyU0&r$*P*-oy?D9)Xj$!`cV|IlR`YAU>+XzG1L0Nii3M_n$M{YX_x6dn z);3?F4bQbNmF=sw=%BYr?Y+5Y8dtt3p~3IQG3mMHn%K1A*+2KE?CWj&tlqJ?WdCr? zeAliAZyNLakKB>uuh#Ww1}>L8c^vGoRk|%xyOoAbRmtrax_VPpZcWPZ1JCalT&r4M z-EtwdpbW2l$bb}#O0PmqO1O?{N1)#yf4VfS~p9CTG=r+0j)KWl~4LFX61<28v_ zxCS4M(6Oyowk1n_>S6`g(mm(apj6wQ)aq#MpLI2<;A`iqkJiGSgWUp`9O&TGNzus~ RS6?!1j4{omzno&J{srsJK~Vqz literal 0 HcmV?d00001 diff --git a/ConfigFiles/OCCViewer/res/raytracing.png b/ConfigFiles/OCCViewer/res/raytracing.png new file mode 100644 index 0000000000000000000000000000000000000000..211e697237314addce4eeaf9399e49c448101e9d GIT binary patch literal 223 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|SkfJR9T^xl z_H+M9WCij$3p^r=85sBugD~Uq{1qucL8%hgh?3y^w370~qEv=}#LT=BJwMkFg)(D3 zQ$0gN_s>q|KvjO8E{-7<{%3m}xfm394*&VTe7T%iyUT`G2b~vqpYEC&+Ze>Sl*y}A zFzU>X!lvI6;>1s;*b z3=DjSL74G){)!Z!pj3%#L`iUdT1k0gQ7S_~VrE{6o}X)oLYc9ish**s`)4O}psG+$ z7sn6_|KuP4|JyUGO01jN*!a+1QzA{Xi}C$B(?9BL%{o%+*aAd4p17%6h`oCK`v2r+ z$0|)P7Y()vub6sD7>pkLoy_Z!IN_FK7K7%)hKH<0ml+wBY8~9U`j0vf&;kZeS3j3^ HP6!lvI6;>1s;*b z3=DjSL74G){)!Z!pj3%#L`iUdT1k0gQ7S_~VrE{6o}X)oLYc9ish**s`)4O}psE&6 z7sn6_|F@Gbavo3+aL)g7?je`o10`AKi}|X#e1A4{guY6*mus4%IAcx+M;fDo|GVu> z^>XVA-feF9E~j#=W6tJXkwpn>SqsmtJh7?4kgY|j+))78&qol`;+0OTi5IRF3v literal 0 HcmV?d00001 diff --git a/ConfigFiles/OCCViewer/res/tool_delete.png b/ConfigFiles/OCCViewer/res/tool_delete.png new file mode 100644 index 0000000000000000000000000000000000000000..3886af51d843d2599fdb390ba81a5da47333e5c4 GIT binary patch literal 203 zcmeAS@N?(olHy`uVBq!ia0vp^0zk~q!VDzkV}oRXltF+`h%1n80OJNQ)d1u*G#of^ zprN7RKT!NX!+$UZq=76T@E2C|1d4}wx;TbZ%uzkHQSg8P2eU)e`iE^ww=W);D_x$^ zV&FZkyC?Lo=OnEK5}GdF4{nRAN?QMQW`1X>V#~o(d3T;Duj$c7-=yoA6^dG+Uk^QN hEjX;OV#k6GdE?J!s@uX>g#vA0@O1TaS?83{1ONg@Ml}Ec literal 0 HcmV?d00001 diff --git a/ConfigFiles/OCCViewer/res/tool_material.png b/ConfigFiles/OCCViewer/res/tool_material.png new file mode 100644 index 0000000000000000000000000000000000000000..f846a56371c43ec6a49f0414e444a52372e66929 GIT binary patch literal 293 zcmeAS@N?(olHy`uVBq!ia0vp^0zk~q!3HGX7W?Z1DVB6cUq=RpjeRx011AId3dtTp zz6=aistgPb%?u1b{{!h43=E|P3=FRl7#OUkGcbtfPhUCn3Q+9^PZ!6KiaAMt{{OdU zR%K9Vi1^@b{K(+1y>bt$fI|fjL#CU?5mj~p2cIR`Z95qrSv4>mN@O@AaA+Mfhk}p3 z0h8+g!#M{MIXtvO*c2Kzv@_liSmDG3GUq_o$D2+E1c2&=*^V$aFeEkp5WktWqPyb@ zlLJE{KXZh_qb_!pW=1BC%MJfKERM|-`=@+}SE1oU3u7TCr$R%4M8g}d9EOP#7??Qx i;|`>A94cjCWMk;*Fw)(Yz}5+LJA7wL~P(RGc!vv-MVkzJi%BVg$4-+J%?kwyu2@*3V0?ui?VPiEHZs;#G=qJ!(i_H zhRgeJJYitsQ095{TDm~0$(K)|VFR0zhvG({Q3iV)v=}%Px_EIBlZ_l043kdxE=f^q cU|?oAQNC34y-L7&ptBe}UHx3vIVCg!0Cd_&#sB~S literal 0 HcmV?d00001 diff --git a/ConfigFiles/OCCViewer/res/tool_transparency.png b/ConfigFiles/OCCViewer/res/tool_transparency.png new file mode 100644 index 0000000000000000000000000000000000000000..786803a5cf0deba83f1107153186a098c9eab7cc GIT binary patch literal 318 zcmeAS@N?(olHy`uVBq!ia0vp^0zk~q!3HGX7W?Z1DVB6cUq=RpjeRx011AId3dtTp zz6=aistgPb%?u1b{{!h43=E|P3=FRl7#OUkGcbtfPhUCn3Q+AyPZ!6KiaAMt{{OdU zR%K9Vh}ghsW@eUTx^>^ad4jP#3JnqtdJe~Ud3giWIvkcN7Oi;2$kdT>)*$so8v~1g z@UqX+4JyhPxc^ID%7wL~P(Teq`{~UU?UX14E)A!xG70MLo*~h9spp<1?%))-iJ^sQI|=n8UxF!Ied! zVM7JuWw8*;5Mc%;4tIq|pV_n+I23f^6nGg}1dg)72~JLhh7+D18cGa|El0UogoV0* trW+;(I%p^^oWUUA@I*yLgh3#Iq3NTFdbspE4WP>yJYD@<);T3K0RX6BL^A*Y literal 0 HcmV?d00001 diff --git a/ConfigFiles/OCCViewer/res/view_axo.png b/ConfigFiles/OCCViewer/res/view_axo.png new file mode 100644 index 0000000000000000000000000000000000000000..4801ab45921b9e94e59e7d21f649cd9fddce3187 GIT binary patch literal 392 zcmeAS@N?(olHy`uVBq!ia0vp^A|TAc1|)ksWqE-VOS+@4BLl<6zM9{GlYxANWRD>fq_xj)5S5QVouVZ|Nrfo zO&J{+3yVfB}5L~FmRsu zG=V{(p+Kr5Pr~RxI#4F@tI@`Xt-K5@0_O}^Zg%OPDfkIg@S#m{*L8^nnPTw;K$%I6 z3cfc)6{TBp1kD%(9DFzqPso&*Ex6?K|9Xw~#*P?P0fzwQM6*S=cuX1@a|F&T3@}r6 zQ4G7x$iz{;$$k6pkaB59_eSi+7sPC=(S1m`g@wmft4IC7wgD_-S6S7rl4 zl8f%X4NEOOs#+v{G?p(-?sK#ov=Pl)S*0|);9XJ`O&|Nn1j z0MS=oah(NHj3q&S!3+-1Zlr-YN#5=*tUvN!9tU#7N?apKg7ec#$`gxH8PYS;j0*D7 z6^!%@^bBp|_GJK7gn7C+hE&W6?YYR?;K1RmeVws@Ic1XZ&cErC7-<7ih3=n&$O8-AbydZPvd1h4VK1=GLcmtkzf;be3Jl Wo1>Y@*B}>Y1B0ilpUXO@geCy{=uV9Q literal 0 HcmV?d00001 diff --git a/ConfigFiles/OCCViewer/res/view_bottom.png b/ConfigFiles/OCCViewer/res/view_bottom.png new file mode 100644 index 0000000000000000000000000000000000000000..c7cfdc208aa04cd5f0109df2d262083e1b71de62 GIT binary patch literal 233 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!7%)r1n>(-?sK#ov=Pl)S*0|);9XJ`O&|Nn1j z0MS=oah(NHj3q&S!3+-1Zlr-YN#5=*tUvN!9tU#7N?apKg7ec#$`gxH8PYS;j0*D7 z6^!%@^bBp|_GJK7gn7C+hE&Xn?QP_22;gv;|CC|t!Q-4Vj)(rHd+Bmmx%k`qi+IeD z-PX$H6H&Nc^d3{mM+M_uz3yL^dS~TaGn&aPA8*1PC>Le_LomDNXXT9>-6wu$yyBJO WlFzshE?T;J_^FaAHf7qhq6^A*XP{?j8@De5 zs6yA%#WAE}PI7_+Gj~Hk-$7Om#{+!_dmA}TmWih@O1TaS?83{1OT?)Gj{+0 literal 0 HcmV?d00001 diff --git a/ConfigFiles/OCCViewer/res/view_fitall.png b/ConfigFiles/OCCViewer/res/view_fitall.png new file mode 100644 index 0000000000000000000000000000000000000000..21d2f423ef4acbf4380ff497084e7fb206037100 GIT binary patch literal 231 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!7%)r1n>(-?sKn{O^Pl)S*0|y!!82HV0oYtJyeg`d=T#E!A>Kj7jX5<^IG- zWuF9VJ&8BQ4WU+a-=k0smdMUac*xWgB?+c&Q#}%=uzu8aq Wv#}d9=CuH=VDNPHb6Mw<&;$Ud^G!kk literal 0 HcmV?d00001 diff --git a/ConfigFiles/OCCViewer/res/view_front.png b/ConfigFiles/OCCViewer/res/view_front.png new file mode 100644 index 0000000000000000000000000000000000000000..a9e99c59b697ddef7e013bb5c5957b9a6c45be01 GIT binary patch literal 238 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!7%)r1n>(-?sK#ov=Pl)S*0|);9XJ`O&|Nn1j z0MS=oah(NHj3q&S!3+-1Zlr-YN#5=*tUvN!9tU#7N?apKg7ec#$`gxH8PYS;j0*D7 z6^!%@^bBp|_GJK7M0>h8hE&Y)?Y+p`V8G#W{uX0^xI;;UT4_UF$^V%)8`Sn5cq+Jq zp@l1~sw^j`_to4Oq35mB&KQVrKY8Z9pY!dPr+HnTJ1Z0(rJdsMJpbXK8uODC*PR9K c-3$J~n&8hKB9R!|3bcm7)78&qol`;+0Em)S00000 literal 0 HcmV?d00001 diff --git a/ConfigFiles/OCCViewer/res/view_left.png b/ConfigFiles/OCCViewer/res/view_left.png new file mode 100644 index 0000000000000000000000000000000000000000..7d25b6ab2f8b8f778ac779da4db96d5a8d9f5756 GIT binary patch literal 231 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!7%)r1n>(-?sK#ov=Pl)S*0|);9XJ`O&|Nn1j z0MS=oah(NHj3q&S!3+-1Zlr-YN#5=*tUvN!9tU#7N?apKg7ec#$`gxH8PYS;j0*D7 z6^!%@^bBp|_GJK7gm}6*hE&W6?P=s}FyLW1e}U1fkipS>1+&PRf5tyE1->er|LiHZ z;y{;Yx0;W4{yUvx9tUeDi0HN)&s`XLvSi!D`1rIJ6XmlyZmoKff1`T;x$oZ|vZ?K7 V-?`&Y+ialu44$rjF6*2UngIO(RG`Pkan1T+sEd~k@tDPaMF snn^>8P{+}&O^zxI9?hI#>?@QQ)XuT#9Aufl8)zDXr>mdKI;Vst02TW;XaE2J literal 0 HcmV?d00001 diff --git a/ConfigFiles/OCCViewer/res/view_right.png b/ConfigFiles/OCCViewer/res/view_right.png new file mode 100644 index 0000000000000000000000000000000000000000..5540220cfa7e1f7a8b5258efe3bef0d1a70b2263 GIT binary patch literal 230 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!7%)r1n>(-?sK#ov=Pl)S*0|);9XJ`O&|Nn1j z0MS=oah(NHj3q&S!3+-1Zlr-YN#5=*tUvN!9tU#7N?apKg7ec#$`gxH8PYS;j0*D7 z6^!%@^bBp|_GJK71bezThE&Y)^>yTGFyP^y&A-8Z#Xbj#d#<1Vo3GuNEOkrZQVY`# z29aKu1Fr5mFF&zOeB9T{BDbmdKI;Vst0DV4DIRF3v literal 0 HcmV?d00001 diff --git a/ConfigFiles/OCCViewer/res/view_top.png b/ConfigFiles/OCCViewer/res/view_top.png new file mode 100644 index 0000000000000000000000000000000000000000..b788de36fb11bef11761670ac5ceda6892d5e7d0 GIT binary patch literal 235 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 literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/QTreeView/branch-closed.png b/ConfigFiles/PointCloudProcess/images/QTreeView/branch-closed.png new file mode 100644 index 0000000000000000000000000000000000000000..84c0cb17cbf75fc2168040cb7bb6eb8444cc4539 GIT binary patch literal 328 zcmeAS@N?(olHy`uVBq!ia0vp^96-#&!3HGb=lz)rq*#ibJVQ8upoSx*1IXtr@Q5sC zU|>`RVa6iI@_Rr*$r9IylHmNblJdl&REF~Ma=pyF?Be9af>gcyqV(DCY@~pSj(WN{ zhEy=-^luGybrfh*zdf_~T9VG97STH^*}Pveu6{7-!Mk^PuCaA7_qdPkH#{}VeRszW z9q(0YQ+VTD54(0hZ(HSHRKxp1q|Dg*YB2AP#yN?n5-;tUyOzgHXyyF_x=&<^Buw9{ zC}(?~t`J*U%f2YATqDk*Z}L;yHMbeIutY0d_d23Jq!*@SFUuez0=MKPhnY$&ar^3Rpv!_bp&!m=r#L UW|^TxI?zK5p00i_>zopr0B>)6+yDRo literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/QTreeView/branch-end.png b/ConfigFiles/PointCloudProcess/images/QTreeView/branch-end.png new file mode 100644 index 0000000000000000000000000000000000000000..daed9ca060c9eee6a31e84be22656cc1934067f6 GIT binary patch literal 180 zcmeAS@N?(olHy`uVBq!ia0vp^fk14t<7pB(0k2XUTw^BAa@ zyCldjn8B*X*j~IsKQ$)u#HNcmKw)!F7srqa#^eJ`EmL?lbo7->U99CE+PA8N_b3D7 zjZihsLwFqFNcn40s|9xZDnENU$>K^sBt$Iih+PXas|&tDnm{r-UW|F4;E3 literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/QTreeView/branch-more.png b/ConfigFiles/PointCloudProcess/images/QTreeView/branch-more.png new file mode 100644 index 0000000000000000000000000000000000000000..2ee63ecde778cbc7c108b78ebbae3da19a802438 GIT binary patch literal 109 zcmeAS@N?(olHy`uVBq!ia0vp^5Jae79 zmdK II;Vst07`Hp7ytkO literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/QTreeView/branch-open.png b/ConfigFiles/PointCloudProcess/images/QTreeView/branch-open.png new file mode 100644 index 0000000000000000000000000000000000000000..ec3e78e31cd84dd2223be3ae6ee9709153fa2a08 GIT binary patch literal 334 zcmeAS@N?(olHy`uVBq!ia0vp^JV4CB!3HGHK9Tzfq*#ibJVQ8upoSx*1IXtr@Q5sC zU|>`RVa6iI@_Rr*$r9IylHmNblJdl&REF~Ma=pyF?Be9af>gcyqV(DCY@~pSPJ6mI zhEy$rSIIm`!=B8eur56zlujDpE|f~ zRUf*G)-imS`WwsjkL_o60ju8T3$A=uUeB7NENcIEGlwnn@&_y*3x#HFhzr*dn=7_L zs&(&or7s*ZO@CPyyyjI6$=rLcXX2v#dhK_OvAtU+Gv#J3I2-dp_kC@e-HAiC88F literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/QTreeView/vline.png b/ConfigFiles/PointCloudProcess/images/QTreeView/vline.png new file mode 100644 index 0000000000000000000000000000000000000000..6b1db9aaf3495f2a081c540f2f55b5e25c25a0b5 GIT binary patch literal 122 zcmeAS@N?(olHy`uVBq!ia0vp^fk14<#0(_2UW&B=Qak}ZA+G=b|4$C{g`lg;Rdj*k zEG0pH!3-3t4S;+}PZ!6K3dZCH=53}N-#&=Rib5bOLvN2psQ(Y?JwQbap00i_ I>zopr0QN^8R{#J2 literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/RGB.png b/ConfigFiles/PointCloudProcess/images/RGB.png new file mode 100644 index 0000000000000000000000000000000000000000..24668432ac16e5ae37da336725b5e4ce267a7968 GIT binary patch literal 3331 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 N002ovPDHLkV1kKZI4l4F literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/algorithm/DASHBOARD.png b/ConfigFiles/PointCloudProcess/images/algorithm/DASHBOARD.png new file mode 100644 index 0000000000000000000000000000000000000000..c84211a6080261b819eef1b36df3170886dd2395 GIT binary patch literal 2785 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 literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/algorithm/DBSCAN.png b/ConfigFiles/PointCloudProcess/images/algorithm/DBSCAN.png new file mode 100644 index 0000000000000000000000000000000000000000..17a7f0ab23df0fe99b3ffbb9d969395bbd994c23 GIT binary patch literal 2041 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 RAL#%9002ovPDHLkV1l=e$^!rZ literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/algorithm/binary.png b/ConfigFiles/PointCloudProcess/images/algorithm/binary.png new file mode 100644 index 0000000000000000000000000000000000000000..fc5726a55034b0f4e08be7d2f5ec818d00c78678 GIT binary patch literal 1544 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 literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/algorithm/extract.png b/ConfigFiles/PointCloudProcess/images/algorithm/extract.png new file mode 100644 index 0000000000000000000000000000000000000000..6fca78d0d52778b42ecf7d5b751b15b9f19f7c98 GIT binary patch literal 2922 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 literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/algorithm/more.png b/ConfigFiles/PointCloudProcess/images/algorithm/more.png new file mode 100644 index 0000000000000000000000000000000000000000..85f9e610c0edbcbece340dec43c5029c7674347d GIT binary patch literal 2259 zcmV;^2rT!BP)g>@AhtCYef#{QTFtP`bUOmv{;l6F-a=i`#5G&V&lh%WIx)1|R}c5L6- zKBN1??_asRzvp?M_jk{|U(fTJkX5|F&W%L$H2^CCtjMk}`k636jAKkVF*A*QlP9HN zD>@p3J6aOLOpusbtl$e_m~fUg3}D*z--%PZr;5=>NwD{`-}eYLwfh*nz8D2XV&7*C zTgL~b1Nr2Zg~ZRffNlU^FH*NPI73zkqz-FfV3r_%%l%7dgxa%Kh04V-gxklJU;iar zk1r%X1YlRW`mM?HN>%AOZibyD$QKk}1>r_Bu&wnPU8fFq|2wI(p>_Mc%)H;$HVP{n zR~5-;)*dyi=v>Ddy^sl{Hh~gvkM{35W~RWb-n(L(5A3>)7+nB9lg86ORi*n&`m?u1 zTtxy71GqXvALBs~QY4zSm9L(O>!HzYMEG7NhJU3hJr5MpOTM7^00_S@fPSYc(#BGa z$tULviC+O`Nl2E9sv=#bKQx5IO$_|TD61+`YJ9ZI7H_KOnxkFQ!UR zm7vVgrTU4P%q~@essxp{0I7OV)q|=Yq%-i5ujZ>O>FP?_+NW0?q^pCpHBZThs(Mh> zgFb2x3W^aB!s%wIO;x%xjz7yYDJ|^_iKF@nYw9#_1_3=z=5xTQX8viuwR0<&_9g)Y zyf~&v>+B*WsmB}YT1(JgOg=MkZd{R;>d)Ed;siQ0rgU$x+lI#0AFR<>c+;RabuONl zpvF+=EgI-=833lo1tD?3uBZlSuFdn~UHrVN^n6oqH+N(OyHrK`sa+(^1r7ALo8fpl z9a+gs(Ciz`a&fzi%BzPkQTzS}Eki@{dr6EhB>oA&H?m~(FtJj$J%oBNg4ueQar5|q z^!GygQ=t`KNaV5&v8X^GY98(H9?FLMLgKsgVq+F{77Zi(Qtg)>G?UASJ$Xahw-9)r znNZ2~j3YJtzYW8KPfq63;R}g-0BkF{4GV$7yn0!}c|YtZmVb)fsNX82^i?a@oC z4O_*{4X#$6w&N10a&?6J zd>@~>P;-v}x)Z=Hrky2BFyndBw1b{4Bd?p{3jiFIK$XkRsYqZa5%g@6PnXnD!Xb_6 znfemFDt`hMVFHX(B^hND%CksARsvP7c4EDOJ}_)a2_(W!cYE|_#r7v>0u=$9#}vu7 zY%gzX=Xzr5%QUX=GCw8CIU>6w zX=q&be~Uo}jfOL{JL|$D`bM_oG8GB@hX|iHD0s;ej^1iTp<@V|h%8@Ji-oUcc7zUi z!bA63=|~~Wg~&C{2}12w|TmlwCGakEZX zsgLyrc7X9%3d68+aL)H^6g+ zHhaQD1!rqV5ER?r*n%0?K+64rQ+45}A*b3Z1%+{O*}sKBspA|Xyx?w+W*^dJC~*cs z^FObHp78K@?4c#CaMMEExBsbX=mq2XKyKp@LhL%^!Jq^$bXtZ%_-eAiJ)iG=wQCK9N|H6IdGT_ z(FQHSH`U)aT#;n9O0R=1JlWWksBxW1eaeg{+#S)ajweVrFedxo1ZYhqSJJcX z7!KjAOa_kdpv#6=b}wf1lJoogv+;Q=Go@n)dhcnUdsuJ$ z97B+9^t*Ckn+E8i=X5FIn6wxI%&_FN>yX(CIlTh}e$*Wv{;^qSDp60_7i#q&-?$=O zYj={wQ^$HlXX?mp;5`-JvZD)>_BAZ@r%>C66+TK^;-|a}Y`Hrec zpR!`KP7+VoJVL|;54G~?`WS1=ujm*l>nArd6R29n>j`)mjDpK=E1k=O=}{F)ELJ|= z8@Q1f_W;my8W&rVw`umvd79>wpQgzsLf>o>@wx;WgJ$~x#{~s?BQj9UgQ4RnA002ovPDHLkV1ky%MtT4M literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/algorithm/nihe.png b/ConfigFiles/PointCloudProcess/images/algorithm/nihe.png new file mode 100644 index 0000000000000000000000000000000000000000..c94631ae4c25d857846b85e13780eec321cad9de GIT binary patch literal 2180 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 literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/algorithm/transform.png b/ConfigFiles/PointCloudProcess/images/algorithm/transform.png new file mode 100644 index 0000000000000000000000000000000000000000..cdebf0c6dfca0f8060d900b1372d6f0ea2eff1d6 GIT binary patch literal 2478 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 aPsvQH#I3=6+Qc}Z1_n=8KbLh*2~7aB2&RPq literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/camera.png b/ConfigFiles/PointCloudProcess/images/camera.png new file mode 100644 index 0000000000000000000000000000000000000000..e85444adac33a0c544e87b97d148f300cda0a65b GIT binary patch literal 4517 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 DV@!4j literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/ccAddConstSF.png b/ConfigFiles/PointCloudProcess/images/ccAddConstSF.png new file mode 100644 index 0000000000000000000000000000000000000000..cb0c2dd0056b28a9c9f83b1e4a74e1f339a205e4 GIT binary patch literal 119 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`cAhSdAr*|t2UwYcJ~=i1U=V3H zn!vR{>c8_x#v+~{{XOkV8D}i~J70vSU-pxUGS9*r45#)Q%;M8H?<10)&fvKGsiE&Q SkuyM(7(8A5T-G@yGywp9f+aZs literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/ccAlign.png b/ConfigFiles/PointCloudProcess/images/ccAlign.png new file mode 100644 index 0000000000000000000000000000000000000000..946715146db5db80365f4c8a40837e108193fde5 GIT binary patch literal 185 zcmeAS@N?(olHy`uVBq!ia0vp^q9Dw{3?%2B3|#`GgaUj*T>t<7-@w4|AIJp~4h{?r z3}pe6y@5Q&k|4ie28U-i(tw;$PZ!6Kid(hk9Qhgyc$gi%=KQapDXQ3&aqC?n-?a7d zkJsMxotzYVJVleLse<%)2@hoK3Bx0C+fAiY6Z&`1{ppTvC|qGrwLEqe|H1V cK@Qum3>hbwxc4)JO$S-->FVdQ&MBb@0NbfP82|tP literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/ccBilateralFilter.png b/ConfigFiles/PointCloudProcess/images/ccBilateralFilter.png new file mode 100644 index 0000000000000000000000000000000000000000..73885d29817fb8ec7f26e4caaee09e58c3abd930 GIT binary patch literal 630 zcmV-+0*U>JP)Px#0%A)?L;(MXkIcUS000SaNLh0L01FZT01FZU(%pXi00007bV*G`2iyk*6Cy52 z(hLv)00H_*L_t(|0j0`AgY*UffZ-?EtZnbswvB6bDNp5}=&82*M{3*rY}@|EGsz^) zt@is|U;nF3*|Kb9=63~t(YkD-{kGdDGHJ@BdB+96TNgyl_+z`Y05T1cb6s?>K7B#` z7wgB}wbB>rI<*5DYPrZs&i!=wwo?ue!h-&=^tsfqQRBHW{d#q4SF^*xYs>dR$lCVs z$Y&TgVb+96Bl_f{Hj$dG>uXCE4-&GYV~wH#!{*JHG^kUkDTli1tJM*~}dS?d{7q_J#!I5UJP^M^%*7C1N9Hb$+np(J!xm`>|E^*8asHke>=rt!T#+7CxO-dCaW-4_D73@=!D$Arf>bmp}C!J}O1`sh_tl90b zKvgK#K%lA3fn~ET*@*t^kSY;V#rDFMzI`$^kxVlO1p{YozW;`ISB3!@0jxT1$D)t= z%R02lkf^BXbXonf3|u{9@&T4ac2*Q|b6( z8ye~|UB;T@QMkJv`Jr QlmGw#07*qoM6N<$g1xUN>i_@% literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/ccCCExtract.png b/ConfigFiles/PointCloudProcess/images/ccCCExtract.png new file mode 100644 index 0000000000000000000000000000000000000000..c32c944fbd5623e739ba1e5e49d81d8f6ba8b238 GIT binary patch literal 335 zcmV-V0kHmwP)GHjRxhpBCu=#dhE99>F=~gM#XH+m8%ND}(+AqqNH~ za4~@-bnFO@AowH&FA~%ETH=c*F^O6_)}Gp3?R>TWYH3L#Xx7j>+IbAtEE`Unq zg#jS3nbgz35_$_FHe2{#i)HK+kB7R55unj{u7+V30RYJww|mmm)3b??gb3Q zq6X-6?YDt&ya119nm*E(aS)0Y09G$f1mJd08v=o4aHPiu$jNEF5<#4%cmY1&6us(Y zaHPi$P^sL%fhaS8`AClopwW2FKoD0`JOHL6J!-&5AHlc(^iz@H_unhHpLl_AF%5(h4>$(+>Z>gBqmQ(WKmS~U{`+q=%H=j%uDN+o?Dtbw?i29I zCp!GeCnW|DN(O+-HCM@G_Wu#Y1*N40PX(9%y#OD4pvE45Tx zU#nE^TNobw0YHAoTW=vK{l^3d!~g)B854zv@3waSzjrY+W&!J_rn?uwSBAB}b}2y+buxspckkZ388c?& z&;kq@GUV=8Uw!pGN`UnAbk(|b>k45nPy#qQI(qNlzrPDSqd^G(dbF6&=PPIdKo=EA zrBV$_fFnnaR^6lgU)BT)DCc?o$HT+S=U%#WDG%;b0z^kgAB~HPgQmy;z=V@8S+b-A?o$GQ zaM-qOTPrj)RqE^4okVJCtu>l6V@B)C7cUx2&+pp2x!4F`>eQ)Xp-^aM&LxN+#qsff zsN&+t|El}DcawK^?le2E0NS%|U7ZdfGBR?<j1`#8B>4${P`YJ9p1e8r<-%5){-A6QBgZ zlaqhLalD5h2%VNKTUKudaAEP{rb2KEB>;GbkR0$XF`_<4KyzI2#r6+>EIsj03u+N8u^}z>G09OkD52n`LbLjChO rV#J6tH#fKF0Re#c4E^u-z;gZx2lJ%U5DY#}00000NkvXXu0mjfg5s{z literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/ccClippingBoxMultExport.png b/ConfigFiles/PointCloudProcess/images/ccClippingBoxMultExport.png new file mode 100644 index 0000000000000000000000000000000000000000..51317d9d3974f58ded67b4f6286cb2c390f7ac9f GIT binary patch literal 1218 zcmV;z1U>tSP)U^JW$% zdEfr~^!qaaz42ay*ise4r0v>6#0xsDt;@>EJn3Xe=#TU(!c zD?rG(u}B4)54;6Et_~kQ{1k`7x!gwLNJvOH91sw2@T~wdPmDxZicMfZg`2#ns7OgB zKz)6ES72b^F{}!21sL1qjjXyo7xXW3Q^UWJlL-JTdO|1^b`Sst3n&i*PmMw*9bzJ* zI))&@C&z-Mi^0H8)Eo4!asbp4E7T?54DGj#^28AHIdkS5-nMPqA#6?n2s$|$Nqw>& zthqZM%)1&5V$MwiGmnh|W4pWnQ_=?v;=6;M^>)B@vl+_E&sTklYWD0=1&tW-3|~i0 zpMFON;96)Z=~M4~rALL`6-t4{bq^j5jA$PW+zTuKJ=F%KZMFoIb>?8|3Qy3LnfXZy z^Y8%Tj10|On3MA&AvU({jTvAvnO)REOE7pp70`Cspt7v2Pd3H1H9Q<-BqnO+9Z;OA zs%viyA&o|xo0*v@cgi#Zj2dg;w$TDL)LhD9ff#>(-MX30*5v3l062b)jEua6rQRy_ z58zPv4{%*+V({(5y}W=hHB~bgWo4=B%gb+aYHKgWhJ~FV0Qma)O2uNa90TaLhN5;{ zW(1}#@i53dH7*Y9h>6k6JE3?`_%p-@242H$umu*3%uSn4)cx=Sat>}Asy(*0gxllK&{$S>TPl@yCM6{a2mtW?+c(+U zKOw=K0KnHTeO4B_KRX){z$!#dn|6-?uxj+^8z=zsk=i#JDldilL!ZqW^Uq4222Bc6zt$9mc9x4%ulzaE?ed6x!9!>!GkHtD# z`t#2($POU~?+Z}e+S=zZ>DGseGwq9O!qbTKh8w_w}< zg#Zx9V4Oel`R9O4fXxs`ZL6EeVL9_D@fEkb4n(y>NVUH!bZwG}JEu7X9@I@`XRe8)-N*Zoz^Ry2ofzpDSZ z-~Tu2e*F^wd{ZcX<+e$Q%jxlC52N7K)Z0UC(lZTHs#mYxilV413l=QUl2n5R4X*G4 zOt>+CJ!y}GJ_*wM{{H?~)N1wJ6oN5l&YT>%T%N@XFs6`V_ggnXmy@lTxVX4~NdjEB zaKSQm?AUz#6nFs!So*MQpDuyUajk8r4MP$DJ<-C%#KbfwfbI!`*JG~)vO}|FY+zas zc6`wQn0I?T^iOIJ?N2ua;nDi`mXWpXowf9`Jwr$JC+fD%EiWKbbcR{fJ z`7&5~e>%*#F%rh)2f_eLZ;%-}KsQ|*XnUbCwAfnblegv?jV67>h!F*N+YO*qY%N2F z3oY(RPd2_Mh^hOqr&a_3sokMXOkEJ~Yhr7?tsdKAQ{9i$7TL3sJbJxepY933Nivzt zB8;sE-St8c?`cfr8(6h!RW?o2Iov)kfJh`-5*!@NG!L#0lCuq<_0|R@20$NN>fphH zi@1GW02Jk>PM!J$8`j@l5t_zUg_d;P{{haOI`u+*?%W-36d;#BIS~_c-}U&+Ns|hl z0Q&XoXG~5`X0TybrI>BDzLtH+R>kLdwfciGB*bnB4u&7q?pd>7$BY?n$J3Bzj~#or z7(gHpOy9qM|2u5%D3i%#)kHl+~+LS2zz| zfUxb`3(l4*_2mX(fJ?`YalI%%fYE47RW@t(4ksW9po)lKRVvkM)S(q?=+L3}+yK@O z8uTz9Cm;xb`Vi2gzQpnOK6L2NyEbjwOm+f@+P^>VSeY`PZx9Ah9Y6lX(HwPlR@CVk zux~NIym|9<>sqyXiyM*z&_+huOa_D15n#rQ8Bb8RU)Bj=tVD7%_vfF1B*5k-P3-#1 zmz^Gccz8I22R!WQ1TY8z&;tfMTg@Cc?3GKm&iMHFWH_38{0-3; znm&5;=qo8D45dUDpl>902D=C#YH1YfavIGt5_`Fz?t#_tX#P=7Zr_p zc$*Y}*=)v-KA$t>1xQFpNE<$U_*LAPB*3CYi(Zy1SFYhV0Tc?w6`f9JAqjBe#0f?! zmG0p)$KtA?Y}6n>g<#M$eb3L&?;6hkO@NjyTizr+`Rv%So&G literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/ccClone.png b/ConfigFiles/PointCloudProcess/images/ccClone.png new file mode 100644 index 0000000000000000000000000000000000000000..73ae23387c0212fbd7a6b35fa16f33e8680bb693 GIT binary patch literal 2049 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 BIw$}D literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/ccCloudMeshDistance.png b/ConfigFiles/PointCloudProcess/images/ccCloudMeshDistance.png new file mode 100644 index 0000000000000000000000000000000000000000..2f76717e263d6de8987eef4cf1b2d32cf92ca3d6 GIT binary patch literal 763 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 Tj?Fg@00000NkvXXu0mjfz3QLa literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/ccDelete.png b/ConfigFiles/PointCloudProcess/images/ccDelete.png new file mode 100644 index 0000000000000000000000000000000000000000..cd599e209910ad82bcf363410c2571b2185f8e5e GIT binary patch literal 544 zcmV+*0^j|KP)=xvLNT>DDc)mJ##&0}Yg*@XW4%&B?|WGQqF{P#zHaPy|vCtImUBi-fLRkrJVnigx;;C)|`y*dvnHPQr4xE|CEf* zduz2KqNM-;00DGTPE!Ct=GbNc00AsXL_t(|0o9O$vV<`VMpGMW+q{1NM_Z$de|&X@ zne(Md3O_`YvXp~63UFb#{H!|8*&hU9Z=|6cQgARWGlB>RY{D&nJl}q&MMG zt{BVLYPID#;RafIdGnxQRa>i_-k3FPl@0EeE-|Jn6=B@&Jz>+W8VZrG$#sYFk7T$lzn2D5DW%k?U)#H5+F7cdaQ>c^^U|gWZqhC;^7~UUPK%C;$y`PkYDB>RMnQ>I)?(PSsLQsrP z%QZ1V5>gzebm!x_ju_!rNQiSv8R@}=0qJyHy1|sr2?@!cvrcP literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/ccDeleteSF.png b/ConfigFiles/PointCloudProcess/images/ccDeleteSF.png new file mode 100644 index 0000000000000000000000000000000000000000..5c99a51bf93fc4035e82c75b7e97c4e9fefd7056 GIT binary patch literal 484 zcmV~KcX{hDGwMV~f_``Cglg_Z8SGauz`eHXp=9!P5b%O1?!aO9stWb6BF4hG z@ZVkf-VEUAVc_ox;O!!_(r=c^D22RzMx!}cs!eI4m=}0wE`)VthQkj@uqRr!ZfWHX zAMGYJ>oODNMk?i!W7b^_&uk^ptY6892f30Uz6nyPHvj+t0d!JMQvg8b*k%9#0M$uE zK~#7Fjm|})o*@i{;pYH#*U>+_+vw`Mk-EDJ@KJYtXGxBP|0i6CTm-drpfMx%*>W%r zyq#q;8@)xNCdSQu?I>+ybt`JS>OIhlP&lYOgy&h085mepz9=dCSo zckcAER8wKwwkhYi-b-I=r+m)cxa09||G~XOhwxR4qt|&8mr)pFOvN5?$Ji%6e}*?N zcd=>ft9G!gJ2*nVZIwIHRwYM#{a4;@vJ%`yvBBN}fb*8cqNklApzwB_Lz_pR>OHE6EXtUOtH>eZ>=e}79YmI8`6Y<2+J`Rng5 z+)jc4^Y!LTvzSB{ia@voG#q+<2*^!8ln(R;(0IZcfQ|+_@9Mj&K*1T;W-Pz6JmYW% z|9pPz8qT~v17t6}x$yg+?-uJV#21M}Q0%@~>>2`h1}ZF50Qws_;>u5!>#f$qqT%V+ zr)KNTc0S$-SBlTmz@WVG;YQMdB%t);FOQKmY7(Z|g2qd#a=F;0sPMe)nmaCxY hS$l6S%WM{)8UTTbYRkZ`@^kZ>6Hvugj(5)~n^Mnc|$W*_XdaNJwZ2 zv?mzl5mcWjj!b~RDD2+{^^XnjP!{JMTFefDM<78oAu-Up(Y?sk7Gmg;00001bW%=J z06^y0W&i*Hqe(p zSw-uUBUc*LEjH(Y?{>waBG>JCE=OGPcHR4B$rUkLhPD@NH+}!{CB{k#X}di=NUyvb z<&1O6G>mfG`!Ecn`P}pFKIzE~Pq^p)@0g=di@HEfhzNF6UED01qc!#vt~9q+f+Ea; nK+7MN`m2Xe+d;5Uc!6UD@l_GlMTACR00000NkvXXu0mjftN))P literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/ccFullScreen.png b/ConfigFiles/PointCloudProcess/images/ccFullScreen.png new file mode 100644 index 0000000000000000000000000000000000000000..9517dca11d84c4edbf16ce6bc8f329377c751a1f GIT binary patch literal 198 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE0wix1Z>k4Uk|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5XGCW-zLn;{GUfn6$;K0EU=(Rz`daH`{rw;X^Z)K$?{wp`_ z_-$>xoM%Era6;$Y)xsNE*gPs2TG$<+1WV(MHBJv$9x@8ZF+d3+xeqSyySIqhtg`(4 iBK=1Z!~P<<0>+Or)&gPEBV>VgGI+ZBxvXx)H7SX_%fCKJSIFS07^cBfiFv~{zuCAv@ z&ABP)hhIr|QkQuZ^{2;3uSv9|0+D1*b9h7O9jR_-E!KOjbG=ugqnb_;?eYc!+0b;C zNEi3&PZD>UzSBjR)4vtS92P(Jo#F{5m7rESkVZ*qF=f;t4>h&b#!9Cs%4H`Pb#ZWTkd6$YzrP<&F4~;Q z#dN_?ADDVVVjPBthY56bbs;f19-5O(kS1?S9upe{(TDqgHIjC_6&)QNsI9Aoi<`b8 ztI{jJkPz|@bAS3hI=Wmcq@$ z8JsTm;lN-*xZ-fwk)555yu7?EXif?=O*^|+pFGj4UAkG>St1)7=|6uDmn_Gp&AWa@+)S>QH-Hm*7;2-FV{QP`EI7tKl z#a4qLot}}tCHM97GCroVEZ@|fispbc#epKDb!WiaI}o-Tdj*0!{?(D{V%b8YbBme)7bqpG?R3~t== m$B4IJ0<_8m`JjP|*yzaad^p0000Eakt z!I=ERUy|Xa{f08#pTDNBk6XTab+t6liHrPK!~{fqCjJf%4rXuvcPsVpquPA}Ce>e+ zioO`Ar>U{}+MU3Q=26&6W9ky1cLGF+r34fTKxo1pJvOaa< z;`ubGg8>B$Etg)iE&X@*=urWdGnq?X-#_+YK4Vvd8&B!q1AqF~&G$YpmBAvwD9NLk zB_JYqFeLOSgNp(iGc$|ptQkw17!6J`c+XXK?`!ySUrm;w)aeluLoVZ6o*xZ;pMZX0 N@O1TaS?83{1OQ4!Xp;Z{ literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/ccInteractiveTransformation.png b/ConfigFiles/PointCloudProcess/images/ccInteractiveTransformation.png new file mode 100644 index 0000000000000000000000000000000000000000..a4a289bfe24f7c94cea8278092de7860254034bd GIT binary patch literal 165 zcmeAS@N?(olHy`uVBq!ia0vp^q9Dw|3?!p1cPs@``~f~8uKyYSH!v_9V_-PPV0ex} zvpzlqB*j<~u&io3|-$+1EKSn<}L9!+7ge_;#AG##LY2od7hC!PC{x JWt~$(697HFGnfDX literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/ccLevel.png b/ConfigFiles/PointCloudProcess/images/ccLevel.png new file mode 100644 index 0000000000000000000000000000000000000000..67010083f37915210268b473e8928056a425260e GIT binary patch literal 651 zcmV;60(AX}P)kdg0006~NklI1%_7)y%-#0dwryK)*S2ljwrktAji^>~%J2WY*O0%Do+^n!a63Bu z6vACR!~`t(#Y8cu_=@!y@r#2^%A3kt>?Hv|gA0PC&Vk_Yw?YmgU78b&^#YC zET?{+bS|f!{siX;-x|h}1xQoZg;TIgu#5wVq zC-9+|4-ijxJ_%To(kf4SXRBd6#C_b(uM)My8?L|?>OqL0KF^xBCUtNg{9)!j+$4Zs zAx&bw_(JR#?>i$<&K3QYgl<1Qo?FMbhkLN{3wFCWFWzue1ABYvb{R9^%d) z2h=;h3tXmzpAbc2xA;bERwI7Mfn+FeoA<=`wAT6|V6Sf8$aCB#b@miBN7Qok606l0 z#24QMiue`ncvycfx_@>9Z@_Vvc^ywvWKVIwEb)xGUG%di@SCb}TK7Qs$c$$0fVk7V zQMsE!=N-8Jw?8J?ta&MTYH}NAz*;L{5zmv4f)6BflurVdC3aHpu+<2j!CTbEN0L!| zVBV3?-BvSTF;5{;d{1=Z3FE2gftFRgN+DYOP@D6*2MtGgo;E1>MY4m>c!y3X_(`&W l&uK*!NP4q?Dv|szd<&`0!6mUF0$~6E002ovPDHLkV1hkZK4|~| literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/ccLightParams.png b/ConfigFiles/PointCloudProcess/images/ccLightParams.png new file mode 100644 index 0000000000000000000000000000000000000000..2e63dff65a43cd9021d77a8df0677463ddaba771 GIT binary patch literal 331 zcmV-R0kr;!P))CfR8K>z=L|NnIV|DXT=lt>#b|Nndc|G)qL zse4->|Nqqg|KCthQ2+n`pNAM+TwMSEaZe;G=;8*XjuuNFEVrc+|Nm`bJSLKO8nK=e zr-#E&00001bW%=J06^y0W&i*HjY&j7RCocM$^{ODKo9`IS)4K49sd8v+t|5RywmWH zZ9k5EyKVEb_RQQb^L3qiPKhYx=_(E*lZuGaI9zJcr)sjyERNPd|%BsYhn#8GMmSL`O0vC~;MNlb%Yf+3u7~e$855h3;;g0KBF5EK~eEB*S dJTeCUaROd12k$*>m|g$?002ovPDHLkV1hY_m-+wz literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/ccMerge.png b/ConfigFiles/PointCloudProcess/images/ccMerge.png new file mode 100644 index 0000000000000000000000000000000000000000..dd26c4e2a08ffca45fc17714ada929f3583b9140 GIT binary patch literal 292 zcmeAS@N?(olHy`uVBq!ia0vp^q9Dw{1SHi;jSd1Swvr&fU?2?ydCS-*0x9+qPhVH| z>s+$J%wn&$zRCv*aTa()7Bet#3xP1>rMq>1fPx!6T^vIy7>{1olxuR3U@ds}MXI-j zQ_6D|=Oi=X-nPys>(oE6#J%14{(KX|$7}v6ut2)zTGhAj!H@md)>r*sey;w|Ki@n5 hU;fYk_5c3AiUn-q5mEErhXEbW;OXk;vd$@?2>@R&aLfPz literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/ccMinus.png b/ConfigFiles/PointCloudProcess/images/ccMinus.png new file mode 100644 index 0000000000000000000000000000000000000000..d66a86ea6bdf675db69ba7db5b7070ecbc6ea75f GIT binary patch literal 256 zcmV+b0ssDqP)zqk$dZ_N9P5ubvW!F;;ck`1(LYCLJz=ff$OTxj!gAI4Tj{wKDQ*YuFmQVT!E{% zYW3Q(q=YA*TGIKMc)P%jS-nw~!Ja04ZpkG1gZcgkO1(44@HIb>zwBR*9(*ZE_b!95zOG@6$pG<2}!LK?!bi*LJ0Srbcx|8ZQXSM00002XE8> literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/ccOpen.png b/ConfigFiles/PointCloudProcess/images/ccOpen.png new file mode 100644 index 0000000000000000000000000000000000000000..46d2796b1b5587fc4cdcd5cc10a49bb22bc71fea GIT binary patch literal 1933 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 literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/ccPencil.png b/ConfigFiles/PointCloudProcess/images/ccPencil.png new file mode 100644 index 0000000000000000000000000000000000000000..16b6008eaadc1219d81804672d243c470ffc3280 GIT binary patch literal 623 zcmV-#0+9WQP)0;i>9&En`fie zGy}CpDPY_u(KePAqg)Kc4WU1C2vuHnV^tcFw4DTtZ*UlFU7azOH;#>k4Yb9zBipiY zyjj!;9Lns+&q2_N- z2ELobPYqsk4rovT7P^3(8_+a!gRY?k9{=_SWHeM6_(75siG@PE2grT|xCsKD+)&iD zfr7d=o%mydivsTAfR6}5WPhR^CrJ=o0$wr)nS^^wz(eK`g}C-hT$MTaa@sMVk!kqx z7kDo-KRMm_i$5HVUpw>v?eybs@wa$|&MyQ%!xa2o+uy$UqbKP;(CZG&bpTlpX~P*~ z4^#bNbgR!7*j~g&tp(uB54eiag1=*Q|FdHQ8UJ9X%?j%s{#Yv0#b)v?z)J+46yuDs zPwV it}k9+3tT#dnPHQt;(hkk7dL?_89ZJ6T-G@yGywqU+9?wN literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/ccPickCenterAuto.png b/ConfigFiles/PointCloudProcess/images/ccPickCenterAuto.png new file mode 100644 index 0000000000000000000000000000000000000000..4ced3100ffb3f9b73b1a2f2cf892c41da5beef08 GIT binary patch literal 396 zcmeAS@N?(olHy`uVBq!ia0vp^q9Dw{1|(OCFP#RY7>k44ofy`glX(f`u%tWsIx;Y9 z?C1WI$O`0h7I;J!Gca(y0%690Gw=5S1=&kHeO=jauyXK=nbyr(x&+Yljj>U!&{pHJBz+Ou^! z7b*$3Gk??;kk4{sIuj7AFs*shb>@#eI&J@2rLx#W%bU9FSstZnRI3TZH%P8xKhi!i zW`jug!v71~w49EXHp~z{mDju~lJQ7>V%s^^N2LMZ)K)A}2yx~RU_Z#~8ZnI_^gmli z_QE%<3daxf^fGF@JeV5r(KO&+sm5D&(fv$M)fo%<1nQeVy=U5JTa;4BXlOo7M3HG} i^qU#*4)=0PpzT03H#NVH=~-4-x^wOT=>x*J5%|M>Pd}Dp=E0MC0KG z!q3Ci-N)S4nMC5$^CjR0OJp83(F4dJY{ajMN+J~!dLoYyiRV#r+XTTqxR(;)$7E@E zk$_Bf^!&o{ONOgDeey{kZ{FMy0=U7naEjjalkolGLbV#C0bj);nfW3CHAF7kk&9%c zY2kg5HuaR9lpERissb2D80r1kP4^)psU7>UQ08KZta*_D7m>`ztXuNf({I=|aTN$} z+){_k%eY=7z=8Y7!eUu&o_EWA-4rRp zK|Ub0{_rn1xAXqE%`HMgGunU zT|=vErLA@VxAHYq63W8o%0r1L6Q$C&h?JKSQ)Wsn+%jcXdH^-4F4d;5)u=iR0ModN z)wcRp3JLKp#@a06Z? zjv>=Oa0n<3aSX900lCnd#W6%fwRaBPA&wzEcyVu_9LL!ax(YHuD#!)NARDBEe2|dv z0OW+EkQLHGUPug?AvH$t#ak&Ejj|E6ie6=vi-yrLT1L;Z%0}bpoaEEH-cm|52`BL+ zpuSH?iK)+tDq$tA1lHedK+C6pFq!_*?EiH925lIWmuv#K`v3p{07*qoM6N<$f|eTn AU;qFB literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/ccPivotOff.png b/ConfigFiles/PointCloudProcess/images/ccPivotOff.png new file mode 100644 index 0000000000000000000000000000000000000000..9e3df37e966ea80d777aad6233124ecb427a1228 GIT binary patch literal 1024 zcmV+b1poVqP){4o4Gvq z-nR>_^?))&1pp2qR!D0kmbShZ09b`=!6TSLX(J|WjXrDN2mq{&&8mb*!P3fSX|&PD z7;Ene0Bi?~QSpa?>be~m1&tt|Ld$ee-P9eU{zx~f4<-~>FsDZXpkWnah1`g1@IXVg z;Z~-J-**~#=c<9-+Qbg6S`)GEnn#|w*r{VhoV7~=pb;*(1vB9s%GcCG&HP4eXT~`3 z*>6dB_j);-;LUp`{@88eOG^S4YY;2Da&j$+qZFKwF?eLWNwxBN##?bC`=|e^@0at3j}@2=C^0 zp_a`XZy$Ew>QvDyF6XfTw(ATjVr%DYHX%b$(U*~T-wDMU^fij8#WHPgPe5|x>Mi`e zKdHJjaoPVSCl9p3c1~y{{tt71HA)*BS$GO;)yeG%C==58J$S1Qc5ZpB5>}k65anI| zCj$+KygwDr$56pijy5@4x@@tmJpt81EZ1z^{=8=Pf{)crV3c?9_m_=ve*X6KoNwNp z;wJn~n|B;@XMYT3eU2KQhkp?=Om%w#D)AU8a<4+y#(VDD&S2iq>fQYN4<;JFf9zKK zzOEpO-)Zv}!Q9)yP_BDCD+;mmaf%42Y)?Qs{@m#1%ko~u!c+|y-cxZ}HazlkfjaYd zGU0bc8-3pKtnuDLr1Is)yBFNpt=;$umxPu`xf9} zRE&(#F+xkn&?p;eqaC<)kD-!K79J}PC8A7}%G4rKUP?@vDYcq1W!Jd?YEoUQP0!V+ zIt^e(SFzew-)dZ)=g-%v`R*zP3Sj|`f)StqO9%-xoiMVQ0m~!-7?2f=04|{GhLI~| z`T+|8rG;aNwIzbw76h*$8JZy)s;xP67mgu4e|~(m6+1VfT|p*D1-T#@WP@~&4-!H~ zNQng|DP)DTkQWj|W=Kso{eF^?(Wt?Z5HA5Ch;dw4cWyfR=E7`3Ke0;i^dVjUdcf=N-#KPuFk8MM+ghn7XJ4tV2 zbmUIhhH~VxYZ>hGG|zX$7N5i-5O9a+V6L+O20Au)bdOvBgObGLgcra~$>zApC@7I9Hu+X9)ga9epO5oMxOjuw&f zQew(Xsd-GvDZ8~Fkg7|y>Ao6Or)o9MyQ^4jt8X=~&ON5y>zZG#VxRzwIJYnY6kw?> z0B9Cr1XO?}NdN|94U7P;2Hi4@oFNlBArwj*978PBLN4?|Fcd>FG(&WaYRGPJ4C&Ag z@ld}@NXP?;AQPm5T#yX1K|06>2_Yk-#6Kn}WQDYl7ZO8eNDa9mIfs;tM$su+MX$!n zMZ@SAEu&{+WutL)j@Hq;%Th`-2`BL+pfmVQ2rF?Vu-@~0Ex*1ndBD=_UmX`lCmOY6 SrlmFj0000!Ry z<)=Qow!(eD>k|z?zz%5v$N)&8AfDoY6bB`Nh$JL-Vv<-ki8Jv42_)XKDiI0W=12nU zUiP*PaHIi%q$=5RLm~hsJPNYu4kQkgBqy%eM^^&?MkPc-g`?^N-n`sE+uab``O}(w zfb}(Z5;hMNm_&t*Z6B%+Jbvlo0^vG}k+>{v=Q=l}0c@xO+fli>^07-7zA0(gqZS+S z{`2>L{^JN>W8EK3&kg62uopv#shNQopb9oUo(jF8$AHJ!gBpp|UwRohH)4}>GxJ4^ zfr7oAb|FmIG^&}oVPEg7$nOEp0u(@+PXFmj_Gv^~yUu~$S9-S(5O60$h%p6B)RGd= zP5?V20$9Z+lXW3G>;`Ck{p$~XHVJzXikVqir6M-e*5_1fKZjuULK1G4cLI#3xOQXR zw}S?X0D^xz8?k%ix^z7=yEFhQFhsTbbF=!3Ul<17*0=`rKi@HcdpxCg0K@@#=;d?w z3}fD!T^Rjs9$5K>T3_i0UVL!*mC5diV2B|GQU!pjViT*5U@;1bFrl#<(7E5bPilJ2~nm2q;wv@Q2~( zcEx1Vj_p8Vt065NK@%h(P$;Sjkg7~byf*PpDDmFP&;8}Tt+IF?YRVB;IU*4`tLB|{{#l3b^|gT z=u6oh6W}1;-a{y$^!=#Yt$30p`V(;*o?LrN-We_}^kd)@5y0DQ1xy02+Sr!|m<(!g zMl?V79&Dfp2j+*a54`p+5V!;a9yN45#08j4lO@1`XE?4Mc1K^J(k|5XMyQS8K!0NQ z6V8p{R2z=!C2)@lC>=->{p^1G;y_nQ)WAXHWT1t(fL%-N5rKF+IQBq*A3`%CDeE)= z4&t93n(nd7Zh-*rJL+mJfCH_z`>Dw)Lt1LI9rpeJc8qw-wE%T60iPWX5_MDn9WWWx z&`KFOnU}!T6OfU+3a-6|_&^_iXB>Mta54cVQymg$q>Os@r2*9PO#laa^soDANs190 zNPU6A4PdtcR}K3+pjOZl$bA7l@n#%RA!jB7&SU_4I1t=baP11(hyed9Lhnq#9t_;S nJuo4=?Jd^{sV1Lg^^@xzq6mYCM@csN00000NkvXXu0mjfYd6jy literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/ccPointPicking.png b/ConfigFiles/PointCloudProcess/images/ccPointPicking.png new file mode 100644 index 0000000000000000000000000000000000000000..06cd3438bbea0d37614a6e61fbb95439cab3d533 GIT binary patch literal 1167 zcmV;A1aSL_P)+ifv~ZUj0SZ1f^ zZh0spZyN#FsAHzAEJon=jxGUg)J>&;l?eL%FaHQ&qi!k%tVYlufBjbg8+B7I;HTeB zVEP37@`o8rod9iGo=;lNmOJ>=n>ncK=RZsYV51Ig=rb9yXQkzAzA!y^YvtYdJxu?Y zEcEN27W(~fn*cWI(1t$fi!l=wd^S70k7sGO6_rp~Wi6R)rS#Xoh4iNcHtNuZKIn@v z7(4En8?rWD0*7T4)f}XZ{xTKOLytd4C!KyiZQFAc2)m=Ri=0juIbAM7UyQ-najis5 zf;NbkwCdMC{vi|3@cWrAvPnM!`AppUXwV97_TM84#_(>ud0|WpF02m7&W8I2He5x&9e)|*IiYw^x zr(YyK;qP;OtbFz6OUGaV6NKO>_;s-WyTd{70be6dEGm~@eG?UxRtZi$>q3f4)}M*s zgY4^S1UA_!6%lS~YisZ4w{HSNVu9LzR8-edNqMzk``%;Z9~71*XO1$U09#27_+NzE zO&*V@pKmpRA+g{J4ap7`5F8er3e`giD64Ah0cFRo{Xzs#{iz9TCGYJk11-~~SKUaJ z)%AkY&$*aV^w}p2C!o5%MWtsY>gyXok8i~E3cxZ%GDap-A=j9_spN;Bf2Zo&272zr z*Knd=8Ey+2n>+gKes0WD(a6bqHHK z9Rs0?@RhL^4|hEmt@ZIw<7-s=kI706jV)ACRv|?2Gy5E`&T(COejtGT;m4m@5un@Q z9t>5)+z~xQj8C#I^UjRCt&Un=fu`m*@d@_!yC2ed7hOra4io@kcXxLS=Lj$9m1K7A~!tnqF_5B#B2<-K8CMHRfelIV5-JSP7M1THm zqPF%<6&B*`C*Z=1FLB|wwY8OkLLweuKiTpS8klfq(MY!fA|h6-TDyg>;)}Q)S6_cC zRzd*#_dovXRs|e5bljehtSM`5ZXuM-TXwdwk0|AkFJtD8I4w)HK1?)|hP&L=We46z zWusR>?)uGkIoqrqJNI>??$1B}qR`OjqvQQhnJt9`BWSnX0lWfIAs~O_=61IAOaPWy zr%SISSu{GM4e!W=eUu{i11TT|0%UL>xxC8*gTpVr@WM-6-c|4k3`IVfIUxdM-uDU! zm-s4sy8v}*nYkS#OG1+7SF}%v0JqyMfGqy-;9&YU?j69m$LbXr;( zP{tSt7#M(}4_2{L1MM3}o literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/ccRegister.png b/ConfigFiles/PointCloudProcess/images/ccRegister.png new file mode 100644 index 0000000000000000000000000000000000000000..27b54b77af6d0673320d0a25f119cf932480b467 GIT binary patch literal 464 zcmV;>0WbcEP)ZV#zI>8s7Bdxmt|W_x@Kv(ZFPK5lJ}3YH00DGTPE!Ct=GbNc007WQL_t(|UWL)cZUjLLMbUn? ziyL7u%*_1%KNeL+&Zswumq%A}LGkZ=HeXwqZR}lQGmalq?M3<+qlEG82WOeXQ?}Sd zi6Sqm(o2}nAA^JtL^5Vx%jK1Gi|dvo&&04qZR}ACH5;z^`8Fs6B z&vhNaRVfi`YlzChEbAe0RS&AI1FXHE&H;R{T9~r*ez96wBHG@qCBS-st$$U`F`Tz0 zGoCZ5wz(?-*4NP(Ou)lbcPKH@U7@NmHv6Y@4l-wd{M9#R`wXe+3I!Vg0000|+rZQH$n=bqlw)*yG2e5pGBId%S$ zhpMV|Mpncm*(RRC_?N4icJ11E$%-&W1EJ?L8CVpt6%16_CXI4c({JG)pK3MWp=EB> z`!1UuFc>~RVlezXabn&JhkiE1Y1)7d((_hDh_lT7_YHR&u_|J!Y!?%>xrcSW_^Z_} z=4(e|i+29{>uYN>gU_re4!^r0HK@i_GqmtxM;;FxqMhwWiLX`=?`|9bG3U#eUg z3>#e*yFJ`To!L6=4tonaG;t5^{6(wsd${%n4sZ2~q35g?DFe1f`YhdNG=8J&eHMs* z{ggjGaA-DQmh_5~?>Vsc8l`ruPH**sHg53oc^>=qtgRQKwR)>v+Vk}5+l1ao+_NY( zX{-+I4{*_<2)T7S@j~fa)StB2#E~9cqj5k*qLMT>Us0;SSKMf^3xTfd=nc}-Q+@`6 zGBZUEmSLjVS-C7L$ITF=?tB z3?U(g7Q6{6Y3>D1Qoew+|0v$V8LR*=f?*Vo&<)0uVB{YN+HaIQrEApW7U`d`29(dH zc(iWNl!QY-0xvSnk|{TpGhRu$j}wFX6gSfiB1q8L1iq!>O40^#1~W-dVhqlLiS&jy zfr0&||APmN$!5}jr?@X?FopC?#(<@nUdt{D0CTC}K6n{qQ9O<_SVVd-V{jGhrTI1R z7HhyRUPVQIAeiRcnY<@BOZvA?-e4)kk{0Xt`~lNoF%_7=Yv86HQ$CjB)4t<7&%gk}a%W~c0tFdM zg8YIR9G=}s19EIUT^vIyZq4m=2r#xtRy2x$iR~M-@u}^N@d!xHC vUHhZj+Oy12%Qin#`FiHO^+b`h4fkcT-53hh(|S^X<}i4=`njxgN@xNA^tm?~ literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/ccSamplePoints.png b/ConfigFiles/PointCloudProcess/images/ccSamplePoints.png new file mode 100644 index 0000000000000000000000000000000000000000..7c6e5df769a7ea977d6e7f9f39a5e338d582ff36 GIT binary patch literal 988 zcmV<210(#2P)`>wFIZQI`Qj&0kFoz8?4H?pylO=s4zugrVB z_U@}MXneo-em}>`Mpd9Wb`5aVB56*GEGyic2vUdSCGZU z^cLr1zaN5oB&MtQ&9cT8TQD&wx11*_kFt<6V$;iLW2qkdom_1(3mN4=pML(i-hayz z&$wb~w!xQ0Rj(V8Zf2pI+0U}QU-;N>VyTZ!DJ{W-E1L4gGmcRF=imPrVsf3)v>FeT zbI^5t!ZkGQIwtanH53g~iaqcv=*m+9Jz47n-Ga_NvGl2|9Pw4NJC@-i`qt4&{oPoX z#B_K}wv(bc2+-FJYafksdxw_}lu0>zN4PGF7d+8v_y6aMBS?gMrAcE-;;7AYXm^ z-I?41Fc4E9Ue1Is3-pC5$K>=qe@nk`I|l>o7?fykMY5{uI!Lrf5ukW55QbC%dvLk? z*0E99F@fQ@(0GWA%CyFN{SSx^L3+TBNd?2~U%g}ZrHY#SRTR}X)1=D#5yJ}Gh7s8o zHg=!YeIl<9e+&1|?j4n#lb8v_rdqyk=6VQJf!&Q6f{B0UEhuSfHQ$YAla(tcm1`Kt zBX$l5iS>87ubrT%3zYWzD1z+*5KIy0000< KMNUMnLSTZzaMSYu literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/ccSave.png b/ConfigFiles/PointCloudProcess/images/ccSave.png new file mode 100644 index 0000000000000000000000000000000000000000..cda9bb18d75c008044e6fa8706e5b201f2637a92 GIT binary patch literal 1126 zcmV-s1eyDZP)l?EArV^4;va&xZ5v$;`~m49hsQ%uK`7FzHlQcS=LG)L;7gQbEM8AEC-Q27pyR zb<+ArH+`KYP6ShDX)eBf2AAJE3xFMmioEsAy#V73u&{kME2hi_EIZft@c5&fs09{$ zaW>oLD%N~ApYv~fn1Hbcv0&m*wO1S6br7_`6wlvf9pdG^>s~dz&+$C;Eh~& z-Bo0xoKoYcAfE>uM}uX530eu(f{rp0FiOyoAOczobxDFnKrE0N!&9W$=CrUXkASJT3WZJ5$B9!40Vo4uEH2%14cu!1cf3D6)GHpL8rq7 ze_iW2n5qFS*&{HO2egj3<(4ZrB7CkYWj9TD+T ziM=v{kUR)p!*ePc2_II{WQ@Q_8kMBFyk#5KC?B;r+9XC24bB*`#=2{w6t-MO3PmWC zV7Q1K8b+Mru32|Y>n5M5U@1Ax+yP@EpX!W;m^*H|grkC1>5fceLM-bXsEk0eM-b~M zEaAzsa~NZ&1x{ zfHs*42*%IIvbVSFIcmGAkkE{99|3E<5D=EvkJf9HVZb$a6a*Qy&7-SUww{Qv^PU6^ zZ&|^n=EBd)WQ{;;@hMnfaGz*5db42BNPgSz%N=lD_<^Nv(EwpSeVz;Oce_k zE@biI#lC^Hmg}#-o?C9Yg`91O%hf6sAs_Mis5Ct<0W1n>lmlc($~( za13y@ruv$(2A%mM(qN2Wtv3^vDWA`iBuR+a>runk@ ztH{?z@Cj!c2&a~&X3(k{y+vj1fV&w?%$hrgT4AQEr4@7@*hTk&J(&r3T42`HI_RM$ znC)t9-?5YSrT?*M)#Ba2CleZoL{OC-h!qUaJ)Nob@bnAw5hjKO#E$;+Mivr*98fI7 zu6_GxTlOz4fB&+3d&lYpz)KSv`1bu**|26+DC{x8PgWR>(0?+6-c)(_!R?!U^JUAH s9iGU*C;#u{=G8Rqjv*{ZfYIJD0C@pT2s=Gke*gdg07*qoM6N<$g1Sin*8l(j literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/ccSaveProject.png b/ConfigFiles/PointCloudProcess/images/ccSaveProject.png new file mode 100644 index 0000000000000000000000000000000000000000..0d03911a6cf635f35aed3313933567cb294dbb09 GIT binary patch literal 1743 zcmV;=1~B=FP)0000WV@Og>004&z004{+008|_004nN004b<008Nb002DY000@yA+B6X0002p zX+uL$Nkc;*P;zf(X>4Tx04UF6U|@W}00c}xoSRot6y)xt5D^)rz7n#7=^+RY2?_paX$y z6Oj6J2-^e1PJ*ywK;@n^0pvG`wVwmQZe|oalU!O<26YP~ z<3$DrLVSc7`STeVEWR)>Fi${;B~4{u*xts#AaNTZrm~QMfxnf3VcXS`)QS>h&qLe> z25k8Sz|d!)CSYIy0B?3VJhhv{lK=n!32;bRa{vGi!vFvd!vV){sAK>D1zbr)K~z{r z#a2si8&wqk#xu6ZV>^B}&a_TMqL#L46NgsG6ogc$8nP-#tk@y7NU&hnCBLCrAVKLO z5{puGS%Co2KqXp~(ol&irbQ&3LhZJB#~H_Odt%NVPy9%o7b5B>9pAa<-h1Y|=brD5 zxpKLT7YU2mzA#iXFrd78p(W5Z$a5U>86CN_j@4CTXxp&Rc0?x+yTn7MxXHzt(eXRC z&zr+dQ6+Hlt#>9)fAmF<(_zEp&1HDf(A;;)yYV>iCult4ob@H_|J z!od}^Lwyv38lQnWzYH~%hpO{XZ7!(pAXHx)RF@yBAVDp1P?K4xvrAB8&y2O+P&)$Q zgS0&}@Fu7dpreN%SYRa+h=?+949Y7

*%ZiOw*TkPk|W2*nO4dR@@5`n(OALxSdRf#&f-bGf0} z9ndURXgX+~j%CV}mB_OgHj2SwZiQ+Myng!aiR15o+GC>{NY3Q(@f#}!t8?eh4)3Nq z1Y-t)v9&Sg<}vsKUc>3|v<{y9;Pd}m9p=b-0ydU93nXItWF~>Kl}E9(im7KQ80sjL zaArs|SL_UzZtTJ0UkiphSj;ulYJiNroRJ8(i->f0qVGV5F}9oPXedHPz)r;z@(Xw{ z4?Ip%C6j+Q)lo-)GhS}9Sumeo#aOI>(W#t4U^ms#Bm)-YR~9h$&wWfkyvIhW3)wDY zxfOD25OUB5+2?`maYJ@GAv+voB4mkLw+phD{C=9V#}7FaB=U5;W{fQfEKNVc@n9Z@ zr9{Qg2-K;=Fdtb<3j!`D0!|45A`q~Pm6r9HpU4G>WWevG<6{IWBk&8b;kOJFK@OrADcV&xJYZu6oal~R)j|M3K}v{(W(W$px^YaW#)Nx zOsjRq`iAfK+SrK?861Nqdvc?28Q0A+wGm0dP|mxFyh5ZKqzK%ib7UBawk2W$&C zbD@D&En2a-yxe?p=*~0XcFDN zP1GUc{{3a#934d_lY!Uk#n8|Y!r^_CVjCTwm9B2y*k!3yLO!2IE|@eULA@4aAhR=?N=kwZ!V8SH&Ta%zOg=^54x^nX=%yuZw7aZyJ-fh z1b!PIKRewmRTD_P-Vm4mZ^%8xiD%ci*X6ooVd=#CBju@?9Zim(7fkkqIqjCE0 zg)$i@y1wP2L>)!?c!jmR5U&R6`W4QFO~|0tJFyn lfr@u40=tcEsbKd2{0qCEXFXGSfo1>z002ovPDHLkV1l;(9LoRz literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/ccSegment.png b/ConfigFiles/PointCloudProcess/images/ccSegment.png new file mode 100644 index 0000000000000000000000000000000000000000..69faec7854c8bb44cc99954356ff0af2eb3b08ee GIT binary patch literal 259 zcmeAS@N?(olHy`uVBq!ia0vp^q9Dw{3?%2B3|#`GVgr0aT>t+0?dIraXJ;2;9a5lO z;B4#cr0ry-W#ysg!NeR7ar6cjeS>tx^#YBW$vMk+hjA}O>CPe{#fqu1)c2w9GVdg>t41O zK3d0O6ufg+=Ffz=`Ufmkas?*EC@z_xcw~YCOX3mxIgEdGm|0Hv-vfD$!PC{xWt~$( F69BkPWsU#< literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/ccSfArithmetic.png b/ConfigFiles/PointCloudProcess/images/ccSfArithmetic.png new file mode 100644 index 0000000000000000000000000000000000000000..3ae7d889a6ad91ecf3bdc1f106a53d22909d91fc GIT binary patch literal 322 zcmV-I0lof-P)C(4w^l>_fuh2;xyLPctM|W2zi=(UH&_$0B^UFiQT%ktp+K6##}0tc?tZ4KsmroQj#@%2*$4qR)4VHoJ^ z`&R|dQ3H%d?;k$~{Z;<90>^A{V>SRU_qU`SIMxQ!G~ohYt$ycR%m$z=ORSW}alDG} zo}a+xZAbPQMG-em!&OzOz=11uy9w&LrZi3QS6eLJ@f*0V3y|Al{S9#0wk_p(j@%Z* z(I;>m2Ozh_#}nWJbX`Y9Q9!cB;_bE&h9R$O<1EWm;J}qSk{}3zc!f{$H+Xgi0KGQn U)uis~X#fBK07*qoM6N<$g28c-N3Ale9GEnwj}w@nYV4Jf7ywn_swaAqsv` zRz`qdxw%g+TzGut%FluVdX#5&JHP&MZC)YbYu2B4W!UPJS z*Z-K^ug^=R(%ZLhuRgsSrG3z)27NtMaV`iyx_Oi2u!PByof#wh6B96e*NS4@o(3y3(kLje*WRZhkd@R4?5SdIMdj_u-iNE{?esi zb?bf}JUH0r=H_0#de!IYV@|=j5(IgA&vfR$w{9Km2M!$QX4{+tYj|JMyG!>pLVP}2 z{Wj?`9FlX)F=j6B%leEFr@P&8`tAZuvoeQlMWxr9(@A<24+GyT{xm`u=|Ze-ZJ znLc!zH($PdIRXFoFQigf=Yj%rd<0AeLjs=ud+Qbk)xe*mJ$)Qo1Q~EYY42T%PrzDW zJRlSZ{;#>Yxvj13`t|Dw{a&H5B6cw#WbG;vW&}YoaiS$9B0v=HB2pp(LU|%00RaI% uK0aPvUYeSkb#--M{bYeHTejQ==U)ID)~|$vLeK920000f&1Ti{9y-?TCF0t*GEo|mmKc31)0c(QCm()Y7$19Ul;F^7LU_N+{t~^) z#x`jl$HlLNahvu@?%w)&9^CC!LC5F9anBYna{15c z$dw84$GJ|1VFR^a-0U`FdHV z0uQ9?@}H0`bHPoqSq0)`cw$=69tgbj`82-a)!bFN>CH^;>>Cn{T>l4KuKr&B+)AEjQf&B60;54s+iqzjtyaA%J8Zov8T2}VcIQor4C+|jK; z5eU@Nk^5{zx`1Rgj@ozIz+NlR9JLcEbedIB9k~;-WiGhIE5Hk00X(z|Pu!KX8r6zy zv8k3WI%!v$<9Wd*7adNDt&Bu^^@s# z!b?BbqlY^iX&%S^ie9!o8L=$rd3=7E15UUpEICV@^o^J#2F4}=3w+!?;^2t9LH;qZ z8;E1G-Nz1>8*?&nZO-gscSJS2ek=syc(z+)AyYOFC)^a8lqr7z3z#(9*yZuE$LkY7 zGB#;OZ#mGzj5Lq6$XIR`PPpmc#0+uLGi(YfaKcT0$EWe=q?x;i#)1l*aI1+~`fm<; z@rK_4h4l3Z9&o~~^!t1?J2ywD;K>!j2{(Q7S2*{NnDDQLf2*JX7o2b_?M_$!wADsB zt%jH=D8L0L+)9_%`&NBR2YGxx+RSJmjar45Xw6@C6tdxftEs(<;3m{-U;OaLpV3KN z+tSHHrb!;1oaPC$bxlDgvf=nGGJ)Zwh4u2sU*GxGS3mWA{#yut`*#HY6c)RtAQRbe cz_ro)ALuv-_gl+Y-T(jq07*qoM6N<$f}v3;>;M1& literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/ccSunLight.png b/ConfigFiles/PointCloudProcess/images/ccSunLight.png new file mode 100644 index 0000000000000000000000000000000000000000..ec9309fe70ba01ada08c17672628c58f70b77042 GIT binary patch literal 1690 zcmV;L24(q)P)Qngq=iX96rWw6D54$~R5GqfFtevG3| zXN1;qOjTqYoHA|IqBDY2Y86_`gyPUfAU7Y}5Nk-9wz)JP_ulil_gwICR_#=lbnf=E%W$xHY{6FyC-MQ53dp6_uZ$IJ)P(#rGvrpX=h-x z;+AyD@ZlY#z3&QT$Ds9Q0K?q7ZX4CSz!*mb2N1|ZVAVwt-Gxc;=~bjhl3#_&ZDsA% zhXrjUkLqM&ZrTJYh?um~OssZ6E6ui3#98|x{l2{zAu`_?m)X{9x#ytc`>MD>&=k#ML*>Mn%(&EVEUtasVrUHGsmAtZ!Pn{m~PotOf``GNo8{*~eGId=OiS?2*VCv;B(ECKC?{K!6MG1O`~)tc3OfI~`*qwm#7LJ(fs#(+UK3yQzl{H;|oPCW1^g zN!udn4Y5*f1UjUG%rfEjMIrMbh(c(LF&N+p1wEF4$^oMP<23r_N7Rv<0y1LDVHykB zjK;N@bac_&G$ra=tT}6YO-TDbsQifj2UaW_#^Urog^K|(-i2Q0H1%57Ip_X8#oH1KuJK*S&6eS#sqj=Km$?%3708OE(sa|kq;mW!dUBw0+1L5k!vDR_dIeZ z-q1$!8q&@cU~N*AhpEWyKrG&>toUX~tcL3WLI5;rb|FYw{-D1YLVyYhOl$#9OhIYDvLLR! z?s;DH^ahJaUeH~@mw(}i$aL=K!GSe!e6X0pxsU)CWYwi2Z3+R?2}A&Y%ull+rQ4Pzn62~ zA9*0XmMUu>6*YAyC=vyH33vhiBjXhc47#k+rjLE%S!7Py_{&{CQAcmNflsb8|0e-2 z{cwa?YzD9sz%oQFQTTH7t3CY8RyGvN;Y)O9PaZ`BYVXMl8JgRccti zf#xmR0zZ2dd-8txayPs3QPpv0{J(F3h};VjPk<1kXc1spe&tnBsK0;hcjU{jz%6?W_5_^|vTVOQP^mk2tJJ#rm;!a==GtK2inrw}pMO!OR>v>_PTdyM$JYE*A77(& z+gg?#_h-FRkKKOW7Kms~3572b9j$56R>dZ5Bs#=<^GvhX5l>O)?2r!H&<~Ow+yd#&6J6D zK3MFX+VX9$_nDMGxVJ^Ry_L9FsJ3-G!iZU)xQ$iY`g?E=?9)FZf9SQj(&?GU%mNn+ z*>T^GRq7io+c&82%lD2;{%fX+D!a8=hHzH$x~Q`Ek_#Zd@Nb-Kd>4tvw-K*v$EC&} kZ82m%wMypOm*E2VHyOxp=d1m+jQ{`u07*qoM6N<$f`}_HAOHXW literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/ccSwapUpDown.png b/ConfigFiles/PointCloudProcess/images/ccSwapUpDown.png new file mode 100644 index 0000000000000000000000000000000000000000..5754c87639d5daf5c7fddce07983cb667da12905 GIT binary patch literal 1440 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 + + + + + + + + + image/svg+xml + + + + + + + + + + + + diff --git a/ConfigFiles/PointCloudProcess/images/ccUnstack.png b/ConfigFiles/PointCloudProcess/images/ccUnstack.png new file mode 100644 index 0000000000000000000000000000000000000000..b63cb3d5b7d818e5c5b8f5176d8aaf612b724d2c GIT binary patch literal 2785 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 VZM2phZj1l`002ovPDHLkV1mH;dOiRE literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/ccViewIso2.png b/ConfigFiles/PointCloudProcess/images/ccViewIso2.png new file mode 100644 index 0000000000000000000000000000000000000000..d970b240f229ad5128326d045b348180de5a881e GIT binary patch literal 1391 zcmV-#1(5oQP)FX6TmG0EcD(K)?@_UZA5z zM&C4_#kWQYWhFDKipu-iaG`uay3dM8j)f2a81NlM<5&?DTk$zFPWDd}>lP;cYD$g- zKOgCrAZ;Vy&f?jahadx$wO;@%M}C9+8u=mel-iYCNAB;$--{Rbur+xe;Ar-=eBlkP zA`jb}8ot(J(2Ftx9d4f+oT4n8QB}mG(~6?GHVarRa0Y;R$d{2FfI@5jcZ!=8u@(SI z&JRgZ;zD^n#rW8;2TNf&d8|Ut%(=Ivi;6>i1WD2voU&sj}1uoJ@0_x*PRCv02fEy7xzx}xqy#f z9FijK9Pc^D!@-yj05l+FrU#+5f~^lkuq_|t1UcTmG$d8Iy*?YbI6;I*p5v19%i|&DlXIDiR>Z)AoL^6t4?tn+ooX&L~Ss(=%39 zJH%E6030A?LqN!yc+mJ-(C>#h8Q;7*B295`Y=+F7rT1=Vmfu+%KOVG9w7=MvM*45t z#BeX;S)kKs#iMcp&fxciaJJ>6WIwyRB*2~y(FgHye0{Z0=bK})y~TSPu;sEwZZZJi z0VziULf0jNI>HX_(NSa!8WiCLtk8{@hovcS{5?=7WW=omoGY%D#7q2lrv#5n_*#85 zFN8j$;BcQr4GFNfBmdxi)JU42?F9xJ-~-LrnvwxNB1I#2=?4K;#zWqeNH{z-3Jy;Q zha&^|meMuNDoNL&3BNlgLq-DJ93_-*ME`yT({sz-7gRms@|HKLeDnqCmb_+lv+$$y z>xC+2X0xSNI`9-5Yd9Z1*Osfq0P@BkN#I0P5b1hr3QaLE)?O^_$}ihPD&y|=cZ!ye z%iu^Zbl{a0)V1PE07x&1XDWs!yNS*WO8O|svHppQv6&tcP4oXc{g{=F*>WuaR|3MQ z0I(0|f_Qo?OEx~oYroc(j1(%SRP&eYsK-_o^z#vav^WXSgaUxd>MW3s5tvBk)eaWV zuOBK~TAeL_-rHM3QMg|Iid|E#Gm&(^IK%IcQ^1A@6h@+{Gw&JM2 z6hPI)U8M!U`Nsh87N~!50>2(WqYYpR6@Mx~Q?@pMyEz0;jRfV-0$5$mS&7R+IWfG= zAgPHLEZ!po*^dIa*q$rx9%VTv*p?Lq05tf3h%g&y&?5-eDYHQOy#Vfa_mquIvRf%& zv#J4rJ^;0>;vAvJm~hyE-~YcB;8h=Q$&wtWtr^~??Et_OzEoz0z{zxju?qwsI{pO! z#r=FlyX(5{t>Xbb=>_*pUru;n|@Cna!t+0Ehs1$9v)s)RAgdo zymIBrw7Bq`?5xwLPyhS-cW!xPdt2M?-MfG6XxrYATw0hnefqQ?Tk6hE$@sCR`2Otl zC|~CvOVjea^}o;b2ZA+aeibpU*REZgnCX=s?99c<`SknV2|&9TOM?7@862M7NCR>@ zJY5_^Dj2tRHH)!0@*Jp&UYq;xfB3p{Wo~o#9H?~);t>fftX!Qq)vx24;O6(@E7z4K z?ffXFy|y&zuwEAzgOR|*0{2jL&r1wCH#c6bNz40sXIkaXh&>yO&2P=D-}3X!y3~WR zQ(Qb}t<9B)s&3NgVx1-y`?{g3j=^}*veKknb}=)yc@8}9jTo;7@Tp|-uG#{06N9I# KpUXO@geCyJ#)9ks literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/ccViewXpos.png b/ConfigFiles/PointCloudProcess/images/ccViewXpos.png new file mode 100644 index 0000000000000000000000000000000000000000..4b68a67e7a4d7bf0f106ba097dca3ed75a0bfbcc GIT binary patch literal 321 zcmV-H0lxl;P)6M0hBPxWS65f}nNMs>Gm?*tcyet{PEOO)({)lenwgn)SV6_b z#k8}tbYM`KaZ(l&5pGjHbxSL4S4M?}g;F^tv3gLCd3wzgSVS8Qx-QZ^wpCLE4o zKgY+%(9qB+DJiFHKX+hFtbSU>lxLyW0?Ea^SSq&Twy`^E`UoP!C48;x`OP~M%002ovPDHLk FV1grUfj9sF literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/ccViewZneg.png b/ConfigFiles/PointCloudProcess/images/ccViewZneg.png new file mode 100644 index 0000000000000000000000000000000000000000..d896c9e2b3691d7977e9b896413124cbb15868b4 GIT binary patch literal 286 zcmeAS@N?(olHy`uVBq!ia0vp^q9Dw{3?%2B3|#`Gq5^zET>mrtFE20u_wQe3M*5GH zInmM4%a<=N&dr!UefqWn^Y1gf&CJZ=y)0*EI3z~}>+0%S>MEb>i|Oj@IC0{{rcIm5 zW8C=o_`+RG^TV8O-MUrcu3YMGR2pE+#Ka_U>Z1_Q7RHhwzhDN3XE)M-oFY#b$B>G+ zs~60Lm<@TH0~t@vZZ6*O-&FTh;>{feFYOOM-pBz<;=KyZEbu{ hiN(B-V1xbN7|xtyyP&%B`%$3n44$rjF6*2UngFbAaijnM literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/ccViewZpos.png b/ConfigFiles/PointCloudProcess/images/ccViewZpos.png new file mode 100644 index 0000000000000000000000000000000000000000..177f20e25ecc7aa35c45ce507f82fa6a9203266f GIT binary patch literal 291 zcmV+;0o?wHP)h($0d!JMQvg8b z*k%9#0CY)2K~#7F&B_H1!axu}(b09oo%`Psin~R5UF*-lYhqVd?0O#;wOm;eL8nb; zSLO}5i!|`Q_>*dISA%uV_1%#bL{tFAj^dHxvivl5wgze0D!@xB^^SF=NcT}^^# pikYFql<|Tk!A@_aSHc8-wFQc(2fET_LT3N~002ovPDHLkV1j&?dVl}` literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/ccViewerBasedPerspective32.png b/ConfigFiles/PointCloudProcess/images/ccViewerBasedPerspective32.png new file mode 100644 index 0000000000000000000000000000000000000000..2e7c14f8543769fb43121b5042acf6cbd291d442 GIT binary patch literal 1143 zcmV--1c>{IP)9LMq6Hg4s;=B2iKezt9!i*Rix>&=d5HW`F#TaQ_@Nc->n>-H@s&+qVCZ@!<5 zt^n3+gDRb2v>=hQk$QXtN~s&l1Jn_eIhFJkPh? zc1Zw6qwj5trHMem)EnVlu91AFb0}8D9hBw%m9jkWy(kX8X1DtvS1Z?_7r

    9hbe z0BIGNp&miKEDvuJ#eunAFFZ6QAR@y1v`**dwF9)x;~C-V>H=hEC%il*z-;zz*Xdls z#RZJ84GjUhxfz710Qm0j)$85VL;#1w@5;}w?zLLWMzoBuHFej?_0U{$yzre6oKz?2YR8LrOA_@!$YaQI#)ZR0{wP zcY2zF?-~)HD5oIX>Qhmi`tuSD2Mxe?e^e_#kxxQh-8d8$RN+O4M*vEMHYh7Q19i0n z(AYQvE?1{^Kte+KlX|_2(+Uv9ZWSTFsC3TS%jRNGVprOKz;oX2z&zu|2<6reDK_%*Sm{@0sOVHGCw#R&7jEb(AD)T zw6u(a-QE-&VD@a?ORHC>F&j2msV!Ub$z8jOiGBNM;^0A!OiHTGSCm0Ujr0EpBqwpe zbM?^G`3n@=%77p$ps8sToJvPl1NM?8ki=H}dcu|YdaEuPASOnZb>T&4 ztQJ?lz%>p|IlgJY?LO6v!HWj?Yc5wGi7%vO*Dhf3;y7XU>`2?1H5tUVZMnq${WdZr zgr&@82jg<}5|vvm<1cZQJV zKC-lQgsQ3eiEd~Ja6tnWEQnz~`|LQ4p{W47cJYFi?b##np`k7&Dyp2y%xo-hIQ&N& z8sNzZ0dwa@Q6GPNjKRpo0_@*!&j|@pcIfr)cf-S*Zp9|<9Kg((X7a-ik8&8e5Ww!; zJb&nrJw7DFxx{4h{5Bne9g~EF38qm|Q+5Ci-jA?^umjM7d1rU`vHr=E&xFpKcTSX~ zo{_KbOfDCf1{)`*7GG!Qws>df)_iB@jyhM@j$UWy_Svqkoy%QZx;6vxK4b^9wjNy9 z*LS>T^5oMFGiUy1rLb#87y|*Lw|9l0on4J;ZteUWMh4*S=IXnW z^}o7;+)6x>m^dpVBd6}}3il(ddgw1piP)!h3oU4gU9sG+L12YBEIFE$p4-bw|Sn7SCb$?sJ!UK|`R3w>qsu-Xs<-*?g!d3N_IETb@A#KMRe4U-0 zBZx$psfnpmFn%fVAzgek7ZGQF;j!8Rv(y-PF#QK4_8*IzR-3G#P!9+gyaf?{w)U!d zj|5Ad0FbkHjbflZwjjV2v0qNoK;91w2OfgXBhIJF%1`ikJQ#^Y>eUWAA1$i83NtRO zXntP(pp!NgETOfr6A-u4eQrOwziG$l+jKp94w@S@%BJtzv&Y8B)|NU;;iB*NFAD8Wq%0P=mqB(7C?ceGn)X7iV zp3bGxaPI?Z3j+LRW`T~vrVymm>-5hRr6q!j=VUk(4E~Ue!$CiuXD$>q6^H9nXI`8t zPA-WQ1ys)Am!g?(WcOCXFAt0YzbgqBPQKA6 zZ#^ARnmqdWoOQ^Mq1XA}|HsrxPW#vg;mFWXZ%~&H^`4f^>+YcbOReE+@Al~rHd^lg zB#)i7B&#G!29PQ<`GSj9SX4j&OWpR&8T=nZCfxPRWO!M^vl-5l<|1e?WNa1wy=*)v z^XJA8acEI$I1AJ79hIkUGzG1TJQS%zVVp4N=w7Dsw(DiB_oA&Ag#zNEe$itER+=^p z@vq0Sn9R?Cfq`zjSKZS0X8LDXNw@CkOFhhzs^tmxIKMI7;`b}Xh0f57jU$grdLkx| zc0Yg+woaUh?KF|;;&&0nX5-hf7Xt{%zWfbSUVyKwqnwqchd4R@q9O0BG3wDldyqEU zfW_=jgRhfDJ}&);`?B;Y5re^iA&|-?UN;UEa$K$Kz^UOaVzAkNd~?T~HrwM!=KEWx zj`fzqMaoG0QMRflxEcjknn}v?O_oSE=|u}(JZ@xzFz#5A+RoQoDbV(@+E@cExE37HE-o{H~GN#sv+zRcS4@;n!bGCbh zesRx!bz2sGWhb!N05n5$UY94IQ!F+-*brMsz$bBylcL+VbLQ3i;!XL!<(*3<{`B-o zvdAP=>2liMOy^m7U?u#WaLFWSyx3GIfQ!dUFJjiU1Xcc>5aiO^q~fuf>KANckpnl3 zUd^Q$U0?M0@;K`h1*sf4f-8^*Ltkq#~h@BPv&u{t}sTY#Yd6vxR%UP3xB7qd1DQ%By8O$eLQ7 z6Xwy_V`nCHJ*`o-JfctGOvhX%K{F9rYdRHY57f{&)N=cLquX7+B%nr7nM``+Qw+qKapH0@v8Wg>9^ literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/clipboard.png b/ConfigFiles/PointCloudProcess/images/clipboard.png new file mode 100644 index 0000000000000000000000000000000000000000..6ca42639860ed9d9fb3f6cb691621a8aca630951 GIT binary patch literal 360 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1|%Pp+x`GjEX7WqAsj$Z!;#Vf2?- zjUdc;OxLp)$dD{?jVKAuPb(=;EJ|f4FE7{2%*!rLPAo{(%P&fw{mw=TsOYJui(`mK z=i93ry_g+EST6|kF7e1|z0wrRb^7h4$fw3%r2n+k1S$M$;yh@y&CGLogbRyq8QV0~ z-7{N#CqBrPtKRwk?o8_q{lV_({N{&**Jc0O_o3mfVsqZh>W1`~q?u*M(oTHn_Kape zZT_P5mt>Y#jG(m7$0!y3EUBcJ@0^EO@7jC`P15PlSW_7@dBORvl)JpA3T2(HeC!|(1JR?Uy{?+3MHvJt(A4RZj$jh#n>bTk>zd3eAc<1ItdEqMGbGLLb-g~nD%ao_Z y?ecd{n9F@S8`_$G#=yn?U_z_=9`y`=j`|ObiczQEbnXUvn8DN4&t;ucLK6T%9FJ-M literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/color.png b/ConfigFiles/PointCloudProcess/images/color.png new file mode 100644 index 0000000000000000000000000000000000000000..54b7ebcdee015a8e44ec3a12d7f030b0bf222fe1 GIT binary patch literal 117 zcmeAS@N?(olHy`uVBq!ia0vp^Vj#@K3?z5nYFPoKcmjMvT!Hle|NH;%-@pI-e}NBQ zrvdpYo-U3d9MQ=M4Gb3p6bcmDnwZvxI$UtzVP*aHzwrTsp$H2DgN&H<(XFc<*#Olu Nc)I$ztaD0e0sw4SBhUZ< literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/coodinate.png b/ConfigFiles/PointCloudProcess/images/coodinate.png new file mode 100644 index 0000000000000000000000000000000000000000..a876d149e1d675442bb4bb25b46c331bb50f17b2 GIT binary patch literal 982 zcmV;{11bE8P)Nkl$v z4_3Of#a??Uc&LJ{C&hz;_&CJu$mZ3ilhkY;v(0Aa7-sjI-*4ud%p)N*c%cU8hkOC; zQz1-uB)5uqxdI~Q6o3$RP$y=z--3kjL>Ry^5OHv_U~3Dt79~$W8ooUP^a=^56AQ8L z0$`hY1`h27(?)9z@4jD-fPDBYmkpjg3%mbI4)l0@4;&tYrC*T&FGoOO_zWK{f)b}; z4SY&{5RQ+mfjjfC4ZGGNYC8h*fOrcC-6`ZL`UB8GFvC5U%qzh^4`_`?!TAby@3IRW#|K|P>a1~M9JVpom`7p}^Bv&C zz+&@_Cm>?Fdyg=fUUZ}fI|b4=O{=htwG-%ungrcrd0V@=*_mdrM}V6Gob1gc1YdwV z2XMMkOhRJ_NNvFjOYlcPRW2IJcu4^Xas;%Q`{2+N!1tHY>?%G&OF*&%EVi6|Y3&7U zgm-&ERw3?Q#^7SUYP(f=f}bH3%=2m5x9H-BK#vTeV~js`1(kB0>qr30MlZ=l9U^)5op`Db8S`bW{OBn*P%P(4nJr3!Gl9S}~!(q{w-k@y<`JHfOg_0;>tQy_h*SiG$NFHhJU1>q=w z6*M`+n2UX^Ckdr5gzAaPLtB*q53&MTRgHi^cB==de+MwlP^*-e_5c6?07*qoM6N<$ Ef_o#dcK`qY literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/dbAreaLabelSymbol.png b/ConfigFiles/PointCloudProcess/images/dbAreaLabelSymbol.png new file mode 100644 index 0000000000000000000000000000000000000000..e20ba9314cb81a4664b66134fc5b5fb7f10fb70f GIT binary patch literal 294 zcmV+>0oneEP)95Da@fE_ge;QguUthZ}<<7noKOsPsdEr(#1wR(g7?$*h4vSX@PQNX(eylA1! z$#}Tn`Y{_{M9^K7*?rxAsblRm-)Y`o8<^z0aj!3MO<;xr07b;GR0@EAjsO4v07*qoM6N<$f;u02HUIzs literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/dbCalibratedImageSymbol.png b/ConfigFiles/PointCloudProcess/images/dbCalibratedImageSymbol.png new file mode 100644 index 0000000000000000000000000000000000000000..7d7b36bb1c1efff313c265716eb1c35ab8496195 GIT binary patch literal 313 zcmV-90mlA`P)(!s3vrd)@M`N1x2a2k7N$$2byg{Wl6?P6=lQN5w+}^>c`g~K6 z8})jla`h5ancdyZCY`7ejmdksDufVvQPgNOy7b<5&0DvvFTU#qxd$x+?7MIv00000 LNkvXXu0mjf1*CpK literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/dbCamSensorSymbol.png b/ConfigFiles/PointCloudProcess/images/dbCamSensorSymbol.png new file mode 100644 index 0000000000000000000000000000000000000000..63eb4b254737b897b7d1a8bbe9bf081e0057fec8 GIT binary patch literal 427 zcmV;c0aX5pP)3}Y6=&QtNQ*h$Se6y%Mqg!Rr3a=S2!a$viUiTL(plWUB*@_~0_jKl_TTqX_XNLR VxMEcfkZAw_002ovPDHLkV1iY7x`_Y) literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/dbCloudSymbol.png b/ConfigFiles/PointCloudProcess/images/dbCloudSymbol.png new file mode 100644 index 0000000000000000000000000000000000000000..3239145ad9f40e8f1ae64f548f0ca2f635061b7d GIT binary patch literal 302 zcmeAS@N?(olHy`uVBq!ia0vp^f*{Pn3?z9rZ$AN~LIQk3T>t<7f9A}YnKNes8LL*U zI&lJo;l;<;*yq@Hgo2gyLayzgFsrEaaw3-Xh%l}Q0vT@X*18v1j_H;y&I^z zyu2JJ{qEg6<22(lGtaD7cFhDTVk`;r3ubV5b|VeQ>F{)M45_%)+p}Ge*^%c+-pg}) zz8n4ht{K!RVrP^v&1bt~;jaA!F;8N?{$NdXGmrm$YoFfK8*2{!kXdFN_r*Ho>j;b*&etN^hUn=YUosMTpoh!qf+{6}@ su9za@A3XP%lnciap8ii#e;=vIM_pvykZW-%7w9GiPgg&ebxsLQ0AIs{kN^Mx literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/dbCloudSymbolLocked.png b/ConfigFiles/PointCloudProcess/images/dbCloudSymbolLocked.png new file mode 100644 index 0000000000000000000000000000000000000000..663c7da524756f4c1b65b8bb1b63c2d8d21531af GIT binary patch literal 308 zcmeAS@N?(olHy`uVBq!ia0vp^f*{Pn3?z9rZ$AN~LIQk3T>mrt2ZDR|?#-Dq=Nu3` z{~r|jncSZlJ z&6ezXbN?x8!~V$|UF;v2>*b!TS5)ANy^ee%X=I}`It zuNfk>&pJ2DCuAro9cy?aaI{b`F!avGj$_LUTu!e`+0C-hG^oVoXr~Or@*|fzPCAD6 w?7A}ZhgO)x@5_~&YNkp_izfU~?0(3YP{z97;n@lmpvxFMUHx3vIVCg!0NE*n%m4rY literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/dbContainerSymbol.png b/ConfigFiles/PointCloudProcess/images/dbContainerSymbol.png new file mode 100644 index 0000000000000000000000000000000000000000..93fdcd46377f7dc9cdf96f7a683491ccd12ffc55 GIT binary patch literal 297 zcmV+^0oMMBP)iteFbu^sy=U_O|5~N6)1a5$ z%bP^tfq(!&K0NUDLcD~%r(=nRu$wcaB}8(mH^uA{F~|HMHd&&(Yr_!3_IOXx&{)w% zTIQgty>D@JR}itVr}Lzgw&+VV6T^h=sUvx*OPnJGrJYM7ajRJ3)J}HXRr9@ZF^=xp vJ*uQwQWp8oD)_E~Er97$H2{|Q=7)Fzg)t4hI4k#Hc>F$vyx7 ztJ`GBOqBQuuv9WGJLkfD+?eet=PvAdWiQPT&+B@mAw+82zeKY`wA$*8w#X2L`-UNg z?fGjeOlW(yk)`?rKq;5d!ZGI@{T#L}q;!cg#A0GHfon?BEc+1Kln#U;BuvRKdyZ{I z33mBbt>;E(Vu1NpCDD?q2$V?iu42U&p!})=^(w-v3e>9zuPRWlB0Q_0qy{M-Ra9#> z?C_}SLO<2SqpFJ!|AZS=Z{d76tBC6f5Ag;6h6xX0rgQ$|58!ALdiCN;u>b%707*qo IM6N<$g2jfdKL7v# literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/dbGBLSensorSymbol.png b/ConfigFiles/PointCloudProcess/images/dbGBLSensorSymbol.png new file mode 100644 index 0000000000000000000000000000000000000000..83abd5c92419383a2a9ad41742d3cc932e3b3a54 GIT binary patch literal 548 zcmV+<0^9wGP)WdH}*1q=-V59IP#*#H0l2XskIMF-dg3=IVluaHB|00009a7bBm000XT z000XT0n*)m`~Uy}qDe$SRCob|QZsaH0TleUZQC~c6T6J+pxruF8K>K=Vpp+^{=~MO z$=tQ~S@Z5_AFM9j-MDc>j@A|n%QmZ7RsD!*N~HgloULE3~z7r_gi4b#_;_+{QUUNTu)OIK7B%H zD7LqaFw_tgMT`LSGcR98bF=ogvJx*|puF4&L(%WwBQsO`g-Rt~96Tt(T3fY04Gcs; zfDSV>B)+_f#x1NhTvcf4+Fr)2HDa&Q?D5uN0F|+JJ+upx|5Y9+wRO=4309KopJm)TwVDW mdd(E-cSKK`3C@Dhq<&0ADWy10000F!4W literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/dbHObjectSymbol.png b/ConfigFiles/PointCloudProcess/images/dbHObjectSymbol.png new file mode 100644 index 0000000000000000000000000000000000000000..553dbc02a00c40a2ead3ac052a6530f8a19c08c2 GIT binary patch literal 1073 zcmV-11kU@3P)q~?FF-KZ_%RJi)I84Y|@s}&i z@NwIYUj&x_CBe`T>(pwEnMRj^05q)#21+4i8*sfibDVg(wIY1da-v6p`4z#3H*?bP z2HQWOchyyvCUNQqdSJVRu7&SgWLk#NqmW9gNGcT;ea~yL!i**@UgDkwe3}d1xq(AA z-09HQjP4pjNHk3%iboR)*EU(UU_Ogx&m{0xP;2T)DXJ2x(jR|Xc|CALE_nTVM%UhW zhefr4(Q3G+%69Q}Oowq_e~-Cj4$VP{)JhQ@35@&EycW1UAG`My*kzCPtdZ5%s{ej? zbZk+YM?gVe9XE5dSot#t;;vhDcc%P;8Z(Q-i$ zq$C;hC{XPVzUjXa`}So@SF|M{6los(n=F zk`^h;H8-g}+-yRA784%KRjsP!cvpp?n>S3^k&o&PgdUA-@Zu^Upx zL5aBW=(6*UwXc%iwB6QecqfncdIzsH9IQ9c%tU`Z&p}C1k+r`dB+FL9r(c<*DI^gW z0uOftHyp+9^4jc;*VtfS#i`Bi;OO;--5rLSX;-rWJ>4J#7==tAc=N+>EHGnx;M+kfl!R}8gfJG#D>Jt|FNl*bw%B5ei9o{7 z3k?k=3%i)ADMj0h)MdHxp6HBZ`q>-B@ITXq?}3hvPM5yEz70?fGe{jHh@cdlK7E=) rPvV!`+n*eu40Z-3lC2Gu7-$IqqLO>%+F8H-00000NkvXXu0mjfW;6T2 literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/dbHObjectSymbolLocked.png b/ConfigFiles/PointCloudProcess/images/dbHObjectSymbolLocked.png new file mode 100644 index 0000000000000000000000000000000000000000..d94227bb670cf22811df113a44fac0ccc16d217c GIT binary patch literal 1060 zcmV+<1l#+GP)cWHFAlhTa$i^5RRgPZeY3`zjY@BC=ELebu}`W6GJ(Ge z`~Du3C?hAwG&k3-%0M4Oh;CRIGj`sw0Pe$I6xWsjaa@$zCcZN^2$V_ z{6gKr>hl+Y5%@E(XV1Wp8ZwY-8`D;0RRtprRls9w$MK-5mZ7TlcgwQoBl*1j5`d-n z4V47c)uAhyOixdgCBOi19vK6O1ro(`RkM9Xv8U#inUCcZD`?@|l7P=H#{upm)% zr6k{TZBI93Bd@|#bI|o1eC{JrAwfv|*Fy*%?KNuYvaB^>;Ue`20AGaxA6|l;`Zw75 z?L>K!9tm(Rz#=%4pysn!GH)&x%$yEGTZUvth7jx*mBja>MlZh@z$Ib8I~Sv|b8x){ z$(qJeb1oIv(X3<@jQL>%vWsRRQ!5~NF$hB;z?f0la{yc&p51m3u+e5cxrWw`)bE+c z&(yq*Z$A4Twl*K>v_R!nuVC7=X$aKQ(}Q96Z+9wy+rohB4*=F*r~cd4?ye1f*PO-9 zBBoE7hmqdFp?N%j*c-qL1bFp!_d`+CuN_N)W2vys6*xn)w&INL!h5T*){yVIAT$n4 zcWrtRyEVTUuIX$}A(RJ$p4H#A^*lU_u=8-EFf#c?U_7*7qI`NBbkl`yc+kH%J~*3O zxRZimNqP-if<1H+R2^ofA(>qX*57InD;soAO4xG1miLNTD z2Fp;QDx!+08rLqaoq(vKf+{M?V3=NrZF$R9v!1jG1h6aiMyQS^yxQ1+J-A><$Q-gP zqPh6jh$;*C%DJ%6qOk8V4I|b?BuQK8JTj5_yk;AC97P3p%_Nc zGe|;&t^4rf4{`bBmxJ{4fH8HFfIL-(-`u2HOtay5X#oc20e9!@=Bm_$2r* zodf^vOW+@P;DJ892?@08uDkjleDFcAUnlM%;dk`JOK;Bsa81CDJMLJvew(^$rO@_i zO&i;y5{&>DO63x36BaQ(+*8Wmf-2~xKfaLGUlV3j&2-{gVsp9^1VF<-h78MzJ&E-R e#0iG~l%D_q=iJ(^FH0Bz0000@X087cVYWFFsscT`VqEi@{(tSPWK+!C-Z8aBy@mI5;n9FTC!hm;7HO z=Re=f&2C1lEcJv$IxIw7c51&@j>{ri!Hi5*%}%OXL0R^?O!O(V#>!6VWfIL;k5g5f zFee%#{t}p#N5h-qo%dNQ)FxDuYQR=dW7sYNu~=Oc28>_m?vy5BZfUMcRgvveKw>k2 z)#vxOxJP>4!|YLd`V>O^6sW2Z@fxFl4DR`i0YXBMo^HgLuL6=VL9Z`mFFO`NGWd_PS%qRPf`b*_m>_1i@({|FCtTSm-PSu N002ovPDHLkV1m|>$}9i? literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/dbLabelSymbol.png b/ConfigFiles/PointCloudProcess/images/dbLabelSymbol.png new file mode 100644 index 0000000000000000000000000000000000000000..2581b3ac0381f7bdff35c816ae9848c4e18ab100 GIT binary patch literal 688 zcmV;h0#E&kP)6Lb!Z}3nL3q_Q>Ps8?zxq7 zPuooi2cGAL69wTA>9eBD6qe<#oq<%fg1FhOdBye*hMnkeU~il(QlRk2e=HjcyPzFhI6MN+sv)3u3Gs-nhJXs*M8 z?AQAqHX@%U=w3e(#rPG`$1Y58p`}1%k8*^1*QJVxQBiyM?!9;K z-v9sqy}Z1ttE;cHe_#cwVJr#q3ubV5b|VeQ@$htU45?sDc3^8eBrt2EM=Zk`1MvhM zHsclv2@yj{fvr!UCS3K=Tewhi6(=mg>!a_DfiK($MJuC;FX=rLHSu!%5 XdCT3zwd@)P&`btTS3j3^P6igP)k~$cH-jVS65k=mzPIJM+gWAzrVkrpro*`w2qCCNaShT00001bW%=J06^y0 zW&i*IC`m*?RCr!pk!5lPF${y_FfGGlEc5+uS0(AbcB)?RAreEee^_gzFXH?kEiz3 z@=bd3=2tnf&--Hx;U(`EuA=GibC(bBRk;f=xdYptAoi%Wv>2WYap5`#kONyR>TI4k ziNPkYUqBcWXo)l*6KMY>2raA|)=MIUt|X)b7|_EgrRvB+OWVv)#5EE0)~MMhR)BO@oVk&(#l^~hLu z&9(O~*W>u${qJ$9TI;&5uj?1UzV9IftpvM$rj*_Rr4%=gR`JEjJc?x1NId6!0W8a6 zjdsL~S2YskiIu49Yz>L-?ErA7WVg1p%PNN5(4GwJ;qrgL!*Z+cj@U1zV5|YqHfc?A z+qMJ1h+j_BAn+X(gOU-^$PPdyf>Frh2_TAWIe@0k3piB#23NSJ3oFw!Jpts9H0wYd z7>?KSUUT?fViW$u70UT&X?i+HEH0`~&X0U?{T4qn^3k*g_ x(`exOEj4?{06{yPt4XjsT6*_dUwQn_D?h&(sWQ&E-%S7j002ovPDHLkV1f*|!$JT6 literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/dbMeshSymbolLocked.png b/ConfigFiles/PointCloudProcess/images/dbMeshSymbolLocked.png new file mode 100644 index 0000000000000000000000000000000000000000..e0380a5667a1b9c5f8647dffaaac162d005cc610 GIT binary patch literal 409 zcmV;K0cQS*P)&p>6=t?FDmil$Mb zFwOby@EU_Z=vN@YmSo%7>L_C!RK#QuT^aK1i}RIBm%(2%a7a#vR{;37>728qTI#Bc z6&dbzdhp;syndwoM{^`m=3dPL6nJAWC@@I9;=%s|Up%)``N*-N00000NkvXXu0mjf D!V$P# literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/dbMiscGeomSymbol.png b/ConfigFiles/PointCloudProcess/images/dbMiscGeomSymbol.png new file mode 100644 index 0000000000000000000000000000000000000000..83abf0cfccd16c77d6c22d503c92b4249cf52cf4 GIT binary patch literal 466 zcmV;@0WJQCP)eRlH81=HsLO4senqYY~_38!-3#I+6c>0jdhTlIK?->hbJB zwtjBW-2m65dObEZ`tN{Rf)a5RxWqvl+tjMz#o=WSV8({Rz5&F}R#va;rfx&?`lc#? zqy+#8Nph5Q0_5Ur^=l0lhBjd6gxaWwtw^eK<5^y`>I8z*D9{nUy5%yL48slVvP;Ve z@NB2<0e;%xe3e1#h`3^!y)vw#WmwLV;?g53X5=6?4WK)t;;EUVk%7bMn!?lct|ext z>mc4&TX#MGVfbo+As#xzA#Sx~B7P4%t0bnH)X5t{9Di7!0q!6M6s>ROegFUf07*qo IM6N<$f{<6wLI3~& literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/dbMiscGeomSymbolLocked.png b/ConfigFiles/PointCloudProcess/images/dbMiscGeomSymbolLocked.png new file mode 100644 index 0000000000000000000000000000000000000000..37983308e1c40f5d88ddd15f2161f4fbf885a6c6 GIT binary patch literal 419 zcmV;U0bKrxP)NZZVJ85oOlzmAHPj@ z$z|#9MMxXA*200A=`s(@e#0khq%Kj}NmeP$NG8zUmNvfx@ z+sCOTFvdu|bbhzdFMxM{A184FD5c820Ch&Uv2aTI=oW1wcgOI8M_PLWnUs=cJUF?*n*CDczb}mIYSW z+X=uGBI&*LCH3SQ$!|aW&#fL6P5@$n89(V_zgF6u_aDD$GqI{t3bWu~Fng=iAV_{f z=?HW;G{4Pcph!zX>2)QA+XNzXQN7tczpG<`|v>rz(Y=VAE=~aySQ&bWgU<0U0Bn(}&Yqb0&~T zE|cjw_L5OY+#qZ&{R!X-K-L>^&cWRMpRd+xjDaz|6KoJS7yTA^SN;G=qaaFNoNdJb O0000a literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/dbOctreeSymbolLocked.png b/ConfigFiles/PointCloudProcess/images/dbOctreeSymbolLocked.png new file mode 100644 index 0000000000000000000000000000000000000000..bc2583826032d74142fbe4a4dcd0c9ef050c9456 GIT binary patch literal 364 zcmV-y0h9iTP)4luk8SWOy)VwQ$P1MdHv?HM4#efSOIe28rM|8ynOh4t9O^D!Hcyl%LhO*^v;xJ zro4W}ByK6Asw#Ts#u&0tdlbRjV`ur+g6v` z#P*4kXMMXn_N+@umoAnq9JV5!X9ZklsG5pAKdAccw9BZGBS&V39cSQ#slK}EG9nxf z7XkJ`)L@LM9&7E=%k#WiB61gq0lR>hOOHUn>cZ3gaKRvQB@hTy5Rsk0MwcGGZ!O`> z6*yw5{kI2$!5Y9*V4#af#Oi}B1zYao>(RrCiF}<7x3-D+j{y7gbxXL#yCK!XcU0f5 zPv!o*(#4Q?o;t7R9m0{%p)vaHX9H#GEURb{pW*X=R5ozy|5e!;Gk*}-3HYf8xT#vyu^Zf~J pT}FvmW0B9N;Omu0#PYjz_zp=h+hbvE5<36@002ovPDHLkV1l-T%X|O; literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/dbSubMeshSymbol.png b/ConfigFiles/PointCloudProcess/images/dbSubMeshSymbol.png new file mode 100644 index 0000000000000000000000000000000000000000..199debdc3ba297f75705c1e16b5a89e8455537de GIT binary patch literal 747 zcmVmU$?E3aHx8yOiHi$o%^NF)-AL?W?~k&(5Lm65fPm63b@E?wGvhi~@T zlb^$ICWqHAYumQhzt;6_J^$we=yJKl;6-~Ja{dXit}7bZHAYLe{0y4sIXIJaw?+|E zH&`)E(REHbFIPg9b;*^hGlVm14YsaJ$8Bb}hK9Z{N4U77@RA z-P4p|7%slMhA!&{0d{!)I+#-Qfu0`d93ZOTjxPtVx}f_~PIlh=)9EzZwrIfh&5Q0E z{NBn+zAGUPDMdaj3M-nEm!sFOb1D^#)t68w*~@{H;<%{2`Kd*)~q=Z8jeQ#ZXkZN z$A9N=S5Vh%=*|>0t*J2)eTNHLTV-Cgm%*hN9)Y9s7rlCZX!-D=+{5=R4 zMyqVPYkZo9!BS2OKHUq#ixbE9p%HbgC_2r=aj3nHh)f-tq}#v&v!NJw?!jtBgZ~Dx zuuzAFeDQipR%WND!6|Nv&GvzGUnp2(Vu&K~EmmU%sBcD838ySg=MIw<{Boc{5B9Yk0$jaKv%E;Qv%E){F_vmr`?*2C4 z!>|mq>AoLgUDxkVasD6IZ*GW=$76~?4x6czR}`ny35*iGHHs3vkC%#pLll?BJIhgN#t{JUjn_1v&`$|MbOVUi%FyIlfqwFPISWd;Vq6S)u zFF9A&WZnO;7%+*wn**5h7P%dm4zjHq{0|Gsu0a7P*k7mM30T@boQh#ZU|1UN1JH39 zHh&KBf*{YuqRuuNq-i#hqo4|;ZLpw+fb7&xp)eStyN;!HU?odYxfNPBd_R zy|HoI|$3 z8lsJF!J8*UZSVL6W9#HC%?Xj{zc4qVUUM~;CiaJ@1DdVPRkZE@3yNZ^^toyq1poj5 M07*qoM6N<$g4Q`-9{>OV literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/dbViewportSymbol.png b/ConfigFiles/PointCloudProcess/images/dbViewportSymbol.png new file mode 100644 index 0000000000000000000000000000000000000000..4f842fb5b8f5e1840a0f379907a44a5dc18c8d97 GIT binary patch literal 1011 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 Ls(~uxO#}Zw3d;=) literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/exportIcon.png b/ConfigFiles/PointCloudProcess/images/exportIcon.png new file mode 100644 index 0000000000000000000000000000000000000000..2851e66aa3d7974b08b9049ac4f20168875490c4 GIT binary patch literal 2591 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 B_b31W literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/files/CSV.png b/ConfigFiles/PointCloudProcess/images/files/CSV.png new file mode 100644 index 0000000000000000000000000000000000000000..bd647f6fcb307945c990bc468a15dbf7dea70a8d GIT binary patch literal 1452 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 literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/files/cloud.png b/ConfigFiles/PointCloudProcess/images/files/cloud.png new file mode 100644 index 0000000000000000000000000000000000000000..c03b518f45e2dc9b75a704922157677a473cb36f GIT binary patch literal 2357 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 uPzhba0+7&-42tUkU=Y~9k9+oNvTDGjUJ`E4N( zfZh?y)xBU;dzVMf=gVjj0G(akEsKVSo2rWdU<6Q`z?z=@z1^TUtp*my+buc}%!K*Z}Re`WdkXHs702DGOx&SCUw(sUH z0uYxDFg^uP2cQn%BY;8(g^&S4$aoS&Arx{?5S1WjN2o2NFpmeWjt?PBGo-5zV0L)h z-m&!p#*-idfKnKxFc$&r1w!-!QMSZXKCC3R3WU`Gs$Z56fVj5ARLh_j0c1fWhA0rX zEmJ_`xUTWUrhqO7MRpJXRSpm#EE-p3aglw|xMTzrRsdjDWIW7xDgj`Q<*dn506GxH z$)NwF769fHD^)T8c;(GIZJufXWSsY+=jXUR0+7Z-QnGLUYaT`brT}ul_njj~f~qN{ zIzRG3N!10@cIis{#mTf?yVDK;i=gayevVKWRgETH^C^LY%5G`d&t5D5=z8$~u!8{n d2g*ra;~n_v{BAwtgj@gs002ovPDHLkV1nY%D$W1^ literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/files/cut.png b/ConfigFiles/PointCloudProcess/images/files/cut.png new file mode 100644 index 0000000000000000000000000000000000000000..aa825e6b38bf2b598af5e3ac1f143efc7519cb83 GIT binary patch literal 2305 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 literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/files/new1.png b/ConfigFiles/PointCloudProcess/images/files/new1.png new file mode 100644 index 0000000000000000000000000000000000000000..65248923310c713b598f862078885bb7d23df17b GIT binary patch literal 1438 zcmV;P1!4M$P)DhISCk2g*e}_o)BvBN-`GZmMqDV9dyDl?RHRG@@QC#vqR61SHuy{N^9E-)~iD*o}|3@#2g;s%R2>>bOqX6&{09?t66Vb;+G-p}XPi_oJ zCX?4A;yfZgsN4Sr0MkmTcir^&(k4&PQadRKA;u7q6Rc~Ta@z)gqdrGshw$S(6H2LL ztpp*Z+^Mt5+iW>bUD^hK1&xi3T@Z`KUPiAFnVEib#;=JYX$^E9vB#S#d(MVfVXS4+LUEk zzuRMX6o9QnJRaX}7zU@n57>c{*Qrv9>pT}Jj*Bv$twJf0my!natKorSiIcOGHGc z_|T)2`kgR@Mfl;zg&t_p%~mDVXNZ)tAe2@eP=a@Pah_W;~_-}-jG&jMaEt{`X4ud(&|bsd1=@nh=`TfXc)y|B}jZLS(Q zHSoLE+ING0G zxbJH(Nx;_ePj9z(hn52%qNDnQC!g7Um3lda?b_W8!1-Z>4S&ZljM;oX&tGsom5l(L zZ=j9`K~`*Zbo7$J!9l(jPdgNSV|aLYGMCF$+*0US0JedtRO(tH;tP&l4x{-(gRj9F zmYxS-TgZ2L(P)(a?65CE{{(=UMmIZ~27nDhN_oG&^14CS@gE_RN~uqRIt+D13~1!r zLWmJWc>VW%SH)K#}7k|j9+Kq9(^r7q(OX0L=#G>GyLpl3AmNt zvOK`80?u|qi2cqFsfc)}SS(KT4FHD0KT1}s)q_NosRuELD>grq@Q7JM@5{NcQSDp$GKp%mtNklXT_mlTH>+>J)^ZpqKzy$O;16Tp`0F;Um zp1XN*icBln1tCkTt()WaeBLuO=(=EnjsH%>x!CmuvI$jrwbQF7K1aG&2Y_<+|Bry-Bqr9!|RFO2aD1#qV^ z-mq@aum%Kdt1v>H;+A&a8`cdyg8(zN_jybJRzTXqbzvfC07MYC0Ios9e-d1SCI;XG zV1(cV;RL(Tz)6DyCkQ79Cn(1W-c&}V?WK%F{(%Ql8fh93dyJC`+7*=YBuS+}fGiQj z1YiZA0VL6}D+nTpTL9M}Y1`lf?DhdW!_^N&tp5_vv!ugaD}q#D&AOx-E@~aySAYr( z1Tz>%07*qoM6N<$f(KIk zaP8B(70eDhj-LAcam$h8$ON3gGV}95BM|D%T+A=ka^H|^2tpgP{Hk~G$^>d4#39lw zflGKD?!fUqQl`;eq&svG-ayF`N{n$|qjQ4ui8sB3KePSh6(93=8N~oaGfTX7wSY86(ogt)^GKe1|-v zJ`I_|xMo48%}9upbqSCVn^b|ae7w&w5LkN$vxIhAn`Deq>qOi^trox>OHd~%!yOcW zWlkPiQjY2qGzf>;Q_#Weu)8@r#JPXTAaK!@$|de#AmBVBs&DqJLbA`1x`T9ux$+!K zz)GEemS;BN6P?s~PSAM2ha};+BCh6awdW6a(s)s*Vqs?M7?v3t1`hrOTTo{I1Xs X7n6r>&e5?000000NkvXXu0mjfie^%Y literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/files/pointCloud.png b/ConfigFiles/PointCloudProcess/images/files/pointCloud.png new file mode 100644 index 0000000000000000000000000000000000000000..33364dd1167baaed5e2f0308be4de711486f5ac4 GIT binary patch literal 2681 zcmV-<3WoKGP)GRkQ5lEC&!9l5;TH>Vu58iqE!TfNJy5Q?S4P2H_0-6%ue@Q8|I&_ z+WwuN_xc^b_nOe)U)$|G)>7>RF-;(%6PR%Vz~cbtFLnX+CJ}Zq^DYoSXIuO8n-(0o zr;%Y&Bb;ezJ_}N|fjAD(MbUlIQ_Q@DgxF+u(T?c)(KPA`r!k=F0@Q2Sm>>^9CaO1yW+pAo^}DL+>Usd^CWg*&a9s5T`Svl|Zck z#tvtb7&qp!%Fk;Bre;tQY5P`YEGr!tJzital2QZ2rF}4%J;(B@#$BpSZbzWP;cH4lPa|vRWGjFza-!qe_|q@ zGiYN}dyag?Jtdx&PZ0CPZm0CZ5e2$veHC3dY7#9OKBCFuJcBPR)@7n6^IhT_QSDU> zC6VGQ`M?6r^<&6H-iVo%1X7JoTp!Q~BIoNZEUwCB=~q#0SJYE9-P#I}cl3Y2G?W{n z22d+`O}CxJ+x4Di+HM+Z;4C$q-^ftnI-f$2o+*#sX3zzBgI=vwl2Pp(h>M>E*tPmq zRB`%-4E;Tdy~t2Bov#DrO3!<9znN8Tj^el;vYKvp1Mto|KQ;|zn3c9ak_w>6#{i!0 z8q}DR`Ksbq;?@ z#N>Nk8PiZAHGU-FwhW(OTk=g;FKO_)q#VGwF1HZ4rC3f;#kdU_+Eq^X(DO)8CZ`9^ zmn{C^es!=ipRIiL7&g$ba`BYCg2=tf79=M=)fL+s)|%~wmXQi&@<*;7Nrms35urMKLT)fu|o--vC&X_>YZ#@`>nc_6ri;p`A9QRR46|I zka3SGJS}gi>%#_JZ@I)gzL=$a!s91n8p<7EeV2uj=;Y&B$Zs=fs&@bzbV9h<>{9Lz z>#*K(TAHr~OJBi@2|rU6u{_K|t|XL$FlK>h7MMRfOfm~hL+Pw{vSIDVQ+6j2N|z;x z@?iN$K~>iEX6T(DyMa*JGW90+ zO_=So^Vv~nw;jdCClgB9Rl}|ma_i>!WqR63aS`e zY6)CRPekhuNi^R&Byz^bZRtDf?9rP9BPv@m~juvwc3sGp2mH5i8h{hH`L)>$;=M zz&n&k*{hgvwYz2I*G(g~IZSI;BQw%av`(uHf`04Hfme{GTh{^PI`Jdmww$3XttR0x zx+4xnx7z`@itYr_Mw93Ac&W;l0E{V05UYW zc*?q*i2S>MA*Psj(uOegln&ES7MDw~lIJ4|rG%kGa>Hjjho zCCU7}WM%v2Ed9HZ9&$*ho=_5<`;M2Q=}ZEh$>0eDN|uOquW2Yp7C-Y<^UH%NjUnj9 z^P)%hO%aNi$xPFU&}%bw&Pg`C>{tl{WnoYMX$tXtX0#CTB8O&S>7B=o)CUB!=w8LaD_w+e89yPB%Gp^~F(fnZX|06(o3ydXZR#{T2!ONZ{4}IO`1V=?J z9$?W6W$~l?&xN4CgEaug% zy6xPED0)l99?5t`+Ia1~@z}ZJ`tYCAM1m4!d>NWydiI|WU_C%JC|t3#qo3NI93A>r zQYA6h9m?P=vv&U_Agcai4|B48#^}1=!fXf>2h5^J_uWWBRD6$xrM#)*(lN^`Y5Ax+ z4TCZWrl;=?0_H^xl7TxrlFhC$BdU!k@(qPD2xe{H0~FyqWoC4D%xL!9xsQ@!blHYO zInZPFuOraZa^W&~eMfTiv~qH_em){l4!%m;2{@-zLJU0Dk!&t8mDd`B+un#lIWQ~r zy$-_Xd?_;CXrIx1VtrFDZGA+c41($D>jyBZD8xd0vbp%syWwm`9Ey|ilAaG&Gk7L| nty1|QF=yJ?ioX=C1;PIV2tGRV&n`O-00000NkvXXu0mjfrK}Ik literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/files/search.png b/ConfigFiles/PointCloudProcess/images/files/search.png new file mode 100644 index 0000000000000000000000000000000000000000..b24cd070ad0d825c576526f908cfc74bad6e5e6c GIT binary patch literal 2148 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 QEdT%j07*qoM6N<$g1#|Z;s5{u literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/files/txt.png b/ConfigFiles/PointCloudProcess/images/files/txt.png new file mode 100644 index 0000000000000000000000000000000000000000..e89f1bfd3e2a2191b6dfe37e577b58f31e457660 GIT binary patch literal 1359 zcmV-V1+e;wP)yHxoHT|TKmn9=r)ZothhtqC4f(=)i~FA`(F^; zAn+1^@znP?b-p7a5O@oqs=NrFes_{H1YQFmV}L6J-UHwYAua%Lfe<$U!i5l50K$O~ zcK||#5SIW#fe^O<*h1hf0JhtRU>PGX0k9SCqn;go`ef#HUIF;wmka3bXYK~sqo8+@ zeR>bgyaK>pu6Iq5`b*bE0e}zz!Vuu?B)B1SK-1Z#V$t8CvrgbGE)Jt%o12@9T|3|R z>6-N|qJ9c1tdIrNI!+veuZFh8b(sc^*3$SHNZcu--vrl0jGJDj^ z$<9Gdb#>$bNTpKL*X<438Fz)&wpRT0{5chdBpgY(b-NdnlapR;Xw(`g^YW>_#<`?K&)0Pu3WoHbtdoiJiMpTP@mV<)^MY< z1M~CqbVuc{$?>69OMPEiSwWZ42o3p2!+ zp=+^PV7J@pdYbKOD3wa;``p|du6Nv^fBWL|2Kw`@-d;@Je-R;xiHRNn{P~-GI_m`~ z;t}BMZ(w#_f7;;ppGrtbK>gl&ypoK;PXv)KW#3EK)|t#?Wu-5BP7h^+y_s zDFCEH3b`EGDp#nJ@<-22daYhuTtw^THaHxP_ys_ey<1j>qBo1YM7CdV$Dhxh1s&_W zjsUm1y4qUEGGw$^^Ux3m&4WS3lL~PG;ElpURFqfHg4?cK#=^qF<^YhEmWG4-4|s?r z;t2#ch4&G_T-R+&Hb`EUP`U@rX0J?+%c>KTt3cV?@1VH2n9}v|(IX5G--B+Cj@C(X z1Ck>ID!h$=?5u3;uBoB5o&N0%wd55R6kuD$HtISV3M6|Bv=s6dz@D1j$jZv1gmxLb zF!SUI4MU?=Lz(Bw5=TZyVHz;`4FX;QC{>k0RZ>EU8XF(O-G0w(FDWUBijE9v236-~ zPY)hUJ@5&EcL10hD6$bccm8*u!kB3*$qLC(VD2T{MllD#J*$(=2y-*!?l2QT^Tie{ zEiL&CZ;~OBOp(k5Bu(~}8`SA)A(P2qv)Ryc>0-bMb3^t5uV!XKE>~cDVjQcht3EqK zZiuX}uTxv$V1?W}2-a4|&oGSKm&-$(~v21K?OixZu_IVQgSL3}SGgjNtqx(LN=gdI{Y!r(BmezJ+sQY`6?zK#qG8~eHcB(ehe3dtTp zz6=aiY77hwEes65fI|ZCY4JL~(AhgSA6$NXg4h|FZo{pRW3! z>0Nq%{=dh|{-wE>-kSFJ#-zUqF4?B0rk5^VGS#;D|Ns9BuMIgsTNsnP-Cbl~GZ#(- za@b2eeO=j~a*Ob>$RFe}*$fn#=jq}YqH+H2q(HuA1s(_2U6F!q8eO;d{I_hM*vq8% zJ91OX`UB?|FUefFs=o26%!93d&wb2$l9#Z0n2LMsc`&0YW8#l>hp$`@(ku;R)chms zxA&cyFfD&%+0 z*Vy;3`c~a#ew8ir{jK({*}vvw+y1Omr}q7PUw4}MX1g$7aDeU!pi5OtTq8$X`y O4Gf;HelF{r5}E)}8N}cK literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/gamepad.png b/ConfigFiles/PointCloudProcess/images/gamepad.png new file mode 100644 index 0000000000000000000000000000000000000000..aadd50332f058da4c1ed26ce6169ab47dad689b6 GIT binary patch literal 601 zcmV-f0;c_mP)3~8&Io7Qwr$(? z&i*9#Elt{QeXyTaTmQ&23gSriy(`~C>XT>X$k#cM-k_<0wf9UKmnIA z3)i6Uq-9uvj!=k7W_~RwM&~gF4A@ZB~#i1D7Mnbc0ekh>Crvjur^qmVV z^Br8=kjp#VUtn_JPA!E@Mm)1jd}KDt;<=^38&pC(^n?Po_zN5l&afeSpb$r}BXB?p z@fIoJCBu8jc#cLWW+d`GCB==Vcnt+i^%WckSu}xH3Hna=KuceNijc)nczwTPfrUtf zc$frPOocbgvQQ0EpaJCIF0Mijwgzv&Fb}Z?kD>4ECcG=qFY*Z9nO|Mt2o!@4xPj9+ zWt_&NuPv|>ib1b0yqqe9bNGr>kc!ms-g%e;c6k-XIh~;8MYU3#s@B;0FKP2(c6030t3(+9*|Ms;= nZgj^qtj2g0`ad#?_+Q{7&^*&*w3TyE00000NkvXXu0mjf8ESkVZ*qF=f;t4>h&b#!9Cs%4H`Pb#ZWTkd6$YzrP<&F4~;Q z#dN_?ADDVVVjPBthY56bbs;f19-5O(kS1?S9upe{(TDqgHIjC_6&)QNsI9Aoi<`b8 ztI{jJkPz|@bAS3hI=Wmcq@$ z8JsTm;lN-*xZ-fwk)555yu7?EXif?=O*^|+pFGj4UAkG>St1)7=|6uDmn_Gp&AWa@+)S>QH-Hm*7;2-FV{QP`EI7tKl z#a4qLot}}tCHM97GCroVEZ@|fispbc#epKDb!WiaI}o-Tdj*0!{?(D{V%b8YbBme)7bqpG?R3~t== m$B4IJ0<_8m`JjP|*yzaad^p0000P)HfSl?dP zLI@OQqH~P-fbNz35p1+(w>M2G;1HN?ixDWztNvA2D9p=1y6vT$+| z+IZ#W1*OzqmU!vofyn?Ur4VzNgube(dNw3evkn+AMmsw@e>>0Y3n3OMU?u~A!IV;< zt}TBzS{Qil|4j&yOuQxmfVTAM>FH%%*I;Vw;2=5YoO6HzN*fbPvWjm>cpDKt&$4W< zuIm?uJl!=rz&&WU$z*by(uPL^0Job=CU1xcWJlDNLqzwS^I26@*PDii9j~tI;|-|w z1?PPJ^z`&4cDzmijJ4kq5wg5SJ>`m}wL56_*rCxV%_ft{WtUg11psX)W9-7W01^Gm zIft9W-SO|#c4o#cabI_8?uF;GEIVnVu{IG?FbBpMw!%HkkBAT&{+JI$bh55ZZw27| z{QLtEEp=Gn_Yvp*2mP|t0Q1G@fDMOd!3b?zWmy8~P%Uu{y^t~X#x+E!{5A#ySFoff z!26_>(~$cF0q|K~#@H>aye_GgWeG31a0WqAoK{r@6(}TfH085f);b_*F=c0G2P_l5 z+k_txO{J8ue(*9|H11p02+svsBlpk#F$g=FhY;`NtdP>FDwWbCD zBWrkG_9<&?cGZ$pLK!Q_rBu=Iu~$PWJt-fn@%Xu$~K=EqowwCsT1zCmdSl} zED+uVaAXFTZmGKpoY*neJ?HTlmjIw4H^)$Syljlp8p@6?U5D6xVn9+#Sw{QT1z@cB zU(yo{09Ij2CO2aiZl5X35^eKy-LAW6jG^wj9tW34@^vJ(QMg5S4x->xmu#B?iHO5YY-mY_LJVEpOKPw3~0z;nXzi+Dwa}tm%tApqOv!na= zG3pT0^r7&>b%{dAB{H^F20H*Oo$m0m_twYvG{q_RDzi}zI(T}5#sKjsrA#JWW4A%? zT+_bo1)9BijB?b=19t9P7gjuD>zc!MgRWclI&~FeiI#p~>t(oircsAmLx{L;Nkm&c z@fBd7*tQdJ8|UFNLarBpnmQax+H$?3?MOZ3v>{J{yJMOL2*-J?oYolFCq-S&{h_L= z{aA@9#`W<`fO2?- zcSTVgxZhp@!2DVR-IB}bLKLx8Tdc90=gdUF{WqejYYAUZFrw;FpAb|^p}K6u6C>vx z_}>gFLk0v$-3@PNgcyqV(DCY@~pSc6quuhFJ8Ty=2(Mfyw1OVn29)h{R>F+;OwF?=Nr=dT9S9Df;=2y%w5Rn45F$OurZ$)j4Dz z@leW}(K|*?tR-fZ)wxZVlKw3DFBJX5ML4$P(~ZX*>o@ZE2CbiNuHW@fv3ilOoTcW2 rvP{NJ=Qn9QR2SX)t2dc5+@sv%hm~_e%-i`uUod#O`njxgN@xNA7VvE* literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/ic-redo.png b/ConfigFiles/PointCloudProcess/images/ic-redo.png new file mode 100644 index 0000000000000000000000000000000000000000..966205b94c197d18b3ce7e283174bc4468a860a3 GIT binary patch literal 1366 zcmV-c1*!UpP)=O!% z(h@esP;6(*E<&ti+db#3fkro76j3Z1W#yhH=A2#KZO_M?cV>3a9Ga_z^F06O|NiEk zcV?bbL&{%QHTmgLP3;g#weP0aTa|N1&ri^ zI6r#r!O83h3!@D{_-iQJ$=RF3z-SK;6$1OYWRA<73(uGUX(tf=_=iDVoXl{uFxm}- zKmIeQxa6$;&A@0!5S8%@o5|YSgTiQE5EU9baIBsnFyaC6k*1k9vH%%dfXdt;Mry{0 zJP&jkYX}E8{m(j9-#l7RBN`B1@h*f1(b64=%tyJ#*myjNMf99Y?xw+7^5!7C;tE8U zq1+E#7mxo4RaO0W6PH}3ubOJ}AiTmYD7^>|M`&{frDO|^we7zJgM;{d=vu~7y+AKW zdIp`xQEDfSy>YT|Fc4mT4af_LxCDY?Q#r^OE-S3xDtFsPhgWzBc&1TULVrI&D(%v> z=y-h)UU46&zZkahA!q$Xv^EH@@FuXnjR{;BnzFq*2(PdKh^f>kBUS?0P_P)pk5MKTZkh^EkWbBpe?vzzPcm;n;ZFgi=#P1Su z9OO9u-{Fo2P_@k^HF;VpzG%!^HA%05VKCB5)#I^|q=z4A%&Pmq72 zOpb3zms~oReAg&>0>nv#>l+2v`F#|T^<=HRAvCI|nuFNO-*a8=z2UDQo`l0gHtBRe zNN~*<$8P-2Vp_lq#8w>p*=9-#UcLt;aFcVoczR`2+iq2jHw!|vn{4KdW+3>nf>(GI zc&gdNa=hOU%-XAra)TxX1)=&2_-%aqa8T*Val$~c57pHs$%u55wVI~iRIMN&M2;~> zT<%$XvMKFJ!TyXm2Ha{SAaWa7>no$&ph=BE>>+KrVee8th#!FkL48e%`yI!=%pkA1 zl)50~MI7t7<^-!p`ykX%=m?J8X_y;4triGnJvsaB;6n8y!_0_L9D80=Mr!Iz2k{e> zT%09dl(oaH5vq&HWlltCXqwg(5PG!oxSaVu>YCy18Yy{%F6)D+O-<1|4?^B2yVym< z^ir;CGu(3o?831hjU9w=imdJLfyQ#;fPFFsDrdM7shabe-m z(2ZP_ZuoXq(}>8QWUWi%HX677L_cB#SY%vGIYnt~8Ou9 zHN0;83gi8V{6mO*7*V;O5r$B{B_&@nRyti(HbsF$CW!^%6Zo{aij?}_S%&XZCK|-Vbnu3sM5Pyz zg~l_aEkO9A|9J39F2A@3Ep-`vQ_(gcCQk(~e>JFsN*19b(AW8G38LEd5#;|hTI}uf YU!qCEQ#X~~=Kufz07*qoM6N<$g4ynldH?_b literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/ic-undo.png b/ConfigFiles/PointCloudProcess/images/ic-undo.png new file mode 100644 index 0000000000000000000000000000000000000000..2754aa951f46dfe16e32a4363e7e8254a44399e4 GIT binary patch literal 1355 zcmV-R1+@B!P)AKMOksw~x%l z%BN9o3KH}`^f?LA&Y4@&V+yxw2buv+OR zk}b~;55jz6XQyJ3M)mfvHnY5LHG7wN#UV2CO_$?s1J;xe8d3{oJE_EKqrUu=Uncu1 zs;^bm)LQI5;R;}ORXR#K%iSd7yUK$o3>EJogpaEbQJeFK&%VBt375ALvu*>{12$APQ@Z?4rJ7`x^pOUKdbhq8Dh^(!k^7?|<1L9)#{s4Ha zgpkn!@eMF10EnL2f+&0|?u#IA4-zvvATr)jlo1F!^#Nh3vk%XOn0ZBG?ndel!s(g@){g;t11O#K17Q>$_~B~KpEpVLY~7z1 zR=23yR$mbRCeiHsB;)G>eOrE-&4= z*O8prG4?>%?h-_XT)@<((Lc%lnJIY270u-HeU3j$d| zGQK0)Ae1en5(B2(2=)lENyhIOoHnBcLODSyF}2hT6d@4$JIR)b!%f4{03m!y+sHq+ zi~xv%*Z)!M5x*hQPFwtSKdaIP?Ge&JY+O4_r<*ehU!{RSNDrdBQQAvA7Ar?1>>!RK zWKhizYtFEA`ss2F4p)w_ti?kFYyJW%-G#rVTsKY4-7K78ezH)L@(;p@qiJaa9~l4u N002ovPDHLkV1nt!eNX@Z literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/icon/cc_icon.ico b/ConfigFiles/PointCloudProcess/images/icon/cc_icon.ico new file mode 100644 index 0000000000000000000000000000000000000000..6bc8e3c755ac738bc348993a131cbcfb6e3d014e GIT binary patch literal 39839 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 literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/icon/cc_icon.rc b/ConfigFiles/PointCloudProcess/images/icon/cc_icon.rc new file mode 100644 index 0000000..b46373d --- /dev/null +++ b/ConfigFiles/PointCloudProcess/images/icon/cc_icon.rc @@ -0,0 +1 @@ +IDI_ICON1 ICON DISCARDABLE "cc_icon.ico" diff --git a/ConfigFiles/PointCloudProcess/images/icon/cc_icon.svg b/ConfigFiles/PointCloudProcess/images/icon/cc_icon.svg new file mode 100644 index 0000000..37be245 --- /dev/null +++ b/ConfigFiles/PointCloudProcess/images/icon/cc_icon.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/ConfigFiles/PointCloudProcess/images/icon/cc_icon_16.png b/ConfigFiles/PointCloudProcess/images/icon/cc_icon_16.png new file mode 100644 index 0000000000000000000000000000000000000000..c7a5f64699239ee374d2ff3167c268ea84255b9d GIT binary patch literal 590 zcmV-U0gv~cwe+2Tq;IzY zk&~0-hPSM&O!_Z0e191rr?6Q5wLC2&%l)ST00~08_7Umyf@`|zeGafyZMMB@>9U)u z@3D`m>9U8e0S|h`U86A9h!i8(!}l`+!pc9Q!%nhs@pauI!67JYH)S8(cKf@Q!H4-8 z$R8VfN3(W;;nOdwvU}}k>g@tz0zQ`zo1E@B;1E~4=!RYzf_a3+`*q$;Hf(xrnE`&* zC3V)c^NKRidD_xO92cwBJTT7vT*6%=Z#O`+3`u1HZ4cuR)NUKm9G{V^1|OAC^vc3N z*6btfd)_f=1`Z*KCZ9{#Nm{41-$6DP7MIA7Wz{{Syn%=L^1q(Kx)&CiU3XKBpOoms zsFTv7zX|{t=ag>VC?PJl%}&2EbYoGL_8vv;Y7A07*qoM6N<$g4hxlqyPW_ literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/icon/cc_icon_256.png b/ConfigFiles/PointCloudProcess/images/icon/cc_icon_256.png new file mode 100644 index 0000000000000000000000000000000000000000..334328ef9c1691dbfc90b6dded5c492be86c8caa GIT binary patch literal 9089 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%0D+vDE0wi2LiAa?A)BH0yt~@(l3(i`1 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 literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/icon/cc_icon_32.png b/ConfigFiles/PointCloudProcess/images/icon/cc_icon_32.png new file mode 100644 index 0000000000000000000000000000000000000000..bd96d639c802a82babe102670c1c536cc6ef2cb6 GIT binary patch literal 1046 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 + + + + + + + + + + + diff --git a/ConfigFiles/PointCloudProcess/images/icon/cc_viewer_icon_16.png b/ConfigFiles/PointCloudProcess/images/icon/cc_viewer_icon_16.png new file mode 100644 index 0000000000000000000000000000000000000000..ad1462eb2aa29fe7dcfc2f9ade0586ecba4c10ea GIT binary patch literal 725 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 BjA8%) literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/icon/cc_viewer_icon_32.png b/ConfigFiles/PointCloudProcess/images/icon/cc_viewer_icon_32.png new file mode 100644 index 0000000000000000000000000000000000000000..f22d9631ecf46e40f521335d3306db4ee8a7f5e2 GIT binary patch literal 1572 zcmV+<2HW|GP)0BnbMN#^Gsvfw_M?y5ky^|G+&a&pk2~v4vS& zu!+QCG{Uz+;fRQy54cQ{)t>6Pasko^KTiDye=}|ZQxhfdcSFj#>SV3sny$N z@VVYL{qIaR%}p;+ztc9abpz6TnBuDiaGMn$1i`BX-KeY7+N{f%5Sq?rJ*6hY_dX}A zKEw&~ZU2!37i@wNJxGt^79X!VMijV3q#&+1hcoG_V<}Ve+FSIL)Y`f2uD~2NPhWJN5kvrNt%2#AoGGpEMG%!4AWZH!)KH zjsONZ=qoKLD>IsW-9<#^bUA7%tx*C<)O?R|IdR@@6qrDl#wVUFB8i}Ph~cux+$E2_ zGRV9gMnUoPMJY^J!$##GX!S#-~pqI)qO)2kYG0kJ_c zRawtj1ygf(>H9ECFzBo;1>k~1bQpaVz)l@ZFDb<63;|!Ys$=>2wvl+dLa$obu$UNL zt{t=_TnE)8fWoP@Mei#CkdghyiXOx`IKzwBIvg^W|L}t-Jef^V)N-#;wL^n0&z#$? z#dLcA+gL>cC=8OI>k+e0s%UrN!Xows4?NjFlmYnR5?KYH`!S1;s?M+@r~-WCmHERZ z2uaMOBxt+eq#9ip?ZaMC4BTZYez*iYNe)MAldcjHK%e_oW=2Q*)F;KS>SVMk{NWP7 z$DYTn-;pGbaYDLt7QUFYH|bRZ)W#Bg)d+{hz^?t zy`^6s`6|>+xNJ{9On&@91lMm}+6{QgF(#D03e&)(Y+}P_hB68tDrD~Z7k(+kwn5iF zS(Sl7XRO~7yKQJnR*l#3ezVXR;#hx&!Kat_aY3hg_yzl1V()a=LKc`VaRgu>3wZ;0 zC5fErG1tGW0@rl6aYb%kK3nZ|yyU(cI8$xO1C~4xzi{B?1KM{!Z1#!Rpe`^Ql<#$i zFe;8`R4ST&!?}c7(02XraNhjwizq+8AamIh>UN_V+y&k74(NTt`Yqi34DW%j!_V1P zbU$WQ2v@c0TzDD%;};S1aNUl->`+FwCsWgeUQL6VTJzjDHH9bU{p&|*a&j`SWy_W* zCOMt|%riFkltm!g@Z4Lv<)u#%P;KO&kQ19JUj z4@pF@{r=HG#OL!l4h{~iva&M6+}vEYot+(v$KzRU*|MeR&6_tS;N$4%DACo`^?~0) zp^yVUa=F|%Iy#!4n3!lIl}e4l=iR$^Ch*PyFt9pycG^e6-XwQJY@3jSlp zj42yFe0Uz7=UKmg{qF!|@ZiDu-MV%A*rG*?@|iPd@&Q2W)~!qH)T#4j{`~n0MhTWJ zTP9z(Zk=@P+O-J!goFeh07y?y=j!O_D6t*w+O?}tQ&ST;J3FIElO~n!-o3l9Zr!>F z2mTJWxpU_tA0HnP%-geP4_dl(sT};-Y&Po9p~L4#j~?aKxC<;TEj^kxZCcT!Nt3TY zS6W({H3Z7Y$gtAV(o!y8zFfXx!-nM1qeo}6SS<1B)2AbVwLX3NeCX7vlMKe!uU{{4 zadB~lqyT8us#R$tMvTb8vADp%kuZ=fOf6YFPQ;yCAHBu!c4T-Jpui?LIhX`co6o+<2 z=AcY*P0V0DQiTfnBo!ee*JROeJ7W~T*hiobw}qgW*ZHG&w*;a0w+oJZXB(y7=%0#0 z(o2v;uGD#)7j+8+r52-Edt=-0Ug+64MsGhFPMbF0we5`!f!%Lx3`A4rIuA>ByuktV z=ElJ8HNkmNjpsY8hdKU{gP?PY*bi1026Ls`uq7}J_MO&_A6n|&V&W3d;6h2245`#=4LCl# z%6Hh4caJZ)U_AMP z`rQ#%5k%vkjwjLF)@7;90OvZoEFWLt(?pYB=96AJ>?j~V(c(C9wo^CTif}~@gMG2o zm49HdClbk3tSAT6<0?TfSfyR00u4<~!Bbc=zfom%E?nTE$C3qtwAED+1)#mclE*Xk%8chy z98#cmr^()I-e&Us?*O^1nGma)J~TO-GUt z`Q9ds+V}pL+~L&)*y?`Y*+r?j2I84eKph0mF``0|OsfGP<3!COZxE#)|JZ@UtH^_(}C)R^}%YI+#I*GWUej17Q$~eaz$#j4t0Tt zm-`;0DTGoul%%zRjze@&Hd{?#y|5sH)^8*>>{u3~i;p!qa)I6J8-tJ2`uk&NtX!wM z!2aY)KNt{OZvXhHh7dLbG~xEha=)W&AVVgBRqm&%MosiC<+CB$U?(w5VrDLVxhQ6TlBGr zDiKba?M$scLxyTZ)nTace!QJNI8x}?9hHNcSU}A!xjb#0{sHRXz`Gz~K>d$R|K@-+ zR?rm7m1yR^c*$72%50GXj634$Fs$-(tF@Q6AH!v-&4Qc)$SDrhv%)W<1RG)44<0_Z z5K_mJSt>>=y^_##B3^Q4Iv?TwHaTk>mb$~m91sxPheXJY<5r?|Gc7`=@> zGZKEXi|7D%<~#WZmw5HUW21ef2%K1O`Bxb$6O(+IBhb$CC`#m$|-k0Q!&`hV~ zG~#ljuR(d1b$+>9MP69=&DhHMr@rpxwH^k7~E`VJpGb$S0o z+DMIfr>RGi9`?$jDn;XEeJPrfl7e1&QUuQh43TTfai7Mj(@rFJcOw@>+ zY;3e1tY`P`-C2MB`KSDY4?Ymhn>Q~>Bogf)dXkfq4-!2Jg~A@_$B!QmF*Y_985kI( zc64-@gC6{U4n%)mUfv#}AM@HSTeht9tFOMQ`R1E%iZ*T96xP$zV>TG#s`*owTV_r?&6evnK%b0}cO+wr}5#OifMO zCQX{ejCIzmS?y%}UwrXJC(-xRQ&08$^2;yC+S;0b6fiS0V}z$oo7RP05tWvf!pbu= zaBnscyz8#J&cXM;|Ng7dm6nzkJAVB5KA<}|I50G9C`Jw&2j1|(3Tkvc_~3)BOnu>r zCz$Wmt5-8JzP`RGghwC{X!OsSGp7n@6DLkYFjk;_{q@(t2Mc*psnp>vP*zq36J`eO z;o*U7ZEYEacieFYs;{pPrWxSKks|`^a{U9_1mTro8t5Ueh*yl!9~>O4kqr+IM?{7g zStt}H5}CNTI7WtSL1;ub(NE}j`(9uGyz)w&qX2ew*?^LcPe1*X?4x$zrELL;M6!c? zv$bD;{gu&QQ&Urqae;C1ciwrYYv5n>=9_Oa?)=O%&(y%b_uY4&W;_6pT>Aa|{4Ur6 z0FpZ21?=qXfzt&KMe%&iZGLb)f#;C1f<5U9EFV*Pv~#I{kE9M4|qrU z&`Eyx-FIrjZ*Fcb02*v340u99FDWV63A&*jK73d(2n4|s3U$5<0HRNyKD`YT4FFFI z(6t%hg%@5>4XoT540sH}<1OS(_}tyy(};eE0D~tRA0How4dgPI26#jG@wVKF7lHxL zKmPbb-qh3-1i<+5#~+sg?bcgwJp(jd4M06GU>7PJ6tXmQwkUv)#|Hq6fQF67ATWe6 z_y+eTfHcsTJ;4kNd>Z;Kx7>1eV4wHnZFRwT{`%{$OwuO?P%v~a`L?vQJPW+^EuiCF z01ib1ZifmA3iup_fez@aiNP>QIEX+b8LI#3r=M;Z2w{W{t5yv(z@4G|u)+}j@M>%N zo-t!a=gO5UO9-D1Ab8`?=5GAq1$X literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/im3DxLogo.png b/ConfigFiles/PointCloudProcess/images/im3DxLogo.png new file mode 100644 index 0000000000000000000000000000000000000000..59a5e70e94322d3195991344c6ef2cc4d0ae06d9 GIT binary patch literal 2379 zcmV-R3AFZ!P)0E@KGchnS6`RY%CqQTcYq_)(N z7D91LbBF)v@$Rl2Pz=u{ISR}G4{NF$;6z{FaTXH+h{`H}T$}=C2_S!n-QV9Y7AJr9 z*%vsTJ9mMiuqtC2J#gTV%jK!Au5E2?2Oh2*Io!v}0>#KWlXTu{!gIID$*EVbUT5yH z5OmEhpy|gSf3B#gs;g~+`EFNvVL>VINIXMg27hlgSKEn`;8MlX!A9XcG&ol7tEsJN z@_MRJhI*a(;DMttnlue(;6yfB;&axx0_3`Z0hK;)HSnl7)L^c;P$Ab~9a5%PjyX-d zdTRIXJz&>~Lr_DIgd=<<@E?Dkv)SD)cSUKLqqxLoG8f3?YL!~+4;+hnW^LScbQ_)#cGJKeY6{Zv|J2N;T>d(&p|%dfmKFgPk; zNMdoJiA176Ai#+xaX`+VJ=bEf6%-U5IpU8Wi&#M+Bt*ivfX_ew^t;9Cv^zW=Z&gXD z{f#%@12`m1t}k9ONT*MqPDx2AEiGjRu=P#)fQR(V3<*jGg>(E^KW(V-+xh-|hf&N9 zrw>BKN$Jl#`%?eFC}7|J@aw(%LF&U>-OqXyfsav1KC1 zym1;DJ1ID5Hr)0&71t0DK_4X4#(DRXKyCbPK&jOo+o!y~aMLoUX<80r=`|Val5BgY9Q_=n^zpTvs zYG%(~3^oT#m#uDWGF5~Vht&CzBgVe|+S`J5V}&+0Q6&jz)X4G`YgxM6x9|V%yWgfx znKNVhe7w7G;mWylmoHebiUWYNxvqSn=lq4T%=Ou)Uped^r^8zmfb zw|IW9dmRU!_iJtDk zT&t>a*YL5pLlz^N*KgR`(AdTs)2Gh|6*teHzjFNenb~ZgEEi%iC7tfNtG0>aRiYXz zgMldh{`(%`m@a6%k%lrsj;&s`e#+EYgv!a27e|hqICA9V&dy=6n3hU)B$HW1DQH@! z*B54S2~^-~h-J!%KM;*4QWGc6ga0tVpM z-~KXNoEXjfTDsu#N3j0wcRtXo4Xsih7sd5et2cm(^P< zyRavbRH*+&ohRL5(Rc5;n;?rsCEx+}`NKnoj{NKI1LrSXB2fSgQF`n$Pyk%+KvGh1 zp~n;1yY~U8jz(3u1rqr7_B@G9QFD;|+2>!wUwNw$iD{&aZoAzNjeHuUmKNuM1E&@(S_7~ogrpz@7N>WssPrr zgudN4dgNqp&yeOOv!>?LS|J{jv5Zu=aM5yVJK4wYkH_OGNeWcV#kkg17Yo4Si7^T2 zr6-eVP@7vU)27eHRvc;ou59EDVfq)Je;W+MT+X19%JT`8;7M!-u3#|(y((02>XT2rU}|%Ey;0T(#tn=jLUO_~ zjx847tFOL)_uY?%LNZr)OipE5S}hYNO~X*S@U9W~Dm&<6sUuF&O<0U6_>~cO%%yWs zTWezG`FtPbbBoE<)i$$MbaHhGT)t;F0MiY?!bAP~w8={3@O2m#rjwXB=9?~82$wTC z6wl5bd&P#uSYB@c*Z@yZ{ruA(s*-cqy%K9j>lA^sXV3kF7I7GkByYc?{;jv)=V4;q zsMW7cHT@crgCFYkC9B2d_4J$AX0reL-w{+C%DK&CJ96}7u`JJ2!B+v_Tw|Xp2td{1 z%RBF==lHf;?;19AR22YL8dc)W0K@U63j^<76z4)433&d2zy&}4__OhUma6oAQ@}d; x7wN^z=NUP@aQ>`Vv4(xRIHp~ynt^c={{waC+Ozo7TyOvY002ovPDHLkV1hzQwb1|o literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/imLogoV2Qt.png b/ConfigFiles/PointCloudProcess/images/imLogoV2Qt.png new file mode 100644 index 0000000000000000000000000000000000000000..211fdc4732e41d28fe3b9a7d7a02827d4740400c GIT binary patch literal 21785 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 M07*qoM6N<$f-?)JUISV`@i-Gh6 z5N2$1>iP?0NS3%plmzFem6RtIr81P4m+NKbWfvzW7NqLs7p2dBXCnnv^u^P~F{FYq zW&(3Yo1?_>`ptsr#^$$A)jZymds{c#Y*U)@dAAu8v$ySE{`%aA2(iY1exSBhXy9z$!(D$)A&r!9c~ OXYh3Ob6Mw<&;$Uq`I3DA literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/keda.ico b/ConfigFiles/PointCloudProcess/images/keda.ico new file mode 100644 index 0000000000000000000000000000000000000000..8c55425db265ba9390ba5a95bbfb010250af3a32 GIT binary patch literal 67646 zcmeHQ2b>i}@_vRp?+pJ7dZOnlh*=R71jC(T)6F)Oe$^OlSPk_16PF-K5OF@mBZ zDj%o=E+_uX=i>-)wpd%kF!yv%lJ&d6T;9tFErDuI@>tHpAb5 z0V({iliK$Wo27P4rBeHX@DqR3-?_`Z?YBuOnd6%OH5{nnKn(|KI8eiZ>fu0}-BKx% zUyw=_?vhGfR6A_9swX?8zI6c3FmKEw^J?>5>J2p~O67n@tU*l6CGfktHV^MEH-Ao9 zsw?~LV>d10QIH|CLf zWuBS$g0L)_SC+A6E13h}mGTJbA3>c#OF{nwNrJw|@f;9&T*u!vx-XUfd&$qPj9>X| zyw8w%XPqz)%nS3B%qR2CGO#QxliphydD+;WVKGG8xh42?6{sZKll`ySUgg2L_BZSk7u5rlr{u=A zw{2ZxpId!n<&HMHhkix?Op+U(Y3lwi`fR>~@6tRHYvzS{V%}^%nP=wRUKge;TP>E= zz8}Y`56F{EVGA7GQFdZ=H0T=8^Pty3TCczl>D+J^89Q~By!u~}c|RDMi~Xs~SIY2* zAChiI?wgc>)wsWX8a%bQ;@Du9NXc)WYscTi{nD=G@8R>>W1sJcuxB2a7v_n1v-xD6 z$4#9rof{Ph%M#whvayUTE6dEXtGpsjkvALr#&U+VGtyz8NY`WE@=0;M?6A5r`JGSY z)$c{-eisvY`zqvN{OpC&^Tb9;8Tb^>ISR!0{0_7u=s?g3pjM!+psPW*fbIkh4b$t9 z_6KzVoew%5#QSPNKKPubAU<33$a>FrGY`xQ^OVfvl=nX`Nk;Yl@Hs3yc|cw$Up999 zS&u+lpuD$(B3_W6F14wZk{-u3kf|ShRgAZm&*b}<$up!&i`-bvT&UXSu{0!=Bsr97CvGt|fQTxiJhwiR?du-&$j5=j;*EG}tbH80H zLkIN}Z`aL|Jl$Z&#P4$C^^phemkINi$gD4ZHaZ}or^o>k;Z-q>H`(v#;8F*X$AL2gq^HnnXg_q>U zF1~bWQX4!h0e`l;tZV2$Xv*W=HW#lpc)$Br;??~FQc#`WXFMoD+ko~#Qlkhj2JGHmVKh_0&N$Tg(+=AmQn3i zJ}-XG_2kK>p#Q-ywR2GRIv}>wMh1Wx?Y$?T8Dn%lcoyLf-p%>uH+lBu$uh9j8B(<8 z){1*ne~34qbHLxkYj%uy-TH`k*C_FxT_oP5PsE$`jd*i^5bxC=%O_qp=fC33SSjAi zABZ=4o{^891H?P$Oz{reSG+y8j^)h3(aJ&q{nEYZ{xamMKJxsWMKb5>H7W}%8_O8U zt0_BqKwhXHWMfwVY4pFlpr51tZDXf@;L1RU19y=7hu$HxzC@eKx`R41Y1zkeN5AgU zq2Bf}?&LdhuM0hT;t}HY86@80GsK&+BF1{o_Xf+^--)*_L^+s?XHae^7c;*W?}cU1 z8Dor${i~^X`~B7EapuL91soG+whuRSDwLrE`%1_9J0`Jb*|o3I5j-JpHifN?u>q_e zI2}Cr%$0$3-L2%N%hED&>2ewU{7cfi*`aFRvwrDy7;*FRrUhk{LJNYQ&X}ef2SiOckQw}umHvi__$0$p4>U^Xr@?=xm z!uoGz;56{yL&cW73Hd}F+M)j6Or7WN#J%?K#A|*cbns3}XwyG7^>0Jh^@_-fl?C22?hWw<+yvY6aAP}`EC(N}2?s&+SIWn7Z)`JclwG{E0nn z?Mr)zXWRI7#iT0kOSVH+C$Md}eS~BCU2vCguzJC$#>RXN7o#bs*;90?U1PfP7u<&Q` z)ed#~999k}!`BWK@5lym8Etv9PZ>)igX4s`x4#qDv{;2(TC`lI>*`Pd- z50*-okLBRo9iW3Q-aga^pK|+FkU?R5G>XX#)a@xUtDiz&`#2Num6+6-L_O&@Y!}y zCY)=-ed>e(pjsenPvxu#*t(Cr9tL9GO_}JMzq~JWK74k$WZ!2Y5B|JWnfOO?0DXYA z!J}R1K8JGg;(OwC>MGve|Cgx?Ft*U5*-3KPjZev8H;j^_`rIKW`IkzIf1M~7HP{vM zu!X2BSiZ&SWbpD(k2ZCV>H%x3K#tkwzYt+h**+h>`pKWJpWn{qaTV@U->2VLTe1v5 z7J|iVgffyL1C$B+r*D2xyhe30WPm!L`B^RHpabSq{Zxe*W?)mn_tNew z3;(E1P+gE{*VwNeK1saenq)Giu7%jg$55Vlq37yB`urc z9*%!!whQ#BHV3H;P~YalX7huT{oN=Az(Wk3cir82i@nMXFr@9LI9uIcN*XNwwYYuA z_TZUC#=q%cSqT3}vx_{bKYTIp4`qOIfPLzOgYTP(^S-p)GM2GJW6JXy+_}adZ8{j@X;l(5xbba zf~{L7R{1i7l z+|Ty5TE`jreh~eZ<3J{VjJu*wEZ^%su*=H+E5#n5JeWSBV;7Pqk4_b@@gA{F2wa2q z9i`~?HB$5@?t%Vjz35jtd)D`I+=S1h;ZyHR<6Fndh3F$DY=Iv1xwNS!JFs;;ckTdS zPv5r5U&A^^&Xav(w=U$#etG@BWSuYRSY^QVdr$@#o5t7z)@c%a1;K;kCA~ECGeLG# z7LZ;vf3=+O(ihUKZFjf+bAL8S?SSgA0h(_c>Hb#8htd6vn`?Q7iM7fTj5Bm}BG0Az zf6A!yrOSZR|D`XiedicYvHkkKp^U zAngxUwG7zzBBig|l!da)*qMz$_fszX`3e7T1#x#}A;Tu5ZlpbUbfdT(K!3pZ3MIH{ zm;?_`kYLTVaq_1b5@0Fz6iva*iQN646Ui>I{<8SBj0*TeP^zgbi9FS$tkp8do>2fEc> zYtpCC_ui8I@2cKHx!WG;BFz))KF4=y-)toHKX~oe%EOA;i;-B6Aa@?~ksLD6K6GXoc^I-DdU>EVmzFvG>EDvSDM~rxSN$F!h z>(dsPJ^}Ej4&c~Wv!h)dKwFx=w6{Qv8(Ix2O*US`xg9`NzVV%)0?_*)gFolijGn(y z)PH|LCAR%Z-9THwwgc1wjETye@7N3afb+)~J9rW(01X0-08IgLoQ2q*cj?|H?xLy% z0PiOL%;OS}!GFK)&76&VZ~sv*si)Vcj+b|D@Y?@O8_BkkW2Bth7PkST!P6~4_a$||bIh1R#h?0;^WEb5&-h{W?G)`^)tWuK_fa;3I;wx}jqs-o^uHm$@rT_X zRAkK8!L!^tpS%|D(Y_M#zi*uB2atz`+LOn*x;g9q^osDO{z|uv`#1S$_gA9NFB^HF zk5S_YIW~B3#u(4dc1~R`%7BlxwJ4t;&iDL9Wq|mfa;$h$KZjmJ-zMMiSG#Y`2DST= zG7&6-9mswl=N7sC;DXc>;3?PD$=Qv019AM1^IS~(b;$0RFSo?Vbe`c)AAJ&^4SsCf zfaza~ciIWAfBzNmRObZcssJE=#Gf(0b3mruqCfktr}EDRV5~<~wfn9epuPa~1Gp9e z*Q1F00OTqAS2??}Pg-Q+0Pc+Nr_Z{}<$31=qAk9`>$;1(v#(==j2XZ1JQx23;Ayq^ z_Olf@AAJ+bC+IxTuOQ>cJOS%>a85VdwLEA8betdcu)6S98-Vz8u0&k_t8Hv2Tl_DH z*HGRQ*e_T7*@tCp%LC8nhaU)iuPW>BId$HZHO?bZ{ompg7yp^y=l_9ndSm`T^i|R~ zZEOIx0Ua;R{rXRPzp}@8OTpO1yVyQ-kM@~P{D(UZ#5nJ*=jhwh!* z{QzRWq1$}K>@bF_7~V-4VQkM!m^XOnUM~K_VP9=d-sbYgIP?(zzaxDeWOM+>v-;nd zn{5EGugut-bLK)h#g>qBN;98-VRf|sp8DXx8<>svJc z*Q|H*QLF>7&QHJVa;Gmy-#+|p<<`g2>S;E=6JykQV(;w)T}XQ#^Pz%)x0c~wKs-RY z$hG~x1rM7L|9ttL1a%eK0Ncc zjyjz&{&zi|5#t|Sk2qid9|yQ?|03|PTH<=vRoB?D3gnyXTzwG90Lxy~PUpny8Y-L{ z2OV5xegV8o{kmDs+5Da-tJjO$^4p_ek?7LvhqD=im-H*1ytMfZ^ozeeyx2m0A z>jxL^02=_dpkGJr!G0(++b}aGu+N{=C#*45=L(tnZ3D_*;!WJ*(S;!9&e@^tLW=op_CrL3@bxrGkHthJBC`|GN-; zV_aS8k{pfwC`~5sjeP-y$p4xMe_M9X6Mxp%nfeblm9C?L{upC!*GVT3bJ`bZTeOX@ zZrrV%NLv8&cl>iPuH&`?93yA!|AcqNI{|Bo+H<;DRIL*SlZ~slDa`DM4rHsWsEKc=t+ z{2TAf9xuv-650*ga7xuTR#Qx7lX#bO%(Y=!Uy@nR8Sk4p?}PSI_mGDru{fuHv-w8a z2NYrNAF;o94R?#nP8q;DiT>@wjX#8QU0ve5S4-3pCFzNhc$~|>(Z(PCvRUKatqYb< zCVd%v<9s?@Pba6rE+KQwH;B5QaVrLYtaB7xf42m8KC1OT(gSSo_TL^pky|8qbdvHW z7%@@xWbo7+3C6xA>6hM>^wduzJ$t337h)bR+69$`q^#tFd@zrg+pXUe$ZYEkp9)g{ z0nZKvRa-oF36N&>6V`OsHO!fJP(6@|1)~gL9;<&&3)8=0AJED^&vBn?h46bHY!8`o zolsuKbyPW*tjV6@AKg&r#{2l@kKeJ21OslAVCYB*o|rD_m)|#Y<|!N08I%pCxhNCJ zlh^m!Odgne@(Fl$I^*ftf6Axz;E8#(hWW1gO+~g}oWEw}+UR}y!CdU!^X@*cafx+> z#QQB-xuL8ayqoyP9V-6C7f8@&pal0mE$J7QN_rk*xhMmahxL&K-n%~cyKNGl|ZLbl^~F3x4_`%_nBuK#3WrWiYwS8cwXi-d7M`ukgf zsKa91iH*etHh_=sx}_V{mbS+nEbUJ_Ryv$_hIDLozH|!ONT(uSI;9Jxliyl8UVN@} zIOjBJ-~2dfcR~{>I$}RbA6y{8zJC^O%2$eerL!6+Y9*G zvegM0<9G1oR)!wXSbz5UnD02xx7zye)~{UM2fwwQ!gn5seOu6XPFb{UK73qlk2^#< zckV1*hdeAjo}MASrhOoN7Oa#jmi#1Fy#1^6UG|&weP?YZEn6dfdG5`h<%&h$$`x~0 zNbjldNw0CQN{>fhkZ!jRlS{9-QaX99q}?e^rRY%D2ecO$YhZOqQXa@_68oJk{w2Zf zk4SpP7p3b1>igvQ9r|j)s9ENoGU|7EeM9=c_4^^5Cl}*C5&N{8^J3#%#Bklm=E!r@ z&&NDOwf8!l-$Hr~e@?Dm^tD{~fym7tiQM+F$eo}e*dH1a_wW1==a!4y0=fa$4*rkG zp!Y?tdQap^P(M`OE8bNxuz??<_L<45T;>tpFTX0~)2@{n}t+D+P@e!Qd`Vh##o%k)h+lJmPPb^<0=ks05LU}=28P_N8M5P#!2 zUNarnP655LQsjlN@LkO>M4ntB^6;l3_dr%|g^W->R5sp)Jdh|Oln2TM0+~4+akbuIOV@4s6{9#_YH18pifMTp#qgI=;qU zTY*%^IwpQ7-Z6)`ZNN|9;|ZWtD~zG#^5)>**TufeA-m!muFsn9qw?FRz}1rd=4Upk zy(gJcZYU>|j|q^Ery(1Z3+fNb!~kL+%0wg&IHrD}Zs>4Ma|!nQi{ZJ&ld?-Wz?$qn zzT*>&oDyTpIu4(MU)VaviT52?OM)k7X39#1@aH@a#Cf0B(#WLMO$DiT#J}BMxs1NC z_mNM|_lf5Gx7+W}GV;k$`fbl_FkYW)l5#OSl!@oQ6nO;lKpjE-5Xl1d1LTADM9*ht zz#i$OcBtwCVsH6R{eXT0{Zx?-pgwpJv1@Kz2JYclj;_g8(RKhnY%`XDaSYCnao=B% zx{>qvbG`3R83i%EV+DD~?<5aueWuJ_`K#9b^}%*s?{#HjCgfo}+K&4_5xI_Sg4GE~ zt=-Uj;#<_*iW!+0aDtF`b}|r9r_``9V6mvvaSD$KgO{*#>w?@ zX|r1SD@Z*K-I~*LJ*kWT0n*+tFVVgy`zn!bfbwvyJ&n~QuB_vX&p7|=xV};cV9Yi>^UI3ag2bQWm&Bjn zI_38fV*Dp#Kj-@Z$RqLJ4fGyJ^Y6o+zUA@`GU=U9qi>?yZ=}z4zWJREc9nUJ)eE#O zX-m>pC?*H!YqC!n)W^D2tl!iD^f^rbJjRwf;3?SbX!|2MflV3Qa8Jc_fSu>dvFt}) zK|ElFKRhqu{pjljQBU1x@i#o#OnMxDklZzR0KV`1qP)29Etw2?nD)`P`0n>=t&a%L zka-}cuU4^KP!?!EJ_9+p8T#N#_8FiP`po`Ry5Bv*^b;)p_-0Ld`idBT>H*eWj6Fnc zHgy1O_zXEIryU3|Mxn7S)B*eky(>?qK5;F@oZg)8J#fx{Jl6xdK)>w^z7#>9@*C-0 z|FM_!I=Qh7IPYY+>C!;%x#1dlY~)CJZpN!B8}@tfDiioFe5tyEvXYIwWN{teHD%>* za?8X;Y6BGg17p+l#n`r;`v2k!q5l&x;?x1py`H%~2X(;B_h+pG7?-5@bM4>fmSRl2 zPW)cuKh1d`Kw+&^sx7|nM_U#6GtOfw$Zf}TpS~cK2k?_NB8kU7c-9{Mg>L`c2XgT* zxpP2o?K@0ZxKw7Y_)*&r>IWC^>7RTjr1IK^vaVx$#QUG0vrumC)=uS9>oWDd%|G(U z?{#tfIkNu}b=vRJE!F|J-p6-`qTe_MW*mWHySG65b2b+(jF2k$KX&N^0x4(cb*yfg{z#y8qd%=qjF z?O(8up)ydC9>8xr$7_mRhjYY!;?m_Z(RWkl*fgsxNSkI->2~+e)8P4nun}NXAT_Ap|05dzhfILCm%04)k3B?!yGKcI-Cg2e)3A1Dh*SzoX3&`QQlon3DK($)WLLngobncUj5lN9Z>jmnk#eD3QQ zz_oWudh&;+&S&G#VI0?8PndCL=9l<4Jt(WbppN}z;D3mV|2N1J+ta+<9J?@%{UoMX z!#;RszNDAIhKByse)XJh#V=~>mR;vYdF+R?PLe`dP#Xfzp)EOL_#-msn>D4|0o3)O zz8^Pjw)BNxLhU-{!^#$)jj=qx&p>=z;Zu{RY;d=Anb%H6-Nm~6ksd=FO7Iwb$BZ?x z*A+`c-=D?5_*!4o|Bdn$e+n)04%!C9bqfs7SwA{<24BK>UGfj}Ui`C9i~Zm5zXw;{ zB#e(#9f7eqjRhlCA$Hm>?6aLbeE%?GBLZjF9#q^>=c(_9KlGqow2^zo~y=%KM+om`T&*#x6ee{nnZKp6@~IebDb(6DvqP`@ z7%EE!*al$CFp@2_Rq8V=W9=}mFB8pcVgHZce&ITK%$unz90RTc%G=Fp1Go+Z{aLXN zXwwSy9&_$#Lyun)+t4gO{Vn{?jpaF0egkRIY6)(8D8o-en;?x?(VizZf=$>`1{YnZ z{mAZ3_m_72;+yJx9%asb_dn}Fp2is+WZz*iw<+_5exHBh5lUtC0a?!(tE{rg_u!rC z4~7!TD1-AZ?fcvHFiZCTyoo&50_FAQtO;9$vY7rL@jyM+F%#GU9B0+LmHbdI&o~R`}ql78hsMi-ZapIeu?zb^PAzT7|Q zpRoPByh_)?7{h9BZ^#>d>Np->H zz(4j2(%(Y=nU#I&e~W*4I6yb(`mC4}6pWgQx%FcuxaTPe9(o=&{XEoH%oU=}=5^WN z?#e+)a#x!E5AXBS=@@^O3wDNn|IF%irkvvh+t;7>Q@q~Av@gu};H|DQ^Q6xOpERyE z-|=VuS(cF4AG{9~>pIIH{zm*6PXisFbv-1u#F+hUOY4HUi$Ctq+WzBxv;psaGWG+p zENnO2vhg?gK7)Io6_0CO*t*Yey>M<*d@Xe(*GovH8*L2en=-IGA#p8((V$oc>^|}5 zcTX2!ejjmNhk6*b%PyYlvd{Nt)BoeM_1cwcyXqQGwmeK@Ty@`vZ$R68+x8E>%fzI{ z_e=qAwj-}Lrj5Q~mMJ9m37-OG$^h#O^rpt+hxNKb^>AHqF6$oVfmGHt_MFujT)#ob zIM4>rhpFuw_E}cyc+U@YKm7jFJ}>Eek5`90+L++ivb5a^;{&lA{0-&22lPMXjjbyO z?4bRE$WGU~m4zS1;!vF_^Gbgf{0lx}0XTlB@q(Ps%JNaZ;Zx9W{L${eZ>;fk$2x-J zK8J&JPQ^wi04R_T8HjvCyQKbzvUUJz{3ue@g|wTsEw@-!q#oLPsw+iayS`(Heyad| z53gbPoo?b>4{>9o=A!Py?mMfwkqMUD&{(A8Nov5x2!2>5)C1EFFvi)m2{(r2H#T6q z4%zA4>cY5;_uhwjO&|Yki2LbH{#MqgQDez}J7rm$UzZy5q}(#{~p44L}CeiHgq8EwD@#&3OPfcReq{69+K zPaikdcvQV_@n&lGO_@JN**Rxk`LQWrZ_B8*0Oybvq;81tXFssz>1Lf5w*5Jdz0Du% z|H#i0`k#5{7&qn-sQqVUJWf}k+{nOO*lE4SYLR$LYXR%imm1 z-FBZcKv{_L8}<#OF``WDd!o$zUdAR@_bKPL4M5vR9t>0b$sgJQ^aaiSI{Q9&HRuWI z{oc^=D^}Z9-?Ra23wTatfcRq`nT`cy>ivOXxi?Adt)8>8kF+r;?hA6QkSh?IW%-zc zDKQ?4c_i+pcAv$c?H6R&KjWmN{-2Ms(hs&tV^0~l82v$x6J1=OYlsX4PmCSNy23FN z#%rJs<(eG$Z(yAY%q#uwR~LOVuPCbf7|Zl~_K(N7Oxf7iJD=EJxQVs*w$3M0TMv-# z1ey*qGC-dhVuFIFF{YP8GC=G(fAl{;WnxeJzZY$O>MH7e#s_mvnoPa_0On2nfn}!L z*KCFZj&JyA@a8jD1~|Vi7`wRIWq`Q)pldK^@V!-;*#G>SS(}9C75kA>bq-O&?&o^m zI=74X*K9EdY+rzLiolyRh<&3-4`_^j8S}9=RQsTqqrMZ@uJGwT2K)Z2Uox@(ZLP5b z+OoZ8y&nx9Z)Qv{%fWeFCxTMl;RoLs;yYsWDrb+p35orID?#!25ZeO8Wd;9!TIb+q zJvPVsxE|CEm|u@}p7Vu2fW9Zz?zRTUFJm2=j>MhB*rX#5Oxk-tpe#{8zfDcuFI8Yd z{Q3P5j)h!TOa>6&74#lp#^=HB^})8hdu_j-y1k^0ztjF#>>*=}LyBStt?nvF{fsj7 zfPUM;maWvn*PKue0DGecc2PU&D)5aqbKEar-|+MkB|sai>%mvD98l*c{rO4!+0Wxz zWNq2k!*?CHhMcZdOg&}uYVzF&$G-<@nQ9;|p9742viyRL{5$No0~!CIPQr2KoMQ5u#CY;621)uAtN|X{VCCud=)9E~uJggQUNAq)p0oP@Gx+!B zW1bn;73+(>u3-ejUVi*>@Ygv=(`L2}ECJq{Ff*Xw5~Xa)9Gv?c+IxY)e~$=7PxY zxVpSr;f+-9^T72KV0)^2G#@)uV-5jAQm*h zyk7s(%dv(u9-o`+o|#IlnQBuPq5Dv*@dQV(O1avvt^)I2Dnc= z8E?s0Ow7;byn^7`JAmP2jK?oTTQM*bcY8lEZCn>~2<98YdVhY0PWY}s6J6g!F)xlg zbrIuPj|hwp+r+rRuU)fMJ_jfR!2w3MQZIn-Y!mp6$+tn7a=>HaMOolJ=H_rrLHCQ} z7+(V!(D@sz=e(EKQl>JW|09magU&!b*VrBUut+uAhUb8;J!IpFO-x}OU~wsECWv)1 ziI>5!IF7}yD;aNI$M)tU(1W0pL7dZ~?L2jTP*dkOJn)G(Xbh2+1B1n%fC>Gq&w|!~ zisM_c-x!-nd!9PJEodKL9rlMj_cJo z0M!HC1#ImG| zY7h0zJcj#R{JCbCV(!`((F<#Ka*6{XR_t%TmcY?sN}0&O-HX3Vy(7*oaqi<7T~ko1 z5ZBafxz7P&1u6;ul5t0y&8?LC7UTC?JXf>j2M5^y@48Q<|EU8=#p`>ByDb$lF5JD? zedl@jZBvWEw>-(mH1z+Z&NWz45A2}dBcxuSo=@Oz%Sil5Mf+;1_l5FMgTG}`o}?B_ zo3d|4DsQ9gSoyK{GToH6WK2Ug$6N5CDbbayQ~gEOrfSLQhpDhc@v$jE ze5{O&?@w*UH$>0Jb;;xY_#w&<&NodQ*T!+gADmAfGXu-;;%W54vn}=;@HWaihp$B91mq9QO~8r-Tno9*3u8d3fF)hXn|;A8E`myOD(3>{*Go*|RmIwtZfh z!KTr%$x#33*km9&G%7lJUC6QMb+~Q-a$GyUUXS}b$2jfWt{iRZoCb%Z!s*YcEi*2c QR6*jnZ|3n;Yi(}+A7eL?t^fc4 literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/left.png b/ConfigFiles/PointCloudProcess/images/left.png new file mode 100644 index 0000000000000000000000000000000000000000..20f105b9ef6c3bc53ba0fb83391dee17a17c366f GIT binary patch literal 521 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 Phh$91v}}6zw{!mk;wZkX literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/material/3DxLogo.png b/ConfigFiles/PointCloudProcess/images/material/3DxLogo.png new file mode 100644 index 0000000000000000000000000000000000000000..59a5e70e94322d3195991344c6ef2cc4d0ae06d9 GIT binary patch literal 2379 zcmV-R3AFZ!P)0E@KGchnS6`RY%CqQTcYq_)(N z7D91LbBF)v@$Rl2Pz=u{ISR}G4{NF$;6z{FaTXH+h{`H}T$}=C2_S!n-QV9Y7AJr9 z*%vsTJ9mMiuqtC2J#gTV%jK!Au5E2?2Oh2*Io!v}0>#KWlXTu{!gIID$*EVbUT5yH z5OmEhpy|gSf3B#gs;g~+`EFNvVL>VINIXMg27hlgSKEn`;8MlX!A9XcG&ol7tEsJN z@_MRJhI*a(;DMttnlue(;6yfB;&axx0_3`Z0hK;)HSnl7)L^c;P$Ab~9a5%PjyX-d zdTRIXJz&>~Lr_DIgd=<<@E?Dkv)SD)cSUKLqqxLoG8f3?YL!~+4;+hnW^LScbQ_)#cGJKeY6{Zv|J2N;T>d(&p|%dfmKFgPk; zNMdoJiA176Ai#+xaX`+VJ=bEf6%-U5IpU8Wi&#M+Bt*ivfX_ew^t;9Cv^zW=Z&gXD z{f#%@12`m1t}k9ONT*MqPDx2AEiGjRu=P#)fQR(V3<*jGg>(E^KW(V-+xh-|hf&N9 zrw>BKN$Jl#`%?eFC}7|J@aw(%LF&U>-OqXyfsav1KC1 zym1;DJ1ID5Hr)0&71t0DK_4X4#(DRXKyCbPK&jOo+o!y~aMLoUX<80r=`|Val5BgY9Q_=n^zpTvs zYG%(~3^oT#m#uDWGF5~Vht&CzBgVe|+S`J5V}&+0Q6&jz)X4G`YgxM6x9|V%yWgfx znKNVhe7w7G;mWylmoHebiUWYNxvqSn=lq4T%=Ou)Uped^r^8zmfb zw|IW9dmRU!_iJtDk zT&t>a*YL5pLlz^N*KgR`(AdTs)2Gh|6*teHzjFNenb~ZgEEi%iC7tfNtG0>aRiYXz zgMldh{`(%`m@a6%k%lrsj;&s`e#+EYgv!a27e|hqICA9V&dy=6n3hU)B$HW1DQH@! z*B54S2~^-~h-J!%KM;*4QWGc6ga0tVpM z-~KXNoEXjfTDsu#N3j0wcRtXo4Xsih7sd5et2cm(^P< zyRavbRH*+&ohRL5(Rc5;n;?rsCEx+}`NKnoj{NKI1LrSXB2fSgQF`n$Pyk%+KvGh1 zp~n;1yY~U8jz(3u1rqr7_B@G9QFD;|+2>!wUwNw$iD{&aZoAzNjeHuUmKNuM1E&@(S_7~ogrpz@7N>WssPrr zgudN4dgNqp&yeOOv!>?LS|J{jv5Zu=aM5yVJK4wYkH_OGNeWcV#kkg17Yo4Si7^T2 zr6-eVP@7vU)27eHRvc;ou59EDVfq)Je;W+MT+X19%JT`8;7M!-u3#|(y((02>XT2rU}|%Ey;0T(#tn=jLUO_~ zjx847tFOL)_uY?%LNZr)OipE5S}hYNO~X*S@U9W~Dm&<6sUuF&O<0U6_>~cO%%yWs zTWezG`FtPbbBoE<)i$$MbaHhGT)t;F0MiY?!bAP~w8={3@O2m#rjwXB=9?~82$wTC z6wl5bd&P#uSYB@c*Z@yZ{ruA(s*-cqy%K9j>lA^sXV3kF7I7GkByYc?{;jv)=V4;q zsMW7cHT@crgCFYkC9B2d_4J$AX0reL-w{+C%DK&CJ96}7u`JJ2!B+v_Tw|Xp2td{1 z%RBF==lHf;?;19AR22YL8dc)W0K@U63j^<76z4)433&d2zy&}4__OhUma6oAQ@}d; x7wN^z=NUP@aQ>`Vv4(xRIHp~ynt^c={{waC+Ozo7TyOvY002ovPDHLkV1hzQwb1|o literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/material/Raster_grid.pptx b/ConfigFiles/PointCloudProcess/images/material/Raster_grid.pptx new file mode 100644 index 0000000000000000000000000000000000000000..f073705216b422b8de145ff3612f1798d38430ce GIT binary patch literal 38704 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 M;N*88pF literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/material/ccCenteredPerspective.svg b/ConfigFiles/PointCloudProcess/images/material/ccCenteredPerspective.svg new file mode 100644 index 0000000..3188824 --- /dev/null +++ b/ConfigFiles/PointCloudProcess/images/material/ccCenteredPerspective.svg @@ -0,0 +1,199 @@ + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ConfigFiles/PointCloudProcess/images/material/ccClippingBox.svg b/ConfigFiles/PointCloudProcess/images/material/ccClippingBox.svg new file mode 100644 index 0000000..7d96073 --- /dev/null +++ b/ConfigFiles/PointCloudProcess/images/material/ccClippingBox.svg @@ -0,0 +1,242 @@ + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ConfigFiles/PointCloudProcess/images/material/ccClippingBoxBase.svg b/ConfigFiles/PointCloudProcess/images/material/ccClippingBoxBase.svg new file mode 100644 index 0000000..7d96073 --- /dev/null +++ b/ConfigFiles/PointCloudProcess/images/material/ccClippingBoxBase.svg @@ -0,0 +1,242 @@ + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ConfigFiles/PointCloudProcess/images/material/ccOrthoMode.svg b/ConfigFiles/PointCloudProcess/images/material/ccOrthoMode.svg new file mode 100644 index 0000000..c81ac58 --- /dev/null +++ b/ConfigFiles/PointCloudProcess/images/material/ccOrthoMode.svg @@ -0,0 +1,192 @@ + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ConfigFiles/PointCloudProcess/images/material/ccOrthoSections.svg b/ConfigFiles/PointCloudProcess/images/material/ccOrthoSections.svg new file mode 100644 index 0000000..244bbaf --- /dev/null +++ b/ConfigFiles/PointCloudProcess/images/material/ccOrthoSections.svg @@ -0,0 +1,97 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + diff --git a/ConfigFiles/PointCloudProcess/images/material/ccPivot.svg b/ConfigFiles/PointCloudProcess/images/material/ccPivot.svg new file mode 100644 index 0000000..4b925a5 --- /dev/null +++ b/ConfigFiles/PointCloudProcess/images/material/ccPivot.svg @@ -0,0 +1,223 @@ + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + diff --git a/ConfigFiles/PointCloudProcess/images/material/ccSectionExtraction.svg b/ConfigFiles/PointCloudProcess/images/material/ccSectionExtraction.svg new file mode 100644 index 0000000..679bc0c --- /dev/null +++ b/ConfigFiles/PointCloudProcess/images/material/ccSectionExtraction.svg @@ -0,0 +1,211 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ConfigFiles/PointCloudProcess/images/material/ccViewIso1.svg b/ConfigFiles/PointCloudProcess/images/material/ccViewIso1.svg new file mode 100644 index 0000000..a20aed8 --- /dev/null +++ b/ConfigFiles/PointCloudProcess/images/material/ccViewIso1.svg @@ -0,0 +1,186 @@ + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + FRONT + + diff --git a/ConfigFiles/PointCloudProcess/images/material/ccViewIso2.svg b/ConfigFiles/PointCloudProcess/images/material/ccViewIso2.svg new file mode 100644 index 0000000..457df31 --- /dev/null +++ b/ConfigFiles/PointCloudProcess/images/material/ccViewIso2.svg @@ -0,0 +1,186 @@ + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + BACK + + diff --git a/ConfigFiles/PointCloudProcess/images/material/ccViewerBasedPerspective.svg b/ConfigFiles/PointCloudProcess/images/material/ccViewerBasedPerspective.svg new file mode 100644 index 0000000..624f81b --- /dev/null +++ b/ConfigFiles/PointCloudProcess/images/material/ccViewerBasedPerspective.svg @@ -0,0 +1,226 @@ + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ConfigFiles/PointCloudProcess/images/monitor.svg b/ConfigFiles/PointCloudProcess/images/monitor.svg new file mode 100644 index 0000000..8a2a636 --- /dev/null +++ b/ConfigFiles/PointCloudProcess/images/monitor.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/ConfigFiles/PointCloudProcess/images/noFilter.png b/ConfigFiles/PointCloudProcess/images/noFilter.png new file mode 100644 index 0000000000000000000000000000000000000000..0488983515d7053d702cd16453fc535443d86649 GIT binary patch literal 1481 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 O00001ChoHa!MwO^z7%HqC@f1u- zFouPo2rhOxN7D~hFakm2gUco_K|5FlOkvtL@|?pvZi2I5sLGxcpPbHeiwQtWiB1ec zun`;}LkoTAQKE{?ZuZ}}4>F{C<#>iGY@?7Os0HmHLqB?@2 \ No newline at end of file diff --git a/ConfigFiles/PointCloudProcess/images/primBox.gif b/ConfigFiles/PointCloudProcess/images/primBox.gif new file mode 100644 index 0000000000000000000000000000000000000000..137e6da246373ca1b26a14835479369c8620966a GIT binary patch literal 92 zcmZ?wbhEHb6k_0K_{abP4Gj(d|NjRvbU-|iI0KXE6xNli+aD@1wL4{M%w6+bKjxB~ pR8okN+Olo8UoO$tULPTQ>4Ef@I(~+_gpKZP65L@{vVn{Y)&Th%9m4cdcO788GnGs!L rI%=++3#ToOn!a@=*W%)UM^!ox*9ZSvXk*0F{#{ThN|aoXS1! g(AMCRmUe0z)2@AwtlBqJ_JuF#v$~cg$;Ds|0HbLilmGw# literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/primSphere.gif b/ConfigFiles/PointCloudProcess/images/primSphere.gif new file mode 100644 index 0000000000000000000000000000000000000000..635cb3ef15f17641a9ffa6c32683d564ba843776 GIT binary patch literal 96 zcmZ?wbhEHb6k_0K_{hNU|NsAnh6V;O&;gMkaRw&K7THD8&nK`#AW52^)fd$EuZPVFl(XD#Ij14ylMTLp0kKBFjxZsBF!Z4 literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/primTorus.gif b/ConfigFiles/PointCloudProcess/images/primTorus.gif new file mode 100644 index 0000000000000000000000000000000000000000..1e72ef0b5bc56d2fee8bb63d64f2a15e3404a3a8 GIT binary patch literal 82 zcmZ?wbhEHb6k_0K_`tyM|Nnmm1_m7?Lqc~mD$nLR&46=6?~Gr kAbe4LRO`EntT&p=CihPKUX!1_JK$uLOxI&4O$G*Q0CUtIdH?_b literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/qCompass.png b/ConfigFiles/PointCloudProcess/images/qCompass.png new file mode 100644 index 0000000000000000000000000000000000000000..e3c4548ef34d58af51a322c744764b72b5ebaa42 GIT binary patch literal 15651 zcmeI3Yg7~08iu1N3L@eS0V&47QoMx8g%C0g0SstRgUH1KS|lU`jFJnlv`;uZi_8VO4a4wt4amGWdXUx77W2jdCk2qvNGjOD=u(Ckm&)aNFgaYVCwDrP#b9zE1{-2C=qxtu$$&js)Xo=8V2ww7 zwJaVE4Vc+k4*$=GmWW|07=pA~t%sKFp;RY8OdgL1F<20bMaLC%O{xNu=;#WKt2xQL zJOPMCszy~9s#H*oc_nem6wHT4GZyN4bzYZT)m2EL>12mfgme-W#Pnc5eVJs^E{`fj zon#uCObQ`Mh#XO18r;Y1)2B*QVoFV-vY(P&-TfBE=R_>-s@>;!%(X$80k#1@jE?@oR;J zYD9u5)!|BIlEA#mLf#>y3WcUsMRorKRmhZD%@jV=+tNMX-Pw=;35E#p_2@-sc+;7T za3%|8@L&de8j}Gt7(f!UvR4kVQijH-_RPTzXL4Z{3ud#x9DuTS4t)Q}B$(t+WdXH7 z9+?!5SE}U_On}NI2?(T8B=Di`MnKuMs$iiqNvXz%g$USusIO+gWm;))kV1n=6jCH8 zK!7)Rpr{O%dU@f0Y&JdK%bQ8}^z`J=<9I9%ofGHHw*dbD;AtIOGGL;vmsn)3tp z{%dFx5ygi#lsT12)qfI=G9J@P)QEoqz9#<6UN>j$Y3rSy4;fGYB(m|J_!&$|`- z{(SO{hZ>Bp1$fsRh2d8&Y)bJI+kTk)F({5}Qhx>4yl$z2=a9}c>&=pRlDrX!1hGzeo77a<~0 zK;i;v5XK}fLPVf|#0AnIj7eOCh(G~}3#369leh>GfdUd2NP{pYaS|gor=^i3_Ab7?ZdN5rF~{7f6FJCUFrW0tF;4kOpB);vz%@3P@Za4Z@hjMTiI# zkhnk^gfWSW5D_RKae*`lV-go3B2Yl$0%;J&BrZZkpn${$(jbgUT!e@~0f`HwK^T7! zmv#4}e~1Eq-cO4^*!TEWjGjUnv^yxkKU_B;E5hQ?uOhpOlBUx2=a0)9Zr2=_-#sSJ zzxC=`WW()KwR_#l>sy}|KVSY`u(u{y`)vZvF8bJ#(g{(kPi675`78L>cZJ>3ytUjg zcfzPK5io0dm7_!6^pP!hn4az@^!M&lgxSHL+BVb{7<>$whE_wG%xUA=g8|XG&s+z` z#fJaF^`F0|(V{3+#=o$4jns|5<2-LM75!tpVM0!}yXf4rwp^M^-l*)++ZRz&>oD}* zgH6pL(u}6MfrhJBvWMu(8_y<-oY-Qf^_scI8tO!DXim*ZL-YxiCfV8h%XuQ_k1L8e zk$zhcougaO%FD2;;~sXwN;mrTqm}0Z|F?C?^a)3?ig*>=kse(6`k_@>y+UWd?4*VL zfyirfCb?e7E#5D2jGetWEUK)`eVw2C^r>l6Esor_@%U!g(3pec{&@XHS!k`Rb1Ajj z{DfV7dbXwQXR0kX)0?mzu)63<@z9d=qTGZGN7%pU=8WYF;Ob}htTI;AGB#x~!&3Kr z&CXo*5e&B%P|`Myt!DU0ciwn%?nx_WeE5R1$~iyJkkp1Wx4#{t;_LP$Se~mwLr>Zk zJhd)=Jv_N8v$}=-Q-ZJl$Jp52_jNB`F+~EXRCpx z#L9I>LsaU~v?HOG9{L-PGm4nL-wd1f-#g!LzBHxP`>CLkm6a?k`HQRYPnz!p{F+2?|kttO8wd!8(PWYK2ZgPua8Y()*I^}PRthaL6 zkZn`TEmO77jwdMs*t3h1vzoSVZ?suy@cWb&oj0i|Wl7+7r(A9v zP$tRF@4tI=g<$!c^Oq{}&$TTauzpu;qVq|wh5w2ep>;{zHfKyB_4=%~s)_?|FK=_d z^Wp`DOpMyMp!O6pEY??e@W=88kFIQLR!VkVr&|`~4i4Ozda7Yr(|kdR#a--Bz9KGk zl2?$!fW@LwRkn(_PniytUY`8rYr94su17yFPie28J0V6BxgP5J~25M`+CHe z<9}_KS+?rNv)rsl+927jk6(V28y7Y??UnbwjNy*!#;no*HsE^DIKe|+sa5>*pB}9} z!f_ZG{5d_a{qxJsJKCp&`fZ%K)wkK^LG5Abd|e9^8c;*+m=T@xGVR4L8f~IqCDFW2sH9h!&L8u)-`}2L^ zp!u7W{Z9dA065aW$n*2_!{F;{;0f?7f`1O~U;Tajjlkas{Efih2>gw}-w6D_h`{B0 z&URLgAm?I-NR_^!sy`3DL-4wi) zPyM{R0(iauHuRK=(nCvYgH@tV>#lv0sl!u3%rGoW6Ynl6&mNMe^ z?@3#VOG;Ya6TfFEEh%m(Eo~_$BY8o}TJrv>->0{<_~+~oJRUm!oZHd@YUOCMrXL5Ti2>3@YEW|FO^#Qj#)C z&_9e*g6@OyZ-oBOQvRpVQc<$BP_Wpi-R0qL)9YEe{{LHTM?00@9O&Qp17H4j0p1vt zxBC2r)OYdU|>899`uKpS(pwp?_clVWdG~?-vWORAEZCHKjN<)lv;rGAk|^22^y+X z05vNW4J#F;5rBZTNII}=xnH^b{h*?zp`|+jlElCW4k$YUl21cJ4H8R73)U&A0>IA! zT2{KFCnZ%69Mio=f6A3j>hX)Tg94X|>)3B~VFjh{KMXp=z`=Q(i(5!ol+%Inp?iKwsrUP_Vo`84q+yzrhm-L&do0@;?_4d zxA5D9o!x!Dr~sPZ*!m}Df8dK1|iRmhPnFfupLr^!HqkosxQd zknPfowBou$0@Amz?DrpbF>nZ;pA^FFv-Xp-KgU?m{}yNeWb9vjVSvLlRN&&#umUiE zM0^*18u*JR6>oX;>kOvOQPgw9L|)~SF)MTot26H0h@R&=H~2hw+KcZ30kKC*XrJy!Vmt93H3Zh_wSzN%x2#=R+gA?SiN?uj<>j&$YPCDCHQ-Nj+!jO8)9RaHG1cB6Vtv z3zZ>h+9H@{GFe{|f6>R9pJg$g2}9mK1wI^ z#t(|krTS#pH9n`6yLh>i=YvQ>-XQ8BBV9Mg)p4~d5#-(Rf}fY zx~TqxapJR+|K#yV3rfcwPz+^wR$hDZLEx z1kOx!nIzGx6Y@!!Qx2%`a#oZ0V6ARPvBFhxj?<&D0EuolZ9&yq1$x zTQg&_M``&1(Zqy{%eBW1WbRZM29X;o;Y~~$lZnJ*p6zvL)&hS{hrD?eG0lSEOHNlt zXP=&#Nz#CqHVPR;K8fN9TnK%gAYu!U;=BBHvkB1-jXi4xYsoqv9kfs--#(C%JnC$b zc8Yfn+`2sx)ex-?N43F1#<^6)0^0}1OXnI>HpC)&!Nzd@5Mumqro=k z!m+Yyy>EA)8dIm_tfRG} zPiVSMF2(TLb9=@(*$Z9lF>2v^jvLD*H81=~va_(0jW69WVZb8@T4Xs2(4|DsrvRbM z6o3M}ETvj3HH=5p!*OVG*jzn|c)^PT5Hr)sM=3xQ1=!S4VMk0hpeewNIN)2zJ_E-l z5?v_3J0EO51z-kcjRKspr2tRR(+JYB&JZ}^!5RhF(YnZ&ukK?=6runpD8PKG|5*yq z5Q?AxZ6>fuC}EreT;7;8B=aaz0P?Nx^jf&-3C>`IU1vxoGN{^ba#XHKg|naCU`?kc z#@$grSRj}7{6hgc%NGolQcrIkJW!2lKw!1TgH^aHa1SX!J#0$Ze!7K^16jxYdF`2! zUExy2`g~lFP|sB5=c*(JTT}UAnwF$zIXfEB8-3Ktl_V|3Fv__a$4AN_iDm00pNIqnYh1MdD5S6E#pmkmxm7&2~xkS~; zdHQEthCTlBeh;kWp!e<%2={*#b_g@M`Zi49MRQVQhGSjijkSJcBlKpMtr0=vx5 z5lS)%=53u*A~B_V+M@9Oe!C=xJ%`(eX#KQaO=HqjCG!%8_@;(A+0p;8L|qi%5Tcm^ z?1~^6(AY_E{nis6$uo`(e&N|7h~#u6JBTeD}K+wHa~MmvDsssI()TWwJ-FH zn2ux&Bt+kjEailXIT{Mx&^G-DswfA4UKk^pk09GqUs0(Nip^Sd=sZ{+Go`F|t>(Ll z?QFE=({;?0BJ%9z)Z5-kdMC~>+zz?#VHAD!0Ppw47q?gWzC+j+V{Y!}i9V{e&8 z95H1w*yL3+iuTj&o}&it z8i6en(Y8Mctg=D)I_kge)&JP0Z&~y-gUjW!4O`I1R8A9pdsHrHa6a~zpBU9?LeA$F zdOsj+->msQU1kHR`53Fs%c=9~@}0D&7dLF&Oz$iofW7AzyJt2y`uGjc##Sx)(j#7V zwwqM{n^#o4Z8a!nC>^WC*? zhO-}zAnfgtn}=g40CfumIHrNm%B27ozfb_I7y>6#7%r(Hx=I09))~1NbL{Qj*txE| zQ2>Yq@eHC&MrZec1_gL*K>@-F9d*Oy;a&v9bE8&rZy#))3qq!gAq(fXOle;-GjUMO zLcKn$+cv%+TETpWd3+htT~Tbz5lj}1(jr$oAvUd=B#edQ$0y0EPU_r6Ifz+K@cS%e z;g}U|J@Vrh6kx)L0!%sFX1JrL8?ZmjLS#?xHU)TVi6C&m2uZL%Ma^3@P9i<~mD+;6 zc4N)0`wPAksotPt(Z4Dx(xjxFi5OT1^(2d)kRS@tP7Dzb-ZQ)n*K7b+cYo70eu|S&HX*sWBa+0g1M6`4xfG6LSUw=%pRRW)j0d({(-jZA9qK zA@ReAibZ1z@ca(AWEV(h8gBKmA-?>MhQs|x{oi2v12umT08_U6(T1aB$PW%FCy(}A znP-lxV&smV%NwGHEdWSD+PrJQ9-Fh5b6nNT%^xpKS#QEE5^eI`bh>e&F zE9)HytH3H}Gl3tx)3Ao|(#Xo}aEt|ZZOREXyu7(Jq!PtlhJJm|1F_dR&RfMmil+co z58EO9Yq<$a1Dp4H@hAJk*GD1v9i+4oQ#nKdnm!Ryoba6jq`)X{pZ&2r8?b=&<$n!*T29lm9l6C;M*K#` zz_A{jE1K9IGK1oj1C(hHLx9%?vfvI^Uh`M!Cn~z&KVLd-B}oCY+VqPoKE8Z-`PkW$ zXMwwnuua~#fjx0c97%rY2A8mYao_T$bfkv*o@C;6zjdCSY9A|=HgclGi*;sf?bfwc zoZ;?@C>fmyYD(XU%}$KHlcu;SnZ2`d4_2V`MLqadb~T;=>TP;HL|s6QN?+Hw)iS{n-$(J;% zdFfLuJ5*y7V4wulx5Cxyo%p2K1*ZrwQb}RK9Jbg_l7hygwF1;;Nx0^2q@_yYK7YG~ zK6_VNb8VLk_a*OR<&%?A^IfPov}WARb`a=Hl`mt7*NZn57p>m&rM;s7U$}e7AG66p zXZw7vMC@I=<~~dZ%AN;KLGsk4*Kt>(Je|8ub=w2?BH8v%E=5!r?a&8kyMX)PLhwF< zn|rFN8@63BP|ugUF(82F^p-=rSNc^#y#?O$rN6mFe=876T$*Gdh#3;u)tX_&P~x#< z&^bHm&w`z6>L-g7CtmAWF4|f-g0NW-4}AW`c}_oZwQiR5CU`xf{>Ag9*gyda5bO+_ z_&g4QIU%D0B?$qz2<^U_(`woCaZ7mfQ(a0h2M4#zY5|z#CoT7<)NzjtI53cJRGL-+ zUEd*}UK%E#R^$Z=MD_&_Hz$?*EgUKAp4}VhGKLF6Tf#Q+?GUw^c!b^S*Y_wugc}aF z-FO&bp|Ngr%}HaHw0&F@uSNlMK*)CHX)3V;#E`AET{4^`98|W{;tt1L(K1uheGVoL z-UJT$zClILnb8MNOb z+7eVQ0kn>N*i+A}fa|0G%$D<*C1(a7Y1xamprq#a~(ENx|j?@t%u8tL~wl zL6ZV|dM6(EH*frSVSMZ2r5{p8oeNs>?~+;D7(4(A&`NxkBJZW}nVM5XJ8VV0lSO?wpTI!rDEC@3=Kc553q=`&n3N4Qu_YIX z)9eKyejdvln%T1~dP(mYPQQEfS5BJl5B^{z#%~SIosS}&jxCG1){1o@KK_S87E=K_ zAg9b{%MAP6s{&kZBy}$ycNTZHu+4gE+xVg*@}QNKlGO97{8$b4`{5sAk`Q;{gKLv6 z%XQO;hye(T3Kv13*3F(zJoZrLccQXKR;wHE;lm3H=z}zKp%*{SmK&AaYCIcu`3Fhd z9KNTBkwHZUib`vo4@5-HJa>uEi}5CZ>lt_;myymaS=r7}eT4pvh)C~gpdeXihffB& ziz@@;)oNP~QW{E5~cnYwDVJgKail11#f;ycrs6B3A-$Fy3=TfAo;8R&$g2khWmMD#9A zf0-qiVetfw54;_843%y4ChjLRqX^yIh$wLru8kNX+c@5U;IVfzuv1TMdJQ0Gw1}sT zVzjfO94>$E#WZD9R~TQvR2xt%_m-+UmMw(O`Mx3hnmHpjA#MV4*l6CD`E~YurEmkBm%Ft6*P z-ma14y!K{NP5HFtt{GjjYbi&pd5N@MT8t=zom<#Cq7z3EP+;U^O&CaqeON2 zt`*o)IAZ=(L7y2X`C>nEs|mKrYLFBC=5}GdQ~JhBYd0!`k&hq8 zt9xoNCwraKAGPA^=2}0fus@b12o67HydpXurqfCY-#`rA>ME!?vDntt%D2Yuunu4s zU3p{+J>8-%zJ4bE?MG9UjqJol3+hLkdElOqQj(znCj&dLY+Ok7FPjczkhj?*M)q#Ymh zuB9XX;?d)h?nA;4yQ*b2`+Sh0D-7g8m9rm*Bp~$)m;E{vUa3WVy*i#bC1Jhv&b0iTa;+CW0WGWCMsMxvdXjYH{y$SM-c z#0pfmiwMm&wcm~Ot;u(B;PFZ<#zfq%es!AV^fT#$+wa9oC21~v^_g2?r2s-U6L3-t zCww=`p=`15uQ{kUZ_rVdT%_SSQ)JVi0_}ERQ82RUJ3ns~y*e+Y+$MTv?{bQ&Opn}I z2a&pI&*<^3EiiaX|4}d#=yYfif=!)AY##3h_oM`jd^U!la~`&P*bYwMgb@0(6EzZb z#@0{cI)}!ad}U%HKt*A1;t#XMWqb(ghBwX9WE(Nnj(yUANXQxA9|!_AE;sHXh$58` z(t-0RB4Z5EA%v8&xnVK27CxL73n}&fX8hRC>;~&;P{lOQ$Q9gDZI&ClKfs^EXWyZd z?c+{bOo~f%Bi}nrSLnNIr|D{qM8NI_D#W@dL?G$ zZkXF5O-m&gWc_$I`X^u?VPPf?I(xeQ(jQr`*N#-Hu@`LBtBH% zsImsvWoZksY1*ql`@`>;cnHYT+GWVb@oo}gdKHFCCm$PSAqR8A$#h`c-emB~1TKLZ zTj!dFmurNVIvL{q`qQ*^bl#NW=`A0^zkQ9EXBp|?G3W8JL$N@ z4TtaS{ami%W#+U!6^EP8tUrz_KW1%m$h%W=f0w4w*Ft=#S^Cu%-N@EgPaf^MUo-U@ z2v=S^`5OJJ1m!NJ%5-IQq1a`d#9tSV020&Wh3%r?_Pjv;=}VtMo9DwqR^_KT54K0O4WrEe7*jtDzJ?H3|x5Bc{Q4KW{d=sx(560$c}ARd$Q^ zcS`-H)KZqXv8RS)HEtbU3IGL{H_8XSoImyT#C3v8-j&^~6h^slj~&_S3T#}Jex-c# z+u8ff54l)|26<{}51dnec)8vKb%7MWi7zI&<_V~a303Q%TFbSZu8pK%3VWP~bEL1U zep5@^Qw-t;_$42kZ$JMw@H^UuAll^f`@%F0&cBa6StfU;tAy?I8ozu1eY3A}d2XTf zBE~)ps-GyQ8yQnltL&in>r(0YE6CaJt|>!rB7T&z7tZwR%~t3%zFM{dbErPQ2x;}e zMVxgcvTQrNC^|PQPjiy@l;p`+f+(v`F3%w_>svAyIp=s*;)?34SC|nN^Yx{#?u^vv z{ozWv)UDuXnA~z@Z2J8TJ;lpK<3r0=mX|}++g1{$Fxs{NW9L$A6qP3C&RU2lpL4L7 znv2|8JGjtam`1RMu_^aP@nCE6nNv?{e;Tb+ecC!rT`gA!VOcAU@ZR*UVY_3u>x9qD z?sSzVtTI-FD{AT%PEl1z2Jxmlp1s(7anYf*c{=aXyKJqw)mHKu)3v|=W|O`*R_%~h za%it-#}po@TpkzGJNlX zcf%AiO1Ltjf$va{WiKkE;F4CvqjR~3uXW^EC0x1sUHa^*NBik^CWfrYJyo zNB?>Q9?8{y+NQL3g*Zt{$u633G0I4vX?bl`J}`5ZKB?r`BKr<#lxaa78yrGp1%2wH zq#W`ofB8x*??8jgG4BuLxuzsOk6an80E5$oPH9P8e7BVH(|A;DuL@i}Y$w7n{}r}4 zqR^M|487plVS2nV&n9PQ32d_) z6YAM=xF8|!QfTvZ=IGTFA=;}2$-Oc6k>~JpndhLOPx>htv@@s~(BSYD6_r>MhCLjI zizBa9&v-GD29VjxqN0tJpEG*wOhIl)GAu_?^5Gibey(H;IN)pGp>p7iqcgY}#r4h1 zyMm?`M^=>rvHLJm0C$dEx9*Vsf|0{!!@PsdLgo*vLIW2M?YbE}^+B)1Wy==ssVo^R zxd;usR(^Uax?Qi@rfHM@S!us%d9##%Nh#H9n7bf-PZ~seFNxT&FAIo?Pc@97@8xd0 z%hJGx^&?)vA)~~d%7(;l6sjazWi51#u15Pvh<|yVYAimgE5LtW){ePD13EO0)o~ea zuN%ke!iMDP$2paR@KK6dxN}KzJ!?Z8OE)SXkIAq6z+4qFk-e)irj2^UOhYr07xN7E zgWitxdT)^TID;%kyqv05+Q_n@lD#zJQIAe?Jn=^aK7i)lIf!~Z<@b> zynBgnaxH*k&ATgPsQBIWxVQ|Sy~WS zmvJH|tPX*_HRSI!!8$P<6RL9IyK@l^#;T#=M1OA$U!lS|BrEJHxYkXOpJz3lgi^D2$`qkKrbz#CvSb+_&%7I8?Hm`f=?k ztIG;oM>-#Op3uvo;REZG8cr~B^(t5|`0Qx#M^8Q{6n=B@&)FUQN4n~4z@Is9`hYd& znZVQjqF8ie;ThPZ@OSsMBdXb}AD^CR*L@)1lyNj%b?4c1w6;GQTUZV8nC!>NwA7xBiSY^|nq@AKsp6(Qi}Q^mMmhT6D+WDZCE8z2mr5l(_49bqehuu15KDP> zlju)&xN){rWOdwhRJ10^cG#|J$Y`QT)h*X<&TT2DnKi`bm;AMD^EsB@@Lvqkwo3P= zqPG3UI0lV(z@k^e_T&i-lVH&7EKw~z?If!$OECQ+ka}eB%=znTbg^=WP8}_vITc$V z#ge9L!WIZRVRhW-iDC3p#Cwqy-f0w{10Vl@im(HQX>=geon-~hsF^;rfZxE>_gs&V zo%CK|Z>YmRGpbch0meUDkhr_imdKDwZcHJv0ZD687&AofIMpQ{w@g+KUij`!7;MR9E&URL+k~I~hjqG-5tqw#_*L)jIx0SR3b2TorvsB~K`WCz%cUFkFXsCf#XAfVO&m=hASK#49rRnS8a1ojQui&h z#2~)lauEYjD01Y--}Bu+HphoVC!M3kL$VuCv=~xED+k#i%(3R`)4I(;&&dlz7J>=+ zF;$GE77SO@Z;)cioVN7?%Lr!TF$X+EWSMLb;hd@w_ZxMN#j#rYEu$eA$@N&#@1Z7V z3Lg=zNZII#9#jy54L0#k0TO=xt6!4}E0#VYv$C(ug>IgF;zjA8Wd$o|5Yr{0b@zE; zDgXCvay-}gFWgbzEzAmRg)zE6D>N9G91kk&|DuL}kR=e}JX4T#mGD|%f7#av0wy`Hd_&>8H?$aq@LBBaW|M;0lVtLe6=mU&KTTZa@| z!?7UhT#g30aV}3aj1}l|dZ|8Rx0a<|aj3cd5MQ5bH@$7k7gys-B$&x`8R36Ox&O?MM_+5eYY|K{GZ>w)Yjv_q zPBYIg`wD&7xg@T<`33i6+UZG*y)wUNr2ms}Q^=6?WMC5i9;^XPr-p}%sgv;W@NjwDFX6Hjzv^YKeqa`3bc%gC6&D9$E$MQl?e zxj}_B&Nx)RC%DPQbCefip zq4XsKGHf#Q7=P5~@p z_c}iIbiUwA&b7ZzsHt$~?|JQ?%9XzNBs@2V+=e{tUdU`vPVk%f$W*`;+TK+-&?>nQ zlO;R?g220?k#X1pa`Mz?sT@Ku`Jxy4w<2V2LhXYjmgO{TJ(F-_3wFECb;tFxo^zDT zx>L`MS08s2?N;%@-3KH|4dKNud%{F$>D7KnXdpw>y`h;WT}}hmU*${7T3VaWZ~LkK zM0wb(CIU=?I_T_9A$Jev-`2RRVofTCO~k?I5KhP;zeYIY7V_XcnYVa=?oIh_LRi+Y zDcsJ`;DJzCN~3rQRa!-qc&(BT&{WT3*oMSj9w*2}Ou~uB$ZL&csR0R;%31H8TOWJ< z6`lO1V24!VnB(rpcG|&)3Y}?GoZpERx_*i^g0pfwz2bwonROus$39B|K4iTn#bL*9 zM=XCZUd7$`EYaMvb%J+z%QSoZ!%mU`Q_9$VR@&r>S`Lm#2I~62RwU!JQC}c0LFls8 zwa4#`q)qxXqy2(L=|`OhyE) zy>o~_xiB z&71-I`zh*dR51uJ6e>r8j-l7jAX4-X#{RY%D#t@98~=;~#Fk*8hOOe{}$ z0;z(=a$oK=Ym&9dXFyKkKY=xhXE(-9V!sZAdV~qrx8~Tb9PU0xUb_0}Zh#uko}r=J z**co59eH_j93lY2Mu69Z+#|A7gbSMqX1FCF=TZenB{}qAzoA?6BA1})Glth}LC2lN zGLAfOcv@v{Bu!zBhURqqD0M`U_m7r;@ zljBT7gY5x6d72If!-`giOs1xJoFAsCT8uoBHa6$RHho@s@vStTl8`tE-M6+9^z9YjN*NtJUoy^SH139YZ`ZQWm^4g{ zhhH9EOhDM;B0tbe+V3L3TThu~qmpYD?13^ zRv)cbT}6d5mPPzqfdO>7excObgm42)$S@L!D_V>;j&7th*HrUBvbCSV!-umb9;D-C z3Tf&VF$YYLJ5K+&?JY35!s$Q(l*@F8Tz9~XU|YtF)6)mYWA0tB6%B0L((=Qr{guui z-~F)jecA5v$&ny;?tMwcXf(%)@ehoDY^G3WE_3`enzfqIe!O&`!C0j;Py5G0<;0%h zi-J1=$q$E!S*vG4GHaFt+T(2!T~<9`#;Lqi;pxUFqMge-5T30NRY#`ZiY>{RY1<@fCba00&zD6jov=sDl!IM5 z!HP(-ycPvGXoe!<`(RirHww^l7A4VeL1$R>x|t2$zkem^n-)$GPya<5s@pq+3!p*d z^rSc=kAJhcn|I(hE5d^I8ej*LZRPZj3&E(!RK6Cki<*hk4gK zU4225>LD6O6a=O1+G{t{yRzruJ2WQ$=wB(|6|L+4VCVUD&OX@v>H`^3B$(yZK8qk+ zT0zYHWLp$u`?8g&IF+M)+k@X?xl;6UOel8-+|o~Z?94#c`mlDdn4C+WGcvG!*3L-Q z%O~gZ(baK=0&(u>Rw9>uKDp}lB5YP@A288x6aY-UQJG-;75ms4@{Cq-SE@u3^bC9C zR{NZjJJ#2P?Mwr`eDW?!t!|uTJoYZs$CGB@bV1Co1YPy#`bE5;5)GUU@O94pJ{Z`3 zA54+qC2UH;Zc%BCXNFQ$6OX+d4Qw8Z+*w#NLHuFsy-SWSCu&AFfA-0GoV5c76M9gU zFH3XYTAHCNu%XHzv1F)>K*`GW@q5pUh&#HcKWYzWT5Iw%Vi13j@r@Mv+JyW)W5PQZ z5q({eC!0CsftkgH*_G;EokVE zk|6bo0!+U&H+!VDw!;gyknC=NZ*(PW72g>xj{tW^glx1{*0_}`xpLMRJ(G#nUUnrI zYO1T$WEB2c-QA`H!M`C@fRzAE;`Q%j9s;a(ce_a^9L%}Q_KOi^GDa~&LeVK~`D{rc zq`rt)I#?&7 zLCsn0@bKv99g{^_b4%>`XZ3h@SK1)&p;PfRPIpy61N~HskcLA|kY8jHB5Ki`GA`6# z_cXmN8hwR>ang6-tPULJ>=k9Drk^B;!&TX)uAYf5Kfa!Hik5mLdzxmGaT4q)P50L& zB>PyUEsnEn#T>{E5hLo_pzH#nVk}-ev;hDr&EV>+e%t1D%N_gB|6jURHzrjA)X zOT;`f3+iAi=G9q7Pb&LO$r0JZbs`MV)I?(}vUVFz-x(6M`q|>%J&zoCUB2m;=hYk~ zZC{En%3kTVc-Xi{6{Y)zW{3!ei*#IAx%xFsOY=CBzfYmJTCJ=KXIC{WXK*PAbVtND z30wIo2HM&j-_9fNZXB`8d^*H~P72f?id%qjf&Iy$$ddSkWLF$ZOX@)^Z%vtGdCw0V z-)E;x@y&GF7S@mMV-rWN68Q)@vvVDI~lyEC(+?VoeZLH^5tGKt+&G@X%oS` z;t$KSSFlcVu3*Ul+yBdRY3G)=`5cWCjtW3 F9N0kA8m8W@uR{&BCrKme$nqf(=? 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 literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/right.png b/ConfigFiles/PointCloudProcess/images/right.png new file mode 100644 index 0000000000000000000000000000000000000000..851fe5a534530e23da322ffe5f051d50af68f101 GIT binary patch literal 509 zcmeAS@N?(olHy`uVBq!ia0vp^@<1%d!3-oH>zJ+sQY`6?zK#qG8~eHcB(ehe3dtTp zz6=aiY77hwEes65fIC?%9nY(xIUb%8*QAE{?P5;tj)305-)}Auu z`PzRe?ge3CVRMQ$JX-ee{``M8r~ExL^+|+x^#1-!YnpdYDPHjZ|9{VCeX&5h7?Zr+ zUF2DL1@;0t>?NMQuIx{_Mfh07ubt^V02G?#>EaloasKY4vwTek0&KV6iD?9^2#a}j z|F^wbf=F5RqmvnrVyb4GS@?I=mHi8N7qGejxe1O Q25MmNboFyt=akR{0HS5dN&o-= literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/rotate0.png b/ConfigFiles/PointCloudProcess/images/rotate0.png new file mode 100644 index 0000000000000000000000000000000000000000..73343545480004d5afdc5bf731017a983719ffe8 GIT binary patch literal 2865 zcmV-13(oY3P)?u7ryocyKvZ*^Nm3L+! ztVH-NS^Ko6Aw(NYzI|u5Zk~wdCW5h);2G010n#z}0AkMB2sZ<}1_LXpbg^dM<{`0wm}4W{2#m}te+N2pA>Q;ii97CK1JD{uz67!s zq>HV?x_I=we^%6sJKqNG1D4_1?R71tyh5yF7&3Yl$Qk)p@1uG#UMf?pI%EJ;&qk~^ z(8*Qy_}##2RM&vtiP!#W)5?}Nh&!i%t^oO5{?%%7xdn8!Zz`!egaG1rDUZ|dY2od6 zP6aU_+JMkEl$Jk(tVaDcU>yhk`k-y2CGHsKI;+RS>!o-pbH=DFLk^%^gjVNhd_60$ z4%LII3TZraBM>H~$I~MB0{iFtc@oLZC)@sbO?KNHKvc40m+j6l>l}o0fC-gC%i}1I zRE3dnE=9Sb*hcgQvZ)1ijb^(7P`Qpn4-M}EyO+KGN8mStM=t_7DtvD~Z*qRa=ZTL6 z0J8)vc@6caB22Au$T8aAg6=REZ~8}dXTDJ3V*?<1AWEc9!6}8h&M(E!(vP)KlgY4_W=81S?AC>`(@%z zcp7ZhODCLLQO>Ox+-ey^=d8B|4L}qsJdA7S;|HaZR0j|h+OodZX80 znWsSy1AQFzPrz&cPs0FW=|d4&gye1`+x|#Hk{c_*KM;|#O6nJuTJYXnmE?Xy=bRU6 z_E{6a(gTndv&s5mwV-S%fOuv$Xc%Qt>twvy4;2TjX92P0$0NEth#4vm;@RJ72!N>+ zwFKcdlr6Y+vIKl+$1eiEL)FEzA1>*?x1C_ZS%6|LZa`!f+2qPX+cE&oAAzH)Do_A` z6~mpqzGUz)Om3FVun=Bzk=b6q0x@SXA}P?Ft6E6mkG%mnxMKvP#~9rvpsd5QO%NyK zQS3Apn93`m0-S|s|FVp5J|&{lsd7e zLFVEnpJ+=U)n9t()4ZvvSIti`pb zR47pmzzHiq%a*MU=-(JI{K}d)L-mOCXCoATwTz?OukP}TXYL0zzUkh=S0)0$xf?h$ z2u8T}%$fj#poZ>;ub1Pc%)NjAOJ4xQmVX2B&2^iJB^1g%SX@r0{g)Ayv~qDkhykntsnIPCk2}f_z=zQkJoOpJW5Lt5ThhH^bb&a(&Q; za4lK;l0tvgPJ?U1n_u0E($=RCbv0?*mh4UUaI;iek-&fK+pAKdE7@ZYn|sg5^;3Bh ze^>`H4CD=ROrb0Jr`iBoSB%BanWOAz;0d-2Z{x8UAM{IzYK>zn4}k90z&Z>R*dt%< z8I&ZRZ7iXG<(OM`VMMq2GMPjwGyPL>lg7~(OO1$7dKxN)O+|6r*gt9Nw2nLDPBa*qG$LD2u8_`8%Q!DDp)EI!!p^VFCe48zEp_mQIDj0bu z-t_vv0Es(hBQqM;u9i(@1?JjsrmpDOO%OP#8jr9v#R_Dq@d`5Z@MnKW2EA(AdvXw!x0 zoxE?YVq*hG;n$E6n|!A3;%>0QzygR4YGUzwjTwtrV<9Y)v1{k1 zH8!YJGt~wUKrJbXS8r@am`v90YDVCJt~;~<%zb^~r*xvz$(F7Ef!3~p{)P^K@#a3} zZqGQsYpUKBHz4ppR~b40;g6q80CRPpQsxI*^L&3p2VjsC=x?{5dI0|e93^gy+j9Xg P00000NkvXXu0mjfI*(52 literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/rotate180.png b/ConfigFiles/PointCloudProcess/images/rotate180.png new file mode 100644 index 0000000000000000000000000000000000000000..453cdbe501f4dc0b769ed1e754e2f98d01e39130 GIT binary patch literal 2373 zcmV-L3A*-)P)!oBRazc9$9yyQF|#vs-xt`xmuzLk~nQvjT@fMbDx(LWxMn?WuB#-d~_sIl(f-q;7S4^jKP zztsRrJ%&ARcc;bcoC_FzlR@=BViw5w<`hx8!Fe2H3wH0;=6F<})m{L49y%YVs~6O* zz~yZgcn`>rNDTI|id+3H%Y1CX># zS8>IAYX~z4Yynk-K=o#yyUX;P-o8efR<~bdC6w%%txA8r#S!&OZ(xt@Pf)y+)np5BTUUXMowE> z91t&Hn+@+jjRRm<5-F%+5qa~0no6{TAZ2|S;p>sCY%{1+DtjA}Sc=Fl3Z{0cz-SDB zRBk6C9|$e1)B^J9I^lq68Z1m3r=chxa{u8*cc^5FOg}}FiOyz#;%(t46vEy@$?B_v!v+6o^?*Z<` zrh7*)wpY8b)9>%NBCRZ7(zAiL5BLp;4rYzm710XtA^V~eSuW@YqzZ!FH> zmw*dEJ%gPN-w9IIB!qAtv8D@zAkzZbQbLi%fES|hgrb`H0MrVZG>Pn*5_S09F=-PIHyU zQ`qLTNaeLKhmKs2Qu-SF?hpXiJY!raUQQYL4v$UY5fLRsO`)iTNiT))>NF}eIy{Qv}9BQb-* zyq_^KcOl*KOV?sVmQu)kp$I_HT;#$+{ zB@q4!nVOl`s(V1$3=bmgL2-3axi=7IQ80hbl-#)tN-=jR*I{R#_5t9TvEmW(<{j?; z>)8Y~U6TO34xCjMKrxfNxgp8`%KxhdK%^i;HnyI=D{&IP^-NujrjXuW;axW4_`N7j zxZ@5$Pyb~&j*iPcS5fK@i0IAo4DU1Z$(t((062Iyh0pxgX92~aOs&IC-(2-U4E-{6 zFHrx$P6tkfa3Iu97f9vqMq~x>8-%+kn9nlx!MAewoO{cA#%bN>bLhyGm1DH~QVMr! zH}po*@-}6WhbUzH(P@2H__IYy=8(_)&_6K(fCe_fvXC)xfMKlzW}#S4-ds>#c;dsO z=|21~@3Z!O8dGCl-3nK%bdSK8e)`+)k48$D8d0_xbh*ua# zAA|mdQRrP?m3gx7 z9_TtZ@-md{{}{+L_c8?9)c@`VHBm!np%YvS?1!!mFwZrTD$6Jy)rj$@<5l-xTRl)pvjR!O$j zaGm-rpbSD>d)#qom@smmaC?Wt;{d4X*lAtbuQ?h6z};zM+T=J!jT6b-D3qf^^-QF8 zb@;u1UgH4h*>UZ1bhuG6nY$5WNo-$ogUV}FnghVIgy^<87v3Tei6iUUQc*UnIl%22 z`sk<5CK#ArwS3p|CK$yau6?dT`x=T(2pf=rA2%eRk-Zjlv$Wh$_1%NGx?oN3_XwJ| z0Dqj&O1r!;h{zaJVl*P-P+S4%I$yA;8CK{ya2B@uCQ0i6Xu*!{3lnd;RiYz@zryzU zUahf((H;Ow0+e5wVNS5Ws09ftQwI?B2=FL{bhs(9$tBtgfL{o&&uBX6?61Gssv${r z@pCguZRYUcW`5DDU%+VV=o|okF?H98!;F~M=JcyEI(T^nD-9PaZ^dJFhJRK=feVINcf00000NkvXXu0mjf>+^_D literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/rotate270.png b/ConfigFiles/PointCloudProcess/images/rotate270.png new file mode 100644 index 0000000000000000000000000000000000000000..5f84dd559d20cfae987c29609a8e619ca8a7bbec GIT binary patch literal 2537 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 literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/search.svg b/ConfigFiles/PointCloudProcess/images/search.svg new file mode 100644 index 0000000..9834028 --- /dev/null +++ b/ConfigFiles/PointCloudProcess/images/search.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/ConfigFiles/PointCloudProcess/images/sectionExtraction.png b/ConfigFiles/PointCloudProcess/images/sectionExtraction.png new file mode 100644 index 0000000000000000000000000000000000000000..6da20eaf5b4d8423f193c69db5989c9c11077021 GIT binary patch literal 242 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`J3U<-Ln;`PCF~N!1=JZgN(;m{ zb>%8+u(9VHa&!n1?s(c@!KL+z{YaF>Q45zK0k#+0#Ec9~3?@EFyZcRst({FwLVe1? z4ZhtGdlR-+y*-$rwr%RfB!*?(y1!c*mZb@%HpE49FdwdW%TeoQ+8fNrGns|$Et?tJ zRz;7rk4X??UEEKu5UaBQKa z4jmDyLN-z;&xv56!<%ech*1833IkYD6jUBbAnb0kxAXh5ce%Oyz3y(vKRq)ULiU_{ z&-vYR&pqedyNue8o+F}{iRd1iDUT4*`$Y8n_EL+r(?owJq8S=<0fdZ@yzE`NIfz$K*$hzR@KigJnQ zvh?9C*Dsw3pzIYFh|2)DnNOGBg$mXzZWNNGVf6fXK*R5#O+Fm&Gv#PZ*#R!Hwu{<|3TbHtS~0*?BIG= z<0}c5bs~%hKBqA;&fNH^0vU07;P0+Ma00-}csZ#72v`*}0#Jw%_|YZIfuGS9f=HBL zsJ!ypAUFZ=sj}x`kXc5jCOhDR%ffZjB>*hv2N+K^K4lQ>0Du9A_=2pA7oS5(?0x)e zch(#HlR3|zs=Ce@%$LKMCx^(BwQs?Ria_AITI}T>Mx8t8Ry< z>^#s803;+LkU1IeYLzD+@v{h_%3xsY=Am#}Wr)P+$gN7jzEB{-Jv-KYp`Bu1;mroO<)TZ0f&MC>YJm9TTR1e@g~hM1iPU?6}X&SO^~1P(ObP8k^+ zh-i3fhG|LFapEsj6lSf7OR2`=&mvba9oT7a;|RhT?h1rJC^CX`I=~oZX_=8GGb5T? zUg*PO$t#ah9fP+M02oBwPkYSr@Us0k?u=!6PNZo|%Hox!!;W1&b9{(2fTQtFTR@D3 zv=qgMpro3lIMTR_nz zjE|o#2ug`9Cp006n>KdSWbge+Vp;WkqbMhZM0sklXhIx4v0i- zTd>eOL7GoZ>c*r7Kq!I&q|nR|M0^B4kT<(CP2TyHV7qj_(c5G97}n$x0I&f?BMmQj zY4Ps{2j>1nL)KvJ+SS`(*}zub)@s4E0T_RhXXSkpyKcuDSFCE2|4MJ05}sY z^!3wHyoFiLLl%~XA{QCaJ6hu~nicf>U0-?xZy=DvhBv|Mb4OsQ|**FCfkv6{Pj10+&N<)!3PWy1%^pT1D9vPs2 z-pbh(MZWhm0g&6<$WM%?HGxp{91+iVKNedTEcAXa&X2bJ5=qto039D(WZDsKULj0V zt8SEdm`A>>Op>eJvxWA)ezQOGcy4T>z?3mrubiDx;isOYze5K{q zR$}$bs+vk-EM^Nn=0h=rqR4>~sWAA|2B?{=u?HvD@NV8n^rF+~hy@={A4$;$0G%MD zqVOiOhZWeLs7B?RWe6i9G=K|KN9Pmgw(o}27-XSm!lUJK7z&^;67P8+D_@Nzx~qXu z1nJ#vP9R_vcFq~Af&ejWJJ}ns0BRZD+IU>9kf+jVPPGuq?mb|6!?{!Pf+4mfmBUu! z%JCu5VhU78RuCuoXtC4_AfPxhYkJrigPs`{BLPyNI&z9Q^|u26^~aW{2PNu|oW6s@ zb!U#--b6Wdgw#^m2u4nwATuQqn2;tbTS8^Usw4ZuPhy+6aeWM=2ESepK3;Qvf8_`} z(3}8(ELL80De-&3^aJ(2=8UZWY9%CbEpS2{4=!2z)zJf38PRz{#)s8z^^Rc1E}k3i z5Lv|-LpREn)YV5J_VDtZf$h`ptw^;5i zes)RbD?7{wG>0SKWf|;kC$|@J>gwP9>}&OdX8yd-rZIW8FWKC9fZ8sLZ-eMKPF$|C zQpEy|f(wlJSWDRke zmWJhRDyo9u=BYs^)6}~S z#f{=;yOi^%^g=}I&2AtRt|Ve|@2w3D(iw`^@=RYr#YpzG((BZIAfW0Mzr}&Etq%|1aLH?O!rO+|IU{VPYV(+R-96yDsxE zR=mdV-DgrvrTjufy%@CvA@QKHLznK??|I?Pj_3ol6`{bv5r=LQE=XG68M4}p%*+Q? zk7Ov5&0dJ4{7eq|%S}oA-wXuPcf@Fi4Vi^|K=T!I0}c#6Q@NTD*=0(AkllGJH8nmL z9F>bFeP+fxK9X?C12C`p@K6T9@e#GS_s<_a(E!7V&_h7Fd~VNX({}_yzGJsu7c#o$ ze5d}ziEmOh-c2GT=2Jny-;uuqb@?V4`^~bk5(q_{?5AL%&yolEy;4kJF;GLOH`I1&{vHK;_t$Ex$uB@ppX&|ER6Z^M%Y{3{3xg9QA7;Q&3xj#cl`IdiXvY( zF=&s1(Yw10Eu4S+gT*bqwHAWMp=vaHMV{#NIJ#P#LB|8cnBw)e=o~pcUUvHx7%{$E zet;{!GJ`T5dT769O$7kA;F=kPN6SuMv~ml8t{$fR?G1o!VG?hM%6!*QGf iEW7U)r(eSaefwW^{L9a%BKPWN%_+AW3auXJt}lVPtu6$z?nM00K8jL_t(| z0b}^_>)ZUD?J3htfe6R|a{uE63_wLDZ44{UHvF zkPiT&Qtyu4mzM3>yXW}v{+S;1s*Uw)Jj0_+EqW-^n^E^F0 zjfI*0`}ePZLEs-y5D4DAd$(!RCQVIEhQ3wBrtJ(XE;cPaTd&{DFmH3$-Me>BojP*o z&h0~o58l0Z`^3p(4Gj%)a&i#2FGZP~_8wVo;Gdmk6(7QKo z+_bW?0;>l*Fef`_^X83j-o1MN{>|g3_usyI_4pZxeDdt!$4_r}@7Wb?j zCC4SiCZ{GRB*p^SF>%p3xtaO~dYPG-h=>E?KY#wz*ViW}CnqK*rlh1GlWA#bT3TAb zP=aeZg2x%6UQ>RXS{rZ&w2ACikfMI{+$dT*UuU|z1H*elNapHu5 zfk8k(00SIAOqxG`eo}Jc)TvXE)6bJ9PqMSKfv$S`^eKuTzJ2=^6&<;3#UfWXmoHzw zz~y>-d#6sDR8~=fY!K9jNs}h|`uTKscO%;XbW%uYNLX0d{rmUff&gI!$C)U4K1l!o N002ovPDHLkV1f%>H(3Ax literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/smallCSVFile.png b/ConfigFiles/PointCloudProcess/images/smallCSVFile.png new file mode 100644 index 0000000000000000000000000000000000000000..37d95b0530946ca47b63d26a2e413891d8df0f77 GIT binary patch literal 421 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61SBU+%rFB|Y$ZW{!C;AX&hNDNfGqYBPhVH| z>)h;|%F0&XH!%Z+I14-?iy0WW1wojxJ|%u4P>?0v(btiIVPik{pF~y$21X@M7srqa z#@@iKjx2!!bEh(CH1JI4C@=rc^g+yH0~^Ojmh!U&ry9&YtUvQsp`NvJ`|j_@&Nl5} z{!mag>*t?S64QIQYxbRx7G^N8{l*~|^P^?Ls>MpqnQKilcu!Ra%!u4OM`|sr#c~Pm zya)Cdo>nF4i9N16x$#Bx=_ej9ysK6{R{9;px`Wfl{|Fm%qmo+NuT^YSt0(M;zsh{% z4OfF$LQdxvHO`I~z1$+FiWWX@2>E>aqiyNUV}61z4SObXq)L|ubnP+Md#}(kZIOxz zXC{lsN{!U`)FKP>%o&?%7_Xc>_tm!LLd1lYFui6*ju(3Ve9ymiJZqFZv8`S@aG{>Q zpl_4=78Y66lMnB>R3yCExmH>wCUS?JV&h|ROS?l(OGEe?{_;7MN|zt;-=+f$JqAx# KKbLh*2~7Y_@SV>9 literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/smallCancel.png b/ConfigFiles/PointCloudProcess/images/smallCancel.png new file mode 100644 index 0000000000000000000000000000000000000000..8b54722eba7a482cd2a02e999ebcbf49120d6aa4 GIT binary patch literal 192 zcmeAS@N?(olHy`uVBq!ia0vp^k|4~%3?x6Bmj(hU=>VS)*Z=?j1DW$}T(-LS^_bWk z$t`*O^uyk$q-tH0s@$rLKsm;eAirP+hi5m^fSh1Y7srr_TUXBpavf0MVZN|*?&aU} zZ)~~UKH--=x6p~rUw&O=i03kKUbg;=S>!_F79PgM0_+d@0zTci?ZH{gzx7G(2Tqe| n{AWTrB$rJ&yK9NO-waMWBZjwUXD6Kp8qeVA>gTe~DWM4f7QsiC literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/smallPause.png b/ConfigFiles/PointCloudProcess/images/smallPause.png new file mode 100644 index 0000000000000000000000000000000000000000..584ea2c1e9fab76541d2aa3216b69bb2feaac7dc GIT binary patch literal 229 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61SBU+%rFB|Y$ZW{!3_UF&^$uA7AP{y)5S5Q zf-&ibztRF9=c4nUA6dTNynN66P2Z#%c&#oZD0DO$*sQWRz;x%geFS5*15*lvZ>v;U z9k=|kqjTrPO}Mt}T{Yv4iR$XI4S)8Y$X&s__Qgx~HxAR5|7YS>(OtfM(JxgFt6!7# z_U`svC@nHM_HXAx`4jbt$2y#hJ9_@s2=GsxdSRclpOkL#x3up$tc$ir_b)6?Z1}cP al;OvQ%8b=%$_7AJGI+ZBxvXujP)P000>X1^@s6#OZ}&0002aNkl(h^KuI z^MFzWP|YJ6K)o)QMI49u5`ujH0e(LM_)}FCq?9O%f*l2Q7zQ5fzT^hNFyy-?NfONS zj6Bb=t}FjmS(f2EPktzlV?uZnMbQh5*9L;CUV&qLg|+ZPp)^pk-P3cWT@A zA88sOO@ZS84{F=``&!qAp>5Lvs!?R$nGuTX>Oj{q?J`Y3Spwp-`2+GDm}QI!pC$kR N002ovPDHLkV1iFLX4(J% literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/smallPointProperties.png b/ConfigFiles/PointCloudProcess/images/smallPointProperties.png new file mode 100644 index 0000000000000000000000000000000000000000..320e95d57112ab30d01a5e77e92b214e622d5066 GIT binary patch literal 587 zcmV-R0<`^!P)P000>X0ssI2ON$aT00006bW%=J00000 z003^L2ax~(00DDSM?wIu&K&6g000DMK}|sb0I`n?{9y$E000X?1RlF~vS=pM4*! zc$}HdWV4aoP7Vk8e0&du$nC}*{_+Phna+=&76_0^1y(f5a101ESS}Zz!609pPSR?> zH)kmoV~j+q(@|!PMx%5(T`U%Ry2xZRV8NGstJCSU z*=*M9_3?PbemER1mkYiZU`-}WlIZn*<}sCG;V{2%s5F^)3=tjJ#I#zuS)J}>kC6z2 zJ|Hj=Nu0-ipZ7@W^`urm`rq=1#6elV-yaMH@3LmI8N?xp%jNQ2Rz9Eq5UH;L6C(pH Z004>C?PKgnH0S^T002ovPDHLkV1fhR@WB88 literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/smallPointsAngle.png b/ConfigFiles/PointCloudProcess/images/smallPointsAngle.png new file mode 100644 index 0000000000000000000000000000000000000000..08865e8dbf5afec6b54322ebc1d3bceeb701ba6d GIT binary patch literal 333 zcmeAS@N?(olHy`uVBq!ia0vp^k|4~%1SGw?g-n1HTS<^#Fpvg7>l3>t5zdJ6UPz*7G)vP3&;277e0v1E4j;<{rKO!%6pI5 zt6$7#bW-qa2ujr8c~}uSb?J<+u}RaG)#@DH!Ef33S;9R)q+;=R#q*yhR9q|VeH_7b z#l$x>RA_;TZ|wD{3_tgsm%6>}VsF3#W*+xuL%a4CfjkfPxv_m*ug+)9Qsc{Ld|Gu; zcgyv+Hs@uo@%_H~YX0AyuXgc$WMfX7z?tUvdDps|G3UbB91|k1ZOiotTcn}Y#pLNT zEp@%5l+>Y}*RK87)z#E4ee?EhX^Gd$unt$(T6Z&Tqe)DUv$6xZu1^v=HD}pkW>b$? dSr5KC28OeVNxTPEvd;vCil?ie%Q~loCIDALfMfsw literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/smallPolygonSelect.png b/ConfigFiles/PointCloudProcess/images/smallPolygonSelect.png new file mode 100644 index 0000000000000000000000000000000000000000..761ed01634e89be5b861376c0f8c3431a2a66ee6 GIT binary patch literal 478 zcmV<40U`d0P)bQ78Oa~>~&Ys?E{AF0oPAFtH0gciIoyLahy|#jN zeIpzcX*soh`R>c1lvh|B;%%mb_2mQy`5F#8dimBbj$()OpEV{1 zodXLFzD2%9BLelHJoSgnYB}K&jCu$D{;|g8-(M?CtRu;t0PJ7@6#p!qG=KfFBt*_N zp;o)#cDp@yqEhX4_g(uO3WW{df0z^D(NXDsK`2Y6Dr;U9!j)=Sn+I?0oneEP)95Da@fE_ge;QguUthZ}<<7noKOsPsdEr(#1wR(g7?$*h4vSX@PQNX(eylA1! z$#}Tn`Y{_{M9^K7*?rxAsblRm-)Y`o8<^z0aj!3MO<;xr07b;GR0@EAjsO4v07*qoM6N<$f;u02HUIzs literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/smallReset.png b/ConfigFiles/PointCloudProcess/images/smallReset.png new file mode 100644 index 0000000000000000000000000000000000000000..698c1daa001ad054fe89c4d3b5b29b027a675e8e GIT binary patch literal 193 zcmeAS@N?(olHy`uVBq!ia0vp^A|T8GBp6maa=Hklm`Z~Df*J1o{1$v1$YU?@^mS#w z&Lu0XpjLEr?INHMXMsm#F#`j)5C}6~x?A@LC>Z4F;uuoFIQK#$qk{p%kpnsZy352k z7`T`$7HEjqx)d;$-Ehj@a8&ghN1Wfc87_AhwkM^@oaXcHcsudq+UhR{wy=iYuDi5o k0xNH~+PR~3f6f=n1};(bR48iw1vH(()78&qol`;+0F5_5zW@LL literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/smallRevert.png b/ConfigFiles/PointCloudProcess/images/smallRevert.png new file mode 100644 index 0000000000000000000000000000000000000000..bed7e9c63179e8918beb9968641e00fba4d608a0 GIT binary patch literal 349 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!60wlNoGJgf6SkfJR9T^xl_H+M9WCik>lDyqr z82-2SpV<%OaTa()7Bet#3xhBt!>lyyDxS7oZP>zMaI+;kKTw=)Kqu=^^`~!;Db3hriJ)KJ$h>EpFhYPECDLbkYU5$B0wt7W_eKYTl4*0AwH zbKENP8M@*O&Zpy+eZG2bZP9*)i|+qDrmvnUmAt=^Z|J=g6ko zA29ZqahTQNxSw9vw_nR%yiu0kTpFFqZ2#N1!MP`b*-`QRXJ^yiqWUkUH!{t4E^o?x zcqLPjX^C@gUxVMLrnEoGIZ3Mz?0Nh(zqjfA)t@YWQ#bYewyul^`kBGg)z4*}Q$iB} Di(P{j literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/smallSphere.png b/ConfigFiles/PointCloudProcess/images/smallSphere.png new file mode 100644 index 0000000000000000000000000000000000000000..14e04f2483d2613c0e64b40e02b7db1d34e3426c GIT binary patch literal 537 zcmV+!0_OdRP)X^m-jv2e?6quV25udHJL=cAHM8<(iO6rL>S7z`F6dAu!16L1_~ zwQAMAefy?o7ZISV{jbetBAgIV={7 zxrk1ulgs5Ik#Kow$?*u!P3-H8j*bRK=k)2*=ggTiYu2pElP9;ewG|W;1O^6bYisp% zwx9}{7Xo{KZh0^_nUKRYoYCNVyyFh2{( bMNJPj;M1@7>&yM~)cx?wLP|U@F)b!5AsiqaOi)Pt?84*2g2t3ShK7V`Yi6LY zny$K}Pg_iSf^?6cgj`@)mZpsR=()p?JpA_Ny~nbMlze`Vc{)Tmb66w#Q*Z=?jGdM9YI5O}x@i4eD z@OSd^HF7h!Fz~nXFnBQVx9~_W7vgK-kzFMuwM~(-}^b?`*rK)zh^#tusVGAT*7v72hr_(N3Nz`XpXqerngsQ zZp|@ek)7YZ3igJ`ehXR>>$v1>*vx6#Pmefl{=)v;f$3d|!KOB#WelFKelF{r5}E+9 C{Z@Ve literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/square.png b/ConfigFiles/PointCloudProcess/images/square.png new file mode 100644 index 0000000000000000000000000000000000000000..2f7d4b4f18273827f92f72c652f034eadcc37105 GIT binary patch literal 189 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf2?- z8W3g_<$wDG$dD{?jVKAuPb(=;EJ|f4FE7{2%*!rLPAo{(%P&fw{mw=TsL0CG#WAFU zF`1!>L17>Jk^i1Yz8|Ps*mK^Yrpe`xl6#Xf6t-7vTnys$sqFKA7S;vODESu>PUHMkYTH7gZu9*c9wXSy6j_FLD zk4}ujtoWP~@PVeCMe#ukV)20$Q5jaHt;p0Wf?_}rAHWCVx6l2zKX#LIPwq+1eI&Q! za@6_5e#iX)0EY>Y_-K@0-^U>gnonbo#GrH_CE{WP09|);++SA$;C<=x1tNs}8_W7t zv247tQ`#Vqwg_ciQiW)6T=GOI8B!{gYU}29uY5w#GxYSu9PG63x?K*3!(_JT^eZp4 zb3*BGCWCYC3az0{%x#k(d%K=p4-7k<4*P=6&?{Fpw)f^%@M1F;8Guf@&`;SC}BdX_G+vbkL?o^BzvKX}tPMgtWaltURO&pU(CuRL!)hJk8 zUOAHv@>pG5zQk&?p)-b+>fEx1OeTkY|DkePW3t!+h=6<-Tgi1ZIPJ!DE83SY>~HOs z%0^Wa&$NgK@y`QI>({^e5hCS%MyBHv%b?N*!Rng1o-c~IQAEiqt!wGpHXtWbLG3cN zPIHB;i>uKRxn?4X4&4*>TQ@ghC)_upO8@PTw1S#yUZ;KrIYk3Gg7_LWsd_Y({qic$ zOu9;knDqjqd0nNRZGSXyuk&%AeEhGe+1H{$jhYhoGZbHdC(+Lpv-xW#3yhxmKoonk zC^@Hs`=@YTZ$S2tPmnxgP#e-vsS*4V0R(ZYP+3dp3mVI>|!R3P5rpbzy zF0s?`b7z`Bl7j z$)0D=y&2B<#sup&VjMXywWDw_|%Tw zt~Z)q>Q@y{r^WrFva!jj+4;Fe!=m0ezhpo>?qeLvm*}f`(W0YbK=_I#dB321bsi6j zecp*g3*Yp}?|uTn|L8uv0GktliU(h3Nd4k!D4bm(j{^;-T|Y$h(GCIlC}aUx;SyMT1G;DAOORP4Pl=A=}GXj>Q3b`WWZ7>T36d!ZJ`)j>NgW_n^1X@y9;;kf<0NU(REG`rq x5=;!nh2cWOLPM~)kHc`d56+Cp|6{mulbV{G{r`se%-n3$00>YNUhoC^&OZ)96vY4l literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/theme/snowman.png b/ConfigFiles/PointCloudProcess/images/theme/snowman.png new file mode 100644 index 0000000000000000000000000000000000000000..e3b33af37fa692ec643a35aebf33df04fa6555ba GIT binary patch literal 2836 zcmV+v3+wcWP)-H&v3|?>3dM?y4cTjn35g;?5dcM;$iU8XtVi zwFD@SUp`ZJck>IiW$*hmwrEg?4Yv5; zYdFfK)Koa4AX5r*WaD$Sx3^9 z9&TcIsbr`b-LFM8#^1+BvLXYeW?Zl|Q7gZ8YWCMFHC%>fMru$-M;$iU;!_ltiIJh; zb<$Tsq67S7OlFMSTRTbKZ<#L3yXMHA0acjupAhiD7Y?}Kgqs+|^4bol7ZoDgx~K;9 zry*qmxZs4lTy((yJ7B9yc5U}u`MPbUJl`lquB#p|qqC!=Us{B8N($3EKy{;oB{w`! zqmC-0qpq*A8I=_!*H(*{=NhJHjy2tK;Vd5=5THiyAO*^02sq*P>JDh;OxV}gS7Ksf zBqt|F8a8YwojZ4yAw!19dFP!c*Is+A+<*W5^5Tmx0?O#9!v({Pb3n-(b4jXLoK@SI9 zaGJ&w!!y!Fp<5|7=PT$tNaD+uEtBorx4R%eKVPtU<&{^gjxsvx-0k6j3r=iIjFP0A z$+gU7kHV2s=HxvUq-M>UI_brW7a!B0MT-{66Hh!Ln>KB-I?Cv%bGL^BE;!*PMk#BM zBPQ1}mzPWea}<1wn+;+U7#JwCX3diM^XI!XhK7Fi)mQT6mtPhM>YN<|;D8HGxJ#G? z`kLItm{6waPZ= zth3I-R!@Td?q}Brl+jU#jkU)Y4!Ec@+=!2fDJF+E++NR2a@M(*fjnl&!LJHyDLe3s zLbBVtNK(?hdw2Z~Z`-!bzR!`7k@)D@-yO9Q0A+O4*>M9O%5XRu>KuELO>D6sH|L6! z+{-{ZDJ)Vr1ZffIUW8AJ!uosfy;oMRUTyE{#EBCnAtAw?108kN4j+6SHgLKNv84zc zGC6lD>%)zP3V8}oD(pAG>K9}G0repv!E*K0SGx>`{I*|z{q@qLM-M<5oy*{d55901 zuA+q4Vsd%Xi+D$buJv6{3P8l6_*f@OP zfXmpzZH1U(a+p9)Cb!cn(F%J_B8`pi9On`EK=lYOGk4P+KlQEzimby2U$>)kxDjHB ziA@e3m6uI2FPMSqpaN@omtEofoM>6xCC7XjQZ%T;23zN@a7IQ(VHxhuCYBJ}Yd(81 zE3ln~6CkFrEOT47Y)PF3gIhKAPP09Bb+tG^8J!(0ors8tU_Zb)A=*hSZ~L5Pse+x$ z&zLbocK|av{=W9wYtp7o8wm(7?|mugnj9_@nx@(H!MpFi3n$zTJ7Ri|+@hcx_`wGs z&}hKYmK`6Lot^jIdruyH^ijFuiYsK$ph42RcW)UxcC1`_>7{n-Yh#aG{Yvop4A-~b zdMo~LJ35h=-Xq^B$mr3dZQ~uA8_esO+B&znibSPKl>{E{J{`c$FxP_z54JYMKu1h( zIuAU`hQ)W^ePZ#gHtL4kMNc{gcPY13YIe1W}wMF8_`YnTXN3CnnCr_fyUcPE3!RDWQ3)`+u=2wXKiCA#rp8I3 zQ>RV>-;)iJbqAc68>6qsjT>kAiG_~Xp8ksL-wF~M8fudR3l}at=?)k^e7L}QZ|y`n zfE6Lv{8YNcASQZ~gU2NIpG}XDlj?vD9XbFP9Sw!^hU)RU18%92ps$Aw8)o_0GjOaT zQx!ZW5he*n=@WhhIP3sUU0zLlswe*OAc{wY(YIHtv(m%V1XdcuPs zzZAf!+;!Jo=)i2RnFTVTadyC#En7}%3}8wOAEQ4V@J7=# zu6b1~_c`aBgATl^;BmQDL0Y$N?a~43)~!3K4k#!n5coJOsTUn=7euXEwX)pALT6%o zTxu0gg}?aX3!5az+@&>^!4f!i_uO+24RZn9k3asn=AArwa^a%sutH@8uaMWwqUD5s z2{`cqPTiU{YxL`M=bd+QPGFbT2F@MhmlV84Qha=TcJtHZ91L0Tu;0&DAWUS~9AW48 z=9_Qk31PqkC3O<7lI45&;fI|EA2|wMCF2#ON|h=yb?Q`|@RLtIDdFMA?gpE=1EYC~ zjdy+@z!_myR+d+PLLaEGN>eL?n29x mqj0qcV)s|rs?h#aNd5y^gRn^h+8H|l0000{XE z)7O>#CZjwrFGFExiULqbw8S-{#JMOnu_QA;Paz~THr-5r=)~dtRPrZr_#xj#Nm)O z{i?jL$_Tay-O5?(8`~OnAwOO$CJzt#rU|YRl<7GeJ);DU@C|Jj?w3&Hm<;JhgjRLT(wTiXR@Aah~EZmoN#tF!F#<5WSp3P>b zrKPz6I(YEl-o1Naxda_OdNeXJvaGDk!^4BA5f`1$Sl}G=?c2AaqN4lv@1r*V`Ck?W zV~^-(Y+_Sr?b@{)H*N&vxfOh|?aM*;Krlh~I$6!}!z3>B1| yoQ%$#Idd4iAZ^a&MUo>4P)SLN8ZugQ8u||qFiJ(9!$OS!0000Xfv0Me%c$A1&MRZ6`yfY&I%=^X$24*%5v|E~c5i2(mo z0RI#r{{U0}0Db=eqyGTNeSLi=Cnq;IH#<8!SXfxPy1Eq=6|1YO(b3Tt7Z(~D8sp>R za&mGK1@Q9#0041GL_t(|0j13WW&}|X1khJKa)$s$?tiR6PSIi8n2-5b`%u+1%3hL) zTnxz?#3;~K35vKy8`Xr~tY4i-M$rW5b_tbr47)DMWmUNvjbo1S`R}LP4;W zU>o!+9Jcxe1XEd`Xk#sEVc~0`AXtQmh>e|);`CDN9-Q(1=lwa0-~-d_KJ(1X&dx6X z2|i&FXShTj9gT`+F@-JMV+}*m*5cY$;4vgVSsIC_-uz;2~ z5HBNxA2`q85v@{=`YUJ_dRT-W>3V+FsWW_RT+8o;#hS`Olm z@O$0jL8x+6xRSHcXBB-h$qbHhfK43o{3kk!CX(CHi8kTR_u%QDtP5Dj?`RF-MC~Jb ar}zt-)lP6n7~;180000WdH}+0Uru4%m|ue00007bV*G`2iXB14GSNt+s;z}000SaNLh0L01FZT z01FZU(%pXi0007#NklYWR{f59 zoXP%rh1P2gL?YvsHIS7xeCM5PzB$2QY`^`wQ&ReBYmG5+%=hG6&OPh0L4ZJz;E|m6 zI-hqkOdLk~r^*~a*MNVAyLSGNv4u;;_~p9!aI#ST7vO0>Cft;>cNazhO* z3!+d@&)BJ_;&vk~$FGSOT~Amp7m^+Oazr&vfW~66!6%-;e2RW*A3^>!EU zL5FhY>sVP(IK?o(9mA7iGh5OA9Hp**|BY_3#nSqPLEiw@(HP%8(&UU*|-G`&-!!KB4ZKULEzdJSk&Z4YJHro~{ zIcHr6IEzLsPC6^O#pUAJ*Z)@pe4EV%nkDAIM~2n!wOnEJ!n;Gg_L?+Y*EsM}=KpWL|5q9QuV?t*$?!jz;lGIDe}>@y z47L9m7XN2BQCnN9uC8uwZf|8x7k*KBJ%<04w~&|k<;j&bvScKMT`tVYqNcd$>t m*j9V{!tLE`+F}=OuiUIIBqvbCV;2qz1qM%7KbLh*2~7aD&2sJl literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/typeXCoordinate.png b/ConfigFiles/PointCloudProcess/images/typeXCoordinate.png new file mode 100644 index 0000000000000000000000000000000000000000..c1edeb9df01383aaa164e09cceac6a388740c57a GIT binary patch literal 153 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!93?!50ihlx9oB=)|uK)l42QnEL{s#xUT>#RI zB|(0{3=Yq3qyag0o-U3d9J0IzH*z)@h_D`Tj#J!!%`SrVd*S?^NkMZi-SOPJ{qh~x w{6*%0hZlB8J({)1_qf@vD}Rm%J&H^b{FAQB(XzgN;|GxWp00i_>zopr0OMjby8r+H literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/typeYCoordinate.png b/ConfigFiles/PointCloudProcess/images/typeYCoordinate.png new file mode 100644 index 0000000000000000000000000000000000000000..05af74f66630fad6c9db8c70e9fef0b9654232a4 GIT binary patch literal 145 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!93?!50ihlx9oB=)|uK)l42QnEL{s#xUT>#RI zB|(0{3=Yq3qyaf*o-U3d6^zLV52F?yRXBC!z`+BDHaIZ4WtbRrFmNh#cQbYhG;Rpf nWe{>Wz~r>h;lKeVmIOnFxN!C=r{8sQAagxk{an^LB{Ts5xmhYI literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/typeZCoordinate.png b/ConfigFiles/PointCloudProcess/images/typeZCoordinate.png new file mode 100644 index 0000000000000000000000000000000000000000..ffd2d44b2eca748326d90b8ff9269266edb07e20 GIT binary patch literal 148 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!93?!50ihlx9oB=)|uK)l42QnEL{s#xUT>#RI zB|(0{3=Yq3qyagWo-U3d9I~tj4FwMv@UR%fzFU4qvt7VQ-ua`MpUXO@geCwBdMwQV literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/undo.png b/ConfigFiles/PointCloudProcess/images/undo.png new file mode 100644 index 0000000000000000000000000000000000000000..fa2c2a94ad0590d0e570ec13d633296fd9e14cd5 GIT binary patch literal 990 zcmV<410np0P)4cmTT92|^Lz?sYqTq5BZo& zv*t3FSO7iw9GJ#E*Y`vMF!FZ+y5<;z zlkYE8&eR4lI;vr2w@CS+5CaItG_z4Jgk%5^7&Ua^ZT5pI(Pl4!ig@`aG&-UR!5e@W zB92XP{X@qb?93sRERX{rEXHLS^o))&urmcuu_Xa{074?#2%u9YC;%nc+1mFL6-N945QZ9cA!3a02eeO;07Mx`ZI1i{C_`w_m6&eb0`aI6 z1fq+W&OGvx4F*6NLIW;Ed#v+dp7aW8@prxlJ9phnHaGywBZYY_u0QMmEqwM0YU%eE zu(NA#sH>EN2T;z2kRC>kS$nX7zr`Pb@Gy+0F}-jWW%mb5eJg;WR-xFXg0q%>!_05@2yQkoyQG zrn5O2;dlTL>AmV}+qU@5=yrnW9DvO-!K}zI55dVjlhKI>0K*iuT?IkL{q$oa28CjL3rc$IXs?CuzD*T+rP-D z%xaU!#-j;F2&)AkLin*5x|IR3n1%?QXk|cz@MAG_D+6LN4G}u=54VU_P$}V@j{pDw M07*qoM6N<$f^4O|Pyhe` literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/unfoldSmall.png b/ConfigFiles/PointCloudProcess/images/unfoldSmall.png new file mode 100644 index 0000000000000000000000000000000000000000..4e78344a42f91c5b0f23a61e8a63966096f8a37a GIT binary patch literal 142 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!60wlNoGJgf6LOop^Ln;`P7f2Z-cqC*ba3lmc z2njQM;&upPb;w{4DQM8*VVK0Iz#-_}@VcPkl136oqR6!gp$&%*C-7+mEI2s1K_+Fw o1YL$8rj8G+T&xbvbG;ZCq^(69eHv>f11(_iboFyt=akR{0FE#wFaQ7m literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/up.png b/ConfigFiles/PointCloudProcess/images/up.png new file mode 100644 index 0000000000000000000000000000000000000000..e1cf7bc3b47238c81af48604320e6561a3809526 GIT binary patch literal 487 zcmeAS@N?(olHy`uVBq!ia0vp^@<1%d!3-oH>zJ+sQY`6?zK#qG8~eHcB(ehe3dtTp zz6=aiY77hwEes65fIFHg+e!a4?^2m`Rfq{W@=FIv3|Np9rWoT`MaC`{m<`W zNnOSruBJA}iL#;eC`KVGHbs*chCHvuk3=_Et*Tc zqc*T8c%QG>n~*5Cui}{4=PSm~e;#@HYJDp|qf-6luLf+tUSwWeaoh0CvC!sBjZ^F2 zMGDC8|5N_|Dd+$5!qQhoYXg8zQY~?fC`m~yNwrEYN(E93Mg~TPx`u|jMg}2#4` literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/zoomin.png b/ConfigFiles/PointCloudProcess/images/zoomin.png new file mode 100644 index 0000000000000000000000000000000000000000..83eb56471bcd96a04095c25f9f46ad13194fb960 GIT binary patch literal 2339 zcmV+;3EcLHP)~p-#za^x@X?J zH}|gnUu*r}+WV}%);>aijSIXJIhm0M3Bwd!XlU_Cf9EAGP1YK9uJfH26Ut zo&C4|GOHd}GF3Eb`B~(0lM%TLxT*#00Q4bp+DT{I&K7VIr)EPyu{;fA7Ru#`8k-l` z3bF>@UfKNATHmUT6L@W`PmZDJONgD z1xTrR!!w_;8sC}IDr$2CSnkh&sZA*TE6@q@G{PRbbPtl>O)z&4#qtPX1l8Q|+V7l> zLYWMVZ36#sPCK>0hUr~R%;_bXo`8b86XC-t6#Wv^N2NmGY)c{ETcogjB)ObLl_Db7 zq?o@C)$s(S7gETEMA8vpxi14JH&medTO`+xZ?Er*A(3;6?j))#M3|O{sWOqkemqgG zP9T{8%iY_Z#Kew0sI)Wel=fCav7zAw_iBWNK;unU^_*rSp)moL_Xy~eSmRWF0r>?4 zbN)HTo0JnVD4+Yp=a}C$z+(RMmzyUw;koi1}IDModv11WGPheZbx)c1ISGb ze)Teb_2qx3Q5#J_q5LgGz8Viu9f#j$5|d*yCcC4l@=SbW>PCXnXVVxLCZLw&=&AwhBPfR(L0kt+UU?UAKzJ#gc~NnDsPF+@KmoODBYI?I$+;hE2cuukH$dvPPE-UL`>leI-1Z1$i!vDrsV zS|3`Lv%H^xUJ-%w0!Q9)A)9Bt6sP0A1ehbO%8w%jRc<^2y)|;HtbJH?Z$SBeguo;C&Zqm!=FD;9k|g17Do$ix)4c~2yoV9} zOxPg34Zjq#!)9)N>wtxopG2yUhJZw#qhgPaj({m0Cvo`TftU@XPbaL_J!t{K^7era z3nS#l;?E0Zk3!MC7A5KkyBFU%vjtO*&D5g15#`E|a@CmxrFHe63k7#E!p#xkzaGCd ziUhx@kl_?eI8|0o#DIjo%cl% zuq(0|Av&H)={HIKAEyyu>VYTLErG~v&@6$+pw^M;JyfO<*bgQWP+JDx?WyEi5o&Ox z?FBnw#VHKV?T=6uc`7snm@M$x2m-Dru$Q-D^D&uQD33+NM0NcL@Et3>1meoy!uO~+ zrWx`7H45I9h;9t;X|jZh9m;r31hfHB|LNc1J861>#}`4Cy9}5gHcBGv8p5Ym59i3? z=-pnsMiI;(n66J&G+OR+z`5Zi-Sts|`A>(JfceC7qn?`}I*&>zzDJOi(OKb4UU44P z+>QviS9wK-vfVx$LqPc^kne<9)B6cZ;SDk?gR{mdxHlrShhgbkSNc;-O( z1Qlmf*0yGjS6Ds-$(yrF_=1J7fQqv;o`CLU@DwmU90hD7a8mWzGIy#Oz}N_`!jkbvHaBLJnOkFK|uTmlw+?fb#W2FB`UWz(|IAS4bj++FK8LR6tyQbcnZ{i zWx1Py3Gt>>FUN2D`GAvPl`jQ}zYeGD0+~)=|2~av@nx^89?0|0{pJcvxLVYMEPS1c zb5|NgnaEgWb1{2$0@efg&edu4HLm*=%4Z|;=f+_25INfEwEM3z-2I$4NApx+4YD5J zPSw;&E_@ce35c5IkTAqUX-^w^Nock2O?sQlFGOq3M!f5XDbiKYG;5!B*cBCV~OuwXjIwy$f6irI! zmAr)L6QB=6Zaaqu?~c5yV`_MVWCS7~1TiXPbWD1Cvy#*oA@|MDt20))10aFM-0X@-h_+5qsvooKa zm3s|v4x)6BuP&yuE&4u_<*otZ?=nUddizd5kENy?n?Kx!sCi>-T=qoN{^K2Jz9ZGG z^g?+RBJr=%h%TX0I$9lWoq+%K*z(3BYF?qc0@V+-K*j;korv5|^|iHe#f(_|f?Gy# z8f^VXFHL1jKrb>@jzPQ5hula+O`p!}?4uAFf~sj<9YEy3(Z7wuoc01^v;9G9dB&{43EX~J*a#shSCjheFADExZg(k zN*xIs@SW*z4+3f=cz2=twKqwqIdA@c`w-Ag!Xi{h_c(7p`Va1k={@$(dBy+$002ov JPDHLkV1n?4dQJcU literal 0 HcmV?d00001 diff --git a/ConfigFiles/PointCloudProcess/images/zoomout.png b/ConfigFiles/PointCloudProcess/images/zoomout.png new file mode 100644 index 0000000000000000000000000000000000000000..3a254c14c312728d6ad17b2fd5359a74a5153f57 GIT binary patch literal 2399 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 literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/UNWELCOMEFINISHPAGE.bmp b/ConfigFiles/QUI/UNWELCOMEFINISHPAGE.bmp new file mode 100644 index 0000000000000000000000000000000000000000..6398ee1d4b652b5351599e2c9312bc6d9960d27d GIT binary patch literal 64926 zcmeI5y^SMB6ojcPHA0h{jI;>_4nQBdwriyzunj04(?yCd>{Y;2tWV= z5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHaf zKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_ z009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*#k-vq9&ucz&j z|MK$Xd}# zDS}e0zM8jtlxXJsqT0WF+UpUAD13h4ydmR$%c0_|g}8I1tknir2&9D35^F%K)qK~O z5-h2MXlC0kZW6DyQk7XZ=cC|>_WWS2<(PT2owhANl+OCM^SL+ZrdhjNR|#1@62B^O z6PIp zqn07{Lx*e07L)!Nxpb(exoUa4#6}q%=W^AxNEdv;xL=udHfgCXN5H7ndHc+|_(lQ$0@YUhUs_i?Dv4_BJx>4^)*U`pJP%`{+ znIlddJLy62*grWK4IraTEV{C4`xK=~^+0Z9mXUso+2{?Wd+(jwzqyCX-j+GFU3daE zoCF_9yOy^3hVk<~);c{-3Fhf@BmpCGR5Zw>aLs3&LWXbVJ@5@Wk2Jm7k`lRZMro}K z?0z7xH#AbaXXNX?Jz&-L%9wP4xhtbnrT5X~&*9S#*Q7$0`e){}}WRD-JgGt16t7I~RgAVK^DYv{xas_vei)1g^cl{p0SA*wgROYC0?H@7M zgO;!Sj@&jLXJ5oYKbO>A{ixqyfB5y!&!3*{F$Yh7j=Bc(UKOIWgvV;Aeq|x!U8#@Q zcEC>5rP=p@l^kPl@dJJ$@1`5|4yj(vgQasRes7lJA5*o>2p(bIFi^>(%pvJktj+=b zVtoH0rYvnU3is0GBK!NpzwG>gXys&=`w!Y+T1iOAaqEmXbgfGuEC*0(oHR?;^DZ$xL8`=(1+y?0Gg342@l zvIQTNH+t-tmGTbzF8Qsd`)k-;8V5agKefMp-R()er)e6geWfY^ISn6ii2L({CwnZZ z9l3i<5gL>X+);glYkQaGz33g;rJ6#FH(uRuvJsptY0#;)>WsUbwJQB`Nx%bnogyxy zXEcAn%IR83EARPT8f%ZWq;^*#e_YN0^1gWgrH~-4{1J!vGJpUCAOHafKmY;|fB*y_ z009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz z00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_< o0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<;J-uQU+#Wm>i_@% literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/WELCOMEFINISHPAGE.bmp b/ConfigFiles/QUI/WELCOMEFINISHPAGE.bmp new file mode 100644 index 0000000000000000000000000000000000000000..0c117eaedcfa0796d1ad2f92fcf274a620893580 GIT binary patch literal 64926 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 O7lWs(pUXO@geCyws#973 literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/beauty/btn_max.png b/ConfigFiles/QUI/beauty/btn_max.png new file mode 100644 index 0000000000000000000000000000000000000000..d0a6ea8629d2b9c9f96657f54093fbb0e5badb6c GIT binary patch literal 116 zcmeAS@N?(olHy`uVBq!ia0vp^AT}2V8<6ZZI=>f4aTa()7BevL9RXp+soH$fKtVN6 z7sn8ZsmXu-|Nmdlro_NKB~4|)J9}ZnWrhX@20cEl8wyk;UNBs{!zO&fvymI9gTd3) K&t;ucLK6Vv_a6EH literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/beauty/btn_min.png b/ConfigFiles/QUI/beauty/btn_min.png new file mode 100644 index 0000000000000000000000000000000000000000..8b7e7b314b10a01ecc733a20ac59bad73be87d41 GIT binary patch literal 116 zcmeAS@N?(olHy`uVBq!ia0vp^AT}2V8<6ZZI=>f4aTa()7BevL9RXp+soH$fKtVN6 z7sn8ZsmXu-|F>s0Z0OVoWnMj@wXv~Lzopr0O`^n3;+NC literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/beauty/btn_normal.png b/ConfigFiles/QUI/beauty/btn_normal.png new file mode 100644 index 0000000000000000000000000000000000000000..46691f24248f398d8f434d8c90b524800ab7d234 GIT binary patch literal 319 zcmV-F0l@x=P)FmgAw063KGPmZ$2<2RaMpAd&vJe=a72uk>@#ki%CUMApN{q>`H7; z2j(6#W`iMC(>VZy0Gp!+&}D5hrFqtkHbDK*!)FKqp6R#G$&cs)$f5wc00vzEnF5gM zD~L=NKo$k)Fn5@x3n0@4kcD4f1)zv7AYtw>D+IVJ07D3HW6rQk0mwptD|3cjQGlAc z!>lO4i@C!r1t1FnE(*ZV2FS)el>0Mtiy7IZ-@a}Gtd}Fo80!-KHIc_Thc{fWPuYXK RV=Djv002ovPDHLkV1i_~c*Xz# literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/beauty/checked.png b/ConfigFiles/QUI/beauty/checked.png new file mode 100644 index 0000000000000000000000000000000000000000..2f9e0cf776324412c207ddf6e40fc42a398e90cb GIT binary patch literal 214 zcmeAS@N?(olHy`uVBq!ia0vp^JV4CO!3HF4Hmy+sQk(@Ik;M!Qd`Cc-ajG_-G*Ga^ z)5S4FVruJIL$1a`nPVT%uda{OVQcouTd2dA5RzmVapVx^5rxS|Ri`lDh;g!PP@WK| zW3PJZch33C-z(>>xny}dP%!$-1~1D3-f9zr22WQ% Jmvv4FO#sEQO}zjB literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/beauty/close_normal.png b/ConfigFiles/QUI/beauty/close_normal.png new file mode 100644 index 0000000000000000000000000000000000000000..5f6b0b57f3d98b3f224061c52e4e3dd034297c69 GIT binary patch literal 247 zcmeAS@N?(olHy`uVBq!ia0vp^AhrYt8<0G#lcNiyI14-?iy0XBj({-ZRBb+Kpx{bR z7sn8diEl4CW-&R6uw2L&Q##1KLtuNHGLM|1x@X_Rw?=V};e0n)r<^&hw0~ndhf%iY z!TTYh<$?RF+h#N^_gv?0vQ6-!yUXYHdrQhVY!)A8&2~9wwbNgRd#C58o=U%V?QI<^ z@@_0V&K|YDLbocHXV31$`0U5mz8;?6cIs`&zopr00-h=_W%F@ literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/beauty/close_pressed.png b/ConfigFiles/QUI/beauty/close_pressed.png new file mode 100644 index 0000000000000000000000000000000000000000..f4a811eb3fff83fd3af0d8c3f97863d972f0393c GIT binary patch literal 272 zcmeAS@N?(olHy`uVBq!ia0vp^AhrYt8<0G#lcNiyI14-?iy0XBj({-ZRBb+Kpx_}- z7sn8diEl3%dO16av_5>_JIU%+I`b?M$BSS1r8hH+KT=cC_RLHaJR+*1vS5Z;Xq4c@ z2;14e6DlT5uzGUnz|(p2AI>ul4hc=2?^PYx&NlDcvh(kE9FUEZuIl8p6VCh4Dqdo= zLU?oj9koA;PxelF{r5}E+7xMy(y literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/beauty/dock_title.png b/ConfigFiles/QUI/beauty/dock_title.png new file mode 100644 index 0000000000000000000000000000000000000000..4945c3cd80df11d276fec36fd0bf718d8a6c0e72 GIT binary patch literal 406 zcmV;H0crk;P)K@i5jS#u(yg-GN;1VJsevhyu`gy37GvB+ci zGCqKfg{7rk2pUf>+_7Vk+jak)N#NiR=GW}a%=gXC9t@r3LwwvkW*2!qE^E4*F9yfO z0;n_qA^-rW`E+8K*nC?Zd9kOld20H#=)zu}&cx)*m8g4tQvTm>LOQ=v6P+B-0|3Nc zywq^3hC)w5Yv%zwb8*5S_aWD3Pq%Nnw)BR5*?Cu@=6QpA4dxC6|0#&W`d_h4xo=o2 zcHXgp2abo<(5&i1iCkN+0TFhgu*Z1Y0X@7@H33l3@b)D;+}BUjLR~g5^Ov`|NtQd2 zk4{FXz%4 cxiBt9M=v&$whg5dfJQKQy85}Sb4q9e0LxAzng9R* literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/beauty/max_pressed.png b/ConfigFiles/QUI/beauty/max_pressed.png new file mode 100644 index 0000000000000000000000000000000000000000..dd23b02b914b8a703eb48bec48a3a8396521cfa0 GIT binary patch literal 129 zcmeAS@N?(olHy`uVBq!ia0vp^AhrYt8<0G#lcNiyI14-?iy0XBj({-ZRBb+KprEm* zi(`n!#N2Gq{r>FVdQ&MBb@0L!fwSsMj~kAHljouA&RJA zOu)v!AhLy;Efhoi1vWx92J9kYBWM>J1ICXcpp}S%#!434%Hqz->R>1yh>Zxju&XA>icjDV>pd2Rw8e*z&Pg9f}0hBj3#cR@neh^O6Bu8uTy>lOeOyf zMhXlgi@A3I$)4o@#O?xXsHcf914zCme;8{8J}8^0kA(pwbICu3j|HAuufsiM4{U@b z+)v{xSS;`eCvhYuy2_($E1RhowjJ?qffS8)f;|L9n~R-+z&)y7=E?dP!{ zuY0Y=1-#pYV+2po5&Gl{*l+V^co~Vy%Hyvq#lMVGXaxzVZStO+kE#RTlfR^PVm6{W R!yo_v002ovPDHLkV1kHd(4hbT literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/beauty/radio_unselected.png b/ConfigFiles/QUI/beauty/radio_unselected.png new file mode 100644 index 0000000000000000000000000000000000000000..0aa1e03764f6786692a7824014a716e9e614294d GIT binary patch literal 377 zcmV-<0fzpGP)D)K4qKK^VaCkKyPb)=S{x&nhlXBDp9WP&UfNJCK8m zT*WJJQT`P!Bo{?4Tqqk3io06murI)2XSIH0cYSM`X`1;y%`?wTP3z!|1ofE1C_2!H zciiC+>&TaG2nj(3kLbn<+E5$&l{o(x*L_h}GG4+AhH;yazu+XcG|i7)Wd6rJSI9Nm z15zr_MUq!E1-zm8pOO^b0`3)x=s)z}A>c@&0;^yOhXEVtM^}}CG={`t%VPoiD$h+b z4ls|8;se~q7Ov1)M$nFnxPFuG4{#YzIK~M=ZV_@g~D vbJ~XlW{rJnGc+P43fOtMB%T~}R&HgOn8sz9d_`kF&{PIbS3j3^P6U$r^^E*DIKRZ`!EO{5a##QFaEsYl8Pz+Qmb{q5g!#lS!?#Bfzc$i)?l0$rDAB<-yI%jM|G@azcZl$D>% Rq=5PuJYD@<);T3K0RaBHB#Hn4 literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/beauty/tree_expand.png b/ConfigFiles/QUI/beauty/tree_expand.png new file mode 100644 index 0000000000000000000000000000000000000000..42edb875ef240a8a46ee79cac9229be9e148a61c GIT binary patch literal 208 zcmeAS@N?(olHy`uVBq!ia0vp^+(699!3HFsq+HVlaSA*liy0XBj({-ZRBb+KpkR}y zi(`ny)Yc2OT!$P4j()5c(>6{0(z9(+GK=?jmty{{lOG68`kSGYEY6gDCVzvwspC`<=6AiKD|mH=}3qg zb7}3F>2sxLsLg+Pc*paaEU}#92Xp`ZWZpB6pW!#N*#00Xn;))aK-VyMy85}Sb4q9e E0JyD8asU7T literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/beauty/tree_item_checked.png b/ConfigFiles/QUI/beauty/tree_item_checked.png new file mode 100644 index 0000000000000000000000000000000000000000..0f6099c718bb4e0f9188952342dc9b5d34242b9c GIT binary patch literal 342 zcmV-c0jd6pP)S?CtLU&p;wzVPIfjC@d}}T0?(tF9Q>)w!m#71pfT_ z!?0+{a)uKpPB91x@DkSa{{07r$tA_8o@$rdEcB4<9pR zrl&CY`*|arw{F8Gh8;V0GdS4WGDJp%GB7eSGVI%bkYUNPl?>e6TntqeB@D_+il}}H z@bh7K{rU~Vj$L~gK79Phz|PLjaPZI(23Z+thN6O824P_#%z$8GVq!>3No3&Q;9%Ih z?*Ib>0|SGeo(@A!W*P$r2M30;;Q_(O$jA^M8^yrM$-(gR$4`dnsBi`*ChT6u2)(e7 oAberNz`(#jLFD%L_L8It0F?7a?V;!VWdHyG07*qoM6N<$f)QboV*mgE literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/beauty/tree_item_unchecked.png b/ConfigFiles/QUI/beauty/tree_item_unchecked.png new file mode 100644 index 0000000000000000000000000000000000000000..c4e1cf98c195bd04fc76d560d1b1d625990e659f GIT binary patch literal 127 zcmeAS@N?(olHy`uVBq!ia0vp@Ak4uAB#T}@sR2@)1s;*b3=DinK$vl=HlH+5(9qMx zF+^ix@|(Bs{+)MFN=QsdNYK#HQ;Tx0&(~)bUb)S{z@R5f>fEdd2?+(yW)TL4g$vm; UlkObe3e?Qt>FVdQ&MBb@0CXfG;FwrRg1h zXwcX3ra|D*dk8>L$%rvA?M2aC_T~V?0$Af0z2#oPVwHOQxga z9lyKosY}0dAN^RqnSBA*vdjY6>rSgyu_^Ez-&XA6qJCMDVc-8$)&m+G5qi&3BHP%P l^gsId{k-{uB0I(<`r0*hTMzLudH`L^;OXk;vd$@?2>>SiT~Po4 literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/geometry/FitAll.png b/ConfigFiles/QUI/geometry/FitAll.png new file mode 100644 index 0000000000000000000000000000000000000000..cbcae68fcd1e3bdf3202a80141f579c3900630db GIT binary patch literal 1274 zcmV=lXhKM;o=7BEmL-H}-ft)fApi)4LI#5&)t62+ibNtE9UTUPp|Y~lZnpz~s;V2} zQWO;qhkJW_2L=WNK{$2l6iq*eT}2=WLNpp}Yik35y88N~C%+yJW^IrOf-?T;`Ol7Z zU%w6jt*xyL!>pSD08~^|bar+EKtaJyA=9`MHpl<~OnRf$YF%;HoUS4ugj7{k9XN1s zd*1eQ-*j%bS{fT0(^m;&+}?iX=POrQKL28JV#02>YwWd6*6DN~etE%UGFmMbv)Qbw zYSI89gfUJAkvamZs+N|Po<4p0gApi&f6h$F~V2mF=eCTvK z&z}EQ;M1HJq9{sH6r0UfSXk)y z`(;_y>2#tfG7Qt#*Z1JT1B7s2{~bceD{p-ikk_~tSCt4Mw6L(CKDs~c>3{dgVY}U) zpP!#BF2-081e3{>k&%HhMhH0^j?vN4>8UA(<)(c;{j&d!J;g?yHe#x|xjB_!XlUsD z_m1|vZ`Ib;*45R~FAV74H6%1mmzI`JPEOAFra4~s2?%lfs3-j?<%<$qHs98q9hUtx7+P-ILu~q z^15C(_*4jlVzHRZ&-3wkJQxgky)RC=-9niRVr0UDpW2iNs_+*ZizBT{sT4; zVUH83^MD2uY1HQuC#)n%2!aTL@O*!FdwaW>N2!b3R20R<#f3BO@TG)(@%T%^MEgR_ zS?2XPK~a=Yi+}w73xqI}$p~p~^#1MDpPq(7q0$a6e0RBA!RI>~t^UEtyH=}pV&VgT zgguC|=X*429LpW=?)>I+J6q~NtF^AJiFmfUa=Abt5cu)ww<=T~dN|SDV+Q~V{r!k}@yMbs1d+8Uikjo*61d>r*Uoz6-E5W=;!HCf7QNpp91Z{hcQ_wH*9 zrh_P(5ni507Lu1`*|i&nsJ@}0p@hKeG*EPGY|L!Eg{yT4f-nrjahxPc6h%Gy=o62R zxv)?G00^ZQ!J{A6J)wC1v(F#5wY6OmGELKylatEl-QC@}xw)mKr9>h@({#_ByS{Kd zae7v0PM?VzzwU?P(%r#_BuQ3PRTV!zC_V=|olX=*0D#$S&gF9R^YaS}3q3tOGcz-X zkx1Zx(P^7x8Tdj+zNm1=G1%AF7mY?qk}NllF76_&R;%1`7=~dOmd$1vhS}QMN+y%z z@4UAkINJCB`RwPtltfKE`q<%c007eIbai!gNp?^?O_g(>$z%wEP-2v28A6!P=Q}z& zdL2U^k7x43Pc0TpA!Lr@D2ggKl`s0jFw9^uB$G+KUJn335JW-d^LYTkz`#IfXJ=z$ z<9SFbm7;07oP!bATSJ5Q&Uq;phWa7EiD@x8wP^`MNySX1tC;s=Y=*|mRXivSy{2$?In-c-vY(q zw70isvstIp>GS!FMkC9zB^^W}k=51Jk&%(EuC5CAZV3k%hS}|QyWK8|Vj_`PTwL7Q z*-19DkD5^hHvlpjG4C!&Sv%FZY(0yQ5iOlGMhTG|MtqhRj~>p0sCsciG*g zNuwW@>DF$@CJOza;95KI4PT+4_`xxS8T_CF1@V&|R))xiFh!wIpKFuqhq4bI+&$0# zd49kD`~Oa7(vNvN@9P8rc$1^?EMB4WwtMi`s#b5}SxK&2?j)5wN-G^y%Q;>Ks66Hry6 z#NkkiP8DNlN*%45=wLOSldIFRpb!K5V1Gr#3N&O(u%gZAmRN}rTY5#jcaA9nZb9tn zD6#F-cq#*9hKXP(5GG|N$ij#aV8XP(2KyjOGZBi8Pz*=Xj7Wz?PJoSvz}8HqAZFtu z4O>`>5>vKa6e+4)E(gk7z%VB%Mi2ywW+|2>F@m(_bX%&By4BOv5J#45szqBhbm(Z5 z@ZRO^Qh{__%D48;@ zN1>-l#<{z-AqR-P5ywmw7e$(h8*)iQx}A(i349Y!R7DK2kq{kW1X5u0A(G*P5-HGF zlp_is&KDxQz~!5IcH_rbhK~rtLMRsE7$z~yhk1?T) z+YK&%ORg9*kz^ZY&M;=0U67eFY{Qx|iZB*)s?Nhl4y(Fil&xN;Oxsb%k*UriWyCZz zxRqy7-NgqwEO8M;2T8<-WiluP3#25=L6Vgvj_30Q8An4j_{#syABCNwoM!n?^E8ie zM>^Y`QNY5^Fd-dJkcmg7x3n?_fa}p@d?;7>F~707Iq=1x`{7eA&q~+QJ1rZpeb51Z z|J!v8d}YGby$jxJ*TK>{+<)VhXM}b-+v9id0Utl*O8wR1+Y7Fq^iQvbzZE;(%XeQI z?D0L{R{~f67;L*fKXQk5Ke)Me8$|72b}wysV7isPYx%58xNyF3;P~sl+M@rB)8DjZ zJ7Ak@{Q>y(M;XrV_HF`ihy9`NSCAR)gV%s8%VRLqz3@=Ic-eyKeb4^++w6n$d%!7o z%i;@XxYl3XwF@;@{nImRmrmaPa=l)Mm-jCxYbTDL{~uRZzpoysR`y}mcEtRCur ewY}E`TpsY8=g5mscbA8p-%~P?j=w)VapE5~exR@b literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/geometry/Zoom.png b/ConfigFiles/QUI/geometry/Zoom.png new file mode 100644 index 0000000000000000000000000000000000000000..9b4cdf1e2a02c74e914510d49c1cb51b4612c130 GIT binary patch literal 1154 zcmV-|1bzF7P)OxtD{$6wpA^Fr zkXEbH>2$kJ`Tc%}!%;3lc%HAsn&Y^+xw-M%-)RjsxaD}gr{#EEJpus}--xaLL6kT` zqq%eYj@@oQBw%uCa%yTy#B{A6oIlg`K4mfM2^>K{Nl}ui%)*23l}xPjop-N{UO^CK zr?8?Ht*xz1+?&9R)W=_pHM&k(bokCy>q#em@w55+x1L2J*=&}gs5bzW40&c|=2$IF zxAir<8Vp*jTw)+_T!TuIl+9+XR%>+$WLe&fZ5k}L)-xR_u47dI5ez{90#ywH37{ZQ z4X-{?Bw>?b3WdTh`N04bMG2fh1x^qoQAG(y$glL{z9^7*;53vn&fB(Cf4pKDp>}xys!RPQYFMw97e$fhd85%-9Y9spyAyYRee{S)GLnK``}!M-q81kyIgT@#OdgMCXlTf0 zv#qSG1cO0>Aj%yM0L;(NKmI*Xf3hAYaHyhoyS=HYX?S=TMPEN1k|ZS(37V$M2LS$g z2Gi5i)3Y;n+FmFWn8b^&uC8LSxU{qs3WaEzCP@-S(QGywkH>X7T}w;Lo>u!NSYBR! z@bE|b2|LFXW1I0hXI*b^uh;8k7$%)ghr{7lJ1rJVdwaXdWZKgQ+1}nRzZ(byzP)js zcF;wx7>Pu*IC1IIOKoj!9*+kAz_M&6lMw^~!!U}XtXAvJjvbsJm&@H6AGcUZo)^;T zv@DfAI)8yA$=cf5mmADxv)OFk&+!02G#b5n?J7x;s;b80@zhrG^5>Tu8XCI0yA1|I zg{E%+c1}i;q#HMHDo}v{vMih0N}e4!>vp?aTU+&d{oxKcuX_g}92*;3T@7k=`gA(; zG!#Df;kki7jEbAVHo%Y?x1}PXd8E>7Heddzix)sq`M;GA3ipMr;e; zaZ^o~HkDfsi?}Fl_ZfcT8=ge$l62GU*8y7pe@%V;0m%tlXsBN#PXGV_07*qoM6N<$ Ef~=v(i~s-t literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/geometry/box.png b/ConfigFiles/QUI/geometry/box.png new file mode 100644 index 0000000000000000000000000000000000000000..190547fed8c55cb85f1ae43330760070a2e8a669 GIT binary patch literal 1328 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 literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/geometry/cone.png b/ConfigFiles/QUI/geometry/cone.png new file mode 100644 index 0000000000000000000000000000000000000000..4fa22bf969aaa3b7b86df80a7fdff289020311a2 GIT binary patch literal 1802 zcmbVNX;2eq7>+2NK#@yDK^>QX;z6>xlU<2Q4kenPMg*#&Y<3sekYr=BkN{%AN=1a? zNU&&I9MLM(LGc#U8nwt+6rrdT#mbaX(J~%*pshVN2(~{Qe{^SdzwiC_dEWco-MA=r z-bn8dZw7-gQXQkz(JSD-nIF+lTXyzydI_dfiPRD@g|Z`7oDq$YdK^%jkW^fUBUskz zOL!E6F+7uqOQaID8W<%_9K?;`I7}9r&0s{$c32QJ9j5?2o=TWytjDL$vH${;u@XdD zuGXT!(}7K~?djVPOct&7ono_XFi~{MKnG$0c^ociGP&a#K-(xC{;wPFMcd-C zEI6pcZDfWOrR$LrHbka#_hCbBAngsj&`QunL5xZg%`o9+O0AT!=rw;Ar00En1)r;s2zk*Wg-F2TspL|zR3H`dR4TcO zCz2=yLtM4lMj>VtAF@r*wgZkc~^lC|d{#Q`iWK3fX)V5lE%_ z6qJsJHOR;QZ~j2qDbU?4|7o6~Bf2Bq+jpZt3-5*rH`5bjrAMXdzzdX~!0Bpbbe!X6 zZ-REg_{F2o1S_1$fd%^-;u;QyuMHpeY-vLLsg{yWMO_OmyGGQ5Rn#rj33CR!gBoi{ z+E(yMb&Qi))v|8c#?M&7k}O%j=wo&!zf2uaG}ads*zTVZJg&4qE>SU~O9^k;VOc=! z!wjDSImc&-YX-nPIV|D9A@4Pw$MZqgGWeVL7njqgMaUzK7oIey962*FIQWpCpI=$~ zZ{Kd+8f2AD`04(`hefdq7e46f$`eZ@1d4V~*>Uw#*RFnGOZ$pEuQwwV3Pnv`VPp5N zy}gQyy@$1@^_5#-B7S^-}&mhRw(~A8VDY}F*V|RZDaS&f&$O_lP6o) zkuQ^0tZ*XhR96bQ@XVPDa&mHnGMV;JV(}w`>+bJ0(Y-CQk-K%%wr|@Oy5s7+rluxM z@|9ZVq1+&!I*k9oU^F`A%U7-1TT{cXYkB>;?sVftz0qLU@`FD=Wa7l~{))?;ot>%7 zr^k>0R^~64E~$}=i8Cwac{=9{{U?qa$1TUcj*U2W>=^X4ZMk|%am8d;{PwVTulz(2 z)5q8M$2P2xkvdzo*dsSLcaPWe{{Doc!}BXEE8z;lW6kJvgTdofH5@jgYVy53HOG%{ z&CbcGs~l16U+B~)jA;w3>O1&F*KoM7hn1HI`RA;nKTg+~&P>6+6G2K~g6H|2w{9)J zdFRgF+qaWo7_KTS8zuj)yzcCxshtZN;`cAT@%g=bDF%|<+uR)6_s5^Q^+`!d*oj-R z&TDTvs-u)ZZ{{h2Ak_EPa^Q2xn=RARj7H5$iBMR3_^~Kl^Rll`7Z^2b)}9L&6!XIa z567%F_4M@AV*FrVh3-fYK$4}UrJKsj$K2jt1? F{sAJeu(JRF literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/geometry/cut.png b/ConfigFiles/QUI/geometry/cut.png new file mode 100644 index 0000000000000000000000000000000000000000..db3e4f9a0acae01a3e8485f3129d7e500f7886ae GIT binary patch literal 1240 zcmbVMTWB0r7@lNpnues*NTV$lrjx1(IQQM13t6|x&Nf+eW4c{wC|Wa@v)M73In$Yw z>|{}DQwU8#Z416An9`~g3ZfOEqO?k141%$c7cVWSC4vg|h7>A|XOi9ML+FD8Gw1y0 zeBXcnXLe|?zpZ6^3qcTVxdE+!S2B8=oA5WNR{zAyHk2Jk`(O!GbRQ7C7Bm2vbM#SA z0J=4GXdd(sL~PP74x{1x6RHUvMvpK|=y;e-5IyP8)6Fq}NCS-8Zi>43(PfIXtrWFC zk>~PW29)iAst@*62a9HP%v3BY{TSI3s#t*okWPlqxErWpidxaD;(c_?QsfE*jisnn zr-t)GWCr?xOfX5>u4QWX`l_E6ZGZ?FOB74H^hc-}aCVT{6iQ-y82dDu4bz@z0P@M7rTL1x^@J(EgQfHlv zb9Z+`5fFQ$KIz-IDEhbt%?Ss%D5s?;e8X6_r6vR^!AZPAD}s@rc{#4r3Wr5gvgD*u zl4M0R>U!4WX9QjlGg3T}Nr*h3?UR$TD98D1wlB*kBu%Vyb8dii*93LjHnv^kig)Fz z86W5f`b7xG>s>HZh6n~_=#iOBRCSr`+HboStOVUrnO39LfNxI%YmW~dawX5Iy^arD zQWqt_#c3cXO**c`OSEp9aau5SQI?I8iKC%veCz+_kHt>0QM3G~dFn^FBctuwC}3f2 zn1G8X$j77d{9nRFJZ86YT5mD@+W32UIele!NxV+u1U3;lX=O|MXD*eLJ6O z-AUcdC|`7grQmBU8+&tJVidhhJkVmoDCe*66L+zYo}nSSQ!Yj@_- zhwr4{BCMH{C$Eau?PJFqPb{>xwsviH&uu$(cGg>LIC{Nd;Rv|>Vu#lKZEM5lKUTSkcH8y#%w5xE%sYjW8^?VY}n>3;xR7o0-? literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/geometry/cylinder.png b/ConfigFiles/QUI/geometry/cylinder.png new file mode 100644 index 0000000000000000000000000000000000000000..d7c02153141098bb8d59a537c12a80c6b8e63ed8 GIT binary patch literal 1511 zcmbVMX>8MG7!DM%7S;jn#%MQ+YuEw9v7OWQl9lFY8`Lw6AnTY~+i{4S#tydIxDkkr zaf3=mHx98?Vx^-~S2kJ>p;85{gccB&U}8Z6noS);uu<3{p=sKj(y;wN{Fo*C``+(+ zp7(yesj|E{b4uEHKsKau*%;)3^sLcndJegrXq8NF*Q!8aR=V&ES|`LfI#eVGtOD zNPaW;$SHSOC1B+R2GFYw5RK|IfDu=t1_amW76KXsHNuDyMzs)v5{QA&;=uR=D%J## zmvGvO#%(E*8T3g~kbvP(D5MT))x5AAMsXa65e=--Knem9n>mS;Ax@l|(qLmmT3~|` z%X2_dBT4a%k{MJyeH201iqH=c+VUCluT zb}}O0D9}nhymM1zC3jCZlmsf?5ETNe6oqWC@pNN=;UtI63@SHj59=ZH8lxUDqBw+W zC_RK?IugPWMWl@$%s_dK7_OyKdY;6$Y7neQj~ew>y%t677R-QYF&%2RTkNRbXw#;+ z4o;Lvj%HG}S;h7^*YH#>VHFrs;sqDaH>A3t(#K1@=;MQc)tan22E4wM$por6ZHu$D^PKkB5ojlnD})QBm9LDV1vCGY(s!OTKn@Y19vr(^swc zZ*40+Q9BebnPPt$<3ow+%Iu)@8@$#8!M? z-%;zGnK`59)b;FzJ!#u2;=DKSLDP?HmSy;(73;G%6b=vM?*u;_dS!NPI%#=tboVHm z*0Opno|u++KUmRuq^5iDX#Ji)Hbrt*cl@yD^6ld-F)DqXW%S|7QQ3s-Irnu<_nH2O zD_cf{O^M(}?&ws<_KQ9pvb&VKeIEuNymL4sTh5G8Rr{RttGd2DS${aI<^vJi>0djL zm{Y&Xl`$_X1D*Bk$-gK6wV-s-k~{4SzKJ)iU#8v=?r-@$-2L{lPX>;~8+Jt7?qrd# zwibTjvh1x~WXdZ>X1R33O?~7+cU^D1?ev+Rt(Sa<+9&i~KX7H}*00y>B@>^Ymp39t zZx;8)ZGG2^zPdUfn@&*&D|1C;#>|ehBhK{66DQc(tK|M00jLsc{pD(8YG6xF>qVe$ zI+A|8!rC)C_Gx)>PVCUF7p9#UuB$!KzAH3o8x_47)oyOg?p)H<=~}R>eE)a3+dZ1* zNdEktXM@Yiz#Ru^lh9j=nox&Z<+Hz)02N S3gSTW*XyvC+YVUj*8BsGE-G;V literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/geometry/edgeDisplay.png b/ConfigFiles/QUI/geometry/edgeDisplay.png new file mode 100644 index 0000000000000000000000000000000000000000..8c13f29d3714b91cb0280dc81d23b486cc688531 GIT binary patch literal 1458 zcmbVMeM}o=7{A)FjtPjF%7s`Nlw{}3Ud@U=VWgu?C^?JY!+ADVlJ#Y&9 zBEjICW(J447`JJdq6VkYkO&AtoM?2$C~OE!aW2_{30oq|u)YO~{z3MKm)yPY^S;mT z_k3S_L0)$B#>9;Xf<))$IEvs3Lhpw4@GCYq--1hmlvySf^HoxS7FZ<1!@F6K>!qvN zB9`_v)qllW5k%R@xyqz6=N^*by&5{CqmjLSh(-`=n(U{UT2=yXwwm+V)N_6PYQTAH z>QbWtJ5FT~fE?|{ONZ@598pz%{pGe9!^%5@$_n~7<4VF}- zTAO;=sWN8)pm>1=MvVz&v<4k86B?}vCv=7#K!0BlDi7SbMDZ^yik7+eH=Jkf+TGAG!BKBW5*3=eVO@0C}lEYw_yL%f7DMD|^e1U^Sq3awx)8J)&Qm(_MhBq1y=OK+cvk^CI36#*e zji}aQpiu&cB4hSgOztYPh0wdhJZs@`U6uo<43v>F8nxO?J3--gDw8rK86k3=Ai8rto@!?k`h>2;sqDa*M+;FpoW)tv4-~piV9WT0#ZsjpN9{KPlU>} z9JPZLxJK5KCGcLblxLD#%Lfy!H?z0_Wi2KKH4ug>lx7$Ms$*!q#p14F^cI791@HO4 z`NN=7Sg2Y4(>&oL*pZ>_>L@^Ab(mNmoFD;?%Jn<(?Fgc{l6?bA{x3cfFqJCtgyyu(I!yTiu$ag{(XwZ-Cb=)5PF+b{u z-jewE?#lU|ccuoVq2BEN&;S0bHbNSHa$jNPw#UcbPP_?5klqE8EBRcyvujhwrv1a? ztyeS$xq)BGPN~L_?>m#8J9l8S<@&sSga0Fof+~NwQyKNpFfkAnyEr|Yf1YeT)&A0; z{Yc#Kt-)EOB;mnEoZ5TxjhThM3Riyngs=}>Ozc!{Jtl($>g0>B%uHUJas`l4=1tF` zuNBtUZ^S+pySVsM+WDQxZ(49-uq5VBu{UE2a<+f*uIggfg_IWA|A^xc1OLQaWC&mzi`}YF4^+o+|}&12P%R$l)t}s`P1H+?rOee^6AFuk5h+Qa?q@3 zkX=L*wDngbmF-~P7$|M=;?LFYw{viIbChhw^ z@B8~b-%odxm#$y3C}R%nx8VS?|RW{TCkqV$5Y*h91A{k4Q4(3J$!;a>6oWG+ zuN9|g3y(7-6a~9T+q^zI&6vGOJ@fIMCdz7a(M49L)l5;YLfS@~X$$3Y6}l*^oiiu7 z?x3piK>;LfOVIW#*Y#8`>r?=*$x5Xx*Co54+%Idg>X$>P)0wC`jb?9_f}$K&S0~Ce z6Ez1EsS$`piX1?v^UO-~_(0ltvmKBY9MCoaw=fnT&I^JCHwnC%roBD^MuW}r#s8Z> z0y;$`n&m&ulRSbQnb^*a0u<(k2?XH;DR5Nu=ihuDL39V*+`7uhkoQqMo`14Hzp7Jb z=uO@BDR+4L18Z6qGH|o~YT7&bb)R4U?5%|pDgFAiD@(cMG*YkM^9FL`;$_`~{MMtG9JU>@AoO`abU6M{l5m`U@jQ96}LrIU7z(9v;WwJHMhC+ zwV6w|FE|2Dt}(37J$vQ;{rkJoCsUJS^*8lBDgFzb;XuS+*&^JVoQyxbJCbYc{suX) zZwvCrYWnE$GX39A z%$K*E8t51v9=@30`Y86yk(L*J@G(mF#^<)iLb^RE!-qC>D7r8DySlovjm+s^&fhA? cMbHz-)|Vdc-I$fVBk_xLyGpq)3%7Or1HasFYR)$7~LJ+jlm`a+#2>YI;!QjnTR7`;3bwQseWV1zr+rrV1mSU|mY_wa7 zX)|r1%FE8uNe~oN#N^}&d8TxgjkQZGK8(a;cLFv9C22fPi){xjz*f4Lai~ROKX-{> zhEj`i6(*_4Nzf%sY6VAUS7hYaDt6d#N~C!kPV%ULfSndBu*Y8N;8h;AXiirJ=Dux2 z1kXW)9ct0MQ+cK=m|!^?R!HK-HYtk27$!mG3JgQzV3`z^AyRN-VpOhDU@BPxyl{zt zHI6D$nMuQfEwECHN(8~FLJ+sxEpf+7SgsgBaUAz)$Yf%G5cA~@!Qv4+_*lOJN%J<2 zaS9CUfPIPs>e}Ouf$P>g23ZZtx}667^DV2 z*XZB{i^E3y?J~gb0$2N7u8QDji@oMQ~h+9d>l{y_sUNu+Op;a>(0Bmk$o5Xluet~4pyaH+*j0p+0a+~#<|_UKAQEEcY?mF&i3wO zy?xpv%bTw4o~^G>Uy+`EetYlnlAfu@zgK?t^`+MRZx#$i-Otb1@|PyjJ2STa=_btz zSF)}^dTdr5(lc@EI8|2g^w_E>?`H4d)-g3$r@88m(LDU2EURGW-GNMV6#S^Em7QFrHns1Gm`R#_*N7ZG+R!o+%Mbp! zxiDlkZoZa0T=?O@sJp++toiAB-Z*pP-p%T*Ez^I0r@5LK*7?vq-e{$$b$G-fYI^)$ zt7oh<+>79MCb|l{@&aGn+uPjSoO)?VOF=So&jVs!G%#fvfb zhX+oa5Hf>O9*s_hrC-)Q9{X(|%`AB`KAm{0=9P0Bew@11!LE=!2<=HYysh8Jxsq8Z!RXhwSh=O^)W7j^CUAyS6WxMKv2+bz5ZETZ?$+Wv&JcxoI zig@rSDtHkD4<7U&Xr)jqh%db8!K)WVMDZll$+lZP6b}ZHnSbX0zW<$z!^MML8+LA> zD5@(zWS7Va(sz9)`6kWg53=mQ*$N&(HC%UMNDX+X3PC<_#$X9L-puLeu$Q9NPW$Bw zt`rWNE(%yD)nOY!M9>t~+t-L3cLHKig=2o0p}#(QLIdB+(8rYmUx+L??hiF%IMOVZ z-R6XAcy!+Z(AzKxK>)D>8o^|kn2ikG;x)-WJ?3c8Qo$1$ddaCuVHj8_hCpFe#ua1{ zXa*~&ydlc_fXE9P$7`G*F}z^%swo*@`Jsum*sGZ(JGX3$NEvz@ci)u&lJ|I@ojE4?R>*_NHZ8irR*;KMlQHi~`Wgv+1wm1Ft%g26>r*y6Q5rA=enk zb!A3$9ZA=#HJ3y~FXO%c%^ydc;?idMt9jZ-q$AVq$|w+FWtd<{CMYJOa`qwnfQ;F- zygg8Ee5n3fT4l440Ct7Fjl2ZPpR zPd!`BmCW0Mk_Bs2Rf#2tP$;Ag>9nHUKu`?B5F|~|G!8XzrNyuEVcf6e#27fB2(njF zy`mqDGV*RQs9G@S>0Agt$>F$9>{sR!1ye?Zd5NI3B;oT#)ph6uy}gg`f}kRXbAfHv5hjAI9&{D z_bV#z7eLIm7uue~>PjAnWvw#cRZ(_|VsoquDjP*rR2oGIwOXT9H=|Fvync@uQdURH zG#51oWba1cDUn4VI-6(KyMPa*k=L03smFoYDByZVUyt*GpvP%}*O|@kdI3g*&Eq}) zH-7|liikGLf0`$D1UoXiy*~<2xIaw54<|^5qq6CXok<9yxn}2zoZ)ls>6w{=ZwePZ z(WzPTQQBj{!N_xw_+Fv8`9}QiFHa5jHx%{-rf!@)G5+wjgEG>{K zJA0GQP$W%PH~)3wH`k#0a?8mB2Wsw(K63oi;aotIi!SfWa(!|o7<6Ql zjj>+;#t-#II~*uOi`A2Q#K%Z=Z{4W>|mq|T67yY_-c zE__S#dZspEQVIk*GWz9y}Nf@b^6Lt zjaWOdxT->8F5SKp5{I_Ah*~l+si*RSX4%T~@l}W6#njcUw;%<+3SSdU*zi?&1(*Hp zSS0z@L{V8m`o51pD_b`*bMNkmG<`f@IyXEP>1e1}5vMCW^k#nW^Gp5N?`PzHz4`F6 znv9FXJ5wtxZGTQqy>t8Yx*6Sc!kN0Ck%QO67k^9|h&ba$+5i2hvdwsLNNab5dA$ixsa literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/geometry/fillet.png b/ConfigFiles/QUI/geometry/fillet.png new file mode 100644 index 0000000000000000000000000000000000000000..f5d78053663572ca95785651ca9caeffd105a8a3 GIT binary patch literal 1766 zcmbVNYfuwc6pn}#5JW`QGd=St~ol)3gyeMl>NOR-w+xQ1cKlEEEW_@CgGt6o&zeE>myfTLj>kT|TjQ9z!57rh;b( zz_&pq%i;hLW<&uNg-uq|m~?={qtMt?9-X-api^lah{}Oz3^J9*r?UAB9x(oZgf}Ci z;mgI+abJWa0Ml^Xz=t5S*-SArD3~!7qVae0_K#h5xvhwAZ2u>d4)D2Nu}v*;Wa zl|$o^d2|(vOye?PGLK4#Y7W9>t27)gkD;2d^FF+YP8W+f5++N;V$f(3A(zc%aG5lT zL@1%LIAX>GHd1fGVZ9oi@U10$k7F4h#PUT(6vi>50>d&VrXVg2!!c7DW&lJYXV! zGq_xpMonY`j^mO4TR(^h3UUt1e}-q`h?q#{_8k=n;T@S!J;5L&L6rj!&(skNbc+;+ zD=ar3C9R1_i1#0LwAkx-j?x>YszuQq-X(Y4Si)fXgZT#{I(PXL2z^4g9dlPLKYr<> zuMd?4<CX;uHlblH8!>nGIaq1HXM;lqu0y5BfVt%K&) zm-~8OQG5$8?1=RRT26)ok6r0A=PH!Seaju^<*nA43)s4CPo9o^DKPK37ZFldFKBu{( zGn#$N{02JHYksoZy-xAN%ER=0L z7cBwXTVA}#mQucNS|8vi8a>B&&XpdMn7vky1|)g{enoIpmglX-KFQi&^Q<0iDT}hq zC9j*c#--iL*w?`n9uBUJdbZU!N;vPdN^|_Mt5>CK;4ROB zo210EQ@5qu^InjjNBjFhOkZ22pVC7o`n?BTSSSXEa?ToRR~fhg{u{cd);!k;dZCOllJ1Pdn%1lQLC3PDUNDyZ{O5?$sJtXl^d1-TFVt~30rbI z3w@6atN?a3r&Qk<8gb~5YFfV4D{5-c^~#n!`WJnJt+`0dkuFhERpa*3mqXD-*Oj&{ zs@WwsJC2?_IcI-Zy|uP#`s@7|5n3!mDnt9Nx3Os}0bGR?O02ZO;d-EOz{3d`GOxXh2x z#`oiVm|Ze*$1n_RTAE;+oLG6aX>EW{XsIIp%u2xy>qGbM>YpnteXS1~77itBoJ1O3 WGx>@%rTdEW&l4$$6;}yUa{mEYd$6Ja literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/geometry/fuse.png b/ConfigFiles/QUI/geometry/fuse.png new file mode 100644 index 0000000000000000000000000000000000000000..c3e9859a061ec0d2757dc11be40316186a95ad25 GIT binary patch literal 1195 zcmbVMO=uid9G^y;wo4;Y5m6K-6DvkK-`_*VbThL_wsvE>UCHXHZ)e^nLo)NmnV0Nj zPfwFlcnO%a3bsY11a2Q8?ehxk!~Ry^oML{bt9E$UHP-z3@SA@tzD%zOX$e!u_s ze_kCQ8|f)LRG=uTr#$Lb$x7$%-fr?u+wH%|@*pnN@p06|Es#K}=%WUt%ORMARS5j~ z=f8pj6m{2JP^;s5<*4PMkOMh}%fgtjDQaLai-9){G2MWZL1Z&GE`P?*fp0StYDK8T z4x9=`+X+109;HZz5B zZ1H@n)#6$*hmuKNG)dJ9c)A%v z7*{IWilcNZQ6y!224Y_11U?M&xHix!uEKxa*b$x9=3~fLVTxuGkJO{t*CCVK-PuqM zB;Ht0Cjlu6m~oLe8^Q>eU7H~{oFDj>D(R}AizaJI4V4uQ1+b<-L{Ik(trP5GIRCQPGaLZAOLFB=X?SRj87qq(kT?vj+0m2pdX(IA|JKV{=7_^QM)h+=Ab{Eppf3kvlZ;%gP;Lfhl0XF zL-Sb0RGKXCJcX4!AR9)b>5*udEx!MM^T!jX_`F&E(>$Fc(vkUgdlZPUJxnkn6O`nm z(raEIWA;tiE!MK18h_uuJ^01puE$>9)qU=s6U7H^qEA=%onP&`^yt3Tfjz(e_Qprg z{oFrCE&uW6y}Qfz_jB*|eEjG2v;NBB9(v@dV||6u4ZcW4*vL^YpgF6*A}jQeqCDHeXO9o ze`M)e`iVi+kA%+3drJpSj`zxodq*A-))&AH>cZ)ht#@9!k`?DiOv83 literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/geometry/geoComponent.png b/ConfigFiles/QUI/geometry/geoComponent.png new file mode 100644 index 0000000000000000000000000000000000000000..77e9454cc31eee96e6168b2c0b4ca75c4545db61 GIT binary patch literal 1835 zcmbVNX;2eq7!Fkfs8B#fg()tJh*~zA%|Q-83E8Ac;}d5hvSd#%L~@L<|WLr7%V*RsgRakn?6G zjmivE`^pz5#e)SbYf-|m-EJ4y#RA5f438bG3WBBab2%jWX3rb4|gEP=;7wqRgxwjR(0K0ZEfesYoUj z$`A#l5E-NpBA4KhLdc1PjFiV1j54`GY#6fhCcIiCMns5EC{;_v2%<@p$H>KU38K*? zY7nUm6%S$cW*du}32MkU&G{b03bop|VwGwug|mzmW0<0$DM%||SjJYsSOB%!({(v8 zHH$WrjNLZP)25eMqm-2{p-8QjF#&^hR?=^XK^TLJWt30?QSul9k|-ob2qy>$BqDIJ zTy8KDTsGhMW{qZU45msYc&tNj(|z`MSCX|& zdk$2CIlbW>&h!=FS|=4a#dl?=cJ~(YxZviEoA+YHi(EPO_B&zsD<|E(WxLq_!|kJY z8{L2Vt9>dg>wH>@@F*boIwBUY`f=;%;)%tR@NT!eZ}0g@&7Ix{9MGzB*F!@>NRBs8 zpAC5Rj9Ofx9Uq=|w(HSkbRLd}w_m!XlGjBzuePQ*LckaA-`dhWO zL*9oT!BG7-*9B8E*My!%V&5GmESxotXdABGR+pevX~x!^YA6ubJJtKq>RP#&IYl{5;j@#p;> zS?)LRvCFq_V}0d9d$eSOzH<5Hn$2STF#2_XZf)3I`;+ZV(3kGIgjz7LZg)_4#)ZAz zPpDsp9f>{DtT?aQH)Y)A%pEO3fr1u#4V4w$#I%KFFeMF3cjA}(&KUN*}EMi+>%Qc06>g`3@oA`csx zJXO`0HGOq-iZhQK4kkQaWV4A?y*lZg(+veJ6uNTviHtp0X0;{y&fgdn>|C;W?w{#b zl6KYaPt~5i8Su1xMsRXRM~BFKJLijoxs??aUhiMM(%E$?WErgO?i#B{4e85W;QfH! j32_Da7iN~n4n#Kd&MGk4+eMUneqVY`3i?&z{KfwOCSbO( literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/geometry/geoFillHole.png b/ConfigFiles/QUI/geometry/geoFillHole.png new file mode 100644 index 0000000000000000000000000000000000000000..051061497d43ae588771654e42fa0f2507b506de GIT binary patch literal 1376 zcmbVMTTC2P7#;))Vjyiwl}ogf!3rv~bJ?Apohe(~TgxhoWV;o-q&ho$c6SPMab}iX z)`vD|&|YlpLu<7*@_@IdXstCiK?M~}sU>}oL`sbsOl!4RXrQDqZR1&B(Ff88Cz(0t zKj-`Y`#(FIn>G~}RTLozQtWT=2H}ck-oh2|Yoyb&a49!^t>$JmY9<98Ag+iS2B=>a zVju{FNaypzpbkNDJETyn*&1l%MOC&48H^<*Ymki~b@eGt5Zi!>hCxhHoY++V0ES8t zC)UCQ$bjYnaj7A#gU#utkeF^0xd>Lj0j*2%P=O3g0Zqy6iovIx*t}jI?lZ>(hR#FG zHYc{=RBNCa^{6^P8H*hkDI1NloQ1NJ9Br#bX_8_Ik|iiBPEtH+=dB#N_+ZeQ9*Ocn z@5V)2P;z2%)6{r^NG6k(q}8J8F@oYajv#4*rg4bCjZVcBQn+GNWi@z#A?lK5N~(fp zGzwugVLCDB=|Tvy76>dUR*c0&!ITjxK_e&&Nyu_0u6eX!2Eo5>EQ>Zmof;s5z)%yq z2Iv>k=%A(C$^mgbWnZ?{#AE#uAYtJVUb#$xVXPG8b35z~tHVb5d~P4buwHAH>sJg@P(+Zm zEkWChT>EXgyhjIusp=tBZO?W=b6ho5Bd%(w$CIhL1FdP1l!%%%9?X+KHu(z(5P>1yrIl3poY%;txqH!GT-JTUSi)${bRSMT?qt~*;Cvo+0JVdvK0 z8Am5BULL&HRr^k4c>Lr5>tAi_@l6*hId851Z989i z9P3)$6RH~9e<+77+f*~gc#jb~8a{t%GPkXd=|5Rhq*r#I%2OI2bB_)l4(|GUu-y9D z9aq|pyN-h2H>|9?KKavSW_Bzlo!7u_`A4SoXZ_4I zvCe#l{1?B&`{vLiouWe9G%?z#;^6;PW$H$ym{maM!OL+r}Mtd aFGIfVw{E%6!yL-|^ZdRh?}zT^y8Z!(3*sRF literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/geometry/geoFixSurface.png b/ConfigFiles/QUI/geometry/geoFixSurface.png new file mode 100644 index 0000000000000000000000000000000000000000..67b21f850a47bbd3847da2d789cba40efcb07357 GIT binary patch literal 1515 zcmbVMeQXnD7{9J#jIoUg4B0ZraTA=%_3rw8W!?HYS7%2pOV%ukyI!yDg|=7kZnUdt zR?MUlbzp?ykT6{kmJvQ83Wl#SiwtK5B2y=Z5duRHgF_8Wu=BdD=pTeXyyWhEpZER! zp6}=0wADP5lU0}n06>nV%48Q-F!^R?2wyG|`9oL=c(a3F&bavy!BT+U#W*R@;wLvI~C@k@v#MiTZ11vUVbRfK~Cxsu{RC*`37TIlAXV-QHY zv{0SGidut4%1c*8SZaBsrk0GXByks1Q4W@cHG%>^#S>uI?+b96uojxos}c6eV*~;x zApA-#H0hMXY6Fc7OMwcB5+*UZ6jb37Oo`%B`4UiyVk!hxA(#wCF%7EJ$Z&A#fdp%; z%dN4SDyM7-k{0svd{BcRp-@N?l1UiWgJ3w0Bd8RSN?`#3b4>xB2*UxcB&ESbaU@Fz zd724;NsWY)Y2>w#;OS%t{-D)*UvYq&N|cZ?BuoSmOoAeQe=@EKG{@Vif8BT>nyYOJ zQiz@6m`0Wq>ftU)k%inn+)xrIc%xay(n3)PpNSzG{ZxRrn6!{^BXQ9#jY6tYpehW9 zaj8=QV`@18=TwzqmFwAUFE7dZ!95b5@W=x?n z$x>WPfa8e(Nu_Mlg6%1;`k`Enk);TpVQU%2m+AtWm*E-C%LGBAFEne~91|l5Cd$G*9YC=*Z;u{wN5-{b8a4!UVCxsFZC#HxmHTW?D@8+VGFgd*kC3 zU+B^nzah%#%xzd$xnbWvY;ew3L!WpGj%VAT_*(s@Ju8mk}&3(q)$qMXtTlapj|fbFtoa&U%-EJ~no<;C)B>Hz&6FVl5uy zy#0qQivDP^v&TKwP&#A0^}A`Ex$`4~*oKQ(-kxcfwssWd^uMjUksCj*TT)#;y=eNS z8t}r;!>i%qs^N_@9NDwCWW`%-Ya2!TuC&&*6?8o|t(Dkh96R59r!?=7{)D0VPG;WK zdw-97=1CiDKKJ|)Eh=gs>;c;Qbfbx!*e}t8 zfaTZK9pZQQek{7YOW$&R-pE};L;Jh8<))em04Ih{l6K6D1>3I#n XfFb(qesNt}^7m^o*O+!28rJ*+&kZ8> literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/geometry/geoMeasure.png b/ConfigFiles/QUI/geometry/geoMeasure.png new file mode 100644 index 0000000000000000000000000000000000000000..f867caf876c0b5bd54ddddf907f4fa68e1f62327 GIT binary patch literal 1208 zcmbVMZD<>19KSTs*=Z(zS(ywxFYBn_z2+|WVq@FfU2S0LY8G4=BD>r@NzUY6diQim z!(iz|K@?;k{IsI577Pf2ABu_}HqkFCxOFhBg1X7HRVL~feiG_)ZBqSE_Q8X@=lMU+ z@ArTI->b7T&m{Igx*x-^L~dFupcRka2L{nMY`5>BbVeHGN~>2?54v}cNDyKc%BG5$0@)>4oH2S5XFISn^dS{Y(nuY&f`F-_px5LnL; zJ5H7Iv$*O702inJ;erc|7U_n`z6K41W?=i!_FO#DXq3Hq zm?4m-J0UoJKEJEj4SR_~DWhA4PqP$5J5ChWHadg_@UI(tqQl~X59k62z4^dI^{6EK zWR$!68;XF)8|8RlqoNoM%`@j6;KH1iAN9R(!p z4ij+E1O;eR{v5ezp)p&}X_Lj)x8=XLw#Gl57&!V$Y;gI&=}(T<8jU+cD?bmsf8^jV z8xu=s|GM+dZ^gOT=p&cRWOBK>arN!3HxixCChxA_yYSMSzPPfu7<+E0`{C_BX5#qG zAI>Je`o8q8es15j>(|$U&TW3;%i5uQeEFvaBAx#-Cpu z{qBp{((35Q<2S#CZys6bex$AL8?4G5^3?Q&#|k62E+9{Q zD`PJ_yz*=JaQ673lqel&BsV*2Z>@FXn?u;ZL)cRvw6Ud)m+waZlAJ!Hy_Y?G{vVW8 BlV$(_ literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/geometry/geoRemoveFace.png b/ConfigFiles/QUI/geometry/geoRemoveFace.png new file mode 100644 index 0000000000000000000000000000000000000000..b3beb8c54b0adc92d9d3618da5c14685bacb1c3e GIT binary patch literal 1509 zcmbVMZEO=|9KXWec-dA4h$D!{4RIpZdugxNyRBPG+ew4nN?BxCkZ`@bu9vO7dUs=` zL|jS0@eVOe92kcC!ixckX7VPCtuka}2@w!jR5BR~Awd@-nJD$?SkVuJ4_O&+vu%)BX{D=i4X+kx)(WpV1-j}P8Rs8vDoimDb!pw+EO{7HF1gv*#+4z!tM}P zC;CKASpCj7VkrcTUnN!7Xf>WUSzZnqxD>_^4MhMOf=bJy5st4HHP|oKNntDU;M7?J zmIN!ZjPl@~h(ioYi(-nnG*(&7$Le`TK+4PD(kKfQghY*lqoIbd%0{ios9qNAQ^yzr zk3zJ1EAqst8jlxt$chM41~bYNCK9F@17XG)(zF03ae~Hh8Y7G-PO!L{H8Swng8*xa z5MX`IiZNS2vLZoEi?A5h)YN2XG8$y14kH+b!Eh2INfaPZb#++dqG(txN^5Y6Dz8Wp zO_IZKN+ai&8#OBeJbe;EDB|%vRUB5w5(QF*MY#w@7;r2UO2svbRyCjauN%)qtJSL` zBIXlSxl!RkJpx5(GRWQY4W)p<8@5W3KvB2`r_48o#IWXeS`lz#5F~-6NSeZFfom$`RP%NLAee7cY~-g50FO zmMYVesGXuBtrCR_MGnEEd1j?&_<)-^BQ4@4RJ53R)WnzqD97_Al;k<1#o`a}AR1(h zFZ|#9VZbRY)hz#Mp7asu$kg`fC;;KK?)d^d;3Fi2pX5^cG|0>H~oJlljS|O zaq~9lvO4ls&Z*dW>=ctzM*A_rmq+gp#W`0CH{U0tT4qK+gy*|@KL=u7#> zA1YqyquX}3J$`u5`tHj&be4{;MB;XG)AZLn4<9%X_036C)ec-AamV_j-50v|+wdvA z8^a|>!n5ym_fK5`p&!oKopZ2Zr1#eg!ReKUw|%$eQbR$8sw?iFVOV~AX7I$M9gk+u zdwloXSM6nGXCBV2eM}oms&1c(-Cff@^vUsQME53ttw2dwOI^>+2jZ zd~w=M^~GoVy8-%g2juoXJrpo zChycIo3%pyo{Jd^vNrC^8Z0}|bF%sRaPQ&1EmyX!>-F||;u@x}(oJ9IEzP_K<-`3W zkAC`l8{KaHr03{)3xKKASr8 z{;pta547mhi7k`jttFR{8O;TIC+Hu`tm%BEoWuW=^G?{7MOSNQnUDLZzhtKb#6i9OQW1=nmZd7;GSc0as!f}w9on^4qAj?2NJHc0y8EX1Bn P{dnE3O6QSD27ZTOD=gO*2n-T!KWx z@X*DO=;IcFr@C|qftE6L&KW8{vLKyRQ;@7 z7{g<^OPYzCm=R%Oq2m!YMRoUto?%Ww42p2vc9Znl%hxoptt34f&v7{~4JYh@iVsIB zg9WoPWvUk4a~^bu8d2atY=F?2b^|R;(mQ%Ja*nQ98tg#uRFd9xYAiPl(#VG(9!oGL zF9|?aV|;>B1?emhI9_HsndL=><25d!i7KdmG_mGeB`vS_Rc#R|Nl#$xX)IeVmt$oy zhWv4sS5=ke1Xd6jf?$F<7aJkt2AwqxIt)zT_OOjy5NR}uXa*-~;^}S(j+e{rDRzTu zqDacv(C}D3#<7kQ#kGSDa3213V_$SonDZc;hXI=LO;V3iXN^p9cd(%dNW9U8e47-- znAVXw<3JZ@^(0MRVwP=baY2rAGOseKP>eIYA{mUz5z&+_B~dKNiYgXsdiLX|1wqyc zD4vdsJfBG^2}M*SK9fmh__(Z#HEz}ou;H4pX4@vVt6bqgu9o(pfstQ8Xu8$~!xIRj zU;=p{osO!mfUZ&7wNN=Y6P0NoCda{KC8MB*N zy|)m4D{gIX_q@As==5S;WBo7c*hNVcgoUo*6T))G%Hzx2&-u6anztT4JG$~n{xZqu z(`<8VL)b!Hz4g&s-e~dxn(`${zO+03B+G<9v^4*|7d3jhEB literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/geometry/helix.png b/ConfigFiles/QUI/geometry/helix.png new file mode 100644 index 0000000000000000000000000000000000000000..5c4a418b22c9fed5c8c17546b683f8e3bd6f9e44 GIT binary patch literal 412 zcmV;N0b~A&P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!~g&e!~vBn4jTXf0WnELK~z{r&6iOQ z!Y~X&H|~FDSf+K#f*mK_BzO`6+SGBpe!%+PSbj*`z`Cx-Cro#qvH{gNQZ*tCbQ?#M zk=OAKx!c?@jZ6m`P={t3H@lflR~>v*w1{M_dw6%{{2LQe*hK^b!vI z0TX4yaXlJBoCcKJtg)w3=l9bDvI%U@zZlt`u^Z?(Hjrpst7_5&nDfrGqe*r~UP34a@ literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/geometry/lamp.png b/ConfigFiles/QUI/geometry/lamp.png new file mode 100644 index 0000000000000000000000000000000000000000..4b86dbf5e952b98811db056f7fe155288f8ff320 GIT binary patch literal 1609 zcmV-P2DbT$P)U2!JO++!G zMn&-e0mVdvq9Z8L1XLhuRN_fA0dLf3JpMpH1P@NxT!dwUatqzjt!rt!6|$?{;~(WH zHH;l4jY+@B^T+S~J=gbrpZ9&A-%nJP|1%O|oxng5ClG7I3B($40sYPlG4&bo6E&tyLao|Q4gl7Q5RtB!Ug!cI?&@XyBsG_ z6zy1pqCO)b_cjO6{)jsm2}z)sRnY-MBuc?XjYcoSXRoXpDvRTiHV`H z9e>gN>g!t9;K1(n@?}FKKLDwvC9Hp8o|w~yf;AtKlTTl=4GwTN!@)z)*+uaFNhCU( z;j!6Tcla>g!qH^ibC;MeDIxKZSz5bm505yVy7qMbdb|hBX1Q%_DNC0vkr5&%$2&V= z(^i5THmke2nc(9EJAw(8fKv&qB|&^)S>3nVE1wAtWV*-oN%1?$_VZ zTUGUU5iyN0F{8lBqi-#iQS%mPL)CVsx?H-x&jbKW!)3~?6L{mr`I6nEBH(g|B+_Mf zHw+pC`R9Yd@L#)UUr@*LFBzk%jVBTl8ChUu)o1TZ$-ISHw{07fJ*~PW()Nt^fYYU4 z1Jkxq$h;m4aec}5CnYTW2)L9BI6%_N-MwlMDiw1(T_#sLRD=K z*XvcEQd_UjE&W*6Y}!IccMzg2?d>Sg6&Y7mT`etCc|7p+6Ov=GFgsGG*Nv9FjtAzy ztW|sVqQO9DCZi>tq0}!!!UIaiiJYb$hi&=_gk=WbL) zMqX6R<`3SG^V8F!L!k8tq!~{g3j{(NAHeB?XBMe_$8H|<`*p)9`Shoq7LoiyD{Gf7 zmi+8t{Y^V`T79*Gz{7Q%kw3IwF1as~c6-10r(m z!?X40Hy4U6Z&crX1cNYlkv3J;ur(<`ZkjlOA;;fU{GqPu9a8^=ZFKXb*QcxVM#=Yk_A~aDagx2U60h6Cx??eV zOdg{2MJ6Jnb4D^JF_H1ll_%sGkIiMM*E;oL+qIwW_deYK53Tr7m)v`soG1rLfbdif+O^H+=kv(#3{|ZGYWf;GDg;Et zWXWdE4cEx@xsS?_q%g0l5WYcYOp+lL+x1NmX#@7EYW;v>5440tBt1Km{m++6MrpD1 zYC>9%!0L^9WMhT4)$HbWRjuf6`~k0ksY+{>znY~9UQec=uw}a3SjR*;z#Ybiijiumz%PaGwv5M771ym0QbP`^K#=pSDOiM- zGe5fl`zfm9f?F!%a{jDtBagKb3>$j^VN+E9Kpa?h4PsD%Q?8$(U*CU71J}vWlc_wP z4-7c%o^FJ2yiq9Gjhd}F^uQ;eKh}u?4`K_%-i#mVafaT~tCM|l%+X*Af@>Li+o^JX z3>YYcAjPH`TaZPdXsnRtHBtT;h`gY1yut|*!wWi})+G%zADUPTovL0mN1C>Xl%c0F z4s?#I*XwLuVo^B737V#HyvT_nLl8_f?_(=w{HU*`!Gw_=x&d~P4-$=51Ey65CB~_Pt!)2%&{h zSVCx~)dgeI2%~5k1;8+ps;l6{r0YAV9-U0ev>mkxL-zu7MndF)tvu`QE& zGf++2jI7C3#Jts~Nr$#!QHh_EwE&?gfV zl2Q4SyEaP3>`u-cD#g!#eYVlF0QL`ldUwyOp&M&|?|b7M=-S&myR`IWL45gc`0SIn zhi})krCR^M+Ry0LH!nW;tMF8&F0Pz;{-6`AKU?|j%{_+t?8hU)rO(^h&54B{Ry%(Z zmV4sMwf4bThEkW?2EYHR?U&VKx4!Fmxqhni%4RP$adY4Kb&a~J9t4NJrp(RqLVUDi vY|&`DJ#n=Aas81q+kX9zci!9iwc~5lM;LxC literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/geometry/loft.png b/ConfigFiles/QUI/geometry/loft.png new file mode 100644 index 0000000000000000000000000000000000000000..824e5bd0dcd9bf0303a9fd106aa3e6c4107135f8 GIT binary patch literal 1548 zcmbVMZBP_t9A5z)!@==|QG6NPR>wry+uhr{+m|?%djZb86AqFq71`U}<4)M!V|U?B zvO-G}E8iJ(lm<+rCQP$2#|Q+}@-jz8G)FRY#Fw;Yh-yMVnC&5FeQ^BH&g?$V|9O7D z|NDPya$VU;iBl5+07!D=*xcF*M&Hq+w69WC^{2K>QSBZzU-GFTM&^M`PV(}gLtsjH zH_vdZ%OiXS0K``Y3OuUExtL}pLB~Wfy08$`*Z`2RARJ`aQeFkUd`UnwL;Wo$ATYq0 zp+ch*bq1}xKaf);^Z8Y-0=BA@r8sE8d@v(SYYGHjWx%jdCMtB;3=Qd}wSDv$fxsb% zT55(KJLPfaf>uf9L8HzDvzS2-5|j=zp_JZ`4(d^iKu`j~a2UmC)I{SHIQ&4GHJS6# zZd=x{Eln~*epL<92oef~bRk?P$t4IzQ51se5xpMP5U{dZRGBa=Dl=mmY`ntCfuI_Y zL@=t6@k$k{8PYs`9D)#ZI-e*OmElBbDMP|c5W#dPA_&pAhR}-Y=Kpo$sc5BOb&yBg zydqV|tX2=-%othA-Lnlvftok;5;>q1g(5c6v>P24;Ao?sFroxT!Ia)> zgfY^}jkpyMMj8-F#VRj2?B5~4y+3glPW+ZHQjO!2; zl@VD!W;>wS9_FIYu+|Z=V znDS9SKC^D{t&@Fiuk}87NcQ(C=Xszyed0VW;`yrj(%rSEy$|Xh<$Zc7rD#NQ(V@DV zGBu&bwz25YqlulBElx}0IOdhgH@53KYj&UWHEjI0ulU%Hjh^(*eRJy0UJsJsq<1^Q z85@wzl1t-9xCzZm=k0fYvT{dLci`}qvaLC@+O9<=E!=j_*Wou<$mvTLr@o)n!Ra$+ z?|3j!v<=v_>S*Gqw?@RRtuFh$7(MfP{@mKzx0A;-_)UA3&%P=WYRihu8y&?!>Xvu@ zIC%M&ujhXex9jeroMX?6<9lnb_76t#cGe!f*Y6@~TupuT*0BS^oP>i*&zk#@O8djH zhdvk?x#Vt6%pLi0+^lKa9S0_KemO6VMlNSJ&+ufoRM7QZe#7m1_d9OwxS4tCPWP&# z?YHFeJHS-@+;M&P+}6hW5M5t-;@Xnm49m#VwTsr@Uo*ca>8Gxhn+Gz{c>D^vN66Xf zE55L`xOwZiEe+Mk_};r4Y&F#m>pExK7q@d2##s zJ2hD!Qm1y7Ozzo`a(#UKl*9OqZ(56%bcM+2@_9?+!pPwMGifQu3-RwyO%*>6QEkZX zK6uuf54$aI-<*-M>xZPQ@45zG7MEwW?$s@8Zvx^0OHbR84le&j^#AOzyKJ9Xir4)E DWQjVE literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/geometry/matrix.png b/ConfigFiles/QUI/geometry/matrix.png new file mode 100644 index 0000000000000000000000000000000000000000..be49dc980df1042a74383e3afb0dbbdd27441a48 GIT binary patch literal 1121 zcmbVLO-K|`93L$t6vGJmu!La*QD}C)KXJ3&o!wk;&DJG7bZ~a&tqwZ#rkSU^?kOXJ z=;EbIfeBrzLv*lzpd;j16|NDPk9U45{ z+T7ku5JYRX-^k;gjQ)L1cnz!7UwAu;(xYe?mQdLY0Fkg^5s+Ee90z$|+Orp4fnI{x zGvgFS(P(Z!x1bv{Bb`{q^)Z?tdiyHAX-xt|7QwjV#i?(Po>HV^$Egu1$L9PLm~i^5 z0T`|h7Od)|rP);9NwT-1V*@TgCRuT(yil*isZF~&K1bIKMQ*B~$vCw|YBV=QreFX_ zDJIhvC-S7C#W>kLya zmt$oi27_^i(=?4?d4}g{tU-sf9x^Mm7k1Vy7$CF)$43tI$jG8ugwrTaVWwLlxPC6T zZP*KIiNYykDyGkHF_v-ND6UQI5aq#N8arx-g;^gkc@VJFR81(>?d*h4 z@mw;IOiNNq5;!iMRAp6AMJ}CAra4J5ggQ3sg~;?QQ1|U%-!-hbD^^bhz(g=8KsZ(J zf}shBU^oGNGL?#|u9Dp&j%UMi*b|j$D{2D-&J3_K0d&dDJnPO599Y>D6u^o!P-Tl2 zHL*mSmL<}>WeTcVELk`js)o1!H-8K!#YD~WPxI8Ta7RYR?NPwO_AmhtPf&nIrC)73 zgU4(xYa|Ml55@J3jlLJB8oRDEG~M1mmN?AH^2*I_yYZ0F*fZarxzn~>ef;y-knGyR?o9vFXH7!OQs`Q!iF!e ugQa)OlSTXG!L`eu58Mrwp!%_cXd5Gz8#~^o=dTY$L!V6#8uyc9m;L~hQD-Os literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/geometry/mirror.png b/ConfigFiles/QUI/geometry/mirror.png new file mode 100644 index 0000000000000000000000000000000000000000..f27f1b55cf1cc94c7412f8fb7b55741feaca6873 GIT binary patch literal 1479 zcmbVMeM}o=7{3l}5gg!@Da*j4_)jPjXs_NKwA95E zm>)Q1*hY+79Al9`AXyf_GPn3K&DelZvl_%qGZQi$I>gLH{!p`t?*T>sSoVjP+`aGn zywC4>e$UtScSjrbT2M3=i)mtnh8LPp+-x?Zm=@J)5ukyH9TAC&BN4GIW5LOa zw7^9rj*q~yMJmX*Nmeyrx*S3{>hY`^j)*IX0x3h|R20QE7#a@CaV=?!l8^nD#x1o) ze@B!>eXPj02{fojs4N2pxx2k1SrM?Y)C(La3f1c5>9#N%k=#zJ8r*0Yjf}iJGGhN_q<|STi=A*E~Ay?f5mp5_|hL4Gl z$z@uO+Q|xBJIhoFd>CHJvxU0_2h2bbMi$c{tjRzlIP&BPWv@}JSOu-NhqEWBl zng5$V6p%vYX8BL^WJI7NeX!=MlkaWav#B(lKbk{6V=LG)1C8G0ZCCWyH>y%& z>o(|ONo?KrdtNItPIKKCd(%?VQ#`$K@ciV&4W+ZeT|ALDp7TMWV#@EU-k){s>>YvJ z3eRqGzIM&?gnf>jv;Q@GC7F6ag)6s)ynf={d%cr+K9#S2H{BzUeeXY1{o&y}n|q{i zsAMRA=!j3noO@yqfob=@`K*l1etAu)YN%+_^^-q8E*yB;n_TEz=uVZ6DQd|bsovQ7 zcZQECuc{7qPil7MmA9p@Gg#|-`|J;5 z@>IF4<>*Hv1)f7YWJ&k@7a*?k7q@u3j`n1cvt6lb&D-hXf?tLoC8w&&zrGPTw$}&0 zRgxBv1LU9B;biet=icqR&R(-IM7p@Id!S|<+BSOPPNnN~a-Hgu>hj`Co<{rpV)}2z zL~`Gy<3-qj{mb8Oj$h5a_^pY&PylT^0i7R!u1tN(2mbi=OhduY?D%b3{^L)m<>R0f4!<|Q^wz4@CTJ!>vpmVLG83112{s=BTXXcXTu5b_ zwy=~WDxO!BX}VUcQ8k{jok^ONB#CA?n&U`}Al*63Q|qMVcDFR7kgGXH)iZ1h`Wn@e zJ?kY2?CDMjW;K`FRcyJgY zgf7NQ<%B5lrIwz(_zK4g@wCJXiommMdQgmuyclEC>A^HBBvO2fo3&g|wKUYSZD89? zF84sLtT;&ZY^P}3)2%MZS8UIAD|QtsieGgRK6%oxbi3w0<(FwE>J)N}Q%KJ^wh6cM zEE{|Hz{FKPftVPH#JEPrq*$3$H7!PRn#zk}sjT5>h$dhEzxkuFQ?%bK|7o7q5$;HT zyE_V4*c~Qh;R$l^sN4#F{44;0P&Rd}Sie)czqQqWV<7m%n}JZzT4lrjI`sa&`OV(W z$Aasp&#sJn9Sg6*QSi&(3yZ;r;mG`_;rCwoLZ0Ybx(&n3+wX+CqEYq7t+n%P#rbZz zEpv$Z9Xxtvs(@X2Cq4xY| zzbbdHFGp^D@ci)fdgdkeT@XR(d!699iwDjrOZ$f}$!p?yuoCWW?*lVOI*$g|AIksr zR#@8?IJ`2{payPIZ`={aqi5xb)xhgF0y;V}ac$=D%d203o}VJWMT2K5_Xiut1Iw8g u=8IPjcP+-i#-DA_y72PBuF zD}^(rivkX$7_J#agiTSyBh3i7^AOWjIOm5J^Y!U7hW0&+DXRsc5ZSQqPqtz>)0!%| zt$Ek*n2}TTaML6P0*C?K3>Lz~Y+6j)u1WUkHP6s(2%fi?O;MG?G;O08(kho_T~U!} z&EUkWU`WadS`tK!7c^d!SwS>~tSK9G=V6Gq*sGaEXT0N!oGhk}ab)s*qtW0RGKb>_^x~A)Q(TRkVmLhA7<(A&3fvEyH2bNfb#L z-vkjaasnR&X#H zx?ZihBpRl}_x?A3JQ2mG&GJw4bgxK9rrWJiAcw7Cf+3lpn2gGv-}eT|n8kT#wA6g_ z>DKAKtHOTgM7Mr-6l3^w)^1&PVosU-?Y zsp*+{wo31J?^jaDOtDo8H}y5}EpSfF$n>ZxN)4{^3rViZPPR-@vbR&PsjvbXkegbP zs8ErclUHn2VXFi-*9yo63F|8hm3bwJ6}oxF$}kgLQj3#|G7CyF^YauyCMG83 zmzLNn0bL65LT-VtFWlg~VrW1CgG|37u|VHY&pf(~1RD?6IsxA(xEJ)Q4 zN-fSWElLK)N18HBGcfG%TLe-Fbd8mNQ6?}_5_4SglS^|`^GZBjY?XjAdMTMHR;EVg zrUvGQmb#WkNv67n7AA?hmIgp>vU!SySyGz0g{5&4%p7d`osEnPjm*ppO`T1R4GmqL zEX*v7EldnuU7cJFP0d}5VR}9Dic1pnl2c)JX9Dep>NUWt*UGslHL)bWC?r2W2bKx~ zGV)9Ei!<^I6r7zwv2LND5uTZsl3!k|35q6&uU%4$GRsm^+=}vZ6~N(am5Id-24;!I z=BWlIx~Uds$+{+%CTY5f$;l?VM#+iB78Xfq$w1#ILG`DQ8-DsgN9ltS3sT~N2?0|i zhzZXMKn^@JrRD*1P!TYz#GLm%!@$7!&eO#)q~g|_u=Czbjv{rJt1iv1FyL@Zv~F?S zb>ZNIg!7TH)+I0OU&O_}x)Xm)?sn$Cj^}G@$DCu#&^j%iDSbOzOHH$|J z|0evr_vYNW-_MR$f96;!GObfI!pMek9>e_2g#}-`p73xNm2WiMJ~{L8uVsIKOtf9* z6?VqwI$!?3IL2oaEUd-2SQT2%yxkL`b@1lfob-g~OXnGENj$Ha>mAkGtB?%%{=Mk6LDtO5-ZtR ze#=*8Y`L9#>QBTA{=e&b-hMPMK6Cp-ql3c_#T*kUo0qrJvut?mqt}X=zxrx*Lr_s@ zsu%0ZH`Cb9WNkgg`@};v&*@8pFRXFeW@oMzl!@qOP$zD*}suI%q~e`d8)A#tPM%#PqRI~^;=ooY(g xJ{GRAEsr!?sM6dS{b1_Tc@6cN58N9V8E)E0J$<p=fS?83{1OPU{AwK{B literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/geometry/redo.png b/ConfigFiles/QUI/geometry/redo.png new file mode 100644 index 0000000000000000000000000000000000000000..8bb881ae2e3b7276fb4d3cf819199bfd2bf2d2d5 GIT binary patch literal 1367 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 Sd!#e|FLgOf9cOKu_xuA2c>mr2 literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/geometry/select.png b/ConfigFiles/QUI/geometry/select.png new file mode 100644 index 0000000000000000000000000000000000000000..82fbf4ab77b8f83d6b33bfe83835d82a802c9513 GIT binary patch literal 702 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 F>^~Ymx4{4a literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/geometry/selectwire.png b/ConfigFiles/QUI/geometry/selectwire.png new file mode 100644 index 0000000000000000000000000000000000000000..711f24d2f6d9b64309daa9884579bd3794775702 GIT binary patch literal 1489 zcmbVMZEO=|9Dlmo3!8)0Vc6IJkAtwGUhl52cL(jd^}4QxZe^=78l$^juWMoLmFtam z6SPGfC1VRBe!({k5E~^je2FiNZ0HiELNat&oPLoKAz+LyU^3#|ylyM{f$+gg?w;rW zJip)n{eK6Yjkcvl6-5AmrS=A=8}XT4p!zUDUr0PPOATBTOU7Mc@+DmH^r#e!j(4Z!A_SeWH@@)GRf+XEpZ^82|V z1P*wO$Tpn=cZ4mxKhV%E@-5wsF0OkgM|qJN6TCS_%L;W&yCu|W!9@eS!C`V}3uz^w$dYn>gpMcdkVZd+$Mrcr+pm9B|q2R>_ zk*$edAKlE-7?6v?b}$0h8RSEfoiQTvjmjJF(mJ(4 zhZ_hArPLlBN|0I>rEpo~3|><2@fk=;`bjI_M>NJ zZm#AlbIyhyMgECpZME0SD=V+HybeZk%!43Vb9l#<$&cC#H-Q4M{fkF;Y+P~?I=hbQ zhYdy7p(!YJD&g$C@%{Ru0Z>r=G*b#uX_K-5Oy#=|fYEnf_Fwp0@z_L3-Wo>q(}ZWl7vGUcyFZpHVce%b$_ z8*({n6nC$kq`}cI%Su=FCC0|;N)G0xY^C}=fS+?$*3HFq=|s%j1Az6hHfYDMpxiScJrXSP98zg1Owp0n(IK5^uTa>dO4 z;?EVQ9y&h#$k^7O5_bsL1WA`Rc~%cMH1>`T-K`kC`f8k9?zmN@d>eY|1@mBDGOC!G z>-)s*5=v$i>GQ24lZhWnljq~pkB^FOeMA4%s-YrS@~FCJU1t^DqiV(9RyKUTQG-JB^`>a%<$mgm{)J}}(wr<_G2$3?j8 zSbq8On{9<_Z3DP-**EW80TAV^IBM;T#~wD>oF}%=F7KNwN#2gf@{bN3nphiu|BdRz nM5-$FY-#`Q%RR3_Ag36-rR?f2_3b*B`N`U?jm!siZTtQK*Ej$( literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/geometry/sphere.png b/ConfigFiles/QUI/geometry/sphere.png new file mode 100644 index 0000000000000000000000000000000000000000..c49e4ac3f50dcb438da9ae5734c796ebe5866ecb GIT binary patch literal 1931 zcmbVNc~BE)6pvgg3SzZHBukF+qq3LJ|%|D4We93nUwp6#`mY)X@qR zZHosA9!x2q90ARYR;?+57eYMnq}B@%52O}rt5w>Kg6$uUe{^Sdzwdqfe((L>wYxqx zCc?{eswag)@lr-AROAXc?=c?a)106GlwACX@FYTwrxUrb38jSTa4iZb_3#o@g~GbL zrKeFTh2olnX_APf==l(W>shcBb4Ye3yBnu?~ExH6V$mj!ykI?~4C!;3{ zqQPjR9L>NY^G&EaKSqP(XCV?DJv0Q6S|HMZ9wlJFqR%#%A&ZRu+Ac)yoyTlC@LGk) zlF{FgN{WsJK?#@t3BUz8A~q;ub9hXU1A#(_Cjo{pI_b@% zONUg7xx>ClNk-2g2qVO1=jP_Ja(OJ=w1mx(NF;2K%jR;Kqz2QRXCPn;(_m(dSWuv5 z#Dp0M3^xEyi?9}7M#$(S(>EdLjnUC>4I9kEi6T?Rw!lU0(l`7l!gk|H9~iG|v9kyyghj@Wq@Ud{#OB0eWvAQ$jBobWkfp_nHo z$ zfuKappu=;`!Ok+hiCTf0upCr3*M#eV*LjApcW?lOFi(Vnd?qRuB22!7pU#94gwNz6 zFi$MjrXyrD^kKa2|K^WPl43iX`iSl35RLGyKmCM#R&<|wtfCf)AgiXjoXt}*Pg5mT_~%4Y_kb=CCo41GRwYp z-}93gw{&l2R#r_##j4*12k$?4P#8F429}$<6@s9Q&ps>n_4Nf)yMOo2Y4NAhysI$` zyYHHin39rWT)8sU&1KX?=1*y{PoF*W+}c+8Rij5%R8>Wkm6wk# zrO{|(_FbCkJz)aF(cy5oKXY+S%FHpW`C=pV^2(_fw#v%NriO-%D%G8vml_*6+$rNb zuU+%YJ5eQPFc^G+z}9?RRJ&4o?_5j!s*S=Obxp^PefsUvNVR%Wdwcu&->J>1X_Rr> z7G1PLvt}J`zir$UQ+2T{z}?-wWarM9uC6W-E zebcthzSgVMHNK~(N4Yh=nAhLmU(>P9`srz!b+WH-VE^od1mE(qvTE{d*C`tK*Q=rL zrp=zVsXyYr6IQT({n!`&#k;ROjE@@X>#Nqvd+nTJpGyOMeL?VDDwTRBSTWA}g`cOR z@od4(y1F`zMx!9<@TJoE$;rvvr-@~<_{U*MR_YYHOQ3b3P`4uO>*T$gi#)FN=WH)6 z4KM_iY}vB5SJB$qTC!tD6!~Q=DJ@m{`T3m*G)P;#ijJf zP+!jv38}vt+vB?UbnKTuIyyS$W{&EOOHE8nJbiC4IImcAE(_R5gMy`UeI=?`1w`1b$>sZemsJn!%9E<=XswsFwy7c=@YB?Bn)^1)g(E`p|pF zt%Eo7y=#5K^6J)a`n7q1tE;PL*ZG;Wz$u4pqmi^xye&*y#orxwpVZ#+VB{=n>CaKi z<;OSp79X`!e8EX~);xN`xQsGO#%soxjPLx!V|ubjLUS3|z2>%eWKCQ;W8$Krg2Ok8 zKxRZ?K>Sbc5?l4rqbUK5fJHyHJiIyhXIJ?O>SA+?%ZrnRCx-YBj(1ZZQZGBQEq7x= i=MQ~eHWc-oVW-TCy|uV`!hSF3?@<{Zqo|*gw(1|{`1Ab$ literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/geometry/split.png b/ConfigFiles/QUI/geometry/split.png new file mode 100644 index 0000000000000000000000000000000000000000..0e401fdde595af50907fbef1de10d9bd0c0a74c4 GIT binary patch literal 389 zcmV;00eb$4P)7`S7g=mUO)U z0d-4&r33TffCZ+$@eFADrXZv)%mL3L_|rWQ^P-hEVN9LZftW`B8-UmSA>m3t0@yAh zdooh&#KiY~m;52&>f;lzD|sU}GIF(5Ex=HpgW)t2wYV@HaaJjS6Kh_+W)6&xH%1ik jng4`T(O=sG3jy#2uiscOL1=uT00000NkvXXu0mjf!`-Ht literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/geometry/sweep.png b/ConfigFiles/QUI/geometry/sweep.png new file mode 100644 index 0000000000000000000000000000000000000000..24595379a246a3bd2f73a378c4439a42fa304d17 GIT binary patch literal 1657 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 ZXNi3a@aeAXk4K_EO+GiFex8{=`wt?4i{1bL literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/geometry/variableFillet.png b/ConfigFiles/QUI/geometry/variableFillet.png new file mode 100644 index 0000000000000000000000000000000000000000..348620279407775ed3bbc3f296065c5019793267 GIT binary patch literal 1907 zcmbVNeNqZp42RcXn|UZ0vd{F`2i7;Bo-a$PQm)a(;wY)?tS0qeSg2_`#HC8 zabjFx04spOU<9g^ay7jIp4ZQp{yMU=2k0e)QfR5Aq=9l`c7hSDCv^m%vS3C+OdP*>+-ScA^H)HscaK7&RY=bfL5Y3qfIk%aUPrpe`x+L@!G3J;yKzJb_SV zDfrYWZNg$eM%oEL$QD63SHJ_r5;j-Fk?;g_0Un1dhB;!G%ZE5zlp{j<5@7TJX=`@9 z0aeRmM{UuP6ilNi8w$ftr<3jEvq`%V=1L?In8Sm4Jcvd>jw~yMxge`!=9mUK;lS-C z8)YJ`fJY;yBUe*WkoNRx2o_sH!ZXEI$7rJHl))~{26NdQ*kbX-^#tvp)Wkn-JQwZI zWZ4KRGkS7*$ z#9Rp^;pv1B7ZG5PghPwCSdWNw1~DSx>&Emvk1yl#{tQh!8#^;3^a` z3a(Hr=Z|q!RtJSyabnE2iMBn;75^s}mDvf5BJCQI%oyu}#c3o(I?_lRAd`8jjsUZg zO;$bWbj1ot*!fwhW^s#o*0zAnxYI=?j91+GB6C43VAR-(RNCXB5!*Kz`!!bUB z=nOa=4LHiz|KI$V!khYg0f8y7QktAD5_c4-c!&5qYR+8Pd(Y}qatUeM)$1utyAzhQ&4vUS;s!IMQTpEpmNW46@piRyNr|1js5GD)X&up{S^ z?buu#oL=m29r0g?jN1v9TyANpP@aAmtMzLQLr~^#-<9W-_xRo&V%1vDcp1MT0}%d#f}#z%xL%`IrMmc^UCD+>mJotx_h=R46mLy zS?FBT%2t=<=2im(#k#zteba-2>OMVrk`?(a-ky99UeWmZUG~}VpZ1?>+Y$yR{ya3d z!nh!8SL!Ax6uuJV-+#hyYk$c8S+CSoRdu-=8lkMVN;jKp-&r9Db!N6m1%mYDhnYubE!ph1EUJg)Z4c(x zXpba)e9ru9W!>=kSf487azczR^A=I;T%Y%o*Ob!W;NWSltU$DXrc1{>I3YTA`^)DF zfRDmPQrM5n4z%^uqR!yuYIYezO!`f@tytT#ZH<4I5;$=S#pZPdY~Jwo*GeSx|KGAwi z#`N>L@OX;*2DTyfNNj)DYee+D#O}K}`=hRP%Z>Gdcgb;%p_|y9T}}B*{X;spADPpX zw@H3c0*>2y;S270U zr5w@JT6g}Vq1t1=c?Ha$`g_TPtgypH-`GZ6uw!H-a3ssC^Mz@Qvr}0e4F}pEdwzo| MMWVbqX61W-19qt8hX4Qo literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/geometry/wedge.png b/ConfigFiles/QUI/geometry/wedge.png new file mode 100644 index 0000000000000000000000000000000000000000..f0b705c1117b57bd75a4258ab241d7a9d619de2e GIT binary patch literal 827 zcmV-B1H}A^P)p;465 z#9A^KiU2?`6iKWlDWz}az&mE7Gs zW0;3_sA}Kx`!8k8s5?9&YJAX;@$g?TE4>qut-%&Zl{bn z&dHrM*_FlU^z6pQh703(L`EsHw)K}`>&}|Y^1|fQOgx@&V%WccNmj^Kq0D(aPVTJ9 zEHB)9_{8ZQCV;~>rD`OUtVu7;+wPSm zBEU|iDkQ&K@%nsD?yN~K%{T9r+YGGIG<~~RWek_NQXgJLr)RBqZgU4tr4hZb_rurK zMOdGr+A&)kvXq#Bhl#`TnKB@Y;msDniI^NxXC+pel+>T*-HHp~&d7b7xHe z#<)EM(sWYX7cZVaV%Wq*slhl|L}pfm6wBfno_BIb2!$e}(K|OSLq_;SrKx)HK;->? zC-;f*k%56=yK8DILh7aRPsTXretT?qC_ESl1Uih!D2?cQ)nESZZmavPvEge&;l92; zp65+KP5SL}%r2!V`hKP6@98m;xjq!`@9*b%9%GCFK$4`V&tH7Wm2{o7xk$F!E$&T> zkAw%W8tw=o3;?n$SF6=ptwu=a008j$e7(KBEE!|z{{Y{7uE?^tb0q)(002ovPDHLk FV1h?SisAqO literal 0 HcmV?d00001 diff --git a/src/qrc/QUI/icon/FastCAEFrame.png b/ConfigFiles/QUI/icon/FastCAEFrame.png similarity index 100% rename from src/qrc/QUI/icon/FastCAEFrame.png rename to ConfigFiles/QUI/icon/FastCAEFrame.png diff --git a/ConfigFiles/QUI/icon/Plugin_ava.png b/ConfigFiles/QUI/icon/Plugin_ava.png new file mode 100644 index 0000000000000000000000000000000000000000..d5d4c11d1efc739fd238137fb93956e6b7f9e3f6 GIT binary patch literal 736 zcmV<60w4W}P)^kXuNT0T_m#e{R!FE&9`0ma!6><+=dQepS z*Y;Phde%lM_k>sr4aThGuWuebO;C;uN2H`@1xJ~~aJu|L-oAL(k!H?K67qLicQ<|t ztM6*52;aEfHqYpJCtubrJ*aq66rX51pi5ueo?YRa6}tLv$@7tgTii*8sj21a1&-`% zJEBQUKb+E3=eTp>`fd4ydCC!D3TNNEy5>e&Z3C-h{}mWkht^~-t&h7@O`ui?Ks`;F zG*@#`5t{*}uGiK0U;`O2vT3ECIPM*(Hubo_>S*)&+|lzQ2mk`xq-JsAT?W9wdU7Z` z`q(w3JuPX=25VH0JLH1;%8bmto8%P#rLr-rNQf%MgMrAZ~TJt5Hs3U%X|4U2mRX zZ_s-^c|`t(|2O-B65G8&sag7N&E7YpwMqeJA8yYq`5>bXytO}b&oSA{-k?|K5&0+k zNyM3sOSb!m@+Fhoey+E3ozvvDpQE>Poix7qUv^;}{tCkTPDX#mxyma`V+!5$Gei%*4C0F(f7A@& zLD7$f02E9`!vF#?L=!|80}N9~72hO-SVt8%X`(s@@l-XzuaiH@8*O-Z@(+~+Wn-h&0k)Jy!afvB&lL4z;OW4X! zffnq%*dX!7@LrvhoSgGM=LKMck{n26S#?|GR%C@M{m0K`pJM&<0Ho<8$sg7{)Usyd z0WAn5?AfvQ$*SVA1IhF~< zi0b?X-IQ6L`*P%P;Z#$=*8G*^T>nJCXWZ(0bzk!9pPf0C`^rx@y`kWp&||6Btv`0W z|HS9x^Zn9zVxlHLmf7)cgIH};JgQNJx9GCB-;PQb5_qq|Xtz|myx*Sxp(JTj9`Ec* zKVd35-m|l-a~;65rP}hc$M;{%Eba!tkRs@x%2J<2wG99v$&uDRcQ!CW05=o?Wk4HN z%)mH*AtxOJDwGH$lFAZ`z$7wc_z;{N*x`bEv6SBzFF z20iV^rN6gr&a=iu{iYj#)^~n=d1PD0&B=vlv{x>T&+Ptg|ApeZ$`{J89bv#t1weMZ zbgz(hkZC$hL0`99kVX!DDQXtINv?9&=xm?o`<&lG)|jX-Xna~R=xLA6O$`*JwD^a@ zuVoaZwD^Y#mo6vK^A5wPy^mYRehG@2Mc$64)s0wB_sra=P-;65 zMz4)uZ2cP*oTS(2R+*-$GzER#C3~hSTD6_q!;<@$?qyyzb-jk%z3y`xBUhJ>^^@*U z+w+8(-gJlBzR)zo32&eyyW}NGn;Yk+4|lPQkdfpnUmBh5^R&g^tT%sCI)Xpwh6z9l zWC7uO7fceI`Hhat!~QN~s{Fs-K5DDC|6gKr@CO210a51Mr(R{!D^gl&9JTkY=qxo2 zwZc7n=qxpdY6UO?I=k}?rvQ%tI)~ln6u<-|S5-U8mp4^aH>}kE0?_Xsuy$S(M*si- M07*qoM6N<$f*Lokh5!Hn literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/about_us.png b/ConfigFiles/QUI/icon/about_us.png new file mode 100644 index 0000000000000000000000000000000000000000..ea1bc715f0a7b8b871fa89e5e5219e043802095c GIT binary patch literal 991 zcmV<510ei~P)uou4ksl?|mE%NzGi+tm|wXSg~B_|RICZg-TVs-t7hGCo=8ymZr zOeUdenlgv}c+l9fSIf<=aZS^ZOeUf0`b8(1-II`ra;9l2SH6v6smY(37GM6R$bXfa zedn2`$wZWM-2x(-jKyM}vVBn4w#~6vjEQKHUAEvtBocwo=ly`J)Y`bW*4VQZz2Nit z5Q#(p;KJ_rohRYha5$_Cx>{=DvmZlIo!wH1O!J%N0mf}hI}~o@u^0f5i@3J^jpSeA7=o6WkCJ=knL zvnwrJ`PKp{@*tbd!m_N}LWqUF0vvplPN%tEulFT;<)wo=_S~IEcxQ6dH4*FeI@0Mh z14woab`}SxCR}qX$F+vd`K2o7m#Vy0X}Q*bUFG;%uUP-OAyE~ef7FmTB7#IT{~TJf zc_Iq-i=%2v4?TybwCBpVpF!I4Pjp>>bGt1cA0I~`5C8ydY;0gUcf)-b@D#cW?+kiGi~j%s N002ovPDHLkV1lV=&z}GQ literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/acce.png b/ConfigFiles/QUI/icon/acce.png new file mode 100644 index 0000000000000000000000000000000000000000..80246736e48cdc842679ab65c0c16faa446ecdd8 GIT binary patch literal 538 zcmV+#0_FXQP)*mA_8oKoEz&MQ#oxzz8W}v?!u*BqSO)6gg0k_+w%SmZE?uJPRhtMUDgoE3I~BcK6%)&8}q? zMG>Ffraqnct)PZBviW8S*Z}OrybBz7j#Zlks-h?&n{Vy`r7`Pjo@4E#g-%I^CBO%M zdyb_%$5Oxoph4wqzG7k?l%oEiKfLjYBn)%xpPyqBeL@Yru+( z6T{x1l99u(ymMmd`XGL8U8T-+Pc|L_b>KW#>FYXjylXfbS}3+gLJs$rKKN?YcJ;@< zkgN3l6|&d;3z|9~st zLdHv=En^6v{xnXsT$A?~;11SzTpP+Xv)K-T2jcqN10Au0M7$$&gYkg4JOS{mp+=$D zdXcm{z>W0V#CR<|8S9P9)BtAE%1ql-X0zP`9z{Y3bcv;g(*1;ePyD2`vaZ;HFhbx# ceZ`OO6(*jvP!fjv*#H0l07*qoM6N<$f@P-jpa1{> literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/angle.png b/ConfigFiles/QUI/icon/angle.png new file mode 100644 index 0000000000000000000000000000000000000000..22b9d60d2744dae75bbf0debe5eb25c263b74a6f GIT binary patch literal 691 zcmV;k0!;mhP)5l}%_9Q51#0c^wkNs5RMDD3MA-bR{)lB@3ZK{0Rz` z{q3TwliYRIdq9`s3N*fn~N&|`ku~kbG8&i#GW?W<@OeT|L zdSGDgx$m5Nc=LE8X_|(C9S7cGhh!iDKr|f-10%^mV#vCtYvN9wPPTQkfo?nn3_I0G zPLcy*VCwev>zOTWtGz%GSOKm8SM}l5#UG#cI8JUP&PlNIpC(Vcq_sCdH?XUju$6fj zxC;ycKNL}XUr^mI`#+6lflJ9iLTe^&W?nT;1`;#I`nkfk=fDkMFL1hC&> zzxl&EpbxkeO~<;|Yu?BhU=Sb~NUQ>Lz>{b?cC3-P6pW;-+&$o$jj>>x>#N|Aov=kp+Bap{kk^3PQl7sR5*>T)W1s{K^VsIk3TLEn=5V7B_xniMLa>fRDm?t90_Sc zAcZJgDTtzlh=LYEt_*2X#m>e`ND#t71k3yfNfYb@e{dGFE9>rFc7yxC6!Y%8-+AYm zcV?j1>q+a`i<3+&q3jPi8ZMI*X#_iXhfk?*qj-o-{Ka@#@FRS~DW;>5))~&Rgo85R zSuCP~KYenx@Cwi4KoNKzPw*O-eR8%jhVK&o4|F=6-0a=`DaswxSG4dEAEMa7U`}EU zt#-3}954Ql0dH`fh9tpbSjI2BL>t=8Zc)V-srd@Q<4G)FPH3YU{4S#P(JF@GiuZ7c zr&zxSbRy#2R@_J>)X)@mQC4e-ic!Mj5?U7y?`JYND0uuCKce{z-lFi-B3(uBI~o=| z-otx2mtc2)s;HMU(756Tz9gVEq2Z6A-Ru_iajvTHIITJ!SKY^T;fk*mdi)=H5J5L^ zR8=3>g*STxM^xi+y!~4!)w~rMXbiq@A7`L&12ivO_T(V4RR91007*qoM6N<$f+Lm2 AGynhq literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/boxCell.png b/ConfigFiles/QUI/icon/boxCell.png new file mode 100644 index 0000000000000000000000000000000000000000..8729a069ddc32aec7be3d40f3b2f18f8da7e4624 GIT binary patch literal 680 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 literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/createSketch.png b/ConfigFiles/QUI/icon/createSketch.png new file mode 100644 index 0000000000000000000000000000000000000000..2744ca740d9115060a5d6805746103bb6b9f8883 GIT binary patch literal 621 zcmV-z0+RiSP)t^@#$s_Q87dAUrBIPTx_mA23Q=o7OQ_Jn!5a=a&O6k}EW(`?m*SSCLj4ggRtmua`#$9>;l_kI6n(zTJR zASlD~B7Miy66Z>#5}i&bSFhJ!0v~`MhXR-v1k}Jv@|F3HJaKcpeNlEKdO*0=I#uhUHxd52jVZqGM{WBmBn)U;rn9w}$22cTDZQ zG=M}2cY(`c)3CfJf$*750XiTLAfX)sk3Av$7jVxpwT+;e2EfNaumU`a2p>g-Lpmk= z7C3&uv~)rJ2JS|Mrv)$pFf6YOd;-3Q!tca|rv)(6H6RC^2Zje;Vt85rvmTveTF5iN zE#TR_@Zj)Y5<)BjaMpF*J}?G80~djJ1j?DD%>SR$RRjD1aK563dO)=J00000NkvXX Hu0mjfQDz8S literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/curve.png b/ConfigFiles/QUI/icon/curve.png new file mode 100644 index 0000000000000000000000000000000000000000..cc492ba035bc19f3a225adfb8ce24169af3ce74f GIT binary patch literal 1179 zcmV;M1Z4Y(P)LRBcRCXB2+kxA$@@paaTBsWOIcjEx9%ZplnmTw<7R z%CZTfW@cHY87Mz=AG!}W2Xom3Lly~RS;$O`8i%D!abId=(afC`|by~*pYo8JIT$>bDw)oa-MU}L#$Toh|y$bp9hpr&Dk$A!zT!=_DIX zroa8}ays1trIY|z0RVCkIw=Zz06xDAVTJ@1Knwt1MBaa5qsg>SV2p79&86?@Ppcu^ zPboNKpa3`_@Xx=GwQYJXxBkhXDMdwHLE{ zf7Hg`uF|yG$-MoYQn_g|U#aU|e~OOG&EnB*^=jr(jjx=LLMt2xfB-leZgtbzAlY0k zE$nlVrLWaU-8GxMol(PsC*_nmP5^PObfj7Yxmd4emPF)xC;(VQhub1LZr16pQvhB7 z9*gL31MmRwHfGfN7DQi_#=M~yqCekPWoSM8v*}>nAD{GoYZn+J1uVWK@_#_vI#t`i!*PB$by z=<(`y?{De2eBj4Mss!%>pa%fbWV4N?7>!$e2nj<(F_a12Z^>Y~Ur+QMmt5DDa6wSr zi=W-8#3v2(yNL1q25I}O7=Ddyz0lQ8ZWZiRv%Xw#{HxTcVb>$zTyU-~KLA3uQE<-3 zr>0XgxZZnA$!P+BHRiZwT+sOjieG9{;*)LyK$?-?GH0<%-Z7GLF5oYSg>EFB>&M&$ zMONqP^76p!dyaz;4nP*Px_h~XX4@SZ$Qi5yHy zeFZ@C9yM!~na7^?gL%7%@6lcoNPU1upS7vk1pt~WHpoS#D}x{DD9-l}lHBzb`Wnu0 z4uD4p?=b*e@sAaAL6kj@J$b?+Iy`p8%yy~s4gqMghz`&9N?rnhVr|bocE!wcGuf4o zw*{&!qQi5-Yc>#qB0#fEyJAi>+8SO5A)#QhsU1LqT`^Pbl47Tfr3oCNF`=u#dF=3_ z!T|t0n*t?cXT|v0AMh5kV;hW9)z9KLG;~2i$fx(IWr=002ovPDHLkV1n(^EdKxi literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/datumPlane.png b/ConfigFiles/QUI/icon/datumPlane.png new file mode 100644 index 0000000000000000000000000000000000000000..fa29db0555ca1894ab5830c657b2b023fde057d5 GIT binary patch literal 534 zcmV+x0_pvUP)Ce6|!JzMGEQi>qA1rai6K-0(J=0c#6i_o+k`hzSP&iQbjhm$mvQk*i{ zNxPo|K(Bh~y6zIV2Cjg)h}3pYjjB7~x~}T=dc<+eYPI?byelw?i2OMUKtupouh&FT z#CSYrxmm>~=e~SS-|FFi=I!y3<23_C!l*=#=XeV-r*@H`LGG!F)-{2Z6#x^4q_0d#<_rfIJ&%X)MN zavTT4Fz#*Sx-KHp_-{Z(Asq6eJsmD)3o{k6`;q!n*!7^P4l_ud5lJ*;{Yl^PYX;}MBW}9a9_@M5gjXk Y0Z2W&xzhC%b^rhX07*qoM6N<$f{{k)rT_o{ literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/desCase.png b/ConfigFiles/QUI/icon/desCase.png new file mode 100644 index 0000000000000000000000000000000000000000..3b74e9d73debb7409874cbb61802035fb042822c GIT binary patch literal 31673 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 Qi2wiq07*qoM6N<$g2FhkUjP6A literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/workdir.png b/ConfigFiles/QUI/icon/workdir.png new file mode 100644 index 0000000000000000000000000000000000000000..11d57101d31caa5c737b2395fc262f51b13abe15 GIT binary patch literal 443 zcmV;s0Yv_ZP)zlN$>@0aJ}}@(o<@ z4Rm4Q2_!}reF1U1l$zjV;-cWtxEN!sl5@}!ByF*H^c?snH#Fb1|KHvB^}E)PQle8i zt?vH;AU}Fx+ja$L0wskWeZUbyTtr5tl*3_JR?l@^sZy@%O3Si(qduc!JO!n4xvX&U z@cq2l9o1d~+5z%OLEE+yZx%w#7C?o;Bxz59c7Q+CKqw)^aBk|fjWr^rO(;~g-lbaa z{;CmWuB-r7fmT!?u?DsdZl-cO+cyCSJ|rhsKEO5bmKp${v1g_--#z?-_U>M2ocHNH z1pq~2c6(+iczzx5KKSvqRfw85aRwjWFd5ax1P6$?3Pn@hCX z{u*!;H7BdL;1;Op1c;TgR-B~!)0z}Q7^wl~$FUB8ey7t>YT$Vuz++r|yau)%$7uq~ l3K<@Now%SO=Rc>K^$8I?IWd}W;r{>t002ovPDHLkV1mVwyg&c| literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/xMinus.png b/ConfigFiles/QUI/icon/xMinus.png new file mode 100644 index 0000000000000000000000000000000000000000..db0d9c4d04c16d13253b59b20299a7bf9c9b2c73 GIT binary patch literal 462 zcmV;<0WtoGP)-~cZDIS0wVGWv`glmsxE+Y;L6!8L*MT5zyc;4cYqqIKt!ehW#_*kbPgmyqN=9qKcUNT>WKJp z9jfYMBLsH2d4aum!hZr=35ZB6B349V&z86*Q$GRM#TLN8Gv5MfBLo~$Ac0&FpuMfE zf)j8mtXz{B0KuF?^*)d~=P}R=NuW{{ILTvR;Z3*Z2zUsVd^-_v6K)my_D~@Qiox=i zK3@eJ3yH}ti`O&q4JHch@Z$Z!&buRH`!B%H5VXiwrKKZLJIWzgl5edAg70hd?r7s& zRv-eNytAq4`9@iRHE<0)1G6Gdb)uH7co!V@KF|cd045!FN!R;%d54md7hs)v&LFWo!F_>`hOtM zNEe;kSAbn$1{?$L@%4ds0(lP%fj!{HyJd$)W_<#jx%CAQ1Jm@Oh`a%<-1lu&os>o3 zKKE=$5()rRbw5WY+SGWSK-1kVV7`mLh&%xkRlVEPIILL(A~FI{)qWYqVc7$#jE6v| zs-`UCYY_lOj!0HI`f zBqNz`ENo}ogkldEPgjZuGQ;j?5~eZn1rv7{Bsnl$+TR{d>n894(=~Vfz1P+>00000 LNkvXXu0mjfKH|i$ literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/yMinus.png b/ConfigFiles/QUI/icon/yMinus.png new file mode 100644 index 0000000000000000000000000000000000000000..8beb8e9c79596143ebdd558c2db8a3b472761a49 GIT binary patch literal 455 zcmV;&0XY7NP)I?#3Ua|Cm`35jvkM z|AT;hv0QO%xl~=-@fbA8awVs)xWuFsUM_d%yhJ_#^Ekk+% zTmi$p0_IJCK?sb2x!X%zY;O)241hK;&x^lT0j6XRP0Q{9f$1k}@R@|lv11^&lvkbu z%AO0BojL%w2QSIv`I>2wn7HrN?r>VQfKQ#RKj1K<$2&kbH9V6B}4$BwxxA~A3VT&e92m;x_e35ZDB zA=6jq0262W00?Ty0c-6Hh(%;vFdu1~0%qFl05zNfYwZX?M4~eDedj<3gd$?f{^NTK zMoOe8uaUDA^%1DD@*IsT;g-PW6R_6KRao+InxAza`1cfuNL!tr1DC+KtjKsFpooAO zuqf)i4{Ux8C`LdRSoqxkQUp|1$9k>yflxKy3(6#+DfDBYvfTcK#&h6D1m17=^6m*) z1rzvkG}QKH|CQm#DX;>5N1#PkDkVyycDOl^kX5ZYyg!?=)qlf{Kma@y#-^t43vL9K qz%}p;Ob#AbRTo$pX8Sm8n!qR4l4wAvND#RI0000ZlCI!bC+ zDX8KmaDs?7@fB7%K~jZ24fRs&BrFfbakR1XOO|I}nt%V9+1uu>i)HsBG>|2vl{vMB|syS^^?66_K&m zwi@SPh{_%$8rwE{%o=05m7TcT5WwP2!qwO&InV{hxa_{D>bwm5odb$KE(EjC@h>Hy z@z3>O$$(TZn_wtS!XQr8Bw^z@u&RQOhohx=iF?7s|1H=CbN!zr*UXC%biT)Y1zNbL z(nLwr0{+_XEBH3*a7j0|v)0pH(-w6>2HNb!fZ{ b8z=AukRf!YPFdV300000NkvXXu0mjfzZJ?V literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/zPlus.png b/ConfigFiles/QUI/icon/zPlus.png new file mode 100644 index 0000000000000000000000000000000000000000..8fbe91f0401a70e1b705c18568e7d75ae115f5b4 GIT binary patch literal 481 zcmV<70UrK|P)RZBZPml$$lmCyP3J!-N;%?ojR!1`fmU@ z%sSEQEx-{l1De36ZH?&W$l6ZvdO5URa1og7d`A#v%6? zY^lB)kAZ6+0F~;1x;zF_^~in!a@slhegq&QLtx?S>!Csph=>I+#zdR;1_AJGI8*J1 zQ7`}znTyCYH@2EXYl`w05NY-bIq;UBkNzL0bpw0@ XO}~*8-b!*T00000NkvXXu0mjf?_SF= literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/main.ico b/ConfigFiles/QUI/main.ico new file mode 100644 index 0000000000000000000000000000000000000000..d1092de10e0e4a8205eb37637f3d002950743a09 GIT binary patch literal 67646 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 Z(m0+P$6M2QtP=p^wXOh+=Z5kAe*vAa#SH)e literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/main.rc b/ConfigFiles/QUI/main.rc new file mode 100644 index 0000000..0e1c28c --- /dev/null +++ b/ConfigFiles/QUI/main.rc @@ -0,0 +1,32 @@ +#include "winver.h" + +IDI_ICON1 ICON "main.ico" + +VS_VERSION_INFO VERSIONINFO + FILEVERSION 1,0,0,0 + PRODUCTVERSION 1,0,0,0 + FILEFLAGS 0x0L + FILEFLAGSMASK 0x3fL + FILEOS VOS_NT_WINDOWS32 + FILETYPE VFT_APP + FILESUBTYPE VFT2_UNKNOWN +BEGIN + BLOCK "StringFileInfo" + BEGIN + BLOCK "000004b0" + BEGIN + VALUE "CompanyName", "feiyangqingyun@163.com QQ:517216493" + VALUE "FileDescription", "QUI" + VALUE "FileVersion", "1.0.0.0" + VALUE "LegalCopyright", "feiyangqingyun@163.com QQ:517216493" + VALUE "InternalName", "QUI" + VALUE "OriginalFilename", "QUI" + VALUE "ProductName", "QUI" + VALUE "ProductVersion", "1.0.0.0" + END + END + BLOCK "VarFileInfo" + BEGIN + VALUE "Translation", 0x0, 1200 + END +END \ No newline at end of file diff --git a/ConfigFiles/QUI/post/Reflection.png b/ConfigFiles/QUI/post/Reflection.png new file mode 100644 index 0000000000000000000000000000000000000000..cfce5272f3577becd9452501cbfd22da0d9b649c GIT binary patch literal 657 zcmV;C0&e|@P)3G! zpUllkxAni}>P$CG3Si1D=hx`$>$l%{KA*!uc^z{Uz$v$c<|D~_kH24Y%hkbj!&E^r zNtpXC;UI10J~I1gVI%xc7=YWMejFm)9YzSDvGc5Z>0M#M6Q&zxJ5_N@ztX@K04X6O z86{95xHCGj7WZ;C8Oks}GzNIhGFK2!^RCTpG3^S|4f7-mldFLN4pCwN8V`HLrcOA? zRcN@L9$)Qsb2b&c$f@Hn2#a|db1Vue8RBXG;h&a#_yaZPP$qv^hzUorqdYXf>$9SWdgDX5gH@(N)yI2MIdricxMqjp(7&<&F+0LGMK z`~;1v5TyfucsMKXaFAL{Nr-d*k-fy$c5zGrFerWqSzOv9w95|~sScQwjW58?^J;$z z7O+`_-*!R(29;bkHLV+FhgjLYBvy7uptbZO76cr3YlMKv&pTA)3*u-S@@IO~kLPYg zUXBcPJXZi9mrbn$SOl=B8)hd~bC&@OyTRIZwlSP=)-NO@Z%%jno&i|f&((E0mrZ>I r@S>)=c(u?u4&W1jtvc8L$Fuzl9~AJ6{?cfM00000NkvXXu0mjf=l6Esd+9B0p`}2rEw+}{F(Xy+Zply) zA&Awa#`wZAGt0&{yIZr_sfgk>`$Dr9Nkk3*I3T9FxGaK*FV!e&q}~=&&1$O@Itpv) zrT2~B+u0wzMJo7Bo5+!{I>Ug(HY$>_e`v!Hhhd~?RZMV-2pt^5{qRn1Z&0xi>-g`UM!{f_h<1dYF~RJ zO2YC%(1AQ>j+;TNgb}xp!@jD(kLA%nRGd3?+xG6itZ)0xufCqmQ9OVLc&xo+k*3*c zUAHE)84qVCLtu%Su*Dp(qDfT4CGFMek1W9vqRMBR%ey){&ihn+K+}W!yud$^^Z<BSWN(yrtD3IJx1hz>E8j5tG|9K zQXr+++xx;D##ixbj8Jk((W3DNps{SxctcIq$Uw-KY0g-lEpMNwHGi^r;JwS0lLgDo z(WSa{ngC2g-P?CvsWGv{OUdx`RlR+OpVKst*);ZPO;A4@APn@qauW(fs~h@zQq%sm zTeodaxj`FBO{hxq)Wq#?^oO; z!2;2Vya@Vz(&gqk>n%L{y}6?EnT`>JTzZMUHMOm=10kRYr~ue0n0_$GFy%}Vp|4}z zYT)2SClxuW30D~?eres(@IWOxpaWCa_c5~J&@U_Cz`Wd5aMetcgc3orP^rw>h8eiRI6pArcW)IO7Z9iX|y3!A! zNPt4Lzkg*9h{oag@*YKXB0vY^rrW00SO(Z=d8|9nLtoxy6sE@@2>8EK^(>H)tiItD z>gvCB?(t^V&klUW%S?A|X^jm5uLF-3o*Fa!ZW023kC}meq0Y@jaw>#%&OlY2h^pEC z=H|!0o=wqapO^-;w6$7Y+uK)tQ(pDR^NWAqvg}0Me|hpK#ops{xI-sv`D*w|zC2N% zvK_rU6iRG=;O9@y`I>}cXlc?3B1$SjEE2SgYjN+AVHjMwnw@68?*5s3zH_+u zFf=qYq?2Q{uHf_dh2F3O=lFsn%nnoK7 z0O2CO#aa~lidThwFNMzeBvnETekN2SD+!co3zeHI%x#y(Nn}x=Uya)uQ42rtEsnd` zxvxNLlrc-gKp2LfB&T4Y4&ta_cZcqRqexd*q4@_6?hbCY zxacm4=;S{TTm*3ybaB#I#i5wAN!qK!CGACP8k2W>-@EVOy^j#%xYO|goAL?-V0&9@ zr3tO;S6cv#1}1w?U4$$?9GM2E>ooubfQ&7KgqGtJhIp=vj4c36fKg->ub?TNGXZ2t zNIIvU6I#TEf#Riq$&0ll$Y%WZX%ImbWxm)dkf6PDQt3zi4Iwg^*Nw%3UH||907*qoM6N<$f}J9+4gdfE literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/post/clip.png b/ConfigFiles/QUI/post/clip.png new file mode 100644 index 0000000000000000000000000000000000000000..9251dcbf5a0a5bc30f871c7100342a16c8536199 GIT binary patch literal 1200 zcmV;h1W)^kP)x%vd7fE%Jp* zf`*a4ScF2oGQtcZG^f3lcte5~@ulglb@@7ufM(us*e>dTM5-#M6$F6#XJ zyM()6>{*}kirYgm8+xNfi7WBabS|o_&@zJ+HypUVx>!Co(^NN`dy^=BXV3a$$5u8E zAI)}UuHH*12M@h}a>gcVCMa*{VR6}Yr!E<~Ms-pr<3Ww%Av~MYghq;Zc;aZa%y90B zmcetI+pjeMIp7rVI}o{f>$eufYe_r#@~A(WDGo)W!LayPLP_eRQ>(S!Qk%jht+V24 zUI_b5?tJf(!OiX04g!0D?A&WdU2BBnv=6WJ2P&ufoK$8>Ut`ehj9+q^7RME4g(TD! z18PBLp{7`*+AX$*qh<}T8xY_c@B^^LHDawP3-i}g)!sB_SZ8JB#`?aBHg}jFuYtZ~ z4fQrpeUzupFEE|-nb1UQZ-3ncupc-BOw6@#i>o4H{1}snT(8;4t>H>J;k5B+`3P&` zAyyTJxms1vkeA}JHd2`JuvY$_nn*a=uFOwBaPQa{P{g$=p2cqstrlgL3gudDEhisd z!F0LL<<>@q7N-cS9ZaPnDSZ%MCxD0MkBvb>;ivwa1lh*wG2@y0hXlPJtl1{aq zjz$EHfe5f*^8!K1*SMs(sZjxzE&M48HgK@BF5;^1G}!TY#GpmN=0PK{lLAqRSc`(r zf~nMMpyggc09;kU7CaN1(zi5K8b^PM+9?qL4Z)6;D%PT4r-XRW6oMYN4j5Zdp;&BO z@LVYMl4KObISK8A_!Kk@ij@v1D`R$i}`MI{TI1QWwJ^?NO zuK@1>XI)^tE-|&YJPNk&N}t*PQ*L$BU*Z!D20?Vw9V%;!8f;$Lfzf#aB!Nx9R-hL+ z1Y9xz*{+Np`F!2U#VIysmj*)Q$ACS~fhhx_=TFor?pg2lfD;0?ohypcA+V z=)X30wkvb9v!i>*`sKw}H@01U%81t7!8$v-9|2wf9;dWfUe9)AM(415=5U^6yD|~* zac4*OufQ8~2?u~i;49$6Y*(f@Kktsok;8}o3j;_2-vDn>Qq%rlFu*@4Q3`O0Fc{$g O0000=l6Esd+9B0p`}2rEw+}{F(Xy+Zply) zA&Awa#`wZAGt0&{yIZr_sfgk>`$Dr9Nkk3*I3T9FxGaK*FV!e&q}~=&&1$O@Itpv) zrT2~B+u0wzMJo7Bo5+!{I>Ug(HY$>_e`v!Hhhd~?RZMV-2pt^5{qRn1Z&0xi>-g`UM!{f_h<1dYF~RJ zO2YC%(1AQ>j+;TNgb}xp!@jD(kLA%nRGd3?+xG6itZ)0xufCqmQ9OVLc&xo+k*3*c zUAHE)84qVCLtu%Su*Dp(qDfT4CGFMek1W9vqRMBR%ey){&ihn+K+}W!yud$^^Z<BSWN(yrtD3IJx1hz>E8j5tG|9K zQXr+++xx;D##ixbj8Jk((W3DNps{SxctcIq$Uw-KY0g-lEpMNwHGi^r;JwS0lLgDo z(WSa{ngC2g-P?CvsWGv{OUdx`RlR+OpVKst*);ZPO;A4@APn@qauW(fs~h@zQq%sm zTeodaxj`FBO{hxq)Wq#?^oO; z!2;2Vya@Vz(&gqk>n%L{y}6?EnT`>JTzZMUHMOm=10kRYr~ue0n0_$GFy%}Vp|4}z zYT)2SClxuW30D~?eres(@IWOxpaWCa_c5~J&@U_Cz`Wd5aMetcgc3orP^rw>h8eiRI6pArcW)IO7Z9iX|y3!A! zNPt4Lzkg*9h{oag@*YKXB0vY^rrW00SO(Z=d8|9nLtoxy6sE@@2>8EK^(>H)tiItD z>gvCB?(t^V&klUW%S?A|X^jm5uLF-3o*Fa!ZW023kC}meq0Y@jaw>#%&OlY2h^pEC z=H|!0o=wqapO^-;w6$7Y+uK)tQ(pDR^NWAqvg}0Me|hpK#ops{xI-sv`D*w|zC2N% zvK_rU6iRG=;O9@y`I>}1Y z44s5+outHw&bS1sIK{GpIzY=~uk+Ir-xY1EUz2Z)t)iyz3JbNXNsZiI;Dv3?&FS0Wn(?{C&R_4FBc=H3 z*+^B*+ehn(SuQBZ!i?;+Lw#0=%ek4n=UU)-K%V<~WoG2j-TQvKuI0x+`tPQ!l)<&vmOUZXi@S z&~hnKwIY>vP*c~_2{hbW7wH664~+#`zPxW5{L7wxZWtccjh``{S*sDi)YXnep~DD_ zrhW$e56!?O(O>-n6DU%*LS)s|)ncJQM=m zht{CL>VpOQfC36Kfl$o#~#q(p2zvB-l-f4;*tIKN(jQOd9PgF2Z;7EzzHBBc0&WeQ!+^)6vOYI zAg7Ao6_3OpwOksyYND$)T3HT})t8cg;gWeR`?)>LXy9}hC;@`NM+uD>P`-GW^0KS= zTrqN9dDYdjwW(SZ^`T5 zs3`0WqXRlHaep_L*B}33C3N}nZDHATBW07u(`g8kfl*;FvSF0^@(8j15{BQdjsPf% zrFL11`U&JAGlB9er2uP=?RaHj5FjL={Quypza6cx)il4R>i`a9|m$)!! zV^28gzPOl^%KW2SzW3Z1fa0FI>Fz7Fedmrf{n4CsryBw3P9_dMacIAB&&A_x?0E@* z&_pD7e6kvA!iC%P;L{vP3H<|LO}MZoT)dkK*N0y02}1r?d~$np8hFgs?Qcp&N_R4G zu;I;DjhU$-C;;*btf;#!7WH98-HZ?n#}Gu*iZcmNmRfJ=!|G9#W%nGp|}5f7Vcg9rgf-p^9&^K)}QpWm7B?Q0K; z6cU{&t6~V+ckgil&#GB_Th(C1JwI`d66aMGMI%I$zFQOX*00>m4=KFZk>L-=tUK6* zUST0`fpO%O7C`%!J$@}~eG9?EwxTcH@z&<@jBVTra<_>64?~MgfQABa{{R3007*qo IM6N<$f}*_QcmMzZ literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/post/end.png b/ConfigFiles/QUI/post/end.png new file mode 100644 index 0000000000000000000000000000000000000000..c6a42ea133a0d4ea32ae75b7db8962c6cd3df0cf GIT binary patch literal 697 zcmV;q0!ICbP)a>16Tp| zOl9!nYqDZ_?fFyR`M`LIQEF{ygA+3oq?Q(HhO45EDi~{C%|hX+h2LC$|CR^o6n_eS z)nL-s1HL7=5(Y(~^WtlU;fXiA%Fd(0^uB=-W#1B9`o^07$QQWtA;q=ncg*JVo5Krw z;F~SM|II`RgURe7XU3;_GV=wuD1&;@$jm)sQ}-N==cx=sW7CY!=gN8!)KxPx6fO*; zU%AV3!Y464!(ev@BPR~6EVLRjt{pC_2N_E*lK%ObWmiLbp&LhxW4^S9u9PKxYJ&zmlgGO!Iftqy^ZhNZIk;aV_Z7c9@u_M3$8(M z6Xlh|YrvJ`d$@aQFYS?y5G4#$9X$_Kid+QYtdz00YZs3%cF=#YxuV|BMG(IVje^@W zNw{~RgsN1Z*FQlgYXDHS+YPxrPma1mMqZ19-S@&B;`SJC3t@nb0tSY&w&V#aAb>BX_t=9*BN7fyC%!G|43UV3Yr< f;idu6Z@|sJG*3;2uBsA;00000NkvXXu0mjfqar|S literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/post/first.png b/ConfigFiles/QUI/post/first.png new file mode 100644 index 0000000000000000000000000000000000000000..f101bc01db6593fa500e433a67fa4941305f7351 GIT binary patch literal 721 zcmV;?0xtcDP)h-25Bu4t3@bXSQJs0Le+)h zMpRHxgf4WcOBYtj!aqQF^APz*>I!goBbs&E3$nQwBJBVQzXqwhEqLdQLvPdpuB8jO` zTn8f2?jYfC7{A|-5Ta>tr4*)V5(Stdq5~L)f#2`PFpQ?d0W8Y`Y;*uk(-1;S^@ z&8OVj%aL{0dHi*b=SxZ4+!QwiR|@2suk1j|*~E`DvH4k+Y!j&O#8go(P)-q!TfX3e znPuetEN_>;=X!i)^EL?gDwie7E!SmqexA`(3d?mj1g#BMAno$g{^r|H?$6BeDU;3h zY#dx24oJHgR*sK!*5<)_}Jd6bMI&m<7fLBXb*eh<@`UCd*RY4rXJcEVC+I4 zu@n0U3uE))s#N)!cbzo>m-;(-eXWm+2X~=1SGmCXWfa^sTgs+&1auyq*+b&WehviN zJ>S%_io?@|;Mk7NLc4ccYt=%7dkrRTb@TL9hKFOTteAD)?NUmVQYfVgztupSVEj%; z%>tfcJ{Ud~GeBrb2W})LLvbeA4R+JOMH4{i3vlxfkLg7?Tzo~w00000NkvXXu0mjf Dcim8% literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/post/fit.png b/ConfigFiles/QUI/post/fit.png new file mode 100644 index 0000000000000000000000000000000000000000..b71343406ca9b3e42b9408ff02bb69bf4fe0e9d6 GIT binary patch literal 562 zcmV-20?qx2P)P4JCZ422PkZk@@AaOWK7la? zHzB%O{Wl2kE)s;0eE?SgLf=rY4d94UdOKwpV{?}zNvbT%%nF{nLw0ff$ez1HOYh6F z%p^%tXY27kK`0)Nn=Yk4(2y&&aR1OnuGB(*pqa*edhVipx*4E zaHC?Z*>}`Z4_JXm6mXu7I0;>X>n`~F0tg}Q3Ro3}0-SWU-8{Mi`U4I5vhpPY@?}ML zPH=7b@-{-Q)SCKyRopc?czqio!?7+`K(W&17T0Sy9#1KqyRSEUC|26m1e_#8==8=* zA{LW=7U%Jch;6UoBpE{Ka-Qe*KyclQ?BNa)(ST`UD@a5G$R6$>xW2qz-BIlKi8xDz zzeK=UDh!V(aGx34P%p?XjPm^ML1YD18t_{MtP0l!IQk(OYYh3ag1bg%$|a%!!*17u zqaE;w0!|OM5Zhh@Fc~tZ2V0I@!xPZ1R;#9gexHa;I)c634P??0_VHn5p4~fB`Ok^?m50uSfQwC(#EyW-uqYNg0 zfHI1tWHBg8DT`PnqcV_5-7I3GV|dT0ldj7-_i~o=T~6nHpZ9rw&#&j9q@<*Aw$NXs zfC%@f6e*w*izvj6DE{`x0-pS{8_}2lir~hsKX79htGK`&o@)qzZo!QgO>$!vS8=f; zEMN?S=&kc^N^s*q18$t+8Y?-Iv|$79n6GtNj~DD=9IrWw6I}a13tF>0+{R|kq6wqI ztQ=z?%flI5);RCOBF=G(s@g-?g>}KTg)D`k9S;~vos9@5mETX3XB5Xjln2@pN-0QjixDiNWeRQ)TNF_IwTt1V z)H0k7%`SGi?PA;Cu&eE6E=zXfjVwCGk7+hz28bFcKN^e_Bc;xQCT0m>8GV74_G#G# z@)USpV?JypB{(V$Akxw{heyI;{Pkp%6}2J(`ph-0oh2)6;x#>NGmN{?+h!JkE{wHg*;iQf{{caJ#dE7r`LTGcJS> zNGWM=Yb7@)hhrz+17OJG;n~v(PC3tznwqM@HEX{#(C5ZzGO6HDD8%^qIQ#e85n@>$ zAq4yF4#vmFQ4|G$a=RU)$;3dPd*jLH6or=NUpd!!0j*X`wf`n&p<_};_+sc^B8!W} zqEXV))6r?QTq@62^F7vD78e(}+H?iiM-3RVvXUqF`9`tYY)C2T>iCOXq2o%d%e^bqW<6R&eUf{=y+@u!1h;q5f#)hx4yx1$Mm??TR{6OW`4yiefa8;w# zJ)fJS?YCymp8sUso_~3NmPjN*G#Vv6Jsq7+#}E6A>-PNGFHN`_&XSp#nG6T$bN3Ps zhdFlq1hDLi&DXAS^!N!Z7K=JjAP}IttCNP0&#A6>yQ>quUeCeGDzz@@`8z5OFgr8D zkjDdn!C=5*u`uKrBo>V>3mJ_vx ziUV8p^R=ObLj3*mPxRH3ce(ZH8_Y+Sa9#a}mZP)0Ra~r^)JE}I_}VaEm|Hz8!DLhB brak`w3FY6Bjscb@00000NkvXXu0mjf-nJNv literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/post/isocurve.png b/ConfigFiles/QUI/post/isocurve.png new file mode 100644 index 0000000000000000000000000000000000000000..a56c6e17c8c580e7f32ee0cff08745c947cfcf17 GIT binary patch literal 2417 zcmV-%36A!OP)F3x-osw`DEBuv=;;D!m5`Vmi^Ez+ud_zpTq4Gbqv1Vj9HZlHI>{oVVwYxP zkx4zIk@qO#h-POMNfMUxB@Bk(D^vqTHAEW;2jM<){cGRc7m;~Y1(}9TMTx=VC&$F` zm}+;2R<=YOjmTUFD+!6q(HIdC#8{#Rj963yB9<6DVhr9F1ZoO@Ld+bs3)pT4*Y1(z zodc)7!q*kXC1{Kommmn%SX^rXI!oj$>x8<1y5OW3At4g$L$oT1bxET+M>!ghq%G=l zMAlwpGTI~SEmMaHX{%2pCvDBq5Cc(((K9*N#tqX$ipegG)*|)sfTYo<+}k1VuTUQh zNU}DuEJ+(}VpU;X1IcqFBv@?|e1+s~T+?A1Ij(A35(iBP^BAKO%he#r*7GOc+5JaH{aS77OaKc*M8ozp#_R=z9Ea7BKb$<(gxCa!NW`fBbk~c6Nhs+{^Bp`su`x!`;DIw?- zY^Whb)JJ0N(Q%kQ$A}vqzD?_kpToEmEh>up@8SnrB&XZ7ub#nlJNTn96eZ3nQWkK0 zf)>-yJi|3#_zcE4@R9LP-XOc$qkZE! zByUpOxlerKKk0S@{R=%>t8HxNh#@0XDWUL$$`ebEhUpfFHQ0v3Bo@x9BH`R)%`&IX+Q>N<_(4n7D+?;KEWY>`fm zY1xvwEYfU3BNJ>ojez$`b*L1DGAb;`b%Q!>!hE0X^c?-Gr*ICm4#Ya(0OGhHoIIra z8=oT9k;$t!xp1Lo<;E3)8us4Y!*BeI^9v&`emrCDbc3wZN1R1Phyh~MnQ#flf}r3d z#c{>)?lF50_SxD{9{zWmxU@v`{36+WjuUIC9&VAI?IEoulbg3WvovAlh09dqz~Sqg zoF3oh)4$uLySfb4GI&(;=+=mgnriQa$*?ArQwg`3BkQI#7MoO(kS{h_{79e0XClvr z$jNTO)}6cDy}8LKU%(-PAMVrq)I5GTA$xe2(|>S@;NkeKZ9coa#pPdHrLL8-g4^HU zA=}yE`o}#N&Kc74N}39GCTqTix>kG;wjV05zGS$UFL3U2t90iqjef?nH*zjNADIj* z96`}gVY)5q-2tm-Gfb8;9+c$w-rU*0b+a#;_--aI#-rZ)WXNE<$U9hBKcc)ICxlNojjon zqfx;s7{NJ6TM01$`v;u5m=nBGjFtHI1HSr|gp=|6SNuV&C={1Fe($$o`_*^x;VE$$ z;;gL_0S$;is3U2Z(CQ~3!v0pl<&_D|jzxcY7xoLSu9c-#$0wE!d2nZhP0S3y6O*Yz z0U8wnF!B^oDvzf>v_*wZTd0eG%siX-Qs}f91>+0>i!TBimF8T^qkWlD?*9|PTX%)| zvpJ!j@dieo2uF-U42n&JI%_lBtw3OIC1uO^c;|LWntnLnt(Ne^n>C01Q_L-==wsp% zV<8#{9v_79qY;9VUR>qQj|;2?36Zrgtn-gAH7Q4)wDG}1;hfOSm6u)|^G_R#T>AA> z#5z2gH)1V_B~D7nGmh>ZLr~ghdhEtI%3+17((PI1Ubx8L{Jml8osw1)lH?ZyaZYG9 z;oxD#-+jC0m4kJz{LZEePWho2A6{v)q1tgKJ+}q8J4h z&onS!yu!C%zR#r}47mPDICtJ*6M1rs5y02Vqb<+PAHf?Bdn|tT4A(9-@r6ef#0V}C z{J5Tqk)#>nq##{O88zoQxi_G5d4<;cJa7D4m-!zLICHg6If=|IIp%)GmzXc}H*F(d}8%LFGFPp{^{W72ulR~q~^6(D(1fY9F3+W zR-W(N_|}30c<@($Ef@dxPxpxt%=EDNUcL{dr*mPR?achdeCLI4Edcx*FP){`-~0C4quV{&?e?Hh+Hy68Dqt~aP*Gxt z2n9hBL=ufg4TMOj8xyP1Krmk0iW)(qB4`ke9N`cJxgxDtKnevZZ7E7E+OlO!y9axG zhkvw~(yWP-yu2ebznRR-%t+Pmyu%PF2NnQRfD*t3qyv3GC(sBS0=5BHhZ^4$G3Y!6 zI0kGSxW75@<^UvMG_VlZ1KbZZ0iOZ+slcXzeGyOttN^wGMhe})z-k0G0hvG*aB9Hr z>sumLW$Cu0Nqm$ri9dBoS`Q=*iMT3DoiVfgODN6s#x<9@EQO;W-~%24{J_dvA~qyx zvo4St#=6z^+_cu1S)>6;M^uev_rwzgozZ*qx?|5IP2!9$SY}D+%|jfV0;U2-fxm!n z08FxGjQ^p0*y*6dJQ5Hj`?dQNnZ9g`elgn_HfhGGsTaDn!p_Lim|1?Q>iLzQ4S{#m z`2CB3-9RmHMTBe$-DX>l9+#!L&SKl4(%Cu3%jV^NJLbWxW!?!+k8XD-R8#3sqjPii zmkm2CYsTs|AFQoPk(zp71F#A}2+im;g{6QNGZ`!LOPx#49S`31^Zu^Yt>=2PgiYRA zHp5#re4^WywB}v0I3{nOP}Cx8#>zL=zPls^yc(DfshJtrQRk@NDHQs>7_9g$ZWntMN-I4NV2&8u`7&g|3f zoIg}ae4ZleeZT_(IGhuU2v2XK<*Vkd-o+zF*tMuazRe~-e&B5I!nGU8E%!|J6qp_I zYscIA-YuVyk*?ZI_0|GwT$0CD`>P)w0wLSWZa*2hvFEu0k6Bfuk(r9z(5fYiGR?9UQRobLgn~MJ z5ThJ8dkeVI=ZgdLr#f3Iu3fsg_lb4ECjY`Lm)op}*LU=V-h0gJI?o6{G9UTjb<4;7j_a$_xJq9)PvGk9&o1pF literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/post/last.png b/ConfigFiles/QUI/post/last.png new file mode 100644 index 0000000000000000000000000000000000000000..07e6ea14f8cd625bdb843be880ae81b3d3e3e15a GIT binary patch literal 597 zcmV-b0;>IqP)l0ejJdm-H|2pki`s4@xy5(8dr;6>3P_-6oy!kftIwAI;Yf z=CaQ)&o1w+0i=`&AqFZ2_8g7U_Eg|? zzf3&);lQjBs~c%$r^buIDz7$jRE_SK^(5CAk{fxRu6<#1+XDm;Xv=z*uavf!&wOU3 zw6*&r&=KoNzUlis&SXdy3YaDb-};zt%DR$QwPrDw=lRzhziT@OKDcZ7+u~0iEoWIP zyVPsf)xGRaE{#M~18BehU)xrGF&g2*)pNZ3ROH!mfzozucyfRdDY!Qs<=TmH7E<4M zv-$&V_TMW7Ow~3NqOMFS~5K<8oDK0t*5**Ye z2tvU@K@lp7;?OB$hYtP=!9{dZy1D71*bJp8MG!*^Z;?h@#2*QH-$w5ow5^i9Z{BE< z58QIk9nT%d-F?N>?D83)4A=}VYrqu)C>M{{?fh5*(=?G%_RXl2!gXD$PQ#w7B+CY1 z=f@JHQYkFULI}|}xz?Iyvq>JHf^7hprio=)n5NlxIe_cBfQJN-QX+)ts~FgJY#nXj z0Z&z5;CS_}S=a>1pMP4X`1&b#oh2GSzK3Q#k*m!Jo+r5HtZ;7O8IM0WD0D~G6S;0h zw%f->i_)7VE-t*})z{B~ENqM*s5T>QeTy64nB1tK@n^+smOJC)jKt&rA@|w^Ve)9X z#uI0q8wYb-${ir;^Kf;L2jalgJ(yiw;o-X)rHMSJ?0wzJ|83`gM#c@K9`Mfh#td#w zWVw9UCMtJ-yn^NK?pO*?KDSB=xNvBg=@X-j3`GMM*tPtaonWRg%GvvGec92>P@uGH zc_wL4D%hMql0tM~VG}5CeKCne1lLcdxm`$;h{;f_C-T$TVP+=xkju0W3u0Z#l~QP} z(OUoYtv*`Bh8^3}CIg+OYG#7cr0;ZnXgUmkGrW>Xa(pK?B8?HB7{^aNn%4>)h?GLF?VOfQ-=M;M=r*N#;c;O9g^hFU)}Ls zaLNFH!{KmP3knLx2%4LltyNW34jJa{eDQFaB}>^ISGC((E-W&)`WE1iSlGSg(-C>z zmw^ZKmS%L7Es?w5I8ak_5ZJeU$BxKU04A6N{M}~V`}(0AA*An`Tkc)@jjI?XW`r3k z%v8tdy|H;*O5DL|<6`qVaqgwOq29+{JM`w}-7h@fIT^r|GGH>9kmYz-r;7!m5d-~! zbcjhej<_^-LRp~ICkUtMIBUs8m88YS`0%m=H8uL%0*J>{))p0k;A^0wu&|}RqWlC> zTmv!91OTl*f!3g6m4lRCaS!Vf>JvheWZ=}kw+XarVL! zSL+)ZD1NAyic;vgHVd203xLhPUO*+Q%@+yk&6M^v@@xG`y+)&P+`qOceK6A~Tl&Jg zfLBJ(FO7T&?RL9pYHAu|9*IPG{~ZTk?RlEufSCujx>)~sfX(IQeCu?gHyBuHTZPp+ z2fbd;NHqi)YOo;*m3)EwZrI|Oie zsBaAbd^B1AO#oAFv9kOwGa2Sv{v`dYsz0ZobhkvE)%m@X^^aZ+ zH*sTMFgK+H;Llw4;WEw=m)N!eUBck$>gTe~DWM4frq@fi literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/post/post.png b/ConfigFiles/QUI/post/post.png new file mode 100644 index 0000000000000000000000000000000000000000..c17d718a11959d11c36cb9da4d5d5a26d0fd28f9 GIT binary patch literal 1506 zcmV<81s(c{P)1Y z44s5+outHw&bS1sIK{GpIzY=~uk+Ir-xY1EUz2Z)t)iyz3JbNXNsZiI;Dv3?&FS0Wn(?{C&R_4FBc=H3 z*+^B*+ehn(SuQBZ!i?;+Lw#0=%ek4n=UU)-K%V<~WoG2j-TQvKuI0x+`tPQ!l)<&vmOUZXi@S z&~hnKwIY>vP*c~_2{hbW7wH664~+#`zPxW5{L7wxZWtccjh``{S*sDi)YXnep~DD_ zrhW$e56!?O(O>-n6DU%*LS)s|)ncJQM=m zht{CL>VpOQfC36Kfl$o#~#q(p2zvB-l-f4;*tIKN(jQOd9PgF2Z;7EzzHBBc0&WeQ!+^)6vOYI zAg7Ao6_3OpwOksyYND$)T3HT})t8cg;gWeR`?)>LXy9}hC;@`NM+uD>P`-GW^0KS= zTrqN9dDYdjwW(SZ^`T5 zs3`0WqXRlHaep_L*B}33C3N}nZDHATBW07u(`g8kfl*;FvSF0^@(8j15{BQdjsPf% zrFL11`U&JAGlB9er2uP=?RaHj5FjL={Quypza6cx)il4R>i`a9|m$)!! zV^28gzPOl^%KW2SzW3Z1fa0FI>Fz7Fedmrf{n4CsryBw3P9_dMacIAB&&A_x?0E@* z&_pD7e6kvA!iC%P;L{vP3H<|LO}MZoT)dkK*N0y02}1r?d~$np8hFgs?Qcp&N_R4G zu;I;DjhU$-C;;*btf;#!7WH98-HZ?n#}Gu*iZcmNmRfJ=!|G9#W%nGp|}5f7Vcg9rgf-p^9&^K)}QpWm7B?Q0K; z6cU{&t6~V+ckgil&#GB_Th(C1JwI`d66aMGMI%I$zFQOX*00>m4=KFZk>L-=tUK6* zUST0`fpO%O7C`%!J$@}~eG9?EwxTcH@z&<@jBVTra<_>64?~MgfQABa{{R3007*qo IM6N<$f}*_QcmMzZ literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/post/previous.png b/ConfigFiles/QUI/post/previous.png new file mode 100644 index 0000000000000000000000000000000000000000..07e6ea14f8cd625bdb843be880ae81b3d3e3e15a GIT binary patch literal 597 zcmV-b0;>IqP)l0ejJdm-H|2pki`s4@xy5(8dr;6>3P_-6oy!kftIwAI;Yf z=CaQ)&o1w+0i=`&AqFZ2_8g7U_Eg|? zzf3&);lQjBs~c%$r^buIDz7$jRE_SK^(5CAk{fxRu6<#1+XDm;Xv=z*uavf!&wOU3 zw6*&r&=KoNzUlis&SXdy3YaDb-};zt%DR$QwPrDw=lRzhziT@OKDcZ7+u~0iEoWIP zyVPsf)xGRaE{#M~18BehU)xrGF&g2*)pNZ3ROH!mfzozucyfRdDY!Qs<=TmH7E<4M zv-$&V_TMW7O$%#2{3(pj1No zVWkazvawo4EUh23v2+8LiqU`yb+AwZEp1YZ*j7l3wvfz+f)q*!SYjd3vYJHjsG2{u z$)&MLF1cGj+@9=RZ#{poF!TOqo_Y7(nH_C);{f?mLUKD9nObm+vPj_mo!0pF=u!m~@YwK1AO|J<2_Ya^M9`7Sy6R<@I ziD_HIKwJqqQw(a_)+fN#{@GZS64H6+=H4%KAO_R`{lM!=$n5ydj|pu7s(^2mkd7OU z8cN9F?4XXZ*IG>5N(1e{S<|+T0SACLfXzVr+m(Gg-m2{X-oxGv>`_9dJTcu{3ihqI z^lQ&_{Wahm5Cz7SkZrEr2OJ0L@{&HE2L-sB^YIKV{e7vmQ^@+!IGPNtD7nP8Ai-3hse3cFy z_A#F_ZL6{fxXsVdfh#`VAP_79e$yvDY5=|N0y*k_p`$Alm`}J}zkfxIryT>%19U#$ z6*GYSg_caCX;VvO%fWFj&D5^yoOrby*Z}+i+yu4(J5Af#0KE4~Xe9J;_0NI1bV&#| z)4%hfrfq5A!2C?axIY;VEF{(hb)je<1P!z`T|G6)|an+#%V#^533=HrESokIgIF3j-TS6o|xBwKB9c&I?Iw=U#@SZPLV5i0N4@on!y}=<3LpYmE<- z)P*eTzEnz|15x8%fB>LDA`uJ-;~s#3SP}ir%oAJ9-ODywd19@*B%)UYkwZ9)5G9C4 z5Js~wLXjft``_D*D^qZ~pNLZWhK*JqTk9@rW5$V&OC~Ny6A?lP^gAt|G``q=JLL#& zCcmt<(cQ?oTh_TXrS-IUN(Jxf9vrZ{^+^r00l)}u@1^H$RNIVVcilMaL>4v~<^^ez zkZgUP>YMh@_Ej6Z*Vfs(jS2j7e*&*@B1tY zU_znlz)~mx!})C!3f%?VvTi8K;9QlwbHOTueW4a#fjMye8n?9xo*nDg)e#=|245PaVE0*wDaQ5^XgmCJ4PXXkZ#_52w?KGRtfg4 zfS5S*rgs0&o7;~L`=&^j{!9QAzN55?;(NV!>l>2;Q?y(U7y$ksK*i`k_mRQc+y49Y cXD4s?3tb$w%FjudD*ylh07*qoM6N<$f}&yeDgXcg literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/post/rep_surfaceWithEdge.png b/ConfigFiles/QUI/post/rep_surfaceWithEdge.png new file mode 100644 index 0000000000000000000000000000000000000000..b351f43fe8e5016004f3cc1cb72e6b57a8a09ef0 GIT binary patch literal 609 zcmV-n0-pVeP)bl)Y+!aVtVyq?Kx75|jIJ&g+n-ABm(%)ZcXB$9e8^ zUS5uzo&P|0jxKE%8cP#v#Aeo%6hs9T?erolAg24As;X~zIJ_9&j9(WY6|cMT+yyoCXYMB1Zc%+= zg4(Gyl9QVhSLad-Ft%8qOy1^~b<19xyz2_)m>$OJT%G1di~7@mpXWZ3P5l7Z?yMZq zd-1cveT*C*n|DF-Nf^Xby^_=uTJH_j^Q*Y=#x4}VYE2%7mz)zLLHcE|tAmn#6Vk7i zO8Ff=7axEESb+4(_rdPIKc6GAN{kC)$a-rFpqWWJ-vh@PPkH#XmPD6YxOV7d-ro#SLKWM>5{oioV7pZH1uzKg?Ji?NM|Y z8_fZn-WkR4#wOFAbu;9(w0XG(JopP^Mf{$zA+M$Fa>cml7O*n%R%qtIgEk?MyiV83 zRnhQvkc2DHd4#I@p~2F~uqjAArzKaeBH@BfqnDlD0%X-(G%Pr13Zb)1Cs!+oy%YNA v#s1y`%xr88_pKfi-FbzJ7rxCaXZ}9Pe z&~Yr|76wa^S&EFu7{JUSri3w^#8v!=fyXf~WOE+thlGxz3q#n8%`)EN18Q(5(a?eG z_*@0rjH9@W@5w?Ljd-5X^c5S}%7J#F8|Q?-1N^2^miagI zAN&u4vyMDh8hsUW;L@7J$~_1)ktF`x)O8GF>SE zJrYeiiMiN}!8h@)0JL6M-UJqsg&4eC07`hVFJduW_zClhMUqGcTdM#7002ovPDHLk FV1g{;#s~la literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/post/run.png b/ConfigFiles/QUI/post/run.png new file mode 100644 index 0000000000000000000000000000000000000000..c1678ea5b8865d4466ef8c37e78d8847e0d922ee GIT binary patch literal 632 zcmV-;0*C#HP)+7t5?-z+xe$NLtDiqmU0Z0#``e`ivZRyUs`B7#oNMtI zUkbVY!Btt`t`FHwt}Mrx`}Uc9rP5otk|0a^KUH=$UL;aXEiCXllj$8CC6KPZV{POr z%r1Z8#=8~1=ePbpTuFg+jg}Ql=Q#i7Jx@O-aH_IxPs6iKSxeqdF7SLcP2!i!v$H2! z&IZqLrE1CBX~1W2_vA2Fj}NvTN}VNlnjaUyrDGxPpB^H#caNu*-jhq3!jJAZnVTGD zV#xN|t~2;f$pb!(*)s>3ITgatI-mUBlUFs$o96cO^q9?~=>r@NdiUQoT$Xf78#YG{ z89cc@z~q>}YiP%CztFjNZXb6p`!RjH<~HC`N|aJ4rJDX$$47O>N85krtyE`7DI0Ld zaVQpx0DakHYRiPc05WT-LOAl*L|=BeQ~|Kp4dB-Nq8(+C!P;=_wFF?Nftf#F0QWW( S=WG%H0000DsD@&Zvz18jSDuLtr%zn3^B+z1)Os@9DTo5BuQF# zS*=#l>2yl5kkjdutX8YIHlN%pFy!Rq#NgrKhwr+|{(E~MQY{B0?hni`I5G81E97;`Vu&^d`9fF?eUx{54xJ5;NNDuL>v462JV!tzs8f&N!s>K;u{Q=GxQ zOBN38PNuPQQnnJ|Dl7nhK%%8rq<82u^_5xVS&{)LFGxqN5@;Woi5-Av&d-hZ4=nnE zG*p=}rfF7h7NE8?lcCXhUc8x$KEUho1!~*gb7b#Mu9TWc(EJ{*O;B;I%tUM7G~*wa zq6g6Z(nI58HnM(gT+KK^{I2-TT7=u$LIosQ*-Sd8y(AuAVXR z)b)j-vH8CTh(x+1HP_2bH1~*z9^d8z09cHPR2WfaGM=eu`0eN3T`p^d1iEeT2}CIm5P>cz;y ziWnt6RudP-l|c=OD|KS@MkT4;s2kiU$<>$`6NGd@Vw6l`6p7(cAUq0`mbQepOexcO z^gfP@xizH}Jge_~=Y0SC&-tJ4NPk}+uII4SvYDI>YyqAJnt)$`-(AnCER*}+*j}LP66l?o2L+-K-q+)X-Se2i-Z*P z@W!r*v%Q-ywgXdfJN^Vh8(0Z60_oq5cc%V6w|YB<4Pq0TrYK>hwcTotTChoJMbM() zUoxXd&)q-XyZPc5z%JlZzyk6%P>B2U;`mhKzGpTLTcs6t@r2c07dDubBo#5B5l97^ z%Vkz2it9_$b}#T|TUp%GX~yqo63^p{8+iM=O=3&57$kzF}%k5(j@0rrn#0#F{o{n z<`P7a{56|T-sgJGVPO8QVOz$P8Ta7*U|v10xP zOua%))fWrI&|p%U2Ohd7phnC{E#u)0K|>$_qH3wkSA7kuiknuA{+FRva_oN4JDKO{)pM9McMM2rxxm%=wd2k=Qu==dF?xSlhT&E$6X zbdO|ux<`6|_JvqBlUobC6u0LPu*>zFd>mU|p+Nuu002ovPDHLkV1jY{^)Ubd literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/post/stop.png b/ConfigFiles/QUI/post/stop.png new file mode 100644 index 0000000000000000000000000000000000000000..e0e582700083635c99c07632d3f2855a72b890a9 GIT binary patch literal 599 zcmV-d0;v6oP)?OBTZv+Ls`8OhF8o*iqx`OS>it4`j2eGbfk zocmkXz)=FsUOc(Yr-x(GG$o3n-iRWCF^0>lMSgZMnI%9zJsh*YzfYEBD5ZLXJLk|^ zGX=OHPXN+1CCf6>H0>P@V2l9@5`ZX*P)gki{!?2VZevg40TIi0wNzLq8{aUB8LD_^ zoHb+J+N4d!PrrQNwzeDl)L=qu!E zg{uOeYu~nZa2q3)1RKr7r1WKOCfNx*!c{>Z12}brvmv}=)~#@>_q^tx>jB!hz&MExQ&s*hv~fMQZ$u^6D_u>oL+if1{?pBJ!#n8!cBsd!M7bK zcQ!^$uVqh=A}D8|Tx`^Ycdgu+EqHjsm2tmt`+JBr{)BVl;k6!MZ⋙twOekmp{jp zI;eFp(bY{#`NR8UG59~Yh~S*VIk)q-Ix5Cg#sgF^a6>y}WPGUy_1*9_Lqt5>7=zY& z8F&Z$^SkYUCB`hDPLCC*$9o}Sby?UA*IKXqiUhd6oG&1Pq zO;hK(;Lo2M?*DcDuJ8T7es?0**k({9@DQeB9X8`{yoN8a2R()n<>#$iFbS)$12@Dy zXYoobJRf^6w?HCxa6cwT)w}W6h4$h_Jc+3&3Ef>XlIi*-3-AHnK^q>#(>Q~Dco}^- zj`jF3cF}?cBylQ=ycty(jYYVv9FGayzsKj!MRdJ@sLKGNNAVF3VBG=f~g12H@PSmB|sK^wSRX6-BedS@$b!@ETyKmK79K9l!?_M6exibnV z;M-VmFrw!NBhs(DqUzMf@r!qeDN}1qMMg)us5oh|qn$rEG;l8et3V==AYGP}O;#FHk#WM7d>R&}Y?Q+r0v>uM?~lzMdZ7C}dEQK8i1Xubwo&-rGU9jxqFS39r1;jq2s z1&~b^6iPjI>_6y_-zLJ!;dGEp*DqO%BRH5Ymi8B=Qb%@IQX>|2Dv`XZO_UVcJqOZ)1pmbP5FtcN-)JH+~UHP@*hNNuoEBS1-y@1 z!Sj>I;5xxkR|&?q2;C9UTpWw0@?kEP)pu=e+#tbkBL7=icvg z?>YB8hkvZu8J|6jA9$IOQL8KH;4Aj_8h$ClkKh(s*xW1lV1yry;+j9SW=Tf zU%ZazPM{BC74}_tgC{u?*o3vXSK-?yto*DxhwoTWvM&|>`vbWXc#1m}_6DBKbYqGs z*eXoH!wTPFTu;E5QB9%dFDu!P;f3kbl2jYhSdQ8S7vg)epx4)r!O(fMpp%^tw z_F-YyTbDb5F}(Ks+xG;%5V!q0c)~Ve6Uq)>fd>(OD%wut8?NPsZ^7dT@5dqGjMp;# zAetO}IfC0bDHN8DaK2lU8aNNDv9kc~;I2?^CxpF!drD{%kA$+>ETl}%_9Q51#08OF37f2eK6v0958Yw>p>bXC-ag2lZE zN>N-0K^Z#5RZ*nqs)Iu+3hKg*MRC~{U5hTAHX(_NChdEZm!L_` z?wxz*%$a-N+-uCv&6iMN&=?dQt4T2#vPQ|OmE{FaI}iXzCAtl;Ydo^kfWnk3Hp05& zu;>xs25{SV#g#H=0b@YIcg0L7|NPLV&zEg8Hwar-?a$85%Lyhh4vYftfP6W$88`@h z1b&BnyxG^0Ja@PM>FKHDNP6UASC8V@3!Hu+2F&=b*e~&Cfjz*e?~1&v=mpM&19l?X z7s(8TzgjNEC!h!ndx7&nQ=#i#;3&jl`)lgX?iU01#L22;SvUf8X#_JmzRk=pjO}$`8+c&5^ZCd!{&qG*7krP|u3SaXF z`4_xh+KXuv*%irD#S~#LaI~G!@f~J9y;!ihwCy!9ajL$s?~1CK;RQ}f$4|t%f1K%j zuk!)4sCgB{v%L!~7k=`6IQ=cx`Mh#&s(BT}v%T4sqIJu6#dL*h+VSJmvBXlL-5ZZC zPs_Z;>f~=|&_7BYPk#8*H+l2wuZN*f$tbTTqt;cc2iwd=C$DAhYeMV7jX17@wbdlM cZOJnI3zC+e&P%k;>Hq)$07*qoM6N<$f+~j>K>z>% literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/post/val_on_point.png b/ConfigFiles/QUI/post/val_on_point.png new file mode 100644 index 0000000000000000000000000000000000000000..81885e5a946c02f7d346d2b3da4a9a49fb14d20e GIT binary patch literal 782 zcmV+p1M&QcP)bm2F5C^P7fIjByE@!Md;&5m=u-l-UniLFU1LbC~>>1r~TML|F{CLu! zo2vK~(8tZJ#i&zo%R(G*26zUXxI1QBb->cow9GK>l|*GkBZ#8=A?Di;CThV27BXZ01Iv-+h5v;e5{eOp=a!dcbaK9UnUJaiSF>~mg# ztDo{R-E!_AU;@^-W#O(GR+;oL#g+6Rd;05G8&D&O%2fEF5qG?P@w+ad9Y_XhfyOX@ z84v{1Ac@M4xv~j?FAwEYXX!q^DR!Vs5|v)JEMx+ulBnEMZ?JX_3 z8^c?1xY8Q6gfr%IR`&wEEwWG*O{b6MoR9rCux8}}>@z<~w|4gI2fSKO4#3*knguw@ z5_crRia&ylMe)zGzWWXJuO^pYs+WcE?2JIBTNYx^rll0yOoOh{gg*1cUx3#y()oXW z@f#ERCsOS|Y?wbDZ~~+K6R9?vX>gWPt5<9S*4Dm0C`h8>-w13(3D=Y}U8Qef4JC4( z9jKLpx`?0WmW3Rk5@?h}#UCXj^&SV{0uDz+yx05~(=DI8Wl4VWlP?)HlBoQg3u5hT z%>jyQEDlS{(6$+96>wBt+IoW3Q)lTW-T3L~u@xS#Br20p0(1bUE6iR2$PGfpuznHQ z=v#*Jqz+k-w5U513OOQ#s=N?5G*=VS1!vwuj3%{(B33t(1sSHl0hn*;y2L_nSO5S3 M07*qoM6N<$f~+8IK>z>% literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/post/vector.png b/ConfigFiles/QUI/post/vector.png new file mode 100644 index 0000000000000000000000000000000000000000..0584eec0fd4c5722b8ce6bafb0177699e04d6cab GIT binary patch literal 1109 zcmV-b1giUqP)5mETX3XB5Xjln2@pN-0QjixDiNWeRQ)TNF_IwTt1V z)H0k7%`SGi?PA;Cu&eE6E=zXfjVwCGk7+hz28bFcKN^e_Bc;xQCT0m>8GV74_G#G# z@)USpV?JypB{(V$Akxw{heyI;{Pkp%6}2J(`ph-0oh2)6;x#>NGmN{?+h!JkE{wHg*;iQf{{caJ#dE7r`LTGcJS> zNGWM=Yb7@)hhrz+17OJG;n~v(PC3tznwqM@HEX{#(C5ZzGO6HDD8%^qIQ#e85n@>$ zAq4yF4#vmFQ4|G$a=RU)$;3dPd*jLH6or=NUpd!!0j*X`wf`n&p<_};_+sc^B8!W} zqEXV))6r?QTq@62^F7vD78e(}+H?iiM-3RVvXUqF`9`tYY)C2T>iCOXq2o%d%e^bqW<6R&eUf{=y+@u!1h;q5f#)hx4yx1$Mm??TR{6OW`4yiefa8;w# zJ)fJS?YCymp8sUso_~3NmPjN*G#Vv6Jsq7+#}E6A>-PNGFHN`_&XSp#nG6T$bN3Ps zhdFlq1hDLi&DXAS^!N!Z7K=JjAP}IttCNP0&#A6>yQ>quUeCeGDzz@@`8z5OFgr8D zkjDdn!C=5*u`uKrBo>V>3mJ_vx ziUV8p^R=ObLj3*mPxRH3ce(ZH8_Y+Sa9#a}mZP)0Ra~r^)JE}I_}VaEm|Hz8!DLhB brak`w3FY6Bjscb@00000NkvXXu0mjf-nJNv literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/post/video.png b/ConfigFiles/QUI/post/video.png new file mode 100644 index 0000000000000000000000000000000000000000..f5d898954f7d757f588933fddb7db0c2b3abd9f1 GIT binary patch literal 472 zcmV;}0Vn>6P)Slh6KSuAws$?^%vYv+FTlw zq(Q{tdWQ&?3R)f7;@%@PHHH^zDVJsmaX0X*#^C!os1;oz`mkfteYSHryuXL{qD$Z>a!?U9S>oAC>L{ zowB9=fW?13g0m-Z+`dNg%~KHo9$>x*Uc{c)M>l*qw*Uwko&poWylo^evFU*u_4fn- z%#L9lcqy|GKeE->aFI{o*u%W8%$i|OrW=#*Wfd5pBL2zoT66mmi5ZDm;DXG|{+!IoigfM?$<`R{(bPbYv`QY;660K3H(g)igvGau1)aze)!k9T${!?i9gNdx|PAT zn29}bUk=3Vr+gLhHEct@3^U*uo@Li79%uO|?!q;kSZh4F=VWpQUb6+>L)fn_lsyB+ zX%aHU&Z0e>4bO!4Qw-a~yZnQ4oa=KKVJ_Fa9Il09cy_!d9%I?IaOT}FpWpPq-(}Zv zAKc?<_yF%E6Zb2mJPMw}Qh0tZB2$cQFVGF1!75avuJ5NY_ux91%-!>^Fg9%-+rPl~ zY9Ur*RR+sxTLyEjfX{C-w;uXJzLK^~V>wSN^BzYnjQ0@pU1G@PI( zsB3*fpX)dW`N$?UB*=5V4omP5VeDjHNnaaeo0<@~9R=`yFCaNbs6VE!5ZNZbbLH^7 zw#E&Fv6FeObG2ve4OovgID%8~I~(|YKaV?Thip@C0>`2l126)k68wKY6IbEAWt*B4 zxEKDfDZ&+ehwo;bZMm+Y`xQSM7pW)rDb#bFs|924#yAXvbNS7FmhhVTL*%kwuAO@{ z6eSpf!3l$?yQi0s%YL;YekT@TF3#dMZYA8O{s6f=m;1G&b`0O^%Lx0E%yZqZMvU#* z=zwN$osx5edL?~rk!>>e0-WOvJOg3uWbS$Ck8INd0^cLNOI4IVrm(L9ey{&)`V{3q M`W7|(D_$G?0v(*NH2?qr literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/uninstall.ico b/ConfigFiles/QUI/uninstall.ico new file mode 100644 index 0000000000000000000000000000000000000000..531900a65f26368f8404f77d64eb6352c78a7e98 GIT binary patch literal 67646 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 <{kp?75jO)-q}Cqb5;5GlMoA7FR)JdzGnQp z+yEZP>IYeFknupK6S#ihSYUv;lcj+|-&dc%w^HlOF3gM``Ip524eY2TTsD$eD}8gJ zx(NGrNkKQ#VlFS1Wd#HOM1lX@P}S7pc-;hI|JcG<&G7sv@E>OU%Yc6|@Goec?9Oc* z@5-(nW&B&NmJT;26%N(M=ML0FXZBS^r1qAFCUutt# >Ms?(Rg|%n71AkZl=BtiA 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 &_e^%@cVgz#Hqn;VJldRI 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 literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/window/3dgraph.png b/ConfigFiles/QUI/window/3dgraph.png new file mode 100644 index 0000000000000000000000000000000000000000..3aaa3c99c34eca470342ff206db26b7ffcd6bc6d GIT binary patch literal 822 zcmV-61Ihe}P)^Z}JuO1k}vul5kV_m>Mm_7zBy)F*_9l!03!u65`f2A}Lf zR5b>UrH{h+zj$wYAVQL)KERWRBH)@s7ho97wlk31N-_(mY7DC;$QEF3Rw|xEL>XR( z^b7$HmW5(~BS7p#OuTY9D*>aaj)B~HS#@O#2%LlKpHfM%<><>|?p10g;u!;e%;?bT zny{X4z;RIrdp=_{)w!+FWYP1o@sNwp>nTVdO$8vKy@JX13VM2r0dNHBJm!@ZCehWS zYa`a{*&d@1<#VK%OvISU! z7cdzu9x>YP&cF9R73##=(8_G?fX5u!0vfDJRP(zijk^ngP1}i5+lgM+1i*>`xcPtk=j(3#w6ouyRUf`Ags`lP%N3B{7v!vsw96;<{Rz=k zF$A;(-+m*+tyKletY5y1S=O6_KlPk281CdZjk4z;L+QGnEuC_}SP0)h61gAhDNFi8)B@Q+rwM}y; z)(+;I9`F5m-|znSzT=*&UaxbJx^$uLU4V-M5JGqx3WN|VQp%~b zY8vgXS`jZ0R}>{QHa14)GpCw60ssO+2zs@pwh&b-G6Xzo7zcwv05UD-;Ew^;*Vp?~ zsZ?lVBhn8nwk&x89}w{QeBR;VVT}9$!QgFM``QNR>+2&LjiRb*U}5We;O4g!0E(ip zeK5+aC)ZFE1pp&|`V;4JIkMU8u{p;nXuL~Z*U@#Ixw*L}$XN=9!xW1}W@l%Q&7bRc zpjOr*KfkYzV$UKoq5R1j|csxM+6xasX+1cp`Q79CeH6D)#(=?k& zXeZkMrfK4KyNSo+O|wFwKrWX9U~+PjbUMx8;2=OpQz$z(FDt*w>#^;hH!pdn4uSlHS{*Y)Py_WW+!6dWEN^6*xX@$pCv zcnQ3aQhs*|uwod-)XdC`ZO~e+#^&ZGhGF~w(!g^m<=5Zq>;g<@vsneW-wC2rDgiJu zGI9WzKvGKisa?Ix?$t~P;RY5}Rh|BF^)cqt0eX6Rs8lM1Uso8tu}waor&KC^JTgv6 zDfc?L*$kCa$YLrgZ=S002ov JPDHLkV1j5~NcR8$ literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/window/startpage.png b/ConfigFiles/QUI/window/startpage.png new file mode 100644 index 0000000000000000000000000000000000000000..6b5e3c452250485b26621c11cc0623cccf216e1b GIT binary patch literal 368 zcmV-$0gwKPP)SKNK}ca5NgydCfuu{5CXIq1 z!fLS#B4T4>BWVQDGNqlpzJzaJ5ereK$Y$dbXDsHc=I6p3xZk}qGilovo0?iZ{XYO~ ztqTy5O>*=G8~`t?0-B~72A~HIk%$n6;Zt4LkH9|g+!y~RDaf*{jN|wQxCds&0RWXG zNtLGQ6>taang#$+Q4}5Kd437p0(+(b08|hJ$3;;rfNQ=yVH5yB`M!TzmgNGt03y=> z0Lt^cc~w>Cz!|Xpy)mc^b@?Z+o$C)rJ3nI)>4X55zz6WYF@Szhm)7+R5mEZwMk}7` zkk;=4>j0yfuupxy8Qp}xmGu-j0B1t$DR2M|U{DpTcwmg8iTj+|2KWR7w?t&vR&uid O0000 + + PointCloudProcess/images/back.png + PointCloudProcess/images/bottom.png + PointCloudProcess/images/color.png + PointCloudProcess/images/front.png + PointCloudProcess/images/keda.ico + PointCloudProcess/images/left.png + PointCloudProcess/images/lock.png + PointCloudProcess/images/open.png + PointCloudProcess/images/redo.png + PointCloudProcess/images/reset.png + PointCloudProcess/images/right.png + PointCloudProcess/images/rotate270.png + PointCloudProcess/images/undo.png + PointCloudProcess/images/up.png + PointCloudProcess/images/zoomin.png + PointCloudProcess/images/zoomout.png + PointCloudProcess/images/rotate0.png + PointCloudProcess/images/ic-redo.png + PointCloudProcess/images/ic-undo.png + PointCloudProcess/images/files/add.png + PointCloudProcess/images/files/cloud.png + PointCloudProcess/images/files/copy.png + PointCloudProcess/images/files/CSV.png + PointCloudProcess/images/files/cut.png + PointCloudProcess/images/files/log.png + PointCloudProcess/images/files/new1.png + PointCloudProcess/images/files/new2.png + PointCloudProcess/images/files/paste.png + PointCloudProcess/images/files/search.png + PointCloudProcess/images/files/star.png + PointCloudProcess/images/files/txt.png + PointCloudProcess/images/algorithm/binary.png + PointCloudProcess/images/algorithm/chooseMatrix.png + PointCloudProcess/images/algorithm/DASHBOARD.png + PointCloudProcess/images/algorithm/DBSCAN.png + PointCloudProcess/images/algorithm/density.png + PointCloudProcess/images/algorithm/filter.png + PointCloudProcess/images/algorithm/help.png + PointCloudProcess/images/algorithm/Histogram.png + PointCloudProcess/images/algorithm/KMeans.png + PointCloudProcess/images/algorithm/matrix.png + PointCloudProcess/images/algorithm/more.png + PointCloudProcess/images/algorithm/nihe.png + PointCloudProcess/images/algorithm/person.png + PointCloudProcess/images/algorithm/pingjie.png + PointCloudProcess/images/algorithm/transform.png + PointCloudProcess/images/algorithm/tree.png + PointCloudProcess/images/camera.png + PointCloudProcess/images/rotate90.png + PointCloudProcess/images/rotate180.png + PointCloudProcess/images/files/cloud2.png + PointCloudProcess/images/files/pointCloud.png + PointCloudProcess/images/files/snapshot.png + PointCloudProcess/images/algorithm/extract.png + PointCloudProcess/images/seting.png + PointCloudProcess/images/coodinate.png + PointCloudProcess/images/grey.png + PointCloudProcess/images/RGB.png + PointCloudProcess/images/files/bgColor.png + PointCloudProcess/images/1.gif + + + OCCViewer/res/lamp.png + OCCViewer/res/view_axo.png + OCCViewer/res/view_back.png + OCCViewer/res/view_bottom.png + OCCViewer/res/view_comp_off.png + OCCViewer/res/view_comp_on.png + OCCViewer/res/view_fitall.png + OCCViewer/res/view_front.png + OCCViewer/res/view_left.png + OCCViewer/res/view_reset.png + OCCViewer/res/view_top.png + OCCViewer/res/antialiasing.png + OCCViewer/res/raytracing.png + OCCViewer/res/reflections.png + OCCViewer/res/shadows.png + OCCViewer/res/view_right.png + OCCViewer/res/tool_material.png + OCCViewer/res/tool_color.png + OCCViewer/res/tool_delete.png + OCCViewer/res/tool_shading.png + OCCViewer/res/tool_transparency.png + OCCViewer/res/tool_wireframe.png + OCCViewer/res/help.png + OCCViewer/res/cursor_rotate.png + OCCViewer/res/cursor_zoom.png + + diff --git a/ConfigFiles/icons/application_go.png b/ConfigFiles/icons/application_go.png new file mode 100644 index 0000000000000000000000000000000000000000..5cc2b0dd36978513f3ca009c68ebc4150976fc80 GIT binary patch literal 634 zcmV-=0)_pFP)cA1hmXWM zDZ#H?v3PJ5$Hq5OmbDN{wJ%9%wAR zT-Qu9!vIN`896F;t~rD&@Nfe0`Nv1rEgogE>hi36i1p_V%rE6ZqX5JdGmz-z3Rm#{ z+Z*c0z*?bg!mefM79{Zs`zK3~u)rkEuD#mHG}dlY@$@R6?<^o~D%1C9AK Udps;mZ~y=R07*qoM6N<$f`qvmMgRZ+ literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/application_link.png b/ConfigFiles/icons/application_link.png new file mode 100644 index 0000000000000000000000000000000000000000..f8fbb3ed94ca7686a3acc052b06f2d8ea4034a4b GIT binary patch literal 701 zcmV;u0z&gFy@`WU!f)*0Mw4O9TnqBr{Y-GHDVuib)O%q7o!E zKlFxCD=Me;C78Guop0xOj_&HYpW_Dm*t+3@`&{>Re&;#QbB+dp=6|HIxRxBDrUi@fE_t7hH*d!sYoQrtW@#bM76y@j{#K^yGu+Y%mKB@Gh?6AT=?YQ30NZKe^FU`jD8!o`SZhpef2|bb8oqiKx}PSX=Ml zPpyStYfYXXpH2?}Y{RJJ!2oi<&p};TK}S+S+g$})Z3*j525N|?ZghFxdh>+}pxvhG zGk`)6rXB-{4Ai03Fi?wD)KO4x$=GO0Jb&iKa}_{G#Q{4z9Iy-OF-d*(m3BeRA&BbK z^=B$Txc7MvKx%ipc$rQk6bd1cNFW#tVzpdGZF38^haSzwg)nqF-C@mC?4t@`l4KbR zED(uAP_0%`sZ@~5<@oh{JdRSS#JxhHz`fDY(Oa5JbMN<#=5;m;pU;Ql$_i!!0hrBZ z*ladLqfvM~9^R7|U^9XUg3!=7qi^>B;cyr;Gcz0@NfL}kBQlu`ip3)G`8-mo6!&OG z0KeZa(!a2D?#>(jWtk`Zu%CBwz)9;x96LS&gTVlc#ll5Bc_&U^-~hYbUf=g;9bv_m z_?>N1J()~yE-x=57K_24C(^PW7KQHHYn09vi~kY2ApYBHIAPfkv@9S(=c)EgTc jvoejazDXXYzD4Pju@vH55i-<8yBPEX7)KWiaTUbm3&cSX z(aq6K!9ftabZ9K1N$zpDZ;Gu_&^*iG9=OkWp7X~df>lrfZ10V3wcA%79{sE@x`eqS zvnC3Y;c`p@2{TwvKx`q%2y>2aFbo_hMVxp@XA=fbm64jWHKS8#8{i`Z$LyYP0aH`uvS;7 zGECr2<9`XF*|K|JRVcmH7_o2vA1%TD#%5F93(IbN$51ia5yBT#FNoQpx5gGu+zNf zvsodCMuD4^ZR1b*0E5ARR;$J1AG^H21F=|6p}B|Te(u)v`+Wd*n|IC`iwL&&M$duk z5|~u>-wji_2}yWem*|dM$en}FUq-g-HHsDS3+eu@JEN|IH2?qr07*qoM6N<$f->Xd Ang9R* literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/bullet_arrow_bottom.png b/ConfigFiles/icons/bullet_arrow_bottom.png new file mode 100644 index 0000000000000000000000000000000000000000..1a28d8250035963143465ead45faaae79de6dcbd GIT binary patch literal 229 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!60wlNoGJgf6SkfJR9T^zbpD<_bdI{u9mbgZg z1m~xflqVLYGB~E>C#5QQ<|d}62BjvZR2H60wE-$B_jGX#(Kw&{<9vg>5sw;c`@i>p z_kaC=>wowE^MCGt=k0FV8~^>E{g3+d|7HJ+|I4@QcRd)^xi$V8^Vx_G`+r6+RSGlL znKt8REw4uuU$^wNG<`ek&pG#xJ(Hh0`*ZlR^+%Epor$llpY=cF-^u@z|Ed2wufXdW aBfwxkOHd_T*GCNK1O`u6KbLh*2~7Ys?Or1Q literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/bullet_arrow_down.png b/ConfigFiles/icons/bullet_arrow_down.png new file mode 100644 index 0000000000000000000000000000000000000000..9b23c06d7b4f4689dc8c9fd4e9d4d1f199fe376f GIT binary patch literal 201 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!60wlNoGJgf6SkfJR9T^zbpD<_bdI{u9mbgZg z1m~xflqVLYGB~E>C#5QQ<|d}62BjvZR2H60wE-%M_H=O!(Kw&{<9vg>5sxM-`@i?U z_W%6<>VNmY^FQu?=k0EK8(;qS{{MRQfQxhfe|^4DBSLrMi_=~IrT?G*6aRH>fZ%Fr xHSdzT`JeW`iC!n;=N{%MvhUm!=_W-^hCUIl<$=usRzPbQJYD@<);T3K0RSKzPZ9tC literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/bullet_arrow_top.png b/ConfigFiles/icons/bullet_arrow_top.png new file mode 100644 index 0000000000000000000000000000000000000000..0ce86d2b2bc8eb047ca749fff00716b15c5bd9a8 GIT binary patch literal 230 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!60wlNoGJgf6SkfJR9T^zbpD<_bdI{u9mbgZg z1m~xflqVLYGB~E>C#5QQ<|d}62BjvZR2H60wE-%s@N{tu(Kvs0!a}YF0}=J!QSUY7M7z;-RJ$7n8*6-IkwdUVS%nn(+HZ=IM>KhySVgJojLZytKsQlJks9 zg>q@PUpbdv;&|+P!{NQ{65)mBh3B(*yP58!PISKz-O48F^~6K0e}RJHfr*NaZ|Z(M akrr=d7xdAvd!`9=1B0ilpUXO@geCyB6I2-h literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/bullet_arrow_up.png b/ConfigFiles/icons/bullet_arrow_up.png new file mode 100644 index 0000000000000000000000000000000000000000..24df0f42129c291ddb3dd50c8ba2884dc23a2c43 GIT binary patch literal 201 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!60wlNoGJgf6SkfJR9T^zbpD<_bdI{u9mbgZg z1m~xflqVLYGB~E>C#5QQ<|d}62BjvZR2H60wE-%M_H=O!(Kw&{<9vg>5sxM7Y}K&+ zaVqV>2dg?$?}z`N|7UG5-|D8TLf!k;{Mi5T|C#@x_qjwjYRvdu`ttwR|Kb1QzwCco x|Ef}l>({^Sf7bts|6%{R{?h*$`OZ2jjF;IsFRaMi76-J3!PC{xWt~$(698OLQAz*+ literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/cancel.png b/ConfigFiles/icons/cancel.png new file mode 100644 index 0000000000000000000000000000000000000000..c149c2bc017d5ce5a8ae9330dd7dbd012482e0f4 GIT binary patch literal 587 zcmV-R0<`^!P)FS^-G}e*;M)Q6>s#cP zI`Y#S($G6W`W@NI5g|L-MKl0Zmu$m^(0~^Lwo5OO~d#(vPfzRLq zBa83f%q*uO+hkn-px3iWUBhj*zEtZ=#J?K1BwoS4fri4we+W?%x_!2UEjG9A57v+ddMu0 zbbp6n;=LcDNq6gD2L9C2J@8#y?*rTbgTj6Ps|^D5|MCj{`@<*H#t`wKg(3XGf2QyU zf0@G{{9_BdAC4aSKNVGeAq>dh`~N>9tN(u{wmT>x9B`-HYmvir?8JeOFVbz5u> zH|V#x^ai*A`gyzm|72hZ`OUy04pZPY)6&ahrsWHdS>_MiW?QUvoolwwWxnYbrv=9G zAbFr`rQinWXqscE(MN|a!$l4~hCDEFhknBjyGi=*G17r<_V)jl zB|4H8rP?#iOLZRs>9-bTIvMExwy4+UuxQe`XV#)U8P$NSZU2ojH2n=T)ZNqrEM0*# zI5i4uc*w#O3aL7Q*+%*5QW{Y@8K%V=Ja7ZFGq?QL&e;54D`OK7Z~U*7wgHIO|JMZJ s)OG(gKsaSB6tDTOk-Qp=;RaBG0e_Hjj63iYg#Z8m07*qoM6N<$g46R|L;wH) literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/clear_filters.png b/ConfigFiles/icons/clear_filters.png new file mode 100644 index 0000000000000000000000000000000000000000..16288fdbe5ab8a336acc2d0814f628db5b88611a GIT binary patch literal 791 zcmV+y1L*vTP)e(>1_G{PXecQXNhsZfK(Z-hSzN1&6yhQq zyXYTap*uGr5>!Iz!djZv5Go3#nJ%X7%%n_>1`V1YZ{ECl^X@&jn`EdOSAO9v&*ywN z=fGRW0a#mGQzG)Qwf3xtoDq@JBJ#e7WUaM`$a4{SBqD!_NYNPcP(;?Irlzz45Rv(0 zGC7w>Bv4AV>DF2t#{uXTk?t@Ihk_trZ*Px!y?zzA5<39Q_4oIa&1P|3mnez|f&kz5 zsn_cSL4b&mPN(VZ?PYj)7!jERPzRG*+uPgmTrNi{mBL!vt|*EK!;mP7NF)-Z(`m}( zG9uCfI5ZfmR;zkzYYW$P0Wii8h9N-^&}=q|#bRVK8Or4{rBX>7W5(Km(b3U+A~LeE zv7t9NH&IHVwWiT%;CUWeYqHral}d$DsiZ~Z{LIYEy*2<~e0==AF=nJvspwj*MkAOEzfc^{(0Zvvlz_gQcaV!%zA^DMhQ*vhwf-AD)}!c=czv{yE8izN2s|>srTN zRIdW2r>FJG%1Upu+4SS_IG*Qu$9A5*bNt;N`0NtSfwr3O#ucX!J4%0OXy_5}Nfbp4 z3=Hhs6DMi>{yofh6V5v9%sT8p-Nv}~$&rALj*bYRtE-D#F8A#3jz0eQb(O7Vl706W zJ1-n6j~!#-+8dX+xVZR*=Xu|X$ZwsUonOCq^Ky^>;>iWqIH!zjA6xk5)4S%Y{{Ss7 VZm>T!3--}$18ofm>e75iG#yxhDO4;Cz@Bi0tc<%xKTI8}ruh*+8rM^fh zZ#No^pO^g^v&?R{TNOfl2XKvZK4`bw%X0%dolaE2HH`UKx+aNYfNjN+_j}Wf}53U&DW?sTy6^)p?#H z%Q7gXAf-f_rnq|Oo-ZBjj3-H2E2usO@ak^A*q+KjN|{nhE4FQeF$U8#VIO>iqlcyS zN6(kb&MnB#yS1--{TI6z-;${o;yAt$1VIvpA(T?^eILgDJH2-2J~2HPY&M$#=iKo; z@0So_y`cIe-Twe=Eg{<^_`OLGg{LT}_Q^a+?`>S)VpkTP))ptFl5q@iI>C>S7UxPo wBlFhvX`}WyIrAUVf~*u&pJ?Fqy?*iX51-E1Y^HW0uK)l507*qoM6N<$f*&&TdjJ3c literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/cog.png b/ConfigFiles/icons/cog.png new file mode 100644 index 0000000000000000000000000000000000000000..67de2c6ccbeac17742f56cf7391e72b2bf5033ba GIT binary patch literal 512 zcmV+b0{{JqP)CQDsH?WF>AIFt zQuJ}i;w2$ZUU#3SZ6RY0Gw;kZ&ol1~2ky^QZ(fom$=jNJZt!z7w_pH~wdQ;R)Gh%BbQFCx+Nm!4SuS-vkr`vhhrX zM*>w%e+v~?m@q~ImPAgtLkR_3U<2F8LP3W5=LJ*ZN|S5p#sf4YFr$p~Q~Z*0Ngxf2 zjk#J#<7EAlhzlrV53~GF&pIzcCN_lz9@05UeoUXiK%N z#x+4o*i_c|6_Uu1+&TIho?3@y4k-#b8Y_o94zW*B3a1ne2-Y5s0uke$$|@=}OP-i= zNYZQA=>PrZu0MfSL=b8UhD_={W4IY1{b{)U)*gc45xtL%IYLY&hF;d`@GzI&7H&D# zh;z_BX$#hqh@q?AY3sJTod2%*Yd)_>YM0#q&ixGuh+PQsneK)F0000-)HU~Z@BQ7|ITsWqFPt%czwZJk^u%JZL0Ogu z7-JwwQn0tTclx3}?kvID+L{XidsxQ^&e&|W7P?hu`JbU6)Keq zD2hUaNxZkB72a$%4^2)^`UtC|A7te-nGAX1Xrjep5qO>_@7ffX%SGn`-ED7gLpU5( zk(@u5K{Og2Z)$29rKuELp-_NyIt_Job>MI~K&R7bgynLX>`sh~jA#lt3}_YQwqglZ ztJPR4mEiF3kO&v?|I7ONdO%xaZnyg`4MVH2u&{85WF^F8xkx0!oK7d7&*!07ENT-s zHZ~xYO7;1CzImGB_xm6GXq~MiVV0C|gzZGQ)-QC?rN*&h*fy7fxUu2>pgCsM)-Q?tMb$Vds z*E@*sEW?$R-d!Zlo`yI#H#gqa);3B?D6pBWXVBO67?`R6Qy3_qLZ+|_MxhlJx8`9r z{Xs@mdTouNQ0N7+J#TJqhNGh+O#w+J@OC~45~`3D2_z=L-&zrFU%dy%Qdzg0ic~cM z%s{~na19L&^isj*=4PpCtqL-e!E)J#V5X7%DWt(#}Pq3W$oGSy^Pc4j%jrk7_ z4xV5*S(C}slXQfB*Dx$m5ut)=uA6Vdoof#vmX1Pr{o_H2ueAT3P;2Ktrs3gX7h2gv zE62G1jK||?p|odbXLH|f%y4eoeRKHd`|tRw^&nXM?`u5!c)i}iTrM|2E9N*Z__gcJ lE2dmBR}@y4olxbIzJJd{=EC=vF*^VN002ovPDHLkV1lGDi4On( literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/color_swatch.png b/ConfigFiles/icons/color_swatch.png new file mode 100644 index 0000000000000000000000000000000000000000..6e6e85212b85b7ba0918570c2ebede3047596237 GIT binary patch literal 209 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmUzPnffIy#(?lOI#yL zg7ec#$`gxH85~pclTsBta}(23gHjVyDhp4h+5iLZjC;k_h{kHThqfC`(hFmxSO zSd?`bB$R({-*5T0gITA{|Fu6pn0eqpx>}JTL$UWimE@yNe}L98c)I$ztaD0e0sx43 BPNV<; literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/comment_block.png b/ConfigFiles/icons/comment_block.png new file mode 100644 index 0000000000000000000000000000000000000000..3b3ee4c4861e100109712776801fb18ffcc2710e GIT binary patch literal 210 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Gd*1#Lo5W7|NQ^|zn+bYL727b zV3ej=1M4%Umy3H6o~54M&a>-!YvLh`m&>mS%r_2_Vw2FTNch(6_)tVTYuEoyT++I zn$b9r%cFfhHe2K68PkBu*@^<$y+7xQ$wJ~;c5aBx$R=xq*41Wo zhwQus_VOgm0hughj}MhOvs#{>Vg09Y8WxjWUJY5YW zJ?&8eG!59Cz=|E%Ns@013KLWOLV)CObIIj_5{>{#k%TEAMs_GbdDV`x-iYsGH z#=Z{USAQA>NY(}X7=3{K8#;1k*-!zk~CMF9Bv_3(^PCOq;$< zN?sD2BV4j9Yl`*+fsWQD?H_4>L?~r48B=l;Spkuc)A?yA6iP)R5d;DO`2BwH_g=3D z!!XcjG|+Ch%jCP5&1Rc|$N`LEvA9yN*EyX%X^loByIQT_h>#+l_9wi@{(Z?D2RE zUDq)j4#hY2{Z&BrR!Yn$4g z^!3C0RHpz#W@n--_jThHPEAe2R834DnuV#1kUlxXv}=C^n7~&>f1RO6h@8fUuT`wRE91*{Z%LW-oO8KckjTdf s77ewwyuEar+*b)ffn+a07*qoM6N<$f>LlT?EnA( literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/database_go.png b/ConfigFiles/icons/database_go.png new file mode 100644 index 0000000000000000000000000000000000000000..61a8556c403a1b56cb7719f4916d07ed82cd55ff GIT binary patch literal 698 zcmV;r0!96aP)U4c>+hFP*|&0tGt{!YG|5fRw@-UpUxK})gOY{KjH!sGG4?RHzSe!mY<6j86&kw_%0+>rt+UvTG zPNxG!QLHl_`>TN6lhf(69Pnfg>e~`ot!6OL_K}%<0mC@>2*2;ZcEFQ4iGwF{@R*{j z7!M|qd3hZgQye2(un7;}EWl(MRHj3v{mH--l93DO%KKRTaX^3MX`58z^<+{ z6<23&!!Q{PW`ItyBW>gC_$Bnz0p8cvrP&8U;E(_Zug)QpWlpZPzmjE&ksHm>&{4WL zcWMqjtuMUYDzy&;xOM)i=ubqW(I5dCx}hU{e1gb^CAKTo5EzT#!}bO?zL#36j`?8+ z3*~b8c`}*w$6_%IbOkHrWx4~^auW|u<6?Xs@2VxNZ5G?Ij>|hs<|oJSYs}?xlO%MH zkQM~t1b+*>9q#P0c*i_HG3Qv{e6_1E^9qr_9C}QDj%+r2jL4@6j4t)_BWY1InA104 gM*QcJxn<}50%n)c1HutrKL7v#07*qoM6N<$f)5Qpt^fc4 literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/database_link.png b/ConfigFiles/icons/database_link.png new file mode 100644 index 0000000000000000000000000000000000000000..4c8204af156dcaa93fb80143717c8894a586774f GIT binary patch literal 679 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 literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/document-open.png b/ConfigFiles/icons/document-open.png new file mode 100644 index 0000000000000000000000000000000000000000..ab940462fd45f9bf1cc6068fe7947ebffdf2aba0 GIT binary patch literal 672 zcmV;R0$=@!P)(v5I2X42Kx^LBZUY}D`;qn5FxciLM_ej_ug~QY53}!mSE3t?zxwHpXWK} z-YY{xLmWiP&4!4S?k*w%Kv5JTBDA%&eg3uGxLj4$`u_gV)z$UX-EZzMEG>UI@$AWS zilRV7*e4MYCSOdRpPrujfO8S}0T9e=aBy(2)6B>@GdBL1m6a8m%_acuPRe$zP^sC?ptQ@-QuCrdb+y-7#+PUpcUVtdz^5edX(lyb1*!_e$Blc8obQwH#$sup8JB=Bvc!Ow=G z*-6b@?P)Q3Dah>_TagQ-m$d(v0_V(!m)T)O474U6d~*>kR~*)xB_j-*@iEJ@Ahu z%5AitAFf!-oAbG^qQ)(`G8mfwRB7l(wXFuX>x$Ys%Ui=jJ-F)K#hDvoWjVU4O7+Cs zFCnDlZL-(QJGo(5rn_o5bQZJu0#XJL2;!}M7~y>#z5-5Fidt(3Ei7;*?^Dc9Q_N2P zm^7em2tVgqYY5HAv+g{>T{ZZaUL+K*C;R0COfSF z>~WSU%)F$jdt3lWU+2siYQsj4w2_^7O<`u1#-H$x0=auV{0;7pKKk=Ncs3AIiHjoy z!z;ed+XO}~n`Sho&mCwPWMTFxacliIIF`Bg3mWL~gfxI+(49+k-es3w!BldRbiTyi zgUu8sQhZ-nBys(fP`#*~^71k;WPookZelf5qS7|$+oL$|KT{nU_1}eaE!C>;{7ItL z3DyYkE_H{(lFg~XDN)ukbsn!#x|AGitRfOJ(Ccgug=cS+DiZc93CECXsvgHAW);x2(IfQiXtebP%IWP91j0UUY_xHHJiFKFzwOZx*d>%QD1FbbY&x@whsabi1 zN~LlQU{6Z9=wR>Y=;-^(fNVA^0bqT79hPN%0f5?yq c=Rz>% literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/folder.png b/ConfigFiles/icons/folder.png new file mode 100644 index 0000000000000000000000000000000000000000..784e8fa48234f4f64b6922a6758f254ee0ca08ec GIT binary patch literal 537 zcmV+!0_OdRP)x(K@^6+>g^d@v4;gkbWsEoXE%32*i1tcpTNXd5CcIl)ECgqz|2rE6EW}s7R?kl za1q`0GCkMruC6-2LANtwVlsgzsp4?{@7$`KBv!G66>Vie3h?3OmEEkjwdLG0PgLVi z`!N((f$A@n17Ldj#`};0I3@iHJ5M{#IZz|UIYRm4(!uV7eYIYIwQf&}_2J~}>pQ^n z6o8--^T(=hkBNQ_k{-_GWE;FMW7!p}f{NG3nHZ{D5<3d8&tLh%a4AqqnjMkr3m&fkMdECD3N5}Unig5wy40;>lo4j~k+e}v)` zR6)J8Mk*u=SpB`p6o)7j?S0T@9?bz#m@l>gc*zk__|*!FMcHwP!gwLJvS~9c0px8E zW>`eEHOekrZG3#;v?6H6fhbs1c-xE%qmL1FD6Pgsp z%Q7MO@KoovHHK8U1J?_FIzK;SjKg2b`K_PgZHE@VJXO=*(cIEX$#{4s+#sCnPFUw_rU#+IR6UWkSw_(UZ&g zlAKBNq7_M($idCjGh@|$KtL56ha|q=$XgYMs^AIOw1Qr{*Wn)N-{9ma}x2(<~`9Go1=*>YR!KZvrBS zCd!u}@M0og%Ev@_;Z?Kk>Wwv=%h_57zmt2<_1msz_niYE=YRNPpd%02TK9oK1z z>ooPno}v^sikz_|1XHFx_L%~;ljh7i(jiay5F0x*+(9aXXFCl?AdQj5XlQ65%sEv+ ztfe?|YcjPN*@yYtE~ImQh{l|#A6Z8iu>pf43Rj52CzU_dMQm|S2xR62YjQOn+z8WH zaK=!}ggOZi{4pB7SQ=xC0n|vXP_Bkx_a)FeNd}w8U97BNbSWxa^QW-li9BZ#M1!_xE*?wzt^GcoeoL*JGLSe_+l-JT2#2tz!z&^ z_s5anq&^nBklIMwRvcoP3%qs%%Ea?1c{_*V*Xj&~uLu-2Dp1fUN4<0zMo$EH>*U83 zm_9;Vt%-bE{_J_!If!1y=c+`QVZ>0_BPy z+%^pgnv`f8H)Z%0&Tp8&u*MCIC4igNW5MeWM_DHpDNi)Zxz|9XboOnitwFq$ETN=X zj-tkCJnz**Y4k#6_Ty^B=hWo~L!47r`HoP=x&3T1)JLr2t2+#fHP)9Rl#FaScf1rbdiwsJlF($-D2a$MB1QH?*P$(@5T4@;&OA53{ z62x9;g=MzM@3B}Z6q2JnuH-? zUBh=^5nso`tIMpW;}SD*?>znX))|eYdi7(c&C5YW8_t?tIU z>Ny7&^Pebhjth`srpO|asbD=?gpU+WKXx%hg}DA%|J1=w1E3bQW2brAk)glQS%iL- z`SP4IjX^57**EKJK0N;yU_Z*GguxzUVD)Dq(FOHK%^eAtSc;pSVFoq==$r8wjtx+n z;uq8_iQsA|i!@V3bf!VptWTH>59QQ$XGs&d#Zun48g&^nWN z^4`U@k2?PS6UX#XYTlj3cBYJ6iA9-|t1JhG+#TUO+}j1X$SI>}h@{JnYgEm?zE + + database_add.png + database_go.png + database_refresh.png + database_save.png + table_add.png + table_delete.png + table_edit.png + tag_blue_add.png + tag_blue_delete.png + page_edit.png + page_delete.png + page_add.png + page_green.png + table.png + tag_blue.png + view-refresh.png + picture_delete.png + picture.png + picture_add.png + script.png + script_add.png + script_delete.png + wrench.png + help.png + tab_add.png + resultset_next.png + page_save.png + page_white_database.png + plugin_add.png + plugin_delete.png + table_save.png + resultset_last.png + layout_sidebar.png + bullet_arrow_down.png + bullet_arrow_up.png + sqlitebrowser.png + internet-web-browser.png + package.png + package_go.png + page_key.png + key.png + document-open.png + chart_curve.png + cog.png + clear_filters.png + page_copy.png + resultset_previous.png + resultset_first.png + picture_edit.png + script_edit.png + tag_blue_edit.png + folder.png + database.png + cog_go.png + page_paste.png + folder_user.png + server_go.png + page_find.png + cross.png + page_white_copy.png + page_copy_sql.png + text_replace.png + picture_save.png + application_side_list.png + database_link.png + text_indent.png + printer.png + package_save.png + cancel.png + comment_block.png + hourglass.png + table_row_delete.png + table_row_insert.png + textfield_delete.png + filter.png + tab.png + package_rename.png + page_foreign_key.png + save_all.png + page_white_text.png + color_swatch.png + edit_cond_formats.png + clear_sorting.png + bullet_arrow_bottom.png + bullet_arrow_top.png + text_bold.png + text_italic.png + text_underline.png + text_align_center.png + text_align_justify.png + text_align_left.png + text_align_right.png + page_paintbrush.png + text_paintbrush.png + style.png + style_edit.png + style_delete.png + style_add.png + application_link.png + document-link.png + application_go.png + server_add.png + + diff --git a/ConfigFiles/icons/internet-web-browser.png b/ConfigFiles/icons/internet-web-browser.png new file mode 100644 index 0000000000000000000000000000000000000000..ac5957ad62d73408cd754a27453b4ce601a2b042 GIT binary patch literal 928 zcmV;R17G}!P)Mh53JODVWnpw>WFU8GbZ8({Xk{Qr zNlj3Y*^6%g00QhuL_t(I%dL}LXj^3*hoASH_nc#sG-;dWqm6CW(4s83b+X9Bt0|~3 z6mOI%-9=?M5O0K`ptn*G#rs`|6-PnD>5WW=H?uIcvzCo^E3WHYKeL=HA5C(SbCR6b z3)#f&*5~^FdoKR`eu4)${@&~<;4NLs{R%AQ`wgX7&~)wW+|1M$58jLW!S}zMGrL#P4P+<|J^kR=q!LjUR<=1mzj7BLp1miL0MTgZr{|x^iYGDyl!|!#OL6OV`f;PXlOge)!c#$#{SGXl@)s^XbSCXaYk@OhXc|B#CG* zL-81~z96~mqojuij=b@~*=YbR90{B}oE@c7E^@~W5Fg%$Qs65I} literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/key.png b/ConfigFiles/icons/key.png new file mode 100644 index 0000000000000000000000000000000000000000..4ec1a928140311ff30a0a9120e958096c77f446e GIT binary patch literal 612 zcmV-q0-ODbP)nmX^MrbE*gmZ6|p*GkKoxa?X?hD9M+@sRvFH{EqYA??u6x z2pu{uGnrwz*>rh zfvUA@7b#acN?M*mBG3rQV?e^+0R5m3YXWyRZL5Bt@3vAw{9JaEW$}=f4bXO52yBH{ z;G~ZN|GLn>k~{On3Swd-Sy(gFkOdyw-RP%&exwl01RJRp))TI*SsngruhZksQ*NT%!X?K00008-A}AUJ z9n=u2d+#~lZ^M1x`+D&$6(2a9;XLPazR&kLPq58Rq6P3`{qr&~0Xzd9gN+HuWLY2! zAPFT-`&$0`@c!*5$h@3=6tK5TQ^(M5v$(QKVE?W+9X! z*o}&~6c?_FreF)9NJB7b5Nbn{G0n4+%uJhR9(V5R|NFTpb|HgjefT!tIhLx@DR+N) zV+fHiR5Yt19}k|KnCsND{tH-`IMJ)3AE?OtyZ4>Un|6(d%h#JK`i&a7^xW9>`yBy` zS4SOHeOpC7$?hH5-#7Rswiue_8Ju*2N@$58=a#2OTA3png`w3v->gWif7t%e$ z$NLVS!tFT#8WL|Wa&K~+{%4P2cRfwesYV1_!F=3OaRVHl(>=`%&{x*s30c}#CNE@&;ItrAv!f!)Oy$Q9t$uS=(sD$-J{T*^(8Eez1E-l3}} zPrfHZ1`qsIFe&gipuL8-IZbo2Yg{lFGKs?ZZWcOaOdk*3`5T;$?AjbG1#`B510Er^h2)2r3Y{!8_2Gj=$KzuN5 zaErtW8W_Y2iJJjY)5pmTVJoPJYpanPOEuYHclM^C1F>${hFRpdi8a<2H|Xudf78bm(zwJ9`K%6I?q*Ua~ fW9JvIbn5*B+_J)rUMBs>00000NkvXXu0mjfH&TkY literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/package_go.png b/ConfigFiles/icons/package_go.png new file mode 100644 index 0000000000000000000000000000000000000000..aace63ad6f91537268eb6e9bf328743da7c631c6 GIT binary patch literal 898 zcmV-|1AY97P)yqPWur#3F*- zi1-H*6GJgONgz~1E;+_Oe@~@VF-1Iy-=*@ zV9T!Kgk#%59lVt}Zj7B_)9wTKYBy6YEwPxKqOdeGuEw0%cVhe}Yj*hPSBMNYZ5yz{ z4STT*%d9TVV4NauDND$z(%QKb>=kMr>ckh0lFuesOioc=Nq^^8BQNYYbk1@M%M`O? zh?6H&UZR}Ol3%#RzJX5(MAktmg_e?7`2>w^4^!6w)4$9==U0)EV$}u1A)*bPRF?jv zHdar4EJB1b*f+rh!M+8R159x8%Qjd0I{0j+|69pUC)f(>!P(OTs8c~;XuVtXzfO>s`m zrjW9YI38*Yel_NvP&FVfNEx)sn-kxIx;WzEcpe*LJBYXLr(llS6I0o+c9O z0L_4N7u$0%Dx~ks;fjYRF0OIOR}1uPI!MtibK=J3pihiBTv)jD>R%(Llj(_XFa#mG z6Wg=#j7Q7*PFmM*W@B9!ftm;#qU}sCT;|&KtBZ%Fe#3()Pk+9@Sw&8%k=NQD>92qN zkFT*E2S*%i&!MYvH;;DpF?sU}zb4Mlls)au3~BX$XZr12Z?_sbts>8Fec~0Xl1q`9 zxyH%T#p<5UCqrY2(J4oGEHk9ens22BN3dYXATM07*qoM6N<$g3xBAZ~y=R literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/package_rename.png b/ConfigFiles/icons/package_rename.png new file mode 100644 index 0000000000000000000000000000000000000000..41bf2be9eb6df3b2e3d8da3471787b49db171e80 GIT binary patch literal 637 zcmV-@0)qXCP)+3jgIcLJ76PfQOYK1@``C-8grGyNc}isZIJJkU zmcUbjm%V#3vPXK;rOvpk740^&ZZpr*p_IyTlYa0X-iJTG_jz7;1UBLA z({qg=y2r#-Oms7N>G_yfPW)ZapPjE|;u}oVzEina?b^%uH2b2!#823zjHhSB?{u(6*Zwq z-NDPKtT_O13C`ztm>Ei7U+@H^ZTqqMEr+E{8u{Fm#;%(PUmG0|nx-+zkV>VXC<+Y2 zKr9y97|=A09mgqq;_*F>E?BM?FW%n;(|Z~{QGy$P0OZQ7yy`z27h3lI!R zBKTziE1$!^_(LFk06>r=K$3oSvQ>cqP_nWR035+62|$3iE_mG0g#SU9rdjqGRaFrV zhoS2_R8`$57*9n4Omu}^>e`{4Y1n(D89vz$SQ&6}8B5dsaBUgecb|o07qKuof&9w& z91}kRQQ!JErF)OpGEpbHbiMxQh3fiHGw{8LuOCOi4#SvygOv}%1t#icqU5Q&GYg)} zG};qtWS3MXYE@2O6?S$Oi&GPD?D>8sPDJj!A1k|!YYaaKMwzG^L;)tcfAUslz$^Cy X0`@OY3MLOF00000NkvXXu0mjfq4E`> literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/package_save.png b/ConfigFiles/icons/package_save.png new file mode 100644 index 0000000000000000000000000000000000000000..35eb7632bacda95fcf0dbea9242d79478d9767ec GIT binary patch literal 888 zcmV-;1Bd*HP)B1zp*N zAK;>02vrJoqoRTfOQ9fQZ3MA|*n)ClX>&roAnuEbB`Xc*z9CnNijjCoikWQ5E@Q``+`l z8wOJ&!@CfDE7{V2Z^vCvlWN%n8WFGl%5S4bxUFv|PWpDjYKi5UNh+mFKdH4xcI+Sj z+DwfMe}>4Oww~Q4)w+eCvceywOW0_gdUc7U3E9}y3&ARhOczcnOL=LU<(WzR)ypSb zwesSfLm!xWWrg*nQ6wsp^h@~VCCUrGGqC$OUSktf=g{g5raaAt{8pM<;li2OXI&Mk zDyF$1l_cBRMXmG;>6RSt7WR=%!^u-IEg8#|VjIS3Ba_~VsA09-&Hcgoz*P|tz%<}B zZ^BDv35pZc{D21sdl??caQeqZ-hN^8Kic|yw8Yu*cQTGzK>@I!A-GMX+PC9}b*@!n z0KS`8z99@^D2Gs5i!erT)Y`u`YC-BCK4^&J7!nF~E4+7L01?HCl0ZniLKudWs}Zh> zG&-IKG(vn8Bm@aac@9BX=kUon90RcxdBd?V%eseIt?TMU~2T0%{)cEwm%e1At zFgTR_1@_%@42Kkc7~x*O?vDNAMc~cxBG67=JY6c|L1R-#TR>fC$3^Y%QEnYO1xHsf)+GU`3F<{J0kR(;pbF3)zyg$H+idfnl-wl5Wkh!vUH z4Z32YP=l_}1rZd1W_D&^$A($A+&a0e&P?xx0!ctY2}*<#p+qPVN*B(YzvAWXa*%bzq z7Fz41LKILT(GWohi9|LgIzSZBhb*Zf6R6O}WYQ4GOi&71s9lmll0x6;8&ILOl$j(c z0Z1T(6Tg09{?wd{moFHNN6PS?$|e>1MxSJ(0Z7o2)J-Zv|>acY@f`(Y@g7GwsEj5NLQo+q|HsxQ5}XSX_d@*^A9ZT9=A{W~j+$GyI1 zc4oqTHx@1FlRjw4XWyPN5i2~l_F3@aBk!0yu^aoRDvXy}8@HCjUVQUsuSH4$T5|r< zzZOn^?Wfa6y|Q($Hx4{ws+)wX6-HP4zo!S?4KJ@7PG@G3G{CjXs(p*kIrj6rHs7_y z+=<-=Q62s9FuWa^X~WKgJIAAZJR&XBB002ovPDHLkV1jCMPILeO literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/page_copy.png b/ConfigFiles/icons/page_copy.png new file mode 100644 index 0000000000000000000000000000000000000000..195dc6d6c365d298e466026b37c1959d96119ea7 GIT binary patch literal 663 zcmV;I0%-k-P)^@R5;6Z z(>-WZK@^7J_sq=QY_e{46@P+~LNG}sRzZsxQHvCsN*h5ir6^j7pq-$xu$N#V1gx}9 zClV7;5)7zih-s3DB)G=7|99>ji@So7-P24n=VQ(@GctDX!^_@$bj%oviY6e4Dh;od zooe%Wvs8LEKQ&&bL&@bwi=STIAI@!-gB2jC5+?y?VR~VkrNxam-`6*8&po|RZ5LpS zNKdJ%c4bTX`XjKsnecf%W>1%6WT?pKNdLLq{=(f(Col?P1+oq@R>)W(n=x!|*BIIh z6DJGw_w`)u6yN|vAhMteYK5#b%r5^v+VCFl1IGssaclZZMS{vs-LJ2$)n7DAr6==K z<29#%AXsBsDoO}SBaXR#_Ap!JKx)(1)3O2pj0_dYWz5By*X74fRT01$Fk%P_RzOMDtV?GU{nsYq#K8iy zb6qzLYDj`_f5$BwC*WE(t0m#xYJ*=jC2|HQYHh=pf#QG7oowi`h!L!{DB$8|qY{~X zu8@sU1tWq;n$XThR0%;45mdqXM892|{CJ@0DS*}>?ami06Q_^tvM~Y3K(_-`#m!8f z8f!QIrH4y#61;0Ym0cCoLl8{IPombPHtnn7%SbTdI&G-d>ZQo!_wBMF9nzX!g8HVY xYTJPGciz9XMh3w2fmZ(7v{)r*QZD48?mrio{~IaoqYQb8gJ!3$Mw+U>R#t#)^2FEiiFIJ1dFSZ8K3 zneUtP|IYcHb6Dk_?M=B}UkL{v;W&;31~LZIGIT8+zm^;_FWugGGv%&kGgf`S`hDY? zM*mM^P-5h0J2r$RATtS%I-2pe^W)RrX#bw39XAr$1UP5h7c*m0BpE>uJzaVi+G1az zDn85|Hx~;^$}0kSYHc=Wca1x67>PjP3S{nqN0Q-{6%1$tD9V|Dl@r&ZC~xe>{|U(M zhLJYdo9A!6p@N_lE)AQCuV|wv49K60S5iATrH?&B%)_a}UoFz6% zseFC;o_pu+6(~N%>1gZp%$YyOIDfQZMEjR^wZu0SElp3ccWVurFFo?qY}xNwIC;@X zOGz)*?8K}Ii^C6ON&%X#@ro4{$-=_XmhCu*cK3QVAKQTCrK`~u@5alIFQA!me2ukX z-q`XC8&y_UJ<(cDb1EH9o;mrm{&0P;@zjNUGi@@T-){?HVQ6p&xvC$1k$!N_|6!x% z_;+(g0LK>>i-xNWKl-A5vJisBhhyBaY&>j!i2mqzgeQlozyzAuM2#MN7<>m!Xpjjw zm0OYyRPPT7#fD)RERYwlm#kcxxP0Pj?zEyAP=hK7Oah&R)3tS!u!E{2yFhLLMK7Ca zL$AMZ7P_8bIjYxjPujMrQXe;e6oy`D`1JV`dcH+){QL=6j(}wgq^vX;3A$pkaI9$U z<3po_ZRR^b((Pn=!|(B;uCflTuUiou8OnsqAyMOSfO^(V$K@wqS$A=n+Y5hNRdcmz z3rjAWT}Cl+*mV7Aj-YSiM{?PX*vKOJ-x-2PrO01mnNG|mkw_&5xlak@T2dxgw_5J7 zWp47~iUf+#$P8~bfz7wJwo>h<5Uer8ME}jk{g>95ZCP5t8&H1%e*`~Eqa4q&00000 LNkvXXu0mjfjK6$i literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/page_delete.png b/ConfigFiles/icons/page_delete.png new file mode 100644 index 0000000000000000000000000000000000000000..3141467c678d2b53f79deb22086a9cb3a576a08d GIT binary patch literal 740 zcmVP z|1Ep}yDQG09bP~E^Dk?@JiKQJ z6-pO(3~IOP)IYisL6D6;oAEd;E%zR}{U$rMRNuD6nQV7nesKS>)yLo7JuDCrD>Abi zbj3uW23?^GA}9jQ{M^8v?ejL?HaT7AX5WPZNkBmfN`w-jL?{tT7ykZt$%Yln?p_m~ z-?>&d(LD(jAd}h=LPltPQbO$*Wbyl@G-_k5jXbb#qffHY03>M1jfEqoPJQ6Mr=Byp=^jfzePZV1 zLjCmNi31hdIJHa%e;5g=1(`u3BRzfeExY%=VCu{loOr{`%2hUR*x>tL^W_TTaj);0 zpPR6CUD1+0>4TQ6zVfH3TQ;%l6#(_%yspK@3gcmG#Q4!WCPyLU93nMKk7E2pcA=l45({2jNho>sdF*A~bA zxX?-cp~y_z_kFf+yqu3m#QiB}03?Z&9vvR5TNgj<)($Vm)xq5G>|o2sFMag&6aNF+ WAT1?sQBYt20000iHtsh1EzPArg^Q zIZrOk#rNsfjaSbMAL;<4h;Z=jvu8dzyz8N&Nb7=z03ZUw?9z%8KQEa6yM5=kUnka& z3?FJk2}L7q>na=T#;<7U*P91xfF`;`6%pVgWgRy0?1ZryL@%z52=-!fGXWGEn4M351L4<+7eDgwo|moqXT+s1&Kmn>-uQQ8mL7XY)w5Zk*(g+<3Y3tmkR!bL zOUKaUtj_pX26sH+=Iorwu}MGd`_%O-_sS}8VpG#fJA)Fcs#ezwtZf?q?Ac70mDv`rVs{$od?VPKeqf<-kUjNtS6ecB*mq<&M97K^6IVsDO zt2$Ru!b+>2S<}_H>$RcInusU_8PMNdf(W{sNlJ3FkrwMJPeBPO#d}Y^a{9TH(#{Y) l0D?dWAV4eUJX#h`!2gmISk&ZKd4B)^002ovPDHLkV1g&sd|Lnj literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/page_find.png b/ConfigFiles/icons/page_find.png new file mode 100644 index 0000000000000000000000000000000000000000..2f193889f7ea091c292acdd684c595dcb206b5c4 GIT binary patch literal 879 zcmV-#1CacQP)@+1&aazfGU7ezSm^v zpACwO+tu0su66!(dT=`e05DeeCnCFJW(8|RKtKa{4LGONnx2V85A4m%PEQ?MEtR-esdM$pB-`H542D0)N2zSC6Imf)4L8?>%ZrW+H>xCKi$unm zvGZq-*Q%Aahx;C*=l+K%-?>XB)6TB$-L$r*`RUvlA`xP1NG2?)ge8@TQ4EN|Jks0u zcDg;oFC#-#R`YbWB`D?Q`1#y7l$LXhjSLf8AvQuB84}i#j0^!#g{VE#(K7h@5pFHy zSenl=@XBEdxp`h2Ji>CR%=qXJ7!e|?paKet-~;#ok#jETyeB(5&Bkhp;!+;51~G=) zH?L7xmDUu_h+a$+xuWom;AWW!mS$%%+436Rjc@}y?l1134kgD0AOf$OmjOR zstUlshZk$ZC!bAyIg{Y29z#&@3SJ;6D4+_eFume9^#TmMccC5u0J!ZCTnO6m$lnD| z5JeFHf`Xs~1vP>RLKI1GKDY<~pjr2&bi(fX;6Nj-ss@Ds0CcoO0H{JsEQku7X{9v}TBwioCtAe_YGX`Fn?y~UynF814sQCY3-+EISbMFr zmH_O1<;0=3O8S%v13(!NSl%XJkr3m=+!Z?}f6cx$diX$-WeC8duZ@2D;d2AqRb`EV z!)U<_z_|QR#_*Xr{`_s}+V>YOcGM3aSOV|>>SSBVyEWr8I2D27D7i&KFs^4g4|T7m zy47DrRE`O3=o z0kjZUSW!R)ROJ8TgsH37*|aKSM~CqA?ptt)d!l9GhF9-E5KM%a8>rwNluY^giqVXL z7@ItBM~Zk2Hx(GnOi%IMu}^sStyd8^KY9-pL98H2R7kv1a*ot1v6T+!$jHc(Tf_NMZ*LFvdYv>)X)kAd@$m7Ff;b; z>Eo-nz3^Y@;s-KcJSc9K5m`g z#?HN$}qsc!p19o TDeYh%00000NkvXXu0mjfp>d2S literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/page_green.png b/ConfigFiles/icons/page_green.png new file mode 100644 index 0000000000000000000000000000000000000000..de8e003f9fb8752c09e7f3655d5d8664b5c62fc3 GIT binary patch literal 621 zcmV-z0+RiSP)QqUjAtB;_Vvt6}AS_5YgM`Uqu`yva+H8^=4U$e4gHb}u zAQ2N{V3A%pO|?Pv?tb6z=jC}SiRa$G^v3q?*6XcYz$p|cq{uLj@#~Fi`J(>5{@&&N zy%T^+;>8cXx%|o77anP?&W1?1A(>-T49z9pyeCl@7YI+Si zKti7=B~``}TImz(G{0PnlQA3P#MAd}sorMjkP!50B7$nAkU^%#nl{Q9lW0@}9fE-> zN(q7tRuiC_T1r|BBtVBTlQ2+70$Rf;eF`Z;lx46Cpu-rEgb)EBKq(b^W8l<^We(`D z43?0=01z<3G6+UUv6`CsWCk6^93!#+<;ws7007{zS3k2k9-zZKFO~(k`>s0y006+1 zgF_jyIhsL-`FMf~JL~C=cV75(CrJ|q;MVO961G=O zm9d)YpJg5g(4i_HKL75eSE}mq$Y}r}hyVdcV~p>6a}oXr80q`oj%+s700000NkvXX Hu0mjfPs|!l literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/page_key.png b/ConfigFiles/icons/page_key.png new file mode 100644 index 0000000000000000000000000000000000000000..d6626cb09eb11a298b90a8a27b0d8eab41f49a82 GIT binary patch literal 801 zcmV++1K#|JP)$lC4gU2-`f*>nhR-;k6IP7e>YO!0^w)WK%3$w02v-#>5Ep64PCP| zJihT#O|N+nT7XR2h7dAB?UEAOhJF^mol1i`QtQB`HSY}RE7=r! z)zaVIHr5?>v2Gz&fdYw&2ug$!p+txby(aWZ7(4QT)l2`jX7eMQ{>)lG6ev(fWKxmH zOr%mM5$6B%u~qGtCf40#`mbGj3s!n+^%wnJ&#rl>g<4Z)lB5J6f!?|AP275)Zswr* z%T}4~{;_(?waU!#?JabbF3Cy-kf0{R{z}6$e=5yMQKt3BPcl2>zoTPMqMwF;3!_n|>sT?~bK_-2O_m+o>GJ6h zt=+g$4n7y%1qVJI7*5Yw(hqM=JusY{d}*?U(Oj*gT655eZ>Ksn(qrd7v3}DX1}C>` z+X+8@+4-pVq_fxG zlU}~Ye!0+%>J+pPk+0wV{GM$QaYM?5ux)w2z59=S&H2+K?;gH$bZGzL&g5>G ft+noNiyiPkP9r@8gT|RZ00000NkvXXu0mjfuqTIu literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/page_paintbrush.png b/ConfigFiles/icons/page_paintbrush.png new file mode 100644 index 0000000000000000000000000000000000000000..246a2f0b426faa0c7f5ba009e32b1deaf88d1288 GIT binary patch literal 813 zcmV+|1JeA7P)otxGRZMDZ!_a~nK|b_-`n%VosaL{KDuPV10`(1LIen8kX2Xff$3BE zah#djvFGJ&eE^89Pk*-O^+&d>FC~^GjRYVQ(uuPJyS|-v?9lxA-+tM5>1Qu*n+Ir1 z6KhA>X4$XDH6?-|E5oe1E?pQ5-M;2xw_ex!x}I2+b=}mPFW$U%^;o(Zg*LP!K^1kP%8ynsD^= z1y^6xD1#GLjO{VLdh@0GKY7;d$+NGukV)GRLPn^=q=dF%B#XaJrNP`0E6=}e&Gj3d zKJbQre*WXt!60_DnIzgMQc6S#fvjXxsE1v7;T;njHkdy2miIqAS(nX~o%cO+q+b#h z5tIleLWvL=dQE8OC#{%y*Tnku&K`Tuub&_ELI0t_ea{@3f>Jv&sYqld(%}3_GY3Dm z;O{3*Y?v^A`a|D;^qrM=ykI)U6QHd%WhO~VF!SGjGn0GOZrc3mGZudNl9{Q#X5&-F zuGwVReFLBjE5jr!!^-5*L%!I%PkYH#Hs5rMrEBl^)9)9XTD;xjHFxVZMc3~Dw6#k$ z(-S}RE$bgMHv6Z`mS5|u$$78sp4G-8b@lVkl`HtEv+MGn!F&bKcHPi$$oP_;=BrPf z$(~b3&p3CsuQxhoV$%jIR;`lB-s7FDX)xCTXuJ7ZyIQk96uIR=HBt%-P?N*bp`)EF zq14c}QM+O70NTOa@V~_)&GMZ$^cQDlkyOCa(H3Mf+6xhCuZh`VSN{cQBl5Ys9{cp( rh`2H3A^=GuC6HjQ*7|*0>;m{7QlnX3z3MSD00000NkvXXu0mjfR5FYo literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/page_paste.png b/ConfigFiles/icons/page_paste.png new file mode 100644 index 0000000000000000000000000000000000000000..968f073fdddc1cc0f0800b1ac4001cd9a55f053d GIT binary patch literal 703 zcmV;w0zmzVP)AVs!l4K}n~L(tL`6d4Up4iSWnZ3Qg~4n+_J zDGk-qQdogO5JUtO-d5pRp7Nd7_r1^a|M&Zq%mn9Oe((|e0sw%Ur!K7T1pojj=U#f? zQM`qbQrM^DPkwa?DK_be^~z<~RgSMIa<`xP_4P7gg2jCwJ{9^k!fsU=#Ti|%I3p;>90Qd+7|~0h&mIklA#nb>ATL2+v$&u)OBgB z;nsHb)I&QRKeX40H~~cIZxCd}5C} z=79lXoXK%6YlyLtsV$~bSm?Upq|DJh#{|*a7XMm`4QJWZ>s6nL2R1|&J z0VPEwJ9?!n`o5PKAjc->P1Gi8BY*%!5&FVp=#)$mMJYul1Jton}gujiUf??eOy!x&!tsjxy;=Q3_DdcXx=a^OBhW0N~`A@4xB0a*%F? l+@c^sQA%W+?pa#c`9H5UNfS6T{e=Jk002ovPDHLkV1grvM=byV literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/page_save.png b/ConfigFiles/icons/page_save.png new file mode 100644 index 0000000000000000000000000000000000000000..caea546af549a0302848f4f478c5bd4aae15bc01 GIT binary patch literal 774 zcmV+h1Nr=kP)SV2@MRD}JQ4(c%G%=dG@_vxH?>gcH#*Ue2HC}9sapf8X?R$Z;XEnm&g zW99mh)5jNw008mK8)r^`_{yH0rNn%u1|SpC(tjf#om=+r#lh+?Kb>DVb9`|C0Bvbv zN3U(>f4-tAC1hosRoA7p(b(hL*V}(j>ug<`&U)|l$6o$)!>PBQ9RQSwn9asj2p*|xhU*R^vq?*Twb0t!lm5}`yW5lRy-U0ZYK?8to!;o!r!XeOE$ z0HB3T+6EEoI4PlR=wonwqJ+TvCoWh&$?CAPVYcU= zD{DS0?AkOtb@-hh^ZLq~FMjxYf19X?pa_YqtgZGvv2TaxcF#KT?O%=_*a-kW_;N|D zakkWsOe!)HsT5WRBiC+p;N-c>0Qwy(1D2MDBC595oXSiR07)sKNk-%9*rDBOO^HUD zZW#;)R&EZpqha<(HK$(tZYU#V29<@0qCXgU{gXeGpc_|pTqQD-WO|}%yKZbeX7k*H z2W~CK$v8NBAq~czrc5A(v51g0Wma7`G8}f=ZcuAiYYxZan@gP(;Ku66M6?bquGiHe z3Q0ya)%Lvk@kLixZfZyU@#UFbv+>pYhcj8TRKSr_sWG8i^X~UA**LvbD3(_Lba3xm ziYcpup*A9qJ$?AA=Og05lndxfwr`!C+O~h|B~4 z01q8H`StcY);%&mId7_+)76ovRpeNWRp&4M?#jx@|E-)x%P*A6t^fc407*qoM6N<$ Ef@ddc(f|Me literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/page_white_copy.png b/ConfigFiles/icons/page_white_copy.png new file mode 100644 index 0000000000000000000000000000000000000000..a9f31a278e17993d8d4e13beac2f9d5f7b42d08f GIT binary patch literal 309 zcmV-50m}Y~P)>s`J(VpX#y^kqzQ;#=2x({YMw9Q&ndHT&`BD$#%Ql?{+)-OuSA`r}MWJ zVg+2Gc(GW}a=BERPNy^;kEz$|38dTYlFQ{%5S!g@|8f8D_!Nu9_Ni2glF1}xG8xi! zorc39&F6EPOeWOt_XS`W2H_Bo$MXugy}SEctJQj=(TLXTHL(jRXfzs>NF=0SHk;94 zF!&HjdZNX(3U3;LY64IMX__Xv%_wjLC!J2`0Jw?X=zPK$C$`&dYPDKaC={e16bcE@ zgun^<0k;ak*=xLE)@(Lqu~MmsFoMCLY&0Qog`NO(h@kyxaA%EbwJLy8sU*Vi`~52K zX0wrqW;_LmMq@evX4iAM9Od(Q0eHP$1%L|xAh@vrqB`HPQLon}f3aAka=9!3hr=O- z5F9`#J_7Jhah=U(4RjaRhkS4Xkk98kDz-`i!r|~~AQ1TFcDw(@<8g{aBE)l)PNxNE zI(RPyc>9e{@WGSMU%i7*v{!&P$WLz25)0oc=Dl-yy%xYZAm4b-rttL7UjR#%`#j_F R;_mC#5QQ<|d}62BjvZR2H60wE-%6;pyTSA|c6o&@eC9QG)Hj&ExYL zO&oVL^)+cM^qd@ApywS>pwx0H@RDN}hq;7mU-SKczYQ-hnrr=;iDAQMZQ+*g=YOM= z!QlMQEn7FbaD->uKAYgo_j9)W&$$zS*W9}m(ey0q$&7l-XEWO0Y(9M=SnhLbwy;d>@~SY$Ku*0xPvIOQeV1x7u_z-2-X>_74(yfh7C znXL|3GZ+d2`3re2hs?MKQ2rnAt>LM%-F zK|rtwgcU)}7x~z1Hrcs5bH*ZO$!>xO8K#?==bZPQ_ecnV>#P`H`QzGaRhd62G_&rC zTLU$c7_x*nFP_dW#Q+*);mMHE?j)HexK784D4x9l_tfpz2$@1y}9rkF+ zI+J5NMWeZyObc!d+rUc=>D+uOdAOg#%+Ej6h+wn5^xPmVVH*Eu446Y0A_@ zo$rlds-+sL10DbwHdg4=I}KDOKH)5`dDSD>$*Y+lYhxmAcGuF-%MWsHUJr4IgaCsM{ig0 zSSBT=s4DwP*iI5?#me_ElhaWObR8DO+&EW-R6_iOTG;>$!^9AfH5RBU`HBdsS8XyAx|wUq)E7h=Ss)mVnuwi!$R3b1!m9&Tc8e2Ah* z93dsPSIWMcb|P*JsnqXhvE^WDxdW*bQYjAj-)O1aj{;`q7kRbTjhQIKR1t1J@W^=H z&KKSDw_e_z=&`ic2;k(#VF6&)C&;9iap&Jt(%M18^cYK-DUQ?~rD9htLzB%~biuWVi^wq=sbuS+r^MZt^XM4mKhUNn@-HDRMN|w*p+XTw5ejxoBfqGYGMX z(mxA;rQ{;Eh;XXz5&+jv+-LAZKk(eOLY8>^WN4-(D|NlrfBplBR3bVVA7LUsOjp|g zy{|9gnht;`^xt0nqUO%>o{FmI&DMtF)b45G)516-?}wS2P4@j4U=z{{Tmg0fDWHG! bUcBoE0(26M^-PUO00000NkvXXu0mjfKPpmF literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/picture_delete.png b/ConfigFiles/icons/picture_delete.png new file mode 100644 index 0000000000000000000000000000000000000000..cca9f535d9a699716b2c735d0d72374472b9e1ea GIT binary patch literal 744 zcmVP)hQkw$4DenXv_1k19q1k|i7>6Y(!p>Gs}5>iPV z&!aPy~rgIO_{C4dkZ zsR>k_stj1H2h_AgX+YF5TH#m%V^&Vp0x+fl@M)z~j$m*Jv?7oSAwrZ(QKF$u*tP{m zthQiG!$Q<-Z$2x93SWCz>;N z@|O=~WGn`>v{S8}AU&TvrXK^HBjlLS_A2{fi z9kE7URXC0c#|c`x8VSriV9%*u{Le%1vY)0{oXs5_c45r)I=(B4=z47DhP@!fFO>QH z0C=0v;craC(Thvo`;ypNY<5D9c=%{=VqZ;}9mcGE1D(-CbLGP`EAr$5!D5yQP@1<< zHq*lVt!kNGcenM0nj_az3F$c2B&EFMYtB~ns=5AO0D$4{_RHnM^m$u}4rQAu1Gf)n a7BV67Uig7b0z_wp2kkRjeX{OGU(8H$_BnrJxI2 zYgf8Z1aYIHLaSgAOBf`OQi|_q z1L^n?A4@G9O#>X0iwC~zJ`7+;C3bJy(9+;Iju1lU|Kv%CqmXNNU;Y5h0cL$^+qNTq zyZ;7{DN16HOnRJzStL@D{B(k6FI}qC3Jg*l-I*blLd-*rAOcO((F6qA7@7KUY-@y~ zUm}Vl4BMu?WeM5gYHF=|q+ICA0FZ#D34AqyWxkIeO+9pNK>MVS5NOzoBR(E$7F1q?VDFq+r9-q zcNwcnFw!?b=mk?=WoG?52ZK`wiKQf#k}v!TdRp2LW|5}OF5IPG7i_ZcJ}<$N=fj|Qmw<{WlS3PTs~E*h30u3Wu0+!MsALn%mSe|2{r`kBGYM;ZG4 zA$DsgUOp#BS`W{b9~5FkFJNk1ng@Oy8aBjAUQTxD9n1zdX_3 z|EYp~1lYByuF~C}HrA}jpiKW^Wqe}awv&Gif3Bf#0dDv^qSF@P-T(jq07*qoM6N<$ Ef^;Qtp#T5? literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/picture_save.png b/ConfigFiles/icons/picture_save.png new file mode 100644 index 0000000000000000000000000000000000000000..777fb5d2e6a8418c573972246582c21d2c4984e4 GIT binary patch literal 755 zcmVe)^Pp+~01yB`w`9=u(Ho~0 z&q0|Zy>{}2gZl=9K}x9u0000cnYNkw{OYaOaSqCHmHYkvAYHn)ZsML%y6Mn?Rm1M4 zCbIimL%-gdGZROY_IT&jL)x4YKv_2wMMsgSixr3VuIl&xwpoodZKLe>9X|MwKbLly z@9mW{08m0kQ6yEY>2=p_>};yqiMnYtv8~_l+pdQ83=1I;07}RxQW8y8wNsO(vNNsJ zxzT2%smQIeNFo9Nln_CYl7W3j+smTUwfx(8yZemmMmgIvlXtBAH}d|cf5_39J9FWB zT>bgZGbKb&6v=F7!JU=6<_61l#uG1|c+xA2v%dWPU+)_++yuBPsf8gS*uy8tE)TNP^?wUn|FBDi_)Ep5))oIO#kS?(pBVA^IE&o0V2 z1UkY@NmW(0wrgcXNO*bi9DvTz4L^KUm{e2mUH(gvXxc2dSs)?^X1ZCKKmdStIIqc} zY8#!Ri;%QZN+O4dtZAm|x={|gX;Yrg9Xs$WDG3lp>Fmkfnp~qGh?EV=o(rGc zc5iE2*(=lK&%R!Iu5ROK1ORQ0xsI-E$A>rGws+=HNnvgLk2jzGKw)59)ygxcj-Lkr zfNySo7mq#2f!UFlj-4>yTcBWLvS9zN#!QbgB`G2R0KijcuYCLXBg5zC`|}3n1DZUQ la+ac%)7bB~m#l70{SP&gLHlD?H{SpN002ovPDHLkV1hOfWCQ>J literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/plugin_add.png b/ConfigFiles/icons/plugin_add.png new file mode 100644 index 0000000000000000000000000000000000000000..ae43690ecefe7952ef9b0a410614d014299bd3c0 GIT binary patch literal 691 zcmV;k0!;mhP)!C{kgV#7nZ!}+IFwq-SXfjo|dBU;$2A*R+N`fo=|&GUYL?n@~UJ} zRwmI}jPAB8^01Y3C+^Ijd+pCXe>~g?4Jqg4)T#41=X}pOfxGiRR{6W&>CB0&nI=@t zRrSu<^!c5C0)&<(_cUQ7TI*VgHN*l@P5-TfC4f_@-VY11P%L?g;zAJ-8T%U`aCgp( zo^&%s)zGr{_QtkAOc?cV zQv@Ya7h%t}T`nSsD7Oy`1i{aDaBT3P$D8A1r!%M-=8CwXt~6AISyR6jGsiIoM;>tZ z&|vV(9f&CEifGyEVzQcIGxNN8`GVQmBE|UvZp9xX9KCnIMU)jaD^N2^UMg#1ikMNI zccRNH*tm5QYno!*e}0qU>_gJsE$2etD<@XAvnsrb$ z6AdYytGA&+iFC(ifFqRvB@qNA^X?fNqMb~-l0^}rXPZ}>v4 Z=Nr{rY9&UI$M^sM002ovPDHLkV1hoZLv;WE literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/plugin_delete.png b/ConfigFiles/icons/plugin_delete.png new file mode 100644 index 0000000000000000000000000000000000000000..d9c3376d4593e666a148192e2527219c09402b0b GIT binary patch literal 692 zcmV;l0!#ggP)o z8!8gf>Ps&qN+foRRaLf2cODK~N?MJ?TqgM?^Zm{DGc$p^^FI-u@A2&5i4il6tD39o z?eiNi?f9EO!QA5G6&UfRk|r9;8Uj(>xKIak1WvVG9G{lyOwMy;rZb4h@InHCyK`>n zq?;+KhUT-kM4JOKVJJ2HSwvM;3q*vgyRJv)Fi=w(iyJUE%pJ!9HNzcZ)v<`W;%+<{ zeL6oxRYlz}HD~zzLxP}i?Y1B1u$G@Yd z2ufv1CA+WfbP+*B>1^)`g5USxNTS1I)iFjs4x(n5E8>Q_QdSsYW$7x+9LGrXJ>c$v zMDWKRh$!lcXg=#qv6|BO>?Lal?hs0ik&TuzSreVLaQI%kizwwq<)|4s&*hnzB4)Hb zOR*_kK=a9qwZ3!*05_6dnry{5ig?1;u$aIZCXe_18qqjr!gMP5Vz%^zuIR zoMTC(oHezz^gs8bVSt#mV?pSB(TAuq zGoo*^V8sSj*929MdxF}E#e_qJeEA@}eix|YmxF&j=SO>19nXv>J3<=NYRKO@T-n+s a7k&VT=yiY6-x8nz0000^msfbTI z9jQ^EwMRD5xNEm*sJPjH^k)@gXT@kl5ii6#6jNXX`Yb0kVgq(zut?ZfbRr+DS= z>q{33dTpWN$tl6c7nxE)4Qur1GCxuUnp5Y z5HK(>u&W4&EXz<>UtfnPivJ`O3Zb4K8yl-}7K;Uh5XR!-B2uXo6E#Dr&Ck!D<$0b5 zXEK?PNF*3;w;Rc15`MqGDN4rSaGd2kJ3GNmOiaM%^D*ppJL2&;mX?;95{t!PwOY^e z?d|R0=pOKTy$qMj1$rk8qtS@b(NQ*LUtb@(y1JlNtJzsS-`3U!Ze(Pn>hXBkfzr6} z{3Vv(2AlG1;RQN6I#_mYZVs)jt>6p>!_3go(6&ye1Mdo>SRyz&A^1T#%t=UROW6Bf zz^9CeqErU&3`3<-Da~6HQ^UW&yCT)$Cu literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/resultset_first.png b/ConfigFiles/icons/resultset_first.png new file mode 100644 index 0000000000000000000000000000000000000000..b03eaf8b5416fa6878165d95116e73003f8445f5 GIT binary patch literal 522 zcmV+l0`>igP)ufs8f5Kzx*fI63}@)AAFXgQp7K#X5)&2^7g z_9O9^7^ARqyc%qAP{1M7?|}io8xW>dotf=a%%ZSXBBI&Rf<-t`#(~H!2g~*8&15{# zVXjXMwHZYVJ6lk!gb6?r$g;SuO>QI;yeQ51#0H@Z6sk_ajqECPZEqLq!PMf5MQ5gS1i(Owi(ut_CY*w|Psf-Iy6=08Y` zHnsuDs6h)+OwcBqopImX_v1c`5LkrSCWWWFUvW71z%eN$cB714YVYtd`}$X<%JbQ) zM;;CHJDu;#-swg0iul07{S&4s!M>4O+`c|6_tW_i^y+I%|aPsIlEx5K=^ki~8LwqDy-)t}thx1D9 zB6|#ECQ%2a60OQQ<{6-)5|okv)6E>1Xpv+@iIv@MJ8v15 zR{N~1_2z$e&R$WgNhIQelIl1rK}5XruIN#GDZA_4bJqcqID*^mXXFcgt1K5iK7HPL zwLW*@#tu()#Cyd@CHc^75Ul6pYT4PCpSeBE)hh4bY>IO8de(|Ml<%@O-40!dwX61{2C5s-llVw2V@@N0oo_PPieZ!0Y2~+R( zk!(QTf=B;X9DnzJ@u9c>OP4(U@7{849!UlyO@H`*;lVfmCvAW6f9CF&{}ZR*{jXDW zb_vl21ozzrYJBy-Vb$aRjjJF3@7nm}zjw#A|58cE9uZ}LbIY~=6ShA8U$XeY|MDdd zfQCH!?_7WRzhvaG%|sbsT7Kz&`}!yUix%Do#>T_{_Ei`DO9UTSBkH=Hg(w4*^UnUS zTk-IJ<+2C=ZObqG7Z2FGlB7VCN;>(!bn*TFHYMl(i+Sx`L~=ArL>~EXU3lidsO!!J pWF;gqzXSh89JkLNxXeT<1_12n>%V}Y6R`jQ002ovPDHLkV1iLCz99er literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/resultset_previous.png b/ConfigFiles/icons/resultset_previous.png new file mode 100644 index 0000000000000000000000000000000000000000..18f9cc10948f025fde708328fa704b520161e5f6 GIT binary patch literal 389 zcmV;00eb$4P)K{b{Xc8(tN&i@ zH%T)fYQpV#rAr?FpSkE_eXe+_wJd|K3f{{%aMTC(eL? z&YO?2=RWv9b;pbUjjJF3FIss2fAiYM|D{t;5@!?n%vQ}6um-u(1``H~0!(`ViJ zU$yMvf616*#2KJfaGFIu@9Y|n)@%Q3RzCcnHskjH!iD$#iw7MbEf6JRj;ypTzwkeA z{@wqXv+w*Db>B;RG>UocU1Xkp@_*9QTmMBIcK#Mp1s9+pgH&L-pkdi_{i83|RX>c;RL+;F-`+euQkVYzs&;C5`%i%Qu z^?E&0)sw3Fw1_;Qss~j>L+R{>x|12-dpY62JM;7No_}EK_4|j*!_{h)a=A>Y zR6D>Hjv+Orc9zXrc+HHcBm6c0VQ&Y#r$Hy_o@NYQhSYKb~#DRp}3_Dy>$FIF5;; zh(e)&s*y>k3B!;$jx8E+YCqhNC%F6Lq$GZ z`yCTJ$mP`|h#Iz&Nsjeb`&LBu67xLAIfpTZUfSo;xhbBU9pba^e&g)I^ld-+;Oi|e zet&K#xFzu3b?EFy{mAxgC5#IJ{VeDFN52vna9$8ED4?pKP$~$4^Ezm^ z+f*tQqA2=%JfdXY5e5Z}u^2*(2|)u?4Y_j+1`aEtr@sAW_2cQ8L(#;<1W^=WjG>#h zC>YC`$A@t;00K}@BgD4IYs*dkNOrNOpLzDe($doO)hmtjSAJ|fWx`@qDwXh3C8U7R z#go#!8VgMgSc8(;wz7Z-m47J!9|Z=IO)9nM*M_QZWv7#-?z{Ky<5 z#To?A>DRcY>?jq%8iV<-?LYG3Cs)VD_Row&BgFO&oa7i0jC#bRTx)J{Gs*cA8AFn& Tz}6~h00000NkvXXu0mjfriO>R literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/script.png b/ConfigFiles/icons/script.png new file mode 100644 index 0000000000000000000000000000000000000000..0f9ed4d48301ffdce04cdb17dbf8acbad8372d11 GIT binary patch literal 748 zcmVrG{ z$cl-P=->hx6#}NAmbP5myY~I>{qOhtLMa7Y{qE64eE#g}(xpY)TeQ8l?;Upi4EuP3 zj9qNwYy4OP^j-JLi)W5q`snr30AQZ_=_2*h-J^Uqwd^<9gC_@m_YruehOwSPa9@O%#PST ztn>RnbQXoQ3&2p_*N2(YI zkrMO}==(rnxsJAW59QQs0L07JZk*~;x_q%%{cN7dr3j%I4jC^oS!R20 zp-X8Kpw211iFbazd*AM1?Vu^zTr_Qvx?Y!ieJR$aQy;v2#^ddUoYEFRo!j>1ci(tn z{K@;T0)Sj-bCEg}zP!0%dBFa`LT=k_fI7GB{l`yczPWYR>anra$&%HTk?G3F@#Ue> zFdEg-dzaUZYPNRv<+lA7pzgcw+uL{UoxOeM-g%tFNu0n5OqYg(!P3&eWMyo1vh4Ri e9{q`*0R9JiiaRV3rbYDt00009Gp0rM-&EhljN^i}(|Pq=@5XF~~)>U!;+BT;WiZ;-?olqd>fK_MstEkar}b9uop zSG%(%K&q)D8CgaWKtPPtDOv9I8!SQz&9K@qF)=0vTF8Vz6y!_@T)cF~Uzb0()L$?a z`$c#8#_Jq>ql8oq?5#4M^3MAs_Mj^9a~&q%&y!>ZY?Ffij=buvY#%T_TY|PQcQN;bwCQWy*nR;m&;UD z`|<407yq%aQd%Bnb;^cyP&KV4wU)a7>4a6Dx$h-#bpLzK{Pr$B8!J;?KlH*=4~)Nd zXfFUrnL1@v!}G_xF3kSm{Oos*9r(bTXJ0f{jKZMUxbxsWQRhe^WR#$JvyI#9! z6)lXSPy)q8C1lZ}g3^41=HNKqnYs7QJ?H%A@B2c|8SMY^(nC0W>$>q>gSs`STXowS zHf;~fxQ2v9EZ{R7D*@W3dHBBBHM?GWY!d+JSMBtmYNr=h)3&N+d6b;Lw&L5f{XIBX z0<=xDd8!-0r5i~n1ZAKo8S6whk3~g{It4qoP1rg;x#5%3mk&jNRM%6JB~8n674&Lu zjOeY>TV-L${7M3Ee16fcxk-1=bT*X$sjfGy?MD3({naGKphQs+3kpFIXc5wqAI~j1 zbFp{11V~l2d3vJI8#V@`EXJ&e#1s^fLRJ*Wg{w;=M~?r!g#9HzQ&rnHPj&QGvj#Fn z3Svg0kd--VGpUm_RWo<=l}E2ffK-jP&rXl&S6PS@A&7_wfRM?VW;BwjQGycozWv=q zS;X#GC#q5sWn>vi00A*lr(~r+Xs`q&G^1+MA;g07I7@NDx@V8^d@28HxbNq=; zzxe*f?K5pkhju@>PI%T6esG3%jS_iIPFg`oSQ?CLj-`b*R!!2d1>j$2D{N9N- z_dNmtQl?H>)o|vgtp>k-WAdw)jfVdjV0o#K3YUx7d-mS8etPnmh2`4C`M&w3RZD|f z-DE|Kx}BgKTK}9nDt3ap=<6+H=dQ$*8t;dl`wq|GAhu&8Hex;2V|u*X>5Pwe>`ABX pxbn5N{RLGS=ZoANdGc8E?*HisN=owtMsNTC002ovPDHLkV1hpQeRTi; literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/script_edit.png b/ConfigFiles/icons/script_edit.png new file mode 100644 index 0000000000000000000000000000000000000000..b4d31ce282f378e5b94cd40680d283842229e491 GIT binary patch literal 880 zcmV-$1CRWPP)dH?P zU9(eZs5A|8t5v?eTRRMlZU=heApt;c-QWm;Ex@uN>_}2!i6teD1%o>y^d_S1XRa-N zEVlrobv$Z==R-vaN*dOiP;xh}(13rd27nL8<{3^$d8*UtvbO>4tszOR2{qRsrN9O( z3#0`W0!x4o2vg>#nIhNcON;jbrFs$(i&Dd*-VBg3z>*-1z>;7Qu%r9~e~*90+noc{ zCV%7=ogDig@RaK7i93|s01qGl%Lrt!v323f)kR;ImtNTS&iSm|tlwheV@t5403k8+mq?kbBz7Iez4s~7(WvsntW4bC^upoW zL+_1G1IUA;W1XH-C-(17v0M(ATQQWfmq_ZL>3(tqwR{#U6woa9k)QmX+`va6fx$W7fs9{PlZoQqK^zXeF6_0Y=) zo``&Le1wy)J;oj`vgg^i2qA2Pi2L&&MfZ)$Tym*VCU=T$Q;z6Ze zJ$g#19)u*6U}?pjN9Q`P1faW_&ZrhEh`zTzI_Q+4udtc{7?20{`>0tzC%6 z<4$0NFD@aX1`EXFfryb1uLICn5nxWaVpGCkj6kwT4ni1iOhPYO8V+7ZA`uje zMd-SYjtzD?ftn&>m3S@d6_=&B-;Cz zF*bAv13UKN-Iq6*nUCUQI(Jw5*Xv9h7Nm56LZ>KDJd8b9y7n953x!Z9A}LY;0000< KMNUMnLSTZ#4=Y0e literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/server_go.png b/ConfigFiles/icons/server_go.png new file mode 100644 index 0000000000000000000000000000000000000000..540c8e2689b19cd661d3f07ec6d5c69a48ee79b7 GIT binary patch literal 706 zcmV;z0zLhSP)7<1w@I`*?5OI84*T|9oBhH}d)X zV_ny$7-LpT(?ounOeSx1Bq$b(0RlV<27^hr+Y6OI;2f4ea@pG(#Qc2bI;{>8 z6bgmQ0vry9qduPxrLScOb?OXyK&ctFdYopOnzzF=IxIzTH9TSNw zRv8@$M2+3u-KbWpO=ZKt@W_~@Zno4#v;XQqFdGCChs31_>&3!5%7&#b{zWFQc68tn zplmj4#^Z6+YBf55z<5&3{|y;v7;9uv%2$5X>rHda_}~n%R!c9`2Bty_PB{afo|wH(i1~} z&mbZJ35Q%B^!cO6Z!BTy%i>mD!&!%IJ)KTZ(mdRYL?UO7ODFJPbqWeO)2I~TMhXw( zyp+KE^<^xqJ^!icxKx=jKRWim##AbmAfj1{QTs88yd0gw>A`WlSX(G-+yZ}U&%wWZ o(p|@%!Cl@4H>AxOvt;l80V><8&-M2O*#H0l07*qoM6N<$f@GaWM*si- literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/sqlitebrowser.png b/ConfigFiles/icons/sqlitebrowser.png new file mode 100644 index 0000000000000000000000000000000000000000..7897a11e5a55c58d79e6bd147590886011712e24 GIT binary patch literal 15047 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 literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/style.png b/ConfigFiles/icons/style.png new file mode 100644 index 0000000000000000000000000000000000000000..81e41de7d3a9bcc50267b34d0005487d5c7cc7c0 GIT binary patch literal 813 zcmV+|1JeA7P)%S8Yz4}?d^ZEOv#Sc!)mtIgHXaEQ+_ullV zJO1Y8v8UhuAAS7ozvIlitK{;}YszGvVI*jPQs)gu{RuZGF1qsJqxF>Ai*mOY zeUVJ^Xn04=g+vNN2-6q_7DHe6!8fa@! z^ZEB_2Vebf-umoI@{HTtK!PIfdyIp7Zk$|p=*|D=N%#IIE_w1_EaGe}ST5wWclgx% z|Fx4ZY{8likTKA?G12oM|4&}@o+);3yYs=L?ao)At-(S*$63Le zJ&q^>ZEbL?y!O>L=h9<7rvvdA2Do?L{p8zs_rGt?o&P=^cm5ltT|5S~l@laqmU8i; rSIv!oK>XjU`o@3v@@qdCD9z3Q7_5=EFk?|V00000NkvXXu0mjffa;^e literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/style_add.png b/ConfigFiles/icons/style_add.png new file mode 100644 index 0000000000000000000000000000000000000000..e0369c6be9d36e994b0de011069494460d96a837 GIT binary patch literal 844 zcmV-S1GD^zP)e0@+Julu(JNEkTghQ`>*6)1&K56lT)AFSk6p+=zFou9~?@f=o z<8N*rd;0DF(Z}EZJI=hjN-qDrrcCA;MuG+?b>3jqpKx>HqAMRhT2HyXD0l0#iaLPj_0@CCfwX2oqfq#v-#E>^WJ+0O*-%H zHfg=H+pP80LCw-@%MhBYE~}R8d~tQ=>345r($1Jk$Dh=ha`5$Q|0%Z*NM~MfR<5`? z*=OG4&)FMa{LftT;=fMmjdkL&7s}uU7`0rTx%v91Kl4t$`!M0as~0m4zJ7b)=BNL$ zv+kY|^Ex1>-*9Vvz`RHQoOC>ZM%CJXsdg~+{gcAqR#h%!vGjSdf96p zUz&8_)hmghBZe>+iF)o;PnvP(V#cg{58Ni-fA2Qo-b=Bl^VUFHgCb`>{I8mLVHwzf zj-AiHPdoVPfAiL7Uy^6s-UbpBao=Mc+;ijPvO{nFM^C!rXeXPW->+%GCcCp6&YIzdP%Hc)#v{<8+;QI1SLuzO*J`-lP9w z!6%zz+g-kIygcFm#%q)QgFw%o)c^f^(*K)hOZ~vm2n-}+(aVjYFP!CqB_qTX zOJ&0en^&%FY~D`yo5wuXrqeuThwbe*!4lN!gNF~E?|Yv2;o&s_0FxcK)F4Mv>u0z* zJhiT>SNoIRsri=6U06{-CYN%OHJ$srT8APibiLY-K*7FMO` zu!-u4!CmVjT89blRPxkIDKC*hn?y-keBB&eC_)C&se#e8D!|7|Y1Eu$<>Pfv>N49K>6fy0A2YR8!Poer$)vwrolN$#@;q4<}Pej2{e%3 zI=@b?o@g_YM+14D#L_V#yK@oZ%9M~)Hw)Nk$>Z&}>!Pcq%1JmymbL7=2fKmBjgNb+ z0y1kBXpaiveUuCEe9fUL91qlp8>1G%-IfQ7F?q0R5`%pM_H zlBZRaI3ut~u@Y3I*su)iBl3JP27{y#cAw>392ogM27x8WYUncrLQ548Qmg=v)c#(M zKW28lmJEQ3zM`w6LouCZ2JeDx41XWS7nLH=8uZMsJl-Y~+6d*|L+TPovcw00000NkvXXu0mjf$UutB literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/style_edit.png b/ConfigFiles/icons/style_edit.png new file mode 100644 index 0000000000000000000000000000000000000000..25bb5b677f89b1071fa44f29a006ed0be8fca098 GIT binary patch literal 927 zcmV;Q17Q4#P)4 za;GYM@Zfsyfm)fD&Ry41qf>=r$+ULd=aUgoB$PD=lkdf_7Ilg?zyQOl7->rK6-vac z;TV_Zv*2yTAsc({lxwkakt#&M=^sjC#7^AUP&&Nl19N&`|TDi=7JD}Yd0Ws1C z>4Cn`%K-NAO-Gb$R zVwgTXc$E4*bT1D$0aYNf*Tq)K^tV$NSHqh(`FgCPo#PoB*clz&@Zz?t*3^<<*(b1GSS=liGL+!XKb`BrUt80E|` zL^nZdavGLlE*g6AK5q89fuGJSBa^o|%9F?I)(M}uC9Y*LTOPY~cz<|nclXlE}xo*2>>r;3Jd?&=tr_!Iww zFvhUfzU@K1>#kb5wJi!Jl*ja3{?P6ZuOx9B{{rz!RGKb8<;DO2002ovPDHLkV1j*g BxhDVs literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/tab.png b/ConfigFiles/icons/tab.png new file mode 100644 index 0000000000000000000000000000000000000000..3d8207fd74e73ed0a61793834ecbd358a209b9c9 GIT binary patch literal 323 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmUzPnffIy#(?lOI#yL zg7ec#$`gxH85~pclTsBta}(23gHjVyDhp4h+5i<@^>lFzu{fRl=l_3uX4QtyMkj+0 zY#SOnetv##&Ac*9!Aw2qzO90ukB`rtBTS+*)~sK@Qd3Wl>6w91lc$EXqw|d(p7rtj zL#=9mJql4^&ui$IAYgxZvAe!x-T!~wAEkwbV}v;l|IpFV;kk6_P=alNz5|0Yv$3)9 z;rsjlKkS;w>nL%6C&hSi8{-+bv^22=Ol%^&FHDS$JJJrBFsN`$`tyH2>+-h(-T}M` zbIkMa)w8ljvf0|^RyP)a!RbZ^nygOjY zvaEgmwz2N_`+TjfUI2su5O03fI=3GN zO-DxyfY)uofj}vRZ5#J+ElHI?A*K4L!FxreG+Of^;j>jrB82=(AcRCIi81=y>WNH@ z%WRC|bAfWDj8}GRun?h8$n^AdF*G#bidPlPiBA#-q@JRT_(tjU^l_TnC4PNQQ?cK< zK{}l!ozDLFW@ou==4Pg`rH#LBisPFd#s??Z*^7WN=GQg5GHfE(Tc#HK$)FiqXft*F z#C#!FO5Mi@99aMa4lQnTNq|ya1TW@gEuM_gfac(8lLn!QCe8qYqTX>HUu+Km^FSj| e1UBOv_sg$~0hzRbE)Q}50000>q?GuNnCdgP^*Bj5V_b?dAq2Ppn9^MBB^YUM zad0N-T{Ujg*A6d~mYV4na=hT4Nz+_}SGTgW|Iir!%$ z;@OGkWI6+j0H}~K4RYR%!7y|zM`O@*K>rL{*&}x3lR**HrMXC1->#slU>X|w!U1xQ zqc^@R5;6} zlTS!gQ5431?~i{f-N>j^(nf@gnz4vsG~1*?ZHy3tqD@4b(p4K*Q47IE5Jb6XVMKux zSz4`PETXXnBWf%+CAA199Uoz1qRzYL-WG3|8Cw}$xO|**x!?Kjch9kmG5pVR0q(w9 zyl4z(#pnjDHKIXjjfh6HL5VKef+&M%{dV9~Q`7~}#`N_>t3&@%`O>}Fa6y4+9Re8t zdK;w`N)*0U_~I8)RN<_@bpYR&iV}jrhm*U`Y^eJ3s=`-N^gu)dFp|h@h@g9a4Y^VR zl_vl=(O$>>$$5?+s4wJ3lk@b%im{hnU9Z3wjW!0?fzdY^9LMHiGJ|DuWY zbD??rW^(>tPcVS%SR9MiGCsAy(P-T|1*P$9I*U?zy#k}bwc+Wz1so?p2yy^dAKl^m z`~=G@i>&!Ma%=m5);xjI7-J}N;PBpB;wg{LNU<%hjSaIT2|5l&X{c%9#mpGVPmhW9 z4qve$=sEz$wuq-Z0OBc+c*^7Xw8#6;4`|sLL2MziwF|L)Vtd*E&Ibfa1s>SY842M! z0d_`0914f#Z3A& zsdR$=u3HQ~J58li0kE3?1v7bhwSU`zl2002ovPDHLkV1n}7B%A;M literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/table_delete.png b/ConfigFiles/icons/table_delete.png new file mode 100644 index 0000000000000000000000000000000000000000..b85916d921ec08675f9e41f18c0fbfd7f2124d8c GIT binary patch literal 660 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 literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/tag_blue_edit.png b/ConfigFiles/icons/tag_blue_edit.png new file mode 100644 index 0000000000000000000000000000000000000000..2a9f6266ebbfb023c9965cac87924611d3242a2d GIT binary patch literal 748 zcmVPQ541JUvS~ZL`~zygnz)KVWCC?F5D=Ikq8U?h>6CXAjX9uM6jBuQEWg2V^GsJ zMH;n{ex$Xn{j#O)Obd}(%Ft$twTjfv*iMJzn?agT3X8Y7bI9*=`z7{p>R zM59qeA`yhcVT3{<1cSld0H~b~Mbk7SN!oHUnT!JQ`FuM-Mr_<>gM6Qt( zaJ${xLMS=1+$_7vg+L$>Di(_nMNz5CK(E&ehr`hjLdmWhjYM1~ky$|ykSmI?Ev+X> zrBZOYT(H?}TOgF|yb-xttwI)mFG;vNvxdGefR$bUmP{rQusp)t#2L&_^&>KR9MLCD z9Tb_7&*$?>Q>9V?N1O-4YZzjH;W(g~S%>_|OoFp_Vo~nZx7psL70cE|*gv zi60^cLK3tjfhp`nfw={VcZ2_S1%<#>%)aa*Bb!S4U!4hV~9@te7c zr1k{t#!*?UQf{ICTBfI`)#g`y<;2J9B=#o=3tjljp2G@BGXJy%7Sn6!^?Ft98tVbi zF7NG%f9OTj`~Vq$8%hi9C`5Yjb(qASn%E?62+$241y<9T8$Jzt?;d!xt#E0M!D1ZW zB5nxiyU-+-y^m4$KZL*kFm#s=z^osIPN!2fe9HBOw&q>Joz8=zZJ<@O-aq0r4)vTO e;(gowO#c9xAttCU0DR;C0000C#5QQ<|d}62BjvZR2H60wE-%s@pN$v(Kw&{=X`^_fnmU^23D6T z|NkHVz|K?O{7~QE-_Z@zCpI>Iv^P{UFnE&ke;(6i-d4-w%bHR;j1|AyZ#v6S(amDc zlKy{I(;D%Nuye{ncOLwezxwWez>k>{<_3S*oiFG7{Xgq}=)co{r~lFaH2=T-_xf)+ f9X!fMH*zv8ak(u6{1-oD!MC#5QQ<|d}62BjvZR2H60wE-$h_H=O!(Kw&{=X`^_fnmU^23D6T z|NkHVz|K?O{7~QE-_Z@zCpI>Iv^P`}`P2Tg^+n4;W0%&Nn`h_oB zXMCTNA-w1R;@9m5&b!P``2Amf(pd!#&g=F^W;hsZV)z*wDqmKyKNDyjgQu&X%Q~lo FCIDq2QD*=E literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/text_align_left.png b/ConfigFiles/icons/text_align_left.png new file mode 100644 index 0000000000000000000000000000000000000000..6c8fcc1165a433617355ac5e182d015b389e9296 GIT binary patch literal 209 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!60wlNoGJgf6SkfJR9T^zbpD<_bdI{u9mbgZg z1m~xflqVLYGB~E>C#5QQ<|d}62BjvZR2H60wE-$h_H=O!(Kw&{=X`^_fnmU^23D6T z|NkHVz|K?O{7~QE-_Z@zCpI>Iv^P`}`P2Tg^~Il~8@dITHCPA-{a3!-)3Cjx%=yXx z_>8LclV7mqn+PY^{qor&o%8>H%d3``{~Y#6bGV5yoI2touNPXs5@;QRr>mdKI;Vst E04%Lf&j0`b literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/text_align_right.png b/ConfigFiles/icons/text_align_right.png new file mode 100644 index 0000000000000000000000000000000000000000..a1502571c99fb92b1579c3658bcc50c5976b8e7d GIT binary patch literal 209 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!60wlNoGJgf6SkfJR9T^zbpD<_bdI{u9mbgZg z1m~xflqVLYGB~E>C#5QQ<|d}62BjvZR2H60wE-$h_H=O!(Kw&{=X`^_fnmU^23D6T z|NkHVz|K?O{7~QE-_Z@zCpI>Iv^P|9aJcmUe!yIVina{lp#RFZdm6TTlr;aYZ;9)u zJl|<{@VEV{yZaY@Fz(E|@awb^}|6b=Y6y(;Y{!a!g z@UQp#@Aw}>L3(}s|7f5BUjeuKZvQRjV<2U7yvu*H{aAbvQ6K!@3oKzW z-{Qa8d3gae1^)HE{~f^!v<1}u>;4xnKvUpW540I-w9J3a{{r=B3T*2g{_BH1CtaZO zpZ`6V0*V5g1e5i;`_=Z#_e=H*@8|93RG@lX;D!K7TKswwko8{x0000A?80v9Z^YZA8as&YaOiG2qAVzYLj+o?N|k`)kPFX7%epMT)pIgD?z$ zz0k7x#eWfQHil2%e>0rE^YzTbTVLW%P1UySD{rve8ZZphV4}^gtsg#oV8j^<1D2Tp2_^}JGDwbz00000NkvXXu0mjfU=gFa literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/text_italic.png b/ConfigFiles/icons/text_italic.png new file mode 100644 index 0000000000000000000000000000000000000000..8482ac8cb1eb8bc8edbf64085108f0fbd204fadb GIT binary patch literal 223 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!60wlNoGJgf6SkfJR9T^zbpD<_bdI{u9mbgZg z1m~xflqVLYGB~E>C#5QQ<|d}62BjvZR2H60wE-$B^mK6y(Kw&{<9vg>Q9!g~ne(gm zmj4swoA@7?D86%i^8WzK9JM17E&sp&Z#dpHfz$E-U9ks&4?Z9Gyg!%0k2Q{M-Tz#> z2OnD>vrPZ*#{EHKLq)>Jcx{H|Ovdb&|4aQZWSipI{El%e^Cxx{^9vSw28s;a3IDB= TS1%U=TF&6<>gTe~DWM4fm>N^1 literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/text_paintbrush.png b/ConfigFiles/icons/text_paintbrush.png new file mode 100644 index 0000000000000000000000000000000000000000..61876930c4bfdd37d1f8759bacf0a829d3cab9b6 GIT binary patch literal 880 zcmV-$1CRWPP)IMUm8pNTsacVC@HkyaNDlS)vn+`Eo>(J?v0G>&9`S zr%OJ9IPx)LbR3&G#%y@>PP+f#S>GB}q@CZz4%hmI3E2l{Q-v)gLjhw;ni(^P+!PBD zc3t;ZOdS(9CETxsHIW9o&t&S}vcypi*ZO)#T8@37=K`q0Sbn%blWD=eT<7MJE8XS3 zrr>c4$CxZJtW7t@xV&YFqaChw&xN!cyC&X5{heECMCKL`0+RQ>OkF<9Uep_m2EX=( zFKQwcow39kOIY)qgi5EwwXR-BciVWT8l8=Gh{)XTyyBk9!53^MwrF0GDg9%RibboE zZWtMccL_1Jw&pj(wqyrR3F+@Av$Vn&|cU2SPGGi-;IeT(g{m*g09EuM3 z{a*?X&ZJDsM0ZOUx|%*M$S?JIeoi6*01cX>O^!Vlud?pB(^D`h*#Ie&it2m8 zw~d~wf)pZ!zY_xhIaG1p5RPhjs)S{H>LlE*_v3hF6n0}6kzh*GWYIFGptQyRr!J77 z$XsNIDbHYcAT+>2RIQL$GhV%I>>qB>b`%`_vlsx#=P&XyNe)5|cOx8Dp(qr5O#B@y zFP}bBvc2`6+IXX44}l(?0i9+;i=Kc^B|z1etSt}y4e$-7e_J6FGenR80000%W!&uf*aR7m=b*g|(kUJU9 zp=n%1olDSG6tD^6Pm#c6n|B4fFQ*MV1`x;`99zMDR*0#E+F^m|oe836+P7h!>#yE1 zfI!Pp|0)RN)PgnUO$R@72rPJU`eo0n-Y3TD?vS-`EG)AfK{?SrAt%}ba;()aIZ6Qp z@}w&6x|k9*7g8`rL*Kdi8;ED#;QEIV91l(YIPowK+e{Jd0T~0&6kK`z6@7djhdf!w zwp#S^9d~>P!TC5WQwj!Wi!>p*WY}^u%h{eQ=zmnefl-ky`!{2#b7T1JN1S<4gx>S% z7mb%u>(n#eMi%C6?_t0)6t-JzDG!NaVz^b*qE`c@Om0%1= zpr*5B14!3kn2^D}|Au;ZM%_q;bhY%VI5ex^Fx52YQ--nur0X!-_-*q03322ghy(&cNNX?2}d-6ZV@ORut;!KHNq*K6#He9hTK Z<~I`7qRvC#5QQ<|d}62BjvZR2H60wE-$x?CIhdqH#X?$N2_%BY~9*Y!?2h z{rUe=9fy8l?U(-(m`sFEeV_iPeWNmK)A{6xz&-Zw?GGia|0}^&^gUfcv*1X`gnjmc zo{g-_np*x&^x*npDC+Wt-z8{4+sXs`@BiMP%+Rv-k;3)Ae_+S0!x%EHv-|4^N|MkDje{TP~{@MQ}vm3aX7|tvG V&AV6mZa&bt44$rjF6*2UngI1lb~69~ literal 0 HcmV?d00001 diff --git a/ConfigFiles/icons/textfield_delete.png b/ConfigFiles/icons/textfield_delete.png new file mode 100644 index 0000000000000000000000000000000000000000..c7bd58b21797817803b49d3b2b53323e17fda625 GIT binary patch literal 335 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 LE=@u|YMTEK-UB7W literal 0 HcmV?d00001 diff --git a/ConfigFiles/qianfan.qrc b/ConfigFiles/qianfan.qrc new file mode 100644 index 0000000..2869cd8 --- /dev/null +++ b/ConfigFiles/qianfan.qrc @@ -0,0 +1,274 @@ + + + QUI/main.ico + QUI/icon/createNew.png + QUI/icon/exportGeometry.png + QUI/icon/exportMesh.png + QUI/icon/face.png + QUI/icon/faceWithEdge.png + QUI/icon/geometry.png + QUI/icon/graphOption.png + QUI/icon/importGeometry.png + QUI/icon/importMesh.png + QUI/icon/iso.png + QUI/icon/mesh.png + QUI/icon/node.png + QUI/icon/open.png + QUI/icon/save.png + QUI/icon/saveAnimate.png + QUI/icon/saveAs.png + QUI/icon/selectElement.png + QUI/icon/selectGeo.png + QUI/icon/selectNode.png + QUI/icon/selectOff.png + QUI/icon/setting.png + QUI/icon/solve.png + QUI/icon/stop.png + QUI/icon/wireFrame.png + QUI/icon/xMinus.png + QUI/icon/xPlus.png + QUI/icon/yMinus.png + QUI/icon/yPlus.png + QUI/icon/zMinus.png + QUI/icon/zPlus.png + QUI/icon/fit.png + Hello.png + QUI/icon/solidMesh.png + QUI/icon/surfaceMesh.png + QUI/icon/material.png + QUI/icon/physics.png + QUI/icon/chinese_language.png + QUI/icon/english_language.png + QUI/icon/icon.png + QUI/icon/surface.png + QUI/icon/surfaceWithEdge.png + QUI/icon/about_us.png + QUI/icon/help.png + QUI/icon/createSet.png + QUI/icon/solumationsetting.png + QUI/icon/bc.png + QUI/icon/monitor.png + QUI/icon/counter.png + QUI/icon/post.png + QUI/icon/streamline.png + QUI/icon/vector.png + QUI/icon/eleset.png + QUI/icon/nodeset.png + QUI/icon/acce.png + QUI/icon/angle.png + QUI/icon/far.png + QUI/icon/fulid.png + QUI/icon/inlet.png + QUI/icon/near.png + QUI/icon/outlet.png + QUI/icon/press.png + QUI/icon/speed.png + QUI/icon/symmetry.png + QUI/icon/wall.png + QUI/icon/fix.png + QUI/icon/tempure.png + QUI/icon/curve.png + QUI/icon/desCase.png + QUI/icon/desGeo.png + QUI/icon/desMesh.png + QUI/icon/family.png + QUI/icon/water_drop.gif + QUI/icon/expandL1.png + QUI/icon/normalL1.png + QUI/icon/saveImage.png + QUI/icon/execScript.png + QUI/icon/saveScript.png + QUI/icon/boxCell.png + QUI/icon/boxNode.png + QUI/icon/meshChecking.png + QUI/geometry/box.png + QUI/geometry/chamfer.png + QUI/geometry/common.png + QUI/geometry/cone.png + QUI/geometry/cut.png + QUI/geometry/cylinder.png + QUI/geometry/extrude.png + QUI/geometry/fillet.png + QUI/geometry/FitAll.png + QUI/geometry/fuse.png + QUI/geometry/helix.png + QUI/geometry/Home.png + QUI/geometry/lamp.png + QUI/geometry/loft.png + QUI/geometry/revolve.png + QUI/geometry/Rotate.png + QUI/geometry/sphere.png + QUI/geometry/torus.png + QUI/geometry/wedge.png + QUI/geometry/Zoom.png + QUI/geometry/selectface.png + QUI/geometry/selectpoint.png + QUI/geometry/selectwire.png + QUI/geometry/redo.png + QUI/geometry/undo.png + QUI/geometry/mirror.png + QUI/geometry/extrusion.png + QUI/geometry/variableFillet.png + QUI/geometry/face.png + QUI/geometry/line.png + QUI/geometry/point.png + QUI/geometry/move.png + QUI/geometry/add.png + QUI/geometry/remove.png + QUI/icon/createSketch.png + QUI/icon/datumPlane.png + QUI/icon/sketchArc.png + QUI/icon/sketchCircle.png + QUI/icon/sketchLine.png + QUI/icon/sketchRectangle.png + QUI/icon/sketchPolyLine.png + QUI/icon/sketchSpline.png + QUI/geometry/sweep.png + QUI/geometry/edgeDisplay.png + QUI/geometry/facedisplay.png + QUI/geometry/matrix.png + QUI/geometry/pointDisplay.png + QUI/geometry/selectbody.png + QUI/icon/Plugin_ava.png + QUI/icon/Plugin_ins.png + QUI/icon/FastCAEFrame.png + QUI/icon/ruler.png + QUI/geometry/split.png + QUI/geometry/select.png + QUI/geometry/geoFillHole.png + QUI/geometry/geoFixSurface.png + QUI/geometry/geoRemoveFace.png + QUI/geometry/geoSSplit.png + QUI/geometry/geoMeasure.png + QUI/icon/meshComponent.png + QUI/icon/meshFilter.png + QUI/icon/meshFluid.png + QUI/icon/meshmodeling.png + QUI/icon/pluginManager.png + QUI/icon/language.png + QUI/window/2dplot.png + QUI/window/3dgraph.png + QUI/window/preWindow.png + QUI/window/startpage.png + QUI/icon/userguidance.png + QUI/geometry/geoComponent.png + QUI/post/back.png + QUI/post/clip.png + QUI/post/counter.png + QUI/post/end.png + QUI/post/first.png + QUI/post/fit.png + QUI/post/front.png + QUI/post/isosurf.png + QUI/post/next.png + QUI/post/point.png + QUI/post/post.png + QUI/post/previous.png + QUI/post/run.png + QUI/post/saveImage.png + QUI/post/stop.png + QUI/post/streamline.png + QUI/post/up.png + QUI/post/vector.png + QUI/post/video.png + QUI/post/calculator.png + QUI/post/editColor.png + QUI/post/glyph.png + QUI/post/last.png + QUI/post/Reflection.png + QUI/post/rep_point.png + QUI/post/rep_surface.png + QUI/post/rep_surfaceWithEdge.png + QUI/post/rep_wireFrame.png + QUI/post/ScalarBar.png + QUI/post/slice.png + QUI/post/val_on_cell.png + QUI/post/val_on_point.png + QUI/post/isocurve.png + QUI/post/open.png + + + PointCloudProcess/images/files/add.png + PointCloudProcess/images/files/bgColor.png + PointCloudProcess/images/files/cloud.png + PointCloudProcess/images/files/cloud2.png + PointCloudProcess/images/files/copy.png + PointCloudProcess/images/files/CSV.png + PointCloudProcess/images/files/cut.png + PointCloudProcess/images/files/log.png + PointCloudProcess/images/files/new1.png + PointCloudProcess/images/files/new2.png + PointCloudProcess/images/files/paste.png + PointCloudProcess/images/files/pointCloud.png + PointCloudProcess/images/files/search.png + PointCloudProcess/images/files/snapshot.png + PointCloudProcess/images/files/star.png + PointCloudProcess/images/files/txt.png + PointCloudProcess/images/algorithm/binary.png + PointCloudProcess/images/algorithm/chooseMatrix.png + PointCloudProcess/images/algorithm/DASHBOARD.png + PointCloudProcess/images/algorithm/DBSCAN.png + PointCloudProcess/images/algorithm/density.png + PointCloudProcess/images/algorithm/extract.png + PointCloudProcess/images/algorithm/filter.png + PointCloudProcess/images/algorithm/help.png + PointCloudProcess/images/algorithm/Histogram.png + PointCloudProcess/images/algorithm/KMeans.png + PointCloudProcess/images/algorithm/matrix.png + PointCloudProcess/images/algorithm/more.png + PointCloudProcess/images/algorithm/nihe.png + PointCloudProcess/images/algorithm/person.png + PointCloudProcess/images/algorithm/pingjie.png + PointCloudProcess/images/algorithm/transform.png + PointCloudProcess/images/algorithm/tree.png + PointCloudProcess/images/1.gif + PointCloudProcess/images/back.png + PointCloudProcess/images/bottom.png + PointCloudProcess/images/camera.png + PointCloudProcess/images/color.png + PointCloudProcess/images/coodinate.png + PointCloudProcess/images/front.png + PointCloudProcess/images/grey.png + PointCloudProcess/images/ic-redo.png + PointCloudProcess/images/ic-undo.png + PointCloudProcess/images/keda.ico + PointCloudProcess/images/left.png + PointCloudProcess/images/lock.png + PointCloudProcess/images/open.png + PointCloudProcess/images/redo.png + PointCloudProcess/images/reset.png + PointCloudProcess/images/RGB.png + PointCloudProcess/images/right.png + PointCloudProcess/images/rotate0.png + PointCloudProcess/images/rotate90.png + PointCloudProcess/images/rotate180.png + PointCloudProcess/images/rotate270.png + PointCloudProcess/images/seting.png + PointCloudProcess/images/undo.png + PointCloudProcess/images/up.png + PointCloudProcess/images/zoomin.png + PointCloudProcess/images/zoomout.png + + + QUI/beauty/radio_selected.png + QUI/beauty/radio_unselected.png + QUI/beauty/toolbar_bk.png + QUI/beauty/tree_expand.png + QUI/beauty/tree_normal.png + QUI/beauty/dock_title.png + QUI/beauty/close_normal.png + QUI/beauty/close_pressed.png + QUI/beauty/max_normal.png + QUI/beauty/max_pressed.png + QUI/beauty/min_normal.png + QUI/beauty/min_pressed.png + QUI/beauty/restore_normal.png + QUI/beauty/restore_pressed.png + QUI/beauty/qianfan.qss + QUI/beauty/btn_normal.png + QUI/beauty/checked.png + QUI/beauty/tree_item_checked.png + QUI/beauty/tree_item_unchecked.png + QUI/beauty/Sticker_Star.png + + diff --git a/ConfigFiles/qianfan.rc b/ConfigFiles/qianfan.rc new file mode 100644 index 0000000..26bb0a0 --- /dev/null +++ b/ConfigFiles/qianfan.rc @@ -0,0 +1 @@ +IDI_ICON1 ICON DISCARDABLE "QUI/main.ico" \ No newline at end of file diff --git a/ConfigFiles/tools.qrc b/ConfigFiles/tools.qrc new file mode 100644 index 0000000..e228426 --- /dev/null +++ b/ConfigFiles/tools.qrc @@ -0,0 +1,5 @@ + + + QUI/tools/XMaterial.ico + + diff --git a/ConfigFiles/translations.qrc b/ConfigFiles/translations.qrc new file mode 100644 index 0000000..2ce0984 --- /dev/null +++ b/ConfigFiles/translations.qrc @@ -0,0 +1,20 @@ + + + translations/MainWidgets_zh_CN.qm + translations/MainWindow_zh_CN.qm + translations/ModuleBase_zh_CN.qm + translations/Setting_zh_CN.qm + translations/ProjectTree_zh_CN.qm + translations/PostWidgets_zh_CN.qm + translations/Material_zh_CN.qm + translations/IO_zh_CN.qm + translations/GeometryWidgets_zh_CN.qm + translations/PluginManager_zh_CN.qm + translations/GmshModule_zh_CN.qm + translations/SolverControl_Zh_CN.qm + translations/UserGuidence_zh_CN.qm + translations/SelfDefObject_zh_CN.qm + translations/SARibbonBar_zh_CN.qm + translations/PostInterface_zh_CN.qm + + diff --git a/ConfigFiles/translations/GeometryWidgets_zh_CN.qm b/ConfigFiles/translations/GeometryWidgets_zh_CN.qm new file mode 100644 index 0000000000000000000000000000000000000000..b8ea49e3417745e1c90c0383d85ec707c3a9506f GIT binary patch literal 26237 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 QA!=rhl!OSgTRhSK12cJH*Z=?k literal 0 HcmV?d00001 diff --git a/ConfigFiles/translations/GeometryWidgets_zh_CN.ts b/ConfigFiles/translations/GeometryWidgets_zh_CN.ts new file mode 100644 index 0000000..2948785 --- /dev/null +++ b/ConfigFiles/translations/GeometryWidgets_zh_CN.ts @@ -0,0 +1,2321 @@ + + + + + BoolOptionDialog + + + Bool Dialog + 布尔è¿ç®— + + + + Body 1 + 几何体1 + + + + + Selected body(0) + 已选择体(0) + + + + Body 2 + 几何体2 + + + + CreateBox + + + Create Box + 创建立方体 + + + + Name: + å称: + + + + Location + ä½ç½® + + + + Geometry + 几何 + + + + Length: + 长度: + + + + Width: + 宽度: + + + + + + 10.00 + + + + + + + mm + + + + + Height: + 高度: + + + + CreateChamferDialog + + + Create Chamfer + 创建倒角 + + + + Edge + 倒角边 + + + + Selected edge(0) + 已选择边(0) + + + + Distance + è·ç¦» + + + + Section: + 选项: + + + + Symmetrical + 对称 + + + + Asymmetrical + éžå¯¹ç§° + + + + Distance 1: + è·ç¦»1: + + + + + 1.00 + + + + + + mm + + + + + Distance 2: + è·ç¦»2: + + + + CreateCone + + + Create Cone + åˆ›å»ºåœ†å° + + + + Name: + å称: + + + + Location + ä½ç½® + + + + Geometry + 几何 + + + + Radius 1: + åŠå¾„1: + + + + Radius 2: + åŠå¾„2: + + + + + + mm + + + + + Length: + 长度: + + + + Axis + 轴线 + + + + X axis + Xè½´ + + + + Y axis + Yè½´ + + + + Z axis + Zè½´ + + + + User define + 自定义 + + + + CreateCylinder + + + Create Cylinder + 创建圆柱 + + + + Name: + å称: + + + + Location + ä½ç½® + + + + Parameter + 傿•° + + + + Radius: + åŠå¾„: + + + + + mm + + + + + Length: + 长度: + + + + Axis + 轴线 + + + + X axis + Xè½´ + + + + Y axis + Yè½´ + + + + Z axis + Zè½´ + + + + User define + 自定义 + + + + CreateDatumplaneDialog + + + Create Datum + åˆ›å»ºåŸºå‡†å¹³é¢ + + + + Reverse + åå‘ + + + + + Distance + è·ç¦» + + + + 10.00 + + + + + Select + é€‰æ‹©é¢ + + + + Selected Plane + å·²é€‰æ‹©å¹³é¢ + + + + CreateExtrusion + + + Create Extrusion + 拉伸 + + + + Select + 选择边 + + + + Selected edge(0) + 已选择边(0) + + + + Direction + æ–¹å‘ + + + + User define + 自定义 + + + + X axis + Xè½´ + + + + Y axis + Yè½´ + + + + Z axis + Zè½´ + + + + Reverse + åå‘ + + + + Generate Solid + 生æˆå®žä½“ + + + + + Distance + è·ç¦» + + + + 10.00 + + + + + CreateFaceDialog + + + Create Face + åˆ›å»ºåŸºå‡†å¹³é¢ + + + + Name: + å称: + + + + Select Edge + 选择边 + + + + Selected edge(0) + 已选择边(0) + + + + CreateFilterDialog + + + Create Fillet + 创建圆角 + + + + Edge + 倒角边 + + + + Selected edge(0) + 已选择边(0) + + + + Distance + è·ç¦» + + + + Radius: + åŠå¾„: + + + + 1.00 + + + + + mm + + + + + CreateLineDialog + + + Create Edge + 创建直线 + + + + Name: + å称: + + + + Start Point + 起始点 + + + + End Point + 终止点 + + + + Option: + 选项: + + + + Point + 两点 + + + + + Direction + æ–¹å‘ + + + + Tab 1 + + + + + Tab 2 + + + + + Length: + 长度: + + + + 10.00 + + + + + X axis + Xè½´ + + + + Y axis + Yè½´ + + + + Z axis + Zè½´ + + + + User define + 自定义 + + + + Reverse + åå‘ + + + + CreateLoftDialog + + + Create Loft + 创建放样 + + + + + Section + æ¨ªæˆªé¢ + + + + Selected Edge(0) + 已选择边(0) + + + + Add new section + æ·»åŠ æ–°æˆªé¢ + + + + Sections + æ¨ªæˆªé¢ + + + + Numbers + 边数 + + + + Generate Solid + 生æˆå®žä½“ + + + + CreatePoint + + + Create Point + 创建点 + + + + Name: + å称: + + + + Location + ä½ç½® + + + + Offset + åç§» + + + + X: + + + + + Y + + + + + + + 0.00 + + + + + + + mm + + + + + Z + + + + + CreateRevol + + + Create Revol + 旋转 + + + + Basic Point + 基准点 + + + + + Degree + 角度 + + + + 90.0 + + + + + deg + 度 + + + + Edge + 选择边 + + + + + Selected edge(0) + 已选择边(0) + + + + Generate Solid + 生æˆå®žä½“ + + + + Direction + æ–¹å‘ + + + + Option + 选项 + + + + Select On Geometry + 选å–几何边 + + + + Coordinate + åæ ‡ç³» + + + + Tab 1 + + + + + Tab 2 + + + + + X axis + Xè½´ + + + + Y axis + Yè½´ + + + + Z axis + Zè½´ + + + + User define + 自定义 + + + + Reverse + åå‘ + + + + CreateSphere + + + Create Sphere + 创建çƒä½“ + + + + Name: + å称: + + + + Location + ä½ç½® + + + + Geometry + 几何 + + + + Radius: + åŠå¾„: + + + + mm + + + + + DialogFillGap + + + DialogFillGap + å¡«è¡¥ç¼éš™ + + + + Edge + 曲线 + + + + Surface + æ›²é¢ + + + + Solid + 实体 + + + + Please Select + 选å–类型 + + + + Tab 2 + + + + + + + Selected Object(0) + 已选å–对象(0) + + + + + 页 + + + + + DialogRemoveSurface + + + DialogRemoveSurface + ç§»é™¤æ›²é¢ + + + + Surfaces + æ›²é¢ + + + + Selected Surface(0) + 已选择曲é¢(0) + + + + FillHoleDialog + + + DialogFillHole + 填补孔洞 + + + + Hole + 孔洞 + + + + Selected Hole(0) + 选择孔洞 + + + + GeoSplitterDialog + + + Geometry Splitter + 几何分割 + + + + Body + 实体 + + + + Selected Body(0) + 已选择实体(0) + + + + Select Plane + 选å–å¹³é¢ + + + + Method + 方法 + + + + Select plane on geometry + 选å–å‡ ä½•å¹³é¢ + + + + Coordinate + åæ ‡ç³» + + + + Random + ä»»æ„ + + + + Tab 1 + + + + + Tab 2 + + + + + Plane: + å¹³é¢ï¼š + + + + XOY + + + + + XOZ + + + + + YOZ + + + + + Tab 3 + + + + + Basic Point + 基准点 + + + + Axis + 轴线 + + + + X axis + Xè½´ + + + + Y axis + Yè½´ + + + + Z axis + Zè½´ + + + + User define + 自定义 + + + + Selected Plane(0) + 已选择平é¢(0) + + + + GeometryWidget::BoolOpertionDialog + + + Cut + 求差 + + + + Fause + 求和 + + + + Common + 求交 + + + + Unmaned + 未命å + + + + + Selected body(1) + 已选择体(1) + + + + Selected body(0) + 已选择体(0) + + + + Warning + 警告 + + + + Input Wrong ! + è¾“å…¥é”™è¯¯ï¼ + + + + GeometryWidget::CreateBoxDialog + + + Edit Box + 编辑 + + + + Warning + 警告 + + + + Input Wrong ! + è¾“å…¥é”™è¯¯ï¼ + + + + GeometryWidget::CreateChamferDialog + + + + Selected edge(%1) + 已选择边(%1) + + + + Warning + 警告 + + + + Input Wrong ! + è¾“å…¥é”™è¯¯ï¼ + + + + GeometryWidget::CreateConeDialog + + + + Warning + 警告 + + + + The two radii are equal! + 两端é¢åŠå¾„相等! + + + + Input Wrong ! + è¾“å…¥é”™è¯¯ï¼ + + + + GeometryWidget::CreateCylinderDialog + + + Warning + 警告 + + + + Input Wrong ! + è¾“å…¥é”™è¯¯ï¼ + + + + GeometryWidget::CreateDatumplaneDialog + + + + Warning + 警告 + + + + Input Wrong ! + è¾“å…¥é”™è¯¯ï¼ + + + + Create failed ! + åˆ›å»ºå¤±è´¥ï¼ + + + + GeometryWidget::CreateExtrusionDialog + + + + Selected edge(%1) + 已选择边(%1) + + + + Warning + 警告 + + + + Input Wrong ! + è¾“å…¥é”™è¯¯ï¼ + + + + GeometryWidget::CreateFaceDialog + + + Warning + 警告 + + + + Input Wrong ! + è¾“å…¥é”™è¯¯ï¼ + + + + + Selected edge(%1) + 已选择边(%1) + + + + GeometryWidget::CreateFiletDialog + + + Edit Fillet + 编辑 + + + + Warning + 警告 + + + + Input Wrong ! + è¾“å…¥é”™è¯¯ï¼ + + + + + Selected edge(%1) + 已选择边(%1) + + + + GeometryWidget::CreateLineDialog + + + Warning + 警告 + + + + Input Wrong ! + è¾“å…¥é”™è¯¯ï¼ + + + + GeometryWidget::CreateLoftDialog + + + + Selected TopEdge(%1) + 已选择边(%1) + + + + Warning + 警告 + + + + Create failed ! + åˆ›å»ºå¤±è´¥ï¼ + + + + GeometryWidget::CreatePointDialog + + + Warning + 警告 + + + + Input Wrong ! + è¾“å…¥é”™è¯¯ï¼ + + + + GeometryWidget::CreateRevolDialog + + + Selected edge(%1) + 已选择边(%1) + + + + Selected Axis_edge(1) + 已选轴线(1) + + + + Warning + 警告 + + + + Input Wrong ! + è¾“å…¥é”™è¯¯ï¼ + + + + GeometryWidget::CreateSphereDialog + + + Warning + 警告 + + + + Input Wrong ! + è¾“å…¥é”™è¯¯ï¼ + + + + GeometryWidget::GeoDialogBase + + + OK + 确认 + + + + Cancel + å–æ¶ˆ + + + + GeometryWidget::GeoSplitterDialog + + + Selected body(1) + 已选择体(1) + + + + + Selected Plane(1) + 已选择平é¢(1) + + + + Selected body(%1) + 已选择体(%1) + + + + GeometryWidget::MakeFillGapDialog + + + + + + + + Selected Object(%1) + 已选å–对象(%1) + + + + GeometryWidget::MakeFillHoleDialog + + + Edit Hole + 编辑 + + + + + Selected Hole(%1) + 已选择孔洞(%1) + + + + Warning + 警告 + + + + Input Wrong ! + è¾“å…¥é”™è¯¯ï¼ + + + + GeometryWidget::MakeMatrixDialog + + + + Warning + 警告 + + + + + Input Wrong ! + è¾“å…¥é”™è¯¯ï¼ + + + + + Selected body(%1) + 已选择体(%1) + + + + GeometryWidget::MakeRemoveSurfaceDialog + + + Edit RemoveSurface + ç¼–è¾‘ç§»é™¤æ›²é¢ + + + + + Selected Surface(%1) + 已选择曲é¢(%1) + + + + Warning + 警告 + + + + Input Wrong ! + è¾“å…¥é”™è¯¯ï¼ + + + + GeometryWidget::MeasureDistanceDialog + + + Selected Object(%1) + 已选å–对象(%1) + + + + + + Selected Object(1) + 已选å–对象(1) + + + + GeometryWidget::MirorFeatureDialog + + + Warning + 警告 + + + + Input Wrong ! + è¾“å…¥é”™è¯¯ï¼ + + + + + Selected body(%1) + 已选择体(%1) + + + + + Selected Plane(1) + 已选择平é¢(1) + + + + GeometryWidget::MoveFeatureDialog + + + Warning + 警告 + + + + Input Wrong ! + è¾“å…¥é”™è¯¯ï¼ + + + + + Selected body(%1) + 已选择体(%1) + + + + GeometryWidget::RotateFeatureDialog + + + Warning + 警告 + + + + Input Wrong ! + è¾“å…¥é”™è¯¯ï¼ + + + + + Selected body(%1) + 已选择体(%1) + + + + + Selected edge(1) + 已选择边(1) + + + + GeometryWidget::SketchPlanDialog + + + Warning + 警告 + + + + Create failed ! + åˆ›å»ºå¤±è´¥ï¼ + + + + GeometryWidget::SweepDialog + + + + + + Selected edge(%1) + 已选择边(%1) + + + + Warning + 警告 + + + + Input Wrong ! + è¾“å…¥é”™è¯¯ï¼ + + + + GeometryWidget::VariableFilletDialog + + + + Selected edge(1) + 已选择边(1) + + + + + Warning + 警告 + + + + + Input Wrong ! + è¾“å…¥é”™è¯¯ï¼ + + + + MakeMatrixDialog + + + Make Matrix + 阵列 + + + + Option: + 选项: + + + + Linear Matrix + 线性阵列 + + + + Wire Matrix + 环形阵列 + + + + Body + 几何体 + + + + Selected body(0) + 已选择体(0) + + + + Tab 1 + + + + + Direction 2 + æ–¹å‘2 + + + + + + Direction + æ–¹å‘ + + + + + + X axis + Xè½´ + + + + + + Y axis + Yè½´ + + + + + + Z axis + Zè½´ + + + + + + User define + 自定义 + + + + + + Reverse + åå‘ + + + + + Distance + è·ç¦» + + + + + 15 + + + + + + + Count + æ•°ç›® + + + + Direction 1 + æ–¹å‘1 + + + + Set Direction 2 + 设置方å‘2 + + + + Tab 2 + + + + + Axis + 轴线 + + + + Basic Point + 基准点 + + + + Pitch Angle + 角度 + + + + 30 + + + + + deg + 度 + + + + MeasureaDistanceDialog + + + + Distance + è·ç¦» + + + + Calculate + 计算 + + + + MeasureDistance + 测é‡è·ç¦» + + + + The Length Of Curve + 曲线长度 + + + + The Area Of Surface + 曲é¢é¢ç§¯ + + + + The Volume Of Solid + 实体体积 + + + + Tab 1 + + + + + Location + ä½ç½® + + + + Point 1: + 第一点: + + + + + + + + + 0.0 + + + + + + + + , + + + + + Point 2: + 第二点: + + + + Distance: + è·ç¦»: + + + + + + + 0.00 + + + + + + mm + + + + + Tab 2 + + + + + Length + 长度 + + + + The Length is: + 长度为: + + + + + 页 + + + + + Area + é¢ç§¯ + + + + The Area is: + é¢ç§¯æ˜¯ï¼š + + + + mm^2 + + + + + Volume + 体积 + + + + The Volume is: + 体积是: + + + + mm^3 + + + + + Close + 关闭 + + + + + + + Object + 对象 + + + + + + + Selected Object(0) + 已选å–对象(0) + + + + MirrorFeatureDialog + + + Mirror Feature + 镜åƒç‰¹å¾ + + + + Body + 镜åƒå¯¹è±¡ + + + + Selected body(0) + 已选择体(0) + + + + Symmetric Plane + å¯¹ç§°å¹³é¢ + + + + Plane + å¹³é¢ + + + + Select plane on geometry + 选å–å‡ ä½•å¹³é¢ + + + + Coordinate + åæ ‡ç³» + + + + Random + ä»»æ„ + + + + Tab 1 + + + + + Selected Plane(0) + 已选择平é¢(0) + + + + Tab 2 + + + + + Plane: + å¹³é¢ï¼š + + + + XOY + + + + + XOZ + + + + + YOZ + + + + + Tab 3 + + + + + Basic Point + 基准点 + + + + Axis + 轴线 + + + + X axis + Xè½´ + + + + Y axis + Yè½´ + + + + Z axis + Zè½´ + + + + User define + 自定义 + + + + Save Origin body + ä¿ç•™åŽŸå§‹å‡ ä½•ä½“ + + + + MoveFeatureDialog + + + Move Feature + ç§»åŠ¨ç‰¹å¾ + + + + Body + 移动对象 + + + + Selected body(0) + 已选择体(0) + + + + Transform + 移动 + + + + Option: + 选项: + + + + Two Points + 两点 + + + + Distance + è·ç¦» + + + + Tab 1 + + + + + Base Point + 基准点 + + + + End Point + 终止点 + + + + Tab 2 + + + + + Length: + 长度: + + + + 10.00 + + + + + Direction + æ–¹å‘ + + + + X axis + Xè½´ + + + + Y axis + Yè½´ + + + + Z axis + Zè½´ + + + + User define + 自定义 + + + + Reverse + åå‘ + + + + Save Origin body + ä¿ç•™åŽŸå§‹å‡ ä½•ä½“ + + + + RotateFeatureDialog + + + Rotate Feature + è½¬åŠ¨ç‰¹å¾ + + + + Body + 转动对象 + + + + Selected body(0) + 已选择体(0) + + + + Basic Point + 基准点 + + + + Axis + 轴线 + + + + Option: + 选项: + + + + Select on geometry + 选å–几何边 + + + + Coordinate + åæ ‡ç³» + + + + Tab 1 + + + + + Selected edge(0) + 已选择边(0) + + + + Tab 2 + + + + + X axis + Xè½´ + + + + Y axis + Yè½´ + + + + Z axis + Zè½´ + + + + User define + 自定义 + + + + Reverse + åå‘ + + + + Degree + 角度 + + + + Degree: + 角度: + + + + 30.00 + + + + + deg + 度 + + + + Save Origin body + ä¿ç•™åŽŸå§‹å‡ ä½•ä½“ + + + + SketchPlaneDialog + + + Sketch Plane + è‰ç»˜å¹³é¢ + + + + Plane + å¹³é¢ + + + + XOY plane + XOYå¹³é¢ + + + + YOZ plane + YOZå¹³é¢ + + + + XOZ plane + XOZå¹³é¢ + + + + Select a plane + é€‰æ‹©ä¸€ä¸ªå¹³é¢ + + + + Reverse + åå‘ + + + + SketchPointWidget + + + Input Sketch Point + 输入è‰ç»˜ç‚¹ + + + + Coordinate + åæ ‡ + + + + X: + + + + + + 0.00 + + + + + + mm + + + + + Y: + + + + + Add + 添加 + + + + SweepDialog + + + Sweep + 扫略 + + + + Section + æ¨ªæˆªé¢ + + + + + Selected edge(0) + 已选择边(0) + + + + Path + 路径 + + + + Generate Solid + 生æˆå®žä½“ + + + + VariableFilletDialog + + + Variable Fillet + 创建å¯å˜åœ†è§’ + + + + Edge + 倒角边 + + + + Selected edge(0) + 已选择边(0) + + + + + Radius + åŠå¾„ + + + + + Radius: + åŠå¾„: + + + + + 1.00 + + + + + + mm + + + + + Add Variable Point: + 添加å¯å˜ç‚¹ï¼š + + + + Add + 添加 + + + + Table + å¯å˜ç‚¹åˆ—表 + + + + Location + ä½ç½® + + + + Location(u): + 傿•°åŒ–ä½ç½®(u): + + + + 0.00 + + + + + OK + 确认 + + + + geoPointWidget + + + Form + + + + + X: + + + + + + + 0.00 + + + + + + + mm + + + + + Y: + + + + + Z: + + + + diff --git a/ConfigFiles/translations/GmshModule_zh_CN.qm b/ConfigFiles/translations/GmshModule_zh_CN.qm new file mode 100644 index 0000000000000000000000000000000000000000..0240706cd07480e8df2325585ca8bbc48ae7be66 GIT binary patch literal 7954 zcmb_h4QvzF9eLifeg=L!3HpCTuriDyNyx$dHo9_NfPeQBtgJ@Yc7cEU z7Tf*3A0t$8iQtq5+oA10hZ^GqOAisO?k)1o`~gCaYJyc9!MY1YXKvg;h}mYh9U4Js z%4_zMU%C;hn_)lq`3!`L?k8A2NU-J=``<7A5FyuQK(Ke6a_nzC0rekt96hoI@B?S) z*lWPMPOxH&GjX&B{=A)F#k~Y;A9Oz14EdvR{z%Z zkGKui_#HRjdKGZDd$YF*>K}D)KLGow=v9IhZ3JsyaDUOd7y2QvwvN-_|0X;2%@Ksk z=M$`HV&}fUAJ+9nf@O=?#Xr7|P|a3$>755)Km3JV+XQ`dhuF1e-b1LAAy~DAUB43i zpqcD*7nZ|5_$6Q*@_d(I^&R%?AASexahtuQ*p(k9So7E7`v#7KA55^iw)m%)y|Dhj zAXxjA*Yzk1{e0b9zi|cB^>4r)Sf>Tv`cu;(9wJ!!Fu|%wc$*{2D=Ke!N)pVdYd9&+^N%8 zzNJZ=!lKLtg-y7LN_B7TOe}nAbN7%&^o|olg9Dh#W44?f7}bSimx?j2LlQ)p9*ape zw+FkgX_1Q6D!63=PR6K#+zLraQlqhirc`gvGIYyLpDe(%G-t|LH{9U9c%1VH z-e?{|S;fxO^U?O8R)L*rZ1C-DYg;~d3Ee9mO}?jF0#_TB6H<)Qe}iXl0B@L}N+s=m z^Vdz)1z_6KF`TCO2YW~GO+26#>FMCpduqX0Tdl1#5 z1~gp@QWnHX+$ZB07nG7htiEBoc`zkAg{~2usy)@%y?aCWEyD))24y}iPq@XqJ}|Cy z2+PzUjsV&>U(2YtUr1+UPEvYoLD{9Fcr&<9g740nQ<^*&_Y8Xiv(`TyxxI_OW79(3 z8<03D`h931m*6v86l0Ogj5lg%V?L((p%*~0A9-K*4Z9w}LOel4 zx|Za*QtIQAK`hHq0a<7gXYW=$ZzUGvazg$1t$9pv#p6%wnXCAikj)gp^maa@a1nSInJKEl-|d3Z@4?OD07L^LP*M08FH$z;;s*hEV+vi4{}<|Od-p|c0M!w$=7Zfj;>a*fR3`^>O88m3tCwK*B$x&+Lt>P>e6Pq_+*ycX{_sY zL{92y-9oIO9sGX~O!ah8ZYa7BYSN3D6HGH-bP=#1{V#RZ5UmJi)BSuOHmj`v*7H#~ zosCC9<=vxzFza)Nfu%osb#$8HI$>*6bhzA1*^G8`3bdPBpxwLz?H(%7ZhnDw3#fL= z%}2KDZa$91d{Vs)o3;ncnN4ruQ60g)SW>UHGYP|ObTM|rbJ839i0)Lw|AP329E&OQhcPvs~&rEz>JhszzSR$RwMF*2g@irUv%85a$VYNk&0xn*TdyERwc{VJ7P^Vo?U z4Pz&ET6v;fo@uRTlqaQ5dtJ(7a_q#2RSX8LM%*4*tB+aDHN$0yN-=!NMXS}LgqjZu z8-0f-<2yWo?;fM?p2_&`vGlDz&-Yy2{T;0s@4|Hoz-UB_)9Qxqy{ILBo z(J3=poBhkN1drGBAlH(_ylCESMJ#Dgd($wAw3x|6hTOi*qZqoSn+cdj@W)a3L6d1v zSsTBR(=V*L>+<)HQjyhIffBQ~#5ATL7827?U;bpmETq+B!pz=sGLc6xB&45Ac>r%m9@m<(+aVrD$SB*dIzJqgL<7*^HMoRuY|%Vp*_T5H`k zBN^Nqly^ewvhjH%*Ds~HC$qdd4K<@d!jqD0ijM+B+l*-_Q7_wO#*k`3s!HP)Ae9vA zGd@&mrKJ=KXu+P*$D^9sIXbQPxTU62Vic&V6t=3XxfiT{zFcwlrks1f zk_j`-O=qk4&YqirkJe4a1G+m^X)q;8G7MYdTu{aXWZFXU;ZV}hTII^=lZ94!6@seK r + + + + DialogFluidMesh + + + Fluid Mesh + æµä½“网格 + + + + Element Type + 网格类型 + + + + Tet + å››é¢ä½“ + + + + Hex + å…­é¢ä½“ + + + + Order: + 阶次: + + + + first order + 一阶 + + + + second order + 二阶 + + + + Solid + 实体 + + + + Selected Solid(0) + 已选实体(0) + + + + Fluid Field + æµä½“域 + + + + Start Point: + 起始点: + + + + End Point: + 终点: + + + + Parameter + 傿•° + + + + Method: + 方法: + + + + Delaunay + + + + + New Delaunay + + + + + Frontal + + + + + Frontal Delaunay + + + + + Frontal Hex + + + + + MMG3D + + + + + R-tree + + + + + Element Size: + å•元尺寸: + + + + Gmsh::DialogFluidMesh + + + Selected Solid(%1) + 已选实体(%1) + + + + + Warning + 警告 + + + + No object has been selected ! + æ²¡æœ‰é€‰ä¸­çš„å¯¹è±¡ï¼ + + + + There is a problem with fluid region parameters ! + æµä½“åŸŸå‚æ•°é”™è¯¯ï¼ + + + + Gmsh::GmshModule + + + Gmsh Working... + Gmsh工作中… + + + + Gmsh::GmshThread + + + Warning + 警告 + + + + Gmsh is not exist ! + Gmshä¸å­˜åœ¨ï¼ + + + + Gmsh::LocalSettingDialog + + + Selected Solid(%1) + 已选实体(%1) + + + + Value: + 密度值: + + + + + Radius: + åŠå¾„: + + + + + + Length: + 长: + + + + Width: + 宽: + + + + Height: + 高: + + + + + + + + VIn: + 内部尺寸: + + + + + + + + VOut: + 外部尺寸: + + + + + + Thinckness: + 厚度: + + + + RadiusIn 1: + 内åŠå¾„ 1: + + + + RadiusOut 1: + 外åŠå¾„ 1: + + + + RadiusIn 2: + 内åŠå¾„ 2: + + + + RadiusOut 2: + 外åŠå¾„ 2: + + + + Gmsh::SolidMeshDialog + + + + + Selected Solid(%1) + 已选实体(%1) + + + + Warning + 警告 + + + + No object has been selected ! + æ²¡æœ‰é€‰ä¸­çš„å¯¹è±¡ï¼ + + + + Gmsh::SurfaceMeshDialog + + + + + Selected Surface(%1) + 已选曲é¢(%1) + + + + Warning + 警告 + + + + No object has been selected ! + æ²¡æœ‰é€‰ä¸­çš„å¯¹è±¡ï¼ + + + + LocalSettingDialog + + + Local Setting + 局部密度 + + + + Solid + 实体 + + + + Frustum + 截头锥体 + + + + Local + 局部设置 + + + + 3 + + + + + Selected Solid(0) + 已选实体(0) + + + + X Axis + X è½´ + + + + Y Axis + Y è½´ + + + + Z Axis + Z è½´ + + + + Custom + 自定义 + + + + X: + + + + + Y: + + + + + Z: + + + + + 1 + + + + + 2 + + + + + Ok + 确定 + + + + Cancel + å–æ¶ˆ + + + + Type: + 类型: + + + + Box + 立方体 + + + + Ball + çƒä½“ + + + + Cylinder + 圆柱体 + + + + 6 + + + + + 4 + + + + + 5 + + + + + 7 + + + + + Point + 点 + + + + SolidMeshDialog + + + Solid Mesh + 实体网格剖分 + + + + Solid + 实体 + + + + Select All + 全选 + + + + Select Visible + 选择å¯è§é¡¹ + + + + Selected Solid(0) + 已选实体(0) + + + + Parameter + 傿•° + + + + Method: + 方法: + + + + Delaunay + + + + + New Delaunay + + + + + Frontal + + + + + Frontal Delaunay + + + + + Frontal Hex + + + + + MMG3D + + + + + R-tree + + + + + Element Size Factor: + 尺寸因å­ï¼š + + + + Min Element Size: + 最å°å•元尺寸: + + + + Max Element Size: + 最大å•元尺寸: + + + + Geometry Clean + å‡ ä½•æ¸…ç† + + + + Cohence + 网格连贯 + + + + Local setting + 局部密度 + + + + Element Type + 网格类型 + + + + Tet + å››é¢ä½“ + + + + Hex + å…­é¢ä½“ + + + + Order: + 阶次: + + + + first order + 一阶 + + + + second order + 二阶 + + + + SurfaceMeshDialog + + + Surfafce Mesh + 曲é¢ç½‘格划分 + + + + Surface + æ›²é¢ + + + + Select All + 全选 + + + + Select Visible + 选择å¯è§é¡¹ + + + + Selected Surface(0) + 已选曲é¢(0) + + + + Element Type + 网格类型 + + + + Triangle + 三角形 + + + + Quad + 四边形 + + + + Order: + 阶次: + + + + first order + 一阶 + + + + second order + 二阶 + + + + Parameter + 傿•° + + + + Method: + 方法: + + + + Auto + + + + + Mesh Adapt + + + + + Delaunay + + + + + Frontal + + + + + Delaunay for quad + + + + + Packing for parallelograms + + + + + Element Size Factor: + 尺寸因å­ï¼š + + + + Min Element Size: + 最å°å•元尺寸: + + + + Max Element Size: + 最大å•元尺寸: + + + + Smoothing Steps: + 光滑迭代次数: + + + + Geometry Clean + å‡ ä½•æ¸…ç† + + + + Cohence + 网格连贯 + + + + Local setting + 局部密度 + + + diff --git a/ConfigFiles/translations/IO_zh_CN.qm b/ConfigFiles/translations/IO_zh_CN.qm new file mode 100644 index 0000000000000000000000000000000000000000..9cc9cdbcde1d751cecea71bfcc43936fd1535c7c GIT binary patch literal 553 zcmcE7ks@*G{hX<16=n7(EZlq7iGhK^f>Gjm5RhizNc6l1q+W0wywVAzSM#vUa%Es( zROamr5C_s5cxUi^1kwR~0Z)>E@?n`k&UI!WODriko+0*W6?ba8-?#r#3Nj3;42BA_ z96%`sHXxSrFG$VH%u81YD9X=DO)gPz%gjl&QczMgRAL883wrunSwW>hGM@g7U{n3? zMn~W=RWdlSj5I_40|DGoiq83YX_@JzMTsSu`FUU`6)R|H>7^u=C}`=GRFr6f+{Pa0 zp9FF;*hK;i?hLsM#S9s-PyJ*3bQRR#hVi@S7H24g=NDxIU8JX{hoO}N6hxrlfotIe z1q#?&48TCx<=>oaWP`O`VO-~VTXYcvSSNL5J7FUkcvG(SzD1jGY|8jt}L rsLU@_$jmLsFDg;UELJEl%Fjzz#4w+wJ1xWuZXSDhVi72IP?P}x!vT*k literal 0 HcmV?d00001 diff --git a/ConfigFiles/translations/IO_zh_CN.ts b/ConfigFiles/translations/IO_zh_CN.ts new file mode 100644 index 0000000..2e6ee0a --- /dev/null +++ b/ConfigFiles/translations/IO_zh_CN.ts @@ -0,0 +1,47 @@ + + + + + IO::ProjectFileIO + + + Opening Project File: "%1" + 打开工程文件:“%1†+ + + + Saving Project File: "%1" + ä¿å­˜å·¥ç¨‹æ–‡ä»¶ï¼šâ€œ%1†+ + + + QObject + + + Open File + 打开文件 + + + + Configuration Files (*.dat *.txt) + + + + + + Warning + 警告 + + + + + The format of the file that you import is wrong! + å¯¼å…¥çš„æ¨¡æ¿æ ¼å¼æœ‰è¯¯ï¼ + + + + Gmsh Working... + Gmsh工作中… + + + diff --git a/ConfigFiles/translations/MainWidgets_zh_CN.qm b/ConfigFiles/translations/MainWidgets_zh_CN.qm new file mode 100644 index 0000000000000000000000000000000000000000..af85320a906fbb7673523f70d860c7d62cb8347b GIT binary patch literal 15862 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 m$PjOUngk + + + + ControlPanel + + + Control Panel + æŽ§åˆ¶é¢æ¿ + + + + Geometry + 几何 + + + + Mesh + 网格 + + + + Analysis + è®¡ç®—åˆ†æž + + + + + Post + åŽå¤„ç† + + + + Plot + + + + + Property + 属性 + + + + Settings + 设置 + + + + Para Widget + 傿•° + 傿•° + + + + CreateGeoComponentDialog + + + Dialog + 创建几何组件 + + + + Set Name: + 组件åç§°: + + + + Type: + 类型: + + + + CreateSetDialog + + + Create Set + 创建组件 + + + + Set Name : + 组件åç§° : + + + + Set Type : + 组件类型 : + + + + Element + å•å…ƒ + + + + Find Conplanar Points or Cells + 寻找共é¢çš„点或者å•å…ƒ + + + + Node + 节点 + + + + Find Condition + 寻找æ¡ä»¶ + + + + Id : + + + + + minAngle : + 最å°è§’度 : + + + + DialogCreateMaterial + + + Create Material + åˆ›å»ºææ–™ + + + + Name: + å称: + + + + Type: + 类型: + + + + DialogCreateModel + + + Create Case + 创建算例 + + + + Name: + å称: + + + + Type: + 类型: + + + + DialogRename + + + Rename + é‡å‘½å + + + + New name: + æ–°å称: + + + + DialogSelectComponents + + + Dialog + 创建几何组件 + + + + OK + 确认 + + + + Cancel + å–æ¶ˆ + + + + DialogVTKTransform + + + Dialog + 创建几何组件 + + + + Selected Component + 选择组件 + + + + Rotate + 旋转 + + + + Rotate Angle : + 旋转角度: + + + + X Axis + Xè½´ + + + + Y Axis + Yè½´ + + + + Z Axis + Zè½´ + + + + Custom Axis + 自定义轴 + + + + Rotate Axis : + 旋转轴: + + + + Custom Rotate Axis + 自定义旋转轴 + + + + Custom X Axis : + 自定义X轴: + + + + Custom Y Axis : + 自定义Y轴: + + + + Custom Z Axis : + 自定义Z轴: + + + + Move Location + 移动 + + + + Direction Of X Axis : + 沿X轴移动è·ç¦»ï¼š + + + + Direction Of Y Axis : + 沿Y轴移动è·ç¦»ï¼š + + + + Direction Of Z Axis : + 沿Z轴移动è·ç¦»ï¼š + + + + Scale + 缩放 + + + + Scale Of X Axis : + X轴缩放比例: + + + + Scale Of Y Axis : + Y轴缩放比例: + + + + Scale Of Z Axis : + Z轴缩放比例: + + + + FilterMeshDialog + + + FilterMesh + 网格过滤 + + + + Remove Dimesion + 维度移除 + + + + 0 D + é›¶ç»´ + + + + 1 D + 一维 + + + + 2 D + 二维 + + + + 3 D + 三维 + + + + Mesh + 网格 + + + + GeoMeshRotateDialog + + + Rotate Feature + + + + + Basic Point + + + + + Degree + + + + + Degree: + + + + + 30.00 + + + + + deg + + + + + Axis + + + + + User define + + + + + X axis + + + + + Y axis + + + + + Z axis + + + + + Face + + + + + Selected Face(0) + + + + + MainWidget::CreateGeoComponentDialog + + + Ok + 确定 + + + + Cancel + å–æ¶ˆ + + + + Point + 点 + + + + Line + 线 + + + + Surface + é¢ + + + + Body + 体 + + + + Warning + 警告 + + + + No Point or Line Surface Body selected ! + 没有点ã€çº¿ã€é¢ã€ä½“è¢«é€‰æ‹©ï¼ + + + + MainWidget::CreateMaterialDialog + + + + + Warning + 警告 + + + + Material name can not be empty! + ææ–™åç§°ä¸èƒ½ä¸ºç©ºï¼ + + + + Material "%1" has already existed ! + ææ–™â€œ%1â€å·²ç»å­˜åœ¨ï¼ + + + + Material type can not be empty! + ææ–™ç±»åž‹ä¸èƒ½ä¸ºç©ºï¼ + + + + MainWidget::CreatePhysicsModel + + + OK + 确认 + + + + Cancel + å–æ¶ˆ + + + + Name can not be empty + åç§°ä¸èƒ½ä¸ºç©º + + + + Project "%1" has already existed ! + 案例“%1â€å·²ç»å­˜åœ¨ï¼ + + + + Name contains too many characters ! + å称包å«è¿‡å¤šå­—ç¬¦ï¼ + + + + Name can not contains fellowing char: \/:*?"<>|! + åç§°ä¸èƒ½åŒ…å«ä¸‹åˆ—字符:\/:*?"<>|! + + + + + + + Warning + 警告 + + + + MainWidget::CreateSetDialog + + + OK + 确认 + + + + Cancel + å–æ¶ˆ + + + + PointId : + 节点Id : + + + + CellId : + å•å…ƒId : + + + + + + + Warning + 警告 + + + + Open window first ! + å‰å¤„ç†çª—壿œªå¼€å¯ï¼ + + + + + + No Node or Element selected ! + 当剿²¡æœ‰é€‰ä¸­çš„节点或å•å…ƒï¼ + + + + MainWidget::DialogSelectComponents + + + Select Components + 选择组件 + + + + MainWidget::DialogVTKTransform + + + Clicked Button Selected Components + 点击按钮选择组件 + + + + Mesh Modeling + 网格建模 + + + + delete this item + 删除此项 + + + + MainWidget::GeometryRenameDialog + + + Warning + 警告 + + + + The Same Name! + 相åŒçš„åç§°ï¼ + + + + MainWidget::GeometryTreeWidget + + + + Geometry + 几何 + + + + + Datum + 基准 + + + + + GeoComponent + 几何组件 + + + + Edit + 编辑 + + + + + + Rename + é‡å‘½å + + + + + Delete + 删除 + + + + Import Geometry + 导入几何 + + + + Hide All + éšè—全部 + + + + Show All + 显示全部 + + + + Remove All + 移除全部 + + + + Remove Visible + 移除å¯è§ + + + + Remove + 移除 + + + + MainWidget::MeshCheckingDialog + + + + All Count + 总数 + + + + MainWidget::MeshRenameDialog + + + Warning + 警告 + + + + The Same Name! + 相åŒçš„åç§°ï¼ + + + + MainWidget::MeshSetMergeDialog + + + OK + 确认 + + + + Cancel + å–æ¶ˆ + + + + Warning + 警告 + + + + No merge object selected ! + 没有åˆå¹¶å¯¹è±¡ï¼ + + + + MainWidget::MeshWidget + + + + Mesh + 网格 + + + + + Set + 组件 + + + + Edit + 编辑 + + + + Rename + é‡å‘½å + + + + + Remove + 移除 + + + + Import + 导入网格 + + + + Hide All + éšè—全部 + + + + Show All + 显示全部 + + + + Remove All + 移除全部 + + + + Remove Visible + 移除å¯è§ + + + + Merge/Cut + åˆå¹¶/å‰ªè£ + + + + MainWidget::PhysicsWidget + + + + + Materials + ææ–™ + + + + Load From Material Lib + ä»Žææ–™åº“导入 + + + + + + Case + 算例 + + + + Create Material + åˆ›å»ºææ–™ + + + + Remove From Material Lib + ä»Žææ–™åº“移除 + + + + Delete Material + 删除 + + + + Add to Material Lib + æ·»åŠ è‡³ææ–™åº“ + + + + Create Case + 创建算例 + + + + Delete Case + 删除 + + + + Solve Case + 求解 + + + + Rename Case + é‡å‘½å + + + + Import Templete + å¯¼å…¥æ¨¡æ¿ + + + + Open Dir + 打开目录 + + + + Import INP File + 导入INP文件 + + + + Export INP File + 导出INP文件 + + + + + + + Warning + 警告 + + + + Confirm to delete? + 确认删除? + + + + Template import successfully! + 模æ¿å¯¼å…¥æˆåŠŸï¼ + + + + Name can not contains fellowing char: \/:*?"<>|! + åç§°ä¸èƒ½åŒ…å«ä¸‹åˆ—字符:\/:*?"<>|! + + + + Name contains too many characters ! + å称包å«è¿‡å¤šå­—ç¬¦ï¼ + + + + Case "%1" has already exist! + 案例“%1â€å·²ç»å­˜åœ¨ï¼ + + + + MainWidget::PreWindow + + + Pre-Window + å‰å¤„ç†çª—å£ + + + + MainWidget::PropertyTable + + + + + Name + åç§° + + + + + + Value + 值 + + + + Basic Info + åŸºç¡€ä¿¡æ¯ + + + + Parameters + 傿•° + + + + MainWidget::SavePictureDialog + + + Save Picture + ä¿å­˜å›¾ç‰‡ + + + + Warning + 警告 + + + + File name is empty ! + 文件åç§°ä¸èƒ½ä¸ºç©ºï¼ + + + + MainWidget::SketchViewProvider + + + Location: %1, %2 + é¼ æ ‡ä½ç½®ï¼š %1, %2 + + + + MeshCheckingDialog + + + Mesh Quality + ç½‘æ ¼è´¨é‡ + + + + Method: + 方法: + + + + None + + + + + Area + + + + + Aspect Beta + + + + + Aspect Frobenius + + + + + Aspect Gamma + + + + + Aspect Ratio + + + + + Collapse Ratio + + + + + Condition + + + + + Diagonal + + + + + Dimension + + + + + Distortion + + + + + Edge Ratio + + + + + Jacobin + + + + + Max Angle + + + + + Max Aspect Frobenius + + + + + Max Edge Ratio + + + + + Mad Aspect Frobenius + + + + + Min angle + + + + + Normal + + + + + Oddy + + + + + Radius Ratio + + + + + Relative Size Squared + + + + + Scalaed Jacobin + + + + + Shape + + + + + Shape and size + + + + + Shear + + + + + Shear and size + + + + + Skew + + + + + Strech + + + + + Taper + + + + + Volume + + + + + Warpage + + + + + waitting + 等待 + + + + Checking... + 正在检查…… + + + + Basic + åŸºæœ¬ä¿¡æ¯ + + + + Input + 输入 + + + + + Type + å•元类型 + + + + + Count + æ•°ç›® + + + + Checked + 已检查 + + + + Show out of range elements while close + 关闭时显示超出范围å•å…ƒ + + + + Min + 最å°å€¼ + + + + Max: + 最大值: + + + + Check + 检查 + + + + Close + 关闭 + + + + MeshSetMergeDialog + + + Merge + åˆå¹¶ + + + + Name: + å称: + + + + Type: + 类型: + + + + Node + 节点 + + + + Element + å•å…ƒ + + + + Available: + å¯é€‰æ‹©ï¼š + + + + + >> + + + + + + << + + + + + Merge: + åˆå¹¶ï¼š + + + + Cut: + 剪è£ï¼š + + + + MesherDialog + + + MesherSelectDialog + 选择网格剖分器 + + + + Mesher + 网格剖分器 + + + + Mesher: + 网格剖分器: + + + + ParameterGroupLabel + + + Form + + + + + PropTable + + + Form + + + + + QObject + + + + Warning + 警告 + + + + The material that you want to load from lib already exists! + 已存在åŒåçš„ææ–™ï¼ + + + + Material create failed! + ææ–™åˆ›å»ºå¤±è´¥ï¼ + + + + ReportProcessingDialog + + + Form + + + + + Generateing Mesh,please wait! + 正在进行网格划分,请等待! + + + + PushButton + 按钮 + + + + Generateing Mesh + 网格划分 + + + + Cancel + å–æ¶ˆ + + + + SavePicDialog + + + Save Picture + ä¿å­˜å›¾ç‰‡ + + + + Width: + 宽度: + + + + High: + 高度: + + + + File: + 文件: + + + + Browse + æµè§ˆ + + + + projectSolveDialog + + + Solve Project + 求解项目 + + + + Case: + 算例: + + + + Solve + 求解 + + + + Cancel + å–æ¶ˆ + + + + Solver: + 求解器: + + + diff --git a/ConfigFiles/translations/MainWindow_zh_CN.qm b/ConfigFiles/translations/MainWindow_zh_CN.qm new file mode 100644 index 0000000000000000000000000000000000000000..58a84fcafb100833d3926ff45c3cf264e2decc14 GIT binary patch literal 13917 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 + + + + AboutDialog + + + About + 关于 + + + + Copyright Reserved + + + + + Website: + 网å€ï¼š + + + + www.qianfankeji.cn + + + + + EMail: + 邮箱: + + + + TextLabel + + + + + OK + 确定 + + + + GUI::MainWindow + + + Save + ä¿å­˜ + + + + Do you want to save before exit ? + é€€å‡ºå‰æ˜¯å¦ä¿å­˜ï¼Ÿ + + + + Yes + 是 + + + + No + å¦ + + + + Cancel + å–æ¶ˆ + + + + + + + + + + + + Warning + 警告 + + + + + Do you want to save current data ? + 是å¦ä¿å­˜å½“剿•°æ®ï¼Ÿ + + + + + Project file(*.diso);;Project file(*.xml) + 工程文件(*.diso);;工程文件(*.xml) + + + + + DISO file(*.diso);;XML file(*.xml) + + + + + Open a project + 打开工程 + + + + Save project + ä¿å­˜å·¥ç¨‹ + + + + Geometry will be lost! still continue? + 几何信æ¯å°†ä¼šä¸¢å¤±ï¼Œæ˜¯å¦ç»§ç»­ï¼Ÿ + + + + + The MeshPlugin is not installed ! + 没有安装网格æ’ä»¶! + + + + Import Mesh + 导入网格 + + + + Export Geometry + 导出几何 + + + + No one has any grid! + æ²¡æœ‰ç½‘æ ¼ï¼ + + + + Export Mesh + 导出网格 + + + + Import Geometry + 导入几何 + + + + Please make sure " %1 " file exist! + 文件“%1â€ä¸å­˜åœ¨ï¼ + + + + The program quit with an exception before, do you want to reload the contents? + 程åºé€€å‡ºå‰å‡ºçŽ°å¼‚å¸¸ï¼Œæ˜¯å¦è¦é‡æ–°åŠ è½½å†…å®¹? + + + + + Recent + 最近文件 + + + + %1 not exist ! + %1 ä¸å­˜åœ¨ï¼ + + + + File "%1" is not exist ! + 文件“%1â€ä¸å­˜åœ¨ï¼ + + + + Do you need to load? + 是å¦éœ€è¦é‡æ–°åŠ è½½ï¼Ÿ + + + + Info + æç¤º + + + + Restart to load the style! + é‡å¯ä»¥åŠ è½½æ–°é£Žæ ¼ï¼ + + + + Restart later + ç¨åŽé‡å¯ + + + + Restart now + 马上é‡å¯ + + + + 3DRender + 三维渲染 + + + + Save Script + ä¿å­˜è„šæœ¬ + + + + Execute Script + 执行脚本 + + + + %1 execute failed ! + %1æ‰§è¡Œå¤±è´¥ï¼ + + + + Canvas %1mm * %2mm + 画布 %1mm * %2mm + + + + GUI::SignalHandler + + + + + + + + + + + + + + + + + + + + + + + + Warning + 警告 + + + + %1 is Solving , Please wait... + %1正在求解,请等待… + + + + Solving-%1 + 正在求解-%1 + + + + Mesh Generated "%1" + 网格已生æˆâ€œ%1†+ + + + + + + + + + + + + + + + + + + + + + + + Open PreWindow First! + 请先打开å‰å¤„ç†çª—å£ï¼ + + + + open file + 打开文件 + + + + dat(*.dat);;Allfile(*.*) + + + + + Select File. + 选择文件 + + + + GUI::SubWindowManager + + + No GraphWindow opened! + 没有打开绘图窗å£ï¼ + + + + 3D Render + 三维渲染 + + + + MainWindow + + + + Solve + 求解 + + + + + Language + 语言 + + + + + + + New + 新建 + + + + + Ctrl+N + + + + + + + + Open + 打开 + + + + + Ctrl+O + + + + + + + + Close + 关闭 + + + + + Save + ä¿å­˜ + + + + FastCAE + + + + + &File + &文件 + + + + &View + &视图 + + + + &Help + &帮助 + + + + &Solve + &求解 + + + + &Settings + &设置 + + + Post + åŽå¤„ç† + + + + FileToolBar + æ–‡ä»¶å·¥å…·æ  + + + + SolveToolBar + æ±‚è§£å·¥å…·æ  + + + + ViewToolBar + è§†å›¾å·¥å…·æ  + + + + SelectToolBar + é€‰æ‹©å·¥å…·æ  + + + + MesherToolBar + ç½‘æ ¼å·¥å…·æ  + + + + + Ctrl+S + + + + + + SaveAs + å¦å­˜ä¸º + + + + &Mesh + &网格 + + + + + View + 视图 + + + + + Select + 选择 + + + + Windows + çª—å£ + + + + &Geometry + &几何 + + + + Feature Modeling + 特å¾å»ºæ¨¡ + + + + Feature Operation + ç‰¹å¾æ“作 + + + + Sketch + è‰å›¾ + + + + DisplayToolBar + + + + + WBCLFZ_CAE + + + + + SetToolBar + + + + + toolBar_4 + 撤销é‡åš + + + + + + + + + + toolBar + + + + + + toolBar_2 + + + + + + toolBar_3 + + + + + + Style + 风格 + + + + Geometry Edit + å‡ ä½•æ¸…ç† + + + + Plugins + æ’ä»¶ + + + PointCloud + 点云 + + + + PCLFilter + 点云滤波 + + + + reSurfaceMesh + ç‚¹äº‘é‡æž„ + + + + + Ctrl+Q + + + + + + + + English + 英文 + + + + + Import Mesh + 导入网格 + + + + + Import Geometry + 导入几何 + + + + + Ctrl+G + + + + + + WorkingDir + 工作目录 + + + + + Solver Manager + æ±‚è§£å™¨ç®¡ç† + + + + + ViewXPlus + Xæ­£å‘ + + + + + ViewXMinus + Xè´Ÿå‘ + + + + + ViewYPlus + Yæ­£å‘ + + + + + ViewYMinus + Yè´Ÿå‘ + + + + + ViewZPlus + Zæ­£å‘ + + + + + ViewZMinus + Zè´Ÿå‘ + + + + + FitView + é€‚åº”çª—å£ + + + + + selectOff + 清除选择 + + + + + selectMeshNode + 选择网格节点 + + + + + selectMeshCell + 选择网格å•å…ƒ + + + + + Solve Options + 求解选项 + + + + + Graph Options + 绘图选项 + + + + + SurfaceMesh + 曲é¢ç½‘格剖分 + + + + + SolidMesh + 实体网格剖分 + + + + + Export Mesh + 导出网格 + + + + Ctrl+Shift+M + + + + + + User Manual + 用户手册 + + + + + About + 关于 + + + + + DisplayNode + 显示网格节点 + + + + + DisplayWireFrame + 显示线框 + + + + + DisplaySurface + æ˜¾ç¤ºç½‘æ ¼é¢ + + + + + Create Set + 创建组件&&寻找共é¢ç‚¹æˆ–å•å…ƒ + + + + + 2D Plot + 二维绘图 + + + + + 3D Graph + 三维渲染 + + + + + Save Script + ä¿å­˜è„šæœ¬ + + + + + Execute Script + 执行脚本 + + + + + Ctrl+R + + + + + + GenMesh + 生æˆç½‘æ ¼ + + + + + Save Picture + ä¿å­˜å›¾ç‰‡ + + + + + BoxMeshNode + 框选网格节点 + + + + + BoxMeshCell + 框选网格å•å…ƒ + + + + + Start Page + 开始页 + + + + + Pre Window + å‰å¤„ç†çª—å£ + + + + + Checking + ç½‘æ ¼è´¨é‡æ£€æŸ¥ + + + + + CreateBox + 创建立方体 + + + + + CreateCylinder + 创建圆柱体 + + + + + CreaterSphere + 创建çƒä½“ + + + + + Chamfer + 倒角 + + + + + Fillet + 倒圆角 + + + + + BoolCut + 求差 + + + + + BoolFause + 求和 + + + + + BoolCommon + 求交 + + + + + undo + 撤销 + + + + + Ctrl+Z + + + + + + redo + é‡åš + + + + + Ctrl+Y + + + + + + ExportGeometry + 导出几何 + + + + Ctrl+Shift+G + + + + + + CreaterCone + åˆ›å»ºåœ†å° + + + + + MirrorFeature + 镜åƒç‰¹å¾ + + + + + Variable Fillet + å¯å˜åœ†è§’ + + + + + Extrude + 拉伸 + + + + + Create Point + 创建点 + + + + + Create Line + 创建直线 + + + + + Create_Surface + åˆ›å»ºå¹³é¢ + + + + + Move + ç§»åŠ¨ç‰¹å¾ + + + + + Rotate + è½¬åŠ¨ç‰¹å¾ + + + + + Revol + 旋转 + + + + + loft + 放样 + + + + + Create Datum Plane + åˆ›å»ºåŸºå‡†é¢ + + + + + DrawLine + 直线 + + + + + DrawRectangle + 矩形 + + + + + DrawCircle + 圆形 + + + + + Create Sketch + è‰ç»˜ + + + + + DrawArc + 圆弧 + + + + + DrawPolyline + 多段线 + + + + + + + MakeMatrix + 阵列 + + + + + Sweep + 扫略 + + + + + DrawSpline + æ ·æ¡ + + + + + DisplayPoint + 显示点 + + + + + DisplayCurve + 显示曲线 + + + + + DisplayFace + æ˜¾ç¤ºé¢ + + + + + SelectPoint + 选择点 + + + + + SelectCurve + 选择曲线 + + + + + SelectFace + é€‰æ‹©é¢ + + + + + SelectGeometryBody + 选择几何体 + + + + + + + Plugin Manager + æ’ä»¶ç®¡ç† + + + + + User Guidance + 用户引导 + + + + + Measure Distance + 测é‡è·ç¦» + + + + + Measure + æµ‹é‡ + + + + + Split + 分割 + + + + + CreateGeoComponent + 创建几何组件 + + + + + FluidMesh + æµä½“网格剖分 + + + + + FilterMesh + 网格过滤 + + + + + FillHole + 填补孔洞 + + + + + RemoveSurface + ç§»é™¤æ›²é¢ + + + + + FillGap + 曲é¢ä¿®å¤ + + + + + Mesh Modeling + 网格建模 + + + + + GeoMeshRotate + + + + + + Normal + 正常 + + + + + Ribbon + + + + + + OpenPostFile + 打开åŽå¤„ç†æ–‡ä»¶ + + + + + DisplayPoints + 点显示 + + + + + DisplayWireframe + 线显示 + + + + + DisplaySurfaceWithoutEdge + ä¸å¸¦è¾¹ç•Œçš„颿˜¾ç¤º + + + + + DisplaySurfaceWithEdge + å¸¦è¾¹ç•Œçš„é¢æ˜¾ç¤º + + + + + CreateVector + çŸ¢é‡ + + + + + CreateClip + 切割 + + + + + CreateSlice + 切片 + + + + + CreateStreamLine + æµçº¿ + + + + + CreateISOCurve + 等值线 + + + + + CreateISOSurface + ç­‰å€¼é¢ + + + + + CreateCalculator + 计算器 + + + + + CreateReflection + 对称 + + + + + SaveImage + ä¿å­˜å›¾ç‰‡ + + + + + + + SaveVideo + ä¿å­˜åŠ¨ç”» + + + + LoadFile + + + + + Load PointCloud + åŠ è½½ç‚¹äº‘æ•°æ® + + + + &PointCloud + 点云 + + + + Save PointCloud + ä¿å­˜ç‚¹äº‘æ•°æ® + + + + Filter + + + + + StatisticalRemove + + + + + StatisticalRemoveFilter + 统计滤波 + + + + DBRemoveFilter + 密度滤波 + + + + GuassFilter + 高斯滤波 + + + + AverageFilter + 平凿»¤æ³¢ + + + + GPMesh + 贪婪三角网 + + + + + Ctrl+Shift+S + + + + + Ctrl+M + + + + + + F5 + + + + + + + + Chinese + 中文 + + + + Ctrl+I + + + + + Ctrl+E + + + + + QObject + + + + + File + 文件 + + + + + Home + 主页 + + + + Case + + + + + Import Mesh + 导入网格 + + + + Import Geometry + 导入几何 + + + + Script + + + + + View + 视图 + + + + Save Picture + ä¿å­˜å›¾ç‰‡ + + + + Plugin Manager + æ’ä»¶ç®¡ç† + + + + Other + + + + + + Geometry + 几何 + + + + Geometry Sketch + + + + + Create Solid Geometry + + + + + Create Plane Geometry + + + + + Create Datum Plane + åˆ›å»ºåŸºå‡†é¢ + + + + Calculate + + + + + Operation + + + + + Display + + + + + Select + 选择 + + + + Modify + + + + + Chamfer + 倒角 + + + + Measure and Create + + + + + Edit + + + + + + Mesh + 网格 + + + + Mesh Subdivision + + + + + Mesh Operation + + + + + Mesh Selection + + + + + Mesh Display + + + + + Mesh Creation + + + + + + Solve + 求解 + + + + Solver Manager + æ±‚è§£å™¨ç®¡ç† + + + + + Windows + çª—å£ + + + + Start Page + 开始页 + + + + Adapt Page + + + + + Drawing Option + + + + + 3DRender + 三维渲染 + + + + + Help + 帮助 + + + + User Guide + + + + + Sketch Tool + + + + + + Sketch + è‰å›¾ + + + + Sketch Drawing + + + + + Sketch Edit + + + + + Language + 语言 + + + + Style + 风格 + + + + 3D Render + 三维渲染 + + + + Warning + 警告 + + + + Create failed ! + åˆ›å»ºå¤±è´¥ï¼ + + + + Customization + + + + + StartPage + + Start Page + 开始页 + + + diff --git a/ConfigFiles/translations/Material_zh_CN.qm b/ConfigFiles/translations/Material_zh_CN.qm new file mode 100644 index 0000000000000000000000000000000000000000..66fd6b3bade23f4cad07362ceb8dc50c970eb08e GIT binary patch literal 1004 zcmcE7ks@*G{hX<16=n7(EZlq7iGhKkfPsPe50C}|7C9iH$)GI91*C%*ttLNVU|`zI zwCmF@Apa;!E=N9)&&@K!a}SX2V(oD|3Z#E!$*DOYw~OEmOt!!bKi&zPa7{eU lIjM<7(163Ql?4>taE)vbD+p)_%s{e>3lcpFjyZT72>`?$4+;PP literal 0 HcmV?d00001 diff --git a/ConfigFiles/translations/Material_zh_CN.ts b/ConfigFiles/translations/Material_zh_CN.ts new file mode 100644 index 0000000..153ad93 --- /dev/null +++ b/ConfigFiles/translations/Material_zh_CN.ts @@ -0,0 +1,88 @@ + + + + + LoadMaterialDialog + + + Load Material + å¯¼å…¥ææ–™ + + + + Available: + å¯é€‰ï¼š + + + + >> + + + + + << + + + + + Selected: + 已选: + + + + Material::RemoveMaterialDialog + + + + Warning + 警告 + + + + No one has been Selected ! + æ²¡æœ‰å¯¹è±¡è¢«é€‰ä¸­ï¼ + + + + %1 object(s) will be removed, continue ? + %1个对象将被移除,继续? + + + + QObject + + + Warning + 警告 + + + + Material has already exist, replace? + ææ–™å·²ç»å­˜åœ¨ï¼Œæ˜¯å¦æ›¿æ¢ï¼Ÿ + + + + RemoveMaterialDialog + + + + Remove + 移除 + + + + Select All + 全选 + + + + Clear Select + å…¨ä¸é€‰ + + + + Cancel + å–æ¶ˆ + + + diff --git a/ConfigFiles/translations/ModuleBase_zh_CN.qm b/ConfigFiles/translations/ModuleBase_zh_CN.qm new file mode 100644 index 0000000000000000000000000000000000000000..65d8c4d8f92a5e6caf2017629e868901f58d4ab0 GIT binary patch literal 4453 zcmb7HYitx%6u#ZgYqz^CNKz0GmY7aq9hQ4V$}qKQGO7jhVUq<{P2f@XJ(q|&aN%Hv)P<^ zeCIpgIrq%HcU-6ZQ?3jh8n`-Z`uWx)=WdoDWSI~DHxZ&qgfjm@+Cj_!Q-BcpDni62 z-BNzAUclxe;`(ZYn0fHH2chhXi2USzutSJ0e+6tQdVYot{F~4`?<3${jLJKf!S%no zB}r5{w-@ezi7FQl0H=tm4z$7bFsj}LJQ)X&yKDtQ)Lc}*r5NJf2MangC!wakFTkEe zcXNQ>;&T(76oA`#rk6 zQ{_EMSO4+@LN*t@_HZ^lUq%lc`U`m1(no*ng}Q{9iMIyf`CH7C{K*jKU8b+;1ITk9 z)7M%F_5$9@ zm2#pF3rV1{6vs0$J?C5V>!_AYgDq=Cr(R~Lav~*j@CH6+LX#`GSTvf1OJcQF@gnAA zUP;P@*}Ef9XyT-5BsrWMoahw22Mw8)+E7x|?H!HZxn1#t>*i$6Std(it>*EG+tsi* zQZolf;vDRnLrpB)hUFv|rZ2PpQUBK)MMDIm!C9;%N$I&9YBNdEp{u1NR*JoVBWQua zNvfO+5(#zGLNjV%B8m~N1bR%hq}@_9%1dGrQbnne4aTfGPV`G*ry4#HO|WmcM_)*a z<;8%26G4>QwPC%d-ykIGIU$yWVrr~Ck9uy@KQ?gmN|}oUUtX^AIY!PsJZS0AdY$rp zRJWLYI0`S7#Hgf)cU0qOlndZEI5F0%kykDGV**yEjlx1>F45n~#2F=_(_UAlrQ_e< zzPfT$u!oaHs93rrW6T4&@p&W)A1nEBomNE$?i*^!QbCGpqc)yTwzt7EdtZxiZO86a z_(_K0J-I>ycmfoQ77)?qhMyKxsS(31yEx?n``he)m$eZ=DVLN1RR@kOpd&m zl4Ig*qK)x*5}93B@o{g1`(r~SU5BHJBtKOnF=jiA8Se=kMjT6?HXTeg4ZP$Fd3b*S zEBZQUav18pNPiE8i?b7~3y|NK+LJ8*!1!O5E`kkecAj#_JrNBgp zWOuj00*wR{eyXkm&-M?Ex~`Dr)T4SmwXESvlu2T$nNy96f^`3J!_eWON-(Vf3_oOr2`il*G+msj%Rp#(dL= zWL0r;0L#ua28J-@61N>lL4ck8!`o0(2wxfSGwNYuxpmlC94#m)NU8cBMcqLP?9MI%YG zQ#QWXlw;}?I}5u$A7dh-U_)MYSWt8P4$!N;z|DnDI8q#7;8AOuz@yhxBT9wG zG=n?5?k*)LiRsEvtC1jMq$Da+Dl%ZICp_*TZM40uRFY&rFLH{u(7h19qPS%#;^uuJ zELVsMmN}mSTTNE!67(-Krnfh88dad>1{qx=!4z4c?e)@P5=yq--tlX9mce9$*gn|( zmFR0s+@=176r|Vp7+^x=!kYRdn2D1f;Z*D77&(vIT2ky!v6<1g4OXg(3%B{T&9b9G p-#zO~vaTR7Gce7-64jW~HsSw+q=NLSOU(~Pv8>|vX&TI|{{h2sIoJRI literal 0 HcmV?d00001 diff --git a/ConfigFiles/translations/ModuleBase_zh_CN.ts b/ConfigFiles/translations/ModuleBase_zh_CN.ts new file mode 100644 index 0000000..69c3541 --- /dev/null +++ b/ConfigFiles/translations/ModuleBase_zh_CN.ts @@ -0,0 +1,414 @@ + + + + + ComponentDialogBase + + + Dialog + 选择 + + + + Available: + å¯é€‰ï¼š + + + + >> + 导入 + >> + + + + << + 导出 + << + + + + Selected: + 已选: + + + + Dialog + + + Dialog + 选择 + + + + Normal + éšæœºåˆ†å¸ƒ + éšæœºåˆ†å¸ƒ + + + + Linearity + 线性分布 + 线性分布 + + + + Gauss + 高斯分布 + 高斯分布 + + + + Possion + 泊æ¾åˆ†å¸ƒ + 泊æ¾åˆ†å¸ƒ + + + + Exponential + 线性分布 + 线性分布 + + + + Random Para + åˆ†å¸ƒå‚æ•° + åˆ†å¸ƒå‚æ•° + + + + + Value + 值类型 + 值类型 + + + + Single + å•值 + å•值 + + + + Para1 + 傿•°1 + 傿•°1 + + + + Para2 + 傿•°2 + 傿•°2 + + + + Para Set + 范围设置 + 范围设置 + + + + Para From: + 起始值 + 起始值: + + + + Para To: + 终止值 + 终止值: + + + + Para Number: + éšæœºæ•°ä¸ªæ•° + éšæœºæ•°ä¸ªæ•°ï¼š + + + + Apply + 应用 + 应用 + + + + Ok + 确定 + 确定 + + + + Cancel + å–æ¶ˆ + + + + Graph3DWindow + + + Graph3D + 三维绘图 + + + + MessageWindow + + + Console + æŽ§åˆ¶å° + + + + ModuleBase::ComponentSelectDialogBase + + + OK + 确定 + 确定 + + + + Cancel + å–æ¶ˆ + å–æ¶ˆ + + + + Warning + 警告 + + + + ModuleBase::DialogBase + + + OK + 确定 + + + + Apply + 应用 + + + + Cancel + å–æ¶ˆ + + + + Warning + 警告 + + + + Illegal inputs exists ! + å­˜åœ¨éžæ³•è¾“å…¥ï¼ + + + + Minimize + 最å°åŒ– + + + + Maximize + 最大化 + + + + Restore + 釿–°å­˜å‚¨ + + + + Close + 关闭 + + + + ModuleBase::DockWidgetBase + + + %1 + + + + + ModuleBase::MessageWindowBase + + + [Normal]: + [正常]: + + + + [Warning]: + [警告]: + + + + [Error]: + [错误]: + + + + [Python]: + + + + + Background Color + 背景颜色 + + + + Normal + 正常 + + + + Show Normal + 显示正常 + + + + Hide Normal + éšè—正常 + + + + Warning + 警告 + + + + Show Warning + 显示警告 + + + + Hide Warning + éšè—警告 + + + + Error + 错误 + + + + Show Error + 显示错误 + + + + Hide Error + éšè—错误 + + + + Header + 头标记 + + + + Show Header + 显示头标记 + + + + Hide Header + éšè—头标记 + + + + Font + 字体 + + + + Larger Font + 放大字体 + + + + Smaller Font + 缩å°å­—体 + + + + Save As... + å¦å­˜ä¸º... + + + + Clear + 清空 + + + + Save Message Info + ä¿å­˜ä¿¡æ¯ + + + + *.txt + + + + + ModuleBase::PropPickerInteractionStyle + + + Node ID + 节点ID + + + + Coordinate + åæ ‡ + + + + ProcessBar + + + ProcessBar + 求解进程 + + + + name + 标签 + + + + ProcessWindow + + + Process + 进程 + + + + XRandomWidget + + + Mean + 期望 + 期望 + + + + Stdc + 标准差 + 标准差 + + + + + Lambda + å‘生率 + + + diff --git a/ConfigFiles/translations/PluginManager_zh_CN.qm b/ConfigFiles/translations/PluginManager_zh_CN.qm new file mode 100644 index 0000000000000000000000000000000000000000..6128626c9edbe6b61cac6fa944082527a6322fdb GIT binary patch literal 561 zcmcE7ks@*G{hX<16=n7(EZlq7iGhK^fq{Yf50C}|7C9iH$)GI91*C%*ZdEh^=~FCA zLIW8X7z4OE^lkz9z1-fhia(kt03~#nu>b%7 literal 0 HcmV?d00001 diff --git a/ConfigFiles/translations/PluginManager_zh_CN.ts b/ConfigFiles/translations/PluginManager_zh_CN.ts new file mode 100644 index 0000000..54eaecd --- /dev/null +++ b/ConfigFiles/translations/PluginManager_zh_CN.ts @@ -0,0 +1,51 @@ + + + + + PluginManageDialog + + + Plugin Manager + æ’ä»¶ç®¡ç† + + + + Available: + å¯ç”¨æ’件: + + + + >> + + + + + << + + + + + Installed: + 已安装æ’件: + + + + Plugins::PluginManageDialog + + + load failed! + åŠ è½½å¤±è´¥ï¼ + + + + + Warning + 警告 + + + + uninstall failed! + å¸è½½å¤±è´¥ï¼ + + + diff --git a/ConfigFiles/translations/PostInterface_zh_CN.qm b/ConfigFiles/translations/PostInterface_zh_CN.qm new file mode 100644 index 0000000000000000000000000000000000000000..b0655fbb300748f65f05b162d83843a2c42e2051 GIT binary patch literal 14132 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 literal 0 HcmV?d00001 diff --git a/ConfigFiles/translations/PostInterface_zh_CN.ts b/ConfigFiles/translations/PostInterface_zh_CN.ts new file mode 100644 index 0000000..f34af94 --- /dev/null +++ b/ConfigFiles/translations/PostInterface_zh_CN.ts @@ -0,0 +1,1282 @@ + + + + + CreateCalculateDialog + + + Calculator + 计算器 + + + + asin + + + + + kHat + + + + + floor + + + + + iHat + + + + + exp + + + + + / + + + + + norm + + + + + - + + + + + x^y + + + + + cos + + + + + back + 回退 + + + + min + + + + + log10 + + + + + atan + + + + + acos + + + + + tanh + + + + + sinh + + + + + Name + 结果å + + + + * + + + + + max + + + + + ln + + + + + tan + + + + + ) + + + + + clear + 清空 + + + + sqrt + + + + + abs + + + + + Vectors + çŸ¢é‡ + + + + sin + + + + + + + + + + + v1.v2 + + + + + ( + + + + + ceil + + + + + jHat + + + + + cross + + + + + mag + + + + + cosh + + + + + dot + + + + + sign + + + + + Scalars + æ ‡é‡ + + + + Type + 类型 + + + + Point Data + ç‚¹æ•°æ® + + + + Cell Data + å•å…ƒæ•°æ® + + + + CreateClipDialog + + + Dialog + + + + + Name + åç§° + + + + 原点 + + + + + + x + + + + + + y + + + + + + z + + + + + Out + å‘外 + + + + 法线 + + + + + CreateISODialog + + + Dialog + + + + + Variable + å˜é‡ + + + + Add + 添加 + + + + Name + åç§° + + + + RemoveAll + 清空 + + + + Remove + 移除 + + + + CreateReflectionDialog + + + Reflection + 对称 + + + + Name + åç§° + + + + Reflection Plane + å¯¹ç§°å¹³é¢ + + + + Center + 中心值 + + + + XMin + + + + + YMin + + + + + ZMin + + + + + XMax + + + + + X + + + + + YMax + + + + + ZMax + + + + + Y + + + + + Z + + + + + CreateStreamLineDialog + + + StreamLine + æµçº¿ + + + + Seed Number + ç§å­ç‚¹æ•° + + + + Variable + å˜é‡ + + + + Length + 最大长度 + + + + Name + åç§° + + + + Type + 类型 + + + + Direction + æ–¹å‘ + + + + Forward + å‘å‰ + + + + Backward + å‘åŽ + + + + Both + å‘å‰å’Œå‘åŽ + + + + Line + 线 + + + + Line With Arrow + 带箭头的线 + + + + Integration + 积分 + + + + MaxinumStep + 最大步长 + + + + MininumStep + æœ€å°æ­¥é•¿ + + + + InitalStep + åˆå§‹æ­¥é•¿ + + + + Step Number + 步长数 + + + + Sample Line + 样线 + + + + EndPoint + 终点 + + + + StartPoint + 起点 + + + + CreateVectorDialog + + + Name + åç§° + + + + Type + 类型 + + + + Arrow + 箭头 + + + + + + Vector + çŸ¢é‡ + + + + Scale Mode + ç¼©æ”¾æ¨¡å¼ + + + + Scalar + æ ‡é‡ + + + + Vector Component + 矢é‡åˆ†é‡ + + + + Off + 关闭 + + + + Maximum + 最大样点数 + + + + Scale Factor + 缩放尺寸 + + + + FileDirectoryDialog + + + Select Post Files + 选择åŽå¤„ç†æ–‡ä»¶ + + + + File path + 文件路径 + + + + All Files (*.*) + + + + + File type + 文件类型 + + + + cancel + å–æ¶ˆ + + + + ok + 确定 + + + + File name + 文件å + + + + + + + + DeskTop + æ¡Œé¢ + + + + + + + My Documents + 我的文档 + + + + GraphWidget + + + Form + + + + + LightSettingDialog + + + Light Setting + ç¯å…‰è®¾ç½® + + + + Add + 添加 + + + + Delete + 删除 + + + + Color + 颜色 + + + + Position Coordinates + ä½ç½®åæ ‡ + + + + + X + + + + + + Y + + + + + + Z + + + + + FocalPoint Coordinates + ç„¦ç‚¹åæ ‡ + + + + OK + 确定 + + + + Light_%1 + ç¯å…‰_%1 + + + + Post::AnimationToolBar + + + Total: %1 + å…±:%1 + + + + + + + + + + run + è¿è¡Œ + + + + + stop + åœæ­¢ + + + + + first + 开始帧 + + + + + previous + 上一帧 + + + + + next + 下一帧 + + + + + last + 结æŸå¸§ + + + + + Step: + 帧数: + + + + + Total: 0 + å…±:0 + + + + Post::CreateCalculateDialog + + + CalculateResult + + + + + Warning! + 警告! + + + + No selected data! + 未选择数æ®ï¼ + + + + Post::CreateClipDialog + + + Clip + + + + + + CreateClip + 切割 + + + + Slice + + + + + + CreateSlice + 切片 + + + + + Warning! + 警告! + + + + No selected data! + 未选择数æ®ï¼ + + + + Input is wrong! + è¾“å…¥é”™è¯¯ï¼ + + + + Post::CreateISODialog + + + ISOCurve + + + + + CreateISOCurve + 等值线 + + + + CreateISOSurface + ç­‰å€¼é¢ + + + + ISOSurface + + + + + Warning! + 警告! + + + + No selected data! + 未选择数æ®ï¼ + + + + Range:[%1,%2] + 范围:[%1,%2] + + + + Post::CreateReflectionDialog + + + Reflection + + + + + Warning! + 警告! + + + + No selected data! + 未选择数æ®ï¼ + + + + Post::CreateStreamLineDialog + + + StreamLine + + + + + Warning! + 警告! + + + + No selected data! + 未选择数æ®ï¼ + + + + Post::CreateVectorDialog + + + Vector + + + + + Warning! + 警告! + + + + No selected data! + 未选择数æ®ï¼ + + + + Vector_%1 + 矢é‡_%1 + + + + Post::PostInfoWidget + + + + Property + 属性 + + + + + Name + åç§° + + + + + Type + 类型 + + + + + Range + 范围 + + + + Imp + + + + + Alg + + + + + ISOSurface + ç­‰å€¼é¢ + + + + ISOCurve + 等值线 + + + + Vector + çŸ¢é‡ + + + + Slice + 切片 + + + + Clip + 切割 + + + + StreamLine + æµçº¿ + + + + Simplify + 简化 + + + + Calculator + 计算器 + + + + Reflection + 对称 + + + + Steady + 定常 + + + + UnSteady + éžå®šå¸¸ + + + + + PointProperty + 点属性 + + + + + CellProperty + å•元属性 + + + + Post::PostTreeWidget + + + + Name + åç§° + + + + + Transparency + 逿˜Žåº¦ + + + + + Color + 颜色 + + + + + Variable + ç€è‰²å˜é‡ + + + + Window_%1 + 窗å£_%1 + + + + Show + 显示 + + + + Hide + éšè— + + + + Render to Window + æ¸²æŸ“åˆ°çª—å£ + + + + Property Setting + 属性设置 + + + + Remove + 移除 + + + + SolidColor + 实体颜色 + + + + Post::RenderSettingDialog + + + + Point + 点 + + + + + Cell + å•å…ƒ + + + + %1Scalar + %1æ ‡é‡ + + + + %1Vector-X + %1矢é‡-X + + + + %1Vector-Y + %1矢é‡-Y + + + + %1Vector-Z + %1矢é‡-Z + + + + %1Tensor + %1å¼ é‡ + + + + Scalar + æ ‡é‡ + + + + Vector + çŸ¢é‡ + + + + Tensor + å¼ é‡ + + + + Post::SaveAnimationDialog + + + Select File + 选择文件 + + + + PostInfoWidget + + + Form + + + + + Property + 属性 + + + + FileName + 文件å + + + + Data Statistics + æ•°æ®ç»Ÿè®¡ + + + + Type + 类型 + + + + PointNum + ç‚¹æ•°é‡ + + + + CellNum + å•å…ƒæ•°é‡ + + + + Data Arrays + å˜é‡æ•°æ® + + + + RenderSettingDialog + + + RenderSetting + 渲染设置 + + + + Transparency + 逿˜Žåº¦ + + + + % + + + + + color + ç€è‰²è®¾ç½® + + + + Color + 颜色 + + + + variable coloring + å˜é‡ç€è‰² + + + + visible + æ˜¾ç¤ºé¢œè‰²æ¡ + + + + Type + 类型 + + + + RenderTitleDialog + + + Render Title + çª—å£æ ‡é¢˜ + + + + Title + 标题 + + + + Color + 颜色 + + + + Text + 文本 + + + + Visible + 显示 + + + + Movable + å¯ç§»åЍ + + + + Position + ä½ç½® + + + + X + + + + + Y + + + + + Width + 宽 + + + + Height + 高 + + + + SaveAnimationDialog + + + SaveAnimation + ä¿å­˜åŠ¨ç”» + + + + Rate(fps) + 帧率(fps) + + + + File Path + 文件路径 + + + + ... + + + + + SetBackgroundColorDialog + + + Background Color + 背景颜色 + + + + Top Color + 顶层颜色 + + + + Bottom Color + 底层颜色 + + + diff --git a/ConfigFiles/translations/PostWidgets_zh_CN.qm b/ConfigFiles/translations/PostWidgets_zh_CN.qm new file mode 100644 index 0000000000000000000000000000000000000000..fe2a4fc7e6e168eb6cd8ff494f74fe75d35e1070 GIT binary patch literal 374 zcmcE7ks@*G{hX<16=n7(EZlq7iGhK^fPv*&FOZ(Y5LIHxz`)4D=GQF&~KZkj3HGQ}?CrM%X_NAcuhsh}n%?6asScOW1*I{($`A z5+fJSypq(Sw8Z38M(kR6Aj-lsQ_@qx`cMR*nmFse}!P aSa@b$N`5&b^M4?KYhevZOj0n!rVapd9AIPs literal 0 HcmV?d00001 diff --git a/ConfigFiles/translations/PostWidgets_zh_CN.ts b/ConfigFiles/translations/PostWidgets_zh_CN.ts new file mode 100644 index 0000000..26afd6b --- /dev/null +++ b/ConfigFiles/translations/PostWidgets_zh_CN.ts @@ -0,0 +1,49 @@ + + + + + Post2DInterface + + + 2D Plot + 二维绘图 + + + + Post2DWidget + + + Post2DWidget + 二维绘图 + + + + Post3DInterface + + + 3D Graph + 三维渲染 + + + + Post3DWidget + + + Form + 三维渲染 + + + + RealTimeWindow + + + Real Time Curves + 实时曲线 + + + + Tab 1 + + + + diff --git a/ConfigFiles/translations/ProjectTree_zh_CN.qm b/ConfigFiles/translations/ProjectTree_zh_CN.qm new file mode 100644 index 0000000000000000000000000000000000000000..1555dbf7dda5b913c320d685efd8c642bd1ee065 GIT binary patch literal 3270 zcmbtWeP|nH7=OFoU9S0RsdI`e_AN75r2n*nj#3y+>U3kx(j;v*>)Ks&Z_4G8<_6nXeBLBGb2I@j3xxOH zyXW~mU%%&h->#3uyT4p}?d5M;n$GNhd-+#CLN$*ewD&ARXkTIFw;(pNh>#4Ivj_6FhexLhOSZj?G92)p{A?>OhFgFbBmr;2`Ey+X>Kno%v*`SZwAp#Lm8EltB$#LjR36!4F;^O=`mJ_W^u=!13O(e?Z>NFKxXE??ryOWeDVlon79GVEKx##cy{Js&;IP0 z4c!HPpD(P=J>G|Y48uO;eYaf&yZ!Z!8;~dFNc~myLx}UV1j!L=0ok3p9)9b^rSz_Z z5WK>}3&hcXwN|AM)F+n z3c|>T+7S+V2KU5Tb2TQ=o!cduU|&0ybgZZbCKHlwv{0xf$i|Z-ZbUUgIy*}?enBUN zV$F?4cbZ6!n4l?=lK6kRd~km9^5jngH~-V`=)oab%~#P^V$NbaCK*YvFU5nZSa6~| z$2R3Trlu89(6Tt7DxzdaszQCUfz4C?TDaq;xRfSDGqQHk;*P-u3tD}*u1g7}YQS}^ z)#$(NkSX(%j>D^FU0eYo%QzAjmoYdqKqjQ>cA3j$ufHOi2wa$?)J*=IwUKDX(nx?&MF%mK zqTf2jZ8+f$=Ej>NpOCS+kEawfpvH)lO3MPB`4|{v6wf6axV-G2{lkLkji_>lXjS4d zsqV=$rhl%80hf>z-UTPO%?`eIsxR3^vvwdJYkmIY?x}QZ&OM>bEz*kSnoSeFXcEqJ z2p%T|9gh&A;IvM}Hmn;G40J7D@ohGZGZqeWRneD8TpV|qZZZQB8Mo_2#fyiH0yAM; z+5tUqqcZZfXe=~CfzBm&Q=Tf&@of6;Dk$MmxI@tpDrq)MD1!@B`+!JWrnE>sD$c5D aERwhcv&B%0b-_lGz$0y_wbO4_!u}Ve_>(dK literal 0 HcmV?d00001 diff --git a/ConfigFiles/translations/ProjectTree_zh_CN.ts b/ConfigFiles/translations/ProjectTree_zh_CN.ts new file mode 100644 index 0000000..0d624be --- /dev/null +++ b/ConfigFiles/translations/ProjectTree_zh_CN.ts @@ -0,0 +1,242 @@ + + + + + AddBCDialog + + + Add BC + 添加边界æ¡ä»¶ + + + + Set + 组件 + + + + BC Type + 类型 + + + + CreateEleProp + + + Create Prop + 创建属性 + + + + Name: + å称: + + + + Element Type: + å•元类型: + + + + elem_fem_sta_linear + + + + + Material: + ææ–™ï¼š + + + + ProjectTree::ProjectTreeBase + + + Warning + 警告 + + + + File %1 is not exist! + 文件 %1 ä¸å­˜åœ¨ï¼ + + + + ProjectTree::ProjectTreeWithBasicNode + + + Element Property + å•元属性 + + + + + Set + 组件 + + + + + Simulation Setting + ä»¿çœŸå‚æ•°è®¾ç½® + + + + + Boundary Condition + 边界æ¡ä»¶ + + + + + Solver Setting + 求解设置 + + + + + Monitor + 监视器 + + + + + Post + åŽå¤„ç† + + + + + 2D Plot + 二维绘图 + + + + + Counter + 云图 + + + + + Vector + çŸ¢é‡ + + + + + Stream Line + æµçº¿ + + + + Geometry + 几何 + + + + Import Geometry + 导入几何 + + + + Add Property + 添加属性 + + + + Import Set + 导入组件 + + + + Assign Property + 指定属性 + + + + + Warning + 警告 + + + + This Set has been used, still remove? + 网格组件正在被使用,确认移除? + + + + Node Scalar + èŠ‚ç‚¹æ ‡é‡ + + + + Cell Scalar + å•å…ƒæ ‡é‡ + + + + Node Vector + èŠ‚ç‚¹çŸ¢é‡ + + + + Cell Vector + å•å…ƒçŸ¢é‡ + + + + File %1 is not exist + 文件 %1 ä¸å­˜åœ¨ + + + + + Report + 报告 + + + + + + + + + + Remove + 移除 + + + + Add Boundary Condition + 添加边界æ¡ä»¶ + + + + View + 查看 + + + + Create Report + ç”ŸæˆæŠ¥å‘Š + + + + RemoveReportDialog + + + Delete + 删除 + + + + Do you decide to remove the report? + 确定删除此报告? + + + + Delete file + 删除文件 + + + diff --git a/ConfigFiles/translations/README b/ConfigFiles/translations/README new file mode 100644 index 0000000..9e49b82 --- /dev/null +++ b/ConfigFiles/translations/README @@ -0,0 +1 @@ +TS files for the application should be all named according to a convention such as _, e.g. sqlb_de, sqlb_ru etc. diff --git a/ConfigFiles/translations/SARibbonBar_zh_CN.qm b/ConfigFiles/translations/SARibbonBar_zh_CN.qm new file mode 100644 index 0000000000000000000000000000000000000000..1e52c42326194f6fbb45c986b0efd846cd86c53b GIT binary patch literal 231 zcmcE7ks@*G{hX<16=n7(EZlq7iGhKEgY~3g2#{vT1mdI2Kq4kwgCUr~ks$~ulmvwN z40#OB42cXS45xskmZYZV7ghQsR_2$MC?qH5<>i+s mB&MWzmZawDloqFg*a1M%)EtG(yyBA7#1wX*5n|Z&GXelm8bn_J literal 0 HcmV?d00001 diff --git a/ConfigFiles/translations/SARibbonBar_zh_CN.ts b/ConfigFiles/translations/SARibbonBar_zh_CN.ts new file mode 100644 index 0000000..ad37b87 --- /dev/null +++ b/ConfigFiles/translations/SARibbonBar_zh_CN.ts @@ -0,0 +1,207 @@ + + + + + QObject + + + SARibbon Warning !!! customize rename category,but get an empty category object name,if you want to customize SARibbon,please make sure every element has been set object name. + + + + + SARibbon Warning !!! customize rename pannel,but get an empty category/pannel object name,if you want to customize SARibbon,please make sure every element has been set object name. + + + + + SARibbon Warning !!! customize change category order,but get an empty category object name,if you want to customize SARibbon,please make sure every element has been set object name. + + + + + SARibbon Warning !!! customize change pannel order,but get an empty category/pannel object name,if you want to customize SARibbon,please make sure every element has been set object name. + + + + + SARibbon Warning !!! customize change action order,but get an empty category/pannel/action object name,if you want to customize SARibbon,please make sure every element has been set object name. + + + + + SARibbon Warning !!! customize remove category,but get an empty category object name,if you want to customize SARibbon,please make sure every element has been set object name. + + + + + SARibbon Warning !!! customize remove pannel,but get an empty category/pannel object name,if you want to customize SARibbon,please make sure every element has been set object name. + + + + + SARibbon Warning !!! customize remove action,but get an empty category/pannel/action object name,if you want to customize SARibbon,please make sure every element has been set object name. + + + + + SARibbon Warning !!! customize visible category,but get an empty category object name,if you want to customize SARibbon,please make sure every element has been set object name. + + + + + SARibbonActionsManager + + + not in ribbon + + + + + SARibbonActionsManagerModel + + + action name + + + + + SARibbonCategoryLayout + + + in SARibbonCategoryLayout cannot addItem,use addPannel instead + 在SARibbonCategoryLayout中ä¸èƒ½æ·»åŠ item,使用addPannel代替 + + + + SARibbonCustomizeDialog + + + Customize Dialog + + + + + Cancel + + + + + OK + + + + + SARibbonCustomizeWidget + + + Customize Widget + + + + + 从下列选项å¡é€‰æ‹©å‘½ä»¤ï¼š + + + + + 查找命令 + + + + + 添加 >> + + + + + << 删除 + + + + + 自定义功能区: + + + + + ä¸»é€‰é¡¹å¡ + + + + + æ‰€æœ‰é€‰é¡¹å¡ + + + + + æ–°å»ºé€‰é¡¹å¡ + + + + + 新建组 + + + + + é‡å‘½å + + + + + proportion: + + + + + + large + + + + + + small + + + + + medium + + + + + new category[customize]%1 + + + + + new pannel[customize]%1 + + + + + rename + + + + + name: + + + + + SAWindowButtonGroup + + + Restore + + + + + Maximize + + + + diff --git a/ConfigFiles/translations/SelfDefObject_zh_CN.qm b/ConfigFiles/translations/SelfDefObject_zh_CN.qm new file mode 100644 index 0000000000000000000000000000000000000000..bf43fbdb96aff083ab5dccd0bb9caca91c16a109 GIT binary patch literal 335 zcmcE7ks@*G{hX<16=n7(EZlq7iGhK^fPsP48c45a@F=$g(hLk4@tc6;b(R^Pdw{ey z%lWb?Ksub21xz<*GB7Z*G6O|e;--{pZ~z$$Y(UKFSWu8t$qr=k1|$|Gh9oA1Wu}&= z7BPaA24BnVfGcHlPRvVA&B3KM`cL35gj&~%g8ZTqJZe)BYCUuDsjbM1o&{ISO_DSHlDJL{6###2;8x0|2QOPiO!D literal 0 HcmV?d00001 diff --git a/ConfigFiles/translations/SelfDefObject_zh_CN.ts b/ConfigFiles/translations/SelfDefObject_zh_CN.ts new file mode 100644 index 0000000..0e43c97 --- /dev/null +++ b/ConfigFiles/translations/SelfDefObject_zh_CN.ts @@ -0,0 +1,183 @@ + + + + + LineEditDialog + + + Dialog + + + + + Des + + + + + ParaMore + + + Form + + + + + ... + + + + + ParaTabViewer + + + Table Viewer + + + + + Export + 导出 + + + + Import + 导入 + + + + OK + 确定 + + + + Apply + 应用 + + + + Cancel + å–æ¶ˆ + + + + SelfDefLineEdit + + + Form + + + + + Must Input an integer number! + + + + + + The number must in range [%1,%2] + + + + + The accuracy of number can not more than %1 + + + + + Must Input an float number! + + + + + SelfDefObj::ParaColorBuutton + + + Select a color + + + + + SelfDefObj::ParaPath + + + Select a file + + + + + Select a directory + + + + + Select files + + + + + SelfDefObj::ParaTabViewer + + + Excel file + + + + + Files (*.csv) + + + + + SelfDefObj::ParaTable + + + Row:%1,Col:%2 + + + + + SelfDefObj::ParaTableWidget + + + Insert Column At Left + + + + + Insert Column At Right + + + + + + Rename + + + + + Delete Column + + + + + Insert Row At Above + + + + + Insert Column At Below + + + + + Delete Row + + + + + Name + + + + diff --git a/ConfigFiles/translations/Setting_zh_CN.qm b/ConfigFiles/translations/Setting_zh_CN.qm new file mode 100644 index 0000000000000000000000000000000000000000..11b86e0c2226566f59662764bdbed64411afd1d0 GIT binary patch literal 3153 zcma)8eM}o=7=KHz?e%*yK6Dau+gvF71I0xX5lv{p!X{rW8^bc@(O%md?Ok)d0#(-` zqOy=>7@Sl_h+>@oxx_fPWnYQe{?Yk?PTY(neq`C45oDQ(GrIcRRgY^;uWi%3ecyY2 zzvuURp7-9obtimxf4n?%=+pHT=bm}%%%UA3)i6Su#}LB5Luls*2&sQT*yJ&U(B}v{ znt;Z=kT4-`2nHUm$c`oa1tz%%N- z7gm68Onu;n3wS26WbeFXk~ zutdjhgWmfrzrIuix;&Ppi{M)~YgzgRc<>6#?cx(KU!(ziTn!ma<7f9VyRNqN3@q*5 zj>7`d!q3>na{V+DAR1^+2lF)zG#O$8|E|KKO28Wa!=YLUX^|n9PfzCnr{E(&bQ@hR zr_*j1Vl9mhHpFrcHr&VB*vHakDUNzod6i1ha7j2&H+#bWkQjLH>ic;SX;y0tku zBLkQmu_(`m2~k8YU`ZMX1~#FZlpa+JUrC=iO<~(qQ&nAEor}Yi=E%b8(^v%@HszAZ z#T;>x$&~^NuZ%8Avh)ok*H82*)C1zDTv_p6W&TJcD?Y%HaRohz)utOnJpqoQavIQv zSHi}`oRq>OLc(N#Vt7(1%PIsHAsppX2%kMKWiX22aVivI2Xi7K5qSrkN{$mLS*XUT zWERV?s%uepY4G3bUYE6b@D`S%2&KJ~n3Ks-yA-N2uvZqT=?c<(&esT=Jui#Zb}JT7 zJ7M)(dXGp2Hxr#4$wVV0M=@S;=iCJajRe~wJk2ucLnnO(^u89eNia=)Boa~zUo(8s z&kApL3hzBMaXqD%pv87LJpvpXV|+F{%friFC3HGRS{YArAcMy$A}6~md#q9+)=FN|9B%qqadRq_W2!Gh zMwvw6j&Xj{o4+7<;_{9=6Z&Lal3@}zDv{o)3T42jFSovzk=@!v2ZB$*uK@r1I)Zfv zGizvVp`t;e(HF?C+K`54v{44n+d%=IRk}3%$wF#o65t~vSz91Y(8~Jq%a;f;`fm~a ziv)REj}0-NX{ljFZQB&uWJr$wuTg8;;XoCd6)LD%cu%e8j~CTDZb>PvZZ8=kIf7(- zL>{eWyDuc4d*k(vCi#6VrIM)bZGoE!5v6!ScEKY2G#BO93%2fYQ#=nhw%Xd&OPcKb z#3%H9KWAL=irrL*^6~^J-0|QK%ZUeS9v+jx(Q5YW?6S$km39Uxfrg-?1jF(KHAELC U3mf-$Zk0Uhx=4-z4|)9j1Cf|Ci2wiq literal 0 HcmV?d00001 diff --git a/ConfigFiles/translations/Setting_zh_CN.ts b/ConfigFiles/translations/Setting_zh_CN.ts new file mode 100644 index 0000000..fac4bb0 --- /dev/null +++ b/ConfigFiles/translations/Setting_zh_CN.ts @@ -0,0 +1,263 @@ + + + + + DialogWorkingDir + + + Working Dir + 设置工作目录 + + + + Working Dir: + 工作目录: + + + + EColorComboBox + + + + More ... + 更多... + + + + Custom... + 自定义... + + + + Custom(%1)... + 自定义(%1)... + + + + Custom Color + 自定义颜色 + + + + #RRGGBB + + + + + + Black + 黑色 + + + + Dark blue + æ·±è“ + + + + Dark green + 深绿 + + + + Dark cyan + æ·±é’ + + + + Dark red + 深红 + + + + Dark magenta + 深洋红 + + + + Dark yellow + 深黄 + + + + Dark gray + æ·±ç° + + + + + Gray + ç°è‰² + + + + Blue + è“色 + + + + Green + 绿色 + + + + Cyan + é’色 + + + + Red + 红色 + + + + Magenta + 洋红 + + + + Yellow + 黄色 + + + + + White + 白色 + + + + GraphOptionDialog + + + Graph Option + 绘图选项 + + + + OK + 确定 + + + + Apply + 应用 + + + + Cancel + å–æ¶ˆ + + + + Genreal Color + 通用颜色设置 + + + + Background(Top) + 背景颜色(顶部) + + + + Background(Bottom) + 背景颜色(底部) + + + + HighLight Color + 高亮颜色 + + + + Pre Highlight Color + 预高亮颜色 + + + + Geometry Surface Color + 几何é¢é¢œè‰² + + + + Geometry Curve Color + 几何线颜色 + + + + Geometry Point Color + 几何点颜色 + + + + Transparency + 逿˜Žåº¦ + + + + Geometry Point Size + å‡ ä½•ç‚¹å¤§å° + + + + Geometry Curve Width + 几何线宽度 + + + + Mesh Face Color + 网格é¢é¢œè‰² + + + + Mesh Edge Color + 网格边颜色 + + + + Mesh Node Color + 网格节点颜色 + + + + Scalar and Size + 尺寸范围 + + + + Mesh Node Size + ç½‘æ ¼èŠ‚ç‚¹å¤§å° + + + + Mesh Edge Width + 网格边宽度 + + + + Setting::WorkingDirDialog + + + + + Warning + 警告 + + + + The Dir is not exist! + 目录ä¸å­˜åœ¨ï¼ + + + + Select a Directory + 选择目录 + + + + + Must set Working Dir first! + å¿…é¡»é¦–å…ˆè®¾ç½®å·¥ä½œç›®å½•ï¼ + + + diff --git a/ConfigFiles/translations/SolverControl_Zh_CN.qm b/ConfigFiles/translations/SolverControl_Zh_CN.qm new file mode 100644 index 0000000000000000000000000000000000000000..0f3e1a8c8ae84ecc341136e523c36d6299cd75aa GIT binary patch literal 2192 zcma)-U1(fI6vtiyWv zy_;r<5(H7pCaj@EY^ue^SPFd*^g#m+Lcy1a4+<7P5X6Fr4<--lL;DcV?A=bU!GUF2 z?#`X_`=9@unK|3{xpvRi_IoQ|$M5~(#S5E1_alUM5DGnkP#}uXv2}!`PXp%yn=pPP z@a@!bgqjXFJwMX}F>Aqhhp#~VW1+#1e}K4OLr-6M7@_b`XmRLEc(#YuhSp#ng)a78 zMJRYJw7m%9U_w%6hCydbI=B26Oy|P%*;RPHAFdh+$TQP&=)(QI8uz4QdXJX@*G4P-0VD^n>AZ7Dr`U9i?^z{>k2n>&Wv-HNiuGp$H|G;Pq+2BMpTcEmz$01)?SeOXg#S;aeLxpc4 zp<;9Gslwa8vlE6e>Ou*Wgl{)b9XnzewX^2nu0%4?&C=iJ)$FKkxzsj#d;jlJDd)eh ztTRROi%+d>faKJY;o`1Q+ae8%?Ykw0=8%aDpI|E&oHLDv_2h-Ss>^#iMRZWpU0hS=?;y;nZl~2VRpr_S#n%_lHj~PODr63w2;yspORPn zM)6=Jmp#rcg(p;M=~li`x@{p<=u00+OK>XS!*%2l;uJt9nM^XN`}Z6OHcM#zd=T2N zI;7TV58P^Isk5mY&-5&H`l@x%Yil{yOHWbVg^sGiZ_TSzePj5M`%gly-{IAY?Z?W& z%Jy!+Yq+Qr^>FKTuW*@QPX;NqY1|X{-t^+m9=4>$5{j$aAkY4?xV2`uNG$gq-s(nF zOU)DN|EC)JlRVDDr4d`xbG3#bCdxP8(QXrIV%oE{z9S^+{dN9=D{-#PGlc7ogdYC| D$R9;# literal 0 HcmV?d00001 diff --git a/ConfigFiles/translations/SolverControl_Zh_CN.ts b/ConfigFiles/translations/SolverControl_Zh_CN.ts new file mode 100644 index 0000000..de93487 --- /dev/null +++ b/ConfigFiles/translations/SolverControl_Zh_CN.ts @@ -0,0 +1,176 @@ + + + + + AddSolverDialog + + + Add Solver + 添加求解器 + + + + Solver Type + 求解器类型 + + + + Self Develop + 自研 + + + + Thrid Party + 第三方 + + + + Solver name: + 求解器å称: + + + + File path: + 文件路径: + + + + Start arguements: + å¯åЍ傿•°ï¼š + + + + Process key word: + 进度关键字: + + + + Input File + 输入文件 + + + + Template + æ¨¡æ¿ + + + + File format + æ–‡ä»¶æ ¼å¼ + + + + Output Transform + è¾“å‡ºè½¬æ¢ + + + + Transformer: + 转æ¢å™¨ï¼š + + + + OK + 确认 + + + + Cancel + å–æ¶ˆ + + + + SolverControl::AddSolverDialog + + + Edit Solver + 编辑求解器 + + + + Warning + 警告 + + + + Name and path must be given ! + åç§°å’Œè·¯å¾„å°šæœªæŒ‡å®šï¼ + + + + + Solver + 求解器 + + + + + All Files (*.*) + 全部文件 (*.*) + + + + Default (xml) + 默认 (xml) + + + + Default (None) + 默认 (æ— ) + + + + SolverControl::MesherControlerBase + + + Meshing... + 网格划分... + + + + SolverControl::SolverControlBase + + + + + + Warning + 警告 + + + + + Solver Path Error! Solve Path : %1 + 求解器路径错误ï¼è·¯å¾„:%1 + + + + + Input file write failed ! + è¾“å…¥æ–‡ä»¶å†™å‡ºå¤±è´¥ï¼ + + + + SolverManagerDialog + + + Solver Manager + æ±‚è§£å™¨ç®¡ç† + + + + Add + 添加 + + + + Remove + 移除 + + + + Modify + 修改 + + + diff --git a/ConfigFiles/translations/UserGuidence_zh_CN.qm b/ConfigFiles/translations/UserGuidence_zh_CN.qm new file mode 100644 index 0000000000000000000000000000000000000000..753e6164df1c377ee1741ef0c855a0ac2dd17a25 GIT binary patch literal 888 zcmcE7ks@*G{hX<16=n7(EZlq7iGhJ3gMp=eHUk6WBnFmiy+FP$1MB(YK)RK|%WNu8 z{2Xnl%%s_!~1&f~EUe!ch*85;h=acS$Wt%*-if2eNrxD-v@Ha#F)H zQ_@pQ7@7YA0bC)ATYgb4HdR2497)0P3}x@)L*c49{0ma^6kIZkaOhx3e_GBBSIrWZ znOcrRr2xpesqKE>{CJ}y!ZrRg!gWbOoUY)OnUkuJS*(zkU!ss&ky%`#pa?Qc+`Tk2 zB{eTO)yfLZUqDHLMyYfi?4|}M7iAWdkYy@McUp)S+>gYj zi&J89Hb{?9XmM&0%o8q|i8=Y{jNk|iES~xnuAJ35C%-rqpL#w&-oV~8yGpC>r&ZH~ zAH#LZxa8-lmnalx!OJTor^$WBa8%*?}QAV;Z2l6kyn^dGoUydbA4z}$*g pFDT+u+cT08dO?w|;F6zQnwy$eLQrp|m47#yUTE}!(=fI`0{~@S=o0_{ literal 0 HcmV?d00001 diff --git a/ConfigFiles/translations/UserGuidence_zh_CN.ts b/ConfigFiles/translations/UserGuidence_zh_CN.ts new file mode 100644 index 0000000..5cc5d03 --- /dev/null +++ b/ConfigFiles/translations/UserGuidence_zh_CN.ts @@ -0,0 +1,79 @@ + + + + + ExampleWidget + + + Form + + + + + Open Dir + 打开目录 + + + + Details + 详情 + + + + View + 查看 + + + + Guidence::ExampleWidget + + + + Warning + 警告 + + + + Detail File is not exist ! + 详情文件ä¸å­˜åœ¨ï¼ + + + + Script File is not exist ! + 脚本文件ä¸å­˜åœ¨ï¼ + + + + UserGuidenceDialog + + + User Guidence + 用户引导 + + + + Don't show this window again + ä¸å†æ˜¾ç¤ºè¯¥çª—å£ + + + + Back + 返回 + + + + Close + 关闭 + + + + View Document + 查看文档 + + + + View Examples + 查看示例 + + + diff --git a/ConfigFiles/translations/flags/ar.png b/ConfigFiles/translations/flags/ar.png new file mode 100644 index 0000000000000000000000000000000000000000..ade5ca31271fdc1ff9f7f2a63dbf9fa888457c10 GIT binary patch literal 592 zcmeAS@N?(olHy`uVBq!ia0vp^B0$W~!3-oXyUC{mDVB6cUq=Rpjs4tz5?O(Kg=CK) zUj~LMH3o);76yi2K%s^g3=E|P3=FRl7#OT(FffQ0%-I!a1C&@4;1l8sqy+*6cmjDi z0yx^JvA$Ha(ZBMz=U;usS{Ipf_W?pEt;1$=1t2fo>f>rr?hcNLriy6Vqb!N znO%5$m~Vr(ZK;hxw!T=TC|?LKe<+`Lw777%kWsFoTeX{9yqrdwhH^mS!_z|PGiA-rqC^IJfnd7dtgArhB! z`@8v?40v2`PG0$dyM4jj1&fp(-2VUHY^m}D4fV)r^VVjrfBePqh5V6)Z^Zoqxin`? z*<|-AI_l-BgBN5g|5X^x-5PYZxs~s5s>u3l7d#UG_)f|zzZd5!`Qh1f#glzj7uD>Z zKHoN1EH%_9;VSF#=#%TrlZ%qyIr3?6+KKhgTK;{L(5&9qxgVWQ{@l%dcxP_Ao(Y4% znS00C8(X+nxOjCr0bQzE;u=wsl30>zm0Xkxq!^4049#>6%ykV7Lkx_pj7+QyEwzCR k1A~<_zCJ+Fkei>9nO2Eg!;Pc9F+dFrp00i_>zopr0C9`P4gdfE literal 0 HcmV?d00001 diff --git a/ConfigFiles/translations/flags/br.png b/ConfigFiles/translations/flags/br.png new file mode 100644 index 0000000000000000000000000000000000000000..dd31ddd156c2de4df4b169183d49ef1e52374c5c GIT binary patch literal 560 zcmV-00?+-4P)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2j2w~ z6)y$dYu+LN00FQ`L_t(I%gvKNNLxVw#((#GFY3@Xc_)e%6rl?3AhknXB-SMeQgQ3j zjt)f%ty7_-e+C!D!IoCR*-0J6+JZ_(vEpEtG$i!T;>$}?f|MBJU56xXNuP;Ahkn!D z@!gN_?!JS6ECIkOx~5Ts7Bx)62(uPM`rv*?aX$AMQu*rOs=%OxCs#~*E=WLdOS(+P z3T&l7od;-JFx~-oTANtV5CEZ;4PIWGV&%Z)Rl+;%U%&wy!d)8o$rr`bFrM^;o52Dh>IHei-FJ zPQgq9MnAy1tFWy!LoIJHMR7;=ShJVaTy9*$Z#itH6}NX_D)u{_=N)cm;O-ubwJYwm zy+&!lJ7)-hk=FP024)FI74u&plRsmz%O&pf!?P~9d8rA2-RyV5(E{6= y0)>Wv560Sy>kFk+rxyD(px2N2Q`La{_xcIOm!Bt)ZQ5S|0000)>{NGCGpbGC%RlcL@d`DFHjwtgT;1xKmz;{#yg!ZfO{;C{|APz%USO#3*1!| zxFaw4#Dnim1?OEw!F$>Q4~+TWR&(A{6S$`%@H~>|uCm|@ZNbM{0*|x=UTO;-S*0of zwA;8O$S;_Iff)pxgG0a|*pbQKmx(DSmx(DaABdTla`TyzlbOUj=g#YtWasAMVrQIU zU49a%eWj<1V~E7%H literal 0 HcmV?d00001 diff --git a/ConfigFiles/translations/flags/cs.png b/ConfigFiles/translations/flags/cs.png new file mode 100644 index 0000000000000000000000000000000000000000..f8f671a7298af0acacd542dc472b0c61dd8467c9 GIT binary patch literal 252 zcmVvz6h;q7urL$B=_3$)1D}9OaufrR2XM2P4Eg|A3??#>;@qqjo!vlTgE`bq%Wu`G z$l(9l-FJ8H*~M{IB2BMCRsc^J#z+LgP6|*3NRkV-y~MH>#POLrQD28JJYbqre19tk z2#{qrTsNp}tNtpg+Nwom6`_v$Y7iF2jh%uPKg~3?L_L~SdS<3u~Y^Px+*$zsY zA_p!?QMMY%QkD|oV!06guW!oP)3fxx^}M~JUYDcf!*~EnZLYeQWgwHUx16~vJEDQb zwm#pWVJVX_`ws+k08T&v=7AYt5pV#+V^INz9OMJq#X>IZ8qh6>urvPLNCM~{bO(9@J%C<8 zFQ7METNG8Slh9GDD*@zLC58-6U(h0Otx~JNz%l+w5X|Oaan>$|din6Ymn<|gW!U_%O?XxI14-? zi-9_>gD|6$#_S59V85q}V~EA+x0emM4mk+4KCCyB7U~d?=HA=%ptGs{i=H-<}Ato@{Z!aezteceJUSlw)kUy{L{LM>CO%R zr#HS07h6`Z^5f?{;br;n|JziY`8X@` + + ar.png + cs.png + de.png + es.png + us.png + fr.png + it.png + ru.png + cn.png + br.png + gb.png + roc.png + kr.png + tr.png + ua.png + eg.png + pl.png + jp.png + nl.png + + diff --git a/ConfigFiles/translations/flags/fr.png b/ConfigFiles/translations/flags/fr.png new file mode 100644 index 0000000000000000000000000000000000000000..7fe158cee408c8b91215f0a1ef2319121b2b8edf GIT binary patch literal 616 zcmeAS@N?(olHy`uVBq!ia0vp^B0$W~!3-oXyUC|BFfi%__=LCuxj-g^Ru6;j3y|+1#R8+@evOLLilb)(m|5415L* zTzWwvkqHS2i9i6Pf`VgM`C>SQfXaaCK`PZ68Pw_-q$+Pcc>DJs$WQ=~`k|4ie1_ovra1IWEfnZ0b0AD7iyj&)xf_x^X{CuXAWG3;>x$|IP zZl@$WHy0eRGe$C**a6L4?CIhdB5^qx=#`|j#Kcr)<}yA$KRq^q2hScpefn5jKtx1H zOi)x*n4QbhqpG5+s;ct$k6*ujva_(Uv3YtLpE$wB%J#bBtA1Gcz;OyC=>eBs6)_q)Db*B_y_#mVEv4g_ozdr^nal z?3pvVI+79+l55uF=H$G6BP$~_cTQ|f%-uVZ47D>n0$rL_|A9i+)78&qol`;+0042) A!T?ulu;OlA4kWgP-~=d#&M0n5KU=hTq6}RERduSn(`{_ zLW(3x^CBt1g2IKQ3j^z-P_T4JDTdPAmj=Nbg)!3samDQyNB!ODBKuv&5Tf_$gY%x} zyyu+nga0gt?ebjO!l$E_4YgJYAOje6RF2KOuc9w9l3>9? zZS5^graS0#zILGS@Dnr?o~2;Xh(}!|-o?duRa7$Qq#glq0vL1A3YLpm1Spo+m>pte zV1T5gAd-@Tur)O70@jpWVWGVpMNtvX!KblWr}b}PH$w_R@ z%>cN@#o?qjff!;G%g&csj1HlTfeN=`)bl}MB~=gh()hQ`0^E#a}cpeOEfFmOU85!kx zd*@JM8b@3HyLApbIw&NdxU@XlnR1`_Zz?jMwKF}v@Yl!xqp2wyIXOlG10V6uJkO+G zXgBPh zaB^>EX>4U6ba`-PAZ2)IW&i+q+MQHsuG}CD{?93T1iS#|IFNwU8}#`7Ovt>M(R-t+ zwgQg#EeYe#?-_nMWQ##lv0QVG0IgcNfv|Xi(;W}vIWLywcmu_{&IN(=!G00Mx!L^2 z-#4{4N4ld^e-+$(wl_z7UE%>i--(2}2@Nkv?kl{P z68RE5ntD5wSN=VW8^TIYAeJYk{QYD;4JLe=%qr`t(W;x`SAIGph3E9RM7J+Rwlv%*srI6$S&m@yLaC*s=nTXaTVYloZaC#{XmZSH(FGZxO8zdakuVUhHG> zV$p2z3u>4G-L0kgGq|I&^-sEnfIf#0Mk1x8wF2lvM=smEEE{>X3~$D|=60KOqO~>N z+MmH)V*Eu^QW4Crs!2mrws*epB98d*!%OA98QRXSU){%<&&iNzEB>f;`{ sQbhqWQC;ruoR|@@d*MLMHP`&(1K)KK8pNN!+yDRo07*qoM6N<$f*wLNzyJUM literal 0 HcmV?d00001 diff --git a/ConfigFiles/translations/flags/jp.png b/ConfigFiles/translations/flags/jp.png new file mode 100644 index 0000000000000000000000000000000000000000..325fbad3ffd3075a4a84d8d898ad26ef7d3e0d56 GIT binary patch literal 420 zcmV;V0bBlwP)9whYk?f=!Q|Ns8||JN@lTD;`{R1ZWk|EGa3dAO8ObDh3E3Cb;oH_5X#1 z|NHy@|M?558b}5Q|Cf`4hZv9q2p|@?lb|{i68>{>{ol0lx`{mi O0000lKn+&kl?%bT0$#{+f;6bJOb0+iU*B5@eKJ&00vjiZe0AqQ1+4ube zLxcMV4~Rn19Um9t6OD;Cs$*lg_s6r(3>_PLwOAy3=v{r`E*4hf->b36&2Kq-v4}bDz`%Ly9V&2~! zX>H?6m%sh^^ry|uEl>9Kn#!noo+eVvyd^rlcklDV!@1nuaHI*qqp|RzK@)hmLM)O< zcJ}o4?mqb9!D!5C_#PM{Un)fn!?G;bb#u9#y=ixMCWDb!tzHeAf;Bs?wxX8fl;`Jv z4H@R1{{EIkVkN(}T38dS#Ue8kZ9PU45ff`B&BVlLkR~P&ftd)6h6b1c20;G;qB^E3 TNGQ1#00000NkvXXu0mjf;zOz= literal 0 HcmV?d00001 diff --git a/ConfigFiles/translations/flags/nl.png b/ConfigFiles/translations/flags/nl.png new file mode 100644 index 0000000000000000000000000000000000000000..99814aa9c9bad8116af7462c3060e2ce323e9117 GIT binary patch literal 119 zcmeAS@N?(olHy`uVBq!ia0vp^B0$W~!3HFs%y=IPq&N#aB8wRqn7)88W5e1tAVEz} z7sn8b)5$UFi$Bh9>}u$2Je9yAb>heW|Nk#~Najpj^x~SWlxFi82L|yf_Fs$n^R0oJ O7(8A5T-G@yGywo?2qpFa literal 0 HcmV?d00001 diff --git a/ConfigFiles/translations/flags/pl.png b/ConfigFiles/translations/flags/pl.png new file mode 100644 index 0000000000000000000000000000000000000000..d8ca17ce955667b52e070dbe2cfaf917240f1797 GIT binary patch literal 139 zcmeAS@N?(olHy`uVBq!ia0vp^B0$W~!3HFs%y=IPq}Y|gW!U_%O?XxI14-? zi-9_>gD|6$#_S59pth%rV~EA+UD$-=Ps633$h^Mq#twJ~_Q`njxgN@xNADbXu} literal 0 HcmV?d00001 diff --git a/ConfigFiles/translations/flags/roc.png b/ConfigFiles/translations/flags/roc.png new file mode 100644 index 0000000000000000000000000000000000000000..23f01ce46894a133fd3a4fbd420691bbc6ad3c7f GIT binary patch literal 329 zcmeAS@N?(olHy`uVBq!ia0vp^B0$W~!2~3;e^r1e#^NA%Cx&(BWL^R}Ea{HEjtmSN z`?>!lvI6;>1s;*b3=DjSL74G){)!Z!;5|fFgw z=a{VZCR4jY`RQ4Y~n|q&)u|Wh|nGL5|KHIID@9&PEJ6C+^(ve#>!YvZ%2E}Jh zH{N^kWM^zpoh0+)k_|sDWwFKA%wm7}o(n%!6ie(pIp+EcIX$1;0^+iHOj2S0^Piug{EBz$ UHL)l1K%X*ry85}Sb4q9e04w5s-v9sr literal 0 HcmV?d00001 diff --git a/ConfigFiles/translations/flags/ru.png b/ConfigFiles/translations/flags/ru.png new file mode 100644 index 0000000000000000000000000000000000000000..e634822ec003073ca208d7a78e7c77ccee29565b GIT binary patch literal 503 zcmeAS@N?(olHy`uVBq!ia0vp^B0$W~!3-oXyUC{msaF9$A+A80k%8g=|Nr;y-FpZI zckkW>a(C?5v3~vfWy_W=Sg>H_%H@j|E$Hd_Z(@>TXqY}{&VOFsr)+GY%*+AY-2d6w z9x^kBFf#fvG5r=~yTi^L#LDQy&-C>kYgrJJjvu4OAEt)?EZhs2SZ6UZ|7YU(&%(Bt ziFqy~<9{Zm|17Nij7%*+HZ#a!iHwZ-jEn`0jPZ;>M=_K!GR876Brr0@fdzpgK!^GJ zFZc6X8W6C8m9>$TwSkqjiIK6Mk+F`Ev4NejhMlpRow2ro(Xo!vv4PR)HzUgrMwb7K zjQ7auM>xFKEs`s&9~N&NqBon-!g?o-AGDIcC+y2Eug zdHRPu$@vW*KJ(m=d?G2t;a*n#NT647p2fV5Vx!iQXGN-cH)TGx{%$ttR-K}KUi{;_ zYYVQgnLE@ew&z!e(I*uOqtpE1UfbOH1#voVZCq*D!dx L`njxgN@xNA(A%r4 literal 0 HcmV?d00001 diff --git a/ConfigFiles/translations/flags/tr.png b/ConfigFiles/translations/flags/tr.png new file mode 100644 index 0000000000000000000000000000000000000000..f95e1ca967cb96085ca8086dbce1978cbd6ea94b GIT binary patch literal 792 zcmV+z1LypSP)#~ zVB!`R+)z~9LI00j1_Z%lz>7C8o+UFq(~h%s&rC9C5-|?>Qt$OhJZQj%AN8tURlTpO zh1VGw@$aqHSMSW`bdJUHVtP!b^nu*m^wjwH6rm?O+p11YA+)i9;OZ(uYikItum6Mj z{~<^y#P5|An3Iz~3*APe7+hXP_}~Dctu2IicQrOQ5#HX`&O19A%x66KM2LKKZx2zz zl9XfrcB928QjOin@>9Yt_y3F`bjl(8`=)6-C&fz|kDXK}Z%0CQrZjVtu` z_aiVe0)KBWl!*!aJUzv|s^Zt#8N&Pf@DC0mFf@d~@UUi?AHzQ|058RENragxWDPwX z9q_id!`sz`yNe4%Bi|9Eo%s6t5THa~cQ-t(t?;z8z}wcQ<;L)k?KvH#ERqUyn;dnfe5EagjG>@vEjLj=QlDGTCc-OdB~XOO$JB zAm!%b=I982qETMpDlO$rUFGGttgYqaM#4b`le&I9K>KBSUl+7sE+KF0!}h z=eSoC_^2sU<|uno_B#~t}XhfDQJ=)__IG94p_tKOGL9hv3 z$;qOd_P}27Qez)oFqrRS#Qf)AH69{DQ*wnVI$Z%BzEJlQgHCtC?MsN&n90To!pdL5 W*mJs6q;`=20000^eP*B^` z#WBRvVBq>N(>CEjo6t&94l>r P+88`t{an^LB{Ts5N*E&m literal 0 HcmV?d00001 diff --git a/ConfigFiles/translations/flags/us.png b/ConfigFiles/translations/flags/us.png new file mode 100644 index 0000000000000000000000000000000000000000..10db15e8f509e5c5dd9ee106091911da3380c29d GIT binary patch literal 872 zcmeAS@N?(olHy`uVBq!ia0vp^B0$W~!3-oXyUC|BFfg7A@Ck7Rav2#IrYzWH6WknA zICtshiwqLsGglm+v-%W+NXV3R7p{1OJn;&8>J{|RGw_15_rm3yRLr8?LQ7^X+`zz~ z+uFOJbJAi42JPMj8+&=grgI6+;1Zm{CD6~nr0&rts^YqN&z}GP|LX-WV-Yf5u4S@W z({PKXVWFhl|KJq8uw@MV21_??&r3tpM7!V9DbD z1$C7gx_j*1N;P!;H}o!;J$v@F>HjCqt2MK#GPV4_dPh%3M^j@X(C=>C`~doeY9*?>~J7 z+UNpwPjo|IVvA!)m62P1L`G*wYP+FJu4P!=HZ7y@^ezR{Btw_HsH|=Vaj$^H)}Z88 z22n5f@EV|I6ZgWPq*mw9YMyM8gPlU%D3yVGx9{c0gozFLKeZG17PO*PD(8Y-*L4Lsu49qCN zIXDCkf*qLxe3_VX|NZ-y%fytI&y)vb<-u7%4hVpR^MQ(h7>tsW#JlFso7XAH&dtTe z&M2Sx!VhTK3r`ov5Q)pl2?+^FX^E-H&mTN_^z7l&r%xZJGcYnbDkcgB8WwVTYG!6; zN=7c2FsCLdsK_fTs>&@b%uGT|JCiqUc9F1F@nVUd-tsiCF5 zxv{n`OSdUC_vJY!rxpem=XtN5w~tX^i=>pH#Oy8QC1s`GzbyOa7&=SKXvWO%(GgLR zw{P6KX>HMTwxlR6pyXs(>xzb;n|WP4@8pDS)Rh>|bH?4{>9U)wwz$D_Ul&i^zu;wy z8ZsFhdAb}gr=M|QyWA`)DdFUF_|QZLmlP3ZW@YCRA045NZvO;e2KtyTSbw-{5zx;J Mp00i_>zopr064)(xc~qF literal 0 HcmV?d00001 diff --git a/ConfigFiles/translations/place_translations_here b/ConfigFiles/translations/place_translations_here new file mode 100644 index 0000000..e69de29 diff --git a/ConfigFiles/translations/sqlb_ar_SA.qm b/ConfigFiles/translations/sqlb_ar_SA.qm new file mode 100644 index 0000000000000000000000000000000000000000..cfe10a92cfb5f06917346b2f6eef99e64a14c643 GIT binary patch literal 223625 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 S_tSm*fBM#EMt^$p#s3FT*B+Pv literal 0 HcmV?d00001 diff --git a/ConfigFiles/translations/sqlb_ar_SA.ts b/ConfigFiles/translations/sqlb_ar_SA.ts new file mode 100644 index 0000000..ffd84c3 --- /dev/null +++ b/ConfigFiles/translations/sqlb_ar_SA.ts @@ -0,0 +1,7051 @@ + + + + + AboutDialog + + + About DB Browser for SQLite + عن «متصÙّح قواعد بيانات SQLite» + + + + Version + الإصدارة + + + + <html><head/><body><p>DB Browser for SQLite is an open source, freeware visual tool used to create, design and edit SQLite database files.</p><p>It is bi-licensed under the Mozilla Public License Version 2, as well as the GNU General Public License Version 3 or later. You can modify or redistribute it under the conditions of these licenses.</p><p>See <a href="http://www.gnu.org/licenses/gpl.html">http://www.gnu.org/licenses/gpl.html</a> and <a href="https://www.mozilla.org/MPL/2.0/index.txt">https://www.mozilla.org/MPL/2.0/index.txt</a> for details.</p><p>For more information on this program please visit our website at: <a href="http://sqlitebrowser.org">http://sqlitebrowser.org</a></p><p><span style=" font-size:small;">This software uses the GPL/LGPL Qt Toolkit from </span><a href="http://qt-project.org/"><span style=" font-size:small;">http://qt-project.org/</span></a><span style=" font-size:small;"><br/>See </span><a href="http://qt-project.org/doc/qt-5/licensing.html"><span style=" font-size:small;">http://qt-project.org/doc/qt-5/licensing.html</span></a><span style=" font-size:small;"> for licensing terms and information.</span></p><p><span style=" font-size:small;">It also uses the Silk icon set by Mark James licensed under a Creative Commons Attribution 2.5 and 3.0 license.<br/>See </span><a href="http://www.famfamfam.com/lab/icons/silk/"><span style=" font-size:small;">http://www.famfamfam.com/lab/icons/silk/</span></a><span style=" font-size:small;"> for details.</span></p></body></html> + <html dir="rtl"> +<p>«متصÙّح قواعد بيانات SQLite» أداة رسوميّة Ù…ÙØªÙˆØ­Ø© المصدر ومجانية، ØªÙØ³ØªØ®Ø¯Ù… لإنشاء ملÙّات قواعد بيانات SQLite وتصميمها وتحريرها.</p><p>الأداة مرخّصة برخصتين، الإصدارة الثانية من رخصة موزيلا العمومية، والإصدارة الثالثة وما بعدها من رخصة غنو العمومية. يمكنك تعديل الأداة أو إعادة توزيعها بشروط تلك الرخص.</p><p>طالع <a href="http://www.gnu.org/licenses/gpl.html">http://www.gnu.org/licenses/gpl.html</a> Ùˆ<a href="https://www.mozilla.org/MPL/2.0/index.txt">https://www.mozilla.org/MPL/2.0/index.txt</a> Ù„Ù„ØªÙØ§ØµÙŠÙ„.</p><p>من ÙØ¶Ù„Ùƒ Ø²ÙØ± موقع Ø§Ù„ÙˆÙØ¨ هذا لمعلومات أكثر عن البرمجية: <a href="http://sqlitebrowser.org">http://sqlitebrowser.org</a></p><p><span style=" font-size:small;">تستخدم هذه البرمجية Ø¹ÙØ¯Ù‘Ø© أدوات كيوت المرخّصة تحت GPL/LGPL وذلك من </span><a href="http://qt-project.org/"><span style=" font-size:small;">http://qt-project.org/</span></a><span style=" font-size:small;"><br/>طالع </span><a href="http://qt-project.org/doc/qt-5/licensing.html"><span style=" font-size:small;">http://qt-project.org/doc/qt-5/licensing.html</span></a><span style=" font-size:small;"> لشروط الترخيص والمعلومات.</span></p><p><span style=" font-size:small;">تستخدم البرمجية أيضًا طقم أيقونات الحرير/Silk للمؤلّ٠Mark James المرخّصة برخصة المشاع الإبداعي - النسبة ٢٫٥ و٣٫٠.<br/>طالع </span><a href="http://www.famfamfam.com/lab/icons/silk/"><span style=" font-size:small;">http://www.famfamfam.com/lab/icons/silk/</span></a><span style=" font-size:small;"> Ù„Ù„ØªÙØ§ØµÙŠÙ„.</span></p> +</html> + + + + AddRecordDialog + + + Add New Record + أضÙ٠سجلًا جديدًا + + + + Enter values for the new record considering constraints. Fields in bold are mandatory. + أدخÙÙ„ قيم السجلّ الجديد بأخذ القيود بعين الاعتبار. الحقول الثخينة ضرورية. + + + + In the Value column you can specify the value for the field identified in the Name column. The Type column indicates the type of the field. Default values are displayed in the same style as NULL values. + يمكنك تحديد قيمة الحقل المحدّد ÙÙŠ عمود â€Ø§Ù„اسم“ وذلك ÙÙŠ عمود â€Ø§Ù„قيمة“. ÙŠÙØ´ÙŠØ± عمود â€Ø§Ù„نوع“ إلى نوع الحقل. ØªÙØ¹Ø±Ø¶ القيم المبدئية Ø¨Ù†ÙØ³ نمط قيم NULL. + + + + Name + الاسم + + + + Type + النوع + + + + Value + القيمة + + + + Values to insert. Pre-filled default values are inserted automatically unless they are changed. + القيم التي Ø³ØªÙØ¯Ø±Ø¬. لو لم تتغيّر ÙØ³Ùتدرج آليًا القيم المبدئية المعبّأة مسبقًا. + + + + When you edit the values in the upper frame, the SQL query for inserting this new record is shown here. You can edit manually the query before saving. + عندما تحرّر القيم ÙÙŠ الإطار أعلاه، ستظهر هنا Ø¥ÙØ§Ø¯Ø© SQL لإدراج هذا السجلّ. يمكنك تحرير Ø§Ù„Ø¥ÙØ§Ø¯Ø© يدويًا قبل Ø§Ù„Ø­ÙØ¸. + + + + <html><head/><body><p><span style=" font-weight:600;">Save</span> will submit the shown SQL statement to the database for inserting the new record.</p><p><span style=" font-weight:600;">Restore Defaults</span> will restore the initial values in the <span style=" font-weight:600;">Value</span> column.</p><p><span style=" font-weight:600;">Cancel</span> will close this dialog without executing the query.</p></body></html> + <p>Ø³ÙŠÙØ±Ø³Ù„ زر <span style=" font-weight:600;">Ø§Ø­ÙØ¸</span> Ø¥ÙØ§Ø¯Ø© SQL الظاهرة إلى قاعدة البيانات لإدراج السجلّ الجديد.</p><p>سيستعيد زر <span style=" font-weight:600;">استعد المبدئيات</span> القيمة الأولية ÙÙŠ عمود â€<span style=" font-weight:600;">القيمة</span>“.</p><p>Ø³ÙŠÙØºÙ„Ù‚ زر <span style=" font-weight:600;">ألغÙ</span> مربّع الحوار هذا دون تنÙيذ الاستعلام.</p> + + + + Auto-increment + + زيادة آليّة + + + + + Unique constraint + + قيد â€Ùريد“ + + + + + Check constraint: %1 + + قيد Ø§Ù„ÙØ­Øµ: %L1 + + + + + Foreign key: %1 + + Ø§Ù„Ù…ÙØªØ§Ø­ الأجنبي: %L1 + + + + + Default value: %1 + + القيمة المبدئية: %L1 + + + + + Error adding record. Message from database engine: + +%1 + خطأ أثناء Ø¥Ø¶Ø§ÙØ© السجلّ. الرسالة من محرّك قواعد البيانات: + +%L1 + + + + Are you sure you want to restore all the entered values to their defaults? + أمتأكّد من استعادة كلّ القيم Ø§Ù„Ù…ÙØ¯Ø®Ù„Ø© إلى مبدئياتها؟ + + + + Application + + + Possible command line arguments: + معطيات سطر الأوامر الممكنة: + + + + The -o/--option and -O/--save-option options require an argument in the form group/setting=value + يطلب الخياران ‎-o/--option Ùˆ ‎-O/--save-option معطًى بهذا النحو: group/setting=value + + + + Usage: %1 [options] [<database>|<project>] + + ‎الاستعمال:‎ %L1 [options] [<database>|<project>] + + + + + -h, --help Show command line options + -h, --help اعرض خيارات سطر الأوامر + + + + -q, --quit Exit application after running scripts + -q, --quit أنه٠التطبيق بعد تشغيل السكربتات + + + + -s, --sql <file> Execute this SQL file after opening the DB + -s, --sql <file> ‫نÙّذ مل٠SQL المذكور بعد ÙØªØ­ قاعدة البيانات + + + + -t, --table <table> Browse this table after opening the DB + -t, --table <table> تصÙّح الجدول المذكور بعد ÙØªØ­ قاعدة البيانات + + + + -R, --read-only Open database in read-only mode + -R, --read-only Ø§ÙØªØ­ قاعدة البيانات بوضع القراءة Ùقط + + + + -o, --option <group>/<setting>=<value> + -o, --option <group>/<setting>=<value> + + + + Run application with this setting temporarily set to value + ‎ ‫شغّل التطبيق بضبط هذا الإعداد setting مؤقتًا على القيمة value + + + + -O, --save-option <group>/<setting>=<value> + -O, --save-option <group>/<setting>=<value> + + + + Run application saving this value for this setting + ‎ ‫شغّل التطبيق Ø¨Ø­ÙØ¸ هذه القيمة value لهذا الإعداد setting + + + + -v, --version Display the current version + -v, --version اعرض الإصدارة الحالية + + + + <database> Open this SQLite database + <database> â€«Ø§ÙØªØ­ قاعدة بيانات SQLite المذكورة + + + + <project> Open this project file (*.sqbpro) + <project> â€«Ø§ÙØªØ­ مل٠المشروع المذكور (‎*.sqbpro) + + + + The -s/--sql option requires an argument + يتطلّب الخيار ‎-s/--sql معطًى + + + + The file %1 does not exist + المل٠%L1 غير موجود + + + + The -t/--table option requires an argument + يتطلّب الخيار ‎-t/--table معطًى + + + + Invalid option/non-existant file: %1 + خيار غير صالح/مل٠غير موجود: %L1 + + + + SQLite Version + إصدارة SQLite: †+ + + + SQLCipher Version %1 (based on SQLite %2) + إصدارة SQLCipher:†%L1 (مبنيّة على SQLite %L2) + + + + DB Browser for SQLite Version %1. + «متصÙّح قواعد بيانات SQLite» الإصدارة %L1. + + + + Built for %1, running on %2 + مبنيّة للمعماريّة %L1ØŒ وتعمل على المعماريّة %L2 + + + + Qt Version %1 + إصدارة كيوت: %L1 + + + + CipherDialog + + + SQLCipher encryption + تعمية SQLCipher + + + + &Password + &كلمة السر + + + + &Reenter password + Ø£&Ø¹ÙØ¯ إدخال كلمة السر + + + + Encr&yption settings + إعدادات التع&مية + + + + SQLCipher &3 defaults + مبدئيّات SQLCipher &3 + + + + SQLCipher &4 defaults + مبدئيّات SQLCipher &4 + + + + Custo&m + Ù…&خصّص + + + + Page si&ze + Ù…&قاس Ø§Ù„ØµÙØ­Ø© + + + + &KDF iterations + ت&كرارات KDF + + + + HMAC algorithm + خوارزميّة HMAC + + + + KDF algorithm + خوارزميّة KDF + + + + Plaintext Header Size + حجم ترويسة النص البائن + + + + Passphrase + عبارة سر + + + + Raw key + Ù…ÙØªØ§Ø­ خام + + + + Please set a key to encrypt the database. +Note that if you change any of the other, optional, settings you'll need to re-enter them as well every time you open the database file. +Leave the password fields empty to disable the encryption. +The encryption process might take some time and you should have a backup copy of your database! Unsaved changes are applied before modifying the encryption. + من ÙØ¶Ù„Ùƒ اضبط Ù…ÙØªØ§Ø­Ù‹Ø§ لتعمية قاعدة البيانات. +لو غيّرت أيًا من الإعدادات الأخرى (الاختيارية)ØŒ ÙØ³ÙŠÙƒÙˆÙ† عليك إعادة إدخالها أيضًا ÙÙŠ كلّ مرّة ØªÙØªØ­ Ùيها مل٠قاعدة البيانات. +اترك حقول كلمة السر ÙØ§Ø±ØºØ© لتعطيل التعمية. +قد تأخذ عملية التعمية وقتًا وعليك Ø§Ù„Ø§Ø­ØªÙØ§Ø¸ بنسخة من قاعدة البيانات احتياطًا! Ø³ØªÙØ·Ø¨Ù‘Ù‚ التعديلات غير المحÙوظة قبل تعديل التعمية. + + + + Please enter the key used to encrypt the database. +If any of the other settings were altered for this database file you need to provide this information as well. + من ÙØ¶Ù„Ùƒ أدخÙÙ„ Ø§Ù„Ù…ÙØªØ§Ø­ المستعمل لتعمية قاعدة البيانات. +إن كانت هناك إعدادات أخرى قد تغيّرت ÙÙŠ مل٠قاعدة البيانات هذا، ÙØ¹Ù„يك ذكر ذلك أيضًا. + + + + ColumnDisplayFormatDialog + + + Choose display format + اختر تنسيق العرض + + + + Display format + تنسيق العرض + + + + Choose a display format for the column '%1' which is applied to each value prior to showing it. + اختر تنسيق عرض العمود â€%L1“ Ù„ÙŠÙØ·Ø¨Ù‘Ù‚ على كلّ قيمة قبل عرضها. + + + + Default + المبدئي + + + + Decimal number + عدد عشري + + + + Exponent notation + تدوين Ø£ÙØ³Ù‘ÙŠ + + + + Hex blob + â€BLOB ستّ‌عشري + + + + Hex number + عدد ستّ‌عشري + + + + Apple NSDate to date + â€ØªØ§Ø±ÙŠØ® آبل/Apple NSDate“ إلى تاريخ + + + + Java epoch (milliseconds) to date + عَصر جاڤا (ملّي‌ثانية) إلى تاريخ + + + + .NET DateTime.Ticks to date + â€DateTime.Ticks من ‎.NET إلى تاريح + + + + Julian day to date + يوم جولياني إلى تاريخ + + + + Unix epoch to local time + عَصر لينكس إلى الوقت المحلي + + + + Date as dd/mm/yyyy + التاريخ بتنسيق dd/mm/yyyy + + + + Lower case + حالة الأحر٠صغيرة + + + + Custom display format must contain a function call applied to %1 + على تنسيق العرض المخصّص أن يحتوي على نداء دالة مطبّق على %L1 + + + + Error in custom display format. Message from database engine: + +%1 + خطأ ÙÙŠ تنسيق العرض المخصّص. الرسالة من محرّك قواعد البيانات: +%L1 + + + + Custom display format must return only one column but it returned %1. + على تنسيق العرض المخصّص إعادة عمود واحد Ùقط، لكنّه أعاد %L1. + + + + Octal number + عدد ثماني + + + + Round number + عدد تقريبي + + + + Unix epoch to date + عَصر لينكس إلى تاريخ + + + + Upper case + حالة الأحر٠كبيرة + + + + Windows DATE to date + â€ØªØ§Ø±ÙŠØ® وندوز/Windows DATE“ إلى تاريخ + + + + Custom + مخصّص + + + + CondFormatManager + + + Conditional Format Manager + مدير التنسيقات الشرطيّة + + + + This dialog allows creating and editing conditional formats. Each cell style will be selected by the first accomplished condition for that cell data. Conditional formats can be moved up and down, where those at higher rows take precedence over those at lower. Syntax for conditions is the same as for filters and an empty condition applies to all values. + ÙŠÙØªÙŠØ­ لك مربّع الحوار هذا إنشاء التنسيقات الشرطيّة وتحريرها. ستختار البرمجيّة كلّ نمط خلايا حسب أوّل شرط متواÙÙ‚ مع بيانات الخليّة. يمكنك نقل التنسيقات الشرطيّة إلى أعلى وأسÙÙ„ØŒ حيث تعبّر أعلاها أكثرها أولويّة، والعكس. صياغة الشروط هي Ù†ÙØ³Ù‡Ø§ صياغة المرشّحات، والشروط Ø§Ù„ÙØ§Ø±ØºØ© تنطبق على كلّ القيم. + + + + Add new conditional format + أضÙ٠تنسيقًا شرطيًا جديدًا + + + + &Add + Ø£&ضÙÙ + + + + Remove selected conditional format + أزÙÙ„ التنسيق الشرطيّ المحدّد + + + + &Remove + Ø£&زÙÙ„ + + + + Move selected conditional format up + انقل التنسيق الشرطيّ المحدّد لأعلى + + + + Move &up + انقل لأ&على + + + + Move selected conditional format down + انقل التنسيق الشرطيّ المحدّد لأسÙÙ„ + + + + Move &down + انقل لأ&سÙÙ„ + + + + Foreground + الأمامية + + + + Text color + لون النص + + + + Background + الخلÙية + + + + Background color + لون الخلÙية + + + + Font + الخط + + + + Size + الحجم + + + + Bold + ثخين + + + + Italic + مائل + + + + Underline + مسطّر + + + + Alignment + المحاذاة + + + + Condition + الشرط + + + + + Click to select color + انقر لاختيار لون + + + + Are you sure you want to clear all the conditional formats of this field? + أمتأكّد من مسح كلّ التنسيقات الشرطيّة لهذا الحقل؟ + + + + DBBrowserDB + + + Please specify the database name under which you want to access the attached database + من ÙØ¶Ù„Ùƒ اختر اسم قاعدة البيانات الذي تريد استعماله للوصول إلى قاعدة البيانات المرÙقة + + + + Invalid file format + تنسيق المل٠غير صالح + + + + Do you want to save the changes made to the database file %1? + أتريد Ø­ÙØ¸ التعديلات Ø§Ù„Ù…ÙØ¬Ø±Ø§Ø© على مل٠قاعدة البيانات %L1ØŸ + + + + Exporting database to SQL file... + يصدّر قاعدة البيانات إلى مل٠SQL... + + + + + Cancel + ألغ٠+ + + + Executing SQL... + ينÙّذ SQL... + + + + Action cancelled. + Ø£Ùلغي الإجراء. + + + + This database has already been attached. Its schema name is '%1'. + Ø£ÙØ±Ùقت قاعدة البيانات هذه Ø¨Ø§Ù„ÙØ¹Ù„. اسم المخطّط هو â€%L1“. + + + + Do you really want to close this temporary database? All data will be lost. + أمتأكّد من إغلاق قاعدة البيانات المؤقّتة هذه؟ ستÙقد كلّ البيانات. + + + + Database didn't close correctly, probably still busy + لم ØªÙØºÙ„Ù‚ قاعدة البيانات كما ينبغي، ربّما هي مشغولة + + + + The database is currently busy: + قاعدة البيانات مشغولة حاليًا: + + + + Do you want to abort that other operation? + أتريد إجهاض العملية الأخرى؟ + + + + + No database file opened + لم ÙŠÙÙØªØ­ مل٠قاعدة بيانات + + + + + Error in statement #%1: %2. +Aborting execution%3. + خطأ ÙÙŠ Ø§Ù„Ø¥ÙØ§Ø¯Ø© رقم %L1:†%L2. +Ø³Ø£ÙØ¬Ù‡Ø¶ التنÙيذ%L3. + + + + + and rolling back + ÙˆØ£ÙØ±Ø¬Ø¹ ما كان موجودًا. + + + + didn't receive any output from %1 + لم أستلم أيّ ناتج من %L1 + + + + could not execute command: %1 + تعذّر تنÙيذ الأمر: %L1 + + + + Cannot delete this object + تعذّر حذ٠هذا الكائن + + + + Cannot set data on this object + تعذّر ضبط البيانات على هذا الكائن + + + + + A table with the name '%1' already exists in schema '%2'. + هناك جدول Ø¨Ù†ÙØ³ الاسم â€%L1“ Ø¨Ø§Ù„ÙØ¹Ù„ ÙÙŠ المخطّط â€%L2“. + + + + No table with name '%1' exists in schema '%2'. + ما من جدول له الاسم â€%L1“ ÙÙŠ المخطّط â€%L2“. + + + + + Cannot find column %1. + تعذّر العثور على العمود %L1 + + + + Creating savepoint failed. DB says: %1 + ÙØ´Ù„ إنشاء نقطة Ø§Ù„Ø­ÙØ¸. تقول قاعدة البيانات: %L1 + + + + Renaming the column failed. DB says: +%1 + ÙØ´Ù„ تغيير اسم العمود. تقول قاعدة البيانات: +%L1 + + + + + Releasing savepoint failed. DB says: %1 + ÙØ´Ù„ت استعداة نقطة Ø§Ù„Ø­ÙØ¸. تقول قاعدة البيانات: %L1 + + + + Creating new table failed. DB says: %1 + ÙØ´Ù„ إنشاء جدول جديد. تقول قاعدة البيانات: %L1 + + + + Copying data to new table failed. DB says: +%1 + ÙØ´Ù„ نسخ البيانات إلى جدول جديد. تقول قاعدة البيانات: +%L1 + + + + Deleting old table failed. DB says: %1 + ÙØ´Ù„ حذ٠الجدول القديم. تقول قاعدة البيانات: %L1 + + + + Error renaming table '%1' to '%2'. +Message from database engine: +%3 + خطأ ÙÙŠ تغيير اسم الجدول â€%L1“ إلى â€%L2“. +الرسالة من محرّك قواعد البيانات: +%L3 + + + + could not get list of db objects: %1 + تعذّر جلب قائمة كائنات قواعد البيانات: %L1 + + + + Restoring some of the objects associated with this table failed. This is most likely because some column names changed. Here's the SQL statement which you might want to fix and execute manually: + + + ÙØ´Ù„ت استعادة بعض الكائنات المرتبطة بهذا الجدول. غالبًا ما يحدث هذا بسبب تغيّر اسم الأعمدة. هذه Ø¥ÙØ§Ø¯Ø© SQL التي قد ترغب بتنÙيذها لإصلاح ذلك يدويًا: + + + + + + could not get list of databases: %1 + تعذّر جلب قائمة قواعد البيانات: %L1 + + + + Error loading extension: %1 + خطأ أثناء تحميل الامتداد: %L1 + + + + could not get column information + تعذّر جلب معلومات العمود + + + + Error setting pragma %1 to %2: %3 + تعذّر ضبط pragma %L1 إلى %L2:†%L3 + + + + File not found. + تعذّر العثور على الملÙ. + + + + DbStructureModel + + + Name + الاسم + + + + Object + الكائن + + + + Type + النوع + + + + Schema + المخطّط + + + + Database + قاعدة البيانات + + + + Browsables + ما يمكنك تصÙّحه + + + + All + الكلّ + + + + Temporary + مؤقّتة + + + + Tables (%1) + الجداول (%L1) + + + + Indices (%1) + الÙهارس (%L1) + + + + Views (%1) + المناظير (%L1) + + + + Triggers (%1) + المحÙّزات (%L1) + + + + EditDialog + + + Edit database cell + تحرير خليّة قاعدة البيانات + + + + Mode: + الوضع: + + + + This is the list of supported modes for the cell editor. Choose a mode for viewing or editing the data of the current cell. + هذه قائمة بالأوضاع المتوÙّرة ÙÙŠ محرّر الخلايا. اختر وضعًا لعرض أو تحرير البيانات ÙÙŠ الخليّة الحالية. + + + + Text + نصوص + + + + RTL Text + نصوص من اليمين إلى اليسار + + + + Binary + بيانات ثنائيّة + + + + + Image + صور + + + + JSON + JSON + + + + XML + XML + + + + + Automatically adjust the editor mode to the loaded data type + اضبط وضع المحرّر آليًا على نوع البيانات المحمّل + + + + This checkable button enables or disables the automatic switching of the editor mode. When a new cell is selected or new data is imported and the automatic switching is enabled, the mode adjusts to the detected data type. You can then change the editor mode manually. If you want to keep this manually switched mode while moving through the cells, switch the button off. + ÙŠÙÙØ¹Ù‘Ù„/ÙŠÙØ¹Ø·Ù‘Ù„ هذا الزر التبديل التلقائي لوضع المحرّر. متى حدّدت خليّة جديدة أو استوردت بيانات جديدة ويÙÙØ¹Ù‘Ù„ التبديل الآلي سترى بأنّ الوضع Ø³ÙŠÙØ¶Ø¨Ø· على نوع البيانات المكتشÙ. يمكنك بعدها تغيير وضع المحرّر يدويًا. لو أردت أن يكون التبديل يدويًا عند الانتقال بين الخلايا، ÙØ¹Ø·Ù‘Ù„ هذا الزر. + + + + Auto-switch + التبديل الآلي + + + + The text editor modes let you edit plain text, as well as JSON or XML data with syntax highlighting, automatic formatting and validation before saving. + +Errors are indicated with a red squiggle underline. + ÙŠÙØªÙŠØ­ لك وضع التحرير هذا بتعديل النصوص ØµÙØ±ÙØ© كما وبيانات JSON ÙˆXML إذ يدعم إبراز الصياغة والتنسيق التحقّق التلقائيّين قبل Ø§Ù„Ø­ÙØ¸. + +ØªÙØ¹Ø±Ø¶ الأخطاء على شكل خطّ أحمر مسطّر مموّج. + + + + This Qt editor is used for right-to-left scripts, which are not supported by the default Text editor. The presence of right-to-left characters is detected and this editor mode is automatically selected. + ÙŠÙØ³ØªØ¹Ù…Ù„ محرّر «كيوت» هذا للغات المكتوبة من اليمين إلى اليسار (مثل العربيّة) إذ لا يدعمها محرّر النصوص المبدئي. لو كتبت حرو٠لغة تÙكتب من اليمين إلى اليسار، ÙØ³ØªÙƒØªØ´Ù البرمجيّة ذلك وتحدّد وضع الخليّة هذا تلقائيًا. + + + + Open preview dialog for printing the data currently stored in the cell + Ø§ÙØªØ­ مربّع حوار معاينة طباعة البيانات المخزّنة ÙÙŠ الخليّة حاليًا + + + + Auto-format: pretty print on loading, compact on saving. + التنسيق الآلي: طباعة جميلة (pretty print) عند التحميل، رصّ عند Ø§Ù„Ø­ÙØ¸. + + + + When enabled, the auto-format feature formats the data on loading, breaking the text in lines and indenting it for maximum readability. On data saving, the auto-format feature compacts the data removing end of lines, and unnecessary whitespace. + إن ÙØ¹Ù‘لت الخيار ÙØ³ØªÙنسّق ميزة التنسيق الآلي البياناتَ متى تحمّلت، ÙØªÙƒØ³Ø± النصوص إلى أسطر ÙˆØªÙØ²ÙŠØ­Ù‡Ø§ لزيادة مقروؤيتها. وعند Ø­ÙØ¸ البيانات ترصّ ميزة التنسيق الآلي البياناتَ بإزالة نهايات الأسطر ÙˆØ§Ù„Ù…Ø³Ø§ÙØ§Øª غير اللازمة. + + + + Word Wrap + Ù„ÙÙ‘ الأسطر + + + + Wrap lines on word boundaries + Ù„ÙÙÙ‘ الأسطر عند حدود الكلمات + + + + + Open in default application or browser + Ø§ÙØªØ­ ÙÙŠ التطبيق المبدئي أو المتصÙّح + + + + Open in application + Ø§ÙØªØ­ ÙÙŠ التطبيق + + + + The value is interpreted as a file or URL and opened in the default application or web browser. + ØªÙØ­Ù„ّل البرمجيّة القيمة على أنّها مل٠أو مسار ÙˆØªÙØªØ­Ù‡ ÙÙŠ التطبيق المبدئي أو ÙÙŠ متصÙّح الوب. + + + + Save file reference... + Ø§Ø­ÙØ¸ إشارة إلى الملÙ... + + + + Save reference to file + Ø§Ø­ÙØ¸ إشارة إلى الملÙ... + + + + + Open in external application + Ø§ÙØªØ­ ÙÙŠ تطبيق خارجي + + + + Autoformat + التنسيق الآلي + + + + &Export... + &صدّر... + + + + + &Import... + ا&Ø³ØªÙˆØ±ÙØ¯... + + + + + Import from file + Ø§Ø³ØªÙˆØ±ÙØ¯ من مل٠+ + + + + Opens a file dialog used to import any kind of data to this database cell. + ÙŠÙØªØ­ مربّع حوار Ù…Ù„ÙØ§Øª ÙŠÙØ³ØªØ¹Ù…Ù„ لاستيراد أيّ نوع من البيانات ÙÙŠ خليّة قاعدة البيانات هذه. + + + + Export to file + صدّر إلى مل٠+ + + + Opens a file dialog used to export the contents of this database cell to a file. + ÙŠÙØªØ­ مربّع حوار Ù…Ù„ÙØ§Øª ÙŠÙØ³ØªØ¹Ù…Ù„ لتصدير محتويات خليّة قاعدة البيانات هذه إلى ملÙ. + + + + + Print... + اطبع... + + + + Open preview dialog for printing displayed image + ÙŠÙØªØ­ مربّع حوار المعاينة لطباعة الصورة المعروضة + + + + + Ctrl+P + Ctrl+P + + + + Open preview dialog for printing displayed text + ÙŠÙØªØ­ مربّع حوار المعاينة لطباعة النص المعروض + + + + Copy Hex and ASCII + انسخ Hex وآسكي + + + + Copy selected hexadecimal and ASCII columns to the clipboard + انسخ الأعمدة الستّ‌عشرية وآسكي المحدّدة إلى Ø§Ù„Ø­Ø§ÙØ¸Ø© + + + + Ctrl+Shift+C + Ctrl+Shift+C + + + + Erases the contents of the cell + يمسح محتويات هذه الخليّة + + + + Set as &NULL + ا&ضبط على NULL + + + + This area displays information about the data present in this database cell + تعرض هذه المنطقة معلومات عن البيانات الموجودة ÙÙŠ خليّة قاعدة البيانات هذه + + + + Type of data currently in cell + نوع البيانات ÙÙŠ الخليّة حاليًا + + + + Size of data currently in table + حجم البيانات ÙÙŠ الخليّة حاليًا + + + + Apply data to cell + طبّق البيانات على الخليّة + + + + This button saves the changes performed in the cell editor to the database cell. + ÙŠØ­ÙØ¸ هذا الزر التغييرات Ø§Ù„Ù…ÙØ¬Ø±Ø§Ø© داخل محرّر الخلايا ÙÙŠ خليّة قاعدة البيانات. + + + + Apply + طبّق + + + + Choose a filename to export data + اختر اسمًا للمل٠لتصدير البيانات + + + + Type of data currently in cell: %1 Image + نوع البيانات ÙÙŠ الخليّة حاليًا: صورة %L1 + + + + %1x%2 pixel(s) + â€%L1×â€%L2 بكسل + + + + Type of data currently in cell: NULL + نوع البيانات ÙÙŠ الخليّة حاليًا: NULL + + + + + %n byte(s) + + لا بايتات + بايت واحد + بايتان + %Ln بايتات + %Ln بايتًا + %Ln بايت + + + + + + Type of data currently in cell: Text / Numeric + نوع البيانات ÙÙŠ الخليّة حاليًا: نصوص/عدد + + + + + Image data can't be viewed in this mode. + لا يمكن عرض بيانات الصور ÙÙŠ هذا الوضع. + + + + + Try switching to Image or Binary mode. + جرّب الانتقال إلى وضع â€ØµÙˆØ±â€œ أو â€Ø¨ÙŠØ§Ù†Ø§Øª ثنائيّة“. + + + + + Binary data can't be viewed in this mode. + لا يمكن عرض البيانات الثنائيّة ÙÙŠ هذا الوضع. + + + + + Try switching to Binary mode. + جربّ الانتقال إلى وضع â€Ø¨ÙŠØ§Ù†Ø§Øª ثنائيّة“. + + + + Couldn't save file: %1. + تعذّر Ø­ÙØ¸ الملÙ: %L1. + + + + The data has been saved to a temporary file and has been opened with the default application. You can now edit the file and, when you are ready, apply the saved new data to the cell editor or cancel any changes. + Ø­ÙÙØ¸Øª البيانات ÙÙŠ مل٠مؤقّت ÙˆÙÙØªØ­ ÙÙŠ التطبيق المبدئي. يمكنك الآن تحرير المل٠وتطبيق البيانات الجديدة المحÙوظة Ùيه متى أردت ÙÙŠ محرّر الخليّة، أو حتّى إلغاء تلك التغييرات. + + + + + Image files (%1) + Ù…Ù„ÙØ§Øª الصور (%L1) + + + + Binary files (*.bin) + Ø§Ù„Ù…Ù„ÙØ§Øª الثنائيّة (*.bin) + + + + Choose a file to import + اختر ملÙًا لاستيراده + + + + %1 Image + صورة %L1 + + + + Invalid data for this mode + بيانات غير صالحة ÙÙŠ هذا الوضع + + + + The cell contains invalid %1 data. Reason: %2. Do you really want to apply it to the cell? + تحتوي الخليّة بيانات %L1 غير صالحة. السبب: %L2. أمتأكّد من تطبيقها على الخليّة؟ + + + + + + %n character(s) + + لا محار٠+ محر٠واحد + Ù…Ø­Ø±ÙØ§Ù† + %Ln محار٠+ %Ln محرÙًا + %Ln محر٠+ + + + + Type of data currently in cell: Valid JSON + نوع البيانات ÙÙŠ الخليّة حاليًا: JSON صالحة + + + + Type of data currently in cell: Binary + نوع البيانات ÙÙŠ الخليّة حاليًا: بيانات ثنائيّة + + + + EditIndexDialog + + + &Name + الا&سم + + + + Order + الترتيب + + + + &Table + الج&دول + + + + Edit Index Schema + تحرير مخطّط الÙهرس + + + + &Unique + &ÙØ±ÙŠØ¯ + + + + For restricting the index to only a part of the table you can specify a WHERE clause here that selects the part of the table that should be indexed + إن أردت حصر الÙهرس على جزء من الجدول ÙØ­Ø³Ø¨ØŒ يمكنك هنا تحديد بند WHERE Ù„ÙŠÙØ­Ø¯Ù‘د جزء الجدول الذي يجب Ùهرسته + + + + Partial inde&x clause + بند Ù&هرس جزئي + + + + Colu&mns + الأ&عمدة + + + + Table column + عمود الجدول + + + + Type + النوع + + + + Add a new expression column to the index. Expression columns contain SQL expression rather than column names. + أضÙ٠عمود تعبير جديد إلى الÙهرس. تحتوي أعمدة التعابير على تعابير SQL بدل أسماء الأعمدة. + + + + Index column + عمود الÙهرس + + + + Deleting the old index failed: +%1 + ÙØ´Ù„ حذ٠الÙهرس القديم: +%L1 + + + + Creating the index failed: +%1 + ÙØ´Ù„ إنشاء الÙهرس: +%L1 + + + + EditTableDialog + + + Edit table definition + تحرير تعري٠الجدول + + + + Table + الجدول + + + + Advanced + متقدّم + + + + Make this a 'WITHOUT rowid' table. Setting this flag requires a field of type INTEGER with the primary key flag set and the auto increment flag unset. + اجعل هذا الجدول بلا معرّ٠للصÙÙˆÙ â€WITHOUT rowid“. لضبط هذه الراية تحتاج حقلًا بنوع â€Ø£Ø¹Ø¯Ø§Ø¯ صحيحة/INTEGER“ وأيضا عليك ضبط راية Ø§Ù„Ù…ÙØªØ§Ø­ الأساسي وألّا تضبط راية الزيادة الآليّة. + + + + Without Rowid + بلا معرّ٠للصÙÙˆÙ + + + + Fields + الحقول + + + + Database sche&ma + مخ&طّط قاعدة البيانات + + + + Add + أضÙÙ + + + + Remove + أزÙÙ„ + + + + Move to top + انقل للأعلى + + + + Move up + انقل لأعلى + + + + Move down + انقل لأسÙÙ„ + + + + Move to bottom + انقل للأسÙÙ„ + + + + + Name + الاسم + + + + + Type + النوع + + + + NN + NN + + + + Not null + ليس NULL + + + + PK + PK + + + + Primary key + Ù…ÙØªØ§Ø­ أساسي Primary key + + + + AI + AI + + + + Autoincrement + زيادة آليّة Auto Increment + + + + U + U + + + + + + Unique + ÙØ±ÙŠØ¯ Unique + + + + Default + المبدئي + + + + Default value + القيمة المبدئية + + + + + + Check + Ø§Ù„ÙØ­Øµ + + + + Check constraint + قيد Ø§Ù„ÙØ­Øµ Check constraint + + + + Collation + قواعد مقارنة المحار٠+ + + + + + Foreign Key + Ù…ÙØªØ§Ø­ أجنبي + + + + Constraints + القيود + + + + Add constraint + أضÙ٠قيدًا + + + + Remove constraint + أزÙÙ„ القيد + + + + Columns + الأعمدة + + + + SQL + SQL + + + + <html><head/><body><p><span style=" font-weight:600; color:#ff0000;">Warning: </span>There is something with this table definition that our parser doesn't fully understand. Modifying and saving this table might result in problems.</p></body></html> + <span style=" font-weight:600; color:#ff0000;">تحذير: </span>ثمّة خطب بتعري٠هذا الجدول تعذّر على المحلّل Ùهمه تمامًا. يمكن أن يؤدّي تعديل ÙˆØ­ÙØ¸ هذا الجدول إلى بعض المشاكل. + + + + + Primary Key + Ù…ÙØªØ§Ø­ أساسي + + + + Add a primary key constraint + أضÙ٠قيد ÙØ±Ø¶ Ù…ÙØªØ§Ø­ أساسي + + + + Add a foreign key constraint + أضÙ٠قيد ÙØ±Ø¶ Ù…ÙØªØ§Ø­ أجنبي + + + + Add a unique constraint + أضÙ٠قيد ÙØ±Ø¶ â€Ùريد“ + + + + Add a check constraint + أضÙ٠قيد ÙØ±Ø¶ â€Ùحص“ + + + + Error creating table. Message from database engine: +%1 + خطأ أثناء إنشاء الجدول. الرسالة من محرّك قواعد البيانات: +%L1 + + + + There already is a field with that name. Please rename it first or choose a different name for this field. + هناك حقل بهذا الاسم Ø¨Ø§Ù„ÙØ¹Ù„. من ÙØ¶Ù„Ùƒ غيّر اسمه أو اختر اسمًا مختلÙًا لهذا الحقل. + + + + + There can only be one primary key for each table. Please modify the existing primary key instead. + لكلّ جدول Ù…ÙØªØ§Ø­ أساسي واحد Ùقط. من ÙØ¶Ù„Ùƒ عدّل Ø§Ù„Ù…ÙØªØ§Ø­ الموجود بدل هذا الأمر. + + + + This column is referenced in a foreign key in table %1 and thus its name cannot be changed. + هذا العمود مذكور ÙÙŠ Ù…ÙØªØ§Ø­ أجنبي ÙÙŠ الجدول %L1 ولا يمكن تغيير اسمه. + + + + There is at least one row with this field set to NULL. This makes it impossible to set this flag. Please change the table data first. + ثمّة صÙÙ‘ واحد على الأقل Ø¶ÙØ¨Ø· هذا الحقل Ùيه على NULL. لهذا السبب يستحيل ضبط هذه الراية. من ÙØ¶Ù„Ùƒ غيّر بيانات الجدول أوّلًا. + + + + There is at least one row with a non-integer value in this field. This makes it impossible to set the AI flag. Please change the table data first. + ثمّة صÙÙ‘ واحد على الأقل Ø¶ÙØ¨Ø· هذا الحقل Ùيه على قيمة ليست بنوع â€Ø¹Ø¯Ø¯ صحيح“. لهذا السبب يستحيل ضبط راية الزيادة الآليّة. من ÙØ¶Ù„Ùƒ غيّر بيانات الجدول أوّلًا. + + + + Column '%1' has duplicate data. + + ÙÙŠ العمود â€%L1“ بيانات متكرّرة. + + + + + This makes it impossible to enable the 'Unique' flag. Please remove the duplicate data, which will allow the 'Unique' flag to then be enabled. + يمنع هذا ØªÙØ¹ÙŠÙ„ راية â€Ùريد“. من ÙØ¶Ù„Ùƒ أزÙÙ„ البيانات المتكرّرة كي تقدر على ØªÙØ¹ÙŠÙ„ هذه الراية. + + + + Are you sure you want to delete the field '%1'? +All data currently stored in this field will be lost. + أمتأكّد من حذ٠الحقل â€%L1“؟ +ستÙقد كل البيانات المخزّنة Ùيه حاليًا. + + + + Please add a field which meets the following criteria before setting the without rowid flag: + - Primary key flag set + - Auto increment disabled + من ÙØ¶Ù„Ùƒ أضÙ٠حقلًا ÙŠÙØ·Ø§Ø¨Ù‚ المعايير الآتية قبل ضبط راية â€Ø¨Ù„ا معرّ٠صÙÙˆÙ/rowid“: + - راية â€Ù…ÙØªØ§Ø­ أساسي“ مضبوطة + - الزيادة الآلية معطّلة + + + + ExportDataDialog + + + Export data as CSV + تصدير البيانات بنسق CSV + + + + Tab&le(s) + الج&داول + + + + Colu&mn names in first line + أسماء الأ&عمدة ÙÙŠ أوّل سطر + + + + Fie&ld separator + ÙØ§ØµÙ„ الح&قول + + + + , + , + + + + ; + ; + + + + Tab + جدولات + + + + | + | + + + + + + Other + شيء آخر + + + + &Quote character + محر٠ال&تنصيص + + + + " + " + + + + ' + ' + + + + New line characters + محر٠الأسطر الجديدة + + + + Windows: CR+LF (\r\n) + وندوز: CR+LF â€(‎\r\n) + + + + Unix: LF (\n) + ÙŠÙنكس: LF â€(‎\n) + + + + Pretty print + طباعة جميلة + + + + + Could not open output file: %1 + تعذّر ÙØªØ­ مل٠الخرج: %L1 + + + + + Choose a filename to export data + اختر اسمًا للمل٠لتصدير البيانات + + + + Export data as JSON + تصدير البيانات بنسق JSON + + + + exporting CSV + يصدّر CSV + + + + exporting JSON + يصدّر JSON + + + + Please select at least 1 table. + من ÙØ¶Ù„Ùƒ حدّد جدولًا واحدًا على الأقل. + + + + Choose a directory + اختر دليلًا + + + + Export completed. + اكتمل التصدير. + + + + ExportSqlDialog + + + Export SQL... + تصدير SQL... + + + + Tab&le(s) + الج&دول + + + + Select All + حدّد الكلّ + + + + Deselect All + ألغ٠تحديد الكلّ + + + + &Options + &خيارات + + + + Keep column names in INSERT INTO + أبق٠أسماء الأعمدة ÙÙŠ INSERT INTO + + + + Multiple rows (VALUES) per INSERT statement + أكثر من صÙÙ‘ واحد (VALUES) لكلّ Ø¥ÙØ§Ø¯Ø© INSERT + + + + Export everything + صدّر كل شيء + + + + Export schema only + صدّر المخطّط Ùقط + + + + Export data only + صدّر البيانات Ùقط + + + + Keep old schema (CREATE TABLE IF NOT EXISTS) + أبق٠المخطّط القديم (CREATE TABLE IF NOT EXISTS) + + + + Overwrite old schema (DROP TABLE, then CREATE TABLE) + اكتب على المخطّط القديم (DROP TABLEØŒ وبعدها CREATE TABLE) + + + + Please select at least one table. + من ÙØ¶Ù„Ùƒ حدّد جدولًا واحدًا على الأقل. + + + + Choose a filename to export + اختر اسمًا للمل٠لتصديره + + + + Export completed. + اكتمل التصدير. + + + + Export cancelled or failed. + إمّا أنّ التصدير Ø£Ùلغي أو أنّه ÙØ´Ù„. + + + + ExtendedScintilla + + + + Ctrl+H + Ctrl+H + + + + Ctrl+F + Ctrl+F + + + + + Ctrl+P + Ctrl+P + + + + Find... + ابحث... + + + + Find and Replace... + ابحث واستبدل... + + + + Print... + اطبع... + + + + ExtendedTableWidget + + + Use as Exact Filter + استعملها كمرشّح كما هي + + + + Containing + تحتوي على + + + + Not containing + لا تحتوي على + + + + Not equal to + لا تساوي + + + + Greater than + أكبر من + + + + Less than + أصغر من + + + + Greater or equal + أكبر من أو تساوي + + + + Less or equal + أصغر من أو تساوي + + + + Between this and... + بين هذه Ùˆ... + + + + Regular expression + تعبير نمطي + + + + Edit Conditional Formats... + حرّر التنسيقات الشرطيّة... + + + + Set to NULL + اضبطها على NULL + + + + Copy + انسخ + + + + Copy with Headers + انسخ مع الترويسات + + + + Copy as SQL + انسخ كَ†SQL + + + + Paste + ألصÙÙ‚ + + + + Print... + اطبع... + + + + Use in Filter Expression + استعملها ÙÙŠ تعبير الترشيح + + + + Alt+Del + Alt+Del + + + + Ctrl+Shift+C + Ctrl+Shift+C + + + + Ctrl+Alt+C + Ctrl+Alt+C + + + + The content of the clipboard is bigger than the range selected. +Do you want to insert it anyway? + محتوى Ø§Ù„Ø­Ø§ÙØ¸Ø© أكبر من المدى المحدّد. +أتريد إدراجه رغم ذلك؟ + + + + <p>Not all data has been loaded. <b>Do you want to load all data before selecting all the rows?</b><p><p>Answering <b>No</b> means that no more data will be loaded and the selection will not be performed.<br/>Answering <b>Yes</b> might take some time while the data is loaded but the selection will be complete.</p>Warning: Loading all the data might require a great amount of memory for big tables. + <p>لم ØªÙØ­Ù…ّل كلّ البيانات. <b>أتريد تحميل كلّ البيانات قبل تحديد كلّ الصÙÙˆÙØŸ</b><p><p>لو اخترت <b>لا</b> Ùلن ØªÙØ­Ù…ّل أيّة بيانات أخرى ولن ÙŠÙØ¬Ø±Ù‰ هذا التحديد.<br/>لو اخترت <b>نعم</b> ÙØ¹Ù„يك الانتظار وقتًا حتّى ØªÙØ­Ù…ّل البيانات، ولكن التحديد هنا سيحدث</p>تحذير: قد يطلب تحميل كلّ البيانات ذاكرة كثيرة لو كانت الجداول ضخمة. + + + + Cannot set selection to NULL. Column %1 has a NOT NULL constraint. + تعذّر ضبط التحديد على NULL. على العمود %L1 قيد â€Ù„يس NULL“. + + + + FileExtensionManager + + + File Extension Manager + مدير امتدادات Ø§Ù„Ù…Ù„ÙØ§Øª + + + + &Up + لأ&على + + + + &Down + لأ&سÙÙ„ + + + + &Add + Ø£&ضÙÙ + + + + &Remove + Ø£&زÙÙ„ + + + + + Description + الوص٠+ + + + Extensions + الامتدادات + + + + *.extension + يمكن للمستخدم تحرير هذه، ÙØ§Ù„Ø£ÙØ¶Ù„ أن تكون إنكليزية بدون محار٠يونيكود كي لا يتركها من غير قصد + *.extension + + + + FilterLineEdit + + + Filter + رشّح + + + + These input fields allow you to perform quick filters in the currently selected table. +By default, the rows containing the input text are filtered out. +The following operators are also supported: +% Wildcard +> Greater than +< Less than +>= Equal to or greater +<= Equal to or less += Equal to: exact match +<> Unequal: exact inverse match +x~y Range: values between x and y +/regexp/ Values matching the regular expression + تتيح لك مربّعات الإدخال هذه إجراء ترشيح سريع على الجدول المحدّد حاليًا. +مبدئيًا ØªÙØ±Ø´Ù‘Ø­ الصÙو٠التي تحتوي على نص الإدخال. +كما ويدعم البحث Ø§Ù„Ù…ÙØ¹Ø§Ù…لات الآتية: +% حر٠البدل +> أكبر من +< أصغر من +>= أكبر من أو يساوي +>= أصغر من أو يساوي += يساوي (Ù…ÙØ·Ø§Ø¨Ù‚Ø© تامّة) +<> لا يساوي (Ù…ÙØ·Ø§Ø¨Ù‚Ø© عكسية تامّة) +س~ص مدى: القيم بين â€Ø³â€œ Ùˆâ€Øµâ€œ +/ريجÙكس/ القيم التي ØªÙØ·Ø§Ø¨Ù‚ التعبير النمطي + + + + Clear All Conditional Formats + امسح كلّ التنسيقات الشرطيّة + + + + Use for Conditional Format + استعمله تنسيقًا شرطيًا + + + + Edit Conditional Formats... + حرّر التنسيقات الشرطيّة... + + + + Set Filter Expression + اضبط تعبير الترشيح + + + + What's This? + ما هذا؟ + + + + Is NULL + تساوي NULL + + + + Is not NULL + لا تساوي NULL + + + + Is empty + ÙØ§Ø±ØºØ© + + + + Is not empty + ليست ÙØ§Ø±ØºØ© + + + + Not containing... + لا تحتوي على... + + + + Equal to... + تساوي... + + + + Not equal to... + لا تساوي... + + + + Greater than... + أكبر من... + + + + Less than... + أصغر من... + + + + Greater or equal... + أكبر من أو تساوي... + + + + Less or equal... + أصغر من أو تساوي... + + + + In range... + ÙÙŠ المدى... + + + + Regular expression... + تعبير نمطي... + + + + FindReplaceDialog + + + Find and Replace + البحث والاستبدال + + + + Fi&nd text: + ابح&Ø« عن النص: + + + + Re&place with: + ا&ستبدله بÙâ€: + + + + Match &exact case + طابÙÙ‚ &حالة الأحر٠+ + + + Match &only whole words + طابÙÙ‚ الكلمات الكاملة &ÙØ­Ø³Ø¨ + + + + When enabled, the search continues from the other end when it reaches one end of the page + إن ÙØ¹Ù‘لته ÙØ³ÙŠÙواصل البحث من الطر٠التالي عندما يصل إلى نهاية Ø§Ù„ØµÙØ­Ø© + + + + &Wrap around + البحث يلت&ÙÙ‘ + + + + When set, the search goes backwards from cursor position, otherwise it goes forward + إن ÙØ¹Ù‘لته ÙØ³ÙŠØ¬Ø±ÙŠ Ø§Ù„Ø¨Ø­Ø« إلى خل٠مكان المؤشّر، وإلّا ÙØ¥Ù„Ù‰ أمامه + + + + Search &backwards + ابحث لل&خل٠+ + + + <html><head/><body><p>When checked, the pattern to find is searched only in the current selection.</p></body></html> + إن ÙØ¹Ù‘لته Ùلن يجري البحث على النمط Ø§Ù„Ù…ÙØ±Ø§Ø¯ إلّا ÙÙŠ التحديد الحالي. + + + + &Selection only + الت&حديد Ùقط + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + إن ÙØ¹Ù‘لته ÙØ³ÙŠÙتعامل مع نمط البحث على أنّه تعبير يونكس نمطي. طالع <a href="https://en.wikibooks.org/wiki/Regular_Expressions">التعابير النمطية ÙÙŠ ويكي‌كتب (بالإنجليزية)</a>. + + + + Use regular e&xpressions + استعمل الت&عابير النمطية + + + + Find the next occurrence from the cursor position and in the direction set by "Search backwards" + ابحث عن الحدوث التالي من موقع المؤشّر حسب الاتجاه الذي حدّده â€Ø§Ù„بحث للخلÙ“ + + + + &Find Next + ابحث عن ال&تالي + + + + F3 + + + + + &Replace + ا&ستبدل + + + + Highlight all the occurrences of the text in the page + Ø£Ø¨Ø±ÙØ² كلّ الحدوثات ÙÙŠ نص Ø§Ù„ØµÙØ­Ø© + + + + F&ind All + ابحث عن ال&كلّ + + + + Replace all the occurrences of the text in the page + استبدل كلّ الحدوثات ÙÙŠ نص Ø§Ù„ØµÙØ­Ø© + + + + Replace &All + اس&تبدل الكلّ + + + + The searched text was not found + لم ÙŠÙØ¹Ø«Ø± على نص البحث + + + + The searched text was not found. + لم ÙŠÙØ¹Ø«Ø± على نص البحث. + + + + The searched text was found one time. + Ø¹ÙØ«Ø± على نص البحث مرّة واحدة. + + + + The searched text was found %1 times. + Ø¹ÙØ«Ø± على نص البحث %L1 من المرّات. + + + + The searched text was replaced one time. + Ø§Ø³ØªÙØ¨Ø¯Ù„ نص البحث مرّة واحدة. + + + + The searched text was replaced %1 times. + Ø§Ø³ØªÙØ¨Ø¯Ù„ نص البحث %L1 من المرّات. + + + + ForeignKeyEditor + + + &Reset + &صÙّر + + + + Foreign key clauses (ON UPDATE, ON DELETE etc.) + بنود Ø§Ù„Ù…ÙØ§ØªÙŠØ­ الأجنبية (ON UPDATEØŒ أو ON DELETEØŒ إلخ.) + + + + ImportCsvDialog + + + Import CSV file + استيراد مل٠CSV + + + + Table na&me + ا&سم الجدول + + + + &Column names in first line + أسماء الأ&عمدة ÙÙŠ أوّل سطر + + + + Field &separator + &ÙØ§ØµÙ„ الحقول + + + + , + , + + + + ; + ; + + + + + Tab + جدولات + + + + | + | + + + + Other + شيء آخر + + + + &Quote character + محر٠الت&نصيص + + + + + Other (printable) + شيء آخر (مطبوع) + + + + + Other (code) + شيء آخر (كود) + + + + " + " + + + + ' + ' + + + + &Encoding + ال&ترميز + + + + UTF-8 + UTF-8 + + + + UTF-16 + UTF-16 + + + + ISO-8859-1 + ISO-8859-1 + + + + Trim fields? + أأقلّم الحقول؟ + + + + Separate tables + Ø§ÙØµÙ„ الجداول + + + + Advanced + متقدّم + + + + When importing an empty value from the CSV file into an existing table with a default value for this column, that default value is inserted. Activate this option to insert an empty value instead. + عند استيراد قيمة ÙØ§Ø±ØºØ© من مل٠CSV إلى جدول موجود يحمل قيمة مبدئية لهذا العمود، ØªÙØ¶Ø§Ù تلك القيمة المبدئية. ÙØ¹Ù‘Ù„ هذا الخيار لإدراج قيمة ÙØ§Ø±ØºØ© عوضًا عن ذلك. + + + + Ignore default &values + تجاهَل ال&قيم المبدئية + + + + Activate this option to stop the import when trying to import an empty value into a NOT NULL column without a default value. + ÙØ¹Ù‘Ù„ هذا الخيار لإيقا٠الاستيراد عند محاولة استيراد قيمة ÙØ§Ø±ØºØ© ÙÙŠ عمود â€Ù„يس NULL“ ليس له قيمة مبدئية. + + + + Fail on missing values + ÙŠÙØ´Ù„ الاستيراد إن كانت القيم ناقصة + + + + Disable data type detection + عطّل اكتشا٠نوع البيانات + + + + Disable the automatic data type detection when creating a new table. + عطّل الاكتشا٠الآلي لنوع البيانات عند إنشاء جدول جديد. + + + + When importing into an existing table with a primary key, unique constraints or a unique index there is a chance for a conflict. This option allows you to select a strategy for that case: By default the import is aborted and rolled back but you can also choose to ignore and not import conflicting rows or to replace the existing row in the table. + حين تستورد القيم إلى جدول موجود وله Ù…ÙØªØ§Ø­ أساسي أو قيود â€Ùريد“ أو Ùهرس â€Ùريد“، Ùهناك احتمال بحدوث تعارض. يتيح لك هذا الخيار تحديد الطريقة التي ستتّبعها البرمجيّة ÙÙŠ تلك الحالة. مبدئيًا تجهض البرمجيّة الاستيراد وترجع إلى ما كانت عليه قاعدة البيانات، ولكن يمكنك أيضًا تجاهل الصÙو٠المتعارضة وعدم استيرادها، أو حتّى استبدال الصÙÙ‘ الموجود ÙÙŠ الجدول كلّه. + + + + Abort import + Ø£Ø¬Ù‡ÙØ¶ الاستيراد + + + + Ignore row + تجاهَل الصÙÙ‘ + + + + Replace existing row + استبدل الصÙÙ‘ الموجود + + + + Conflict strategy + استراتيجيّة التعارضات + + + + + Deselect All + ألغ٠تحديد الكلّ + + + + Match Similar + طابÙÙ‚ المتشابهات + + + + Select All + حدّد الكلّ + + + + There is already a table named '%1' and an import into an existing table is only possible if the number of columns match. + هناك جدول Ø¨Ù†ÙØ³ الاسم â€%L1“ Ø¨Ø§Ù„ÙØ¹Ù„ ولا يمكن الاستيراد داخل أحد الجداول الموجودة إلّا إن تطابق عدد الأعمدة. + + + + There is already a table named '%1'. Do you want to import the data into it? + هناك جدول Ø¨Ù†ÙØ³ الاسم â€%L1“ Ø¨Ø§Ù„ÙØ¹Ù„. أتريد استيراد البيانات داخله؟ + + + + Creating restore point failed: %1 + ÙØ´Ù„ إنشاء نقطة استعادة: %L1 + + + + Creating the table failed: %1 + ÙØ´Ù„ إنشاء الجدول: %L1 + + + + importing CSV + يستورد CSV + + + + Importing the file '%1' took %2ms. Of this %3ms were spent in the row function. + أخذ استيراد المل٠â€%L1“ â€%L2 م‌ث. منها %L3 م‌ث على دالة الصÙÙ‘. + + + + Inserting row failed: %1 + ÙØ´Ù„ إدراج الصÙÙ‘: %L1 + + + + MainWindow + + + DB Browser for SQLite + متصÙّح قواعد بيانات SQLite + + + + + Database Structure + This has to be equal to the tab title in all the main tabs + بنية قاعدة البيانات + + + + This is the structure of the opened database. +You can drag SQL statements from an object row and drop them into other applications or into another instance of 'DB Browser for SQLite'. + + هذه بنية قاعدة البيانات Ø§Ù„Ù…ÙØªÙˆØ­Ø©. +يمكنك سحب Ø¥ÙØ§Ø¯Ø§Øª SQL من صÙÙ‘ ÙÙŠ الكائن وإسقاطها ÙÙŠ التطبيقات الأخرى أو إلى سيرورة أخرى من â€Ù…تصÙّح قواعد بيانات SQLite“. + + + + Un/comment block of SQL code + اجعل/لا تجعل كتلة كود SQL تعليقًا + + + + Un/comment block + اجعل/لا تجعل الكتلة تعليقًا + + + + Comment or uncomment current line or selected block of code + حوّل السطر الحالي (أو كتلة الكود المحدّدة) إلى تعليق، أو ألغ٠التحويل + + + + Comment or uncomment the selected lines or the current line, when there is no selection. All the block is toggled according to the first line. + اجعل الأسطر المحدّدة (أو الحالي Ùقط لو لم يكن هناك تحديد) تعليقًا، أو ألغ٠ذلك. يتغيّر تحويل كتلة الكود كاملةً حسب أوّل سطر Ùيها. + + + + Ctrl+/ + Ctrl+/ + + + + Stop SQL execution + أوقÙ٠تنÙيذ SQL + + + + Stop execution + أوقÙ٠التنÙيذ + + + + Stop the currently running SQL script + أوقÙ٠تنÙيذ سكربت SQL الذي يعمل حاليًا + + + + Warning: this pragma is not readable and this value has been inferred. Writing the pragma might overwrite a redefined LIKE provided by an SQLite extension. + تحذير: لا يمكن قراءة pragma هذه، ولهذا استÙنتجت هذه القيمة. قد تؤدّي كتابة pragma على تعويض Ø¥ÙØ§Ø¯Ø© LIKE Ù…ÙØ¹Ø§Ø¯ تعريÙها ÙˆÙّرها امتداد SQLite. + + + + toolBar1 + شريط الأدوات1 + + + + + Browse Data + This has to be equal to the tab title in all the main tabs + تصÙّح البيانات + + + + Export one or more table(s) to a JSON file + صدّر جدولًا أو أكثر إلى مل٠JSON + + + + + Edit Pragmas + This has to be equal to the tab title in all the main tabs + حرّر Pragmas + + + + Edit Database &Cell + تحرير &خليّة قاعدة البيانات + + + + DB Sche&ma + Ù…&خطّط قاعدة البيانات + + + + This is the structure of the opened database. +You can drag multiple object names from the Name column and drop them into the SQL editor and you can adjust the properties of the dropped names using the context menu. This would help you in composing SQL statements. +You can drag SQL statements from the Schema column and drop them into the SQL editor or into other applications. + + هذه بنية قاعدة البيانات Ø§Ù„Ù…ÙØªÙˆØ­Ø©. +يمكنك سحب عدد من أسماء الكائنات من عمود â€Ø§Ù„اسم“ وإسقاطها ÙÙŠ محرّر SQL ويمكنك ضبط خصائص تلك الأسماء Ø§Ù„Ù…ÙØ³Ù‚طة مستعملًا قائمة السياق. سيساعد هذا ÙÙŠ كتابة Ø¥ÙØ§Ø¯Ø§Øª SQL. +يمكنك سحب Ø¥ÙØ§Ø¯Ø§Øª SQL من عمود â€Ø§Ù„مخطّط“ وإسقاطها ÙÙŠ محرّر SQL أو ÙÙŠ أيّ تطبيق آخر. + + + + &Remote + الب&عيد + + + + + Execute SQL + This has to be equal to the tab title in all the main tabs + Ù†Ùّذ SQL + + + + + Execute current line + Ù†Ùّذ السطر الحالي + + + + This button executes the SQL statement present in the current editor line + ÙŠÙÙ†Ùّذ هذا الزر Ø¥ÙØ§Ø¯Ø© SQL الظاهرة ÙÙŠ سطر المحرّر الحالي + + + + Shift+F5 + Shift+F5 + + + + Open an existing database file in read only mode + Ø§ÙØªØ­ مل٠قاعدة بيانات موجود ÙÙŠ وضع القراءة Ùقط + + + + Opens the SQLCipher FAQ in a browser window + ÙŠÙØªØ­ الأسئلة الشائعة عن SQLCipher ÙÙŠ Ù†Ø§ÙØ°Ø© المتصÙّح + + + + &File + مل&Ù + + + + &Import + ا&Ø³ØªÙˆØ±ÙØ¯ + + + + &Export + &صدّر + + + + &Edit + ت&حرير + + + + &View + من&ظور + + + + &Help + Ù…&ساعدة + + + + &Tools + Ø£&دوات + + + + DB Toolbar + شريط قاعدة البيانات + + + + SQL &Log + س&جلّ SQL + + + + Show S&QL submitted by + اعرض SQL الذي Ù†&Ùّذه + + + + User + المستخدم + + + + Application + التطبيق + + + + Error Log + سجلّ الأخطاء + + + + This button clears the contents of the SQL logs + يمسح هذا الزر محتويات سجلّات SQL + + + + &Clear + ا&مسح + + + + This panel lets you examine a log of all SQL commands issued by the application or by yourself + تتيح لك هذه اللوحة ÙØ­Øµ كلّ أوامر SQL التي Ù†Ùّذها التطبيق أو المستخدم + + + + &Plot + الر&سم البياني + + + + &New Database... + قاعدة بيانات &جديدة... + + + + + Create a new database file + Ø£Ù†Ø´ÙØ¦ مل٠قاعدة بيانات جديد + + + + This option is used to create a new database file. + ÙŠÙØ³ØªØ®Ø¯Ù… هذا الخيار لإنشاء مل٠قاعدة بيانات جديد. + + + + Ctrl+N + Ctrl+N + + + + + &Open Database... + ا&ÙØªØ­ قاعدة بيانات... + + + + + + + + Open an existing database file + Ø§ÙØªØ­ مل٠قاعدة بيانات موجود + + + + + + This option is used to open an existing database file. + ÙŠÙØ³ØªØ®Ø¯Ù… هذا الخيار Ù„ÙØªØ­ مل٠قاعدة بيانات موجود. + + + + Ctrl+O + Ctrl+O + + + + &Close Database + Ø£&غلÙÙ‚ قاعدة البيانات + + + + This button closes the connection to the currently open database file + ÙŠÙØºÙ„Ù‚ هذا الزر الاتصال بمل٠قاعدة البيانات Ø§Ù„Ù…ÙØªÙˆØ­ حاليًا + + + + + Ctrl+W + Ctrl+W + + + + &Revert Changes + أرجÙ&ع التعديلات + + + + + Revert database to last saved state + Ø£Ø±Ø¬ÙØ¹ قاعدة البيانات إلى آخر حالة محÙوظة + + + + This option is used to revert the current database file to its last saved state. All changes made since the last save operation are lost. + ÙŠÙØ³ØªØ¹Ù…Ù„ هذا الخيار لإرجاع مل٠قاعدة البيانات إلى آخر حالة محÙوظة له. ستÙقد كلّ التعديلات عليه منذ آخر عملية Ø­ÙØ¸ أجريتها. + + + + &Write Changes + ا&كتب التعديلات + + + + + Write changes to the database file + اكتب التعديلات ÙÙŠ مل٠قاعدة البيانات + + + + This option is used to save changes to the database file. + ÙŠÙØ³ØªØ¹Ù…Ù„ هذا الخيار لكتابة التعديلات ÙÙŠ مل٠قاعدة البيانات. + + + + Ctrl+S + Ctrl+S + + + + Compact &Database... + Ø±ÙØµÙ‘ &قاعدة البيانات + + + + Compact the database file, removing space wasted by deleted records + Ø±ÙØµÙ‘ مل٠قاعدة البيانات، Ù…ÙØ²ÙŠÙ„ًا المساحة الضائعة بسبب حذ٠السجلّات + + + + + Compact the database file, removing space wasted by deleted records. + Ø±ÙØµÙ‘ مل٠قاعدة البيانات، Ù…ÙØ²ÙŠÙ„ًا المساحة الضائعة بسبب حذ٠السجلّات. + + + + E&xit + ا&خرج + + + + Ctrl+Q + Ctrl+Q + + + + &Database from SQL file... + &قاعدة بيانات من مل٠SQL... + + + + Import data from an .sql dump text file into a new or existing database. + Ø§Ø³ØªÙˆØ±ÙØ¯ بيانات من مل٠‎.sql نصي Ù…ÙØ±Ù‘غ إلى قاعدة بيانات جديدة أو موجودة. + + + + This option lets you import data from an .sql dump text file into a new or existing database. SQL dump files can be created on most database engines, including MySQL and PostgreSQL. + يتيح لك هذا الخيار استيراد البيانات من مل٠‎.sql نصي Ù…ÙØ±Ù‘غ إلى قاعدة بيانات جديدة أو موجودة. يمكن إنشاء Ù…Ù„ÙØ§Øª SQL Ø§Ù„Ù…ÙØ±Ù‘غة ÙÙŠ أغلب محرّكات قواعد البيانات، بما Ùيها MySQL ÙˆPostgreSQL. + + + + &Table from CSV file... + ج&دولًا من مل٠CSV... + + + + Open a wizard that lets you import data from a comma separated text file into a database table. + Ø§ÙØªØ­ مرشدًا يساعدك ÙÙŠ استيراد البيانات من مل٠نصي مقسوم بÙواصل إلى جدول قاعدة البيانات. + + + + Open a wizard that lets you import data from a comma separated text file into a database table. CSV files can be created on most database and spreadsheet applications. + Ø§ÙØªØ­ مرشدًا يساعدك ÙÙŠ استيراد البيانات من مل٠نصي مقسوم بÙواصل إلى جدول قاعدة البيانات. يمكن إنشاء Ù…Ù„ÙØ§Øª CSV ÙÙŠ أغلب تطبيقات قواعد البيانات والجداول الممتدّة. + + + + &Database to SQL file... + &قاعدة بيانات إلى مل٠SQL... + + + + Export a database to a .sql dump text file. + صدّر قاعدة بيانات إلى مل٠‎.sql نصي Ù…ÙØ±Ù‘غ. + + + + This option lets you export a database to a .sql dump text file. SQL dump files contain all data necessary to recreate the database on most database engines, including MySQL and PostgreSQL. + يتيح لك هذا الخيار تصدير قاعدة بيانات إلى مل٠‎.sql نصي Ù…ÙØ±Ù‘غ. يمكن Ù„Ù…Ù„ÙØ§Øª SQL Ø§Ù„Ù…ÙØ±Ù‘غة احتواء كلّ البيانات الضرورية لإعادة إنشاء قاعدة البيانات ÙÙŠ أغلب محرّكات قواعد البيانات، Ùما Ùيها MySQL ÙˆPostgreSQL. + + + + &Table(s) as CSV file... + الج&داول كمل٠CSV... + + + + Export a database table as a comma separated text file. + صدّر جدول قاعدة بيانات كمل٠نصي مقسوم بÙواصل. + + + + Export a database table as a comma separated text file, ready to be imported into other database or spreadsheet applications. + صدّر جدول قاعدة بيانات كمل٠نصي مقسوم بÙواصل، جاهز Ù„ÙŠÙØ³ØªÙˆØ±Ø¯ إلى تطبيقات قواعد البيانات أو الجداول الممتدّة الأخرى. + + + + &Create Table... + Ø£&Ù†Ø´ÙØ¦ جدولًا... + + + + Open the Create Table wizard, where it is possible to define the name and fields for a new table in the database + Ø§ÙØªØ­ مرشد إنشاء الجدول، حيث تستطيع تحديد اسم وحقول للجدول الجديد ÙÙŠ قاعدة البيانات + + + + &Delete Table... + ا&حذ٠الجدول... + + + + + Delete Table + احذ٠الجدول + + + + Open the Delete Table wizard, where you can select a database table to be dropped. + Ø§ÙØªØ­ مرشد حذ٠الجدول، حيث يمكنك تحديد جدول قاعدة البيانات الذي Ø³ÙŠÙØ­Ø°Ù. + + + + &Modify Table... + &عدّل الجدول... + + + + Open the Modify Table wizard, where it is possible to rename an existing table. It is also possible to add or delete fields form a table, as well as modify field names and types. + Ø§ÙØªØ­ مرشد تعديل الجدول، حيث يمكنك تغيير اسم أحد الجداول الموجودة. يمكنك أيضًا Ø¥Ø¶Ø§ÙØ© حقول أو حذÙها إلى ومن الجدول، كما وتعديل أسماء الحقول وأنواعها. + + + + Create &Index... + Ø£Ù†Ø´ÙØ¦ &Ùهرسًا... + + + + Open the Create Index wizard, where it is possible to define a new index on an existing database table. + Ø§ÙØªØ­ جدول إنشاء الÙهارس، حيث يمكنك تحديد Ùهرس جديد ÙÙŠ جدول قاعدة بيانات موجود. + + + + &Preferences... + التÙ&ضيلات... + + + + + Open the preferences window. + Ø§ÙØªØ­ Ù†Ø§ÙØ°Ø© Ø§Ù„ØªÙØ¶ÙŠÙ„ات. + + + + &DB Toolbar + شريط &قاعدة البيانات + + + + Shows or hides the Database toolbar. + يعرض أو ÙŠÙØ®ÙÙŠ شريط قاعدة البيانات.. + + + + Ctrl+T + Ctrl+T + + + + Open SQL file(s) + Ø§ÙØªØ­ Ù…Ù„ÙØ§Øª SQL + + + + This button opens files containing SQL statements and loads them in new editor tabs + ÙŠÙØªØ­ هذا الزر Ù…Ù„ÙØ§Øª تحتوي Ø¥ÙØ§Ø¯Ø§Øª SQL ويحمّلها ÙÙŠ ألسنة محرّر جديدة + + + + This button lets you save all the settings associated to the open DB to a DB Browser for SQLite project file + يتيح لك هذا الزر Ø­ÙØ¸ كلّ الإعدادات المرتبطة بقاعدة البيانات Ø§Ù„Ù…ÙØªÙˆØ­Ø© ÙÙŠ مل٠مشروع «متصÙّح قواعد بيانات SQLite» + + + + This button lets you open a DB Browser for SQLite project file + يتيح لك هذا الزر ÙØªØ­ مل٠مشروع «متصÙّح قواعد بيانات SQLite» + + + + Browse Table + تصÙّح الجدول + + + + W&hat's This? + ما Ù‡&ذا؟ + + + + Ctrl+F4 + Ctrl+F4 + + + + Shift+F1 + Shift+F1 + + + + Execute all/selected SQL + Ù†Ùّذ كلّ Ø¥ÙØ§Ø¯Ø§Øª SQL أو المحدّدة Ùقط + + + + This button executes the currently selected SQL statements. If no text is selected, all SQL statements are executed. + ÙŠÙÙ†Ùّذ هذا الزر Ø¥ÙØ§Ø¯Ø§Øª SQL المحدّدة حاليًا. إن لم تحدّد شيئًا ÙØ³ØªÙÙ†Ùّذ كلّ Ø¥ÙØ§Ø¯Ø§Øª SQL. + + + + &Load Extension... + &حمّل امتدادًا... + + + + Execute line + Ù†Ùّذ السطر + + + + &Wiki + الوي&كي + + + + F1 + + + + + Bug &Report... + Ø£Ø¨Ù„ÙØº عن علّ&Ø©... + + + + Feature Re&quest... + ا&طلب ميزة... + + + + Web&site + موقع الو&ب + + + + &Donate on Patreon... + تبرّع &عبر باتريون... + + + + Open &Project... + Ø§ÙØªØ­ Ù…&شروعًا... + + + + &Attach Database... + أر&ÙÙÙ‚ قاعدة بيانات... + + + + + Add another database file to the current database connection + أضÙ٠مل٠قاعدة بيانات آخر إلى اتصال قاعدة البيانات الحالي + + + + This button lets you add another database file to the current database connection + يتيح لك هذا الزر Ø¥Ø¶Ø§ÙØ© مل٠قاعدة بيانات آخر إلى اتصال قاعدة البيانات الحالي + + + + &Set Encryption... + ا&ضبط التعمية... + + + + SQLCipher &FAQ + Ø£&سئلة شائعة عن SQLCipher + + + + Table(&s) to JSON... + الج&دول/الجداول إلى JSON... + + + + Open Data&base Read Only... + Ø§ÙØªØ­ قاع&دة بيانات للقراءة Ùقط... + + + + Ctrl+Shift+O + Ctrl+Shift+O + + + + Save results + Ø§Ø­ÙØ¸ النتائج + + + + Save the results view + Ø§Ø­ÙØ¸ منظور النتائج + + + + This button lets you save the results of the last executed query + يتيح لك هذا الزر Ø­ÙØ¸ نتائج آخر استعلام Ù†ÙÙّذ + + + + + Find text in SQL editor + ابحث عن النصوص ÙÙŠ محرّر SQL + + + + Find + ابحث + + + + This button opens the search bar of the editor + ÙŠÙØªØ­ هذا الزر شريط البحث للمحرّر + + + + Ctrl+F + Ctrl+F + + + + + Find or replace text in SQL editor + ابحث أو استبدل النصوص ÙÙŠ محرّر SQL + + + + Find or replace + ابحث أو استبدل + + + + This button opens the find/replace dialog for the current editor tab + ÙŠÙØªØ­ هذا الزر مربّع حوار البحث والاستبدال للسان المحرّر الحالي + + + + Ctrl+H + Ctrl+H + + + + Export to &CSV + &صدّر بنسق CSV + + + + Save as &view + Ø§Ø­ÙØ¸ كمن&ظور + + + + Save as view + Ø§Ø­ÙØ¸ كمنظور + + + + Shows or hides the Project toolbar. + اعرض أو أخÙ٠شريط أدوات المشروع. + + + + Extra DB Toolbar + شريط أدوات قواعد البيانات الإضاÙÙŠ + + + + New In-&Memory Database + قاعدة بيانات جديدة ÙÙŠ ال&ذاكرة + + + + Drag && Drop Qualified Names + اسحب ÙˆØ£Ø³Ù‚ÙØ· الأسماء المؤهّلة + + + + + Use qualified names (e.g. "Table"."Field") when dragging the objects and dropping them into the editor + استخدم الأسماء المؤهّلة (مثل ‎"Table"."Field"‎) عند سحب الكائنات وإسقاطها ÙÙŠ المحرّر. + + + + Drag && Drop Enquoted Names + اسحب ÙˆØ£Ø³Ù‚ÙØ· الأسماء مقتبسةً + + + + + Use escaped identifiers (e.g. "Table1") when dragging the objects and dropping them into the editor + استخدم Ø§Ù„Ù…ÙØ¹Ø±Ù‘ÙØ§Øª مهرّبة (مثلًا "Table1") عند سحب الكائنات وإسقاطها ÙÙŠ المحرّر + + + + &Integrity Check + ÙØ­Øµ ال&سلامة + + + + Runs the integrity_check pragma over the opened database and returns the results in the Execute SQL tab. This pragma does an integrity check of the entire database. + ÙŠÙØ´ØºÙ‘Ù„ integrity_check pragma على قاعدة البيانات Ø§Ù„Ù…ÙØªÙˆØ­Ø© ÙˆÙŠÙØ¹ÙŠØ¯ النتائج ÙÙŠ لسان â€Ù†Ùّذ SQL“. ÙŠÙØ¬Ø±ÙŠ pragma ÙØ­Øµ سلامة على قاعدة البيانات كاملةً. + + + + &Foreign-Key Check + ÙØ­Øµ الم&ÙØªØ§Ø­ الأجنبي + + + + Runs the foreign_key_check pragma over the opened database and returns the results in the Execute SQL tab + ÙŠÙØ´ØºÙ‘Ù„ foreign_key_check pragma على قاعدة البيانات Ø§Ù„Ù…ÙØªÙˆØ­Ø© ÙˆÙŠÙØ¹ÙŠØ¯ النتائج ÙÙŠ لسان â€Ù†Ùّذ SQL“ + + + + &Quick Integrity Check + ÙØ­Øµ سلام&Ø© سريع + + + + Run a quick integrity check over the open DB + ÙŠÙØ´ØºÙ‘Ù„ ÙØ­Øµ سلامة سريع على قاعدة البيانات Ø§Ù„Ù…ÙØªÙˆØ­Ø© + + + + Runs the quick_check pragma over the opened database and returns the results in the Execute SQL tab. This command does most of the checking of PRAGMA integrity_check but runs much faster. + ÙŠÙØ´ØºÙ‘Ù„ quick_check pragma على قاعدة البيانات Ø§Ù„Ù…ÙØªÙˆØ­Ø© ÙˆÙŠÙØ¹ÙŠØ¯ النتائج ÙÙŠ لسان â€Ù†Ùّذ SQL“. ÙŠÙØ¬Ø±ÙŠ Ù‡Ø°Ø§ الأمر أغلب ما ØªÙØ¬Ø±ÙŠÙ‡ PRAGMA integrity_check إلّا أنّه أسرع. + + + + &Optimize + Ø­&سّن + + + + Attempt to optimize the database + حاوÙÙ„ تحسين قاعدة البيانات + + + + Runs the optimize pragma over the opened database. This pragma might perform optimizations that will improve the performance of future queries. + ÙŠÙØ´ØºÙ‘Ù„ optimize pragma على قاعدة البيانات Ø§Ù„Ù…ÙØªÙˆØ­Ø©. قد تؤدّي pragma إلى إجراء بعض التحسينات لها أن ØªÙØ­Ø³Ù‘Ù† من أداء الاستعلامات مستقبلًا. + + + + + Print + اطبع + + + + Print text from current SQL editor tab + اطبع النص من لسان محرّر SQL الحالي + + + + Open a dialog for printing the text in the current SQL editor tab + Ø§ÙØªØ­ مربّع حوار طباعة النص ÙÙŠ لسان محرّر SQL الحالي + + + + Print the structure of the opened database + اطبع بنية قاعدة البيانات Ø§Ù„Ù…ÙØªÙˆØ­Ø© + + + + Open a dialog for printing the structure of the opened database + Ø§ÙØªØ­ مربّع حوار طباعة بنية قاعدة البيانات Ø§Ù„Ù…ÙØªÙˆØ­Ø© + + + + &Save Project As... + احÙ&ظ المشروع ÙƒÙŽâ€... + + + + + + Save the project in a file selected in a dialog + Ø§Ø­ÙØ¸ المشروع ÙÙŠ مل٠تحدّده من مربّع حوار + + + + Save A&ll + Ø§Ø­ÙØ¸ ال&كلّ + + + + + + Save DB file, project file and opened SQL files + Ø§Ø­ÙØ¸ مل٠قاعدة البيانات ومل٠المشروع ÙˆÙ…Ù„ÙØ§Øª SQL Ø§Ù„Ù…ÙØªÙˆØ­Ø© + + + + Ctrl+Shift+S + Ctrl+Shift+S + + + + &Recently opened + Ø§Ù„Ù…ÙØªÙˆØ­Ø© حدي&ثًا + + + + Open &tab + Ø§ÙØªØ­ Ù„&سانًا + + + + + Project Toolbar + شريط أدوات المشروع + + + + Extra DB toolbar + شريط أدوات قواعد البيانات الإضاÙÙŠ + + + + + + Close the current database file + أغلÙÙ‚ مل٠قاعدة البيانات الحالي + + + + &About + &عن + + + + This button opens a new tab for the SQL editor + ÙŠÙØªØ­ هذا الزر لسانًا جديدًا لمحرّر SQL + + + + &Execute SQL + Ù†&Ùّذ SQL + + + + + + Save SQL file + Ø§Ø­ÙØ¸ مل٠SQL + + + + Ctrl+E + Ctrl+E + + + + Export as CSV file + صدّر كمل٠بنسق CSV + + + + Export table as comma separated values file + صدّر الجدول كمل٠نصي مقسوم بÙواصل + + + + Sa&ve Project + احÙ&ظ المشروع + + + + + Save the current session to a file + Ø§Ø­ÙØ¸ الجلسة الحالية ÙÙŠ مل٠+ + + + + Load a working session from a file + حمّل جلسة عمل من مل٠+ + + + + Save SQL file as + Ø§Ø­ÙØ¸ مل٠SQL كَ†+ + + + This button saves the content of the current SQL editor tab to a file + ÙŠØ­ÙØ¸ هذا الزر محتويات لسان محرّر SQL الحالي ÙÙŠ مل٠+ + + + &Browse Table + ت&صÙّح الجدول + + + + Copy Create statement + انسخ Ø¥ÙØ§Ø¯Ø© الإنشاء + + + + Copy the CREATE statement of the item to the clipboard + انسخ Ø¥ÙØ§Ø¯Ø© CREATE للعنصر إلى Ø§Ù„Ø­Ø§ÙØ¸Ø© + + + + Ctrl+Return + Ctrl+Return + + + + Ctrl+L + Ctrl+L + + + + + Ctrl+P + Ctrl+P + + + + Ctrl+D + Ctrl+D + + + + Ctrl+I + Ctrl+I + + + + Encrypted + معمّاة + + + + Database is encrypted using SQLCipher + قاعدة البيانات معمّاة بامتداد SQLCipher + + + + Read only + للقراءة Ùقط + + + + Database file is read only. Editing the database is disabled. + مل٠قاعدة البيانات للقراءة Ùقط. تحرير قاعدة البيانات معطّل. + + + + Database encoding + ترميز قاعدة البيانات + + + + + Choose a database file + اختر مل٠قاعدة بيانات + + + + + + Choose a filename to save under + اختر اسمًا Ù„Ù„Ù…Ù„Ù Ù„Ø­ÙØ¸Ù‡ به + + + + Error while saving the database file. This means that not all changes to the database were saved. You need to resolve the following error first. + +%1 + خطأ أثناء Ø­ÙØ¸ مل٠قاعدة البيانات. هذا يعني أنّه تعذّر Ø­ÙØ¸ كلّ التغييرات ÙÙŠ قاعدة البيانات. عليك حلّ الخطأ الآتي أوّلًا: + +%L1 + + + + Are you sure you want to undo all changes made to the database file '%1' since the last save? + أمتأكّد من التراجع عن كلّ التعديلات التي أجريتها على مل٠قاعدة البيانات â€%L1“ منذ آخر Ø­ÙØ¸ØŸ + + + + Choose a file to import + اختر ملÙًا لاستيراده + + + + Text files(*.sql *.txt);;All files(*) + Ø§Ù„Ù…Ù„ÙØ§Øª النصية(*.sql *.txt);;كلّ Ø§Ù„Ù…Ù„ÙØ§Øª(*) + + + + Do you want to create a new database file to hold the imported data? +If you answer no we will attempt to import the data in the SQL file to the current database. + أتريد إنشاء مل٠قاعدة بيانات جديد Ù„ÙŠØ­ØªÙØ¸ بالبيانات المستوردة؟ +إن كانت إجابتك â€Ù„ا“ ÙØ³Ù†Ø­Ø§ÙˆÙ„ استيراد البيانات من مل٠SQL إلى قاعدة البيانات الحالية. + + + + You are still executing SQL statements. Closing the database now will stop their execution, possibly leaving the database in an inconsistent state. Are you sure you want to close the database? + ما زلت تنÙّذ Ø¥ÙØ§Ø¯Ø§Øª SQL. بإغلاق قاعدة البيانات الآن تكون Ø£ÙˆÙ‚ÙØª التنÙيذ وقد يترك ذلك قاعدة البيانات ÙÙŠ حال غير مستقرّة. أمتأكّد من إغلاق قاعدة البيانات؟ + + + + Do you want to save the changes made to the project file '%1'? + أتريد Ø­ÙØ¸ التعديلات التي أجريتها ÙÙŠ مل٠المشروع â€%L1“؟ + + + + File %1 already exists. Please choose a different name. + المل٠%L1 موجود Ø¨Ø§Ù„ÙØ¹Ù„. من ÙØ¶Ù„Ùƒ اختر اسمًا آخر. + + + + Error importing data: %1 + خطأ أثناء استيراد البيانات: %L1 + + + + Import completed. + اكتمل الاستيراد. + + + + Delete View + احذ٠المنظور + + + + Modify View + عدّل المنظور + + + + Delete Trigger + احذ٠المحÙّز + + + + Modify Trigger + عدّل المحÙّز + + + + Delete Index + احذ٠الÙهرس + + + + Modify Index + عدّل الÙهرس + + + + Modify Table + عدّل الجدول + + + + Do you want to save the changes made to SQL tabs in a new project file? + أتريد Ø­ÙØ¸ التعديلات التي أجريتها على ألسنة SQL ÙÙŠ مل٠مشروع جديد؟ + + + + Do you want to save the changes made to the SQL file %1? + أتريد Ø­ÙØ¸ التعديلات التي أجريتها على مل٠SQL بالاسم â€%L1“؟ + + + + The statements in this tab are still executing. Closing the tab will stop the execution. This might leave the database in an inconsistent state. Are you sure you want to close the tab? + ما زلت تنÙّذ Ø¥ÙØ§Ø¯Ø§Øª SQL ÙÙŠ هذا اللسان. بإغلاق قاعدة البيانات الآن تكون Ø£ÙˆÙ‚ÙØª التنÙيذ وقد يترك ذلك قاعدة البيانات ÙÙŠ حال غير مستقرّة. أمتأكّد من إغلاق هذا اللسان؟ + + + + Could not find resource file: %1 + تعذّر العثور على مل٠الموارد: %L1 + + + + Choose a project file to open + اختر مل٠مشروع Ù„ÙØªØ­Ù‡ + + + + This project file is using an old file format because it was created using DB Browser for SQLite version 3.10 or lower. Loading this file format is still fully supported but we advice you to convert all your project files to the new file format because support for older formats might be dropped at some point in the future. You can convert your files by simply opening and re-saving them. + يستعمل مل٠المشروع هذا نسق Ù…Ù„ÙØ§Øª قديم إذ Ø£Ùنشأ باستعمال «متصÙّح قواعد بيانات SQLite» بإصدارة ٣٫١٠ أو أقل. تحميل نسق Ø§Ù„Ù…Ù„ÙØ§Øª هذا مدعوم بشكل كلي حتّى الآن، ولكنّنا ننصح بتحويل كلّ Ù…Ù„ÙØ§Øª المشاريع لديك لتستعمل النسق الجديد لأن دعم النسق القديمة قد ينتهي ÙÙŠ المستقبل. يمكنك تحويل Ù…Ù„ÙØ§ØªÙƒ Ø¨ÙØªØ­Ù‡Ø§ وإعادة Ø­ÙØ¸Ù‡Ø§ ÙØ­Ø³Ø¨. + + + + Could not open project file for writing. +Reason: %1 + تعذّر ÙØªØ­ مل٠المشروع للكتابة. +السبب: %L1 + + + + Setting PRAGMA values will commit your current transaction. +Are you sure? + سيؤّدي ضبط قيم PRAGMA إلى إيداع المعاملة الحالية. +أمتأكّد؟ + + + + Window Layout + تخطيط Ø§Ù„Ù†Ø§ÙØ°Ø© + + + + Reset Window Layout + صÙّر تخطيط Ø§Ù„Ù†Ø§ÙØ°Ø© + + + + Alt+0 + Alt+0 + + + + Simplify Window Layout + بسّط تخطيط Ø§Ù„Ù†Ø§ÙØ°Ø© + + + + Shift+Alt+0 + Shift+Alt+0 + + + + Dock Windows at Bottom + Ø§Ø±ØµÙ Ø§Ù„Ù†ÙˆØ§ÙØ° بالأسÙÙ„ + + + + Dock Windows at Left Side + Ø§Ø±ØµÙ Ø§Ù„Ù†ÙˆØ§ÙØ° على اليسار + + + + Dock Windows at Top + Ø§Ø±ØµÙ Ø§Ù„Ù†ÙˆØ§ÙØ° بالأعلى + + + + The database is currenctly busy. + قاعدة البيانات مشغولة حاليًا. + + + + Click here to interrupt the currently running query. + انقر هنا لمقاطعة الاستعلام الذي يعمل حاليًا. + + + + Could not open database file. +Reason: %1 + تعذّر ÙØªØ­ مل٠قاعدة البيانات. +السبب: %L1 + + + + In-Memory database + قاعدة بيانات ÙÙŠ الذاكرة + + + + Are you sure you want to delete the table '%1'? +All data associated with the table will be lost. + أمتأكّد من حذ٠الجدول â€%L1“؟ +ستÙقد كلّ البيانات المرتبطة بالجدول. + + + + Are you sure you want to delete the view '%1'? + أمتأكّد من حذ٠المنظور â€%L1“؟ + + + + Are you sure you want to delete the trigger '%1'? + أمتأكّد من حذ٠المحÙّز â€%L1“؟ + + + + Are you sure you want to delete the index '%1'? + أمتأكّد من حذ٠الÙهرس â€%L1“؟ + + + + Error: could not delete the table. + خطأ: تعذّر حذ٠الجدول. + + + + Error: could not delete the view. + خطأ: تعذّر حذ٠المنظور. + + + + Error: could not delete the trigger. + خطأ: تعذّر حذ٠المحÙّز. + + + + Error: could not delete the index. + خطأ: تعذّر حذ٠الÙهرس. + + + + Message from database engine: +%1 + الرسالة من محرّك قواعد البيانات: +%L1 + + + + Editing the table requires to save all pending changes now. +Are you sure you want to save the database? + تحرير الجدول يطلب Ø­ÙØ¸ كلّ التغييرات المرجأة الآن. +أمتأكّد من Ø­ÙØ¸ قاعدة البيانات؟ + + + + Error checking foreign keys after table modification. The changes will be reverted. + خطأ أثناء ÙØ­Øµ Ø§Ù„Ù…ÙØ§ØªÙŠØ­ الأجنبية بعد تعديل الجدول. Ø³ØªÙØ±Ø¬ÙŽØ¹ التغييرات. + + + + This table did not pass a foreign-key check.<br/>You should run 'Tools | Foreign-Key Check' and fix the reported issues. + لم يمرّ الجدول ÙØ­Øµ Ø§Ù„Ù…ÙØªØ§Ø­ الأجنبي.<br/>عليك تشغيل â€Ø£Ø¯ÙˆØ§Øª -> ÙØ­Øµ Ø§Ù„Ù…ÙØªØ§Ø­ الأجنبي“ وإصلاح المشاكل المذكورة. + + + + Edit View %1 + حرّر المنظور %L1 + + + + Edit Trigger %1 + حرّر المحÙّز %L1 + + + + You are already executing SQL statements. Do you want to stop them in order to execute the current statements instead? Note that this might leave the database in an inconsistent state. + أنت تنÙّذ حقًا Ø¥ÙØ§Ø¯Ø§Øª SQL. أتريد إيقاÙها لتنÙيذ Ø§Ù„Ø¥ÙØ§Ø¯Ø§Øª الحالية بدلها؟ وقد يترك ذلك قاعدة البيانات ÙÙŠ حال غير مستقرّة. + + + + -- EXECUTING SELECTION IN '%1' +-- + -- ينÙّذ التحديد ÙÙŠ â€%L1“ +-- + + + + -- EXECUTING LINE IN '%1' +-- + -- ينÙّذ السطر ÙÙŠ â€%L1“ +-- + + + + -- EXECUTING ALL IN '%1' +-- + -- ينÙّذ الكلّ ÙÙŠ â€%L1“ +-- + + + + + At line %1: + عند السطر %L1: + + + + Result: %1 + النتيجة: %L1 + + + + Result: %2 + النتيجة: %L2 + + + + Setting PRAGMA values or vacuuming will commit your current transaction. +Are you sure? + سيؤّدي ضبط قيم PRAGMA أو التنظي٠إلى إيداع المعاملة الحالية. +أمتأكّد؟ + + + + Opened '%1' in read-only mode from recent file list + ÙÙØªØ­ â€%L1“ بوضع القراءة Ùقط من قائمة Ø§Ù„Ù…Ù„ÙØ§Øª Ø§Ù„Ù…ÙØªÙˆØ­Ø© حديثًا + + + + Opened '%1' from recent file list + ÙÙØªØ­ â€%L1“ من قائمة Ø§Ù„Ù…Ù„ÙØ§Øª Ø§Ù„Ù…ÙØªÙˆØ­Ø© حديثًا + + + + &%1 %2%3 + â€&%L1 â€â€Ž%L2‎â€%L3 + + + + (read only) + (للقراءة Ùقط) + + + + Open Database or Project + Ø§ÙØªØ­ قاعدة بيانات أو مشروع + + + + Attach Database... + أرÙÙÙ‚ قاعدة بيانات... + + + + Import CSV file(s)... + Ø§Ø³ØªÙˆØ±ÙØ¯ Ù…Ù„ÙØ§Øª CSV... + + + + Select the action to apply to the dropped file(s). <br/>Note: only 'Import' will process more than one file. + + اختر الإجراء الذي تريد تطبيقه على Ø§Ù„Ù…Ù„ÙØ§Øª التي Ø£Ùلتّها. <br/>لاحظ أنّ خيار â€Ø§Ø³ØªÙˆØ±Ùد“ هو الوحيد الذي Ø³ÙŠÙØ¹Ø§Ù„ج Ø§Ù„Ù…Ù„ÙØ§Øª المتعدّدة. + اختر الإجراء الذي تريد تطبيقه على المل٠الذي Ø£Ùلتّه. <br/>لاحظ أنّ خيار â€Ø§Ø³ØªÙˆØ±Ùد“ هو الوحيد الذي Ø³ÙŠÙØ¹Ø§Ù„ج Ø§Ù„Ù…Ù„ÙØ§Øª المتعدّدة. + اختر الإجراء الذي تريد تطبيقه على الملÙين الذين Ø£Ùلتّهما. <br/>لاحظ أنّ خيار â€Ø§Ø³ØªÙˆØ±Ùد“ هو الوحيد الذي Ø³ÙŠÙØ¹Ø§Ù„ج Ø§Ù„Ù…Ù„ÙØ§Øª المتعدّدة. + اختر الإجراء الذي تريد تطبيقه على Ø§Ù„Ù…Ù„ÙØ§Øª التي Ø£Ùلتّها. <br/>لاحظ أنّ خيار â€Ø§Ø³ØªÙˆØ±Ùد“ هو الوحيد الذي Ø³ÙŠÙØ¹Ø§Ù„ج Ø§Ù„Ù…Ù„ÙØ§Øª المتعدّدة. + اختر الإجراء الذي تريد تطبيقه على Ø§Ù„Ù…Ù„ÙØ§Øª التي Ø£Ùلتّها. <br/>لاحظ أنّ خيار â€Ø§Ø³ØªÙˆØ±Ùد“ هو الوحيد الذي Ø³ÙŠÙØ¹Ø§Ù„ج Ø§Ù„Ù…Ù„ÙØ§Øª المتعدّدة. + اختر الإجراء الذي تريد تطبيقه على Ø§Ù„Ù…Ù„ÙØ§Øª التي Ø£Ùلتّها. <br/>لاحظ أنّ خيار â€Ø§Ø³ØªÙˆØ±Ùد“ هو الوحيد الذي Ø³ÙŠÙØ¹Ø§Ù„ج Ø§Ù„Ù…Ù„ÙØ§Øª المتعدّدة. + + + + + Do you want to save the changes made to SQL tabs in the project file '%1'? + أتريد Ø­ÙØ¸ التعديلات التي أجريتها على ألسنة SQL ÙÙŠ مل٠المشروع â€%L1“؟ + + + + Project saved to file '%1' + Ø­ÙÙØ¸ المشروع ÙÙŠ المل٠â€%L1“ + + + + This action will open a new SQL tab with the following statements for you to edit and run: + ÙŠÙØªØ­ هذا الإجراء لسان SQL جديد يحتوي Ø§Ù„Ø¥ÙØ§Ø¯Ø§Øª الآتية لتحرّرها وتنÙّذها: + + + + Busy (%1) + مشغولة (%L1) + + + + Rename Tab + غيّر اسم اللسان + + + + Duplicate Tab + كرّر اللسان + + + + Close Tab + أغلÙÙ‚ اللسان + + + + Opening '%1'... + ÙŠÙØªØ­ â€%L1“... + + + + There was an error opening '%1'... + خطأ أثناء ÙØªØ­ â€%L1“... + + + + Value is not a valid URL or filename: %1 + القيمة ليست عنوانًا ولا اسم مل٠صالح: %L1 + + + + %1 rows returned in %2ms + Ø£ÙØ¹ÙŠØ¯ من الصÙÙˆÙ %L1 خلال %L2 م‌ث + + + + Choose text files + اختر Ù…Ù„ÙØ§Øª نصية + + + + Import completed. Some foreign key constraints are violated. Please fix them before saving. + اكتمل الاستيراد. انتÙهكت بعض قيود Ø§Ù„Ù…ÙØªØ§Ø­ الأجنبي. من ÙØ¶Ù„Ùƒ Ø£ØµÙ„ÙØ­Ù‡Ø§ قبل Ø§Ù„Ø­ÙØ¸. + + + + Select SQL file to open + اختر مل٠SQL Ù„ÙØªØ­Ù‡ + + + + Select file name + اختر اسم المل٠+ + + + Select extension file + اختر مل٠الامتداد + + + + Extension successfully loaded. + نجح تحميل الامتداد. + + + + Error loading extension: %1 + خطأ أثناء تحميل الامتداد: %L1 + + + + + Don't show again + لا تعرض ثانيةً + + + + New version available. + تتوÙّر إصدارة جديدة. + + + + A new DB Browser for SQLite version is available (%1.%2.%3).<br/><br/>Please download at <a href='%4'>%4</a>. + تتوÙّر إصدارة جديدة من «متصÙّح قواعد بيانات SQLite» â€(%L1Ù«â€%L2Ù«â€%L3).<br/><br/>من ÙØ¶Ù„Ùƒ نزّلها من <a href='%4'>%L4</a>. + + + + Collation needed! Proceed? + قواعد مقارنة المحار٠مطلوبة! أنتابع؟ + + + + A table in this database requires a special collation function '%1' that this application can't provide without further knowledge. +If you choose to proceed, be aware bad things can happen to your database. +Create a backup! + يحتاج أحد الجداول ÙÙŠ قاعدة البيانات هذه دالة قواعد مقارنة المحار٠Collation الخاصّة â€%L1“ والتي لا يستطيع البرنامج توÙيرها دون معلومات أخرى. +احذر إن اخترت المتابعة، Ùقد تحدث أمور غير حسنة لقاعدة البيانات. +Ø®ÙØ° نسخة احتياطيّة! + + + + creating collation + ÙŠÙنشئ قواعد مقارنة المحار٠+ + + + Set a new name for the SQL tab. Use the '&&' character to allow using the following character as a keyboard shortcut. + ضع اسمًا جديدًا للسان SQL. استخدم محر٠â€&&“ Ù„ÙŠÙØªØ§Ø­ استخدام المحر٠الذي يليه كاختصار لوحة Ù…ÙØ§ØªÙŠØ­. + + + + Please specify the view name + من ÙØ¶Ù„Ùƒ اختر اسم المنظور + + + + There is already an object with that name. Please choose a different name. + هناك كائن Ø¨Ù†ÙØ³ الاسم. من ÙØ¶Ù„Ùƒ اختر اسمًا آخر. + + + + View successfully created. + نجح إنشاء المنظور. + + + + Error creating view: %1 + خطأ أثناء إنشاء المنظور: %L1 + + + + This action will open a new SQL tab for running: + Ø³ÙŠÙØªØ­ هذا الإجراء لسان SQL جديد لتشغيل: + + + + Press Help for opening the corresponding SQLite reference page. + انقر â€Ù…ساعدة“ Ù„ÙØªØ­ ØµÙØ­Ø© SQLite المرجعية المناسبة. + + + + DB Browser for SQLite project file (*.sqbpro) + مل٠مشروع «متصÙّح قواعد بيانات SQLite» â€(*.sqbpro) + + + + Execution finished with errors. + اكتمل التنÙيذ وحدثت أخطاء. + + + + Execution finished without errors. + اكتمل التنÙيذ دون أخطاء. + + + + NullLineEdit + + + Set to NULL + اضبطه على NULL + + + + Alt+Del + Alt+Del + + + + PlotDock + + + Plot + رسم بياني + + + + <html><head/><body><p>This pane shows the list of columns of the currently browsed table or the just executed query. You can select the columns that you want to be used as X or Y axis for the plot pane below. The table shows detected axis type that will affect the resulting plot. For the Y axis you can only select numeric columns, but for the X axis you will be able to select:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Date/Time</span>: strings with format &quot;yyyy-MM-dd hh:mm:ss&quot; or &quot;yyyy-MM-ddThh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Date</span>: strings with format &quot;yyyy-MM-dd&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Time</span>: strings with format &quot;hh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Label</span>: other string formats. Selecting this column as X axis will produce a Bars plot with the column values as labels for the bars</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Numeric</span>: integer or real values</li></ul><p>Double-clicking the Y cells you can change the used color for that graph.</p></body></html> + تعرض هذه اللوحة قائمة الأعمدة للمجدول الذي تتصÙّحه حاليًا أو للاستعلام الذي Ù†ÙÙّذ حديثًا. يمكنك تحديد الأعمدة التي تريد استخدامها كمحاور س أو ص للوحة الرسم البياني أدناه. يعرض الجدول نوع المحور المكتش٠والذي سيؤثّر على الرسم البياني الناتج. يمكنك تحديد الأعمدة العددية Ùقط لمحور ص، عكس محور س حيث يمكنك تحديد:<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">تاريخ/وقت</span>: السلاسل النصية التي لها التنسيق â€yyyy-MM-dd hh:mm:ss“ أو â€yyyy-MM-ddThh:mm:ss“</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">تاريخ</span>: السلاسل النصية التي لها التنسيق â€yyyy-MM-dd“</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">وقت</span>: السلاسل النصّية التي لها التنسيق â€hh:mm:ss“</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">لصيقة</span>: السلاسل النصية التي لها تنسيقات أخرى. تحديد هذا العمود كمحور x سيÙنتج رسم بياني بأشرطة حيث قيم الأعمدة ستكون لصيقات للأشرطة</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">عدد</span>: قيم عددية صحيحة أو حقيقية</li></ul>بنقر خلايا ص مزدوجًا يمكنك تغيير اللون المستخدم لذلك الرسم. + + + + Columns + الأعمدة + + + + X + س + + + + Y1 + ص1 + + + + Y2 + ص2 + + + + Axis Type + نوع المحور + + + + Here is a plot drawn when you select the x and y values above. + +Click on points to select them in the plot and in the table. Ctrl+Click for selecting a range of points. + +Use mouse-wheel for zooming and mouse drag for changing the axis range. + +Select the axes or axes labels to drag and zoom only in that orientation. + هنا تجد الرسم البياني المرسوم عند تحديد قيم x Ùˆ y أعلاه. + +انقر النقاط لتحديدها ÙÙŠ الرسم البياني والجدول. انقر مع Ctrl لتحديد مدًى من النقاط. + +استخدم عجلة Ø§Ù„ÙØ£Ø±Ø© للتقريب والإبعاد، وحرّك Ø§Ù„ÙØ£Ø±Ø© لتغيير مدى المحور. + +اختر المحاور أو لصيقات المحاور لتحريكها أو قرّب/بعّد بذاك الاتجاه ÙØ­Ø³Ø¨. + + + + Line type: + نوع الخطوط: + + + + + None + بلا + + + + Line + خط + + + + StepLeft + عتبة يسرى + + + + StepRight + عتبة يمنى + + + + StepCenter + عتبة وسطى + + + + Impulse + نبض + + + + Point shape: + شكل النقط: + + + + Cross + علامة ضرب + + + + Plus + علامة جمع + + + + Circle + دائرة + + + + Disc + قرص + + + + Square + مربّع + + + + Diamond + معيّن + + + + Star + نجمة + + + + Triangle + مثلّث + + + + TriangleInverted + مثلّث مقلوب + + + + CrossSquare + علامة ضرب ÙÙŠ مربّع + + + + PlusSquare + علامة جمع ÙÙŠ مربّع + + + + CrossCircle + علامة ضرب ÙÙŠ دائرة + + + + PlusCircle + علامة جمع ÙÙŠ دائرة + + + + Peace + رمز السلام + + + + <html><head/><body><p>Save current plot...</p><p>File format chosen by extension (png, jpg, pdf, bmp)</p></body></html> + <p>Ø§Ø­ÙØ¸ الرسم البياني الحالي...</p><p>نسق المل٠يحدّده الامتداد (png Ùˆjpg Ùˆpdf Ùˆbmp)</p> + + + + Save current plot... + Ø§Ø­ÙØ¸ الرسم البياني الحالي... + + + + + Load all data and redraw plot + حمّل كلّ البيانات ÙˆØ£Ø¹ÙØ¯ رسم الرسم البياني + + + + + + Row # + رقم الص٠+ + + + Copy + انسخ + + + + Print... + اطبع... + + + + Show legend + اعرض Ù…ÙØªØ§Ø­ الرسم + + + + Stacked bars + أشرطة مرصوصة + + + + Date/Time + تاريخ/وقت + + + + Date + تاريخ + + + + Time + وقت + + + + + Numeric + عدد + + + + Label + لصيقة + + + + Invalid + غير صالح + + + + Load all data and redraw plot. +Warning: not all data has been fetched from the table yet due to the partial fetch mechanism. + حمّل كلّ البيانات ÙˆØ£Ø¹ÙØ¯ رسم الرسم البياني. +تحذير: لم ØªÙØ¬Ù„ب كلّ البيانات من الجدول بسبب استعمال آليّة جلب جزئية. + + + + Choose an axis color + اختر لونًا للمحور + + + + Choose a filename to save under + اختر اسمًا Ù„Ù„Ù…Ù„Ù Ù„Ø­ÙØ¸Ù‡ + + + + PNG(*.png);;JPG(*.jpg);;PDF(*.pdf);;BMP(*.bmp);;All Files(*) + PNG(*.png);;JPG(*.jpg);;PDF(*.pdf);;BMP(*.bmp);;كلّ Ø§Ù„Ù…Ù„ÙØ§Øª(*) + + + + There are curves in this plot and the selected line style can only be applied to graphs sorted by X. Either sort the table or query by X to remove curves or select one of the styles supported by curves: None or Line. + توجد منحنيات ÙÙŠ هذا الرسم البياني ولا يمكن تطبيق نمط الخطوط المحدّد إلّا على الرسوم البيانية Ø§Ù„Ù…ÙØ±ÙˆØ²Ø© حسب س. إمّا أن ØªÙØ±Ø² الجدول أو الاستعلام حسب س لإزالة المنحنيات أو تحديد أحد الأنماط التي تدعمها المنحنيات: â€Ø¨Ù„ا“ أو â€Ø®Ø·â€œ. + + + + Loading all remaining data for this table took %1ms. + أخذ تحميل كلّ البيانات الباقية لهذا الجدول %L1 م‎ث. + + + + PreferencesDialog + + + Preferences + Ø§Ù„ØªÙØ¶ÙŠÙ„ات + + + + &General + &عام + + + + Remember last location + تذكّر آخر مكان + + + + Always use this location + استخدم هذا المكان دائمًا + + + + Remember last location for session only + تذكّر آخر مكان لهذه الجلسة Ùقط + + + + + + ... + ... + + + + Default &location + الم&كان المبدئي + + + + Lan&guage + الل&غة + + + + Automatic &updates + الت&حديثات الآلية + + + + + + + + + + + + enabled + Ù…ÙØ¹Ù‘لة + + + + Show remote options + اعرض خيارات البعيد + + + + &Database + &قاعدة البيانات + + + + Database &encoding + &ترميز قاعدة البيانات + + + + Open databases with foreign keys enabled. + Ø§ÙØªØ­ قواعد البيانات ÙˆØ§Ù„Ù…ÙØ§ØªÙŠØ­ الأجنبية Ù…ÙØ¹Ù‘لة. + + + + &Foreign keys + الم&ÙØ§ØªÙŠØ­ الأجنبية + + + + Remove line breaks in schema &view + أزÙÙ„ كاسرات الأسطر ÙÙŠ من&ظور المخطّط + + + + Prefetch block si&ze + &حجم الكتلة لجلبها مسبقًا + + + + SQ&L to execute after opening database + Ø¥&ÙØ§Ø¯Ø© SQL لتÙÙ†Ùّذ بعد ÙØªØ­ قاعدة البيانات + + + + Default field type + نوع الحقول المبدئي + + + + Data &Browser + مت&صÙّح البيانات + + + + Font + الخط + + + + &Font + ال&خط + + + + Content + المحتوى + + + + Symbol limit in cell + أقصى عدد من الرموز ÙÙŠ كلّ خليّة + + + + NULL + NULL + + + + Regular + العادية + + + + Binary + البيانات الثنائيّة + + + + Background + الخلÙية + + + + Filters + المرشّحات + + + + Threshold for completion and calculation on selection + عتبة إكمال النصوص والحساب + + + + Show images in cell + اعرض الصور ÙÙŠ الخلايا + + + + Enable this option to show a preview of BLOBs containing image data in the cells. This can affect the performance of the data browser, however. + ÙØ¹Ù‘Ù„ هذا الخيار لعرض معاينة كائنات BLOB التي Ùيها بيانات صور داخل الخلايا. ولكن يمكن أن يؤثّر هذا على أداء متصÙّح البيانات. + + + + Escape character + محر٠الهروب + + + + Delay time (&ms) + وقت التأخير (&م‌ث) + + + + Set the waiting time before a new filter value is applied. Can be set to 0 for disabling waiting. + اضبط وقت انتظار قبل تطبيق قيمة المرشّح الجديدة. يمكن ضبطه إلى القيمة صÙÙØ± لتعطيل الانتظار. + + + + &SQL + Ù…&حرّر SQL + + + + Settings name + الاسم ÙÙŠ الإعدادات + + + + Context + السياق + + + + Colour + اللون + + + + Bold + ثخين + + + + Italic + مائل + + + + Underline + مسطّر + + + + Keyword + الكلمات Ø§Ù„Ù…ÙØªØ§Ø­ÙŠØ© + + + + Function + الدوال + + + + Table + الجداول + + + + Comment + التعليقات + + + + Identifier + Ø§Ù„Ù…Ø¹Ø±Ù‘ÙØ§Øª + + + + String + السلاسل النصية + + + + Current line + السطر الحالي + + + + SQL &editor font size + حجم الخط ÙÙŠ Ù…&حرّر SQL + + + + Tab size + حجم التبويبات + + + + SQL editor &font + &خط محرّر SQL + + + + Error indicators + مؤشّرات الأخطاء + + + + Hori&zontal tiling + التراتب Ø£Ù&قيًا + + + + If enabled the SQL code editor and the result table view are shown side by side instead of one over the other. + إن ÙØ¹Ù‘لته ÙØ³ØªØ±Ù‰ محرّر أكواد SQL ومنظور جدول النتائج جنبًا إلى جنب بدلًا من أن يكونان Ùوق بعض. + + + + Code co&mpletion + Ø¥&كمال الكود + + + + Toolbar style + نمط شريط الأدوات + + + + + + + + Only display the icon + اعرض الأيقونة ÙØ­Ø³Ø¨ + + + + + + + + Only display the text + اعرض النص ÙØ­Ø³Ø¨ + + + + + + + + The text appears beside the icon + يظهر النص بجانب الأيقونة + + + + + + + + The text appears under the icon + يظهر النص أسÙÙ„ الأيقونة + + + + + + + + Follow the style + اتبع النمط + + + + DB file extensions + امتدادات Ù…Ù„ÙØ§Øª قواعد البيانات + + + + Manage + Ø£Ø¯ÙØ± + + + + Main Window + Ø§Ù„Ù†Ø§ÙØ°Ø© الرئيسية + + + + Database Structure + بنية قاعدة البيانات + + + + Browse Data + تصÙّح البيانات + + + + Execute SQL + Ù†Ùّذ SQL + + + + Edit Database Cell + حرّر خليّة قاعدة البيانات + + + + When this value is changed, all the other color preferences are also set to matching colors. + ØªÙØ¶Ø¨Ø· كلّ ØªÙØ¶ÙŠÙ„ات الألوان الأخرى (متى تغيّر هذا الخيار) إلى الألوان Ø§Ù„Ù…ÙØ·Ø§Ø¨Ù‚Ø© للنمط. + + + + Follow the desktop style + اتبع نمط سطح المكتب + + + + Dark style + النمط الداكن + + + + Application style + نمط البرمجيّة + + + + This sets the font size for all UI elements which do not have their own font size option. + يضبط هذا حجم خط كلّ عناصر الواجهة التي لا تحدّد Ù„Ù†ÙØ³Ù‡Ø§ حجم خط. + + + + Font size + حجم الخط + + + + When enabled, the line breaks in the Schema column of the DB Structure tab, dock and printed output are removed. + إن ÙØ¹Ù‘لته ÙØ³ØªÙزال ÙƒØ§Ø³ÙØ±Ø§Øª الأسطر ÙÙŠ عمود â€Ø§Ù„مخطّط“ ÙÙŠ لسان â€Ø¨Ù†ÙŠØ© قاعدة البيانات“ كما والرصي٠والخرج المطبوع. + + + + Database structure font size + حجم خط بنية قاعدة البيانات + + + + Font si&ze + &حجم الخط + + + + This is the maximum number of items allowed for some computationally expensive functionalities to be enabled: +Maximum number of rows in a table for enabling the value completion based on current values in the column. +Maximum number of indexes in a selection for calculating sum and average. +Can be set to 0 for disabling the functionalities. + هذا أقصى عدد من العناصر المسموحة لإجراء مزايا الحساب الثقيلة من عدم ذلك. +أي أقصى عدد من الصÙÙˆÙ ÙÙŠ الجدول Ù„ØªÙØ¹ÙŠÙ„ إكمال القيم حسب القيم الموجودة ÙÙŠ العمود. +وأقصى عدد من الÙهارس ÙÙŠ التحديد لحساب المجموع والمتوسّط. +يمكنك ضبطه على صÙÙØ± لتعطيل الميزة. + + + + This is the maximum number of rows in a table for enabling the value completion based on current values in the column. +Can be set to 0 for disabling completion. + هذا أقصى عدد من الصÙÙˆÙ ÙÙŠ كلّ جدول Ù„ØªÙØ¹ÙŠÙ„ إكمال القيمة حسب البيانات الحالية ÙÙŠ العمود. +يمكن ضبطه على ØµÙØ± لتعطيل الإكمال. + + + + Field display + عرض الحقول + + + + Displayed &text + ال&نص المعروض + + + + + + + + + Click to set this color + انقر لضبط هذا اللون + + + + Text color + لون النص + + + + Background color + لون الخلÙية + + + + Preview only (N/A) + معاينة Ùقط (غير متوÙّر) + + + + Foreground + الأمامية + + + + SQL &results font size + حجم خط Ù†&تائج SQL + + + + &Wrap lines + Ù„Ù&ÙÙ‘ الأسطر + + + + Never + أبدًا + + + + At word boundaries + عند حدود الكلمات + + + + At character boundaries + عند حدود المحار٠+ + + + At whitespace boundaries + عند حدود Ø§Ù„Ù…Ø³Ø§ÙØ§Øª + + + + &Quotes for identifiers + &علامات التنصيص Ù„Ù„Ù…ÙØ¹Ø±Ù‘ÙØ§Øª + + + + Choose the quoting mechanism used by the application for identifiers in SQL code. + اختر آليّة التنصيص التي سيستخدمها التطبيق Ù„Ù„Ù…ÙØ¹Ø±Ù‘ÙØ§Øª ÙÙŠ كود SQL. + + + + "Double quotes" - Standard SQL (recommended) + "علامات تنصيص مزدوجة" - SQL القياسية (مستحسن) + + + + `Grave accents` - Traditional MySQL quotes + `نبر الإطالة` - علامات اقتباس MySQL التقليدية + + + + [Square brackets] - Traditional MS SQL Server quotes + [أقواس مربّعة] - علامات تنصيص خادوم SQL Ù„ÙÙ…Ø§ÙŠÙƒØ±ÙˆØ³ÙˆÙØª التقليدي + + + + Keywords in &UPPER CASE + الكلمات Ø§Ù„Ù…ÙØªØ§Ø­ÙŠØ© &كبيرة الحالة + + + + When set, the SQL keywords are completed in UPPER CASE letters. + إن ÙØ¹Ù‘لته ÙØ³ÙŠØ¬Ø±ÙŠ Ø¥ÙƒÙ…Ø§Ù„ كلمات SQL Ø§Ù„Ù…ÙØªØ§Ø­ÙŠÙ‘Ø© بالأحر٠وحالتها كبيرة. + + + + When set, the SQL code lines that caused errors during the last execution are highlighted and the results frame indicates the error in the background + إن ÙØ¹Ù‘لته ÙØ³ØªÙبرز الأسطر ÙÙŠ كود SQL التي تسبّبت بأخطاء أثناء آخر تنÙيذ ÙˆØ³ÙŠÙØ´ÙŠØ± إطار النتائج إلى الخطأ ÙÙŠ الخلÙية + + + + Close button on tabs + أزرار إغلاق على الألسنة + + + + If enabled, SQL editor tabs will have a close button. In any case, you can use the contextual menu or the keyboard shortcut to close them. + إن ÙØ¹Ù‘لته ÙØ³ØªØ¹Ø±Ø¶ ألسنة محرّر SQL زرّ إغلاق. وبغضّ النظر عن هذا الخيار، يمكنك استعمال قائمة السياق أو اختصار لوحة Ø§Ù„Ù…ÙØ§ØªÙŠØ­ لإغلاق تلك الألسنة. + + + + &Extensions + الامت&دادات + + + + Select extensions to load for every database: + حدّد الامتدادات Ù„ØªÙØ­Ù…ّل لكلّ قاعدة بيانات: + + + + Add extension + أضÙ٠امتدادًا + + + + Remove extension + أزÙÙ„ الامتداد + + + + <html><head/><body><p>While supporting the REGEXP operator SQLite doesn't implement any regular expression<br/>algorithm but calls back the running application. DB Browser for SQLite implements this<br/>algorithm for you to let you use REGEXP out of the box. However, as there are multiple possible<br/>implementations of this and you might want to use another one, you're free to disable the<br/>application's implementation and load your own by using an extension. Requires restart of the application.</p></body></html> + مع أنّ معامل REGEX مدعوم، إلّا أنّ SQLITE ليس Ùيها أية خوارزمية تعابير نمطية Ù…Ùنجزة،<br/>بل تنادي التطبيق الجاري. ينÙّذ «متصÙّح قواعد بيانات SQLite» هذه الخوارزمية لك<br/>لتستعمل REGEXP دون عناء. مع ذلك، يختل٠تنÙيذ هذه الميزة ولربّما تحتاج استعمال<br/>واحدة أخرى، لذا ÙØ£Ù†Øª حرّ ÙÙŠ تعطيل طريقة التطبيق ÙÙŠ التنÙيذ وتحميل أيّ من تلك باستعمال<br/>إحدى الامتدادات. إعادة تشغيل التطبيق مطلوبة. + + + + Disable Regular Expression extension + عطّل ملحقة العبارات النمطية + + + + <html><head/><body><p>SQLite provides an SQL function for loading extensions from a shared library file. Activate this if you want to use the <span style=" font-style:italic;">load_extension()</span> function from SQL code.</p><p>For security reasons, extension loading is turned off by default and must be enabled through this setting. You can always load extensions through the GUI, even though this option is disabled.</p></body></html> + توÙّر SQLite دالة SQL لتحميل الامتدادات من مل٠مكتبة مشتركة. ÙØ¹Ù‘Ù„ هذا إن أردت استعمال دالة <span style=" font-style:italic;">load_extension()‎</span> من كود SQL.</p><p>لأسباب أمنية، تحميل الامتداد معطّل مبدئيًا ويجب ØªÙØ¹ÙŠÙ„Ù‡ بهذا الإعداد. يمكنك دائمًا تحميل الامتدادات عبر الواجهة الرسومية، حتى لو كان هذا الخيار معطّلًا. + + + + Allow loading extensions from SQL code + اسمح بتحميل الامتدادات من كود SQL + + + + Remote + البعيد + + + + CA certificates + شهادات سلطة الشهادات + + + + Proxy + الوسيط + + + + Configure + اضبط + + + + + Subject CN + اش موضوع التعمية + + + + Common Name + الاسم الشائع + + + + Subject O + المنظّمة موضوع التعمية + + + + Organization + المنظّمة + + + + + Valid from + صالحة من + + + + + Valid to + صالحة حتى + + + + + Serial number + الرقم التسلسلي + + + + Your certificates + شهاداتك + + + + File + المل٠+ + + + Subject Common Name + الاسم الشائع لموضوع التعمية + + + + Issuer CN + اش Ø§Ù„Ù…ÙØµØ¯Ùر + + + + Issuer Common Name + الاسم الشائع Ù„Ù„Ù…ÙØµØ¯Ùر + + + + Clone databases into + استنسخ قواعد البيانات إلى + + + + + Choose a directory + اختر دليلًا + + + + The language will change after you restart the application. + ستتغيّر اللغة بعد إعادة تشغيل التطبيق. + + + + Select extension file + اختر مل٠الامتداد + + + + Extensions(*.so *.dylib *.dll);;All files(*) + الامتدادات(*.so *.dylib *.dll);;كلّ Ø§Ù„Ù…Ù„ÙØ§Øª(*) + + + + Import certificate file + Ø§Ø³ØªÙˆØ±ÙØ¯ مل٠شهادة + + + + No certificates found in this file. + لم ØªÙØ¹Ø«Ø± على شهادات ÙÙŠ هذا الملÙ. + + + + Are you sure you want do remove this certificate? All certificate data will be deleted from the application settings! + أمتأكّد من إزالة هذه الشهادة؟ Ø³ØªÙØ­Ø°Ù كلّ بيانات الشهادة من إعدادات التطبيق! + + + + Are you sure you want to clear all the saved settings? +All your preferences will be lost and default values will be used. + أمتأكّد من مسح كلّ الإعدادات المحÙوظة؟ +ستÙقد كلّ Ø§Ù„ØªÙØ¶ÙŠÙ„ات لديك ÙˆØ³ØªÙØ³ØªØ¹Ù…Ù„ القيم المبدئية. + + + + ProxyDialog + + + Proxy Configuration + ضبط الوسيط + + + + Pro&xy Type + &نوع الوسيط + + + + Host Na&me + ا&سم Ø§Ù„Ù…ÙØ¶ÙŠÙ + + + + Port + Ø§Ù„Ù…Ù†ÙØ° + + + + Authentication Re&quired + الاستيثاق Ù…&طلوب + + + + &User Name + اسم المست&خدم + + + + Password + كلمة السر + + + + None + بلا وسيط + + + + System settings + إعدادات النظام + + + + HTTP + HTTP + + + + Socks v5 + Socks v5 + + + + QObject + + + Error importing data + خطأ ÙÙŠ استيراد البيانات + + + + from record number %1 + من السجلّ رقم %L1 + + + + . +%1 + . +%L1 + + + + Importing CSV file... + يستورد مل٠CSV... + + + + Cancel + ألغ٠+ + + + All files (*) + كلّ Ø§Ù„Ù…Ù„ÙØ§Øª (*) + + + + SQLite database files (*.db *.sqlite *.sqlite3 *.db3) + Ù…Ù„ÙØ§Øª قواعد بيانات SQLite â€(*.db *.sqlite *.sqlite3 *.db3) + + + + Left + يسار + + + + Right + يمين + + + + Center + وسط + + + + Justify + ضبط + + + + SQLite Database Files (*.db *.sqlite *.sqlite3 *.db3) + Ù…Ù„ÙØ§Øª قواعد بيانات SQLite â€(*.db *.sqlite *.sqlite3 *.db3) + + + + DB Browser for SQLite Project Files (*.sqbpro) + Ù…Ù„ÙØ§Øª مشاريع «متصÙّح قواعد بيانات SQLite» â€(*.sqbpro) + + + + SQL Files (*.sql) + Ù…Ù„ÙØ§Øª SQL â€(*.sql) + + + + All Files (*) + كلّ Ø§Ù„Ù…Ù„ÙØ§Øª (*) + + + + Text Files (*.txt) + Ù…Ù„ÙØ§Øª النصوص (*.txt) + + + + Comma-Separated Values Files (*.csv) + Ù…Ù„ÙØ§Øª القيم المقسومة بÙواصل (*.csv) + + + + Tab-Separated Values Files (*.tsv) + Ù…Ù„ÙØ§Øª القيم المقسومة بجدولات (*.tsv) + + + + Delimiter-Separated Values Files (*.dsv) + Ù…Ù„ÙØ§Øª القيم المقسومة Ø¨Ø­Ø±ÙˆÙ ÙØµÙ„ (*.dsv) + + + + Concordance DAT files (*.dat) + â€Concordance DAT files â€(*.dat) + + + + JSON Files (*.json *.js) + Ù…Ù„ÙØ§Øª JSON â€(*.json *.js) + + + + XML Files (*.xml) + Ù…Ù„ÙØ§Øª XML â€(*.xml) + + + + Binary Files (*.bin *.dat) + Ø§Ù„Ù…Ù„ÙØ§Øª الثنائيّة (*.bin *.dat) + + + + SVG Files (*.svg) + Ù…Ù„ÙØ§Øª SVG â€(*.svg) + + + + Hex Dump Files (*.dat *.bin) + Ù…Ù„ÙØ§Øª ستّ‌عشرية Ù…ÙØ±Ù‘غة (*.dat *.bin) + + + + Extensions (*.so *.dylib *.dll) + الامتدادات (*.so *.dylib *.dll) + + + + RemoteCommitsModel + + + Commit ID + معرّ٠الإيداع + + + + Message + الرسالة + + + + Date + التاريخ + + + + Author + المؤلّ٠+ + + + Size + الحجم + + + + Authored and committed by %1 + ألّÙÙ‡ وأودعه: %L1 + + + + Authored by %1, committed by %2 + ألّÙÙ‡ %L1ØŒ وأودعه %L2 + + + + RemoteDatabase + + + Error opening local databases list. +%1 + خطأ أثناء ÙØªØ­ قائمة قواعد البيانات المحليّة. +%L1 + + + + Error creating local databases list. +%1 + خطأ أثناء إنشاء قائمة قواعد البيانات المحليّة. +%L1 + + + + RemoteDock + + + Remote + البعيد + + + + Identity + الهويّة + + + + Push currently opened database to server + Ø§Ø¯ÙØ¹ قاعدة البيانات Ø§Ù„Ù…ÙØªÙˆØ­Ø© حاليًا إلى الخادوم + + + + DBHub.io + DBHub.io + + + + <html><head/><body><p>In this pane, remote databases from dbhub.io website can be added to DB Browser for SQLite. First you need an identity:</p><ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Login to the dbhub.io website (use your GitHub credentials or whatever you want)</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Click the button to &quot;Generate client certificate&quot; (that's your identity). That'll give you a certificate file (save it to your local disk).</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Go to the Remote tab in DB Browser for SQLite Preferences. Click the button to add a new certificate to DB Browser for SQLite and choose the just downloaded certificate file.</li></ol><p>Now the Remote panel shows your identity and you can add remote databases.</p></body></html> + <html dir="rtl"> +<p>يمكنك ÙÙŠ هذه اللوحة Ø¥Ø¶Ø§ÙØ© قواعد البيانات البعيدة من موقع dbhub.io إلى «متصÙّح قواعد بيانات SQLite». تحتاج أولًا إلى هويّة:</p> +<ol> +<li>Ù„ÙØ¬ إلى موقع dbhub.io (استعمل معلومات ولوج ØºÙØªâ€ŒÙ‡ÙŽØ¨ أو غيرها، كما ترغب)</li> +<li>انقر الزر â€Ù„توليد شهادة العميل“ (وهذه هي الهويّة). هكذا تحصل على مل٠شهادة ØªØ­ÙØ¸Ù‡ على القرص المحلي لديك.</li> +<li>انتقل إلى لسان â€Ø§Ù„بعيد“ ÙÙŠ ØªÙØ¶ÙŠÙ„ات «متصÙّح قواعد بيانات SQLite». انقر الزر Ù„Ø¥Ø¶Ø§ÙØ© شهادة جديدة إلى التطبيق واختر مل٠الشهادة الذي نزّلته للتو.</li> +</ol> +<p>سترى الآن ÙÙŠ لوحة â€Ø§Ù„بعيد“ هويّتك ويمكنك Ø¥Ø¶Ø§ÙØ© قواعد البيانات لتصير بعيدة.</p> +</html> + + + + Local + المحلي + + + + Current Database + قاعدة البيانات الحالية + + + + Clone + استنسخ + + + + User + المستخدم + + + + Database + قاعدة البيانات + + + + Branch + Ø§Ù„ÙØ±Ø¹ + + + + Commits + الإيداعات + + + + Commits for + إيداعات Ø§Ù„ÙØ±Ø¹ + + + + Delete Database + احذ٠قاعدة البيانات + + + + Delete the local clone of this database + احذ٠النسخة المحلية من قاعدة البيانات هذه + + + + Open in Web Browser + Ø§ÙØªØ­ ÙÙŠ متصÙّح Ø§Ù„ÙˆÙØ¨ + + + + Open the web page for the current database in your browser + Ø§ÙØªØ­ ØµÙØ­Ø© Ø§Ù„ÙˆÙØ¨ لقاعدة البيانات الحالية ÙÙŠ المتصÙّح لديك + + + + Clone from Link + استنسخ من رابط + + + + Use this to download a remote database for local editing using a URL as provided on the web page of the database. + استعمل هذا لتنزيل قاعدة بيانات بعيدة للتعديل عليها محليًا باستعمال المسار الموجود ÙÙŠ ØµÙØ­Ø© Ø§Ù„ÙˆÙØ¨ لقاعدة البيانات تلك. + + + + Refresh + Ø£Ù†Ø¹ÙØ´ + + + + Reload all data and update the views + Ø£Ø¹ÙØ¯ تحميل كلّ البيانات وحدّث المناظير + + + + F5 + F5 + + + + Clone Database + استنسخ قاعدة بيانات + + + + Open Database + Ø§ÙØªØ­ قاعدة بيانات + + + + Open the local copy of this database + Ø§ÙØªØ­ النسخة المحلية من قاعدة البيانات هذه + + + + Check out Commit + اسحب الإيداع (Check out) + + + + Download and open this specific commit + نزّل هذا الإيداع بعينه ÙˆØ§ÙØªØ­Ù‡ + + + + Check out Latest Commit + اسحب الإيداع الأخير (Check out) + + + + Check out the latest commit of the current branch + اسحب الإيداع الأخير (Check out) ÙÙŠ Ø§Ù„ÙØ±Ø¹ الحالي + + + + Save Revision to File + Ø§Ø­ÙØ¸ المراجعة ÙÙŠ مل٠+ + + + Saves the selected revision of the database to another file + ÙŠØ­ÙØ¸ المراجعة المحدّدة لقاعدة البيانات ÙÙŠ مل٠آخر + + + + Upload Database + Ø§Ø±ÙØ¹ قاعدة البيانات + + + + Upload this database as a new commit + ÙŠØ±ÙØ¹ قاعدة البيانات هذه كإيداع جديد + + + + <html><head/><body><p>You are currently using a built-in, read-only identity. For uploading your database, you need to configure and use your DBHub.io account.</p><p>No DBHub.io account yet? <a href="https://dbhub.io/"><span style=" text-decoration: underline; color:#007af4;">Create one now</span></a> and import your certificate <a href="#preferences"><span style=" text-decoration: underline; color:#007af4;">here</span></a> to share your databases.</p><p>For online help visit <a href="https://dbhub.io/about"><span style=" text-decoration: underline; color:#007af4;">here</span></a>.</p></body></html> + تستعمل حاليًا هويّة مضمّنة ÙÙŠ البرمجيّة وللقراءة Ùقط. لو أردت Ø±ÙØ¹ قاعدة البيانات ÙØ¹Ù„يك ضبط حسابك على DBHub.io واستعماله.<br/>أليس لديك واحد بعد؟ <a href="https://dbhub.io/"><span style=" text-decoration: underline; color:#007af4;">Ø£Ù†Ø´ÙØ¦Ù‡ الآن</span></a> ÙˆØ§Ø³ØªÙˆØ±ÙØ¯ الشهادة <a href="#preferences"><span style=" text-decoration: underline; color:#007af4;">هنا</span></a> Ù„ØªÙØ´Ø§Ø±Ùƒ قواعد بياناتك.<br/>Ø²ÙØ± <a href="https://dbhub.io/about"><span style=" text-decoration: underline; color:#007af4;">الموقع</span></a> للمساعدة ÙˆØ§Ù„ØªÙØ§ØµÙŠÙ„. + + + + Back + Ø¹ÙØ¯ + + + + Select an identity to connect + اختر هويّة للاتصال + + + + Public + عامّة + + + + This downloads a database from a remote server for local editing. +Please enter the URL to clone from. You can generate this URL by +clicking the 'Clone Database in DB4S' button on the web page +of the database. + بهذا تÙنزّل قاعدة بيانات من خادوم بعيد للتعديل عليها محليًا. +من ÙØ¶Ù„Ùƒ أدخÙÙ„ المسار الذي ستستنسخ القاعدة منه. +يمكنك توليده بنقر â€Ø§Ø³ØªÙ†Ø³Ø® قاعدة البيانات ÙÙŠ DB4S“ +ÙÙŠ ØµÙØ­Ø© Ø§Ù„ÙˆÙØ¨ لقاعدة البيانات التي تريد. + + + + Invalid URL: The host name does not match the host name of the current identity. + مسار غير صالح: لا يتطابق اسم المضي٠مع اسم مضي٠الهويّة الحالية. + + + + Invalid URL: No branch name specified. + مسار غير صالح: لم تحدّد اسم Ø§Ù„ÙØ±Ø¹. + + + + Invalid URL: No commit ID specified. + مسار غير صالح: لم تحدّد معرّ٠الإيداع. + + + + You have modified the local clone of the database. Fetching this commit overrides these local changes. +Are you sure you want to proceed? + عدّلت النسخة المحلية من قاعدة البيانات. بجلب الإيداع ÙØ£Ù†Øª تÙلغي هذه التعديلات المحلية. +أمتأكّد من المواصلة؟ + + + + The database has unsaved changes. Are you sure you want to push it before saving? + ÙÙŠ قاعدة البيانات تعديلات غير محÙوظة. أمتأكّد من Ø¯ÙØ¹ القاعدة قبل Ø­ÙØ¸ التعديلات؟ + + + + The database you are trying to delete is currently opened. Please close it before deleting. + قاعدة البيانات التي تحاول حذÙها Ù…ÙØªÙˆØ­Ø© حاليًا. من ÙØ¶Ù„Ùƒ أغلÙقها قبل حذÙها. + + + + This deletes the local version of this database with all the changes you have not committed yet. Are you sure you want to delete this database? + بهذا تحذ٠النسخة المحلية من قاعدة البيانات هذه مع كلّ التعديلات التي لم تودعها بعد. أمتأكّد من حذ٠قاعدة البيانات هذه؟ + + + + RemoteLocalFilesModel + + + Name + الاسم + + + + Branch + Ø§Ù„ÙØ±Ø¹ + + + + Last modified + آخر تعديل + + + + Size + الحجم + + + + Commit + الإيداع + + + + File + المل٠+ + + + RemoteModel + + + Name + الاسم + + + + Commit + الإيداع + + + + Last modified + آخر تعديل + + + + Size + الحجم + + + + Size: + الحجم: + + + + Last Modified: + آخر تعديل: + + + + Licence: + الرخصة: + + + + Default Branch: + Ø§Ù„ÙØ±Ø¹ المبدئي: + + + + RemoteNetwork + + + Choose a location to save the file + اختر مكانًا Ù„Ø­ÙØ¸ المل٠Ùيه + + + + Error opening remote file at %1. +%2 + خطأ أثناء ÙØªØ­ المل٠البعيد ÙÙŠ %L1. +%L2 + + + + Error: Invalid client certificate specified. + خطأ: Ø­ÙØ¯Ù‘دت شهادة عميل غير صالحة. + + + + Please enter the passphrase for this client certificate in order to authenticate. + من ÙØ¶Ù„Ùƒ أدخÙÙ„ عبارة السر لشهادة العميل لإجراء الاستيثاق. + + + + Cancel + ألغ٠+ + + + Uploading remote database to +%1 + ÙŠØ±ÙØ¹ قاعدة البيانات البعيدة إلى +%L1 + + + + Downloading remote database from +%1 + ينزّل قاعدة البيانات البعيدة من +%L1 + + + + + Error: The network is not accessible. + خطأ: تعذّر الوصول إلى الشبكة. + + + + Error: Cannot open the file for sending. + خطأ: تعذّر ÙØªØ­ المل٠لإرساله. + + + + RemotePushDialog + + + Push database + Ø¯ÙØ¹ قاعدة البيانات + + + + Database na&me to push to + ا&سم قاعدة البيانات الذي Ø³ÙŠÙØ¯Ùع إليها + + + + Commit message + رسالة الإيداع + + + + Database licence + رخصة قاعدة البيانات + + + + Public + عامّة + + + + Branch + Ø§Ù„ÙØ±Ø¹ + + + + Force push + Ø£Ø¬Ø¨ÙØ± Ø§Ù„Ø¯ÙØ¹ + + + + Username + اسم المستخدم + + + + Database will be public. Everyone has read access to it. + ستكون قاعدة البيانات عامّة. يملك الجميع تصريح القراءة منها. + + + + Database will be private. Only you have access to it. + ستكون قاعدة البيانات خاصّة. أنت من لديك حقّ الوصول إليها لا غير. + + + + Use with care. This can cause remote commits to be deleted. + استعمله بحذر. يمكن أن يتسبّب هذا بحذ٠الإيداعات البعيدة. + + + + RunSql + + + Execution aborted by user + أجهض المستخدم التنÙيذ + + + + , %1 rows affected + ØŒ عدد الصÙو٠المتأثّرة هو %L1 + + + + query executed successfully. Took %1ms%2 + Ù†ÙÙّذ الاستعلام بنجاح: أخذ %L1 م‌ث%L2 + + + + executing query + ينÙّذ الاستعلام + + + + SelectItemsPopup + + + A&vailable + ال&Ù…ÙØªØ§Ø­ + + + + Sele&cted + الم&حدّد + + + + SqlExecutionArea + + + Form + استمارة + + + + Find previous match [Shift+F3] + ابحث عن المطابقة السابقة [Shift+F3] + + + + Find previous match with wrapping + ابحث عن المطابقة السابقة مع Ø§Ù„Ø§Ù„ØªÙØ§Ù + + + + Shift+F3 + Shift+F3 + + + + The found pattern must be a whole word + يجب أن يكون النمط محور البحث كلمة كاملة + + + + Whole Words + الكلمات الكاملة + + + + Text pattern to find considering the checks in this frame + النمط محور البحث بأخذ Ø§Ù„ÙØ­ÙˆØµ ÙÙŠ هذا الإطار بعين الاعتبار + + + + Find in editor + ابحث ÙÙŠ المحرّر + + + + The found pattern must match in letter case + يجب أن يطابق النمط محور البحث حالة الأحر٠+ + + + Case Sensitive + حسّاس لحالة الأحر٠+ + + + Find next match [Enter, F3] + ابحث عن المطابقة التالية [Enter, F3] + + + + Find next match with wrapping + ابحث عن المطابقة التالية مع Ø§Ù„Ø§Ù„ØªÙØ§Ù + + + + F3 + + + + + Interpret search pattern as a regular expression + تعامَل مع نمط البحث كتعبير نمطي + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + إن ÙØ¹Ù‘لته ÙØ³ØªØªØ¹Ø§Ù…Ù„ البرمجيّة مع نمط البحث على أنّه تعبير يونكس نمطي. Ø·Ø§Ù„ÙØ¹ <a href="https://en.wikibooks.org/wiki/Regular_Expressions">التعابير النمطية ÙÙŠ ويكي‌كتب (بالإنجليزية)</a>. + + + + Regular Expression + تعبير نمطي + + + + + Close Find Bar + أغلÙÙ‚ شريط البحث + + + + <html><head/><body><p>Results of the last executed statements.</p><p>You may want to collapse this panel and use the <span style=" font-style:italic;">SQL Log</span> dock with <span style=" font-style:italic;">User</span> selection instead.</p></body></html> + نتائج آخر Ø§Ù„Ø¥ÙØ§Ø¯Ø§Øª المنÙّذة.<br/>يمكنك طيّ هذه اللوحة واستعمال لوحة <span style=" font-style:italic;">سجلّ SQL</span> باختيار <span style=" font-style:italic;">المستخدم</span> بدل هذا. + + + + Results of the last executed statements + نتائج آخر Ø§Ù„Ø¥ÙØ§Ø¯Ø§Øª المنÙّذة + + + + This field shows the results and status codes of the last executed statements. + يعرض هذا الحقل نتائج ورموز حالة آخر Ø§Ù„Ø¥ÙØ§Ø¯Ø§Øª المنÙّذة. + + + + Couldn't read file: %1. + تعذّرت قراءة الملÙ: %L1. + + + + + Couldn't save file: %1. + تعذّر Ø­ÙØ¸ الملÙ: %L1. + + + + Your changes will be lost when reloading it! + ستÙقد تغييراتك لو ÙØ¹Ù„ت! + + + + The file "%1" was modified by another program. Do you want to reload it?%2 + عدّل برنامج آخر الملÙÙ‘ â€%L1“. أتريد إعادة تحميله؟%L2 + + + + SqlTextEdit + + + Ctrl+/ + Ctrl+/ + + + + SqlUiLexer + + + (X) The abs(X) function returns the absolute value of the numeric argument X. + (X) â€«ØªÙØ¹ÙŠØ¯ الدالة abs(X) القيمة Ø§Ù„Ù…ÙØ·Ù„قة للمعطى العددي X. + + + + () The changes() function returns the number of database rows that were changed or inserted or deleted by the most recently completed INSERT, DELETE, or UPDATE statement. + ‎() â€«ØªÙØ¹ÙŠØ¯ الدالة changes()‎ عدد الصÙÙˆÙ ÙÙŠ قاعدة البيانات التي تغيّرت أو Ø£ÙØ¯Ø±Ø¬Øª أو Ø­ÙØ°Ùت باستخدام أحدث Ø¥ÙØ§Ø¯Ø© INSERT أو DELETE أو UPDATE Ø£ÙØ¬Ø±ÙŠØª بنجاح. + + + + (X1,X2,...) The char(X1,X2,...,XN) function returns a string composed of characters having the unicode code point values of integers X1 through XN, respectively. + (X1,X2,...) â€«ØªÙØ¹ÙŠØ¯ الدالة char(X1,X2,...,XN) سلسلة نصية Ù…Ø¤Ù„Ù‘ÙØ© من محارÙÙŽ قيم٠نقاط رموزها اليونيكودية هي الأعداد الصحيحة بدءًا من X1 وحتّى XN بالترتيب. + + + + (X,Y,...) The coalesce() function returns a copy of its first non-NULL argument, or NULL if all arguments are NULL + (X,Y,...) â€«ØªÙØ¹ÙŠØ¯ الدالة coalesce()‎ نسخة من أوّل معطًى ليس NULØŒ أو NULL إن كانت كلّ المعطيات تساوي NULL. + + + + (X,Y) The glob(X,Y) function is equivalent to the expression "Y GLOB X". + (X,Y) ‫الدالة glob(X,Y) تعادل التعبير â€Y GLOB X“. + + + + (X,Y) The ifnull() function returns a copy of its first non-NULL argument, or NULL if both arguments are NULL. + (X,Y) ØªÙØ¹ÙŠØ¯ الدالة‫ ifnull()‎ نسخة من أوّل معطًى ليس NULØŒ أو NULL إن كان ÙƒÙلا المعطيين يساويان NULL. + + + + (X,Y) The instr(X,Y) function finds the first occurrence of string Y within string X and returns the number of prior characters plus 1, or 0 if Y is nowhere found within X. + (X,Y) ‫تبحث الدالة instr(X,Y) عن أوّل حدوث للسلسلة النصية Y داخل السلسلة النصية X ÙˆØªÙØ¹ÙŠØ¯ عدد المحار٠قبلها زائدًا Ù¡ØŒ أو ØªÙØ¹ÙŠØ¯ القيمة صÙÙØ± إن لم توجد Y ÙÙŠ أيّ مكان ÙÙŠ X. + + + + (X) The hex() function interprets its argument as a BLOB and returns a string which is the upper-case hexadecimal rendering of the content of that blob. + (X) â€«ØªÙØ³Ù‘ر الدالة hex()‎ المطى على أنّه BLOB ÙˆØªÙØ¹ÙŠØ¯ سلسلة نصية تمثّل عرضًا ستّ‌عشري بحالة أحر٠كبيرة لمحتوى كائن BLOB ذاك. + + + + () The last_insert_rowid() function returns the ROWID of the last row insert from the database connection which invoked the function. + ‎() â€«ØªÙØ¹ÙŠØ¯ الدالة last_insert_rowid()‎ معرّ٠الصÙ/ROWID لآخر عملية إدراج صÙÙ‘ من اتصال قاعدة البيانات والتي Ù†Ùّذت الدالة. + + + + (X) For a string value X, the length(X) function returns the number of characters (not bytes) in X prior to the first NUL character. + (X) ‫باعتبار X سلسلة نصية، ØªÙØ¹ÙŠØ¯ الدالة length(X) عدد المحار٠(وليس البايتات) داخل X والموجودة قبل أوّل محر٠NUL Ùيها. + + + + (X,Y) The like() function is used to implement the "Y LIKE X" expression. + (X,Y) ØªÙØ³ØªØ¹Ù…Ù„ الدالة‫ like()‎ لتنÙيذ التعبير â€Y LIKE X“. + + + + (X,Y,Z) The like() function is used to implement the "Y LIKE X ESCAPE Z" expression. + (X,Y,Z) ØªÙØ³ØªØ¹Ù…Ù„ الدالة‫ like()‎ لتنÙيذ التعبير â€Y LIKE X ESCAPE Z“. + + + + (X) The load_extension(X) function loads SQLite extensions out of the shared library file named X. +Use of this function must be authorized from Preferences. + (X) â€«ØªÙØ­Ù…ّل الدالة load_extension(X) امتدادات SQLite من مل٠مكتبة مشتركة اسمه X. +عليك السماح باستعمال هذه الدالة من Ø§Ù„ØªÙØ¶ÙŠÙ„ات. + + + + (X,Y) The load_extension(X) function loads SQLite extensions out of the shared library file named X using the entry point Y. +Use of this function must be authorized from Preferences. + (X,Y) â€«ØªÙØ­Ù…ّل الدالة load_extension(X) امتدادات SQLite من مل٠مكتبة مشتركة اسمه X باستخدام نقطة الإدخال Y. +عليك السماح باستعمال هذه الدالة من Ø§Ù„ØªÙØ¶ÙŠÙ„ات. + + + + (X) The lower(X) function returns a copy of string X with all ASCII characters converted to lower case. + (X) â€«ØªÙØ¹ÙŠØ¯ الدالة lower(X) نسخة من السلسلة النصية X حيث محار٠آسكي كلّها محوّلة إلى حالة الأحر٠الصغيرة. + + + + (X) ltrim(X) removes spaces from the left side of X. + (X) â€«ØªÙØ²ÙŠÙ„ ltrim(X) Ø§Ù„Ù…Ø³Ø§ÙØ§Øª من الجانب الأيسر للسلسلة النصية X. + + + + (X,Y) The ltrim(X,Y) function returns a string formed by removing any and all characters that appear in Y from the left side of X. + (X,Y) â€«ØªÙØ¹ÙŠØ¯ الدالة ltrim(X,Y) سلسلة نصية بإزالة كلّ المحار٠التي قد تظهر ÙÙŠ Y من الجانب الأيسر للسلسلة X. + + + + (X,Y,...) The multi-argument max() function returns the argument with the maximum value, or return NULL if any argument is NULL. + (X,Y,...) â€«ØªÙØ¹ÙŠØ¯ الدالة متعدّدة المعطيات max()‎ المعطى الذي له أكبر قيمة، أو NULL إن كان أحد المعطيات هو NULL. + + + + (X,Y,...) The multi-argument min() function returns the argument with the minimum value. + (X,Y,...) â€«ØªÙØ¹ÙŠØ¯ الدالة متعدّدة المعطيات min()‎ المعطى الذي له أصغر قيمة. + + + + (X,Y) The nullif(X,Y) function returns its first argument if the arguments are different and NULL if the arguments are the same. + (X,Y) â€«ØªÙØ¹ÙŠØ¯ الدالة nullif(X,Y) أوّل معطًى إن كانت المعطيات Ù…Ø®ØªÙ„ÙØ©ØŒ ÙˆØªÙØ¹ÙŠØ¯ NULL إن كانت المعطيات متطابقة. + + + + (FORMAT,...) The printf(FORMAT,...) SQL function works like the sqlite3_mprintf() C-language function and the printf() function from the standard C library. + (FORMAT,...) ‫تعمل دالة SQL هذه printf(FORMAT,...) تمامًا مثل دالة لغة سي sqlite3_mprintf()‎ ودالة printf()‎ من مكتبة سي القياسية. + + + + (X) The quote(X) function returns the text of an SQL literal which is the value of its argument suitable for inclusion into an SQL statement. + (X) â€«ØªÙØ¹ÙŠØ¯ الدالة quote(X) نص SQL حرÙيّ تكون قيمة معامله مناسبة لتوضع ÙÙŠ عبارة SQL. + + + + () The random() function returns a pseudo-random integer between -9223372036854775808 and +9223372036854775807. + ‎() â€«ØªÙØ¹ÙŠØ¯ الدالة random()‎ عددًا صحيحًا عشوائيًا زائÙًا بين -٩٢٢٣٣٧٢٠٣٦٨٥٤٧٧٥٨٠٨ Ùˆ +٩٢٢٣٣٧٢٠٣٦٨٥٤٧٧٥٨٠٧. + + + + (N) The randomblob(N) function return an N-byte blob containing pseudo-random bytes. + (N) â€«ØªÙØ¹ÙŠØ¯ الدالة randomblob(N) كائن BLOB بحجم N بايت يحتوي على بايتات عشوائية Ø²Ø§Ø¦ÙØ©. + + + + (X,Y,Z) The replace(X,Y,Z) function returns a string formed by substituting string Z for every occurrence of string Y in string X. + (X,Y,Z) â€«ØªÙØ¹ÙŠØ¯ الدالة replace(X,Y,Z) سلسلة نصية باستبدال كلّ ظهور للسلسة النصية Y ÙÙŠ السلسلة النصية X بالسلسلة النصية Z. + + + + (X) The round(X) function returns a floating-point value X rounded to zero digits to the right of the decimal point. + (X) ØªÙØ¹ÙŠØ¯ الدالة‫ round(X) قيمة X عشرية عائمة Ù…Ùقرّبة إلى خانات الصÙÙØ± يمين Ø§Ù„ÙØ§ØµÙ„Ø© العشرية. + + + + (X,Y) The round(X,Y) function returns a floating-point value X rounded to Y digits to the right of the decimal point. + (X,Y) ØªÙØ¹ÙŠØ¯ الدالة‫ round(X,Y) قيمة X عشرية عائمة Ù…Ùقرّبة إلى خانات Y يمين Ø§Ù„ÙØ§ØµÙ„Ø© العشرية. + + + + (X) rtrim(X) removes spaces from the right side of X. + (X) â€«ØªÙØ²ÙŠÙ„ rtrim(X) Ø§Ù„Ù…Ø³Ø§ÙØ§Øª من الجانب الأيمن للسلسلة النصية X. + + + + (X,Y) The rtrim(X,Y) function returns a string formed by removing any and all characters that appear in Y from the right side of X. + (X,Y) â€«ØªÙØ¹ÙŠØ¯ الدالة rtrim(X,Y) سلسلة نصية بإزالة كلّ المحار٠التي قد تظهر ÙÙŠ Y من الجانب الأيمن للسلسلة X. + + + + (X) The soundex(X) function returns a string that is the soundex encoding of the string X. + (X) â€«ØªÙØ¹ÙŠØ¯ الدالة soundex(X) سلسلة نصية بترميز Soundex من السلسلة النصية X. + + + + (X,Y) substr(X,Y) returns all characters through the end of the string X beginning with the Y-th. + (X,Y) â€«ØªÙØ¹ÙŠØ¯ substr(X,Y) كلّ المحار٠حتّى نهاية السلسلة النصية X بدايةً من المحر٠رقم Y. + + + + (X,Y,Z) The substr(X,Y,Z) function returns a substring of input string X that begins with the Y-th character and which is Z characters long. + (X,Y,Z) â€«ØªÙØ¹ÙŠØ¯ الدالة substr(X,Y,Z) سلسلة نصية جزئية من السلسلة الدخل X والتي تبدأ بالمحر٠رقم Y وبطول Z من المحارÙ. + + + + () The total_changes() function returns the number of row changes caused by INSERT, UPDATE or DELETE statements since the current database connection was opened. + ‎() â€«ØªÙØ¹ÙŠØ¯ الدالة total_changes()‎ عدد الصÙو٠المتأثّرة Ø¨Ø¥ÙØ§Ø¯Ø© INSERT أو UPDATE أو DELETE مذ ÙÙØªØ­ اتصال قاعدة البيانات الحالية. + + + + (X) trim(X) removes spaces from both ends of X. + (X) â€«ØªÙØ²ÙŠÙ„ trim(X) Ø§Ù„Ù…Ø³Ø§ÙØ§Øª من جانبي للسلسلة النصية X. + + + + (X,Y) The trim(X,Y) function returns a string formed by removing any and all characters that appear in Y from both ends of X. + (X,Y) â€«ØªÙØ¹ÙŠØ¯ الدالة trim(X,Y) سلسلة نصية بإزالة كلّ المحار٠التي قد تظهر ÙÙŠ Y من ÙƒÙلا جانبي X. + + + + (X) The typeof(X) function returns a string that indicates the datatype of the expression X. + (X) â€«ØªÙØ¹ÙŠØ¯ الدالة typeof(X) سلسلة نصية توضّح نوع بيانات التعبير X. + + + + (X) The unicode(X) function returns the numeric unicode code point corresponding to the first character of the string X. + (X) â€«ØªÙØ¹ÙŠØ¯ دالة unicode(X) النقطة الرمزية اليونيكودية العددية لأوّل محر٠من السلسلة النصية X. + + + + (X) The upper(X) function returns a copy of input string X in which all lower-case ASCII characters are converted to their upper-case equivalent. + (X) â€«ØªÙØ¹ÙŠØ¯ الدالة upper(X) نسخة من السلسلة النصية الدخل X حيث محار٠آسكي بحالة الأحر٠الكبيرة محوّلة كلّها إلى حالة الأحر٠الكبيرة. + + + + (N) The zeroblob(N) function returns a BLOB consisting of N bytes of 0x00. + (N) â€«ØªÙØ¹ÙŠØ¯ الدالة zeroblob(N) كائن BLOB يحتوي N بايت بالمحتوى 0x00. + + + + + + + (timestring,modifier,modifier,...) + (timestring,modifier,modifier,...) + + + + (format,timestring,modifier,modifier,...) + (format,timestring,modifier,modifier,...) + + + + (X) The avg() function returns the average value of all non-NULL X within a group. + (X) ØªÙØ¹ÙŠØ¯ الدالة‫ avg()‎ القيمة المتوسّطة لكلّ X لا تساوي NULL داخل مجموعة ما. + + + + (X) The count(X) function returns a count of the number of times that X is not NULL in a group. + (X) â€«ØªÙØ¹ÙŠØ¯ الدالة count(X) عدد المرات التي لا يكون Ùيها X يساوي NULL ÙÙŠ مجموعة ما. + + + + (X) The group_concat() function returns a string which is the concatenation of all non-NULL values of X. + (X) â€«ØªÙØ¹ÙŠØ¯ الدالة group_concat()‎ سلسلة نصية تجمع كلّ قيم X التي لا تساوي NULL. + + + + (X,Y) The group_concat() function returns a string which is the concatenation of all non-NULL values of X. If parameter Y is present then it is used as the separator between instances of X. + (X,Y) â€«ØªÙØ¹ÙŠØ¯ الدالة group_concat()‎ سلسلة نصية تجمع كلّ قيم X التي لا تساوي NULL. إن كان المعطى Y موجودًا، ÙØ³ÙŠÙستخدم ÙƒÙØ§ØµÙ„ بين سيرورات X. + + + + (X) The max() aggregate function returns the maximum value of all values in the group. + (X) â€«ØªÙØ¹ÙŠØ¯ الدالة الجامعة max()‎ أكبر قيمة لكلّ القيم ÙÙŠ المجموعة. + + + + (X) The min() aggregate function returns the minimum non-NULL value of all values in the group. + (X) â€«ØªÙØ¹ÙŠØ¯ الدالة الجامعة min()‎ أدنى قيمة لا تساوي NULL لكلّ القيم ÙÙŠ المجموعة. + + + + + (X) The sum() and total() aggregate functions return sum of all non-NULL values in the group. + (X) â€«ØªÙØ¹ÙŠØ¯ الدالتان الجامعتان sum()‎ Ùˆ total()‎ مجموع كل القيم التي لا تساوي NULL ÙÙŠ المجموعة. + + + + () The number of the row within the current partition. Rows are numbered starting from 1 in the order defined by the ORDER BY clause in the window definition, or in arbitrary order otherwise. + ‎() ‫رقم الصÙÙ‘ داخل القسم الحالي. ØªÙØ±Ù‚ّم الصÙو٠بدءًا من Ù¡ بالترتيب الذي حدّده بند ORDER BY ÙÙŠ ØªØ¹Ø±ÙŠÙ Ø§Ù„Ù†Ø§ÙØ°Ø©ØŒ أو بترتيب اعتباطي إن لم يكن كذلك.†+ + + + () The row_number() of the first peer in each group - the rank of the current row with gaps. If there is no ORDER BY clause, then all rows are considered peers and this function always returns 1. + ‎() ‫ناتج row_number()‎ لأوّل ÙØ±Ø¯ ÙÙŠ كلّ مجموعة - رتبة الصÙÙ‘ الحالي مع Ø§Ù„ÙØ±Ø§ØºØ§Øª. إن لم يكن هناك بند ORDER BYØŒ ÙØ³ØªÙعتبر كلّ الصÙÙˆÙ Ø£ÙØ±Ø§Ø¯ ÙˆØ³ØªÙØ¹ÙŠØ¯ هذه الدالة Ù¡ دومًا. + + + + () The number of the current row's peer group within its partition - the rank of the current row without gaps. Partitions are numbered starting from 1 in the order defined by the ORDER BY clause in the window definition. If there is no ORDER BY clause, then all rows are considered peers and this function always returns 1. + ‎() ‫رقم مجموعة Ø§Ù„Ø£ÙØ±Ø§Ø¯ للصÙÙ‘ الحالي داخل القسم - رتبة الصÙÙ‘ الحالي مع Ø§Ù„ÙØ±Ø§ØºØ§Øª. ØªÙØ±Ù‚ّم الأقسام بدءًا من 1 الترتيب الذي حدّده بند ORDER BY ÙÙŠ ØªØ¹Ø±ÙŠÙ Ø§Ù„Ù†Ø§ÙØ°Ø©. إن لم يوجد بند ORDER BYØŒ ÙØ³ØªÙعتبر كلّ الصÙÙˆÙ Ø£ÙØ±Ø§Ø¯ ÙˆØ³ØªÙØ¹ÙŠØ¯ هذه الدالة Ù¡ دومًا. + + + + () Despite the name, this function always returns a value between 0.0 and 1.0 equal to (rank - 1)/(partition-rows - 1), where rank is the value returned by built-in window function rank() and partition-rows is the total number of rows in the partition. If the partition contains only one row, this function returns 0.0. + ‎() ب‫غضّ النظر عن الاسم، ØªÙØ¹ÙŠØ¯ هذه الدالة دومًا قيمة بين ٠٫٠ و١٫٠ مساويةً لن(الرتبة - Ù¡)/(صÙو٠القسم - Ù¡)ØŒ حيث â€Ø§Ù„رتبة“ هي القيمة التي ØªÙØ¹ÙŠØ¯Ù‡Ø§ دالة Ø§Ù„Ù†Ø§ÙØ°Ø© المضمّنة rank()‎ Ùˆâ€ØµÙو٠القسم“ هو إجمال عدد الصÙÙˆÙ ÙÙŠ القسم. إن احتوى القسم صÙًا واحدًا ÙØ­Ø³Ø¨ØŒ ÙØ³ØªÙعيد هذه الدالة ٠٫٠. + + + + () The cumulative distribution. Calculated as row-number/partition-rows, where row-number is the value returned by row_number() for the last peer in the group and partition-rows the number of rows in the partition. + ‎() التوزيع التصاعدي. ÙŠÙØ­Ø³Ø¨ بالمعادلة رقم الصÙ/صÙو٠القسم، حيث â€Ø±Ù‚Ù… الصÙ“ هي القيمة التي أرجعتها‫ row_number()‎ لآخر ÙØ±Ø¯ ÙÙŠ المجموعة، Ùˆâ€ØµÙو٠القسم“ هي عدد الصÙÙˆÙ ÙÙŠ القسم. + + + + (N) Argument N is handled as an integer. This function divides the partition into N groups as evenly as possible and assigns an integer between 1 and N to each group, in the order defined by the ORDER BY clause, or in arbitrary order otherwise. If necessary, larger groups occur first. This function returns the integer value assigned to the group that the current row is a part of. + (N) â€«ÙŠÙØªØ¹Ø§Ù…Ù„ مع المعطى N على أنّه عدد صحيح. تقسم هذه الدالة القسم إلى N مجموعة إلى حد الإمكان من المساواة، ÙˆØªÙØ³Ù†Ø¯ عددًا صحيحًا بين 1 ÙˆN لكل مجموعة، بالترتيب الذي حدّده بند ORDER BYØŒ أو بترتيب اعتباطي إن كان عكس ذلك. إن كان ضروريا، ÙØ³ØªØ­Ø¯Ø« المجموعات الأكبر أولا. ØªÙØ¹ÙŠØ¯ هذه الدالة قيمة العدد الصحيح Ø§Ù„Ù…ÙØ³Ù†Ø­Ø¯Ø© إلى المجموعة التي هي جزء من الص٠الحالي. + + + + (expr) Returns the result of evaluating expression expr against the previous row in the partition. Or, if there is no previous row (because the current row is the first), NULL. + (expr) â€«ØªÙØ¹ÙŠØ¯ ناتج تقدير التعبير expr على الصÙÙ‘ السابق ÙÙŠ القسم. أو NULL إن لم يكن هناك صÙÙ‘ سابق (لأنّ الص٠الحالي هو الأوّل). + + + + (expr,offset) If the offset argument is provided, then it must be a non-negative integer. In this case the value returned is the result of evaluating expr against the row offset rows before the current row within the partition. If offset is 0, then expr is evaluated against the current row. If there is no row offset rows before the current row, NULL is returned. + (expr,offset) ‫لو ÙˆÙØ¬Ø¯ وسيط الإزاحة offset Ùيجب أن يكون عددًا صحيحًا غير سالب. ÙÙŠ هذه الحالة تكون القيمة Ø§Ù„Ù…ÙØ¹Ø§Ø¯Ø© هي ناتج تقدير العبارة expr للصÙÙˆÙ Ø§Ù„Ù…ÙØ²Ø§Ø­Ø© حسب الإزاحة قبل الصÙÙ‘ الحالي ÙÙŠ القسم. لو كانت الإزاحة صÙÙØ±Ù‹Ø§ ÙØ³ÙŠÙقدّر التعبير حسب الص٠الحالي. لو لم تكن هناك صÙو٠بالإزاحة تلك قبل الصÙÙ‘ الحالي، ÙØ³ÙŠÙعاد NULL. + + + + + (expr,offset,default) If default is also provided, then it is returned instead of NULL if the row identified by offset does not exist. + (expr,offset,default) ‫وإن ÙˆÙØ¬Ø¯Øª قيمة default ÙØ³ØªÙعاد بدل NULL لو لم يوجد الصÙÙ‘ الذي حدّدته الإزاحة تلك. + + + + (expr) Returns the result of evaluating expression expr against the next row in the partition. Or, if there is no next row (because the current row is the last), NULL. + (expr) â€«ØªÙØ¹ÙŠØ¯ ناتج تقدير التعبير حسب الصÙÙ‘ التالي ÙÙŠ القسم. أو NLL لو لم يكن هناك واحد (إذ الصÙÙ‘ الحالي هو آخر صÙÙ‘). + + + + (expr,offset) If the offset argument is provided, then it must be a non-negative integer. In this case the value returned is the result of evaluating expr against the row offset rows after the current row within the partition. If offset is 0, then expr is evaluated against the current row. If there is no row offset rows after the current row, NULL is returned. + (expr,offset) ‫لو ÙˆÙØ¬Ø¯ وسيط الإزاحة offset Ùيجب أن يكون عددًا صحيحًا غير سالب. ÙÙŠ هذه الحالة تكون القيمة Ø§Ù„Ù…ÙØ¹Ø§Ø¯Ø© هي ناتج تقدير العبارة expr للصÙÙˆÙ Ø§Ù„Ù…ÙØ²Ø§Ø­Ø© حسب الإزاحة بعد الصÙÙ‘ الحالي ÙÙŠ القسم. لو كانت الإزاحة صÙÙØ±Ù‹Ø§ ÙØ³ÙŠÙقدّر التعبير حسب الص٠الحالي. لو لم تكن هناك صÙو٠بالإزاحة تلك بعد الصÙÙ‘ الحالي، ÙØ³ÙŠÙعاد NULL. + + + + (expr) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the first row in the window frame for each row. + (expr) ‫تحسب دالة Ø§Ù„Ù†ÙˆØ§ÙØ° (window) المضمّنة هذه إطار Ø§Ù„Ù†Ø§ÙØ°Ø© لكلّ ص٠كما تحسبها دوال الجامعة. ØªÙØ¹ÙŠØ¯ الدالة قيمة التعبير expr محسوبًا حسب الص٠الأوّل ÙÙŠ إطار Ø§Ù„Ù†Ø§ÙØ°Ø© لكلّ صÙ. + + + + (expr) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the last row in the window frame for each row. + (expr) ‫تحسب دالة Ø§Ù„Ù†ÙˆØ§ÙØ° (window) المضمّنة هذه إطار Ø§Ù„Ù†Ø§ÙØ°Ø© لكلّ ص٠كما تحسبها دوال الجامعة. ØªÙØ¹ÙŠØ¯ الدالة قيمة التعبير expr محسوبًا حسب الص٠الأخير ÙÙŠ إطار Ø§Ù„Ù†Ø§ÙØ°Ø© لكلّ صÙ. + + + + (expr,N) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the row N of the window frame. Rows are numbered within the window frame starting from 1 in the order defined by the ORDER BY clause if one is present, or in arbitrary order otherwise. If there is no Nth row in the partition, then NULL is returned. + (expr, N) ‫تحسب دالة Ø§Ù„Ù†ÙˆØ§ÙØ° (window) المضمّنة هذه إطار Ø§Ù„Ù†Ø§ÙØ°Ø© لكلّ ص٠كما تحسبها دوال الجامعة. ØªÙØ¹ÙŠØ¯ الدالة قيمة التعبير expr محسوبًا حسب الص٠رقم N ÙÙŠ إطار Ø§Ù„Ù†Ø§ÙØ°Ø©. ØªÙØ±Ù‚ّم الصÙÙˆÙ ÙÙŠ إطارات Ø§Ù„Ù†ÙˆØ§ÙØ° بدءًا بالعدد Ù¡ حسب الترتيب الذي حدّده بند ORDER BY لو ÙˆÙØ¬Ø¯ØŒ أو بترتيب اعتباطي لو لم يوجد. ولو لم يكن هناك ص٠برقم N ÙÙŠ القسم ÙØ³ÙŠÙعاد NULL. + + + + SqliteTableModel + + + reading rows + يقرأ الصÙÙˆÙ + + + + loading... + يحمّل... + + + + References %1(%2) +Hold %3Shift and click to jump there + Ø§Ù„ØªÙØ¶ÙŠÙ„ات %L1â€(%L2) +اضغط %L3Shift وانقر للانتقال إلى هناك + + + + Error changing data: +%1 + خطأ أثناء تغيير البيانات: +%L1 + + + + retrieving list of columns + يجلب قائمة الأعمدة + + + + Fetching data... + يجلب البيانات... + + + + + Cancel + ألغ٠+ + + + TableBrowser + + + Browse Data + تصÙّح البيانات + + + + &Table: + الج&دول: + + + + Select a table to browse data + اختر جدولًا لتصÙّح بياناته + + + + Use this list to select a table to be displayed in the database view + استعمل هذه القائمة لاختيار الجدول الذي Ø³ÙŠÙØ¹Ø±Ø¶ ÙÙŠ منظور قاعدة البيانات + + + + This is the database table view. You can do the following actions: + - Start writing for editing inline the value. + - Double-click any record to edit its contents in the cell editor window. + - Alt+Del for deleting the cell content to NULL. + - Ctrl+" for duplicating the current record. + - Ctrl+' for copying the value from the cell above. + - Standard selection and copy/paste operations. + هذا هو منظور جدول قاعدة البيانات. يمكنك إجراء الآتي Ùيه: + - البدء بالكتابة لتحرير القيمة داخل الخط. + - النقر مزدوجًا على أيّ سجلّ لتحرير محتوياته ÙÙŠ Ù†Ø§ÙØ°Ø© محرّر الخلايا. + - ضغط Alt+Del لحذ٠محتوى الخليّة وضبطه على NULL. + - ضغط Ctrl+"‎ لتكرار السجلّ الحالي. + - ضغط Ctrl+'‎ لنسخ القيمة من الخلية أعلاه. + - التحديد العادي وعمليات النسخ واللصق. + + + + Text pattern to find considering the checks in this frame + النمط محور البحث بأخذ Ø§Ù„ÙØ­ÙˆØµ ÙÙŠ هذا الإطار بعين الاعتبار + + + + Find in table + ابحث ÙÙŠ الجدول + + + + Find previous match [Shift+F3] + ابحث عن المطابقة السابقة [Shift+F3] + + + + Find previous match with wrapping + ابحث عن المطابقة السابقة مع Ø§Ù„Ø§Ù„ØªÙØ§Ù + + + + Shift+F3 + Shift+F3 + + + + Find next match [Enter, F3] + ابحث عن المطابقة التالية [Enter, F3] + + + + Find next match with wrapping + ابحث عن المطابقة التالية مع Ø§Ù„Ø§Ù„ØªÙØ§Ù + + + + F3 + + + + + The found pattern must match in letter case + يجب أن يطابق النمط محور البحث حالة الأحر٠+ + + + Case Sensitive + حسّاس لحالة الأحر٠+ + + + The found pattern must be a whole word + يجب أن يكون النمط محور البحث كلمة كاملة + + + + Whole Cell + الخلية كاملة + + + + Interpret search pattern as a regular expression + تعامَل مع نمط البحث كتعبير نمطي + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + إن ÙØ¹Ù‘لته ÙØ³ÙŠÙتعامل مع نمط البحث على أنّه تعبير يونكس نمطي. طالع <a href="https://en.wikibooks.org/wiki/Regular_Expressions">التعابير النمطية ÙÙŠ ويكي‌كتب (بالإنجليزية)</a>. + + + + Regular Expression + تعبير نمطي + + + + + Close Find Bar + أغلÙÙ‚ شريط البحث + + + + Text to replace with + نص الاستبدال + + + + Replace with + استبدله بÙ†+ + + + Replace next match + استبدÙÙ„ المطابقة التالية + + + + + Replace + استبدل + + + + Replace all matches + استبدل كلّ المطابقات + + + + Replace all + استبدل الكلّ + + + + <html><head/><body><p>Scroll to the beginning</p></body></html> + مرّر إلى البداية + + + + <html><head/><body><p>Clicking this button navigates to the beginning in the table view above.</p></body></html> + ينقلك هذا الزر إلى بداية منظور الجدول أعلاه. + + + + |< + |< + + + + Scroll one page upwards + مرّر ØµÙØ­Ø© واحدة للأمام + + + + <html><head/><body><p>Clicking this button navigates one page of records upwards in the table view above.</p></body></html> + ينقلك هذا الزر ØµÙØ­Ø© واحدة من السجلّات لأعلى ÙÙŠ منظور الجدول أعلاه. + + + + < + < + + + + 0 - 0 of 0 + Ù  - Ù  من أصل Ù  + + + + Scroll one page downwards + مرّر ØµÙØ­Ø© واحدة للأسÙÙ„ + + + + <html><head/><body><p>Clicking this button navigates one page of records downwards in the table view above.</p></body></html> + ينقلك هذا الزر ØµÙØ­Ø© واحدة من السجلّات لأسÙÙ„ ÙÙŠ منظور الجدول أعلاه. + + + + > + > + + + + Scroll to the end + مرّر إلى النهاية + + + + <html><head/><body><p>Clicking this button navigates up to the end in the table view above.</p></body></html> + ينقلك هذا الزر إلى نهاية منظور الجدول أعلاه. + + + + >| + >| + + + + <html><head/><body><p>Click here to jump to the specified record</p></body></html> + انقر هنا للانتقال إلى السجلّ المحدّد + + + + <html><head/><body><p>This button is used to navigate to the record number specified in the Go to area.</p></body></html> + ÙŠÙØ³ØªØ¹Ù…Ù„ هذا الزر ÙÙŠ التنقّل إلى رقم السطر المحدّد ÙÙŠ منطقة â€Ø§Ù†ØªÙ‚Ù„ إلى“. + + + + Go to: + انتقل إلى: + + + + Enter record number to browse + أدخÙÙ„ رقم السجلّ لتصÙّحه + + + + Type a record number in this area and click the Go to: button to display the record in the database view + اكتب رقم السجلّ ÙÙŠ هذا المربّع وانقر زر â€Ø§Ù†ØªÙ‚Ù„ إلى:“ لعرض السجلّ ÙÙŠ منظور قاعدة البيانات + + + + 1 + Ù¡ + + + + Show rowid column + اعرض عمود معرّ٠الصÙÙˆÙ + + + + Toggle the visibility of the rowid column + بدّل ظهور عمود معرّ٠الصÙÙˆÙ/rowid + + + + Unlock view editing + اسمح بتحرير المنظور + + + + This unlocks the current view for editing. However, you will need appropriate triggers for editing. + يتيح هذا تحرير المنظور الحالي. مع ذلك ستحتاج إلى المحÙّزات المناسبة لإجراء التحرير. + + + + Edit display format + حرّر تنسيق العرض + + + + Edit the display format of the data in this column + حرّر تنسيق عرض البيانات ÙÙŠ هذا العمود + + + + + New Record + سجلّ جديد + + + + + Insert a new record in the current table + Ø£Ø¯Ø±ÙØ¬ سجلًا جديدًا ÙÙŠ الجدول الحالي + + + + <html><head/><body><p>This button creates a new record in the database. Hold the mouse button to open a pop-up menu of different options:</p><ul><li><span style=" font-weight:600;">New Record</span>: insert a new record with default values in the database.</li><li><span style=" font-weight:600;">Insert Values...</span>: open a dialog for entering values before they are inserted in the database. This allows to enter values acomplishing the different constraints. This dialog is also open if the <span style=" font-weight:600;">New Record</span> option fails due to these constraints.</li></ul></body></html> + ÙŠÙنشئ هذا الزر سجلًا جديدًا ÙÙŠ قاعدة البيانات. أبق٠زر Ø§Ù„ÙØ£Ø±Ø© مضغوطًا Ù„ÙØªØ­ قائمة منبثقة Ùيها عدّة خيارات:<ul><li><span style=" font-weight:600;">سجلّ جديد</span>: لإدراج سجلّ جديد يحمل القيم المبدئية ÙÙŠ قاعدة البيانات.</li><li><span style=" font-weight:600;">Ø£Ø¯Ø±ÙØ¬ قيم...</span>: Ù„ÙØªØ­ مربّع حوار لإدخال القيم قبل إدراجها ÙÙŠ جدول البيانات. يتيح هذا إدخال القيم حسب القيود Ø§Ù„Ù…Ø®ØªÙ„ÙØ©. ÙŠÙÙØªØ­ مربّع الحوار هذا أيضًا إن ÙØ´Ù„ الخيار <span style=" font-weight:600;">سجلّ جديد</span> بسبب هذه القيود.</li></ul> + + + + + Delete Record + احذ٠السجلّ + + + + Delete the current record + احذ٠السجلّ الحالي + + + + + This button deletes the record or records currently selected in the table + يحذ٠هذا الزر السجلّ أو السجلّات المحدّدة حاليًا ÙÙŠ الجدول + + + + + Insert new record using default values in browsed table + Ø£Ø¯Ø±ÙØ¬ سجلًا جديدًا مستخدمًا القيم المبدئية ÙÙŠ الجدول الذي تتصÙّحه + + + + Insert Values... + Ø£Ø¯Ø±ÙØ¬ قيم... + + + + + Open a dialog for inserting values in a new record + Ø§ÙØªØ­ مربّع حوار لإدراج القيم ÙÙŠ سجلّ جديد + + + + Export to &CSV + &صدّر بنسق CSV + + + + + Export the filtered data to CSV + صدّر البيانات المرشّحة إلى CSV + + + + This button exports the data of the browsed table as currently displayed (after filters, display formats and order column) as a CSV file. + ÙŠÙØµØ¯Ù‘ر هذا الزر بيانات الجدول الذي تتصÙّحه كما هي معروضة حاليًا (بعد المرشّحات وتنسيقات العرض وعمود Ø§Ù„ÙØ±Ø²) كمل٠CSV. + + + + Save as &view + Ø§Ø­ÙØ¸ كمن&ظور + + + + + Save the current filter, sort column and display formats as a view + Ø§Ø­ÙØ¸ المرشّح الحالي وعمود Ø§Ù„ÙØ±Ø² وتنسيقات العرض كمنظور + + + + This button saves the current setting of the browsed table (filters, display formats and order column) as an SQL view that you can later browse or use in SQL statements. + ÙŠØ­ÙØ¸ هذا الزر الإعداد الحالي للجدول الذي تتصÙّحه (المرشّحات وتنسيقات العرض وعمود Ø§Ù„ÙØ±Ø²) ÙÙŠ منظور SQL يمكنك تصÙّحه لاحقًا أو استخدامه ÙÙŠ Ø¥ÙØ§Ø¯Ø§Øª SQL. + + + + Save Table As... + Ø§Ø­ÙØ¸ الجدول ÙƒÙŽâ€... + + + + + Save the table as currently displayed + Ø§Ø­ÙØ¸ الجدول كما هو معروض حاليًا + + + + <html><head/><body><p>This popup menu provides the following options applying to the currently browsed and filtered table:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Export to CSV: this option exports the data of the browsed table as currently displayed (after filters, display formats and order column) to a CSV file.</li><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Save as view: this option saves the current setting of the browsed table (filters, display formats and order column) as an SQL view that you can later browse or use in SQL statements.</li></ul></body></html> + توÙّر القائمة المنبثقة هذه الخيارات الآتية والتي تنطبق على الجدول الذي تتصÙّحه والمرشّح حاليًا:<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">صدّر بنسق CSV: ÙŠÙØµØ¯Ù‘ر هذا الخيار البيانات ÙÙŠ الجدول الذي تتصÙّحه كما هي معروضة حاليًا (بعد المرشّحات وتنسيقات العرض وعمود Ø§Ù„ÙØ±Ø²) إلى مل٠بنسق CSV.</li><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Ø§Ø­ÙØ¸ كمنظور: ÙŠØ­ÙØ¸ هذا الخيار الإعداد الحالي للجدول الذي تتصÙّحه (المرشّحات وتنسيقات العرض وعمود Ø§Ù„ÙØ±Ø²) ÙÙŠ منظور SQL يمكنك تصÙّحه لاحقًا أو استعماله ÙÙŠ Ø¥ÙØ§Ø¯Ø§Øª SQL.</li></ul> + + + + Hide column(s) + أخÙ٠العمود/الأعمدة + + + + Hide selected column(s) + أخÙ٠العمود/الأعمدة المحدّدة + + + + Show all columns + اعرض كلّ الأعمدة + + + + Show all columns that were hidden + اعرض كلّ الأعمدة التي Ø£ÙØ®Ùيت + + + + + Set encoding + اضبط الترميز + + + + Change the encoding of the text in the table cells + غيّر ترميز النصوص ÙÙŠ خلايا الجدول + + + + Set encoding for all tables + اضبط ترميز كلّ الجداول + + + + Change the default encoding assumed for all tables in the database + غيّر الترميز المبدئي Ø§Ù„Ù…ÙØªØ±Ø¶ ÙÙŠ كلّ جداول قاعدة البيانات + + + + Clear Filters + امسح المرشّحات + + + + Clear all filters + امسح كلّ المرشّحات + + + + + This button clears all the filters set in the header input fields for the currently browsed table. + يمسح هذا الزر كلّ المرشّحات المضبوطة ÙÙŠ حقول الدخل ÙÙŠ الترويسة للجدول الذي تتصÙّحه حاليًا. + + + + Clear Sorting + امسح Ø§Ù„ÙØ±Ø² + + + + Reset the order of rows to the default + صÙّر ترتيب الصÙو٠إلى المبدئيات + + + + + This button clears the sorting columns specified for the currently browsed table and returns to the default order. + يمسح هذا الزر تريتب الأعمدة المحدّد للجدول الذي تتصÙّحه حاليًا ÙˆÙŠÙØ¹ÙŠØ¯Ù‡ إلى التريب المبدئي. + + + + Print + اطبع + + + + Print currently browsed table data + اطبع بيانات الجدول الذي تتصÙّحه حاليًا + + + + Print currently browsed table data. Print selection if more than one cell is selected. + اطبع بيانات الجدول الذي تتصÙّحه حاليًا. اطبع التحديد إن كانت هناك أكثر من خليّة واحدة محدّدة. + + + + Ctrl+P + Ctrl+P + + + + Refresh + Ø£Ù†Ø¹ÙØ´ + + + + Refresh the data in the selected table + Ø£Ù†Ø¹ÙØ´ البيانات ÙÙŠ الجدول المحدّد + + + + This button refreshes the data in the currently selected table. + ÙŠÙنعش هذا الزر البيانات ÙÙŠ الجدول المحدّد حاليًا. + + + + F5 + + + + + Find in cells + ابحث ÙÙŠ الخلايا + + + + Open the find tool bar which allows you to search for values in the table view below. + Ø§ÙØªØ­ شريط أدوات البحث لتبحث عن القيم التي تريد ÙÙŠ منظور الجدول أسÙله. + + + + + Bold + ثخين + + + + Ctrl+B + Ctrl+B + + + + + Italic + مائل + + + + + Underline + مسطّر + + + + Ctrl+U + Ctrl+U + + + + + Align Right + حاذ٠يمينًا + + + + + Align Left + حاذ٠يسارًا + + + + + Center Horizontally + الوسط الأÙقي + + + + + Justify + ضبط + + + + + Edit Conditional Formats... + حرّر التنسيقات الشرطيّة... + + + + Edit conditional formats for the current column + حرّر تنسيقات العمود الحالي الشرطيّة + + + + Clear Format + امسح التنسيق + + + + Clear All Formats + امسح كلّ التنسيقات + + + + + Clear all cell formatting from selected cells and all conditional formats from selected columns + امسح كلّ تنسيق الخلايا ÙÙŠ الخلايا المحدّدة وكلّ التنسيقات الشرطيّة ÙÙŠ الأعمدة المحدّدة + + + + + Font Color + لون النص + + + + + Background Color + لون الخلÙية + + + + Toggle Format Toolbar + اعرض/أخÙ٠شريط أدوات التنسيق + + + + Show/hide format toolbar + اعرض/أخÙ٠شريط التنسيق + + + + + This button shows or hides the formatting toolbar of the Data Browser + يعرض هذا الزر (أو ÙŠÙØ®ÙÙŠ) شريط التنسيق لمتصÙّح البيانات + + + + Select column + اختر عمودًا + + + + Ctrl+Space + Ctrl+Space + + + + Replace text in cells + استبدل النصوص ÙÙŠ الخلايا + + + + Filter in any column + رشّح أيّ عمود + + + + Ctrl+R + Ctrl+R + + + + %n row(s) + + لا صÙÙˆÙ + صÙÙ‘ واحد + صÙّان اثنان + %Ln صÙÙˆÙ + %Ln صÙًا + %Ln صÙÙ‘ + + + + + , %n column(s) + + ولا أعمدة + وعمود واحد + وعمودين اثنين + Ùˆ%Ln أعمدة + Ùˆ%Ln عمودًا + Ùˆ%Ln عمود + + + + + . Sum: %1; Average: %2; Min: %3; Max: %4 + . المجموع: %L1ØŒ المتوسّط: %L2ØŒ الأدنى: %L3ØŒ الأقصى: %L4 + + + + Conditional formats for "%1" + تنسيقات â€%L1“ الشرطيّة + + + + determining row count... + يحدّد عدد الصÙÙˆÙ... + + + + %1 - %2 of >= %3 + â€%L1 - â€%L2 من أصل >= â€%L3 + + + + %1 - %2 of %3 + â€%L1 - â€%L2 من أصل %L3 + + + + Please enter a pseudo-primary key in order to enable editing on this view. This should be the name of a unique column in the view. + من ÙØ¶Ù„Ùƒ أدخÙÙ„ Ù…ÙØªØ§Ø­Ù‹Ø§ أساسيًا زائÙًا (pseudo) Ù„ØªÙØ¹ÙŠÙ„ التحرير ÙÙŠ هذا المنظور. يجب أن يكون Ø§Ù„Ù…ÙØªØ§Ø­ اسمًا لأحد الأعمدة Ø§Ù„ÙØ±ÙŠØ¯Ø© ÙÙŠ المنظور. + + + + Delete Records + احذ٠السجلّات + + + + Duplicate records + كرّر السجلّات + + + + Duplicate record + كرّر السجلّ + + + + Ctrl+" + Ctrl+" + + + + Adjust rows to contents + اضبط الصÙو٠إلى محتواها + + + + Error deleting record: +%1 + خطأ أثناء حذ٠السجلّ: +%L1 + + + + Please select a record first + من ÙØ¶Ù„Ùƒ اختر سجلًا أوّلًا + + + + There is no filter set for this table. View will not be created. + لا مرشّح مضبوط لهذا الجدول. لن ÙŠÙنشأ المنظور. + + + + Please choose a new encoding for all tables. + من ÙØ¶Ù„Ùƒ اختر ترميزًا جديدًا لكلّ الجداول. + + + + Please choose a new encoding for this table. + من ÙØ¶Ù„Ùƒ اختر ترميزًا جديدًا لهذا الجدول. + + + + %1 +Leave the field empty for using the database encoding. + %L1 +اترك الحقل ÙØ§Ø±ØºÙ‹Ø§ لاستعمال ترميز قاعدة البيانات. + + + + This encoding is either not valid or not supported. + إمّا أنّ هذا الترميز غير صالح أو أنّه غير مدعوم. + + + + %1 replacement(s) made. + عدد الاستبدالات Ø§Ù„Ù…ÙØ¬Ø±Ø§Ø©: %L1 + + + + VacuumDialog + + + Compact Database + رصّ قاعدة البيانات + + + + Warning: Compacting the database will commit all of your changes. + تحذير: برصّ قاعدة البيانات ستÙودع كلّ التعديلات التي أجريتها. + + + + Please select the databases to co&mpact: + من ÙØ¶Ù„Ùƒ اختر قواعد البيانات لر&صّها: + + + diff --git a/ConfigFiles/translations/sqlb_cs.qm b/ConfigFiles/translations/sqlb_cs.qm new file mode 100644 index 0000000000000000000000000000000000000000..0828541bf38830b889e2f517dacf16c054c1d698 GIT binary patch literal 72122 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 + + + + AboutDialog + + + About DB Browser for SQLite + O DB Browser pro SQLite + + + + Version + Verze + + + + <html><head/><body><p>DB Browser for SQLite is an open source, freeware visual tool used to create, design and edit SQLite database files.</p><p>It is bi-licensed under the Mozilla Public License Version 2, as well as the GNU General Public License Version 3 or later. You can modify or redistribute it under the conditions of these licenses.</p><p>See <a href="http://www.gnu.org/licenses/gpl.html">http://www.gnu.org/licenses/gpl.html</a> and <a href="https://www.mozilla.org/MPL/2.0/index.txt">https://www.mozilla.org/MPL/2.0/index.txt</a> for details.</p><p>For more information on this program please visit our website at: <a href="http://sqlitebrowser.org">http://sqlitebrowser.org</a></p><p><span style=" font-size:small;">This software uses the GPL/LGPL Qt Toolkit from </span><a href="http://qt-project.org/"><span style=" font-size:small;">http://qt-project.org/</span></a><span style=" font-size:small;"><br/>See </span><a href="http://qt-project.org/doc/qt-5/licensing.html"><span style=" font-size:small;">http://qt-project.org/doc/qt-5/licensing.html</span></a><span style=" font-size:small;"> for licensing terms and information.</span></p><p><span style=" font-size:small;">It also uses the Silk icon set by Mark James licensed under a Creative Commons Attribution 2.5 and 3.0 license.<br/>See </span><a href="http://www.famfamfam.com/lab/icons/silk/"><span style=" font-size:small;">http://www.famfamfam.com/lab/icons/silk/</span></a><span style=" font-size:small;"> for details.</span></p></body></html> + + + + + AddRecordDialog + + + Add New Record + + + + + Enter values for the new record considering constraints. Fields in bold are mandatory. + + + + + In the Value column you can specify the value for the field identified in the Name column. The Type column indicates the type of the field. Default values are displayed in the same style as NULL values. + + + + + Name + Název + + + + Type + Typ + + + + Value + + + + + Values to insert. Pre-filled default values are inserted automatically unless they are changed. + + + + + When you edit the values in the upper frame, the SQL query for inserting this new record is shown here. You can edit manually the query before saving. + + + + + <html><head/><body><p><span style=" font-weight:600;">Save</span> will submit the shown SQL statement to the database for inserting the new record.</p><p><span style=" font-weight:600;">Restore Defaults</span> will restore the initial values in the <span style=" font-weight:600;">Value</span> column.</p><p><span style=" font-weight:600;">Cancel</span> will close this dialog without executing the query.</p></body></html> + + + + + Auto-increment + + + + + + Unique constraint + + + + + + Check constraint: %1 + + + + + + Foreign key: %1 + + + + + + Default value: %1 + + + + + + Error adding record. Message from database engine: + +%1 + + + + + Are you sure you want to restore all the entered values to their defaults? + + + + + Application + + + Possible command line arguments: + Možné parametry pro příkazový řádek: + + + + Usage: %1 [options] [<database>|<project>] + + + + + + -h, --help Show command line options + + + + + -q, --quit Exit application after running scripts + + + + + -s, --sql <file> Execute this SQL file after opening the DB + + + + + -t, --table <table> Browse this table after opening the DB + + + + + -R, --read-only Open database in read-only mode + + + + + -o, --option <group>/<setting>=<value> + + + + + Run application with this setting temporarily set to value + + + + + -O, --save-option <group>/<setting>=<value> + + + + + Run application saving this value for this setting + + + + + -v, --version Display the current version + + + + + <database> Open this SQLite database + + + + + <project> Open this project file (*.sqbpro) + + + + + The -s/--sql option requires an argument + Volba -s/--sql vyžaduje parametry + + + + The file %1 does not exist + Soubor %1 neexistuje + + + + The -t/--table option requires an argument + Volba -t/--table vyžaduje parametry + + + + The -o/--option and -O/--save-option options require an argument in the form group/setting=value + + + + + Invalid option/non-existant file: %1 + Neplatná volba/neexistující soubor: %1 + + + + SQLite Version + verze SQLite + + + + SQLCipher Version %1 (based on SQLite %2) + + + + + DB Browser for SQLite Version %1. + + + + + Built for %1, running on %2 + + + + + Qt Version %1 + + + + + CipherDialog + + + SQLCipher encryption + Å¡ifrování SQLCipher + + + + &Password + &Heslo + + + + &Reenter password + &Zadejte heslo znovu + + + + Encr&yption settings + + + + + SQLCipher &3 defaults + + + + + SQLCipher &4 defaults + + + + + Custo&m + + + + + Page si&ze + Velikost strany + + + + &KDF iterations + + + + + HMAC algorithm + + + + + KDF algorithm + + + + + Plaintext Header Size + + + + + Passphrase + + + + + Raw key + + + + + Please set a key to encrypt the database. +Note that if you change any of the other, optional, settings you'll need to re-enter them as well every time you open the database file. +Leave the password fields empty to disable the encryption. +The encryption process might take some time and you should have a backup copy of your database! Unsaved changes are applied before modifying the encryption. + + + + + Please enter the key used to encrypt the database. +If any of the other settings were altered for this database file you need to provide this information as well. + + + + + ColumnDisplayFormatDialog + + + Choose display format + Vyberte formát zobrazení + + + + Display format + Formát zobrazení + + + + Choose a display format for the column '%1' which is applied to each value prior to showing it. + Vyberte formát zobrazení pro sloupec '%1' který je použit na každou hodnotu pÅ™ed zobrazením. + + + + Default + Výchozí + + + + Decimal number + Desetinné Äíslo + + + + Exponent notation + Notace exponentu + + + + Hex blob + Å estnáctkový blob + + + + Hex number + Å estnáctkové Äíslo + + + + Apple NSDate to date + Apple NSDate na datum + + + + Java epoch (milliseconds) to date + + + + + .NET DateTime.Ticks to date + + + + + Julian day to date + Juliánský den na datum + + + + Unix epoch to local time + + + + + Date as dd/mm/yyyy + Datum jako dd/mm/yyyy + + + + Lower case + Malá písmena + + + + Custom display format must contain a function call applied to %1 + + + + + Error in custom display format. Message from database engine: + +%1 + + + + + Custom display format must return only one column but it returned %1. + + + + + Octal number + OsmiÄkové Äíslo + + + + Round number + Zaokrouhlit Äíslo + + + + Unix epoch to date + Unix epoch na datum + + + + Upper case + Velká písmena + + + + Windows DATE to date + Windows DATE na datum + + + + Custom + Vlastní + + + + CondFormatManager + + + Conditional Format Manager + + + + + This dialog allows creating and editing conditional formats. Each cell style will be selected by the first accomplished condition for that cell data. Conditional formats can be moved up and down, where those at higher rows take precedence over those at lower. Syntax for conditions is the same as for filters and an empty condition applies to all values. + + + + + Add new conditional format + + + + + &Add + PÅ™idat + + + + Remove selected conditional format + + + + + &Remove + Odstranit + + + + Move selected conditional format up + + + + + Move &up + + + + + Move selected conditional format down + + + + + Move &down + + + + + Foreground + PopÅ™edí + + + + Text color + Barva textu + + + + Background + Pozadí + + + + Background color + Barva pozadí + + + + Font + Font + + + + Size + Velikost + + + + Bold + TuÄný + + + + Italic + Kurzíva + + + + Underline + Podtržený + + + + Alignment + + + + + Condition + + + + + + Click to select color + + + + + Are you sure you want to clear all the conditional formats of this field? + + + + + DBBrowserDB + + + Please specify the database name under which you want to access the attached database + Prosím specifikujte jméno databáze, pod kterým chcete pÅ™istupovat k pÅ™ipojené databázi + + + + Invalid file format + Neplatný formát souboru + + + + Do you want to save the changes made to the database file %1? + Chcete uložit zmÄ›ny provedené do databázového souboru %1? + + + + Exporting database to SQL file... + Exportuji databázi do souboru SQL... + + + + + Cancel + ZruÅ¡it + + + + Executing SQL... + Provádím SQL... + + + + Action cancelled. + Akce zruÅ¡ena. + + + + This database has already been attached. Its schema name is '%1'. + + + + + Do you really want to close this temporary database? All data will be lost. + + + + + Database didn't close correctly, probably still busy + + + + + The database is currently busy: + Databáze je právÄ› zaneprázdnÄ›ná: + + + + Do you want to abort that other operation? + + + + + + No database file opened + + + + + + Error in statement #%1: %2. +Aborting execution%3. + + + + + + and rolling back + + + + + didn't receive any output from %1 + + + + + could not execute command: %1 + + + + + Cannot delete this object + Nemohu smazat tento objekt + + + + Cannot set data on this object + + + + + + A table with the name '%1' already exists in schema '%2'. + + + + + No table with name '%1' exists in schema '%2'. + + + + + + Cannot find column %1. + + + + + Creating savepoint failed. DB says: %1 + + + + + Renaming the column failed. DB says: +%1 + + + + + + Releasing savepoint failed. DB says: %1 + + + + + Creating new table failed. DB says: %1 + + + + + Copying data to new table failed. DB says: +%1 + + + + + Deleting old table failed. DB says: %1 + + + + + Error renaming table '%1' to '%2'. +Message from database engine: +%3 + + + + + could not get list of db objects: %1 + + + + + Restoring some of the objects associated with this table failed. This is most likely because some column names changed. Here's the SQL statement which you might want to fix and execute manually: + + + + + + + could not get list of databases: %1 + + + + + Error loading extension: %1 + Chyba pÅ™i naÄítání přípony: %1 + + + + could not get column information + + + + + Error setting pragma %1 to %2: %3 + Chyba pÅ™i nastavování pragma %1 na %2: %3 + + + + File not found. + Soubor nebyl nalezen. + + + + DbStructureModel + + + Name + Název + + + + Object + Objekt + + + + Type + Typ + + + + Schema + Schéma + + + + Database + Databáze + + + + Browsables + + + + + All + VÅ¡echny + + + + Temporary + DoÄasný + + + + Tables (%1) + Tabulky (%1) + + + + Indices (%1) + Indexy (%1) + + + + Views (%1) + Pohledy (%1) + + + + Triggers (%1) + Triggery (%1) + + + + EditDialog + + + Edit database cell + Upravit buňku databáze + + + + Mode: + Mód: + + + + + Image + Obrázek + + + + Set as &NULL + Nastavit na &NULL + + + + Apply data to cell + + + + + This button saves the changes performed in the cell editor to the database cell. + + + + + Apply + Provést + + + + Text + Text + + + + This is the list of supported modes for the cell editor. Choose a mode for viewing or editing the data of the current cell. + + + + + RTL Text + + + + + Binary + Binární + + + + JSON + + + + + XML + XML + + + + + Automatically adjust the editor mode to the loaded data type + + + + + This checkable button enables or disables the automatic switching of the editor mode. When a new cell is selected or new data is imported and the automatic switching is enabled, the mode adjusts to the detected data type. You can then change the editor mode manually. If you want to keep this manually switched mode while moving through the cells, switch the button off. + + + + + Auto-switch + + + + + The text editor modes let you edit plain text, as well as JSON or XML data with syntax highlighting, automatic formatting and validation before saving. + +Errors are indicated with a red squiggle underline. + + + + + This Qt editor is used for right-to-left scripts, which are not supported by the default Text editor. The presence of right-to-left characters is detected and this editor mode is automatically selected. + + + + + Open preview dialog for printing the data currently stored in the cell + + + + + Auto-format: pretty print on loading, compact on saving. + + + + + When enabled, the auto-format feature formats the data on loading, breaking the text in lines and indenting it for maximum readability. On data saving, the auto-format feature compacts the data removing end of lines, and unnecessary whitespace. + + + + + Word Wrap + + + + + Wrap lines on word boundaries + + + + + + Open in default application or browser + + + + + Open in application + + + + + The value is interpreted as a file or URL and opened in the default application or web browser. + + + + + Save file reference... + + + + + Save reference to file + + + + + + Open in external application + + + + + Autoformat + + + + + &Export... + + + + + + &Import... + + + + + + Import from file + Importovat ze souboru + + + + + Opens a file dialog used to import any kind of data to this database cell. + + + + + Export to file + Exportovat do souboru + + + + Opens a file dialog used to export the contents of this database cell to a file. + + + + + Erases the contents of the cell + Vymazat obsah buňky + + + + This area displays information about the data present in this database cell + Tato oblast zobrazuje informace o aktuálních datech v této databázové buňce + + + + Type of data currently in cell + SouÄasný typ dat v buňce + + + + Size of data currently in table + SouÄasná velikost dat v tabulce + + + + + Print... + Tisk... + + + + Open preview dialog for printing displayed image + + + + + + Ctrl+P + + + + + Open preview dialog for printing displayed text + + + + + Copy Hex and ASCII + + + + + Copy selected hexadecimal and ASCII columns to the clipboard + + + + + Ctrl+Shift+C + + + + + Choose a filename to export data + Vyberte název souboru pro export dat + + + + Type of data currently in cell: %1 Image + Aktuální typ dat v buňce: %1 Obrázek + + + + %1x%2 pixel(s) + %1x%2 pixel/ů + + + + Type of data currently in cell: NULL + Aktuální typ dat v buňce: NULL + + + + + Type of data currently in cell: Text / Numeric + Aktuální typ dat v buňce: Text / Číselný + + + + + Image data can't be viewed in this mode. + + + + + + Try switching to Image or Binary mode. + + + + + + Binary data can't be viewed in this mode. + + + + + + Try switching to Binary mode. + Zkuste pÅ™epnout do binárního režimu. + + + + Couldn't save file: %1. + + + + + The data has been saved to a temporary file and has been opened with the default application. You can now edit the file and, when you are ready, apply the saved new data to the cell editor or cancel any changes. + + + + + + Image files (%1) + Soubory obrázků (%1) + + + + Binary files (*.bin) + Binární soubory (*.bin) + + + + Choose a file to import + Vyberte soubor pro import + + + + %1 Image + %1 Obrázek + + + + Invalid data for this mode + Neplatná data pro tento režim + + + + The cell contains invalid %1 data. Reason: %2. Do you really want to apply it to the cell? + + + + + + + %n character(s) + + %n znak + %n znaků + + + + + + Type of data currently in cell: Valid JSON + + + + + Type of data currently in cell: Binary + Aktuální typ dat v buňce: Binární + + + + + %n byte(s) + + %n byte + %n bytů + + + + + + EditIndexDialog + + + &Name + Název + + + + Order + Řadit + + + + &Table + Tabulka + + + + Edit Index Schema + Upravit schéma indexů + + + + &Unique + Unikátní + + + + For restricting the index to only a part of the table you can specify a WHERE clause here that selects the part of the table that should be indexed + + + + + Partial inde&x clause + + + + + Colu&mns + Sloupce + + + + Table column + Sloupec tabulky + + + + Type + Typ + + + + Add a new expression column to the index. Expression columns contain SQL expression rather than column names. + + + + + Index column + Index sloupce + + + + Deleting the old index failed: +%1 + + + + + Creating the index failed: +%1 + Vytváření indexu se nezdaÅ™ilo: +%1 + + + + EditTableDialog + + + Edit table definition + Upravit definici tabulky + + + + Table + Tabulka + + + + Advanced + PokroÄilé + + + + Make this a 'WITHOUT rowid' table. Setting this flag requires a field of type INTEGER with the primary key flag set and the auto increment flag unset. + + + + + Without Rowid + Bez id řádku + + + + Database sche&ma + + + + + Fields + Pole + + + + Add + + + + + Remove + + + + + Move to top + + + + + Move up + + + + + Move down + + + + + Move to bottom + + + + + + Name + Název + + + + + Type + Typ + + + + NN + NN + + + + Not null + Není null + + + + PK + PK + + + + Primary key + Primární klÃ­Ä + + + + AI + AI + + + + Autoincrement + Autoincrement + + + + U + U + + + + + + Unique + Unikátní + + + + Default + Výchozí + + + + Default value + Výchozí hodnota + + + + + + Check + Zkontrolovat + + + + Check constraint + Zkontrolovat omezení + + + + Collation + + + + + + + Foreign Key + Cizí klÃ­Ä + + + + Constraints + + + + + Add constraint + + + + + Remove constraint + + + + + Columns + Sloupce + + + + SQL + + + + + <html><head/><body><p><span style=" font-weight:600; color:#ff0000;">Warning: </span>There is something with this table definition that our parser doesn't fully understand. Modifying and saving this table might result in problems.</p></body></html> + + + + + + Primary Key + + + + + Add a primary key constraint + + + + + Add a foreign key constraint + + + + + Add a unique constraint + + + + + Add a check constraint + + + + + + There can only be one primary key for each table. Please modify the existing primary key instead. + + + + + Error creating table. Message from database engine: +%1 + Chyba pÅ™i vytváření tabulky. Zpráva z databáze: +%1 + + + + There already is a field with that name. Please rename it first or choose a different name for this field. + Pole s tímto názvem již existuje. Nejdříve jej pÅ™ejmenujte, nebo vyberte pro toto pole jiný název, prosím. + + + + This column is referenced in a foreign key in table %1 and thus its name cannot be changed. + Tento sloupec je použit jako cizí klÃ­Ä v tabulce %1 a jeho název nemůže být zmÄ›nÄ›n. + + + + There is at least one row with this field set to NULL. This makes it impossible to set this flag. Please change the table data first. + Existuje alespoň jeden řádek, který je nastaven na NULL. Z tohoto důvodu je nemožné nastavit tento flag. Nejprve změňte data v tabulce, prosím. + + + + There is at least one row with a non-integer value in this field. This makes it impossible to set the AI flag. Please change the table data first. + Existuje alespoň jeden řádek, který neobsahuje hodnotu typu integer. Z tohoto důvodu je nemožné nastavit AI flag. Nejprve změňte data v tabulce, prosím. + + + + Column '%1' has duplicate data. + + + + + + This makes it impossible to enable the 'Unique' flag. Please remove the duplicate data, which will allow the 'Unique' flag to then be enabled. + + + + + Are you sure you want to delete the field '%1'? +All data currently stored in this field will be lost. + + + + + Please add a field which meets the following criteria before setting the without rowid flag: + - Primary key flag set + - Auto increment disabled + + + + + ExportDataDialog + + + Export data as CSV + Exportovat data do CSV + + + + Tab&le(s) + Tabulka/ky + + + + Colu&mn names in first line + Názvy sloupců v prvním řádku + + + + Fie&ld separator + OddÄ›lovaÄ pole + + + + , + , + + + + ; + ; + + + + Tab + Karta + + + + | + | + + + + + + Other + Ostatní + + + + &Quote character + &Uvozovka + + + + " + " + + + + ' + ' + + + + New line characters + Znaky nového řádku + + + + Windows: CR+LF (\r\n) + Windows: CR+LF (\r\n) + + + + Unix: LF (\n) + Unix: LF (\n) + + + + Pretty print + Pretty print + + + + + Could not open output file: %1 + Nemohu otevřít výstupní soubor: %1 + + + + + Choose a filename to export data + Vyberte název souboru pro export dat + + + + Export data as JSON + Exportovat data jako JSON + + + + exporting CSV + exportování CSV + + + + exporting JSON + exportování JSONu + + + + Please select at least 1 table. + Vyberte alespoň jednu tabulku, prosím. + + + + Choose a directory + Vybrat složku + + + + Export completed. + Export byl dokonÄen. + + + + ExportSqlDialog + + + Export SQL... + Exportovat SQL... + + + + Tab&le(s) + Tabulka/ky + + + + Select All + Vybrat vÅ¡e + + + + Deselect All + ZruÅ¡it výbÄ›r + + + + &Options + Volby + + + + Keep column names in INSERT INTO + Zachovat názvy sloupců v INSERT INTO + + + + Multiple rows (VALUES) per INSERT statement + Více řádků (VALUES) pro příkaz INSERT + + + + Export everything + Exportovat vÅ¡e + + + + Export data only + Exportovat pouze data + + + + Keep old schema (CREATE TABLE IF NOT EXISTS) + + + + + Overwrite old schema (DROP TABLE, then CREATE TABLE) + PÅ™epsat staré schéma (DROP TABLE, then CREATE TABLE) + + + + Export schema only + Exportovat pouze schéma + + + + Please select at least one table. + Vyberte prosím aspoň jednu tabulku. + + + + Choose a filename to export + Vyberte název souboru pro export + + + + Export completed. + Export dokonÄen. + + + + Export cancelled or failed. + Export byl zruÅ¡en nebo selhal. + + + + ExtendedScintilla + + + + Ctrl+H + + + + + Ctrl+F + + + + + + Ctrl+P + + + + + Find... + + + + + Find and Replace... + Najít a nahradit... + + + + Print... + Tisk... + + + + ExtendedTableWidget + + + Use as Exact Filter + + + + + Containing + + + + + Not containing + + + + + Not equal to + + + + + Greater than + VÄ›tší než + + + + Less than + Menší než + + + + Greater or equal + VÄ›tší nebo rovno + + + + Less or equal + Menší nebo rovno + + + + Between this and... + Mezi tímto a... + + + + Regular expression + + + + + Edit Conditional Formats... + + + + + Set to NULL + Nastavit na NULL + + + + Copy + Kopírovat + + + + Copy with Headers + Kopírovat s hlaviÄkami + + + + Copy as SQL + Kopírovat jako SQL + + + + Paste + Vložit + + + + Print... + Tisk... + + + + Use in Filter Expression + + + + + Alt+Del + + + + + Ctrl+Shift+C + + + + + Ctrl+Alt+C + + + + + The content of the clipboard is bigger than the range selected. +Do you want to insert it anyway? + + + + + <p>Not all data has been loaded. <b>Do you want to load all data before selecting all the rows?</b><p><p>Answering <b>No</b> means that no more data will be loaded and the selection will not be performed.<br/>Answering <b>Yes</b> might take some time while the data is loaded but the selection will be complete.</p>Warning: Loading all the data might require a great amount of memory for big tables. + + + + + Cannot set selection to NULL. Column %1 has a NOT NULL constraint. + + + + + FileExtensionManager + + + File Extension Manager + + + + + &Up + Nahoru + + + + &Down + Dolů + + + + &Add + PÅ™idat + + + + &Remove + Odstranit + + + + + Description + Popis + + + + Extensions + Rozšíření + + + + *.extension + *.extension + + + + FilterLineEdit + + + Filter + Filtr + + + + These input fields allow you to perform quick filters in the currently selected table. +By default, the rows containing the input text are filtered out. +The following operators are also supported: +% Wildcard +> Greater than +< Less than +>= Equal to or greater +<= Equal to or less += Equal to: exact match +<> Unequal: exact inverse match +x~y Range: values between x and y +/regexp/ Values matching the regular expression + + + + + Clear All Conditional Formats + + + + + Use for Conditional Format + + + + + Edit Conditional Formats... + + + + + Set Filter Expression + + + + + What's This? + Co je toto? + + + + Is NULL + je NULL + + + + Is not NULL + Není NULL + + + + Is empty + Je prázdný + + + + Is not empty + Není prázdný + + + + Not containing... + + + + + Equal to... + Rovný k... + + + + Not equal to... + Není rovný k... + + + + Greater than... + VÄ›tší než... + + + + Less than... + Menší než... + + + + Greater or equal... + VÄ›tší nebo rovno... + + + + Less or equal... + Menší nebo rovno... + + + + In range... + V rozmezí... + + + + Regular expression... + + + + + FindReplaceDialog + + + Find and Replace + Najít a nahradit + + + + Fi&nd text: + Najít text + + + + Re&place with: + Nahradit s: + + + + Match &exact case + + + + + Match &only whole words + + + + + When enabled, the search continues from the other end when it reaches one end of the page + + + + + &Wrap around + + + + + When set, the search goes backwards from cursor position, otherwise it goes forward + + + + + Search &backwards + + + + + <html><head/><body><p>When checked, the pattern to find is searched only in the current selection.</p></body></html> + + + + + &Selection only + + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + + + + + Use regular e&xpressions + + + + + Find the next occurrence from the cursor position and in the direction set by "Search backwards" + + + + + &Find Next + Najít další + + + + F3 + + + + + &Replace + Nahradit + + + + Highlight all the occurrences of the text in the page + + + + + F&ind All + Najít vÅ¡e + + + + Replace all the occurrences of the text in the page + + + + + Replace &All + Nahradit vÅ¡e + + + + The searched text was not found + Hledaný text nebyl nalezen + + + + The searched text was not found. + Hledaný text nebyl nalezen. + + + + The searched text was found one time. + Hledaný text byl nalezen jednou. + + + + The searched text was found %1 times. + Hledaný text byl nalezen %1 krát. + + + + The searched text was replaced one time. + Hledaný text byl nahrazen jednou. + + + + The searched text was replaced %1 times. + Hledaný text byl nahrazen %1 krát. + + + + ForeignKeyEditor + + + &Reset + + + + + Foreign key clauses (ON UPDATE, ON DELETE etc.) + + + + + ImportCsvDialog + + + Import CSV file + Importovat soubor CSV + + + + Table na&me + Název tabulky + + + + &Column names in first line + &Názvy sloupců v prvním řádku + + + + Field &separator + OddÄ›lovaÄ pole + + + + , + , + + + + ; + ; + + + + + Tab + Karta + + + + | + | + + + + Other + Ostatní + + + + &Quote character + &Uvozovka + + + + + Other (printable) + + + + + + Other (code) + + + + + " + " + + + + ' + ' + + + + &Encoding + Kódování + + + + UTF-8 + UTF-8 + + + + UTF-16 + UTF-16 + + + + ISO-8859-1 + ISO-8859-1 + + + + Trim fields? + OÅ™ezat pole? + + + + Separate tables + OddÄ›lit tabulky + + + + Advanced + PokroÄilé + + + + When importing an empty value from the CSV file into an existing table with a default value for this column, that default value is inserted. Activate this option to insert an empty value instead. + + + + + Ignore default &values + Ignorovat výchozí hodnoty + + + + Activate this option to stop the import when trying to import an empty value into a NOT NULL column without a default value. + + + + + Fail on missing values + + + + + Disable data type detection + + + + + Disable the automatic data type detection when creating a new table. + + + + + When importing into an existing table with a primary key, unique constraints or a unique index there is a chance for a conflict. This option allows you to select a strategy for that case: By default the import is aborted and rolled back but you can also choose to ignore and not import conflicting rows or to replace the existing row in the table. + + + + + Abort import + + + + + Ignore row + + + + + Replace existing row + + + + + Conflict strategy + + + + + + Deselect All + ZruÅ¡it celý výbÄ›r + + + + Match Similar + + + + + Select All + Vybrat vÅ¡e + + + + There is already a table named '%1' and an import into an existing table is only possible if the number of columns match. + + + + + There is already a table named '%1'. Do you want to import the data into it? + + + + + Creating restore point failed: %1 + Vytváření bodu obnovy selhalo: %1 + + + + Creating the table failed: %1 + Vytváření tabulky selhalo: %1 + + + + importing CSV + importování CSV + + + + Importing the file '%1' took %2ms. Of this %3ms were spent in the row function. + + + + + Inserting row failed: %1 + Vkládání řádku selhalo: %1 + + + + MainWindow + + + DB Browser for SQLite + DB Browser pro SQLite + + + + toolBar1 + toolBar1 + + + + Opens the SQLCipher FAQ in a browser window + OtevÅ™e SQLCipher FAQ v oknÄ› prohlížeÄe + + + + Export one or more table(s) to a JSON file + Export jedné nebo více tabulek do souboru JSON + + + + &File + &Soubor + + + + &Import + &Import + + + + &Export + &Export + + + + Open an existing database file in read only mode + + + + + &Edit + Upravit + + + + &View + Pohled + + + + &Help + Pomoc + + + + DB Toolbar + Panel nástrojů DB + + + + Edit Database &Cell + Upravit databázovou buňku + + + + DB Sche&ma + DB Schéma + + + + + Execute SQL + This has to be equal to the tab title in all the main tabs + ProveÄte SQL + + + + + Execute current line + Provést aktuální řádek + + + + This button executes the SQL statement present in the current editor line + + + + + Shift+F5 + + + + + Sa&ve Project + Ulo&žit Projekt + + + + User + Uživatel + + + + + Database Structure + This has to be equal to the tab title in all the main tabs + Databázová Struktura + + + + + Browse Data + This has to be equal to the tab title in all the main tabs + Prohlížet data + + + + + Edit Pragmas + This has to be equal to the tab title in all the main tabs + Editovat Pragma + + + + Application + Aplikace + + + + &Clear + &VyÄistit + + + + &New Database... + Nová databáze... + + + + + Create a new database file + VytvoÅ™it nový databázový soubor + + + + This option is used to create a new database file. + Tato volba slouží k vytvoÅ™ení nového souboru databáze. + + + + Ctrl+N + + + + + + &Open Database... + Otevřít databázi... + + + + + + + + Open an existing database file + Otevřít existující soubor databáze + + + + + + This option is used to open an existing database file. + Tato volba slouží k otevÅ™ení existujícího souboru databáze. + + + + Ctrl+O + + + + + &Close Database + &Zavřít databázi + + + + This button closes the connection to the currently open database file + + + + + + Ctrl+W + + + + + + Revert database to last saved state + Vrátit databázi do posledního uloženého stavu + + + + This option is used to revert the current database file to its last saved state. All changes made since the last save operation are lost. + + + + + + Write changes to the database file + Zapsat zmÄ›ny do souboru databáze + + + + This option is used to save changes to the database file. + Tato volba slouží k uložení provedených zmÄ›n do souboru databáze. + + + + Ctrl+S + + + + + Compact &Database... + + + + + Compact the database file, removing space wasted by deleted records + + + + + + Compact the database file, removing space wasted by deleted records. + + + + + E&xit + Exit + + + + Ctrl+Q + + + + + Import data from an .sql dump text file into a new or existing database. + Importovat data z textového souboru .sql do nové nebo již existující databáze. + + + + This option lets you import data from an .sql dump text file into a new or existing database. SQL dump files can be created on most database engines, including MySQL and PostgreSQL. + + + + + Open a wizard that lets you import data from a comma separated text file into a database table. + OtevÅ™e průzkumníka, kde můžete importovat data z textového souboru, kde jsou data oddÄ›lena Äárkami, do databázové tabulky. + + + + Open a wizard that lets you import data from a comma separated text file into a database table. CSV files can be created on most database and spreadsheet applications. + + + + + Export a database to a .sql dump text file. + Exportovat databázi do textového souboru .sql + + + + This option lets you export a database to a .sql dump text file. SQL dump files contain all data necessary to recreate the database on most database engines, including MySQL and PostgreSQL. + + + + + Export a database table as a comma separated text file. + Exportovat databázovou tabulku jako textový soubor oddÄ›lený Äárkami. + + + + Export a database table as a comma separated text file, ready to be imported into other database or spreadsheet applications. + + + + + Open the Create Table wizard, where it is possible to define the name and fields for a new table in the database + + + + + + Delete Table + Smazat Tabulku + + + + Open the Delete Table wizard, where you can select a database table to be dropped. + + + + + Open the Modify Table wizard, where it is possible to rename an existing table. It is also possible to add or delete fields form a table, as well as modify field names and types. + + + + + Open the Create Index wizard, where it is possible to define a new index on an existing database table. + + + + + &Preferences... + &Možnosti... + + + + + Open the preferences window. + Otevřít okno s možnostmi. + + + + &DB Toolbar + Panel nástrojů DB + + + + Shows or hides the Database toolbar. + Zobrazí nebo skryje liÅ¡tu Databáze. + + + + Shift+F1 + + + + + Open SQL file(s) + + + + + This button opens files containing SQL statements and loads them in new editor tabs + + + + + Execute line + + + + + &Wiki + Wiki + + + + F1 + + + + + Bug &Report... + Nahlásit chybu... + + + + Feature Re&quest... + Požadavek na funkci... + + + + Web&site + Webová stránka + + + + &Donate on Patreon... + PÅ™ispÄ›t na Patreon... + + + + This button lets you save all the settings associated to the open DB to a DB Browser for SQLite project file + + + + + This button lets you open a DB Browser for SQLite project file + + + + + Browse Table + + + + + &Attach Database... + PÅ™iložit databázi... + + + + + Add another database file to the current database connection + + + + + This button lets you add another database file to the current database connection + + + + + &Set Encryption... + Nastavit Å¡ifrování... + + + + SQLCipher &FAQ + SQLCipher FAQ + + + + Table(&s) to JSON... + Tabulka(ky) do JSONu... + + + + Open Data&base Read Only... + + + + + Ctrl+Shift+O + + + + + Save results + Uložit výsledky + + + + Save the results view + + + + + This button lets you save the results of the last executed query + + + + + + Find text in SQL editor + Najít text v SQL editoru + + + + Find + + + + + This button opens the search bar of the editor + + + + + Ctrl+F + + + + + + Find or replace text in SQL editor + Najít a nahradit text v SQL editoru + + + + Find or replace + + + + + This button opens the find/replace dialog for the current editor tab + + + + + Ctrl+H + + + + + Export to &CSV + Export do CSV + + + + Save as &view + Uložit jako pohled + + + + Save as view + Uložit jako pohled + + + + Shows or hides the Project toolbar. + Zobrazit nebo skrýt liÅ¡tu projektu + + + + Extra DB Toolbar + Extra DB Toolbar + + + + New In-&Memory Database + + + + + Drag && Drop Qualified Names + + + + + + Use qualified names (e.g. "Table"."Field") when dragging the objects and dropping them into the editor + + + + + Drag && Drop Enquoted Names + + + + + + Use escaped identifiers (e.g. "Table1") when dragging the objects and dropping them into the editor + + + + + &Integrity Check + + + + + Runs the integrity_check pragma over the opened database and returns the results in the Execute SQL tab. This pragma does an integrity check of the entire database. + + + + + &Foreign-Key Check + + + + + Runs the foreign_key_check pragma over the opened database and returns the results in the Execute SQL tab + + + + + &Quick Integrity Check + + + + + Run a quick integrity check over the open DB + + + + + Runs the quick_check pragma over the opened database and returns the results in the Execute SQL tab. This command does most of the checking of PRAGMA integrity_check but runs much faster. + + + + + &Optimize + + + + + Attempt to optimize the database + + + + + Runs the optimize pragma over the opened database. This pragma might perform optimizations that will improve the performance of future queries. + + + + + + Print + Tisk + + + + Print text from current SQL editor tab + + + + + Open a dialog for printing the text in the current SQL editor tab + + + + + Print the structure of the opened database + + + + + Open a dialog for printing the structure of the opened database + + + + + &Save Project As... + + + + + + + Save the project in a file selected in a dialog + + + + + Save A&ll + + + + + + + Save DB file, project file and opened SQL files + + + + + Ctrl+Shift+S + + + + + &Recently opened + &Nedávno otevÅ™ené + + + + Open &tab + Otevřít kartu + + + + Ctrl+T + + + + + This is the structure of the opened database. +You can drag SQL statements from an object row and drop them into other applications or into another instance of 'DB Browser for SQLite'. + + + + + + Un/comment block of SQL code + + + + + Un/comment block + + + + + Comment or uncomment current line or selected block of code + + + + + Comment or uncomment the selected lines or the current line, when there is no selection. All the block is toggled according to the first line. + + + + + Ctrl+/ + + + + + Stop SQL execution + + + + + Stop execution + + + + + Stop the currently running SQL script + + + + + Warning: this pragma is not readable and this value has been inferred. Writing the pragma might overwrite a redefined LIKE provided by an SQLite extension. + + + + + &Tools + Nástroje + + + + SQL &Log + SQL &Log + + + + Show S&QL submitted by + + + + + Error Log + + + + + This button clears the contents of the SQL logs + + + + + This panel lets you examine a log of all SQL commands issued by the application or by yourself + + + + + &Plot + + + + + This is the structure of the opened database. +You can drag multiple object names from the Name column and drop them into the SQL editor and you can adjust the properties of the dropped names using the context menu. This would help you in composing SQL statements. +You can drag SQL statements from the Schema column and drop them into the SQL editor or into other applications. + + + + + + &Remote + Vzdálené + + + + + Project Toolbar + + + + + Extra DB toolbar + Extra DB toolbar + + + + + + Close the current database file + + + + + Ctrl+F4 + + + + + &Revert Changes + Vrátit ZmÄ›ny + + + + &Write Changes + Zapsat ZmÄ›ny + + + + &Database from SQL file... + Databáze z SQL souboru... + + + + &Table from CSV file... + Tabulka ze souboru CSV... + + + + &Database to SQL file... + Databáze do souboru SQL... + + + + &Table(s) as CSV file... + Tabulka/ky jako soubor CSV... + + + + &Create Table... + VytvoÅ™it Tabulku... + + + + &Delete Table... + Smazat Tabulku... + + + + &Modify Table... + Upravit Tabulku... + + + + Create &Index... + VytvoÅ™it Index... + + + + W&hat's This? + Co je toto? + + + + &About + O + + + + This button opens a new tab for the SQL editor + + + + + &Execute SQL + &Provést příkaz SQL + + + + Execute all/selected SQL + Provést vÅ¡echny/vybrané SQL + + + + This button executes the currently selected SQL statements. If no text is selected, all SQL statements are executed. + + + + + + + Save SQL file + Uložit SQL soubor + + + + &Load Extension... + NaÄíst rozšíření... + + + + Ctrl+E + + + + + Export as CSV file + Exportovat jako soubor CSV + + + + Export table as comma separated values file + Exportovat tabulku do souboru jako hodnoty oddÄ›lené Äárkami + + + + + Save the current session to a file + Uložit aktuální session do souboru + + + + Open &Project... + Otevřít projekt... + + + + + Load a working session from a file + + + + + + Save SQL file as + Uložit soubor SQL jako + + + + This button saves the content of the current SQL editor tab to a file + + + + + &Browse Table + &Prohlížet Tabulku + + + + Copy Create statement + Kopírovat příkaz Create + + + + Copy the CREATE statement of the item to the clipboard + Zkopírovat do schránky příkaz CREATE + + + + Ctrl+Return + + + + + Ctrl+L + + + + + + Ctrl+P + + + + + Ctrl+D + + + + + Ctrl+I + + + + + Encrypted + Å ifrováno + + + + Read only + Pouze pro Ätení + + + + Database file is read only. Editing the database is disabled. + Soubor databáze je urÄen pouze pro Ätení. Úprava databáze je zakázána. + + + + Database encoding + Kódování databáze + + + + Database is encrypted using SQLCipher + Databáze je Å¡ifrována pÅ™es SQLCipher + + + + + Choose a database file + Vyberte soubor databáze + + + + + + Choose a filename to save under + Vyberte název souboru pro uložení + + + + Error while saving the database file. This means that not all changes to the database were saved. You need to resolve the following error first. + +%1 + + + + + Are you sure you want to undo all changes made to the database file '%1' since the last save? + Jste si jisti, že chcete vrátit zpÄ›t vÅ¡echny provedené zmÄ›ny v databázi '%1' od posledního uložení? + + + + Choose a file to import + Vyberte soubor pro import + + + + &%1 %2%3 + &%1 %2%3 + + + + (read only) + + + + + Open Database or Project + + + + + Attach Database... + + + + + Import CSV file(s)... + + + + + Select the action to apply to the dropped file(s). <br/>Note: only 'Import' will process more than one file. + + + + + + + + + Do you want to save the changes made to SQL tabs in the project file '%1'? + + + + + Text files(*.sql *.txt);;All files(*) + Textové soubory(*.sql *.txt);;VÅ¡echny soubory(*) + + + + Do you want to create a new database file to hold the imported data? +If you answer no we will attempt to import the data in the SQL file to the current database. + + + + + You are still executing SQL statements. Closing the database now will stop their execution, possibly leaving the database in an inconsistent state. Are you sure you want to close the database? + + + + + Do you want to save the changes made to the project file '%1'? + + + + + File %1 already exists. Please choose a different name. + Soubor %1 již existuje. Vyberte jiný název, prosím. + + + + Error importing data: %1 + Chyba pÅ™i importu dat: %1 + + + + Import completed. + Import dokonÄen. + + + + Delete View + Smazat Pohled + + + + Modify View + + + + + Delete Trigger + Smazat Spoušť + + + + Modify Trigger + + + + + Delete Index + Smazat Index + + + + Modify Index + ZmÄ›nit Index + + + + Modify Table + ZmÄ›nit tabulku + + + + Do you want to save the changes made to SQL tabs in a new project file? + + + + + Do you want to save the changes made to the SQL file %1? + + + + + The statements in this tab are still executing. Closing the tab will stop the execution. This might leave the database in an inconsistent state. Are you sure you want to close the tab? + + + + + Could not find resource file: %1 + + + + + Choose a project file to open + Vybrat soubor projektu k otevÅ™ení + + + + This project file is using an old file format because it was created using DB Browser for SQLite version 3.10 or lower. Loading this file format is still fully supported but we advice you to convert all your project files to the new file format because support for older formats might be dropped at some point in the future. You can convert your files by simply opening and re-saving them. + + + + + Could not open project file for writing. +Reason: %1 + + + + + Busy (%1) + + + + + Setting PRAGMA values will commit your current transaction. +Are you sure? + + + + + Window Layout + + + + + Reset Window Layout + + + + + Alt+0 + + + + + Simplify Window Layout + + + + + Shift+Alt+0 + + + + + Dock Windows at Bottom + + + + + Dock Windows at Left Side + + + + + Dock Windows at Top + + + + + The database is currenctly busy. + + + + + Click here to interrupt the currently running query. + + + + + Could not open database file. +Reason: %1 + + + + + In-Memory database + + + + + Are you sure you want to delete the table '%1'? +All data associated with the table will be lost. + + + + + Are you sure you want to delete the view '%1'? + + + + + Are you sure you want to delete the trigger '%1'? + + + + + Are you sure you want to delete the index '%1'? + + + + + Error: could not delete the table. + + + + + Error: could not delete the view. + + + + + Error: could not delete the trigger. + + + + + Error: could not delete the index. + + + + + Message from database engine: +%1 + + + + + Editing the table requires to save all pending changes now. +Are you sure you want to save the database? + + + + + Edit View %1 + + + + + Edit Trigger %1 + + + + + You are already executing SQL statements. Do you want to stop them in order to execute the current statements instead? Note that this might leave the database in an inconsistent state. + + + + + -- EXECUTING SELECTION IN '%1' +-- + + + + + -- EXECUTING LINE IN '%1' +-- + + + + + -- EXECUTING ALL IN '%1' +-- + + + + + + At line %1: + + + + + Result: %1 + + + + + Result: %2 + + + + + Setting PRAGMA values or vacuuming will commit your current transaction. +Are you sure? + + + + + Opened '%1' in read-only mode from recent file list + + + + + Opened '%1' from recent file list + + + + + This action will open a new SQL tab with the following statements for you to edit and run: + + + + + Rename Tab + + + + + Duplicate Tab + + + + + Close Tab + + + + + Opening '%1'... + + + + + There was an error opening '%1'... + + + + + Value is not a valid URL or filename: %1 + + + + + %1 rows returned in %2ms + + + + + Choose text files + Vybrat textové soubory + + + + Import completed. Some foreign key constraints are violated. Please fix them before saving. + + + + + Select SQL file to open + Vyberte soubor SQL k otevÅ™ení + + + + Select file name + Vyberte název souboru + + + + Select extension file + Vyberte soubor s rozšířením + + + + Extension successfully loaded. + Rozšíření bylo úspěšnÄ› naÄteno. + + + + Error loading extension: %1 + Chyba pÅ™i naÄítání přípony: %1 + + + + + Don't show again + Znovu nezobrazovat + + + + New version available. + Dostupná nová verze. + + + + A new DB Browser for SQLite version is available (%1.%2.%3).<br/><br/>Please download at <a href='%4'>%4</a>. + Nová verze DB Browseru pro SQLite je nyní dostupná (%1.%2.%3).<br/><br/>StáhnÄ›te ji prosím na <a href='%4'>%4</a>. + + + + Project saved to file '%1' + + + + + Collation needed! Proceed? + Je potÅ™eba provést collation! Potvrdit? + + + + A table in this database requires a special collation function '%1' that this application can't provide without further knowledge. +If you choose to proceed, be aware bad things can happen to your database. +Create a backup! + + + + + creating collation + + + + + Set a new name for the SQL tab. Use the '&&' character to allow using the following character as a keyboard shortcut. + + + + + Please specify the view name + Specifikujte název pohledu, prosím + + + + There is already an object with that name. Please choose a different name. + Objekt s tímto názvem již existuje. Vyberte jiný název, prosím. + + + + View successfully created. + Pohled byl úspěšnÄ› vytvoÅ™en. + + + + Error creating view: %1 + Chyba pÅ™i vytváření pohledu: %1 + + + + This action will open a new SQL tab for running: + + + + + Press Help for opening the corresponding SQLite reference page. + + + + + DB Browser for SQLite project file (*.sqbpro) + DB Browser pro SQLite project file (*.sqbpro) + + + + Error checking foreign keys after table modification. The changes will be reverted. + + + + + This table did not pass a foreign-key check.<br/>You should run 'Tools | Foreign-Key Check' and fix the reported issues. + + + + + Execution finished with errors. + + + + + Execution finished without errors. + + + + + NullLineEdit + + + Set to NULL + Nastavit na NULL + + + + Alt+Del + + + + + PlotDock + + + Plot + + + + + <html><head/><body><p>This pane shows the list of columns of the currently browsed table or the just executed query. You can select the columns that you want to be used as X or Y axis for the plot pane below. The table shows detected axis type that will affect the resulting plot. For the Y axis you can only select numeric columns, but for the X axis you will be able to select:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Date/Time</span>: strings with format &quot;yyyy-MM-dd hh:mm:ss&quot; or &quot;yyyy-MM-ddThh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Date</span>: strings with format &quot;yyyy-MM-dd&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Time</span>: strings with format &quot;hh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Label</span>: other string formats. Selecting this column as X axis will produce a Bars plot with the column values as labels for the bars</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Numeric</span>: integer or real values</li></ul><p>Double-clicking the Y cells you can change the used color for that graph.</p></body></html> + + + + + Columns + Sloupce + + + + X + X + + + + Y1 + + + + + Y2 + + + + + Axis Type + + + + + Here is a plot drawn when you select the x and y values above. + +Click on points to select them in the plot and in the table. Ctrl+Click for selecting a range of points. + +Use mouse-wheel for zooming and mouse drag for changing the axis range. + +Select the axes or axes labels to drag and zoom only in that orientation. + + + + + Line type: + Typ řádku: + + + + + None + Žádná + + + + Line + Řádek + + + + StepLeft + KrokVlevo + + + + StepRight + KrokVpravo + + + + StepCenter + KrokDoprostÅ™ed + + + + Impulse + Impuls + + + + Point shape: + + + + + Cross + Kříž + + + + Plus + Plus + + + + Circle + Kruh + + + + Disc + Disk + + + + Square + ÄŒtverec + + + + Diamond + Diamand + + + + Star + HvÄ›zda + + + + Triangle + Trojúhelník + + + + TriangleInverted + ObrácenýTrojúhelník + + + + CrossSquare + + + + + PlusSquare + PlusÄŒtverec + + + + CrossCircle + + + + + PlusCircle + + + + + Peace + + + + + <html><head/><body><p>Save current plot...</p><p>File format chosen by extension (png, jpg, pdf, bmp)</p></body></html> + + + + + Save current plot... + + + + + + Load all data and redraw plot + + + + + + + Row # + Řádek # + + + + Copy + Kopírovat + + + + Print... + Tisk... + + + + Show legend + Zobrazit legendu + + + + Stacked bars + + + + + Date/Time + Datum/Äas + + + + Date + Datum + + + + Time + ÄŒas + + + + + Numeric + + + + + Label + Å títek + + + + Invalid + + + + + Load all data and redraw plot. +Warning: not all data has been fetched from the table yet due to the partial fetch mechanism. + + + + + Choose an axis color + Vyberte barvu osy + + + + Choose a filename to save under + Vyberte název souboru pro uložení + + + + PNG(*.png);;JPG(*.jpg);;PDF(*.pdf);;BMP(*.bmp);;All Files(*) + PNG(*.png);;JPG(*.jpg);;PDF(*.pdf);;BMP(*.bmp);;VÅ¡echny Soubory(*) + + + + There are curves in this plot and the selected line style can only be applied to graphs sorted by X. Either sort the table or query by X to remove curves or select one of the styles supported by curves: None or Line. + + + + + Loading all remaining data for this table took %1ms. + + + + + PreferencesDialog + + + Preferences + Možnosti + + + + &General + &Obecné + + + + Remember last location + Zapamatovat poslední umístÄ›ní + + + + Always use this location + Vždy použít toto umístÄ›ní + + + + Remember last location for session only + Pamatovat poslední umístÄ›ní pouze po dobu trvání session + + + + + + ... + ... + + + + Default &location + Výchozí &umístÄ›ní + + + + Lan&guage + Jazyk + + + + Automatic &updates + Automatické &aktualizace + + + + + + + + + + + + enabled + povoleno + + + + Show remote options + Zobrazit vzdálené možnosti + + + + &Database + &Databáze + + + + Database &encoding + Kódování &databáze + + + + Open databases with foreign keys enabled. + OtevÅ™e databázi s povolenými cizími klíÄi. + + + + &Foreign keys + &Cizí klíÄe + + + + SQ&L to execute after opening database + SQ&L k vykonání po otevÅ™ení databáze + + + + Data &Browser + ProhlížeÄ Dat + + + + Remove line breaks in schema &view + + + + + Prefetch block si&ze + + + + + Default field type + Výchozí typ pole + + + + Font + Font + + + + &Font + &Font + + + + Content + Obsah + + + + Symbol limit in cell + Maximální poÄet znaků v buňce + + + + NULL + NULL + + + + Regular + Regulární + + + + Binary + Binární + + + + Background + Pozadí + + + + Filters + Filtry + + + + Threshold for completion and calculation on selection + + + + + Show images in cell + + + + + Enable this option to show a preview of BLOBs containing image data in the cells. This can affect the performance of the data browser, however. + + + + + Escape character + + + + + Delay time (&ms) + ZpoždÄ›ní (&ms) + + + + Set the waiting time before a new filter value is applied. Can be set to 0 for disabling waiting. + + + + + &SQL + &SQL + + + + Settings name + Název možností + + + + Context + Kontext + + + + Colour + Barva + + + + Bold + TuÄný + + + + Italic + Kurzíva + + + + Underline + Podtržený + + + + Keyword + KlíÄové slovo + + + + Function + Funkce + + + + Table + Tabulka + + + + Comment + Komentář + + + + Identifier + Identifikátor + + + + String + String + + + + Current line + Aktuální řádek + + + + SQL &editor font size + velikost fontu SQL &editoru + + + + Tab size + + + + + SQL editor &font + &font SQL editoru + + + + Error indicators + + + + + Hori&zontal tiling + + + + + If enabled the SQL code editor and the result table view are shown side by side instead of one over the other. + + + + + Code co&mpletion + + + + + Toolbar style + + + + + + + + + Only display the icon + + + + + + + + + Only display the text + + + + + + + + + The text appears beside the icon + + + + + + + + + The text appears under the icon + + + + + + + + + Follow the style + + + + + DB file extensions + + + + + Manage + + + + + Main Window + + + + + Database Structure + Databázová Struktura + + + + Browse Data + Prohlížet data + + + + Execute SQL + ProveÄte SQL + + + + Edit Database Cell + + + + + When this value is changed, all the other color preferences are also set to matching colors. + + + + + Follow the desktop style + + + + + Dark style + + + + + Application style + + + + + This sets the font size for all UI elements which do not have their own font size option. + + + + + Font size + + + + + When enabled, the line breaks in the Schema column of the DB Structure tab, dock and printed output are removed. + + + + + Database structure font size + + + + + Font si&ze + Velikost písma + + + + This is the maximum number of items allowed for some computationally expensive functionalities to be enabled: +Maximum number of rows in a table for enabling the value completion based on current values in the column. +Maximum number of indexes in a selection for calculating sum and average. +Can be set to 0 for disabling the functionalities. + + + + + This is the maximum number of rows in a table for enabling the value completion based on current values in the column. +Can be set to 0 for disabling completion. + + + + + Field display + + + + + Displayed &text + + + + + + + + + + Click to set this color + + + + + Text color + Barva textu + + + + Background color + Barva pozadí + + + + Preview only (N/A) + + + + + Foreground + PopÅ™edí + + + + SQL &results font size + + + + + &Wrap lines + + + + + Never + Nikdy + + + + At word boundaries + + + + + At character boundaries + + + + + At whitespace boundaries + + + + + &Quotes for identifiers + + + + + Choose the quoting mechanism used by the application for identifiers in SQL code. + + + + + "Double quotes" - Standard SQL (recommended) + + + + + `Grave accents` - Traditional MySQL quotes + + + + + [Square brackets] - Traditional MS SQL Server quotes + + + + + Keywords in &UPPER CASE + + + + + When set, the SQL keywords are completed in UPPER CASE letters. + + + + + When set, the SQL code lines that caused errors during the last execution are highlighted and the results frame indicates the error in the background + + + + + Close button on tabs + + + + + If enabled, SQL editor tabs will have a close button. In any case, you can use the contextual menu or the keyboard shortcut to close them. + + + + + &Extensions + &Rozšíření + + + + Select extensions to load for every database: + Vyberte rozšíření k naÄtení pro každou databázi: + + + + Add extension + PÅ™idat rozšíření + + + + Remove extension + Odebrat rozšíření + + + + <html><head/><body><p>While supporting the REGEXP operator SQLite doesn't implement any regular expression<br/>algorithm but calls back the running application. DB Browser for SQLite implements this<br/>algorithm for you to let you use REGEXP out of the box. However, as there are multiple possible<br/>implementations of this and you might want to use another one, you're free to disable the<br/>application's implementation and load your own by using an extension. Requires restart of the application.</p></body></html> + + + + + Disable Regular Expression extension + Zakázat rozšíření pro regulární výrazy + + + + <html><head/><body><p>SQLite provides an SQL function for loading extensions from a shared library file. Activate this if you want to use the <span style=" font-style:italic;">load_extension()</span> function from SQL code.</p><p>For security reasons, extension loading is turned off by default and must be enabled through this setting. You can always load extensions through the GUI, even though this option is disabled.</p></body></html> + + + + + Allow loading extensions from SQL code + + + + + Remote + Vzdálený + + + + CA certificates + certifikáty CA + + + + Proxy + + + + + Configure + + + + + + Subject CN + pÅ™edmÄ›t CN + + + + Common Name + + + + + Subject O + pÅ™edmÄ›t O + + + + Organization + Organizace + + + + + Valid from + Platné od + + + + + Valid to + Platné do + + + + + Serial number + Sériové Äíslo + + + + Your certificates + VaÅ¡e certifikáty + + + + File + Soubor + + + + Subject Common Name + + + + + Issuer CN + + + + + Issuer Common Name + + + + + Clone databases into + + + + + + Choose a directory + Vyberte složku + + + + The language will change after you restart the application. + Jazyk bude zmÄ›nÄ›n po restartu aplikace. + + + + Select extension file + Vybrat soubor rozšíření + + + + Extensions(*.so *.dylib *.dll);;All files(*) + + + + + Import certificate file + Importovat soubor certifikátu + + + + No certificates found in this file. + V tomto souboru nebyly nalezeny žádné certifikáty. + + + + Are you sure you want do remove this certificate? All certificate data will be deleted from the application settings! + Opravdu chcete smazat tento certifikát? VÅ¡echny data certifikátu budou smazány z nastavení aplikace! + + + + Are you sure you want to clear all the saved settings? +All your preferences will be lost and default values will be used. + + + + + ProxyDialog + + + Proxy Configuration + + + + + Pro&xy Type + + + + + Host Na&me + + + + + Port + + + + + Authentication Re&quired + + + + + &User Name + + + + + Password + + + + + None + Žádná + + + + System settings + + + + + HTTP + + + + + Socks v5 + + + + + QObject + + + Error importing data + Chyba pÅ™i importu dat + + + + from record number %1 + ze záznamu Äíslo %1 + + + + . +%1 + . +%1 + + + + Importing CSV file... + + + + + Cancel + ZruÅ¡it + + + + All files (*) + VÅ¡echny soubory (*) + + + + SQLite database files (*.db *.sqlite *.sqlite3 *.db3) + + + + + Left + + + + + Right + + + + + Center + + + + + Justify + + + + + SQLite Database Files (*.db *.sqlite *.sqlite3 *.db3) + + + + + DB Browser for SQLite Project Files (*.sqbpro) + + + + + SQL Files (*.sql) + + + + + All Files (*) + + + + + Text Files (*.txt) + + + + + Comma-Separated Values Files (*.csv) + + + + + Tab-Separated Values Files (*.tsv) + + + + + Delimiter-Separated Values Files (*.dsv) + + + + + Concordance DAT files (*.dat) + + + + + JSON Files (*.json *.js) + + + + + XML Files (*.xml) + + + + + Binary Files (*.bin *.dat) + + + + + SVG Files (*.svg) + + + + + Hex Dump Files (*.dat *.bin) + + + + + Extensions (*.so *.dylib *.dll) + + + + + RemoteCommitsModel + + + Commit ID + + + + + Message + + + + + Date + Datum + + + + Author + + + + + Size + Velikost + + + + Authored and committed by %1 + + + + + Authored by %1, committed by %2 + + + + + RemoteDatabase + + + Error opening local databases list. +%1 + + + + + Error creating local databases list. +%1 + + + + + RemoteDock + + + Remote + Vzdálený + + + + Identity + + + + + Push currently opened database to server + + + + + DBHub.io + + + + + <html><head/><body><p>In this pane, remote databases from dbhub.io website can be added to DB Browser for SQLite. First you need an identity:</p><ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Login to the dbhub.io website (use your GitHub credentials or whatever you want)</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Click the button to &quot;Generate client certificate&quot; (that's your identity). That'll give you a certificate file (save it to your local disk).</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Go to the Remote tab in DB Browser for SQLite Preferences. Click the button to add a new certificate to DB Browser for SQLite and choose the just downloaded certificate file.</li></ol><p>Now the Remote panel shows your identity and you can add remote databases.</p></body></html> + + + + + Local + + + + + Current Database + + + + + Clone + + + + + User + Uživatel + + + + Database + Databáze + + + + Branch + VÄ›tev + + + + Commits + + + + + Commits for + + + + + <html><head/><body><p>You are currently using a built-in, read-only identity. For uploading your database, you need to configure and use your DBHub.io account.</p><p>No DBHub.io account yet? <a href="https://dbhub.io/"><span style=" text-decoration: underline; color:#007af4;">Create one now</span></a> and import your certificate <a href="#preferences"><span style=" text-decoration: underline; color:#007af4;">here</span></a> to share your databases.</p><p>For online help visit <a href="https://dbhub.io/about"><span style=" text-decoration: underline; color:#007af4;">here</span></a>.</p></body></html> + + + + + Back + + + + + Delete Database + + + + + Delete the local clone of this database + + + + + Open in Web Browser + + + + + Open the web page for the current database in your browser + + + + + Clone from Link + + + + + Use this to download a remote database for local editing using a URL as provided on the web page of the database. + + + + + Refresh + Obnovit + + + + Reload all data and update the views + + + + + F5 + + + + + Clone Database + + + + + Open Database + + + + + Open the local copy of this database + + + + + Check out Commit + + + + + Download and open this specific commit + + + + + Check out Latest Commit + + + + + Check out the latest commit of the current branch + + + + + Save Revision to File + + + + + Saves the selected revision of the database to another file + + + + + Upload Database + + + + + Upload this database as a new commit + + + + + Select an identity to connect + + + + + Public + VeÅ™ejný + + + + This downloads a database from a remote server for local editing. +Please enter the URL to clone from. You can generate this URL by +clicking the 'Clone Database in DB4S' button on the web page +of the database. + + + + + Invalid URL: The host name does not match the host name of the current identity. + + + + + Invalid URL: No branch name specified. + + + + + Invalid URL: No commit ID specified. + + + + + You have modified the local clone of the database. Fetching this commit overrides these local changes. +Are you sure you want to proceed? + + + + + The database has unsaved changes. Are you sure you want to push it before saving? + + + + + The database you are trying to delete is currently opened. Please close it before deleting. + + + + + This deletes the local version of this database with all the changes you have not committed yet. Are you sure you want to delete this database? + + + + + RemoteLocalFilesModel + + + Name + Název + + + + Branch + VÄ›tev + + + + Last modified + Poslední zmÄ›nÄ›né + + + + Size + Velikost + + + + Commit + + + + + File + Soubor + + + + RemoteModel + + + Name + Název + + + + Last modified + Poslední zmÄ›nÄ›né + + + + Size + Velikost + + + + Commit + + + + + Size: + + + + + Last Modified: + + + + + Licence: + + + + + Default Branch: + + + + + RemoteNetwork + + + Choose a location to save the file + + + + + Error opening remote file at %1. +%2 + + + + + Error: Invalid client certificate specified. + + + + + Please enter the passphrase for this client certificate in order to authenticate. + + + + + Cancel + ZruÅ¡it + + + + Uploading remote database to +%1 + Nahrávám vzdálenou databázi do +%1. {1?} + + + + Downloading remote database from +%1 + Stahuji vzdálenou databázi z +%1. {1?} + + + + + Error: The network is not accessible. + Chyba: síť není dostupná. + + + + Error: Cannot open the file for sending. + Chyba: Nemohu otevřít soubor k odeslání. + + + + RemotePushDialog + + + Push database + + + + + Database na&me to push to + + + + + Commit message + + + + + Database licence + + + + + Public + VeÅ™ejný + + + + Branch + VÄ›tev + + + + Force push + + + + + Username + + + + + Database will be public. Everyone has read access to it. + + + + + Database will be private. Only you have access to it. + + + + + Use with care. This can cause remote commits to be deleted. + + + + + RunSql + + + Execution aborted by user + + + + + , %1 rows affected + , %1 řádků bylo ovlivnÄ›no + + + + query executed successfully. Took %1ms%2 + + + + + executing query + + + + + SelectItemsPopup + + + A&vailable + + + + + Sele&cted + + + + + SqlExecutionArea + + + Form + Formulář + + + + Find previous match [Shift+F3] + + + + + Find previous match with wrapping + + + + + Shift+F3 + + + + + The found pattern must be a whole word + + + + + Whole Words + Celá slova + + + + Text pattern to find considering the checks in this frame + + + + + Find in editor + Najít v editoru + + + + The found pattern must match in letter case + + + + + Case Sensitive + + + + + Find next match [Enter, F3] + + + + + Find next match with wrapping + + + + + F3 + + + + + Interpret search pattern as a regular expression + + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + + + + + Regular Expression + Regulární výraz + + + + + Close Find Bar + Zavřít liÅ¡tu pro hledání + + + + <html><head/><body><p>Results of the last executed statements.</p><p>You may want to collapse this panel and use the <span style=" font-style:italic;">SQL Log</span> dock with <span style=" font-style:italic;">User</span> selection instead.</p></body></html> + + + + + Results of the last executed statements + Výsledky naposledy provedených příkazů + + + + This field shows the results and status codes of the last executed statements. + + + + + Couldn't read file: %1. + + + + + + Couldn't save file: %1. + + + + + Your changes will be lost when reloading it! + + + + + The file "%1" was modified by another program. Do you want to reload it?%2 + + + + + SqlTextEdit + + + Ctrl+/ + + + + + SqlUiLexer + + + (X) The abs(X) function returns the absolute value of the numeric argument X. + + + + + () The changes() function returns the number of database rows that were changed or inserted or deleted by the most recently completed INSERT, DELETE, or UPDATE statement. + + + + + (X1,X2,...) The char(X1,X2,...,XN) function returns a string composed of characters having the unicode code point values of integers X1 through XN, respectively. + + + + + (X,Y,...) The coalesce() function returns a copy of its first non-NULL argument, or NULL if all arguments are NULL + + + + + (X,Y) The glob(X,Y) function is equivalent to the expression "Y GLOB X". + + + + + (X,Y) The ifnull() function returns a copy of its first non-NULL argument, or NULL if both arguments are NULL. + + + + + (X,Y) The instr(X,Y) function finds the first occurrence of string Y within string X and returns the number of prior characters plus 1, or 0 if Y is nowhere found within X. + + + + + (X) The hex() function interprets its argument as a BLOB and returns a string which is the upper-case hexadecimal rendering of the content of that blob. + + + + + () The last_insert_rowid() function returns the ROWID of the last row insert from the database connection which invoked the function. + + + + + (X) For a string value X, the length(X) function returns the number of characters (not bytes) in X prior to the first NUL character. + + + + + (X,Y) The like() function is used to implement the "Y LIKE X" expression. + + + + + (X,Y,Z) The like() function is used to implement the "Y LIKE X ESCAPE Z" expression. + + + + + (X) The load_extension(X) function loads SQLite extensions out of the shared library file named X. +Use of this function must be authorized from Preferences. + + + + + (X,Y) The load_extension(X) function loads SQLite extensions out of the shared library file named X using the entry point Y. +Use of this function must be authorized from Preferences. + + + + + (X) The lower(X) function returns a copy of string X with all ASCII characters converted to lower case. + + + + + (X) ltrim(X) removes spaces from the left side of X. + (X) ltrim(X) odstraní mezery z levé strany X. + + + + (X,Y) The ltrim(X,Y) function returns a string formed by removing any and all characters that appear in Y from the left side of X. + + + + + (X,Y,...) The multi-argument max() function returns the argument with the maximum value, or return NULL if any argument is NULL. + + + + + (X,Y,...) The multi-argument min() function returns the argument with the minimum value. + (X,Y,...) Funkce s více parametry min() vrací parametr s minimální hodnotou. + + + + (X,Y) The nullif(X,Y) function returns its first argument if the arguments are different and NULL if the arguments are the same. + (X,Y) Funkce nullif(X,Y) vrací první parametr, pokud jsou parametry odliÅ¡né. NULL vrací, pokud jsou parametry stejné. + + + + (FORMAT,...) The printf(FORMAT,...) SQL function works like the sqlite3_mprintf() C-language function and the printf() function from the standard C library. + + + + + (X) The quote(X) function returns the text of an SQL literal which is the value of its argument suitable for inclusion into an SQL statement. + + + + + () The random() function returns a pseudo-random integer between -9223372036854775808 and +9223372036854775807. + () Funkce random() vrací pseudo-náhodný integer v rozmezí -9223372036854775808 a +9223372036854775807. + + + + (N) The randomblob(N) function return an N-byte blob containing pseudo-random bytes. + + + + + (X,Y,Z) The replace(X,Y,Z) function returns a string formed by substituting string Z for every occurrence of string Y in string X. + + + + + (X) The round(X) function returns a floating-point value X rounded to zero digits to the right of the decimal point. + + + + + (X,Y) The round(X,Y) function returns a floating-point value X rounded to Y digits to the right of the decimal point. + + + + + (X) rtrim(X) removes spaces from the right side of X. + + + + + (X,Y) The rtrim(X,Y) function returns a string formed by removing any and all characters that appear in Y from the right side of X. + + + + + (X) The soundex(X) function returns a string that is the soundex encoding of the string X. + + + + + (X,Y) substr(X,Y) returns all characters through the end of the string X beginning with the Y-th. + + + + + (X,Y,Z) The substr(X,Y,Z) function returns a substring of input string X that begins with the Y-th character and which is Z characters long. + + + + + () The total_changes() function returns the number of row changes caused by INSERT, UPDATE or DELETE statements since the current database connection was opened. + + + + + (X) trim(X) removes spaces from both ends of X. + (X) trim(X) odstraní mezery z obou stran X. + + + + (X,Y) The trim(X,Y) function returns a string formed by removing any and all characters that appear in Y from both ends of X. + + + + + (X) The typeof(X) function returns a string that indicates the datatype of the expression X. + + + + + (X) The unicode(X) function returns the numeric unicode code point corresponding to the first character of the string X. + + + + + (X) The upper(X) function returns a copy of input string X in which all lower-case ASCII characters are converted to their upper-case equivalent. + + + + + (N) The zeroblob(N) function returns a BLOB consisting of N bytes of 0x00. + + + + + + + + (timestring,modifier,modifier,...) + + + + + (format,timestring,modifier,modifier,...) + + + + + (X) The avg() function returns the average value of all non-NULL X within a group. + + + + + (X) The count(X) function returns a count of the number of times that X is not NULL in a group. + + + + + (X) The group_concat() function returns a string which is the concatenation of all non-NULL values of X. + + + + + (X,Y) The group_concat() function returns a string which is the concatenation of all non-NULL values of X. If parameter Y is present then it is used as the separator between instances of X. + + + + + (X) The max() aggregate function returns the maximum value of all values in the group. + (X) AgregaÄní funkce max() vrací maximální hodnotu ze vÅ¡ech hodnot ve skupinÄ›. + + + + (X) The min() aggregate function returns the minimum non-NULL value of all values in the group. + (X) AgregaÄní funkce min() vrací minimální hodnotu ze vÅ¡ech hodnot ve skupinÄ›, která není NULL. + + + + + (X) The sum() and total() aggregate functions return sum of all non-NULL values in the group. + (X) AgregaÄní funkce sum() a total() vrací souÄet vÅ¡ech hodnot ve skupinÄ›, které nejsou NULL. + + + + () The number of the row within the current partition. Rows are numbered starting from 1 in the order defined by the ORDER BY clause in the window definition, or in arbitrary order otherwise. + + + + + () The row_number() of the first peer in each group - the rank of the current row with gaps. If there is no ORDER BY clause, then all rows are considered peers and this function always returns 1. + + + + + () The number of the current row's peer group within its partition - the rank of the current row without gaps. Partitions are numbered starting from 1 in the order defined by the ORDER BY clause in the window definition. If there is no ORDER BY clause, then all rows are considered peers and this function always returns 1. + + + + + () Despite the name, this function always returns a value between 0.0 and 1.0 equal to (rank - 1)/(partition-rows - 1), where rank is the value returned by built-in window function rank() and partition-rows is the total number of rows in the partition. If the partition contains only one row, this function returns 0.0. + + + + + () The cumulative distribution. Calculated as row-number/partition-rows, where row-number is the value returned by row_number() for the last peer in the group and partition-rows the number of rows in the partition. + + + + + (N) Argument N is handled as an integer. This function divides the partition into N groups as evenly as possible and assigns an integer between 1 and N to each group, in the order defined by the ORDER BY clause, or in arbitrary order otherwise. If necessary, larger groups occur first. This function returns the integer value assigned to the group that the current row is a part of. + + + + + (expr) Returns the result of evaluating expression expr against the previous row in the partition. Or, if there is no previous row (because the current row is the first), NULL. + + + + + (expr,offset) If the offset argument is provided, then it must be a non-negative integer. In this case the value returned is the result of evaluating expr against the row offset rows before the current row within the partition. If offset is 0, then expr is evaluated against the current row. If there is no row offset rows before the current row, NULL is returned. + + + + + + (expr,offset,default) If default is also provided, then it is returned instead of NULL if the row identified by offset does not exist. + + + + + (expr) Returns the result of evaluating expression expr against the next row in the partition. Or, if there is no next row (because the current row is the last), NULL. + + + + + (expr,offset) If the offset argument is provided, then it must be a non-negative integer. In this case the value returned is the result of evaluating expr against the row offset rows after the current row within the partition. If offset is 0, then expr is evaluated against the current row. If there is no row offset rows after the current row, NULL is returned. + + + + + (expr) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the first row in the window frame for each row. + + + + + (expr) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the last row in the window frame for each row. + + + + + (expr,N) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the row N of the window frame. Rows are numbered within the window frame starting from 1 in the order defined by the ORDER BY clause if one is present, or in arbitrary order otherwise. If there is no Nth row in the partition, then NULL is returned. + + + + + SqliteTableModel + + + reading rows + Ätení sloupců + + + + loading... + naÄítání... + + + + References %1(%2) +Hold %3Shift and click to jump there + + + + + Error changing data: +%1 + Chyba pÅ™i zmÄ›nÄ› dat: +%1 + + + + retrieving list of columns + + + + + Fetching data... + NaÄítám data... + + + + + Cancel + ZruÅ¡it + + + + TableBrowser + + + Browse Data + Prohlížet data + + + + &Table: + &Tabulka: + + + + Select a table to browse data + Vyberte tabulku pro prohlížení dat + + + + Use this list to select a table to be displayed in the database view + Pro zobrazení v databázovém pohledu použijte pro výbÄ›r tabulky tento seznam + + + + This is the database table view. You can do the following actions: + - Start writing for editing inline the value. + - Double-click any record to edit its contents in the cell editor window. + - Alt+Del for deleting the cell content to NULL. + - Ctrl+" for duplicating the current record. + - Ctrl+' for copying the value from the cell above. + - Standard selection and copy/paste operations. + + + + + Text pattern to find considering the checks in this frame + + + + + Find in table + + + + + Find previous match [Shift+F3] + + + + + Find previous match with wrapping + + + + + Shift+F3 + + + + + Find next match [Enter, F3] + + + + + Find next match with wrapping + + + + + F3 + + + + + The found pattern must match in letter case + + + + + Case Sensitive + + + + + The found pattern must be a whole word + + + + + Whole Cell + + + + + Interpret search pattern as a regular expression + + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + + + + + Regular Expression + Regulární výraz + + + + + Close Find Bar + Zavřít liÅ¡tu pro hledání + + + + Text to replace with + + + + + Replace with + + + + + Replace next match + + + + + + Replace + + + + + Replace all matches + + + + + Replace all + + + + + <html><head/><body><p>Scroll to the beginning</p></body></html> + <html><head/><body><p>Posune na úplný zaÄátek</p></body></html> + + + + <html><head/><body><p>Clicking this button navigates to the beginning in the table view above.</p></body></html> + <html><head/><body><p>Kliknutím na toto tlaÄítko se pÅ™esunete na zaÄátek pohledu tabulky výše.</p></body></html> + + + + |< + |< + + + + Scroll one page upwards + + + + + <html><head/><body><p>Clicking this button navigates one page of records upwards in the table view above.</p></body></html> + + + + + < + < + + + + 0 - 0 of 0 + 0 - 0 z 0 + + + + Scroll one page downwards + + + + + <html><head/><body><p>Clicking this button navigates one page of records downwards in the table view above.</p></body></html> + + + + + > + > + + + + Scroll to the end + Posunout na konec + + + + <html><head/><body><p>Clicking this button navigates up to the end in the table view above.</p></body></html> + + + + + >| + >| + + + + <html><head/><body><p>Click here to jump to the specified record</p></body></html> + <html><head/><body><p>Kliknutím zde pÅ™eskoÄíte na urÄený záznam</p></body></html> + + + + <html><head/><body><p>This button is used to navigate to the record number specified in the Go to area.</p></body></html> + <html><head/><body><p>Toto tlaÄítko je urÄeno k navigaci k záznamu, jehož Äíslo je nastaveno v poli Jít na.</p></body></html> + + + + Go to: + Jít na: + + + + Enter record number to browse + Vložte Äíslo záznamu pro jeho procházení + + + + Type a record number in this area and click the Go to: button to display the record in the database view + NapiÅ¡tÄ› Äíslo záznamu do tohoto pole a kliknÄ›te na Jít na: tlaÄítko k zobrazení záznamu v pohledu databáze + + + + 1 + 1 + + + + Show rowid column + Zobrazit rowid sloupce + + + + Toggle the visibility of the rowid column + PÅ™epnout viditelnost rowid sloupců + + + + Unlock view editing + + + + + This unlocks the current view for editing. However, you will need appropriate triggers for editing. + + + + + Edit display format + Upravit formát zobrazení + + + + Edit the display format of the data in this column + Upravit formát zobrazení dat v tomto sloupci + + + + + New Record + Nový záznam + + + + + Insert a new record in the current table + Vložit nový záznam do souÄasné tabulky + + + + <html><head/><body><p>This button creates a new record in the database. Hold the mouse button to open a pop-up menu of different options:</p><ul><li><span style=" font-weight:600;">New Record</span>: insert a new record with default values in the database.</li><li><span style=" font-weight:600;">Insert Values...</span>: open a dialog for entering values before they are inserted in the database. This allows to enter values acomplishing the different constraints. This dialog is also open if the <span style=" font-weight:600;">New Record</span> option fails due to these constraints.</li></ul></body></html> + + + + + + Delete Record + Smazat záznam + + + + Delete the current record + Smazat aktuální záznam + + + + + This button deletes the record or records currently selected in the table + + + + + + Insert new record using default values in browsed table + + + + + Insert Values... + Vložit hodnoty... + + + + + Open a dialog for inserting values in a new record + + + + + Export to &CSV + Export do CSV + + + + + Export the filtered data to CSV + + + + + This button exports the data of the browsed table as currently displayed (after filters, display formats and order column) as a CSV file. + + + + + Save as &view + Uložit jako pohled + + + + + Save the current filter, sort column and display formats as a view + + + + + This button saves the current setting of the browsed table (filters, display formats and order column) as an SQL view that you can later browse or use in SQL statements. + + + + + Save Table As... + + + + + + Save the table as currently displayed + + + + + <html><head/><body><p>This popup menu provides the following options applying to the currently browsed and filtered table:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Export to CSV: this option exports the data of the browsed table as currently displayed (after filters, display formats and order column) to a CSV file.</li><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Save as view: this option saves the current setting of the browsed table (filters, display formats and order column) as an SQL view that you can later browse or use in SQL statements.</li></ul></body></html> + + + + + Hide column(s) + Skrýt sloupec(ce) + + + + Hide selected column(s) + Skrýt vybraný sloupec(ce) + + + + Show all columns + Zobrazit vÅ¡echny sloupce + + + + Show all columns that were hidden + + + + + + Set encoding + Nastavit kódování + + + + Change the encoding of the text in the table cells + ZmÄ›nit kódování textu v buňkách tabulky + + + + Set encoding for all tables + Nastavit kódování pro vÅ¡echny tabulky + + + + Change the default encoding assumed for all tables in the database + + + + + Clear Filters + + + + + Clear all filters + Vymazat vÅ¡echny filtry + + + + + This button clears all the filters set in the header input fields for the currently browsed table. + + + + + Clear Sorting + + + + + Reset the order of rows to the default + + + + + + This button clears the sorting columns specified for the currently browsed table and returns to the default order. + + + + + Print + Tisk + + + + Print currently browsed table data + Tisk právÄ› prohlížených dat tabulky + + + + Print currently browsed table data. Print selection if more than one cell is selected. + + + + + Ctrl+P + + + + + Refresh + Obnovit + + + + Refresh the data in the selected table + + + + + This button refreshes the data in the currently selected table. + Toto tlaÄítko obnoví data v aktuálnÄ› vybrané tabulce. + + + + F5 + + + + + Find in cells + + + + + Open the find tool bar which allows you to search for values in the table view below. + + + + + + Bold + TuÄný + + + + Ctrl+B + + + + + + Italic + Kurzíva + + + + + Underline + Podtržený + + + + Ctrl+U + + + + + + Align Right + + + + + + Align Left + + + + + + Center Horizontally + + + + + + Justify + + + + + + Edit Conditional Formats... + + + + + Edit conditional formats for the current column + + + + + Clear Format + + + + + Clear All Formats + + + + + + Clear all cell formatting from selected cells and all conditional formats from selected columns + + + + + + Font Color + + + + + + Background Color + + + + + Toggle Format Toolbar + + + + + Show/hide format toolbar + + + + + + This button shows or hides the formatting toolbar of the Data Browser + + + + + Select column + + + + + Ctrl+Space + + + + + Replace text in cells + + + + + Filter in any column + + + + + Ctrl+R + + + + + %n row(s) + + + + + + + + + , %n column(s) + + + + + + + + + . Sum: %1; Average: %2; Min: %3; Max: %4 + + + + + Conditional formats for "%1" + + + + + determining row count... + + + + + %1 - %2 of >= %3 + + + + + %1 - %2 of %3 + %1 - %2 z %3 + + + + Please enter a pseudo-primary key in order to enable editing on this view. This should be the name of a unique column in the view. + + + + + Delete Records + + + + + Duplicate records + + + + + Duplicate record + + + + + Ctrl+" + + + + + Adjust rows to contents + + + + + Error deleting record: +%1 + Chyba pÅ™i mazání záznamu: +%1 + + + + Please select a record first + Prosím vyberte záznam jako první + + + + There is no filter set for this table. View will not be created. + + + + + Please choose a new encoding for all tables. + Vyberte nové kódování pro vÅ¡echny tabulky, prosím. + + + + Please choose a new encoding for this table. + Vyberte nové kódování pro tuto tabulku, prosím. + + + + %1 +Leave the field empty for using the database encoding. + %1 +Pro použití kódování databáze ponechte pole prázdné. + + + + This encoding is either not valid or not supported. + Toto kódování není buÄ platné, nebo podporováno. + + + + %1 replacement(s) made. + + + + + VacuumDialog + + + Compact Database + Compact Database + + + + Warning: Compacting the database will commit all of your changes. + Varování: Procesem 'compact the database' budou aplikovány vÅ¡echny vaÅ¡e provedené zmÄ›ny. + + + + Please select the databases to co&mpact: + Prosím vyberte databázi pro proces 'compact': + + + diff --git a/ConfigFiles/translations/sqlb_de.qm b/ConfigFiles/translations/sqlb_de.qm new file mode 100644 index 0000000000000000000000000000000000000000..a5dd69ad7e62f55064b6bcc4450750ffdd883cf0 GIT binary patch literal 242646 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 CCuxBI literal 0 HcmV?d00001 diff --git a/ConfigFiles/translations/sqlb_de.ts b/ConfigFiles/translations/sqlb_de.ts new file mode 100644 index 0000000..c359697 --- /dev/null +++ b/ConfigFiles/translations/sqlb_de.ts @@ -0,0 +1,7015 @@ + + + + + AboutDialog + + + About DB Browser for SQLite + Über DB-Browser für SQLite + + + + Version + Version + + + + <html><head/><body><p>DB Browser for SQLite is an open source, freeware visual tool used to create, design and edit SQLite database files.</p><p>It is bi-licensed under the Mozilla Public License Version 2, as well as the GNU General Public License Version 3 or later. You can modify or redistribute it under the conditions of these licenses.</p><p>See <a href="http://www.gnu.org/licenses/gpl.html">http://www.gnu.org/licenses/gpl.html</a> and <a href="https://www.mozilla.org/MPL/2.0/index.txt">https://www.mozilla.org/MPL/2.0/index.txt</a> for details.</p><p>For more information on this program please visit our website at: <a href="http://sqlitebrowser.org">http://sqlitebrowser.org</a></p><p><span style=" font-size:small;">This software uses the GPL/LGPL Qt Toolkit from </span><a href="http://qt-project.org/"><span style=" font-size:small;">http://qt-project.org/</span></a><span style=" font-size:small;"><br/>See </span><a href="http://qt-project.org/doc/qt-5/licensing.html"><span style=" font-size:small;">http://qt-project.org/doc/qt-5/licensing.html</span></a><span style=" font-size:small;"> for licensing terms and information.</span></p><p><span style=" font-size:small;">It also uses the Silk icon set by Mark James licensed under a Creative Commons Attribution 2.5 and 3.0 license.<br/>See </span><a href="http://www.famfamfam.com/lab/icons/silk/"><span style=" font-size:small;">http://www.famfamfam.com/lab/icons/silk/</span></a><span style=" font-size:small;"> for details.</span></p></body></html> + <html><head/><body><p>DB-Browser für SQLite ist ein grafisches, freies Open-Source-Tool zum Erstellen, Entwerfen und Bearbeiten von SQLite-Datenbankdateien.</p><p>Es steht unter zwei Lizenzen zur Verfügung: der Mozilla Public License Version 2 und der GNU General Public License Version 3 oder aktueller. Sie können das Programm unter den Bedingungen dieser Lizenzen verändern und weiterverteilen.</p><p>Siehe <a href="http://www.gnu.org/licenses/gpl.html">http://www.gnu.org/licenses/gpl.html</a> und <a href="https://www.mozilla.org/MPL/2.0/index.txt">https://www.mozilla.org/MPL/2.0/index.txt</a> für Details.</p><p>Für mehr Informationen über dieses Programm besuchen Sie bitte unsere Website: <a href="http://sqlitebrowser.org">http://sqlitebrowser.org</a></p><p><span style=" font-size:small;">Diese Software verwendet das GPL/LGPL QT Toolkit von </span><a href="http://qt-project.org/"><span style=" font-size:small;">http://qt-project.org/</span></a><span style=" font-size:small;"><br/>Siehe </span><a href="http://qt-project.org/doc/qt-5/licensing.html"><span style=" font-size:small;">http://qt-project.org/doc/qt-5/licensing.html</span></a><span style=" font-size:small;"> für Lizenzbedingungen und -informationen.</span></p><p><span style=" font-size:small;">Sie verwendet ebenso das Silk-Iconset von Mark James, welches unter einer Creative Commons Attribution 2.5 und 3.0 Lizenz verfügbar ist.<br/>Siehe </span><a href="http://www.famfamfam.com/lab/icons/silk/"><span style=" font-size:small;">http://www.famfamfam.com/lab/icons/silk/</span></a><span style=" font-size:small;"> für Details.</span></p></body></html> + + + + AddRecordDialog + + + Add New Record + Neue Zeile hinzufügen + + + + Enter values for the new record considering constraints. Fields in bold are mandatory. + Geben Sie Werte für die neue Zeile unter Beachtung der Constraints ein. Fette Felder sind Pflichtfelder. + + + + In the Value column you can specify the value for the field identified in the Name column. The Type column indicates the type of the field. Default values are displayed in the same style as NULL values. + In der Wertspalte können Sie den Wert für das durch die Namensspalte identifizierte Feld angeben. Die Typspalte zeigt den Feldtyp an. Standardwerte werden im Stil von NULL-Werten angezeigt. + + + + Name + Name + + + + Type + Typ + + + + Value + Wert + + + + Values to insert. Pre-filled default values are inserted automatically unless they are changed. + Einzufügende Werte. Vorausgefüllte Standardwerte werden automatisch eingefügt, insofern sie nicht geändert wurden. + + + + When you edit the values in the upper frame, the SQL query for inserting this new record is shown here. You can edit manually the query before saving. + Wenn Sie die Werte im oberen Teil ändern, wird hier das SQL-Query für das Einfügen der neuen Zeile angezeigt. Sie können das Query vor dem Speichern manuell bearbeiten. + + + + <html><head/><body><p><span style=" font-weight:600;">Save</span> will submit the shown SQL statement to the database for inserting the new record.</p><p><span style=" font-weight:600;">Restore Defaults</span> will restore the initial values in the <span style=" font-weight:600;">Value</span> column.</p><p><span style=" font-weight:600;">Cancel</span> will close this dialog without executing the query.</p></body></html> + <html><head/><body><p><span style=" font-weight:600;">Speichern</span> wird das dargestellte SQL-Statement zum Einfügen des neuen Eintrags an die Datenbank übermitteln.</p><p><span style=" font-weight:600;">Voreinstellungen</span> wird die ursprünglichen Werte der <span style=" font-weight:600;">Wert</span>-Spalte wiederherstellen.</p><p><span style=" font-weight:600;">Abbrechen</span> schließt diesen Dialog, ohne die Query auszuführen.</p></body></html> + + + + Auto-increment + + Auto-Inkrement + + + + + Unique constraint + + Unique-Constraint + + + + + Check constraint: %1 + + Prüfungsconstraint: %1 + + + + + Foreign key: %1 + + Fremdschlüssel: %1 + + + + + Default value: %1 + + Standardwert: %1 + + + + + Error adding record. Message from database engine: + +%1 + Fehler beim Hinzufügen der Zeile. Mitteilung der Datenbank-Engine: + +%1 + + + + Are you sure you want to restore all the entered values to their defaults? + Sind Sie sicher, dass Sie alle eingegebenen Werte auf ihre Standardwerte zurücksetzen möchten? + + + + Application + + + Possible command line arguments: + Mögliche Kommandozeilen-Argumente: + + + + The -o/--option and -O/--save-option options require an argument in the form group/setting=value + Die Optionen -o/--option und -O/--save-option benötigen ein Argument der Form Gruppe/Einstellung=Wert + + + + Usage: %1 [options] [<database>|<project>] + + + + + + -h, --help Show command line options + + + + + -q, --quit Exit application after running scripts + + + + + -s, --sql <file> Execute this SQL file after opening the DB + + + + + -t, --table <table> Browse this table after opening the DB + + + + + -R, --read-only Open database in read-only mode + + + + + -o, --option <group>/<setting>=<value> + + + + + Run application with this setting temporarily set to value + + + + + -O, --save-option <group>/<setting>=<value> + + + + + Run application saving this value for this setting + + + + + -v, --version Display the current version + + + + + <database> Open this SQLite database + + + + + <project> Open this project file (*.sqbpro) + + + + + The -s/--sql option requires an argument + Die -s/--sql Option benötigt ein Argument + + + + The file %1 does not exist + Die Datei %1 existiert nicht + + + + The -t/--table option requires an argument + Die -t/--table Option benötigt ein Argument + + + + SQLite Version + SQLite-Version + + + + SQLCipher Version %1 (based on SQLite %2) + SQLCipher Version %1 (basierend auf SQLite %2) + + + + DB Browser for SQLite Version %1. + + + + + Built for %1, running on %2 + Erstellt für %1, laufend unter %2 + + + + Qt Version %1 + + + + + Invalid option/non-existant file: %1 + Ungültige Option/nicht existente Datei: %1 + + + + CipherDialog + + + SQLCipher encryption + SQLCipher-Verschlüsselung + + + + &Password + &Passwort + + + + &Reenter password + Wiede&rhole Passwort + + + + Encr&yption settings + &Verschlüsselungs-Einstellungen + + + + SQLCipher &3 defaults + SQLCipher &3 Standardwerte + + + + SQLCipher &4 defaults + SQLCipher &4 Standardwerte + + + + Custo&m + &Benutzerdefiniert + + + + Page si&ze + Seiten&größe + + + + &KDF iterations + &KDF-Iterationen + + + + HMAC algorithm + HMAC-Algorithmus + + + + KDF algorithm + KDF-Algorithmus + + + + Plaintext Header Size + Plaintext-Headergröße + + + + Passphrase + Passphrase + + + + Raw key + Originalschlüssel + + + + Please set a key to encrypt the database. +Note that if you change any of the other, optional, settings you'll need to re-enter them as well every time you open the database file. +Leave the password fields empty to disable the encryption. +The encryption process might take some time and you should have a backup copy of your database! Unsaved changes are applied before modifying the encryption. + Setzen Sie bitte einen Schlüssel zum Verschlüsseln der Datenbank. +Beachten Sie, dass bei Änderung der optionalen Einstellungen diese bei jedem Öffnen der Datenbank-Datei eingegeben werden müssen. +Lassen Sie die Passwortfelder leer, um die Verschlüsselung zu deaktivieren. +Der Verschlüsselungsprozess benötigt unter Umständen ein bisschen Zeit und Sie sollten ein Backup-Kopie Ihrer Datenbank haben! Ungespeicherte Änderungen werden vor der Änderung der Verschlüsselung übernommen. + + + + Please enter the key used to encrypt the database. +If any of the other settings were altered for this database file you need to provide this information as well. + Geben Sie bitte den zur Verschlüsselung der Datenbank genutzten Schlüssel ein. +Falls weitere Einstellungen für diese Datenbank-Datei vorgenommen worden sind, müssen Sie diese Informationen zusätzlich angeben. + + + + ColumnDisplayFormatDialog + + + Choose display format + Anzeigeformat auswählen + + + + Display format + Anzeigeformat + + + + Choose a display format for the column '%1' which is applied to each value prior to showing it. + Wählen Sie ein Anzeigeformat für die Spalte '%1', welches bei der Anzeige eines jeden Wertes angewendet wird. + + + + Default + Voreinstellung + + + + Decimal number + Dezimalzahl + + + + Exponent notation + Exponentnotation + + + + Hex blob + Hex-Blob + + + + Hex number + Hexwert + + + + Apple NSDate to date + Apple NSDate zu Datum + + + + Java epoch (milliseconds) to date + Java-Epoche (Millisekunden) zu Datum + + + + .NET DateTime.Ticks to date + + + + + Julian day to date + Julianischer Tag zu Datum + + + + Unix epoch to local time + Unix-Epoche zu lokaler Zeit + + + + Date as dd/mm/yyyy + Datum als dd/mm/yyyy + + + + Lower case + Kleinschreibung + + + + Custom display format must contain a function call applied to %1 + Benutzerdefinierte Darstellungsformate benötigen einen Funktionsaufruf, der auf %1 angewendet wird + + + + Error in custom display format. Message from database engine: + +%1 + Fehler im benutzerdefinierten Anzeigeformat. Meldung von Datenbank: + +%1 + + + + Custom display format must return only one column but it returned %1. + Das benutzerdefinierte Anzeigeformat darf nur eine Spalte zurückgeben, es wurde aber %1 zurückgegeben. + + + + Octal number + Oktalwert + + + + Round number + Gerundeter Wert + + + + Unix epoch to date + Unix-Epoche zu Datum + + + + Upper case + Großschreibung + + + + Windows DATE to date + Windows DATUM zu Datum + + + + Custom + Benutzerdefiniert + + + + CondFormatManager + + + Conditional Format Manager + Verwaltung für bedingte Formatierung + + + + This dialog allows creating and editing conditional formats. Each cell style will be selected by the first accomplished condition for that cell data. Conditional formats can be moved up and down, where those at higher rows take precedence over those at lower. Syntax for conditions is the same as for filters and an empty condition applies to all values. + Dieser Dialog erlaubt das Erstellen und Bearbeiten bedingter Formatierungen. Jeder Zellenstil wird anhand der ersten erfüllten Bedingung für diese Zelldaten ausgewählt. Bedingte Formatierungen können nach oben und unten bewegt werden, wobei jene weiter oben Vorrang vor jenen weiter unten haben. Der Syntax für Bedingungen ist der gleiche wie bei Filtern und eine leere Bedingung trifft auf alle Werte zu. + + + + Add new conditional format + Neue bedingte Formatierung hinzufügen + + + + &Add + &Hinzufügen + + + + Remove selected conditional format + Ausgewählte bedingte Formatierung entfernen + + + + &Remove + &Entfernen + + + + Move selected conditional format up + Ausgewählte bedingte Formatierung nach oben bewegen + + + + Move &up + Nach &oben + + + + Move selected conditional format down + Ausgewählte bedingte Formatierung nach unten bewegen + + + + Move &down + Nach &unten + + + + Foreground + Vordergrund + + + + Text color + Textfarbe + + + + Background + Hintergrund + + + + Background color + Hintergrundfarbe + + + + Font + Schrift + + + + Size + Größe + + + + Bold + Fett + + + + Italic + Kursiv + + + + Underline + Unterstreichung + + + + Alignment + Ausrichtung + + + + Condition + Bedingung + + + + + Click to select color + Zur Auswahl der Farbe klicken + + + + Are you sure you want to clear all the conditional formats of this field? + Sollen wirklich alle bedingten Formatierungen dieses Felds gelöscht werden? + + + + DBBrowserDB + + + Please specify the database name under which you want to access the attached database + Geben Sie bitte einen Datenbanknamen an, mit dem Sie auf die anhängte Datenbank zugreifen möchten + + + + Invalid file format + Ungültiges Dateiformat + + + + Do you want to save the changes made to the database file %1? + Sollen die getätigten Änderungen an der Datenbank-Datei %1 gespeichert werden? + + + + Exporting database to SQL file... + Datenbank in SQL-Datei exportieren... + + + + + Cancel + Abbrechen + + + + Executing SQL... + SQL ausführen... + + + + Action cancelled. + Vorgang abgebrochen. + + + + This database has already been attached. Its schema name is '%1'. + Diese Datenbank wurde bereits angehängt. Ihr Schemaname ist '%1'. + + + + Do you really want to close this temporary database? All data will be lost. + Möchten Sie diese temporäre Datenbank wirklich schließen? Alle Daten gehen damit verloren. + + + + Database didn't close correctly, probably still busy + Datenbank wurde nicht richtig geschlossen, vermutlich noch in Bearbeitung + + + + The database is currently busy: + Die Datenbank ist zur Zeit beschäfigt: + + + + Do you want to abort that other operation? + Möchten Sie die andere Operation abbrechen? + + + + + No database file opened + Keine Datenbankdatei geöffnet + + + + + Error in statement #%1: %2. +Aborting execution%3. + Fehler im Statement #%1: %2. +Ausführung wird abgebrochen %3. + + + + + and rolling back + und der Zustand zurückgesetzt + + + + didn't receive any output from %1 + keine Ausgabe von %1 erhalten + + + + could not execute command: %1 + Befehl konnte nicht ausgeführt werden: %1 + + + + Cannot delete this object + Dieses Objekt kann nicht gelöscht werden + + + + Cannot set data on this object + Daten können für dieses Objekt nicht gesetzt werden + + + + + A table with the name '%1' already exists in schema '%2'. + Es existiert eine Tabelle mit dem Namen '%1' im Schema '%2'. + + + + No table with name '%1' exists in schema '%2'. + Im Schema '%2' existiert keine Tabelle mit dem Namen '%1'. + + + + + Cannot find column %1. + Spalte %1 kann nicht gefunden werden. + + + + Creating savepoint failed. DB says: %1 + Erstellung des Sicherungspunktes fehlgeschlagen. DB meldet: %1 + + + + Renaming the column failed. DB says: +%1 + Umbenennung der Spalte fehlgeschlagen. DB meldet: +%1 + + + + + Releasing savepoint failed. DB says: %1 + Entsperren des Sicherungspunktes fehlgeschlagen. DB meldet: %1 + + + + Creating new table failed. DB says: %1 + Erstellen der neuen Tabelle ist fehlgeschlagen. DB meldet: %1 + + + + Copying data to new table failed. DB says: +%1 + Kopieren der Daten zur neuen Tabelle ist fehlgeschlagen. DB meldet: +%1 + + + + Deleting old table failed. DB says: %1 + Löschen der alten Tabelle ist fehlgeschlagen. DB meldet: %1 + + + + Error renaming table '%1' to '%2'. +Message from database engine: +%3 + Fehler beim Umbenennen der Tabelle '%1' zu '%2'. +Meldung von Datenbank: +%3 + + + + could not get list of db objects: %1 + Liste der DB-Objekte konnte nicht abgefragt werden: %1 + + + + Restoring some of the objects associated with this table failed. This is most likely because some column names changed. Here's the SQL statement which you might want to fix and execute manually: + + + Wiederherstellung einiger mit dieser Tabelle verbundener Objekte fehlgeschagen. Dies passiert häufig durch geänderte Spaltennamen. SQL-Statement zum manuellen Reparieren und Ausführen: + + + + + + could not get list of databases: %1 + konnte keine Datenbankliste abrufen: %1 + + + + Error loading extension: %1 + Fehler beim Laden der Erweiterung: %1 + + + + could not get column information + Spalteninformationen konnten nicht errmittelt werden + + + + Error setting pragma %1 to %2: %3 + Fehler beim Setzen des Pragmas %1 auf %2: %3 + + + + File not found. + Datei nicht gefunden. + + + + DbStructureModel + + + Name + Name + + + + Object + Objekt + + + + Type + Typ + + + + Schema + Schema + + + + Database + Datenbank + + + + Browsables + Durchsuchbar + + + + All + Alle + + + + Temporary + Temporär + + + + Tables (%1) + Tabellen (%1) + + + + Indices (%1) + Indizes (%1) + + + + Views (%1) + Ansichten (%1) + + + + Triggers (%1) + Trigger (%1) + + + + EditDialog + + + Edit database cell + Datenbank-Zelle bearbeiten + + + + Mode: + Modus: + + + + This is the list of supported modes for the cell editor. Choose a mode for viewing or editing the data of the current cell. + Dies ist die Liste der unterstützten Modi des Zelleneditors. Wählen Sie einen Modus für die Anzeige oder Bearbeitung der Daten der aktuellen Zelle aus. + + + + RTL Text + RTL-Text + + + + + Image + Bild + + + + JSON + JSON + + + + XML + XML + + + + + Automatically adjust the editor mode to the loaded data type + Den Editormodus automatisch dem geladenen Datentyp anpassen + + + + This checkable button enables or disables the automatic switching of the editor mode. When a new cell is selected or new data is imported and the automatic switching is enabled, the mode adjusts to the detected data type. You can then change the editor mode manually. If you want to keep this manually switched mode while moving through the cells, switch the button off. + Dieser Button aktiviert oder deaktiviert den automatischen Wechsel des Editormodus. Wenn eine neue Zelle ausgewählt wird oder neue Daten importiert werden und der automatische Wechsel aktiviert ist, passt sich der Modus dem erkannten Datentyp an. Sie können den Editormodus danach manuell ändern. Falls Sie dies bei der Bewegung durch die Zellen im manuell eingestellten Modus behalten möchten, deaktivieren Sie den Button. + + + + Auto-switch + Auto-Wechsel + + + + The text editor modes let you edit plain text, as well as JSON or XML data with syntax highlighting, automatic formatting and validation before saving. + +Errors are indicated with a red squiggle underline. + Der Text-Editor-Modus erlaubt das Bearbeiten von Reintext sowie JSON- oder XML-Daten mit Syntaxhervorhebung, automatischer Formatierung und Validierung vor dem Speichern. + +Fehler werden mittels eine roten Wellenlinie angezeigt. + + + + This Qt editor is used for right-to-left scripts, which are not supported by the default Text editor. The presence of right-to-left characters is detected and this editor mode is automatically selected. + Dieser Qt-Editor wird für rechts-nach-links-Eingaben verwendet, welche vom Standard-Texteditor nicht unterstützt werden. Das Vorhandensein von rechts-nach-links-Zeichen wird erkannt und dieser Editormodus wird automatisch ausgewählt. + + + + Open preview dialog for printing the data currently stored in the cell + Vorschau-Dialog öffnen, um die aktuell in der Zelle gespeicherten Daten auszugeben + + + + Auto-format: pretty print on loading, compact on saving. + Auto-Format: Druckoptimierung (Pretty Print) beim Laden, kompakt beim Speichern. + + + + When enabled, the auto-format feature formats the data on loading, breaking the text in lines and indenting it for maximum readability. On data saving, the auto-format feature compacts the data removing end of lines, and unnecessary whitespace. + Falls aktiviert, formatiert die Auto-Format-Funktion die Daten beim Laden, bricht den Text in Zeilen und rückt ihn ein für maximale Lesbarkeit. Beim Speichern der Daten verdichtet die Auto-Format-Funktion die Daten durch das Entfernen der Zeilenumbrüche und unnötigen Leerzeichen. + + + + Word Wrap + Wortumbrüche + + + + Wrap lines on word boundaries + Zeilen an Wortgrenzen umbrechen + + + + + Open in default application or browser + Mit der Standardanwendung oder dem Browser öffnen + + + + Open in application + Mit Anwendung öffnen + + + + The value is interpreted as a file or URL and opened in the default application or web browser. + Der Wert wird als Datei oder URL interpretiert und mit der Standardanwendung oder dem Web-Browser geöffnet. + + + + Save file reference... + Dateireferenz speichern... + + + + Save reference to file + Referenz in Datei speichern + + + + + Open in external application + Mit externer Anwendung öffnen + + + + Autoformat + Auto-Format + + + + &Export... + &Exportieren... + + + + + &Import... + &Importieren... + + + + + Import from file + Aus Datei importieren + + + + + Opens a file dialog used to import any kind of data to this database cell. + Öffnet einen Dateidialog, um jegliche Art von Daten in diese Datenbankzelle zu importieren. + + + + Export to file + In Datei exportieren + + + + Opens a file dialog used to export the contents of this database cell to a file. + Öffnet einen Dateidialog, um den Inhalt dieser Datenbankzelle in eine Datei zu exportieren. + + + + + Print... + Drucken... + + + + Open preview dialog for printing displayed image + Vorschaudialog zum Drucken des angezeigten Bildes öffnen + + + + + Ctrl+P + + + + + Open preview dialog for printing displayed text + Vorschaudialog zum Drucken des angezeigten Textes öffnen + + + + Copy Hex and ASCII + Hex und ASCII kopieren + + + + Copy selected hexadecimal and ASCII columns to the clipboard + Ausgewählte hexadezimale und ASCII-Spalten in die Zwischenablage kopieren + + + + Ctrl+Shift+C + + + + + Set as &NULL + Auf &NULL setzen + + + + Apply data to cell + Daten auf Zelle anwenden + + + + This button saves the changes performed in the cell editor to the database cell. + Dieser Button speichert die im Zelleneditor für die Datenbankzelle durchgeführten Änderungen. + + + + Apply + Übernehmen + + + + Text + Text + + + + Binary + Binär + + + + Erases the contents of the cell + Löscht den Inhalt der Zelle + + + + This area displays information about the data present in this database cell + Dieser Bereich stellt Informationen über die Daten in dieser Datenbank-Zelle dar + + + + Type of data currently in cell + Art der Daten in dieser Zelle + + + + Size of data currently in table + Größe der Daten in dieser Tabelle + + + + Choose a filename to export data + Dateinamen für den Datenexport wählen + + + + Type of data currently in cell: %1 Image + Art der Daten in der aktuellen Zelle: %1 Bild + + + + %1x%2 pixel(s) + %1x%2 Pixel + + + + Type of data currently in cell: NULL + Art der Daten in dieser Zelle: NULL + + + + + Type of data currently in cell: Text / Numeric + Art der Daten in dieser Zelle: Text / Numerisch + + + + + Image data can't be viewed in this mode. + In diesem Modus können keine Bilddaten angezeigt werden. + + + + + Try switching to Image or Binary mode. + Versuchen Sie, in den Bild- oder Binär-Modus zu wechseln. + + + + + Binary data can't be viewed in this mode. + Binärdaten können in diesem Modus nicht angezeigt werden. + + + + + Try switching to Binary mode. + Versuchen Sie, in den Binär-Modus zu wechseln. + + + + Couldn't save file: %1. + Datei konnte nicht gespeichert werden: %1. + + + + The data has been saved to a temporary file and has been opened with the default application. You can now edit the file and, when you are ready, apply the saved new data to the cell editor or cancel any changes. + Die Daten wurden in einer temporären Datei gespeichert und jene wurde mit der Standardanwendung geöffnet. Die Datei kann nun bearbeitet werden. Am Ende der Bearbeitungen können die gespeicherten neuen Daten auf den Zelleneditor angewandt oder die Änderungen verworfen werden. + + + + + Image files (%1) + Bilddateien (%1) + + + + Binary files (*.bin) + Binärdateien (*.bin) + + + + Choose a file to import + Datei für Import auswählen + + + + %1 Image + %1 Bild + + + + Invalid data for this mode + Ungültige Daten für diesen Modus + + + + The cell contains invalid %1 data. Reason: %2. Do you really want to apply it to the cell? + Die Zelle enthält ungültige %1-Daten. Grund: %2. Möchten Sie diese wirklich auf die Zelle anwenden? + + + + + + %n character(s) + + %n Zeichen + %n Zeichen + + + + + Type of data currently in cell: Valid JSON + Aktueller Datentyp in dieser Zelle: Gültiges JSON + + + + Type of data currently in cell: Binary + Art der Daten in dieser Zelle: Binär + + + + + %n byte(s) + + %n Byte + %n Bytes + + + + + EditIndexDialog + + + &Name + &Name + + + + Order + Sortierung + + + + &Table + &Tabelle + + + + Edit Index Schema + Index-Schema bearbeiten + + + + &Unique + Einde&utig + + + + For restricting the index to only a part of the table you can specify a WHERE clause here that selects the part of the table that should be indexed + Zum Einschränken des Index auf einen Teil der Tabelle kann hier eine WHERE-Klausel angegeben werden, die den Teil der Tabelle auswählt, der indexiert werden soll + + + + Partial inde&x clause + Teilinde&x-Klausel + + + + Colu&mns + &Spalten + + + + Table column + Tabellenspalte + + + + Type + Typ + + + + Add a new expression column to the index. Expression columns contain SQL expression rather than column names. + Fügt eine neue Ausdrucksspalte zum Index hinzu. Ausdrucksspalten enthalten SQL-Ausdrücke statt Spaltennamen. + + + + Index column + Indexspalte + + + + Deleting the old index failed: +%1 + Löschen des alten Index fehlgeschlagen: %1 + + + + Creating the index failed: +%1 + Erstellen des Index fehlgeschlagen: +%1 + + + + EditTableDialog + + + Edit table definition + Tabellen-Definition bearbeiten + + + + Table + Tabelle + + + + Advanced + Erweitert + + + + Make this a 'WITHOUT rowid' table. Setting this flag requires a field of type INTEGER with the primary key flag set and the auto increment flag unset. + Als 'WITHOUT rowid'-Tabelle markieren. Das Setzen dieses Flags erfordert ein Feld vom Typ INTEGER mit gesetzten Primärkey-Flag und nicht gesetztem Autoinkrement-Flag. + + + + Without Rowid + Ohne Rowid + + + + Fields + Felder + + + + Database sche&ma + Datenbank-Sche&ma + + + + Add + Hinzufügen + + + + Remove + Entfernen + + + + Move to top + Zum Beginn + + + + Move up + Nach oben + + + + Move down + Nach unten + + + + Move to bottom + Zum Ende + + + + + Name + Name + + + + + Type + Typ + + + + NN + NN + + + + Not null + Nicht Null + + + + PK + PK + + + + Primary key + Primärschlüssel + + + + AI + AI + + + + Autoincrement + Autoinkrement + + + + U + + + + + + + Unique + Eindeutig + + + + Default + Voreinstellung + + + + Default value + Voreingestellter Wert + + + + + + Check + Prüfen + + + + Check constraint + Beschränkung prüfen + + + + Collation + Kollation + + + + + + Foreign Key + Fremdschlüssel + + + + Constraints + Constraints + + + + Add constraint + Constraint hinzufügen + + + + Remove constraint + Constraint entfernen + + + + Columns + Spalten + + + + SQL + SQL + + + + <html><head/><body><p><span style=" font-weight:600; color:#ff0000;">Warning: </span>There is something with this table definition that our parser doesn't fully understand. Modifying and saving this table might result in problems.</p></body></html> + <html><head/><body><p><span style="font-weight:600; color:#ff0000;">Warnung: </span>Diese Tabellendefinitionenthält Elemente, die unser Parser nicht vollständig versteht. Das Ändern und Speichern der Tabelle kann zu Problemen führen.</p></body></html> + + + + + Primary Key + Primärschlüssel + + + + Add a primary key constraint + Ein Constraint für den Primärschlüssel hinzufügen + + + + Add a foreign key constraint + Ein Constraint für den Fremdschlüssel hinzufügen + + + + Add a unique constraint + Ein Unique-Constraint hinzufügen + + + + Add a check constraint + Ein Prüfungs-Constraint hinzufügen + + + + Error creating table. Message from database engine: +%1 + Fehler beim Erstellen der Tabelle. Meldung der Datenbank: +%1 + + + + There already is a field with that name. Please rename it first or choose a different name for this field. + Es existiert bereits ein Feld mit diesem Namen. Bitte benennen Sie es zunächst um oder wählen Sie einen anderen Namen für dieses Feld. + + + + + There can only be one primary key for each table. Please modify the existing primary key instead. + Es kann nur einen Primärschlüssel für jede Tabelle geben. Bitte stattdessen den existierenden Primärschlüssel bearbeiten. + + + + This column is referenced in a foreign key in table %1 and thus its name cannot be changed. + Diese Spalte wird in einem Fremdschlüssel in Tabelle %1 referenziert und kann aus diesem Grund nicht geändert werden. + + + + There is at least one row with this field set to NULL. This makes it impossible to set this flag. Please change the table data first. + Mindestens eine Reihe enthält ein Feld mit dem Wert NULL. Dies verhindert das Setzen dieser Markierung. Bitte zunächst die Tabellendaten ändern. + + + + There is at least one row with a non-integer value in this field. This makes it impossible to set the AI flag. Please change the table data first. + Mindestens eine Reihe enthält ein Feld mit einem nicht ganzzahligen Wert. Dies verhindert das Setzen der AI-Markierung. Bitte zunächst die Tabellendaten ändern. + + + + Column '%1' has duplicate data. + + Spalte '%1' hat doppelte Daten. + + + + + This makes it impossible to enable the 'Unique' flag. Please remove the duplicate data, which will allow the 'Unique' flag to then be enabled. + Dies macht das Aktivieren des 'Unique'-Flags unmöglich. Bitte die doppelten Daten entfernen, damit das 'Unique'-Flag dann aktiviert werden kann. + + + + Are you sure you want to delete the field '%1'? +All data currently stored in this field will be lost. + Soll das Feld '%1' wirklich gelöscht werden? +Alle aktuell in diesem Feld gespeicherten Daten gehen verloren. + + + + Please add a field which meets the following criteria before setting the without rowid flag: + - Primary key flag set + - Auto increment disabled + Bitte fügen Sie vor dem Setzen des "Without rowid"-Flags ein Feld hinzu, welches folgenden Kriterien entspricht: + - Primärschlüssel-Flag gesetzt + - Autoinkrement deaktiviert + + + + ExportDataDialog + + + Export data as CSV + Daten als CSV exportieren + + + + Tab&le(s) + Tabe&lle(n) + + + + Colu&mn names in first line + &Spaltennamen in der ersten Zeile + + + + Fie&ld separator + Fe&ld-Separator + + + + , + , + + + + ; + ; + + + + Tab + Tab + + + + | + | + + + + + + Other + Anderer + + + + &Quote character + &String-Zeichen + + + + " + " + + + + ' + ' + + + + New line characters + Zeilenumbruchs-Zeichen + + + + Windows: CR+LF (\r\n) + Windows: CR+LF (\r\n) + + + + Unix: LF (\n) + Unix: LF (\n) + + + + Pretty print + Pretty Print + + + + + Could not open output file: %1 + Ausgabedatei konnte nicht geöffnet werden: %1 + + + + + Choose a filename to export data + Dateinamen für den Datenexport wählen + + + + Export data as JSON + Daten als JSON exportieren + + + + exporting CSV + exportiere CSV + + + + exporting JSON + exportiere JSON + + + + Please select at least 1 table. + Bitte mindestens eine Tabelle auswählen. + + + + Choose a directory + Verzeichnis wählen + + + + Export completed. + Export abgeschlossen. + + + + ExportSqlDialog + + + Export SQL... + SQL exportieren... + + + + Tab&le(s) + Tabe&lle(n) + + + + Select All + Alle auswählen + + + + Deselect All + Alle abwählen + + + + &Options + &Optionen + + + + Keep column names in INSERT INTO + Spaltennamen in INSERT INTO belassen + + + + Multiple rows (VALUES) per INSERT statement + Mehrere Reihen (VALUES) je INSERT-Statement + + + + Export everything + Alles exportieren + + + + Export schema only + Nur Schema exportieren + + + + Export data only + Nur Daten exportieren + + + + Keep old schema (CREATE TABLE IF NOT EXISTS) + Altes Schema behalten (CREATE TABLE IF NOT EXISTS) + + + + Overwrite old schema (DROP TABLE, then CREATE TABLE) + Altes Schema überschreiben (DROP TABLE, dann CREATE TABLE) + + + + Please select at least one table. + Bitte wählen Sie mindestens eine Tabelle aus. + + + + Choose a filename to export + Dateinamen zum Export auswählen + + + + Export completed. + Export abgeschlossen. + + + + Export cancelled or failed. + Export abgebrochen oder fehlgeschlagen. + + + + ExtendedScintilla + + + + Ctrl+H + + + + + Ctrl+F + + + + + + Ctrl+P + + + + + Find... + Suchen... + + + + Find and Replace... + Suchen und ersetzen... + + + + Print... + Drucken... + + + + ExtendedTableWidget + + + Use as Exact Filter + Als exakten Filter verwenden + + + + Containing + Enthält + + + + Not containing + Enthält nicht + + + + Not equal to + Ungleich zu + + + + Greater than + Größer als + + + + Less than + Kleiner als + + + + Greater or equal + Größer oder gleich + + + + Less or equal + Kleiner oder gleich + + + + Between this and... + Zwischen diesem und... + + + + Regular expression + Regulärer Ausdruck + + + + Edit Conditional Formats... + Bedingte Formatierungen bearbeiten... + + + + Set to NULL + Auf NULL setzen + + + + Copy + Kopieren + + + + Copy with Headers + Mit Headern kopieren + + + + Copy as SQL + Als SQL kopieren + + + + Paste + Einfügen + + + + Print... + Drucken... + + + + Use in Filter Expression + In Filterausdruck verwenden + + + + Alt+Del + + + + + Ctrl+Shift+C + + + + + Ctrl+Alt+C + + + + + The content of the clipboard is bigger than the range selected. +Do you want to insert it anyway? + Der Inhalt der Zwischenablage ist größer als der ausgewählte Bereich. Soll er dennoch eingefügt werden? + + + + <p>Not all data has been loaded. <b>Do you want to load all data before selecting all the rows?</b><p><p>Answering <b>No</b> means that no more data will be loaded and the selection will not be performed.<br/>Answering <b>Yes</b> might take some time while the data is loaded but the selection will be complete.</p>Warning: Loading all the data might require a great amount of memory for big tables. + <p>Es wurden nicht alle Daten geladen. <b>Sollen vor dem Auswählen aller Zeilen alle Daten geladen werden?</b><p><p>Das Antworten von <b>Nein</b> wird keine weiteren Daten laden und die Auswahl nicht durchführen.</br>Das Antworten von <b>Ja</b> benötigt möglicherweise einige Zeit, während die Daten geladen werden, aber die Auswahl wird vollständig sein.</p>Warnung: Das Laden aller Daten benötigt bei großen Tabellen möglicherweise eine große Menge an Speicher. + + + + Cannot set selection to NULL. Column %1 has a NOT NULL constraint. + Auswahl kann nicht auf NULL gesetzt. Die Spalte %1 hat ein NOT NULL Constraint. + + + + FileExtensionManager + + + File Extension Manager + Dateierweiterungs-Manager + + + + &Up + H&och + + + + &Down + &Runter + + + + &Add + &Hinzufügen + + + + &Remove + &Entfernen + + + + + Description + Beschreibung + + + + Extensions + Erweiterungen + + + + *.extension + *.erweiterung + + + + FilterLineEdit + + + Filter + Filtern + + + + These input fields allow you to perform quick filters in the currently selected table. +By default, the rows containing the input text are filtered out. +The following operators are also supported: +% Wildcard +> Greater than +< Less than +>= Equal to or greater +<= Equal to or less += Equal to: exact match +<> Unequal: exact inverse match +x~y Range: values between x and y +/regexp/ Values matching the regular expression + Diese Eingabefelder erlauben Ihnen das Anwenden von schnellen Filtern in der aktuell ausgewählten Tabelle. +Standardmäßig werden Zeilen, die den Eingabetext beinhalten, herausgefiltert. +Zudem werden die folgenden Operatoren unterstützt: +% Wildcard +> Größer als +< Kleiner als +>= Größer oder gleich +<= Kleiner oder gleich += Gleich: exakte Übereinstimmung +<> Ungleich:exakte inverse Übereinstimmung +x~y Bereich: Werte zwischen x und y +/regexp/ Werte, die dem regulären Ausdruck genügen + + + + Clear All Conditional Formats + Alle bedingten Formatierungen löschen + + + + Use for Conditional Format + Als bedingte Formatierung verwenden + + + + Edit Conditional Formats... + Bedingte Formatierungen bearbeiten... + + + + Set Filter Expression + Filterausdruck setzen + + + + What's This? + Was ist das? + + + + Is NULL + Ist NULL + + + + Is not NULL + Ist nicht NULL + + + + Is empty + Ist leer + + + + Is not empty + Ist nicht leer + + + + Not containing... + Enthält nicht... + + + + Equal to... + Gleich zu... + + + + Not equal to... + Ungleich zu... + + + + Greater than... + Größer als... + + + + Less than... + Kleiner als... + + + + Greater or equal... + Größer oder gleich... + + + + Less or equal... + Kleiner oder gleich... + + + + In range... + Im Bereich... + + + + Regular expression... + Regulärer Ausdruck... + + + + FindReplaceDialog + + + Find and Replace + Suchen und Ersetzen + + + + Fi&nd text: + Text fi&nden: + + + + Re&place with: + Er&setzen mit: + + + + Match &exact case + &Exakte Schreibung + + + + Match &only whole words + Nur &ganze Wörter + + + + When enabled, the search continues from the other end when it reaches one end of the page + Falls aktiviert, fährt die Suche am anderen Ende fort, wenn sie das Ende der Seite erreicht hat + + + + &Wrap around + &Umbrechen + + + + When set, the search goes backwards from cursor position, otherwise it goes forward + Falls gesetzt, erfolgt die Suche rückwärts von der Cursorposition, andernfalls erfolgt sie vorwärts + + + + Search &backwards + Rück&wärts suchen + + + + <html><head/><body><p>When checked, the pattern to find is searched only in the current selection.</p></body></html> + <html><head/><body><p>Wenn ausgewählt, wird das gesuchte Muster nur in der aktuellen Auswahl gesucht.</p></body></html> + + + + &Selection only + Nur Au&swahl + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + <html><head/><body><p>Falls aktiviert, wird das Suchmuster als regulärer Ausdruck (UNIX-Stil) interpretiert. Siehe <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks (englisch)</a>.</p></body></html> + + + + Use regular e&xpressions + Reguläre A&usdrücke verwenden + + + + Find the next occurrence from the cursor position and in the direction set by "Search backwards" + Das nächste Auftreten ausgehend von der Cursorpositoin und in der durch "Rückwärts suchen" gesetzten Richtung finden + + + + &Find Next + Nächste &finden + + + + F3 + + + + + &Replace + &Ersetzen + + + + Highlight all the occurrences of the text in the page + Alle Auftreten des Textes auf der Seite hervorheben + + + + F&ind All + Alle f&inden + + + + Replace all the occurrences of the text in the page + Alle Auftreten des Textes auf der Seite ersetzen + + + + Replace &All + &Alle ersetzen + + + + The searched text was not found + Der gesuchte Text wurde nicht gefunden + + + + The searched text was not found. + Der gesuchte Text wurde nicht gefunden. + + + + The searched text was found one time. + Der gesuchte Text wurde einmal gefunden. + + + + The searched text was found %1 times. + Der gesuchte Text wurde %1-mal gefunden. + + + + The searched text was replaced one time. + Der gesuchte Text wurde einmal ersetzt. + + + + The searched text was replaced %1 times. + Der gesuchte Text wurde %1-mal ersetzt. + + + + ForeignKeyEditor + + + &Reset + Zu&rücksetzen + + + + Foreign key clauses (ON UPDATE, ON DELETE etc.) + Fremdschlüssel-Klauseln (ON UPDATE, ON DELETE etc.) + + + + ImportCsvDialog + + + Import CSV file + CSV-Datei importieren + + + + Table na&me + Tabellenna&me + + + + &Column names in first line + &Spaltennamen in erster Zeile + + + + Field &separator + Feld-&Separator + + + + , + , + + + + ; + ; + + + + + Tab + Tab + + + + | + | + + + + Other + Anderer + + + + &Quote character + &String-Zeichen + + + + + Other (printable) + Anderer (darstellbar) + + + + + Other (code) + Anderer (Code) + + + + " + " + + + + ' + ' + + + + &Encoding + &Codierung + + + + UTF-8 + UTF-8 + + + + UTF-16 + UTF-16 + + + + ISO-8859-1 + ISO-8859-1 + + + + Trim fields? + Felder trimmen? + + + + Separate tables + Tabellen trennen + + + + Advanced + Erweitert + + + + When importing an empty value from the CSV file into an existing table with a default value for this column, that default value is inserted. Activate this option to insert an empty value instead. + Beim Import eines leeren Wertes aus einer CSV-Datei in eine existierende Tabelle mit einem Standardwert für diese Spalte wird dieser Standardwert eingefügt. Aktivieren Sie diese Option, um stattdessen einen leeren Wert einzufügen. + + + + Ignore default &values + Standard&werte ignorieren + + + + Activate this option to stop the import when trying to import an empty value into a NOT NULL column without a default value. + Aktivieren Sie diese Option, um den Import zu stoppen, falls ein leerer Wert in eine NOT-NULL-Spalte ohne Standardwert importiert werden soll. + + + + Fail on missing values + Fehler bei fehlenden Werten + + + + Disable data type detection + Datentyp-Erkennung deaktivieren + + + + Disable the automatic data type detection when creating a new table. + Die automatische Datentyperkennung bei der Erstellung einer neuen Tabelle deaktivieren. + + + + When importing into an existing table with a primary key, unique constraints or a unique index there is a chance for a conflict. This option allows you to select a strategy for that case: By default the import is aborted and rolled back but you can also choose to ignore and not import conflicting rows or to replace the existing row in the table. + Beim Import von Daten in eine existierende Tabelle mit einem Primärschlüssel, Unique-Constraints oder einem eindeutigen Index besteht die Möglichkeit von Konflikten. Diese Option erlaubt die Auswahl einer Strategie für diesen Fall: Standardmäßig wird der Import abgebrochen und zurückgerollt, aber es besteht auch die Option des Ignorierens und somit Nicht-Importierens in Konflikt stehender Zeilen oder des Ersetzens existierender Zeilen der Tabelle. + + + + Abort import + Import abbrechen + + + + Ignore row + Zeile ignorieren + + + + Replace existing row + Existierende Zeile ersetzen + + + + Conflict strategy + Konflikt-Strategie + + + + + Deselect All + Alle abwählen + + + + Match Similar + Ähnliche suchen + + + + Select All + Alle auswählen + + + + There is already a table named '%1' and an import into an existing table is only possible if the number of columns match. + Es gibt bereits eine Tabelle namens '%1' und ein Import in eine existierende Tabelle ist nur bei übereinstimmender Spaltenanzahl möglich. + + + + There is already a table named '%1'. Do you want to import the data into it? + Es gibt bereits eine Tabelle namens '%1'. Möchten Sie die Daten in diese importieren? + + + + Creating restore point failed: %1 + Erstellung des Wiederherstellungspunktes fehlgeschlagen: %1 + + + + Creating the table failed: %1 + Erstellung der Tabelle fehlgeschlagen: %1 + + + + importing CSV + importierte CSV + + + + Importing the file '%1' took %2ms. Of this %3ms were spent in the row function. + Import der Datei '%1' benötigte %2ms. Davon wurden %3ms in der Zeilenfunktion verbracht. + + + + Inserting row failed: %1 + Einfügen der Zeile fehlgeschlagen: %1 + + + + MainWindow + + + toolBar1 + Toolbar1 + + + + Opens the SQLCipher FAQ in a browser window + Öffnt die SQLCiper FAQ in einem Browserfenster + + + + Export one or more table(s) to a JSON file + Exportiert eine oder mehrere Tabelle(n) in eine JSON-Datei + + + + DB Browser for SQLite + DB Browser für SQLite + + + + This is the structure of the opened database. +You can drag SQL statements from an object row and drop them into other applications or into another instance of 'DB Browser for SQLite'. + + Dies ist die Struktur der geöffneten Datenbank. +Sie können SQL-Statements aus einer Objektzeile fassen und in anderen Anwendungen oder einer anderen 'DB-Browser für SQLite'-Instanz ablegen. + + + + + Un/comment block of SQL code + Kommentieren/Unkommentieren eines Block von SQL-Code + + + + Un/comment block + Block kommentieren/unkommentieren + + + + Comment or uncomment current line or selected block of code + Aktuelle Zeilen oder ausgewählten Codeblock kommentieren oder unkommentieren + + + + Comment or uncomment the selected lines or the current line, when there is no selection. All the block is toggled according to the first line. + Aktuelle Zeilen oder aktuelle Zeile kommentieren oder unkommentieren, wenn es keine Auswahl gibt. Der gesamte Block wird entsprechend der ersten Zeile invertiert. + + + + Ctrl+/ + + + + + Stop SQL execution + SQL-Ausführung abbrechen + + + + Stop execution + Ausführung abbrechen + + + + Stop the currently running SQL script + Das aktuelle laufende SQL-Skript stoppen + + + + Error Log + Fehlerlog + + + + Ctrl+F4 + + + + + Compact &Database... + &Datenbank komprimieren... + + + + Execute all/selected SQL + Komplettes/ausgewähltes SQL ausführen + + + + This button executes the currently selected SQL statements. If no text is selected, all SQL statements are executed. + Dieser Button führt das aktuell ausgewählte SQL-Statement aus. Falls kein Text ausgewählt ist, werden alle SQL-Statements ausgeführt. + + + + &Load Extension... + Erweiterung &laden... + + + + Execute line + Zeile ausführen + + + + &Wiki + &Wiki + + + + F1 + + + + + Bug &Report... + Fehle&rmeldung... + + + + Feature Re&quest... + Funktions&anfrage... + + + + Web&site + Web&seite + + + + &Donate on Patreon... + Über &Patreon spenden... + + + + Open &Project... + &Projekt öffnen... + + + + &Attach Database... + Datenbank &anhängen... + + + + + Add another database file to the current database connection + Eine andere Datenbankdatei zur aktuellen Datenbankverbindung hinzufügen + + + + This button lets you add another database file to the current database connection + Dieser Button erlaubt Ihnen das Hinzufügen einer anderen Datenbankdatei zur aktuellen Datenbankverbindung + + + + &Set Encryption... + Verschlüsselung &setzen... + + + + SQLCipher &FAQ + SQLCiper &FAQ + + + + Table(&s) to JSON... + Tabelle(&n) zu JSON... + + + + Open Data&base Read Only... + Daten&bank im Lesemodus öffnen... + + + + Ctrl+Shift+O + + + + + Save results + Ergebnisse speichern + + + + Save the results view + Ergebnisansicht speichern + + + + This button lets you save the results of the last executed query + Dieser Button erlaubt Ihnen das Speichern der Ergebnisse der zuletzt ausgeführten Query + + + + + Find text in SQL editor + Text im SQL-Editor finden + + + + Find + Suchen + + + + This button opens the search bar of the editor + Dieser Button öffnet die Suchleiste des Editors + + + + Ctrl+F + + + + + + Find or replace text in SQL editor + Text im SQL-Editor suchen oder ersetzen + + + + Find or replace + Suchen oder ersetzen + + + + This button opens the find/replace dialog for the current editor tab + Dieser Button öffnet den Suchen-/Ersetzen-Dialog für den aktuellen Editortab + + + + Ctrl+H + + + + + Export to &CSV + Nach &CSV exportieren + + + + Save as &view + Als &View speichern + + + + Save as view + Als View speichern + + + + Browse Table + Tabelle durchsuchen + + + + Shows or hides the Project toolbar. + Zeigt oder versteckt die Projekt-Werkzeugleiste. + + + + Extra DB Toolbar + Extra-DB-Werkzeugleiste + + + + This button lets you save all the settings associated to the open DB to a DB Browser for SQLite project file + Dieser Button erlaubt Ihnen das Speichern aller mit der geöffneten DB verbundenen Einstellungen in einer DB-Browser für SQLite-Projektdatei + + + + This button lets you open a DB Browser for SQLite project file + Dieser Button erlaubt Ihnen das Öffnen einer DB-Browser für SQLite-Projektdatei + + + + New In-&Memory Database + Neue In-&Memory-Datenbank + + + + Drag && Drop Qualified Names + Drag && Drop qualifizierter Namen + + + + + Use qualified names (e.g. "Table"."Field") when dragging the objects and dropping them into the editor + Qualifizierte Namen (z.B. "Tabelle."Feld") verwenden, wenn die Objekte gefasst und im Editor abgelegt werden + + + + Drag && Drop Enquoted Names + Drag && Drop zitierter Namen + + + + + Use escaped identifiers (e.g. "Table1") when dragging the objects and dropping them into the editor + Geschützte Identifier (z.B. "Tabelle1") verwenden, wenn die Objekte gefasst und im Editor abgelegt werden + + + + &Integrity Check + &Integritätsprüfung + + + + Runs the integrity_check pragma over the opened database and returns the results in the Execute SQL tab. This pragma does an integrity check of the entire database. + Führt das integrity_check-Pragma auf der geöffneten Datenbank aus und gibt die Ergebnisse im SQL-Tab zurück. Dieses Pragma führt eine Integritätsprüfung der gesamten Datenbank durch. + + + + &Foreign-Key Check + &Fremdschlüssel-Prüfung + + + + Runs the foreign_key_check pragma over the opened database and returns the results in the Execute SQL tab + Führt das foreign_key_check-Pragma auf der geöffneten Datenbank aus und gibt die Ergebnisse im SQL-Tab zurück + + + + &Quick Integrity Check + &Schnelle Integritätsprüfung + + + + Run a quick integrity check over the open DB + Führt eine schnelle Integritätsprüfung der geöffneten DB aus + + + + Runs the quick_check pragma over the opened database and returns the results in the Execute SQL tab. This command does most of the checking of PRAGMA integrity_check but runs much faster. + Führt das quick_check-Pragma auf der geöffneten Datenbank aus und gibt die Ergebnisse im SQL-Tab zurück. Dieser Befehl führt einen Großteil der Prüfung des integrity_check-Pragmas aus, ist aber deutlich schneller. + + + + &Optimize + &Optimieren + + + + Attempt to optimize the database + Versuchen, die Datenbank zu optimieren + + + + Runs the optimize pragma over the opened database. This pragma might perform optimizations that will improve the performance of future queries. + Führt das optimize-Pragma auf der geöffneten Datenbank aus. Dieses Pragma führt möglicherweise Optimierungen durch, die die Performanz zukünftiger Queries verbessern. + + + + + Print + Drucken + + + + Print text from current SQL editor tab + Den Text aus dem aktuellen SQL-Editortab drucken + + + + Open a dialog for printing the text in the current SQL editor tab + Einen Dialog zum Drucken des Textes im aktuellen SQL-Editortab öffnen + + + + Print the structure of the opened database + Die Struktur der geöffneten Datenbank drucken + + + + Open a dialog for printing the structure of the opened database + Einen Dialog zum Drucken der Struktur der geöffneten Datenbank öffnen + + + + &Save Project As... + Projekt &speichern als... + + + + + + Save the project in a file selected in a dialog + Das Projekt in einer in einem Dialog ausgewählten Datei speichern + + + + Save A&ll + &Alle speichern + + + + + + Save DB file, project file and opened SQL files + DB-Datei, Projektdatei und geöffnete SQL-Dateien speichern + + + + Ctrl+Shift+S + + + + + Open an existing database file in read only mode + Eine existierende Datenbank schreibgeschützt öffnen + + + + &File + &Datei + + + + &Import + &Import + + + + &Export + &Export + + + + &Edit + &Bearbeiten + + + + &View + &Ansicht + + + + &Help + &Hilfe + + + + Edit Database &Cell + Datenbank&zelle bearbeiten + + + + This button clears the contents of the SQL logs + Dieser Button löscht den Inhalt der SQL-Logs + + + + This panel lets you examine a log of all SQL commands issued by the application or by yourself + Dieses Panel erlaubt Ihnen das Betrachten eines Logs aller SQL-Kommandos, die von der Anwendung oder von Ihnen selbst ausgegangen sind + + + + DB Sche&ma + DB-Sche&ma + + + + This is the structure of the opened database. +You can drag multiple object names from the Name column and drop them into the SQL editor and you can adjust the properties of the dropped names using the context menu. This would help you in composing SQL statements. +You can drag SQL statements from the Schema column and drop them into the SQL editor or into other applications. + + Dies ist die Struktur der geöffneten Datenbank. +Sie können mehrere Objektnamen aus der Namensspalte nehmen und in den SQL-Editor ziehen und Sie können die Eigenschaften der abgelegten Namen über das Kontextmenü anpassen. Dies kann Sie bei der Erstellung von SQL-Statements unterstützen. +Sie können SQL-Statements aus der Schemaspalte nehmen und in den SQL-Editor oder in anderen Anwendungen ablegen. + + + + + &Remote + Entfe&rnt + + + + + Execute SQL + This has to be equal to the tab title in all the main tabs + SQL ausführen + + + + Open SQL file(s) + SQL-Datei(en) öffnen + + + + This button opens files containing SQL statements and loads them in new editor tabs + Dieser Button öffnet Dateien mit SQL-Anweisungen und lädt diese in neue Editortabs + + + + + Execute current line + Aktuelle Zeile ausführen + + + + This button executes the SQL statement present in the current editor line + Dieser Button führt das SQL-Statement in der aktuellen Editorzeile aus + + + + Shift+F5 + + + + + Sa&ve Project + &Projekt speichern + + + + + Save SQL file as + SQL-Datei speichern als + + + + This button saves the content of the current SQL editor tab to a file + Dieser Button speichert den Inhalt des aktuellen SQL-Editortabs in einer Datei + + + + &Browse Table + Tabelle &durchsuchen + + + + Copy Create statement + Create-Statement kopieren + + + + Copy the CREATE statement of the item to the clipboard + CREATE-Statement des Elements in die Zwischenablage kopieren + + + + User + Benutzer + + + + Application + Anwendung + + + + &Clear + &Leeren + + + + &New Database... + &Neue Datenbank... + + + + + Create a new database file + Neue Datenbank-Datei erstellen + + + + This option is used to create a new database file. + Diese Option wird zum Erstellen einer neuen Datenbank-Datei verwendet. + + + + Ctrl+N + + + + + + &Open Database... + Datenbank &öffnen... + + + + + + + + Open an existing database file + Existierende Datenbank-Datei öffnen + + + + + + This option is used to open an existing database file. + Diese Option wird zum Öffnen einer existierenden Datenbank-Datei verwendet. + + + + Ctrl+O + + + + + &Close Database + Datenbank &schließen + + + + This button closes the connection to the currently open database file + Dieser Button schließt die Verbindung zu der aktuell geöffneten Datenbankdatei + + + + + Ctrl+W + + + + + + Revert database to last saved state + Datenbank auf zuletzt gespeicherten Zustand zurücksetzen + + + + This option is used to revert the current database file to its last saved state. All changes made since the last save operation are lost. + Diese Option wird zum Zurücksetzen der aktuellen Datenbank-Datei auf den zuletzt gespeicherten Zustand verwendet. Alle getätigten Änderungen gehen verloren. + + + + + Write changes to the database file + Änderungen in Datenbank-Datei schreiben + + + + This option is used to save changes to the database file. + Diese Option wird zum Speichern von Änderungen in der Datenbank-Datei verwendet. + + + + Ctrl+S + + + + + Compact the database file, removing space wasted by deleted records + Datenbank-Datei komprimieren, löscht Speicherplatz von gelöschten Zeilen + + + + + Compact the database file, removing space wasted by deleted records. + Datenbank-Datei komprimieren, löscht Speicherplatz von gelöschten Zeilen. + + + + E&xit + &Beenden + + + + Ctrl+Q + + + + + Import data from an .sql dump text file into a new or existing database. + Daten von einer .sql-Dump-Textdatei in eine neue oder existierende Datenbank importieren. + + + + This option lets you import data from an .sql dump text file into a new or existing database. SQL dump files can be created on most database engines, including MySQL and PostgreSQL. + Diese Option wird zum Importieren von Daten von einer .sql-Dump-Textdatei in eine neue oder existierende Datenbank verwendet. SQL-Dumpdateien können von den meisten Datenbankanwendungen erstellt werden, inklusive MySQL und PostgreSQL. + + + + Open a wizard that lets you import data from a comma separated text file into a database table. + Öffnet einen Assistenten zum Importieren von Daten aus einer kommaseparierten Textdatei in eine Datenbanktabelle. + + + + Open a wizard that lets you import data from a comma separated text file into a database table. CSV files can be created on most database and spreadsheet applications. + Öffnet einen Assistenten zum Importieren von Daten aus einer kommaseparierten Textdatei in eine Datenbanktabelle. CSV-Dateien können von den meisten Datenbank- und Tabellenkalkulations-Anwendungen erstellt werden. + + + + Export a database to a .sql dump text file. + Daten in eine .sql-Dump-Textdatei exportieren. + + + + This option lets you export a database to a .sql dump text file. SQL dump files contain all data necessary to recreate the database on most database engines, including MySQL and PostgreSQL. + Diese Option ermöglicht den Export einer Datenbank in eine .sql-Dump-Textdatei. SQL-Dumpdateien enthalten alle notwendigen Daten, um die Datenbank mit den meisten Datenbankanwendungen neu erstellen zu können, inklusive MySQL und PostgreSQL. + + + + Export a database table as a comma separated text file. + Datenbank als kommaseparierte Textdatei exportieren. + + + + Export a database table as a comma separated text file, ready to be imported into other database or spreadsheet applications. + Exportiert die Datenbank als kommaseparierte Textdatei, fertig zum Import in andere Datenbank- oder Tabellenkalkulations-Anwendungen. + + + + Open the Create Table wizard, where it is possible to define the name and fields for a new table in the database + Den Assistenten zum Erstellen einer Tabelle öffnen, wo der Name und die Felder für eine neue Tabelle in der Datenbank festgelegt werden können + + + + Open the Delete Table wizard, where you can select a database table to be dropped. + Den Assistenten zum Löschen einer Tabelle öffnen, wo eine zu entfernende Datenbanktabelle ausgewählt werden kann. + + + + Open the Modify Table wizard, where it is possible to rename an existing table. It is also possible to add or delete fields form a table, as well as modify field names and types. + Den Assistenten zum Ändern einer Tabelle öffnen, wo eine existierende Tabelle umbenannt werden kann. Ebenso können Felder hinzugefügt und gelöscht sowie Feldnamen und -typen geändert werden. + + + + Open the Create Index wizard, where it is possible to define a new index on an existing database table. + Den Assistenten zum Erstellen des Index öffnen, wo ein neuer Index für eine existierende Datenbanktabelle gewählt werden kann. + + + + &Preferences... + &Einstellungen... + + + + + Open the preferences window. + Das Einstellungsfenster öffnen. + + + + &DB Toolbar + &DB Toolbar + + + + Shows or hides the Database toolbar. + Zeigt oder versteckt die Datenbank-Toolbar. + + + + Shift+F1 + + + + + &Recently opened + &Kürzlich geöffnet + + + + Open &tab + &Tab öffnen + + + + Ctrl+T + + + + + + Database Structure + This has to be equal to the tab title in all the main tabs + Datenbankstruktur + + + + + Browse Data + This has to be equal to the tab title in all the main tabs + Daten durchsuchen + + + + + Edit Pragmas + This has to be equal to the tab title in all the main tabs + Pragmas bearbeiten + + + + Warning: this pragma is not readable and this value has been inferred. Writing the pragma might overwrite a redefined LIKE provided by an SQLite extension. + Warnung: dieses Pragma ist nicht lesbar und dieser Wert wurde abgeleitet. Das Schreiben des Pragmas überschreibt möglicherweise ein geändertes LIKE, welches von einer SQLite-Erweiterung zur Verfügung gestellt wird. + + + + &Tools + &Werkzeuge + + + + DB Toolbar + DB Toolbar + + + + SQL &Log + SQL-&Log + + + + Show S&QL submitted by + Anzeige des übergebenen S&QL von + + + + &Plot + &Diagramm + + + + + Project Toolbar + Projekt-Werkzeugleiste + + + + Extra DB toolbar + Extra-DB-Werkzeugleiste + + + + + + Close the current database file + Die aktuelle Datenbankdatei schließen + + + + &Revert Changes + Änderungen &rückgängig machen + + + + &Write Changes + Änderungen &schreiben + + + + &Database from SQL file... + &Datenbank aus SQL-Datei... + + + + &Table from CSV file... + &Tabelle aus CSV-Datei... + + + + &Database to SQL file... + &Datenbank als SQL-Datei... + + + + &Table(s) as CSV file... + &Tabelle(n) als CSV-Datei... + + + + &Create Table... + Tabelle &erstellen... + + + + &Delete Table... + Tabelle &löschen... + + + + &Modify Table... + Tabelle &ändern... + + + + Create &Index... + &Index erstellen... + + + + W&hat's This? + &Was ist das? + + + + &About + &Über + + + + This button opens a new tab for the SQL editor + Dieser Button öffnet einen neuen Tab im SQL-Editor + + + + &Execute SQL + SQL &ausführen + + + + + Save the current session to a file + Aktuelle Sitzung in einer Datei speichern + + + + + Load a working session from a file + Sitzung aus einer Datei laden + + + + + + Save SQL file + SQL-Datei speichern + + + + Ctrl+E + + + + + Export as CSV file + Als CSV-Datei exportieren + + + + Export table as comma separated values file + Tabelle als kommaseparierte Wertedatei exportieren + + + + Ctrl+L + + + + + + Ctrl+P + + + + + Database encoding + Datenbank-Kodierung + + + + + Choose a database file + Eine Datenbankdatei auswählen + + + + Ctrl+Return + Strg+Return + + + + Ctrl+D + Strg+D + + + + Ctrl+I + Strg+I + + + + Window Layout + + + + + Reset Window Layout + Fensteranordnung zurücksetzen + + + + Alt+0 + + + + + The database is currenctly busy. + Die Datenbank ist aktuell beschäftigt. + + + + Click here to interrupt the currently running query. + Hier klicken, um die aktuell laufende Anfrage zu unterbrechen. + + + + Encrypted + Verschlüsselt + + + + Database is encrypted using SQLCipher + Datenbank ist mittels SQLCipher verschlüsselt + + + + Read only + Nur lesen + + + + Database file is read only. Editing the database is disabled. + Zugriff auf Datenbank nur lesend. Bearbeiten der Datenbank ist deaktiviert. + + + + Could not open database file. +Reason: %1 + Datenbankdatei konnte nicht geöffnet werden. Grund: %1 + + + + + + Choose a filename to save under + Dateinamen zum Speichern auswählen + + + + Error while saving the database file. This means that not all changes to the database were saved. You need to resolve the following error first. + +%1 + Fehler beim Speichern der Datenbankdatei. Dies bedeutet, dass nicht alle Änderungen an der Datenbank gespeichert wurden. Der folgende Fehler muss zuvor gelöst werden: + +%1 + + + + Do you want to save the changes made to SQL tabs in the project file '%1'? + Sollen die in den SQL-Tabs getätigten Änderungen in der Projektdatei '%1' gespeichert werden? + + + + A new DB Browser for SQLite version is available (%1.%2.%3).<br/><br/>Please download at <a href='%4'>%4</a>. + Eine neue Version des DB Browsers für SQLite ist verfügbar (%1.%2.%3).<br/><br/>Bitte laden Sie diese von <a href='%4'>%4</a> herunter. + + + + DB Browser for SQLite project file (*.sqbpro) + DB Browser für SQLite Projektdatei (*.sqbpro) + + + + Error checking foreign keys after table modification. The changes will be reverted. + Fehler beim Prüfen von Fremdschlüsseln nach der Änderung an der Tabelle. Die Änderungen werden rückgängig gemacht. + + + + This table did not pass a foreign-key check.<br/>You should run 'Tools | Foreign-Key Check' and fix the reported issues. + Diese Tabelle hat die Fremdschlüsselprüfung nicht bestanden.<br/>Sie sollten 'Werkzeuge | Fremdschlüssel-Prüfng' ausführen und die gemeldeten Probleme beheben. + + + + Execution finished with errors. + Ausführung wurde mit Fehlern beendet. + + + + Execution finished without errors. + Ausführung wurde ohne Fehler beendet. + + + + Are you sure you want to undo all changes made to the database file '%1' since the last save? + Sollen wirklich alle Änderungen an der Datenbankdatei '%1' seit dem letzten Speichern rückgängig gemacht werden? + + + + Choose a file to import + Datei für Import auswählen + + + + Text files(*.sql *.txt);;All files(*) + Textdateien(*.sql *.txt);;Alle Dateien(*) + + + + Do you want to create a new database file to hold the imported data? +If you answer no we will attempt to import the data in the SQL file to the current database. + Soll für die importierten Daten eine neue Datenbank erstellt werden? +Bei der Antwort NEIN werden die Daten in die SQL-Datei der aktuellen Datenbank importiert. + + + + You are still executing SQL statements. Closing the database now will stop their execution, possibly leaving the database in an inconsistent state. Are you sure you want to close the database? + Es werden aktuell SQL-Statements ausgeführt. Das Schließen der Datenbank wird deren Ausführung stoppen, was die Datenbank möglicherweise in einem inkonsistenten Zustand belässt. Soll die Datenbank wirklich geschlossen werden? + + + + Do you want to save the changes made to the project file '%1'? + Sollen die an der Projektdatei '%1' getätigten Änderungen gespeichert werden? + + + + File %1 already exists. Please choose a different name. + Datei %1 existiert bereits. Bitte einen anderen Namen auswählen. + + + + Error importing data: %1 + Fehler beim Datenimport: %1 + + + + Import completed. + Import abgeschlossen. + + + + Delete View + Ansicht löschen + + + + Delete Trigger + Trigger löschen + + + + Delete Index + Index löschen + + + + + Delete Table + Tabelle löschen + + + + Setting PRAGMA values will commit your current transaction. +Are you sure? + Das Setzen von PRAGMA-Werten übermittelt den aktuellen Vorgang. +Sind Sie sicher? + + + + In-Memory database + In-Memory-Datenbank + + + + Simplify Window Layout + + + + + Shift+Alt+0 + + + + + Dock Windows at Bottom + + + + + Dock Windows at Left Side + + + + + Dock Windows at Top + + + + + Are you sure you want to delete the table '%1'? +All data associated with the table will be lost. + Möchten Sie die Tabelle '%1' wirklich löschen? +Alle mit dieser Tabelle verbundenen Daten gehen verloren. + + + + Are you sure you want to delete the view '%1'? + Möchten Sie die Ansicht '%1' wirklich löschen? + + + + Are you sure you want to delete the trigger '%1'? + Möchten Sie den Trigger '%1' wirklich löschen? + + + + Are you sure you want to delete the index '%1'? + Möchten Sie den Index '%1' wirklich löschen? + + + + Error: could not delete the table. + Fehler: Tabelle konnte nicht gelöscht werden. + + + + Error: could not delete the view. + Fehler: Ansicht konnte nicht gelöscht werden. + + + + Error: could not delete the trigger. + Fehler: Trigger konnte nicht gelöscht werden. + + + + Error: could not delete the index. + Fehler: Index konnte nicht gelöscht werden. + + + + Message from database engine: +%1 + Nachricht von Datenbank-Engine: +%1 + + + + Editing the table requires to save all pending changes now. +Are you sure you want to save the database? + Das Bearbeiten der Tabelle setzt das Speichern aller ausstehenden Änderungen voraus. +Möchten Sie die Datenbank wirklich speichern? + + + + Edit View %1 + Ansicht %1 bearbeiten + + + + Edit Trigger %1 + Trigger %1 bearbeiten + + + + You are already executing SQL statements. Do you want to stop them in order to execute the current statements instead? Note that this might leave the database in an inconsistent state. + Es werden bereits SQL-Statements ausgeführt. Sollen diese gestoppt werden, um stattdessen die aktuellen Statements auszuführen? Dies führt möglicherweise zu einem inkonsistenten Zustand der Datenbank. + + + + -- EXECUTING SELECTION IN '%1' +-- + -- FÜHRE AUSWAHL IN '%1' AUS +-- + + + + -- EXECUTING LINE IN '%1' +-- + -- FÜHRE ZEILE IN '%1' AUS +-- + + + + -- EXECUTING ALL IN '%1' +-- + -- FÜHRE ALLES IN '%1' AUS +-- + + + + + At line %1: + In Zeile %1: + + + + Result: %1 + Ergebnis: %1 + + + + Result: %2 + Ergebnis: %2 + + + + Setting PRAGMA values or vacuuming will commit your current transaction. +Are you sure? + Das Setzen von PRAGMA-Werten oder des Vakuumings wird Ihre aktuelle Transaktion committen. +Sind Sie sich sicher? + + + + Project saved to file '%1' + Projekt in Datei '%1' gespeichert + + + + This action will open a new SQL tab with the following statements for you to edit and run: + Diese Aktion öffnet einen neuen SQL-Tab mit den folgenden Anweisungen zum Bearbeiten und Ausführen: + + + + Rename Tab + Tab umbenennen + + + + Duplicate Tab + Tab duplizieren + + + + Close Tab + Tab schließen + + + + Opening '%1'... + Öffne '%1'... + + + + There was an error opening '%1'... + Fehler beim Öffnen von '%1'... + + + + Value is not a valid URL or filename: %1 + Wert ist keine gültige URL bzw. kein gültiger Dateiname: %1 + + + + %1 rows returned in %2ms + %1 Zeilen in %2ms zurückgegeben + + + + Choose text files + Textdateien auswählen + + + + Import completed. Some foreign key constraints are violated. Please fix them before saving. + Import vollständig. Ein paar Fremdschlüssel wurden verletzt. Bitten beheben Sie diese vor dem Speichern. + + + + Modify View + Ansicht verändern + + + + Modify Trigger + Trigger verändern + + + + Modify Index + Index verändern + + + + Modify Table + Tabelle verändern + + + + Opened '%1' in read-only mode from recent file list + + + + + Opened '%1' from recent file list + + + + + &%1 %2%3 + &%1 %2%3 + + + + (read only) + (nur lesend) + + + + Open Database or Project + Datenbank oder Projekt öffnen + + + + Attach Database... + Datenbank anhängen... + + + + Import CSV file(s)... + CSV-Datei(en) importieren... + + + + Select the action to apply to the dropped file(s). <br/>Note: only 'Import' will process more than one file. + + Auf die Datei anzuwendende Aktion auswählen. <br/>Hinweis: Nur 'Import' kann mehr als eine Datei verarbeiten. + Auf die Dateien anzuwendende Aktion auswählen. <br/>Hinweis: Nur 'Import' kann mehr als eine Datei verarbeiten. + + + + + Do you want to save the changes made to SQL tabs in a new project file? + Sollen die an den SQL-Tabs getätigten Änderungen in einer neuen Projektdatei gespeichert werden? + + + + Do you want to save the changes made to the SQL file %1? + Sollen die getätigten Änderungen in der SQL-Datei %1 gespeichert werden? + + + + The statements in this tab are still executing. Closing the tab will stop the execution. This might leave the database in an inconsistent state. Are you sure you want to close the tab? + Es werden aktuell SQL-Statements ausgeführt. Das Schließen des Tabs wird deren Ausführung stoppen, was die Datenbank möglicherweise in einem inkonsistenten Zustand belässt. Soll der Tab wirklich geschlossen werden? + + + + Select SQL file to open + SQL-Datei zum Öffnen auswählen + + + + Select file name + Dateinamen auswählen + + + + Select extension file + Erweiterungsdatei auswählen + + + + Extension successfully loaded. + Erweiterung erfolgreich geladen. + + + + Error loading extension: %1 + Fehler beim Laden der Erweiterung: %1 + + + + Could not find resource file: %1 + Ressourcen-Datei konnte nicht gefunden werden: %1 + + + + + Don't show again + Nicht wieder anzeigen + + + + New version available. + Neue Version verfügbar. + + + + Choose a project file to open + Wählen Sie die zu öffnende Projektdatei + + + + This project file is using an old file format because it was created using DB Browser for SQLite version 3.10 or lower. Loading this file format is still fully supported but we advice you to convert all your project files to the new file format because support for older formats might be dropped at some point in the future. You can convert your files by simply opening and re-saving them. + Diese Projektdatei verwendet ein altes Dateiformat, da es mit DB-Browser für SQLite Version 3.10 oder niedriger erstellt wurde. Das Laden dieses Dateiformats wird noch vollständig unterstützt, wird empfehlen Ihnen allerdings, alle Ihre Projektdateien in das neue Dateiformat zu überführen, da die Unterstützung für ältere Formate in Zukunft möglicherweise entfernt wird. Sie können Ihre Dateien einfach durch Öffnen und Neuspeichern umwandeln. + + + + Could not open project file for writing. +Reason: %1 + Projekt-Datei konnte nicht schreibend geöffnet werden. +Grund: %1 + + + + Collation needed! Proceed? + Kollation notwendig! Fortführen? + + + + A table in this database requires a special collation function '%1' that this application can't provide without further knowledge. +If you choose to proceed, be aware bad things can happen to your database. +Create a backup! + Eine Tabelle in dieser Datenbank benötigt eine spezielle Kollationsfunktion '%1', welche diese Anwendung ohne weiterem Wissen nicht zur Verfügung stellen kann. +Wenn Sie fortfahren, sollten Sie im Hinterkopf behalten, dass mit Ihrer Datenbank unerwartete Dinge geschehen können. +Erstellen Sie ein Backup! + + + + creating collation + erstelle Kollation + + + + Set a new name for the SQL tab. Use the '&&' character to allow using the following character as a keyboard shortcut. + Vergeben Sie einen Namen für den SQL-Tab. Verwenden Sie das '&&'-Zeichen, um das folgende Zeichen als Tastaturkürzel zu verwenden. + + + + Please specify the view name + Geben Sie bitte einen Namen für Ansicht an + + + + There is already an object with that name. Please choose a different name. + Es gibt bereits ein Objekt mit diesem Namen. Bitte wählen Sie einen anderen aus. + + + + View successfully created. + Ansicht erfolgreich erstellt. + + + + Error creating view: %1 + Fehler beim Erstellen der Ansicht: %1 + + + + This action will open a new SQL tab for running: + Diese Aktion öffnet einen neuen SQL-Tab zur Ausführung: + + + + Press Help for opening the corresponding SQLite reference page. + Drücken Sie auf 'Hilfe', um die entsprechende SQLite-Referenzseite zu öffnen. + + + + Busy (%1) + Beschäftigt (%1) + + + + NullLineEdit + + + Set to NULL + Auf NULL setzen + + + + Alt+Del + + + + + PlotDock + + + Plot + Diagramm + + + + <html><head/><body><p>This pane shows the list of columns of the currently browsed table or the just executed query. You can select the columns that you want to be used as X or Y axis for the plot pane below. The table shows detected axis type that will affect the resulting plot. For the Y axis you can only select numeric columns, but for the X axis you will be able to select:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Date/Time</span>: strings with format &quot;yyyy-MM-dd hh:mm:ss&quot; or &quot;yyyy-MM-ddThh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Date</span>: strings with format &quot;yyyy-MM-dd&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Time</span>: strings with format &quot;hh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Label</span>: other string formats. Selecting this column as X axis will produce a Bars plot with the column values as labels for the bars</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Numeric</span>: integer or real values</li></ul><p>Double-clicking the Y cells you can change the used color for that graph.</p></body></html> + <html><head/><body><p>Dieses Pane zeigt die Liste der Spalten der aktuell ausgewählten Tabelle oder des soeben ausgeführtne Queries. Sie können die für die X- und Y-Achse gewünschten Spalten für das Plot-Pane unten auswählen. Die Tabelle zeigt den erkannten Axentyp, der den entstehenden Plot beeinflusst. Für die Y-Achse sind nur numerische Spalten zulässig, während Sie für die X-Achse aus folgenden Optionen auswählen können:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Datum/Zeit</span>: Strings im Format &quot;yyyy-MM-dd hh:mm:ss&quot; or &quot;yyyy-MM-ddThh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Datum</span>: Strings im Format &quot;yyyy-MM-dd&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Zeit</span>: Strings im Format &quot;hh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Beschriftung</span>: andere Stringformate. Die Auswahl dieser Spalte als X-Achse erzeugt einen Barplot mit den Spaltenwerten als Beschriftungen der Bars.</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Numerisch</span>: Integer- oder Real-Werte</li></ul><p>Ein Doppelklick auf die Y-Zellen ermöglicht Ihnen das Ändern der für den Graph verwendeten Farbe.</p></body></html> + + + + Columns + Spalten + + + + X + X + + + + Y1 + Y1 + + + + Y2 + Y2 + + + + Axis Type + Achsentyp + + + + Here is a plot drawn when you select the x and y values above. + +Click on points to select them in the plot and in the table. Ctrl+Click for selecting a range of points. + +Use mouse-wheel for zooming and mouse drag for changing the axis range. + +Select the axes or axes labels to drag and zoom only in that orientation. + Hier wird ein Plot angezeigt, wenn Sie oben die x- und y-Werte auswählen. + +Klicken Sie auf Punkte, um diese im Plot und in der Tabelle auszuwählen. Strg+Klick zur Auswahl eines Punktebereichs. + +Verwenden Sie das Mausrad zum Zoomen und Ziehen Sie mit der Maus, um den Achsenbereich zu ändern. + +Wählen Sie die Achsen oder Achsenbeschriftungen aus, um nur in diese Richtung zu zoomen oder zu verschieben. + + + + Line type: + Linientyp: + + + + + None + Keine + + + + Line + Linie + + + + StepLeft + Linksschritt + + + + StepRight + Rechtsschritt + + + + StepCenter + Mittelschritt + + + + Impulse + Impuls + + + + Point shape: + Punktform: + + + + Cross + Kreuz + + + + Plus + Plus + + + + Circle + Kreis + + + + Disc + Scheibe + + + + Square + Quadrat + + + + Diamond + Diamant + + + + Star + Stern + + + + Triangle + Dreieck + + + + TriangleInverted + Invertiertes Dreieck + + + + CrossSquare + Quadrat mit Kreuz + + + + PlusSquare + Quadrat mit Plus + + + + CrossCircle + Kreis mit Kreuz + + + + PlusCircle + Kreis mit Plus + + + + Peace + Peace + + + + <html><head/><body><p>Save current plot...</p><p>File format chosen by extension (png, jpg, pdf, bmp)</p></body></html> + <html><head/><body><p>Aktuelles Diagramm speichern...</p><p>Dateiformat durch Endung auswählen (png, jpg, pdf, bmp)</p></body></html> + + + + Save current plot... + Aktuelles Diagramm speichern... + + + + + Load all data and redraw plot + Alle Daten laden und Plot neu zeichnen + + + + + + Row # + Zeile # + + + + Copy + Kopieren + + + + Print... + Drucken... + + + + Show legend + Legende anzeigen + + + + Stacked bars + Gestapelte Bars + + + + Date/Time + Datum/Zeit + + + + Date + Datum + + + + Time + Zeit + + + + + Numeric + Numerisch + + + + Label + Beschriftung + + + + Invalid + Ungültig + + + + Load all data and redraw plot. +Warning: not all data has been fetched from the table yet due to the partial fetch mechanism. + Alle Daten laden und Plot neu zeichnen. +Warnung: es wurden aufgrund der partiellen Abrufmechanismus noch nicht alle Daten aus der Tabelle abgerufen. + + + + Choose an axis color + Eine Achsenfarbe wählen + + + + Choose a filename to save under + Dateinamen zum Speichern auswählen + + + + PNG(*.png);;JPG(*.jpg);;PDF(*.pdf);;BMP(*.bmp);;All Files(*) + PNG(*.png);;JPG(*.jpg);;PDF(*.pdf);;BMP(*.bmp);;Alle Dateien(*) + + + + There are curves in this plot and the selected line style can only be applied to graphs sorted by X. Either sort the table or query by X to remove curves or select one of the styles supported by curves: None or Line. + Dieser Plot enthält Kurven und der ausgewählte Linienstil kann nur auf nach X sortierte Graphen angewendet werden. Sortieren Sie entweder die Tabelle oder Query nach X oder entfernen Sie die Kurven oder wählen Sie eine der Stile, die von Kurven unterstützt werden: Keiner oder Linie. + + + + Loading all remaining data for this table took %1ms. + Das Laden aller verbleibender Daten dieser Tabelle benötigte %1ms. + + + + PreferencesDialog + + + Preferences + Einstellungen + + + + &General + All&gemeines + + + + Remember last location + Letztes Verzeichnis merken + + + + Always use this location + Immer dieses Verzeichnis verwenden + + + + Remember last location for session only + Letztes Verzeichnis nur innerhalb der Sitzung merken + + + + Lan&guage + &Sprache + + + + Show remote options + Fernzugriffs-Optionen anzeigen + + + + Automatic &updates + Automatische &Updates + + + + &Database + &Datenbank + + + + Database &encoding + Datenbank-&Kodierung + + + + Open databases with foreign keys enabled. + Öffnen von Datenbanken mit Fremdschlüsseln aktiviert. + + + + &Foreign keys + &Fremdschlüssel + + + + + + + + + + + + enabled + aktiviert + + + + Default &location + Voreingestellter &Speicherort + + + + + + ... + ... + + + + Remove line breaks in schema &view + Zeilenumbrüche in der Schema&ansicht entfernen + + + + Prefetch block si&ze + Block&größe für Prefetch + + + + SQ&L to execute after opening database + Nach dem Öffnen einer Datenbank auszuführendes SQ&L + + + + Default field type + Voreingestellter Feldtyp + + + + Data &Browser + Daten&auswahl + + + + Font + Schrift + + + + &Font + Schri&ft + + + + Content + Inhalt + + + + Symbol limit in cell + Symbolbegrenzung in Zelle + + + + NULL + NULL + + + + Regular + Normal + + + + Binary + Binär + + + + Background + Hintergrund + + + + Filters + Filter + + + + Threshold for completion and calculation on selection + Schwellwert für die Vervollständigung und Berechnung bei Auswahl + + + + Show images in cell + Bilder in Zelle anzeigen + + + + Enable this option to show a preview of BLOBs containing image data in the cells. This can affect the performance of the data browser, however. + Diese Option aktivieren, um eine Vorschau von BLOBs mit Bilddaten in den Zellen anzuzeigen. Dies kann allerdings die Performanz der Anwendung beeinflussen. + + + + Escape character + Escape-Zeichen + + + + Delay time (&ms) + Verzögerung (&ms) + + + + Set the waiting time before a new filter value is applied. Can be set to 0 for disabling waiting. + Verzögerung vor der Anwendung eines neuen Filters setzen. Kann auf 0 gesetzt werden, um dies zu deaktivieren. + + + + &SQL + &SQL + + + + Settings name + Einstellungsname + + + + Context + Kontext + + + + Colour + Farbe + + + + Bold + Fett + + + + Italic + Kursiv + + + + Underline + Unterstreichung + + + + Keyword + Schlüsselwort + + + + Function + Funktion + + + + Table + Tabelle + + + + Comment + Kommentar + + + + Identifier + Bezeichner + + + + String + String + + + + Current line + Aktuelle Zeile + + + + SQL &editor font size + SQL-&Editor Schriftgröße + + + + Tab size + Tab-Größe + + + + SQL editor &font + SQL Editor &Schrift + + + + Error indicators + Fehleranzeige + + + + Hori&zontal tiling + Hori&zontale Anordnung + + + + If enabled the SQL code editor and the result table view are shown side by side instead of one over the other. + Im aktivierten Zustand werden der SQL-Codeeditor und die Ergebnistabelle neben- statt untereinander angezeigt. + + + + Code co&mpletion + &Codevervollständung + + + + Toolbar style + Werkzeugleisten-Stil + + + + + + + + Only display the icon + Nur das Symbol anzeigen + + + + + + + + Only display the text + Nur den Text anzeigen + + + + + + + + The text appears beside the icon + Der Text erscheint neben dem Symbol + + + + + + + + The text appears under the icon + Der Text erscheint unter dem Symbol + + + + + + + + Follow the style + Dem Stil folgen + + + + DB file extensions + DB-Datei-Erweiterungen + + + + Manage + Verwalten + + + + Main Window + Hauptfenster + + + + Database Structure + Datenbankstruktur + + + + Browse Data + Daten durchsuchen + + + + Execute SQL + SQL ausführen + + + + Edit Database Cell + Datenbankzelle bearbeiten + + + + When this value is changed, all the other color preferences are also set to matching colors. + Wenn dieser Wert geändert wird, werden alle anderen Farbeinstellungen auch auf die entsprechenden Farben gesetzt. + + + + Follow the desktop style + Dem Desktop-Stil folgen + + + + Dark style + Dunkler Stil + + + + Application style + Anwendungs-Stil + + + + This sets the font size for all UI elements which do not have their own font size option. + + + + + Font size + + + + + When enabled, the line breaks in the Schema column of the DB Structure tab, dock and printed output are removed. + Falls aktiviert, werden die Zeilenumbrüche in der Schemaspalte des DB-Strukturtabs, Docks und der gedruckten Ausgabe entfernt. + + + + Database structure font size + + + + + Font si&ze + Schrift&größe + + + + This is the maximum number of items allowed for some computationally expensive functionalities to be enabled: +Maximum number of rows in a table for enabling the value completion based on current values in the column. +Maximum number of indexes in a selection for calculating sum and average. +Can be set to 0 for disabling the functionalities. + Dies ist die maximale Elementanzahl, die für die Aktivierung von ein paar berechnungsintensiven Funktionalitäten erlaubt ist: +Maximale Zeilenanzahl in einer Tabelle für die Wertvervollständig basierend auf den aktuellen Werten in dieser Spalte. +Maximale Indexanzahl einer Auswahl für die Berechnung von Summe und Durchschnitt. +Kann auf 0 gesetzt werden, um diese Funktionalitäten zu deaktivieren. + + + + This is the maximum number of rows in a table for enabling the value completion based on current values in the column. +Can be set to 0 for disabling completion. + Dies ist die maximale Anzahl an Zeilen in einer Tabelle, die zur Wertvervollständigung basierend auf aktuellen Werten in dieser Spalte erlaubt ist. +Kann auf 0 gesetzt werden, um die Vervollständigung zu deaktivieren. + + + + Field display + Feldanzeige + + + + Displayed &text + Angezeigter &Text + + + + + + + + + Click to set this color + Zur Auswahl der Farbe klicken + + + + Text color + Textfarbe + + + + Background color + Hintergrundfarbe + + + + Preview only (N/A) + Nur Vorschau (N/A) + + + + Foreground + Vordergrund + + + + SQL &results font size + Schriftgröße SQL-&Ergebnisse + + + + &Wrap lines + Zeilen &umbrechen + + + + Never + Nie + + + + At word boundaries + An Wortgrenzen + + + + At character boundaries + An Zeichengrenzen + + + + At whitespace boundaries + An Leerzeichengrenzen + + + + &Quotes for identifiers + &Anführungszeichen für Identifiers + + + + Choose the quoting mechanism used by the application for identifiers in SQL code. + Wählen Sie den Zitiermechanismus aus, der von der Anwendung für Identifier im SQL-Code verwendet wird. + + + + "Double quotes" - Standard SQL (recommended) + "Doppelt Anführungszeichen" - Standard-SQL (empfohlen) + + + + `Grave accents` - Traditional MySQL quotes + `Akzente` - Traditionelle MySQL-Anführungszeichen + + + + [Square brackets] - Traditional MS SQL Server quotes + [Eckige Klammern] - Traditionelle MS-SQL-Server-Anführungszeichen + + + + Keywords in &UPPER CASE + Schlüsselwörter in &GROSSSCHREIBUNG + + + + When set, the SQL keywords are completed in UPPER CASE letters. + Falls gesetzt, werden die SQL-Schlüsselwörter in GROßSCHREIBUNG vervollständigt. + + + + When set, the SQL code lines that caused errors during the last execution are highlighted and the results frame indicates the error in the background + Falls gesetzt, werden die SQL-Codezeilen, die während der letzten Ausführung Fehler verursacht haben, hervorgehoben und das Ergebnisfenster zeigt den Fehler im Hintergrund an + + + + Close button on tabs + Schließen-Button für Tabs + + + + If enabled, SQL editor tabs will have a close button. In any case, you can use the contextual menu or the keyboard shortcut to close them. + Wenn aktiviert, werden die SQL-Editor-Tabs einen Schließen-Button haben. In allen Fällen können Sie zum Schließen auch das Kontextmenü oder die Tastenkombination verwenden. + + + + &Extensions + &Erweiterungen + + + + Select extensions to load for every database: + Bei jeder Datenbank zu ladende Erweiterungen auswählen: + + + + Add extension + Erweiterung hinzufügen + + + + Remove extension + Erweiterung entfernen + + + + <html><head/><body><p>While supporting the REGEXP operator SQLite doesn't implement any regular expression<br/>algorithm but calls back the running application. DB Browser for SQLite implements this<br/>algorithm for you to let you use REGEXP out of the box. However, as there are multiple possible<br/>implementations of this and you might want to use another one, you're free to disable the<br/>application's implementation and load your own by using an extension. Requires restart of the application.</p></body></html> + <html><head/><body><p>Auch wenn der REGEXP-Operator unterstützt wird, implementiert SQLite keinerlei Algorithmus für reguläre<br/>Ausdrücke, sondern leitet diese an die laufende Anwendung weiter. DB Browser für SQLite implementierte diesen<br/>Algorithmus für Sie, um REGEXP ohne Zusätze verwenden zu können. Allerdings gibt es viele mögliche<br/>Implementierungen und Sie möchten unter Umständen eine andere wählen, dann können Sie die<br/>Implementierung der Anwendung deaktivieren und Ihre eigene durch Laden einer Erweiterung verwenden. Ein Neustart der Anwendung ist notwendig.</p></body></html> + + + + Disable Regular Expression extension + Erweiterung für reguläre Ausdrücke deaktivieren + + + + <html><head/><body><p>SQLite provides an SQL function for loading extensions from a shared library file. Activate this if you want to use the <span style=" font-style:italic;">load_extension()</span> function from SQL code.</p><p>For security reasons, extension loading is turned off by default and must be enabled through this setting. You can always load extensions through the GUI, even though this option is disabled.</p></body></html> + <html><head/><body><p>SQLite bietet eine SQL-Funktion an, um Erweiterungen aus einer Shared-Library-Datei zu laden. Aktivieren Sie dies, falls Sie die <span style=" font-style:italic;">load_extension()</span>-Funktion aus SQL-Code heraus benutzen möchten.</p><p>Aus Sicherheitsgründen ist das Laden von Erweiterungen standardmäßig deaktiviert und muss durch diese Einstellung aktiviert werden. Sie können alternativ immer die gewünschten Erweiterungen über die GUI laden, auch wenn diese Option deaktiviert ist.</p></body></html> + + + + Allow loading extensions from SQL code + Erlaube das Laden von Erweiterungen aus SQL-Code + + + + Remote + Entfernt + + + + CA certificates + CA-Zertifikate + + + + Proxy + Proxy + + + + Configure + Konfigurieren + + + + + Subject CN + Subject CN + + + + Common Name + Common Name + + + + Subject O + Subject O + + + + Organization + Organisation + + + + + Valid from + Gültig ab + + + + + Valid to + Gültig bis + + + + + Serial number + Seriennummer + + + + Your certificates + Ihre Zertifikate + + + + File + Datei + + + + Subject Common Name + Subject Common Name + + + + Issuer CN + CN des Ausstellers + + + + Issuer Common Name + Common Name des Ausstellers + + + + Clone databases into + Datenbank klonen nach + + + + + Choose a directory + Verzeichnis wählen + + + + The language will change after you restart the application. + Die Sprache wird nach einem Neustart der Anwendung geändert. + + + + Select extension file + Erweiterungsdatei wählen + + + + Extensions(*.so *.dylib *.dll);;All files(*) + Erweiterungen(*.so *.dylib *.dll);;Alle Dateien(*) + + + + Import certificate file + Zertifikatsdatei importieren + + + + No certificates found in this file. + In dieser Datei wurden keine Zertifikate gefunden. + + + + Are you sure you want do remove this certificate? All certificate data will be deleted from the application settings! + Soll dieses Zertifikat wirklich entfernt werden? Jegliche Zertifikatdaten werden aus den Anwendungseinstellungen gelöscht! + + + + Are you sure you want to clear all the saved settings? +All your preferences will be lost and default values will be used. + Möchten Sie wirklich alle gespeicherten Einstellungen löschen? +Alle Ihre Einstellungen gehen dadurch verloren und die Standardwerte werden verwendet. + + + + ProxyDialog + + + Proxy Configuration + Proxy-Konfiguration + + + + Pro&xy Type + Pro&xy-Typ + + + + Host Na&me + Hostna&me + + + + Port + Port + + + + Authentication Re&quired + Anmeldung not&wendig + + + + &User Name + &Benutzername + + + + Password + Passwort + + + + None + Keiner + + + + System settings + Systemeinstellungen + + + + HTTP + HTTP + + + + Socks v5 + Socks v5 + + + + QObject + + + Error importing data + Fehler beim Datenimport + + + + from record number %1 + von Zeilennummer %1 + + + + . +%1 + . +%1 + + + + Importing CSV file... + Importiere CSV-Datei... + + + + Cancel + Abbrechen + + + + All files (*) + Alle Dateien (*) + + + + SQLite database files (*.db *.sqlite *.sqlite3 *.db3) + SQLite Datenbankdateien (*.db *.sqlite *.sqlite3 *.db3) + + + + Left + Links + + + + Right + Rechts + + + + Center + Zentriert + + + + Justify + Blocksatz + + + + SQLite Database Files (*.db *.sqlite *.sqlite3 *.db3) + SQLite-Datenbankdateien (*.db *.sqlite *.sqlite3 *.db3) + + + + DB Browser for SQLite Project Files (*.sqbpro) + DB Browser für SQLite Projektdateien (*.sqbpro) + + + + SQL Files (*.sql) + SQL-Dateien (*.sql) + + + + All Files (*) + Alle Dateien (*) + + + + Text Files (*.txt) + Text-Dateien (*.txt) + + + + Comma-Separated Values Files (*.csv) + Kommaseparierte Datendateien (*.csv) + + + + Tab-Separated Values Files (*.tsv) + Tabulator-separierte Datendateien (*.tsv) + + + + Delimiter-Separated Values Files (*.dsv) + Trenner-separierte Datendateien (*.dsv) + + + + Concordance DAT files (*.dat) + Konkordanz DAT-Dateien (*.dat) + + + + JSON Files (*.json *.js) + JSON-Dateien (*.json *.js) + + + + XML Files (*.xml) + XML-Dateien (*.xml) + + + + Binary Files (*.bin *.dat) + Binärdateien (*.bin *.dat) + + + + SVG Files (*.svg) + SVG-Dateien (*.svg) + + + + Hex Dump Files (*.dat *.bin) + Hex-Dump-Dateien (*.dat *.bin) + + + + Extensions (*.so *.dylib *.dll) + Erweiterungen (*.so *.dylib *.dll) + + + + RemoteCommitsModel + + + Commit ID + + + + + Message + + + + + Date + Datum + + + + Author + + + + + Size + Größe + + + + Authored and committed by %1 + + + + + Authored by %1, committed by %2 + + + + + RemoteDatabase + + + Error opening local databases list. +%1 + Fehler beim Öffnen der lokalen Datenbankliste. +%1 + + + + Error creating local databases list. +%1 + Fehler beim Erstellen der lokalen Datenbankliste. +%1 + + + + RemoteDock + + + Remote + Entfernt + + + + Local + Lokal + + + + Identity + Identität + + + + Push currently opened database to server + Aktuell geöffnete Datenbank an den Server übertragen + + + + DBHub.io + + + + + <html><head/><body><p>In this pane, remote databases from dbhub.io website can be added to DB Browser for SQLite. First you need an identity:</p><ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Login to the dbhub.io website (use your GitHub credentials or whatever you want)</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Click the button to &quot;Generate client certificate&quot; (that's your identity). That'll give you a certificate file (save it to your local disk).</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Go to the Remote tab in DB Browser for SQLite Preferences. Click the button to add a new certificate to DB Browser for SQLite and choose the just downloaded certificate file.</li></ol><p>Now the Remote panel shows your identity and you can add remote databases.</p></body></html> + <html><head/><body><p>In diesem Fensterbereich können entfernte Datenbanken von der dbhub.io-Webseite zu DB-Browser für SQLite hinzugefügt werden. Zunächst benötigen Sie eine Identität:</p><ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Melden Sie sich auf der dbhub.io-Webseite an (unter Verwendung Ihrer GitHub-Daten oder wie gewünscht)</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Klicken Sie auf den Button &quot;Generate client certificate&quot;, um ein Zertifikat zu erstellen (das ist Ihre Identität). Speichern Sie die erzeugte Zertifikatdatei auf ihrer lokalen Festplatte.</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Öffnen Sie den Entfernt-Tab in den DB-Browser für SQLite-Einstellungen. Klicken Sie auf den Button, um ein neues Zertifikat hinzuzufügen und wählen Sie die soeben heruntergeladene Zertifikatdatei aus.</li></ol><p>Jetzt zeigt der Entfernt-Fensterbereich Ihre Identität und Sie können entfernte Datenbanken hinzufügen.</p></body></html> + + + + Current Database + + + + + Clone + + + + + User + Benutzer + + + + Database + Datenbank + + + + Branch + Branch + + + + Commits + + + + + Commits for + + + + + Delete Database + + + + + Delete the local clone of this database + + + + + Open in Web Browser + + + + + Open the web page for the current database in your browser + + + + + Clone from Link + + + + + Use this to download a remote database for local editing using a URL as provided on the web page of the database. + + + + + Refresh + Aktualisieren + + + + Reload all data and update the views + + + + + F5 + + + + + Clone Database + + + + + Open Database + + + + + Open the local copy of this database + + + + + Check out Commit + + + + + Download and open this specific commit + + + + + Check out Latest Commit + + + + + Check out the latest commit of the current branch + + + + + Save Revision to File + + + + + Saves the selected revision of the database to another file + + + + + Upload Database + + + + + Upload this database as a new commit + + + + + <html><head/><body><p>You are currently using a built-in, read-only identity. For uploading your database, you need to configure and use your DBHub.io account.</p><p>No DBHub.io account yet? <a href="https://dbhub.io/"><span style=" text-decoration: underline; color:#007af4;">Create one now</span></a> and import your certificate <a href="#preferences"><span style=" text-decoration: underline; color:#007af4;">here</span></a> to share your databases.</p><p>For online help visit <a href="https://dbhub.io/about"><span style=" text-decoration: underline; color:#007af4;">here</span></a>.</p></body></html> + <html><head/><body><p>Aktuell wird eine eingebaute, nur lesend verwendbare Identität verwendet. Zum Hochladen einer Datenbank muss ein DBHub.io-Konto konfiguriert und verwendet werden.</p><p>Noch kein DBHub.io-Konto vorhanden? <a href="https://dbhub.io/"><span style=" text-decoration: underline; color:#007af4;">Jetzt ein Konto erstellen</span></a> und das Zertifikat <a href="#preferences"><span style=" text-decoration: underline; color:#007af4;">hier</span></a> hochladen, um Datenbanken zu teilen.</p><p>Eine englische Online-Hilfe ist <a href="https://dbhub.io/about"><span style=" text-decoration: underline; color:#007af4;">hier</span></a> verfügbar.</p></body></html> + + + + Back + Zurück + + + + Select an identity to connect + + + + + Public + Öffentlich + + + + This downloads a database from a remote server for local editing. +Please enter the URL to clone from. You can generate this URL by +clicking the 'Clone Database in DB4S' button on the web page +of the database. + + + + + Invalid URL: The host name does not match the host name of the current identity. + + + + + Invalid URL: No branch name specified. + + + + + Invalid URL: No commit ID specified. + + + + + You have modified the local clone of the database. Fetching this commit overrides these local changes. +Are you sure you want to proceed? + + + + + The database has unsaved changes. Are you sure you want to push it before saving? + + + + + The database you are trying to delete is currently opened. Please close it before deleting. + + + + + This deletes the local version of this database with all the changes you have not committed yet. Are you sure you want to delete this database? + + + + + RemoteLocalFilesModel + + + Name + Name + + + + Branch + Branch + + + + Last modified + Letzte Änderung + + + + Size + Größe + + + + Commit + Commit + + + + File + Datei + + + + RemoteModel + + + Name + Name + + + + Last modified + Letzte Änderung + + + + Size + Größe + + + + Commit + Commit + + + + Size: + + + + + Last Modified: + + + + + Licence: + + + + + Default Branch: + + + + + RemoteNetwork + + + Choose a location to save the file + + + + + Error opening remote file at %1. +%2 + Fehler beim Öffnen der entfernten Datei unter %1. +%2 + + + + Error: Invalid client certificate specified. + Fehler: Ungültiges Benutzerzertifikat angegeben. + + + + Please enter the passphrase for this client certificate in order to authenticate. + Bitte die Passphrase für diese Benutzerzertifikat eingeben, um die Authentifizierung durchzuführen. + + + + Cancel + Abbrechen + + + + Uploading remote database to +%1 + Entfernte Datenbank wird hochgeladen zu +%1 + + + + Downloading remote database from +%1 + Entfernte Datenbank wird heruntergeladen von +%1 + + + + + Error: The network is not accessible. + Fehler: Netzwerkzugriff nicht möglich. + + + + Error: Cannot open the file for sending. + Fehler: Öffnen der Datei zum Senden nicht möglich. + + + + RemotePushDialog + + + Push database + Datenbank übertragen + + + + Database na&me to push to + Datenbankna&me am Zielort + + + + Commit message + Commit-Nachricht + + + + Database licence + Datenbanklizenz + + + + Public + Öffentlich + + + + Branch + Branch + + + + Force push + Push erzwingen + + + + Username + + + + + Database will be public. Everyone has read access to it. + Datenbank wird öffentlich sein. Jeder hat Lesezugriff darauf. + + + + Database will be private. Only you have access to it. + Datenbank wird privat sein. Nur Sie haben Zugriff darauf. + + + + Use with care. This can cause remote commits to be deleted. + Verwenden Sie dies mit Vorsicht. Dadurch können entfernte Commits gelöscht werden. + + + + RunSql + + + Execution aborted by user + Ausführung durch Benutzer abgebrochen + + + + , %1 rows affected + , %1 Zeilen betroffen + + + + query executed successfully. Took %1ms%2 + Query erfolgreich ausgeführt. Benötigte %1ms%2 + + + + executing query + führe Query aus + + + + SelectItemsPopup + + + A&vailable + &Verfügbar + + + + Sele&cted + &Ausgewählt + + + + SqlExecutionArea + + + Form + Formular + + + + Find previous match [Shift+F3] + Vorherige Übereinstimmung finden [Umschalt+F3] + + + + Find previous match with wrapping + Vorherige Übereinstimmung mit Mapping finden + + + + Shift+F3 + + + + + The found pattern must be a whole word + Das Pattern muss ein ganzes Wort sein + + + + Whole Words + Ganze Wörter + + + + Text pattern to find considering the checks in this frame + Zu findendes Textpattern unter Einbeziehung der Prüfungen in diesem Fenster + + + + Find in editor + Im Editor finden + + + + The found pattern must match in letter case + Das Fundpattern muss in Groß-/Kleinschreibung übereinstimmen + + + + Case Sensitive + Schreibungsabhängig + + + + Find next match [Enter, F3] + Nächste Übereinstimmung finden [Enter, F3] + + + + Find next match with wrapping + Nächste Übereinstimmung mit Umbruch finden + + + + F3 + + + + + Interpret search pattern as a regular expression + Suchpattern als regulären Ausdruck interpretieren + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + <html><head/><body><p>Falls aktiviert, wird das Suchmuster als regulärer Ausdruck (UNIX-Stil) interpretiert. Siehe <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks (englisch)</a>.</p></body></html> + + + + Regular Expression + Regulärer Ausdruck + + + + + Close Find Bar + Suchbar schließen + + + + <html><head/><body><p>Results of the last executed statements.</p><p>You may want to collapse this panel and use the <span style=" font-style:italic;">SQL Log</span> dock with <span style=" font-style:italic;">User</span> selection instead.</p></body></html> + <html><head/><body><p>Ergebnisse der zuletzt ausgeführten Statements.</p><p>Dieses Panel kann zusammengeklappt und stattdessen der <span style=" font-style:italic;">SQL-Log</span>-Dock mit der Auswahl <span style=" font-style:italic;">Benutzer</span> verwendet werden.</p></body></html> + + + + Results of the last executed statements + Ergebnisse des zuletzt ausgeführten Statements + + + + This field shows the results and status codes of the last executed statements. + Dieses Feld zeigt die Ergebnisse und Statuscodes der zuletzt ausgeführten Statements. + + + + Couldn't read file: %1. + Datei konnte nicht gelesen werden: %1. + + + + + Couldn't save file: %1. + Datei konnte nicht gespeichert werden: %1. + + + + Your changes will be lost when reloading it! + Beim Neuladen gehen die Änderungen verloren! + + + + The file "%1" was modified by another program. Do you want to reload it?%2 + Die Datei "%1" wurde durch ein anderes Programm geändert. Soll es neu geladen werden?%2 + + + + SqlTextEdit + + + Ctrl+/ + + + + + SqlUiLexer + + + (X) The abs(X) function returns the absolute value of the numeric argument X. + (X) Die abs(X)-Funktion gibt einen absoluten Wert des numerischen Arguments X zurück. + + + + () The changes() function returns the number of database rows that were changed or inserted or deleted by the most recently completed INSERT, DELETE, or UPDATE statement. + () Die changes()-Funktion gibt die Anzahl der Datenbankzeilen zurück, die mit dem zuletzt abgeschlossenen INSERT-, DELETE- oder UPDATE-Statement geändert, einfügt oder gelöscht worden sind. + + + + (X1,X2,...) The char(X1,X2,...,XN) function returns a string composed of characters having the unicode code point values of integers X1 through XN, respectively. + (X1,X2,...) Die char(X1,X2,...,XN)-Funktion gibt eine Zeichenkette zurück, die aus den Zeichen der Unicode-Werte der Ganzzahlen X1 bis XN zusammengesetzt ist. + + + + (X,Y,...) The coalesce() function returns a copy of its first non-NULL argument, or NULL if all arguments are NULL + (X,Y,...) Die coalesce()-Funktion gibt eine Kopie des ersten nicht-NULL-Arguments zurück, oder NULL wenn alle Argumente NULL sind + + + + (X,Y) The glob(X,Y) function is equivalent to the expression "Y GLOB X". + (X,Y) Die glob(X,Y)-Funktion ist äquivalent zum Ausdruck "Y GLOB X". + + + + (X,Y) The ifnull() function returns a copy of its first non-NULL argument, or NULL if both arguments are NULL. + (X,Y) Die ifnull()-Funktion gibt eine Kopie des ersten nicht-NULL-Arguments zurück, oder NULL, wenn beide Argumente NULL sind. + + + + (X,Y) The instr(X,Y) function finds the first occurrence of string Y within string X and returns the number of prior characters plus 1, or 0 if Y is nowhere found within X. + (X,Y) Die instr(X,Y)-Funktion sucht das erste Auftreten von Zeichenkette Y innerhalb der Zeichenkette X und gibt die Anzahl vorhergehender Charakter plus 1 zurück, oder 0, wenn Y in X nicht gefunden werden konnte. + + + + (X) The hex() function interprets its argument as a BLOB and returns a string which is the upper-case hexadecimal rendering of the content of that blob. + (X) Die hex()-Funktion interpretiert ihr Argument als BLOB und gibt eine Zeichenkette zurück, die die Hexadezimaldarstellung des Blob-Inhaltes in Großbuchstaben enthält. + + + + () The last_insert_rowid() function returns the ROWID of the last row insert from the database connection which invoked the function. + () Die last_insert_rowid()-Funktion gibt die ROWID der letzte Zeile zurück, die von der diese Funktion aufrufenden Datenbankverbindung eingefügt wurde. + + + + (X) For a string value X, the length(X) function returns the number of characters (not bytes) in X prior to the first NUL character. + (X) Für eine Zeichenkette X gibt die length(X)-Funktion die Anzahl der Zeichen (keine Bytes) von X zurück, die sich for dem ersten NUL-Zeichen befinden. + + + + (X,Y) The like() function is used to implement the "Y LIKE X" expression. + (X,Y) Die like()-Funktion wird als Implementierung des "Y LIKE X"-Ausdrucks verwendet. + + + + (X,Y,Z) The like() function is used to implement the "Y LIKE X ESCAPE Z" expression. + (X,Y,Z) Die like()-Funktion wird als Implementierung des "Y LIKE X ESCAPE Z"-Ausdrucks verwendet. + + + + (X) The load_extension(X) function loads SQLite extensions out of the shared library file named X. +Use of this function must be authorized from Preferences. + (X) Die load_extension(X)-Funktion lädt SQLite-Erweiterungen aus der Shared-Library-Datei namens X. +Die Verwendung dieser Funktion muss in den Einstellungen authorisiert werden. + + + + (X,Y) The load_extension(X) function loads SQLite extensions out of the shared library file named X using the entry point Y. +Use of this function must be authorized from Preferences. + (X,Y) Die load_extension(X,Y)-Funktion lädt SQLite-Erweiterungen aus der Shared-Library-Datei namens X unter Verwendung des Eintrittspunktes Y. +Die Verwendung dieser Funktion muss in den Einstellungen authorisiert werden. + + + + (X) The lower(X) function returns a copy of string X with all ASCII characters converted to lower case. + (X) Die lower(X)-Funktion gibt eine Kopie der Zeichenkette X mit allen ASCII-Zeichen in Kleinschreibung zurück. + + + + (X) ltrim(X) removes spaces from the left side of X. + (X) ltrim(X) entfernt Leerzeichen aus der linken Seite von X. + + + + (X,Y) The ltrim(X,Y) function returns a string formed by removing any and all characters that appear in Y from the left side of X. + (X,Y) Die ltrim(X,Y)-Funktion gibt eine Zeichenkette zurück, die durch Entfernen aller Zeichen innerhalb von Y aus der linken Seite von X gebildet wird. + + + + (X,Y,...) The multi-argument max() function returns the argument with the maximum value, or return NULL if any argument is NULL. + (X,Y,...) Die max()-Funktion mit mehreren Argumenten gibt das Argument mit dem größten Wert zurück, oder NULL, wenn ein Argument NULL ist. + + + + (X,Y,...) The multi-argument min() function returns the argument with the minimum value. + (X,Y,...) Die max()-Funktion mit mehreren Argumenten gibt das Argument mit dem kleinsten Wert zurück. + + + + (X,Y) The nullif(X,Y) function returns its first argument if the arguments are different and NULL if the arguments are the same. + (X,Y) Die nullif(X,Y)-FUnktion gibt ihr erstes Argument zurück, wenn die Argumente verschieden sind und NULL, wenn die Argumente gleich sind. + + + + (FORMAT,...) The printf(FORMAT,...) SQL function works like the sqlite3_mprintf() C-language function and the printf() function from the standard C library. + (FORMAT,...) Die printf(FORMAT,...) SQL-Funktion arbeitet wie die sqlite3_mprintf() C-Funktion und die printf()-Funktion aus der C-Standardbibliothek. + + + + (X) The quote(X) function returns the text of an SQL literal which is the value of its argument suitable for inclusion into an SQL statement. + (X) Die quote(X)-Funktion gibt den Text eines SQL-Literals zurück, wobei der Wert des Arguments zum Einfügen in ein SQL-Statement geeignet ist. + + + + () The random() function returns a pseudo-random integer between -9223372036854775808 and +9223372036854775807. + () Die random()-Funktion gibt eine pseudo-zufällige Ganzzahl zwischen -9223372036854775808 und +9223372036854775807 zurück. + + + + (N) The randomblob(N) function return an N-byte blob containing pseudo-random bytes. + (N) Die randomblob(N)-Funktion gibt einen N-Byte Blob aus pseudo-zufälligen Bytes zurück. + + + + (X,Y,Z) The replace(X,Y,Z) function returns a string formed by substituting string Z for every occurrence of string Y in string X. + (X,Y,Z) Die replace(X,Y,Z)-Funktion gibt einen String zurück, der durch Ersetzen der Zeichenkette Z bei jedem Auftreten von Zeichenkette Y in Zeichenkette X gebildet wird. + + + + (X) The round(X) function returns a floating-point value X rounded to zero digits to the right of the decimal point. + (X) Die round(X)-Funktion gibt einen Gleitkommawert X auf nulll Nachkommastellen gerundet zurück. + + + + (X,Y) The round(X,Y) function returns a floating-point value X rounded to Y digits to the right of the decimal point. + (X,Y) Die round(X,Y)-Funktion gibt eine Gleitkommazahl X auf Y Nachkommastellen gerundet zurück. + + + + (X) rtrim(X) removes spaces from the right side of X. + (X) rtrim(X) entfernt Leerzeichen aus der rechten Seite von X. + + + + (X,Y) The rtrim(X,Y) function returns a string formed by removing any and all characters that appear in Y from the right side of X. + (X,Y) Die rtrim(X,Y)-Funktion gibt eine Zeichenkette zurück, die durch Entfernen aller Zeichen innerhalb von Y aus der rechten Seite von X gebildet wird. + + + + (X) The soundex(X) function returns a string that is the soundex encoding of the string X. + (X) Die soundex(X)-Funktion gibt eine Zeichenkette zurück, die aus der Soundex-Kodierung von Zeichenkette X besteht. + + + + (X,Y) substr(X,Y) returns all characters through the end of the string X beginning with the Y-th. + (X,Y) substr(X,Y) gibt alle Zeichen bis zum Ende der Zeichenkette X zurück, beginnend mit dem Y-ten. + + + + (X,Y,Z) The substr(X,Y,Z) function returns a substring of input string X that begins with the Y-th character and which is Z characters long. + (X,Y,Z) Die substr(X,Y)-Funktion gibt einen Teil der Zeichenkette X zurück, die mit dem Y-ten Zeichen beginnt und Z Zeichen lang ist. + + + + () The total_changes() function returns the number of row changes caused by INSERT, UPDATE or DELETE statements since the current database connection was opened. + () Die changes()-Funktion gibt die Anzahl dergeänderten Datenbankzeilen zurück, die seit dem Öffnen der aktuellen Datenbankverbindung mit INSERT-, DELETE- oder UPDATE-Statement geändert, einfügt oder gelöscht worden sind. + + + + (X) trim(X) removes spaces from both ends of X. + (X) trim(X) entfernt Leerzeichen an beiden Enden von X. + + + + (X,Y) The trim(X,Y) function returns a string formed by removing any and all characters that appear in Y from both ends of X. + (X,Y) Die ltrim(X,Y)-Funktion gibt eine Zeichenkette zurück, die durch Entfernen aller Zeichen innerhalb von Y aus der von beiden Seiten von X gebildet wird. + + + + (X) The typeof(X) function returns a string that indicates the datatype of the expression X. + (X) Die typeof(X)-Funktion gibt einen String zurück, der den Datentyp des Ausdruckes X angibt. + + + + (X) The unicode(X) function returns the numeric unicode code point corresponding to the first character of the string X. + (X) Die unicode(X)-Funktion gibt einen numerischen Unicode-Wert zurück, der dem ersten Zeichen der Zeichenkette X entspricht. + + + + (X) The upper(X) function returns a copy of input string X in which all lower-case ASCII characters are converted to their upper-case equivalent. + (X) Die lower(X)-Funktion gibt eine Kopie der Zeichenkette X mit allen ASCII-Zeichen in Großschreibung zurück. + + + + (N) The zeroblob(N) function returns a BLOB consisting of N bytes of 0x00. + (N) Die zeroblob(N)-Funktion gibt einen BLOB aus N Bytes mit 0x00 zurück. + + + + + + + (timestring,modifier,modifier,...) + (Zeitstring,Modifikation,Modifikation,...) + + + + (format,timestring,modifier,modifier,...) + (Format,Zeitstring,Modifikation,Modifikation,...) + + + + (X) The avg() function returns the average value of all non-NULL X within a group. + (X) Die avg()-Funktion gibt den Durchschnittswert alle nicht-NULL X in einer Gruppe zurück. + + + + (X) The count(X) function returns a count of the number of times that X is not NULL in a group. + (X) Die count(X)-Funktion gibt die Anzahl der nicht-NULL-Elemente von X in einer Gruppe zurück. + + + + (X) The group_concat() function returns a string which is the concatenation of all non-NULL values of X. + (X) Die group_conact()-Funktion gibt eine Zeichenkette zurück, die eine Verkettung aller nicht-NULL-Werte von X ist. + + + + (X,Y) The group_concat() function returns a string which is the concatenation of all non-NULL values of X. If parameter Y is present then it is used as the separator between instances of X. + (X,Y) Die group_conact()-Funktion gibt eine Zeichenkette zurück, die eine Verkettung aller nicht-NULL-Werte von X ist. Wenn der Parameter Y aktiv ist, wird dieser als Trennzeichen zwischen Instanzen von X behandelt. + + + + (X) The max() aggregate function returns the maximum value of all values in the group. + (X) Die max()-Sammelfunktion gibt den Maximalwert aller Werte in der Gruppe zurück. + + + + (X) The min() aggregate function returns the minimum non-NULL value of all values in the group. + (X) Die min()-Sammelfunktion gibt den Minimalwert aller nicht-NULL-Werte in der Gruppe zurück. + + + + + (X) The sum() and total() aggregate functions return sum of all non-NULL values in the group. + (X) Die sum()- und total()-Sammelfunktionen geben die Summe aller nicht-NULL-Werte in der Gruppe zurück. + + + + () The number of the row within the current partition. Rows are numbered starting from 1 in the order defined by the ORDER BY clause in the window definition, or in arbitrary order otherwise. + () Die Anzahl der Zeilen in der aktuellen Partition. Zeilen werden beginnend bei 1 in der durch den ORDER-BY-Befehl in der Fensterdefinition nummeriert, ansonsten in willkürlicher Reihenfolge. + + + + () The row_number() of the first peer in each group - the rank of the current row with gaps. If there is no ORDER BY clause, then all rows are considered peers and this function always returns 1. + () Die row_number() des ersten Peer in jeder Gruppe - der Rang der aktuellen Zeile mit Lücken. Falls es keinen ORDER-BY-Befehl gibt, dann werden alle Zeilen als Peers angesehen und diese Funktion gibt immer 1 zurück. + + + + () The number of the current row's peer group within its partition - the rank of the current row without gaps. Partitions are numbered starting from 1 in the order defined by the ORDER BY clause in the window definition. If there is no ORDER BY clause, then all rows are considered peers and this function always returns 1. + () Die Nummer der Peer-Gruppe der aktuellen Zeile in der Partition - der Rang der aktuellen Reihe ohne Lücken. Partitionen werden mit 1 startend nummeriert in der Reihenfolge, wie sie durch den ORDER-BY-Befehl in der Fensterdefinition festgelegt ist. Falls es keinen ORDER-BY-Befehl gibt, werden alle Zeilen als Peers angesehen und diese Funktion gibt immer 1 zurück. + + + + () Despite the name, this function always returns a value between 0.0 and 1.0 equal to (rank - 1)/(partition-rows - 1), where rank is the value returned by built-in window function rank() and partition-rows is the total number of rows in the partition. If the partition contains only one row, this function returns 0.0. + () Ungeachtet des Namens gibt diese Funktion immer einen Wert zwischen 0.0 und 1.0 identisch zu (Rang - 1)/(Partitionszeilen - 1) zurück, wobei Rang der Wert der eingebauten Fensterfunktion rank() und Partitionszeilen die Gesamtanzahl der Zeilen in der Partition ist. Falls die Partition nur eine Zeile enthält, gibt diese Funktion 0.0 zurück. + + + + () The cumulative distribution. Calculated as row-number/partition-rows, where row-number is the value returned by row_number() for the last peer in the group and partition-rows the number of rows in the partition. + () Die kumulative Verteilung. Berechnet als Zeilenanzahl/Partitionszeilen, wobei Zeilenanzahl der durch row_number() zurückgegebene Wert für den letzten Peer in der Gruppe ist und Partitionszeilen die Anzahl der Zeilen in der Partition. + + + + (N) Argument N is handled as an integer. This function divides the partition into N groups as evenly as possible and assigns an integer between 1 and N to each group, in the order defined by the ORDER BY clause, or in arbitrary order otherwise. If necessary, larger groups occur first. This function returns the integer value assigned to the group that the current row is a part of. + (N) Das Argument N wird als Integer behandelt. Diese Funktion teilt die Partition in N Gruppen so gleichmäßig wie möglich auf und weist jeder Gruppe einen Integer zwischen 1 und N zu, in der Reihenfolge, die durch den ORDER-BY-Befehl definiert ist, ansonsten in beliebiger Reihenfolge. Falls notwendig tauchen größere Gruppen als erstes auf. Diese Funktion gibt einen Integerwert zurück, der der Gruppe zugewiesen ist, zu der die aktuelle Zeile gehört. + + + + (expr) Returns the result of evaluating expression expr against the previous row in the partition. Or, if there is no previous row (because the current row is the first), NULL. + (expr) Gibt das Ergebnis der Evaluation des Ausdrucks expr gegen die vorherige Zeile in der Partition zurück. Falls es keine vorhergehende Zeile gibt (weil die aktuelle Zeile die erste ist), wird NULL zurückgegeben. + + + + (expr,offset) If the offset argument is provided, then it must be a non-negative integer. In this case the value returned is the result of evaluating expr against the row offset rows before the current row within the partition. If offset is 0, then expr is evaluated against the current row. If there is no row offset rows before the current row, NULL is returned. + (expr,offset) Falls das Offset-Argument angegeben ist, dann muss dieses ein nicht-negativer Integerwert sein. In diesem Fall ist der Rückgabewert das Ergebnis der Evaluation von expr gegen die Zeile, die innerhalb der Partition offset Zeilen weiter oben liegt. Falls offset 0 ist, wird expr gegen die aktuelle Zeile evaluiert. Falls vor der aktuellen Zeile nicht genügend Zeilen vorhanden sind, wird NULL zurückgegeben. + + + + + (expr,offset,default) If default is also provided, then it is returned instead of NULL if the row identified by offset does not exist. + (expr,offset,default) Falls auch default angegeben ist, dann wird dieser Wert anstatt NULL zurückgegeben, falls die durch offset angegebene Zeile nicht existiert. + + + + (expr) Returns the result of evaluating expression expr against the next row in the partition. Or, if there is no next row (because the current row is the last), NULL. + (expr) Gibt das Ergebnis der Evaluation des Ausdrucks expr gegen die nächste Zeile in der Partition zurück. Falls es keine nächste Zeile gibt (weil die aktuelle Zeile die letzte ist), wird NULL zurückgegeben. + + + + (expr,offset) If the offset argument is provided, then it must be a non-negative integer. In this case the value returned is the result of evaluating expr against the row offset rows after the current row within the partition. If offset is 0, then expr is evaluated against the current row. If there is no row offset rows after the current row, NULL is returned. + (expr,offset) Falls das Offset-Argument angegeben ist, dann muss dieses ein nicht-negativer Integerwert sein. In diesem Fall ist der Rückgabewert das Ergebnis der Evaluation von expr gegen die Zeile, die innerhalb der Partition offset Zeilen weiter unten liegt. Falls offset 0 ist, wird expr gegen die aktuelle Zeile evaluiert. Falls nach der aktuellen Zeile nicht genügend Zeilen vorhanden sind, wird NULL zurückgegeben. + + + + (expr) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the first row in the window frame for each row. + (expr) Diese eingebaute Fensterfunktion berechnet das Windowframe für jede Zeile auf die gleiche Art wie ein aggregierte Fensterfunktion. Sie gibt den Wert von expr evaluiert gegen die erste Zeile des Windowframes für jede Zeile zurück. + + + + (expr) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the last row in the window frame for each row. + (expr) Diese eingebaute Fensterfunktion berechnet das Windowframe für jede Zeile auf die gleiche Art wie ein aggregierte Fensterfunktion. Sie gibt den Wert von expr evaluiert gegen die letzte Zeile des Windowframes für jede Zeile zurück. + + + + (expr,N) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the row N of the window frame. Rows are numbered within the window frame starting from 1 in the order defined by the ORDER BY clause if one is present, or in arbitrary order otherwise. If there is no Nth row in the partition, then NULL is returned. + (expr,N) Diese eingebaute Fensterfunktion berechnet das Windowframe für jede Zeile auf die gleiche Art wie ein aggregierte Fensterfunktion. Sie gibt den Wert von expr evaluiert gegen die N-te Zeile des Windowframes für zurück. Die Zeilen werden beginnend bei 1 in der durch den ORDER-BY-Befehl definierten Reihenfolge nummeriert, falls dieser vorhanden ist, ansonsten in beliebiger Reihenfolge. Falls es keine N-te Zeile in der Partition gibt, dann wird NULL zurückgegeben. + + + + SqliteTableModel + + + reading rows + lese Zeilen + + + + loading... + lade... + + + + References %1(%2) +Hold %3Shift and click to jump there + Referenzen %1(%2) +Halten Sie %3Umschalt und klicken Sie, um hierher zu springen + + + + Error changing data: +%1 + Fehler beim Ändern der Daten: +%1 + + + + retrieving list of columns + ermittle Liste der Spalten + + + + Fetching data... + Rufe Daten ab... + + + + + Cancel + Abbrechen + + + + TableBrowser + + + Browse Data + Daten durchsuchen + + + + &Table: + &Tabelle: + + + + Select a table to browse data + Anzuzeigende Tabelle auswählen + + + + Use this list to select a table to be displayed in the database view + Diese Liste zur Auswahl der in der Datenbankansicht anzuzeigenden Tabelle verwenden + + + + This is the database table view. You can do the following actions: + - Start writing for editing inline the value. + - Double-click any record to edit its contents in the cell editor window. + - Alt+Del for deleting the cell content to NULL. + - Ctrl+" for duplicating the current record. + - Ctrl+' for copying the value from the cell above. + - Standard selection and copy/paste operations. + Dies ist die Datenbanktabellen-Ansicht. Sie können die folgenden Aktionen durchführen: + - Mit dem Schreiben beginnen, um die Werte Inline zu bearbeiten. + - Doppelt auf einen Eintrag klicken, um dessen Inhalte im Zelleneditor-Fenster zu bearbeiten. + - Alt+Entf zum Löschen des Zellinhaltes zu NULL. + - Strg+" zur Duplizierung des aktuellen Eintrags. + - Strg+' zum Kopieren des Wertes der darüberliegenden Zelle. + - Standardmäßige Auswahl- und Kopieren/Einfügen-Operationen. + + + + Text pattern to find considering the checks in this frame + Zu findendes Textpattern unter Einbeziehung der Prüfungen in diesem Fenster + + + + Find in table + In Tabelle suchen + + + + Find previous match [Shift+F3] + Vorherige Übereinstimmung finden [Umschalt+F3] + + + + Find previous match with wrapping + Vorherige Übereinstimmung mit Umbruch finden + + + + Shift+F3 + + + + + Find next match [Enter, F3] + Nächste Übereinstimmung finden [Enter, F3] + + + + Find next match with wrapping + Nächste Übereinstimmung mit Umbruch finden + + + + F3 + + + + + The found pattern must match in letter case + Das Suchpattern muss in Groß-/Kleinschreibung übereinstimmen + + + + Case Sensitive + Schreibungsabhängig + + + + The found pattern must be a whole word + Das Pattern muss ein ganzes Wort sein + + + + Whole Cell + Gesamte Zelle + + + + Interpret search pattern as a regular expression + Suchpattern als regulären Ausdruck interpretieren + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + <html><head/><body><p>Falls aktiviert, wird das Suchmuster als regulärer Ausdruck (UNIX-Stil) interpretiert. Siehe <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks (englisch)</a>.</p></body></html> + + + + Regular Expression + Regulärer Ausdruck + + + + + Close Find Bar + Suchbar schließen + + + + Text to replace with + Ersetzungstext + + + + Replace with + Ersetzen mit + + + + Replace next match + Nächste Übereinstimmung ersetzen + + + + + Replace + Ersetzen + + + + Replace all matches + Alle Übereinstimmungen ersetzen + + + + Replace all + Alle ersetzen + + + + <html><head/><body><p>Scroll to the beginning</p></body></html> + <html><head/><body><p>Zum Anfang scrollen</p></body></html> + + + + <html><head/><body><p>Clicking this button navigates to the beginning in the table view above.</p></body></html> + <html><head/><body><p>Ein Klick auf diesen Button navigiert zum Anfang der oben angezeigten Tabelle.</p></body></html> + + + + |< + |< + + + + Scroll one page upwards + Eine Seite nach oben scrollen + + + + <html><head/><body><p>Clicking this button navigates one page of records upwards in the table view above.</p></body></html> + <html><head/><body><p>Ein Klick auf diesen Button navigiert in den Einträgen der Tabellenansicht oben eine Seite nach oben.</p></body></html> + + + + < + < + + + + 0 - 0 of 0 + 0 - 0 von 0 + + + + Scroll one page downwards + Eine Seite nach unten scrollen + + + + <html><head/><body><p>Clicking this button navigates one page of records downwards in the table view above.</p></body></html> + <html><head/><body><p>Ein Klick auf diesen Button navigiert in den Einträgen der Tabellenansicht oben eine Seite nach unten.</p></body></html> + + + + > + > + + + + Scroll to the end + Zum Ende scrollen + + + + <html><head/><body><p>Clicking this button navigates up to the end in the table view above.</p></body></html> + <html><head/><body><p>Ein Klick auf diesen Button navigiert zum Ende der oben angezeigten Tabelle.</p></body></html> + + + + >| + >| + + + + <html><head/><body><p>Click here to jump to the specified record</p></body></html> + <html></head><body><p>Klicken Sie hier, um zu einer bestimmten Zeile zu springen</p></body></html> + + + + <html><head/><body><p>This button is used to navigate to the record number specified in the Go to area.</p></body></html> + <html></head><body><p>Dieser Button kann zum Navigieren zu einer im "Springe zu"-Bereich festgelegten Zeile verwendet werden.</p></body></html> + + + + Go to: + Springe zu: + + + + Enter record number to browse + Zeilennummer zum Suchen auswählen + + + + Type a record number in this area and click the Go to: button to display the record in the database view + Geben Sie eine Zeilennummer in diesem Bereich ein und klicken Sie auf den "Springe zu:"-Button, um die Zeile in der Datenbankansicht anzuzeigen + + + + 1 + 1 + + + + Show rowid column + Rowid-Spalte anzeigen + + + + Toggle the visibility of the rowid column + Sichtbarkeit der Rowid-Spalte umschalten + + + + Unlock view editing + Ansicht zur Bearbeitung entsperren + + + + This unlocks the current view for editing. However, you will need appropriate triggers for editing. + Dies entsperrt die aktuelle Ansicht zur Bearbeitung. Allerdings werden zur Bearbeitung passende Trigger benötigt. + + + + Edit display format + Anzeigeformat bearbeiten + + + + Edit the display format of the data in this column + Anzeigeformat der Daten in dieser Spalte bearbeiten + + + + + New Record + Neue Zeile + + + + + Insert a new record in the current table + Fügt eine neue Zeile zur aktuellen Tabelle hinzu + + + + <html><head/><body><p>This button creates a new record in the database. Hold the mouse button to open a pop-up menu of different options:</p><ul><li><span style=" font-weight:600;">New Record</span>: insert a new record with default values in the database.</li><li><span style=" font-weight:600;">Insert Values...</span>: open a dialog for entering values before they are inserted in the database. This allows to enter values acomplishing the different constraints. This dialog is also open if the <span style=" font-weight:600;">New Record</span> option fails due to these constraints.</li></ul></body></html> + <html><head/><body><p>Dieser Button erstellt eine neue Zeile in der Datenbank. Halten sie die Maustaste gedrückt, um ein Popup-Menü mit verschiedenen Optionen zu öffnen:</p><ul><li><span style=" font-weight:600;">Neuer Eintrag</span>: eine neue Zeile mit Standardwerten in die Datenbank einfügen.</li><li><span style=" font-weight:600;">Werte einfügen...</span>: einen Dialog zur Eingabe von Werten öffnen, bevor diese in die Datenbank eingefügt werden. Dies erlaubt die Eingabe von Werten, die den Constraints Genüge tun. Dieser Dialog wird auch geöffnet, falls die <span style=" font-weight:600;">Neuer Eintrag</span>-Option aufgrund dieser Constraints fehlschlägt.</li></ul></body></html> + + + + + Delete Record + Zeile löschen + + + + Delete the current record + Aktuelle Zeile löschen + + + + + This button deletes the record or records currently selected in the table + Dieser Button löscht die Zeile oder Zeilen, die aktuell in der Tabelle ausgewählt sind + + + + + Insert new record using default values in browsed table + Eine neue Zeile mit den Standardwerten in den ausgewählte Tabelle einfügen + + + + Insert Values... + Werte einfügen... + + + + + Open a dialog for inserting values in a new record + Einen Dialog zum Einfügen von Werten in eine neue Zeile öffnen + + + + Export to &CSV + Nach &CSV exportieren + + + + + Export the filtered data to CSV + Die gefilterten Daten als CSV exportieren + + + + This button exports the data of the browsed table as currently displayed (after filters, display formats and order column) as a CSV file. + Dieser Button exportiert die Daten der ausgewählten Tabelle wie aktuell angezeigt (gefiltert, Anzeigeformate und Spaltenreihenfolge) als CSV-Datei. + + + + Save as &view + Als &View speichern + + + + + Save the current filter, sort column and display formats as a view + Den aktuellen Filter, die Spaltenreihenfolge und Anzeigeformate als View speichern + + + + This button saves the current setting of the browsed table (filters, display formats and order column) as an SQL view that you can later browse or use in SQL statements. + Dieser Button speichert die aktuellen Einstellungen der ausgewählten Tabelle (Filter, Anzeigeformate und Spaltenreihenfolge) als SQL-View, welche Sie später durchsuchen oder in SQL-Statements verwenden können. + + + + Save Table As... + Tabelle speichern als... + + + + + Save the table as currently displayed + Tabelle wie aktuell angezeigt speichern + + + + <html><head/><body><p>This popup menu provides the following options applying to the currently browsed and filtered table:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Export to CSV: this option exports the data of the browsed table as currently displayed (after filters, display formats and order column) to a CSV file.</li><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Save as view: this option saves the current setting of the browsed table (filters, display formats and order column) as an SQL view that you can later browse or use in SQL statements.</li></ul></body></html> + <html><head/><body><p>Dieses Popup-Menü bietet die folgenden Optionen zur Anwendung auf die aktuell ausgewählte und gefilterte Tabelle:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">CSV exportieren: diese Option exportiert die Daten der ausgewählten Tabelle wie aktuell angezeigt (gefiltert, Anzeigeformat und Spaltenreihenfolge) in eine CSV-Datei.</li><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Als Ansicht speichern: diese Option speichert die aktuelle Einstellung der ausgewählten Tabelle (Filter, Anzeigeformat und Spaltenreihenfolge) als eine SQL-View, die Sie später durchsuchen oder in SQL-Statements verwenden können.</li></ul></body></html> + + + + Hide column(s) + Spalte(n) verbergen + + + + Hide selected column(s) + Ausgewählte Spalte(n) verbergen + + + + Show all columns + Alle Spalten anzeigen + + + + Show all columns that were hidden + Alle versteckten Spalten anzeigen + + + + + Set encoding + Kodierung setzen + + + + Change the encoding of the text in the table cells + Kodierung des Textes in den Tabellenzellen ändern + + + + Set encoding for all tables + Kodierung für alle Tabellen setzen + + + + Change the default encoding assumed for all tables in the database + Voreingestellte Kodierung für alle Tabellen in der Datenbank ändern + + + + Clear Filters + Filter löschen + + + + Clear all filters + Alle Filter löschen + + + + + This button clears all the filters set in the header input fields for the currently browsed table. + Dieser Button löscht alle gesetzten Filter in den Header-Eingabefeldern der aktuell angezeigten Tabelle. + + + + Clear Sorting + Sortierung löschen + + + + Reset the order of rows to the default + Die Zeilenreihenfolge auf den Standardzustand zurücksetzen + + + + + This button clears the sorting columns specified for the currently browsed table and returns to the default order. + Dieser Button setzt die angegebene Spaltensortierung für die aktuell angezeigte Tabelle zurück und verwendet die Standardreihenfolge. + + + + Print + Drucken + + + + Print currently browsed table data + Aktuell angezeigte Tabellendaten drucken + + + + Print currently browsed table data. Print selection if more than one cell is selected. + Die aktuell angezeigten Tabellendaten drucken. Druckauswahl, falls mehr als eine Zelle ausgewählt ist. + + + + Ctrl+P + + + + + Refresh + Aktualisieren + + + + Refresh the data in the selected table + Die Daten in der ausgewählten Tabelle aktualisieren + + + + This button refreshes the data in the currently selected table. + Dieser Button aktualisiert die Daten der aktuellen Tabellenansicht. + + + + F5 + + + + + Find in cells + In Zellen suchen + + + + Open the find tool bar which allows you to search for values in the table view below. + Die Such-Toolbar öffnen, welche das Suchen nach Werten in der Tabellenansicht unten erlaubt. + + + + + Bold + Fett + + + + Ctrl+B + + + + + + Italic + Kursiv + + + + + Underline + Unterstreichung + + + + Ctrl+U + + + + + + Align Right + Rechts ausrichten + + + + + Align Left + Links ausrichten + + + + + Center Horizontally + Horizontal zentrieren + + + + + Justify + Blocksatz + + + + + Edit Conditional Formats... + Bedingte Formatierungen bearbeiten... + + + + Edit conditional formats for the current column + Bedingte Formatierungen der aktuellen Spalte bearbeiten + + + + Clear Format + Formatierung löschen + + + + Clear All Formats + Alle Formatierungen löschen + + + + + Clear all cell formatting from selected cells and all conditional formats from selected columns + Jegliche Zellenformatierung für die ausgewählten Zellen und alle bedingten Formatierungen für die ausgewählten Spalten löschen + + + + + Font Color + Schriftfarbe + + + + + Background Color + Hintergrundfarbe + + + + Toggle Format Toolbar + Formatierungs-Toolbar umschalten + + + + Show/hide format toolbar + Formatierungs-Toolbar anzeigen/verstecken + + + + + This button shows or hides the formatting toolbar of the Data Browser + Dieser Button zeigt oder versteckt die Formatierungs-Toolbar im Datenbrowser + + + + Select column + Spalte auswählen + + + + Ctrl+Space + + + + + Replace text in cells + Text in Zellen ersetzen + + + + Filter in any column + In allen Spalten filtern + + + + Ctrl+R + + + + + %n row(s) + + %n row + %n rows + + + + + , %n column(s) + + , %n Spalte + , %n Spalten + + + + + . Sum: %1; Average: %2; Min: %3; Max: %4 + . Summe: %1; Durchschnitt: %2; Minimum: %3; Maximum: %4 + + + + Conditional formats for "%1" + Bedingte Formatierung for "%1" + + + + determining row count... + bestimme Zeilenanzahl... + + + + %1 - %2 of >= %3 + %1 - %2 von >= %3 + + + + %1 - %2 of %3 + %1 - %2 von %3 + + + + Please enter a pseudo-primary key in order to enable editing on this view. This should be the name of a unique column in the view. + Bitte einen Pseudo-Primärschlüssel eingeben, um die Bearbeitung dieser Ansicht zu ermöglichen. Dies sollte der Name der eindeutigen Spalte dieser Ansicht sein. + + + + Delete Records + Einträge löschen + + + + Duplicate records + Einträge duplizieren + + + + Duplicate record + Eintrag duplizieren + + + + Ctrl+" + + + + + Adjust rows to contents + Zeilen an Inhalte anpassen + + + + Error deleting record: +%1 + Fehler beim Löschen des Eintrags: +%1 + + + + Please select a record first + Bitte zuerst einen Eintrag auswählen + + + + There is no filter set for this table. View will not be created. + Es gibt keinen Filtersatz für diese Tabelle. Die Ansicht wird nicht erstellt. + + + + Please choose a new encoding for all tables. + Bitte wählen Sie eine neue Kodierung für alle Tabellen. + + + + Please choose a new encoding for this table. + Bitte wählen Sie eine neue Kodierung für diese Tabelle. + + + + %1 +Leave the field empty for using the database encoding. + %1 +Lassen Sie das Feld leer, um die Datenbank-Kodierung zu verwenden. + + + + This encoding is either not valid or not supported. + Diese Kodierung ist entweder nicht gültig oder nicht unterstützt. + + + + %1 replacement(s) made. + %1 Ersetzung(en) durchgeführt. + + + + VacuumDialog + + + Compact Database + Datenbank komprimieren + + + + Warning: Compacting the database will commit all of your changes. + Warnung: Das Verdichten der Datenbank wird alle Ihre Änderungen übermitteln. + + + + Please select the databases to co&mpact: + Bitte wählen Sie die zu ver&dichtenden Datenbanken aus: + + + diff --git a/ConfigFiles/translations/sqlb_en_GB.qm b/ConfigFiles/translations/sqlb_en_GB.qm new file mode 100644 index 0000000000000000000000000000000000000000..e1bf23dbe474d6f5f63ae7b4d3dc71a87457a613 GIT binary patch literal 33039 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 literal 0 HcmV?d00001 diff --git a/ConfigFiles/translations/sqlb_en_GB.ts b/ConfigFiles/translations/sqlb_en_GB.ts new file mode 100644 index 0000000..40ddcbe --- /dev/null +++ b/ConfigFiles/translations/sqlb_en_GB.ts @@ -0,0 +1,6927 @@ + + + + + AboutDialog + + + About DB Browser for SQLite + + + + + Version + + + + + <html><head/><body><p>DB Browser for SQLite is an open source, freeware visual tool used to create, design and edit SQLite database files.</p><p>It is bi-licensed under the Mozilla Public License Version 2, as well as the GNU General Public License Version 3 or later. You can modify or redistribute it under the conditions of these licenses.</p><p>See <a href="http://www.gnu.org/licenses/gpl.html">http://www.gnu.org/licenses/gpl.html</a> and <a href="https://www.mozilla.org/MPL/2.0/index.txt">https://www.mozilla.org/MPL/2.0/index.txt</a> for details.</p><p>For more information on this program please visit our website at: <a href="http://sqlitebrowser.org">http://sqlitebrowser.org</a></p><p><span style=" font-size:small;">This software uses the GPL/LGPL Qt Toolkit from </span><a href="http://qt-project.org/"><span style=" font-size:small;">http://qt-project.org/</span></a><span style=" font-size:small;"><br/>See </span><a href="http://qt-project.org/doc/qt-5/licensing.html"><span style=" font-size:small;">http://qt-project.org/doc/qt-5/licensing.html</span></a><span style=" font-size:small;"> for licensing terms and information.</span></p><p><span style=" font-size:small;">It also uses the Silk icon set by Mark James licensed under a Creative Commons Attribution 2.5 and 3.0 license.<br/>See </span><a href="http://www.famfamfam.com/lab/icons/silk/"><span style=" font-size:small;">http://www.famfamfam.com/lab/icons/silk/</span></a><span style=" font-size:small;"> for details.</span></p></body></html> + + + + + AddRecordDialog + + + Add New Record + + + + + Enter values for the new record considering constraints. Fields in bold are mandatory. + + + + + In the Value column you can specify the value for the field identified in the Name column. The Type column indicates the type of the field. Default values are displayed in the same style as NULL values. + + + + + Name + + + + + Type + + + + + Value + + + + + Values to insert. Pre-filled default values are inserted automatically unless they are changed. + + + + + When you edit the values in the upper frame, the SQL query for inserting this new record is shown here. You can edit manually the query before saving. + + + + + <html><head/><body><p><span style=" font-weight:600;">Save</span> will submit the shown SQL statement to the database for inserting the new record.</p><p><span style=" font-weight:600;">Restore Defaults</span> will restore the initial values in the <span style=" font-weight:600;">Value</span> column.</p><p><span style=" font-weight:600;">Cancel</span> will close this dialog without executing the query.</p></body></html> + + + + + Auto-increment + + + + + + Unique constraint + + + + + + Check constraint: %1 + + + + + + Foreign key: %1 + + + + + + Default value: %1 + + + + + + Error adding record. Message from database engine: + +%1 + + + + + Are you sure you want to restore all the entered values to their defaults? + + + + + Application + + + Possible command line arguments: + + + + + Usage: %1 [options] [<database>|<project>] + + + + + + -h, --help Show command line options + + + + + -q, --quit Exit application after running scripts + + + + + -s, --sql <file> Execute this SQL file after opening the DB + + + + + -t, --table <table> Browse this table after opening the DB + + + + + -R, --read-only Open database in read-only mode + + + + + -o, --option <group>/<setting>=<value> + + + + + Run application with this setting temporarily set to value + + + + + -O, --save-option <group>/<setting>=<value> + + + + + Run application saving this value for this setting + + + + + -v, --version Display the current version + + + + + <database> Open this SQLite database + + + + + <project> Open this project file (*.sqbpro) + + + + + The -s/--sql option requires an argument + + + + + The file %1 does not exist + + + + + The -t/--table option requires an argument + + + + + The -o/--option and -O/--save-option options require an argument in the form group/setting=value + + + + + Invalid option/non-existant file: %1 + + + + + SQLite Version + + + + + SQLCipher Version %1 (based on SQLite %2) + + + + + DB Browser for SQLite Version %1. + + + + + Built for %1, running on %2 + + + + + Qt Version %1 + + + + + CipherDialog + + + SQLCipher encryption + + + + + &Password + + + + + &Reenter password + + + + + Encr&yption settings + + + + + SQLCipher &3 defaults + + + + + SQLCipher &4 defaults + + + + + Custo&m + + + + + Page si&ze + + + + + &KDF iterations + + + + + HMAC algorithm + + + + + KDF algorithm + + + + + Plaintext Header Size + + + + + Passphrase + + + + + Raw key + + + + + Please set a key to encrypt the database. +Note that if you change any of the other, optional, settings you'll need to re-enter them as well every time you open the database file. +Leave the password fields empty to disable the encryption. +The encryption process might take some time and you should have a backup copy of your database! Unsaved changes are applied before modifying the encryption. + + + + + Please enter the key used to encrypt the database. +If any of the other settings were altered for this database file you need to provide this information as well. + + + + + ColumnDisplayFormatDialog + + + Choose display format + + + + + Display format + + + + + Choose a display format for the column '%1' which is applied to each value prior to showing it. + + + + + Default + + + + + Decimal number + + + + + Exponent notation + + + + + Hex blob + + + + + Hex number + + + + + Apple NSDate to date + + + + + Java epoch (milliseconds) to date + + + + + .NET DateTime.Ticks to date + + + + + Julian day to date + + + + + Unix epoch to local time + + + + + Date as dd/mm/yyyy + + + + + Lower case + + + + + Custom display format must contain a function call applied to %1 + + + + + Error in custom display format. Message from database engine: + +%1 + + + + + Custom display format must return only one column but it returned %1. + + + + + Octal number + + + + + Round number + + + + + Unix epoch to date + + + + + Upper case + + + + + Windows DATE to date + + + + + Custom + + + + + CondFormatManager + + + Conditional Format Manager + + + + + This dialog allows creating and editing conditional formats. Each cell style will be selected by the first accomplished condition for that cell data. Conditional formats can be moved up and down, where those at higher rows take precedence over those at lower. Syntax for conditions is the same as for filters and an empty condition applies to all values. + + + + + Add new conditional format + + + + + &Add + + + + + Remove selected conditional format + + + + + &Remove + + + + + Move selected conditional format up + + + + + Move &up + + + + + Move selected conditional format down + + + + + Move &down + + + + + Foreground + + + + + Text color + Text colour + + + + Background + + + + + Background color + Background colour + + + + Font + + + + + Size + + + + + Bold + + + + + Italic + + + + + Underline + + + + + Alignment + + + + + Condition + + + + + + Click to select color + + + + + Are you sure you want to clear all the conditional formats of this field? + + + + + DBBrowserDB + + + Please specify the database name under which you want to access the attached database + + + + + Invalid file format + + + + + Do you really want to close this temporary database? All data will be lost. + + + + + Do you want to save the changes made to the database file %1? + + + + + Database didn't close correctly, probably still busy + + + + + The database is currently busy: + + + + + Do you want to abort that other operation? + + + + + Exporting database to SQL file... + + + + + + Cancel + + + + + + No database file opened + + + + + Executing SQL... + + + + + Action cancelled. + + + + + + Error in statement #%1: %2. +Aborting execution%3. + + + + + + and rolling back + + + + + didn't receive any output from %1 + + + + + could not execute command: %1 + + + + + Cannot delete this object + + + + + Cannot set data on this object + + + + + + A table with the name '%1' already exists in schema '%2'. + + + + + No table with name '%1' exists in schema '%2'. + + + + + + Cannot find column %1. + + + + + Creating savepoint failed. DB says: %1 + + + + + Renaming the column failed. DB says: +%1 + + + + + + Releasing savepoint failed. DB says: %1 + + + + + Creating new table failed. DB says: %1 + + + + + Copying data to new table failed. DB says: +%1 + + + + + Deleting old table failed. DB says: %1 + + + + + Restoring some of the objects associated with this table failed. This is most likely because some column names changed. Here's the SQL statement which you might want to fix and execute manually: + + + + + + + could not get list of databases: %1 + + + + + Error loading extension: %1 + + + + + could not get column information + + + + + This database has already been attached. Its schema name is '%1'. + + + + + Error renaming table '%1' to '%2'. +Message from database engine: +%3 + + + + + could not get list of db objects: %1 + + + + + Error setting pragma %1 to %2: %3 + + + + + File not found. + + + + + DbStructureModel + + + Name + + + + + Object + + + + + Type + + + + + Schema + + + + + Database + + + + + Browsables + + + + + All + + + + + Temporary + + + + + Tables (%1) + + + + + Indices (%1) + + + + + Views (%1) + + + + + Triggers (%1) + + + + + EditDialog + + + Edit database cell + + + + + Mode: + + + + + + Image + + + + + Set as &NULL + + + + + Apply data to cell + + + + + This button saves the changes performed in the cell editor to the database cell. + + + + + Apply + + + + + Text + + + + + This is the list of supported modes for the cell editor. Choose a mode for viewing or editing the data of the current cell. + + + + + RTL Text + + + + + Binary + + + + + JSON + + + + + XML + + + + + + Automatically adjust the editor mode to the loaded data type + + + + + This checkable button enables or disables the automatic switching of the editor mode. When a new cell is selected or new data is imported and the automatic switching is enabled, the mode adjusts to the detected data type. You can then change the editor mode manually. If you want to keep this manually switched mode while moving through the cells, switch the button off. + + + + + Auto-switch + + + + + The text editor modes let you edit plain text, as well as JSON or XML data with syntax highlighting, automatic formatting and validation before saving. + +Errors are indicated with a red squiggle underline. + + + + + This Qt editor is used for right-to-left scripts, which are not supported by the default Text editor. The presence of right-to-left characters is detected and this editor mode is automatically selected. + + + + + Open preview dialog for printing the data currently stored in the cell + + + + + Auto-format: pretty print on loading, compact on saving. + + + + + When enabled, the auto-format feature formats the data on loading, breaking the text in lines and indenting it for maximum readability. On data saving, the auto-format feature compacts the data removing end of lines, and unnecessary whitespace. + + + + + Word Wrap + + + + + Wrap lines on word boundaries + + + + + + Open in default application or browser + + + + + Open in application + + + + + The value is interpreted as a file or URL and opened in the default application or web browser. + + + + + Save file reference... + + + + + Save reference to file + + + + + + Open in external application + + + + + Autoformat + + + + + &Export... + + + + + + &Import... + + + + + + Import from file + + + + + + Opens a file dialog used to import any kind of data to this database cell. + + + + + Export to file + + + + + Opens a file dialog used to export the contents of this database cell to a file. + + + + + Erases the contents of the cell + + + + + This area displays information about the data present in this database cell + + + + + Type of data currently in cell + + + + + Size of data currently in table + + + + + + Print... + + + + + Open preview dialog for printing displayed image + + + + + + Ctrl+P + + + + + Open preview dialog for printing displayed text + + + + + Copy Hex and ASCII + + + + + Copy selected hexadecimal and ASCII columns to the clipboard + + + + + Ctrl+Shift+C + + + + + Choose a filename to export data + + + + + Type of data currently in cell: %1 Image + + + + + %1x%2 pixel(s) + + + + + Type of data currently in cell: NULL + + + + + + Type of data currently in cell: Text / Numeric + + + + + + Image data can't be viewed in this mode. + + + + + + Try switching to Image or Binary mode. + + + + + + Binary data can't be viewed in this mode. + + + + + + Try switching to Binary mode. + + + + + + Image files (%1) + + + + + Binary files (*.bin) + + + + + Choose a file to import + + + + + %1 Image + + + + + Invalid data for this mode + + + + + The cell contains invalid %1 data. Reason: %2. Do you really want to apply it to the cell? + + + + + + + %n character(s) + + %n character + %n characters + + + + + Type of data currently in cell: Valid JSON + + + + + Type of data currently in cell: Binary + + + + + Couldn't save file: %1. + + + + + The data has been saved to a temporary file and has been opened with the default application. You can now edit the file and, when you are ready, apply the saved new data to the cell editor or cancel any changes. + + + + + + %n byte(s) + + %n byte + %n bytes + + + + + EditIndexDialog + + + &Name + + + + + Order + + + + + &Table + + + + + Edit Index Schema + + + + + &Unique + + + + + For restricting the index to only a part of the table you can specify a WHERE clause here that selects the part of the table that should be indexed + + + + + Partial inde&x clause + + + + + Colu&mns + + + + + Table column + + + + + Type + + + + + Add a new expression column to the index. Expression columns contain SQL expression rather than column names. + + + + + Index column + + + + + Deleting the old index failed: +%1 + + + + + Creating the index failed: +%1 + + + + + EditTableDialog + + + Edit table definition + + + + + Table + + + + + Advanced + + + + + Make this a 'WITHOUT rowid' table. Setting this flag requires a field of type INTEGER with the primary key flag set and the auto increment flag unset. + + + + + Without Rowid + + + + + Database sche&ma + + + + + Fields + + + + + Add + + + + + Remove + + + + + Move to top + + + + + Move up + + + + + Move down + + + + + Move to bottom + + + + + + Name + + + + + + Type + + + + + NN + + + + + Not null + + + + + PK + + + + + Primary key + + + + + AI + + + + + Autoincrement + + + + + U + + + + + + + Unique + + + + + Default + + + + + Default value + + + + + + + Check + + + + + Check constraint + + + + + Collation + + + + + + + Foreign Key + + + + + Constraints + + + + + Add constraint + + + + + Remove constraint + + + + + Columns + + + + + SQL + + + + + <html><head/><body><p><span style=" font-weight:600; color:#ff0000;">Warning: </span>There is something with this table definition that our parser doesn't fully understand. Modifying and saving this table might result in problems.</p></body></html> + + + + + + Primary Key + + + + + Add a primary key constraint + + + + + Add a foreign key constraint + + + + + Add a unique constraint + + + + + Add a check constraint + + + + + + There can only be one primary key for each table. Please modify the existing primary key instead. + + + + + Error creating table. Message from database engine: +%1 + + + + + There already is a field with that name. Please rename it first or choose a different name for this field. + + + + + This column is referenced in a foreign key in table %1 and thus its name cannot be changed. + + + + + There is at least one row with this field set to NULL. This makes it impossible to set this flag. Please change the table data first. + + + + + There is at least one row with a non-integer value in this field. This makes it impossible to set the AI flag. Please change the table data first. + + + + + Column '%1' has duplicate data. + + + + + + This makes it impossible to enable the 'Unique' flag. Please remove the duplicate data, which will allow the 'Unique' flag to then be enabled. + + + + + Are you sure you want to delete the field '%1'? +All data currently stored in this field will be lost. + + + + + Please add a field which meets the following criteria before setting the without rowid flag: + - Primary key flag set + - Auto increment disabled + + + + + ExportDataDialog + + + Export data as CSV + + + + + Tab&le(s) + + + + + Colu&mn names in first line + + + + + Fie&ld separator + + + + + , + + + + + ; + + + + + Tab + + + + + | + + + + + + + Other + + + + + &Quote character + + + + + " + + + + + ' + + + + + New line characters + + + + + Windows: CR+LF (\r\n) + + + + + Unix: LF (\n) + + + + + Pretty print + + + + + + Could not open output file: %1 + + + + + + Choose a filename to export data + + + + + Export data as JSON + + + + + exporting CSV + + + + + exporting JSON + + + + + Please select at least 1 table. + + + + + Choose a directory + + + + + Export completed. + + + + + ExportSqlDialog + + + Export SQL... + + + + + Tab&le(s) + + + + + Select All + + + + + Deselect All + + + + + &Options + + + + + Keep column names in INSERT INTO + + + + + Multiple rows (VALUES) per INSERT statement + + + + + Export everything + + + + + Export data only + + + + + Keep old schema (CREATE TABLE IF NOT EXISTS) + + + + + Overwrite old schema (DROP TABLE, then CREATE TABLE) + + + + + Export schema only + + + + + Please select at least one table. + + + + + Choose a filename to export + + + + + Export completed. + + + + + Export cancelled or failed. + + + + + ExtendedScintilla + + + + Ctrl+H + + + + + Ctrl+F + + + + + + Ctrl+P + + + + + Find... + + + + + Find and Replace... + + + + + Print... + + + + + ExtendedTableWidget + + + Use as Exact Filter + + + + + Containing + + + + + Not containing + + + + + Not equal to + + + + + Greater than + + + + + Less than + + + + + Greater or equal + + + + + Less or equal + + + + + Between this and... + + + + + Regular expression + + + + + Edit Conditional Formats... + + + + + Set to NULL + + + + + Copy + + + + + Copy with Headers + + + + + Copy as SQL + + + + + Paste + + + + + Print... + + + + + Use in Filter Expression + + + + + Alt+Del + + + + + Ctrl+Shift+C + + + + + Ctrl+Alt+C + + + + + The content of the clipboard is bigger than the range selected. +Do you want to insert it anyway? + + + + + <p>Not all data has been loaded. <b>Do you want to load all data before selecting all the rows?</b><p><p>Answering <b>No</b> means that no more data will be loaded and the selection will not be performed.<br/>Answering <b>Yes</b> might take some time while the data is loaded but the selection will be complete.</p>Warning: Loading all the data might require a great amount of memory for big tables. + + + + + Cannot set selection to NULL. Column %1 has a NOT NULL constraint. + + + + + FileExtensionManager + + + File Extension Manager + + + + + &Up + + + + + &Down + + + + + &Add + + + + + &Remove + + + + + + Description + + + + + Extensions + + + + + *.extension + + + + + FilterLineEdit + + + Filter + + + + + These input fields allow you to perform quick filters in the currently selected table. +By default, the rows containing the input text are filtered out. +The following operators are also supported: +% Wildcard +> Greater than +< Less than +>= Equal to or greater +<= Equal to or less += Equal to: exact match +<> Unequal: exact inverse match +x~y Range: values between x and y +/regexp/ Values matching the regular expression + + + + + Clear All Conditional Formats + + + + + Use for Conditional Format + + + + + Edit Conditional Formats... + + + + + Set Filter Expression + + + + + What's This? + + + + + Is NULL + + + + + Is not NULL + + + + + Is empty + + + + + Is not empty + + + + + Not containing... + + + + + Equal to... + + + + + Not equal to... + + + + + Greater than... + + + + + Less than... + + + + + Greater or equal... + + + + + Less or equal... + + + + + In range... + + + + + Regular expression... + + + + + FindReplaceDialog + + + Find and Replace + + + + + Fi&nd text: + + + + + Re&place with: + + + + + Match &exact case + + + + + Match &only whole words + + + + + When enabled, the search continues from the other end when it reaches one end of the page + + + + + &Wrap around + + + + + When set, the search goes backwards from cursor position, otherwise it goes forward + + + + + Search &backwards + + + + + <html><head/><body><p>When checked, the pattern to find is searched only in the current selection.</p></body></html> + + + + + &Selection only + + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + + + + + Use regular e&xpressions + + + + + Find the next occurrence from the cursor position and in the direction set by "Search backwards" + + + + + &Find Next + + + + + F3 + + + + + &Replace + + + + + Highlight all the occurrences of the text in the page + + + + + F&ind All + + + + + Replace all the occurrences of the text in the page + + + + + Replace &All + + + + + The searched text was not found + + + + + The searched text was not found. + + + + + The searched text was found one time. + + + + + The searched text was found %1 times. + + + + + The searched text was replaced one time. + + + + + The searched text was replaced %1 times. + + + + + ForeignKeyEditor + + + &Reset + + + + + Foreign key clauses (ON UPDATE, ON DELETE etc.) + + + + + ImportCsvDialog + + + Import CSV file + + + + + Table na&me + + + + + &Column names in first line + + + + + Field &separator + + + + + , + + + + + ; + + + + + + Tab + + + + + | + + + + + Other + + + + + &Quote character + + + + + + Other (printable) + + + + + + Other (code) + + + + + " + + + + + ' + + + + + &Encoding + + + + + UTF-8 + + + + + UTF-16 + + + + + ISO-8859-1 + + + + + Trim fields? + + + + + Separate tables + + + + + Advanced + + + + + When importing an empty value from the CSV file into an existing table with a default value for this column, that default value is inserted. Activate this option to insert an empty value instead. + + + + + Ignore default &values + + + + + Activate this option to stop the import when trying to import an empty value into a NOT NULL column without a default value. + + + + + Fail on missing values + + + + + Disable data type detection + + + + + Disable the automatic data type detection when creating a new table. + + + + + When importing into an existing table with a primary key, unique constraints or a unique index there is a chance for a conflict. This option allows you to select a strategy for that case: By default the import is aborted and rolled back but you can also choose to ignore and not import conflicting rows or to replace the existing row in the table. + + + + + Abort import + + + + + Ignore row + + + + + Replace existing row + + + + + Conflict strategy + + + + + + Deselect All + + + + + Match Similar + + + + + Select All + + + + + There is already a table named '%1' and an import into an existing table is only possible if the number of columns match. + + + + + There is already a table named '%1'. Do you want to import the data into it? + + + + + Creating restore point failed: %1 + + + + + Creating the table failed: %1 + + + + + importing CSV + + + + + Importing the file '%1' took %2ms. Of this %3ms were spent in the row function. + + + + + Inserting row failed: %1 + + + + + MainWindow + + + DB Browser for SQLite + + + + + toolBar1 + + + + + Opens the SQLCipher FAQ in a browser window + + + + + Export one or more table(s) to a JSON file + + + + + &File + + + + + &Import + + + + + &Export + + + + + &Edit + + + + + &View + + + + + &Help + + + + + DB Toolbar + + + + + Edit Database &Cell + + + + + DB Sche&ma + + + + + &Remote + + + + + + Execute current line + + + + + This button executes the SQL statement present in the current editor line + + + + + Shift+F5 + + + + + Sa&ve Project + + + + + Open an existing database file in read only mode + + + + + User + + + + + + Database Structure + This has to be equal to the tab title in all the main tabs + + + + + This is the structure of the opened database. +You can drag SQL statements from an object row and drop them into other applications or into another instance of 'DB Browser for SQLite'. + + + + + + + Browse Data + This has to be equal to the tab title in all the main tabs + + + + + Un/comment block of SQL code + + + + + Un/comment block + + + + + Comment or uncomment current line or selected block of code + + + + + Comment or uncomment the selected lines or the current line, when there is no selection. All the block is toggled according to the first line. + + + + + Ctrl+/ + + + + + Stop SQL execution + + + + + Stop execution + + + + + Stop the currently running SQL script + + + + + + Edit Pragmas + This has to be equal to the tab title in all the main tabs + + + + + Warning: this pragma is not readable and this value has been inferred. Writing the pragma might overwrite a redefined LIKE provided by an SQLite extension. + + + + + + Execute SQL + This has to be equal to the tab title in all the main tabs + + + + + &Tools + + + + + Application + + + + + Error Log + + + + + This button clears the contents of the SQL logs + + + + + &Clear + + + + + This panel lets you examine a log of all SQL commands issued by the application or by yourself + + + + + This is the structure of the opened database. +You can drag multiple object names from the Name column and drop them into the SQL editor and you can adjust the properties of the dropped names using the context menu. This would help you in composing SQL statements. +You can drag SQL statements from the Schema column and drop them into the SQL editor or into other applications. + + + + + + + Project Toolbar + + + + + Extra DB toolbar + + + + + + + Close the current database file + + + + + &New Database... + + + + + + Create a new database file + + + + + This option is used to create a new database file. + + + + + Ctrl+N + + + + + + &Open Database... + + + + + + + + + Open an existing database file + + + + + + + This option is used to open an existing database file. + + + + + Ctrl+O + + + + + &Close Database + + + + + This button closes the connection to the currently open database file + + + + + + Ctrl+W + + + + + + Revert database to last saved state + + + + + This option is used to revert the current database file to its last saved state. All changes made since the last save operation are lost. + + + + + + Write changes to the database file + + + + + This option is used to save changes to the database file. + + + + + Ctrl+S + + + + + Compact &Database... + + + + + Compact the database file, removing space wasted by deleted records + + + + + + Compact the database file, removing space wasted by deleted records. + + + + + E&xit + + + + + Ctrl+Q + + + + + Import data from an .sql dump text file into a new or existing database. + + + + + This option lets you import data from an .sql dump text file into a new or existing database. SQL dump files can be created on most database engines, including MySQL and PostgreSQL. + + + + + Open a wizard that lets you import data from a comma separated text file into a database table. + + + + + Open a wizard that lets you import data from a comma separated text file into a database table. CSV files can be created on most database and spreadsheet applications. + + + + + Export a database to a .sql dump text file. + + + + + This option lets you export a database to a .sql dump text file. SQL dump files contain all data necessary to recreate the database on most database engines, including MySQL and PostgreSQL. + + + + + Export a database table as a comma separated text file. + + + + + Export a database table as a comma separated text file, ready to be imported into other database or spreadsheet applications. + + + + + Open the Create Table wizard, where it is possible to define the name and fields for a new table in the database + + + + + + Delete Table + + + + + Open the Delete Table wizard, where you can select a database table to be dropped. + + + + + Open the Modify Table wizard, where it is possible to rename an existing table. It is also possible to add or delete fields form a table, as well as modify field names and types. + + + + + Open the Create Index wizard, where it is possible to define a new index on an existing database table. + + + + + &Preferences... + + + + + + Open the preferences window. + + + + + &DB Toolbar + + + + + Shows or hides the Database toolbar. + + + + + Shift+F1 + + + + + Open SQL file(s) + + + + + This button opens files containing SQL statements and loads them in new editor tabs + + + + + Execute line + + + + + &Wiki + + + + + F1 + + + + + Bug &Report... + + + + + Feature Re&quest... + + + + + Web&site + + + + + &Donate on Patreon... + + + + + This button lets you save all the settings associated to the open DB to a DB Browser for SQLite project file + + + + + This button lets you open a DB Browser for SQLite project file + + + + + Ctrl+Shift+O + + + + + &Save Project As... + + + + + + + Save the project in a file selected in a dialog + + + + + Save A&ll + + + + + + + Save DB file, project file and opened SQL files + + + + + Ctrl+Shift+S + + + + + Browse Table + + + + + &Attach Database... + + + + + + Add another database file to the current database connection + + + + + This button lets you add another database file to the current database connection + + + + + &Set Encryption... + + + + + SQLCipher &FAQ + + + + + Table(&s) to JSON... + + + + + Open Data&base Read Only... + + + + + Save results + + + + + Save the results view + + + + + This button lets you save the results of the last executed query + + + + + + Find text in SQL editor + + + + + Find + + + + + This button opens the search bar of the editor + + + + + Ctrl+F + + + + + + Find or replace text in SQL editor + + + + + Find or replace + + + + + This button opens the find/replace dialog for the current editor tab + + + + + Ctrl+H + + + + + Export to &CSV + + + + + Save as &view + + + + + Save as view + + + + + Shows or hides the Project toolbar. + + + + + Extra DB Toolbar + + + + + New In-&Memory Database + + + + + Drag && Drop Qualified Names + + + + + + Use qualified names (e.g. "Table"."Field") when dragging the objects and dropping them into the editor + + + + + Drag && Drop Enquoted Names + + + + + + Use escaped identifiers (e.g. "Table1") when dragging the objects and dropping them into the editor + + + + + &Integrity Check + + + + + Runs the integrity_check pragma over the opened database and returns the results in the Execute SQL tab. This pragma does an integrity check of the entire database. + + + + + &Foreign-Key Check + + + + + Runs the foreign_key_check pragma over the opened database and returns the results in the Execute SQL tab + + + + + &Quick Integrity Check + + + + + Run a quick integrity check over the open DB + + + + + Runs the quick_check pragma over the opened database and returns the results in the Execute SQL tab. This command does most of the checking of PRAGMA integrity_check but runs much faster. + + + + + &Optimize + + + + + Attempt to optimize the database + + + + + Runs the optimize pragma over the opened database. This pragma might perform optimizations that will improve the performance of future queries. + + + + + + Print + + + + + Print text from current SQL editor tab + + + + + Open a dialog for printing the text in the current SQL editor tab + + + + + Print the structure of the opened database + + + + + Open a dialog for printing the structure of the opened database + + + + + &Recently opened + + + + + Open &tab + + + + + Ctrl+T + + + + + SQL &Log + + + + + Show S&QL submitted by + + + + + &Plot + + + + + Ctrl+F4 + + + + + &Revert Changes + + + + + &Write Changes + + + + + &Database from SQL file... + + + + + &Table from CSV file... + + + + + &Database to SQL file... + + + + + &Table(s) as CSV file... + + + + + &Create Table... + + + + + &Delete Table... + + + + + &Modify Table... + + + + + Create &Index... + + + + + W&hat's This? + + + + + &About + + + + + This button opens a new tab for the SQL editor + + + + + &Execute SQL + + + + + Execute all/selected SQL + + + + + This button executes the currently selected SQL statements. If no text is selected, all SQL statements are executed. + + + + + + + Save SQL file + + + + + &Load Extension... + + + + + Ctrl+E + + + + + Export as CSV file + + + + + Export table as comma separated values file + + + + + + Save the current session to a file + + + + + Open &Project... + + + + + + Load a working session from a file + + + + + + Save SQL file as + + + + + This button saves the content of the current SQL editor tab to a file + + + + + &Browse Table + + + + + Copy Create statement + + + + + Copy the CREATE statement of the item to the clipboard + + + + + Ctrl+Return + + + + + Ctrl+L + + + + + + Ctrl+P + + + + + Ctrl+D + + + + + Ctrl+I + + + + + Encrypted + + + + + Read only + + + + + Database file is read only. Editing the database is disabled. + + + + + Database encoding + + + + + Database is encrypted using SQLCipher + + + + + + Choose a database file + + + + + + + Choose a filename to save under + + + + + Error checking foreign keys after table modification. The changes will be reverted. + + + + + This table did not pass a foreign-key check.<br/>You should run 'Tools | Foreign-Key Check' and fix the reported issues. + + + + + + At line %1: + + + + + Result: %2 + + + + + Setting PRAGMA values or vacuuming will commit your current transaction. +Are you sure? + + + + + Error while saving the database file. This means that not all changes to the database were saved. You need to resolve the following error first. + +%1 + + + + + Are you sure you want to undo all changes made to the database file '%1' since the last save? + + + + + Choose a file to import + + + + + Text files(*.sql *.txt);;All files(*) + + + + + Do you want to create a new database file to hold the imported data? +If you answer no we will attempt to import the data in the SQL file to the current database. + + + + + Window Layout + + + + + Simplify Window Layout + + + + + Shift+Alt+0 + + + + + Dock Windows at Bottom + + + + + Dock Windows at Left Side + + + + + Dock Windows at Top + + + + + You are still executing SQL statements. Closing the database now will stop their execution, possibly leaving the database in an inconsistent state. Are you sure you want to close the database? + + + + + Do you want to save the changes made to the project file '%1'? + + + + + File %1 already exists. Please choose a different name. + + + + + Error importing data: %1 + + + + + Import completed. + + + + + Delete View + + + + + Modify View + + + + + Delete Trigger + + + + + Modify Trigger + + + + + Delete Index + + + + + Modify Index + + + + + Modify Table + + + + + Do you want to save the changes made to SQL tabs in a new project file? + + + + + Do you want to save the changes made to the SQL file %1? + + + + + The statements in this tab are still executing. Closing the tab will stop the execution. This might leave the database in an inconsistent state. Are you sure you want to close the tab? + + + + + Could not find resource file: %1 + + + + + Choose a project file to open + + + + + This project file is using an old file format because it was created using DB Browser for SQLite version 3.10 or lower. Loading this file format is still fully supported but we advice you to convert all your project files to the new file format because support for older formats might be dropped at some point in the future. You can convert your files by simply opening and re-saving them. + + + + + Could not open project file for writing. +Reason: %1 + + + + + Busy (%1) + + + + + Setting PRAGMA values will commit your current transaction. +Are you sure? + + + + + Reset Window Layout + + + + + Alt+0 + + + + + The database is currenctly busy. + + + + + Click here to interrupt the currently running query. + + + + + Could not open database file. +Reason: %1 + + + + + In-Memory database + + + + + Are you sure you want to delete the table '%1'? +All data associated with the table will be lost. + + + + + Are you sure you want to delete the view '%1'? + + + + + Are you sure you want to delete the trigger '%1'? + + + + + Are you sure you want to delete the index '%1'? + + + + + Error: could not delete the table. + + + + + Error: could not delete the view. + + + + + Error: could not delete the trigger. + + + + + Error: could not delete the index. + + + + + Message from database engine: +%1 + + + + + Editing the table requires to save all pending changes now. +Are you sure you want to save the database? + + + + + Edit View %1 + + + + + Edit Trigger %1 + + + + + You are already executing SQL statements. Do you want to stop them in order to execute the current statements instead? Note that this might leave the database in an inconsistent state. + + + + + -- EXECUTING SELECTION IN '%1' +-- + + + + + -- EXECUTING LINE IN '%1' +-- + + + + + -- EXECUTING ALL IN '%1' +-- + + + + + Result: %1 + + + + + %1 rows returned in %2ms + + + + + Choose text files + + + + + Import completed. Some foreign key constraints are violated. Please fix them before saving. + + + + + Opened '%1' in read-only mode from recent file list + + + + + Opened '%1' from recent file list + + + + + &%1 %2%3 + + + + + (read only) + + + + + Open Database or Project + + + + + Attach Database... + + + + + Import CSV file(s)... + + + + + Select the action to apply to the dropped file(s). <br/>Note: only 'Import' will process more than one file. + + + + + + + + Do you want to save the changes made to SQL tabs in the project file '%1'? + + + + + Select SQL file to open + + + + + This action will open a new SQL tab with the following statements for you to edit and run: + + + + + Rename Tab + + + + + Duplicate Tab + + + + + Close Tab + + + + + Opening '%1'... + + + + + There was an error opening '%1'... + + + + + Value is not a valid URL or filename: %1 + + + + + Select file name + + + + + Select extension file + + + + + Extension successfully loaded. + + + + + Error loading extension: %1 + + + + + + Don't show again + + + + + New version available. + + + + + A new DB Browser for SQLite version is available (%1.%2.%3).<br/><br/>Please download at <a href='%4'>%4</a>. + + + + + Project saved to file '%1' + + + + + Collation needed! Proceed? + + + + + A table in this database requires a special collation function '%1' that this application can't provide without further knowledge. +If you choose to proceed, be aware bad things can happen to your database. +Create a backup! + + + + + creating collation + + + + + Set a new name for the SQL tab. Use the '&&' character to allow using the following character as a keyboard shortcut. + + + + + Please specify the view name + + + + + There is already an object with that name. Please choose a different name. + + + + + View successfully created. + + + + + Error creating view: %1 + + + + + This action will open a new SQL tab for running: + + + + + Press Help for opening the corresponding SQLite reference page. + + + + + DB Browser for SQLite project file (*.sqbpro) + + + + + Execution finished with errors. + + + + + Execution finished without errors. + + + + + NullLineEdit + + + Set to NULL + + + + + Alt+Del + + + + + PlotDock + + + Plot + + + + + <html><head/><body><p>This pane shows the list of columns of the currently browsed table or the just executed query. You can select the columns that you want to be used as X or Y axis for the plot pane below. The table shows detected axis type that will affect the resulting plot. For the Y axis you can only select numeric columns, but for the X axis you will be able to select:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Date/Time</span>: strings with format &quot;yyyy-MM-dd hh:mm:ss&quot; or &quot;yyyy-MM-ddThh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Date</span>: strings with format &quot;yyyy-MM-dd&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Time</span>: strings with format &quot;hh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Label</span>: other string formats. Selecting this column as X axis will produce a Bars plot with the column values as labels for the bars</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Numeric</span>: integer or real values</li></ul><p>Double-clicking the Y cells you can change the used color for that graph.</p></body></html> + <html><head/><body><p>This pane shows the list of columns of the currently browsed table or the just executed query. You can select the columns that you want to be used as X or Y axis for the plot pane below. The table shows detected axis type that will affect the resulting plot. For the Y axis you can only select numeric columns, but for the X axis you will be able to select:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Date/Time</span>: strings with format &quot;yyyy-MM-dd hh:mm:ss&quot; or &quot;yyyy-MM-ddThh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Date</span>: strings with format &quot;yyyy-MM-dd&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Time</span>: strings with format &quot;hh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Label</span>: other string formats. Selecting this column as X axis will produce a Bars plot with the column values as labels for the bars</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Numeric</span>: integer or real values</li></ul><p>Double-clicking the Y cells you can change the used colour for that graph.</p></body></html> + + + + Columns + + + + + X + + + + + Y1 + + + + + Y2 + + + + + Axis Type + + + + + Here is a plot drawn when you select the x and y values above. + +Click on points to select them in the plot and in the table. Ctrl+Click for selecting a range of points. + +Use mouse-wheel for zooming and mouse drag for changing the axis range. + +Select the axes or axes labels to drag and zoom only in that orientation. + + + + + Line type: + + + + + + None + + + + + Line + + + + + StepLeft + + + + + StepRight + + + + + StepCenter + + + + + Impulse + + + + + Point shape: + + + + + Cross + + + + + Plus + + + + + Circle + + + + + Disc + + + + + Square + + + + + Diamond + + + + + Star + + + + + Triangle + + + + + TriangleInverted + + + + + CrossSquare + + + + + PlusSquare + + + + + CrossCircle + + + + + PlusCircle + + + + + Peace + + + + + <html><head/><body><p>Save current plot...</p><p>File format chosen by extension (png, jpg, pdf, bmp)</p></body></html> + + + + + Save current plot... + + + + + + Load all data and redraw plot + + + + + + + Row # + + + + + Copy + + + + + Print... + + + + + Show legend + + + + + Stacked bars + + + + + Date/Time + + + + + Date + + + + + Time + + + + + + Numeric + + + + + Label + + + + + Invalid + + + + + Load all data and redraw plot. +Warning: not all data has been fetched from the table yet due to the partial fetch mechanism. + + + + + Choose an axis color + Choose an axis colour + + + + Choose a filename to save under + + + + + PNG(*.png);;JPG(*.jpg);;PDF(*.pdf);;BMP(*.bmp);;All Files(*) + + + + + There are curves in this plot and the selected line style can only be applied to graphs sorted by X. Either sort the table or query by X to remove curves or select one of the styles supported by curves: None or Line. + + + + + Loading all remaining data for this table took %1ms. + + + + + PreferencesDialog + + + Preferences + + + + + &General + + + + + Remember last location + + + + + Always use this location + + + + + Remember last location for session only + + + + + + + ... + + + + + Default &location + + + + + Lan&guage + + + + + Automatic &updates + + + + + + + + + + + + + enabled + + + + + Show remote options + + + + + &Database + + + + + Database &encoding + + + + + Open databases with foreign keys enabled. + + + + + &Foreign keys + + + + + SQ&L to execute after opening database + + + + + Data &Browser + + + + + Remove line breaks in schema &view + + + + + Prefetch block si&ze + + + + + Default field type + + + + + Font + + + + + &Font + + + + + Content + + + + + Symbol limit in cell + + + + + NULL + + + + + Regular + + + + + Binary + + + + + Background + + + + + Filters + + + + + Threshold for completion and calculation on selection + + + + + Escape character + + + + + Delay time (&ms) + + + + + Set the waiting time before a new filter value is applied. Can be set to 0 for disabling waiting. + + + + + &SQL + + + + + Settings name + + + + + Context + + + + + Colour + + + + + Bold + + + + + Italic + + + + + Underline + + + + + Keyword + + + + + Function + + + + + Table + + + + + Comment + + + + + Identifier + + + + + String + + + + + Current line + + + + + SQL &editor font size + + + + + Tab size + + + + + SQL editor &font + + + + + Error indicators + + + + + Hori&zontal tiling + + + + + If enabled the SQL code editor and the result table view are shown side by side instead of one over the other. + + + + + Code co&mpletion + + + + + Toolbar style + + + + + + + + + Only display the icon + + + + + + + + + Only display the text + + + + + + + + + The text appears beside the icon + + + + + + + + + The text appears under the icon + + + + + + + + + Follow the style + + + + + DB file extensions + + + + + Manage + + + + + Main Window + + + + + Database Structure + + + + + Browse Data + + + + + Execute SQL + + + + + Edit Database Cell + + + + + When this value is changed, all the other color preferences are also set to matching colors. + + + + + Follow the desktop style + + + + + Dark style + + + + + Application style + + + + + This sets the font size for all UI elements which do not have their own font size option. + + + + + Font size + + + + + When enabled, the line breaks in the Schema column of the DB Structure tab, dock and printed output are removed. + + + + + Database structure font size + + + + + Font si&ze + + + + + This is the maximum number of items allowed for some computationally expensive functionalities to be enabled: +Maximum number of rows in a table for enabling the value completion based on current values in the column. +Maximum number of indexes in a selection for calculating sum and average. +Can be set to 0 for disabling the functionalities. + + + + + This is the maximum number of rows in a table for enabling the value completion based on current values in the column. +Can be set to 0 for disabling completion. + + + + + Show images in cell + + + + + Enable this option to show a preview of BLOBs containing image data in the cells. This can affect the performance of the data browser, however. + + + + + Field display + + + + + Displayed &text + + + + + + + + + + Click to set this color + + + + + Text color + Text colour + + + + Background color + Background colour + + + + Preview only (N/A) + + + + + Foreground + + + + + SQL &results font size + + + + + &Wrap lines + + + + + Never + + + + + At word boundaries + + + + + At character boundaries + + + + + At whitespace boundaries + + + + + &Quotes for identifiers + + + + + Choose the quoting mechanism used by the application for identifiers in SQL code. + + + + + "Double quotes" - Standard SQL (recommended) + + + + + `Grave accents` - Traditional MySQL quotes + + + + + [Square brackets] - Traditional MS SQL Server quotes + + + + + Keywords in &UPPER CASE + + + + + When set, the SQL keywords are completed in UPPER CASE letters. + + + + + When set, the SQL code lines that caused errors during the last execution are highlighted and the results frame indicates the error in the background + + + + + Close button on tabs + + + + + If enabled, SQL editor tabs will have a close button. In any case, you can use the contextual menu or the keyboard shortcut to close them. + + + + + &Extensions + + + + + Select extensions to load for every database: + + + + + Add extension + + + + + Remove extension + + + + + <html><head/><body><p>While supporting the REGEXP operator SQLite doesn't implement any regular expression<br/>algorithm but calls back the running application. DB Browser for SQLite implements this<br/>algorithm for you to let you use REGEXP out of the box. However, as there are multiple possible<br/>implementations of this and you might want to use another one, you're free to disable the<br/>application's implementation and load your own by using an extension. Requires restart of the application.</p></body></html> + + + + + Disable Regular Expression extension + + + + + <html><head/><body><p>SQLite provides an SQL function for loading extensions from a shared library file. Activate this if you want to use the <span style=" font-style:italic;">load_extension()</span> function from SQL code.</p><p>For security reasons, extension loading is turned off by default and must be enabled through this setting. You can always load extensions through the GUI, even though this option is disabled.</p></body></html> + + + + + Allow loading extensions from SQL code + + + + + Remote + + + + + CA certificates + + + + + Proxy + + + + + Configure + + + + + + Subject CN + + + + + Common Name + + + + + Subject O + + + + + Organization + + + + + + Valid from + + + + + + Valid to + + + + + + Serial number + + + + + Your certificates + + + + + File + + + + + Subject Common Name + + + + + Issuer CN + + + + + Issuer Common Name + + + + + Clone databases into + + + + + + Choose a directory + + + + + The language will change after you restart the application. + + + + + Select extension file + + + + + Extensions(*.so *.dylib *.dll);;All files(*) + + + + + Import certificate file + + + + + No certificates found in this file. + + + + + Are you sure you want do remove this certificate? All certificate data will be deleted from the application settings! + + + + + Are you sure you want to clear all the saved settings? +All your preferences will be lost and default values will be used. + + + + + ProxyDialog + + + Proxy Configuration + + + + + Pro&xy Type + + + + + Host Na&me + + + + + Port + + + + + Authentication Re&quired + + + + + &User Name + + + + + Password + + + + + None + + + + + System settings + + + + + HTTP + + + + + Socks v5 + + + + + QObject + + + Error importing data + + + + + from record number %1 + + + + + . +%1 + + + + + Importing CSV file... + + + + + Cancel + + + + + All files (*) + + + + + SQLite database files (*.db *.sqlite *.sqlite3 *.db3) + + + + + Left + + + + + Right + + + + + Center + + + + + Justify + + + + + SQLite Database Files (*.db *.sqlite *.sqlite3 *.db3) + + + + + DB Browser for SQLite Project Files (*.sqbpro) + + + + + SQL Files (*.sql) + + + + + All Files (*) + + + + + Text Files (*.txt) + + + + + Comma-Separated Values Files (*.csv) + + + + + Tab-Separated Values Files (*.tsv) + + + + + Delimiter-Separated Values Files (*.dsv) + + + + + Concordance DAT files (*.dat) + + + + + JSON Files (*.json *.js) + + + + + XML Files (*.xml) + + + + + Binary Files (*.bin *.dat) + + + + + SVG Files (*.svg) + + + + + Hex Dump Files (*.dat *.bin) + + + + + Extensions (*.so *.dylib *.dll) + + + + + RemoteCommitsModel + + + Commit ID + + + + + Message + + + + + Date + + + + + Author + + + + + Size + + + + + Authored and committed by %1 + + + + + Authored by %1, committed by %2 + + + + + RemoteDatabase + + + Error opening local databases list. +%1 + + + + + Error creating local databases list. +%1 + + + + + RemoteDock + + + Remote + + + + + Identity + + + + + Push currently opened database to server + + + + + DBHub.io + + + + + <html><head/><body><p>In this pane, remote databases from dbhub.io website can be added to DB Browser for SQLite. First you need an identity:</p><ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Login to the dbhub.io website (use your GitHub credentials or whatever you want)</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Click the button to &quot;Generate client certificate&quot; (that's your identity). That'll give you a certificate file (save it to your local disk).</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Go to the Remote tab in DB Browser for SQLite Preferences. Click the button to add a new certificate to DB Browser for SQLite and choose the just downloaded certificate file.</li></ol><p>Now the Remote panel shows your identity and you can add remote databases.</p></body></html> + + + + + Local + + + + + Current Database + + + + + Clone + + + + + User + + + + + Database + + + + + Branch + + + + + Commits + + + + + Commits for + + + + + <html><head/><body><p>You are currently using a built-in, read-only identity. For uploading your database, you need to configure and use your DBHub.io account.</p><p>No DBHub.io account yet? <a href="https://dbhub.io/"><span style=" text-decoration: underline; color:#007af4;">Create one now</span></a> and import your certificate <a href="#preferences"><span style=" text-decoration: underline; color:#007af4;">here</span></a> to share your databases.</p><p>For online help visit <a href="https://dbhub.io/about"><span style=" text-decoration: underline; color:#007af4;">here</span></a>.</p></body></html> + + + + + Back + + + + + Delete Database + + + + + Delete the local clone of this database + + + + + Open in Web Browser + + + + + Open the web page for the current database in your browser + + + + + Clone from Link + + + + + Use this to download a remote database for local editing using a URL as provided on the web page of the database. + + + + + Refresh + + + + + Reload all data and update the views + + + + + F5 + + + + + Clone Database + + + + + Open Database + + + + + Open the local copy of this database + + + + + Check out Commit + + + + + Download and open this specific commit + + + + + Check out Latest Commit + + + + + Check out the latest commit of the current branch + + + + + Save Revision to File + + + + + Saves the selected revision of the database to another file + + + + + Upload Database + + + + + Upload this database as a new commit + + + + + Select an identity to connect + + + + + Public + + + + + This downloads a database from a remote server for local editing. +Please enter the URL to clone from. You can generate this URL by +clicking the 'Clone Database in DB4S' button on the web page +of the database. + + + + + Invalid URL: The host name does not match the host name of the current identity. + + + + + Invalid URL: No branch name specified. + + + + + Invalid URL: No commit ID specified. + + + + + You have modified the local clone of the database. Fetching this commit overrides these local changes. +Are you sure you want to proceed? + + + + + The database has unsaved changes. Are you sure you want to push it before saving? + + + + + The database you are trying to delete is currently opened. Please close it before deleting. + + + + + This deletes the local version of this database with all the changes you have not committed yet. Are you sure you want to delete this database? + + + + + RemoteLocalFilesModel + + + Name + + + + + Branch + + + + + Last modified + + + + + Size + + + + + Commit + + + + + File + + + + + RemoteModel + + + Name + + + + + Commit + + + + + Last modified + + + + + Size + + + + + Size: + + + + + Last Modified: + + + + + Licence: + + + + + Default Branch: + + + + + RemoteNetwork + + + Choose a location to save the file + + + + + Error opening remote file at %1. +%2 + + + + + Error: Invalid client certificate specified. + + + + + Please enter the passphrase for this client certificate in order to authenticate. + + + + + Cancel + + + + + Uploading remote database to +%1 + + + + + Downloading remote database from +%1 + + + + + + Error: The network is not accessible. + + + + + Error: Cannot open the file for sending. + + + + + RemotePushDialog + + + Push database + + + + + Database na&me to push to + + + + + Commit message + + + + + Database licence + + + + + Public + + + + + Branch + + + + + Force push + + + + + Username + + + + + Database will be public. Everyone has read access to it. + + + + + Database will be private. Only you have access to it. + + + + + Use with care. This can cause remote commits to be deleted. + + + + + RunSql + + + Execution aborted by user + + + + + , %1 rows affected + + + + + query executed successfully. Took %1ms%2 + + + + + executing query + + + + + SelectItemsPopup + + + A&vailable + + + + + Sele&cted + + + + + SqlExecutionArea + + + Form + + + + + Find previous match [Shift+F3] + + + + + Find previous match with wrapping + + + + + Shift+F3 + + + + + The found pattern must be a whole word + + + + + Whole Words + + + + + Text pattern to find considering the checks in this frame + + + + + Find in editor + + + + + The found pattern must match in letter case + + + + + Case Sensitive + + + + + Find next match [Enter, F3] + + + + + Find next match with wrapping + + + + + F3 + + + + + Interpret search pattern as a regular expression + + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + + + + + Regular Expression + + + + + + Close Find Bar + + + + + <html><head/><body><p>Results of the last executed statements.</p><p>You may want to collapse this panel and use the <span style=" font-style:italic;">SQL Log</span> dock with <span style=" font-style:italic;">User</span> selection instead.</p></body></html> + + + + + Results of the last executed statements + + + + + This field shows the results and status codes of the last executed statements. + + + + + Couldn't read file: %1. + + + + + + Couldn't save file: %1. + + + + + Your changes will be lost when reloading it! + + + + + The file "%1" was modified by another program. Do you want to reload it?%2 + + + + + SqlTextEdit + + + Ctrl+/ + + + + + SqlUiLexer + + + (X) The abs(X) function returns the absolute value of the numeric argument X. + + + + + () The changes() function returns the number of database rows that were changed or inserted or deleted by the most recently completed INSERT, DELETE, or UPDATE statement. + + + + + (X1,X2,...) The char(X1,X2,...,XN) function returns a string composed of characters having the unicode code point values of integers X1 through XN, respectively. + + + + + (X,Y,...) The coalesce() function returns a copy of its first non-NULL argument, or NULL if all arguments are NULL + + + + + (X,Y) The glob(X,Y) function is equivalent to the expression "Y GLOB X". + + + + + (X,Y) The ifnull() function returns a copy of its first non-NULL argument, or NULL if both arguments are NULL. + + + + + (X,Y) The instr(X,Y) function finds the first occurrence of string Y within string X and returns the number of prior characters plus 1, or 0 if Y is nowhere found within X. + + + + + (X) The hex() function interprets its argument as a BLOB and returns a string which is the upper-case hexadecimal rendering of the content of that blob. + + + + + () The last_insert_rowid() function returns the ROWID of the last row insert from the database connection which invoked the function. + + + + + (X) For a string value X, the length(X) function returns the number of characters (not bytes) in X prior to the first NUL character. + + + + + (X,Y) The like() function is used to implement the "Y LIKE X" expression. + + + + + (X,Y,Z) The like() function is used to implement the "Y LIKE X ESCAPE Z" expression. + + + + + (X) The load_extension(X) function loads SQLite extensions out of the shared library file named X. +Use of this function must be authorized from Preferences. + + + + + (X,Y) The load_extension(X) function loads SQLite extensions out of the shared library file named X using the entry point Y. +Use of this function must be authorized from Preferences. + + + + + (X) The lower(X) function returns a copy of string X with all ASCII characters converted to lower case. + + + + + (X) ltrim(X) removes spaces from the left side of X. + + + + + (X,Y) The ltrim(X,Y) function returns a string formed by removing any and all characters that appear in Y from the left side of X. + + + + + (X,Y,...) The multi-argument max() function returns the argument with the maximum value, or return NULL if any argument is NULL. + + + + + (X,Y,...) The multi-argument min() function returns the argument with the minimum value. + + + + + (X,Y) The nullif(X,Y) function returns its first argument if the arguments are different and NULL if the arguments are the same. + + + + + (FORMAT,...) The printf(FORMAT,...) SQL function works like the sqlite3_mprintf() C-language function and the printf() function from the standard C library. + + + + + (X) The quote(X) function returns the text of an SQL literal which is the value of its argument suitable for inclusion into an SQL statement. + + + + + () The random() function returns a pseudo-random integer between -9223372036854775808 and +9223372036854775807. + + + + + (N) The randomblob(N) function return an N-byte blob containing pseudo-random bytes. + + + + + (X,Y,Z) The replace(X,Y,Z) function returns a string formed by substituting string Z for every occurrence of string Y in string X. + + + + + (X) The round(X) function returns a floating-point value X rounded to zero digits to the right of the decimal point. + + + + + (X,Y) The round(X,Y) function returns a floating-point value X rounded to Y digits to the right of the decimal point. + + + + + (X) rtrim(X) removes spaces from the right side of X. + + + + + (X,Y) The rtrim(X,Y) function returns a string formed by removing any and all characters that appear in Y from the right side of X. + + + + + (X) The soundex(X) function returns a string that is the soundex encoding of the string X. + + + + + (X,Y) substr(X,Y) returns all characters through the end of the string X beginning with the Y-th. + + + + + (X,Y,Z) The substr(X,Y,Z) function returns a substring of input string X that begins with the Y-th character and which is Z characters long. + + + + + () The total_changes() function returns the number of row changes caused by INSERT, UPDATE or DELETE statements since the current database connection was opened. + + + + + (X) trim(X) removes spaces from both ends of X. + + + + + (X,Y) The trim(X,Y) function returns a string formed by removing any and all characters that appear in Y from both ends of X. + + + + + (X) The typeof(X) function returns a string that indicates the datatype of the expression X. + + + + + (X) The unicode(X) function returns the numeric unicode code point corresponding to the first character of the string X. + + + + + (X) The upper(X) function returns a copy of input string X in which all lower-case ASCII characters are converted to their upper-case equivalent. + + + + + (N) The zeroblob(N) function returns a BLOB consisting of N bytes of 0x00. + + + + + + + + (timestring,modifier,modifier,...) + + + + + (format,timestring,modifier,modifier,...) + + + + + (X) The avg() function returns the average value of all non-NULL X within a group. + + + + + (X) The count(X) function returns a count of the number of times that X is not NULL in a group. + + + + + (X) The group_concat() function returns a string which is the concatenation of all non-NULL values of X. + + + + + (X,Y) The group_concat() function returns a string which is the concatenation of all non-NULL values of X. If parameter Y is present then it is used as the separator between instances of X. + + + + + (X) The max() aggregate function returns the maximum value of all values in the group. + + + + + (X) The min() aggregate function returns the minimum non-NULL value of all values in the group. + + + + + + (X) The sum() and total() aggregate functions return sum of all non-NULL values in the group. + + + + + () The number of the row within the current partition. Rows are numbered starting from 1 in the order defined by the ORDER BY clause in the window definition, or in arbitrary order otherwise. + + + + + () The row_number() of the first peer in each group - the rank of the current row with gaps. If there is no ORDER BY clause, then all rows are considered peers and this function always returns 1. + + + + + () The number of the current row's peer group within its partition - the rank of the current row without gaps. Partitions are numbered starting from 1 in the order defined by the ORDER BY clause in the window definition. If there is no ORDER BY clause, then all rows are considered peers and this function always returns 1. + + + + + () Despite the name, this function always returns a value between 0.0 and 1.0 equal to (rank - 1)/(partition-rows - 1), where rank is the value returned by built-in window function rank() and partition-rows is the total number of rows in the partition. If the partition contains only one row, this function returns 0.0. + + + + + () The cumulative distribution. Calculated as row-number/partition-rows, where row-number is the value returned by row_number() for the last peer in the group and partition-rows the number of rows in the partition. + + + + + (N) Argument N is handled as an integer. This function divides the partition into N groups as evenly as possible and assigns an integer between 1 and N to each group, in the order defined by the ORDER BY clause, or in arbitrary order otherwise. If necessary, larger groups occur first. This function returns the integer value assigned to the group that the current row is a part of. + + + + + (expr) Returns the result of evaluating expression expr against the previous row in the partition. Or, if there is no previous row (because the current row is the first), NULL. + + + + + (expr,offset) If the offset argument is provided, then it must be a non-negative integer. In this case the value returned is the result of evaluating expr against the row offset rows before the current row within the partition. If offset is 0, then expr is evaluated against the current row. If there is no row offset rows before the current row, NULL is returned. + + + + + + (expr,offset,default) If default is also provided, then it is returned instead of NULL if the row identified by offset does not exist. + + + + + (expr) Returns the result of evaluating expression expr against the next row in the partition. Or, if there is no next row (because the current row is the last), NULL. + + + + + (expr,offset) If the offset argument is provided, then it must be a non-negative integer. In this case the value returned is the result of evaluating expr against the row offset rows after the current row within the partition. If offset is 0, then expr is evaluated against the current row. If there is no row offset rows after the current row, NULL is returned. + + + + + (expr) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the first row in the window frame for each row. + + + + + (expr) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the last row in the window frame for each row. + + + + + (expr,N) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the row N of the window frame. Rows are numbered within the window frame starting from 1 in the order defined by the ORDER BY clause if one is present, or in arbitrary order otherwise. If there is no Nth row in the partition, then NULL is returned. + + + + + SqliteTableModel + + + reading rows + + + + + loading... + + + + + References %1(%2) +Hold %3Shift and click to jump there + + + + + Error changing data: +%1 + + + + + retrieving list of columns + + + + + Fetching data... + + + + + + Cancel + + + + + TableBrowser + + + Browse Data + + + + + &Table: + + + + + Select a table to browse data + + + + + Use this list to select a table to be displayed in the database view + + + + + This is the database table view. You can do the following actions: + - Start writing for editing inline the value. + - Double-click any record to edit its contents in the cell editor window. + - Alt+Del for deleting the cell content to NULL. + - Ctrl+" for duplicating the current record. + - Ctrl+' for copying the value from the cell above. + - Standard selection and copy/paste operations. + + + + + Text pattern to find considering the checks in this frame + + + + + Find in table + + + + + Find previous match [Shift+F3] + + + + + Find previous match with wrapping + + + + + Shift+F3 + + + + + Find next match [Enter, F3] + + + + + Find next match with wrapping + + + + + F3 + + + + + The found pattern must match in letter case + + + + + Case Sensitive + + + + + The found pattern must be a whole word + + + + + Whole Cell + + + + + Interpret search pattern as a regular expression + + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + + + + + Regular Expression + + + + + + Close Find Bar + + + + + Text to replace with + + + + + Replace with + + + + + Replace next match + + + + + + Replace + + + + + Replace all matches + + + + + Replace all + + + + + <html><head/><body><p>Scroll to the beginning</p></body></html> + + + + + <html><head/><body><p>Clicking this button navigates to the beginning in the table view above.</p></body></html> + + + + + |< + + + + + Scroll one page upwards + + + + + <html><head/><body><p>Clicking this button navigates one page of records upwards in the table view above.</p></body></html> + + + + + < + + + + + 0 - 0 of 0 + + + + + Scroll one page downwards + + + + + <html><head/><body><p>Clicking this button navigates one page of records downwards in the table view above.</p></body></html> + + + + + > + + + + + Scroll to the end + + + + + <html><head/><body><p>Clicking this button navigates up to the end in the table view above.</p></body></html> + + + + + >| + + + + + <html><head/><body><p>Click here to jump to the specified record</p></body></html> + + + + + <html><head/><body><p>This button is used to navigate to the record number specified in the Go to area.</p></body></html> + + + + + Go to: + + + + + Enter record number to browse + + + + + Type a record number in this area and click the Go to: button to display the record in the database view + + + + + 1 + + + + + Show rowid column + + + + + Toggle the visibility of the rowid column + + + + + Unlock view editing + + + + + This unlocks the current view for editing. However, you will need appropriate triggers for editing. + + + + + Edit display format + + + + + Edit the display format of the data in this column + + + + + + New Record + + + + + + Insert a new record in the current table + + + + + <html><head/><body><p>This button creates a new record in the database. Hold the mouse button to open a pop-up menu of different options:</p><ul><li><span style=" font-weight:600;">New Record</span>: insert a new record with default values in the database.</li><li><span style=" font-weight:600;">Insert Values...</span>: open a dialog for entering values before they are inserted in the database. This allows to enter values acomplishing the different constraints. This dialog is also open if the <span style=" font-weight:600;">New Record</span> option fails due to these constraints.</li></ul></body></html> + + + + + + Delete Record + + + + + Delete the current record + + + + + + This button deletes the record or records currently selected in the table + + + + + + Insert new record using default values in browsed table + + + + + Insert Values... + + + + + + Open a dialog for inserting values in a new record + + + + + Export to &CSV + + + + + + Export the filtered data to CSV + + + + + This button exports the data of the browsed table as currently displayed (after filters, display formats and order column) as a CSV file. + + + + + Save as &view + + + + + + Save the current filter, sort column and display formats as a view + + + + + This button saves the current setting of the browsed table (filters, display formats and order column) as an SQL view that you can later browse or use in SQL statements. + + + + + Save Table As... + + + + + + Save the table as currently displayed + + + + + <html><head/><body><p>This popup menu provides the following options applying to the currently browsed and filtered table:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Export to CSV: this option exports the data of the browsed table as currently displayed (after filters, display formats and order column) to a CSV file.</li><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Save as view: this option saves the current setting of the browsed table (filters, display formats and order column) as an SQL view that you can later browse or use in SQL statements.</li></ul></body></html> + + + + + Hide column(s) + + + + + Hide selected column(s) + + + + + Show all columns + + + + + Show all columns that were hidden + + + + + + Set encoding + + + + + Change the encoding of the text in the table cells + + + + + Set encoding for all tables + + + + + Change the default encoding assumed for all tables in the database + + + + + Clear Filters + + + + + Clear all filters + + + + + + This button clears all the filters set in the header input fields for the currently browsed table. + + + + + Clear Sorting + + + + + Reset the order of rows to the default + + + + + + This button clears the sorting columns specified for the currently browsed table and returns to the default order. + + + + + Print + + + + + Print currently browsed table data + + + + + Print currently browsed table data. Print selection if more than one cell is selected. + + + + + Ctrl+P + + + + + Refresh + + + + + Refresh the data in the selected table + + + + + This button refreshes the data in the currently selected table. + + + + + F5 + + + + + Find in cells + + + + + Open the find tool bar which allows you to search for values in the table view below. + + + + + + Bold + + + + + Ctrl+B + + + + + + Italic + + + + + + Underline + + + + + Ctrl+U + + + + + + Align Right + + + + + + Align Left + + + + + + Center Horizontally + + + + + + Justify + + + + + + Edit Conditional Formats... + + + + + Edit conditional formats for the current column + + + + + Clear Format + + + + + Clear All Formats + + + + + + Clear all cell formatting from selected cells and all conditional formats from selected columns + + + + + + Font Color + + + + + + Background Color + + + + + Toggle Format Toolbar + + + + + Show/hide format toolbar + + + + + + This button shows or hides the formatting toolbar of the Data Browser + + + + + Select column + + + + + Ctrl+Space + + + + + Replace text in cells + + + + + Filter in any column + + + + + Ctrl+R + + + + + %n row(s) + + %n row + %n rows + + + + + , %n column(s) + + , %n column + , %n columns + + + + + . Sum: %1; Average: %2; Min: %3; Max: %4 + + + + + Conditional formats for "%1" + + + + + determining row count... + + + + + %1 - %2 of >= %3 + + + + + %1 - %2 of %3 + + + + + Please enter a pseudo-primary key in order to enable editing on this view. This should be the name of a unique column in the view. + + + + + Delete Records + + + + + Duplicate records + + + + + Duplicate record + + + + + Ctrl+" + + + + + Adjust rows to contents + + + + + Error deleting record: +%1 + + + + + Please select a record first + + + + + There is no filter set for this table. View will not be created. + + + + + Please choose a new encoding for all tables. + + + + + Please choose a new encoding for this table. + + + + + %1 +Leave the field empty for using the database encoding. + + + + + This encoding is either not valid or not supported. + + + + + %1 replacement(s) made. + + + + + VacuumDialog + + + Compact Database + + + + + Warning: Compacting the database will commit all of your changes. + + + + + Please select the databases to co&mpact: + + + + diff --git a/ConfigFiles/translations/sqlb_es_ES.qm b/ConfigFiles/translations/sqlb_es_ES.qm new file mode 100644 index 0000000000000000000000000000000000000000..cf849f0b8d23685df3964d62cab301bde618cb74 GIT binary patch literal 252959 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 + + + + AboutDialog + + + About DB Browser for SQLite + Acerca de «DB Browser for SQLite» + + + + Version + Versión + + + + <html><head/><body><p>DB Browser for SQLite is an open source, freeware visual tool used to create, design and edit SQLite database files.</p><p>It is bi-licensed under the Mozilla Public License Version 2, as well as the GNU General Public License Version 3 or later. You can modify or redistribute it under the conditions of these licenses.</p><p>See <a href="http://www.gnu.org/licenses/gpl.html">http://www.gnu.org/licenses/gpl.html</a> and <a href="https://www.mozilla.org/MPL/2.0/index.txt">https://www.mozilla.org/MPL/2.0/index.txt</a> for details.</p><p>For more information on this program please visit our website at: <a href="http://sqlitebrowser.org">http://sqlitebrowser.org</a></p><p><span style=" font-size:small;">This software uses the GPL/LGPL Qt Toolkit from </span><a href="http://qt-project.org/"><span style=" font-size:small;">http://qt-project.org/</span></a><span style=" font-size:small;"><br/>See </span><a href="http://qt-project.org/doc/qt-5/licensing.html"><span style=" font-size:small;">http://qt-project.org/doc/qt-5/licensing.html</span></a><span style=" font-size:small;"> for licensing terms and information.</span></p><p><span style=" font-size:small;">It also uses the Silk icon set by Mark James licensed under a Creative Commons Attribution 2.5 and 3.0 license.<br/>See </span><a href="http://www.famfamfam.com/lab/icons/silk/"><span style=" font-size:small;">http://www.famfamfam.com/lab/icons/silk/</span></a><span style=" font-size:small;"> for details.</span></p></body></html> + <html><head/><body><p>«DB Browser for SQLite» es una herramienta visual, libre y de fuente abierta usada para crear, diseñar y editar archivos de bases de datos SQLite.</p><p>Está licenciada dualmente con la Mozilla Public License Versión 2, y con la GNU General Public License Versión 3 o posterior. Puede modificarla o redistribuirla bajo las condiciones de estas licencias.</p><p>Vea <a href="http://www.gnu.org/licenses/gpl.html">http://www.gnu.org/licenses/gpl.html</a> y <a href="https://www.mozilla.org/MPL/2.0/index.txt">https://www.mozilla.org/MPL/2.0/index.txt</a> para más detalles.</p><p>Para más información sobre este programa visite nuestra página web: <a href="http://sqlitebrowser.org">http://sqlitebrowser.org</a></p><p><span style=" font-size:small;">Esta aplicación utiliza GPL/LGPL Qt Toolkit de </span><a href="http://qt-project.org/"><span style=" font-size:small;">http://qt-project.org/</span></a><span style=" font-size:small;"><br/>Vea </span><a href="http://qt-project.org/doc/qt-5/licensing.html"><span style=" font-size:small;">http://qt-project.org/doc/qt-5/licensing.html</span></a><span style=" font-size:small;"> para los términos de licencia e información.</span></p><p><span style=" font-size:small;">Además utiliza el conjunto de iconos Silk de Mark James licenciado bajo la licencia Creative Commons Attribution 2.5 y 3.0.<br/>Vea </span><a href="http://www.famfamfam.com/lab/icons/silk/"><span style=" font-size:small;">http://www.famfamfam.com/lab/icons/silk/</span></a><span style=" font-size:small;"> para los detalles.</span></p></body></html> + + + + AddRecordDialog + + + Add New Record + Añadir nuevo registro + + + + Enter values for the new record considering constraints. Fields in bold are mandatory. + Introduzca valores para el nuevo registro teniendo en cuenta las restricciones. Los campos en negrita son obligatorios. + + + + In the Value column you can specify the value for the field identified in the Name column. The Type column indicates the type of the field. Default values are displayed in the same style as NULL values. + En la columna Valor puede especificar el valor del campo identificado en la columna Nombre. La columna Tipo indica el tipo de campo. Los valores por defecto se muestran en la misma tipografía que los valores NULL. + + + + Name + Nombre + + + + Type + Tipo + + + + Value + Valor + + + + Values to insert. Pre-filled default values are inserted automatically unless they are changed. + Valores a insertar. Los valores mostrados por defecto son insertados automáticamente a menos que se cambien. + + + + When you edit the values in the upper frame, the SQL query for inserting this new record is shown here. You can edit manually the query before saving. + Cuando se editan los valores en el cuadro superior, aquí se muestra la consulta SQL para insertar este nuevo registro. Puede editarla antes de guardar. + + + + <html><head/><body><p><span style=" font-weight:600;">Save</span> will submit the shown SQL statement to the database for inserting the new record.</p><p><span style=" font-weight:600;">Restore Defaults</span> will restore the initial values in the <span style=" font-weight:600;">Value</span> column.</p><p><span style=" font-weight:600;">Cancel</span> will close this dialog without executing the query.</p></body></html> + <html><head/><body><p><span style=" font-weight:600;">Guardar</span> enviará a la base de datos la sentencia SQL mostrada para insertar el nuevo registro.</p><p><span style=" font-weight:600;">Restituir valores por Defecto</span> restituirá los valores iniciales en la columna <span style=" font-weight:600;">Valor</span></p><p><span style=" font-weight:600;">Cancelar</span> cierra este diálogo sin ejecutar la consulta.</p></body></html> + + + + Auto-increment + + Auto-incremento + + + + + Unique constraint + + Restricción UNIQUE + + + + + Check constraint: %1 + + Restricción CHECK: %1 + + + + + Foreign key: %1 + + Clave foránea: %1 + + + + + Default value: %1 + + Valor por defecto: %1 + + + + + Error adding record. Message from database engine: + +%1 + Error añadiendo registro. Mensaje de la base de datos: + +%1 + + + + Are you sure you want to restore all the entered values to their defaults? + ¿Está seguro de que quiere restaurar todos los valores introducidos a sus valores por defecto? + + + + Application + + + Possible command line arguments: + Argumentos de línea de comandos disponibles: + + + + The -o/--option and -O/--save-option options require an argument in the form group/setting=value + Las opciones -o/--option y -O/--save-option requieren un argumento de la forma grupo/ajuste=valor + + + + Usage: %1 [options] [<database>|<project>] + + Uso: %1 [opciones] [<base de datos>|<proyecto>] + + + + + -h, --help Show command line options + -h, --help Mostrar opciones de línea de comandos + + + + -q, --quit Exit application after running scripts + -q, --quit Salir de la aplicación tras ejecutar los scripts + + + + -s, --sql <file> Execute this SQL file after opening the DB + -s, --sql <archivo> Ejecuta este archivo de SQL tras abrir la base de datos + + + + -t, --table <table> Browse this table after opening the DB + -t, --table <tabla> Mostrar esta tabla en la hoja de datos tras abrir la base de datos + + + + -R, --read-only Open database in read-only mode + -R, --read-only Abrir base de datos en modo de solo-lectura + + + + -o, --option <group>/<setting>=<value> + -o, --option <grupo>/<ajuste>=<valor> + + + + Run application with this setting temporarily set to value + Ejecutar la aplicación con este ajuste establecido temporalmente a este valor + + + + -O, --save-option <group>/<setting>=<value> + -O, --save-option <grupo>/<ajuste>=<valor> + + + + Run application saving this value for this setting + Ejecutar la aplicación guardando este valor para este ajuste + + + + -v, --version Display the current version + -v, --version Mostrar la versión actual + + + + <database> Open this SQLite database + <base de datos> Abrir esta base de datos SQLite + + + + <project> Open this project file (*.sqbpro) + <proyecto> Abrir este archivo de proyecto (*.sqbpro) + + + + The -s/--sql option requires an argument + La opción -s/--sql necesita un argumento + + + + The file %1 does not exist + El archivo %1 no existe + + + + The -t/--table option requires an argument + La opción -t/--table necesita un argumento + + + + SQLite Version + Versión de SQLite + + + + SQLCipher Version %1 (based on SQLite %2) + Versión de SQLCipher %1 (basado en SQLite %2) + + + + DB Browser for SQLite Version %1. + «DB Browser for SQLite» Versión %1. + + + + Built for %1, running on %2 + Compilado para %1, ejecutándose en %2 + + + + Qt Version %1 + Versión de Qt %1 + + + + Invalid option/non-existant file: %1 + Opción inválida o archivo inexistente: %1 + + + + CipherDialog + + + SQLCipher encryption + Cifrado con SQLCipher + + + + &Password + &Clave + + + + &Reenter password + &Reintroducir clave + + + + Encr&yption settings + Ajustes de &cifrado + + + + SQLCipher &3 defaults + Predeterminados de SQLCipher &3 + + + + SQLCipher &4 defaults + Predeterminados de SQLCipher &4 + + + + Custo&m + &Personalizado + + + + Page si&ze + &Tamaño de página + + + + &KDF iterations + Iteraciones &KDF + + + + HMAC algorithm + Algoritmo HMAC + + + + KDF algorithm + Algoritmo KDF + + + + Plaintext Header Size + Tamaño de la cabecera del texto en claro + + + + Passphrase + Frase de contraseña + + + + Raw key + Clave en bruto + + + + Please set a key to encrypt the database. +Note that if you change any of the other, optional, settings you'll need to re-enter them as well every time you open the database file. +Leave the password fields empty to disable the encryption. +The encryption process might take some time and you should have a backup copy of your database! Unsaved changes are applied before modifying the encryption. + Por favor, elija una clave para cifrar la base de datos. +Tenga en cuenta que: +- Si modifica cualquiera de los otros ajustes opcionales necesitará + reintroducirlos también cada vez que abra la base de datos. +- Puede dejar los campos de clave en blanco para no usar cifrado. +- El proceso de cifrado puede llevar algún tiempo. +- ¡Debería hacer una copia de respaldo de la base de datos! +- Los cambios no guardados son aplicados antes de modificar el cifrado. + + + + Please enter the key used to encrypt the database. +If any of the other settings were altered for this database file you need to provide this information as well. + Por favor, introduzca la clave a usar en el cifrado de la base de datos. +Si se modificaron cualquiera de los otros ajustes para este archivo de base de datos, también tendrá que proporcionar esta información. + + + + ColumnDisplayFormatDialog + + + Choose display format + Elija el formato de presentación + + + + Display format + Formato de presentación + + + + Choose a display format for the column '%1' which is applied to each value prior to showing it. + Elija el formato para la columna «%1» el cual se aplicará a cada valor antes de mostrarlo. + + + + Default + Por defecto + + + + Decimal number + Número decimal + + + + Exponent notation + Notación exponencial + + + + Hex blob + Secuencia hexadecimal + + + + Hex number + Número hexadecimal + + + + Apple NSDate to date + Fecha de Apple NSDate a fecha + + + + Java epoch (milliseconds) to date + Tiempo Java (milisegundos) a fecha + + + + .NET DateTime.Ticks to date + DateTime.Ticks de .NET a fecha + + + + Julian day to date + Fecha juliana a fecha + + + + Unix epoch to local time + Tiempo Unix a hora local + + + + Date as dd/mm/yyyy + Fecha dd/mm/aaaa + + + + Lower case + Minúsculas + + + + Custom display format must contain a function call applied to %1 + El formato de presentación a medida tiene que contener una llamada de función aplicada a %1 + + + + Error in custom display format. Message from database engine: + +%1 + Error en el formato de presentación a medida. Mensaje del motor de la base de datos: + +%1 + + + + Custom display format must return only one column but it returned %1. + El formato de presentación a medida debe devolver sólo una columna pero ha devuelto %1. + + + + Octal number + Número octal + + + + Round number + Número redondeado + + + + Unix epoch to date + Tiempo Unix a fecha + + + + Upper case + Mayúsculas + + + + Windows DATE to date + Fecha Windows a fecha + + + + Custom + A medida + + + + CondFormatManager + + + Conditional Format Manager + Gestor de Formato Condicional + + + + This dialog allows creating and editing conditional formats. Each cell style will be selected by the first accomplished condition for that cell data. Conditional formats can be moved up and down, where those at higher rows take precedence over those at lower. Syntax for conditions is the same as for filters and an empty condition applies to all values. + Este diálogo permite crear y editar formatos condicionales. Cada estilo de celda será seleccionado por la primera condición que se cumpla para los datos de esa celda. Los formatos condicionales se pueden mover arriba y abajo, teniendo precedencia aquellos en líneas superiores sobre los inferiores. La sintaxis es la misma que para los filtros y se aplica una condición vacía a todos los valores. + + + + Add new conditional format + Añadir un nuevo formato condicional + + + + &Add + &Añadir + + + + Remove selected conditional format + Elimina el formato condicional seleccionado + + + + &Remove + &Eliminar + + + + Move selected conditional format up + Mueve arriba el formato condicional seleccionado + + + + Move &up + Mueve a&rriba + + + + Move selected conditional format down + Mueve abajo el formato condicional seleccionado + + + + Move &down + Mueve a&bajo + + + + Foreground + Texto + + + + Text color + Color del texto + + + + Background + Fondo + + + + Background color + Color del fondo + + + + Font + Tipo de letra + + + + Size + Tamaño + + + + Bold + Negrita + + + + Italic + Cursiva + + + + Underline + Subrayado + + + + Alignment + Justificado + + + + Condition + Condición + + + + + Click to select color + Haga clic para seleccionar el color + + + + Are you sure you want to clear all the conditional formats of this field? + ¿Está seguro de que quiere borrar todos los formatos condicionales de este campo? + + + + DBBrowserDB + + + Please specify the database name under which you want to access the attached database + Por favor, especifique el nombre con el que acceder a la base de datos anexada + + + + Invalid file format + Formato de archivo inválido + + + + Do you want to save the changes made to the database file %1? + ¿Guardar los cambios hechos al archivo de base de datos «%1»? + + + + Exporting database to SQL file... + Exportando base de datos a un archivo SQL... + + + + + Cancel + Cancelar + + + + Executing SQL... + Ejecutando SQL... + + + + Action cancelled. + Acción cancelada. + + + + This database has already been attached. Its schema name is '%1'. + Esta base de datos ya ha sido anexada. Su nombre de esquema es «%1». + + + + Do you really want to close this temporary database? All data will be lost. + ¿Está seguro de que quiere cerrar esta base de datos temporal? Todos los datos se perderán. + + + + Database didn't close correctly, probably still busy + La base de datos no se ha cerrado correctamente, probablemente todavía está ocupada + + + + The database is currently busy: + La base de datos está actualmente ocupada: + + + + Do you want to abort that other operation? + ¿Desea abortar la otra operación? + + + + + No database file opened + No hay una base de datos abierta + + + + + Error in statement #%1: %2. +Aborting execution%3. + Error en la sentencia #%1: %2. +Abortando ejecución%3. + + + + + and rolling back + y deshaciendo cambios + + + + didn't receive any output from %1 + no se recibió ninguna salida de «%1» + + + + could not execute command: %1 + no se pudo ejecutar el comando: «%1» + + + + Cannot delete this object + No se puede borrar este objeto + + + + Cannot set data on this object + No se pueden poner datos en este objeto + + + + + A table with the name '%1' already exists in schema '%2'. + Una tabla con el nombre «%1» ya existe en el esquema «%2». + + + + No table with name '%1' exists in schema '%2'. + No existe una tabla con el nombre «%1» en el esquema «%2». + + + + + Cannot find column %1. + No se puede encontrar la columna %1. + + + + Creating savepoint failed. DB says: %1 + Creación del punto de guardado fallido. La base de datos dice: %1 + + + + Renaming the column failed. DB says: +%1 + Renombrado de la columna fallido. La base de datos dice: +%1 + + + + + Releasing savepoint failed. DB says: %1 + Liberación del punto de guardado fallido. La base de datos dice: %1 + + + + Creating new table failed. DB says: %1 + Creación de la nueva tabla fallida. La base de datos dice: %1 + + + + Copying data to new table failed. DB says: +%1 + Copia de datos a la nueva table fallida. La base de datos dice: +%1 + + + + Deleting old table failed. DB says: %1 + Borrado de tabla fallido. La base de datos dice: %1 + + + + Error renaming table '%1' to '%2'. +Message from database engine: +%3 + Error renombrando la tabla «%1» a «%2». +Mensaje de la base de datos: +%3 + + + + could not get list of db objects: %1 + No se pudo obtener la lista de objetos de la base de datos: %1 + + + + Restoring some of the objects associated with this table failed. This is most likely because some column names changed. Here's the SQL statement which you might want to fix and execute manually: + + + La restitución de algunos de los objetos asociados con esta tabla ha fallado. Lo más probable es que esto suceda porque los nombres de algunas columnas han cambiado. Esta es la sentencia SQL que puede que quiera corregir y ejecutar manualmente: + + + + + + could not get list of databases: %1 + no se pudo obtener lista de bases de datos: %1 + + + + Error loading extension: %1 + Error cargando la extensión: %1 + + + + could not get column information + No se pudo obtener información de la columna + + + + Error setting pragma %1 to %2: %3 + Error definiendo pragma %1 como %2: %3 + + + + File not found. + Archivo no encontrado. + + + + DbStructureModel + + + Name + Nombre + + + + Object + Objeto + + + + Type + Tipo + + + + Schema + Esquema + + + + Database + Base de datos + + + + Browsables + Navegables + + + + All + Todos + + + + Temporary + Temporal + + + + Tables (%1) + Tablas (%1) + + + + Indices (%1) + Ãndices (%1) + + + + Views (%1) + Vistas (%1) + + + + Triggers (%1) + Disparadores (%1) + + + + EditDialog + + + Edit database cell + Editar celda de la base de datos + + + + Mode: + Modo: + + + + This is the list of supported modes for the cell editor. Choose a mode for viewing or editing the data of the current cell. + Esta es la lista de modos admitidos en el editor de celdas. Elija un modo para visualizar o editar los datos de la celda actual. + + + + RTL Text + Texto RTL + + + + + Image + Imagen + + + + JSON + JSON + + + + XML + XML + + + + + Automatically adjust the editor mode to the loaded data type + Ajustar automáticamente el modo de edición al tipo de datos cargados + + + + This checkable button enables or disables the automatic switching of the editor mode. When a new cell is selected or new data is imported and the automatic switching is enabled, the mode adjusts to the detected data type. You can then change the editor mode manually. If you want to keep this manually switched mode while moving through the cells, switch the button off. + Esta casilla activa o desactiva el cambio automático del modo de edición. Cuando se selecciona una nueva celda o se importan nuevos datos y la selección automática está activada, el modo de edición se ajusta al tipo de datos detectados. El modo de edición para la celda se puede cambiar manualmente. Si prefiere mantener el modo de edición seleccionado manualmente mientras se mueve por las celdas, desmarque la casilla. + + + + Auto-switch + Auto-selección + + + + The text editor modes let you edit plain text, as well as JSON or XML data with syntax highlighting, automatic formatting and validation before saving. + +Errors are indicated with a red squiggle underline. + Los modos de edición de texto permiten editar texto plano, y también JSON o XML con resaltado de sintaxis, formato automático y validación previa a guardar. + +Los errores se indican con un subrayado ondulado en rojo. + + + + This Qt editor is used for right-to-left scripts, which are not supported by the default Text editor. The presence of right-to-left characters is detected and this editor mode is automatically selected. + Este editor Qt se usa para scripts de derecha-a-izquierda, que no están soportados por el editor de Texto por defecto. Al detectar la presencia de caracteres de derecha-a-izquierda este modo de edición se activa automáticamente. + + + + Open preview dialog for printing the data currently stored in the cell + Abrir diálogo de previsualización para imprimir los datos actualmente almacenados en la celda + + + + Auto-format: pretty print on loading, compact on saving. + Auto-formato: dar formato al cargar, compactar al guardar. + + + + When enabled, the auto-format feature formats the data on loading, breaking the text in lines and indenting it for maximum readability. On data saving, the auto-format feature compacts the data removing end of lines, and unnecessary whitespace. + Si se habilita, la opción de auto-formato da formato a los datos al cargarlos, rompiendo y sangrando las líneas de texto para una legibilidad máxima. Al guardar los datos, esta opción los compacta, eliminando fines de línea y espacio en blanco innecesario. + + + + Word Wrap + Ajuste del Texto + + + + Wrap lines on word boundaries + Ajustar las líneas en palabras completas + + + + + Open in default application or browser + Abrir en la aplicacion por defecto o navegador + + + + Open in application + Abrir en una aplicacion + + + + The value is interpreted as a file or URL and opened in the default application or web browser. + El valor es interpretado como un nombre de archivo o URL y abierto en la aplicación por defecto del sistema o el navegador de internet. + + + + Save file reference... + Guardar referencia de archivo... + + + + Save reference to file + Guardar referencia a archivo + + + + + Open in external application + Abrir en una aplicación externa + + + + Autoformat + Auto-formato + + + + &Export... + &Exportar... + + + + + &Import... + &Importar... + + + + + Import from file + Importar desde archivo + + + + + Opens a file dialog used to import any kind of data to this database cell. + Abre un diálogo para elegir el archivo para importar cualquier tipo de datos a esta celda. + + + + Export to file + Exportar a archivo + + + + Opens a file dialog used to export the contents of this database cell to a file. + Abre un diálogo para elegir el archivo al que exportar el contenido de esta celda de la base de datos. + + + + + Print... + Imprimir... + + + + Open preview dialog for printing displayed image + Abre un diálogo de previsualización para imprimir la imagen mostrada + + + + + Ctrl+P + + + + + Open preview dialog for printing displayed text + Abre un diálogo de previsualización para imprimir el texto mostrado + + + + Copy Hex and ASCII + Copiar hex. y ASCII + + + + Copy selected hexadecimal and ASCII columns to the clipboard + Copia las columnas seleccionadas en hexadecimal y ASCII al portapapeles + + + + Ctrl+Shift+C + + + + + Set as &NULL + Borrar a &NULL + + + + Apply data to cell + Aplicar los datos a la celda + + + + This button saves the changes performed in the cell editor to the database cell. + Este botón guarda los cambios realizados en el editor a la celda de la base de datos. + + + + Apply + Aplicar + + + + Text + Texto + + + + Binary + Binario + + + + Erases the contents of the cell + Borra el contenido de la celda + + + + This area displays information about the data present in this database cell + Esta zona muestra información acerca de los datos presentes en esta celda de la base de datos + + + + Type of data currently in cell + Tipo de datos actualmente en la celda + + + + Size of data currently in table + Tamaño de los datos actualmente en la tabla + + + + Choose a filename to export data + Seleccione un nombre de archivo para exportar los datos + + + + + Image data can't be viewed in this mode. + Datos de imagen no se puede visualizar en este modo. + + + + + Try switching to Image or Binary mode. + Intente cambiando al modo «Imagen» o «Binario». + + + + + Binary data can't be viewed in this mode. + Datos binarios no se puede visualizar en este modo. + + + + + Try switching to Binary mode. + Intente cambiando al modo «Binario». + + + + + Image files (%1) + Archivos de imagen (%1) + + + + Binary files (*.bin) + Archivos binarios (*.bin) + + + + Choose a file to import + Seleccione el archivo a importar + + + + %1 Image + %1 Imagen + + + + Invalid data for this mode + Datos inválidos para este modo + + + + The cell contains invalid %1 data. Reason: %2. Do you really want to apply it to the cell? + La celda contiene datos de tipo %1 inválidos. Razón: «%2». ¿Realmente desea aplicarlos a la celda? + + + + Type of data currently in cell: %1 Image + El tipo de datos en la celda es: Imagen %1 + + + + %1x%2 pixel(s) + %1×%2 píxel(s) + + + + Type of data currently in cell: NULL + El tipo de datos en la celda es: NULL + + + + Type of data currently in cell: Valid JSON + Tipo de datos actualmente en la celda: JSON válido + + + + Couldn't save file: %1. + No se pudo guardar el archivo: %1. + + + + The data has been saved to a temporary file and has been opened with the default application. You can now edit the file and, when you are ready, apply the saved new data to the cell editor or cancel any changes. + Los datos se han guardado en un archivo temporal y se ha abierto con la aplicación por defecto. Ahora puede editar ese archivo y cuado termine puede aplicar los nuevos datos guardados a la celda o cancelar los cambios. + + + + + Type of data currently in cell: Text / Numeric + Tipo de datos actualmente en la celda: Texto / Numérico + + + + + + %n character(s) + + %n carácter + %n caracteres + + + + + Type of data currently in cell: Binary + Tipo de datos actualmente en la celda: Binario + + + + + %n byte(s) + + %n byte + %n bytes + + + + + EditIndexDialog + + + &Name + &Nombre + + + + Order + Orden + + + + &Table + &Tabla + + + + Edit Index Schema + Editar índice del esquema + + + + &Unique + &Único + + + + For restricting the index to only a part of the table you can specify a WHERE clause here that selects the part of the table that should be indexed + Para restringir el índice exclusivamente a una parte de la tabla hay que especificar aquí una cláusula WHERE que seleccione la parte de la tabla que será indexada + + + + Partial inde&x clause + Cláusula para inde&xado parcial + + + + Colu&mns + Colu&mnas + + + + Table column + Columna de la tabla + + + + Type + Tipo + + + + Add a new expression column to the index. Expression columns contain SQL expression rather than column names. + Añade una nueva columna computada al índice. Las columnas computadas contienen una expresión SQL en lugar de nombres de columna. + + + + Index column + Columna de índice + + + + Deleting the old index failed: +%1 + Borrado del índice previo fallido: +%1 + + + + Creating the index failed: +%1 + Creación de índice fallida: +%1 + + + + EditTableDialog + + + Edit table definition + Editar la definición de la tabla + + + + Table + Tabla + + + + Advanced + Avanzado + + + + Make this a 'WITHOUT rowid' table. Setting this flag requires a field of type INTEGER with the primary key flag set and the auto increment flag unset. + Hacer de esta una tabla «SIN rowid». Para activar este flag es necesario un campo de tipo ENTERO con la clave primaria activada y el indicador de autoincremento desactivado. + + + + Without Rowid + Sin Rowid + + + + Fields + Campos + + + + Database sche&ma + Esque&ma de la base de datos + + + + Add + Añadir + + + + Remove + Eliminar + + + + Move to top + Mover al principio + + + + Move up + Mover hacia arriba + + + + Move down + Mover hacia abajo + + + + Move to bottom + Mover al final + + + + + Name + Nombre + + + + + Type + Tipo + + + + NN + NN + + + + Not null + No nulo + + + + PK + PK + + + + Primary key + Clave primaria + + + + AI + AI + + + + Autoincrement + Autoincremento + + + + U + U + + + + + + Unique + Único + + + + Default + Por defecto + + + + Default value + Valor por defecto + + + + + + Check + Check + + + + Check constraint + Restricción de «check» + + + + Collation + Comparación + + + + + + Foreign Key + Clave foránea + + + + Constraints + Restricciones + + + + Add constraint + Añadir restricción + + + + Remove constraint + Eliminar restricción + + + + Columns + Columnas + + + + SQL + SQL + + + + <html><head/><body><p><span style=" font-weight:600; color:#ff0000;">Warning: </span>There is something with this table definition that our parser doesn't fully understand. Modifying and saving this table might result in problems.</p></body></html> + <html><head/><body><p><span style=" font-weight:600; color:#ff0000;">Aviso: </span>algo ocurre con la definición de esta tabla que nuestro intérprete no entiende completamente. Modificar y guardar esta tabla podría traer problemas.</p></body></html> + + + + + Primary Key + Clave Primaria + + + + Add a primary key constraint + Añadir una restricción de clave primaria + + + + Add a foreign key constraint + Añadir una restricción de clave foránea + + + + Add a unique constraint + Añadir una restricción de único" + + + + Add a check constraint + Añadir una restricción de «check» + + + + Error creating table. Message from database engine: +%1 + Error creando la tabla. Mensaje de la base de datos: +%1 + + + + There already is a field with that name. Please rename it first or choose a different name for this field. + Ya hay un campo con este nombre. Por favor, renómbrelo antes o elija un nombre diferente para este campo. + + + + + There can only be one primary key for each table. Please modify the existing primary key instead. + Sólo puede existir una clave primaria en cada tabla. Por favor, modifique la clave primaria existente. + + + + This column is referenced in a foreign key in table %1 and thus its name cannot be changed. + Esta columna está referenciada en una clave foránea en la tabla %1 y por tanto no se le puede cambiar el nombre. + + + + There is at least one row with this field set to NULL. This makes it impossible to set this flag. Please change the table data first. + Hay al menos una línea con este campo NULO. Esto hace imposible activar este flag. Por favor, modifique antes los datos de la tabla. + + + + There is at least one row with a non-integer value in this field. This makes it impossible to set the AI flag. Please change the table data first. + Hay al menos una línea con un valor no entero en este campo. Esto hace imposible activar el flag AI. Por favor, modifique antes los datos de la tabla. + + + + Column '%1' has duplicate data. + + La columna «%1» tiene datos duplicados. + + + + + This makes it impossible to enable the 'Unique' flag. Please remove the duplicate data, which will allow the 'Unique' flag to then be enabled. + Como en otros textos, pasamos los términos estándar de SQL a mayúsculas para evitar traducirlos, lo que podría ser más confuso para el usuario experto y no tener beneficio para el inexperto. + Esto imposibilita la habilitación de la restricción UNIQUE. Por favor, elimine primero los datos duplicados, lo cual permitirá habilitar la restricción UNIQUE. + + + + Are you sure you want to delete the field '%1'? +All data currently stored in this field will be lost. + ¿Está seguro de que quiere borrar este campo «%1»? +Todos los datos actualmente almacenados en este campo se perderán. + + + + Please add a field which meets the following criteria before setting the without rowid flag: + - Primary key flag set + - Auto increment disabled + Por favor añada un campo que cumpla las siguientes condiciones antes de activar el indicador «sin rowid»: + - Indicador de clave primaria activado + - Indicador de autoincremento desactivado + + + + ExportDataDialog + + + Export data as CSV + Exportar datos como CSV + + + + Tab&le(s) + Tab&la(s) + + + + Colu&mn names in first line + Nombres de las &columnas en la primera línea + + + + Fie&ld separator + &Separador de campos + + + + , + , + + + + ; + ; + + + + Tab + Tab + + + + | + | + + + + + + Other + Otro + + + + &Quote character + &Entrecomillado + + + + " + " + + + + ' + ' + + + + New line characters + Caracteres de nueva línea + + + + Windows: CR+LF (\r\n) + Windows: CR+LF (\r\n) + + + + Unix: LF (\n) + Unix: LF (\n) + + + + Pretty print + Impresión formateada + + + + + Could not open output file: %1 + No se puede abrir el archivo de salida: %1 + + + + + Choose a filename to export data + Seleccione un nombre de archivo para exportar los datos + + + + Export data as JSON + Exportar datos como JSON + + + + exporting CSV + exportando CSV + + + + exporting JSON + exportando JSON + + + + Please select at least 1 table. + Por favor, seleccione al menos 1 tabla. + + + + Choose a directory + Seleccione una carpeta + + + + Export completed. + Exportación completada. + + + + ExportSqlDialog + + + Export SQL... + Exportar SQL... + + + + Tab&le(s) + Tab&la(s) + + + + Select All + Seleccionar Todo + + + + Deselect All + Deseleccionar Todo + + + + &Options + &Opciones + + + + Keep column names in INSERT INTO + Mantener el nombre de la columna en INSERT INTO + + + + Multiple rows (VALUES) per INSERT statement + Múltiples líneas (VALUES) en cada sentencia INSERT + + + + Export everything + Exportar todo + + + + Export data only + Exportar solo los datos + + + + Keep old schema (CREATE TABLE IF NOT EXISTS) + Mantener esquema previo (CREATE TABLE IF NOT EXISTS) + + + + Overwrite old schema (DROP TABLE, then CREATE TABLE) + Sobrescribir esquema previo (DROP TABLE, después CREATE TABLE) + + + + Export schema only + Exportar solo el esquema + + + + Please select at least one table. + Por favor, seleccione al menos una tabla. + + + + Choose a filename to export + Seleccione un nombre de archivo al que exportar + + + + Export completed. + Exportación completada. + + + + Export cancelled or failed. + Exportación cancelada o fallida. + + + + ExtendedScintilla + + + + Ctrl+H + + + + + Ctrl+F + + + + + + Ctrl+P + + + + + Find... + Buscar... + + + + Find and Replace... + Buscar y reemplazar... + + + + Print... + Imprimir... + + + + ExtendedTableWidget + + + Use as Exact Filter + Usar como filtro exacto + + + + Containing + Conteniendo + + + + Not containing + Que no contenga + + + + Not equal to + No igual a + + + + Greater than + Mayor que + + + + Less than + Menor que + + + + Greater or equal + Mayor o igual + + + + Less or equal + Menor o igual + + + + Between this and... + Entre esto y... + + + + Regular expression + Expresión regular + + + + Edit Conditional Formats... + Editar formatos condicionales... + + + + Set to NULL + Poner a NULL + + + + Copy + Copiar + + + + Copy with Headers + Copiar con cabeceras + + + + Copy as SQL + Copiar como SQL + + + + Paste + Pegar + + + + Print... + Imprimir... + + + + Use in Filter Expression + Usar en expresión de filtro + + + + Alt+Del + + + + + Ctrl+Shift+C + + + + + Ctrl+Alt+C + + + + + <p>Not all data has been loaded. <b>Do you want to load all data before selecting all the rows?</b><p><p>Answering <b>No</b> means that no more data will be loaded and the selection will not be performed.<br/>Answering <b>Yes</b> might take some time while the data is loaded but the selection will be complete.</p>Warning: Loading all the data might require a great amount of memory for big tables. + <p>No se han cargado todos los datos. <b>¿Quiere cargar todos los datos antes de seleccionar todas las filas?</b><p><p>Responder <b>No</b> significa que no se cargarán mas datos y la selección no se se realizará.<br/>Responder <b>Sí</b> puede tardar un tiempo mientras los datos se cargan pero la selección se realizará en su totalidad.</p>Precaución: Cargar todos los datos puede necesitar una gran cantidad de memoria para tablas grandes. + + + + Cannot set selection to NULL. Column %1 has a NOT NULL constraint. + No se puede ajustar la selección a NULL. La columna %1 tiene una restricción NOT NULL. + + + + The content of the clipboard is bigger than the range selected. +Do you want to insert it anyway? + El contenido del portapapeles es mayor que el rango seleccionado. +¿Quiere insertarlo de todos modos? + + + + FileExtensionManager + + + File Extension Manager + Gestor de extensiones de archivos + + + + &Up + &Subir + + + + &Down + &Bajar + + + + &Add + &Añadir + + + + &Remove + &Eliminar + + + + + Description + Descripción + + + + Extensions + Extensiones + + + + *.extension + *.extensión + + + + FilterLineEdit + + + Filter + Filtro + + + + These input fields allow you to perform quick filters in the currently selected table. +By default, the rows containing the input text are filtered out. +The following operators are also supported: +% Wildcard +> Greater than +< Less than +>= Equal to or greater +<= Equal to or less += Equal to: exact match +<> Unequal: exact inverse match +x~y Range: values between x and y +/regexp/ Values matching the regular expression + Estos campos de texto permiten realizar filtros rápidos sobre la tabla actualmente seleccionada. +Por defecto, las filas que contengan el texto introducido se muestran. +Los siguientes operadores también se admiten: +% Comodín +> Mayor que +< Menor que +>= Igual o mayor que +<= Igual o menor que += Igual a: correspondencia exacta +<> Distinto: correspondencia inversa exacta +x~y Rango: valores entre x e y + + + + Clear All Conditional Formats + Eliminar todos los formatos condicionales + + + + Use for Conditional Format + Usar para formato condicional + + + + Edit Conditional Formats... + Editar formatos condicionales... + + + + Set Filter Expression + Establecer expresión de filtro + + + + What's This? + ¿Qué es esto? + + + + Is NULL + Es nulo + + + + Is not NULL + No es nulo + + + + Is empty + Es vacío + + + + Is not empty + No es vacío + + + + Not containing... + No contiene... + + + + Equal to... + Igual a... + + + + Not equal to... + No igual a... + + + + Greater than... + Mayor que... + + + + Less than... + Menor que... + + + + Greater or equal... + Mayor o igual... + + + + Less or equal... + Menor o igual... + + + + In range... + En el rango... + + + + Regular expression... + Expresión regular... + + + + FindReplaceDialog + + + Find and Replace + Buscar y reemplazar + + + + Fi&nd text: + &Buscar texto: + + + + Re&place with: + &Reemplazar con: + + + + Match &exact case + Distinguir &mayús. y minús. + + + + Match &only whole words + &Solo palabras completas + + + + When enabled, the search continues from the other end when it reaches one end of the page + Si se habilita, la búsqueda continua desde el otro extremo cuando llega a un extremo de la página + + + + &Wrap around + &Dar la vuelta + + + + When set, the search goes backwards from cursor position, otherwise it goes forward + Si se marca, la búsqueda va hacia atrás desde la posición del cursor. De lo contrario va hacia adelante + + + + Search &backwards + Buscar hacia &atrás + + + + <html><head/><body><p>When checked, the pattern to find is searched only in the current selection.</p></body></html> + <html><head/><body><p>Si se marca, el patrón de búsqueda se limita a buscar sólo en la selección.</p></body></html> + + + + &Selection only + En la &selección + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + <html><head/><body><p>Si se marca, el patrón de búsqueda se interpreta como una expresión regular UNIX. Véase <a href="https://es.wikipedia.org/wiki/Expresi%C3%B3n_regular">«Expresión regular» en Wikipedia</a>.</p></body></html> + + + + Use regular e&xpressions + Usar e&xpresiones regulares + + + + Find the next occurrence from the cursor position and in the direction set by "Search backwards" + Encontrar la siguiente ocurrencia desde la posición del cursor y en la dirección definida por «Buscar hacia atrás» + + + + &Find Next + Buscar &siguiente + + + + F3 + + + + + &Replace + R&eemplazar + + + + Highlight all the occurrences of the text in the page + Resaltar todas las ocurrencias del texto en la página + + + + F&ind All + Encontrar &todo + + + + Replace all the occurrences of the text in the page + Reemplazar todas las ocurrencias del texto en la página + + + + Replace &All + Reem&plazar todo + + + + The searched text was not found + El texto buscado no fue encontrado + + + + The searched text was not found. + El texto buscado no fue encontrado. + + + + The searched text was found one time. + El texto buscado fue encontrado una vez. + + + + The searched text was found %1 times. + El texto buscado fue encontrado %1 veces. + + + + The searched text was replaced one time. + El texto buscado fue reemplazado una vez. + + + + The searched text was replaced %1 times. + El texto buscado fue reemplazado %1 veces. + + + + ForeignKeyEditor + + + &Reset + &Reiniciar + + + + Foreign key clauses (ON UPDATE, ON DELETE etc.) + Cláusulas de clave foránea (ON UPDATE, ON DELETE etc.) + + + + ImportCsvDialog + + + Import CSV file + Importar archivo CSV + + + + Table na&me + &Nombre de la tabla + + + + &Column names in first line + Nombres de &columna en la primera línea + + + + Field &separator + &Separador de campos + + + + , + , + + + + ; + ; + + + + + Tab + Tab + + + + | + | + + + + Other + Otro + + + + &Quote character + &Entrecomillado + + + + + Other (printable) + Otro (imprimible) + + + + + Other (code) + Otro (código) + + + + " + " + + + + ' + ' + + + + &Encoding + &Codificación + + + + UTF-8 + UTF-8 + + + + UTF-16 + UTF-16 + + + + ISO-8859-1 + ISO-8859-1 + + + + Trim fields? + ¿Recortar campos? + + + + Separate tables + Tablas separadas + + + + Advanced + Avanzado + + + + When importing an empty value from the CSV file into an existing table with a default value for this column, that default value is inserted. Activate this option to insert an empty value instead. + Cuando se importe un valor vacío desde el archivo CSV a una tabla existente con un valor por defecto para la columna, ese valor por defecto es insertado. Active esta opción si, por el contrario, desea insertar un valor vacío para esta columna. + + + + Ignore default &values + Ignorar &valores por defecto + + + + Activate this option to stop the import when trying to import an empty value into a NOT NULL column without a default value. + Active esta opción para para la importación cuando se intente importar un valor vacío a una columna NOT NULL sin un valor por defecto. + + + + Fail on missing values + Fallar cuando falten valores + + + + Disable data type detection + Deshabilitar detección de tipo + + + + Disable the automatic data type detection when creating a new table. + Deshabilitar la detección automática de tipo cuando se esté creando una nueva tabla. + + + + When importing into an existing table with a primary key, unique constraints or a unique index there is a chance for a conflict. This option allows you to select a strategy for that case: By default the import is aborted and rolled back but you can also choose to ignore and not import conflicting rows or to replace the existing row in the table. + Cuando se importa a una tabla existente con una clave primaria, restricciones de único o un índice de único, existe la posibilidad de que se genere un conflicto. Esta opción le permite elegir la estrategia en esos casos: Por defecto la importación se aborta y se deshacen los cambios pero también puede elegir ignorar y no importar las filas conflictivas o reemplazar las filas existentes en la tabla. + + + + Abort import + Abortar importación + + + + Ignore row + Ignorar fila + + + + Replace existing row + Reemplazar la fila existente + + + + Conflict strategy + Estrategia para conflictos + + + + + Deselect All + Deseleccionar Todo + + + + Match Similar + Emparejar Similares + + + + Select All + Seleccionar Todo + + + + There is already a table named '%1' and an import into an existing table is only possible if the number of columns match. + Ya existe una tabla con nombre «%1» y una importación a una tabla existente solo es posible si el número de columnas coincide. + + + + There is already a table named '%1'. Do you want to import the data into it? + Ya existe una tabla con nombre «%1». ¿Desea importar los datos cargándolos en ella? + + + + Creating restore point failed: %1 + Creación del punto de restauración fallido: %1 + + + + Creating the table failed: %1 + Creación de la tabla fallido: %1 + + + + importing CSV + importando CSV + + + + Importing the file '%1' took %2ms. Of this %3ms were spent in the row function. + Importar el archivo «%1» tardó %2ms. De ellos, %3ms se gastaron en la función fila. + + + + Inserting row failed: %1 + Inserción de línea fallido: %1 + + + + MainWindow + + + DB Browser for SQLite + DB Browser for SQLite + + + + toolBar1 + toolBar1 + + + + This button clears the contents of the SQL logs + Este botón limpia el contenido del historial SQL + + + + This panel lets you examine a log of all SQL commands issued by the application or by yourself + Este panel le permite examinar el histórico de todos los comandos SQL ordenados por la aplicación o por usted mismo + + + + + Project Toolbar + Barra de herramientas de proyectos + + + + Extra DB toolbar + Barra de herramientas extra + + + + + + Close the current database file + Cierra el archivo de base de datos actual + + + + This button closes the connection to the currently open database file + Este botón cierra la conexión con el archivo de base de datos actualmente abierto + + + + Ctrl+F4 + + + + + Compact &Database... + Compactar base de &datos... + + + + &About + &Acerca de + + + + This button opens a new tab for the SQL editor + Este botón abre una nueva pestaña para el editor SQL + + + + Execute all/selected SQL + Ejecuta todo el SQL (o la selección) + + + + This button executes the currently selected SQL statements. If no text is selected, all SQL statements are executed. + Este botón ejecuta las sentencias SQL actualmente seleccionadas. Si no hay ningún texto seleccionado, se ejecutan todas las sentencias. + + + + &Load Extension... + &Cargar extensión... + + + + Execute line + Ejecutar línea + + + + This button executes the SQL statement present in the current editor line + Este botón ejecuta la sentencia SQL presente en la línea actual del editor + + + + &Wiki + &Wiki + + + + F1 + + + + + Bug &Report... + &Informar de fallos... + + + + Feature Re&quest... + Solicitud de &mejoras... + + + + Web&site + &Sitio web + + + + &Donate on Patreon... + &Donar en Patreon... + + + + Open &Project... + Abrir &proyecto... + + + + &Attach Database... + Ane&xar base de datos... + + + + + Add another database file to the current database connection + Añade un archivo de base de datos adicional a la conexión actual + + + + This button lets you add another database file to the current database connection + Este botón le permite añadir otro archivo de base de datos a la conexión de base de datos actual + + + + &Set Encryption... + &Establecer cifrado... + + + + This button saves the content of the current SQL editor tab to a file + Este botón guarda el contenido de la pestaña actual del editor SQL a un archivo + + + + SQLCipher &FAQ + SQLCipher &FAQ + + + + Find + Buscar + + + + Find or replace + Buscar o reemplazar + + + + Ctrl+H + + + + + Open SQL file(s) + Abrir archivo(s) SQL + + + + This button opens files containing SQL statements and loads them in new editor tabs + Este botón abre archivos que contengan sentencias SQL y los carga en pestañas nuevas del editor + + + + This button lets you save all the settings associated to the open DB to a DB Browser for SQLite project file + Este botón le permite guardar todos los ajustes asociados a la base de datos abierta a un archivo de proyecto de «DB Browser for SQLite» + + + + This button lets you open a DB Browser for SQLite project file + Este botón le permite abrir un archivo de proyecto «DB Browser for SQLite» + + + + New In-&Memory Database + Nueva base de datos en &memoria + + + + Drag && Drop Qualified Names + Arrastrar y soltar nombres calificados + + + + + Use qualified names (e.g. "Table"."Field") when dragging the objects and dropping them into the editor + Usa nombres calificados (p.ej. "Tabla"."Campo") al arrastrar los objetos y soltarlos en el editor + + + + Drag && Drop Enquoted Names + Arrastrar y soltar nombres entrecomillados + + + + + Use escaped identifiers (e.g. "Table1") when dragging the objects and dropping them into the editor + Usa identificadores escapados (p.ej. "Tabla1") al arrastrar los objetos y soltarlos en el editor + + + + &Integrity Check + Comprobar &integridad + + + + Runs the integrity_check pragma over the opened database and returns the results in the Execute SQL tab. This pragma does an integrity check of the entire database. + Ejecuta el pragma integrity_check en la base de datos abierta y devuelve los resultados en la pestaña Ejecutar SQL. Este pragma realiza una comprobación de integridad de toda la base de datos. + + + + &Foreign-Key Check + Comprobar clave &foránea + + + + Runs the foreign_key_check pragma over the opened database and returns the results in the Execute SQL tab + Ejecuta el pragma foreign_key_check con la base de datos abierta y devuelve los resultados en la pestaña Ejecutar SQL. + + + + &Quick Integrity Check + Comprobar integridad &rápido + + + + Run a quick integrity check over the open DB + Ejecuta una comprobación de integridad rápida en la base de datos abierta + + + + Runs the quick_check pragma over the opened database and returns the results in the Execute SQL tab. This command does most of the checking of PRAGMA integrity_check but runs much faster. + Ejecuta el pragma quick_check en la base de datos abierta y devuelve los resultados en la pestaña Executar SQL. Este comando hace la mayoría de comprobaciones de PRAGMA integrity_check pero se ejecuta mucho más rápido. + + + + &Optimize + &Optimizar + + + + Attempt to optimize the database + Intenta optimizar la base de datos + + + + Runs the optimize pragma over the opened database. This pragma might perform optimizations that will improve the performance of future queries. + Ejecuta el pragma optimize en la base de datos abierta. Este pragma realiza optimizaciones que pueden mejorar el rendimiento de consultas futuras. + + + + + Print + Imprimir + + + + Print text from current SQL editor tab + Imprime el texto de la pestaña actual del editor SQL + + + + Open a dialog for printing the text in the current SQL editor tab + Abre un diálogo para imprimir el texto de la pestaña actual del editor SQL + + + + Print the structure of the opened database + Imprime la estructura de la base de datos abierta + + + + Open a dialog for printing the structure of the opened database + Abre un diálogo para imprimir la estructura de la base de datos abierta + + + + Un/comment block of SQL code + Des/comentar bloque de código SQL + + + + Un/comment block + Des/comentar bloque de código + + + + Comment or uncomment current line or selected block of code + Comenta o descomenta la línea actual o el bloque de código seleccionado + + + + Comment or uncomment the selected lines or the current line, when there is no selection. All the block is toggled according to the first line. + Comenta o descomenta las líneas seleccionadas o la línea actual cuando no hay selección. El estado de todo el bloque es intercambiado en función de la primera línea. + + + + Ctrl+/ + + + + + Stop SQL execution + Detener ejecución de SQL + + + + Stop execution + Detener ejecución + + + + Stop the currently running SQL script + Detener el script SQL que está ejecutándose + + + + &Save Project As... + &Guardar proyecto como... + + + + + + Save the project in a file selected in a dialog + Guarda el proyecto en un archivo seleccionado en una ventana de diálogo + + + + Save A&ll + Guardar &todo + + + + + + Save DB file, project file and opened SQL files + Guarda los archivos de la base de datos, el proyecto y los archivos SQL abiertos + + + + Ctrl+Shift+S + + + + + Browse Table + Navegar Tabla + + + + Shows or hides the Project toolbar. + Muestra u oculta la barra de herramientas de proyecto. + + + + Extra DB Toolbar + Barra de herramientas extra + + + + Export one or more table(s) to a JSON file + Exportar una o más tablas a un archivo JSON + + + + This is the structure of the opened database. +You can drag SQL statements from an object row and drop them into other applications or into another instance of 'DB Browser for SQLite'. + + Esta es la estructura de la base de datos abierta. +Puede arrastrar sentencias SQL desde una fila de objeto y soltarlas en otras aplicaciones o en otra instancia de «DB Browser for SQLite». + + + + + Table(&s) to JSON... + Tabla(&s) a JSON... + + + + Open Data&base Read Only... + Abrir &base de datos como solo lectura... + + + + Ctrl+Shift+O + + + + + Save results + Guardar resultados + + + + Save the results view + Guarda la vista de resultados + + + + This button lets you save the results of the last executed query + Este botón le permite guardar los resultados de la última consulta ejecutada + + + + + Find text in SQL editor + Buscar texto en el editor SQL + + + + This button opens the search bar of the editor + Este botón abre la barra de búsqueda del editor + + + + Ctrl+F + + + + + + Find or replace text in SQL editor + Buscar o reemplazar texto en el editor SQL + + + + This button opens the find/replace dialog for the current editor tab + Este botón abre el diálogo de buscar/reemplazar para la pestaña actual del editor + + + + Export to &CSV + Exportar a &CSV + + + + Save as &view + Guardar como &vista + + + + Save as view + Guardar como vista + + + + Open an existing database file in read only mode + Abre una base de datos existente en modo de solo lectura + + + + &File + &Archivo + + + + &Import + &Importar + + + + &Export + E&xportar + + + + &Edit + &Editar + + + + &View + &Ver + + + + &Help + Ay&uda + + + + &Tools + &Herramientas + + + + DB Toolbar + DB Toolbar + + + + Edit Database &Cell + Editar &celda + + + + Error Log + Registro de errores + + + + DB Sche&ma + Esque&ma + + + + This is the structure of the opened database. +You can drag multiple object names from the Name column and drop them into the SQL editor and you can adjust the properties of the dropped names using the context menu. This would help you in composing SQL statements. +You can drag SQL statements from the Schema column and drop them into the SQL editor or into other applications. + + Esta es la estructura de la base de datos abierta. +Puede arrastrar múltiples objetos de la columna Nombre, soltarlos en el editor SQL y ajustar sus propiedades usando el menú contextual. Esto le ayudará a componer sentencias SQL. +Puede arrastrar sentencias SQL desde la columna Esquema y soltarlas en el editor SQL o en otras aplicaciones. + + + + + &Remote + &Remoto + + + + + Execute SQL + This has to be equal to the tab title in all the main tabs + Ejecutar SQL + + + + + Execute current line + Ejecuta la línea actual + + + + Shift+F5 + + + + + Sa&ve Project + &Guardar proyecto + + + + User + Usuario + + + + Application + Aplicación + + + + &Clear + &Limpiar + + + + &New Database... + &Nueva base de datos... + + + + + Create a new database file + Crea un nuevo archivo de base de datos + + + + This option is used to create a new database file. + Esta opción se usa para crear un nuevo archivo de base de datos. + + + + Ctrl+N + + + + + + &Open Database... + &Abrir base de datos... + + + + + + + + Open an existing database file + Abre un archivo de base de datos + + + + + + This option is used to open an existing database file. + Esta opción se usa para abrir un archivo de base de datos. + + + + Ctrl+O + + + + + &Close Database + &Cerrar base de datos + + + + + Ctrl+W + + + + + Opens the SQLCipher FAQ in a browser window + Abre la FAQ de SQLCipher en una ventana del navegador + + + + + Revert database to last saved state + Deshace los cambios al último estado guardado + + + + This option is used to revert the current database file to its last saved state. All changes made since the last save operation are lost. + Esta opción se usa para deshacer los cambios en la base de datos actual al último estado guardado. Todos los cambios hechos desde la última vez que se guardó se perderán. + + + + + Write changes to the database file + Escribe los cambios al archivo de la base de datos + + + + This option is used to save changes to the database file. + Esta opción se usa para guardar los cambios en el archivo de la base de datos. + + + + Ctrl+S + + + + + Compact the database file, removing space wasted by deleted records + Compacta el archivo de la base de datos eliminando el espacio malgastado por los registros borrados + + + + + Compact the database file, removing space wasted by deleted records. + Compacta el archivo de la base de datos, eliminando el espacio malgastado por los registros borrados. + + + + E&xit + &Salir + + + + Ctrl+Q + + + + + Import data from an .sql dump text file into a new or existing database. + Importa datos de un archivo de texto con un volcado .sql en una base de datos nueva o existente. + + + + This option lets you import data from an .sql dump text file into a new or existing database. SQL dump files can be created on most database engines, including MySQL and PostgreSQL. + Esta opción se usa para importar datos de un archivo de texto con un volcado .sql en una base de datos nueva o existente. Los archivos de volcado SQL se pueden crear en la mayoría de los motores de base de datos, incluyendo MySQL y PostgreSQL. + + + + Open a wizard that lets you import data from a comma separated text file into a database table. + Abre un asistente que le permite importar datos desde un archivo de texto con valores separado por comas a una tabla de una base de datos. + + + + Open a wizard that lets you import data from a comma separated text file into a database table. CSV files can be created on most database and spreadsheet applications. + Abre un asistente que le permite importar datos desde un archivo de texto con valores separado por comas a una tabla de una base de datos. Los archivos CSV se pueden crear en la mayoría de las aplicaciones de bases de datos y hojas de cálculo. + + + + Export a database to a .sql dump text file. + Exporta la base de datos como un volcado .sql a un archivo de texto. + + + + This option lets you export a database to a .sql dump text file. SQL dump files contain all data necessary to recreate the database on most database engines, including MySQL and PostgreSQL. + Esta opción le permite exportar la base de datos como un volcado .sql a un archivo de texto. Los archivos de volcado SQL contienen todos los datos necesarios para recrear la base de datos en la mayoría de los motores de base de datos, incluyendo MySQL y PostgreSQL. + + + + Export a database table as a comma separated text file. + Exporta la base de datos como un archivo de texto con valores separados por comas. + + + + Export a database table as a comma separated text file, ready to be imported into other database or spreadsheet applications. + Exporta la base de datos como un archivo de texto con valores separados por comas, listo para ser importado en otra base de datos o aplicaciones de hoja de cálculo. + + + + Open the Create Table wizard, where it is possible to define the name and fields for a new table in the database + Abre el asistente para Crear una Tabla, donde se puede definir el nombre y los campos de una nueva tabla en la base de datos + + + + + Delete Table + Borrar tabla + + + + Open the Delete Table wizard, where you can select a database table to be dropped. + Abre el asistente para «Borrar tabla», donde se puede seleccionar una tabla de la base de datos para borrar. + + + + Open the Modify Table wizard, where it is possible to rename an existing table. It is also possible to add or delete fields form a table, as well as modify field names and types. + Abre el asistente «Modificar tabla», donde se puede renombrar una tabla existente de la base de datos. También se pueden añadir o borrar campos de la tabla, así como modificar los nombres de los campos y sus tipos. + + + + Open the Create Index wizard, where it is possible to define a new index on an existing database table. + Abre el asistente «Crear índice», donde se puede definir un nuevo índice de una tabla existente de la base de datos. + + + + &Preferences... + &Preferencias... + + + + + Open the preferences window. + Abrir la ventana de preferencias. + + + + &DB Toolbar + &Barra de herramientas + + + + Shows or hides the Database toolbar. + Muestra u oculta la barra de herramientas de la base de datos. + + + + Shift+F1 + + + + + &Recently opened + Archivos &recientes + + + + Open &tab + Abrir &pestaña + + + + Ctrl+T + + + + + + Database Structure + This has to be equal to the tab title in all the main tabs + Estructura + + + + + Browse Data + This has to be equal to the tab title in all the main tabs + Hoja de datos + + + + + Edit Pragmas + This has to be equal to the tab title in all the main tabs + Editar pragmas + + + + Warning: this pragma is not readable and this value has been inferred. Writing the pragma might overwrite a redefined LIKE provided by an SQLite extension. + Aviso: este pragma no es legible y este valor se ha supuesto. Escribir el pragma puede sobreescribir un LIKE redefinido que proporcione una extensión de SQLite. + + + + SQL &Log + Historial de &SQL + + + + Show S&QL submitted by + Mostrar S&QL ejecutado por + + + + &Plot + &Gráfica + + + + &Revert Changes + &Deshacer cambios + + + + &Write Changes + &Guardar cambios + + + + &Database from SQL file... + Base de datos de &archivo SQL... + + + + &Table from CSV file... + &Tabla de archivo CSV... + + + + &Database to SQL file... + &Base de datos a archivo SQL... + + + + &Table(s) as CSV file... + &Tabla(s) a archivo CSV... + + + + &Create Table... + &Crear tabla... + + + + &Delete Table... + &Borrar tabla... + + + + &Modify Table... + &Modificar tabla... + + + + Create &Index... + Crear &índice... + + + + W&hat's This? + ¿&Qué es esto? + + + + &Execute SQL + &Ejecutar SQL + + + + + + Save SQL file + Guardar archivo SQL + + + + Ctrl+E + + + + + Export as CSV file + Exportar como archivo CSV + + + + Export table as comma separated values file + Exportar tabla como archivo de valores separados por comas + + + + + Save the current session to a file + Guarda la sesión actual en un archivo + + + + + Load a working session from a file + Carga una sesión de trabajo de un archivo + + + + + Save SQL file as + Guardar archivo SQL como + + + + &Browse Table + &Mostrar datos + + + + Copy Create statement + Copiar sentencia CREATE + + + + Copy the CREATE statement of the item to the clipboard + Copia la sentencia CREATE del ítem al portapapeles + + + + Ctrl+Return + + + + + Ctrl+L + + + + + + Ctrl+P + + + + + Ctrl+D + + + + + Ctrl+I + + + + + Encrypted + Cifrado + + + + Read only + Solo lectura + + + + Database file is read only. Editing the database is disabled. + El archivo de la base de datos es de solo lectura. La edición de la base de datos está desactivada. + + + + Database encoding + Codificación de la base de datos + + + + Database is encrypted using SQLCipher + La base de datos está cifrada usando SQLCipher + + + + + Choose a database file + Seleccione un archivo de base de datos + + + + + + Choose a filename to save under + Seleccione un nombre de archivo en el que guardar + + + + Error while saving the database file. This means that not all changes to the database were saved. You need to resolve the following error first. + +%1 + Error mientras se guardaba el archivo de la base de datos. Esto significa que no todos lo cambios hechos a la base de datos se han guardado. Antes tiene que solucionar el siguiente error. +%1 + + + + Are you sure you want to undo all changes made to the database file '%1' since the last save? + ¿Está seguro de que quiere deshacer todos los cambios hechos al archivo de la base de datos «%1» desde la última vez que se guardó? + + + + Choose a file to import + Seleccione el archivo a importar + + + + &%1 %2%3 + &%1 %2%3 + + + + (read only) + (sólo lectura) + + + + Open Database or Project + Abrir base de datos o proyecto + + + + Attach Database... + Ane&xar base de datos... + + + + Import CSV file(s)... + Importar archivo(s) CSV... + + + + Select the action to apply to the dropped file(s). <br/>Note: only 'Import' will process more than one file. + + Seleccione la acción a aplicar al archivo. + Seleccione la acción a aplicar a los archivos <br/>Nota: sólo 'Importar' procesará más de un archivo. + + + + + Do you want to save the changes made to SQL tabs in the project file '%1'? + ¿Quiere guardar los cambios hechos a las pestañas SQL en el archivo de proyecto «%1»? + + + + Text files(*.sql *.txt);;All files(*) + Archivos de texto(*.sql *.txt);;Todos los archivos(*) + + + + Do you want to create a new database file to hold the imported data? +If you answer no we will attempt to import the data in the SQL file to the current database. + ¿Quiere crear un nuevo archivo de base de datos donde poner los datos importados? +Si responde no se intentarán importar los datos del archivo SQL en la base de datos actual. + + + + Do you want to save the changes made to the project file '%1'? + ¿Quiere guardar los cambios hechos al archivo de proyecto «%1»? + + + + Edit View %1 + Editar vista %1 + + + + Edit Trigger %1 + Editar disparador %1 + + + + Result: %1 + Resultado: %1 + + + + File %1 already exists. Please choose a different name. + El archivo %1 ya existe. Por favor elija un nombre diferente. + + + + Error importing data: %1 + Error importando datos: %1 + + + + Import completed. + Importación completada. + + + + Delete View + Borrar vista + + + + Modify View + Modificar vista + + + + Delete Trigger + Borrar disparador + + + + Modify Trigger + Modificar disparador + + + + Delete Index + Borrar índice + + + + Modify Index + Modificar índice + + + + Modify Table + Modificar tabla + + + + Opened '%1' in read-only mode from recent file list + Se ha abierto «%1» en modo de sólo lectura desde la lista de archivos recientes + + + + Opened '%1' from recent file list + Se ha abierto «%1» desde la lista de archivos recientes + + + + This action will open a new SQL tab with the following statements for you to edit and run: + Esta acción abrirá una nueva pestaña SQL con las siguientes sentencias para que usted las pueda modificar y ejecutar: + + + + Rename Tab + Renombrar Pestaña + + + + Duplicate Tab + Duplicar Pestaña + + + + Close Tab + Cerrar Pestaña + + + + Opening '%1'... + Abriendo «%1»... + + + + There was an error opening '%1'... + Hubo un error abriendo «%1»... + + + + Value is not a valid URL or filename: %1 + Valor no es un nombre de archivo o URL válido: %1 + + + + Do you want to save the changes made to SQL tabs in a new project file? + ¿Quiere guardar los cambios hechos a las pestañas SQL en un nuevo archivo de proyecto? + + + + Do you want to save the changes made to the SQL file %1? + ¿Quiere guardar los cambios hechos al archivo SQL %1? + + + + The statements in this tab are still executing. Closing the tab will stop the execution. This might leave the database in an inconsistent state. Are you sure you want to close the tab? + Las sentencias en esta pestaña todavía se están ejecutando. Al cerrar la pestaña detendrá la ejecución. Esto puede dejar la base de datos en un estado inconsistente. ¿Está seguro de que quiere cerrar la pestaña? + + + + Could not find resource file: %1 + No se pudo encontrar el archivo de recursos: %1 + + + + Choose a project file to open + Seleccione un archivo de proyecto para abrir + + + + This project file is using an old file format because it was created using DB Browser for SQLite version 3.10 or lower. Loading this file format is still fully supported but we advice you to convert all your project files to the new file format because support for older formats might be dropped at some point in the future. You can convert your files by simply opening and re-saving them. + Este archivo de proyecto está usando un formato antiguo porque fue creado usando una versión 3.10 o inferior de «DB Browser for SQLite». La carga de este archivo aún está completamente soportada pero le recomendamos convertir todos sus archivos de proyecto al nuevo formato porque el soporte de formatos antiguos podría ser descartado en algún momento futuro. Puede convertir sus archivos simplemente abriéndolos y guardándolos de nuevo. + + + + Could not open project file for writing. +Reason: %1 + No se pudo abrir el archivo de proyecto para escritura. +Motivo: %1 + + + + Collation needed! Proceed? + ¡Es necesaria una función de comparación! ¿Proceder? + + + + A table in this database requires a special collation function '%1' that this application can't provide without further knowledge. +If you choose to proceed, be aware bad things can happen to your database. +Create a backup! + Una tabla en esta base de datos necesita una función de comparación especial «%1» que esta aplicación no puede proporcionar sin más información. +Si decide continuar, está avisado de que la base de datos se puede dañar. +¡Cree una copia de respaldo! + + + + Setting PRAGMA values will commit your current transaction. +Are you sure? + Al definir los valores de PRAGMA se consolidará la transacción actual. +¿Está seguro? + + + + Window Layout + Disposición de la ventana + + + + Reset Window Layout + Reiniciar disposición + + + + Alt+0 + + + + + Simplify Window Layout + Simplificar disposición + + + + Shift+Alt+0 + + + + + Dock Windows at Bottom + Acoplar ventanas en la parte inferior + + + + Dock Windows at Left Side + Acoplar ventanas en la parte izquierda + + + + Dock Windows at Top + Acoplar ventanas en la parte superior + + + + The database is currenctly busy. + La base de datos está ocupada + + + + Click here to interrupt the currently running query. + Haga clic aquí para interrumpir la consulta que se está ejecutando + + + + Could not open database file. +Reason: %1 + No se pudo abrir el archivo de base de datos. +Razón: %1 + + + + In-Memory database + Base de datos en memoria + + + + You are still executing SQL statements. Closing the database now will stop their execution, possibly leaving the database in an inconsistent state. Are you sure you want to close the database? + Todavía se están ejecutando sentencias SQL. Al cerrar la base de datos se detendrá la ejecución. Esto puede dejar la base de datos en un estado inconsistente. ¿Está seguro de que quiere cerrar la base de datos? + + + + Are you sure you want to delete the table '%1'? +All data associated with the table will be lost. + ¿Está seguro de que quiere borrar la tabla «%1»? +Se perderán todos los datos asociados con la tabla. + + + + Are you sure you want to delete the view '%1'? + ¿Está seguro de que quiere borrar la vista «%1»? + + + + Are you sure you want to delete the trigger '%1'? + ¿Está seguro de que quiere borrar el disparador «%1»? + + + + Are you sure you want to delete the index '%1'? + ¿Está seguro de que quiere borrar el índice «%1»? + + + + Error: could not delete the table. + Error: no se pudo borrar la tabla. + + + + Error: could not delete the view. + Error: no se pudo borrar la vista. + + + + Error: could not delete the trigger. + Error: no se pudo borrar el disparador. + + + + Error: could not delete the index. + Error: no se pudo borrar el índice. + + + + Message from database engine: +%1 + Mensaje de la base de datos: +%1 + + + + Editing the table requires to save all pending changes now. +Are you sure you want to save the database? + Para editar la tabla es necesario guardar antes todos los cambios pendientes. +¿Está seguro de que quiere guardar la base de datos? + + + + You are already executing SQL statements. Do you want to stop them in order to execute the current statements instead? Note that this might leave the database in an inconsistent state. + Ya se están ejecutando sentencias SQL. ¿Quiere detenerlas para en su lugar ejecutar las sentencias actuales?. Esto puede dejar la base de datos en un estado inconsistente. + + + + -- EXECUTING SELECTION IN '%1' +-- + -- EJECUTANDO SELECCIÓN DE «%1» +-- + + + + -- EXECUTING LINE IN '%1' +-- + -- EJECUTANDO LÃNEA DE «%1» +-- + + + + -- EXECUTING ALL IN '%1' +-- + -- EJECUTANDO TODO «%1» +-- + + + + Setting PRAGMA values or vacuuming will commit your current transaction. +Are you sure? + Establecer valores PRAGMA o realizar una limpieza consolidará la transacción actual. +¿Está seguro? + + + + Busy (%1) + Ocupado (%1) + + + + %1 rows returned in %2ms + %1 filas devueltas en %2ms + + + + Choose text files + Elija archivos de texto + + + + Import completed. Some foreign key constraints are violated. Please fix them before saving. + Importación completada. Algunas restricciones de las claves foráneas se han infringido. Por favor arréglelas antes de guardar. + + + + Select SQL file to open + Seleccione el archivo SQL a abrir + + + + Select file name + Seleccione el nombre del archivo + + + + Select extension file + Seleccione el archivo de extensión + + + + Extension successfully loaded. + Extensiones cargadas con éxito. + + + + Error loading extension: %1 + Error cargando la extensión: %1 + + + + + Don't show again + No volver a mostrar + + + + New version available. + Hay una nueva versión disponible. + + + + A new DB Browser for SQLite version is available (%1.%2.%3).<br/><br/>Please download at <a href='%4'>%4</a>. + Hay disponible una nueva versión de «DB Browser for SQLite» (%1.%2.%3).<br/><br/>Por favor, descárguela de <a href='%4'>%4</a>. + + + + Project saved to file '%1' + Proyecto guardado en el archivo «%1» + + + + creating collation + creando comparación + + + + Set a new name for the SQL tab. Use the '&&' character to allow using the following character as a keyboard shortcut. + Establezca el nuevo nombre para la pestaña SQL. Use el carácter «&&» para permitir usar el carácter siguiente como un atajo de teclado. + + + + Please specify the view name + Por favor, especifique el nombre de la vista + + + + There is already an object with that name. Please choose a different name. + Ya hay un objeto con ese nombre. Por favor, elija un nombre diferente. + + + + View successfully created. + Vista creada con éxito. + + + + Error creating view: %1 + Error creando la vista: %1 + + + + This action will open a new SQL tab for running: + Esta acción abrirá una nueva pestaña SQL para ejecutar: + + + + Press Help for opening the corresponding SQLite reference page. + Pulse Ayuda para abrir la página correspondiente de la referencia de SQLite. + + + + DB Browser for SQLite project file (*.sqbpro) + Archivo de proyecto de «DB Browser for SQLite» (*.sqbpro) + + + + Error checking foreign keys after table modification. The changes will be reverted. + Error comprobando las claves foráneas tras la modificación de la tabla. Los cambios se desharán. + + + + This table did not pass a foreign-key check.<br/>You should run 'Tools | Foreign-Key Check' and fix the reported issues. + Esta tabla no ha pasado la comprobación de claves foráneas.<br/>Debería ejecutar 'Herramientas | Comprobar Claves foráneas' y arreglar los problemas mostrados. + + + + + At line %1: + En la línea %1: + + + + Result: %2 + Resultado: %2 + + + + Execution finished with errors. + Ejecución terminada con errores. + + + + Execution finished without errors. + Ejecución terminada sin errores. + + + + NullLineEdit + + + Set to NULL + Poner a NULL + + + + Alt+Del + + + + + PlotDock + + + Plot + Gráfica + + + + <html><head/><body><p>This pane shows the list of columns of the currently browsed table or the just executed query. You can select the columns that you want to be used as X or Y axis for the plot pane below. The table shows detected axis type that will affect the resulting plot. For the Y axis you can only select numeric columns, but for the X axis you will be able to select:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Date/Time</span>: strings with format &quot;yyyy-MM-dd hh:mm:ss&quot; or &quot;yyyy-MM-ddThh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Date</span>: strings with format &quot;yyyy-MM-dd&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Time</span>: strings with format &quot;hh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Label</span>: other string formats. Selecting this column as X axis will produce a Bars plot with the column values as labels for the bars</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Numeric</span>: integer or real values</li></ul><p>Double-clicking the Y cells you can change the used color for that graph.</p></body></html> + <html><head/><body><p>Esta tabla muestra la lista de columnas de la tabla actualmente visualizada o de la consulta recién ejecutada. Puede seleccionar las columnas que desea usar como ejes X o Y en el gráfico del panel inferior. La tabla muestra el tipo de eje detectado, el cual afectará al gráfico resultante. Para los ejes Y solo se pueden seleccionar columnas numéricas, pero para el eje X se pueden seleccionar :</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Fecha/Hora</span>: texto con formato &quot;aaaa-MM-dd hh:mm:ss&quot; o &quot;aaaa-MM-ddThh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Fecha</span>: texto con formato &quot;aaaa-MM-dd&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Time</span>: texto con formato &quot;hh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Etiqueta</span>: texto con otros formatos. Seleccionado esta columna como eje X se dibuja un gráfico de barras con los valores de la columna usados como etiquetas de las barras.</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Numérico</span>: valores reales o enteros</li></ul><p>Haciendo doble clic sobre las celdas Y se puede cambiar el color usado para la gráfica correspondiente.</p></body></html> + + + + Columns + Columnas + + + + X + X + + + + Y1 + + + + + Y2 + + + + + Axis Type + Tipo de eje + + + + Here is a plot drawn when you select the x and y values above. + +Click on points to select them in the plot and in the table. Ctrl+Click for selecting a range of points. + +Use mouse-wheel for zooming and mouse drag for changing the axis range. + +Select the axes or axes labels to drag and zoom only in that orientation. + Aquí se dibuja un gráfico cuando se seleccionan los valores de X e Y en la parte superior. + +Con un clic sobre los puntos se seleccionan en el gráfico y en la tabla. Con Ctrl+Clic se pueden seleccionar rangos de puntos. + +Use la rueda del ratón para aumentar y disminuir el gráfico y arrastre con el ratón para cambiar el rango del eje. + +Seleccione los ejes o sus etiquetas para arrastrar y aumentar/disminuir solo en esa orientación. + + + + Line type: + Tipo de línea: + + + + + None + Ninguno + + + + Line + Línea + + + + StepLeft + EscalónIzquierda + + + + StepRight + EscalónDerecha + + + + StepCenter + EscalónCentrado + + + + Impulse + Impulso + + + + Point shape: + Forma de punto: + + + + Cross + Aspa es más específico que cruz. El signo más también es una cruz (una cruz griega). + Aspa + + + + Plus + Más + + + + Circle + Circunferencia + + + + Disc + Círculo + + + + Square + Cuadrado + + + + Diamond + Diamante + + + + Star + Estrella + + + + Triangle + Triángulo + + + + TriangleInverted + TriánguloInvertido + + + + CrossSquare + AspaCuadrado + + + + PlusSquare + MásCuadrado + + + + CrossCircle + AspaCircunferencia + + + + PlusCircle + MásCircunferencia + + + + Peace + Paz + + + + <html><head/><body><p>Save current plot...</p><p>File format chosen by extension (png, jpg, pdf, bmp)</p></body></html> + <html><head/><body><p>Guarda la gráfica actual...</p><p>El formato del archivo es elegido por la extensión (png, jpg, pdf, bmp)</p></body></html> + + + + Save current plot... + Guarda la gráfica actual... + + + + + Load all data and redraw plot + Cargar todos los datos y redibujar el gráfico + + + + + + Row # + Nº de línea + + + + Copy + Copiar + + + + Print... + Imprimir... + + + + Show legend + Mostrar leyenda + + + + Stacked bars + Barras apiladas + + + + Date/Time + Fecha/hora + + + + Date + Fecha + + + + Time + Tiempo + + + + + Numeric + Numérico + + + + Label + Etiqueta + + + + Invalid + Inválido + + + + Load all data and redraw plot. +Warning: not all data has been fetched from the table yet due to the partial fetch mechanism. + Cargar todos los datos y redibujar el gráfico. +Aviso: aún no se han cargado todos los datos desde la tabla debido al mecanismo de lectura parcial. + + + + Choose an axis color + Elija un color para el eje + + + + Choose a filename to save under + Seleccione un nombre de archivo en el que guardar + + + + PNG(*.png);;JPG(*.jpg);;PDF(*.pdf);;BMP(*.bmp);;All Files(*) + PNG(*.png);;JPG(*.jpg);;PDF(*.pdf);;BMP(*.bmp);;Todos los archivos(*) + + + + There are curves in this plot and the selected line style can only be applied to graphs sorted by X. Either sort the table or query by X to remove curves or select one of the styles supported by curves: None or Line. + Existen lazos en este gráfico y el estilo de línea seleccionado solo se puede aplicar a gráficos ordenados por X. Debe ordenar la tabla o consulta por X para eliminar los lazos o seleccionar uno de los estilos soportados por los lazos: Ninguno o Línea. + + + + Loading all remaining data for this table took %1ms. + Cargar todos los datos restantes para esta tabla tardó %1ms. + + + + PreferencesDialog + + + Preferences + Preferencias + + + + &General + &General + + + + Remember last location + Recordar la última posición + + + + Always use this location + Usar siempre esta posición + + + + Remember last location for session only + Recordar la última posición solamente para esta sesión + + + + + + ... + ... + + + + Default &location + &Posición por defecto + + + + Lan&guage + &Idioma + + + + Automatic &updates + &Actualizaciones automáticas + + + + + + + + + + + + enabled + activado + + + + Show remote options + Mostrar opciones del remoto + + + + &Database + &Base de datos + + + + Database &encoding + Co&dificación de la base de datos + + + + Open databases with foreign keys enabled. + Abrir base de datos con claves foráneas activadas. + + + + &Foreign keys + Claves &foráneas + + + + Data &Browser + &Hoja de datos + + + + Remove line breaks in schema &view + Elimina los saltos de línea en la &vista del esquema + + + + Prefetch block si&ze + &Tamaño del bloque de precarga + + + + SQ&L to execute after opening database + SQ&L a ejecutar tras abrir la base de datos + + + + Default field type + Tipo de campo por defecto + + + + Font + Tipo de letra + + + + &Font + &Tipo de letra + + + + Content + Contenido + + + + Symbol limit in cell + Límite de símbolos en la celda + + + + NULL + NULL + + + + Regular + Normal + + + + Binary + Binario + + + + Background + Fondo + + + + Filters + Filtros + + + + Toolbar style + Estilo de barra de herramientas + + + + + + + + Only display the icon + Solo mostrar el icono + + + + + + + + Only display the text + Solo mostrar el texto + + + + + + + + The text appears beside the icon + El texto aparece junto al icono + + + + + + + + The text appears under the icon + El texto aparece bajo el icono + + + + + + + + Follow the style + Seguir el estilo predefinido + + + + DB file extensions + Extensiones de archivos de BB.DD. + + + + Manage + Gestionar + + + + Main Window + Ventana principal + + + + Database Structure + Estructura + + + + Browse Data + Hoja de datos + + + + Execute SQL + Ejecutar SQL + + + + Edit Database Cell + Editar celda + + + + When this value is changed, all the other color preferences are also set to matching colors. + Cuando se cambia este valor, también se ajustan con colores a juego todas las otras prefencias de color. + + + + Follow the desktop style + Usa el estilo del escritorio + + + + Dark style + Estilo oscuro + + + + Application style + Estilo de la aplicación + + + + This sets the font size for all UI elements which do not have their own font size option. + Esto establece el tamaño de tipografía para todos los elementos de la interfaz de usuario que no tienen su propia opción. + + + + Font size + Tamaño de fuente + + + + When enabled, the line breaks in the Schema column of the DB Structure tab, dock and printed output are removed. + Cuando está activado, se omiten los saltos de línea en la columna Esquema, tanto en la pestaña Estructura en pantalla, como al imprimir. + + + + Database structure font size + Tamaño de fuente de la estructura de base de datos + + + + Font si&ze + &Tamaño de fuente + + + + This is the maximum number of items allowed for some computationally expensive functionalities to be enabled: +Maximum number of rows in a table for enabling the value completion based on current values in the column. +Maximum number of indexes in a selection for calculating sum and average. +Can be set to 0 for disabling the functionalities. + Este es el máximo número ocurrencias permitidos para que algunas funcionalidades computacionalmente costosas sean activadas: +Máximo número de filas en una tabla para activar el autocompletado basado en los valores actuales en la columna. +Máximo número de índices en una selección para calcular la suma y la media. +Pueden ajustarse a 0 parar desactivar las funcionalidades. + + + + This is the maximum number of rows in a table for enabling the value completion based on current values in the column. +Can be set to 0 for disabling completion. + Este el el número máximo de filas en una tabla para activar el autocompletado basado en los valores actuales en la columna. +Se puede poner a 0 para desactivar el autocompletado. + + + + Close button on tabs + Botón de cerrar en pestañas + + + + If enabled, SQL editor tabs will have a close button. In any case, you can use the contextual menu or the keyboard shortcut to close them. + Si se habilita, las pestañas del editor SQL tendrán un botón para cerrarlas. En cualquier caso, usted siempre podrá usar el menú contextual o el atajo de teclado para cerrarlas. + + + + Proxy + Proxy + + + + Configure + Configurar + + + + Field display + Estilo de las celdas + + + + Displayed &text + &Texto presentado + + + + + + + + + Click to set this color + Haga clic para ajustar este color + + + + Text color + Color del texto + + + + Background color + Color del fondo + + + + Preview only (N/A) + Solo vista previa (N/A) + + + + Escape character + Carácter de escape + + + + Delay time (&ms) + Tiempo de retardo (&ms) + + + + Set the waiting time before a new filter value is applied. Can be set to 0 for disabling waiting. + Define el tiempo de espera antes de que se aplique un nuevo valor de filtro. Se puede poner a 0 para desactivar la espera. + + + + &SQL + &SQL + + + + Settings name + Nombre de los ajustes + + + + Context + Contexto + + + + Colour + Color + + + + Bold + Negrita + + + + Italic + Cursiva + + + + Underline + Subrayado + + + + Keyword + Palabra clave + + + + Function + Función + + + + Table + Tabla + + + + Comment + Comentario + + + + Identifier + Identificador + + + + String + Cadena + + + + Current line + Línea actual + + + + SQL &editor font size + Tamaño de letra del &editor SQL + + + + Tab size + Tamaño del tabulador + + + + &Wrap lines + Ajuste de líneas + + + + Never + Nunca + + + + At word boundaries + En los límites de palabra + + + + At character boundaries + En los límites de caracteres + + + + At whitespace boundaries + En los límites de espacios en blanco + + + + &Quotes for identifiers + &Comillas para identificadores + + + + Choose the quoting mechanism used by the application for identifiers in SQL code. + Elija el mecanismo de entrecomillado usado por la aplicación para los identificadores en el código SQL. + + + + "Double quotes" - Standard SQL (recommended) + "Dobles comillas" - SQL estándar (recomendado) + + + + `Grave accents` - Traditional MySQL quotes + `Acentos graves` - Entrecomillado tradicional de MySQL + + + + [Square brackets] - Traditional MS SQL Server quotes + [Corchetes] - Entrecomillado tradicional de MS SQL Server + + + + Keywords in &UPPER CASE + Palabras claves en &MAYÚSCULAS + + + + When set, the SQL keywords are completed in UPPER CASE letters. + Si se activa, las palabras claves de SQL se completan en letras MAYÚSCULAS. + + + + When set, the SQL code lines that caused errors during the last execution are highlighted and the results frame indicates the error in the background + Si se activa, las líneas de código SQL que causaron errores durante la última ejecución se destacan y el marco de resultados indica el error mediante el color del fondo + + + + <html><head/><body><p>SQLite provides an SQL function for loading extensions from a shared library file. Activate this if you want to use the <span style=" font-style:italic;">load_extension()</span> function from SQL code.</p><p>For security reasons, extension loading is turned off by default and must be enabled through this setting. You can always load extensions through the GUI, even though this option is disabled.</p></body></html> + <html><head/><body><p>SQLite proporciona una función SQL para cargar extensiones desde un archivo de biblioteca compartida. Active esta opción si desea usar la función <span style=" font-style:italic;">load_extension()</span> desde código SQL.</p><p>Por razónes de seguridad, la carga de extensiones está desactivada por defecto y debe ser habilitada usando esta configuración. Siempre puede cargar extensiones a través de la interfaz de usuario, incluso aunque esta opción esté deshabilitada.</p></body></html> + + + + Allow loading extensions from SQL code + Permitir cargar extensiones desde código SQL + + + + Remote + Remoto + + + + CA certificates + Certificados CA + + + + + Subject CN + Sujeto CN + + + + Common Name + Nombre común + + + + Subject O + Sujeto O + + + + Organization + Organización + + + + + Valid from + Válido desde + + + + + Valid to + Válido hasta + + + + + Serial number + Número de serie + + + + Your certificates + Sus certificados + + + + File + Archivo + + + + Subject Common Name + Nombre común del sujeto + + + + Issuer CN + Emisor CN + + + + Issuer Common Name + Nombre común del emisor + + + + Clone databases into + Clonar las bases de datos en + + + + SQL editor &font + &Tipo de letra del editor SQL + + + + Error indicators + Indicadores de error + + + + Hori&zontal tiling + Mosaico hori&zontal + + + + If enabled the SQL code editor and the result table view are shown side by side instead of one over the other. + Si se activa, el editor de código SQL y la vista de la tabla de resultados se muestran de lado a lado en lugar de una sobre la otra. + + + + Code co&mpletion + Co&mpletar código + + + + Threshold for completion and calculation on selection + Umbral para cálculos al seleccionar y completación + + + + Show images in cell + Mostrar imágenes en la celda + + + + Enable this option to show a preview of BLOBs containing image data in the cells. This can affect the performance of the data browser, however. + Active esta opción para mostrar una previsualización de los BLOBs que contengan datos de imagen en las celdas. Tenga en cuenta que esto puede afectar el desempeño del navegador de la hoja de datos. + + + + Foreground + Texto + + + + SQL &results font size + Tamaño de letra de resultados + + + + &Extensions + E&xtensiones + + + + Select extensions to load for every database: + Seleccione extensiones a cargar para cada base de datos: + + + + Add extension + Añadir extensión + + + + Remove extension + Eliminar extensión + + + + <html><head/><body><p>While supporting the REGEXP operator SQLite doesn't implement any regular expression<br/>algorithm but calls back the running application. DB Browser for SQLite implements this<br/>algorithm for you to let you use REGEXP out of the box. However, as there are multiple possible<br/>implementations of this and you might want to use another one, you're free to disable the<br/>application's implementation and load your own by using an extension. Requires restart of the application.</p></body></html> + +<html><head/><body><p> +Aunque SQLite admite el operador REGEXP, no implementa en sí ningún algoritmo de expresiones<br/> +regulares sino que llama a los de la aplicación en ejecución. «DB Browser for SQLite» implementa este<br/> +método para permitirle usar REGEXP de fábrica. Sin embargo, como hay múltiples posibles<br/> +implementaciones y puede querer usar otra, puede desactivar este método y cargar el suyo propio<br/> +usando una extensión. Necesitará reiniciar la aplicación.</p> +</body></html> + + + + Disable Regular Expression extension + Desactivar extensión de expresiones regulares + + + + + Choose a directory + Seleccione una carpeta + + + + The language will change after you restart the application. + El idioma cambiará al reiniciar la aplicación. + + + + Select extension file + Seleccione archivo de extensión + + + + Extensions(*.so *.dylib *.dll);;All files(*) + Extensiones (*.so *.dll);;Todos los archivos (*) + + + + Import certificate file + Importar archivo de certificado + + + + No certificates found in this file. + No hay certificados en este archivo. + + + + Are you sure you want do remove this certificate? All certificate data will be deleted from the application settings! + ¿Está seguro de que quiere eliminar este certificado? ¡Todos los datos del certificado se borrarán de los ajustes de la aplicación! + + + + Are you sure you want to clear all the saved settings? +All your preferences will be lost and default values will be used. + ¿Está seguro de que desea borrar todos los ajustes guardadas? +Todas sus preferencias se perderán y se usarán valores predeterminados. + + + + ProxyDialog + + + Proxy Configuration + Configuración del proxy + + + + Pro&xy Type + Tipo de pro&xy + + + + Host Na&me + No&mbre del host + + + + Port + Puerto + + + + Authentication Re&quired + Autentificación re&querida + + + + &User Name + Nombre de &usuario + + + + Password + Contraseña + + + + None + Ninguno + + + + System settings + Ajustes del sistema + + + + HTTP + HTTP + + + + Socks v5 + Socks v5 + + + + QObject + + + Error importing data + Error importando datos + + + + from record number %1 + del registro número %1 + + + + . +%1 + . +%1 + + + + Importing CSV file... + Importando archivo CSV... + + + + Cancel + Cancelar + + + + All files (*) + Todos los archivos (*) + + + + SQLite database files (*.db *.sqlite *.sqlite3 *.db3) + Archivos de BB.DD. SQLite (*.db *.sqlite *.sqlite3 *.db3) + + + + Left + Izquierda + + + + Right + Derecha + + + + Center + Centrado + + + + Justify + Justificado + + + + SQLite Database Files (*.db *.sqlite *.sqlite3 *.db3) + Archivos de BB.DD. SQLite (*.db *.sqlite *.sqlite3 *.db3) + + + + DB Browser for SQLite Project Files (*.sqbpro) + Archivos de proyecto de DB Browser for SQLite (*.sqbpro) + + + + SQL Files (*.sql) + Archivos SQL (*.sql) + + + + All Files (*) + Todos los archivos (*) + + + + Text Files (*.txt) + Archivos de texto (*.txt) + + + + Comma-Separated Values Files (*.csv) + Archivos de valores separados por comas (*.csv) + + + + Tab-Separated Values Files (*.tsv) + Archivos de valores separados por tabuladores (*.tsv) + + + + Delimiter-Separated Values Files (*.dsv) + Archivos de Valores Separados por Delimitador (*.dsv) + + + + Concordance DAT files (*.dat) + Archivos DAT de Concordance (*.dat) + + + + JSON Files (*.json *.js) + Archivos JSON (*.json *.js) + + + + XML Files (*.xml) + Archivos XML (*.xml) + + + + Binary Files (*.bin *.dat) + Archivos binarios (*.bin *.dat) + + + + SVG Files (*.svg) + Archivos SVG (*.svg) + + + + Hex Dump Files (*.dat *.bin) + Archivos de volcado Hex (*.dat *.bin) + + + + Extensions (*.so *.dylib *.dll) + Extensiones (*.so *.dylib *.dll) + + + + RemoteCommitsModel + + + Commit ID + ID versión + + + + Message + Mensaje + + + + Date + Fecha + + + + Author + Autor + + + + Size + Tamaño + + + + Authored and committed by %1 + Escrito y registrado por %1 + + + + Authored by %1, committed by %2 + Escrito por %1, registrado por %2 + + + + RemoteDatabase + + + Error opening local databases list. +%1 + Error abriendo la lista de bases de datos locales. +%1 + + + + Error creating local databases list. +%1 + Error creando la lista de bases de datos locales. +%1 + + + + RemoteDock + + + Remote + Remoto + + + + Local + Local + + + + Identity + Identidad + + + + Push currently opened database to server + Volcar la base de datos actualmente abierta al servidor + + + + DBHub.io + + + + + <html><head/><body><p>In this pane, remote databases from dbhub.io website can be added to DB Browser for SQLite. First you need an identity:</p><ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Login to the dbhub.io website (use your GitHub credentials or whatever you want)</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Click the button to &quot;Generate client certificate&quot; (that's your identity). That'll give you a certificate file (save it to your local disk).</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Go to the Remote tab in DB Browser for SQLite Preferences. Click the button to add a new certificate to DB Browser for SQLite and choose the just downloaded certificate file.</li></ol><p>Now the Remote panel shows your identity and you can add remote databases.</p></body></html> + <html><head/><body><p>En este panel, las BB.DD. remotas del sitio web dbhub.io se pueden añadir a «DB Browser for SQLite». En primer lugar necesita una identidad:</p><ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Ingrese en el sitio web dbhub.io (use sus credenciales de GitHub o las que desee)</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Haga clic en el botón de crear un certificado de cliente (esa es su identidad). Eso le proporcionará un archivo de certificado (guárdelo en su disco local).</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Vaya a la pestaña «Remoto» de las preferencias de «DB Browser for SQLite». Haga clic en el botón para añadir el nuevo certificado a la aplicación y elija el archivo de certificado recién descargado.</li></ol><p>Ahora el panel «Remoto» le mostrará su identidad y podrá añadir BB.DD. remotas.</p></body></html> + + + + Current Database + Base de datos actual + + + + Clone + Clonar + + + + User + Usuario + + + + Database + Base de datos + + + + Branch + Rama + + + + Commits + Versiones + + + + Commits for + Versiones para + + + + Delete Database + Borrar base de datos + + + + Delete the local clone of this database + Borrar el clon local de la base de datos + + + + Open in Web Browser + Abrir en el navegador web + + + + Open the web page for the current database in your browser + Abrir la página web de la base de datos actual en su navegador + + + + Clone from Link + Clonar desde enlace + + + + Use this to download a remote database for local editing using a URL as provided on the web page of the database. + Use esto para descargar una base de datos remota y editarla localmente usando una URL provista por la página web de la base de datos. + + + + Refresh + Refrescar + + + + Reload all data and update the views + Recargar todos los datos y actualizar las vistas + + + + F5 + + + + + Clone Database + Clonar base de datos + + + + Open Database + Abrir base de datos + + + + Open the local copy of this database + Abrir la copia local de esta base de datos + + + + Check out Commit + Obtener versión + + + + Download and open this specific commit + Descargar y abrir esta versión específica + + + + Check out Latest Commit + Obtener la última versión + + + + Check out the latest commit of the current branch + Obtener la última versión de la rama actual + + + + Save Revision to File + Guardar versión en un archivo + + + + Saves the selected revision of the database to another file + Guarda la versión seleccionada de la base de datos a otro archivo + + + + Upload Database + Cargar base de datos + + + + Upload this database as a new commit + Cargar en el servidor esta base de datos como una nueva versión + + + + <html><head/><body><p>You are currently using a built-in, read-only identity. For uploading your database, you need to configure and use your DBHub.io account.</p><p>No DBHub.io account yet? <a href="https://dbhub.io/"><span style=" text-decoration: underline; color:#007af4;">Create one now</span></a> and import your certificate <a href="#preferences"><span style=" text-decoration: underline; color:#007af4;">here</span></a> to share your databases.</p><p>For online help visit <a href="https://dbhub.io/about"><span style=" text-decoration: underline; color:#007af4;">here</span></a>.</p></body></html> + <html><head/><body><p>Está usando una identidad integrada de sólo lectura. Para subir su base de datos necesita configurar y usar su cuenta DBHub.io.</p><p>¿Todavía no tiene una cuenta en DBHub.io? <a href="https://dbhub.io/"><span style=" text-decoration: underline; color:#007af4;">Cree una ahora</span></a> e importe su certificado <a href="#preferences"><span style=" text-decoration: underline; color:#007af4;">aquí</span></a> para compartir sus bases de datos.</p><p>Tiene ayuda en línea <a href="https://dbhub.io/about"><span style=" text-decoration: underline; color:#007af4;">aquí</span></a>.</p></body></html> + + + + Back + Retroceder + + + + Select an identity to connect + Seleccione una identidad para conectar + + + + Public + Pública + + + + This downloads a database from a remote server for local editing. +Please enter the URL to clone from. You can generate this URL by +clicking the 'Clone Database in DB4S' button on the web page +of the database. + Esto descarga una base de datos desde un servidor remoto para edición local. +Por favor, introduzca la URL desde la que clonar. Puede obtener esta URL +haciendo clic en el botón «Clonar base de datos en DB4S» de la página web +de la base de datos. + + + + Invalid URL: The host name does not match the host name of the current identity. + URL inválida: El nombre de 'host' no encaja con el de la identidad actual. + + + + Invalid URL: No branch name specified. + URL inválida: No se ha especificado el nombre de rama. + + + + Invalid URL: No commit ID specified. + URL inválida: No se ha especificado el ID de versión. + + + + You have modified the local clone of the database. Fetching this commit overrides these local changes. +Are you sure you want to proceed? + Ha realizado cambios en el clon local de la base de datos. Al obtener esta versión sobreescribiría los cambios locales. +¿Está seguro de querer proceder? + + + + The database has unsaved changes. Are you sure you want to push it before saving? + La base de datos tiene cambios sin guardar. ¿Está seguro de enviarlos sin guardar? + + + + The database you are trying to delete is currently opened. Please close it before deleting. + La base de datos que pretende borrar está actualmente abierta. Por favor, ciérrela antes de borrarla. + + + + This deletes the local version of this database with all the changes you have not committed yet. Are you sure you want to delete this database? + Esto borra la versión local de esta base de datos con todos los cambios que aún no ha registrado. ¿Está seguro de querer borrarla? + + + + RemoteLocalFilesModel + + + Name + Nombre + + + + Branch + Rama + + + + Last modified + Última modificación + + + + Size + Tamaño + + + + Commit + Versión + + + + File + Archivo + + + + RemoteModel + + + Name + Nombre + + + + Last modified + Última modificación + + + + Size + Tamaño + + + + Commit + Versión + + + + Size: + Tamaño: + + + + Last Modified: + Última modificación: + + + + Licence: + Licencia: + + + + Default Branch: + Rama por defecto: + + + + RemoteNetwork + + + Choose a location to save the file + Seleccione una localización para guardar el archivo + + + + Error opening remote file at %1. +%2 + Error abriendo el archivo remoto en %1. +%2 + + + + Error: Invalid client certificate specified. + Error: El certificado del cliente es inválido. + + + + Please enter the passphrase for this client certificate in order to authenticate. + Por favor, introduzca la frase de contraseña de este certificado de cliente para autenticarse. + + + + Cancel + Cancelar + + + + Uploading remote database to +%1 + Subiendo base de datos remota a +%1 + + + + Downloading remote database from +%1 + Descargando base de datos remota desde +%1 + + + + + Error: The network is not accessible. + Error: La red no está accesible. + + + + Error: Cannot open the file for sending. + Error: No se puede abrir el archivo para enviar. + + + + RemotePushDialog + + + Push database + Remitir base de datos + + + + Database na&me to push to + No&mbre de la base de datos de destino + + + + Commit message + Mensaje de versión + + + + Database licence + Licencia de la base de datos + + + + Public + Pública + + + + Branch + Rama + + + + Force push + Forzar remisión + + + + Username + Nombre de usuario + + + + Database will be public. Everyone has read access to it. + La base de datos será pública. Todo el mundo podrá leerla. + + + + Database will be private. Only you have access to it. + La base de datos será privada. Sólo usted tendrá acceso. + + + + Use with care. This can cause remote commits to be deleted. + Usar con cuidado. Esto puede provocar borrados de versiones remotas. + + + + RunSql + + + Execution aborted by user + Ejecución abortada por el usuario + + + + , %1 rows affected + , %1 filas afectadas + + + + query executed successfully. Took %1ms%2 + consulta ejecutada con éxito. Tardó %1ms%2 + + + + executing query + ejecutando consulta + + + + SelectItemsPopup + + + A&vailable + &Disponible + + + + Sele&cted + &Seleccionado + + + + SqlExecutionArea + + + Form + Formulario + + + + Find previous match [Shift+F3] + Buscar la siguiente ocurrencia [Shift+F3] + + + + Find previous match with wrapping + Buscar la siguiente ocurrencia + + + + Shift+F3 + + + + + The found pattern must be a whole word + El patrón de búsqueda debe ser una palabra completa + + + + Whole Words + Palabras completas + + + + Text pattern to find considering the checks in this frame + El patrón de texto buscado considerando las opciones de este marco + + + + Find in editor + Buscar en el editor + + + + The found pattern must match in letter case + El patrón de búsqueda debe coincidir en mayúsculas y minúsculas + + + + Case Sensitive + Distinguir mayús./minús. + + + + Find next match [Enter, F3] + Buscar la siguiente ocurrencia [Enter, F3] + + + + Find next match with wrapping + Encontrar la siguiente ocurrencia volviendo al principio si es necesario + + + + F3 + + + + + Interpret search pattern as a regular expression + Interpretar el patrón de búsqueda como una expresión regular + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + <html><head/><body><p>Si se activa, el patrón de búsqueda se interpreta como una expresión regular UNIX. Véase <a href="https://es.wikipedia.org/wiki/Expresi%C3%B3n_regular">«Expresión regular» en Wikipedia</a>.</p></body></html> + + + + Regular Expression + Expresión regular + + + + + Close Find Bar + Cerrar la barra de búsqueda + + + + <html><head/><body><p>Results of the last executed statements.</p><p>You may want to collapse this panel and use the <span style=" font-style:italic;">SQL Log</span> dock with <span style=" font-style:italic;">User</span> selection instead.</p></body></html> + <html><head/><body><p>Resultados de las útimas sentencias ejecutadas.</p><p>Puede que prefiera colapsar este panel y en su lugar usar el <span style=" font-style:italic;">Registro SQL</span> con selección de <span style=" font-style:italic;">Usuario</span>.</p></body></html> + + + + Results of the last executed statements + Resultados de las últimas sentencias ejecutadas + + + + This field shows the results and status codes of the last executed statements. + Este campo muestra los resultados y códigos de estado de las últimas sentencias ejecutadas. + + + + Couldn't read file: %1. + No se pudo leer el archivo: %1. + + + + + Couldn't save file: %1. + No se pudo guardar el archivo: %1. + + + + Your changes will be lost when reloading it! + ¡Los cambios se perderán al recargarlo! + + + + The file "%1" was modified by another program. Do you want to reload it?%2 + El archivo "%1" ha sido modificado por otro programa. ¿Quiere recargarlo?%2 + + + + SqlTextEdit + + + Ctrl+/ + + + + + SqlUiLexer + + + (X) The abs(X) function returns the absolute value of the numeric argument X. + (X) La función abs(X) devuelve el valor absoluto del argumento numérico X. + + + + () The changes() function returns the number of database rows that were changed or inserted or deleted by the most recently completed INSERT, DELETE, or UPDATE statement. + () La función changes() devuelve el número de líneas de la base de datos que se modificaron, insertaron o borraron por la consulta INSERT, DELETE, o UPDATE más reciente. + + + + (X1,X2,...) The char(X1,X2,...,XN) function returns a string composed of characters having the unicode code point values of integers X1 through XN, respectively. + (X1,X2,...) La función char(X1,X2,...,XN) devuelve una cadena compuesta por caracteres que tienen el valor numérico del código de punto unicode los enteros X1 hasta XN, respectivamente. + + + + (X,Y,...) The coalesce() function returns a copy of its first non-NULL argument, or NULL if all arguments are NULL + (X,Y,...) La función coalesce() devuelve una copia de su primer argumento no nulo, o NULL si todos los argumentos son NULL + + + + (X,Y) The glob(X,Y) function is equivalent to the expression "Y GLOB X". + (X,Y) La función glob(X,Y) es equivalente a la expresión "Y GLOB X". + + + + (X,Y) The ifnull() function returns a copy of its first non-NULL argument, or NULL if both arguments are NULL. + (X,Y) La función ifnull() devuelve una copia de su primer argumento no nulo, o NULL si ambos argumentos son NULL. + + + + (X,Y) The instr(X,Y) function finds the first occurrence of string Y within string X and returns the number of prior characters plus 1, or 0 if Y is nowhere found within X. + (X,Y) La función instr(X,Y) busca la primera coincidencia de la cadena Y en la cadena X y devuelve el número de caracteres precedentes más 1, ó 0 si Y no se encuentra en X. + + + + (X) The hex() function interprets its argument as a BLOB and returns a string which is the upper-case hexadecimal rendering of the content of that blob. + (X) La función hex() interpreta su argumento como un BLOB y devuelve una cadena que es el equivalente codificado en hexadecimal en mayúsculas del contenido del BLOB. + + + + () The last_insert_rowid() function returns the ROWID of the last row insert from the database connection which invoked the function. + () La función last_insert_rowid() devuelve el ROWID del la última línea insertada desde la conexión de la base de datos que invocó la función. + + + + (X) For a string value X, the length(X) function returns the number of characters (not bytes) in X prior to the first NUL character. + (X) La función length(X) devuelve el número de caracteres (no bytes) en X anteriores al primer carácter NUL. + + + + (X,Y) The like() function is used to implement the "Y LIKE X" expression. + X,Y) La función like() se usa para implementar la expresión "Y LIKE X". + + + + (X,Y,Z) The like() function is used to implement the "Y LIKE X ESCAPE Z" expression. + (X,Y,Z) La función like() se usa para implementar la expresión "Y LIKE X ESCAPE Z". + + + + (X) The load_extension(X) function loads SQLite extensions out of the shared library file named X. +Use of this function must be authorized from Preferences. + (X) La función load_extension(X) carga extensiones SQLite del archivo de la biblioteca compartida llamada X usando el punto de entrada Y. +El uso de esta función tiene que ser autorizado desde las Preferencias. + + + + (X,Y) The load_extension(X) function loads SQLite extensions out of the shared library file named X using the entry point Y. +Use of this function must be authorized from Preferences. + (X,Y) La función load_extension(X,Y) carga extensiones SQLite del archivo de la biblioteca compartida llamado X usando el punto de entrada Y. +El uso de esta función tiene que ser autorizado desde las Preferencias. + + + + (X) The lower(X) function returns a copy of string X with all ASCII characters converted to lower case. + (X) La función lower(X) devuelve una copia de la cadena X con todos los caracteres ASCII convertidos a minúsculas. + + + + (X) ltrim(X) removes spaces from the left side of X. + (X) La función ltrim(X) quita los espacios a la izquierda de X. + + + + (X,Y) The ltrim(X,Y) function returns a string formed by removing any and all characters that appear in Y from the left side of X. + (X,Y) La función ltrim(X,Y) devuelve una cadena formada quitando todos los caracteres que aparecen en Y de la izquierda de X. + + + + (X,Y,...) The multi-argument max() function returns the argument with the maximum value, or return NULL if any argument is NULL. + (X,Y,...) La función multi-argumento max() devuelve el argumento con el valor máximo, o NULL si cualquier argumento es NULL. + + + + (X,Y,...) The multi-argument min() function returns the argument with the minimum value. + (X,Y,...) La función multi-argumento max() devuelve el argumento con el valor mínimo. + + + + (X,Y) The nullif(X,Y) function returns its first argument if the arguments are different and NULL if the arguments are the same. + (X,Y) La función nullif(X,Y) devuelve su primer argumento si los argumentos son diferentes y NULL si los argumentos son el mismo. + + + + (FORMAT,...) The printf(FORMAT,...) SQL function works like the sqlite3_mprintf() C-language function and the printf() function from the standard C library. + (FORMAT,...) La función SQL printf(FORMAT,...) funciona como la función de lenguaje C sqlite3_mprintf() y la función printf() de la biblioteca C estándar. + + + + (X) The quote(X) function returns the text of an SQL literal which is the value of its argument suitable for inclusion into an SQL statement. + (X) La función quote(X) devuelve el texto de un literal SQL, que es el valor de su argumento, apropiado para la inclusión en una sentencia SQL. + + + + () The random() function returns a pseudo-random integer between -9223372036854775808 and +9223372036854775807. + () La función random() devuelve un entero pseudo-aleatorio entre -9223372036854775808 y +9223372036854775807. + + + + (N) The randomblob(N) function return an N-byte blob containing pseudo-random bytes. + (N) La función randomblob(N) devuelve un BLOB de N bytes que contiene bytes pseudo-aleatorios. + + + + (X,Y,Z) The replace(X,Y,Z) function returns a string formed by substituting string Z for every occurrence of string Y in string X. + (X,Y,Z) La función replace(X,Y,Z) devuelve una cadena formada substituyendo en la cadena Z cada coincidencia con la subcadena Y por la subcadena X. + + + + (X) The round(X) function returns a floating-point value X rounded to zero digits to the right of the decimal point. + (X) La función round(X) devuelve un valor en coma flotante X redondeado a cero dígitos a la derecha de la coma decimal. + + + + (X,Y) The round(X,Y) function returns a floating-point value X rounded to Y digits to the right of the decimal point. + (X,Y) La función round(X,Y) devuelve un valor en coma flotante X redondeado a Y dígitos a la derecha de la coma decimal. + + + + (X) rtrim(X) removes spaces from the right side of X. + (X) La función rtrim(X) quita los espacios a la derecha de X. + + + + (X,Y) The rtrim(X,Y) function returns a string formed by removing any and all characters that appear in Y from the right side of X. + (X,Y) La función rtrim(X,Y) devuelve una cadena formada quitando todos los caracteres que aparecen en Y de la derecha de X. + + + + (X) The soundex(X) function returns a string that is the soundex encoding of the string X. + (X) La función soundex(X) devuelve una cadena que es la codificación soundex de la cadena X. + + + + (X,Y) substr(X,Y) returns all characters through the end of the string X beginning with the Y-th. + (X,Y) La función substr(X,Y) devuelve una subcadena con todos los caracteres de la cadena X desde el Y-ésimo hasta el último. + + + + (X,Y,Z) The substr(X,Y,Z) function returns a substring of input string X that begins with the Y-th character and which is Z characters long. + (X,Y) La función substr(X,Y) devuelve una subcadena de la cadena X desde el Y-ésimo y que es Z caracteres de largo. + + + + () The total_changes() function returns the number of row changes caused by INSERT, UPDATE or DELETE statements since the current database connection was opened. + () La función total_changes() devuelve el número de cambios en las líneas causadas por sentencias INSERT, UPDATE o DELETE desde que la conexión con la base de datos actual se abrió. + + + + (X) trim(X) removes spaces from both ends of X. + (X) La función trim(X) quita los espacios de ambos lados de X. + + + + (X,Y) The trim(X,Y) function returns a string formed by removing any and all characters that appear in Y from both ends of X. + (X,Y) La función trim(X,Y) devuelve una cadena formada quitando todos los caracteres que aparecen en Y de ambos lados de X. + + + + (X) The typeof(X) function returns a string that indicates the datatype of the expression X. + (X) La función typeof(X) devuelve una cadena que indica el tipo de datos de la expresión X. + + + + (X) The unicode(X) function returns the numeric unicode code point corresponding to the first character of the string X. + (X) La función unicode(X) devuelve el valor numérico del código de punto unicode correspondiente al primer carácter de la cadena X. + + + + (X) The upper(X) function returns a copy of input string X in which all lower-case ASCII characters are converted to their upper-case equivalent. + (X) La función upper(X) devuelve una copia de la cadena X con todos los caracteres ASCII convertidos a mayúsculas. + + + + (N) The zeroblob(N) function returns a BLOB consisting of N bytes of 0x00. + (N) La función zeroblob(N) devuelve un BLOB consistente en N bytes de 0x00. + + + + + + + (timestring,modifier,modifier,...) + (timestring,modificador,modificador,...) + + + + (format,timestring,modifier,modifier,...) + (formato,timestring,modificador,modificador,...) + + + + (X) The avg() function returns the average value of all non-NULL X within a group. + (X) La función avg() devuelve el valor medio de todos los valores no nulos del grupo X. + + + + (X) The count(X) function returns a count of the number of times that X is not NULL in a group. + (X) La función count(X) devuelve el conteo del número de veces que X no es nulo en un grupo. + + + + (X) The group_concat() function returns a string which is the concatenation of all non-NULL values of X. + (X) La función group_concat() devuelve una cadena que es la concatenación de todos los valores no nulos X. + + + + (X,Y) The group_concat() function returns a string which is the concatenation of all non-NULL values of X. If parameter Y is present then it is used as the separator between instances of X. + (X,Y) La función group_concat() devuelve una cadena que es la concatenación de todos los valores no nulos X, usando el parámetro Y como separador entre las instancias de X. + + + + (X) The max() aggregate function returns the maximum value of all values in the group. + (X) La función agregada max() devuelve el máximo valor de entre todos los valores en el grupo. + + + + (X) The min() aggregate function returns the minimum non-NULL value of all values in the group. + (X) La función agregada min() devuelve el mínimo valor no NULO de entre todos los valores en el grupo. + + + + + (X) The sum() and total() aggregate functions return sum of all non-NULL values in the group. + (X) Las funciones agregadas sum() y total() devuelven la suma de todos los valores no NULOS en el grupo. + + + + () The number of the row within the current partition. Rows are numbered starting from 1 in the order defined by the ORDER BY clause in the window definition, or in arbitrary order otherwise. + () El número de fila dentro de la partición actual. Las filas se numeran empezando por 1 en el orden definido por la cláusula ORDER BY en la ventana de definición, o sino en un orden arbitrario. + + + + () The row_number() of the first peer in each group - the rank of the current row with gaps. If there is no ORDER BY clause, then all rows are considered peers and this function always returns 1. + () El row_number() del primer par (igual) en cada grupo - el rango de la fila actual con huecos. Si no hay una cláusula ORDER BY, entonces todas las filas son consideradas pares y esta función siempre devuelve 1. + + + + () The number of the current row's peer group within its partition - the rank of the current row without gaps. Partitions are numbered starting from 1 in the order defined by the ORDER BY clause in the window definition. If there is no ORDER BY clause, then all rows are considered peers and this function always returns 1. + () El número del grupo de pares de la fila actual dentro de su partición - el rango de la fila actual sin huecos. Las particiones se numeran empezando por 1 en el orden definido por la cláusula ORDER BY en la ventana de definición. Si no hay una cláusula ORDER BY, entonces todas las filas son consideradas pares y esta función siempre devuelve 1. + + + + () Despite the name, this function always returns a value between 0.0 and 1.0 equal to (rank - 1)/(partition-rows - 1), where rank is the value returned by built-in window function rank() and partition-rows is the total number of rows in the partition. If the partition contains only one row, this function returns 0.0. + () A pesar del nombre, esta función siempre devuelve un valor entre 0.0 y 1.0 igual a (rank - 1)/(partition-rows - 1), donde rank es el valor devuelto por la función de ventana incorporada rank() y partition-rows es el número total de filas en la partición. Si la partición contiene sólo una fila, esta función devuelve 0.0. + + + + () The cumulative distribution. Calculated as row-number/partition-rows, where row-number is the value returned by row_number() for the last peer in the group and partition-rows the number of rows in the partition. + () La distribución acumulada. Calculada como row-number/partition-rows, donde row-number es el valor devuelto por row_number() para el último par (igual) en el grupo y partition-rows el número de filas en la partición. + + + + (N) Argument N is handled as an integer. This function divides the partition into N groups as evenly as possible and assigns an integer between 1 and N to each group, in the order defined by the ORDER BY clause, or in arbitrary order otherwise. If necessary, larger groups occur first. This function returns the integer value assigned to the group that the current row is a part of. + (N) El argumento N es tratado como un entero. Esta función divide la partición en N grupos tan equitativamente como sea posible y asigna un entero entre 1 y N a cada grupo, en el orden definido por la cláusula ORDER BY, o sino en un orden arbitrario. Si es necesario, los grupos mayores aparecen primero. Esta función devuelve un valor entero asignado al grupo del que la fila actual es parte. + + + + (expr) Returns the result of evaluating expression expr against the previous row in the partition. Or, if there is no previous row (because the current row is the first), NULL. + (expr) Devuelve el resultado de evaluar la expresión expr con la fila anterior en la partición. Si no hay fila anterior (porque la fila actual es la primera) devuelve NULL. + + + + (expr,offset) If the offset argument is provided, then it must be a non-negative integer. In this case the value returned is the result of evaluating expr against the row offset rows before the current row within the partition. If offset is 0, then expr is evaluated against the current row. If there is no row offset rows before the current row, NULL is returned. + (expr,offset) Si se proporciona un offset, éste debe ser un entero no negativo. En este caso el valor devuelto es el resultado de evaluar expr con la fila offset veces anterior a la fila actual dentro de la partición. Si offset es 0, entonces expr se evalua con la fila actual. Si no hay fila offset veces anterior devuelve NULL. + + + + + (expr,offset,default) If default is also provided, then it is returned instead of NULL if the row identified by offset does not exist. + (expr,offset,default) Si también se proporciona un default, entonces éste es devuelto en lugar de NULL si no existe la fila identificada por offet. + + + + (expr) Returns the result of evaluating expression expr against the next row in the partition. Or, if there is no next row (because the current row is the last), NULL. + (expr) Devuelve el resultado de evaluar la expresión expr con la siguiente fila en la partición. Si no hay fila siguiente (porque la fila actual es la última) devuelve NULL. + + + + (expr,offset) If the offset argument is provided, then it must be a non-negative integer. In this case the value returned is the result of evaluating expr against the row offset rows after the current row within the partition. If offset is 0, then expr is evaluated against the current row. If there is no row offset rows after the current row, NULL is returned. + (expr,offset) Si se proporciona un offset, éste debe ser un entero no negativo. En este caso el valor devuelto es el resultado de evaluar expr con la fila offset veces posterior a la fila actual dentro de la partición. Si offset es 0, entonces expr se evalua con la fila actual. Si no hay fila offset veces siguiente devuelve NULL. + + + + (expr) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the first row in the window frame for each row. + (expr) Esta función de ventana incorporada calcula el marco de la ventana para cada fila de la misma forma que una función agregada de ventana. Devuelve el valor de expr evaluada con la primera fila en el marco de la ventana para cada fila. + + + + (expr) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the last row in the window frame for each row. + (expr) Esta función de ventana incorporada calcula el marco de la ventana para cada fila de la misma forma que una función agregada de ventana. Devuelve el valor de expr evaluada con la última fila en el marco de la ventana para cada fila. + + + + (expr,N) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the row N of the window frame. Rows are numbered within the window frame starting from 1 in the order defined by the ORDER BY clause if one is present, or in arbitrary order otherwise. If there is no Nth row in the partition, then NULL is returned. + (expr,N) Esta función de ventana incorporada calcula el marco de la ventana para cada fila de la misma forma que una función agregada de ventana. Devuelve el valor de expr evaluada con la fila N del marco de la ventana. Las columnas se numeran dentro del marco de la ventana empezando por 1 en el orden definico por la cláusula ORDER BY, o sino en orden arbitrario. Si no hay fila N-ava en la partición, entonces devuelve NULL. + + + + SqliteTableModel + + + reading rows + leyendo filas + + + + loading... + cargando... + + + + References %1(%2) +Hold %3Shift and click to jump there + Referencia %1(%2) +Mantenga pulsado %3Mayús. y haga clic para ir ahí + + + + Error changing data: +%1 + Error modificando datos: +%1 + + + + retrieving list of columns + obteniendo lista de columnas + + + + Fetching data... + Obteniendo datos... + + + + + Cancel + Cancelar + + + + TableBrowser + + + Browse Data + Hoja de datos + + + + &Table: + &Tabla: + + + + Select a table to browse data + Seleccione una tabla para ver sus datos + + + + Use this list to select a table to be displayed in the database view + Use esta lista para seleccionar la tabla a mostrar en la vista de la base de datos + + + + This is the database table view. You can do the following actions: + - Start writing for editing inline the value. + - Double-click any record to edit its contents in the cell editor window. + - Alt+Del for deleting the cell content to NULL. + - Ctrl+" for duplicating the current record. + - Ctrl+' for copying the value from the cell above. + - Standard selection and copy/paste operations. + Este es el visor de la tabla de la base de datos. Puede realizar lo siguiente: + - Escribir y editar valores. + - Doble-clic en cualquier registro para editar su contenido en la ventana del editor de celdas. + - Alt+Supr para borrar el contenido de la celda a NULL. + - Ctrl+" para duplicar el registro actual. + - Ctrl+' para copiar el valor de la celda de arriba. + - Las operaciones de copiar y pegar usuales. + + + + Text pattern to find considering the checks in this frame + El patrón de texto a buscar según las opciones seleccionadas en este marco + + + + Find in table + Buscar en la tabla + + + + Find previous match [Shift+F3] + Buscar la anterior ocurrencia [Mayús.+F3] + + + + Find previous match with wrapping + Buscar la anterior ocurrencia volviendo al final si es necesario + + + + Shift+F3 + + + + + Find next match [Enter, F3] + Buscar la siguiente ocurrencia [Intro, F3] + + + + Find next match with wrapping + Buscar la siguiente ocurrencia volviendo al principio si es necesario + + + + F3 + + + + + The found pattern must match in letter case + El patrón de búsqueda tiene que coincidir en mayúsculas y minúsculas + + + + Case Sensitive + Distinguir mayús./minús. + + + + The found pattern must be a whole word + El patrón de búsqueda tiene que ser una palabra completa + + + + Whole Cell + Toda la celda + + + + Interpret search pattern as a regular expression + Interpretar el patrón de búsqueda como una expresión regular + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + <html><head/><body><p>Si se marca, el patrón de búsqueda se interpreta como una expresión regular UNIX. Véase <a href="https://es.wikipedia.org/wiki/Expresi%C3%B3n_regular">«Expresión regular» en Wikipedia</a>.</p></body></html> + + + + Regular Expression + Expresión regular + + + + + Close Find Bar + Cerrar la barra de búsqueda + + + + Text to replace with + Texto con el que reemplazar + + + + Replace with + Reemplazar con + + + + Replace next match + Reemplazar la siguiente coincidencia + + + + + Replace + Reemplazar + + + + Replace all matches + Reemplazar todas las coincidencias + + + + Replace all + Reemplazar todo + + + + <html><head/><body><p>Scroll to the beginning</p></body></html> + <html><head/><body><p>Desplazarse hasta el principio</p></body></html> + + + + <html><head/><body><p>Clicking this button navigates to the beginning in the table view above.</p></body></html> + <html><head/><body><p>Pulsando este botón se mueve hasta el principio en la vista de tabla de arriba.</p></body></html> + + + + |< + |< + + + + Scroll one page upwards + Retroceder una página + + + + <html><head/><body><p>Clicking this button navigates one page of records upwards in the table view above.</p></body></html> + <html><head/><body><p>Pulsando este botón se retrocede una página de registros en la vista de tabla de arriba.</p></body></html> + + + + < + < + + + + 0 - 0 of 0 + 0 - 0 de 0 + + + + Scroll one page downwards + Avanzar una página + + + + <html><head/><body><p>Clicking this button navigates one page of records downwards in the table view above.</p></body></html> + <html><head/><body><p>Pulsando este botón se avanza una página de registros en la vista de tabla de arriba.</p></body></html> + + + + > + > + + + + Scroll to the end + Desplazarse hasta el final + + + + <html><head/><body><p>Clicking this button navigates up to the end in the table view above.</p></body></html> + <html><head/><body><p>Pulsando este botón se mueve al final de la vista de tabla de arriba.</p></body></html> + + + + >| + >| + + + + <html><head/><body><p>Click here to jump to the specified record</p></body></html> + <html><head/><body><p>Pulse aquí para saltar al registro especificado</p></body></html> + + + + <html><head/><body><p>This button is used to navigate to the record number specified in the Go to area.</p></body></html> + <html><head/><body><p>Este botón se usa para moverse al número de registro especificado en la casilla Ir a.</p></body></html> + + + + Go to: + Ir a: + + + + Enter record number to browse + Introduzca el número de registro al que navegar + + + + Type a record number in this area and click the Go to: button to display the record in the database view + Escriba un número de registro en esta casilla y haga clic en el botón «Ir a:» para mostrar el registro en la vista de la base de datos + + + + 1 + 1 + + + + Show rowid column + Mostrar la columna rowid + + + + Toggle the visibility of the rowid column + Cambia la visibilidad de la columna rowid + + + + Unlock view editing + Desbloquear edición de vistas + + + + This unlocks the current view for editing. However, you will need appropriate triggers for editing. + Esto desbloquea la vista actual para edición. Aunque para la edición se necesitarán los disparadores adecuados. + + + + Edit display format + Editar el formato de presentación + + + + Edit the display format of the data in this column + Editar el formato de presentación de los datos en esta columna + + + + + New Record + Nuevo registro + + + + + Insert a new record in the current table + Inserta un nuevo registro en la tabla actual + + + + <html><head/><body><p>This button creates a new record in the database. Hold the mouse button to open a pop-up menu of different options:</p><ul><li><span style=" font-weight:600;">New Record</span>: insert a new record with default values in the database.</li><li><span style=" font-weight:600;">Insert Values...</span>: open a dialog for entering values before they are inserted in the database. This allows to enter values acomplishing the different constraints. This dialog is also open if the <span style=" font-weight:600;">New Record</span> option fails due to these constraints.</li></ul></body></html> + <html><head/><body><p>Este botón crea un nuevo registro en la base de datos. Mantenga pulsado el botón del ratón para abrir un menú emergente con varias opciones:</p><ul><li><span style=" font-weight:600;">Nuevo Registro</span>: inserta en la base de datos un nuevo registro con valores por defecto.</li><li><span style=" font-weight:600;">Introduce Valores...</span>: abre un diálogo para introducir valores antes de insertarlos en la base de datos. Esto permite introducir valores que cumplan con las restricciones. Este diálogo también se abre si la opción de <span style=" font-weight:600;">Nuevo Registro</span> falla debido a esas restricciones.</li></ul></body></html> + + + + + Delete Record + Borrar registro + + + + Delete the current record + Borra el registro actual + + + + + This button deletes the record or records currently selected in the table + Este botón borra el registro seleccionado (o los registros seleccionados) actualmente en la base de datos + + + + + Insert new record using default values in browsed table + Inserta un nuevo registro usando valores por defecto en la tabla visualizada + + + + Insert Values... + Introducir valores... + + + + + Open a dialog for inserting values in a new record + Abre un diálogo para introducir valores en un nuevo registro + + + + Export to &CSV + Exportar a &CSV + + + + + Export the filtered data to CSV + Exportar los datos filtrados a CSV + + + + This button exports the data of the browsed table as currently displayed (after filters, display formats and order column) as a CSV file. + Este botón exporta los datos de la tabla mostrada tal como se presentan (después de filtros, formatos de presentación y columna de orden) como un archivo CSV. + + + + Save as &view + Guardar como &vista + + + + + Save the current filter, sort column and display formats as a view + Guardar el filtro actual, la columna de orden y los formatos de presentación como una vista + + + + This button saves the current setting of the browsed table (filters, display formats and order column) as an SQL view that you can later browse or use in SQL statements. + Este botón guarda los ajustes actuales de la tabla visualizada (filtros, formatos de presentación y la columna de orden) como una vista SQL que más tarde puede visualizar o usar en sentencias SQL. + + + + Save Table As... + Guardar Tabla Como... + + + + + Save the table as currently displayed + Guarda la tabla tal como se presenta + + + + <html><head/><body><p>This popup menu provides the following options applying to the currently browsed and filtered table:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Export to CSV: this option exports the data of the browsed table as currently displayed (after filters, display formats and order column) to a CSV file.</li><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Save as view: this option saves the current setting of the browsed table (filters, display formats and order column) as an SQL view that you can later browse or use in SQL statements.</li></ul></body></html> + <html><head/><body><p>Este menú contextual provee las siguientes opciones que se aplican a la tabla actualmente visualizada y filtrada:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Exportar a CSV: esta opción exporta los datas de la tabla tal cual se presentan actualmente (después de filtros, formatos de presentación y columna de orden) a un archivo CSV.</li><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Guardar como vista: esta opción guarda la configuración actual de la tabla visualizada (filtros, formatos de presentación y columna de orden) como una vista SQL que luego puede visualizar o usar en sentencias SQL.</li></ul></body></html> + + + + Hide column(s) + Ocultar columna(s) + + + + Hide selected column(s) + Ocultar columna(s) seleccionada(s) + + + + Show all columns + Mostrar todas las columnas + + + + Show all columns that were hidden + Mostrar todas las columnas que están ocultas + + + + + Set encoding + Definir codificación + + + + Change the encoding of the text in the table cells + Cambia la codificación del texto de las celdas de la tabla + + + + Set encoding for all tables + Definir la codificación para todas las tablas + + + + Change the default encoding assumed for all tables in the database + Cambia la codificación por defecto para todas las tablas en la base de datos + + + + Clear Filters + Borrar Filtros + + + + Clear all filters + Borra todos los filtros + + + + + This button clears all the filters set in the header input fields for the currently browsed table. + Este botón elimina todos los filtros establecidos en la cabecera para la tabla mostrada actualmente. + + + + Clear Sorting + Eliminar ordenación + + + + Reset the order of rows to the default + Reinicia el orden de las filas al orden por defecto + + + + + This button clears the sorting columns specified for the currently browsed table and returns to the default order. + Este botón elimina la ordenación de las columnas especificadas para la tabla mostrada actualmente y vuelve al orden por defecto. + + + + Print + Imprimir + + + + Print currently browsed table data + Imprime los datos de la tabla mostrada actualmente + + + + Print currently browsed table data. Print selection if more than one cell is selected. + Imprime los datos de la tabla mostrada actualmente. Imprime la selección si se ha seleccionado más de una celda. + + + + Ctrl+P + + + + + Refresh + Refrescar + + + + Refresh the data in the selected table + Refresca los datos en la tabla seleccionada + + + + This button refreshes the data in the currently selected table. + Este botón refresca los datos de la tabla seleccionada actualmente. + + + + F5 + + + + + Find in cells + Buscar en celdas + + + + Open the find tool bar which allows you to search for values in the table view below. + Abre la barra de búsqueda que permite buscar valores en la vista de la tabla de abajo. + + + + + Bold + Negrita + + + + Ctrl+B + + + + + + Italic + Cursiva + + + + + Underline + Subrayado + + + + Ctrl+U + + + + + + Align Right + Alineado derecha + + + + + Align Left + Alineado izquierda + + + + + Center Horizontally + Centrado horizontal + + + + + Justify + Justificar + + + + + Edit Conditional Formats... + Editar formatos condicionales... + + + + Edit conditional formats for the current column + Edita formatos condicionales para la columna actual + + + + Clear Format + Eliminar formato + + + + Clear All Formats + Eliminar todos los formatos + + + + + Clear all cell formatting from selected cells and all conditional formats from selected columns + Elimina todo el formato de las celdas seleccionadas y los formatos condicionales de las columnas seleccionadas + + + + + Font Color + Color del texto + + + + + Background Color + Color del fondo + + + + Toggle Format Toolbar + Conmutar barra de formato + + + + Show/hide format toolbar + Mostrar/ocultar la barra de formato + + + + + This button shows or hides the formatting toolbar of the Data Browser + Este botón muestra u oculta la barra de formato de la Hoja de Datos + + + + Select column + Seleccionar columna + + + + Ctrl+Space + + + + + Replace text in cells + Reemplazar texto en las celdas + + + + Filter in any column + Filtrar en cualquier columna + + + + Ctrl+R + + + + + %n row(s) + + %n fila + %n filas + + + + + , %n column(s) + + , %n columna + , %n columnas + + + + + . Sum: %1; Average: %2; Min: %3; Max: %4 + . Suma: %1; Media: %2; Mín: %3; Máx: %4 + + + + Conditional formats for "%1" + Formatos condicionales para "%1" + + + + determining row count... + determinando nº de filas... + + + + %1 - %2 of >= %3 + %1 - %2 de >= %3 + + + + %1 - %2 of %3 + %1 - %2 de %3 + + + + Please enter a pseudo-primary key in order to enable editing on this view. This should be the name of a unique column in the view. + Introduzca una clave pseudo-primaria para activar la edición en esta vista. Esta debería ser el nombre de una columna única en la vista. + + + + Delete Records + Borrar registros + + + + Duplicate records + Duplicar registros + + + + Duplicate record + Duplicar registro + + + + Ctrl+" + + + + + Adjust rows to contents + Ajustar las filas al contenido + + + + Error deleting record: +%1 + Error borrando registro: +%1 + + + + Please select a record first + Por favor, antes seleccione un registro + + + + There is no filter set for this table. View will not be created. + No existe un filtro para esta tabla. La vista no será creada. + + + + Please choose a new encoding for all tables. + Por favor, elija una nueva codificación para todas las tablas. + + + + Please choose a new encoding for this table. + Por favor, elija una nueva codificación para esta tabla. + + + + %1 +Leave the field empty for using the database encoding. + %1 +Deje este campo vacío para usar la codificación de la base de datos. + + + + This encoding is either not valid or not supported. + Esta codificación no es válida o no está soportada. + + + + %1 replacement(s) made. + Se realizaron %1 sustitucion(es). + + + + VacuumDialog + + + Compact Database + Compactar base de datos + + + + Warning: Compacting the database will commit all of your changes. + Aviso: compactar la base de datos provocará la consolidación de todos sus cambios. + + + + Please select the databases to co&mpact: + Seleccione las bases de datos que desea co&mpactar: + + + diff --git a/ConfigFiles/translations/sqlb_fa.ts b/ConfigFiles/translations/sqlb_fa.ts new file mode 100644 index 0000000..0bda49c --- /dev/null +++ b/ConfigFiles/translations/sqlb_fa.ts @@ -0,0 +1,6922 @@ + + + + + AboutDialog + + + About DB Browser for SQLite + + + + + Version + + + + + <html><head/><body><p>DB Browser for SQLite is an open source, freeware visual tool used to create, design and edit SQLite database files.</p><p>It is bi-licensed under the Mozilla Public License Version 2, as well as the GNU General Public License Version 3 or later. You can modify or redistribute it under the conditions of these licenses.</p><p>See <a href="http://www.gnu.org/licenses/gpl.html">http://www.gnu.org/licenses/gpl.html</a> and <a href="https://www.mozilla.org/MPL/2.0/index.txt">https://www.mozilla.org/MPL/2.0/index.txt</a> for details.</p><p>For more information on this program please visit our website at: <a href="http://sqlitebrowser.org">http://sqlitebrowser.org</a></p><p><span style=" font-size:small;">This software uses the GPL/LGPL Qt Toolkit from </span><a href="http://qt-project.org/"><span style=" font-size:small;">http://qt-project.org/</span></a><span style=" font-size:small;"><br/>See </span><a href="http://qt-project.org/doc/qt-5/licensing.html"><span style=" font-size:small;">http://qt-project.org/doc/qt-5/licensing.html</span></a><span style=" font-size:small;"> for licensing terms and information.</span></p><p><span style=" font-size:small;">It also uses the Silk icon set by Mark James licensed under a Creative Commons Attribution 2.5 and 3.0 license.<br/>See </span><a href="http://www.famfamfam.com/lab/icons/silk/"><span style=" font-size:small;">http://www.famfamfam.com/lab/icons/silk/</span></a><span style=" font-size:small;"> for details.</span></p></body></html> + + + + + AddRecordDialog + + + Add New Record + + + + + Enter values for the new record considering constraints. Fields in bold are mandatory. + + + + + In the Value column you can specify the value for the field identified in the Name column. The Type column indicates the type of the field. Default values are displayed in the same style as NULL values. + + + + + Name + + + + + Type + + + + + Value + + + + + Values to insert. Pre-filled default values are inserted automatically unless they are changed. + + + + + When you edit the values in the upper frame, the SQL query for inserting this new record is shown here. You can edit manually the query before saving. + + + + + <html><head/><body><p><span style=" font-weight:600;">Save</span> will submit the shown SQL statement to the database for inserting the new record.</p><p><span style=" font-weight:600;">Restore Defaults</span> will restore the initial values in the <span style=" font-weight:600;">Value</span> column.</p><p><span style=" font-weight:600;">Cancel</span> will close this dialog without executing the query.</p></body></html> + + + + + Auto-increment + + + + + + Unique constraint + + + + + + Check constraint: %1 + + + + + + Foreign key: %1 + + + + + + Default value: %1 + + + + + + Error adding record. Message from database engine: + +%1 + + + + + Are you sure you want to restore all the entered values to their defaults? + + + + + Application + + + Possible command line arguments: + + + + + Usage: %1 [options] [<database>|<project>] + + + + + + -h, --help Show command line options + + + + + -q, --quit Exit application after running scripts + + + + + -s, --sql <file> Execute this SQL file after opening the DB + + + + + -t, --table <table> Browse this table after opening the DB + + + + + -R, --read-only Open database in read-only mode + + + + + -o, --option <group>/<setting>=<value> + + + + + Run application with this setting temporarily set to value + + + + + -O, --save-option <group>/<setting>=<value> + + + + + Run application saving this value for this setting + + + + + -v, --version Display the current version + + + + + <database> Open this SQLite database + + + + + <project> Open this project file (*.sqbpro) + + + + + The -s/--sql option requires an argument + + + + + The file %1 does not exist + + + + + The -t/--table option requires an argument + + + + + The -o/--option and -O/--save-option options require an argument in the form group/setting=value + + + + + SQLite Version + + + + + SQLCipher Version %1 (based on SQLite %2) + + + + + DB Browser for SQLite Version %1. + + + + + Built for %1, running on %2 + + + + + Qt Version %1 + + + + + Invalid option/non-existant file: %1 + + + + + CipherDialog + + + SQLCipher encryption + + + + + &Password + + + + + &Reenter password + + + + + Passphrase + + + + + Raw key + + + + + Encr&yption settings + + + + + SQLCipher &3 defaults + + + + + SQLCipher &4 defaults + + + + + Custo&m + + + + + Page si&ze + + + + + &KDF iterations + + + + + HMAC algorithm + + + + + KDF algorithm + + + + + Plaintext Header Size + + + + + Please set a key to encrypt the database. +Note that if you change any of the other, optional, settings you'll need to re-enter them as well every time you open the database file. +Leave the password fields empty to disable the encryption. +The encryption process might take some time and you should have a backup copy of your database! Unsaved changes are applied before modifying the encryption. + + + + + Please enter the key used to encrypt the database. +If any of the other settings were altered for this database file you need to provide this information as well. + + + + + ColumnDisplayFormatDialog + + + Choose display format + + + + + Display format + + + + + Choose a display format for the column '%1' which is applied to each value prior to showing it. + + + + + Default + + + + + Decimal number + + + + + Exponent notation + + + + + Hex blob + + + + + Hex number + + + + + Octal number + + + + + Round number + + + + + Apple NSDate to date + + + + + Java epoch (milliseconds) to date + + + + + .NET DateTime.Ticks to date + + + + + Julian day to date + + + + + Unix epoch to date + + + + + Unix epoch to local time + + + + + Windows DATE to date + + + + + Date as dd/mm/yyyy + + + + + Lower case + + + + + Upper case + + + + + Custom + + + + + Custom display format must contain a function call applied to %1 + + + + + Error in custom display format. Message from database engine: + +%1 + + + + + Custom display format must return only one column but it returned %1. + + + + + CondFormatManager + + + Conditional Format Manager + + + + + This dialog allows creating and editing conditional formats. Each cell style will be selected by the first accomplished condition for that cell data. Conditional formats can be moved up and down, where those at higher rows take precedence over those at lower. Syntax for conditions is the same as for filters and an empty condition applies to all values. + + + + + Add new conditional format + + + + + &Add + + + + + Remove selected conditional format + + + + + &Remove + + + + + Move selected conditional format up + + + + + Move &up + + + + + Move selected conditional format down + + + + + Move &down + + + + + Foreground + + + + + Text color + + + + + Background + + + + + Background color + + + + + Font + + + + + Size + + + + + Bold + + + + + Italic + + + + + Underline + + + + + Alignment + + + + + Condition + + + + + + Click to select color + + + + + Are you sure you want to clear all the conditional formats of this field? + + + + + DBBrowserDB + + + This database has already been attached. Its schema name is '%1'. + + + + + Please specify the database name under which you want to access the attached database + + + + + Invalid file format + + + + + Do you really want to close this temporary database? All data will be lost. + + + + + Do you want to save the changes made to the database file %1? + + + + + Database didn't close correctly, probably still busy + + + + + The database is currently busy: + + + + + Do you want to abort that other operation? + + + + + Exporting database to SQL file... + + + + + + Cancel + + + + + + No database file opened + + + + + Executing SQL... + + + + + Action cancelled. + + + + + + Error in statement #%1: %2. +Aborting execution%3. + + + + + + and rolling back + + + + + didn't receive any output from %1 + + + + + could not execute command: %1 + + + + + Cannot delete this object + + + + + Cannot set data on this object + + + + + + A table with the name '%1' already exists in schema '%2'. + + + + + No table with name '%1' exists in schema '%2'. + + + + + + Cannot find column %1. + + + + + Creating savepoint failed. DB says: %1 + + + + + Renaming the column failed. DB says: +%1 + + + + + + Releasing savepoint failed. DB says: %1 + + + + + Creating new table failed. DB says: %1 + + + + + Copying data to new table failed. DB says: +%1 + + + + + Deleting old table failed. DB says: %1 + + + + + Restoring some of the objects associated with this table failed. This is most likely because some column names changed. Here's the SQL statement which you might want to fix and execute manually: + + + + + + + Error renaming table '%1' to '%2'. +Message from database engine: +%3 + + + + + could not get list of db objects: %1 + + + + + could not get list of databases: %1 + + + + + Error setting pragma %1 to %2: %3 + + + + + File not found. + + + + + Error loading extension: %1 + + + + + could not get column information + + + + + DbStructureModel + + + Name + + + + + Object + + + + + Type + + + + + Schema + + + + + Database + + + + + Browsables + + + + + All + + + + + Temporary + + + + + Tables (%1) + + + + + Indices (%1) + + + + + Views (%1) + + + + + Triggers (%1) + + + + + EditDialog + + + Edit database cell + + + + + Mode: + + + + + This is the list of supported modes for the cell editor. Choose a mode for viewing or editing the data of the current cell. + + + + + Text + + + + + RTL Text + + + + + Binary + + + + + + Image + + + + + JSON + + + + + XML + + + + + + Automatically adjust the editor mode to the loaded data type + + + + + This checkable button enables or disables the automatic switching of the editor mode. When a new cell is selected or new data is imported and the automatic switching is enabled, the mode adjusts to the detected data type. You can then change the editor mode manually. If you want to keep this manually switched mode while moving through the cells, switch the button off. + + + + + Auto-switch + + + + + The text editor modes let you edit plain text, as well as JSON or XML data with syntax highlighting, automatic formatting and validation before saving. + +Errors are indicated with a red squiggle underline. + + + + + This Qt editor is used for right-to-left scripts, which are not supported by the default Text editor. The presence of right-to-left characters is detected and this editor mode is automatically selected. + + + + + Open preview dialog for printing the data currently stored in the cell + + + + + Auto-format: pretty print on loading, compact on saving. + + + + + When enabled, the auto-format feature formats the data on loading, breaking the text in lines and indenting it for maximum readability. On data saving, the auto-format feature compacts the data removing end of lines, and unnecessary whitespace. + + + + + Word Wrap + + + + + Wrap lines on word boundaries + + + + + + Open in default application or browser + + + + + Open in application + + + + + The value is interpreted as a file or URL and opened in the default application or web browser. + + + + + Save file reference... + + + + + Save reference to file + + + + + + Open in external application + + + + + Autoformat + + + + + &Export... + + + + + + &Import... + + + + + + Import from file + + + + + + Opens a file dialog used to import any kind of data to this database cell. + + + + + Export to file + + + + + Opens a file dialog used to export the contents of this database cell to a file. + + + + + Erases the contents of the cell + + + + + Set as &NULL + + + + + This area displays information about the data present in this database cell + + + + + Type of data currently in cell + + + + + Size of data currently in table + + + + + Apply data to cell + + + + + This button saves the changes performed in the cell editor to the database cell. + + + + + Apply + + + + + + Print... + + + + + Open preview dialog for printing displayed image + + + + + + Ctrl+P + + + + + Open preview dialog for printing displayed text + + + + + Copy Hex and ASCII + + + + + Copy selected hexadecimal and ASCII columns to the clipboard + + + + + Ctrl+Shift+C + + + + + + Image data can't be viewed in this mode. + + + + + + Try switching to Image or Binary mode. + + + + + + Binary data can't be viewed in this mode. + + + + + + Try switching to Binary mode. + + + + + + Image files (%1) + + + + + Binary files (*.bin) + + + + + Choose a file to import + + + + + %1 Image + + + + + Choose a filename to export data + + + + + Invalid data for this mode + + + + + The cell contains invalid %1 data. Reason: %2. Do you really want to apply it to the cell? + + + + + + Type of data currently in cell: Text / Numeric + + + + + + + %n character(s) + + + + + + + Type of data currently in cell: %1 Image + + + + + %1x%2 pixel(s) + + + + + Type of data currently in cell: NULL + + + + + + %n byte(s) + + + + + + + Type of data currently in cell: Valid JSON + + + + + Type of data currently in cell: Binary + + + + + Couldn't save file: %1. + + + + + The data has been saved to a temporary file and has been opened with the default application. You can now edit the file and, when you are ready, apply the saved new data to the cell editor or cancel any changes. + + + + + EditIndexDialog + + + Edit Index Schema + + + + + &Name + + + + + &Table + + + + + &Unique + + + + + For restricting the index to only a part of the table you can specify a WHERE clause here that selects the part of the table that should be indexed + + + + + Partial inde&x clause + + + + + Colu&mns + + + + + Table column + + + + + Type + + + + + Add a new expression column to the index. Expression columns contain SQL expression rather than column names. + + + + + Index column + + + + + Order + + + + + Deleting the old index failed: +%1 + + + + + Creating the index failed: +%1 + + + + + EditTableDialog + + + Edit table definition + + + + + Table + + + + + Advanced + + + + + Without Rowid + + + + + Make this a 'WITHOUT rowid' table. Setting this flag requires a field of type INTEGER with the primary key flag set and the auto increment flag unset. + + + + + Fields + + + + + Database sche&ma + + + + + Add + + + + + Remove + + + + + Move to top + + + + + Move up + + + + + Move down + + + + + Move to bottom + + + + + + Name + + + + + + Type + + + + + NN + + + + + Not null + + + + + PK + + + + + Primary key + + + + + AI + + + + + Autoincrement + + + + + U + + + + + + + Unique + + + + + Default + + + + + Default value + + + + + + + Check + + + + + Check constraint + + + + + Collation + + + + + + + Foreign Key + + + + + Constraints + + + + + Add constraint + + + + + Remove constraint + + + + + Columns + + + + + SQL + + + + + <html><head/><body><p><span style=" font-weight:600; color:#ff0000;">Warning: </span>There is something with this table definition that our parser doesn't fully understand. Modifying and saving this table might result in problems.</p></body></html> + + + + + + Primary Key + + + + + Add a primary key constraint + + + + + Add a foreign key constraint + + + + + Add a unique constraint + + + + + Add a check constraint + + + + + + There can only be one primary key for each table. Please modify the existing primary key instead. + + + + + Error creating table. Message from database engine: +%1 + + + + + There already is a field with that name. Please rename it first or choose a different name for this field. + + + + + This column is referenced in a foreign key in table %1 and thus its name cannot be changed. + + + + + There is at least one row with this field set to NULL. This makes it impossible to set this flag. Please change the table data first. + + + + + There is at least one row with a non-integer value in this field. This makes it impossible to set the AI flag. Please change the table data first. + + + + + Column '%1' has duplicate data. + + + + + + This makes it impossible to enable the 'Unique' flag. Please remove the duplicate data, which will allow the 'Unique' flag to then be enabled. + + + + + Are you sure you want to delete the field '%1'? +All data currently stored in this field will be lost. + + + + + Please add a field which meets the following criteria before setting the without rowid flag: + - Primary key flag set + - Auto increment disabled + + + + + ExportDataDialog + + + Export data as CSV + + + + + Tab&le(s) + + + + + Colu&mn names in first line + + + + + Fie&ld separator + + + + + , + + + + + ; + + + + + Tab + + + + + | + + + + + + + Other + + + + + &Quote character + + + + + " + + + + + ' + + + + + New line characters + + + + + Windows: CR+LF (\r\n) + + + + + Unix: LF (\n) + + + + + Pretty print + + + + + Export data as JSON + + + + + exporting CSV + + + + + + Could not open output file: %1 + + + + + exporting JSON + + + + + + Choose a filename to export data + + + + + Please select at least 1 table. + + + + + Choose a directory + + + + + Export completed. + + + + + ExportSqlDialog + + + Export SQL... + + + + + Tab&le(s) + + + + + Select All + + + + + Deselect All + + + + + &Options + + + + + Keep column names in INSERT INTO + + + + + Multiple rows (VALUES) per INSERT statement + + + + + Export everything + + + + + Export schema only + + + + + Export data only + + + + + Keep old schema (CREATE TABLE IF NOT EXISTS) + + + + + Overwrite old schema (DROP TABLE, then CREATE TABLE) + + + + + Please select at least one table. + + + + + Choose a filename to export + + + + + Export completed. + + + + + Export cancelled or failed. + + + + + ExtendedScintilla + + + + Ctrl+H + + + + + Ctrl+F + + + + + + Ctrl+P + + + + + Find... + + + + + Find and Replace... + + + + + Print... + + + + + ExtendedTableWidget + + + Use as Exact Filter + + + + + Containing + + + + + Not containing + + + + + Not equal to + + + + + Greater than + + + + + Less than + + + + + Greater or equal + + + + + Less or equal + + + + + Between this and... + + + + + Regular expression + + + + + Edit Conditional Formats... + + + + + Set to NULL + + + + + Copy + + + + + Copy with Headers + + + + + Copy as SQL + + + + + Paste + + + + + Print... + + + + + Use in Filter Expression + + + + + Alt+Del + + + + + Ctrl+Shift+C + + + + + Ctrl+Alt+C + + + + + The content of the clipboard is bigger than the range selected. +Do you want to insert it anyway? + + + + + <p>Not all data has been loaded. <b>Do you want to load all data before selecting all the rows?</b><p><p>Answering <b>No</b> means that no more data will be loaded and the selection will not be performed.<br/>Answering <b>Yes</b> might take some time while the data is loaded but the selection will be complete.</p>Warning: Loading all the data might require a great amount of memory for big tables. + + + + + Cannot set selection to NULL. Column %1 has a NOT NULL constraint. + + + + + FileExtensionManager + + + File Extension Manager + + + + + &Up + + + + + &Down + + + + + &Add + + + + + &Remove + + + + + + Description + + + + + Extensions + + + + + *.extension + + + + + FilterLineEdit + + + Filter + + + + + These input fields allow you to perform quick filters in the currently selected table. +By default, the rows containing the input text are filtered out. +The following operators are also supported: +% Wildcard +> Greater than +< Less than +>= Equal to or greater +<= Equal to or less += Equal to: exact match +<> Unequal: exact inverse match +x~y Range: values between x and y +/regexp/ Values matching the regular expression + + + + + Clear All Conditional Formats + + + + + Use for Conditional Format + + + + + Set Filter Expression + + + + + What's This? + + + + + Is NULL + + + + + Is not NULL + + + + + Is empty + + + + + Is not empty + + + + + Not containing... + + + + + Equal to... + + + + + Not equal to... + + + + + Greater than... + + + + + Less than... + + + + + Greater or equal... + + + + + Less or equal... + + + + + In range... + + + + + Regular expression... + + + + + Edit Conditional Formats... + + + + + FindReplaceDialog + + + Find and Replace + + + + + Fi&nd text: + + + + + Re&place with: + + + + + Match &exact case + + + + + Match &only whole words + + + + + When enabled, the search continues from the other end when it reaches one end of the page + + + + + &Wrap around + + + + + When set, the search goes backwards from cursor position, otherwise it goes forward + + + + + Search &backwards + + + + + <html><head/><body><p>When checked, the pattern to find is searched only in the current selection.</p></body></html> + + + + + &Selection only + + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + + + + + Use regular e&xpressions + + + + + Find the next occurrence from the cursor position and in the direction set by "Search backwards" + + + + + &Find Next + + + + + F3 + + + + + &Replace + + + + + Highlight all the occurrences of the text in the page + + + + + F&ind All + + + + + Replace all the occurrences of the text in the page + + + + + Replace &All + + + + + The searched text was not found + + + + + The searched text was not found. + + + + + The searched text was replaced one time. + + + + + The searched text was found one time. + + + + + The searched text was replaced %1 times. + + + + + The searched text was found %1 times. + + + + + ForeignKeyEditor + + + &Reset + + + + + Foreign key clauses (ON UPDATE, ON DELETE etc.) + + + + + ImportCsvDialog + + + Import CSV file + + + + + Table na&me + + + + + &Column names in first line + + + + + Field &separator + + + + + , + + + + + ; + + + + + + Tab + + + + + | + + + + + Other + + + + + &Quote character + + + + + + Other (printable) + + + + + + Other (code) + + + + + " + + + + + ' + + + + + &Encoding + + + + + UTF-8 + + + + + UTF-16 + + + + + ISO-8859-1 + + + + + Trim fields? + + + + + Separate tables + + + + + Advanced + + + + + When importing an empty value from the CSV file into an existing table with a default value for this column, that default value is inserted. Activate this option to insert an empty value instead. + + + + + Ignore default &values + + + + + Activate this option to stop the import when trying to import an empty value into a NOT NULL column without a default value. + + + + + Fail on missing values + + + + + Disable data type detection + + + + + Disable the automatic data type detection when creating a new table. + + + + + When importing into an existing table with a primary key, unique constraints or a unique index there is a chance for a conflict. This option allows you to select a strategy for that case: By default the import is aborted and rolled back but you can also choose to ignore and not import conflicting rows or to replace the existing row in the table. + + + + + Abort import + + + + + Ignore row + + + + + Replace existing row + + + + + Conflict strategy + + + + + + Deselect All + + + + + Match Similar + + + + + Select All + + + + + There is already a table named '%1' and an import into an existing table is only possible if the number of columns match. + + + + + There is already a table named '%1'. Do you want to import the data into it? + + + + + Creating restore point failed: %1 + + + + + Creating the table failed: %1 + + + + + importing CSV + + + + + Inserting row failed: %1 + + + + + Importing the file '%1' took %2ms. Of this %3ms were spent in the row function. + + + + + MainWindow + + + DB Browser for SQLite + + + + + + Database Structure + This has to be equal to the tab title in all the main tabs + + + + + This is the structure of the opened database. +You can drag SQL statements from an object row and drop them into other applications or into another instance of 'DB Browser for SQLite'. + + + + + + + Browse Data + This has to be equal to the tab title in all the main tabs + + + + + + Edit Pragmas + This has to be equal to the tab title in all the main tabs + + + + + Warning: this pragma is not readable and this value has been inferred. Writing the pragma might overwrite a redefined LIKE provided by an SQLite extension. + + + + + + Execute SQL + This has to be equal to the tab title in all the main tabs + + + + + toolBar1 + + + + + &File + + + + + &Import + + + + + &Export + + + + + &Edit + + + + + &View + + + + + &Help + + + + + &Tools + + + + + DB Toolbar + + + + + Edit Database &Cell + + + + + SQL &Log + + + + + Show S&QL submitted by + + + + + User + + + + + Application + + + + + Error Log + + + + + This button clears the contents of the SQL logs + + + + + &Clear + + + + + This panel lets you examine a log of all SQL commands issued by the application or by yourself + + + + + &Plot + + + + + DB Sche&ma + + + + + This is the structure of the opened database. +You can drag multiple object names from the Name column and drop them into the SQL editor and you can adjust the properties of the dropped names using the context menu. This would help you in composing SQL statements. +You can drag SQL statements from the Schema column and drop them into the SQL editor or into other applications. + + + + + + &Remote + + + + + + Project Toolbar + + + + + Extra DB toolbar + + + + + + + Close the current database file + + + + + &New Database... + + + + + + Create a new database file + + + + + This option is used to create a new database file. + + + + + Ctrl+N + + + + + + &Open Database... + + + + + + + + + Open an existing database file + + + + + + + This option is used to open an existing database file. + + + + + Ctrl+O + + + + + &Close Database + + + + + This button closes the connection to the currently open database file + + + + + + Ctrl+W + + + + + &Revert Changes + + + + + + Revert database to last saved state + + + + + This option is used to revert the current database file to its last saved state. All changes made since the last save operation are lost. + + + + + &Write Changes + + + + + + Write changes to the database file + + + + + This option is used to save changes to the database file. + + + + + Ctrl+S + + + + + Compact &Database... + + + + + Compact the database file, removing space wasted by deleted records + + + + + + Compact the database file, removing space wasted by deleted records. + + + + + E&xit + + + + + Ctrl+Q + + + + + &Database from SQL file... + + + + + Import data from an .sql dump text file into a new or existing database. + + + + + This option lets you import data from an .sql dump text file into a new or existing database. SQL dump files can be created on most database engines, including MySQL and PostgreSQL. + + + + + &Table from CSV file... + + + + + Open a wizard that lets you import data from a comma separated text file into a database table. + + + + + Open a wizard that lets you import data from a comma separated text file into a database table. CSV files can be created on most database and spreadsheet applications. + + + + + &Database to SQL file... + + + + + Export a database to a .sql dump text file. + + + + + This option lets you export a database to a .sql dump text file. SQL dump files contain all data necessary to recreate the database on most database engines, including MySQL and PostgreSQL. + + + + + &Table(s) as CSV file... + + + + + Export a database table as a comma separated text file. + + + + + Export a database table as a comma separated text file, ready to be imported into other database or spreadsheet applications. + + + + + &Create Table... + + + + + Open the Create Table wizard, where it is possible to define the name and fields for a new table in the database + + + + + &Delete Table... + + + + + + Delete Table + + + + + Open the Delete Table wizard, where you can select a database table to be dropped. + + + + + &Modify Table... + + + + + Open the Modify Table wizard, where it is possible to rename an existing table. It is also possible to add or delete fields form a table, as well as modify field names and types. + + + + + Create &Index... + + + + + Open the Create Index wizard, where it is possible to define a new index on an existing database table. + + + + + &Preferences... + + + + + + Open the preferences window. + + + + + &DB Toolbar + + + + + Shows or hides the Database toolbar. + + + + + Ctrl+T + + + + + Open SQL file(s) + + + + + This button opens files containing SQL statements and loads them in new editor tabs + + + + + Sa&ve Project + + + + + This button lets you save all the settings associated to the open DB to a DB Browser for SQLite project file + + + + + This button lets you open a DB Browser for SQLite project file + + + + + Ctrl+Shift+O + + + + + &Save Project As... + + + + + + + Save the project in a file selected in a dialog + + + + + Save A&ll + + + + + + + Save DB file, project file and opened SQL files + + + + + Ctrl+Shift+S + + + + + Browse Table + + + + + W&hat's This? + + + + + Ctrl+F4 + + + + + Shift+F1 + + + + + &About + + + + + &Recently opened + + + + + Open &tab + + + + + This button opens a new tab for the SQL editor + + + + + &Execute SQL + + + + + Execute all/selected SQL + + + + + This button executes the currently selected SQL statements. If no text is selected, all SQL statements are executed. + + + + + Ctrl+Return + + + + + + + Save SQL file + + + + + &Load Extension... + + + + + + Execute current line + + + + + Execute line + + + + + This button executes the SQL statement present in the current editor line + + + + + Shift+F5 + + + + + Export as CSV file + + + + + Export table as comma separated values file + + + + + &Wiki + + + + + F1 + + + + + Bug &Report... + + + + + Feature Re&quest... + + + + + Web&site + + + + + &Donate on Patreon... + + + + + + Save the current session to a file + + + + + Open &Project... + + + + + + Load a working session from a file + + + + + &Attach Database... + + + + + + Add another database file to the current database connection + + + + + This button lets you add another database file to the current database connection + + + + + &Set Encryption... + + + + + + Save SQL file as + + + + + This button saves the content of the current SQL editor tab to a file + + + + + &Browse Table + + + + + Copy Create statement + + + + + Copy the CREATE statement of the item to the clipboard + + + + + SQLCipher &FAQ + + + + + Opens the SQLCipher FAQ in a browser window + + + + + Table(&s) to JSON... + + + + + Export one or more table(s) to a JSON file + + + + + Open Data&base Read Only... + + + + + Open an existing database file in read only mode + + + + + Save results + + + + + Save the results view + + + + + This button lets you save the results of the last executed query + + + + + + Find text in SQL editor + + + + + Find + + + + + This button opens the search bar of the editor + + + + + Ctrl+F + + + + + + Find or replace text in SQL editor + + + + + Find or replace + + + + + This button opens the find/replace dialog for the current editor tab + + + + + Ctrl+H + + + + + Export to &CSV + + + + + Save as &view + + + + + Save as view + + + + + Shows or hides the Project toolbar. + + + + + Extra DB Toolbar + + + + + New In-&Memory Database + + + + + Drag && Drop Qualified Names + + + + + + Use qualified names (e.g. "Table"."Field") when dragging the objects and dropping them into the editor + + + + + Drag && Drop Enquoted Names + + + + + + Use escaped identifiers (e.g. "Table1") when dragging the objects and dropping them into the editor + + + + + &Integrity Check + + + + + Runs the integrity_check pragma over the opened database and returns the results in the Execute SQL tab. This pragma does an integrity check of the entire database. + + + + + &Foreign-Key Check + + + + + Runs the foreign_key_check pragma over the opened database and returns the results in the Execute SQL tab + + + + + &Quick Integrity Check + + + + + Run a quick integrity check over the open DB + + + + + Runs the quick_check pragma over the opened database and returns the results in the Execute SQL tab. This command does most of the checking of PRAGMA integrity_check but runs much faster. + + + + + &Optimize + + + + + Attempt to optimize the database + + + + + Runs the optimize pragma over the opened database. This pragma might perform optimizations that will improve the performance of future queries. + + + + + + Print + + + + + Print text from current SQL editor tab + + + + + Open a dialog for printing the text in the current SQL editor tab + + + + + + Ctrl+P + + + + + Print the structure of the opened database + + + + + Open a dialog for printing the structure of the opened database + + + + + Un/comment block of SQL code + + + + + Un/comment block + + + + + Comment or uncomment current line or selected block of code + + + + + Comment or uncomment the selected lines or the current line, when there is no selection. All the block is toggled according to the first line. + + + + + Ctrl+/ + + + + + Stop SQL execution + + + + + Stop execution + + + + + Stop the currently running SQL script + + + + + Ctrl+L + + + + + Ctrl+D + + + + + Ctrl+I + + + + + Ctrl+E + + + + + Window Layout + + + + + Reset Window Layout + + + + + Alt+0 + + + + + Simplify Window Layout + + + + + Shift+Alt+0 + + + + + Dock Windows at Bottom + + + + + Dock Windows at Left Side + + + + + Dock Windows at Top + + + + + The database is currenctly busy. + + + + + Click here to interrupt the currently running query. + + + + + Encrypted + + + + + Database is encrypted using SQLCipher + + + + + Read only + + + + + Database file is read only. Editing the database is disabled. + + + + + Database encoding + + + + + + Choose a database file + + + + + Could not open database file. +Reason: %1 + + + + + + + Choose a filename to save under + + + + + In-Memory database + + + + + Could not open project file for writing. +Reason: %1 + + + + + Project saved to file '%1' + + + + + Rename Tab + + + + + Duplicate Tab + + + + + Close Tab + + + + + Opening '%1'... + + + + + There was an error opening '%1'... + + + + + Value is not a valid URL or filename: %1 + + + + + Are you sure you want to delete the table '%1'? +All data associated with the table will be lost. + + + + + Are you sure you want to delete the view '%1'? + + + + + Are you sure you want to delete the trigger '%1'? + + + + + Are you sure you want to delete the index '%1'? + + + + + Error: could not delete the table. + + + + + Error: could not delete the view. + + + + + Error: could not delete the trigger. + + + + + Error: could not delete the index. + + + + + Message from database engine: +%1 + + + + + Editing the table requires to save all pending changes now. +Are you sure you want to save the database? + + + + + Error checking foreign keys after table modification. The changes will be reverted. + + + + + This table did not pass a foreign-key check.<br/>You should run 'Tools | Foreign-Key Check' and fix the reported issues. + + + + + Edit View %1 + + + + + Edit Trigger %1 + + + + + You are already executing SQL statements. Do you want to stop them in order to execute the current statements instead? Note that this might leave the database in an inconsistent state. + + + + + -- EXECUTING SELECTION IN '%1' +-- + + + + + -- EXECUTING LINE IN '%1' +-- + + + + + -- EXECUTING ALL IN '%1' +-- + + + + + %1 rows returned in %2ms + + + + + Setting PRAGMA values or vacuuming will commit your current transaction. +Are you sure? + + + + + Execution finished with errors. + + + + + Execution finished without errors. + + + + + Choose text files + + + + + Error while saving the database file. This means that not all changes to the database were saved. You need to resolve the following error first. + +%1 + + + + + Are you sure you want to undo all changes made to the database file '%1' since the last save? + + + + + Choose a file to import + + + + + Opened '%1' in read-only mode from recent file list + + + + + Opened '%1' from recent file list + + + + + &%1 %2%3 + + + + + (read only) + + + + + Open Database or Project + + + + + Attach Database... + + + + + Import CSV file(s)... + + + + + Select the action to apply to the dropped file(s). <br/>Note: only 'Import' will process more than one file. + + + + + + + Do you want to save the changes made to SQL tabs in a new project file? + + + + + Do you want to save the changes made to SQL tabs in the project file '%1'? + + + + + Do you want to save the changes made to the SQL file %1? + + + + + Text files(*.sql *.txt);;All files(*) + + + + + Do you want to create a new database file to hold the imported data? +If you answer no we will attempt to import the data in the SQL file to the current database. + + + + + You are still executing SQL statements. Closing the database now will stop their execution, possibly leaving the database in an inconsistent state. Are you sure you want to close the database? + + + + + Do you want to save the changes made to the project file '%1'? + + + + + + At line %1: + + + + + Result: %1 + + + + + Result: %2 + + + + + File %1 already exists. Please choose a different name. + + + + + Error importing data: %1 + + + + + Import completed. Some foreign key constraints are violated. Please fix them before saving. + + + + + Import completed. + + + + + Delete View + + + + + Modify View + + + + + Delete Trigger + + + + + Modify Trigger + + + + + Delete Index + + + + + Modify Index + + + + + Modify Table + + + + + Setting PRAGMA values will commit your current transaction. +Are you sure? + + + + + The statements in this tab are still executing. Closing the tab will stop the execution. This might leave the database in an inconsistent state. Are you sure you want to close the tab? + + + + + Select SQL file to open + + + + + Select file name + + + + + Select extension file + + + + + Extension successfully loaded. + + + + + Error loading extension: %1 + + + + + Could not find resource file: %1 + + + + + + Don't show again + + + + + New version available. + + + + + A new DB Browser for SQLite version is available (%1.%2.%3).<br/><br/>Please download at <a href='%4'>%4</a>. + + + + + Choose a project file to open + + + + + DB Browser for SQLite project file (*.sqbpro) + + + + + This project file is using an old file format because it was created using DB Browser for SQLite version 3.10 or lower. Loading this file format is still fully supported but we advice you to convert all your project files to the new file format because support for older formats might be dropped at some point in the future. You can convert your files by simply opening and re-saving them. + + + + + Collation needed! Proceed? + + + + + A table in this database requires a special collation function '%1' that this application can't provide without further knowledge. +If you choose to proceed, be aware bad things can happen to your database. +Create a backup! + + + + + creating collation + + + + + Set a new name for the SQL tab. Use the '&&' character to allow using the following character as a keyboard shortcut. + + + + + Please specify the view name + + + + + There is already an object with that name. Please choose a different name. + + + + + View successfully created. + + + + + Error creating view: %1 + + + + + This action will open a new SQL tab for running: + + + + + This action will open a new SQL tab with the following statements for you to edit and run: + + + + + Press Help for opening the corresponding SQLite reference page. + + + + + Busy (%1) + + + + + NullLineEdit + + + Set to NULL + + + + + Alt+Del + + + + + PlotDock + + + Plot + + + + + <html><head/><body><p>This pane shows the list of columns of the currently browsed table or the just executed query. You can select the columns that you want to be used as X or Y axis for the plot pane below. The table shows detected axis type that will affect the resulting plot. For the Y axis you can only select numeric columns, but for the X axis you will be able to select:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Date/Time</span>: strings with format &quot;yyyy-MM-dd hh:mm:ss&quot; or &quot;yyyy-MM-ddThh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Date</span>: strings with format &quot;yyyy-MM-dd&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Time</span>: strings with format &quot;hh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Label</span>: other string formats. Selecting this column as X axis will produce a Bars plot with the column values as labels for the bars</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Numeric</span>: integer or real values</li></ul><p>Double-clicking the Y cells you can change the used color for that graph.</p></body></html> + + + + + Columns + + + + + X + + + + + Y1 + + + + + Y2 + + + + + Axis Type + + + + + Here is a plot drawn when you select the x and y values above. + +Click on points to select them in the plot and in the table. Ctrl+Click for selecting a range of points. + +Use mouse-wheel for zooming and mouse drag for changing the axis range. + +Select the axes or axes labels to drag and zoom only in that orientation. + + + + + Line type: + + + + + + None + + + + + Line + + + + + StepLeft + + + + + StepRight + + + + + StepCenter + + + + + Impulse + + + + + Point shape: + + + + + Cross + + + + + Plus + + + + + Circle + + + + + Disc + + + + + Square + + + + + Diamond + + + + + Star + + + + + Triangle + + + + + TriangleInverted + + + + + CrossSquare + + + + + PlusSquare + + + + + CrossCircle + + + + + PlusCircle + + + + + Peace + + + + + <html><head/><body><p>Save current plot...</p><p>File format chosen by extension (png, jpg, pdf, bmp)</p></body></html> + + + + + Save current plot... + + + + + + Load all data and redraw plot + + + + + Copy + + + + + Print... + + + + + Show legend + + + + + Stacked bars + + + + + Date/Time + + + + + Date + + + + + Time + + + + + + Numeric + + + + + Label + + + + + Invalid + + + + + + + Row # + + + + + Load all data and redraw plot. +Warning: not all data has been fetched from the table yet due to the partial fetch mechanism. + + + + + Choose an axis color + + + + + Choose a filename to save under + + + + + PNG(*.png);;JPG(*.jpg);;PDF(*.pdf);;BMP(*.bmp);;All Files(*) + + + + + There are curves in this plot and the selected line style can only be applied to graphs sorted by X. Either sort the table or query by X to remove curves or select one of the styles supported by curves: None or Line. + + + + + Loading all remaining data for this table took %1ms. + + + + + PreferencesDialog + + + Preferences + + + + + &General + + + + + Default &location + + + + + Remember last location + + + + + Always use this location + + + + + Remember last location for session only + + + + + + + ... + + + + + Lan&guage + + + + + Toolbar style + + + + + + + + + Only display the icon + + + + + + + + + Only display the text + + + + + + + + + The text appears beside the icon + + + + + + + + + The text appears under the icon + + + + + + + + + Follow the style + + + + + + + + + + + + + enabled + + + + + Automatic &updates + + + + + DB file extensions + + + + + Manage + + + + + Show remote options + + + + + &Database + + + + + Database &encoding + + + + + Open databases with foreign keys enabled. + + + + + &Foreign keys + + + + + Remove line breaks in schema &view + + + + + When enabled, the line breaks in the Schema column of the DB Structure tab, dock and printed output are removed. + + + + + Prefetch block si&ze + + + + + SQ&L to execute after opening database + + + + + Default field type + + + + + Main Window + + + + + Database Structure + + + + + Browse Data + + + + + Execute SQL + + + + + Edit Database Cell + + + + + When this value is changed, all the other color preferences are also set to matching colors. + + + + + Follow the desktop style + + + + + Dark style + + + + + Application style + + + + + This sets the font size for all UI elements which do not have their own font size option. + + + + + Font size + + + + + Database structure font size + + + + + Data &Browser + + + + + Font + + + + + &Font + + + + + Font si&ze + + + + + Content + + + + + Symbol limit in cell + + + + + This is the maximum number of items allowed for some computationally expensive functionalities to be enabled: +Maximum number of rows in a table for enabling the value completion based on current values in the column. +Maximum number of indexes in a selection for calculating sum and average. +Can be set to 0 for disabling the functionalities. + + + + + This is the maximum number of rows in a table for enabling the value completion based on current values in the column. +Can be set to 0 for disabling completion. + + + + + Threshold for completion and calculation on selection + + + + + Show images in cell + + + + + Enable this option to show a preview of BLOBs containing image data in the cells. This can affect the performance of the data browser, however. + + + + + Field display + + + + + Displayed &text + + + + + Binary + + + + + NULL + + + + + Regular + + + + + + + + + + Click to set this color + + + + + Text color + + + + + Background color + + + + + Preview only (N/A) + + + + + Filters + + + + + Escape character + + + + + Delay time (&ms) + + + + + Set the waiting time before a new filter value is applied. Can be set to 0 for disabling waiting. + + + + + &SQL + + + + + Settings name + + + + + Context + + + + + Colour + + + + + Bold + + + + + Italic + + + + + Underline + + + + + Keyword + + + + + Function + + + + + Table + + + + + Comment + + + + + Identifier + + + + + String + + + + + Current line + + + + + Background + + + + + Foreground + + + + + SQL editor &font + + + + + SQL &editor font size + + + + + SQL &results font size + + + + + Tab size + + + + + &Wrap lines + + + + + Never + + + + + At word boundaries + + + + + At character boundaries + + + + + At whitespace boundaries + + + + + &Quotes for identifiers + + + + + Choose the quoting mechanism used by the application for identifiers in SQL code. + + + + + "Double quotes" - Standard SQL (recommended) + + + + + `Grave accents` - Traditional MySQL quotes + + + + + [Square brackets] - Traditional MS SQL Server quotes + + + + + Code co&mpletion + + + + + Keywords in &UPPER CASE + + + + + When set, the SQL keywords are completed in UPPER CASE letters. + + + + + Error indicators + + + + + When set, the SQL code lines that caused errors during the last execution are highlighted and the results frame indicates the error in the background + + + + + Hori&zontal tiling + + + + + If enabled the SQL code editor and the result table view are shown side by side instead of one over the other. + + + + + Close button on tabs + + + + + If enabled, SQL editor tabs will have a close button. In any case, you can use the contextual menu or the keyboard shortcut to close them. + + + + + &Extensions + + + + + Select extensions to load for every database: + + + + + Add extension + + + + + Remove extension + + + + + <html><head/><body><p>While supporting the REGEXP operator SQLite doesn't implement any regular expression<br/>algorithm but calls back the running application. DB Browser for SQLite implements this<br/>algorithm for you to let you use REGEXP out of the box. However, as there are multiple possible<br/>implementations of this and you might want to use another one, you're free to disable the<br/>application's implementation and load your own by using an extension. Requires restart of the application.</p></body></html> + + + + + Disable Regular Expression extension + + + + + <html><head/><body><p>SQLite provides an SQL function for loading extensions from a shared library file. Activate this if you want to use the <span style=" font-style:italic;">load_extension()</span> function from SQL code.</p><p>For security reasons, extension loading is turned off by default and must be enabled through this setting. You can always load extensions through the GUI, even though this option is disabled.</p></body></html> + + + + + Allow loading extensions from SQL code + + + + + Remote + + + + + Your certificates + + + + + File + + + + + + Subject CN + + + + + Subject Common Name + + + + + Issuer CN + + + + + Issuer Common Name + + + + + + Valid from + + + + + + Valid to + + + + + + Serial number + + + + + CA certificates + + + + + Common Name + + + + + Subject O + + + + + Organization + + + + + Clone databases into + + + + + Proxy + + + + + Configure + + + + + + Choose a directory + + + + + The language will change after you restart the application. + + + + + Select extension file + + + + + Extensions(*.so *.dylib *.dll);;All files(*) + + + + + Import certificate file + + + + + No certificates found in this file. + + + + + Are you sure you want do remove this certificate? All certificate data will be deleted from the application settings! + + + + + Are you sure you want to clear all the saved settings? +All your preferences will be lost and default values will be used. + + + + + ProxyDialog + + + Proxy Configuration + + + + + Pro&xy Type + + + + + Host Na&me + + + + + Port + + + + + Authentication Re&quired + + + + + &User Name + + + + + Password + + + + + None + + + + + System settings + + + + + HTTP + + + + + Socks v5 + + + + + QObject + + + All files (*) + + + + + Error importing data + + + + + from record number %1 + + + + + . +%1 + + + + + Importing CSV file... + + + + + Cancel + + + + + SQLite database files (*.db *.sqlite *.sqlite3 *.db3) + + + + + Left + + + + + Right + + + + + Center + + + + + Justify + + + + + SQLite Database Files (*.db *.sqlite *.sqlite3 *.db3) + + + + + DB Browser for SQLite Project Files (*.sqbpro) + + + + + SQL Files (*.sql) + + + + + All Files (*) + + + + + Text Files (*.txt) + + + + + Comma-Separated Values Files (*.csv) + + + + + Tab-Separated Values Files (*.tsv) + + + + + Delimiter-Separated Values Files (*.dsv) + + + + + Concordance DAT files (*.dat) + + + + + JSON Files (*.json *.js) + + + + + XML Files (*.xml) + + + + + Binary Files (*.bin *.dat) + + + + + SVG Files (*.svg) + + + + + Hex Dump Files (*.dat *.bin) + + + + + Extensions (*.so *.dylib *.dll) + + + + + RemoteCommitsModel + + + Commit ID + + + + + Message + + + + + Date + + + + + Author + + + + + Size + + + + + Authored and committed by %1 + + + + + Authored by %1, committed by %2 + + + + + RemoteDatabase + + + Error opening local databases list. +%1 + + + + + Error creating local databases list. +%1 + + + + + RemoteDock + + + Remote + + + + + Identity + + + + + DBHub.io + + + + + <html><head/><body><p>In this pane, remote databases from dbhub.io website can be added to DB Browser for SQLite. First you need an identity:</p><ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Login to the dbhub.io website (use your GitHub credentials or whatever you want)</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Click the button to &quot;Generate client certificate&quot; (that's your identity). That'll give you a certificate file (save it to your local disk).</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Go to the Remote tab in DB Browser for SQLite Preferences. Click the button to add a new certificate to DB Browser for SQLite and choose the just downloaded certificate file.</li></ol><p>Now the Remote panel shows your identity and you can add remote databases.</p></body></html> + + + + + Local + + + + + Current Database + + + + + Clone + + + + + User + + + + + Database + + + + + Branch + + + + + Commits + + + + + Commits for + + + + + <html><head/><body><p>You are currently using a built-in, read-only identity. For uploading your database, you need to configure and use your DBHub.io account.</p><p>No DBHub.io account yet? <a href="https://dbhub.io/"><span style=" text-decoration: underline; color:#007af4;">Create one now</span></a> and import your certificate <a href="#preferences"><span style=" text-decoration: underline; color:#007af4;">here</span></a> to share your databases.</p><p>For online help visit <a href="https://dbhub.io/about"><span style=" text-decoration: underline; color:#007af4;">here</span></a>.</p></body></html> + + + + + Back + + + + + Delete Database + + + + + Delete the local clone of this database + + + + + Open in Web Browser + + + + + Open the web page for the current database in your browser + + + + + Clone from Link + + + + + Use this to download a remote database for local editing using a URL as provided on the web page of the database. + + + + + Refresh + + + + + Reload all data and update the views + + + + + F5 + + + + + Clone Database + + + + + Open Database + + + + + Open the local copy of this database + + + + + Check out Commit + + + + + Download and open this specific commit + + + + + Check out Latest Commit + + + + + Check out the latest commit of the current branch + + + + + Save Revision to File + + + + + Saves the selected revision of the database to another file + + + + + Upload Database + + + + + Upload this database as a new commit + + + + + Push currently opened database to server + + + + + Select an identity to connect + + + + + Public + + + + + This downloads a database from a remote server for local editing. +Please enter the URL to clone from. You can generate this URL by +clicking the 'Clone Database in DB4S' button on the web page +of the database. + + + + + Invalid URL: The host name does not match the host name of the current identity. + + + + + Invalid URL: No branch name specified. + + + + + Invalid URL: No commit ID specified. + + + + + You have modified the local clone of the database. Fetching this commit overrides these local changes. +Are you sure you want to proceed? + + + + + The database has unsaved changes. Are you sure you want to push it before saving? + + + + + The database you are trying to delete is currently opened. Please close it before deleting. + + + + + This deletes the local version of this database with all the changes you have not committed yet. Are you sure you want to delete this database? + + + + + RemoteLocalFilesModel + + + Name + + + + + Branch + + + + + Last modified + + + + + Size + + + + + Commit + + + + + File + + + + + RemoteModel + + + Name + + + + + Commit + + + + + Last modified + + + + + Size + + + + + Size: + + + + + Last Modified: + + + + + Licence: + + + + + Default Branch: + + + + + RemoteNetwork + + + Choose a location to save the file + + + + + Error opening remote file at %1. +%2 + + + + + Error: Invalid client certificate specified. + + + + + Please enter the passphrase for this client certificate in order to authenticate. + + + + + Cancel + + + + + Uploading remote database to +%1 + + + + + Downloading remote database from +%1 + + + + + + Error: The network is not accessible. + + + + + Error: Cannot open the file for sending. + + + + + RemotePushDialog + + + Push database + + + + + Database na&me to push to + + + + + Commit message + + + + + Database licence + + + + + Public + + + + + Branch + + + + + Force push + + + + + Username + + + + + Database will be public. Everyone has read access to it. + + + + + Database will be private. Only you have access to it. + + + + + Use with care. This can cause remote commits to be deleted. + + + + + RunSql + + + Execution aborted by user + + + + + , %1 rows affected + + + + + query executed successfully. Took %1ms%2 + + + + + executing query + + + + + SelectItemsPopup + + + A&vailable + + + + + Sele&cted + + + + + SqlExecutionArea + + + Form + + + + + Find previous match [Shift+F3] + + + + + Find previous match with wrapping + + + + + Shift+F3 + + + + + The found pattern must be a whole word + + + + + Whole Words + + + + + Text pattern to find considering the checks in this frame + + + + + Find in editor + + + + + The found pattern must match in letter case + + + + + Case Sensitive + + + + + Find next match [Enter, F3] + + + + + Find next match with wrapping + + + + + F3 + + + + + Interpret search pattern as a regular expression + + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + + + + + Regular Expression + + + + + + Close Find Bar + + + + + <html><head/><body><p>Results of the last executed statements.</p><p>You may want to collapse this panel and use the <span style=" font-style:italic;">SQL Log</span> dock with <span style=" font-style:italic;">User</span> selection instead.</p></body></html> + + + + + Results of the last executed statements + + + + + This field shows the results and status codes of the last executed statements. + + + + + Couldn't read file: %1. + + + + + + Couldn't save file: %1. + + + + + Your changes will be lost when reloading it! + + + + + The file "%1" was modified by another program. Do you want to reload it?%2 + + + + + SqlTextEdit + + + Ctrl+/ + + + + + SqlUiLexer + + + (X) The abs(X) function returns the absolute value of the numeric argument X. + + + + + () The changes() function returns the number of database rows that were changed or inserted or deleted by the most recently completed INSERT, DELETE, or UPDATE statement. + + + + + (X1,X2,...) The char(X1,X2,...,XN) function returns a string composed of characters having the unicode code point values of integers X1 through XN, respectively. + + + + + (X,Y,...) The coalesce() function returns a copy of its first non-NULL argument, or NULL if all arguments are NULL + + + + + (X,Y) The glob(X,Y) function is equivalent to the expression "Y GLOB X". + + + + + (X,Y) The ifnull() function returns a copy of its first non-NULL argument, or NULL if both arguments are NULL. + + + + + (X,Y) The instr(X,Y) function finds the first occurrence of string Y within string X and returns the number of prior characters plus 1, or 0 if Y is nowhere found within X. + + + + + (X) The hex() function interprets its argument as a BLOB and returns a string which is the upper-case hexadecimal rendering of the content of that blob. + + + + + () The last_insert_rowid() function returns the ROWID of the last row insert from the database connection which invoked the function. + + + + + (X) For a string value X, the length(X) function returns the number of characters (not bytes) in X prior to the first NUL character. + + + + + (X,Y) The like() function is used to implement the "Y LIKE X" expression. + + + + + (X,Y,Z) The like() function is used to implement the "Y LIKE X ESCAPE Z" expression. + + + + + (X) The load_extension(X) function loads SQLite extensions out of the shared library file named X. +Use of this function must be authorized from Preferences. + + + + + (X,Y) The load_extension(X) function loads SQLite extensions out of the shared library file named X using the entry point Y. +Use of this function must be authorized from Preferences. + + + + + (X) The lower(X) function returns a copy of string X with all ASCII characters converted to lower case. + + + + + (X) ltrim(X) removes spaces from the left side of X. + + + + + (X,Y) The ltrim(X,Y) function returns a string formed by removing any and all characters that appear in Y from the left side of X. + + + + + (X,Y,...) The multi-argument max() function returns the argument with the maximum value, or return NULL if any argument is NULL. + + + + + (X,Y,...) The multi-argument min() function returns the argument with the minimum value. + + + + + (X,Y) The nullif(X,Y) function returns its first argument if the arguments are different and NULL if the arguments are the same. + + + + + (FORMAT,...) The printf(FORMAT,...) SQL function works like the sqlite3_mprintf() C-language function and the printf() function from the standard C library. + + + + + (X) The quote(X) function returns the text of an SQL literal which is the value of its argument suitable for inclusion into an SQL statement. + + + + + () The random() function returns a pseudo-random integer between -9223372036854775808 and +9223372036854775807. + + + + + (N) The randomblob(N) function return an N-byte blob containing pseudo-random bytes. + + + + + (X,Y,Z) The replace(X,Y,Z) function returns a string formed by substituting string Z for every occurrence of string Y in string X. + + + + + (X) The round(X) function returns a floating-point value X rounded to zero digits to the right of the decimal point. + + + + + (X,Y) The round(X,Y) function returns a floating-point value X rounded to Y digits to the right of the decimal point. + + + + + (X) rtrim(X) removes spaces from the right side of X. + + + + + (X,Y) The rtrim(X,Y) function returns a string formed by removing any and all characters that appear in Y from the right side of X. + + + + + (X) The soundex(X) function returns a string that is the soundex encoding of the string X. + + + + + (X,Y) substr(X,Y) returns all characters through the end of the string X beginning with the Y-th. + + + + + (X,Y,Z) The substr(X,Y,Z) function returns a substring of input string X that begins with the Y-th character and which is Z characters long. + + + + + () The total_changes() function returns the number of row changes caused by INSERT, UPDATE or DELETE statements since the current database connection was opened. + + + + + (X) trim(X) removes spaces from both ends of X. + + + + + (X,Y) The trim(X,Y) function returns a string formed by removing any and all characters that appear in Y from both ends of X. + + + + + (X) The typeof(X) function returns a string that indicates the datatype of the expression X. + + + + + (X) The unicode(X) function returns the numeric unicode code point corresponding to the first character of the string X. + + + + + (X) The upper(X) function returns a copy of input string X in which all lower-case ASCII characters are converted to their upper-case equivalent. + + + + + (N) The zeroblob(N) function returns a BLOB consisting of N bytes of 0x00. + + + + + + + + (timestring,modifier,modifier,...) + + + + + (format,timestring,modifier,modifier,...) + + + + + (X) The avg() function returns the average value of all non-NULL X within a group. + + + + + (X) The count(X) function returns a count of the number of times that X is not NULL in a group. + + + + + (X) The group_concat() function returns a string which is the concatenation of all non-NULL values of X. + + + + + (X,Y) The group_concat() function returns a string which is the concatenation of all non-NULL values of X. If parameter Y is present then it is used as the separator between instances of X. + + + + + (X) The max() aggregate function returns the maximum value of all values in the group. + + + + + (X) The min() aggregate function returns the minimum non-NULL value of all values in the group. + + + + + + (X) The sum() and total() aggregate functions return sum of all non-NULL values in the group. + + + + + () The number of the row within the current partition. Rows are numbered starting from 1 in the order defined by the ORDER BY clause in the window definition, or in arbitrary order otherwise. + + + + + () The row_number() of the first peer in each group - the rank of the current row with gaps. If there is no ORDER BY clause, then all rows are considered peers and this function always returns 1. + + + + + () The number of the current row's peer group within its partition - the rank of the current row without gaps. Partitions are numbered starting from 1 in the order defined by the ORDER BY clause in the window definition. If there is no ORDER BY clause, then all rows are considered peers and this function always returns 1. + + + + + () Despite the name, this function always returns a value between 0.0 and 1.0 equal to (rank - 1)/(partition-rows - 1), where rank is the value returned by built-in window function rank() and partition-rows is the total number of rows in the partition. If the partition contains only one row, this function returns 0.0. + + + + + () The cumulative distribution. Calculated as row-number/partition-rows, where row-number is the value returned by row_number() for the last peer in the group and partition-rows the number of rows in the partition. + + + + + (N) Argument N is handled as an integer. This function divides the partition into N groups as evenly as possible and assigns an integer between 1 and N to each group, in the order defined by the ORDER BY clause, or in arbitrary order otherwise. If necessary, larger groups occur first. This function returns the integer value assigned to the group that the current row is a part of. + + + + + (expr) Returns the result of evaluating expression expr against the previous row in the partition. Or, if there is no previous row (because the current row is the first), NULL. + + + + + (expr,offset) If the offset argument is provided, then it must be a non-negative integer. In this case the value returned is the result of evaluating expr against the row offset rows before the current row within the partition. If offset is 0, then expr is evaluated against the current row. If there is no row offset rows before the current row, NULL is returned. + + + + + + (expr,offset,default) If default is also provided, then it is returned instead of NULL if the row identified by offset does not exist. + + + + + (expr) Returns the result of evaluating expression expr against the next row in the partition. Or, if there is no next row (because the current row is the last), NULL. + + + + + (expr,offset) If the offset argument is provided, then it must be a non-negative integer. In this case the value returned is the result of evaluating expr against the row offset rows after the current row within the partition. If offset is 0, then expr is evaluated against the current row. If there is no row offset rows after the current row, NULL is returned. + + + + + (expr) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the first row in the window frame for each row. + + + + + (expr) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the last row in the window frame for each row. + + + + + (expr,N) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the row N of the window frame. Rows are numbered within the window frame starting from 1 in the order defined by the ORDER BY clause if one is present, or in arbitrary order otherwise. If there is no Nth row in the partition, then NULL is returned. + + + + + SqliteTableModel + + + reading rows + + + + + loading... + + + + + References %1(%2) +Hold %3Shift and click to jump there + + + + + Error changing data: +%1 + + + + + retrieving list of columns + + + + + Fetching data... + + + + + + Cancel + + + + + TableBrowser + + + Browse Data + + + + + &Table: + + + + + Select a table to browse data + + + + + Use this list to select a table to be displayed in the database view + + + + + This is the database table view. You can do the following actions: + - Start writing for editing inline the value. + - Double-click any record to edit its contents in the cell editor window. + - Alt+Del for deleting the cell content to NULL. + - Ctrl+" for duplicating the current record. + - Ctrl+' for copying the value from the cell above. + - Standard selection and copy/paste operations. + + + + + Text pattern to find considering the checks in this frame + + + + + Find in table + + + + + Find previous match [Shift+F3] + + + + + Find previous match with wrapping + + + + + Shift+F3 + + + + + Find next match [Enter, F3] + + + + + Find next match with wrapping + + + + + F3 + + + + + The found pattern must match in letter case + + + + + Case Sensitive + + + + + The found pattern must be a whole word + + + + + Whole Cell + + + + + Interpret search pattern as a regular expression + + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + + + + + Regular Expression + + + + + + Close Find Bar + + + + + Text to replace with + + + + + Replace with + + + + + Replace next match + + + + + + Replace + + + + + Replace all matches + + + + + Replace all + + + + + <html><head/><body><p>Scroll to the beginning</p></body></html> + + + + + <html><head/><body><p>Clicking this button navigates to the beginning in the table view above.</p></body></html> + + + + + |< + + + + + Scroll one page upwards + + + + + <html><head/><body><p>Clicking this button navigates one page of records upwards in the table view above.</p></body></html> + + + + + < + + + + + 0 - 0 of 0 + + + + + Scroll one page downwards + + + + + <html><head/><body><p>Clicking this button navigates one page of records downwards in the table view above.</p></body></html> + + + + + > + + + + + Scroll to the end + + + + + <html><head/><body><p>Clicking this button navigates up to the end in the table view above.</p></body></html> + + + + + >| + + + + + <html><head/><body><p>Click here to jump to the specified record</p></body></html> + + + + + <html><head/><body><p>This button is used to navigate to the record number specified in the Go to area.</p></body></html> + + + + + Go to: + + + + + Enter record number to browse + + + + + Type a record number in this area and click the Go to: button to display the record in the database view + + + + + 1 + + + + + Show rowid column + + + + + Toggle the visibility of the rowid column + + + + + Unlock view editing + + + + + This unlocks the current view for editing. However, you will need appropriate triggers for editing. + + + + + Edit display format + + + + + Edit the display format of the data in this column + + + + + + New Record + + + + + + Insert a new record in the current table + + + + + <html><head/><body><p>This button creates a new record in the database. Hold the mouse button to open a pop-up menu of different options:</p><ul><li><span style=" font-weight:600;">New Record</span>: insert a new record with default values in the database.</li><li><span style=" font-weight:600;">Insert Values...</span>: open a dialog for entering values before they are inserted in the database. This allows to enter values acomplishing the different constraints. This dialog is also open if the <span style=" font-weight:600;">New Record</span> option fails due to these constraints.</li></ul></body></html> + + + + + + Delete Record + + + + + Delete the current record + + + + + + This button deletes the record or records currently selected in the table + + + + + + Insert new record using default values in browsed table + + + + + Insert Values... + + + + + + Open a dialog for inserting values in a new record + + + + + Export to &CSV + + + + + + Export the filtered data to CSV + + + + + This button exports the data of the browsed table as currently displayed (after filters, display formats and order column) as a CSV file. + + + + + Save as &view + + + + + + Save the current filter, sort column and display formats as a view + + + + + This button saves the current setting of the browsed table (filters, display formats and order column) as an SQL view that you can later browse or use in SQL statements. + + + + + Save Table As... + + + + + + Save the table as currently displayed + + + + + <html><head/><body><p>This popup menu provides the following options applying to the currently browsed and filtered table:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Export to CSV: this option exports the data of the browsed table as currently displayed (after filters, display formats and order column) to a CSV file.</li><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Save as view: this option saves the current setting of the browsed table (filters, display formats and order column) as an SQL view that you can later browse or use in SQL statements.</li></ul></body></html> + + + + + Hide column(s) + + + + + Hide selected column(s) + + + + + Show all columns + + + + + Show all columns that were hidden + + + + + + Set encoding + + + + + Change the encoding of the text in the table cells + + + + + Set encoding for all tables + + + + + Change the default encoding assumed for all tables in the database + + + + + Clear Filters + + + + + Clear all filters + + + + + + This button clears all the filters set in the header input fields for the currently browsed table. + + + + + Clear Sorting + + + + + Reset the order of rows to the default + + + + + + This button clears the sorting columns specified for the currently browsed table and returns to the default order. + + + + + Print + + + + + Print currently browsed table data + + + + + Print currently browsed table data. Print selection if more than one cell is selected. + + + + + Ctrl+P + + + + + Refresh + + + + + Refresh the data in the selected table + + + + + This button refreshes the data in the currently selected table. + + + + + F5 + + + + + Find in cells + + + + + Open the find tool bar which allows you to search for values in the table view below. + + + + + + Bold + + + + + Ctrl+B + + + + + + Italic + + + + + + Underline + + + + + Ctrl+U + + + + + + Align Right + + + + + + Align Left + + + + + + Center Horizontally + + + + + + Justify + + + + + + Edit Conditional Formats... + + + + + Edit conditional formats for the current column + + + + + Clear Format + + + + + Clear All Formats + + + + + + Clear all cell formatting from selected cells and all conditional formats from selected columns + + + + + + Font Color + + + + + + Background Color + + + + + Toggle Format Toolbar + + + + + Show/hide format toolbar + + + + + + This button shows or hides the formatting toolbar of the Data Browser + + + + + Select column + + + + + Ctrl+Space + + + + + Replace text in cells + + + + + Filter in any column + + + + + Ctrl+R + + + + + %n row(s) + + + + + + + , %n column(s) + + + + + + + . Sum: %1; Average: %2; Min: %3; Max: %4 + + + + + Conditional formats for "%1" + + + + + determining row count... + + + + + %1 - %2 of >= %3 + + + + + %1 - %2 of %3 + + + + + Please enter a pseudo-primary key in order to enable editing on this view. This should be the name of a unique column in the view. + + + + + Delete Records + + + + + Duplicate records + + + + + Duplicate record + + + + + Ctrl+" + + + + + Adjust rows to contents + + + + + Error deleting record: +%1 + + + + + Please select a record first + + + + + There is no filter set for this table. View will not be created. + + + + + Please choose a new encoding for all tables. + + + + + Please choose a new encoding for this table. + + + + + %1 +Leave the field empty for using the database encoding. + + + + + This encoding is either not valid or not supported. + + + + + %1 replacement(s) made. + + + + + VacuumDialog + + + Compact Database + + + + + Warning: Compacting the database will commit all of your changes. + + + + + Please select the databases to co&mpact: + + + + diff --git a/ConfigFiles/translations/sqlb_fr.qm b/ConfigFiles/translations/sqlb_fr.qm new file mode 100644 index 0000000000000000000000000000000000000000..589b9f6eb70052b506a3266217e86d22a4489fcb GIT binary patch literal 264290 zcmcG12Vhgx_y2kCB^_znD55wqpbQx;;6_BDWeNqMfS@30o3?>AElJ97peSwx7w(0M z2;xR@q9P7NL2)mfs5tPeg8Kc*7yqBny?J>_no|6J{flsuH|{<6+_TTQH+>$j-1pU= zZeI9$y91w{yy%%vmWYU173nY1`Eh(~FY-SAqBZuv4s9oVzf-lw0k5L%hVScCYaH-1 z+MZ%XmZCil*MC*5ap1ma`{4TPX#0wF^;)!JMBY0W?I~jR;`g&eK69zoIN}5m*Labq z=A%6g&;N+_N--|ji1unRykDx;{HCjFt-FS!T`1npAgt`PIm>%{d3;JD}`aTlB~M*YR&?)tWv zS1%WLj{#zKEE0Ebub7oH#Xa~)k#>jZcGghczH+&0&Gnz@_KnxYJr?hEX`|cAa>X63 z6tim-?F(q{7WedP#Jp^VxEBG(h_DC;(f3HYq>)5 zzXlB)-9ZZ4Rf%!<7vdXnh8U&GWsi-m#k%HAY5hW5F|O<^ZD#Zp;X7yIFp4cw? zecUL9@87cj;7MX!GD8mDwzn8>?Uasp0nY>8lf$0bAhO?l>GE(X=<-+T^4KQOQAD~t z`l*x?o+*Bcjq}%M&7Bjh8Mz^uYDcr7Q9L-~#Ciycx%br0a&4#pu^V zx_-7F+S8z&&<={;!ciFT5ybhZ|(jrx>r{0~vhO zXJQPQD}!eo3s(A0hJ+6hbI8jwGp%OWG>z@vKGk2{!)mt&t%>q>%sdc$Te4>-zzSXYc`lzuYG0FSjd(4-;+fT+$Bce z8d>}U`U!j?cW0N1weN>=Z|7xV?D4!TzbaddC;lV%KLq+aGg}^77ZPjA4tb>2tzwnj zAuA`(6S-oPJX_gLj6?R3XE$sWGjfx>PzL_qaIU=Mnk~lUw`KjynBR+M%KFV?#H?5@ zZx0EJ@z*-}#F#Hun+IjnrkKbxJLD_R!(yKDgM9zzLNP9P%l4BXAKLFBf919Zp01F; z?!8~EUc=E0{@oUdIbeUo?+=O;Utsv(`9|c6-;8#_kjRBM8y#B}iZ!sp=oFbG zmgjDx(+22*ib+Q2L5r|1*+%D+cZ%tM#VBgERg9vZMo|Fcc0SH1dhZDE?JDDh$}g!Q8RNZropIS->&1F*y>Z!n<3u_p?=27Q}G38CuHDiv*hqstni(VG<+mlsm z-Cb+uR)Nnh?QZ7voelZ=yP4msMy%Bf&HM*}pV=GDf*%`2j@@GJ@y_02-O=7W$TbM- zUt)GRFe1jiMP`TY7l}FLSF^AS*7u=f%))y>hedCjh0opq{V~%#vNz^eiFQsztoLp+ z`<(_ldv?3oe;>?egwGs$JoszJp62*NfZxa0o8!9`L%(h{Cp_O*j5E(LC*C{`eAC7Z zUJJRhwBD>M1;6Znf*JnibFm&-WlkF~OstO&GSB)oCg!HC=7sG>iup@h^Wxh#iPgTh zIq#-+BGdbs^GkP%@xp)1E0=)}N+RY}_r4~^S!2yx4&EllfhU-^yFm9>Jzy?=yRFE= zkIW_4t`XzN3UgW4^Tar6lKJ>reBbXH^GV992cI*asyZC&@E`M;S><2pWnJ=Ff0lcR9@`JO*GOjgW zerCQHtxqvueE@LRoMXN{^H?!IS!TXl5fFLdQS<#yFNhp-s`Tr1|r4Lty88 zZvN^8y*+b@xqS%a!K&kCnx`69hCp2SasX2gC@GgeDYVTeNWhj6PH?t+}u~p z3r@2-p79*)!zothuL1vaKUzm+wH2##j&<}Y25hrD>$nM+_nB{5eKx-(##dTZZK0n&w@QB8F2?z1StE}Gou7HQHR0y_VUK)gO?>W9 zF;1Oio!;esu?}BnO>Vpc`tuU2;*LpTe1EwWyc_Fx;m=mpOW^z3q1Kej6@cdwtG?F< z(03nN(Y$lSd||jXy`n$#{`qLj(H>!)dF%aR?A6UW=b^>mqfXXUU)(N6_)Y7EOUH=u z_)P2ey`g8??yzpZq>IS@4_b@*hDA<_T8oyh63gYc?zsL|=*=apHH4}xBPzKiwLyj(G_ea3oj82F|t zX1&nnQ87mLwO)xlDaNL6tXJ+EA?9;)tXHpt+_@p!dh-ppNO*s1+T zvCsOdsz!{eL#?mEUqQcltzWJx665)NYx^rfv0f>(ej9TE?oYG+I(xpDAI)@`H%$`x zdald7tv&Sa2QGK^a52AmM77r9jV|Ad17OE|>}u0`yO^h5=Q{B5keCbicC~$ch?v(* zaQO>P7Nf&zmw!b^$d_we?K)vSJ~+?S@m0w0h90i2mq4E1@wBUG4diF&4%g9NRf>_l z)^+^M(?AFLt`qkR!Y^6nIb$$qPu=Y{cC68_u z>&QP`^Bw>^*VVcf)LSB5{?B#A;2T8F`B=5)&`(^~t}7Pnmd&o~hdeEEdVkfL^Doxz zo2RSRnmWgI{oL!}KfI;e*VpRyy`iq_7u^rnYJuy<1*Kvg`;hDA39H4N|G4YcBW8=$ zxXE?fzf9QIXS!~`w1b#!pK~p~@FFn|INWvjQFv~|RM*|dkbf?6-Cg1mbA7gMH5x0Kmb#XfZxZ97H(mG6-ze72=b-&mjMLkw*8KSow7=l`-DrWg)BB(W z|D7H{`n?PyYBx~i(*dqk??Qgh>FIiY z*fP+A&-MJX1+a(qbiI0Uff#T6=vu$y4&bq;Ys1}}q1TUgZCL$?$eNX|H+n-4|M{_N z~I+5>lodBGu8FZW#Es|C%E2w@OQC3^142*fLwU(A=l?;b`k5I8(m+w z2ORfZ>iYV5_@uKVuJ2|;Z_aP+`aTH!zP-iu{kr)gv97MIw?GcHf712SgjOOwEZ6Vh zy+EfuTz_OAD&}Jkx&AK~;}3k<_2=ttp|^|O?q>?b{C<>bt;Zg6XXCqU_qjdi!DkcrGl)G55Pq+X+4P)Q|4TJ?DzCZyR^@ z)}WZDMcuXipMZQG@2(%VSd5eX?uK&6r!jlDW4HGg>Gr<6@g~6g-uv$956%_q*4NxK zj9bOHtf%|Tt9}*p>8Nf$e9L|I7RZykzH?vD4|1U57S)=g*19ja>m4y}c*cFH;@zI*<6@H6k*$Gu<@=;5$w?rZ*9 zFV>-^`-UHSVqW*74T=n#@4o#d(0lEV?nODziTP$H_Z_2vmw7|ncl?F_{-aiaUh9Ps~pOWbQ0fId#Y(Y+z^f*7Z~>3;Kd z$dBjtb#FZQ2+-Zb?u}2+5$l;-+;80udc5;}_vhWwe)*;Qi^ty+W5qe{Z_jxhe(SI9 z?Z*{}wfE)joi}0J?LD>chYCbF$jL3;lWShOEvj4;Kjy%_{6LTFk+hW))7^B-R_( zW*xD41m z8XU$rrQ5QGyac`f$F*6d3wwcYhG&g9v=Q>{+pLl67Q%jgA#3~{c<#l0vnEek2!A)0 zHF+lJzxw#B$qPOg(_NTV+50Fl=8jaYb?3jbszD#pW7MMuN0dn4=Or@<$&r?M^`41IT9o2<*% z?!dZ^&RWn1->-3JEqD%g;=+wtS6qS^*VuEi7Ct;cjP={Iu5DWh`uid4x;^@fQFc_; z-5(DV`L!hLfe#RGSUn(X#i_l-c<-{Tl_zc$tJ`B)PySUZ)?HU;t-f>??ADL6UhaG@ z`2Mb}m&?CLd}4amh7*23JnGG?4QG!LS@1#Dd)Hqr#-mHK-uwJI@JC_Rho^o3|Fk^o z^RwR(>)I7rpRapV%vHZ$`V(_Q+k+T(VkiVsfHi=&8TeSR?zRie$IC71Yg!4o1N8rlbDTnX1972{_)3?vRj`z zMvU{;W_P$}4fNDGx_#r=?8E-m7I06_?s~+pkn3%-yM1xKm>2KNF3#Tozk5*jfUkcL zbF4di&^fRVK3wr zb~*U6S9S&Lc=P**vMa9wpLBdSyQ=Ib#96-0u13tmxaW)P>Zzco!gI2xVx6tqdS*}k zWGCV;HQ7@?2c4d^G<({T14Wknk{v08ece5lJ@Z?vcfU)s&-&;c*jwYX&pGN<#1|%H z&wUL3UdPw6FL>iT_<8G9YYsg#`;u^9vBI0PFYgXIefQDqE4Cu;^yQ=33lBa)%+hw* z*FG{H^WKzw!&mbm9}mmE^^Xpq7gzS3v$5V)&t>2FPN^6_t;$}EeyxQEWiS2{@}ld8 z?0bH?1p0kd_JiFZ?~d=D{m>TJH_-*zkGv0kcuN25M+?S_@zM*~Puz8=7!$T-zcdc^ z>*aT6zk2R$u`cvvZ@2;S{g6|#H!SjswQ^wg8`l+x+L|<7nVvqnZ8T zNw5>jc4mJ%Z>Lx})3d+K!umcrEqil+_=hL|sao@(7qY+eUx2vOS=m1>+#hz|Puahf zEfsUZ#O%LLb%U-NbKGtAKz!=coUDO>f78;Oyw<==#}zsGRXfGF@!Xs}Znz8ly*_7; zO>QwJ-I&wnQ_#g<-E;Pz2)@7gubhJ}o-eXvZBE;jhlzQ`O*x%@1|RJ8Mov+Ay_n~I zlhf-$%;(5%IlbNm-j*JkbNJy~MOIyvbJYLs5ZU^SYE5@Er_T>_#oRhawbtrwIsLOu z#Ivr>DPFb|e#VrXL5L|Dk#0GI!|T!CjX6UuIs|dJ>YULxfj{5-BxiiA403ctPI(>l z(@~L};A5YOJa9u!^&V}->K@Fg*#x-H_2o?OzaIXRm2+m>O=1gb!I}&m1Csk`c zT9dQnjw2EO{v>DFmtTo_+0i-o=6{9wXf)@(bpzlBw#s>6pG_jaY|DAzt7@^{e>P{u z!=uD{zE{p;w}FnAzL@i5hioxNjm~*y-Ya50bFyl!N8iXQne*D`|AxG3pYyuGHk9+`^=~0gx;*Ej zQBlzQX*pjMb^txB&e^;-^zCP!=KqXKQ2XoH=U64+sIpCf4!9R`_xtNGk?zcqh!6vT|egh z0sq$QH7HkR;(ZyH>z+PaWd0Yr{dSXXx2;vJ+3n`soTCBHIVHKdC)_H=En9N)cKii- za#ZeKN4+WX$i2C(mtx*e{-j#7?y=nceg&Pzy5t`CL!lVAb;~^{P$BYjm)v&Cf!CXJ za=Y9!0rAT@xrMjQ7Q=sDZjb%&{*no~$9N}+`QohHWA3>De&d4NV~0T=pY6{*zHdJ< zMtrAQ^Q0lFwH7YPEqU7~M%Q(@!>f0S{QIojQrNk2_r1Aevq6`$+_~cx1)z6c%bjo> z`01zpRcpO)Np9uAFGJtd){Y+o@y zoSQqdAM{3t%W`M+{{(TO?W(nwcys5x0XWM8x#!&pIv(9K_lkF6rygFEd*i<`ZpB`? zH-8FzUwl;V-S;C-bH}jUr=EO3jNyH9pWX_+7+9bC{9xF-pDfH>ePM5rqt41*^J)(< z-?$=oZSi)@}MxiEL@qUXi@`PkfT)E9&Q z%>C^t^f#iy<9h6VG0vUsai0|x^P(Uq9l>A9=r+pB~|9bv5AV6Yv~x=T?!2 ziahPM9tpiv=IQt|)^F~;o^HP^hMm~k)7@PlR+pDNh4X>0R%<^Y_k_!)njr?3B3v0m%%IUyhZN%cXV0l$aEczLR4@KX3SD^__%^nl(te{avY9jl;->+jcU!dKY1$qKn{#p?5RBQSHuTS^909PVxDxDC%7EfN1lOp1=>eFRrhT| zek0(S@)_j8v3Gdt9s^z7&mA`wh;eO=XYrGuZ~s=$l7oPUva>w*tk_qq$332V z-o77n*vqr@YQ%3IY43TsYLm!~Vb8Amp2vTB8-Cxto~OPA-p; zo}L$j9rb{2S3m4|u`mYz^?uKbD~2GySLaz9L)>EG6xEvNR;kwdu-x(ih`;!wr+rR21=8sc6zZGqUef^Q=_X*oT zuLYhz2D*T^kmry0@xAu-JYyU9>6+Gg7T16L;5_TG*@%BF&vOyJ<9vDEUvU41b$M;h z1HHa@RNlV#_7(ZIFzoyYp?anoMMROqULhbX4u0sEXd*}5S+*V|2ZC;OgTgBM8Jg=v52XdTW=k?qSz4h?; zyyGBWe`2Y<_ZWjO4=RTETe zv>lhX)^v&W@Rxb7e!oeq!5`$kHam#8uq*HN+sS`_<*k2rA>zJQ=e-%24LjrPyp02a z{~6chy|oa0SbAOFd%=hp%X9MHUvsiZbIF@A63-OGANq_Wbx->6lBV5N8e=L#{u?cV)=8U(qs)$3n_ zbv}NP_fT(0q^PgALjd`bd*1RMHf=ldOMY*cDIb8}hIqSP2fAK4-`o9I;P0s|-tKcD zk1p=*?N!u*Fv5qVE_Pz#qKJjqx@sEuVsruP_!cySr z);Zqd)3=L^ILBLj{{X}n7kCF<^|qLo+~pm#V=>w@470#CtjEV8d4LHPd1D?l{i7aNvt#ESTrLt~2=X_debmmLpEK{w43CC)$Xy za*}GTCntIDDA>$Y1tBSqP`(6}Ty~X={_n;ViR(sbRx*Yc0HQu$i7a*@$ z>wOJzAUWhB@0;sEcL%@V-FObxVbenI`^Q3#EPdJg(M7=1feXE#tj4-kU*!GtGsy3u zBfZ~0g81B71*$d2kM#cV=~npBe|dj;xCDIoy7%{P&%Dd4_=SF$h`dA-#~xI=H+|a7b2dvHGkiH=%dZmsXSe;*d+LdBnw>ZCKJm_NXVBP-w0$Rjf0>|c;Oo06#n3+HL zI@pt|e#jsEHst3ukL8b=`+^vcACNz8Bk1noto&1o)%?*5X$A z^&j+y+|JIQcE%Xs>6`pn!!e)7_ROEXFX;5-W%;uY-i+sF=AXNyo5*Dy^5=A`fS$Z4 z|GcY!$J@ThzW{MAv)5VqmmLCn{@|AU%g@^hJ@Hrmbu(@i^QOb{7e(ib^d6u8!29h) z%5Tnpw0m1I-yW3z#6!;`4!%Br)qtI14PBo9LYsx)TW|iFo5CVH+vTr$^<&WWU-_?i zkthC7hx`pW&@U@j<-c(>_^WPI{^xV*MYfgXf4&fY`GWrWpMSCj{Qp+|w=2I8BY1B9 zx8GwOuJGjltMw`|#)k6$e0e?W$9MDpeD8GlIWzMAbHT%ipWRgep9%Wz!UC&rSgg{9 zf;`g8vCkIdZQfUm`6m_l27Cqm`EEh0lFvb(B?WsQfcIZ93l4rC{5Svl0>1@4F#nr^ zc58NudEu!A?a%xI^+Q8dYa9?M=yoRTg}v4m9NoPD`fEtR(aQn6ZC=4~Z=E2>sWcbxG{ z!RZ}ch|km%1h#BK9<5J7O~pFMxgQIrd@)I^m#!KzY`ba=e>Y#jq8RLv z>Ar&3kVm=Y0H4o`d0g_M&sW`7jJ@aiTActqOufmsPbJp3@lIcxovTEC8t2=$E9BWe z3w-nqwH ze6#dnU$1osi)nWA_51P>_|s#3{eETpq;E*=3czu`Z|KBpL?%!54V`m%ddyKM*pL(^W77gF2>f0zGc;rPbDjT%Lg|?-mmxFw{Hmc{sX@Ij-7@4 z#gD#+ceWO}be8X_k}~*hfB2qy{6pZeyYHp0C1R|(&i69nisqB&_+Ep3D?88gZ8!-0 zJnwej8(nS{Bd3FE%`Xy_)ALajoyj?5bMYWhcyzDI;lnFAwLHtAeB<2zLiToKF?C08}M(5 z^cO$=MsR(GMDc6{-y86)QGFUMC(AGip}!!m2k}G>nRN=3NxDss?ef7s&ISYQ~H9uy^Uc#zhUQM1+A@Ea#@rft?Tddw_z(|}~1bx-v z4|^d5jjC502l^?(u4kd=$PtJgzEi2*DaTCtjq~MP^o;z{8`p;8i8FA$7JmZxJ`(Tp zc|Pe^c-L=mMt&KKeK^B(*K0b)Is@PI?3%8K?n&PzMR2`HJrT6!=wGiJ@!`icVwKcVfhY8+ zx@V53>45K(Za8;d)vHVV@LMW&qmsU|gkDn+@!khx_`w+*w@Qvjr7t-q1_*kC9*V#T z{8I=T2m{hWyc@yiqNGtYjTPZ)1FjY(IIcaY=%4C~v>8Bu_9{0Ibu51P-z3JRdSv4Jfk+Uf0NY!EVN?PR`_I1Au!F4{t zUNz_K4mCw(nxY)ON$KcFT6<-Zv92kw<#%kHrb@6rfVM%+m~h7+>B)hla6c%Wyc1LM zID}aSK{ZjxH_D1yRId|?Vq7IRrAzi?nXRATzk}lRG%Wtf4{bsHP=@#G(aThYQ9Ux( zFO2V8fdD>}3yTuaQUdRqC#NaM_3BLll#~=U{)!ar|LfdS`F7XirNgc{^?!w+kD?E1 z>U4Sa&tZyMsREeS^E(os9N9@q4@0J<%CrAlnnyc{kjH&N?XN=Lw{Et=y% z30m*!*^kC|@-t;CZ8UASX+9pV_?h>H;uGy9t)D4T*&Dguwt}cPDP6SvNRCg(T`~Hn z#Y$;T8^aHoRIltXTl4qBJ;#o4q&~IUk$9f+z7p->_}&A5GjUZqG&x{ z3G1qF4nvMv*wgfLpPE=*ZQnjM!9ZnE-#+E_m9zTxY3N(h-`_t{KO-89_^aw8{?R87 z3&n!|P}Cm?`|BHmVSlu~F;Wri=C6tbgEIn=pnrNO+8C(y$Li~A{f*IJB|iBpBEdim z4^;-Eq3ST+t@H;gLovI%%0Mho9*740RiWBow6IT61BV_G<2dD^?zN$cV3<8MhARO_ ztS0CmUVlcYwl?4&*;tOd{$ctF|JYz88mbTbdv)^%qW&4d+FG`JVNmH9|Da$v7y)R_ zymYu96RZWCkwX9Y`bK{RrdU^B8LFDa8xa5;jYUG`jhufh36_fbFy?|`qyG9T4u*-u zK~BtNbTH`e6Y$qWf>p=2uZhJPdKVSVm@%WUI^0-TAE_>~pD(Izs4e6|wC}q+PxUDZ z^i|kQ={p+lyiOxY4KRG(&sduZ{%j{0+51t}LhmNCT~4Rm$-(=nuqtH$h2sS}kssYl0)( z2{bghL!jb>(kI%0rHaO8)dr7m4>AqMx<^B21bav80=2crweMR-c%t=HF-4!C$v8;> zCBp`d9Ogec<}U-aP6dEfk@`A+pCWeHHwC9a>9kmPOlnH7BBn6fzHdw8##b=yJ-c_p z-vZ!$$|FU673u62M3waw1oFr@HHE^}aZ+k&oXmhW)7{^IUx^G&+5pB6&Z?u}s7xjp zaJ$B~X8M*ug-{68M(ZhA^eT=H)lT(?z=Qs1Fy=3xp>VKG>LaFK(~8_-wYT^AsFuL zx3?Sxv!_Sgp&I~Whz1n{bvpb)_cc}Z(^aIYO4Ci7R@yMr4z_-)5oV2JYUv;vO|2^Y zp~+LD0&ITy4C|qTS#~JSSrHm=P9V++1vp_pzDtvj?suay|7f-{NR&PY!b)ehP#JiC z-&AfMW24YB=S-8GqtcMEodAZ!_?dTT2$Rl+rbyBRO~S3f zFF)HMqmY7>!3qWxNyj#x7}VN=_q7A2*N{DOHKyU}cdDo4*|lhN8cQ-8of(wCj9{p` zCf56?9zCGYM+c?{Miy)h)-&gy9l` zMHz`HwS>3A!5OgdD(WMZw)NQ(45Nb47;T@DU{#>8HWp2RClbF&fI?vyhp;-Q2WlIk zlR~tQU<@`@{V7u%%ct!=E9z?->%zMWS#cm-5v;Y}Rrsl>t%nV!?6OKF>w&gd4J5xm zI5Sw$m_Wm{#$aTY9;b<_@b#;#9Hmf{q%KaBelkUg79GX2Ga0)rZW0o{0Nwjbu?%_) z3i^yAu8>z1p+%vLoE$<_{sbY~WUQ}~9d(4dslf1~4?C8ig+ONELGsseOnqMqV@F)= zp0GI~G0UO-Kr*x7Ttpk=A7%tJf!ZVklT{H2=r#zS!zLR|!Xet=n%+)m7DL@sR8^}0 zTd3Rd68il*5iYEb?uU})VzI!MPSB*U5X|{WY(zXEE$;l#Hnrla$p#-9h+C-zR zx8!1RI^bXrXTW`mYl0P1{WO(gkw7RM>z(WG(6jk*dth8gS7g={Oae6>X|FhsYFxH3 z%#+Ax*=rt!_;YeHq?7dZ*4Y+LGdU_wEH|jhYl`HXnNh<$(6Bg?sPY-@X;5lO_pEbf ze4hpd5z35`&S+KRX;Lw1oMst-07Tua!e&WgxeNddghJ;O$az|wYqe5~6JG)eIYFFs!jp_xah7~9 z*_g6vmbe+NW=1Zo#wWhXxEixD#JL_#kI|BG)LT6G0}@PN>8Jsb2v8HKtRx!Z(%(Nk z7>x$15sIKEn9vx(aCImgL{Vsmp3P#RGvaEsU=2V1Y8GJR_ggi;%!IioJZR{(uzzZB z)~?CYco3Gkt%Lsg2Us)I#IGS~J;vYo`l#w@_YrKP;6#J^fF*>)=vF8aP+dIz3l)=7q3 z&sYaildZ^P7D~6W`A+go2u~d>8j>R4v(rBQ6zKR?`p8Th55pga8DAZuHNMj5;5Mpq zr2-gViZ%o*7+@lQDg!~eZv0k7PV|FG!?6%P(`QysmBO=)_fqID!-HkB8te;rrZQ9k zt4F)WG2YQ3DcxP6ZLQd%f&7iIRzq!ImNP<>BdBN!gJ-2a_m)ip64W*eg04tuqNFl>lJNk*!1G)l~!ZIA=oiVa;oZvIt6q#Hc?Q(B{O~d!80~p2E?>my;8G|()BtPvSrE7It zf@bUI6^nTnb~xH?$bER7ir;3}L6jbf$a*1R`NljVD1ZF0APUY&%pGGiEJbHxoGCSlDQ1VJIvZIJiHr+4fODJ)c>}nwrn`DPDF01^t8rZr{)Ljh& zy90RyPzpQLos|b+%Rn{-rbA;lODS?UaIpJ-sF&;#B5kNN#MzJZ;Y4VNCDI95j=GfQ zS0t`AxOSRWlJx;8g!;oSli>3-@V-@&ESSLWV1LH{Ml~W+($Ih)rjD%ZX#*X=TC%Pn z5`!`Na1>d2{hU`+L~qsKz=hV*yN?aV0+^7ai$p9E59C4$F!Cx5X)Vxf(emG8X=Fwu z`O~pP$5!JgjueEQ>l*4Kfk+6n#27IomqK4gY?Ui)b(ayUV6M9=?I70#@rmVk4n6b% z1+eslawCWWgCazIv}jLSV_ZKT*ORFtk#dvnet-87-Td9VV`YQg>l;-5q)&CEzOkWi zQJ*;YeUI;>pzWIx+;ijLj!J+_bW^Mm+%T4AR?_m1P^8NzY;tYMYSu(gUBO`GEWEGZ zreCB&P6;AD5|bIl$sojD*}XmtWb?lf%n>HcXxK2$ZRFOJ&Tm4oH^wJblb94sE^C3^ zOkCYBDPpQ8rWITAYEc`c(yC6M^SUhu1NclzW{Dd6v3ZxuRZCP{Nldp0)2-ojYl5{6 zYNqO+(U4}aJnHB)A&C%%{iT*QnsN0`!7zTcQdBl1wq&3gl>A>wtTVu@Cz$^gbzKpM zZ(3p@s0LZnm1!YPj^CpIAS&teWfrBp9)TDn`uSXPXwgxkdKsgjJSt_fUNnLJKA6`u z&TCpD;(m$$2F%2_WSJSLq9Yt>42S9CMJpnqhFIpcxGFx^XkxCqVvMU`2jpoQM8MMa z><1tuO3ol@an4%Mr#|hN3(2#lNU@_+6d@Ea5rtPRAp3*-N)od@5wneQw#b6|`!Gq~ zms1{~Vt4Vl9#t;y`1O>To9C3NJWKj#q`r&eGma%@%n-d@SJDU2*xxwgk@yzD3<<4< zG&z*)JWC_SS>3-kPp)c=^F%oSX3|GBed7fPTBz$gyFEvmL*%UKi8*RaJI0#5mTa4f zk^ruzzhMiEX6QSyYCSQV>732FW`WSBgKWD%ddKrIRSq$2Lb1R&%3*rHnzoSuLZ>B0Dm-qkEiRCVAuLc0Uy7qnWl4>!sxVe zTskb{BnHPzrWzoKbcn~vwK1wm@vVzNot&N%5TtKGLhK;D65t)szcEycdIJQYI`r(8 zkWfftcj%Q7gp$9xvtX=}C=Q(yOvj{emoX)qsGsT3Q(4zdH1kL-QL+t0w^G|SIyPjN zyQhml4z68fih7+lRrX>6ABPSJ!^{a)#`R@UxIWxHI1?2&43AT;^#-0YBIXpZEsM!@ zwv{&MuC%>v(6pfE0d4ODZ2pn;(P)SgDMhmfBGruyl}CGLgsbWH0xdXnL2q&(G9Lvf zcI8qtlN=S_Wl^j&AvcNx%FG*wHUUG=GiAsGE`4#CVb3=s>b`@kpV^4hT~iAs8D*FeEvKRk78H}6 zygMR(mu?E>dAg;=BswJyBmTN(T{|;6N=?m|Okl(-^`N$20vN%rKBX0qY_k=CUDDh> zI0Q-VKmsw7%b=;d*B2#BHCm9}N8o$1cM!KGVMW96fh!z z;!q{q8h;lh|IC}aJn#%XM#|5Qi&pOw(16IC>|iDqbvq+?8lKb@Ef*`uSJ1jRKl zK^VS{CzT9D{Ui!8Rmmi0?bXsJDXqLe5lI#*>O}5avk!pVV5K952)C06eDS5GXuk=-;#hb zySNc`0v+oz!`LfsRtL~SA}*AewI(mt1JNXkNAVIpw;q68ZO2(UY7pmi<=QkwXIrSq zTF?+fGL&vLsx!X~2AcaxaiYtD!NdC%qrR@XK7uGpGcX_6OlPUz*MME9WQ1ODM^E(h|cqy^q{V0WmC)Jf{nv1-n5 zcR6KPd_;yrZ7$>(dThItBUP6r^bMZ-41XDL(HV$je&&jDKH8tuAqZQ4rLLi!-QgP1 zY-TTvOWWqGHd8gPXMU4!Fq}&+=DUSB* zI$$S zEdVorYOfE4q%91U6T7DVnsNlDvQ!VOhJgse*p9n`bHK!x-8c6>G{w=eXRrF^G2 ztYAjCj)k87SYRqtemzE4AkZ07WpgN6L|H@)2Mzek0~J#n8{m~UD4C20P#+hUx9$96 z!t|Uf{W`M@uY=;5$uV4uXA<@H9y?B&1YAaiEi6RPs#ud~F+>a%U1kFY__0pB|04g!|~QT9&YE`o3Z$-F~$)sjL{1?$$*8V5p*CR zDRPmROKWE?4(>Cf>nKeX|=@Blg%2ANi)saG+2rot$1=Q_qs*fL(q>g9*hU zal0u|(A23z&rbdsHKB?cwdXL-y%dW9TvBlj2#yeqt$I~TKwb{TlVF5slaGt*9Txbs9kv-Fj(gQLu%Eo?DFP|IJ{ z7_LwWah3}ui|Xo%X5qixV1Wa5%^>VwB9%zi zRjEW$ZKCgj5)?>cAE!UuSXUm5>_)#{K-yGoX2)y5ccX(tWgu3g1x`u=FrLrT0&F+> zUy)WVO|4;XMY4ISh0%d79nxyb$27=?1EJI!wl4T5tET(us%h|O1tVLikxrR^p?|ju zs9T`ME^%+u@!ZK;tc0UTqOf6fL3yExh1hez%m%Ol(nScVs^H>otOcD4@@P4*HW;1H z1kN%OV$R^;On-T8efe(mdT1JH@49CXd){sG?yt^-pthx{LoH9e%&boxP{KeGB@E+V zl;M^5e3*KY4o|v$(r##AdcYrSsE01?T!#wIP!t<{!j;j({)VyABS~^hQNoWPaGkX9 z)V?b%vl0LeyDhO|t%f$%hLFLi3}`=L_e`-?Aa8o1^lMpqffzudN6)Z&L}9RVUx)Zw zpt81U%cL#G5$Khkt|NoIBPwElM*^iwHX8HVn?zhJ0jqaZJ^I@dr$f!TduY z)>IPE@HfFS>Y-=G7kT#$-V((QcDYyP@tl=qLehSg>_m?{d0qBRg`u_{N?kd2yTMFc zZ*CsRxZYz_<>_v&cjqJwj#D&5lZS`&*NQ#QsW zR^8PR``kF|J&VC;+Rqps2qVB9QPrBQ@#bjEmCgnuQuJ>kiMO+nnW(Fut~{1zIvAEZ zFs8=9OY#QbOzPd17PS9#1s0jtVS)X*JCB9C6c6gK3oM|c@tT39HDIAI&?R;8KviNg zx&3Of_k|hsUEt%!|6;ozkD#O5tfN-;RzI$?9WP9Fp?JNS=_|_6hA#Wk5gffm%P-ER zz9G$S>Z?GAIf9t5-qP0;cTpWmMg^}5ny5W}&ERrh;F4k_l-Njt-n0Z*brm!)VAa@T$D;q*;AvtAiu%|M!iv&&R2CIOkNKQ@!?Vv&aeCen!x zE7PiWyjSk2Agqp$LCUn{HaIl3E6T5)G3$K#ftC*Q~l%i`OoT^>C zMJ{!`_mOx%g{m-mutlocL#2Ny^wZ6vdFSs4 zDIDHK9|aJb471ZXOct0q`t8PsUA$X{(YJu&IB(77q_@;nYhFYo$A9#DDhr>0zk`Ax zs%VhGNSlxn@)KnMyPVqCe;7OlaS-cI0C-4?0PYfdW1FZeJ57;H^}E7fCJuKJ=yof;BN^mz|SsMuO=R(o$t4DT1`662OU`JY~%EwjdF$+aX$< zV;6WNLs%u1ZO4~=Q|yp`oTC@Chexf+n2fE4?DKqSvN+e1Qx94?^7+3ddk_iaypv;m zlx6z7OJ{sWe|QF&rgfbtp)Zng6>;5;W$P%UPA}0@vG>I`RlPbU;_QJ-)&?Avv$CsO z>|~6M9S6(gWCv2tZP?$&i1xB|YDy=$SqfmUnjQC+-w&&M$dz!|BmUwo;Qk#r+l?S6qcKsi*vFj1&QdMC*S{Sx5&vF30C5S!E zQqna5I5oX$2%4@Ralw0}PQB{RR$8s$DGl`MB=<*Hxvn+j7O-B6ohefHk5$aMO8^c=CYk8RDA_E_kDU=wD=J5np$HdtWR6-AEo)I3Vs#-U=Z0cA|$+{RttWnL0qk}Eh!s_Bq9 zL~IN28|ARFUE2cK&}&prbyO5Hn~V@_5#(3FK$(0&*sC zND4%tV=2;lp>C!VKr6!`vj2VwoEfmB!1HZ5P`F)BPu8=V3`TYC&?GT6+cQyky) z2qeDr!L^m4%5W#BY<12SjuC@~jn&TT#-f&T$YpFij`5tb^2Vr2jWt=vGvZiqR=45Xmz5SlFZ*k+OC=-H;oQC@q3 z97%|&?CZoMyTm78LmnuvkFb&zwxBLqMKPByzgGdrCh*7f)eYQixL{fPZ8%OJ{rcO=f9R&ZqL(^##OyNM3!s_pPG&5n#bGmAlPI#&lV< zNg!$CW4u=)6AjSgv#G`b^pYDTFlKa1Mj6SL+Xrdi#9n1 zqyyq(F&oN%?tP-2q~}lBPs!>y)LP|a+Hqt@XozDLc56qIp?BJ1Om6E?7DI%Lig0g^ zzD}K<`D{0Jz-dAutkLIFD+=Z=3VX|%ih4z{%OhG}5kkRLr5!P3cvnRbZ8}kra9pi} zAA_TerUu~)l?N*V_~iw?F(Xb_W>I-zoV_xEkt*1=8rVI{BArs4JgT!$WYMP7aA-3VDUV0+ zo1e+hCTOR){YIfab5@XQger|bgM;d1m$zL!(8mlKe@8~`25yWspypm37#%;pCEfAm ziMKS-9DCV9yokiIM@jkUSfsH6rToF+I1sN^C71S%*CLT7nG&_blg>dB9+i!vz*c*| zGI!H<*Flv8S?83*Wkd52wT8*ga0OYL#l|$g4@-359fJHMEIohc4n5T=F`40M_L$(z zk9%YUC_goolQkldx5@mH7v86~U!f`!0A`I=Qmy&h1I`S7dzAs=zHQnvoQO`wXM!oeEE1|l;b==}-^F>$nSp2p zzeYzznfsV}MFDM@1%Mr)ORF)8Wm=@7NDU}3-eH+M6se;@jXi4+N-gelVOAUdX^&^w`b4jEZp6hb?LP7Eo_1+;m0d zc%wA86BRm%)orE5QHqKYD5jM&k;;V_ltxEAk`2lFTq}^|E81>O_61TSp4^zF%@Ud~ znqFvuYe1Q9Y8vylZAd4^bBy}=3>|psjUXBhPmjx(3hyufef| zb*@aSbd2tkG`T1W)ERMxC`jNaPYo7D;G&`?6LQjbFxjXgGg7;$I6|T~4|{V$M(Mzu z2Vivdy{0JbR}u3m-QgQC<#=bhB#kPap$Hu`*9FIVEs{_6*S1coMWfwku9Z^;(ubfr zXNU(Xr*P9CeGS&-pdy85%Gxo1B0U~%@bf7AOqeQwhNMZDE~>Nohr)qKMsnBgy*3Y0 zAx`N^84$^4kK>&>#!vFbT?V#vuXbL93}T;TkX&_fmwDDP0` zjt~B71vcd? z0luILC#!YI1Z1JI>U8A2>nmMC@%J`3c>40{0C6%8QaU-@*EDK~ zx|0Of+Z5B+BXg^m1xTUFU(%D;H z_2TH7P*tpJai-V%%G!h+)zrf|b8#tkDSPQtCKn1cqhM)tB^<$K73_(~#H4Pc(JS0^ zK!RaA&6za%!2@{Y7M4=QB5^hrj?A>U+;c&?^VbY_l zq*S}q-KvFVT9$IU3eYpIx2* zn%;FUbn6@|l}rc}^3EvUwqljT}GX4CSjy7!ePrW3;$luA1|9EpIa0fOEu3aOT5iJ0O>PlOm;JpNz z4zxjGr z&?>X*$yqY3TmnYr zrO4kyqo%NAG%{MBdezS1v1p+szcp3k?;7R1Mz&*%4&4WcX z8PT{;T;V%xmKt};8OcCKvq7V>B-v9UpUI$v7|a<}Hq6g0a+yTNFxYraLo1ranFyhf zsKQ@LScXEm#JT_=#qdark?k{@b%3-xa0E^jl9AY%&422qi zaV#h2sqME+Qq!SUEeR93hQ#0pbF*ZEs2oAZKm%jqnc(rLIC$z-Nmp}p@Gj=c^-h;c zwj5(NMq7l`%$X*k9lfUZVj+4Rg}!ODQd!v9B~}JH$5zs>X{ly8)n?OmIHc5OqM5kk z6sk@rqvJzihOJRN-HOFU*bIdqJK!PUFjNcuqfl+43MYGEw?fA9W12Rzc(9Z05u-y@ z#hPY#n!TGft!=~F&NLIPWUgw3AiAba^f_@rFfuqp8)uhvOgRFLEQ+OF~Q%N!+ zY}d-#yH1>9D_umc>o#b~FrL6S9NX0)501f^GHq>;PDkIoMUqv94T}X-kpP1rN_PhmKd3fKi&+M35|7oZsz1A^ z1fA%gt4_Aeo!|Kj|h6h zVP+#L3XW4cF$AwR}@RNNMa(`3mced`Zj9Z^=%+(<#DYckO z;CClrK+N%|8G019B(tT5o&{wbrGv9Ze49CT{iZV}%@5w;OdY;>jeJ2D$R;&L*`t1J zn^8MP6fNV&bg3Hg5U7@?f7>T|wRp10V+=Gjel8ik*vf-T z%0;G4z-Jw$LB?_%x8_xb9zhHE%n^ViCT!DWfN=zlxR1E1K4zkyRtVe^7%+0bf z$1k*%4$H%6(W_t1Q~l}h`UjG44thGwM$GX# zDM1GXwRmyTcI?r{FIl{0v1&h^vKr_`+lQLwNE@kwt4UH`!L>W{qcG8w%@HY4qG{p{+xN(TVm`!GK)heEt)xx;s}>lRhb@s3yNX{lme1d{xZWxDD0}~oc_U8PM6(|TH|;}yN{*THyRGpkY?AZ% zPNg2nl*GVuGW3S@vyKSKq&1$YO$m5p@}_=Km}3elwA#bw)-6lgvm!S{4$K+N};LjbxkIlpG9RQgYaLwC2&0Fnu>$ zW+_3mF^ua-np9~?Njwa&(Bz?M= z3nYihY?Dh%PTPRhjAUB~B;QmsP!n`r{Hpzy4YPw+_D*wDr#atf-?%=~yOqlOfQ;gXNsOPFusqy90^yiI{RuM`iBETR33h+=e9X;w^C+YsU`kBuy>ai!&ijEVkCNt#eR zeq9E|lnMf$yp^P)3jOM*>jV1eN?PL3S+h`j;aI<;}@;cfc4uuA5e#{f7HX?A~7`>Y{1hP+kPZIYXGYN zfE@tS9!CKY4Y3-W0a;z6x~DkAF9&NJsVi~3)>lQgE9ADGvTu z6EK~4$QZ@yBoG>w{7d2|0cnTA9-D+nC!pz%AJ_uT(OI^!Mn=gb(li6v!YZkZ0i#lQ z>BBN~R4GBUa;73$tP7XYuCaH_Fzp@Ee&hWl)r1qB?B737>&Hi!DO6M(Q539KG9HDA zQ?~tc!R#s1>cN#7ps*EC$J1+8rN}A=mgo-XO@b6!T96PE=>j#i7R;IJL1p+o7>C)Q zT;s)HoIyrtV*da%LsZN`#~bvj?k>C?o4~7UAAstX053)O+SVS)p>(ZFGLz3PjGly{ z*tQI^Aaf|4OPa~{oAh6R!WGX%$>ghKd?s&f=)7ytSozd^-S$5Tq>j<25Mcs;9a{oY zFKi|}p7IakQG=MCq&c)D;F?R`ME-Hm${^(IP-PJoy%dbkozwKxm8MT%w6GFqEiFXrKJgsRf(2n zs(Q?2X;!rs{A8eAS)c@!t|{XXPSJv%e6q{hQlONGp!G!yQ}@Uat7hNKYRXPaP!iF~ z)wXEUf_5F~q}6D{WA~a`Dxybr!k?6F8Yb2!Qs8Qv*H)VhygETtKJCPv?1-K=7r1>} z$EWO{h2+VR^cNVO)v+bpqtSBJ7FtcqG6}m4K`L=+kKmtL5ACHe3dMD`F_uZ*YrN4b za1Ls>ZE4Pq@96xlep_G3glGF{KA}g}&ocZ$>=TE);wa*6%BD@RLTL?m*8vBARWQKK zWbxRsHcgZvn!FF89Ki|{3(#1M2ejcoGb)Ub4y<2Q8%nlhDJgV*COpwGkJtTn=;VJg)K8V3!+^CVesi7OgVeGAoMp1pw z@K!7s#fFK@_Jw^+FY6LXm=2N9LPVG|A?9+&;b(&V<01id4s^N%p*6txMSdf-|Z|Y8H2)LrV39F zQ}1T($zGrIzIdIz)0z+AeLaG9gl#dC2{OKC@9EcP55!~}`f%K5`)$s&EG7Y-;!gXd*KxQPPkhCRUx}{NE`4RC zXQYucBZyFuMWwqy2! zhZiK9qX#9pko>V;7{Ou@1cn3bADcyD20{J^ zj37uBNWPzY-nsX_SNByHDao-Hwmj_as`u_a_uO;O?{hA|(JXIj08bW^_%Y2=hgXc+ zh^=^DpWLYNYZFP6n3u zhOrJk0ghZuTvEz2M%H}QKimkxPh&w%i@*w zURmnaN`p=~%0%dls=hhB&d2X9U0G6_$k0WjYSXN?eCCoe0XaTQ=-fB5n@?5f6^P9` zE0wl?=B36-X4{U)@T<;Wq$rBERa0b53|i#?Mc6})AhL;XKK$WO?S5Kcq0TAa*_@!e zL5fR-m`FpknUQ*0(D=M(LM*qVnT^Sr&v!lg zevKd7VQd;^_<%iMv1#$(zVkHKhHZ2t!9)*AF&)I9DT9|XAbaF<&+d!?N?J+-Y5bbBdHauTm2DbacjG@M-BNT>hhz$cAXEl zRtIaL7c)kLnFV@14r+~m#7B46L->>Kxa<9m(fsKXTGI(z-HEW`crz(cpdgpF}{%=3>)PZ~2a_@1CqG0X;bo-WCr20Pzvg~qWT*In&f(|CE#u&^5} zm}#cu-sgk>PWA+Hh{%3|X{JE$0gY~@IxAU``(q2MpOd~AdM6gicjf&9ckoOMb_p4!t_DOGLs5)r)aQ~9sGDa$pY?KpTkrw+cJwp zqF>mX$uR0K$cGWGe8-uQ_Y{m>{7LiIRr8@m)jM;s0dq=G&uekSgzV|D{>()bzZMiG zGiZ{iDF*N3wm-fgH_TvD_l5YScEzC&D#T{KSR|@;A`bBIIl`Z&{}qC2EnMc{M?+WLCDSGBk@N@bl9<$9Ur=ktxr#q_gIOVAKcL3d_c zDETvjpnFil^$DTJE-A;WyH+1*VY2zqFs=yM!G=zpQ1hsbnT*?}7I zGxkKSkDP~PwiD_L!FIzXGp1|Az27fuIA{?+=!Xs|rRisXtTrP_EojrB59?ekC_c5U z39o32Zi(%#O8#K_U)JA*|J~j&b01lf>0cyt8o+XWt$3l>mZeKxs=4_ctoM;?~5A-t^(B%1Ld5enQ z{h;?5X(WL!@Y+=_dK#=AF+EAd%*aoC z76hg*T)MjS?$Q;v1^N^#NBu0k%55=uc8o0bO4@b8_q&^VB6%5`tn`rT-q;=X2yaC0 zQ`i@-A@sWtOC&Y(^7!jQP|`Sqff}jwi7=qtGuOA2Jh;)yDP9VN{ie^O6d~gc?br2N z>e#p6$J^NoQG_Ch)+L}CEQ0cAc-5{^EWY-TNbpj8{DDiCTA^)ip;sLDpvFbO9@kHD zKa#KIu}exA-joH`I@3eq1eX&`mw(XquB(CMs5C=nc`CQ5 zNVrPeDS+~6iFl?o<9W~PNbF$ae=M;L4q=^LEQk3SHL)J!%g6QEq7I(BJf>v>Z%b+B zU7T&x9`>;V9&!HLRom@e2oY4;YsmQC==aq_1t;X1lro)n9dPA@t3F}SQ@Ivao_vaa z@av!h)l-nH8!w5u#~#<-OIKGg(~F>?>Y$YN|G zNA>wz7BQx{Y_4HHlJ3tg9+;Ek?`k`zvH6~=?kSzZ?0ZC${4gu;eNf?>*41EzHFcqf z17mG{<&Q*v>jIk?7A`UORCuT1agms+#$e3|Qk-oF;qjBr3AZac?I|}V^OK1BZl`^` zC70Py<}I)ha=~fyCvlw&!cWa><(-Rz%yWxw=cW#Wyi`QF<~!A~2^Vw7T`o^mxNlJ| z{1wl-lb%s^2X>Y3@MhNvs=b@-uB-p017YYgu^U zr+8>u@NQX;=FW8U9YvvSlzjh<&jNRnmMNt-;kaiwCT0S(Fv_{%Vi5R#Z2qvssCOtR|)IRrM;<;5S#9rx-MhwKhuCltewW`(7T?%1vkXin9mhHjDT@ zFmo-garRoP)_Wk|*7(9Bjcm2%;LqrU_?e4VV0`=Wj|aLOTZYpWd@8L|KQMDRzA}55 z$8_5nrMP%(vz5FoUA`-`*Afj)cHRiOi1G127jdM6-5>65>AK=rlG{G;12aeBYqLit zJ$EcUcWlygZ>Q(pZh!7I@j8;Yurf^FHT4Yc#v+Fza?^xUO!QDJeOZ+kYDJaK!IUdw z>@Q?r-!iCg1z(Fd8-`7IN*#RISj6iwY8$glBc8ubAVO(&fm@1iZdPUsxv}j#@KXtV zn znmW~4{y97lpmI_3l${wxsW!H`r`rTX8QI5bW13!W`k3dtvs^NSmS;YSOE^@`5VDpP zK03GjQ9Ic4Q%=$BAo_G;5-&X{FXX7GgovBPT5?t2*h930<01~qgWr|ccGOosMo-75 zeF-lF=0*e;DFZ=_likyo)JX>#OME6o2g=~i$y?8OQd=TG4}U0mFae4y1t&tO7CGO= zro{*B$-YPi>o+R%(-P=(lTl?#==Mr9ksyT1D>+oVZxIVC#bFOz&iePaqnF!0FlCNuC-$hXd|Ak80-Buil((v>8_vp;8=}4t+?T<_L z-9FX1c)oM=*Q`x@d92rzdub{@0hm!3@tl03-_FJzHpc$i$4b)Mx~1E9&RzL-m|-|^ zj{7^XkN4vRonOgWeIkuN`ItU1^NYB#v%hHH)`QyC4|SM5CY1tjkEwC)j&i%J&|6s7 z^3T>Y?ch?2Fm=`4PH>aaTe_`lyq30(1(_K4*Q3Ct#a6vnJu7+A7*-t^Yf*@|3i?cC zP9B6quIJH_1B>b?vMzDXMcA#QzA+_FEnU|7c*R%cEUo%E76D%r(c;y~B~BhsL)kOS zndq81D(!n%Eq~`S>Fd>`GG3_ARK2y_U)2qHt*iWE0?#&ym!<{M&*S-K;R&2*zsR_LZyo>MZhPsL1 z|5S$w%h!^POqW6Y8FK7M8Jg^qx}9#{xLrVicv5?jn zE(r3g`d^X?#{#@mEmU|sdhW{7!quhD)rGScmpT{DcP@Q+wX^ieh2^Wu;cky2LH=0b zdAofRjT84GI77?Dqfv6p^8Hb%0tRwQpK1BFnWU7+WDax#J!h2Rghz#O?)^r-=U+ZH4=zxkmK#VulT zp+dxQy?Eur%ZBMtFSjZ2nULR(?ypjZ`eus`g*!HBQAH{sedF$w5@K$7Z~1UYw2DU6 z4P#EyipIeyT*Gl5st}XXl@q!NXn956&vs!MT(O1|l2I_7siin0#(`{R%zCfh z^oHTOl2LoWkOwPGuWGkQ$|FWgDy;RL04MqUsosMe|0`Mt8d{a@5?6C6d`2YzZy@fh zPmYK8ta<`L;Fq;y0r6L`z4UvIRouILZ^F)kf;k>x%wXFqGR!MEzT)w5e1FEsXz zr9}^D#7kRz(b?$t)Ii&!{ab2zq)eCK&Pi$A;np|LQZu83n%eL{6@iFt8xNI*8!DSuxrAaao$CXo^o4dpS08B`b2T^>vg;&YMvT=hLn|ho96%&C_T5JGZz^ zI)vYZ{z~k$4*fgQ1KSQ^yJwR81rKy09Bhob_HNOyRMTpQ(L@dh1?FNoF|H}c5hHfa zp0jWjapbh83M^YJ(UQh#iUaZYg38P{S&IGSeK}O={=k86RuILx=af-SpZLn2YQ-QK zzGSoopKpBoA+A@OxT)rs_KVqIqA)sG7_5TKoqB$fGTe3loYq<8DYXLByx=aS6}c{8 z)I`ux94CVORG1)y{ohlPh;FoPhrgz}&4o+TAmnrHZ-~C{@#?kK1)d*EXE(-~JDp*i zU=(%?15UNdG}5gfny-hXc5Sz6yTzka`l{4wb$lM}b$E_O^DF26?$5X@i9ptcjzGlm z!FORMvYg1@`Ppu7^0|MpW&EH)#4!)}m}1A96E`4-7pVqXkm5)na-GNFef*+&A>2E# z`QUY6_k{uXgcSCYGmLmV1!vHP;_9D32rAugnxp!>(n-P*En+VubpdY)^Q`RyY= zy((n|Dpf-t?@kbJ(a6W+(L3kbz$v`(Dn z!S1zC0MY*Dvoo(r(6O7Q-eBEIAjbLkzc#Oqz<5>XCoe1MU1PYkrZ|a&CvH8 z>6yT`YVc$l$Xwiqpn9|~?Yzo_j2*aKPeo27@{BE7RAuH@EpQVT@GL|iqN=dbsmNe5 zR&e$rOWcp-CqK6(&kN&3*$GVYIjUk&C5fQ?(mADJ4vF8W&T>p60iq}D3|v&S7{w*f z>h}eUDLUqVF-tz5y?yR`Q-(^jAJXhmcW5YA`yR0O)B~ms|y#0NCM{In0GqN8FP>EP{H> zr8Y&kaTcD;)!hl>c@|DnUXN*;jq$%Wu5(V9<@A`wiNXahPimp@d$*7?#U(P(uc3(= z>u9J61>$?~&%~0EB<{p?N2f^(N$ss`nZc4)>A{0^YZQJGvaM5w6?kza+h(*+d^9&obH_5&z^-^cU+#YPitc^t zSi7aWW^D(KN(2+!0E6JeFloJ8UKN(k%c~rX%Qcj-LQ?>DmF)ro2V)oyaSr+VyZ8?rZJ&W9kA-S4XCo*R%7j;Lz;FZtx z1PaLrI|S!**5V`tRh5@wk=nVlcl^pd>&F@*=gCPC-X3f+X}HFWtAlK8Qd@R+=I1aM zQ&FihJwuM6fYXz`^^q!T{FWhgV%+!fV10F^H(Z@NvoBXd=1wPX%iNjo?Q=~Gf6fi_ zL(QG8f4nYt&s_TGl$-^ad~$}Z+?+doX5Y2V;2iPKb%Unxp*s)4_qYGXoqboZTTfY~ z5O)@uH~Mx6sNR`7F;pGV?d=o$)DL=B1w-LI9Ppr1-xd551*R>6%k5cgZnxJxA~luf z>trzV0>&l&{Be!DO>25hwWCxNniX=qI(?=JAWQt4+zD{tV^v2U8HI|eV6d0ghRKS} zh}R)7#0ceFH-x4y$!G(rr}(RiQD^yU&nONEv+N2dL>OTU$!dJ8TfH%1gx3ND&4dDr zb2T!ZB5Y4~m%|Z|0T^l)Ck_vQ@N9Uq{j@A?yi9gGLS@ax;SY2}Bj28`)YuGGdwKD* ze=LqSeKWv|fs^`GJ}y<^N~TG}aexmw<}%Y7+Tl!DtN0H54F2cYP5w5#6RDYB(^q%9 zc;K+C;f!%D&38>2;|1jt5p%(H1;z-?6T!Ku-_bs3W(W>;L;z%wp3r}2DD%oH9Y`Wl z_PC}0KGV1J`bn7oMEveVARqG}A}N0&6@Og+8fgv!&TwqYy9JKYlUBAyU(x2=gxz}@ zB?WXX5T6=0mRj-skL6Z;p&55*@Yb)cgxS`Ojs2k*^_EyG&9q_L`b6D*U)Q8?(A%jPMtW>-<-cS_-t@}YwNSo{MPWs3H~}!X}CX8iel9_ zcy#!TtG($%WX8w-_URM7GcDcr%7i`hFYcSL5!>(p7t1I>F3j7=9CCt~nupW^g7!Ab zq(u*$>E-HcTS&2~!rt5F?|gyHAIYmC0+D=GzGXv#r`Y1X?Fua`npol>kW>y!NWsK? z=erQ0ygF^1u@+H#;QV*mo)hPPK@*fGJ{39U{_}&bCPckBHDM?#9ZHNC=uIhO|7&?t zacGr3)H9?ejQ@WM6Lt1z4M0``qc=6yRoA*10NtY2VF**eWUS82GRvGn=Ht^$et5r) z!Bj@C*0%LDsS|IR(RluT3V1NT%}qbPGP+$gcCCXf80~sihxXHeE3}(U?L=p5#dO9M zsT;$s4c8(^Qaw~QZH+$3nWz*@E6qZt5&+kAl82WA6?d-pRzABWg>Mwf+*)|Xde9?= z(gFrz)0|y)*P|0=lDZj)phNWLJA#2_7_A$BXeE5-yAWD&Me6wF_mr^_ZqbeTBx%(O zCED#^LG7(pxh;?T1QL2#)Lxb>$W3D?DS-FX2dJW*uIa5Sz0sthPs+326&0Cp*39@2 z#t-X5Jh$mP&sEa|W^(K1mb}MYE)d+-E!$y4MB}+kF%ue7cs`xpC$99nA^9*=;ZHii zF9p(UjtTqe))>%%O7H7*C-5NgmQTmV`|3&NI}V#nuW%&37{Q#J^0aoPCWZ4FY4@q> zcy;6Xnn0JAt3YOcIE`OE76*0fi6Gg3L#D_DO~UWKD_tEZxP zlwXov$blM##FiFP<1T0T*ZqU$s_8uf7m}3)-6Y`NpAxuc>*)dxYS4P`RwhlAK9NNyLkK!LDY{ADpFmyzOqjyNG9we5nbaKDC(zQz z3}8L)=A;QayaLG_1;0&}!yNXRr<1vUWlm(e+=P~Tdak(xFe|eY+<0|(aq1G^sq0^L z$^WDA8n;&o(0rc522+MGz~3-!=eS4bOe&?E~4eI z1yUBx?O37zhFZlZmC^Pq=N<4Ijtj;b{1lAgJy2nXHb zslo!2_UWSjB0O)kSr`B-@-w8epc54w*7H1EaG}bk4=;7DU0zfX*0GL$U0k}jq^ql2Lq&JRt60<;-w~-5j!%F7#*E zbTZfvEL_(nR<{vDx}{NP4{Oxa@P>|?xvQn#=Q6pdF=&S~mVS##)__4!CX>`VCcBd* z#UK$3#Nh6T6EL&g?-Ey{PZ`@;d>)A*E@M$g-g0x!pM+ZSUP)wUbJ9FJ8*b(A)JJu5 z*&3;tDV((0Uo5D~;BzIvO2wBmZY$JbP~7kfOYTcsVGnWp)F>2Q2EoGkVmYFZ0yk4RLq=1kDzVzYQB ziiM2J$QG4uy}7oon~a12MR)o)tO~d^*{YZsvcA+P+p;DxAv_4}8URzX2{ye4&P^x7 zvxkQYO_4yIOpyrKH_s6pA}S+?rg*euu=?pslkO==YLz=^+s=amGwpyTX>*+wldb5Iy!*D$?gOb|>|?Htoq75PDq7zW@57 zU94^;Euj;%-C$nj)D@}s_X{Ao%2oo%&LoPV@fhbSQvj-kI4@#hX*Wwmc_i{3v>J=GfveSiXU6oH@aAE{662 zb~Zzq9zWSseHxF)bLVvqq@{K?25NMuQxbabk2-(PbXRfczK&1H%N@JuKz|4{9Y zzpMX#dFEI2TRO>e7nVOf{@w5X@~<3kKeF6Mg?A9~XClL`q;7~n@)u|WF$D%6(emtt z8=LS7U0KxQVxg{~r4=hD3-h9Ux0bHQndYjQ6jW~=eO{xNMB#Xgrh0Fp3d!^&A|fB0 zhegEyfjAxQLDM9;)VA}4(FA8Rm*SD&?>Qng!Y)z{%PTW)XcS^`u;K57-zmv3cJ5ve zPBTeoxL)su%}A2lBn_?_biJfIOh9Jls`$`&ok!tWb-2q#qIv7H&MR-|VyMoCcx@%L zU-{0)sH0*)`8L#iO6pOStgdc!YrC70?^~PgqV~rX%2)!FmH>5jGI9Sa#N7=jZIfNk zUkHiuL3jbw-Xe?AJi1hS0&$9!KW;wW<-x{4WfQHWHn|y7k$9fhoWuz@akOJF1-+jc zCW^3Yz#*5R&Q-r)&%2fPEI%vs_OlDCLSB+gi-DOQIvBDlWNF+U zjO@OSfPc&tqQ3o4Xs=spVUfhYRzgN@!|lfxmknTSbm2oS!b`pvEr;LteC% zFLAkKzI}DUUQ3~6`A)MI$#942X64u*aj+9IoQm{+G&qfrkrslrO}7mt zB!f)luLReDtGXjW0+~y5+Q+5$=vCPuQh{dPifel0+ST*NUw>-?|Ms`O8{c`DcfQ;9 z%Ixn;lGVMs$twrO>nG)y0TF9Ow{K|%=1rK{aC_DG#I!U7#Ntaic+#8k{Y6=%>63{0O@!te@shxdP zhK7$JI;&k9l)h8s4^^vlSAB!#8}bQ*(qy~=k8E!zs>k+BNJ^rTPbGexHvdRf>(>CT z*2=#i79M;f5^1v6CTXnq%G8~a->pa#?}u-Pdu~n3MH#V^4gtZ;oq40<;+`<)g?-K# z9(LzBR6QHnTc9Ii>=S>EaVcR;*Xl9~K6@m+3z#HElE(%vdQK2|dQ{zKmyR_Ym_ja3 zCV>-|vhM3-Ip+P*TlIs+fwC(PaKl{I?`T>G?|Qa=`_APD3|$6+i14IM7El_*?5;Q5 zvusA&6)>Ey(yetE7al9i!A^};%u@qa*-;<`vbq787& ztT>IB3+XPWIw|=)_o^}(E^TGNkzq8{jYayEM28MtQ~Z+jkX&9}(1I8@qnKx;( zLyM1fH2%?`gJKxq_ppPG4+PCLSyKl(N9889bi!ar&3&L|A=ZyIlw>Xjwc2QzVQvIo zWJaH#Cukl1XMf)fXT)f~@(M(avwRN(+G0ss^np2ZQZpkGKBd0$1Ab3a|hl2$E9$$Q9EAm}&MZbi_jec1cCK!1tzS1UNOLzn5|9&@tP#<}Oz&hC z6C5S2x72d>g|4H>Lf7hl6MS^@37@x>0J&3cc{$f(>3}=tKKzbAKeMwIH2CV;l&4)DPd+)X-p)@SI%R zmwP+IzI=J}!IW)o_(4^rbwwf;^4Ca_R37dU)-O>qd}T>`8}2(u&Cd($wch9GKzHeO ze`QyIRE>_B(_2`Z{2io17%Bqrs9q-eUIGEGcwRt9mu!6NVO7?cueUkZDVf-JH4Eh) zgA8bh$dp`uV`-+yrYqr7Wam(~$~HKzw1-Z(1G)s>oQ7G@B+_p(z~1Yxhc*vQz(7Jn zT*kK^?V3GMn&q|Pf{ujI(8kgESgwAH;~nf?-~uRhQJnxjU8hnPKx2js%ciqOSbr9S ztdrfLE=|}{?}ZkcJEoy%g8|j0t#F!e=Z7EIjc9@Kw+#JV4UI#t9;TYi(duhB*rk2H zbE%eTPHUPE!z3=Q9Qu2i>M1oaSH9F9bJ4owLmd#9Emu4QhkM-5eW3~Z#^C26ywRkr zXVhB*odi9A*hR3O;=2!bFRyPEkJn3j_qt4)GIp=~l9Op9uWN^OhCIH=5~ z6~#g18ssvLe#n(-;uHSHV8|Tf!p1wtz2w#q#@a_UM?u$E(E7}VOWYIovyq*P99M}2 zJt;s{sktNWLw#mZX*{i?O7N{KICEXqjxv1O^ukZ|J&2*=n~bgcQFyw$-21$*J59Gf z4Q=S#c9>g6p{}l|WlgiPqWVaOR8qLpQI^v1PDmALA(b;4;;P8iy~&t|sY5hJtj)Jp zpYFM?`Pzfi#~nT`bDnC$%V;BgMJ8^Hi-+-Qx)jNp&#y2u2vEuPAFwEF?qN*Nj{;HPTF!$pvY75(8cbo{(tX=B`6Cg5Emy}NZ&Y;afvnVwjO9E4p>r9MgCFhr^ z*eDu|>P{@gyT@`;gy?9nX6NP-ojGvQ|}SdGNBu@KTvWFDD)sY@y3#*x|zVN)4T=@yQc&lQIbk))%q zygvWR8}qMx=T+-@8yeqMo!_~2-8%H{#NyKi(F zd(&0|_4xXj2^NeHhMsXdrvyxkHCUt*Q3-9QzJ!bcUD^!bh`%^ZNGKDg=+8m*uD-?T zY-f#mc?ujr(~gJa%w!E_+U?QrKf%SzI~+o*Gi6l@JCAfsx+!w(=kCnU&t=ksaMty!H8D zHQkiHwmZaC+WBmA>z3S=H~RB)7uL*IX?IA=64yH`eX73I<+-PX^}d{%t4y$YVp=GKkk!9ZVulsMOe` z8@P1@tmz500_BJ4_It8~uxEuZ0@jT)9cgI)LfZAx`#+ueM?$R8WjdFmng2&i^OIXn$`s+R}L^t`NeYAk7|3z2HYXML*K!Jt1%MRwFKmnjwVD^28Bs_EvM_ zU!Q8RL+i-ey7j;QB|^{Ue;zhvoJ{AZf%bE0_O>&nGxcW?)Z>|~Ydcd$r72)&nw!;) zLwQbtNHU&6i*o78_w@oQ3u+`eH62T{ErX_$EoX1?ndt%6zRPrhajBKg`Co5Epz3Lr z?juUJyO2rWk?^T_W1V3_1|6mQDpUuBuX9uSNS1DqE4&l}DF!cOYt{F@wW-W||H6)4 z`uNK0p~kz(UCxM?dSvB`#8nPW7gl*stcJ5=>K~C^kA_DdQrLc|b)rm)%)XX-7&>+Xdo&hFmm(0obG=@zfTvobTS3j_K!aY#-9*?Gct4@;K7P8eWM1GU(v`ZSM*-@A(UWyzXi4?G$x+w9yIV{#&qxqM>u{d z!Xe!@xX~O(co|Djyg3F1^TCYkaPSGIJGkWId{0&Lg-!!ZRdgs_*Bmf2GvhFeFxoJm z5~e+mC*`1kcQ?QJowu#>%_8HO-kPZ+Z=RE3@L4BhNr-hQ{h~h{?!rfs(kiFxaCejI zInpHjF-Lmb>d{eWZ6KU10)jXl{1(lOl*4d_vr~c|UaoJ)=6$RSg3ByGPxR%EG zfp%T%;v~8fVBe05KP#L<_4HaG8^N3iIB;o0!-&ufR+0Ty%Ckz*skhHO4 z-SZRvaLXp#sVt|Achc`%U*8gCg_PaZ5~^q4yRWs{X-mSMlU9UVYvVg#IfRtn8Y7yj z?_5eYCCWjb8!6Rf`SQMJSG8elUeCA@Vd`5axXTUOz=Lz)y2j#;OA=iWKSsXe?jM`Q zb{Bqz^5@MG^0g%6;`*i8Xc?3K|Nt=(-WX5H3?nP8OJtN4vC$u z8#l;n>aDD(9S^*r(&kdRbdgVdzuI(AX(a&=xGl0NKRv*1w@5StAkS#A+w{zg=>jd{ z{_jti()Pk^8vB>SY!l*ivXB%e@7=Hi2CTcDEX_4H_KZgCDWkuVO!V_>w3{2$QsSeu zIOhul@ikrHnA|`ca^MK-BcVWU94-m;dxH7d|p+wfH4qq)3(M zbg1Ad^T2|fmR8E0gm@#(VU*p48n^0e;YO#*%~iXkwW-qG&Srw{rUg7J$Hk={IWU;gp^?qqFIHMq4p0hBqwOkrW5DjNMhKW@zj~TRfFa%gIPW zrzE-8N;d&q6M!)8CTD4;DNO~67Jw(4% z7cJPV>$1~<>QV(ijXB8K16u(06vm5@b8`vbX)K|p854Ekl3#J2y;k$G2)&+9M~MG| zh!s-4EmZ2ih`58**--+F(so-I`Qq4+5Z`#5Y~pUmDPM?Q=}ozGYW#IfF|4^{9|^ax zotWmK#c3W|n&zQ!w{MNSYcM?;U^@TiG(&}}f7^$$Ix$bZMH0!mZ(Z!4&Qx z-s_&#>X32-@N323Y-#+pdUBwS zunD(1pSuSbG{Vtv1rrr0*Cq4_g(r8;@gih|vy#bw^tJiX&#vpEqRZ!*3M0$nrnm>G zDDB0S&uRQ+b=2x^w0OkeN7Lp2GuVU_;4=!OLcFGu7*BWnm6hn4sEaTk!hd&NRSccw zo#F0^GTloinj-(47Bdh-TcfyH_cGa2ak75a3aNIGMRxzml(O2*s7y)Fmbkz}3o2I> zV4PhL2QZV)M{$!5*9yu?%7w_yuRO~JqdN(%@5QwR*O4rvSgbJLAxAfuM!5n{G}k(i ztQK|ApH7Jf^qRXO224oE5{-leFH)~DS5cr=^qb{>oYVKD84CJH1g}Kc1(UXh{4ZG% zyP?^Jk}J*)wq*^LjxdGex!K~5h$BhB$5{?kiPk}~mj-*eWiS>P6VAqllLx8n!8zG7 z99UTtcE$o%ap)&JCEOxXC0IdcY2m;;DK2Nt7E%0qJdZtnDVPNn|-oh)Jj_<$UD6w9lBa_k_Lb}na z^T=?tWe}_;M5kU*hVR-tvp|=~X3uO* zp~H6@`w(IQV7eJF1YeR|Bk*Utl*{p=Pxbz>m9zakZ3>FbV^V%*SThL_&~oMY4%9u4 zE$F^vH$(Mx9Hq3bgsu1Q2U}n>$5ne2`*;4_$*Y76M_Mzf;JecrLfrm*0WwapMp;u~Y|q(KEMJIc;y7xDI6Ri={D zb~rD z^mKE!t6RlNA-c`5o1|osuMdwvB{L3~D_#dx0H!3o(M^@?_HL+}wFLHAEuDac`SM`m z6e*exW7=w6sKa_`Z-q8!xsAz{{Po3QPf_u1XK|<&kV~6C+ucIbyVO&E^U~b!-}l^v z9j!Ml3(wuzFVxO_J4QQKX5-7k4emF_iR`7DZXw4>cml zK?_KV@WV^p+vRGy@2dijRO#@%P-}b}eZn*e5>z?QsSh7@q!xDzx?P0tX^eqbPSok1 z>)RD2O*81_!i;R{<)FXZ!1Byu1P8*Xm$kbaz2Z)ulm$1wfC&j)5#T4o(CP;h?#s4b zluckM8K{pAd&?56;%Eja%5c@zvN6=`smknWleu7-(`ANdo_LpsW^JczN7{5DOR!=` z!K-VaZS(Ss@dYY6dCPX*x)*vJp0sE_$3g6AmAPIvIR&f@(kYB=L6`J`8@a(LElC}% zV!p7{*Pv99g(cT?2-&%ErKI2axz^;ZsEfHyT9l+ui0(5ZG;aL9s<5bBv(*i^N1~g9 zL5y>D*>IjRd=ewuw=^8e2YqqtM(KqAiO4a%Ycdy^T(MwkCbzcDPursqJ0Ht*4JdO{t4Wo67?8hda>>)^ zn+DsGyKBndsIo#gwpPVpE$f>$7fF})e9>VjRZ~Zt5-zVaa5;TX(sW9l5j0~A&sA%{ z*kTPNRklS%F7F8kA+%&yCJJg=xlJgZHz>?70}SZ94UCT_fPn}w!^$dMJiMDof`D4p4n;8QerFPue%2Bp+%4JJ=*#BUx6*eB zOy(J`Rs1x*Wz9U5;-&^vKT<9{*+3Zm#4*>E_{J3JBGP_fb0L>ver~QTe48W*eX~Gv zB~4Ywor$KB6Cx4|gkq=qxyc=$$v1L1AmWrt6+G~2$prz_kgi{39F!2|IG+YA=ph&B zUjVQm_KJZ0`aJ<=dR@U?xF_CTo`km@)2E66QgnGgm~%Ee8EfC11Qr~)2-8b~X_{sd z`}gQ2@#DfcDOC#h9K_2xMIlRE$`o$*1r!s#;>ms9VbD1|5i_3T0w~G1^96uRcIR1Q zP0t~brVqqEK2;#`yxKsgDAO}Od7cngn)vYE6UP-D@In3hiH6p!dfkhG$)zpw6K^-H zSjL%IFJzCIhcyomxDJ#v%3R<0hJg^u%Lbc+5jQ)A`jfz->~^dsRG01(s#I*4Lz8o) z(6D3-7A_)a2WR$Rz&JK@)x|`#)>PB5T9_1hW75kFcXMNB>AZnbafB1qLxS0FN%5d7 zBAS5FG9w<9{9Kl+>DAyWhdq<*V%>UD+KZoGpk&N1d3B9=+#H~#|dRl?I>yFWY?IqKhQUEy9kx)+6Vl%Zo<+jz8= zkT_=5(adGP8`R}j^{MGj^{#I)3)5B8`oCRRzY2Of3Yx1rZFfW0ia2c)*Gxfwt&foA zcEh`=rk7v}rzdj7Lk>-9=TKs_pB5(dgJg%pJ#`#$4hBax9TooC3+3+%t?F42L3^zN zjk~o(`WrOr4=0ND6FM%v&il*i0l*3u`Lv zF^)6w$T;s46)J_bZq;zGDQ7Nf-lH6ZAkIkpX zjo!yRG}qL%3{~TZ6|04pv>dF3#!5S(!+DYAJ)^oc5-_Zsu=*KidWh?aOB~>S?umXf z+`61ztmR-h>T840Ja|J2E*{p(5mdtU>|-@t8^t)RP34A_ zq(W<>t2!lN2Aj%;ae;(d4?DvSfC-BgGInF6gl_c-+6!a|1V{Z{ z{SWaV?iTsdp$nVGKTz?^P^B_edQXWD{Zyx!qWjdk$T7(3&0m&#)=cz6u~s#<=RQY( z4u`IcJ#IA*{``^jjbPw%ZN0G9qA9M)4Pk(|reB|u5TpewIJm~4{TQJf?S(`9qPbVJ z^MT;f4Y9VJjyh!x-cUi=sTL3A;ZQ7L64%XWqxlQkBEY#F@o=DOAUPpT@B{7U_+Sv@ zRUtm~r5hXWYFnD%d@F2wBnf(>%SlOs?T|K-1gpVXk_45Ca4AS=%#djhtWiHrJWKTd z91S#e2D;TDSe$SOxY^nK4&!XY4I_6qL5s$qP~I#_&~s@MV|bR?yS;_+&fDZ z5UzgI5u+RHeCZivby<5bH0)H<%aGUIB4)koWPMnUa@SL~A`R`c0cH4hQaT^%j+~bDafxUXZJdz3;7V-1mVg#<@qC0M zfFW*O;kksG*9t(4>-%+u(RR=CwWKGN2L8KoVAkX;`Fh~;@Htl%;1YzBw}Kar&!I@; zg63so|M4C0 zo0W_PyeS2o%)S|MlCz72N>sDArlz1cu~R^tUp11xFDELqI$I@p$P<;_CURa(-VQ=Am2(QYfS6HeTn^W>7>KHW>c^z}wE;nEo~w`-!r z|M)AW#Ml7XS{5pNVJZLIFCurXnoUL01Gs?Szw5lu-;FFU9#`!`h$nN-4ep1N?KHF6MkUbckBs1iE-003| zI(Kj+6B)M!Pm$`7>Y*^rt+fsol9_85bvQaW7v(xI9Fd$k?+0r9D%Xn{E6q1MA@`@KL%I?-JYO>ub^E>2o za0YrMatpry5*MF6)*!h1-7SbT$56uGm$P4t0!L%VEK9o1k#Nwa3lW`$fGXc(Mrnt0 z&pnF=WxKg!!AzZY$Jpu6Gz$)8cQuB7$mU21d&N=9la>l9)674)r>$$xEK0f0`3ANf zxLo}*l^o|Y-uzN>N3NjfqoXV(h+LIVN8(CEu-Ej3Y}opd@T<7uMPHG<8V+?vBp+6l zGQVAp`^^61dqQDb`X{IU-jFyg*8;Uh@owvswA67vgtPX7q&`9bo@+q&VSbjBCQ2oxq&FX>5JVPYx8#;j*cLduH~DN5<^ zn?=O6)ZMe3J+@v=&(5S<-b`|*!Z!X+PI23Nt9(f|J$pE=^CCq75=}QHiGLF?WkZKn zqT!kebwi@460J$iu13XcReozKSWPKH4wSt&hRiQ>HQ&isQ)y7g!!5~ZP-c-$vp(0W zChbMtq4p#*d(VBZZ+F(j}xR@z66}HiEij8 z)S&YkrRcYTZxrO590XRa-Z{VULxi7tjfb1))UPIxXX$Wo`AsvVoOhZ^EA*)Yf)*&K-a z`89TFX{GL%HRUQDF0bdcaBe#9@8|-d(Wt}KSV6(qs_21*slAxK+}^TE65*e#7$R5b zY%5k!`*^t?Rt*CUkjFAK^l z--#HF=X>tyqtb?6knRbSHHF2g2nqY;dmdk_0M%aIkCX9eFkFpppe`JM?hLSMw8{$~ zG4o{Q5uVh)v>j-;+%K_|FcbX+RLb46#?RUNb1?QG-3wiAo# zTX(paI7Aq^dnbv%r?2!!O0~3F+|I?G)ZF5!dLhi5BFw0HBaA9e@p3Y8tf#=ku`9bsLERRz@)=&)>RQ22H`duw3@(T#IJ%P2N(=kHL*5?x702GBJO9GJ z5IQ7_p_7qS-Pab;d;KRfpXv8I`iZ^`Nw zr*Gpv;xkDp`VS*b#8dT^Py{ubcKEWlty}CGE^Gxk$1xx0sB9z0xqeeZf{pKR>kjl2N8a6_SsQbr=ZpnI zTx*6~rnGmv$jWqRVdFRzijx; z4dJ3Dn1;#p5e;F1jKq z-U8~|ddh1P?B06UB5>nD$%z90t4M)C)PI$%C?x*N-4u9Hh?R)|gDvRA==%Hem4$ad zSV(-T0_eI*w1x=Nja^+kzed06VTnu4Jg-EY_qBVRHOn?{3gyQTnYzrl*aF~1z0RF$ zKNAYaJP%RXdqP80{(`O?1_j}(Laimu&v_>?$gLC8?o4|_3^#3{$CrEEbSrCVT+08- zw`6d=YOt{)nERHw5@VrT?iBKG7e{iso~$+EP%Yb5*{bx6DO@~hTyPK+J9CWiiJ`cz zgCSDoc2Q)^a)D)@%{T5 zU-LSLNgDUT+FWwimZoc8P8?8!yO+KzhmWpthy-EF>5V#F{7R+q-)LPBXN(nAOPI-3uV3^QuCf*vWL}@VnH`nw{N34-X1mtj7Wnf!XuRTw> z4Y|l|k@fOvOLSO2H_7NIfT9g9#k%UA4<~^=liT9L?6k2kX$zsXZSaEzr+2J|4j)-E zT4@s|od(RkKrs60+F1L3e=VZf4WBludQV&gZOtrbODn;w1Gi=DIoH8cVAd}#wd5Fn zZdtb==w=8%_jrWhHKi3(!8d7kcnkqDOf1ZYdfH2w#J*O|uYwcn;t|+eY4+25%}B&E;8@}WQ_j$tIb3-{Q$_Y+eQHVc=7i>4CnX4hgF;XeLh}!*dGJ5|(iTUuNDa$j z(tLr`z5O{aF`n`DYNt8ny8DDe0l1cK`c$}KD=1@CygHB^`MY_*i1S3z z3V8PORX1zcH?YXRhr_e@11T|r0&eItAHf1vc5X@X;54%XcB)~Wwu8=LV5f#(n|ZI+ zX{pWGN5XALpss97s^QdlJIs&R@wXum%BR8quuKwGdg5kFGh=QYN~u9Q(DMfA+OPL5g`Uh;=2AV z2i*W+vQd|~&&vQeBC+JAnxdNjd9kYW5sL|x;wAR3elm4Xp><;cIk0vDCWBjx5oV0> zTLsWOd^ZWQi<0n!P4SCR!JUHhz;VB^vS*j&TT>&_J9~%A-Vkco83JzbHS;K^_<{2^ zV*zzD^w9E-`mVzJ``*E(M3ddx6o%!xuP96sY4C|K?8G5)QPrUacCMd8WyZ~$jQA!; zHtC7->#nN$^sj{J5m8kPJi959wT@PXgY9DI@mQ+ZQ)iN{;GtaAgL@r0fI?dhDO!0g z)H4d9uJ@02N1>GljWk-4QdS!`jBs?WYSX-ABHb2(GWwb(*$LmhI`g*vGcOG9IDd8? z;eHR^Po1A$xk_O<8q+9TBeLFkZGPwW&Z}>~y`ZeE>hoeb6WyDj-pR)r`-9jx%C`lr zy%^BFft=BFp>3YV7WzJVRDc9v+o_cuZPj(%a$8~ov%ep!43P0m?b!)NoXhgOefT|8Z+Q(G#th!-eg?Y z^;5JL3qkO?>$i#B?X^)&v;VGOCPZQGVTAQfoh8-~oVfb@AL(1Rclu_r2_McN>NrSx z(m%MWqZw~^t0Ir00qLI|irz;%0}*J&K6Im3hx<~!FpYvlw&5PrGUBbR2Yv!a=86wO=I#QwHSMoufI zn2j+ej9vEW492P%AX^fke!D=*K!!}+lE%;&Px~TVJ>E$KBgWNOGi8#9eP77cB7{zF z7J}(?J@{Qhe>Cd~DPuhL6u6i6A#2rg{pwLDIr#-S5l|850XBslold1?qNHlX`l<1} z%Q|m8Y|GI_k|B9Dw4d~JuL8kH|wP9dY2zZ1Qkz| z4zO}nq8vOKBBhl*9EdjLHJJHTSzIB3O%VtZ8jE+p|Ff@TDTxSOn6&fMy6tH$ch?Tv z)8_N6a#LcBC+Bk8K2Hey@iYjls5m!3GiHK8%L&%urJakVJM3;2QF}F@7UdRQ5~0AJ zvRvy`n$qDor?5$L>827?lg5^ZGIuRD50Mm}VAuHlXLsNLge&9V)gDpx0A*cqo z=$8M@B7}+6x_WM~;hlsF**a3b(q7_WlKf7`HM#qj>MIkAj4Ruef3x!bzjpAnHySUTov^;XL8SJz&-k(wt_E6U>>(>JDinR1ad*-6lvbIi^j?U|F> ze>cpRWZzEfo+LUP1s8l3-AjC9zH?!X8?in>u4t?P+}3LEt{^n*GLTwIUa-`=17ml+0>8p)O%XW zNK(K!^)TlAAViiRwpcNb!hx9it>S^0gi%(t349h0$ozphEm=ZjziwXq?DfiajzFxngV{gWv{Zj!5U zO-P%hAJjkF8IDa^1<3`iX}s(*>SJo$#TfNtk|I>&=7&>4n<}zAj-KG%p_|-}ZgIkN zZb~p^xzIN>=xrM)C-gcq^kIh=mC^rlPaK*gL7o2JBRgR2xIycEZ>|U@mW$05?ADC( z#0;OBD-{*Rtb=59nf-WQ-Cp8(SRBU{=Rg(bt0$^9m3dE`Tv8?MlmyhxsgaXA(m@VK z*->CWbMhEF9dRjzQ(?TXH&iOy_1@48jP_IU9~FTvi4#-R%0`eW?XSw8f#%bu8OLuEy1y4NVX;$JVvU+}KV#iv zF`eF27mx(PKGON{PCx!F*$!(uBNW;|6kxLM=QB~gH_x%ivY9oxiDL=W$qkiw6C5ig z64ffG^O&)lmrt^qoOlrftR}smxMnhC;BQB&?!;%c{;io?QcIer-zdeh zFpkI^nTu2*f1=!7I1my2do-?^pZk%#11oZht#bEVgD-}v+~hEm@)jHjf`CT&_{}D#*z8C0v~yB^)EOfdj2ml2aW>-VLnJBBT8AE$m|mc zz>W&S6sI7Ks`&Jhey13IT2dV2g?iT+h>ekJ$@$U3yyD0q$jvqB`Y_~%8Gz<%-J^|N zHP@9AiTK8hp*(@Zl>-y@76IWfBn1LHSxJ+^0JbzbzG1}$9Nq_W@~2hsi79`klQS9u zl4dY|P^V)Ie;$mdeW&e)`n!T1kL#DQ-%VCCJ)6o{$LyUiz&bWmHZ@SMWB0C;PcyQ* zcNozn8ZNACt?zCSc2IVDormy9CZKo%w^l+Y#t*F9^9hFeHF!wYnn=NJI z1h1mveR4YOR)LUP;ew=_R7o?mlsuXE?~87v)TGoL?4s-wbu< z(1ux(UQq+TfM(3Il%F~LKY5~+HC?iE(X>DiLCp+0S4<|`xXHitMxYidYUI(CyxASe zk0g1}emi$5jydzMf5BxMV}oVE%3Q`yUIYmA0F|+-JRJL0%fif$QR=*e9#vZ0?3D?N z%M;-o_ozGUEc?Un#+|2$J|`8$X%J{jO zdFaV{#ST7ZnQBGpB{UX(yfNUunT;@FqE8DvxFKRJPIn15c<_VEj6nz2V7IOpI^U%%6(B zcnWR66D7SL`+Z%ZqcP#N;~cR(nrks=eMX^WKR)J3s$cZ9ZPTSlbbt<^e=~FV+_fLK zgK>o=4i1ESF*fsQx{hi3seP6^YoH$FitDV#B_@weyn;ZtYhAEhVE#a#*7eTIK_lA{ zuYiZycZtgW>zvA>i@bk(Tj{a#WJSUXKFLBq`uU(Kg!_zYj-BA|W4Zs1Pdzqae861Q;SnY-UigWqdp(?9+F>!N8mcu~yi z)ACsZKj<@^*ewHE;{;H1^B144|MMbUkN4%hze^Uzh+eAkq`s(MfSzamd9_2}+^kd6 z7bnp&3KfwQcwXXI9a);tMye7u8ZPro<1AQ3Ru2q!an6FZ1iyi2=G1^YrsROJ%$D?| z!+u=j{IB|73JUys*thN8W`Dhtv7??c)cfK`Gz6C`jbIAwpenD$!!p_p$;5%NWbO~V zAJ^|-WDFHvT`RdY{=3#AfYRfsQMq!@VKQL|a`4QV(VdGIS0bC@(vA+|#_#_f$k@gY zmG1XV2QB5o+(QIVBY9q^CtQ3-isb7vC-sdn2NQqT3`i1unk$DVjKobzFsvZ@ zVebZ)kHXLTUhzpi3hP)!ptFC8HM{gs}qX1e~8(&s&{&5coXlg4W~zBB*&Nf?cakW`}I;d&Y-*}?Z4=B=jC zpO!#sx8sd=w^6g;TPpRxCH}Vh`9LNP9uZ9UtxfeDk`^Xr2mh)?=jBn}3cQZsSU!g@ zqZ&NKAhlHGIv5ZtTMG>|Qk&L}7C+*)r|m8IiSfmtoLQF)yLcPVk3$n6F;!1|bwn+| zolq%iXkC?xcU&flt-rrfRM9TiR5Un&cmF3*2Tll=G)l7s0F;iz3!!JfgwQ#$Q6Utc zT17$URGaZOE>xql8&yTzd{uLKV&+Un+t8F#b{@GlF^W0=p=P)0xX#QkH1au7G1Ob1 z8R%_pejA^imKIL$z)p55NnbvXi&kV1*!k0NMj4A$AY^%`x>PX68*T@hSCmx5zB*V9 zSFCR<(?FtA+s|EI$5jF+ySl&f*?g#S{E>)F#c|&uKy0wt!&#xn>-y_eeU_&y<14I(;ErpV9s@A!vRFu^8Sj8`@_8Xz5s|V= znPq>p(o+ZLj!L1_CP_VZl^}YwKd*%M!&f1$*AKtixph;G(1=v&J}a1=dz(dUl}~xw zxqtqs5X7q)08 zCOOEeBim&EIC4#LC6|FqxO{7DMbm7;4L0FtyFJxe4YUpBQO`Hv@Vu^z?60qW`TH>Q zY;7OVWdadL0(nTV4GSA6`n{+}QOZoUL#;$fO1YQL*4;L}rnHKS@eMmcuA&-;u#NYF zTvyP>doLdSsJFfw#JuwR#Pd|?;|uwh&yXK`gI6t#|- z7e1nWZS5A^N|h*yLXl=yjemC|j*g34GK~}EO8llXlgd;c|G2A8S4T#n-&v{lLznw3 zXye#A<46{%IHi$od=%T%lCZQ#95H$~xM(&4=WX{N*Y`O`7etSTn3$pYu$MG10?rgt zQ=jWF_|X9_i#6hv<1h0+yP&_QGLIj~n`vG-Q5&14YJ}sjv!!Rb3w-o)zqDv(i*S##S;gcYVp50=pKJ{Q}iG8Q#e;)us$UyLFZ(ZY!gXjVrX zdiESifc3u`DD{h5`47-hiSKyXSggMb%37W&zql2wC$Ew7LOhaVBm%I4 zL{x9N~J;cs0#3UtM7DZ0HTLv9)(kGC-+{8_euozM>=PwSC~Cwht`#22*yb% z)r5|3Tay41QJvT5R{LqnDQtPKjWN#(Oau0uvPtU%$Vjk%U@XH9Q75u7zlIAkG&%Em zeC33rdA@j!=rnjs0{IV|L>mR7V+5Mli$-R&sa&pF;pkvk5vd}Z$NUDOJ93Cd!#V{| zMA;G(_gOmXAe3|n$&_;<2;4=GlIdgCyv0s_MYQpp9tw&MI=|8|))1DAH!*DuO-yrg=& z*$4H>%fWa=k3?f&UCBBn>+717z>9IL{j{VJ$GCLu;>F^4vp5lM3iu5{b0+*wSIX5H zoC>sb;wG>=;rDI*yQEn;V)eczW>R2ipzUmHyg}6e@?_OeeyUMV=ov=mUyPc(3Ktn* zdeCG?q-#g`@zb#$*N`~um{;T);Jo})zuRxyTG?9o?7CLZ?b!*k6Sb9}NEnKky>KLwPne{i+^^NUU!>cE3@DpJ|cJZ;x8hBCO1t{W)KN8&2?;z~W+|FPc zmnBl!?Gk5k>?mx`^f5PLp|q4^Xu3gqBX@)4yUsi=9(>mr3H^ecJ-3$h zpk=B~yEncA?bJx^FkPS#-1hV+%$Nc%ImQ!QpETg|r{Hw#Z9Bc3%6Nvgx#P^-33&RR zd|%8=7z%EET;Gs)hYfpDKX0q=hy{hx6YyKCQ=CPUo?{=@^xULp%pD77s6TaFxY-dj ze!`Cj=)fww$Fr{svcrKx^9<|H*VKgBSM~bL8&j>SZS84IZBOJYO3(OuDqpOwA84-V zWWY2uj{Q9Tt?h-a7y}Xq*Z8Wj&B4%drO?~u2Zr0Xw42Pp`-^&)c~0n#4-ZQsReaPl z8W#)`QtGLYhZ6vQDuv&=frg=nxAndKcU<`~9|(d^^w_oG|>dU1~|5{0aWljeyXNkgskTQrnq=?U-|v>tOlz>CeEN*?069$2@v zT&qE+vos6y7@MYK*5<0l#!Jm-7D4m`0qq{lvV9%W1IVr;=C5{_gk-thlfbvt z&cte-)R)Arg;cB~L_HKqB!8z$+E}2_!az&#UhFNip$d{n}90%+Zn=mYeW^h_ZfJ$y6 zd;L`KI_$11*XPc9|9giwdP7CXkEj`|z35>jR(3M`o(m-x!}NA2-aDe_#`ZPnaj9U-(2P-wxep z;-4B?6OXh#aq2Y{^dG;a3=={7*2$Cleo=YeC$0`Q`lnCuSBwY@8a6>yzPHY_iRGy;!ss41zIMvLdTPF8j4@&=T&<>{nhvR=;_KvF z?DnfQoY<9ncl*rZ)~@n}j<2liQbj{vU#xybw{wp|s4nCdh9GU=%0VOuQ5w-0t~mOQ zVQ>4Uxq&D9a%Y}V?v!0ip84pa&w1YhlH#f)#h4d(=GVtO>C@z&B)t%gq~zJJJdF{C zZ=AciMc+>4<5lS>#1}$M*RGg)$g8ROr{xuD`uIJc0X;U?DhLV&tvb&3jL)VR5o-^K z9bfzbO@RuA5|mQ$A2~M|syE>H;|KM4&66GHd-Pl=Dh@4L>Z@Q1ymvuoi_brFZfiTV z@u@#Nr-#XV9L(H~k3M{ExHT#a{8A3P6en}akH5b^yx+E@7d46*6u5A043bakFxVK& z%F7xS(DInOuOiG3Ap*zo_l!T7`?=yv`=Z<&fAa~wiA980NWQfA&ZCQi-iGd#9)IIN zc%y2W9-n_`aWGmLd-%cIA^8C{7`LUVyW@&za&eoh9>=!3)p68zw>g8& zRm_|v^NlM;Y*(!4EqCRcBY#faOU`LtHzR(oH(ZtXQ8}(aXvMPW@cQ>{uuY?$JA6$= zz8+Y>bUvr~hl2Fm6}&6@EWy$agCBcK)F4yX@NRGWx@e{_r!ZzRFdVb&6JZTj>nU99 z8@t7K#;P#H>L%~c^^R2tV9?ku?3E!oX}mnw$6N+Be{)?xVNL>CJhH0gqSJw$_8s)+ z-F@qym(BXfFvE&Tg|T(P$j9?OZRI>w#|Zo4RF?vEi4HIz9pB_^!vdi}T-{aPh9At? z)9-nQWYZm#UVCfPGHo$9GP~+_$g;gtiCmc=N-3M4n>&Y`l`&(<{2}ity|h6Z3^q~F zOGsa<{tkAPnpy7**S~EeAbjmbgtn5@NTb3^3`GJX%|wRk#+KyuaU}w)T8lS+zO|)7 zEj_QH!*|xnhOa^*mMZ{37=QMMSm!)vtafBnAa5$Tsdqv?|P@Olkc+)GmD7_l0 zuZ%S+3`jAn1dmhY_1XHY^UCWRRsmCACe%iuk_1FN7Y|+1U14M7KXXW_M~&cneC5%~ z>KcFRwh{#{={jAzoWqiI>_U$B^^JdSDLeN0WvPSbz7QI}3?&&;S>_L*% zy6|&e*fKUzzsTeCr?O1$Tx%QCyivBluHanoh1dT_U3QeX^3b4ZIf zKG=MDj+fi)i5E0P)1D{}&}K}4a(IfLdiX(7U-M4>2QG)Qz0pk->=c;)vy}*h-Wg0c zuJK=_uE#FRCr6sqIKrNo`IcrKmsJm6QNH50#-BgEM}C|0Ecj!d;Zz6cnNkke_+(uC zlP6x8vz@a|y&u|fC|i%~)D>ESdcA+6Uow-h9jg6`Z#>erH*Zx|SUoOSRaU0r3L|PIElQYZv8$9tX-^TGT86CW#j3+Q&;*@cWLvrLHpD09VgOz9bi8p0e zIWHx6fEt{8S8A^{`6T3TT@BylhF6mM$ut2Y2r%aIOuaNtF32!sw=1D#hd60%<^@W) z#3uxX?m|A=VAl{>J*E=oO4^B(o5YHeSTwC97tnmm5ow>9%$z9k^t(Y4`A5cd{`hLR z35J}0g_-D;8uWQd)o7WZQJ4XugR+ix8^S3mRzuuHmv~YhCj}(<2vuHP)l=W;d@|oz z8fXxiF|@K_IFr~iFGBZdvPVDRRS9_6P7a8^t_&tF^_0OA03nj2(Nn>;YG?!Cr&J}t zbHffAc!7z|rBtSPWFEqUK6YAW4ocaFqEKc+yW04|V^@a*8DJ%69PPnsFA4D%Gyq{v z3Q!VLIOv012zBNCf)(??%qMZq*-yqHd`QvH*W(ip{3xVm*F`vwypcWf#`q||rd+SZ zKpkFNc0*JNyMtn(?;SnSQJxlg2BzG>A%@};sXXGS{)WD-wiuj|iJ9&gJ9gMy&)RL( zaf}Xkj(5aDH&=T@yFUG>dJ%fsnJ+TRr$2C+a8Ryp2Nw6H$knd_JEJp@gkI+2UeOK4j z4}0qq06H7qZtlNvBRELTahf&OruHY0pX>fGY<6%)WVOo^rhiP+*Q>%G>Z;~$!W%E^ zjVpmj9lTUT6~$0Q!T#>Y3SR^cHVKE1G}N*OD~+tYiw_-AGQjjn>v@r*rTBnW%u2+d z`xPxgGYO1z)RK2H7YJ;O3-of~0C+K>fe^Cixmy?kx{B%qsDavUqCH6GBgiX=Ws zS2o!wgk1<7``=L>*T!pZ* zUDPYaGXo3vlTl=@m>E6R-!{A6#>y`Ynb%k!g*7Mk;nZRNguDw;zBZ>o-W%T$KBaWR ztP5Jjfd}Xof3ZO`9wz~dReLM_W;EDNqwQFu7~>vNe`f!Sa_Uc2NL-Z{kE+^Y^?BK} zYq4-_tXG|DVpWZT)A)RPN*9u{h9Y)-NGm^rm%5u!Z+>pw{G_@K)@rqv@(c&vsgNcT zG`UlQ9l26hlqkZiKZ#QwRn<<&7s)^a2Jg!e>w$u%CM|5RbBE~jNLMEw%j$uAEx2lS zhnoU^Yi$jsPu12v^+z@*HQkJ*Nvbh`qSVqPZw|M1Z`{;Ry;fb-lG2)b>$iG$F(rO`ihN>JI$qaSzxg) zZoR+c@yrSzU#AHO!vyS_x%-W3BeR@=4GdY1s0+5H2r}&DOnB0I83k@YrU|(6#e0-Bi&B|8xh~Jf^cb7i7T=i=f=dPsD>Q;ZWd1R+U8!@|-u(t^}zp=aC z8;ZwrMd3)Xz0j(vw|+z6zMY#JAs=%^&UrQ5kS9&7R%xDgPpSC?RxBXca*0-)4Awmu zHO58`5^I%bKn*CvuZS{VfHFZVr@-~C+w-0G)bdTeJdTmhg||UY3H>kj-&aff(LjFo*6jPQUwAOaY;f%6uzH_Djv)zG^u02po1UXKs#bzxv?@4s&+V2GwTfyv1 zW12wT(PnylL3yANs0pUnF!-BL?T|vw9q(UtMIBB`wvR&%H~g}0CUzIrm6zPAGP$}k z0s6CY-GG=}Db4vo&aIG=CLK-TtR!Sa+4Bpgo0!%mqEh#?Sb<;GD#S)rQjd`!58p1+pNO5?Jf@FuiW#F>5mYus z>m%l;(Y8MY&hC`APhulns2p-1g74TaHK?wAd}oe53|v^U&E1Vww4goY27|z?-AJjD zg?*28yzN@omLpBuFAG_qrqJBMQ3+jw29#r{7Q4FX@q2DzhdiC3t_7Fh{Q8zMQhUm; zndG;c-*ZBy1=nHEBJn@3sczj=hbEbN%9oyMuA_U-MQWLn`{FEzm_>bmrW^lF1;I^< zfGC_-&Y6j8bb|=P+ibd@>ACq_yDH}p&t2(scej-*FcELhYeZ}LX`5i$xHP~B``lTn zHaBFBTD-Dl!?}$a83L8Ns|W3F^4JH{*eNHtWriozt_6n&&N7|82;U=T2b*#QwDXgh z$7DM~Y6(XVomDH^32(e6I}_MFre#h;KfyJ29^u$;*Q9pvy-yh0gZg#p!A75(S%`x@ zd2S(Ru#+hNHN9Bxy<&DToXR*6ys(b5L!OVV=Bx@o>}*ZM9~XnB8PM`QqKGgYNpfS! zSz}liJmZlRmRRRweB#`%T~L{=XEfzI(Dc8XrJbzD++H$)UDKVi2;dJZOu!)t&|oLT zlp!k&lZMK-xfDY;&)oV%4PDO)p|=(iUKAqXhjwHMf+kbVJdqH%5gTmEvo(zjtD_ZZ zPz7%G4RN-}Y+DRbewu{EV7MDb`3D5c%zfOIEgf$ubDhJrZ&uF6vvxe>PbbX!xwL*xqs9My+igA=wRzl-Cy8y_ zx5&RQ4(*E(N9l%E%30Oj{^yg(c3wLKkLw29AUND_o#bm4=!$#t)M6EZ=uTmzpA>RZ zNt+2(T&YYvd748$jao>nyE_%q6E@*lovOQGA;e0L2KGJ5(kTwArCv`GS(z)Hquq_s zq?Cythq3b5pNlF9M1oEu;7Xyss{@WMm~v*G)GXUtx6JD9jyzHm2E3xQJ^EF!I4oh*24jtpJ?n4t=UXNk z6a&qhG^^A7Sv|QJ7kh~Qg+ap&NBNwpC)**Jy(rtl!=|P&=1L85o`m{zqH+Y-3OvqZ z+U)-#I1NTv@L36f5A`p|-SvM&;GElm%CjZ82C z&Sasvri1d}Qn*qe`4`#=SRF#q2P`L{ew^wq*!@el`zyO@(kmli!f@+hI0niRu0$o4 zHjfg}k(+v6JC84v7?S_Z>9hoSb1*_%ZVQd8CH2(!V@olQOWE(EtM@SW~VE*!gi`kgV*-!_5FPF$3$GfS4yjUO&4=2r$vZLuBah`5x_8 zp`NuHp6QP-7EU6ydiMmIp zs56zu+gFV@akythWH?A+?;u6>hrY9HFq4yLI?EV~1yDrT{R>madmP!c36606|A*?q-Id>sm zcG3>#>xjR3lG*=EzjGvTa;Cp*R9GPL!MJ+L#bPz4 z5-^*oI6#Yl=71$pxp`qN%c!x-#ASQPMw1#NK|{ckgKVvNs=VwVJ_(*8QPo#Qejb99 z;b+y79qAgfttJ1$0HIUI1W7piH>=%hSAZt%o>_7=r%1qxF_ZDV^}R$PLO+LkO@8@q z82)JE2-f)2cX8Y;gDSKr{8|EnDL}aZLbh9j)|6^t>YV4iF$XM%GnEu1veKXib~veS z=)nX|NU#AqXO|W$;5qi(Is?!r!W1YQ)n;|27Z}rORBsed*l#4dI2Igt6+PfjvJl8k z`aky+K}im$`OXD8oGam8R&0oZhZ+D2bmBIWqvQ6DuF47b%ae%@X(?s-`WC6)qNd@F zlmz1WHmtt3qQn+~dscj+zIzt4Zp&GPwi;2%xZ>w7=vI40(et1kGQXX{==z;M3>#!l zNIPh`b7|iN?z$Xy&RuF73VH*D&hPIg--~- zpuj7ME57-tt`H*#GvU?w>Q!S-WPrgCIUHSmvoQ1i%rzb4bNct9bh+g?^#9l1+s4Rs zoq2vuS(as5l4)6f9eG@)EsC`Ig`^}~L(%k5O;VzkqBv}lqU7<&)!o(IC3bhUyQ)Rf znH>bq3nq)nW)mPmuox_o{g6zO`LGCr`LIb4U=l2lMG(w~AXs2G!6F|PqeUVszW4EJB81xB+ zNsJ2xxfeJ0$Q#}5$;)|EJ}5wv8rDDTo$6a~`!Rvi+J}fI#F;*Q6^mlR5`UsIz$awv ztAOx2DZje!1EB!thfsiNSn6)F{CK-bN{K~$`>Mz^MYw5>qyU)NP0DJ3b|&z9C8Ooa zvT-LC?Y{rypg|b~-LR41!}=8A@ufGnb*W*cKL>Ww7n_*?pO+3aEwHH^4-=-`$KCKV zncsGIro}DTC4imi7S!)XRwlJQZ6@eJ`psbie>Y8m!!*BctPjcf`H44oxB@Q5BfPI0 z_Y8)j5!V7H9obj45lX;W1cEAN)z}(|k7tT-e&m9gk4rF8BkE{OlwcWwJNzvRR;=qUo%Q00gR($m{l?!eHOfTqV zuoJx$tOW}VZ_OctE^HMkMzfQXoxXfsxq@5E5`vpu=Cx2%51_ z&748F%QN~y;s%Z|s`RgEGVgw(m3mDo;B(etxjkltaH#x3h{Tvvk^<)6JEoo59TtWL zLkLN%M?S;2s-xAaLJjD$68-N4X+Km)iY;PIcGFtr>`M67qK5IbjDE3hc<>$|^uxAZ${V z3f$y{HVmq}%)Ugt{8*)TPZQ*Lslf~D6CM*_kQ8<6vp(gQ!<1(0A@ten)Auhll@ zfN!z6BC;G|u4;G3m}&xGF9{Whcr=ToomiSmirK^M#(vB*rA6ibd zXq&{#y{idMRy#$i%}|&CIqH`X3fR?UdT*tI23^w*ld<6}{ zyuIe+z*Kb=hZGQVV*p)l7d3I@vBx}1&=<^n?(F15;K#Uoyc)pLO6<;@Yx*6tJMS(4 z?||FdtrtWV>ZWkm zPsl3dHuR8O!%dZoib5#=Fl4k0Iw!+HO957d4K`H`I7y9rx^^^a@!%e%fYiFDf+8Hqmbeb{O_l@qd zEP#p5ce0)<$8H3|r}f@MH<9HaF=C)qnhIQ*P5JT-F|bWFyTBD=PQlPR zP#i31P9)5GZ3>RQEIn`%d%CLa)xe`oz>#e`x#{KH+1%oM0+ZNc$yH!&=>f17(xd0| zaxb{7S=&BdgVztVCNrHJ)NSkeCg8($5Z4ph3Qyt0_|&|7e|Ud~L40 zjls-6*C!}~!(~R+VnUreMW*xPy7dO-7Z)r(Lx_Qt<`4cdAf7bNG$18FsnJ zL*lDjMbd(jPO=KB8;de^j~Ok$R#lVSydi&t%IDSaX5?LDH3-iuoq2C-d%iFg7f;Ze zHOyvxl5lG{Fk;9_ znBPsF8=@w}eGme6BFl-`SyB_d4obql>NYYi5e5Z8>=_HPZhbTf!tIYX1{KkN=HHu) z{vR81PDZJO?2|C*v6|5WvoUCz*m0XMXHVcm^0y@H7!S{m3q&8M+(0A`*20cltwYu7 zYh|V0v*4(S0~9gL6B8`Cp<;MtSl!p!4X5(b@^q_ck=C&xd@E|!{nf9g8!sVhGB|#XNpP*IcU;IfX96D+1D)f>B|Cfl zH?HCEExKBV%FziUJlz=KJuSv=7I=2%AIGsCwXr5urW`^WC-_v|OArp!6eA#4$KK>` zab=N8%vn7LCd1A4^Es!}s4F`d@X_C_aT0xE-+CPkPoc0qU`~8ksRua*n(vNgG9>o- z;IXJZsJo=zco&XceWC|6-|)L7^wj-Cs42n2^(=-@*;*Il4 zhZSrB9L=pbBpX~3z6th}nFr%qK+5YgQFlF3;0bE!R7|qk>dfRYMV)>m#&wa`=B2mO zH$Kb?SHpS?|5#DUrEV&>hp|~Tsq|?lu2mSf@!mRfk_a%v?MR*fcEAwvcEb+bm~?<1 z=N<;VA6wBZRy)i>5=usPKO6_D@{h=Qk>W2XRmzB9q@AZM75a;iE;~Ui9(r^l6*cur z0|VP7=@2u>d1W~&U?w`$0N$ZJl&b8F#sF^aZc3n|NCU}|*S|0l9F+NuN4wc-pX;OX z1m74wQ!fq$n`wzAl=HaX48RV(5uzL0JVdLrvFP5e@Cs#_q~^yudrqUfsbuWR(XD#z zl@0JaJUZzll$3r;tFo0sdGKl=Y;LTSJo1INX|a;$uuKrC@6G&3E?-nP@D|1}ocXbU zK}F%K0=Fw{<~Lw+!&A#CH8zB^n_ujh-jKMmAm^3vFG~#};K%}A_>ncX?x>ZU+E9;% zKkm$RZtQlIn<=tZ80L+okesKW40)E;K6Sz#Zq1M$w4(n(D`;m{_RXw6(WmykfUZW_ zu&vdwi#KH7*W-uZ{mHAlAuVua1&#A3&DGwAiS4_}C$&aYY>*5iNN|Y|`Aj7-Cv37) zxkboGyQyI~7>0?OdK~QVv71AI&1*lEbfUb9te@=ZY9Smq;L5Sc}bWCl3Y;&WHVCz=4ixazjCH z%wrlG-c)>aLvkAOJV=a=pe<&=U4hFDy2 z$Y0k2l6hqtYpW#!{qj8|7?FzaW2OO-qDI-!hNv2(|4BsE$ZwbaG1s8=OsN1jyQzK0Ew%Pe6hw(Q=nILB7po0xEz|6}otE$C=uR^j;4&{y*N{HP$O3x2} zy1cVH7zfci4{&Js0+DXsKFBR4KRg6=et5@K8cYbaw>#kgS4#(YNm**S4Kr?w;VVnY z_zAIU*(;INJXIAkhNOGcIeR1h`I1#L0NBN)Tb7J%7su2X#rF!^d|ku6DILSN^PX@B615HSDQ)Mg zuP?oMHErcRb@tU>-m{YP+Du23&W<2(Eh@RhKJ&Ud`}WsDLTl}n$E2NN_5^)99_7P+ z>q+C;(uF6Vj+dR(9zI^!wVRoaSwGc*rhR?^#Wkbg&GEB(uQ8~rN})Vlz_SU6fMN$b zrYu)rg{45q_A4c>`8Us3PpyjWJfAJ=#fryVs4~3L5?3i+9sX2tsb2i!dHuDz{QUUR zH}_3N|2P*9;fGpzm(W^dTyy-Rb@AoHyd~UmD8mBRGpK!G>DH?WQp5Mx$02h20eG>+ zq7a`+(M)0#b1~<{N0l`)fd`LDJb1Q&VvK%6=;VzN45>!pbHd#xLsCgZ-qF2+I#L4S zZRz|NrZ(z5F}WH=+ItpMn+=>Gu%~qd`a=e3E?OQ4fWpKN`NFvct`w zUed1%uLQn8^T3(+q#qbA$}SpoU3GohhOL}ia^q-7v=h}Onqt~E*$dfZ*}%aW+&1m$ zxSMarX~RUbIFPcLPa{~`X8x+U`vq+y=|M!(#RKB#YAnQPoy!*{jWgjk< zRjgE@IN@jBQ1*LO$<+4lW5T&uauMHrc&W;qYJ2Uk@2fyq0F#4H1mw`MIFT9h#v_3m z1mJlU{B4k|DIEG1RmGxE!9Ar+gxqp@))bKyrK^X4I3)^pt0GKE-C6s?ksCKp7{WTc z4amCxzDfz|zSfU#U&m};p1yv-Z5@6}X_eDoTXI21X2~_Cyi?|i!8ZzIRb9V$u>rRH|cO&vCEghL0;~pSmN~al?O!)GHg@xexcWhK|9L%s zS$jhLGG8n!AoNLzFs2J$05^8wRJqRx*B*&W>2e6*!>&9Q$)zNgibp!vwp?*Iz;^Tw z@&6t1^q2Kl{Rw8q#ZDT|r00PDnx32V46e5IaN_l+=A@W#Ns5!+Tv(m&j%QC*7p0sH z&ouYcT(j@$)XeFrcGb4`w5PTw@*SmTd_P_yc1L^jBq^}wjGzsq!8PRS_^);rM|E$2 znXaTa5$~jb&s>HBDgDc$f{wrAczaw}oBWj42MAmO`P*2_N})+A~W~oP>vMPkk~@jQtvXeirtfVjYMQ=obvd+A*&# z6!x-|NvIhrMl=Ci3NQQNTT61_H@9sp&ftDw8v#9PB}4+Dc{>|VF3iuE1j!TPXnAj? zbdF>qv0^L9Ltt7mW78xwK?pW9SH(Km3w~=j4XfdAaF-JT7YruM>MJz9?0A&~Dl3Jj zeSFx|&L=(z_;g-7H>yG!xD3Pv3l8OZ37iCy$zXe-g1k|)DFaYDp6*gy?;w(@Q(@2a zn4X-+Nlvm}$F5X+gXFW&?l@i@RHC|Wk9lu>!oWttJy53M;z97*u`^MNX#zH$Q3TXQ zq?0+ZAuLV4j>8LD&1T?@T+H=`o26T1RJ&9h>M;Lw9;SvZf9Zn6+KAw9N`5DP&o!1_Dq+Wy0L%J+#}-d47N z(rb6R+=5Zn(ztz3nt?8dT3z1QTb}O^I(K`^L);T9R?pO3)$NXC&=%dO^D@|X70{xl zV7nKrysEwM=>D0r3p?k|syZZeg!;kJt?ur6e|t`Sr_OXv?%aD>nZDtR<$=25Zq>ir z)D^n*Z+6L%sJ@!}>1Yo9e~x6@ZGC%6cVL~}?E6eUGE<#8Jw8=FdzdNz!X^seFwe3y z^gBM$$(KWAK>VnokDj|S(6)dO85v_>JWiXH(5?Q}{^+&6<&G?x&?QMhbXu+4Rl*4M zfB}TuT%yanHv4V6$roC|E&uAnZ>H+ZOm2xaE7ragAsvifwtFZ+4BZ&3gy$?iZx3{i zll-EaQ^Ibo$@J*{37YijYekRN$;}2+y7|k&3EDY6BtR{jTJweXE5oQiymLa=r5p$% zwIl!VAbC|MYlmxQCb?atp%e*1afO&Gp_)M5Cu5iEBxs7D1OQ42GYGa4SjY)l*%;8x z2mE@E>(*A48p>TXqPKhu9Ca0}76zN=&hDJMTJ?LY77qQ3996~FIHWKOCj-&5z$TAq zxv}Q34SYc)g3$>V(Qnb zqLXtLhJ{Y8_&hjgqbBrEv(nM8#-X}D7MeE*D*NO@I)~A|n%+adRo3+0M!J$OX;n$8 zimI+ClQ>srQ7JCyf8Eu&0bOofMoWv6CbFlS@Js^aV_7@5*}!(4;&Iqv^+53>uk0#IWTW)TcO<&3 zvjqmG2}m8LBP7CUptv z8T@DQI6ob3NGU@ydtU2uJ#3;r6vurcj2j!UmnI;*7#CE5CS4_Hg1d6=#bG~h!v+iX zN`Jcr5woMsz!YY}=b#$HSaN+aHcG5k26OrMa z;v8sxcz6wKnbkvxbxN9U9nV(l2t*XZi)wEwCajX<;4X0qSc1VVMO#ZgE7upHS-NJE zyvLeZd5(r2Ek|dx0{Xy*;sG4HP}z7vauF@GH4S%qD_mw+k^9)vYMo0Tx)hRKo1B>z zrSKiBCG@J4^YiHC;F=hPq@U(%x0JShJ)|C7)~hK7&(=`Wt?JzmqRGr~R>ICuF>&-+ z()I^g4al*}+bTy;5#7z}SI%^#IT-H>eQr9{zN><%=F+b0v$Q(oExf<~g1*ySP{m>| zU)X0k|5;oPM#ea#t^{;o0mWo-LCK69ctf+G!w?6KWUkFgqquM(1+aGD;cYXBy$g3L zfxA}Q_6~kw`xVx{11H(k{o46m20?<%IBm#Q9HOfe1@a zzo5*woSxcbPc6kDj{A6MvN?&Hz7od=nN!5Tgbx1Y@w+Y{0<2e}KCP2GMe*#+%*t^2XE<4!Qx-L}@kXDu z;9WXUb5WLHbXBQO;}KWnwb9~r399;a3Qf*Xi-W}}zqEue`?}i6hK{8=C$juXEBIT* z6|~PkR*&S|_WOwX@ zd{OP!Z(YYDUE238X?JK(mZ4!aTfq*g*2Ip+MON}eng11DX;D7Q^GNvpjjI1*cRNZU zJnV8_Y^xJNX+{4`@@QYqs#V#X=uM_S8RUUwUNdT$2DUGLOS%TIhR~_^Bs+=Ivpbvq zennsPT$O*Wr~Gtblz6S}PE^MdgNj9Hc{cCW=n4Qkvl{<=ZnJxT81eQukoA$hY;=cm zwGft3lwm{d#CpT|&UyKk#8?{_ZVR+K@G5yNs$PkDO^&1=mLUD7Q$l(?ZVaT@1?`LQ z1lsOkr8~i|ijUUz#FOx#_9%ks=R6Hp!-sxL|E6+L#y4upFJhPk-R3HiLiM8>Tmc_0 zy3y`^d~JfA@@p}N6rfFRJ7f0qookytt{#+OqW>oNhFA1@D12^c!-sxHmIi7ar;hSz zxg$*&`R~9WT^Li+IS_VUGQOXn2m7FEmlcOe1gii;7K%%FABXohW(>3O4K}|(_6XVpWN0JNO z-;sntr!krf&d%a&t2#3%6l~z^atz2D6q_t|8$V$UZOg{#)i^S8%-(x8nqj52x$^4R2JYpt zJF08;0>-A;gV9X#Klx(nK0RLbY0vX`RpsovB*tn)_hnqV;VEAWx+XI>S|&= z5ALW=4r+C|X=~e$K9dGR9PtIo;iH;4%>%b+s`>}$+MSv6e`45QxiN-{c}F}C?z*lA znN5iey1dZ`-KXJghb!i%Yy;&-Kojx|1UVkuG>kIedAo{QuS+?m@KMi+qY42)V)*i_0uX%u|NC(Do8Ris6;n$meh*hh2;f}U~8}{ zU$D-P!!zEQd9af%ulR1S>e3R3*F!~8M0R!lK{pXfRU=fo{^53Ae|NB=T)&b&F-_F( zOJaZY%bs}lh;(LnE3)pE#jRgYhxnUfy@ zh(2M0N6b4OUw+t|n@o6TpMtK5Z|(!e&)E?qz<*cD05nkrYlY*c%0X!)KAVdm`1#`= zbf5KFcW-kfCnqt+GaXQ|n=mO|#Dtk3IinUgOsQ*CSN=wXA50wib^YN?h%Y)Ga1t^T~U+ zDE)Ul2i&|y#S4Z4;-E?(UjZJvZ(h$}au-Hh_B0(`v|Pt-ypsrp4=+Sua_&$ntai1i zAbmLf0m0xQ=z4kLw>>_GcDZY}6S%kx3Ds5KmBKC43#jZ9MD>A4=bM5@}EjAV>j>V3L2FP0&%j*BI^HSxX ztDE>=lBeW&Sm+t<(!koq2@;Pzs58T!n&DM$kHTuV3#+}NwV3E;uDn+i%+2a1&`eo7 zYitH6*_C;dn!&uZ?%8VH9yuFNk#0l`3v0htSi31fYk}qcSBmjw$V4vCLpYIE$-FQMF~O2D=g~|vh>*Gj4^poZ@|ToTf$z`k!GNE zGuV{f9kCW9j=6IA?}|SEsg8i-N{YK{WsKfDJ~NnY^t9dI7&9Ap)B|g0V;4u7MT~H@ zjb*W85UPa@rlvgDsZCfbXy^Z9jz4kn;i`A7>i6=}W(|xhAEWJGFnK3zPy7m+XPt*gBT<}g5vgQ%H z=o#hduB$rmYS19-(BIE2HvbSjDf!Xy;^bLZUyIAwrh6Mm5}e-FrnkJF%_)7|iJr+A z;l5AzN!yytgNE>E-^hF?T+4|E+O7!> z)Xz@(qd@=VUHrAyUA!rt=@BSM7=ng)J+5k2F+Q>zIu&ecmmX->metK}QX~pKX4j!W z*7kJD+)sOaX?%|%a68|*D68f^X*>il$aSrl+`ilFsEr5t7I2)TrW_618H!sSjTos5 z=66>FRS{4-E*{C^%K;AY^(@9*2KY-A&rQhat_Ncy#xsqQYC+gI#p4inbhx!I@;{h4 zAAp~`XV`mkHr)GQzVOuv2+l2QmWxw&`yh*Qm&T*G zG{}Q#2k4m~0@cW(0!LH-b?LyS?amyFfl9*1!+Ua8I$0;Q{qL@=DPU>cDIdAMx4raJ zYsEs_ukmKe$y)&fNj4lw_LFz^wTt(9y5c)DC0*!K$5NMns>`=ShFLzYr5(ig0{GGnZ9fSs!6#=GVBipyqym_n2O6InPrgV>#0I0vm(d?v50UZ_6@;cAQ_`V12Tig zjuVngR&m|xL=f#t5rK#xyd*FoC07n0POC37JJ3Wd?^yfLZ4c8p$HymtS} zDg^wz5&-+^uM6iJ=znzDo!7tQiY>(77G|z%%{DKYF7F1h(OjKXzSWC$0dZis;jm4(UDH@M4TSEWKo$q@d! zdG+#b=^pF4ylIzfsFYeqfPcQT)a#Ac@$|Om@AmKXmnCF|^Ml>>1wJiQH-Nu;F}^-L zdanAilfJ}AeaqjbvgsgrEpdb3A@|F@1UV}~$qOoHlx9yXVlyvst=34z+d=Iq5zNd> z(w*V!o`7S#32oK#mz`7cjHeccf3vAVipwQn{7N?jj*7G?%DkdM8va9lHc{X1aoQA} zB>Ukji-Wz*)$M0TW+LDVJA)^zeT!EfaNhB}t32sFtt0q2_ghCJz5n_4<<1A^Eo{T# z%^4tVk>hBD$YTqJ<~r^Z;RJ+bb_aC(1ivMluFkRS(BXE?q;(4{aB8R^Sh##+uAU!> z-uW9oW&H7ynrZ$xBF3+T1#NR7qa~gH=pytt+qv}okK0$b{1L4#sho*xugXHzr?|pz zG*=kp)!kj)XDRPZ`x@VQpf#ElSP92x1{ZMsQRs;B-pq3%#2k9R8rCL`^nQP^H*^Rt zZS>bh&rJm2+DEv!X@K~x(n6;Ms+EQz99yYfNpuYErj?D7a7Gx|5|7f>nPwFh_aZu zA2(hq6x0>866q__PQs-@?YsPg7BO}-2vDpQENE9V4f(xRD|r+w1ZX}Xh=E@a2DIMb z3I+54?DAWpMU+~YXT1%du~R3c)bz<(P2|z5*NIz%VAauQP92r0AvWfT4{}m?uDOy~ z)^%UfeCI;wAQMfJT`Mr?kA7&@d|9jT+l_OrJRLO}H)bQ^GLK>z80;N)fAzK1lm&Av zEM6t?tC5tqXyGEKY*)R11`5IX?HuKW;X($!`NAA(F5Tyv{GAbma<#aOb~z!Icf`L(~5+)jpm za|>HHDIV}9^8$YEt$-bGaR*lWINKqaicxY><)GcI#BVr^Ax~pZpa!)Eq!#fjDNER| z4njvSCrbBOc4od65oA`DzwT(Na+E#JAQgTjtX9<4sE*)OfAp=E<=2$iM;1rBo6jxq z=;vf&!1*pJ4-|9!q5nb65l?7&G=19)JO+$64npSQRxqpafq0s_d4rN~4gBI)coCur z%(G8kqQv&ykhY4=;QQ6L&dtrI$eVUxj7SsMdHo;XfrF>2Png`Sl_!uI$2BX`VO@W7 zo6{-nXCeC*)z=PyH!Syt1I!Q6-@}D4nE5~T-!vv~Gry_e_4U_x&P+aoKR*sFqc2Jy zwzHr;COGZ~Z?NPmxKo{v!N6BF&7RV_S(Tk7mBW1Ee9U`iDuvHRTD3z9m>LS3-xrk4 z;f4%a5*&S}CmqqKhe3+ z8}86_4{k$%0pA0%d~Z8koT?kw?so4J&Km9QZVx3o?Bcd%Me}>2wv+QGL*d*h{oDKL zURMq_bxxgFIIc@!M&WX@xe!+1%UK9jbtvH}&BfF8xM0W0g&Dnv8B&$UkR?mWV`BCKz#*xwpBOyQ{ zS|h#vBF!Kb=;*w-tZ0GWkU0d0+u3Ym=7NFc;WTQVoE!|fK~EzOdmGVCuq0IyIF)(#XoP#)s z*_?m`Ub7guzBP2rB z{Ev>9ds}ka;@j-3s-fs^Uws;b=XSBXxxz2z;uSW|*|lp6kx>Os8kuN(00%L+IL=Bn z$h$TObWl~UhXBh?PuL&qw_bH-W9a_t8Lut`kQa5BS;=F)8iGJvfjEJUF2+45i+4E zyZODp{r*7VhJZEB9!n?rsVCw|LOeOsaLv6=UewdV;pM?=Q_j z+P52{06APohYyK4~X>Z_b}K%rX<{Xs$5D8S4 zyMs`(v2CqVO8P{5;#66Q{=wz%!l<~70CgaRAD~&=hP7?V7_ymw$R|u$BNKF`xg0i zcbEI4-R`bTypVGp?i;_`A6m9`Lld9*Un3@#gtvPJaM5nHC@TiVx`)C1IDIiY7(Z={ zvGEyYE-**C@d~%Ev3+~q{+^rpHC>f+TEVvG)pq!_d_d37d{1%k7gbdKef{r6{e4pZ z=UVP_`fHjuzMq}spgKvhrPaY!N&o0}lx(xNI+(LZ#70KFbt#kX7?}ID)2E+*{`;p- zKL5R!UVP#E-+%F?lP?8!@Z9(h-!Ca0hyGcFJmRd~I+&zrl!SqcI5WiEDyl0mc)Z%w zhW$8CovYNdxlFiORx8S`DH2QKW*>)8%?0WtDAhUKCqTqTYw5psJj^YaN=&YW`ybqb z>2(#eG%>rsM6JZBd4N7{0atPo?L^!zbCu+Qe7A~WJcz?+GNy9sC}OCj76Zu@O2bs- z0w&tHBPVy%vfQ|{iWd^)nM&C!#*JHyVfufma_>>hrQvc#xef*z8^X7Q-(ohR|FISefsDk#dt9eZ-pS;kDmT6y13`BZIw| zaA-A{Q3(@%|M;ahufK8r#_at3yg3V1tg<~?t9?yUsGG*bOYd<1;~hKCVYp5A`FFRf z_fB*c=Qh=@YA-Yhj1Kgm0*6W%2G1OkL0Ly7lKQ^A+TC64ENXD|9^JiP5{RF=qT{<- z9XTC|>~eOuscD0noNun6m2)=jD6siZKu~)Z^;dfci*zmPN0*2**{;cUv;$@xxj1z( z#6gk^$7hrxg8L|!I3Uw5aQ0aisZ|rY8be%>U2)jv;xomHIejP1keTn(Sc_FgfM~3c z;8?o~082}XFy=0n|m*J#V|@IZqEMMQ58JGxAshM>< zeHxp7e@lnpml_gMM7eu^R*l?u(cP<64^||pl=q_RwVIpGV<)cho4?sMB%o>8@HA7! zLL4Qx`jDf7a5p$W|x|u)D7+qPm?N(@vbb?I`^j~L=pk5wKGdAH*x$J-ikQ|TW z$!bze+op=ouo^>miZ>4kwFwZxH`9dUx8Sj@K7W! zow}LDBf}!l{#FD)n?mq2Z3Z*SK`|L%uSl_YQ=Y@bQ{l@W=(7pmaRA!)bqYTzKRWm0 zB!Il`0Qp&OchCY35ag9BZ@yv?)((O9g@SEyvGM&A7^N$Q6}vh0nrsH` zTuT7K%n3LbQHG}-0asDY|jwYZ$iAGU=tbWt-oB~j^acC8)b6Rzp$^kS9IPW@e z!W~6L)ai=Z>HZ=Q=Oro|_0{Y^GF1&zZksD!Y6|eempK7a|8v}b8$U}2iI>6bI@Ihk zaV|0L>W|$cNK$J>5fVm z7`a^){WNxF&-b>&9Zx{NhLZtPgTyJ)>!ITj$ZhCItCD+KvH{f$apW+p+nbJ9tPlp@ zwCMn(8{mduNiL(fjK{{OJtn|tgkkBcwoVeku_nmw!8zpmKcC*yQ4jT-C8L?hvMx5J zkHcd;5f(II2G=zbpZIs36gGPI@>4>c47F{;5Fm?u5+&S}0fI@+P0DAvx3kmRog+0^ z_gUT3HI*yLY&`s#G!5fyUNm~ zIB>9CW2XEx?8s?DN@ILP^s5kRb@t&tv{iSsSb9H+kE@;A^M_T)YtP9>iONq*n^$L^ z!LE9pty-M*T6W=T!D%=1zeEIR;|(AWms*hMRMuz`HK*G-?695DlHi`y*F4;iWIUEV z$ThAW^6hyc-Jw2}ir9H&5vA zaRs5INAbM#MTpbR!JxdKATu7D1a9Vmn7QS!+v>s*yX)&Jx1ynN#6Sljmb4z~Z|!Z> zb*M^ANh9EqAP9?~`tKhARL%tq0j3Aoxa_tOJ`NB@{c5YfJp~B++W~}8^Q`HkQ^NAl z)BC~_-3Xs_FFrYrXdn_#c%@fTvvF%#Y{mq!`}4~hSFSn11gz;kOaty~ytiT;ff$;K zM#`~tWdw4^nF+}|4kUBH8528VMWN@4_F}6{jNxB*~H&mnsyKn%>FVnmyP3OW8qOWY|wf=0KGng^Z2r?O-TNZ zgK!w&ajyl4mD~%aoD>Z3zIvgf?sBRul)KNh6!XgzjgFar5VwA%!UgQsJSvCS#-CId zdQQbuyLq;X84(CEt9U8#clS6U6akPMBnJ_I>Py4~`0TgNjhNaReXNkgckb1AWr- zpbA{GL`trlS`v0iB>g90-p4HPN;ygd;CwNY zMMvN6yh?cR_R%6Y{Qbse+C)<_$A1a^-vX$mf4Jzh$lq3QDq|yX^vN%e-~-`|8*I z4m%F@g?4=&7yypVtObK?)A8r_c~g}c4<0miZcZHoD#e76t$lrVIh~kQb2M0$%?w-c z_*Y_D^20ho_t&=7%~Yy-q-XbEWs*}?qD6(H6UHt2kiB97uC-2Jb^Z%he=o$oieyg; zNY2CB$llQtcY6H|&=~;X{{$!)0tw8Xr9_aPD2QpA=BRe@Y46mv#!~H7{Rv4i&2%v! z1T#00!ARVk_Vs%3vPaj5J@3@T@ufU4GT{snXdq!Iz$!}}{*#iI%i2H8j$4Ewk1wYm z4_p;Tl1>nk9dbx1QW!>=u%ezyVS3x+y-|V6BRssEf}oa85S3!lulzinQvp{_cKT~Z z)Y}8=EU<?QTcS@9dPr&mloFX&F8`H_5}A3Q$bw0C=A_9T>Whf0qt(uI)6_l77QVGkAq^$`l9A%#z4JaqzHr>@&f)@bm{ z;a&IWvwIA3ZKpXReA)b`98uDaT$|cbR0L^|=Y#%>>5$Np`ts2gPYE}=$xhdPka7^0 ze>QDMca*KEPl+^H&dt@P@#pwvCIF zrV4}<&t;lW$lD(-4)T9beHstW;c#zTRU$i?7C&&?psw%}E+WByCoiTtAY z*%aQPLo-vJ&nM}0OzDJz>W%>Hf(Q3h{nd0rzlZ~x!teFpG|mQ`CS#bhm?TuD#d7f0 zld1BAtZfx;)8!s^Z;ltsmP5ur8?fChLlU>hrm2j8U}4sEkDLO!2H)Y{ax}4`6mLps zF|GBDARy!!#L5aBU&kV`ep_CQ_5SuYe}~S-{Py&&F zPli)t{7fgS0F_fCmTm;2HdP0%4CId=uGGw}cp51r5asq{#|9c!U6LcaOZM2&h`7^K zeS)B+ZCbZ5Qo3*ha8UcDKoLD|W{Gqa19idR?h!BP!<)))hT3)EZ_b9MCg)xx*Q*}z zz%sXT(5}*vsm0c)Kj&a3bt<=&{qS;SDUnAl&noyC?D?o;1zp**`DJ%=enoovIK>9w6aC5X6#6@&in6zT0r5b^wR$tLO#V2f$SpR*29S0q33w7%GhDor$50 zPl~7JVo0YvuSSO#!k{xCfz7`0fWm`#TXl4wY%`uFxVq z7k_h?02Bpu;lyARR`dS#go*PW|q2vnkYkEDH?ZGJ8Jsq#P+R!qt)%blX3Rn zbNJuDkc|ovhg3R|@Bq-4BGib|2WLjmhlYvUqYNdFN3f-1?%_M>2UY(Ms!M7O9lc}YEd#Bymk0;6vJYfmO)$X7xr z>rK6rqJ-#o`*%2+Jg3#ka;Fe;yI>e!Eoce%Ff`*?puq0zS)iD=4nC3bnE&uNIR+;> z*Q;jNpn-MZ2Tgh$e@KGOA}HZcrR>u;Is}tdR{?12% zU-3qzsd23K#(sDfe9jXP?IGeX&Prfli~2OFa}0-?_Yw6>Yb+OXpsXr~r;t;d`fqA> z@86R7)kKbbOnyrN*t+g$tiW3LCniZ`-`(?O2$QAi5q|U9xRyJf3T&)6UxDu`C0r9A zgca7K`b}2PI&!J&D|85xf#uBJLXNIEw=?f13c~uVr;5Q4)(osa3{=yI$u|6-D)bIF znY6a=U-ACdmLK5V{YlO-4Vgx68EzA_(3Lu&g^KDqQgxKSSv6Wxzf$qtjB^KR9T>Nm zx^r(bd@^Qj5teK=A9QRvC58MiX+fCu$)<&-xc^1b!aw@uqXjgKobV1r3ZME%nOK;u z441zY4TK#&NunXKZM1WUcY0xfFuNk5hAEc|RX(TKcPh)Eq6m@2?`BzG1DMb!W8L#e z53+`)ufZzf5o;e`+jPq!pyxDx^JGt$9_h&%c7dq*xs#&_6@pZ|)W98|db5Kv@B=c~ zaX@*Rey~^dhKHN-Q%!TX*=HEpC|azFvq@ffx0Fz}lA@Ab8hhvu0$ZC6Ev@A8{^bzz zi1(`~0@zVGS1Wa%&N@}+kIHZGAzG}jh1-M#uqx{~gcIcLYi~te-A)wk#H(^oWok+^ zDyuH+miOU>aJ|)%w(=?ZN4j1)tK%o#1@s*SN5qm43h7vi8syI=0zfau)JAh|B9$eV zQ_6)N>~e|a6zB!{slAq(Od0?B17-G?%YJ&oLr4~AJnbl zaBFv-wCUwmcV^|cke!PIG!w`#5ig%`$j}$Ye!)6Oznjkuh$rX9{^V{9#m}~Uk_Pon z%?6`BId+<9_s$}6tE3$!WrtGJMKdkSOOOCMrgxU%T8G-fUNW0xV)EvadBB2M?HccP652$LaD1!zMlDNhS4Q*gvX406EBTGg< z@olS%s%GlIJ*rjd&ta##MlA&I=ia7_{Y4%VZi1*@)s!bIo`bK9B~*T~hGmrvI(C!9 zR7){m7Zdn?i%ji>zhr7+2vqiXy6W`4;zZUT74w1}qv1h-f62VOuOnjU!I{@VV0uvI zwfRfRyq0?kw${6;qtFE+x)*XlajxYy7L7 z8N)(B7GFc7>Pg314;q)5F6dY8$E|BsJd4g@@8*U9h;8}}=#4?=aydy*Oq&ur;07nx z0?CT2dpGNPiq$32eTh&Gv$Eejt@>Zh5qVa(7xSl#GGEEV)qx5E>3!O}r(66=5=s%i<2n*cw?(y`)&Ehi zZHI#;Ow@Z;-w;qm@dcE-#c!%qych&Mah#-s?r1hNi44hpv(**lyXg-a+!tbzx*qKK zN4S=w#~)}BPpJPGy-CgMpYAVzWRYsiP1eo*mwKZW-4AAS>CD=v`u#9fDpr7Y8D1OEk?IP2S#*a5 zSK0vVh3>CE)2~pXrvU;O>d=h>`OSd%j4l&;ZsrXw{yn_`N5JZUx-I0&I4RPCGXn&+ zesPo(t8--B(D$zQLTLguv(KD5{>8USputdaMg&)1GozeXe3sNhuDjOr-nc|I-0(CqVSi&oug5AD6^YyS(yY~?~ zaCs!Wjv##enNyv)&NHV0-80W~eBzFwQ5N zUuNj_*=M#vY7JY4%aNI5V!ZU!HrzQAq57F);V{mW-}|b>8E|7UHPmK7UvK*{Ti6q` z9WBi;y>)drD)*_kE;tkBJT>#O{(VEll=@)XFQ=dbDp|h&wz!-&xw* zIwM~8a_7AA_|(Z-A5OpAd85CrKc3eg-Fy1ug)#`9l4HdXihqsBPR79xpA=4>1SL=XiiwVdc$+il!rwie=c=xM=F_sEv?@69_m2L% z7*NM}KSDNec>SBW12^2FU9u(GL^xvev`ZD|7j2x??#lJnSRZKag)lq+<||rAE06oU zes*KDwR!IBhFJ2#xwFfI)%)kp?wnf;f+gHDAEnD6Fc~tmOpVip-MUWW?845uvkUg# zLKv$ExIHL8X;;&9P2xH??v~|n%NZlE?m1jqbQ#I4rRx>Pm z!VB~5Jcgas!QJhbYXdXps{t)5=_+qz9vwod<$>)gUg_a(!6x z`0WD$`j`MQl6-XOaZId;&*^)YB+Xx(hd009(YrQAQ_ej2A*Pr^sn)K^@S2C{dqMvA z+R}Gz`$%%h-#Lf`+j<~m*psMN-*3YeGA|dnzyb%#KS&0_}AJEqVr?k-q-g%*-uCH*;YGJp$Yx(@kGK^&gddz zZi{+Z&zw^fE{FO>t+Y*lWCcFgxv-{=n&)r|p3!;mbL6rm%rMT;cAk4h*?HOLdeHM{ z?G7*h*Z1;ZaI>A`f-(x_JXvpj{pLz6LC$f;@!v7gD+3dLSQ?3y?BrNy_YmT50_)22 zBW_udhl@NN2ud)IGw+*%d{CHLRvEoE_k?NHB13W*ZE1idoRR#&h;yz7xEd*d<#7^$c{IM&gPaeD&_mU}sL^S^k+l%$n4qWw0|+Z~EbxAj$S* zv~Kp#omD?o>i+I;_I_|wUa#%Z+}&P(ePeXydnZr6eDvH^E#!J-sPgE!GXyDgH%5Jt zp{(Cy9aW)Hr4+=4pIu#a_F&#sbEasR zGPX%y3PX{sV5VGLjP6kjAsO|_RT{&9o>9t2s7C2hpC$KZaEAlw1Vh~nq9RGv+l+?Q z?UdDOJirsySoO*|FmQE*98qVj+uxKSx+mLnfC;K&&L=iVE^vfXcn%&DQMl5KSj48E z++gM7b-rF6d#!u96|TVg7cPpnDio7UpCH26mNPF?EH8mF4c@ToL@o2lN-* z-=7?Hq@gLN&cHnet`(ZEz&ivcpH78lujfd|8ZCZZ<;YL6iXY8csSnZmgoAe9{ ztgDFmjB|nvN+d8sOwxqKI#6%|jEM6WWzv+==ANwdXM9(u6grq@SMATGUA4g{-&1CTw(Uv1s&`J&DR#f9q5+*r$_(I_NKGq*G%&_eWj5J@=nw5 zSNv%*E;dzq3r04LL&kQFYuMM-Jbx`_9hh{Sa&jTAQb~>H_xV z5F}RhpPXfD{Y~kb(n&*H!L@PM!MD^esJ}fo8tk0uoZPwhvf``Z3w0kG4HW*%zvJ$M z`ZuA0T=mu5Pe*ga=;zc8S?cYX&ME2h(!YHsADO96ogSa6_Fb4NpW9{%-!PHxuw1$0 zGo5@n+^7{lYV4!uF5cT2$ZU{aw77KZjI>&*SCzV}TweWTP(?$>Y(edIs96A}t5oFB zw`3%MuJ(uOi*jF3JZ`DP2G!xL|AKj-)Fd4W{m6E817{V!JrPth7Qsmn%rUd%F93a&O;F`3^6uqX_<%Tbk9_ z+*vXFj@AilTnm0kjIxnf=1|Jdg8m1yoR>$Emf!v0eI4j8{5A;ubv@y~EhqzvEFtDa zEq=FBwoJ76>V`q}tUpObxV8VN?*lk=X5Jc`8;07IGIy|G>_05C)3>#_L-cx`v)#^yE<*jm z(T&k)XLx2|p|?GMw|}RRpj8f;UeWUBmu1A1mB+YVk9xrq^ z709y}2mi|X)%W(SpjIqofcJnaheMLqc;W_^u%@xmT(I(9)xlTy^TcrvpWp1SZ+EUp z@RS#yh5{FTs0;ebYO#88sL$C@*KszL$C{OK0L`*}%MUbF*|Pqe+AQZ|JC1wgmF~(N z?jRL9EefU&IJjy z@~Fq8wwQthwHx0`=CyG;c_!nCPb^Z2v&6;2RO*xmoewQBU}}B_fTVc4RbUf4auvhYwa2Pd+V6I}<7Sk9wVz(kN z+;yKk4NX0HVt6a=?UhCHXf4Ulos^!*Cmy4V`^0OcFNDV9LD_%}1r@{{hGkH!O$7=| z2!@#BHLLoYtzhtCf*OuDHy5`ZH*z}LNZdfBEQLEvt5uuAr2OU07K%S9F@VKsS%8o! zo)XjH9jz|~yuquYZsc(ZUs&9v5BqsVNH3X&RR+zmu^D{an&lG5ecZ;q6qMtZRkx2> zUh8Akm|>meWjU8Q{oZFOyTu%#P~Hr1I- zWEPMzDCOZvAC&LZ=Fl1H?MSCq|q5ogOX>|W(uhJ!RyDAEbNYyI}+}X z#)+O@ECEwo?dUV7juv+J|LFh4mmgUi?QT9d>0ENxnEIg)pUXT>dJJ0($m)$y*V>_^SWD&QsYFA0zTa!i=N^D5W~;cj z>0R|eg2_pAHfqBR1Cm2D4^-5k8`pn2tRI-w_u#Ir;N}Y2noQnF;QY;i@TSe1U3hQ|@R12h;;u3jHT>ew0)?-xBw|)}7zZ6_sHC0L&lrO^Vh`QpO z*x2Ji)zVZG>>peUnX)!E1FpJp^DB-V?5i^PeoF;Pbys6z!liUBc7cLjkHL3leiZ56 z9h;X_9Qor2(q9R?3=Lf6=2p|f9|aPg?Ob~P$K{nRe?%**rzV=Kbydz!ol9KZH=3&p z2|{;w6(MOgpx$|)^_8m{eiYJL-;?TChuW`(b;XvX734xe=yR=rTl)wXHVyE;Ra)c} z06Z$BM(=?@++PNAT?_J`a-MWRhcC&;Gs!>pWbg?x6x4_GNX2%Kg#4D4TDy}0^zOaq zW%Hmfh>w^Ytx3$xweZAiT;pxbp|!~FwJ?0HUv}l9PCOx3b*3|2zY?ZR25K-kTj!q* z-dVux-dW#PA;C4$!;xlATbV?+tGr>7c?|F-C_hXFcw}Qb2?Vb3Xz(Mk%;VMaN{NTA z`cL3_fAkS7+m@C`fj#5M&$bR<*Jh9mxrdR{a5FvMdR_MknMm<;zF%!W%eu7MUw0O! zjK*3>vV4d?5702|@Sswz23x0vz%R8@TQA35mw9$fo|$mKAXMDh$;%#1kq4%`D>2~_ zmk?SRkE)cnbVOSMn9;P06FhQRp5p#W+iS0jP6*SPG4Mfr?K7_{I?-Qi@i2dP`sDjK z;^CC3T3*cGoq1D>c|TB=^CWB%5bvLAiLOe6K3Fg8b`WB0e3K`A00|uIpc(p5DPx>> znh2Zpr~^`U+~nyuEyXv>fVB))k`5A*=44z3#-G%HQF3aL#O>5*1`=B;;VHbBY@$?( zn**yI!%eF*k|9ypb5w)nxa4GCFsMsSMF8s`1tC#Q~1VM;(y_b9S z%!Ld00P4>B(*E86#`>d4&rW z#p`x4UCFQ(jtIb;s3;4O`y zc)9|GsdQR$<<;>zt{zb4468I90=nWfDw!s!GUan$U1T4k0Xjq>6AR`%|n1vxSy&0qpfwSXk9;#jqc7~ggx_Pv?JC@=DO<-mdlbEn=| z9#ov}$?-Is^3YEP&rjZ+rUtoi4O;olr^nwEd@4yA7xKC5c9j}Ju{_Relg0@fP7)bz z-R93pl={VNPUTz5Pt$7&JG@?;+c*Y%$&%cxoX@32%lvW20)2p*-3k<@FK_(P*yIQt z(sEHmQr1EeL2k+CRGGH@C7;-n5+=CfzCJcL;yajYaU+lUcz8j|TUgaFA85HIFih$q zwNtLVNo>=qnt42-p6G?viNM~bZF$Ueia5#Ro|<|L>0X}U@3qcg zaxi(;JvkHIrK#zd4UDdZ0I*aB-sh}xAH3Nig|LyH%Oxq#Ip7?qJ`S{#3zncq#XY|g z_RI;o+rxbOvz;Ny%azhYN^w1`GqhC2c0m1P0-$QnW-Tv2oMwSZeWRJm5V!D5+=6KX z-D28w`8ba&gbUcw;7LC))i?(iL?M$U&i1vcTS9E46T9b>XE;_-yQQL;&NpfNuQbQ6 zy1bM}e|pSmX%qz-rVPO^)H^(=fkk<=WrbkIGj43n?vQbY16rkYwz{*)#JH6c+38}a z0O6Fd`HiKJAR}efPECBIO2KZ|=1xwrz8a~;Q+vFcZBiiSJHiDRAN~zjL@dn6n3d@o zM|^Ba?9ffmGB~eKGhhvj``W^B`d`VXZ=~{-SMyjNA&BEV>Y;%0OD_q(QlXY%LV1xj zxM!Z$BTE}<=89Qvuy4@@MsnISJoW(gBP5cuf&)ygx7|ZyL`N~drMYAOnxj6%JtGvp z)m)@xT6fgBtE!dGMt@b+BxUfNE`Y}funrFHog65c{qoFeobwA|PRY=|a>RlQzC6ck zV{-97 z3f1vJppkb!G+keY%o=x$m3R1E#k-Q$$8L}VHN{-t)it!I!WuO9Zl!XzYid_R`_p=f zMgkY!8La1~-^9#+E9{OA|RC|QC;*y_hS+d0?<*!ky1JyWO!BAfJUlS40HK(md zwc!#0_5@yd~#LO!WHtarDx*N z4c=|42ysY^+0!#v&r^CfF3z=YngLtYFWIK{2wR6D1MSAPnqAml!hZA>nub4e=R@P z-Y>RHSB7ghmFX7oV&-ob@uEZ#h%NKWei+|sI|C}yPR`ALn8Q*vi+F-7DoNR((eWTo z9qA(wMwurZ`nyv>piKFuvY4O6XyKQwM?v!PIK3n({E6>Y5V_}nlw-#5lU(*)roum- z5(mdEShO{lS;-o8c?D0a+i~Tr1V4LtrSnB|UvKL(!hc==!rAk*xSEuRXK}H17P1V7 z6v1O1S}ndryR`El_sK0FwV*1%yFljxEBb6P9d86Up@iW4fm>H@l<+$qrw~ici|&^I_%ggCSVeleb(7A=+38!7ByE>Yb&QZ<(Un2`T%07I5q9`yuKYN zvvx^)BELU}pkpV{O?oF#cDF`wdxq8Vt>H?2CRg0;H}`;XZhoy(T1zSsJF4FkgrNQd zRwC(rJ8@PT(j&9eP4hfkn}=t2v{%PcI947k&hrlaJa7&%476}`k!7-q%n=wtbXTmWRaPvc0)h~j_p<5BT(saq!olahcv*# zj&3{e(Xew@mu|{YS61$3{;x4Nu&FoPf69S_sGfY5{7=rL9g#s9b5A4!sgpg7%u<(7 zoejZw2ZJP~^^uzcdxA+X>t7fT;>wX6OCQF^2$pxb3~hn`RSCk>>c9n2-8l2zZ;IjVqp&!^&3x&`V0~Tw$V)+)=-eRd1R8H;_ML>?tpVq&?Zj7wPv64qY4l>i^JPf7YySnsJrpn1#eoPv2mxbi7HM! z>x~=tcX}xaZF_HPIXLOWGQ@G|5o&C~t|AjxvEmAM`-y3JsF_o$cx2@)IGi%7?6L4F;T)3i8F9fo`qQR7Ixc`TlU`W{_X3 z)Ev#Ag1OC2SFkRd{GC`w$?ndjanexD^*4?HAMSWB+(cAzl;J)!9haHywMcHP0u?Ko z{^(`{bpeWcOO&G86!GowTOri3sD!mLoNtG7MIaDggn=i$0dmD6gOMDhzOpBrqbbR$5L8%3IHT2U_eUzAD%mLA^IIP7P)*(;Kk*VVn?aG>UceW z6|#3im-rh9n#aO6tN?3l`Tw05pmkA&y?PV-Gu6b+X^o{VYbhX_Zzi{mO)rMYchxSQ zKoEa{g!?mgMjVgH7=y3hjfv%Eu^hMjP!gh!I&=Q5?k@OrMn!93_pYuvXe^SX&fQzm d9f^|2ELWa?b%~}LiH{%l@2cGOp-&z9e*p~{&Q$;a literal 0 HcmV?d00001 diff --git a/ConfigFiles/translations/sqlb_fr.ts b/ConfigFiles/translations/sqlb_fr.ts new file mode 100644 index 0000000..031adce --- /dev/null +++ b/ConfigFiles/translations/sqlb_fr.ts @@ -0,0 +1,7039 @@ + + + + + AboutDialog + + + About DB Browser for SQLite + À propos de DB-Browser pour SQLite + + + + Version + Version + + + + <html><head/><body><p>DB Browser for SQLite is an open source, freeware visual tool used to create, design and edit SQLite database files.</p><p>It is bi-licensed under the Mozilla Public License Version 2, as well as the GNU General Public License Version 3 or later. You can modify or redistribute it under the conditions of these licenses.</p><p>See <a href="http://www.gnu.org/licenses/gpl.html">http://www.gnu.org/licenses/gpl.html</a> and <a href="https://www.mozilla.org/MPL/2.0/index.txt">https://www.mozilla.org/MPL/2.0/index.txt</a> for details.</p><p>For more information on this program please visit our website at: <a href="http://sqlitebrowser.org">http://sqlitebrowser.org</a></p><p><span style=" font-size:small;">This software uses the GPL/LGPL Qt Toolkit from </span><a href="http://qt-project.org/"><span style=" font-size:small;">http://qt-project.org/</span></a><span style=" font-size:small;"><br/>See </span><a href="http://qt-project.org/doc/qt-5/licensing.html"><span style=" font-size:small;">http://qt-project.org/doc/qt-5/licensing.html</span></a><span style=" font-size:small;"> for licensing terms and information.</span></p><p><span style=" font-size:small;">It also uses the Silk icon set by Mark James licensed under a Creative Commons Attribution 2.5 and 3.0 license.<br/>See </span><a href="http://www.famfamfam.com/lab/icons/silk/"><span style=" font-size:small;">http://www.famfamfam.com/lab/icons/silk/</span></a><span style=" font-size:small;"> for details.</span></p></body></html> + <html><head/><body><p>DB Browser pour SQLite est un logiciel libre, open-source utilisé pour créer, concevoir et modifier des Bases de Données SQLite.</p><p>Ce programme vous est proposé sous une double licence : Mozilla Public License Version 2 et GNU General Public License Version 3 ou suivante. Vous pouvez le modifier ou le redistribuer en respectant les conditions de ces licences.</p><p>Voir : <a href="http://www.gnu.org/licenses/gpl.html">http://www.gnu.org/licenses/gpl.html</a> et <a href="https://www.mozilla.org/MPL/2.0/index.txt">https://www.mozilla.org/MPL/2.0/index.txt</a> pour plus de détails</p><p>Pour plus d'information concernant ce programme, visitez notre site Internet : <a href="http://sqlitebrowser.org">http://sqlitebrowser.org</a></p><p><span style=" font-size:small;">Ce logiciel utilise le GPL/LGPL Qt Toolkit fourni par </span><a href="http://qt-project.org/"><span style=" font-size:small;">http://qt-project.org/</span></a><span style=" font-size:small;"><br/>Voir : </span><a href="http://qt-project.org/doc/qt-5/licensing.html"><span style=" font-size:small;">http://qt-project.org/doc/qt-5/licensing.html</span></a><span style=" font-size:small;"> pour les conditions de licence et toute autre information.</span></p><p><span style=" font-size:small;">Il utilise le jeu d&apos;icones Silk créé par Mark James disponible selon la licence Creative Commons Attribution 2.5 and 3.0.<br/>Voir </span><a href="http://www.famfamfam.com/lab/icons/silk/"><span style=" font-size:small;">http://www.famfamfam.com/lab/icons/silk/</span></a><span style=" font-size:small;"> pour plus de details.</span></p></body></html> + + + + AddRecordDialog + + + Add New Record + Ajouter un nouvel enregistrement + + + + Enter values for the new record considering constraints. Fields in bold are mandatory. + Saisissez les valeurs en tenant compte des contraintes. Les champs en gras sont obligatoires. + + + + In the Value column you can specify the value for the field identified in the Name column. The Type column indicates the type of the field. Default values are displayed in the same style as NULL values. + Dans la colonne Valeur, vous pouvez spécifier la valeur du champ identifié dans la colonne Nom. La colonne Type indique le type du champ. Les valeurs par défaut sont affichées dans le même style que les valeurs NULL. + + + + Name + Nom + + + + Type + Type + + + + Value + Valeur + + + + Values to insert. Pre-filled default values are inserted automatically unless they are changed. + Valeurs à insérer. Les valeurs par défaut pré-remplies sont insérées automatiquement à moins qu'elles ne soient modifiées. + + + + When you edit the values in the upper frame, the SQL query for inserting this new record is shown here. You can edit manually the query before saving. + Lorsque vous éditez les valeurs dans le cadre supérieur, la requête SQL d'insersion du nouvel enregistrement est affichée ici. Vous pouvez l'éditer manuellement avant de l'enregistrer. + + + + <html><head/><body><p><span style=" font-weight:600;">Save</span> will submit the shown SQL statement to the database for inserting the new record.</p><p><span style=" font-weight:600;">Restore Defaults</span> will restore the initial values in the <span style=" font-weight:600;">Value</span> column.</p><p><span style=" font-weight:600;">Cancel</span> will close this dialog without executing the query.</p></body></html> + <html><head/><body><p><span style=" font-weight:600;">Enregistrer</span> soumettra l'instruction SQL affichée à la Base de Données pour créer le nouvel enregistrement..</p><p><span style=" font-weight:600;">Restaurer les valeurs par défaut</span> restaurera les valeurs par défaut dans la <span style=" font-weight:600;">colonne</span> Valeur.</p><p><span style=" font-weight:600;">Annuler</span> fermera cette boîte de dialogue sans exécuter la requête.</p></body></html> + + + + Auto-increment + + Incrément automatique + + + + + Unique constraint + + Contrainte unique + + + + + Check constraint: %1 + + Vérifier les contraintes : %1 + + + + + Foreign key: %1 + + Clé étrangère : %1 + + + + + Default value: %1 + + Valeur par défaut : %1 + + + + + Error adding record. Message from database engine: + +%1 + Erreur lors de l'ajout d'un enregistrement. Message du moteur de Base de Données : + +%1 + + + + Are you sure you want to restore all the entered values to their defaults? + Êtes-vous sûr de vouloir restaurer toutes les valeurs saisies à leurs valeurs par défaut ? + + + + Application + + + Possible command line arguments: + Arguments utilisables en ligne de commande : + + + + The -o/--option and -O/--save-option options require an argument in the form group/setting=value + Les options de commande -o/--option et -O/--save-option nécessitent un argument sous la forme groupe/paramètre=valeur + + + + Usage: %1 [options] [<database>|<project>] + + Usage: %1 [options] [<basededonnees>|<projet>] + + + + + -h, --help Show command line options + -h, --help Affiche les options utilisables de la ligne de commande + + + + -q, --quit Exit application after running scripts + -q, --quit Quitte l'application après l'exécution des scripts + + + + -s, --sql <file> Execute this SQL file after opening the DB + -s, --sql <fichier> Execute ce fichier SQL après avoir ouvert la BdD + + + + -t, --table <table> Browse this table after opening the DB + -t, --table <table> Parcourt cette table après avoir ouvert la BdD + + + + -R, --read-only Open database in read-only mode + -R, --read-only Ouvre la Base de Données en lectyure seule + + + + -o, --option <group>/<setting>=<value> + -o, --option <groupe>/<paramètre>=<valeur> + + + + Run application with this setting temporarily set to value + Lance l'application en utilisant temporairement la valeur de ce paramètre + + + + -O, --save-option <group>/<setting>=<value> + -O, --save-option <groupe>/<paramètre>=<valeur> + + + + Run application saving this value for this setting + Lance l'application en sauvegardant la valeur de ce paramètre + + + + -v, --version Display the current version + -v, --version Affiche la version de l'application + + + + <database> Open this SQLite database + <database> Ouvre cette Base de Données SQLite + + + + <project> Open this project file (*.sqbpro) + <projet> Ouvre ce fichier projet (*.sqbpro) + + + + The -s/--sql option requires an argument + L'option -s/--sql nécessite un argument + + + + The file %1 does not exist + Le fichier %1 n'existe pas + + + + The -t/--table option requires an argument + L'option -t/--table nécessite un argument + + + + Invalid option/non-existant file: %1 + Option invalide ou fichier %1 inexistant + + + + SQLite Version + Version de SQLite + + + + SQLCipher Version %1 (based on SQLite %2) + SQLCipher Version %1 (basé sur SQLite %2) + + + + DB Browser for SQLite Version %1. + DB Browser pour SQLite Version %1. + + + + Built for %1, running on %2 + Compilé pour %1, fonctionnant sur %2 + + + + Qt Version %1 + Version de Qt %1 + + + + CipherDialog + + + SQLCipher encryption + Chiffrement par SQLCipher + + + + &Password + Mot de &Passe + + + + &Reenter password + &Retaper le mot de passe + + + + Encr&yption settings + Para&mètre de chiffrement + + + + SQLCipher &3 defaults + SQLCipher &3 par défaut + + + + SQLCipher &4 defaults + SQLCipher &4 par défaut + + + + Custo&m + Pers&onnalisé + + + + Page si&ze + &Taille de page + + + + &KDF iterations + Itérations &KDF + + + + HMAC algorithm + Algorithme HMAC + + + + KDF algorithm + Algorithme KDF + + + + Plaintext Header Size + Taille En-tête texte en clair + + + + Passphrase + The button size is not large enought to handle the whole "french text", if #Passphrase must be translate + Phrase Secrète + + + + Raw key + Same comment as for Passphrase + Clé de Chiffrement + + + + Please set a key to encrypt the database. +Note that if you change any of the other, optional, settings you'll need to re-enter them as well every time you open the database file. +Leave the password fields empty to disable the encryption. +The encryption process might take some time and you should have a backup copy of your database! Unsaved changes are applied before modifying the encryption. + Veuillez définir une clé pour chiffrer la Base de Données. +Notez que si vous modifiez les autres paramètres, optionnels, vous devrez les ressaisir chaque fois que vous ouvrirez la Base de Données. +Laisser les champs Mot de passe à blanc pour désactiver le chiffrement. +Le processus de chiffrement peut prendre un certain temps. Vous devriez avoir une copie de sauvegarde de votre Base de Données ! +Les modifications non enregistrées seront appliquées avant la modification du chiffrement. + + + + Please enter the key used to encrypt the database. +If any of the other settings were altered for this database file you need to provide this information as well. + Veuillez entrer la clé utilisée pour le chiffrement de la Base de Données. +Si d'autres paramètres ont été modifiés pour cette Base de Données, vous devrez aussi fournir ces informations. + + + + ColumnDisplayFormatDialog + + + Choose display format + Choisir un format d'affichage + + + + Display format + Format d'affichage + + + + Choose a display format for the column '%1' which is applied to each value prior to showing it. + Choisissez le format d'affichage pour la colonne '%1'. +Il sera appliqué à chaque valeur avant son affichage. + + + + Default + Défaut + + + + Decimal number + Nombre décimal + + + + Exponent notation + Notation scientifique + + + + Hex blob + Blob Hexadécimal + + + + Hex number + Nombre Hexadécimal + + + + Apple NSDate to date + Apple NSDate vers date + + + + Java epoch (milliseconds) to date + Java epoch (milliseconds) en date + + + + .NET DateTime.Ticks to date + .NET DateTime.Ticks en date + + + + Julian day to date + Date jullienne vers Date + + + + Unix epoch to local time + Heure Unix epoch vers heure locale + + + + Date as dd/mm/yyyy + Date au format DD/MM/AAAA + + + + Lower case + Minuscule + + + + Custom display format must contain a function call applied to %1 + Le format d'affichage personnalisé doit contenir un appel de fonction appliqué à %1 + + + + Error in custom display format. Message from database engine: + +%1 + Erreur dans le format d'affichage personnalisé. Message du moteur de Base de Données : + +%1 + + + + Custom display format must return only one column but it returned %1. + Le format d'affichage personnalisé ne doit renvoyer qu'une seule colonne, mais il a renvoyé %1. + + + + Octal number + Nombre en Octal + + + + Round number + Nombre arrondi + + + + Unix epoch to date + Date Unix epoch en Date + + + + Upper case + Majuscule + + + + Windows DATE to date + Date Windows en Date + + + + Custom + Personnalisé + + + + CondFormatManager + + + Conditional Format Manager + Gestion des formats conditionnels + + + + This dialog allows creating and editing conditional formats. Each cell style will be selected by the first accomplished condition for that cell data. Conditional formats can be moved up and down, where those at higher rows take precedence over those at lower. Syntax for conditions is the same as for filters and an empty condition applies to all values. + Cette fenêtre de dialogue permet de créer et de modifier des formats conditionnels. Chaque style de cellule sera sélectionné par la première condition remplie pour les données de cette cellule. Les formats conditionnels peuvent être déplacés vers le haut et vers le bas. Ceux des rangées supérieures ont la priorité sur ceux des rangées inférieures. La syntaxe des conditions est la même que celle des filtres et une condition vide s'applique à toutes les valeurs. + + + + Add new conditional format + Ajouter un nouveau format conditionnel + + + + &Add + &Ajouter + + + + Remove selected conditional format + Supprime le format conditionnel sélectionné + + + + &Remove + &Supprimer + + + + Move selected conditional format up + Déplace le format conditionnel vers le haut + + + + Move &up + &Monter + + + + Move selected conditional format down + Déplace le format conditionnel vers le bas + + + + Move &down + &Descendre + + + + Foreground + Avant Plan + + + + Text color + Couleur de texte + + + + Background + Arrière plan + + + + Background color + Couleur d'arrière plan + + + + Font + Police + + + + Size + Taille + + + + Bold + Gras + + + + Italic + Italique + + + + Underline + Souligné + + + + Alignment + Alignement + + + + Condition + Condition + + + + + Click to select color + Cliquer pour sélectionner une couleur + + + + Are you sure you want to clear all the conditional formats of this field? + Êtes-vous sûr de vouloir effacer tous les formats conditionnels de ce champ ? + + + + DBBrowserDB + + + Please specify the database name under which you want to access the attached database + Veuillez spécifier le nom de la Base de Données sous laquelle vous voulez accéder à la Base de Données attachée + + + + Invalid file format + Format de fichier invalide + + + + Do you want to save the changes made to the database file %1? + Voulez-vous enregistrer les changements effectués dans la Base de Données %1 ? + + + + Exporting database to SQL file... + Exporter la Base de Données dans un fichier SQL... + + + + + Cancel + Annuler + + + + Executing SQL... + Exécution du SQL... + + + + Action cancelled. + Action annulée. + + + + This database has already been attached. Its schema name is '%1'. + Cette Base de Données a déjà été attachée. Son nom de schéma est '%1'. + + + + Do you really want to close this temporary database? All data will be lost. + Voulez-vous vraiment fermer cette Base de Données temporaire ? Toutes les données seront perdues. + + + + Database didn't close correctly, probably still busy + La Base de Données ne s'est pas fermée correctement; Elle est probablement encore occupée + + + + The database is currently busy: + La Base de Données est actuellement occupée : + + + + Do you want to abort that other operation? + Voulez-vous annuler cette autre opération ? + + + + + No database file opened + Aucun fichier de Base de Données ouvert + + + + + Error in statement #%1: %2. +Aborting execution%3. + Erreur dans le traitement #%1 : %2. +Exécution de %3 abandonnée. + + + + + and rolling back + et annulation des changements + + + + didn't receive any output from %1 + n'a pas reçu toutes les sorties de %1 + + + + could not execute command: %1 + ne peut pas exécuter les commandes : %1 + + + + Cannot delete this object + Impossible de supprimer cet objet + + + + Cannot set data on this object + 170726 MVT Has to be checked in real context + Définition des données impossible pour cet objet + + + + + A table with the name '%1' already exists in schema '%2'. + Une table portant le nom " %1 " existe déjà dans le schéma " %2 ". + + + + No table with name '%1' exists in schema '%2'. + Il n'existe pas de table nommée " %1 " dans le schéma " %2 ". + + + + + Cannot find column %1. + La colonne %1 n'a pas été trouvée. + + + + Creating savepoint failed. DB says: %1 + La création du point de restauration a échoué. DB indique : %1 + + + + Renaming the column failed. DB says: +%1 + Le changement de nom de la colonne a échoué. DB indique : +%1 + + + + + Releasing savepoint failed. DB says: %1 + La libération du point de sauvegarde a échoué. DB indique : %1 + + + + Creating new table failed. DB says: %1 + La création d'une nouvelle table a échoué. DB indique : %1 + + + + Copying data to new table failed. DB says: +%1 + La copie des données dans une nouvelle table a échoué. DB indique : %1 + + + + Deleting old table failed. DB says: %1 + La suppression d'une ancienne table a échoué. DB indique : %1 + + + + Error renaming table '%1' to '%2'. +Message from database engine: +%3 + Erreur lors du changement de nom de la table %1 vers %2. +Message du moteur de Base de Données : +%3 + + + + could not get list of db objects: %1 + La liste des objets de la Base de Données ne peut être obtenue : %1 + + + + Restoring some of the objects associated with this table failed. This is most likely because some column names changed. Here's the SQL statement which you might want to fix and execute manually: + + + La restauration de certains des objets associés à cette table a échoué. Cela est le plus souvent dû au changement du nom de certaines colonnes. Voici l'instruction SQL que vous pourrez corriger et exécuter manuellement : + + + + + + could not get list of databases: %1 + n'a pas pu obtenir la liste des bases de données : %1 + + + + Error loading extension: %1 + Erreur lors du chargement de l'extension %1 + + + + could not get column information + 170726 MVT Has to be checked in real context + ne peut obtenir les informations sur la colonne + + + + Error setting pragma %1 to %2: %3 + Erreur dans les paramètres des pragma %1 à %2 : %3 + + + + File not found. + Fichier non trouvé. + + + + DbStructureModel + + + Name + Nom + + + + Object + Objet + + + + Type + Type + + + + Schema + Schéma + + + + Database + Base de Données + + + + Browsables + Consultables + + + + All + Tout + + + + Temporary + Temporaire + + + + Tables (%1) + Tables (%1) + + + + Indices (%1) + Index (%1) + + + + Views (%1) + Vues (%1) + + + + Triggers (%1) + Déclencheurs (%1) + + + + EditDialog + + + Edit database cell + Éditer le contenu d'une cellule + + + + Mode: + Mode : + + + + This is the list of supported modes for the cell editor. Choose a mode for viewing or editing the data of the current cell. + Voici la liste des modes pris en charge par l'éditeur de cellules. Choisissez un mode d'affichage ou d'édition des données de la cellule courante. + + + + RTL Text + Remark : there is not acronym in french for Right to Left Text (DàG : Droite à Gauche ?). If DçG is not correct, we should use the HTML dir parameter RTL + Texte DàG + + + + + Image + Image + + + + JSON + JSON + + + + XML + XML + + + + + Automatically adjust the editor mode to the loaded data type + Ajuster automatiquement le mode éditeur au type de données chargé + + + + This checkable button enables or disables the automatic switching of the editor mode. When a new cell is selected or new data is imported and the automatic switching is enabled, the mode adjusts to the detected data type. You can then change the editor mode manually. If you want to keep this manually switched mode while moving through the cells, switch the button off. + Ce bouton à cocher active ou désactive le changement automatique du mode éditeur. Lorsqu'une nouvelle cellule est sélectionnée ou de nouvelles données sont importées et que la commutation automatique est activée, le mode s'adapte au type de données détecté. Vous pouvez ensuite changer le mode éditeur manuellement. Si vous souhaitez conserver ce mode de commutation manuelle pendant que vous vous déplacez dans les cellules, éteignez le bouton. + + + + Auto-switch + Auto-switch + + + + The text editor modes let you edit plain text, as well as JSON or XML data with syntax highlighting, automatic formatting and validation before saving. + +Errors are indicated with a red squiggle underline. + Les modes éditeur de texte vous permettent de modifier du texte brut, ainsi que des données JSON ou XML avec une mise en évidence de la syntaxe, un formatage automatique et une validation avant l'enregistrement. + +Les erreurs sont signalées par un trait de soulignement rouge. + + + + This Qt editor is used for right-to-left scripts, which are not supported by the default Text editor. The presence of right-to-left characters is detected and this editor mode is automatically selected. + Cet éditeur Qt est utilisé pour les scripts écrits de droite à gauche. Ils ne sont pas pris en charge par l'éditeur de texte par défaut. La présence de caractères de droite à gauche est détectée et ce mode d'édition est automatiquement sélectionné. + + + + Open preview dialog for printing the data currently stored in the cell + Ouvrir la fenêtre de prévisualisation pour imprimer les données actuellement stockées dans la cellule + + + + Auto-format: pretty print on loading, compact on saving. + Auto-format : formater au chargement, compacter à l'enregistrement. + + + + When enabled, the auto-format feature formats the data on loading, breaking the text in lines and indenting it for maximum readability. On data saving, the auto-format feature compacts the data removing end of lines, and unnecessary whitespace. + Lorsqu'elle est activée, la fonction de formatage automatique met en forme les données lors du chargement, transforme le texte en lignes et ajoute des retraits pour une lisibilité maximale. Lors de la sauvegarde des données, la fonction de formatage automatique compacte les données en supprimant les fins des lignes et les espaces inutiles. + + + + Word Wrap + Coupure des mots + + + + Wrap lines on word boundaries + Coupe les lignes aux limites des mots + + + + + Open in default application or browser + Ouvrir dans l'application ou le navigateur par défaut + + + + Open in application + Ouvrir dans l'application + + + + The value is interpreted as a file or URL and opened in the default application or web browser. + La valeur est interprétée comme étant un fichier ou une URL. Elle sera ouverte dans l'application ou le navigateur web par défaut. + + + + Save file reference... + Enregistrer la référence du fichier... + + + + Save reference to file + Enregistre la référence au fichier + + + + + Open in external application + Ouvrir dans une application externe + + + + Autoformat + Format Automatique + + + + &Export... + &Exporter... + + + + + &Import... + &Importer... + + + + + Import from file + Importer depuis un fichier + + + + + Opens a file dialog used to import any kind of data to this database cell. + Ouvre une boîte de dialogue pour importer n'importe quel type de données dans cette cellule de Base de Données. + + + + Export to file + Exporter vers un fichier + + + + Opens a file dialog used to export the contents of this database cell to a file. + Ouvrir la boîte de dialogue pour exporter le contenu de cette cellule de la Base de Données vers un fichier. + + + + + Print... + Imprimer... + + + + Open preview dialog for printing displayed image + Ouvrir un apperçu de l'image pour son impression + + + + + Ctrl+P + + + + + Open preview dialog for printing displayed text + Ouvrir un apperçu du texte avant son impression + + + + Copy Hex and ASCII + Copier l'Hex et l'ASCII + + + + Copy selected hexadecimal and ASCII columns to the clipboard + Copier les colonnes hexadécimales et ASCII sélectionnées dans le presse-papiers + + + + Ctrl+Shift+C + Ctrl+Maj+C + + + + Set as &NULL + Définir comme &NULL + + + + Apply data to cell + Appliquer les données à la cellule + + + + This button saves the changes performed in the cell editor to the database cell. + Ce bouton permet d'enregistrer les modifications effectuées dans l'éditeur de cellule dans la cellule de Base de Données. + + + + Apply + Appliquer + + + + Text + Texte + + + + Binary + Binaire + + + + Erases the contents of the cell + Effacer le contenu de la cellule + + + + This area displays information about the data present in this database cell + Cette zone affiche des informations à propos des données contenues dans la cellule de la Base de Données + + + + Type of data currently in cell + Type actuel des données dans la cellule + + + + Size of data currently in table + Taille actuelle des données dans la table + + + + Choose a filename to export data + Choisir un nom de fichier pour exporter les données + + + + Type of data currently in cell: %1 Image + Type actuel des données de la cellule. Image %1 + + + + %1x%2 pixel(s) + %1x%2 pixel(s) + + + + Type of data currently in cell: NULL + Type actuel des données de la cellule : NULL + + + + + Type of data currently in cell: Text / Numeric + Type actuel des données de la cellule : Texte / Numérique + + + + + Image data can't be viewed in this mode. + L'image ne peut être affichée dans ce mode. + + + + + Try switching to Image or Binary mode. + Essayez de basculer vers le mode Image ou le mode Binaire. + + + + + Binary data can't be viewed in this mode. + Les données Binaires ne peuvent être affichées dans ce mode. + + + + + Try switching to Binary mode. + Essayez de basculer vers le mode Binaire. + + + + Couldn't save file: %1. + Le fichier %1 ne peut être sauvegardé. + + + + The data has been saved to a temporary file and has been opened with the default application. You can now edit the file and, when you are ready, apply the saved new data to the cell editor or cancel any changes. + Les données ont été enregistrées dans un fichier temporaire. Elles ont été ouvertes avec l'application par défaut. Vous pouvez maintenant modifier le fichier et, lorsque vous serez prêt, appliquer les nouvelles données enregistrées à l'éditeur de cellules ou annuler les modifications. + + + + + Image files (%1) + Fichiers image (%1) + + + + Binary files (*.bin) + Fichiers Binaires (*.bin) + + + + Choose a file to import + Choisir un fichier à importer + + + + %1 Image + %1 Image + + + + Invalid data for this mode + Les données sont invalides pour ce mode + + + + The cell contains invalid %1 data. Reason: %2. Do you really want to apply it to the cell? + La cellule contient des données %1 invalides. Raison : %2. Vouslez-vous vraiment l'appliquer à la cellule ? + + + + + + %n character(s) + + %n caractère + %n caractères + + + + + Type of data currently in cell: Valid JSON + Type de données actuellement dans la cellule : JSON valide + + + + Type of data currently in cell: Binary + Type actuel des données de la cellule : Binaire + + + + + %n byte(s) + + %n octet + %n octets + + + + + EditIndexDialog + + + &Name + &Nom + + + + Order + Ordre + + + + &Table + &Table + + + + Edit Index Schema + Éditer le schéma d'index + + + + &Unique + &Unique + + + + For restricting the index to only a part of the table you can specify a WHERE clause here that selects the part of the table that should be indexed + Pour restreindre l'index à un sous-ensemble de la table, vous pouvez spécifier une clause WHERE ici. Elle sélectionnera le sous-ensemble de la table qui sera indexé + + + + Partial inde&x clause + Clause d'inde&x partiel + + + + Colu&mns + &Colonnes + + + + Table column + Colonne de table + + + + Type + Type + + + + Add a new expression column to the index. Expression columns contain SQL expression rather than column names. + 170726 MVT Has to be checked in real context + Ajouter une nouvelle expression de colonne à l'index. Les expressions de colonnes contiennent des expressions SQL plutôt que des noms de colonnes. + + + + Index column + Colonne d'Index + + + + Deleting the old index failed: +%1 + La suppression de l'ancien index a échoué : +%1 + + + + Creating the index failed: +%1 + La création de l'index a échoué : +%1 + + + + EditTableDialog + + + Edit table definition + Éditer la définition de la table + + + + Table + Table + + + + Advanced + Avancé + + + + Make this a 'WITHOUT rowid' table. Setting this flag requires a field of type INTEGER with the primary key flag set and the auto increment flag unset. + Faire cette table "SANS RowId". Positionner cette option nécessite un champ de type INTEGER défini comme clé primaire ET pour lequel l'incrément automatique a été désactivé. + + + + Without Rowid + Sans RowId + + + + Fields + Champs + + + + Database sche&ma + Sché&ma de la Base de Données + + + + Add + Ajouter + + + + Remove + Supprimer + + + + Move to top + Monter au début + + + + Move up + Monter + + + + Move down + Descendre + + + + Move to bottom + Descendre à la fin + + + + + Name + Nom + + + + + Type + Type + + + + NN + NN + + + + Not null + Non-Null + + + + PK + CP + + + + Primary key + Clé primaire + + + + AI + IA + + + + Autoincrement + Incrément automatique + + + + U + U + + + + + + Unique + Unique + + + + Default + Défaut + + + + Default value + Valeur par défaut + + + + + + Check + Vérifier + + + + Check constraint + Vérifier les contraintes + + + + Collation + Séquence + + + + + + Foreign Key + Clé étrangère + + + + Constraints + Contraintes + + + + Add constraint + Ajouter une contrainte + + + + Remove constraint + Supprimer une contrainte + + + + Columns + Colonnes + + + + SQL + SQL + + + + <html><head/><body><p><span style=" font-weight:600; color:#ff0000;">Warning: </span>There is something with this table definition that our parser doesn't fully understand. Modifying and saving this table might result in problems.</p></body></html> + <html><head/><body><p><span style=" font-weight:600; color:#ff0000;">Attention : </span>Il y a quelque chose dans la définition de cette table que notre analyseur syntaxique n'a pas complètement compris. La modification et l'enregistrement de cette table peuvent créer des problèmes.</p></body></html> + + + + + Primary Key + Clé primaire + + + + Add a primary key constraint + Ajoute une clé primaire à la contrainte + + + + Add a foreign key constraint + Ajoute une clé étrangère à la contrainte + + + + Add a unique constraint + Ajoute une contrainte unique + + + + Add a check constraint + Ajouter une contrainte de contrôle + + + + Error creating table. Message from database engine: +%1 + Erreur lors de la création de la table. Message du moteur de la Base de Données : +%1 + + + + There already is a field with that name. Please rename it first or choose a different name for this field. + Il existe déjà un champ avec ce nom. Veuillez le renommer avant ou choisir un autre nom pour ce champ. + + + + + There can only be one primary key for each table. Please modify the existing primary key instead. + Une table ne peut avoir qau'une seule clé primaire. Veuillez modifier la clé primaire existante à la place. + + + + This column is referenced in a foreign key in table %1 and thus its name cannot be changed. + Cette colonne est référencée dans une clé étrangère dans la table %1. Son nom ne peut être changé. + + + + There is at least one row with this field set to NULL. This makes it impossible to set this flag. Please change the table data first. + Il existe au moins un enregistrement avec ce champ autorisant des valeurs nulles (NULL). Il est donc impossible de définir cet indicateur. Veuillez modifier les données de la table au préalable. + + + + There is at least one row with a non-integer value in this field. This makes it impossible to set the AI flag. Please change the table data first. + Il existe au moins un enregistrement avec une valeur qui n'est pas un nombre entier dans ce champ. Il est donc impossible de définir l'indicateur AI (Incrément automatique) sur ce champ. Veuillez modifier les données de la table au préalable. + + + + Column '%1' has duplicate data. + + La colonne %1 a des des données en double. + + + + + This makes it impossible to enable the 'Unique' flag. Please remove the duplicate data, which will allow the 'Unique' flag to then be enabled. + Il est donc impossible d'activer l'indicateur "Unique". Veuillez supprimer les données en double, cela vous permettra d'activer l'indicateur "Unique". + + + + Are you sure you want to delete the field '%1'? +All data currently stored in this field will be lost. + Êtes-vous sûr de vouloir supprimer le champ "%1" ? +Toutes les données contenues dans ce champ seront perdues. + + + + Please add a field which meets the following criteria before setting the without rowid flag: + - Primary key flag set + - Auto increment disabled + Veuillez ajouter un champ ayant les caractéristiques suivant avant de positionner l'option Sans RowId : +- Défini comme clé primaire ; +- Incrément automatique désactivé + + + + ExportDataDialog + + + Export data as CSV + Exporter au format CSV + + + + Tab&le(s) + &Table(s) + + + + Colu&mn names in first line + Nom des &Col. en 1ère ligne + + + + Fie&ld separator + &Séparateur de champ + + + + , + , + + + + ; + ; + + + + Tab + Tabulation + + + + | + | + + + + + + Other + Autre + + + + &Quote character + T&ype de guillemet + + + + " + " + + + + ' + ' + + + + New line characters + Saut de ligne + + + + Windows: CR+LF (\r\n) + Windows: CR+LF (\r\n) + + + + Unix: LF (\n) + Unix: LF (\n) + + + + Pretty print + Formatter + + + + + Could not open output file: %1 + Le fichier de destination %1 ne peut être ouvert + + + + + Choose a filename to export data + Choisir un nom de fichier pour exporter les données + + + + Export data as JSON + Exporter au format JSON + + + + exporting CSV + Exporter au format CSV + + + + exporting JSON + Exporter au format JSON + + + + Please select at least 1 table. + Veuillez sélectionner au moins une table. + + + + Choose a directory + Choisir un répertoire + + + + Export completed. + Export terminé. + + + + ExportSqlDialog + + + Export SQL... + Same as defined in English... But converted to uniformize with other dialog boxes. + Exporter au format SQL... + + + + Tab&le(s) + Tab&le(s) + + + + Select All + Sélectionner tout + + + + Deselect All + Déselectionner tout + + + + &Options + &Options + + + + Keep column names in INSERT INTO + Conserver les noms des colonnes dans INSERT INTO + + + + Multiple rows (VALUES) per INSERT statement + Plusieurs enregistrements (VALUES) par INSERT + + + + Export everything + Exporter tout + + + + Export schema only + Exporter uniquement le schéma + + + + Export data only + Exporter uniquement les données + + + + Keep old schema (CREATE TABLE IF NOT EXISTS) + Conserver l'ancien schéma (CREATE TABLE IF NOT EXISTS) + + + + Overwrite old schema (DROP TABLE, then CREATE TABLE) + Écraser l'ancien schéma (DROP TABLE, puis CREATE TABLE) + + + + Please select at least one table. + Veuillez sélectionner au moins une table. + + + + Choose a filename to export + Choisir un nom de fichier pour l'export + + + + Export completed. + Export terminé. + + + + Export cancelled or failed. + L'export a été annulé ou a échoué. + + + + ExtendedScintilla + + + + Ctrl+H + + + + + Ctrl+F + + + + + + Ctrl+P + + + + + Find... + Rechercher... + + + + Find and Replace... + Chercher et remplacer... + + + + Print... + Imprimer... + + + + ExtendedTableWidget + + + Use as Exact Filter + Utiliser comme filtre exact + + + + Containing + Contenant + + + + Not containing + Ne contenant pas + + + + Not equal to + Différent de + + + + Greater than + Plus grand que + + + + Less than + Plus petit que + + + + Greater or equal + Plus grand ou égal à + + + + Less or equal + Plus petit ou égal à + + + + Between this and... + Entre ceci et... + + + + Regular expression + Expression régulière + + + + Edit Conditional Formats... + Éditer les formats conditionnels... + + + + Set to NULL + Définir comme NULL + + + + Copy + Copier + + + + Copy with Headers + Copier avec les Entêtes + + + + Copy as SQL + Copier comme du SQL + + + + Paste + Coller + + + + Print... + Imprimer... + + + + Use in Filter Expression + Utiliser dans l'expression du Filtre + + + + Alt+Del + Alt+Supp + + + + Ctrl+Shift+C + Ctrl+Maj+C + + + + Ctrl+Alt+C + + + + + The content of the clipboard is bigger than the range selected. +Do you want to insert it anyway? + Le contenu du presse-papier est plus grand que la plage sélectionnée. +Voulez-vous poursuivre l'insertion malgré tout ? + + + + <p>Not all data has been loaded. <b>Do you want to load all data before selecting all the rows?</b><p><p>Answering <b>No</b> means that no more data will be loaded and the selection will not be performed.<br/>Answering <b>Yes</b> might take some time while the data is loaded but the selection will be complete.</p>Warning: Loading all the data might require a great amount of memory for big tables. + <p>Toutes les données n'ont pas été chargées. <b>Voulez-vous charger toutes les données avant de sélectionner toutes les lignes ? </b><p><p>Répondre <b>Non</b> signifie qu'aucune autre donnée ne sera chargée et que la sélection ne sera pas effectuée.<br/>Répondre <b>Oui</b> peut prendre un certain temps pendant le chargement des données mais la sélection sera complète.</p>Avertissement : Le chargement de toutes les données peut nécessiter une grande quantité de mémoire pour les grandes tables. + + + + Cannot set selection to NULL. Column %1 has a NOT NULL constraint. + La sélection ne peut être à NULL. La colonne %1 à une contrainte NOT NULL. + + + + FileExtensionManager + + + File Extension Manager + Gestionnaire d'extension de fichier + + + + &Up + &Monter + + + + &Down + &Descendre + + + + &Add + &Ajouter + + + + &Remove + &Supprimer + + + + + Description + Description + + + + Extensions + Extensions + + + + *.extension + *.extension + + + + FilterLineEdit + + + Filter + Filtre + + + + These input fields allow you to perform quick filters in the currently selected table. +By default, the rows containing the input text are filtered out. +The following operators are also supported: +% Wildcard +> Greater than +< Less than +>= Equal to or greater +<= Equal to or less += Equal to: exact match +<> Unequal: exact inverse match +x~y Range: values between x and y +/regexp/ Values matching the regular expression + Ces champs de saisie vous permettent d'effectuer des filtres rapides dans le tableau actuellement sélectionné. +Par défaut, les lignes contenant le texte de saisie sont filtrées. +Les opérateurs suivants sont également pris en charge : +% Joker (métacaractère) +> Supérieur à +< Inférieur à +>= Supérieur ou Égal à +<= Inférieur oiu Égal à += Égal à : correspondance exacte +<> Différent de: correspondance inverse exacte +x~y Fourchette : valeurs entre x et y +/regexp/ Valeurs correspondant à l'expression régulière + + + + Clear All Conditional Formats + Effacer tous les Formats Conditionnels + + + + Use for Conditional Format + Utilisé pour le Format Conditionnel + + + + Edit Conditional Formats... + Editer un Format Conditionnel... + + + + Set Filter Expression + Définir l'expression du filtre + + + + What's This? + Qu'est-ce que c'est ? + + + + Is NULL + Est NULL + + + + Is not NULL + Est non NULL + + + + Is empty + Est Vide + + + + Is not empty + Est non Vide + + + + Not containing... + Ne contenant pas... + + + + Equal to... + Egal à... + + + + Not equal to... + Différent de... + + + + Greater than... + Plus grand que... + + + + Less than... + Plus petit que... + + + + Greater or equal... + Plus grand ou égal à... + + + + Less or equal... + Plus petit ou égal à... + + + + In range... + Peut être aussi traduit par "dans la plage..." ou "Entre..." + Entre les valeurs... + + + + Regular expression... + Expression régulière... + + + + FindReplaceDialog + + + Find and Replace + Chercher et remplacer + + + + Fi&nd text: + &Rechercher : + + + + Re&place with: + Re&mplacer avec : + + + + Match &exact case + &Expression exacte + + + + Match &only whole words + M&ots entiers uniquement + + + + When enabled, the search continues from the other end when it reaches one end of the page + Lorsque la Recherche circulaire est activée, la recherche recommence au début une fois atteinte la fin de la page + + + + &Wrap around + Recherche &Circulaire + + + + When set, the search goes backwards from cursor position, otherwise it goes forward + Lorsqu'elle est activée, la recherche s'effectue en remontant à partir de la position du curseur, sinon elle se fait en descendant + + + + Search &backwards + Rechercher vers le &haut + + + + <html><head/><body><p>When checked, the pattern to find is searched only in the current selection.</p></body></html> + <html><head/><body><p>Lorsque cette case est cochée, la recherche ne se fait que dans la sélection actuelle.</p></body></html> + + + + &Selection only + &Sélection uniquement + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + La version française de https://en.wikibooks.org/wiki/Regular_Expressions n'existe pas + <html><head/><body><p>Lorsqu'elle est cochée, le motif à trouver est interprété comme une expression régulière UNIX. Voir <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + + + + Use regular e&xpressions + Utiliser les e&xpressions régulières + + + + Find the next occurrence from the cursor position and in the direction set by "Search backwards" + Trouver l'occurrence suivante à partir de la position du curseur et dans la direction définie par "Rechercher vers le haut" + + + + &Find Next + &Suivant + + + + F3 + + + + + &Replace + Rem&placer + + + + Highlight all the occurrences of the text in the page + Surligner toutes les occurrences du texte dans la page + + + + F&ind All + Rechercher &Tout + + + + Replace all the occurrences of the text in the page + Remplace toutes les occurrences du texte dans la page + + + + Replace &All + Remplacer To&ut + + + + The searched text was not found + Le texte recherché n'a pas été trouvé + + + + The searched text was not found. + Le texte recherché n'a pas été trouvé. + + + + The searched text was found one time. + Le texte recherché a été trouvé une fois. + + + + The searched text was found %1 times. + Le texte recherché a été trouvé %1 fois. + + + + The searched text was replaced one time. + Le texte recherché a été remplacé une fois. + + + + The searched text was replaced %1 times. + Le texte recherché a été remplacé %1 fois. + + + + ForeignKeyEditor + + + &Reset + &Réinitialiser + + + + Foreign key clauses (ON UPDATE, ON DELETE etc.) + Clauses de clé étrangère (ON UPDATE, ON DELETE etc.) + + + + ImportCsvDialog + + + Import CSV file + Importer un fichier CSV + + + + Table na&me + No&m de la Table + + + + &Column names in first line + Nom des &Col. en 1ère ligne + + + + Field &separator + &Séparateur de champ + + + + , + , + + + + ; + ; + + + + + Tab + Tabulation + + + + | + | + + + + Other + Autre + + + + &Quote character + T&ype de guillemet + + + + + Other (printable) + Autre (imprimable) + + + + + Other (code) + Autre (code) + + + + " + " + + + + ' + ' + + + + &Encoding + &Encodage + + + + UTF-8 + UTF-8 + + + + UTF-16 + UTF-16 + + + + ISO-8859-1 + ISO-8859-1 + + + + Trim fields? + Réduire les champs ? + + + + Separate tables + Tables distinctes + + + + Advanced + Avancé + + + + When importing an empty value from the CSV file into an existing table with a default value for this column, that default value is inserted. Activate this option to insert an empty value instead. + Lorsque vous importez une valeur vide du fichier CSV dans une table existante avec une valeur par défaut pour cette colonne, cette valeur par défaut est insérée. Activez cette option pour insérer une valeur vide à la place. + + + + Ignore default &values + Ignorer les &valeurs par défaut + + + + Activate this option to stop the import when trying to import an empty value into a NOT NULL column without a default value. + Activez cette option pour arrêter l'importation lorsque vous essayez d'importer une valeur vide dans une colonne NON NULL sans valeur par défaut. + + + + Fail on missing values + Erreur sur les valeurs manquantes + + + + Disable data type detection + Désactiver la détection du type de données + + + + Disable the automatic data type detection when creating a new table. + Désactive la détection automatique du type de données lors de la création d'une nouvelle table. + + + + When importing into an existing table with a primary key, unique constraints or a unique index there is a chance for a conflict. This option allows you to select a strategy for that case: By default the import is aborted and rolled back but you can also choose to ignore and not import conflicting rows or to replace the existing row in the table. + Lors de l'importation dans une table existante possédant une clé primaire, des contraintes uniques ou un index unique, il y a un risque de conflit. Cette option vous permet de sélectionner une stratégie pour ce cas : Par défaut, l'importation est interrompue et annulée, mais vous pouvez également choisir d'ignorer et de ne pas importer les lignes en conflit ou de remplacer la ligne existante dans la table. + + + + Abort import + Abandonner l'import + + + + Ignore row + Ignorer l'enregistrement + + + + Replace existing row + Remplacer l'enregistrement existant + + + + Conflict strategy + En conflit avec la stratégie + + + + + Deselect All + Déselectionner tout + + + + Match Similar + 170726 MVT Has to be checked in real context or after explanation of this function. I suppose this function permits, with data names on the first line to "prefill a corresponding names" in an existing object ? + Appairer + + + + Select All + Sélectionner tout + + + + There is already a table named '%1' and an import into an existing table is only possible if the number of columns match. + Il existe déjà une table nommée'%1' et une importation dans une table existante n'est possible que si le nombre de colonnes correspond. + + + + There is already a table named '%1'. Do you want to import the data into it? + Il existe déjà une table appelée "%1". Voulez-vous y importer les données ? + + + + Creating restore point failed: %1 + La création du point de restauration a échoué : %1 + + + + Creating the table failed: %1 + La création de la table a échoué %1 + + + + importing CSV + Importer au format CSV + + + + Importing the file '%1' took %2ms. Of this %3ms were spent in the row function. + L'importation du fichier'%1' a pris %2ms. %3ms ont été dépensés dans la fonction enregistrement. + + + + Inserting row failed: %1 + L'insertion de l'enregistrement a échoué : %1 + + + + MainWindow + + + toolBar1 + Barre d'outils1 + + + + Warning: this pragma is not readable and this value has been inferred. Writing the pragma might overwrite a redefined LIKE provided by an SQLite extension. + Attention : ce pragma n'est pas lisible et cette valeur a été déduite. Ecrire le pragma pourrait écraser un LIKE redéfini fourni par une extension SQLite. + + + + &Tools + &Outils + + + + Edit Database &Cell + Éditer le contenu d'une &Cellule + + + + Opens the SQLCipher FAQ in a browser window + Ouvre la FAQ de SQLCipher dans la fenêtre d'un navigateur + + + + Export one or more table(s) to a JSON file + Exporter une ou plusieurs tables vers un fichier JSON + + + + DB Browser for SQLite + DB Browser pour SQLite + + + + &File + &Fichier + + + + &Import + &Importer + + + + &Export + &Exporter + + + + &Edit + É&dition + + + + &View + &Vue + + + + &Help + &Aide + + + + User + Utilisateur + + + + Application + Application + + + + This button clears the contents of the SQL logs + Ce bouton supprime le contenu des logs SQL + + + + &Clear + &Effacer + + + + &New Database... + &Nouvelle Base de Données... + + + + + Create a new database file + Créer une nouvelle Base de Données + + + + This option is used to create a new database file. + Cette option est utilisée pour créer un nouveau fichier de Base de Données. + + + + Ctrl+N + + + + + + &Open Database... + &Ouvrir une Base de Données... + + + + + + + + Open an existing database file + Ouvre une Base de Données existante + + + + + + This option is used to open an existing database file. + Cette option est utilisée pour ouvrir une Base de Données existante. + + + + Ctrl+O + + + + + &Close Database + &Fermer la Base de Données + + + + This button closes the connection to the currently open database file + Ce bouton ferme la connexion à la Base de Données actuellement ouverte + + + + + Ctrl+W + + + + + &Revert Changes + &Annuler les modifications + + + + + Revert database to last saved state + Revenir à la dernière version sauvegardée de la Base de Données + + + + This option is used to revert the current database file to its last saved state. All changes made since the last save operation are lost. + Cette option permet de restaurer la Base de Données dans l'état de sa dernière sauvegarde. Tous les changements effectués depuis cette dernière sauvegarde seront perdus. + + + + &Write Changes + Enregistrer les &modifications + + + + + Write changes to the database file + Enregistrer les modifications dans la Base de Données + + + + This option is used to save changes to the database file. + Cette option est utilisée pour enregistrer les modifications dans la Base de Données. + + + + Ctrl+S + + + + + Execute all/selected SQL + Exécuter Tout ou seulement le SQL sélectionné + + + + This button executes the currently selected SQL statements. If no text is selected, all SQL statements are executed. + Ce bouton lance l'exécution des commandes SQL actuellement sélectionnées. Si aucun texte n'est sélectionné, toutes les commandes SQL seront éxécutées. + + + + Execute line + Exécuter la ligne + + + + &Wiki + &Wiki + + + + F1 + + + + + Bug &Report... + &Rapport d'erreur... + + + + Feature Re&quest... + &Demande de fonctionnalités... + + + + Web&site + &Site Internet + + + + &Donate on Patreon... + Effectuer une &Donation sur Patreon... + + + + Open &Project... + Ouvrir un &Projet... + + + + &Attach Database... + Attac&her une Base de Données... + + + + + Add another database file to the current database connection + Ajouter un autre fichier de Base de Données à la connexion de la Base de Données en cours + + + + This button lets you add another database file to the current database connection + Ce bouton vous permet d'ajouter un autre fichier de Base de Données à la connexion de la Base de Données en cours + + + + &Set Encryption... + Chi&ffrer... + + + + SQLCipher &FAQ + &Faq SQLCipher + + + + Table(&s) to JSON... + Table(&s) vers JSON... + + + + Open Data&base Read Only... + Ouvrir la Base de Données en &Lecture seule... + + + + Ctrl+Shift+O + Ctrl+Maj+O + + + + Save results + Enregistrer les résultats + + + + Save the results view + Enregistrer la vue des résultats + + + + This button lets you save the results of the last executed query + Ce bouton vous permet d'enregistrer les résultats de la dernière requête exécutée + + + + + Find text in SQL editor + Rechercher du texte dans l'éditeur SQL + + + + Find + Rechercher + + + + This button opens the search bar of the editor + Ce bouton ouvre la barre de recherche dans l'éditeur + + + + Ctrl+F + + + + + + Find or replace text in SQL editor + Rechercher ou remplacer du texte dans l'éditeur SQL + + + + Find or replace + Chercher et remplacer + + + + This button opens the find/replace dialog for the current editor tab + Ce bouton ouvre la boîte de dialogue Rechercher/Remplacer pour l'onglet en cours de l'éditeur + + + + Ctrl+H + + + + + Export to &CSV + Exporter au format &CSV + + + + Save as &view + Enregistrer comme une &vue + + + + Save as view + Enregistrer comme une vue + + + + Browse Table + Parcourir la table + + + + Shows or hides the Project toolbar. + Afficher ou masquer la barre d'outil Projet. + + + + Extra DB Toolbar + Extra DB Toolbar + + + + This button lets you save all the settings associated to the open DB to a DB Browser for SQLite project file + Ce bouton vous permet d'enregistrer tous les paramètres associés à la Base de Données ouverte dans un fichier projet DB Browser pour SQLite + + + + This button lets you open a DB Browser for SQLite project file + Ce bouton vous permet d'ouvrir un fichier projet DB Browser pour SQLite + + + + New In-&Memory Database + Nouvelle Base de Données en &Mémoire + + + + Drag && Drop Qualified Names + Glisser && Déposer les noms qualifiés + + + + + Use qualified names (e.g. "Table"."Field") when dragging the objects and dropping them into the editor + Utilisez des noms qualifiés (par ex. "Table", "Champ") lorsque vous faites glisser les objets et pour les déposez dans l'éditeur + + + + Drag && Drop Enquoted Names + Glisser && Déposer les noms cités + + + + + Use escaped identifiers (e.g. "Table1") when dragging the objects and dropping them into the editor + Utiliser les identificateurs par défaut (par ex. "Table1") lors du glisser-déposer des objets dans l'éditeur + + + + &Integrity Check + Vérifier l'&Intégrité + + + + Runs the integrity_check pragma over the opened database and returns the results in the Execute SQL tab. This pragma does an integrity check of the entire database. + Exécute le pragma integrity_check sur la Base de Données ouverte et retourne les résultats dans l'onglet Exécuter SQL. Ce pragma effectue un contrôle d'intégrité de l'ensemble de la Base de Données. + + + + &Foreign-Key Check + Vérifier les clés &Etrangères + + + + Runs the foreign_key_check pragma over the opened database and returns the results in the Execute SQL tab + Exécute le pragma foreign_key_check_check sur la Base de Données ouverte et retourne les résultats dans l'onglet Exécuter SQL + + + + &Quick Integrity Check + Vérification &rapide de l'intégrité + + + + Run a quick integrity check over the open DB + Effectuer un rapide contrôle d'intégrité sur la Base de Données ouverte + + + + Runs the quick_check pragma over the opened database and returns the results in the Execute SQL tab. This command does most of the checking of PRAGMA integrity_check but runs much faster. + Exécute le pragma quick_check sur la Base de Données ouverte et retourne les résultats dans l'onglet Exécuter SQL. Cette commande effectue la plupart des vérifications de PRAGMA integrity_check mais s'exécute beaucoup plus rapidement. + + + + &Optimize + &Optimiser + + + + Attempt to optimize the database + Tente d'optimiser la Base de Données + + + + Runs the optimize pragma over the opened database. This pragma might perform optimizations that will improve the performance of future queries. + Exécute le pragma d'optimisation sur la Base de Données ouverte. Ce pragma pourrait effectuer des optimisations qui amélioreront la performance des requêtes futures. + + + + + Print + Imprimer + + + + Print text from current SQL editor tab + Imprime le contenu de l'onglet en cours de l'éditeur SQL [Ctrp+P] + + + + Open a dialog for printing the text in the current SQL editor tab + Ouvre une boite de dialogue pour imprimer le contenu de l'onglet en cours de l'éditeur SQL + + + + Print the structure of the opened database + Imprime la structure de la Base de Données ouverte + + + + Open a dialog for printing the structure of the opened database + Ouvre une boite de dialogue pour imprimer la structure de la Base de Données ouverte + + + + &Save Project As... + Enr&egistrer le projet sous... + + + + + + Save the project in a file selected in a dialog + Enregistrer le projet dans un fichier sélectionné dans une boite de dialogue + + + + Save A&ll + Enregistrer &Tout + + + + + + Save DB file, project file and opened SQL files + Enregistre la Base de Données, le fichier projet et les fichiers SQL ouverts + + + + Ctrl+Shift+S + Ctrl+Maj+S + + + + Compact the database file, removing space wasted by deleted records + Compacter la base de donnée, récupérer l'espace perdu par les enregistrements supprimés + + + + + Compact the database file, removing space wasted by deleted records. + Compacter la base de donnée, récupérer l'espace perdu par les enregistrements supprimés. + + + + E&xit + &Quitter + + + + Ctrl+Q + + + + + Import data from an .sql dump text file into a new or existing database. + Importer les données depuis un fichier sql résultant d'un vidage (sql dump) dans une nouvelle Base de Données ou une base existante. + + + + This option lets you import data from an .sql dump text file into a new or existing database. SQL dump files can be created on most database engines, including MySQL and PostgreSQL. + Cette option vous permet d'importer un fichier sql de vidage d'une Base de Données (SQL dump) dans une nouvelle Base de Données ou une base existante. Ce fichier peut être créé par la plupart des moteurs de Base de Données, y compris MySQL et PostgreSQL. + + + + Open a wizard that lets you import data from a comma separated text file into a database table. + Ouvrir un Assistant vous permettant d'importer des données dans une table de la Base de Données à partir d'un fichier texte séparé par des virgules (csv). + + + + Open a wizard that lets you import data from a comma separated text file into a database table. CSV files can be created on most database and spreadsheet applications. + Ouvre un Assistant vous permettant d'importer des données dans une table de la Base de Données à partir d'un fichier texte séparé par des virgules (csv). Les fichiers CSV peuvent être créés par la plupart des outils de gestion de Base de Données et les tableurs. + + + + Export a database to a .sql dump text file. + Exporter la Base de Données vers un fichier de vidage sql (SQL dump) au format texte. + + + + This option lets you export a database to a .sql dump text file. SQL dump files contain all data necessary to recreate the database on most database engines, including MySQL and PostgreSQL. + Exporter la Base de Données vers un fichier de vidage sql (SQL dump) au format texte. Ce fichier (SQL dump) contient toutes les informations nécessaires pour recréer une Base de Données par la plupart des moteurs de Base de Données, y compris MySQL et PostgreSQL. + + + + Export a database table as a comma separated text file. + Exporter la table vers un fichier texte séparé par des virgules (CSV). + + + + Export a database table as a comma separated text file, ready to be imported into other database or spreadsheet applications. + Exporter la table vers un fichier texte séparé par des virgules (CSV), prêt à être importé dans une autre Base de Données ou un tableur. + + + + &Create Table... + &Créer une table... + + + + Open the Create Table wizard, where it is possible to define the name and fields for a new table in the database + Ouvrir l'assistant de création d'une table dans lequel il sera possible de définir les noms et les champs d'une nouvelle table dans la Base de Données + + + + &Delete Table... + &Supprimer une table... + + + + Open the Delete Table wizard, where you can select a database table to be dropped. + Ouvrir l'assistant de suppression d'une table avec lequel vous pourrez sélectionner la table à supprimer. + + + + &Modify Table... + &Modifier une table... + + + + Open the Modify Table wizard, where it is possible to rename an existing table. It is also possible to add or delete fields form a table, as well as modify field names and types. + Ouvrir l'assistant de modification d'une table avec lequel il sera possible de renommer une table existante. Il est aussi possible d'ajouter ou de supprimer des champs de la table, tout comme modifier le nom des champs et leur type. + + + + Open the Create Index wizard, where it is possible to define a new index on an existing database table. + Ouvrir l'assistant de création d'un index avec lequel il sera possible de définir un nouvel index dans une table préexistante de la Base de Données. + + + + &Preferences... + &Préférences... + + + + + Open the preferences window. + Ouvrir la fenêtre des préférences. + + + + &DB Toolbar + &Barre d'outils BdD + + + + Shows or hides the Database toolbar. + Affiche ou masque la barre d'outils Base de Données. + + + + Shift+F1 + Maj+F1 + + + + &Recently opened + Ouvert &récemment + + + + Open &tab + vérifier le contexte + Ouvrir un on&glet + + + + Ctrl+T + + + + + This is the structure of the opened database. +You can drag multiple object names from the Name column and drop them into the SQL editor and you can adjust the properties of the dropped names using the context menu. This would help you in composing SQL statements. +You can drag SQL statements from the Schema column and drop them into the SQL editor or into other applications. + + Ceci est la structure de la Base de Données ouverte. +Vous pouvez faire glisser plusieurs noms d'objets de la colonne Nom et les déposer dans l'éditeur SQL et vous pouvez ajuster les propriétés des noms déposés en utilisant le menu contextuel. Cela pourrait vous aider à composer des instructions SQL. +Vous pouvez faire glisser les instructions SQL de la colonne Schéma et les déposer dans l'éditeur SQL ou dans d'autres applications. + + + + + + Project Toolbar + Barre d'outil Projet + + + + Extra DB toolbar + Extra DB Toolbar + + + + + + Close the current database file + Fermer la Base de Données en cours + + + + Ctrl+F4 + + + + + Compact &Database... + Compacter la Base de &Données... + + + + &About + À &propos + + + + This button opens a new tab for the SQL editor + Ce bouton ouvre un nouvel onglet dans l'éditeur SQL + + + + &Execute SQL + &Exécuter le SQL + + + + + Execute SQL + This has to be equal to the tab title in all the main tabs + Exécuter le SQL + + + + + Save the current session to a file + Enregistrer la session courante dans un fichier + + + + + Load a working session from a file + Charger une session de travail depuis un fichier + + + + + Database Structure + This has to be equal to the tab title in all the main tabs + Structure de la Base de Données + + + + This is the structure of the opened database. +You can drag SQL statements from an object row and drop them into other applications or into another instance of 'DB Browser for SQLite'. + + Ceci est la structure de la Base de Données ouverte. +Vous pouvez faire glisser les instructions SQL d'une ligne d'objet et les déposer dans d'autres applications ou dans une autre instance de'DB Browser pour SQLite'. + + + + + + Browse Data + This has to be equal to the tab title in all the main tabs + Parcourir les données + + + + Error Log + Journal des erreurs + + + + Un/comment block of SQL code + Dé/commenter un bloc de code SQL + + + + Un/comment block + Dé/commenter un bloc + + + + Comment or uncomment current line or selected block of code + Commenter ou décommenter la ligne actuelle ou le bloc de code sélectionné + + + + Comment or uncomment the selected lines or the current line, when there is no selection. All the block is toggled according to the first line. + Commenter ou décommenter les lignes sélectionnées ou la ligne en cours, lorsqu'il n'y a pas de sélection. Tout le bloc est basculé en fonction de la première ligne. + + + + Ctrl+/ + + + + + Stop SQL execution + Arrête l'exécution du SQL + + + + Stop execution + Arrêter l'exécution + + + + Stop the currently running SQL script + Arrête le script SQL en cours d'exécution + + + + + Edit Pragmas + This has to be equal to the tab title in all the main tabs + Éditer les Pragmas + + + + DB Toolbar + Barre d'outils BdD + + + + SQL &Log + &Journal SQL + + + + Show S&QL submitted by + A&fficher le SQL soumis par + + + + This panel lets you examine a log of all SQL commands issued by the application or by yourself + Ce panneau vous permet d'examiner un journal de toutes les commandes SQL émises par l'application ou par vous-même + + + + &Plot + Gra&phique + + + + DB Sche&ma + DB Sche&ma + + + + &Remote + Serveur &distant + + + + &Database from SQL file... + &Base de Données à partir du fichier SQL... + + + + &Table from CSV file... + &Table depuis un fichier CSV... + + + + &Database to SQL file... + Base de &Données vers un fichier SQL... + + + + &Table(s) as CSV file... + &Table vers un fichier CSV... + + + + Create &Index... + Créer un &Index... + + + + W&hat's This? + &Qu'est-ce que c'est ? + + + + Open SQL file(s) + Ouvrir un fichier SQL + + + + This button opens files containing SQL statements and loads them in new editor tabs + Ce bouton ouvre un fichier contenant des instructions SQL et le charge dans un nouvel onglet de l'éditeur + + + + + + Save SQL file + Enregistrer le fichier SQL + + + + &Load Extension... + Charger l'&Extension... + + + + + Execute current line + Exécuter la ligne courante (Maj+F5) + + + + This button executes the SQL statement present in the current editor line + Ce bouton exécute l'instruction SQL présente dans la ligne courante de l'éditeur + + + + Shift+F5 + Maj+F5 + + + + Sa&ve Project + Enre&gistrer le projet + + + + + Save SQL file as + Enregistrer le fichier SQL comme + + + + This button saves the content of the current SQL editor tab to a file + Ce bouton enregistre le contenu de l'onglet actuel de l'éditeur SQL dans un fichier + + + + &Browse Table + &Parcourir la table + + + + Copy Create statement + Copier l'instruction CREATE + + + + Copy the CREATE statement of the item to the clipboard + Copie l'instruction CREATE de cet item dans le presse-papier + + + + Open an existing database file in read only mode + Ouvrir une Base de Données existante en mode Lecture seule + + + + Ctrl+E + + + + + Export as CSV file + Exporter les données au format CSV + + + + Export table as comma separated values file + Exporter la table vers un fichier texte séparé par des virgules (CSV) + + + + Ctrl+L + + + + + + Ctrl+P + + + + + Database encoding + Encodage de la Base de Données + + + + + Choose a database file + Choisir une Base de Données + + + + Ctrl+Return + Ctrl+Entrée + + + + Ctrl+D + + + + + Ctrl+I + + + + + Reset Window Layout + Rétablir la disposition des fenêtres + + + + Alt+0 + + + + + The database is currenctly busy. + La Base de Données est actuellement occupée. + + + + Click here to interrupt the currently running query. + Cliquez ici pour interrompre la requête en cours. + + + + Encrypted + Chiffré + + + + Database is encrypted using SQLCipher + La Base de Données a été chiffrée avec SQLCipher + + + + Read only + Lecture seule + + + + Database file is read only. Editing the database is disabled. + La Base de Données est ouverte en lecture seule. Il n'est pas possible de la modifier. + + + + Could not open database file. +Reason: %1 + La Base de Données ne peut être ouverte. +Motif : %1 + + + + + + Choose a filename to save under + Choisir un nom de fichier pour enregistrer sous + + + + Error while saving the database file. This means that not all changes to the database were saved. You need to resolve the following error first. + +%1 + Erreur lors de l'enregistrement de la Base de Données. Cela sous-entend qu'aucun changement n'a été sauvegardé. Vous devez corriger au préalable l'erreur suivante : + +%1 + + + + Do you want to save the changes made to SQL tabs in the project file '%1'? + Voulez-vous enregistrer les modifications apportées aux onglets SQL dans le fichier du projet '%1' ? + + + + A new DB Browser for SQLite version is available (%1.%2.%3).<br/><br/>Please download at <a href='%4'>%4</a>. + Une nouvelle version de DB Browser pour SQLite est disponible (%1.%2.%3).<br/><br/>Vous pouvez la télécharger sur <a href='%4'>%4</a>. + + + + DB Browser for SQLite project file (*.sqbpro) + Fichier de projet DB Browser pour SQLite (*.sqbpro) + + + + Error checking foreign keys after table modification. The changes will be reverted. + Erreur de vérification des clés étrangères après modification de la table. Les modifications seront annulées. + + + + This table did not pass a foreign-key check.<br/>You should run 'Tools | Foreign-Key Check' and fix the reported issues. + Cette table n'a pas passé avec succès un contrôle de clé étrangère.<br/>Vous devez exécuter l'Outil | Contrôle des clés étrangères' et corriger les problèmes rapportés. + + + + Execution finished with errors. + L'exécution s'est terminée avec des erreurs. + + + + Execution finished without errors. + L'exécution s'est terminée sans erreur. + + + + Are you sure you want to undo all changes made to the database file '%1' since the last save? + Êtes-vous sûr de vouloir annuler tous les changements effectués dans la Base de Données %1 depuis la dernière sauvegarde ? + + + + Choose a file to import + Choisir un fichier à importer + + + + Text files(*.sql *.txt);;All files(*) + Fichiers Texte (*.sql *.txt);;Tous les fichiers(*) + + + + Do you want to create a new database file to hold the imported data? +If you answer no we will attempt to import the data in the SQL file to the current database. + Voulez vous créer une nouvelle base de donnée pour gérer les données importées ? +Si vous répondez non, nous essaierons d'importer les données du fichier SQL dans la Base de Données courante. + + + + Window Layout + Disposition des fenêtres + + + + Simplify Window Layout + Simplifier la disposition des fenêtres + + + + Shift+Alt+0 + Maj+Alt+0 + + + + Dock Windows at Bottom + Ancrer les fenêtres en Bas + + + + Dock Windows at Left Side + Ancrer les fenêtres à Gauche + + + + Dock Windows at Top + Ancrer les fenêtres en Haut + + + + You are still executing SQL statements. Closing the database now will stop their execution, possibly leaving the database in an inconsistent state. Are you sure you want to close the database? + Des traitements SQL sont en cours d'exécution. Fermer la Base de Données maintrenant arrêtera ces traitements. Cela risque de laisser la Base de Données dans un état incohérent. Êtes-vous sûr de vouloir fermer la Base de Données ? + + + + Do you want to save the changes made to the project file '%1'? + Voulez-vous enregistrer les changements effectués dans la dans le fichier projet '%1' ? + + + + File %1 already exists. Please choose a different name. + Le fichier %1 existe déjà. Veuillez choisir un nom de fichier différent. + + + + Error importing data: %1 + Erreur lors de l'import des données : %1 + + + + Import completed. + Import terminé. + + + + Delete View + Supprimer la Vue + + + + Delete Trigger + Supprimer le Déclencheur + + + + Delete Index + Supprimer l'Index + + + + + Delete Table + Supprimer la Table + + + + Setting PRAGMA values will commit your current transaction. +Are you sure? + Paramétrer les valeurs du PRAGMA enregistrera les actions de votre transaction courante. +Êtes-vous sûr ? + + + + In-Memory database + Base de Données en mémoire + + + + Are you sure you want to delete the table '%1'? +All data associated with the table will be lost. + Êtes vous sûr de vouloir supprimer la table %1 ? +Toutes les données de la table seront perdues. + + + + Are you sure you want to delete the view '%1'? + Êtes vous sûr de voulolir supprimer la vue %1 ? + + + + Are you sure you want to delete the trigger '%1'? + Êtes vous sûr de voulolir supprimer le déclencheur %1 ? + + + + Are you sure you want to delete the index '%1'? + Êtes vous sûr de voulolir supprimer l'index %1 ? + + + + Error: could not delete the table. + Erreur : suppression de la table impossible. + + + + Error: could not delete the view. + Erreur : suppression de la vue impossible. + + + + Error: could not delete the trigger. + Erreur : suppression du déclencheur impossible. + + + + Error: could not delete the index. + Erreur : suppression de l'index impossible. + + + + Message from database engine: +%1 + Message depuis el moteur de la Base de Données : +%1 + + + + Editing the table requires to save all pending changes now. +Are you sure you want to save the database? + La modification de la table nécessite d'enregistrer toutes les modifications en attente maintenant. +Êtes-vous sûr de vouloir enregistrer la Base de Données ? + + + + Edit View %1 + Editer la vue %1 + + + + Edit Trigger %1 + Editer le déclencheur %1 + + + + You are already executing SQL statements. Do you want to stop them in order to execute the current statements instead? Note that this might leave the database in an inconsistent state. + Vous avez des instructions SQL en cours d'exécution. Voulez-vous les arrêter afin d'exécuter les instructions en cours à la place ? Cela pourrait laisser la Base de Données dans un état incohérent. + + + + -- EXECUTING SELECTION IN '%1' +-- + -- EXECUTION DE LA SELECTION DANS '%1' +-- + + + + -- EXECUTING LINE IN '%1' +-- + -- EXECUTION DE LA LIGNE DANS '%1' +-- + + + + -- EXECUTING ALL IN '%1' +-- + -- EXECUTER TOUT DANS '%1' +-- + + + + + At line %1: + À la ligne %1 : + + + + Result: %1 + Résultat : %1 + + + + Result: %2 + Résultat : %2 + + + + Setting PRAGMA values or vacuuming will commit your current transaction. +Are you sure? + Le réglage des valeurs PRAGMA ou du "vacuuming" validera votre transaction en cours. +Êtes-vous sûr ? + + + + Opened '%1' in read-only mode from recent file list + Ouverture de '%1' en lecture seule depuis la liste des fichiers récents + + + + Opened '%1' from recent file list + Ouverture de '%1' depuis la liste des fichiers récents + + + + Project saved to file '%1' + Projet enregistré dans le fichier '%1' + + + + This action will open a new SQL tab with the following statements for you to edit and run: + Need to verify if following statements ore shown bellow ou above or on the open action + Cette action ouvrira un nouvel onglet SQL avec les instructions suivantes que vous pourrez modifier et exécuter : + + + + Rename Tab + Renommer l'onglet + + + + Duplicate Tab + Dupliquer l'onglet + + + + Close Tab + Fermer l'onglet + + + + Opening '%1'... + Ouverture de '%1'... + + + + There was an error opening '%1'... + Il y a eu une erreur lors de l'ouverture de '%1'... + + + + Value is not a valid URL or filename: %1 + Le valeur n'est pas une URL valide ou un nom de fichier : %1 + + + + %1 rows returned in %2ms + %1 enregistrements ramenés en %2ms + + + + Choose text files + Choisir des fichiers texte + + + + Import completed. Some foreign key constraints are violated. Please fix them before saving. + Importation terminée. Certaines contraintes clés étrangères sont violées. Veuillez les corriger avant de les enregistrer. + + + + Modify View + Modifier une Vue + + + + Modify Trigger + Modifier un Déclencheur + + + + Modify Index + Modifier un Index + + + + Modify Table + Modifier une Table + + + + &%1 %2%3 + &%1 %2%3 + + + + (read only) + (lecture seule) + + + + Open Database or Project + Ouvrir une Base de Données ou un projet + + + + Attach Database... + Attacher une Base de Données... + + + + Import CSV file(s)... + Importer un ou des fichiers CSV... + + + + Select the action to apply to the dropped file(s). <br/>Note: only 'Import' will process more than one file. + + Sélectionnez l'action à appliquer au fichier déposé. <br>Note : seul "Importer" traitera plusieurs fichiers. + Sélectionnez l'action à appliquer aux fichiers déposés. <br>Note : seul "Importer" traitera plusieurs fichiers. + + + + + Do you want to save the changes made to SQL tabs in a new project file? + Voulez-vous enregistrer les changements effectués dans l'onglet SQL dans un nouveau fichier projet ? + + + + Do you want to save the changes made to the SQL file %1? + Voulez-vous enregistrer les changements effectués dans le fichier SQL %1 ? + + + + The statements in this tab are still executing. Closing the tab will stop the execution. This might leave the database in an inconsistent state. Are you sure you want to close the tab? + Les instructions de cet onglet sont toujours en cours d'exécution. La fermeture de l'onglet arrête leur exécution. Cela pourrait laisser la Base de Données dans un état incohérent. Êtes-vous sûr de vouloir fermer l'onglet ? + + + + Select SQL file to open + Sélectionner un fichier SQL à ouvrir + + + + Select file name + Sélectionner un nom de fichier + + + + Select extension file + Sélectionner une extension de fichier + + + + Extension successfully loaded. + l'extension a été chargée avec succès. + + + + Error loading extension: %1 + Erreur lors du chargement de l'extension %1 + + + + Could not find resource file: %1 + Le fichier de ressources : %1 ne peut être ouvert + + + + + Don't show again + Ne plus afficher + + + + New version available. + Une nouvelle version est disponible. + + + + Choose a project file to open + Choisir un fichier de projet à ouvrir + + + + This project file is using an old file format because it was created using DB Browser for SQLite version 3.10 or lower. Loading this file format is still fully supported but we advice you to convert all your project files to the new file format because support for older formats might be dropped at some point in the future. You can convert your files by simply opening and re-saving them. + Ce fichier projet utilise un ancien format de fichier parce qu'il a été créé avec DB Browser pour SQLite version 3.10 ou inférieure. Le chargement de ce format de fichier est toujours totalement pris en charge, mais nous vous conseillons de convertir tous vos fichiers projet vers le nouveau format de fichier, car la prise en charge des anciens formats pourrait être supprimée à un moment ou un autre. Vous pouvez convertir vos fichiers en les ouvrant et en les sauvegardant de nouveau. + + + + Could not open project file for writing. +Reason: %1 + Le fichier projet ne peut être ouvert en écriture. +Raison : %1 + + + + Collation needed! Proceed? + Classement nécessaire ! Continuer ? + + + + A table in this database requires a special collation function '%1' that this application can't provide without further knowledge. +If you choose to proceed, be aware bad things can happen to your database. +Create a backup! + Une table de cette Base de Données nécessite la fonction spéciale de classement '%1' que cette application ne peut fournir sans connaissances complémentaires. +Si vous choisissez de continuer, ayez à l'esprit que des choses non souhaitées peuvent survenir dans votre Base de Données. +Faites une sauvegarde ! + + + + creating collation + Créer un classement + + + + Set a new name for the SQL tab. Use the '&&' character to allow using the following character as a keyboard shortcut. + Définissez un nouveau nom pour l'onglet SQL. Utilisez le caractère '&&' pour permettre d'utiliser le caractère suivant comme raccourci clavier. + + + + Please specify the view name + Veuillez spécifier le nom de la vue + + + + There is already an object with that name. Please choose a different name. + Il existe déjà un objet avec ce nom. Veuillez choisir un autre nom. + + + + View successfully created. + La vue a été crée avec succès. + + + + Error creating view: %1 + Erreur lors de la création de la vue : %1 + + + + This action will open a new SQL tab for running: + Cette action ouvrira un nouvel onglet SQL pour son exécution : + + + + Press Help for opening the corresponding SQLite reference page. + Cliquez sur Aide pour ouvrir la page de référence correspondante de SQLite. + + + + Busy (%1) + Occupé (%1) + + + + NullLineEdit + + + Set to NULL + Définir comme NULL + + + + Alt+Del + Alt+Supp + + + + PlotDock + + + Plot + Graphique + + + + <html><head/><body><p>This pane shows the list of columns of the currently browsed table or the just executed query. You can select the columns that you want to be used as X or Y axis for the plot pane below. The table shows detected axis type that will affect the resulting plot. For the Y axis you can only select numeric columns, but for the X axis you will be able to select:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Date/Time</span>: strings with format &quot;yyyy-MM-dd hh:mm:ss&quot; or &quot;yyyy-MM-ddThh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Date</span>: strings with format &quot;yyyy-MM-dd&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Time</span>: strings with format &quot;hh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Label</span>: other string formats. Selecting this column as X axis will produce a Bars plot with the column values as labels for the bars</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Numeric</span>: integer or real values</li></ul><p>Double-clicking the Y cells you can change the used color for that graph.</p></body></html> + <html><head/><body><p>Ce volet affiche la liste des colonnes de la table actuellement parcourue ou de la requête qui vient d'être exécutée. Vous pouvez sélectionner les colonnes que vous voulez utiliser comme axe X ou Y pour le volet de tracé ci-dessous. Le tableau montre le type d'axe détecté qui affectera le tracé résultant. Pour l'axe Y, vous ne pouvez sélectionner que des colonnes numériques, mais pour l'axe X, vous pourrez sélectionner :</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Date/Heure</span> : chaînes au format &quot;aaaa-MM-jj hh:mm:ss&quot; ou &quot;aaaa-MM-jjThh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Date</span> : chaînes au format &quot;aaaa-MM-jj&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Heures</span> : chaînes au format &quot;hh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Label</span> : autres formats de chaînes. Sélectionner cette colonne comme axe X produira un diagramme en barres avec les valeurs de la colonne comme étiquettes pour les barres</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Numerique</span> : Nombres entiers ou Réels</li></ul><p>Avec Double-clic sur une cellule Y, vous pouvez changer le couleur utilisée dans le graphique.</p></body></html> + + + + Columns + Colonnes + + + + X + X + + + + Y1 + Y1 + + + + Y2 + Y2 + + + + Axis Type + Type d'axe + + + + Here is a plot drawn when you select the x and y values above. + +Click on points to select them in the plot and in the table. Ctrl+Click for selecting a range of points. + +Use mouse-wheel for zooming and mouse drag for changing the axis range. + +Select the axes or axes labels to drag and zoom only in that orientation. + Voici le graphique qui sera dessiné lorsque vous sélectionnerez les valeurs x et y ci-dessus. + +Cliquez sur les points pour les sélectionner dans le graphique et dans le tableau. Ctrl+Clic pour sélectionner une plage de points. + +Utilisez la molette de la souris pour zoomer et faites glisser la souris pour modifier la plage des axes. + +Sélectionnez les axes ou les étiquettes d'axes à faire glisser et à zoomer uniquement dans cette orientation. + + + + Line type: + Type de ligne : + + + + + None + Aucun + + + + Line + Ligne + + + + StepLeft + A Gauche + + + + StepRight + A Droite + + + + StepCenter + Centré + + + + Impulse + Impulsion + + + + Point shape: + Forme du point : + + + + Cross + Croix + + + + Plus + Plus + + + + Circle + Cercle + + + + Disc + Disque + + + + Square + Carré + + + + Diamond + Diamant + + + + Star + Étoile + + + + Triangle + Triangle + + + + TriangleInverted + Triangle Inversé + + + + CrossSquare + Carré et croix + + + + PlusSquare + Carré et Plus + + + + CrossCircle + Cercle et Croix + + + + PlusCircle + Cercle et Plus + + + + Peace + Paix + + + + <html><head/><body><p>Save current plot...</p><p>File format chosen by extension (png, jpg, pdf, bmp)</p></body></html> + <html><head/><body><p>Enregistrer le graphique actuel...</p><p>Choisir le format de fichier parmi ces extensions (png, jpg, pdf, bmp)</p></body></html> + + + + Save current plot... + Enregistrer le tracé actuel... + + + + + Load all data and redraw plot + Charger toutes les données et redessiner le graphique + + + + + + Row # + # Ligne + + + + Copy + Copier + + + + Print... + Imprimer... + + + + Show legend + Afficher la légende + + + + Stacked bars + Diagramme à barres empilées + + + + Date/Time + Date/Heure + + + + Date + Date + + + + Time + Heure + + + + + Numeric + Numérique + + + + Label + Label + + + + Invalid + Invalide + + + + Load all data and redraw plot. +Warning: not all data has been fetched from the table yet due to the partial fetch mechanism. + Charger toutes les données et redessiner le tracé. +Attention : toutes les données n'ont pas encore été extraites du tableau en raison du mécanisme d'extraction partielle. + + + + Choose an axis color + Choisir une couleur d'axe + + + + Choose a filename to save under + Choisir un nom de fichier pour enregistrer sous + + + + PNG(*.png);;JPG(*.jpg);;PDF(*.pdf);;BMP(*.bmp);;All Files(*) + PNG(*.png);;JPG(*.jpg);;PDF(*.pdf);;BMP(*.bmp);;All Files(*) + + + + There are curves in this plot and the selected line style can only be applied to graphs sorted by X. Either sort the table or query by X to remove curves or select one of the styles supported by curves: None or Line. + Il y a des courbes dans ce graphique et le style de ligne sélectionné ne peut être appliqué qu'aux graphiques triés par X. Triez la table ou la requête par X pour supprimer les courbes ou sélectionnez un des styles pris en charge par les courbes : Aucun ou Ligne. + + + + Loading all remaining data for this table took %1ms. + Le chargement de toutes les données restantes pour ce tableau a pris %1 ms. + + + + PreferencesDialog + + + Preferences + Préférences + + + + &General + &Général + + + + Remember last location + Se souvenir du dernier emplacement + + + + Always use this location + Toujours utiliser cet emplacement + + + + Remember last location for session only + Dernier emplac. pour cette session uniquement + + + + Lan&guage + Lan&gue + + + + Show remote options + Afficher options Serv. Distant + + + + Automatic &updates + Mises à jour A&utomatiques + + + + &Database + Base de &Données + + + + Database &encoding + &Encodage de la Base de Données + + + + Open databases with foreign keys enabled. + Ouvrir une Base de Données en autorisant les clés étrangères. + + + + &Foreign keys + &Clés étrangères + + + + + + + + + + + + enabled + Autoriser + + + + Default &location + Emp&lacement par défaut + + + + + + ... + ... + + + + Remove line breaks in schema &view + Suppr. les sauts de ligne dans la &vue du schéma + + + + Prefetch block si&ze + &Taille du bloc de préfetch + + + + SQ&L to execute after opening database + Fichier SQ&L à exécuter à l'ouverture +de la Base de Données + + + + Default field type + Type de champ par défaut + + + + Data &Browser + &Navigateur des données + + + + Font + Police + + + + &Font + &Police + + + + Content + Contenu + + + + Symbol limit in cell + Texte : Nb max. de caractères + + + + NULL + NULL + + + + Regular + Standard + + + + Binary + Binaire + + + + Background + Arrière plan + + + + Filters + Filtres + + + + Threshold for completion and calculation on selection + Seuil d'achèvement et calcul lors de la sélection + + + + Show images in cell + Afficher les images dans la cellule + + + + Enable this option to show a preview of BLOBs containing image data in the cells. This can affect the performance of the data browser, however. + Activez cette option pour afficher un aperçu des BLOBs contenant des images dans les cellules. Cela peut toutefois affecter les performances du navigateur de données. + + + + Escape character + Caractère d'échappement + + + + Delay time (&ms) + Délai (&ms) + + + + Set the waiting time before a new filter value is applied. Can be set to 0 for disabling waiting. + Défini le temps d'attente avant qu'une nouvelle valeur de filtre est appliquee. Peut être renseigné à 0 pour supprimer le temps d'attente. + + + + &SQL + &SQL + + + + Settings name + Définir le nom + + + + Context + Contexte + + + + Colour + Couleur + + + + Bold + Gras + + + + Italic + Italique + + + + Underline + Souligné + + + + Keyword + Mot Clé + + + + Function + Fonction + + + + Table + Table + + + + Comment + Commentaire + + + + Identifier + Identifiant + + + + String + Chaîne de caractère + + + + Current line + Ligne courante + + + + SQL &editor font size + &Taille de la police : Éditeur SQL + + + + Tab size + Largeur de tabulation + + + + SQL editor &font + &Police de l'éditeur SQL + + + + Error indicators + Indicateur d'erreur + + + + Hori&zontal tiling + Division hori&zontale + + + + If enabled the SQL code editor and the result table view are shown side by side instead of one over the other. + Si elle est activée, l'éditeur de code SQL et l'affichage du tableau de résultats sont présentés côte à côte au lieu d'être l'un sur l'autre. + + + + Code co&mpletion + Co&mplétion de code + + + + Toolbar style + Style de la barre d'outil + + + + + + + + Only display the icon + Afficher uniquement les icones + + + + + + + + Only display the text + Afficher uniquement le texte + + + + + + + + The text appears beside the icon + Le texte sera affiché à côté des icones + + + + + + + + The text appears under the icon + Le texte sera affiché sous les icones + + + + + + + + Follow the style + Suivre le style + + + + DB file extensions + Extensions de fichiers DB + + + + Manage + Gestion + + + + Main Window + Fenêtre principale + + + + Database Structure + Structure de la Base de Données + + + + Browse Data + Parcourir les données + + + + Execute SQL + Exécuter le SQL + + + + Edit Database Cell + Éditer le contenu d'une cellule de la BdD + + + + When this value is changed, all the other color preferences are also set to matching colors. + Lorsque cette valeur est modifiée, toutes les autres préférences de couleur sont également réglées sur les couleurs correspondantes. + + + + Follow the desktop style + Suit le style du bureau + + + + Dark style + Style sombre + + + + Application style + Style de l'application + + + + This sets the font size for all UI elements which do not have their own font size option. + Définit la taille de la police pour tous les éléments de l'interface utilisateur qui n'ont pas leur propre option de taille de police. + + + + Font size + Taille de police + + + + When enabled, the line breaks in the Schema column of the DB Structure tab, dock and printed output are removed. + Lorsque cette option est activée, les sauts de ligne de la colonne Schéma de l'onglet Structure de la Base de Données, du dock et de la sortie imprimée sont supprimés. + + + + Database structure font size + Taille de la police pour la structure de la Base de Données + + + + Font si&ze + T&aille de police + + + + This is the maximum number of items allowed for some computationally expensive functionalities to be enabled: +Maximum number of rows in a table for enabling the value completion based on current values in the column. +Maximum number of indexes in a selection for calculating sum and average. +Can be set to 0 for disabling the functionalities. + Il s'agit du nombre maximum d'éléments autorisés pour l'activation de certaines fonctionnalités coûteuses en termes de calcul : +Nombre maximal de lignes dans un tableau pour permettre la complétion des valeurs sur la base des valeurs actuelles de la colonne. +Nombre maximum d'index dans une sélection pour le calcul de la somme et de la moyenne. +Peut être fixé à 0 pour la désactivation des fonctionnalités. + + + + This is the maximum number of rows in a table for enabling the value completion based on current values in the column. +Can be set to 0 for disabling completion. + Il s'agit du nombre maximum de lignes dans une table pour permettre la complétion de la valeur en fonction des valeurs actuelles dans la colonne. +Peut être mis à 0 pour désactiver la complétion. + + + + Field display + Affichage des champs + + + + Displayed &text + &Texte affiché + + + + + + + + + Click to set this color + Cliquez pour définir cette couleur + + + + Text color + Couleur de texte + + + + Background color + Couleur d'arrière plan + + + + Preview only (N/A) + Préaffichage uniquement (N/A) + + + + Foreground + Avant Plan + + + + SQL &results font size + Taille police &résultats SQL + + + + &Wrap lines + &Retour à la ligne + + + + Never + Jamais + + + + At word boundaries + Aux limites des mots + + + + At character boundaries + Aux limites des caractères + + + + At whitespace boundaries + Aux limites des espaces + + + + &Quotes for identifiers + &Guillemets pour les identifiants + + + + Choose the quoting mechanism used by the application for identifiers in SQL code. + Choisissez le système de guillemets utilisés par l'application pour les identificateurs dans le code SQL. + + + + "Double quotes" - Standard SQL (recommended) + "Double guillemet" - Standard SQL (recommandé) + + + + `Grave accents` - Traditional MySQL quotes + `Accent Grave` - Guillemets standards MySQL + + + + [Square brackets] - Traditional MS SQL Server quotes + [Crochets] - Guillemets traditionels de MS SQL Server + + + + Keywords in &UPPER CASE + Mots clé en &MAJUSCULES + + + + When set, the SQL keywords are completed in UPPER CASE letters. + Quand cette case est cochée, les mots clé SQL sont transformés en MAJUSCULES. + + + + When set, the SQL code lines that caused errors during the last execution are highlighted and the results frame indicates the error in the background + Lorsque cette option est activée, les lignes de code SQL qui ont causé des erreurs lors de la dernière exécution sont mises en surbrillance et le cadre des résultats indique l'erreur en arrière-plan + + + + Close button on tabs + Bouton de fermeture des onglets + + + + If enabled, SQL editor tabs will have a close button. In any case, you can use the contextual menu or the keyboard shortcut to close them. + Si cette option est activée, les onglets de l'éditeur SQL comporteront un bouton de fermeture. Dans tous les cas, vous pouvez utiliser le menu contextuel ou le raccourci clavier pour les fermer. + + + + &Extensions + E&xtensions + + + + Select extensions to load for every database: + Sélectionner une extension à charger pour toutes les bases de données : + + + + Add extension + Ajouter une extension + + + + Remove extension + Enlever une extension + + + + <html><head/><body><p>While supporting the REGEXP operator SQLite doesn't implement any regular expression<br/>algorithm but calls back the running application. DB Browser for SQLite implements this<br/>algorithm for you to let you use REGEXP out of the box. However, as there are multiple possible<br/>implementations of this and you might want to use another one, you're free to disable the<br/>application's implementation and load your own by using an extension. Requires restart of the application.</p></body></html> + <html><head/><body><p>Bien que SQLite supporte l'opérateur REGEXP, aucun algorithme<br>d'expression régulière est implémenté, mais il rappelle l'application en cours d'exécution. DB Browser pour SQLite implémente<br/>cet algorithme pour vous permettre d'utiliser REGEXP. Cependant, comme il existe plusieurs implémentations possibles<br/>et que vous souhaitez peut-être utiliser autre chose, vous êtes libre de désactiver cette implémentation dans l'application<br/>pour utiliser la votre en utilisant une extension. Cela nécessite le redémarrage de l'application.</p></body></html> + + + + Disable Regular Expression extension + Désactiver l'extention "Expression Régulière" + + + + <html><head/><body><p>SQLite provides an SQL function for loading extensions from a shared library file. Activate this if you want to use the <span style=" font-style:italic;">load_extension()</span> function from SQL code.</p><p>For security reasons, extension loading is turned off by default and must be enabled through this setting. You can always load extensions through the GUI, even though this option is disabled.</p></body></html> + <html><head/><body><p>SQLite fournit une fonction SQL pour charger des extensions à partir d'un fichier de bibliothèque partagé. Activez cette option si vous souhaitez utiliser la fonction <span style=" font-style:italic;">load_extension()</span> depuis el code SQL.</p><p>Pour des raisons de sécurité, le chargement des extensions est désactivé par défaut et doit être activé par ce paramètre. Vous pouvez toujours charger des extensions via l'interface graphique, même si cette option est désactivée.</p></body></html> + + + + Allow loading extensions from SQL code + Autoriser le chargement des extensions depuis le code SQL + + + + Remote + Serveur distant + + + + CA certificates + Certificats CA + + + + Proxy + Proxy + + + + Configure + Configurer + + + + + Subject CN + Sujet CN + + + + Common Name + Nom Commun - CN + + + + Subject O + Sujet O + + + + Organization + Organisation + + + + + Valid from + Valide de + + + + + Valid to + Valide jusqu'à + + + + + Serial number + Numéro de série + + + + Your certificates + Vos certificats + + + + File + Fichier + + + + Subject Common Name + Sujet Common Name + + + + Issuer CN + Émetteur CN + + + + Issuer Common Name + + + + + Clone databases into + Cloner la Base de Données dans + + + + + Choose a directory + Choisir un répertoire + + + + The language will change after you restart the application. + La langue ne changera qu'après le redémarrage de l'application. + + + + Select extension file + Sélectionner un fichier d'extension + + + + Extensions(*.so *.dylib *.dll);;All files(*) + Extensions (*.so *.dylib *.dll);;Tous les fichiers (*) + + + + Import certificate file + Importer un fichier de certificat + + + + No certificates found in this file. + Aucun certificat n'a été trouvé dans ce fichier. + + + + Are you sure you want do remove this certificate? All certificate data will be deleted from the application settings! + Êtes-vous sûr de vouloir supprimer ce certificat ? Toutes les données de ce certificat seront supprimées des paramètres de l'application! + + + + Are you sure you want to clear all the saved settings? +All your preferences will be lost and default values will be used. + Êtes-vous sûr de vouloir effacer tous les réglages sauvegardés ? +Toutes vos préférences seront perdues et les valeurs par défaut seront utilisées. + + + + ProxyDialog + + + Proxy Configuration + Configuration du proxy + + + + Pro&xy Type + Type de Pro&xy + + + + Host Na&me + No&m de l'hôte + + + + Port + Port + + + + Authentication Re&quired + Authentification re&quise + + + + &User Name + Nom &Utilisateur + + + + Password + Mot de Passe + + + + None + Aucun + + + + System settings + Paramètres système + + + + HTTP + HTTP + + + + Socks v5 + Socks v5 + + + + QObject + + + Error importing data + Erreur lors de l'import des données + + + + from record number %1 + pour l'enregistrement numéro %1 + + + + . +%1 + . +%1 + + + + Importing CSV file... + Import du fichier CSV... + + + + Cancel + Annuler + + + + All files (*) + Tous les fichiers (*) + + + + SQLite database files (*.db *.sqlite *.sqlite3 *.db3) + Base de Données SQLite (*.db *.sqlite *.sqlite3 *.db3) + + + + Left + Gauche + + + + Right + Droite + + + + Center + Centré + + + + Justify + Justifié + + + + SQLite Database Files (*.db *.sqlite *.sqlite3 *.db3) + Fichier de BdD SQLite (*.db *.sqlite *.sqlite3 *.db3) + + + + DB Browser for SQLite Project Files (*.sqbpro) + Fichiers projet DB Browser pour SQLite (*.sqbpro) + + + + SQL Files (*.sql) + Fichiers SQL (*.sql) + + + + All Files (*) + Tous les fichiers (*) + + + + Text Files (*.txt) + Fichiers Texte (*.txt) + + + + Comma-Separated Values Files (*.csv) + Valeurs séparées par des virgules (*.csv) + + + + Tab-Separated Values Files (*.tsv) + Valeurs séparées par des tabulations (*.tsv) + + + + Delimiter-Separated Values Files (*.dsv) + Valeurs séparées par des délimiteurs (*.dsv) + + + + Concordance DAT files (*.dat) + Fichiers de Concordance (*.dat) + + + + JSON Files (*.json *.js) + Fichiers JSON (*.json *.js) + + + + XML Files (*.xml) + Fichiers XML (*.xml) + + + + Binary Files (*.bin *.dat) + Fichiers Binaires (*.bin *.dat) + + + + SVG Files (*.svg) + Fichiers SVG (*.svg) + + + + Hex Dump Files (*.dat *.bin) + Fichiers Dump Hexadécimal (*.dat *.bin) + + + + Extensions (*.so *.dylib *.dll) + Extensions (*.so *.dylib *.dll) + + + + RemoteCommitsModel + + + Commit ID + ID de Commit + + + + Message + Message + + + + Date + Date + + + + Author + Auteur + + + + Size + Taille + + + + Authored and committed by %1 + Need to see the context Authored can be translated by "Publié" (published) too as the main author + Créé et validé par %1 + + + + Authored by %1, committed by %2 + Créé par %1, validé par %2 + + + + RemoteDatabase + + + Error opening local databases list. +%1 + Erreur lors de l'ouverture de la liste des bases de données locales. +%1 + + + + Error creating local databases list. +%1 + Erreur lors de la création de la liste des bases de données locales. +%1 + + + + RemoteDock + + + Remote + Serveur Distant + + + + Local + Local + + + + Identity + Identité + + + + Push currently opened database to server + Déplacer la Base de Données en cours sur le serveur + + + + DBHub.io + DBHub.io + + + + <html><head/><body><p>In this pane, remote databases from dbhub.io website can be added to DB Browser for SQLite. First you need an identity:</p><ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Login to the dbhub.io website (use your GitHub credentials or whatever you want)</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Click the button to &quot;Generate client certificate&quot; (that's your identity). That'll give you a certificate file (save it to your local disk).</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Go to the Remote tab in DB Browser for SQLite Preferences. Click the button to add a new certificate to DB Browser for SQLite and choose the just downloaded certificate file.</li></ol><p>Now the Remote panel shows your identity and you can add remote databases.</p></body></html> + <html><head/><body><p>Dans ce volet, les bases de données distantes du site Web dbhub.io peuvent être ajoutées à DB Browser pour SQLite. Il faut d'abord vous identifier :</p><ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Connectez-vous sur le site dbhub.io (utilisez vos identifiants GitHub ou ce que vous voulez)</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Cliquez sur le bouton &quot;Generate client certificate&quot; (c'est votre identité). Cela vous fournira un fichier de certificat (enregistrez-le sur votre disque local).</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Allez dans l'onglet Serveur Distant des Préférences DB Browser pour SQLite . Cliquez sur le bouton pour ajouter un nouveau certificat à DB Browser pour SQLite et choisissez le fichier de certificat que vous venez de télécharger.</li></ol><p>Maintenant, le panneau Serveur distant affiche votre identité et vous pouvez ajouter des bases de données distantes..</p></body></html> + + + + Current Database + Base de Données en cours + + + + Clone + Cloner + + + + User + Utilisateur + + + + Database + Base de Données + + + + Branch + Branche + + + + Commits + Commits + + + + Commits for + Commits pour + + + + Delete Database + Supprime la Base de Données + + + + Delete the local clone of this database + Supprime le clone local de la Base de Données + + + + Open in Web Browser + Ouvre dans un navigateur Internet + + + + Open the web page for the current database in your browser + Ouvre la page web de la Base de Données en cours dans votre navigateur + + + + Clone from Link + Cloner depuis un lien + + + + Use this to download a remote database for local editing using a URL as provided on the web page of the database. + Utilisez ceci pour télécharger une Base de Données distante pour l'édiiter localement en utilisant une URL telle que fournie sur la page web de la Base de Données. + + + + Refresh + Rafraichir + + + + Reload all data and update the views + Recherge toutes les données et met à jour les vues + + + + F5 + + + + + Clone Database + Cloner une Base de Données + + + + Open Database + Ouvrir une Base de données + + + + Open the local copy of this database + Ouvrir la copie locale de la Base de Données + + + + Check out Commit + Vérifier le Commit + + + + Download and open this specific commit + Télécharger et ouvrir ce Commit particulier + + + + Check out Latest Commit + Vérifier le dernier Commit + + + + Check out the latest commit of the current branch + Vérifie le dernier Commit de la branche en cours + + + + Save Revision to File + Enregistrer la Révision dans un fichier + + + + Saves the selected revision of the database to another file + Enregistre la Révision sélectionnée de la Base de Données dans un autre fichier + + + + Upload Database + Télécharger la Base de Données + + + + Upload this database as a new commit + Téléchargez cette Base de Données en tant que nouveau Commit + + + + <html><head/><body><p>You are currently using a built-in, read-only identity. For uploading your database, you need to configure and use your DBHub.io account.</p><p>No DBHub.io account yet? <a href="https://dbhub.io/"><span style=" text-decoration: underline; color:#007af4;">Create one now</span></a> and import your certificate <a href="#preferences"><span style=" text-decoration: underline; color:#007af4;">here</span></a> to share your databases.</p><p>For online help visit <a href="https://dbhub.io/about"><span style=" text-decoration: underline; color:#007af4;">here</span></a>.</p></body></html> + <html><head/><body><p>Vous utilisez actuellement une identité intégrée, en lecture seule. Pour télécharger votre Base de Données, vous devez configurer et utiliser votre compte DBHub.io. </p><p>Vous n'avez pas encore de compte DBHub.io ? <a href="https://dbhub.io/"><span style=" text-decoration : underline ; color:#007af4 ;">Créez-en un maintenant</span></a> et importez votre certificat <a href="#preferences"><span style=" text-decoration : underline ; color:#007af4 ;">ici</span></a> pour partager vos bases de données.</p><p>Pour l'aide en ligne, visitez <a href="https://dbhub.io/about"><span style=" text-decoration : underline ; color:#007af4 ;">ici</span></a>.</p></body></html> + + + + Back + Retour + + + + Select an identity to connect + Sélectionner une identité pour se connecter + + + + Public + Public + + + + This downloads a database from a remote server for local editing. +Please enter the URL to clone from. You can generate this URL by +clicking the 'Clone Database in DB4S' button on the web page +of the database. + Cela télécharge une Base de Données à partir d'un serveur distant pour l'éditer localement. +Veuillez entrer l'URL à partir de laquelle vous souhaitez la cloner. Vous pouvez générer cette URL en +en cliquant sur le bouton "Cloner la Base de Données dans DB4S" sur la page web +de la Base de Données. + + + + Invalid URL: The host name does not match the host name of the current identity. + URL invalide : Le nom de l'hôte ne correspond pas au nom de l'hôte de l'identité actuelle. + + + + Invalid URL: No branch name specified. + URL Invalide : Nom de branche non spécifié. + + + + Invalid URL: No commit ID specified. + URL Invalide : Commit ID non spécifié. + + + + You have modified the local clone of the database. Fetching this commit overrides these local changes. +Are you sure you want to proceed? + Vous avez modifié le clone local de la Base de Données. La récupération de ce commit annule ces modifications locales. +Êtes-vous sûr de vouloir continuer ? + + + + The database has unsaved changes. Are you sure you want to push it before saving? + La Base de Données contient des modifications non sauvegardées. Êtes-vous sûr de vouloir la pousser avant de la sauvegarder ? + + + + The database you are trying to delete is currently opened. Please close it before deleting. + La Base de Données que vous essayez de supprimer est actuellement ouverte. Veuillez la fermer avant de la supprimer. + + + + This deletes the local version of this database with all the changes you have not committed yet. Are you sure you want to delete this database? + Cela va supprimer la version locale de cette Base de Données avec tous les changements pour lesquels vous n'avez pas fait de Commit. Êtes-vous sûr de vouloir supprimer cette Base de Données ? + + + + RemoteLocalFilesModel + + + Name + Nom + + + + Branch + Branche + + + + Last modified + Dernière modification + + + + Size + Taille + + + + Commit + Commit + + + + File + Fichier + + + + RemoteModel + + + Name + Nom + + + + Last modified + Dernière modification + + + + Size + Taille + + + + Commit + Commit + + + + Size: + Taille : + + + + Last Modified: + Dernière modification : + + + + Licence: + Licence : + + + + Default Branch: + Branche par défaut : + + + + RemoteNetwork + + + Choose a location to save the file + Choisissez un emplacement pour enregistrer le fichier + + + + Error opening remote file at %1. +%2 + Erreur lors de l'ouverture du fichier distant %1. +%2 + + + + Error: Invalid client certificate specified. + Erreur : Le certificat du client spécifié est invalide. + + + + Please enter the passphrase for this client certificate in order to authenticate. + Pour vous authentifier, veuillez entrer la phrase secrète pour ce certificat client. + + + + Cancel + Annuler + + + + Uploading remote database to +%1 + Téléchargement de la base distante dans +%1 + + + + Downloading remote database from +%1 + Télécharger une Base de Données distante depuis +%1 + + + + + Error: The network is not accessible. + Erreur : le réseau n'est pas accessible. + + + + Error: Cannot open the file for sending. + Erreur : le fichier à envoyer ne peut être ouvert. + + + + RemotePushDialog + + + Push database + Je ne pense pas que Push soir le bon terme. Est-ce que cela fonctionne comme un serveur de version ? + Pousser une basse de données + + + + Database na&me to push to + &Nom de la Base de Données à pousser vers + + + + Commit message + Message de Commit + + + + Database licence + Licence de la Base de Données + + + + Public + Publique + + + + Branch + Branche + + + + Force push + Forcer le "push" + + + + Username + Nom utilisateur + + + + Database will be public. Everyone has read access to it. + La Base de DOnnée sera publique. Tout le monde a un accès en lecture. + + + + Database will be private. Only you have access to it. + La Base de Données est privée. Vous seul y avez accès. + + + + Use with care. This can cause remote commits to be deleted. + A utiliser avec précaution. Cela peut entraîner la suppression des commit distants. + + + + RunSql + + + Execution aborted by user + Exécution annulée par l'utilisateur + + + + , %1 rows affected + , %1 enregistrements affectés + + + + query executed successfully. Took %1ms%2 + Requête exécutée avec succès. Elle a pris %1 ms %2 + + + + executing query + Exécution de la requête + + + + SelectItemsPopup + + + A&vailable + &Disponible + + + + Sele&cted + Sele&ctionné + + + + SqlExecutionArea + + + Form + Formulaire + + + + Find previous match [Shift+F3] + Trouver la correspondance précédente [Maj+F3] + + + + Find previous match with wrapping + Trouver la correspondance précédente avec le modèle + + + + Shift+F3 + Maj+F3 + + + + The found pattern must be a whole word + Le motif trouvé doit être un mot entier + + + + Whole Words + Mots entiers + + + + Text pattern to find considering the checks in this frame + Modèle de texte à trouver en tenant compte des contrôles de ce cadre + + + + Find in editor + Chercher dans l'éditeur + + + + The found pattern must match in letter case + Le motif recherché doit respecter la casse des lettres + + + + Case Sensitive + Sensible à la casse + + + + Find next match [Enter, F3] + Trouver la correspondance suivante [Entrée, F3] + + + + Find next match with wrapping + Trouver la correspondance suivante avec le modèle + + + + F3 + + + + + Interpret search pattern as a regular expression + Interpréter le modèle de recherche comme une expression régulière + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + <html><head/><body><p>Lorsqu'elle est cochée, le motif à trouver est interprété comme une expression régulière UNIX. Voir <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + + + + Regular Expression + Expression régulière + + + + + Close Find Bar + Fremer la barre de recherche + + + + <html><head/><body><p>Results of the last executed statements.</p><p>You may want to collapse this panel and use the <span style=" font-style:italic;">SQL Log</span> dock with <span style=" font-style:italic;">User</span> selection instead.</p></body></html> + <html><head/><body><p>Résultats des derniers traitements exécutées.</p><p>Vous pouvez réduire ce panneau et utiliser le <span style=" font-style:italic ;">dock SQL Log</span> avec la sélection de l'<span style=" font-style:italic ;">utilisateur</span> à la place.</p></body></html> + + + + Results of the last executed statements + Résultats du dernier traitement exécuté + + + + This field shows the results and status codes of the last executed statements. + Ce champ affiche les résultats et les codes de statut du dernier traitement exécuté. + + + + Couldn't read file: %1. + Le fichier %1 ne peut être lu. + + + + + Couldn't save file: %1. + Le fichier %1 ne peut être sauvegardé. + + + + Your changes will be lost when reloading it! + Vos modifications seront perdues lors du rechargement ! + + + + The file "%1" was modified by another program. Do you want to reload it?%2 + Le fichier "%1" a été modifié par un autre programme. Vioulez-vous le recharger ? %2 + + + + SqlTextEdit + + + Ctrl+/ + + + + + SqlUiLexer + + + (X) The abs(X) function returns the absolute value of the numeric argument X. + (X) La fonction abs(X) renvoie la valeur absolue de l'argument numérique X. + + + + () The changes() function returns the number of database rows that were changed or inserted or deleted by the most recently completed INSERT, DELETE, or UPDATE statement. + () La fonction changes() renvoie le nombre de lignes de la Base de Données qui ont été modifiées, insérées ou supprimées par les instructions UPDATE, INSERT ou DELETE terminées dernièrement. + + + + (X1,X2,...) The char(X1,X2,...,XN) function returns a string composed of characters having the unicode code point values of integers X1 through XN, respectively. + (X1, X2,...) La fonction char(X1,X2,...,XN) renvoie une chaîne composée des caractères ayant les valeurs des points de code unicode des entiers allant de X1 à XN, respectivement. + + + + (X,Y,...) The coalesce() function returns a copy of its first non-NULL argument, or NULL if all arguments are NULL + (X, Y, ...) La fonction coalesce () renvoie une copie de son premier argument non-NULL, ou NULL si tous les arguments sont NULL + + + + (X,Y) The glob(X,Y) function is equivalent to the expression "Y GLOB X". + (X, Y) La fonction glob (X, Y) est équivalente à l'expression « Y GLOB X ». + + + + (X,Y) The ifnull() function returns a copy of its first non-NULL argument, or NULL if both arguments are NULL. + (X, Y) La fonction ifnull () renvoie une copie de son premier argument non-NULL, ou NULL si les deux arguments sont NULL. + + + + (X,Y) The instr(X,Y) function finds the first occurrence of string Y within string X and returns the number of prior characters plus 1, or 0 if Y is nowhere found within X. + (X, Y) La fonction instr (X, Y) trouve la première occurrence de la chaîne Y dans la chaîne X. Elle renvoie le nombre de caractères précédents plus 1 ou 0 si Y n'est pas dans X. + + + + (X) The hex() function interprets its argument as a BLOB and returns a string which is the upper-case hexadecimal rendering of the content of that blob. + (X) La fonction hex () interprète son argument comme un BLOB et renvoie une chaîne qui est le rendu hexadécimal en majuscules du contenu de ce blob. + + + + () The last_insert_rowid() function returns the ROWID of the last row insert from the database connection which invoked the function. + () La fonction last_insert_rowid () renvoie le ROWID de la dernière ligne insérée par la connexion de la Base de Données qui a invoqué la fonction. + + + + (X) For a string value X, the length(X) function returns the number of characters (not bytes) in X prior to the first NUL character. + (X) Pour une valeur de chaîne X, la fonction length(X) renvoie le nombre de caractères (pas d'octets) dans X avant le premier caractère NULL. + + + + (X,Y) The like() function is used to implement the "Y LIKE X" expression. + (X, Y) La fonction like() est utilisée pour mettre en Å“uvre de l’expression « Y LIKE X ». + + + + (X,Y,Z) The like() function is used to implement the "Y LIKE X ESCAPE Z" expression. + (X, Y, Z) La fonction like() est utilisée pour mettre en Å“uvre de l’expression « Y LIKE X ESCAPE Z ». + + + + (X) The load_extension(X) function loads SQLite extensions out of the shared library file named X. +Use of this function must be authorized from Preferences. + (X) La fonction load_extension(X) charge les extensions SQLite à partir du fichier de bibliothèque partagé nommé X. +L'utilisation de cette fonction doit être autorisée à partir des Préférences. + + + + (X,Y) The load_extension(X) function loads SQLite extensions out of the shared library file named X using the entry point Y. +Use of this function must be authorized from Preferences. + (X,Y) La fonction load_extension(X) charge les extensions SQLite à partir du fichier de bibliothèque partagée nommé X en utilisant le point d'entrée Y. +L'utilisation de cette fonction doit être autorisée à partir des Préférences. + + + + (X) The lower(X) function returns a copy of string X with all ASCII characters converted to lower case. + (X) La fonction lower(X) renvoie une copie de la chaîne X avec tous ses caractères ASCII convertis en minuscules. + + + + (X) ltrim(X) removes spaces from the left side of X. + (X) ltrim(X) supprime les espaces gauche de X. + + + + (X,Y) The ltrim(X,Y) function returns a string formed by removing any and all characters that appear in Y from the left side of X. + (X, Y) La fonction ltrim(X,Y) renvoie une chaîne résultant de la suppression de tous les caractères qui apparaissent en Y à gauche de X. + + + + (X,Y,...) The multi-argument max() function returns the argument with the maximum value, or return NULL if any argument is NULL. + (X,Y,...) La fonction à arguments multiples max() renvoie l'argument ayant la plus grande valeur ou renvoie NULL si tous les arguments sont NULL. + + + + (X,Y,...) The multi-argument min() function returns the argument with the minimum value. + (X,Y,...) La fonction à arguments multiples min() renvoie l'argument ayant la plus petite valeur. + + + + (X,Y) The nullif(X,Y) function returns its first argument if the arguments are different and NULL if the arguments are the same. + (X, Y) La fonction nullif(X,Y) renvoie le premier argument, si les arguments sont différents et NULL si les X et Y sont les mêmes. + + + + (FORMAT,...) The printf(FORMAT,...) SQL function works like the sqlite3_mprintf() C-language function and the printf() function from the standard C library. + (FORMAT,...) La fonction SQL printf(FORMAT,...) fonctionne comme la fonction de sqlite3_mprintf() en langage C et la fonction printf() de la bibliothèque C standard. + + + + (X) The quote(X) function returns the text of an SQL literal which is the value of its argument suitable for inclusion into an SQL statement. + (X) La fonction quote(X) renvoie le texte d’un litéral SQL qui est la valeur appropriée de l’argument pour son inclusion dans une requête SQL. + + + + () The random() function returns a pseudo-random integer between -9223372036854775808 and +9223372036854775807. + () La fonction random() renvoie un nombre entier pseudo-aléatoire entre -9223372036854775808 et + 9223372036854775807. + + + + (N) The randomblob(N) function return an N-byte blob containing pseudo-random bytes. + (N) La fonction randomblob(N) renvoie un blob de N octets contenant des octets pseudo-aléatoires. + + + + (X,Y,Z) The replace(X,Y,Z) function returns a string formed by substituting string Z for every occurrence of string Y in string X. + (X, Y, Z) La fonction replace(X,Y,Z) renvoie une chaîne formée en substituant par la chaîne Z chaque occurrence de la chaîne Y présente dans la chaîne X. + + + + (X) The round(X) function returns a floating-point value X rounded to zero digits to the right of the decimal point. + (X) La fonction round(X) renvoie une valeur à virgule flottante X arrondie à zéro chiffres à droite de la virgule décimale. + + + + (X,Y) The round(X,Y) function returns a floating-point value X rounded to Y digits to the right of the decimal point. + (X, Y) La fonction round(X,Y) renvoie une valeur à virgule flottante X arrondie à Y chiffres à droite de la virgule décimale. + + + + (X) rtrim(X) removes spaces from the right side of X. + X) rtrim(X) supprime les espaces droite de X. + + + + (X,Y) The rtrim(X,Y) function returns a string formed by removing any and all characters that appear in Y from the right side of X. + (X, Y) La fonction rtrim(X,Y) renvoie une chaîne formée en supprimant tous les caractères qui apparaissent en Y, à droite de X. + + + + (X) The soundex(X) function returns a string that is the soundex encoding of the string X. + (X) La fonction soundex(X) renvoie une chaîne qui est l'encodage soundex de la chaîne X. + + + + (X,Y) substr(X,Y) returns all characters through the end of the string X beginning with the Y-th. + (X, Y) substr(X,Y) renvoie tous les caractères à partir du n-ième Y jusqu'à la fin de la chaîne X. + + + + (X,Y,Z) The substr(X,Y,Z) function returns a substring of input string X that begins with the Y-th character and which is Z characters long. + (X, Y, Z) La fonction substr(X,Y,Z) renvoie une sous-chaîne de la chaîne X à partie du n-ième caractère Y, de longueur Z. + + + + () The total_changes() function returns the number of row changes caused by INSERT, UPDATE or DELETE statements since the current database connection was opened. + () La fonction total_changes() renvoie le nombre d'enregistrements altérés par les instructions INSERT, UPDATE ou DELETE depuis l’ouverture de la connexion de Base de Données courante. + + + + (X) trim(X) removes spaces from both ends of X. + (X) trim(X) supprime les espaces aux deux extrémités de X. + + + + (X,Y) The trim(X,Y) function returns a string formed by removing any and all characters that appear in Y from both ends of X. + (X, Y) La fonction trim(X,Y) renvoie une chaîne formée en supprimant tous les caractères de Y présents aux deux extrémités de X. + + + + (X) The typeof(X) function returns a string that indicates the datatype of the expression X. + (X) La fonction typeof(X) renvoie une chaîne qui indique le type de données de l’expression X. + + + + (X) The unicode(X) function returns the numeric unicode code point corresponding to the first character of the string X. + (X) La fonction unicode(X) renvoie le point de code unicode numérique correspondant au premier caractère de la chaîne X. + + + + (X) The upper(X) function returns a copy of input string X in which all lower-case ASCII characters are converted to their upper-case equivalent. + (X) La fonction upper(X) renvoie une copie de la chaîne X dans laquel tous les caractères ASCII en minuscules sont convertis en leurs équivalents en majuscules. + + + + (N) The zeroblob(N) function returns a BLOB consisting of N bytes of 0x00. + (N) La fonction zeroblob(N) renvoie un BLOB composé de N octets de valeur 0x00. + + + + + + + (timestring,modifier,modifier,...) + (timestring,modifier,modifier,...) + + + + (format,timestring,modifier,modifier,...) + (format,timestring,modifier,modifier,...) + + + + (X) The avg() function returns the average value of all non-NULL X within a group. + (X) La fonction avg() renvoie la valeur moyenne de tous les X non-NULL dans d’un groupe. + + + + (X) The count(X) function returns a count of the number of times that X is not NULL in a group. + (X) La fonction count(X) renvoie le nombre de fois où X n’est pas NULL dans un groupe. + + + + (X) The group_concat() function returns a string which is the concatenation of all non-NULL values of X. + (X) la fonction group_concat() renvoie une chaîne qui est la concaténation de toutes les valeurs non-NULL de X. + + + + (X,Y) The group_concat() function returns a string which is the concatenation of all non-NULL values of X. If parameter Y is present then it is used as the separator between instances of X. + (X, Y) La fonction group_concat() renvoie une chaîne qui est la concaténation de toutes les valeurs non-NULL de X. Si le paramètre Y est présent, il est utilisé comme séparateur entre chaque instances de X. + + + + (X) The max() aggregate function returns the maximum value of all values in the group. + (X) La fonction d’agrégat max() renvoie la valeur maximale de toutes les valeurs du groupe. + + + + (X) The min() aggregate function returns the minimum non-NULL value of all values in the group. + (X) La fonction d’agrégation min() renvoie la valeur non-NULL minimale de toutes les valeurs du groupe. + + + + + (X) The sum() and total() aggregate functions return sum of all non-NULL values in the group. + (X) Les fonctions d'agrégation sum() et total() renvoient la somme de toutes les valeurs non-NULL du groupe. + + + + () The number of the row within the current partition. Rows are numbered starting from 1 in the order defined by the ORDER BY clause in the window definition, or in arbitrary order otherwise. + () Le numéro del'enregistrement dans la partition courante. Les lignes sont numérotées à partir de 1 dans l'ordre défini par la clause ORDER BY dans la définition de la fenêtre, ou, sinon, dans un ordre arbitraire. + + + + () The row_number() of the first peer in each group - the rank of the current row with gaps. If there is no ORDER BY clause, then all rows are considered peers and this function always returns 1. + () Le row_number() enregistrement homologue de chaque groupe - le rang de l'enregistrement courant avec les écarts. S'il n'y a pas de clause ORDER BY, alors tous les enregistrements sont considérées comme homologues et cette fonction renvoie toujours 1. + + + + () The number of the current row's peer group within its partition - the rank of the current row without gaps. Partitions are numbered starting from 1 in the order defined by the ORDER BY clause in the window definition. If there is no ORDER BY clause, then all rows are considered peers and this function always returns 1. + () Le numéro du groupe d'enregistrements homologues de la rangée courante dans sa partition - le rang de la rangée courante sans espaces. Les partitions sont numérotées à partir de 1 dans l'ordre défini par la clause ORDER BY dans la définition de la fenêtre. S'il n'y a pas de clause ORDER BY, alors toutes les lignes sont considérées comme homologues et cette fonction renvoie toujours 1. + + + + () Despite the name, this function always returns a value between 0.0 and 1.0 equal to (rank - 1)/(partition-rows - 1), where rank is the value returned by built-in window function rank() and partition-rows is the total number of rows in the partition. If the partition contains only one row, this function returns 0.0. + () Malgré le nom, cette fonction retourne toujours une valeur comprise entre 0.0 et 1.0 égale à (rang - 1)/(rangées de partitions - 1), où rang est la valeur retournée par la fonction de fenêtre intégrée rank() et rangées de partitions est le nombre total de rangées dans la partition. Si la partition ne contient qu'une seule ligne, cette fonction renvoie 0.0. + + + + () The cumulative distribution. Calculated as row-number/partition-rows, where row-number is the value returned by row_number() for the last peer in the group and partition-rows the number of rows in the partition. + () Répartition cumulée. Calculée en tant que ligne-numéro/rangées-partition, où ligne-numéro est la valeur retournée par row_number() pour le dernier homologue dans le groupe et ligne-partition le nombre de lignes dans la partition. + + + + (N) Argument N is handled as an integer. This function divides the partition into N groups as evenly as possible and assigns an integer between 1 and N to each group, in the order defined by the ORDER BY clause, or in arbitrary order otherwise. If necessary, larger groups occur first. This function returns the integer value assigned to the group that the current row is a part of. + (N) L'argument N est traité comme un entier. Cette fonction divise la partition en N groupes le plus uniformément possible et attribue un entier compris entre 1 et N à chaque groupe, dans l'ordre défini par la clause ORDER BY, ou, sinon, dans un ordre arbitraire. Si nécessaire, les plus grands groupes se forment en premier. Cette fonction retourne la valeur entière assignée au groupe dont la ligne courante fait partie. + + + + (expr) Returns the result of evaluating expression expr against the previous row in the partition. Or, if there is no previous row (because the current row is the first), NULL. + (expr) Retourne le résultat de l'évaluation de l'expression expr par rapport à la ligne précédente de la partition. Ou NULL s'il n'y a pas de ligne précédente (parce que la ligne courante est la première). + + + + (expr,offset) If the offset argument is provided, then it must be a non-negative integer. In this case the value returned is the result of evaluating expr against the row offset rows before the current row within the partition. If offset is 0, then expr is evaluated against the current row. If there is no row offset rows before the current row, NULL is returned. + (expr,offset) Si l'argument offset est fourni, alors il doit être un entier non négatif. Dans ce cas, la valeur retournée est le résultat de l'évaluation de expr par rapport au décalage des lignes avant la ligne courante dans la partition. Si l'offset est égal à 0, alors expr est évalué par rapport à la ligne courante. S'il n'y a pas de lignes de décalage de ligne avant la ligne courante, NULL est retourné. + + + + + (expr,offset,default) If default is also provided, then it is returned instead of NULL if the row identified by offset does not exist. + (expr,offset,default) Si la valeur par défaut est aussi renseignée, cette valeur sera retournée au lieu de NULL si la ligne identifiée par offset n'existe pas. + + + + (expr) Returns the result of evaluating expression expr against the next row in the partition. Or, if there is no next row (because the current row is the last), NULL. + (expr) Retourne le résultat de l'évaluation de l'expression expr par rapport à la ligne suivante de la partition. Ou NULL s'il n'y a pas de ligne suivante (parce que la ligne courante est la dernière). + + + + (expr,offset) If the offset argument is provided, then it must be a non-negative integer. In this case the value returned is the result of evaluating expr against the row offset rows after the current row within the partition. If offset is 0, then expr is evaluated against the current row. If there is no row offset rows after the current row, NULL is returned. + (expr,offset) Si l'argument offset est fourni, alors il doit être un entier non négatif. Dans ce cas, la valeur retournée est le résultat de l'évaluation de expr par rapport par rapport au décalage des lignes après la ligne courante dans la partition. Si l'offset est égal à 0, alors expr est évalué par rapport à la ligne courante. S'il n'y a pas de lignes de décalage de ligne après la ligne courante, NULL est retourné. + + + + (expr) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the first row in the window frame for each row. + (expr) Cette fonction de fenêtrage intégrée calcule le cadre de la fenêtre pour chaque rangée de la même manière qu'une fonction de fenêtrage agrégée. Elle retourne la valeur de expr évaluée par rapport à la première ligne du cadre de la fenêtre pour chaque ligne. + + + + (expr) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the last row in the window frame for each row. + (expr) Cette fonction de fenêtrage intégrée calcule le cadre de la fenêtre pour chaque rangée de la même manière qu'une fonction de fenêtrage agrégée. Elle retourne la valeur de expr évaluée par rapport à la dernière ligne du cadre de la fenêtre pour chaque ligne. + + + + (expr,N) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the row N of the window frame. Rows are numbered within the window frame starting from 1 in the order defined by the ORDER BY clause if one is present, or in arbitrary order otherwise. If there is no Nth row in the partition, then NULL is returned. + (expr,N) Cette fonction de fenêtrage intégrée calcule le cadre de la fenêtre pour chaque rangée de la même manière qu'une fonction de fenêtrage agrégée. Elle retourne la valeur de expr évaluée par rapport à la ligne N du cadre de la fenêtre. Les rangées sont numérotées à l'intérieur du cadre de la fenêtre à partir de 1 dans l'ordre défini par la clause ORDER BY si elle est présente, ou dans un ordre arbitraire sinon. S'il n'y a pas de Nième ligne dans la partition, alors NULL est retourné. + + + + SqliteTableModel + + + reading rows + Lecture des enregistrements + + + + loading... + chargement... + + + + References %1(%2) +Hold %3Shift and click to jump there + Références %1(%2) +Appuyez simultanément sur %3+Maj et cliquez pour arriver ici + + + + Error changing data: +%1 + Erreur lors du changement des données : +%1 + + + + retrieving list of columns + récupération de la liste des colonnes + + + + Fetching data... + Récupération des données... + + + + + Cancel + Annuler + + + + TableBrowser + + + Browse Data + Parcourir les données + + + + &Table: + &Table : + + + + Select a table to browse data + Sélectionner une table pour parcourir son contenu + + + + Use this list to select a table to be displayed in the database view + Utiliser cette liste pour sélectionner la table à afficher dans la vue Base de Données + + + + This is the database table view. You can do the following actions: + - Start writing for editing inline the value. + - Double-click any record to edit its contents in the cell editor window. + - Alt+Del for deleting the cell content to NULL. + - Ctrl+" for duplicating the current record. + - Ctrl+' for copying the value from the cell above. + - Standard selection and copy/paste operations. + Ceci est la vue des tables de la Base de Données. Vous pouvez effectuer les actions suivantes : + - Commencez à écrire pour éditer en ligne la valeur. + - Double-cliquez sur n'importe quel enregistrement pour éditer son contenu dans la fenêtre de l'éditeur de cellule. + - Alt+Supp pour supprimer le contenu de la cellule et la met à NULL. + - Ctrl+" pour dupliquer l'enregistrement en cours. + - Ctrl+' pour copier la valeur de la cellule ci-dessus. + - Sélection standard et opérations de copier/coller. + + + + Text pattern to find considering the checks in this frame + Modèle de texte à trouver en tenant compte des contrôles de ce cadre + + + + Find in table + Chercher dans la table + + + + Find previous match [Shift+F3] + Trouver la correspondance précédente [Maj+F3] + + + + Find previous match with wrapping + Trouver la correspondance précédente avec le modèle + + + + Shift+F3 + Maj+F3 + + + + Find next match [Enter, F3] + Trouver la correspondance suivante [Entrée, F3] + + + + Find next match with wrapping + Trouver la correspondance suivante avec le modèle + + + + F3 + + + + + The found pattern must match in letter case + Le motif recherché doit respecter la casse des lettres + + + + Case Sensitive + Sensible à la casse + + + + The found pattern must be a whole word + Le motif trouvé doit être un mot entier + + + + Whole Cell + Ensemble de la cellule + + + + Interpret search pattern as a regular expression + Interpréter le modèle de recherche comme une expression régulière + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + <html><head/><body><p>Lorsque cette case est cochée, le motif à trouver est interprété comme une expression régulière UNIX. Voir <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + + + + Regular Expression + Expression régulière + + + + + Close Find Bar + Fremer la barre de recherche + + + + Text to replace with + Texte à remplacer par + + + + Replace with + Remplacer par + + + + Replace next match + Remplacer la prochaine correspondance + + + + + Replace + Remplacer + + + + Replace all matches + Remplacer toutes les correspondances + + + + Replace all + Remplacer tout + + + + <html><head/><body><p>Scroll to the beginning</p></body></html> + <html><head/><body><p>Aller au début</p></body></html> + + + + <html><head/><body><p>Clicking this button navigates to the beginning in the table view above.</p></body></html> + <html><head/><body><p>Cliquer sur ce bouton permet d'aller au début de la table ci-dessus.</p></body></html> + + + + |< + |< + + + + Scroll one page upwards + Remonter d'une page + + + + <html><head/><body><p>Clicking this button navigates one page of records upwards in the table view above.</p></body></html> + <html><head/><body><p>Cliquer sur ce bouton permet d'afficher la page précédente des enregistrements de la table ci dessus.</p></body></html> + + + + < + < + + + + 0 - 0 of 0 + 0 - 0 de 0 + + + + Scroll one page downwards + Descendre d'une page + + + + <html><head/><body><p>Clicking this button navigates one page of records downwards in the table view above.</p></body></html> + <html><head/><body><p>Cliquer sur ce bouton permet d'afficher la page suivante des enregistrements de la table ci dessus.</p></body></html> + + + + > + > + + + + Scroll to the end + Aller à la fin + + + + <html><head/><body><p>Clicking this button navigates up to the end in the table view above.</p></body></html> + <html><head/><body><p>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Cliquer sur ce bouton permet d'aller à la fin de la table ci-dessus.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</p></body></html> + + + + >| + >| + + + + <html><head/><body><p>Click here to jump to the specified record</p></body></html> + <html><head/><body><p>Cliquer ici pour vous déplacer sur l'enregistrement indiqué</p></body></html> + + + + <html><head/><body><p>This button is used to navigate to the record number specified in the Go to area.</p></body></html> + <html><head/><body><p>Ce bouton est utilisé pour aller directement à l'enregistrement indiqué dans le champ Aller à.</p></body></html> + + + + Go to: + Aller à : + + + + Enter record number to browse + Entrez le nombre d'enregistrements à parcourir + + + + Type a record number in this area and click the Go to: button to display the record in the database view + Entrez un numéro d'enregistrement dans ce champ et cliquez sur le bouton "Aller à" pour afficher l'enregistrement dans la vue Base de Données + + + + 1 + 1 + + + + Show rowid column + Afficher la colonne RowId + + + + Toggle the visibility of the rowid column + Permet d'afficher ou non la colonne RowId + + + + Unlock view editing + Dévérouiller l'éditeur de vues + + + + This unlocks the current view for editing. However, you will need appropriate triggers for editing. + Permet de dévérouiller la vue courante pour l'éditer. Cependant, vous aurez besoin de déclencheurs appropriés pour faire cela. + + + + Edit display format + Modifier le format d'affichage + + + + Edit the display format of the data in this column + Modifie le format d'affichage des données contenues dans cette colonne + + + + + New Record + Nouvel Enregistrement + + + + + Insert a new record in the current table + Insérer un nouvel enregistrement dans la table en cours + + + + <html><head/><body><p>This button creates a new record in the database. Hold the mouse button to open a pop-up menu of different options:</p><ul><li><span style=" font-weight:600;">New Record</span>: insert a new record with default values in the database.</li><li><span style=" font-weight:600;">Insert Values...</span>: open a dialog for entering values before they are inserted in the database. This allows to enter values acomplishing the different constraints. This dialog is also open if the <span style=" font-weight:600;">New Record</span> option fails due to these constraints.</li></ul></body></html> + <html><head/><body><p>Ce bouton crée un nouvel enregistrement dans la Base de Données. Maintenez le bouton de la souris enfoncé pour ouvrir un menu contextuel de différentes options :</p><ul><li><span style=" font-weight:600;">Nouvel Enregistrement</span> : Insère un nouvel enregistrement avec les valeurs par défaut dans la Base de Données.</li><li><span style=" font-weight:600;">Insérer des valeurs...</span> : ouvre une boite de dialogue pour saisir des valeurs avant leur insersion dans la Base de Données. Ceci permet de saisir des valeurs correspondant aux différentes contraintes. Cette boîte de dialogue est également ouverte si l'option <span style=" font-weight:600;">Nouvel Enregistrement </span> est en erreur à cause de ces contraintes.</li></ul></body></html> + + + + + Delete Record + Supprimer l'enregistrement + + + + Delete the current record + Supprimer l'enregistrement courant + + + + + This button deletes the record or records currently selected in the table + Ce bouton permet de supprimer l'enregistrement sélectionné dans la table + + + + + Insert new record using default values in browsed table + Insérer un nouvel enregistrement en utilisant les valeurs par défaut de la table parcourrue + + + + Insert Values... + Ajouter des valeurs... + + + + + Open a dialog for inserting values in a new record + Ouvre une fenêtre de dialogue permettant l'insersion de valeurs dans un nouvel enregistrement + + + + Export to &CSV + Exporter au format &CSV + + + + + Export the filtered data to CSV + Exporte les données filtrées au format CSV + + + + This button exports the data of the browsed table as currently displayed (after filters, display formats and order column) as a CSV file. + Ce bouton exporte les données de la table parcourue telles qu'elles sont actuellement affichées (après les filtres, les formats d'affichage et la colonne d'ordre) dans un fichier CSV. + + + + Save as &view + Enregistrer comme une &vue + + + + + Save the current filter, sort column and display formats as a view + Enregistrer le filtre, la colonne de tri et les formats d'affichage actuels sous la forme d'une vue + + + + This button saves the current setting of the browsed table (filters, display formats and order column) as an SQL view that you can later browse or use in SQL statements. + Ce bouton permet d'enregistrer les paramètres actuels de la table parcourue (filtres, formats d'affichage et colonne d'ordre) sous forme de vue SQL que vous pourrez ensuite parcourir ou utiliser dans les instructions SQL. + + + + Save Table As... + Enregistrer la table sous... + + + + + Save the table as currently displayed + Enregistrer la table comme affichée actuellement + + + + <html><head/><body><p>This popup menu provides the following options applying to the currently browsed and filtered table:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Export to CSV: this option exports the data of the browsed table as currently displayed (after filters, display formats and order column) to a CSV file.</li><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Save as view: this option saves the current setting of the browsed table (filters, display formats and order column) as an SQL view that you can later browse or use in SQL statements.</li></ul></body></html> + <html><head/><body><p>Ce menu déroulant fournit les options suivantes s'appliquant à la table actuellement parcourue et filtrée:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Exporter au format CSV : cette option exporte les données de la table parcourue telles qu'elles sont actuellement affichées (après filtres, formats d'affichage et colonne d'ordre) vers un fichier CSV.</li><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Enregistrer comme vue : cette option permet d'enregistrer les paramètres actuels de la table parcourue (filtres, formats d'affichage et colonne d'ordre) dans une vue SQL que vous pourrez ensuite parcourir ou utiliser dans les instructions SQL.</li></ul></body></html> + + + + Hide column(s) + Masquer une/des colonnes + + + + Hide selected column(s) + Maquer la/les colonnes sélectionnées + + + + Show all columns + Afficher toutes les colonnes + + + + Show all columns that were hidden + Permet d'afficher toutes les colonnes qui ont été masquées + + + + + Set encoding + Définir l'encodage + + + + Change the encoding of the text in the table cells + Change l'encodage du texte des cellules de la table + + + + Set encoding for all tables + Définir l'encodage pour toutes les tables + + + + Change the default encoding assumed for all tables in the database + Change l'encodage par défaut choisi pour l'ensemble des tables de la Base de Données + + + + Clear Filters + Effacer les filtres + + + + Clear all filters + Effacer tous les filtres + + + + + This button clears all the filters set in the header input fields for the currently browsed table. + Ce bouton efface tous les filtres définis dans les champs de saisie de l'en-tête de la table actuellement parcourue. + + + + Clear Sorting + Effacer le tri + + + + Reset the order of rows to the default + Rétablit l'ordre des lignes aux valeurs par défaut + + + + + This button clears the sorting columns specified for the currently browsed table and returns to the default order. + Ce bouton efface les critères de tri définis pour les colonnes de la table actuellement parcourue et revient à l'ordre par défaut. + + + + Print + Imprimer + + + + Print currently browsed table data + Imprimer le données de la table actuellement parcourues + + + + Print currently browsed table data. Print selection if more than one cell is selected. + Imprimer le données de la table actuellement parcourues. Imprime la sélection si plus d'une cellule est sélectionnée. + + + + Ctrl+P + + + + + Refresh + Rafraichir + + + + Refresh the data in the selected table + Rafraîchir les données de la table sélectionnée + + + + This button refreshes the data in the currently selected table. + Ce bouton permet de rafraîchir les données de la table actuellement sélectionnée. + + + + F5 + + + + + Find in cells + Rechercher dans les cellules + + + + Open the find tool bar which allows you to search for values in the table view below. + Ouvre la barre d'outils de recherche qui vous permet de rechercher des valeurs dans la table ci-dessous. + + + + + Bold + Gras + + + + Ctrl+B + + + + + + Italic + Italique + + + + + Underline + Souligné + + + + Ctrl+U + + + + + + Align Right + Aligrer à Droite + + + + + Align Left + Aligner à Gauche + + + + + Center Horizontally + Centrer Horizontalement + + + + + Justify + Justifié + + + + + Edit Conditional Formats... + Éditer les formats conditionnels... + + + + Edit conditional formats for the current column + Éditer les formats conditionnels de la colonne en cours + + + + Clear Format + Effacer les Formats + + + + Clear All Formats + Effacer tous les Formats + + + + + Clear all cell formatting from selected cells and all conditional formats from selected columns + Effacr tous les formats de cellule des cellules sélectionnées et tous les formats conditionnels des colonnes sélectionnées + + + + + Font Color + Couleur de Police + + + + + Background Color + Couleur d'arrière plan + + + + Toggle Format Toolbar + Changer le format de lma barre d'outils + + + + Show/hide format toolbar + Afficher/Cacher la barre des formats + + + + + This button shows or hides the formatting toolbar of the Data Browser + Ce bouton permet d'afficher ou de masquer la barre d'outils de formatage du navigateur de données + + + + Select column + Sélectionner une colonne + + + + Ctrl+Space + Ctrl+Espace + + + + Replace text in cells + Remplace du texte dans les cellules + + + + Filter in any column + Filtrer dans n'importe quelle colonne + + + + Ctrl+R + + + + + %n row(s) + + %n ligne + %n lignes + + + + + , %n column(s) + + , %n colonne + , %n colonnes + + + + + . Sum: %1; Average: %2; Min: %3; Max: %4 + . Somme: %1; Moyenne: %2; Min: %3; Max: %4 + + + + Conditional formats for "%1" + Format conditionnel pour "%1" + + + + determining row count... + Détermination du nombre d'enregistrements... + + + + %1 - %2 of >= %3 + %1 - %2 de >= %3 + + + + %1 - %2 of %3 + %1 - %2 de %3 + + + + Please enter a pseudo-primary key in order to enable editing on this view. This should be the name of a unique column in the view. + Veuillez entrer une pseudo clé primaire pour permettre l'édition de la vue. Ce devrait être le nom d'une colonne unique dans la vue. + + + + Delete Records + Supprimer les enregistrements + + + + Duplicate records + Enregistrement en double + + + + Duplicate record + Dupliquer l'enregistrement + + + + Ctrl+" + + + + + Adjust rows to contents + Ajuster les lignes au contenu + + + + Error deleting record: +%1 + Erreur dans la suppression d'un enregistrement : +%1 + + + + Please select a record first + Veuillez sélectionner au préalable un enregistrement + + + + There is no filter set for this table. View will not be created. + Il n'existe pas de filtre pour cette table. La vue ne sera pas créée. + + + + Please choose a new encoding for all tables. + Veuillez choisir un nouvel encodage pour toutes les tables. + + + + Please choose a new encoding for this table. + Veuillez choisir un nouvel encodage pour cette table. + + + + %1 +Leave the field empty for using the database encoding. + %1 +Laissez le champ vide pour utiliser l'encodage de la Base de Données. + + + + This encoding is either not valid or not supported. + Cet encodage est invalide ou non supporté. + + + + %1 replacement(s) made. + %1 remplacement(s) effectué(s). + + + + VacuumDialog + + + Compact Database + Compacter la Base de Données + + + + Warning: Compacting the database will commit all of your changes. + Attention : compacter la base de donnée entraînera l'enregistrement de tous les changements effectués. + + + + Please select the databases to co&mpact: + Veuillez saisir le nom de la Base de Données à co&mpacter : + + + diff --git a/ConfigFiles/translations/sqlb_it.qm b/ConfigFiles/translations/sqlb_it.qm new file mode 100644 index 0000000000000000000000000000000000000000..49ab89b73f7b5b40299a76086ec4d0bbfe78ce6d GIT binary patch literal 249391 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 z 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 DGcA9% literal 0 HcmV?d00001 diff --git a/ConfigFiles/translations/sqlb_it.ts b/ConfigFiles/translations/sqlb_it.ts new file mode 100644 index 0000000..ea0b7e3 --- /dev/null +++ b/ConfigFiles/translations/sqlb_it.ts @@ -0,0 +1,7020 @@ + + + + + AboutDialog + + + About DB Browser for SQLite + Informazioni su DB Browser for SQLite + + + + Version + Versione + + + + <html><head/><body><p>DB Browser for SQLite is an open source, freeware visual tool used to create, design and edit SQLite database files.</p><p>It is bi-licensed under the Mozilla Public License Version 2, as well as the GNU General Public License Version 3 or later. You can modify or redistribute it under the conditions of these licenses.</p><p>See <a href="http://www.gnu.org/licenses/gpl.html">http://www.gnu.org/licenses/gpl.html</a> and <a href="https://www.mozilla.org/MPL/2.0/index.txt">https://www.mozilla.org/MPL/2.0/index.txt</a> for details.</p><p>For more information on this program please visit our website at: <a href="http://sqlitebrowser.org">http://sqlitebrowser.org</a></p><p><span style=" font-size:small;">This software uses the GPL/LGPL Qt Toolkit from </span><a href="http://qt-project.org/"><span style=" font-size:small;">http://qt-project.org/</span></a><span style=" font-size:small;"><br/>See </span><a href="http://qt-project.org/doc/qt-5/licensing.html"><span style=" font-size:small;">http://qt-project.org/doc/qt-5/licensing.html</span></a><span style=" font-size:small;"> for licensing terms and information.</span></p><p><span style=" font-size:small;">It also uses the Silk icon set by Mark James licensed under a Creative Commons Attribution 2.5 and 3.0 license.<br/>See </span><a href="http://www.famfamfam.com/lab/icons/silk/"><span style=" font-size:small;">http://www.famfamfam.com/lab/icons/silk/</span></a><span style=" font-size:small;"> for details.</span></p></body></html> + <html><head/><body><p>DB-Browser for SQLite è uno strumento grafico opensource e freeware usato per creare, struttutturare e modificare file database di SQLite</p><p>È rilasciato sotto la licenza Mozilla Public License Version 2, così come sotto la licenza GNU General Public License Version 3 o successive. È possibile modificarlo e redistribuirlo sotto le condizioni specificate da queste licenze.</p><p>Si veda <a href="http://www.gnu.org/licenses/gpl.html">http://www.gnu.org/licenses/gpl.html</a> e <a href="https://www.mozilla.org/MPL/2.0/index.txt">https://www.mozilla.org/MPL/2.0/index.txt</a> per ulteriori dettagli.</p><p>Per ulteriori dettagli riguardo questo programma visitate il nostro sito web a: <a href="http://sqlitebrowser.org">http://sqlitebrowser.org</a></p><p><span style=" font-size:small;">Questo software usa GPL/LGPL QT Toolkit da </span><a href="http://qt-project.org/"><span style=" font-size:small;">http://qt-project.org/</span></a><span style=" font-size:small;"><br/>Si veda </span><a href="http://qt-project.org/doc/qt-5/licensing.html"><span style=" font-size:small;">http://qt-project.org/doc/qt-5/licensing.html</span></a><span style=" font-size:small;"> per termini di licenza e informazioni.</span></p><p><span style=" font-size:small;">Utilizza inoltre Silk-Iconset di Mark James, rilasciato sotto licenza Creative Commons Attribution 2.5 e 3.0.<br/>Si veda </span><a href="http://www.famfamfam.com/lab/icons/silk/"><span style=" font-size:small;">http://www.famfamfam.com/lab/icons/silk/</span></a><span style=" font-size:small;"> per ulteriori dettagli.</span></p></body></html> + + + + AddRecordDialog + + + Add New Record + Aggiungi un nuovo record + + + + Enter values for the new record considering constraints. Fields in bold are mandatory. + Inserisci i valori per il nuovo record considerando i vincoli. I campi in grassetto sono obbligatori. + + + + In the Value column you can specify the value for the field identified in the Name column. The Type column indicates the type of the field. Default values are displayed in the same style as NULL values. + Nella colonna Valore puoi specificare il valore per il campo identificato dalla colonna Nome. La colonna Tipo indica il tipo del campo. I valori di default sono mostrati nello stesso stile come valori NULL. + + + + Name + Nome + + + + Type + Tipo + + + + Value + Valore + + + + Values to insert. Pre-filled default values are inserted automatically unless they are changed. + Valori da inserire. Sono preinseriti dei valori di default automaticamente a meno che essi non vengano cambiati. + + + + When you edit the values in the upper frame, the SQL query for inserting this new record is shown here. You can edit manually the query before saving. + Quando modifichi i valori nel riquadro superiore, la query SQL per inserire questo nuovo record è mostrata qui. Puoi modificare manualmente la query prima di salvare. + + + + <html><head/><body><p><span style=" font-weight:600;">Save</span> will submit the shown SQL statement to the database for inserting the new record.</p><p><span style=" font-weight:600;">Restore Defaults</span> will restore the initial values in the <span style=" font-weight:600;">Value</span> column.</p><p><span style=" font-weight:600;">Cancel</span> will close this dialog without executing the query.</p></body></html> + <html><head/><body><p><span style=" font-weight:600;">Salva</span> invia la richiesta SQL mostrata al database per inserire un nuovo record.</p><p><span style=" font-weight:600;">Ripristina Defaults</span> ripristinerà i valori iniziali della colonna <span style=" font-weight:600;">Valore</span>.</p><p><span style=" font-weight:600;">Annulla</span> chiuderà questa finestra di dialogo senza eseguire la query.</p></body></html> + + + + Auto-increment + + Auto-incrementale + + + + + Unique constraint + + Restrizione univoco + + + + + Check constraint: %1 + + Controlla restrizioni: %1 + + + + + Foreign key: %1 + + Chiave esterna: %1 + + + + + Default value: %1 + + Valore di default: %1 + + + + + Error adding record. Message from database engine: + +%1 + Errore nell'aggiungere il record. Messaggio dal database engine: + +%1 + + + + Are you sure you want to restore all the entered values to their defaults? + Sei sicuro di voler ripristinare tutti i valori inseriti ai loro valori di default? + + + + Application + + + Possible command line arguments: + Possibili argomenti da linea di comando: + + + + Usage: %1 [options] [<database>|<project>] + + Utilizzo: %1 [opzioni] [<database>|<progetto>] + + + + + -h, --help Show command line options + -h, --help Mostra le opzioni da riga di comando + + + + -q, --quit Exit application after running scripts + -q, --quit Chiude l'applicazione dopo aver eseguito gli scripts + + + + -s, --sql <file> Execute this SQL file after opening the DB + -s, --sql <file> Esegue questo file SQL dopo aver aperto il DB + + + + -t, --table <table> Browse this table after opening the DB + -t, --table <table> Mostra questa tabella dopo aver aperto il DB + + + + -R, --read-only Open database in read-only mode + -R, --read-only Apre il database in sola lettura + + + + -o, --option <group>/<setting>=<value> + -o, --option <gruppo>/<impostazione>=<valore> + + + + Run application with this setting temporarily set to value + Esegue l'applicazione con queste impostazioni applicate temporaneamente + + + + -O, --save-option <group>/<setting>=<value> + -O, --save-option <gruppo>/<impostazione>=<valore> + + + + Run application saving this value for this setting + Esegue l'applicazione salvando questo valore come impostazione + + + + -v, --version Display the current version + -v, --version Mostra la versione corrente + + + + <database> Open this SQLite database + <database> Apre questo database SQLite + + + + <project> Open this project file (*.sqbpro) + <project> Apre questo file di progetto (*.sqbpro) + + + + The -s/--sql option requires an argument + L'opzione -s/--sql richiede un argomento + + + + The file %1 does not exist + Il file %1 non esiste + + + + The -t/--table option requires an argument + L'opzione -t/--table richiede un argomento + + + + The -o/--option and -O/--save-option options require an argument in the form group/setting=value + L'opzioni -o/--option e -O/--save-option richiedono un parametro nel formato gruppo/impostaizione=valore + + + + SQLite Version + Versione SQLite + + + + SQLCipher Version %1 (based on SQLite %2) + Versione SQLCipher %1 (basata su SQLite %2) + + + + DB Browser for SQLite Version %1. + DB Browser for SQLite Versione %1. + + + + Built for %1, running on %2 + Compilato per %1, in esecuzione su %2 + + + + Qt Version %1 + Versione Qt %1 + + + + Invalid option/non-existant file: %1 + Opzione non valida/file inesistente: %1 + + + + CipherDialog + + + SQLCipher encryption + Criptatura SQLCipher + + + + &Password + &Password + + + + &Reenter password + &Reinserire password + + + + Encr&yption settings + I&mpostazioni cifratura + + + + SQLCipher &3 defaults + Predefiniti SQLCipher &3 + + + + SQLCipher &4 defaults + Predefiniti SQLCipher &4 + + + + Custo&m + Personalizzat&i + + + + Page si&ze + Di&mensioni pagina + + + + &KDF iterations + Integrazione &KDF + + + + HMAC algorithm + Algoritmo HMAC + + + + KDF algorithm + Algoritmo KDF + + + + Plaintext Header Size + Dimensione header testuale + + + + Passphrase + Chiave testuale + + + + Raw key + Chiave grezza + + + + Please set a key to encrypt the database. +Note that if you change any of the other, optional, settings you'll need to re-enter them as well every time you open the database file. +Leave the password fields empty to disable the encryption. +The encryption process might take some time and you should have a backup copy of your database! Unsaved changes are applied before modifying the encryption. + Perfavore inserisci una chiave per criptare il database. +Nota che se cambi una qualsiasi delle altre impostazioni opzionali, dovrai reinserirle ogni volta che apri il file del database. +Lascia i campi password vuoti per disabilitare la crittografia. +Il processo di crittazione può richiedere del tempo e dovresti avere una copia di backup del database! Modifiche non salvate sono applicate prima di modificare la crittografia. + + + + Please enter the key used to encrypt the database. +If any of the other settings were altered for this database file you need to provide this information as well. + Si prega d'inserire la chiave utilizzata per criptare il database. +Se una qualunque altra impostazione è stata modificata per l'inserimento della criptazione si prega d'impostarla in modo adeguato. + + + + ColumnDisplayFormatDialog + + + Choose display format + Seleziona il formato di visualizzazione + + + + Display format + Formato di visualizzazione + + + + Choose a display format for the column '%1' which is applied to each value prior to showing it. + Seleziona un formato di visualizzazione per la colonna '%1' che è applicato a ciascun valore prima di mostrarlo. + + + + Default + Default + + + + Decimal number + Numero decimale + + + + Exponent notation + Notazione esponenziale + + + + Hex blob + Blob esadecimale + + + + Hex number + Numero esadecimale + + + + Octal number + Numero ottale + + + + Round number + Numero arrotondato + + + + Apple NSDate to date + Apple NSDate ad oggi + + + + Java epoch (milliseconds) to date + Java epoch (millisecondi) ad oggi + + + + .NET DateTime.Ticks to date + .NET DateTime.Ticks ad oggi + + + + Julian day to date + Giorno giuliano ad oggi + + + + Unix epoch to date + Unix epoch ad oggi + + + + Unix epoch to local time + Unix epoch a ora locale + + + + Windows DATE to date + Windows DATE ad oggi + + + + Date as dd/mm/yyyy + Data come gg/mm/aaaa + + + + Lower case + Minuscolo + + + + Upper case + Maiuscolo + + + + Custom + Personalizzato + + + + Custom display format must contain a function call applied to %1 + I formati di visualizzazione personalizzati devono contenere una chiamata a funzione applicata a %1 + + + + Error in custom display format. Message from database engine: + +%1 + Errore nel formato personalizzato di visualizzazione. Messaggio dal motore DB: + +%1 + + + + Custom display format must return only one column but it returned %1. + Il formato di visualizzazione personalizzato deve restituire solo una colonna ma ha restituito %1. + + + + CondFormatManager + + + Conditional Format Manager + Gestore della formattazione condizionale + + + + This dialog allows creating and editing conditional formats. Each cell style will be selected by the first accomplished condition for that cell data. Conditional formats can be moved up and down, where those at higher rows take precedence over those at lower. Syntax for conditions is the same as for filters and an empty condition applies to all values. + Questa finestra permette la creazione e modifica della formattazione condizionale. Lo stile di ogni cella corrisponde alla prima condizione corrispondente. Le formattazioni condizionali possono essere spostate su e giù, quelle in posizione superiore avranno precedenza su quelle inferiori. La sintassi per le condizioni è la stessa utilizzata per i filtri e una condizione vuota corrisponde a tutti i valori. + + + + Add new conditional format + Aggiunti nuova condizione + + + + &Add + &Aggiungi + + + + Remove selected conditional format + Rimuovi la condizione selezionata + + + + &Remove + &Rimuovi + + + + Move selected conditional format up + Sposta la condizione selezionata in su + + + + Move &up + Sposta &su + + + + Move selected conditional format down + Sposta la condizione selezionata giù + + + + Move &down + Sposta &giù + + + + Foreground + Primo piano + + + + Text color + Colore del testo + + + + Background + Sfondo + + + + Background color + Colore dello sfondo + + + + Font + Testo + + + + Size + Dimensione + + + + Bold + Grassetto + + + + Italic + Corsivo + + + + Underline + Sottolinea + + + + Alignment + Allineamento + + + + Condition + Condizione + + + + + Click to select color + Clicca per scegliere il colore + + + + Are you sure you want to clear all the conditional formats of this field? + Sei sicuro di voler eliminare tutte le formattazioni condizionali di questo campo? + + + + DBBrowserDB + + + This database has already been attached. Its schema name is '%1'. + Questo database è già stato collegato. Il nome del suo schema è '%1'. + + + + Please specify the database name under which you want to access the attached database + Si prega di specificare il nome del database con cui si vuol accedere al database collegato + + + + Invalid file format + Formato file non valido + + + + Do you really want to close this temporary database? All data will be lost. + Vuoi davvero chiudere questo database temporaneo? Tutti i dati andranno persi. + + + + Do you want to save the changes made to the database file %1? + Vuoi salvare le modifiche effettuate al database %1? + + + + Database didn't close correctly, probably still busy + Il database non è stato chiuso correttamente; probabilmente è ancora occupato + + + + The database is currently busy: + Il database è attualmente in uso: + + + + Do you want to abort that other operation? + Vuoi annullare l'altra operazione? + + + + Exporting database to SQL file... + Esportando il database in file SQL... + + + + + Cancel + Annulla + + + + + No database file opened + Nessun database aperto + + + + Executing SQL... + Eseguendo SQL... + + + + Action cancelled. + Azione annullata. + + + + + Error in statement #%1: %2. +Aborting execution%3. + Errore nello statement #%1: %2. +Annullo l'esecuzione %3. + + + + + and rolling back + e ripristino il db + + + + didn't receive any output from %1 + non ho ricevuto alcun ouput da %1 + + + + could not execute command: %1 + impossibile eseguire il comando: %1 + + + + Cannot delete this object + Non posso cancellare questo oggetto + + + + Cannot set data on this object + Non posso impostare i dati in questo oggetto + + + + + A table with the name '%1' already exists in schema '%2'. + Una tabella con il nome '%1' esiste già nello schema '%2'. + + + + No table with name '%1' exists in schema '%2'. + Nessuna tabella col nome '%1' esiste nello schema '%2'. + + + + + Cannot find column %1. + Impossibile trovare la colonna %1. + + + + Creating savepoint failed. DB says: %1 + Creazione del punto di salvataggio fallita. DB log: %1 + + + + Renaming the column failed. DB says: +%1 + Fallimento dell'operazione di rinomina. DB log: %1 + + + + + Releasing savepoint failed. DB says: %1 + Rilascio del salvataggio falitto. DB log: %1 + + + + Creating new table failed. DB says: %1 + Creazione della nuova tabella fallita. DB log: %1 + + + + Copying data to new table failed. DB says: +%1 + Copia dei dati nella nuova tabella fallita. DB log: %1 + + + + Deleting old table failed. DB says: %1 + Eliminazione della vecchia tabella fallita. DB log: %1 + + + + Error renaming table '%1' to '%2'. +Message from database engine: +%3 + Errore durante il rinomino della tabella '%1' in '%2. +Messaggio dal DB: +%3 + + + + could not get list of db objects: %1 + non posso ottenere la listra degli oggetti db: %1 + + + + Restoring some of the objects associated with this table failed. This is most likely because some column names changed. Here's the SQL statement which you might want to fix and execute manually: + + + Ripristino di alcuni oggetti associati a questa tabella fallito. Questo è probabilmente dovuto al fatto che i nomi di alcune colonne sono cambiati . Qui c'è la richiesta SQL che potresti voler sistemare ed eseguire manualmente: + + + + + + could not get list of databases: %1 + non è possibile ricavare la lista dei database: %1 + + + + Error setting pragma %1 to %2: %3 + Errore nell'impostare pragma %1 in %2: %3 + + + + File not found. + File non trovato. + + + + Error loading extension: %1 + Errore nel caricamento dell'estensione: %1 + + + + could not get column information + non è possibile ricavare informazioni sulla colonna + + + + DbStructureModel + + + Name + Nome + + + + Object + Oggetto + + + + Type + Tipo + + + + Schema + Schema + + + + Database + Database + + + + Browsables + Navigabili + + + + All + Tutti + + + + Temporary + Temporaneo + + + + Tables (%1) + Tabelle (%1) + + + + Indices (%1) + Indici (%1) + + + + Views (%1) + Viste (%1) + + + + Triggers (%1) + Triggers (%1) + + + + EditDialog + + + Edit database cell + Modifica la cella del database + + + + Mode: + Modalità: + + + + This is the list of supported modes for the cell editor. Choose a mode for viewing or editing the data of the current cell. + Questa è la lista delle modalità supportate dall'editor della cella. Scegli una modalità per vedere o modificare i dati della cella corrente. + + + + Text + Testo + + + + RTL Text + Testo RTL + + + + Binary + Binario + + + + + Image + Immagine + + + + JSON + JSON + + + + XML + XML + + + + + Automatically adjust the editor mode to the loaded data type + Seleziona automaticamente la modalità dell'editor in base al tipo di dato caricato + + + + This checkable button enables or disables the automatic switching of the editor mode. When a new cell is selected or new data is imported and the automatic switching is enabled, the mode adjusts to the detected data type. You can then change the editor mode manually. If you want to keep this manually switched mode while moving through the cells, switch the button off. + Questo bottone spuntabile permette di abilitare o disabilitare l'adattamento automatico della modalità dell'editor. Quando una nuova cella è selezionata o sono importati nuovi dati e la modalità di adattamento automaitco è abilitata, la modalità si aggiusta al tipo di dato rilevato. Puoi cambiare in seguito la modalità dell'editor in modo manuale. Se vuoi mantenere la modalità selezionata manualmente mentre ti muovi tre le celle, togli la spunta a questo bottone. + + + + Auto-switch + Auto-switch + + + + The text editor modes let you edit plain text, as well as JSON or XML data with syntax highlighting, automatic formatting and validation before saving. + +Errors are indicated with a red squiggle underline. + La modalità editor di testo ti pemrette di editare del testo semplice, così come dei dati JSON o XML con evidenziazione della sintassi, formattazione automatica e validazione prima del salvataggio. + +Gli errori sono indicati da una sottolineatura rossa ondulata. + + + + This Qt editor is used for right-to-left scripts, which are not supported by the default Text editor. The presence of right-to-left characters is detected and this editor mode is automatically selected. + Questo editor Qt è utilizzato per le scritture da destra a sinistra, che non sono supportate dall'editor testuale standard. La presenza di caratteri da destra a sinistra è rilevata e la modalità dell'editor viene selezionata automaticamente. + + + + Open preview dialog for printing the data currently stored in the cell + Apre una finestra d'anteprima per la stampa dei dati attualmente memorizzati nella cella + + + + Auto-format: pretty print on loading, compact on saving. + Auto-formato: migliore stampa al caricamento, compatta in salvataggio. + + + + When enabled, the auto-format feature formats the data on loading, breaking the text in lines and indenting it for maximum readability. On data saving, the auto-format feature compacts the data removing end of lines, and unnecessary whitespace. + Quando abilitato, la feature dell'auto-formato formatta i dati al caricamento, rompe il testo in righe e lo indenta per una maggiore leggibilità. Al salvataggio dei dati, la feature dell'auto-formato compatta i dati rimuovendo i fine riga, e spazi bianchi non necessari. + + + + Word Wrap + A capo automatico + + + + Wrap lines on word boundaries + Porta a capo le line di testo al raggiungimento del bordo + + + + + Open in default application or browser + Apri nell'applicazione predefinita o nel browser + + + + Open in application + Apri nell'applicazione + + + + The value is interpreted as a file or URL and opened in the default application or web browser. + Il valore è interpretato come file o URL e aperto nell'applicazione predefinita o nel web browser. + + + + Save file reference... + Salva riferimento file... + + + + Save reference to file + Salva riferimento su file + + + + + Open in external application + Apri in un'applicazione esterna + + + + Autoformat + Autoformato + + + + &Export... + &Esporta... + + + + + &Import... + &Importa... + + + + + Import from file + Importa da file + + + + + Opens a file dialog used to import any kind of data to this database cell. + Apri una finestra di dialogo per importare qualsiasi tipo di dato in questa cella del database. + + + + Export to file + Esporta in un file + + + + Opens a file dialog used to export the contents of this database cell to a file. + Apri una finestra di dialogo utilizzata per esportare i contenuti di questa cella del database in un file. + + + + Apply data to cell + Applica i dati alla cella + + + + Erases the contents of the cell + Cancella i contenuti di questa cella + + + + Set as &NULL + Imposta come &NULL + + + + This area displays information about the data present in this database cell + Quest'area mostra informazioni riguardo i dati presenti in questa cella del database + + + + Type of data currently in cell + Tipo di dato attualmente nella cella + + + + Size of data currently in table + Dimensione dei dati attualmente in tabella + + + + This button saves the changes performed in the cell editor to the database cell. + Questo bottone salva le modifiche fatte alla cella dell'editor alla cella del database. + + + + Apply + Applica + + + + + Print... + Stampa... + + + + Open preview dialog for printing displayed image + Apri la finestra di anteprima per stampare l'immagine mostrata + + + + + Ctrl+P + + + + + Open preview dialog for printing displayed text + Apri la finestra di anteprima per stampare il testo mostrato + + + + Copy Hex and ASCII + Copia HEX e ASCII + + + + Copy selected hexadecimal and ASCII columns to the clipboard + Copia le colonne esadecimali e ASCII selezionate negli appunti + + + + Ctrl+Shift+C + + + + + + Image data can't be viewed in this mode. + I dati immagine non possono essere visualizzati in questa modalità. + + + + + Try switching to Image or Binary mode. + Prova a passare alla modalità Immagine o Binario. + + + + + Binary data can't be viewed in this mode. + I dati binari non possono essere visualizzati in questa modalità. + + + + + Try switching to Binary mode. + Prova a passare alla modalità Binario. + + + + + Image files (%1) + File immagine (%1) + + + + Binary files (*.bin) + File binario (*.bin) + + + + Choose a file to import + Scegli un file da importare + + + + %1 Image + %1 Immagine + + + + Choose a filename to export data + Scegli un nome del file per esportare i dati + + + + Invalid data for this mode + Dati non validi per questa modalità + + + + The cell contains invalid %1 data. Reason: %2. Do you really want to apply it to the cell? + La cella continete dati %1 non validi. Ragione: %2. Sei davvero sicuro di applicare quello alla cella? + + + + + Type of data currently in cell: Text / Numeric + Tipo di dato attualmente nella cella: Testo / Numerico + + + + + + %n character(s) + + %n carattere + %n caratteri + + + + + Type of data currently in cell: %1 Image + Tipo di dato attualmente nella cella: %1 Immagine + + + + %1x%2 pixel(s) + %1x%2 pixel(s) + + + + Type of data currently in cell: NULL + Tipo di dato attualmente nella cella: NULL + + + + + %n byte(s) + + %n byte + %n bytes + + + + + Type of data currently in cell: Valid JSON + Tipo di dato attualmente nella cella: Valid JSON + + + + Type of data currently in cell: Binary + Tipo di dato attualmente nella cella: Binario + + + + Couldn't save file: %1. + Impossibile salvare il file: %1. + + + + The data has been saved to a temporary file and has been opened with the default application. You can now edit the file and, when you are ready, apply the saved new data to the cell editor or cancel any changes. + I dati sono stati salvati in un file temporane e sono stati aperti con l'applicazione predefinita. Ora puoi modificare il file e, quando sei pronto, applicare i nuovi dati salvati all'editor di cella o annullare ogni modifica. + + + + EditIndexDialog + + + Edit Index Schema + Modifica Indice Schema + + + + &Name + &Nome + + + + &Table + &Tabella + + + + &Unique + &Univoco + + + + For restricting the index to only a part of the table you can specify a WHERE clause here that selects the part of the table that should be indexed + Per restringere l'indice a solo una parte della tabella puoi specificare una clausula WHERE qui che selezioni la parte della tabella che dovrà essere indicizzata + + + + Partial inde&x clause + Clausola di &indice parziale + + + + Colu&mns + &Colonne + + + + Table column + Colonna della tabella + + + + Type + Tipo + + + + Add a new expression column to the index. Expression columns contain SQL expression rather than column names. + Aggiungi una nuova espressione colonna all'indice. Le espressioni colonna contengono espressioni SQL piuttosto che i nomi delle colonne. + + + + Index column + Indice di colonna + + + + Order + Ordine + + + + Deleting the old index failed: +%1 + Cancellazione del vecchio indice fallita: +%1 + + + + Creating the index failed: +%1 + Creazione del vecchio indice fallita: +%1 + + + + EditTableDialog + + + Edit table definition + Modifica la definizione della tabella + + + + Table + Tabella + + + + Advanced + Avanzate + + + + Database sche&ma + Sche&ma database + + + + Without Rowid + Senza id riga + + + + Make this a 'WITHOUT rowid' table. Setting this flag requires a field of type INTEGER with the primary key flag set and the auto increment flag unset. + Fai una tabella 'WITHOUT rowid'. Impostare questa spunta richiede un campo di tipo INTEGER con la chiave primaria impostata e l'auto incremento non impostato. + + + + Fields + Campi + + + + Add + Aggiungi + + + + Remove + Rimuovi + + + + Move to top + Muovi in cima + + + + Move up + Muovi su + + + + Move down + Muovi giù + + + + Move to bottom + Muovi al fondo + + + + + Name + Nome + + + + + Type + Tipo + + + + NN + NN + + + + Not null + Non null + + + + PK + CP + + + + Primary key + Chiave Primaria + + + + AI + AI + + + + Autoincrement + Autoincremento + + + + U + U + + + + + + Unique + Univoco + + + + Default + Default + + + + Default value + Valore di default + + + + + + Check + Controlla + + + + Check constraint + Controlla le restrizioni + + + + Collation + Fascicola + + + + + + Foreign Key + Chiave esterna + + + + Constraints + Vincoli + + + + Add constraint + Aggiungi vincolo + + + + Remove constraint + Rimuovi vincolo + + + + Columns + Colonne + + + + SQL + SQL + + + + <html><head/><body><p><span style=" font-weight:600; color:#ff0000;">Warning: </span>There is something with this table definition that our parser doesn't fully understand. Modifying and saving this table might result in problems.</p></body></html> + <html><head/><body><p><span style=" font-weight:600; color:#ff0000;">Attenzione: </span>C'è qualcosa in questa definizione di tabella che il nostro parser non comprende. Modificare e salvare questa tabella potrebbe creare dei problemi.</p></body></html> + + + + + Primary Key + Chiave primaria + + + + Add a primary key constraint + Aggiungi un vincolo di chiave primaria + + + + Add a foreign key constraint + Aggiungi un vincolo di chiave esterna + + + + Add a unique constraint + Aggiungi un vincolo di unicità + + + + Add a check constraint + Aggiungi un vincolo di controllo + + + + + There can only be one primary key for each table. Please modify the existing primary key instead. + Puoi avere solo una chiave primaria per ogni tabella. Si prega di modificare la chiave primaria attuale. + + + + Error creating table. Message from database engine: +%1 + Error nella creazione della tabella. Messaggio dal database engine: +%1 + + + + There already is a field with that name. Please rename it first or choose a different name for this field. + Esiste già un campo con quel nome. Si prega di rinominarlo prima o scegliere un nome differente per questo campo. + + + + This column is referenced in a foreign key in table %1 and thus its name cannot be changed. + Questa colonna è referenziata in una chiave esterna nella tabella %1 e quindi il nome non può essere modificato. + + + + There is at least one row with this field set to NULL. This makes it impossible to set this flag. Please change the table data first. + Esiste almeno una riga con questo campo impostato a NULL. Questo rende impossibile impostare questa opzione. Si prega prima di modificare quel dato. + + + + There is at least one row with a non-integer value in this field. This makes it impossible to set the AI flag. Please change the table data first. + Esiste almeno un riga con un valore non intero in questo campo. Questo rende impossibile impostare l'AI. Si prega prima di cambiare il dato. + + + + Column '%1' has duplicate data. + + La colonna '%1' ha dei dati duplicati. + + + + + This makes it impossible to enable the 'Unique' flag. Please remove the duplicate data, which will allow the 'Unique' flag to then be enabled. + Questo rende impossibile abilitare l'opzionie 'Univoco'. Perfavore rimuovi i dati duplicati, il che permetterà l'abilitazione dell'opzione 'Univoco'. + + + + Are you sure you want to delete the field '%1'? +All data currently stored in this field will be lost. + Sei sicuro di voler eliminare il campo '%1'? +Tutti i dati che sono attualmente memorizzati in questo campo andranno persi. + + + + Please add a field which meets the following criteria before setting the without rowid flag: + - Primary key flag set + - Auto increment disabled + Perfavore agginugi un campo che rispetti i seguenti criteri prima di impostare l'opzione senza id di riga: + - Opzione Chiave Primaria impostata + - Autoincremento disabilitato + + + + ExportDataDialog + + + Export data as CSV + Esporta i dati come CSV + + + + Tab&le(s) + Tabe&lla(e) + + + + Colu&mn names in first line + Nomi delle &Colonne sulla prima riga + + + + Fie&ld separator + Separatore di ca&mpo + + + + , + , + + + + ; + ; + + + + Tab + Tab + + + + | + | + + + + + + Other + Altro + + + + &Quote character + &Carattere citazione + + + + " + " + + + + ' + ' + + + + New line characters + Carattere di nuova riga + + + + Windows: CR+LF (\r\n) + Windows: CR+LF (\r\n) + + + + Unix: LF (\n) + Unix: LF (\n) + + + + Pretty print + Visualizzazione piacevole + + + + Export data as JSON + Esporta i dati come JSON + + + + exporting CSV + esportando in CSV + + + + + Could not open output file: %1 + Impossibile aprire il file di output: %1 + + + + exporting JSON + esportando in JSON + + + + + Choose a filename to export data + Scegliere un nome file per esportare i dati + + + + Please select at least 1 table. + Perfavore seleziona almeno una tabella. + + + + Choose a directory + Scegliere una cartella + + + + Export completed. + Esportazione completata. + + + + ExportSqlDialog + + + Export SQL... + Esporta SQL... + + + + Tab&le(s) + Tabe&lla(e) + + + + Select All + Seleziona tutto + + + + Deselect All + Deseleziona tutto + + + + &Options + &Opzioni + + + + Keep column names in INSERT INTO + Tieni i nomi delle colonne in INSERT INTO + + + + Multiple rows (VALUES) per INSERT statement + Righe multiple (VALUES) per lo statement INSERT + + + + Export everything + Esporta tutto + + + + Export schema only + Esporta solo lo schema + + + + Export data only + Esporta solo i dati + + + + Keep old schema (CREATE TABLE IF NOT EXISTS) + Mantieni lo schema esistente (CREATE TABLE IF NOT EXISTS) + + + + Overwrite old schema (DROP TABLE, then CREATE TABLE) + Sovrascrivi schema precedente (DROP TABLE, poi CREATE TABLE) + + + + Please select at least one table. + Perfavore seleziona almeno una tabella. + + + + Choose a filename to export + Scegli un nome del file per esportare + + + + Export completed. + Esportazione completata. + + + + Export cancelled or failed. + Esportazione annullata o fallita. + + + + ExtendedScintilla + + + + Ctrl+H + + + + + Ctrl+F + + + + + + Ctrl+P + + + + + Find... + Trova... + + + + Find and Replace... + Trova e Sostituisci... + + + + Print... + Stampa... + + + + ExtendedTableWidget + + + Use as Exact Filter + Usa come filtro esatto + + + + Containing + Che contiene + + + + Not containing + Non contenuto + + + + Not equal to + Non uguale a + + + + Greater than + Maggiore di + + + + Less than + Minore di + + + + Greater or equal + Maggiore o uguale + + + + Less or equal + Minore o uguale + + + + Between this and... + Tra questo e... + + + + Regular expression + Espressione regolare + + + + Edit Conditional Formats... + Modifica Formattazione Condizionale... + + + + Set to NULL + Imposta a NULL + + + + Copy + Copia + + + + Copy with Headers + Copia con gli Headers + + + + Copy as SQL + Copia come SQL + + + + Paste + Incolla + + + + Print... + Stampa... + + + + Use in Filter Expression + Usa nell'espressione del filtro + + + + Alt+Del + + + + + Ctrl+Shift+C + + + + + Ctrl+Alt+C + + + + + The content of the clipboard is bigger than the range selected. +Do you want to insert it anyway? + Il contenuto degli appunti è più grande del range selezionato. +Vuoi inserirlo comunque? + + + + <p>Not all data has been loaded. <b>Do you want to load all data before selecting all the rows?</b><p><p>Answering <b>No</b> means that no more data will be loaded and the selection will not be performed.<br/>Answering <b>Yes</b> might take some time while the data is loaded but the selection will be complete.</p>Warning: Loading all the data might require a great amount of memory for big tables. + <p>Non tutti i dati sono stati caricati. <b>Vuoi caricare tutti i dati prima di selezionare tutte le righe?</b><p><p>Rispondere <b>No</b> significa che non verranno caricati i restanti dati e la selezione non verrà effettuata.<br/>Rispondere <b>Si</b> potrebbe richiedere del tempo per caricare i dati, ma la selezione sarà completa.</p>Attenzione: Caricare tutti i dati potrebbe richiedere un grosso quantitativo di memoria in caso di grandi tabelle. + + + + Cannot set selection to NULL. Column %1 has a NOT NULL constraint. + Impossibile modificare la selezione in NULL. La colonna %1 ho un vincolo NOT NULL. + + + + FileExtensionManager + + + File Extension Manager + Gestore delle estensioni dei files + + + + &Up + Porta &su + + + + &Down + Porta &giù + + + + &Add + &Aggiungi + + + + &Remove + &Rimuovi + + + + + Description + Descrizione + + + + Extensions + Estensioni + + + + *.extension + *.estensione + + + + FilterLineEdit + + + Filter + Filtro + + + + These input fields allow you to perform quick filters in the currently selected table. +By default, the rows containing the input text are filtered out. +The following operators are also supported: +% Wildcard +> Greater than +< Less than +>= Equal to or greater +<= Equal to or less += Equal to: exact match +<> Unequal: exact inverse match +x~y Range: values between x and y +/regexp/ Values matching the regular expression + Questi campi di input permettono di effettuare filtri rapidi nella tabella correntemente selezionata. +er impostazione predefinita, le righe che contengono il testo immesso sono escluse. +Sono inoltre supportati i seguenti operatori: +% Wildcard +> Maggiore di +< Minore di +>= Maggiore o uguale +<= Minore o uguale += Uguale a: corrispondenza esatta +<> Diverso: corrispondenza esatta invertita +x~y Intervallo: valori tra x e y +/regexp/ Valori che corrispondono all'espressione regolare + + + + Use for Conditional Format + Usa per formattazioni condizionali + + + + Clear All Conditional Formats + Elimina tutte le formattazioni condizionali + + + + Edit Conditional Formats... + Modifica Formattazione Condizionale... + + + + Set Filter Expression + Imposta l'espressione del filtro + + + + What's This? + Cos'è questo? + + + + Is NULL + È NULL + + + + Is not NULL + Non è NULL + + + + Is empty + È vuoto + + + + Is not empty + Non è vuoto + + + + Not containing... + Non contenente... + + + + Equal to... + Uguale a... + + + + Not equal to... + Non uguale a... + + + + Greater than... + Maggiore di... + + + + Less than... + Minore di... + + + + Greater or equal... + Maggiore o uguale... + + + + Less or equal... + Minore o uguale... + + + + In range... + Nell'intervallo... + + + + Regular expression... + Espressione regolare... + + + + FindReplaceDialog + + + Find and Replace + Trova e sostituisci + + + + Fi&nd text: + Tr&ova testo: + + + + Re&place with: + So&stituisci con: + + + + Match &exact case + Corrispondenza &esatta + + + + Match &only whole words + Trova solo &parole complete + + + + When enabled, the search continues from the other end when it reaches one end of the page + Quando abilitato, la ricerca contninua dall'altro capo del documento quando si raggiunge una fine del documento + + + + &Wrap around + Senza &limiti + + + + When set, the search goes backwards from cursor position, otherwise it goes forward + Quando abilitato, la ricerca va all'indietro dalla corrente posizione del cursore, altrimenti va in avanti + + + + Search &backwards + Cerca &indietro + + + + <html><head/><body><p>When checked, the pattern to find is searched only in the current selection.</p></body></html> + <html><head/><body><p>Quando abilitato, la ricerca viene effettuata solo all'interno della selezione corrente.</p></body></html> + + + + &Selection only + &Solo selezionati + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + <html><head/><body><p>Quando selezionato, la stringa del testo viene interpretata come una espressione regolare Unix. Vedi <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Espressioni regolari su Wikibooks (in inglese)</a>.</p></body></html> + + + + Use regular e&xpressions + Usa &espressioni regolari + + + + Find the next occurrence from the cursor position and in the direction set by "Search backwards" + Trova la prossima occorrenza dalla corrente posizione del cursore nella direzione impostata da "Cerca indietro" + + + + &Find Next + &Trova successivo + + + + F3 + + + + + &Replace + &Sostituisci + + + + Highlight all the occurrences of the text in the page + Evidenzia tutte le occorrenze del testo nella pagina + + + + F&ind All + T&rova tutti + + + + Replace all the occurrences of the text in the page + Sostituisce tutte le occorrenze del testo nella pagina + + + + Replace &All + Sostituisci &Tutti + + + + The searched text was not found + Il testo cercato non è stato trovato + + + + The searched text was not found. + Il testo cercato non è stato trovato. + + + + The searched text was found one time. + Il testo cercato è stato trovato una volta. + + + + The searched text was found %1 times. + Il testo cercato è stato trovato %1 volte. + + + + The searched text was replaced one time. + Il testo cercato è stato sostituito una volta. + + + + The searched text was replaced %1 times. + Il testo cercato è stato sostituito %1 volte. + + + + ForeignKeyEditor + + + &Reset + &Reimposta + + + + Foreign key clauses (ON UPDATE, ON DELETE etc.) + Clausule per chiave esterna (ON UPDATE, ON DELETE etc.) + + + + ImportCsvDialog + + + Import CSV file + Imoprta file CSV + + + + Table na&me + No&me tabella + + + + &Column names in first line + Nomi &colonna nella prima riga + + + + Field &separator + &Separatore di campo + + + + , + , + + + + ; + ; + + + + + Tab + Tab + + + + | + | + + + + Other + Altro + + + + &Quote character + &Carattere citazione + + + + + Other (printable) + Altro (stampabile) + + + + + Other (code) + Altro (codice) + + + + " + " + + + + ' + ' + + + + &Encoding + Codific&a + + + + UTF-8 + UTF-8 + + + + UTF-16 + UTF-16 + + + + ISO-8859-1 + ISO-8859-1 + + + + Trim fields? + Pulizia campi? + + + + Separate tables + Separa tabelle + + + + Advanced + Avanzate + + + + When importing an empty value from the CSV file into an existing table with a default value for this column, that default value is inserted. Activate this option to insert an empty value instead. + Quando importo un campo vuoto dal file CSV dentro una tabella con un valore predefinito per quella colonna, quel valore viene inserito. Attivare quest'opzione per inserire invece un valore vuoto. + + + + Ignore default &values + Ignora valori &predefiniti + + + + Activate this option to stop the import when trying to import an empty value into a NOT NULL column without a default value. + Attivare quest'opzione per fermare l'importazione quando si prova ad importare un valore vuoto in una colonna "NOT NULL" senza valore predefinito. + + + + Fail on missing values + Fallisci su valori mancanti + + + + Disable data type detection + Disabilita rilevamento tipo dati + + + + Disable the automatic data type detection when creating a new table. + Disabilita il riconoscimento automatico della tipologia di dato quando crea una nuova tabella. + + + + When importing into an existing table with a primary key, unique constraints or a unique index there is a chance for a conflict. This option allows you to select a strategy for that case: By default the import is aborted and rolled back but you can also choose to ignore and not import conflicting rows or to replace the existing row in the table. + Quando si importano dati all'interno di una tabella esistente con una chiave primaria, potrebbero esserci conflitti. Questa opzione ti permette di selezionare una strategia per quei casi: Di base l'importazione è annullata e viene fatto un rollback, ma puoi anche scegliere d'ignorare e non importare le righe in conflitto o di rimpiazzare quelle presenti nella tabella. + + + + Abort import + Annulla l'importazione + + + + Ignore row + Ignora la riga + + + + Replace existing row + Rimpiazza la riga esistente + + + + Conflict strategy + Strategia di conflitto + + + + + Deselect All + Deseleziona tutte + + + + Match Similar + Seleziona simili + + + + Select All + Seleziona tutte + + + + There is already a table named '%1' and an import into an existing table is only possible if the number of columns match. + Esiste già una tabella col nome '%1' e l'importazione in una tabella esistente non è possibile se il numero di colonne non corrisponde. + + + + There is already a table named '%1'. Do you want to import the data into it? + Esiste già una tabella col nome '%1'. Vuoi importare i dati al suo interno? + + + + Creating restore point failed: %1 + Creazione del punto di ripristino fallita: %1 + + + + Creating the table failed: %1 + Creazione della tabella fallita: %1 + + + + importing CSV + importo il CSV + + + + Inserting row failed: %1 + Inserimento della riga fallito: %1 + + + + Importing the file '%1' took %2ms. Of this %3ms were spent in the row function. + Importare il file '%1' ha richiesto %2ms. Di questi %3ms sono stati spesi in funzioni di riga. + + + + MainWindow + + + DB Browser for SQLite + DB Browser for SQLite + + + + + Database Structure + This has to be equal to the tab title in all the main tabs + Struttura database + + + + This is the structure of the opened database. +You can drag SQL statements from an object row and drop them into other applications or into another instance of 'DB Browser for SQLite'. + + Questa è la struttura del database aperto. +Puoi trascinare SQL da una riga oggetto e rilasciarli dentro altri applicativi o in altre istanze di àDB Browser for SQLite'. + + + + + + Browse Data + This has to be equal to the tab title in all the main tabs + Naviga nei dati + + + + + Edit Pragmas + This has to be equal to the tab title in all the main tabs + Modifica Pragmas + + + + Warning: this pragma is not readable and this value has been inferred. Writing the pragma might overwrite a redefined LIKE provided by an SQLite extension. + Attenzione: questo pragma non è leggibile e questo valore è stato dedotto. Scrivere i pragma può sovrascrivere un LIKE ridefinito provvisto da un'estensione di SQLite. + + + + + Execute SQL + This has to be equal to the tab title in all the main tabs + Esegui SQL + + + + toolBar1 + + + + + &File + &File + + + + &Import + &Importa + + + + &Export + &Esporta + + + + &Edit + &Modifica + + + + &View + &Visualizza + + + + &Help + &Aiuto + + + + &Tools + &Strumenti + + + + DB Toolbar + Barra degli strumenti del DB + + + + Edit Database &Cell + Modifica &cella + + + + SQL &Log + &Log SQL + + + + Show S&QL submitted by + Mostra l'S&QL inviato da + + + + User + Utente + + + + Application + Applicazione + + + + Error Log + Registro errori + + + + This button clears the contents of the SQL logs + Questo pulsante cancella il contenuto del log SQL + + + + &Clear + &Pulisci + + + + This panel lets you examine a log of all SQL commands issued by the application or by yourself + Questo pannello ti permette di esaminare il log di tutti i comandi SQL inviati dall'applicazione o da te stesso + + + + &Plot + &Grafica + + + + DB Sche&ma + Sche&ma DB + + + + This is the structure of the opened database. +You can drag multiple object names from the Name column and drop them into the SQL editor and you can adjust the properties of the dropped names using the context menu. This would help you in composing SQL statements. +You can drag SQL statements from the Schema column and drop them into the SQL editor or into other applications. + + Questa è la struttura del database aperto. +Puoi trascinare nomi d'oggetto multipli dalla colonna "Nome" e rilasciarli all'interno dell'editor SQL e puoi modificare le proprietà dei nomi rilasciati utilizzando il menù contestuale. Questo può aiutarti nel comporre statement SQL. +Puoi trascinare statement SQL dalla colonna Schema e rilasciarli dentro l'editor SQL o all'interno di altre applicazioni. + + + + + &Remote + &Remoto + + + + + Project Toolbar + Barra degli strumenti di progetto + + + + Extra DB toolbar + Barra degli strumenti extra DB + + + + + + Close the current database file + Chiudi il file di database corrente + + + + &New Database... + &Nuovo Database... + + + + + Create a new database file + Crea un nuovo file di database + + + + This option is used to create a new database file. + Questa opzione è utilizzata per creare un nuovo file di database. + + + + Ctrl+N + + + + + + &Open Database... + &Apri Database... + + + + + + + + Open an existing database file + Apre un file di database esistente + + + + + + This option is used to open an existing database file. + Questa opzione è utilizzata per aprire un file esistente di database. + + + + Ctrl+O + + + + + &Close Database + &Chiudi Database + + + + This button closes the connection to the currently open database file + Questo pulsnate chiude la connessione al file di database attualmente aperto + + + + + Ctrl+W + + + + + &Revert Changes + &Ripristina le modifiche + + + + + Revert database to last saved state + Ripristina il database all'ultimo stato salvato + + + + This option is used to revert the current database file to its last saved state. All changes made since the last save operation are lost. + Questa opzione è utilizzata per ripristinare il file di database al suo ultimo stato salvato. Tutte le modifiche fatte dall'ultima opzione di salvataggio sono perse. + + + + &Write Changes + &Salva le modifiche + + + + + Write changes to the database file + Scrive le modifiche sul file di database + + + + This option is used to save changes to the database file. + Questa opzione è utilizzata per salvare le modifiche sul file di database. + + + + Ctrl+S + + + + + Compact &Database... + &Compatta Database... + + + + Compact the database file, removing space wasted by deleted records + Compatta il file di database, rimuovendo lo spazio sprecato dalle righe eliminate + + + + + Compact the database file, removing space wasted by deleted records. + Compatta il file di database rimuovendo lo spazio sprecato dalle righe eliminate. + + + + E&xit + &Esci + + + + Ctrl+Q + + + + + &Database from SQL file... + &Database dal file SQL... + + + + Import data from an .sql dump text file into a new or existing database. + Importa i dati da un file di testo di dump .sql all'interno di un database nuovo o esistente. + + + + This option lets you import data from an .sql dump text file into a new or existing database. SQL dump files can be created on most database engines, including MySQL and PostgreSQL. + Questa opzione ti permette d'importare i dati da un file di testo di dump .sql all'interno di un database nuovo o esistente. I file di dump SQL possono essere creati dalla maggiorparte dei motori SQL, inclusi MySQL e PostgreSQL. + + + + &Table from CSV file... + &Tabella da file CSV... + + + + Open a wizard that lets you import data from a comma separated text file into a database table. + Apre un wizard che ti permette d'importare dati da un file CSV all'interno di una tabella del database. + + + + Open a wizard that lets you import data from a comma separated text file into a database table. CSV files can be created on most database and spreadsheet applications. + Apre un wizard che ti permette d'importare dati da un file CSV all'interno di una tabella del database. I file CSV possono essere creati dalla maggiorparte delle applicazioni database o foglio di calcolo. + + + + &Database to SQL file... + &Database in file SQL... + + + + Export a database to a .sql dump text file. + Esporta un database in un file di testo di dump .sql. + + + + This option lets you export a database to a .sql dump text file. SQL dump files contain all data necessary to recreate the database on most database engines, including MySQL and PostgreSQL. + Questa opzione ti permette di esportare un database in un file di testo di dump .sql. Il file di dump SQL contiene tutti i dati necessari per ricreare il database sulla maggiorparte di motori di database, inclusi MySQL e PostgreSQL. + + + + &Table(s) as CSV file... + &Tabella(e) come file CSV... + + + + Export a database table as a comma separated text file. + Esporta la tabella del database come un file di testo CSV. + + + + Export a database table as a comma separated text file, ready to be imported into other database or spreadsheet applications. + Esporta la tabella del database come un file di testo CSV, pronto per essere importato in un altro database o foglio di calcolo. + + + + &Create Table... + &Crea tabella... + + + + Open the Create Table wizard, where it is possible to define the name and fields for a new table in the database + Apre un wizard per la creazione di una tabella, dov'è possibile definire il nome e i campi di una nuova tabella del database + + + + &Delete Table... + &Elimina tabella... + + + + + Delete Table + Elimina Tabella + + + + Open the Delete Table wizard, where you can select a database table to be dropped. + Apre un wizard per la cancellazione della tabella, da qui puoi selezionare la tabella del database da eliminare. + + + + &Modify Table... + &Modifica Tabella... + + + + Open the Modify Table wizard, where it is possible to rename an existing table. It is also possible to add or delete fields form a table, as well as modify field names and types. + Apre un wizard per la modifica di una tabella, da qui è possibile rinominare una tabella esistente. Si può anche aggiungere o rimuovere campi da una tabella così come modificarne il nome o il tipo. + + + + Create &Index... + Crea &Indice... + + + + Open the Create Index wizard, where it is possible to define a new index on an existing database table. + Apre un wizard per la crazione di un indice, da qui è possibile definire un nuovo indice s'una tabella di database pre-esistente. + + + + &Preferences... + &Preferenze... + + + + + Open the preferences window. + Apre la finestra delle preferenze. + + + + &DB Toolbar + &Barra degli strumenti + + + + Shows or hides the Database toolbar. + Mostra o nasconde la barra degli strumenti del database. + + + + Ctrl+T + + + + + Open SQL file(s) + Apri file(s) SQL + + + + This button opens files containing SQL statements and loads them in new editor tabs + Questo pulsante apre files contenenti stringhe SQL e li carica in una nuova scheda dell'editor + + + + Execute line + Esegui riga + + + + F1 + + + + + Sa&ve Project + Sal&va Progetto + + + + This button lets you save all the settings associated to the open DB to a DB Browser for SQLite project file + Questo pulsante ti permette di salvare tutte le impostazioni associate al DB aperto nel file di progetto di DB BRowser for SQLite + + + + This button lets you open a DB Browser for SQLite project file + Questo pulsante ti permette di aprire un file di progetto di DB Browser for SQLite + + + + Ctrl+Shift+O + + + + + Find + Trova + + + + Find or replace + Trova o sostituisci + + + + Print text from current SQL editor tab + Stampa testo dalla scheda corrente dell'editor SQL + + + + Print the structure of the opened database + Stampa la struttura del database aperto + + + + Un/comment block of SQL code + De/Commenta il blocco di codice SQL + + + + Un/comment block + De/Commenta il blocco + + + + Comment or uncomment current line or selected block of code + Commenta o decommenta la riga corrente o il blocco selezionato di codice + + + + Comment or uncomment the selected lines or the current line, when there is no selection. All the block is toggled according to the first line. + Commenta o decommenta le righe selezionate o la riga corrente, quando non c'è nessuna selezione. Tutti i blocchi sono modificati in accordo alla prima riga. + + + + Ctrl+/ + + + + + Stop SQL execution + Ferma esecuzione SQL + + + + Stop execution + Ferma esecuzione + + + + Stop the currently running SQL script + Ferma lo script SQL attualmente in esecuzione + + + + &Save Project As... + &Salva Progetto Come... + + + + + + Save the project in a file selected in a dialog + Salva il progetto in un file selezionato tramite una finestra di dialogo + + + + Save A&ll + Salva T&utto + + + + + + Save DB file, project file and opened SQL files + Salva il file DB, file di progetto e tutti i file SQL aperti + + + + Ctrl+Shift+S + + + + + Browse Table + Naviga nei dati + + + + W&hat's This? + Cos'è &questo? + + + + Shift+F1 + + + + + &About + &Informazioni + + + + &Recently opened + &Aperti di recente + + + + Open &tab + Apri &scheda + + + + This button opens a new tab for the SQL editor + Questo pulsante apre una nuova schede dell'editor SQL + + + + &Execute SQL + &Esegui SQL + + + + This button executes the currently selected SQL statements. If no text is selected, all SQL statements are executed. + Questo pulsante esegue gli statement SQL evidenziati. Se nessun testo è selezionato, tutti gli statement SQL vengono eseguiti. + + + + + + Save SQL file + Salva file SQL + + + + &Load Extension... + &Carica Estensioni... + + + + + Execute current line + Esegue la riga corrente + + + + This button executes the SQL statement present in the current editor line + Questo pulsante esegue lo statement SQL presente nella riga corrente dell'editor + + + + Shift+F5 + + + + + Export as CSV file + Esporta come file CSV + + + + Export table as comma separated values file + Esporta la tabella come file CSV + + + + &Wiki + &Wiki + + + + Bug &Report... + Bug &Report... + + + + Feature Re&quest... + Richiesta &Funzionalità... + + + + Web&site + Sito &Web + + + + &Donate on Patreon... + &Dona su Patreon... + + + + + Save the current session to a file + Salva la sessione correte in un file + + + + Open &Project... + Apri &Progetto... + + + + + Load a working session from a file + Carica una sessione di lavoro da file + + + + &Attach Database... + &Collega Database... + + + + + Add another database file to the current database connection + Aggiunge un altro file di database alla connessione corrente + + + + This button lets you add another database file to the current database connection + Questo pulsante ti permette di aggiungere un altro file alla connessione corrente + + + + &Set Encryption... + &Imposta cifratura... + + + + + Save SQL file as + Salva file SQL come + + + + This button saves the content of the current SQL editor tab to a file + Questo pulsante salva il contenuto della scheda di editor SQL in un file + + + + &Browse Table + &Naviga Tabella + + + + Copy Create statement + Copia statement CREATE + + + + Copy the CREATE statement of the item to the clipboard + Copia lo statement CREATE negli appunti + + + + SQLCipher &FAQ + SLQCipher &FAQ + + + + Opens the SQLCipher FAQ in a browser window + Apre le SQLCipher FAQ in una finestra del browser + + + + Table(&s) to JSON... + Tabella(&e) in JSON... + + + + Export one or more table(s) to a JSON file + Esporta una o più tabelle in un file JSON + + + + Open Data&base Read Only... + Apri un Data&base in Sola Lettura... + + + + Open an existing database file in read only mode + Apre un file databse esistente in modalità sola lettura + + + + Save results + Salva risultati + + + + Save the results view + Salva i risultati della vista + + + + This button lets you save the results of the last executed query + Questo pulsante ti permette di salvare i risultati dell'ultima query eseguita + + + + + Find text in SQL editor + Trova testo nell'editor SQL + + + + This button opens the search bar of the editor + Questo pulsante apre la barra di ricerca dell'editor + + + + Ctrl+F + + + + + + Find or replace text in SQL editor + Trova e/o sostituisci testo nell'editor SQL + + + + This button opens the find/replace dialog for the current editor tab + Questo pulsante apre la finestra di ricerca/sostituzione testo per la scheda corrente dell'editor + + + + Ctrl+H + + + + + Export to &CSV + Esporta in &CSV + + + + Save as &view + Salva come &vista + + + + Save as view + Salva come vista + + + + Shows or hides the Project toolbar. + Mostra o nasconde la barra degli strumenti di progetto. + + + + Extra DB Toolbar + Barra degli strumenti DB estesa + + + + New In-&Memory Database + Nuovo Database In &Memoria + + + + Drag && Drop Qualified Names + Trascina && Rilascia Nomi Qualificati + + + + + Use qualified names (e.g. "Table"."Field") when dragging the objects and dropping them into the editor + Usa nomi qualificati (es. "Table"."Campo") quando trascini gli oggetti e li rilasci all'interno dell'editor + + + + Drag && Drop Enquoted Names + Trascina && Rilascia Nomi Quotati + + + + + Use escaped identifiers (e.g. "Table1") when dragging the objects and dropping them into the editor + Usa gl'identificatori di citazione (es. "Tabella1") quando trascini e rilasci gli oggetti nell'editor + + + + &Integrity Check + Controllo &Integrità + + + + Runs the integrity_check pragma over the opened database and returns the results in the Execute SQL tab. This pragma does an integrity check of the entire database. + Avvia il controllo integrità (integrity check pragma) sul database aperto e riporta il risultato nella scheda "Esegui SQL". Questa operazione esegue un controllo d'integrità sull'intero database. + + + + &Foreign-Key Check + Controlla Chiave &Esterna + + + + Runs the foreign_key_check pragma over the opened database and returns the results in the Execute SQL tab + Avvia il controllo chiavi esterne (foreign_key_check pragma) nel database aperto e riporta il risultato nella scheda "Esegui SQL" + + + + &Quick Integrity Check + Controllo Integrità &Veloce + + + + Run a quick integrity check over the open DB + Avvia un controllo veloce d'integrità sul DB aperto + + + + Runs the quick_check pragma over the opened database and returns the results in the Execute SQL tab. This command does most of the checking of PRAGMA integrity_check but runs much faster. + Avvia un controllo veloce d'integrità (quick_check pragma) sul database e riporta il risultato nella scheda "Esegui SQL". Quest comando esegue la maggiorparte dei controlli d'integrità del controllo completo, ma in modo molto più veloce. + + + + &Optimize + &Ottimizza + + + + Attempt to optimize the database + Prova ad ottimizzare il database + + + + Runs the optimize pragma over the opened database. This pragma might perform optimizations that will improve the performance of future queries. + Avvia l'ottimizzazione del database aperto. Questa operazione potrebbe eseguire delle ottimizzazione che miglioreranno le performance delle query future. + + + + + Print + Stampa + + + + Open a dialog for printing the text in the current SQL editor tab + Apre una finetra per la stampa del testo nella scheda dell'editor SQL + + + + Open a dialog for printing the structure of the opened database + Apre una finestra per la stampa della struttura del database aperto + + + + + Ctrl+P + + + + + Ctrl+F4 + + + + + Execute all/selected SQL + Esegui tutti gli SQL o quelli selezionati + + + + Ctrl+Return + + + + + Ctrl+L + + + + + Ctrl+D + + + + + Ctrl+I + + + + + Ctrl+E + + + + + Reset Window Layout + Ripristina disposizione finestra + + + + Alt+0 + + + + + The database is currenctly busy. + Il database è occupato. + + + + Click here to interrupt the currently running query. + Clicca qui per interrompere la query in esecuzione. + + + + Encrypted + Criptato + + + + Database is encrypted using SQLCipher + Il database è stato criptato utilizzando SQLCipher + + + + Read only + Sola lettura + + + + Database file is read only. Editing the database is disabled. + Il file di database è in sola lettura. Le modifiche al database sono disabilitate. + + + + Database encoding + Codifica Database + + + + + Choose a database file + Seleziona un file di database + + + + Could not open database file. +Reason: %1 + Impossibile aprire il file di database. +Motivo: %1 + + + + + + Choose a filename to save under + Seleziona un nome file per il salvataggio + + + + In-Memory database + Database In-Memoria + + + + Are you sure you want to delete the table '%1'? +All data associated with the table will be lost. + Sei sicuro di voler eliminare la tabella '%1'? +Tutti i dati associati alla tabella andranno perduti. + + + + Are you sure you want to delete the view '%1'? + Sei sicuro di voler eliminare la vista '%1'? + + + + Are you sure you want to delete the trigger '%1'? + Sei sicuro di voler eliminare il trigger '%1'? + + + + Are you sure you want to delete the index '%1'? + Sei sicuro di voler eliminare l'indice '%1'? + + + + Error: could not delete the table. + Errore: impssibile eliminare la tabella. + + + + Error: could not delete the view. + Errore: impossibile eliminare la vista. + + + + Error: could not delete the trigger. + Errore: impossibile eliminare il trigger. + + + + Error: could not delete the index. + Errore: impossibile eliminare l'indice. + + + + Message from database engine: +%1 + Messaggio dal database: +%1 + + + + Editing the table requires to save all pending changes now. +Are you sure you want to save the database? + Per modificare la tabella bisogna salvare tutte le modifiche pendenti. +Sei sicuro di voler salvare il database? + + + + Error checking foreign keys after table modification. The changes will be reverted. + Errore nel controllo delle chiavi esterne dopo le modifiche alla tabella. Le modifiche saranno eliminate. + + + + This table did not pass a foreign-key check.<br/>You should run 'Tools | Foreign-Key Check' and fix the reported issues. + Questa tabella non ha passato il controllo sulle chiavi esterne.<br/>Dovresti avviare 'Strumenti | Controllo Chiavi Esterne' e correggere i problemi riportati. + + + + Edit View %1 + Modifica vista %1 + + + + Edit Trigger %1 + Modifica Trigger %1 + + + + You are already executing SQL statements. Do you want to stop them in order to execute the current statements instead? Note that this might leave the database in an inconsistent state. + Sto eseguendo degli SQL. Vuoi fermarli per poter eseguire invece l'SQL corrente? Nota che questo potrebbe lasciare il database in uno stato inconsistente. + + + + -- EXECUTING SELECTION IN '%1' +-- + -- ESEGUO LA SELEZIONE IN '%1' +-- + + + + -- EXECUTING LINE IN '%1' +-- + -- ESEGUO LINEA IN '%1' +-- + + + + -- EXECUTING ALL IN '%1' +-- + -- ESEGUO TUTTO IN '%1' +-- + + + + + At line %1: + Alla riga %1: + + + + Result: %1 + Risultato: %1 + + + + Result: %2 + Risultato: %2 + + + + Opened '%1' in read-only mode from recent file list + Aperto '%1' in modalità solo lettura dalla lista dei file recenti + + + + Opened '%1' from recent file list + Aperto '%1' dalla lista di file recenti + + + + Project saved to file '%1' + Progetto salvato sul file '%1' + + + + This action will open a new SQL tab with the following statements for you to edit and run: + Questa azione aprirà una nuova scheda SQL con la seguente stringa SQL per permetterti di modificarla ed eseguirla + + + + Rename Tab + Rinomina il Tab + + + + Duplicate Tab + Duplica il Tab + + + + Close Tab + Chiudi il Tab + + + + Opening '%1'... + Apro '%1'... + + + + There was an error opening '%1'... + Errore durante l'apertura di '%1'... + + + + Value is not a valid URL or filename: %1 + Il valore non è un URL valida o nome file: %1 + + + + Setting PRAGMA values or vacuuming will commit your current transaction. +Are you sure? + Impostare i valori PRAGMA o pulizia chiuderanno la transazione corrente. +Sei sicuro? + + + + Execution finished with errors. + Esecuzione completata con errori. + + + + Execution finished without errors. + Esecuzione completata senza errori. + + + + %1 rows returned in %2ms + %1 righe ritornate in %2ms + + + + Choose text files + Seleziona i file di testo + + + + Error while saving the database file. This means that not all changes to the database were saved. You need to resolve the following error first. + +%1 + Errore nel salvataggio del database. Questo significa che non tutte le modifiche del database sono state salvate. Avrai bisogno di risolvere prima il seguente errore. + +%1 + + + + Are you sure you want to undo all changes made to the database file '%1' since the last save? + Sei sicuro di voler annullare tutte le modifiche effettuate al database '%1' dall'ultimo salvataggio? + + + + Choose a file to import + Seleziona un file da importare + + + + &%1 %2%3 + &%1 %2%3 + + + + (read only) + (sola lettura) + + + + Open Database or Project + Apri Database o Progetto + + + + Attach Database... + Collega Database... + + + + Import CSV file(s)... + Importa file(s) CSV... + + + + Select the action to apply to the dropped file(s). <br/>Note: only 'Import' will process more than one file. + + Seleziona l'azione da applicare al(ai) file(s) scartato(i). <br/>Nota: solo 'Importa' processa più di un file. + + + + + + Do you want to save the changes made to SQL tabs in the project file '%1'? + Vuoi salvare le modifiche effettuate ai tabs SQL nel file di progetto '%1'? + + + + Text files(*.sql *.txt);;All files(*) + File di testo(*.sql *.txt);;Tutti i files(*) + + + + Do you want to create a new database file to hold the imported data? +If you answer no we will attempt to import the data in the SQL file to the current database. + Vuoi creare un nuovo file di database per mantenere i dati importati? +Se rispondi di no proveremo ad importare i dati del file SQL all'interno del database corrente. + + + + Window Layout + Disposizione finestra + + + + Simplify Window Layout + Semplifica disposizione finestra + + + + Shift+Alt+0 + + + + + Dock Windows at Bottom + Blocca finestre in basso + + + + Dock Windows at Left Side + Blocca finestre al lato sinistro + + + + Dock Windows at Top + Blocca finestre in cima + + + + You are still executing SQL statements. Closing the database now will stop their execution, possibly leaving the database in an inconsistent state. Are you sure you want to close the database? + Sto ancora eseguendo comandi SQL. Se chiudi il database ora non verrano eseguiti, il database potrebbe rimanere in uno stato inconsistente. Sei sicuro di voler chiudere il database? + + + + Do you want to save the changes made to the project file '%1'? + Vuoi salvare le modifiche fatte al file di progetto '%1'? + + + + File %1 already exists. Please choose a different name. + Il file %1 esiste già. Si prega di scegliere un nome differente. + + + + Error importing data: %1 + Errore nell'importazione: %1 + + + + Import completed. Some foreign key constraints are violated. Please fix them before saving. + Importaizone completata. Alcuni vincoli per le chiavi esterne non sono rispettati. Si prega di correggerli prima di salvare. + + + + Import completed. + Import completato. + + + + Delete View + Elimina Vista + + + + Modify View + Modifica Vista + + + + Delete Trigger + Elimina Trigger + + + + Modify Trigger + Modifica Trigger + + + + Delete Index + Elimina Indice + + + + Modify Index + Modifica Indice + + + + Modify Table + Modifica Tabella + + + + Setting PRAGMA values will commit your current transaction. +Are you sure? + Impostare i valori di PRAGMA chiuderà la transaione corrente. +Sei sicuro? + + + + Do you want to save the changes made to SQL tabs in a new project file? + Vuoi salvare le modifiche effettuate alle schede SQL in un nuovo file di progetto? + + + + Do you want to save the changes made to the SQL file %1? + Vuoi salvare le modifiche fatte al file SQL %1? + + + + The statements in this tab are still executing. Closing the tab will stop the execution. This might leave the database in an inconsistent state. Are you sure you want to close the tab? + Gli SQL in questa scheda sono ancora in esecuzione. Chiudere la scheda bloccherà l'esecuzione. Questo potrebbe lasciare il database in uno stato inconsistente. Sei sicuro di voler chiudere la scheda? + + + + Select SQL file to open + Selezionare il file SQL da aprire + + + + Select file name + Seleziona il nome del file + + + + Select extension file + Seleziona l'estensione del file + + + + Extension successfully loaded. + Estensione caricata con successo. + + + + Error loading extension: %1 + Errore nel caricamento dell'estensione: %1 + + + + Could not find resource file: %1 + Non posso aprire il file di risorse: %1 + + + + + Don't show again + Non mostrare di nuovo + + + + New version available. + Nuova versione disponibile. + + + + A new DB Browser for SQLite version is available (%1.%2.%3).<br/><br/>Please download at <a href='%4'>%4</a>. + Una nuova versione di DB Browser for SQLite è disponibile (%1.%2.%3).<br/><br/>Si prega di scaricarla da <a href='%4'>%4</a>. + + + + Choose a project file to open + Seleziona un file di progetto da aprire + + + + DB Browser for SQLite project file (*.sqbpro) + File di progetto DB Browser for SQLite (*.sqbpro) + + + + This project file is using an old file format because it was created using DB Browser for SQLite version 3.10 or lower. Loading this file format is still fully supported but we advice you to convert all your project files to the new file format because support for older formats might be dropped at some point in the future. You can convert your files by simply opening and re-saving them. + Questo file di progetto utilizza un vecchio formato poiché è stato creato con la versione 3.10 o antecedente. Il caricamento di questo formato è ancora supportato, ma ti suggeriamo di convertire tutti i tuoi files di progetto al nuovo formato poiché il supporto ai formati precedenti potrebbe essere eliminato in futuro. Puoi convertire i tuoi file semplicemente aprendoli e salvandoli nuovamente. + + + + Could not open project file for writing. +Reason: %1 + Non posso scrivere nel file di progetto. +Motivo: %1 + + + + Collation needed! Proceed? + Necessario confronto! Procedo? + + + + A table in this database requires a special collation function '%1' that this application can't provide without further knowledge. +If you choose to proceed, be aware bad things can happen to your database. +Create a backup! + Una tabella di questo database richiede una funzione di confronto speciale '%1' che questa applicazione non può fornire senza ulteriori informazioni. +Se scegli di proseguire, sappi che potrebbero generarsi problemi nel tuo database. +Crea un backup! + + + + creating collation + creo confronto + + + + Set a new name for the SQL tab. Use the '&&' character to allow using the following character as a keyboard shortcut. + Imposta un nuovo nome per la scheda SQL. Usa il carattere '&&' per utilizzare il carattere succesivo come scorciatoia da tastiera. + + + + Please specify the view name + Si prega di specificare il nome della vista + + + + There is already an object with that name. Please choose a different name. + Esiste già un oggetto con quel nome. Si prega di scegliere un nome diverso. + + + + View successfully created. + Vista creata con successo. + + + + Error creating view: %1 + Errore nella creazione della vista: %1 + + + + This action will open a new SQL tab for running: + Questa azione aprirà una nuova scheda SQL per eseguire: + + + + Press Help for opening the corresponding SQLite reference page. + Premi Aiuto per aprire la pagina di riferimento SQLite corrispondente. + + + + Busy (%1) + Occupato (%1) + + + + NullLineEdit + + + Set to NULL + Imposta a NULL + + + + Alt+Del + + + + + PlotDock + + + Plot + Grafico + + + + <html><head/><body><p>This pane shows the list of columns of the currently browsed table or the just executed query. You can select the columns that you want to be used as X or Y axis for the plot pane below. The table shows detected axis type that will affect the resulting plot. For the Y axis you can only select numeric columns, but for the X axis you will be able to select:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Date/Time</span>: strings with format &quot;yyyy-MM-dd hh:mm:ss&quot; or &quot;yyyy-MM-ddThh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Date</span>: strings with format &quot;yyyy-MM-dd&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Time</span>: strings with format &quot;hh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Label</span>: other string formats. Selecting this column as X axis will produce a Bars plot with the column values as labels for the bars</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Numeric</span>: integer or real values</li></ul><p>Double-clicking the Y cells you can change the used color for that graph.</p></body></html> + <html><head/><body><p>Questo pannello mostra la lista delle colonne della tabella corrente o della query eseguita. Puoi selezionare la colonna che vuoi utilizzare come asse X o Y per il grafico sottostante. La tabella mostra i tipi d'asse rilevati. Per l'asse Y puoi selezionare solo colonne numeriche, ma per l'asse X potrai selezionare:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Data/Ora</span>: stringhe col formato &quot;aaaa-MM-gg hh:mm:ss&quot; o &quot;aaaa-MM-ggThh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Data</span>: stringhe col formato &quot;aaaa-MM-dd&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Orario</span>: stringhe col formato &quot;hh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Etichette</span>: altri formati di stringa. Selezionando queste colonne come X verrà visualizzato un grafico a barre</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Numeri</span>: interi or valori reali</li></ul><p>Cliccando due volte sulle celle Y potrai cambiare il colore utilizzato per il grafico.</p></body></html> + + + + Columns + Colonne + + + + X + + + + + Y1 + Y1 + + + + Y2 + Y2 + + + + Axis Type + Tipo asse + + + + Here is a plot drawn when you select the x and y values above. + +Click on points to select them in the plot and in the table. Ctrl+Click for selecting a range of points. + +Use mouse-wheel for zooming and mouse drag for changing the axis range. + +Select the axes or axes labels to drag and zoom only in that orientation. + Qui compare il grafico quando vengono selezionati i valori x e y. + +Clicca s'un punto per selezionarl sul grafico e nella tabella. Ctrl+Click per selezionare un intervallo di punti. + +Usa la rotella del mouse per ingrandire e trascina col mouse per cambiare l'intervallo degli assi. + +Seleziona le etichette dell'asse o degli assi per trascinare o ingrandire solo in quella direzione. + + + + Line type: + Tipo linea: + + + + + None + Nessuna + + + + Line + Linea + + + + StepLeft + Salto sinistro + + + + StepRight + Salto destro + + + + StepCenter + Salto centrato + + + + Impulse + Impulso + + + + Point shape: + Tipo punta: + + + + Cross + Croce + + + + Plus + Più + + + + Circle + Cerchio + + + + Disc + Disco + + + + Square + Quadrato + + + + Diamond + Rombo + + + + Star + Stella + + + + Triangle + Triangolo + + + + TriangleInverted + Triangolo inverso + + + + CrossSquare + Croce quadrato + + + + PlusSquare + Più quadrato + + + + CrossCircle + Croce cerchio + + + + PlusCircle + Più cerchio + + + + Peace + Pace + + + + <html><head/><body><p>Save current plot...</p><p>File format chosen by extension (png, jpg, pdf, bmp)</p></body></html> + <html><head/><body><p>Salva il grafico corrente...</p><p>Formato file selezionato dall'estensione (png, jpg, pdf, bmp)</p></body></html> + + + + Save current plot... + Salva il grafico corrente... + + + + + Load all data and redraw plot + Carica tutti i dati e ridisegna grafico + + + + Copy + Copia + + + + Print... + Stampa... + + + + Show legend + Mostra legenda + + + + Stacked bars + Barre impilate + + + + Date/Time + Data/Ora + + + + Date + Data + + + + Time + Ora + + + + + Numeric + Numerico + + + + Label + Etichetta + + + + Invalid + Invalido + + + + + + Row # + Riga # + + + + Load all data and redraw plot. +Warning: not all data has been fetched from the table yet due to the partial fetch mechanism. + Carica tutti i dati e ridisegna grafico. +Attenzione: non sono ancora stati recuperati tutti i dati dalla tabella a causa del meccanismo di recupero. + + + + Choose an axis color + Scegli il colore per l'asse + + + + Choose a filename to save under + Scegli il nome di salvataggio + + + + PNG(*.png);;JPG(*.jpg);;PDF(*.pdf);;BMP(*.bmp);;All Files(*) + + + + + There are curves in this plot and the selected line style can only be applied to graphs sorted by X. Either sort the table or query by X to remove curves or select one of the styles supported by curves: None or Line. + Ci sono delle curve in questo grafico e lo stile di line selezionato può essere applicato solo a grafici ordinati per X. Riordina la tabella o seleziona per X per rimuovere le curve o seleziona uno degli stili supportati dalle curve: Nessuno o Linea. + + + + Loading all remaining data for this table took %1ms. + Caricare tutti i dati restanti per questa tabella ha richiesto %1ms. + + + + PreferencesDialog + + + Preferences + Preferenze + + + + &General + &Generale + + + + Default &location + &Posizione di default + + + + Remember last location + Ricorda l'ultima posizione + + + + Always use this location + Usa sempre questa posizione + + + + Remember last location for session only + Ricorda l'ultima posizione solo per questa sessione + + + + + + ... + + + + + Lan&guage + Lin&gua + + + + Toolbar style + Stile barra degli strumenti + + + + + + + + Only display the icon + Mostra solo le icone + + + + + + + + Only display the text + Mostra solo il testo + + + + + + + + The text appears beside the icon + Mostra il testo a lato delle icone + + + + + + + + The text appears under the icon + Mostra il testo sotto le icone + + + + + + + + Follow the style + Segui lo stile + + + + Show remote options + Mostra opzioni remote + + + + + + + + + + + + enabled + abilitato + + + + Automatic &updates + Aggiornamenti a&utomatici + + + + DB file extensions + Estensioni file DB + + + + Manage + Gestisci + + + + Main Window + Finestra principale + + + + Database Structure + Struttura database + + + + Browse Data + Naviga nei dati + + + + Execute SQL + Esegui SQL + + + + Edit Database Cell + Modifica Cella Database + + + + When this value is changed, all the other color preferences are also set to matching colors. + Quando questo valore viene modificato, tutte le altre preferenze di colore vengono impostate al colore corrispondente. + + + + Follow the desktop style + Segui lo stile del desktop + + + + Dark style + Stile scuro + + + + Application style + Stile Applicazione + + + + This sets the font size for all UI elements which do not have their own font size option. + Questo imposta la dimensione del testo per tutti gli elementi dell'interfaccia che non hanno una loro opzione specifica. + + + + Font size + Dimensione testo + + + + &Database + + + + + Database &encoding + &Codifica Database + + + + Open databases with foreign keys enabled. + Apri database contenenti chiavi esterne. + + + + &Foreign keys + Chiavi &Esterne + + + + Remove line breaks in schema &view + Rimuovi a-capo nella &vista dello schema + + + + When enabled, the line breaks in the Schema column of the DB Structure tab, dock and printed output are removed. + Quando abilitato, vengono rimossi gli a-capo nella colonna dello Schema del tab "Struttura DB", dock e stampa. + + + + Prefetch block si&ze + &Dimensione blocco di prefetch + + + + SQ&L to execute after opening database + SQ&L da eseguire dopo aver aperto il database + + + + Default field type + Tipo di campo di default + + + + Database structure font size + Dimensione testo per la struttura del database + + + + Data &Browser + + + + + Font + + + + + &Font + + + + + Font si&ze + Dimensione te&sto + + + + Content + Contenuto + + + + Symbol limit in cell + Limite simboli nella cella + + + + This is the maximum number of items allowed for some computationally expensive functionalities to be enabled: +Maximum number of rows in a table for enabling the value completion based on current values in the column. +Maximum number of indexes in a selection for calculating sum and average. +Can be set to 0 for disabling the functionalities. + Questo è il numero massimo di oggetti permessi per l'esecuzione di alcune funzioni computazionalmente intense: +Massimo numero di righe in una tabella per abilitare l'autocompletamento basato sui valori correnti di una colonna. +Massimo numero di indici in una selezione per calcolare somma e media. +Può essere impostato a 0 per disabilitare le funzionalità. + + + + This is the maximum number of rows in a table for enabling the value completion based on current values in the column. +Can be set to 0 for disabling completion. + Questo è il numero massimo di righe in una tabella per abilitare il completamento dei valori basandosi su quelli attualmente nella colonna. +Può essere impostato a 0 per disabilitare il completamento. + + + + Field display + Visualizzazione campi + + + + Displayed &text + &Testo visualizzato + + + + Binary + Binario + + + + NULL + + + + + Regular + Normale + + + + + + + + + Click to set this color + Clicca per impostare questo colore + + + + Text color + Colore del testo + + + + Background color + Colore dello sfondo + + + + Preview only (N/A) + Solo anteprima (N/A) + + + + Filters + Filtri + + + + Escape character + Carattere di escape + + + + Delay time (&ms) + Ritardo (&ms) + + + + Set the waiting time before a new filter value is applied. Can be set to 0 for disabling waiting. + Imposta il tempo d'attesa prima che un nuovo filtro venga applicato. Può essere impostato a 0 per disabilitare l'attesa. + + + + &SQL + &SQL + + + + Settings name + Nome impostazioni + + + + Context + Contesto + + + + Colour + Colore + + + + Bold + Grassetto + + + + Italic + Corsivo + + + + Underline + Sottolinea + + + + Keyword + Parola chiave + + + + Function + Funzione + + + + Table + Tabella + + + + Comment + Commento + + + + Identifier + Identificatore + + + + String + Stringa + + + + Current line + Linea corrente + + + + Background + Sfondo + + + + Foreground + Primo piano + + + + SQL editor &font + &Font editor SQL + + + + SQL &editor font size + Dimensione font &editor SQL + + + + SQL &results font size + Dimensione font &risultati SQL + + + + Tab size + Dimensione tabulazione + + + + &Wrap lines + &A-capo automatico + + + + Never + Mai + + + + At word boundaries + Al limite della parola + + + + At character boundaries + Al limite del carattere + + + + At whitespace boundaries + Al limite del carattere vuoto + + + + &Quotes for identifiers + Identificatori per &citazioni + + + + Choose the quoting mechanism used by the application for identifiers in SQL code. + Scegli il tipo meccanismo di citazione utilizzato per il codice SQL. + + + + "Double quotes" - Standard SQL (recommended) + "Doppie virgolette" - Standard SQL (raccomandato) + + + + `Grave accents` - Traditional MySQL quotes + `Apice inverso` - Citazione tradizionale MySQL + + + + [Square brackets] - Traditional MS SQL Server quotes + [Parentesi quadre] - Citazione tradizionale MS SQL Server + + + + Code co&mpletion + Auto co&mpletamento + + + + Keywords in &UPPER CASE + Parole chiave &MAIUSCOLE + + + + When set, the SQL keywords are completed in UPPER CASE letters. + Quando impostato, le parole chiave vengono completate in MAIUSCOLO. + + + + Error indicators + Indicatori d'errore + + + + When set, the SQL code lines that caused errors during the last execution are highlighted and the results frame indicates the error in the background + Quando impostato, le righe di codice SQL che causano errori durante l'ultima esecuzione sono evidenziate e il campo del risultato indica l'errore sullo sfondo + + + + Hori&zontal tiling + Affianca &orizzontalmente + + + + If enabled the SQL code editor and the result table view are shown side by side instead of one over the other. + Se abilitato l'editor di codice SQL e la tabella del risultato sono mostrate una accanto all'altra anzichè una sopra l'altra. + + + + Close button on tabs + Pulsante di chiusura sulle schede + + + + If enabled, SQL editor tabs will have a close button. In any case, you can use the contextual menu or the keyboard shortcut to close them. + Se abilitato, le schede dell'editor SQL avranno un pulsante di chiusura. In ogni caso, puoi utilizzare il menù contestuale o le scorciatoie da tastiera per chiuderle. + + + + &Extensions + &Estensioni + + + + Select extensions to load for every database: + Seleziona le estensioni da caricare per ogni database: + + + + Add extension + Aggiungi estensione + + + + Remove extension + Rimuovi estensione + + + + <html><head/><body><p>While supporting the REGEXP operator SQLite doesn't implement any regular expression<br/>algorithm but calls back the running application. DB Browser for SQLite implements this<br/>algorithm for you to let you use REGEXP out of the box. However, as there are multiple possible<br/>implementations of this and you might want to use another one, you're free to disable the<br/>application's implementation and load your own by using an extension. Requires restart of the application.</p></body></html> + <html><head/><body><p>Anche se SQLite supporta l'operatore REGEXP non implementa alcun algoritmo<br/>di espressione regolare, ma richiama l'applicativo in esecuzione. DB Browser for SQLite implementa questo<br/>algoritmo per te per permetterti di usare le REGEXP immediatamente. Ci sono però multiple implementazioni<br/>possibili e potresti voler utilizzare una o l'altra, sei libero di disabilitare l'implementazione<br/>dell'applicativo e caricare la tua utilizzando un'estensione. Richiede il riavvio dell'applicativo.</p></body></html> + + + + Disable Regular Expression extension + Disabilita l'estensione per l'Espressione regolare + + + + <html><head/><body><p>SQLite provides an SQL function for loading extensions from a shared library file. Activate this if you want to use the <span style=" font-style:italic;">load_extension()</span> function from SQL code.</p><p>For security reasons, extension loading is turned off by default and must be enabled through this setting. You can always load extensions through the GUI, even though this option is disabled.</p></body></html> + <html><head/><body><p>SQLite fornisce una funzione SQL per il cariamento di estensioni da una libreria dinamica condivisa. Attiva questa opzione se vuoi utilizzare la funzione<span style=" font-style:italic;">load_extension()</span> dal codice SQL.</p><p>Per motivi di sicurezza, il caricamento delle estensioni è disabilitato di default e dev'essere abilitato tramite questa impostazione. Puoi sempre caricare le estensioni attraverso l'interfaccia grafica, anche se quest'opzione è disabilitata.</p></body></html> + + + + Allow loading extensions from SQL code + Permetti il caricamento di estensioni dal codice SQL + + + + Remote + Remoto + + + + CA certificates + Certificati CA + + + + Proxy + Proxy + + + + Configure + Configura + + + + + Subject CN + Soggetto CN + + + + Common Name + Nome comune + + + + Subject O + Soggetto O + + + + Organization + Organizzazione + + + + + Valid from + Valido dal + + + + + Valid to + Valido al + + + + + Serial number + Numero di serie + + + + Your certificates + Tuo certificato + + + + Threshold for completion and calculation on selection + Soglia per l'autocompletamento e il calcolo sulla selezione + + + + Show images in cell + Mostra immagini nella cella + + + + Enable this option to show a preview of BLOBs containing image data in the cells. This can affect the performance of the data browser, however. + Abilita questa opzione per mostrare un'anteprima dei BLOBs contenti dati immagine nella cella. Questo potrebbe impattare sulle performance. + + + + File + File + + + + Subject Common Name + Nome comune del soggetto + + + + Issuer CN + CN emittente + + + + Issuer Common Name + Nome comune emittente + + + + Clone databases into + Clona il database in + + + + + Choose a directory + Seleziona una cartella + + + + The language will change after you restart the application. + La lingua verrà modificata dopo il riavvio dell'applicativo. + + + + Select extension file + Seleziona il file d'estensione + + + + Extensions(*.so *.dylib *.dll);;All files(*) + Estensioni(*.so *.dylib *.dll);;Tutti i files(*) + + + + Import certificate file + Importa il file di certificato + + + + No certificates found in this file. + Nessun certificato trovato in questo file. + + + + Are you sure you want do remove this certificate? All certificate data will be deleted from the application settings! + Sei sicuro di voler rimuovere questo certificato? Tutti i dati del certificato saranno eliminati dalle impostazioni dell'applicativo! + + + + Are you sure you want to clear all the saved settings? +All your preferences will be lost and default values will be used. + Sei sicuro di voler pulire tutte le impostazioni salvate? +Tutte le tue preferenze andranno perse e verranno utilizzati i valori predefiniti. + + + + ProxyDialog + + + Proxy Configuration + Configurazione proxy + + + + Pro&xy Type + Tipo Pro&xy + + + + Host Na&me + No&me host + + + + Port + Porta + + + + Authentication Re&quired + Autenticazione ri&chiesta + + + + &User Name + Nome &Utente + + + + Password + Password + + + + None + Nessuna + + + + System settings + Impostazioni di sistema + + + + HTTP + HTTP + + + + Socks v5 + Socks v5 + + + + QObject + + + All files (*) + Tutti i files (*) + + + + Error importing data + Errore nell'import dei dati + + + + from record number %1 + dalla riga numero %1 + + + + . +%1 + . +%1 + + + + Importing CSV file... + Importa file CSV... + + + + Cancel + Annulla + + + + SQLite database files (*.db *.sqlite *.sqlite3 *.db3) + File database SQLite (*.db *.sqlite *.sqlite3 *.db3) + + + + SQLite Database Files (*.db *.sqlite *.sqlite3 *.db3) + SQLite Database Files (*.db *.sqlite *.sqlite3 *.db3) + + + + DB Browser for SQLite Project Files (*.sqbpro) + File di progetto DB Browser for SQLite (*.sqbpro) + + + + SQL Files (*.sql) + SQL Files (*.sql) + + + + All Files (*) + Tutti i files (*) + + + + Text Files (*.txt) + File testuali (*.txt) + + + + Comma-Separated Values Files (*.csv) + File con valori separati da virgola (*.csv) + + + + Tab-Separated Values Files (*.tsv) + Files con valori separati da tabulazione (*.tsv) + + + + Delimiter-Separated Values Files (*.dsv) + Files con valori separati da delimitatore (*.dsv) + + + + Concordance DAT files (*.dat) + File DAT Concordance (*.dat) + + + + JSON Files (*.json *.js) + JSON Files (*.json *.js) + + + + XML Files (*.xml) + XML Files (*.xml) + + + + Binary Files (*.bin *.dat) + Files binari (*.bin *.dat) + + + + SVG Files (*.svg) + SVG Files (*.svg) + + + + Hex Dump Files (*.dat *.bin) + Hex Dump Files (*.dat *.bin) + + + + Extensions (*.so *.dylib *.dll) + Estensioni (*.so *.dylib *.dll) + + + + Left + Sinistra + + + + Right + Destra + + + + Center + Centrato + + + + Justify + Giustificato + + + + RemoteCommitsModel + + + Commit ID + ID Invio + + + + Message + Messaggio + + + + Date + Data + + + + Author + Autore + + + + Size + Dimensione + + + + Authored and committed by %1 + Creato e inviato da %1 + + + + Authored by %1, committed by %2 + Creato da %1, inviato da %2 + + + + RemoteDatabase + + + Error opening local databases list. +%1 + Errore nell'apertura della lista di database locale. +%1 + + + + Error creating local databases list. +%1 + Errore nella creazione della lista di database locale. +%1 + + + + RemoteDock + + + Remote + Remoto + + + + Identity + Identità + + + + Push currently opened database to server + Invia il database corrente al server + + + + DBHub.io + DBHub.io + + + + <html><head/><body><p>In this pane, remote databases from dbhub.io website can be added to DB Browser for SQLite. First you need an identity:</p><ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Login to the dbhub.io website (use your GitHub credentials or whatever you want)</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Click the button to &quot;Generate client certificate&quot; (that's your identity). That'll give you a certificate file (save it to your local disk).</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Go to the Remote tab in DB Browser for SQLite Preferences. Click the button to add a new certificate to DB Browser for SQLite and choose the just downloaded certificate file.</li></ol><p>Now the Remote panel shows your identity and you can add remote databases.</p></body></html> + <html><head/><body><p>In questo pannello, possono essere aggiunti a DB Browser for SQLite i database dal sito web dbhub.io. Prima hai bisogno di un'identità:</p><ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Accedi al sito web dbhub.io (usa le tue credenziali GitHub o qualsiasi cosa tu voglia)</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Clicca il pulsante per &quot;Generare un certificato cliente&quot; (la tua identità). Questo di darà un file certificato (da salvare sul to disco locale).</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Vai alla scheda Remoto nelle preferenze di DB Browser for SQLite. Clicca il pulsante per aggiungere un nuovo certificato a DB Browser for SQLite e scegli il file di certificato appena scaricato.</li></ol><p>Ora il pannello Remoto ti mostrerà la tua identità e potrai aggiungere database remoti.</p></body></html> + + + + Local + Locale + + + + Current Database + Database Corrente + + + + Clone + Clona + + + + User + Utente + + + + Database + Database + + + + Branch + Ramo + + + + Commits + Invii + + + + Commits for + Invii per + + + + Delete Database + Elimina Database + + + + Delete the local clone of this database + Elimina il clone locale di questo database + + + + Open in Web Browser + Apri in nel Web Browser + + + + Open the web page for the current database in your browser + Apre la pagina web per il database corrente nel tuo browser + + + + Clone from Link + Clona dal collegamento + + + + Use this to download a remote database for local editing using a URL as provided on the web page of the database. + Usa questo per scaricare un database remoto per modificarlo in locale usando un URL come fornito sulla pagina web del database. + + + + Refresh + Aggiorna + + + + Reload all data and update the views + Ricarica tutti i dati e aggiorna le viste + + + + F5 + + + + + Clone Database + Clona Database + + + + Open Database + Apri Database + + + + Open the local copy of this database + Apre una copia locale di questo database + + + + Check out Commit + Scarica invio + + + + Download and open this specific commit + Scarica e apre questo specifico invio + + + + Check out Latest Commit + Scarica l'ultimo invio + + + + Check out the latest commit of the current branch + Scarica l'invio più recente per il ramo corrente + + + + Save Revision to File + Salva la revisione su file + + + + Saves the selected revision of the database to another file + Salva la revisione selezionata del database s'un altro file + + + + Upload Database + Carica Database + + + + Upload this database as a new commit + Carica questo database come nuovo invio + + + + <html><head/><body><p>You are currently using a built-in, read-only identity. For uploading your database, you need to configure and use your DBHub.io account.</p><p>No DBHub.io account yet? <a href="https://dbhub.io/"><span style=" text-decoration: underline; color:#007af4;">Create one now</span></a> and import your certificate <a href="#preferences"><span style=" text-decoration: underline; color:#007af4;">here</span></a> to share your databases.</p><p>For online help visit <a href="https://dbhub.io/about"><span style=" text-decoration: underline; color:#007af4;">here</span></a>.</p></body></html> + <html><head/><body><p>Stai attulamente utilizzando un profilo interno in sola lettura. Per caricare i tuoi database, devi configurare e usare un account DBHub.io.</p><p>Non hai ancora un account DBHub.io? <a href="https://dbhub.io/"><span style=" text-decoration: underline; color:#007af4;">Creane uno adesso</span></a> e importa il tuo certificato <a href="#preferences"><span style=" text-decoration: underline; color:#007af4;">qui</span></a> per condividere i tuoi databases.</p><p>Per aiuto online clicca <a href="https://dbhub.io/about"><span style=" text-decoration: underline; color:#007af4;">qui</span></a>.</p></body></html> + + + + Back + Indietro + + + + Select an identity to connect + Seleziona un'identità per connetterti + + + + Public + Pubblico + + + + This downloads a database from a remote server for local editing. +Please enter the URL to clone from. You can generate this URL by +clicking the 'Clone Database in DB4S' button on the web page +of the database. + Questo scarica un database ad un server remoto per modificarlo localmente. +Si prega d'inserire l'URL da clonare. Puoi generare questa URL cliccando +il pulsante 'Clona Database in DB4S' sulla pagina web del database. + + + + Invalid URL: The host name does not match the host name of the current identity. + URL non valida: Il nome dell'host non corrisponde al nome dell'host dell'identità corrente. + + + + Invalid URL: No branch name specified. + URL non valida: Nessun ramo specificato. + + + + Invalid URL: No commit ID specified. + URL non valida: Nessun ID Invio specificato. + + + + You have modified the local clone of the database. Fetching this commit overrides these local changes. +Are you sure you want to proceed? + Hai modificato il clone locale del database. Recuperare questo commit sovrascriverà le modifiche locali. +Sei sicuro di voler proseguire? + + + + The database has unsaved changes. Are you sure you want to push it before saving? + Il database ha delle modifiche non salvate. Sei sicuro di volerlo inviare prima di salvare? + + + + The database you are trying to delete is currently opened. Please close it before deleting. + Il database che stai provando a cancellare è attualmente aperto. Si prega di chiuderlo prima d'eliminarlo. + + + + This deletes the local version of this database with all the changes you have not committed yet. Are you sure you want to delete this database? + Questo elimina la versione locale di questo database con tutte le modifiche che non hai ancora inviato. Sei sicuro di voler eliminare questo database? + + + + RemoteLocalFilesModel + + + Name + Nome + + + + Branch + Ramo + + + + Last modified + Ultima modifca + + + + Size + Dimensione + + + + Commit + Invio + + + + File + File + + + + RemoteModel + + + Name + Nome + + + + Commit + Commit + + + + Last modified + Ultima modifca + + + + Size + Dimensione + + + + Size: + Dimensione: + + + + Last Modified: + Ultima modifica: + + + + Licence: + Licenza: + + + + Default Branch: + Ramo di default: + + + + RemoteNetwork + + + Choose a location to save the file + Scegli una posizione per salvare il file + + + + Error opening remote file at %1. +%2 + Errore aprendo il file remoto a %1. +%2 + + + + Error: Invalid client certificate specified. + Errore: specificato certificato invalido per il client. + + + + Please enter the passphrase for this client certificate in order to authenticate. + Si prega d'inserire la passphrase per questo certificato di client in modo da permetterne l'autenticazione. + + + + Cancel + Annulla + + + + Uploading remote database to +%1 + Carico il database remoto in +%1 + + + + Downloading remote database from +%1 + Scarico il database remoto da +%1 + + + + + Error: The network is not accessible. + Errore: Rete non disponibile. + + + + Error: Cannot open the file for sending. + Errore:Impossibile aprire il file per l'invio. + + + + RemotePushDialog + + + Push database + Invia database + + + + Database na&me to push to + No&me del database a cui inviare + + + + Commit message + Messaggio di commit + + + + Database licence + Licenza database + + + + Public + Pubblico + + + + Branch + Branch + + + + Force push + Forza invio + + + + Username + Nome utente + + + + Database will be public. Everyone has read access to it. + Il database sarà pubblico. Chiunque potrà accedere in lettura. + + + + Database will be private. Only you have access to it. + Il database sarà privato. Solo tu potrai accedervi. + + + + Use with care. This can cause remote commits to be deleted. + Usa con cautela. Questo può eliminare dei commit remoti. + + + + RunSql + + + Execution aborted by user + Esecuzione terminata dall'utente + + + + , %1 rows affected + , %1 righe modificate + + + + query executed successfully. Took %1ms%2 + query eseguita con successo. Impiegati %1ms%2 + + + + executing query + query in esecuzione + + + + SelectItemsPopup + + + A&vailable + &Disponibile + + + + Sele&cted + Se&lezionato + + + + SqlExecutionArea + + + Form + + + + + Find previous match [Shift+F3] + Trova corrispondenza precedente [Shift+F3] + + + + Find previous match with wrapping + Trova la corrispondenza precedente con reinizio + + + + Shift+F3 + + + + + The found pattern must be a whole word + Il pattern trovato deve essere una parola intera + + + + Whole Words + Parole intere + + + + Text pattern to find considering the checks in this frame + Il pattern da cercare considerando le spunte in quest'area + + + + Find in editor + Trova nell'editor + + + + The found pattern must match in letter case + Il patter trovato deve corrispondere esattamente (maiuscole/minuscole) incluse + + + + Case Sensitive + Case Sensitive + + + + Find next match [Enter, F3] + Trova la prossima corrispondenza [Invio, F3] + + + + Find next match with wrapping + Trova la prossima corrispondenza con reinizio + + + + F3 + + + + + Interpret search pattern as a regular expression + Interpreta il pattern di ricerca come un'espressione regolare + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + <html><head/><body><p>Quando selezionato, la stringa del testo viene interpretata come una RegExp Unix. Vedi <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Espressioni regolari su Wikibooks (in inglese)</a>.</p></body></html> + + + + Regular Expression + Espressione regolare + + + + + Close Find Bar + Chiudi la barra di ricerca + + + + <html><head/><body><p>Results of the last executed statements.</p><p>You may want to collapse this panel and use the <span style=" font-style:italic;">SQL Log</span> dock with <span style=" font-style:italic;">User</span> selection instead.</p></body></html> + <html><head/><body><p>Risultati degli ultimi statements eseguiti.</p><p>Potresti voler rimpicciolire questo pannello e usare la casella <span style=" font-style:italic;">SQL Log</span> con la selezione dell'<span style=" font-style:italic;">Utente</span>.</p></body></html> + + + + Results of the last executed statements + Risultato degli 'ultimi statement eseguiti + + + + This field shows the results and status codes of the last executed statements. + Questo campo mostra i risultati e i codici di stato degli ultimi statements eseguiti. + + + + Couldn't read file: %1. + Impossibile leggere il file: %1. + + + + + Couldn't save file: %1. + Impossibile salvare il file: %1. + + + + Your changes will be lost when reloading it! + Le tue modifiche andranno perse quando ricaricherai! + + + + The file "%1" was modified by another program. Do you want to reload it?%2 + Il file "%1" è stato modificato da un altro programma. Vuoi ricaricarlo?%2 + + + + SqlTextEdit + + + Ctrl+/ + + + + + SqlUiLexer + + + (X) The abs(X) function returns the absolute value of the numeric argument X. + (X) La funzione abs(X) ritorna il valore assoluto dell'argomento numerico X. + + + + () The changes() function returns the number of database rows that were changed or inserted or deleted by the most recently completed INSERT, DELETE, or UPDATE statement. + () La funzione changes() ritorna il numero delle righe di database che sono state modificate o inserite o eliminate dallo statement INSERT, DELETE o UPDATE più recente. + + + + (X1,X2,...) The char(X1,X2,...,XN) function returns a string composed of characters having the unicode code point values of integers X1 through XN, respectively. + (X1, X2,...) La funzione char(X1,X2,...,XN) ritorna una stringa composta dai caratteri unicode rappresentati dai valori interi da X1 a XN. + + + + (X,Y,...) The coalesce() function returns a copy of its first non-NULL argument, or NULL if all arguments are NULL + (X,Y,...) La funzione coalesce(X,Y,...) ritorna una copia del suo primo argomento non NULL oppure NULL se tutti gli argomenti sono NULL + + + + (X,Y) The glob(X,Y) function is equivalent to the expression "Y GLOB X". + (X,Y) La funzione glob(X,Y) è equivalente all'espressione "Y GLOB X". + + + + (X,Y) The ifnull() function returns a copy of its first non-NULL argument, or NULL if both arguments are NULL. + (X,Y) La funzione ifnull(X,Y) ritorno una copia del suo primo argomento non NULL o NULL se entrambi gli argomenti sono NULL. + + + + (X,Y) The instr(X,Y) function finds the first occurrence of string Y within string X and returns the number of prior characters plus 1, or 0 if Y is nowhere found within X. + (X,Y) La funzione intstr(X,Y) trova la prima occorrenza della stringa Y all'interno della stringa X e ritorna il numero dei caratteri precedenti più 1 o 0 se Y non si trova all'interno di X. + + + + (X) The hex() function interprets its argument as a BLOB and returns a string which is the upper-case hexadecimal rendering of the content of that blob. + (X) La funzione hex() interpreta i suoi argomenti come un BLOB e ritorna una stringa corrispondente al rendering esadecimale maiuscolo del contenuto di quel blob. + + + + () The last_insert_rowid() function returns the ROWID of the last row insert from the database connection which invoked the function. + () La funzione last_insert_rowid() ritorna il ROWID dell'ultima riga inserita nella connessione database che ha invocato la funzione. + + + + (X) For a string value X, the length(X) function returns the number of characters (not bytes) in X prior to the first NUL character. + (X) La funzione lenght(X) ritorna per una stringa X, il numero di caratteri (non bytes) di X prima del primo carattere NUL. + + + + (X,Y) The like() function is used to implement the "Y LIKE X" expression. + (X,Y) La funzione like(X,Y) è utilizzata per implementare l'espressione "Y LIKE X". + + + + (X,Y,Z) The like() function is used to implement the "Y LIKE X ESCAPE Z" expression. + (X,Y,Z) La funzione like(X,Y,Z) è utilizzata per implementare l'espressione "Y LIKE X ESCAPE Z". + + + + (X) The load_extension(X) function loads SQLite extensions out of the shared library file named X. +Use of this function must be authorized from Preferences. + (X) La funzione load_extension(X) carica l'estensione SQLite da un file di libreria condivisa di nome X. +L'utilizzo di questa funzione dev'essere permesso tramite le Preferenze. + + + + (X,Y) The load_extension(X) function loads SQLite extensions out of the shared library file named X using the entry point Y. +Use of this function must be authorized from Preferences. + (X,Y) La funzione load_extension(X,Y) carica un'estensione SQLite da un file di libreria condivisa di nome X utilizzando il punto d'ingresso Y. +L'utilizzo di questa funzione dev'essere permesso tramite le Preferenze. + + + + (X) The lower(X) function returns a copy of string X with all ASCII characters converted to lower case. + (X) La funzione lower(X) ritorna una copia della stringa X con tutti i caratteri ASCII convertiti in minuscolo. + + + + (X) ltrim(X) removes spaces from the left side of X. + (X) La funzione ltrim(X) rimuove gli spazi dal lato sinistro di X. + + + + (X,Y) The ltrim(X,Y) function returns a string formed by removing any and all characters that appear in Y from the left side of X. + (X,Y) La funzione ltrim(X,Y) ritorna una stringa formata rimuovendo tutti i caratteri che compaiono in Y dal lato sinistro di X. + + + + (X,Y,...) The multi-argument max() function returns the argument with the maximum value, or return NULL if any argument is NULL. + (X,Y,...) La funzione multi-argomento max(X,Y,...) ritorna l'argomento con valore massimo o ritorna NULL se tutti gli argomenti sono NULL. + + + + (X,Y,...) The multi-argument min() function returns the argument with the minimum value. + (X,Y,...) La funzione multi-argomento min(X,Y,...) ritorna l'argomento con valore minore o NULL se tutti gli argomenti sono NULL. + + + + (X,Y) The nullif(X,Y) function returns its first argument if the arguments are different and NULL if the arguments are the same. + (X,Y) La funzione nullif(X,Y) ritorna il primo argomento se gli argomenti sono diversi e NULL se gli argomenti sono uguali. + + + + (FORMAT,...) The printf(FORMAT,...) SQL function works like the sqlite3_mprintf() C-language function and the printf() function from the standard C library. + (FORMAT,...) La funzione SQL printf(FORMAT,...) si comporta come la funzione del linguaggio C sqlite3_mprintf() e la funzione printf() della libreria standard C. + + + + (X) The quote(X) function returns the text of an SQL literal which is the value of its argument suitable for inclusion into an SQL statement. + (X) La funzione quote(X) ritorna il testo di un literale SQL il cui valore può essere incluso in uno statement SQL. + + + + () The random() function returns a pseudo-random integer between -9223372036854775808 and +9223372036854775807. + () La funzione random() ritorna un numero intero pseudo-casuale tra -9223372036854775808 e +9223372036854775807. + + + + (N) The randomblob(N) function return an N-byte blob containing pseudo-random bytes. + (N) La funzione randomblob(N) ritorna un blob di N-bytes contenenti dati pseudo-casuali. + + + + (X,Y,Z) The replace(X,Y,Z) function returns a string formed by substituting string Z for every occurrence of string Y in string X. + (X,Y,Z) La funzione replace(X,Y,Z) ritorna una striga formata sostituendo la stringa Z in ogni occorrenza della stringa Y nella stringa X. + + + + (X) The round(X) function returns a floating-point value X rounded to zero digits to the right of the decimal point. + (X) La funzione round(X) ritorna un valore in virgola mobile X arrotondato a 0 cifre decimali. + + + + (X,Y) The round(X,Y) function returns a floating-point value X rounded to Y digits to the right of the decimal point. + (X,Y) La funzione round(X,Y) ritorna un numero in virgola mobile X arrotondato a Y cifre decimali. + + + + (X) rtrim(X) removes spaces from the right side of X. + (X) La funzione rtrim(X) rimuove gli spazi dalla destra di X. + + + + (X,Y) The rtrim(X,Y) function returns a string formed by removing any and all characters that appear in Y from the right side of X. + (X,Y) La funzione rtrim(X,Y) ritorna una stringa formata rimuovendo tutti i caratteri che compaiono in Y dal lato destro di X. + + + + (X) The soundex(X) function returns a string that is the soundex encoding of the string X. + (X) La funzione soundex(X) ritorna una stringa che rappresenta la codifica soundex della stringa X. + + + + (X,Y) substr(X,Y) returns all characters through the end of the string X beginning with the Y-th. + (X,Y) La funzione substr(X,Y) ritorna tutti i caratteri dalla fine della stringa X iniziando dall'Y-esimo. + + + + (X,Y,Z) The substr(X,Y,Z) function returns a substring of input string X that begins with the Y-th character and which is Z characters long. + (X,Y,Z) La funzione substr(X,Y,Z) ritorna una sotto-stringa di X che inizia dal carattere Y-esimo e lunga Z caratteri. + + + + () The total_changes() function returns the number of row changes caused by INSERT, UPDATE or DELETE statements since the current database connection was opened. + () La funzione total_changes() ritorna il numero di righe modificate da INSERT, UPDATE o DELETE dall'apertura della connessione al database. + + + + (X) trim(X) removes spaces from both ends of X. + (X) La funzione trim(X) rimuove gli spazi da entrambi i lati di X. + + + + (X,Y) The trim(X,Y) function returns a string formed by removing any and all characters that appear in Y from both ends of X. + (X,Y) La funzione trim(X,Y) ritorna una stringa formata rimuovendo tutti i caratteri che compaiono in Y da entrambi i termini di X. + + + + (X) The typeof(X) function returns a string that indicates the datatype of the expression X. + (X) La funzione typeof(X) ritorna una stringa che indica il tipo di dato dell'espressione X. + + + + (X) The unicode(X) function returns the numeric unicode code point corresponding to the first character of the string X. + (X) La funzione unicode(X) ritorna il valore numerico in unicode corrispondente al primo carattere della stringa X. + + + + (X) The upper(X) function returns a copy of input string X in which all lower-case ASCII characters are converted to their upper-case equivalent. + (X) La funzione upper(X) ritorna una copia della stringa X in cui tutti i caratteri minuscoli ASCII sono stati converiti in maiuscolo. + + + + (N) The zeroblob(N) function returns a BLOB consisting of N bytes of 0x00. + (N) La funizione zeroblob(N) ritorna un BLOB di N byte di 0x00. + + + + + + + (timestring,modifier,modifier,...) + (stringa data,modificatore,modificatore,...) + + + + (format,timestring,modifier,modifier,...) + (formato,stringa data-ora,modificatore,modificatore,...) + + + + (X) The avg() function returns the average value of all non-NULL X within a group. + (X) La funzione avg(X) ritorna il valore medio di tutti gli X non-NULL in un gruppo. + + + + (X) The count(X) function returns a count of the number of times that X is not NULL in a group. + (X) La funzione count(X) ritorna il numero di volte che X non è NULL in un gruppo. + + + + (X) The group_concat() function returns a string which is the concatenation of all non-NULL values of X. + (X) La funzione group_concat(X) ritorna una stringa rappresentante la concatenazione di tutti i valori di X non-NULL. + + + + (X,Y) The group_concat() function returns a string which is the concatenation of all non-NULL values of X. If parameter Y is present then it is used as the separator between instances of X. + (X,Y) La funzione group_concat(X,Y) ritorna una stringa rappresentate la concatenazione di tutti i valori di X non-NULL. Se il parametro Y è presente allora è utilizzato come separatore tra le istanze di X. + + + + (X) The max() aggregate function returns the maximum value of all values in the group. + (X) La funzione aggregata max(X) ritorna il valore massimo di tutti i valori nel gruppo. + + + + (X) The min() aggregate function returns the minimum non-NULL value of all values in the group. + (X) La funzione aggregata min(X) ritorna il minore non-NULL tra tutti i valori del gruppo. + + + + + (X) The sum() and total() aggregate functions return sum of all non-NULL values in the group. + (X) Le funzioni aggregate sum(X) e total(X) ritornano la somma di tutti i valori non-NULL nel gruppo. + + + + () The number of the row within the current partition. Rows are numbered starting from 1 in the order defined by the ORDER BY clause in the window definition, or in arbitrary order otherwise. + () Il numero di righe all'interno della partizione corrente. Le righe sono numerate partendo da 1 nell'ordine definito dalla clausula ORDER BY nella finestra definizione, o altrimenti in ordine arbitrario. + + + + () The row_number() of the first peer in each group - the rank of the current row with gaps. If there is no ORDER BY clause, then all rows are considered peers and this function always returns 1. + () Il row_number() del primo peer in ogni gruppo - il rango della riga corrente con intervalli. Se non ci sono clausule ORDER BY, allora tutte le righe sono considerate peer e questa funzione ritorna 1. + + + + () The number of the current row's peer group within its partition - the rank of the current row without gaps. Partitions are numbered starting from 1 in the order defined by the ORDER BY clause in the window definition. If there is no ORDER BY clause, then all rows are considered peers and this function always returns 1. + () Il numero di peer nel gruppo della riga corrente all'interno della sua partizione - il rango della riga corrente senza intervalli. Le partizioni sono numerate a partire da 1 nell'ordine definito dalla clausula ORDER BY nella finestra definizione. Se non ci sono clausule ORDER BY allora tutte le righe sono considerate peer e questa funzione ritorna 1. + + + + () Despite the name, this function always returns a value between 0.0 and 1.0 equal to (rank - 1)/(partition-rows - 1), where rank is the value returned by built-in window function rank() and partition-rows is the total number of rows in the partition. If the partition contains only one row, this function returns 0.0. + () A dispetto del nome, questa funzione ritorna sempre un valore tra 0.0 e 1.0 uguale a (rango - 1)/(righe della partizione - 1), dove rango è il valore ritornato dalla funzione interna rank() e le "righe della partizione" sono il numero di righe nella partizione. Se la partizione contiene solo una riga, questa funzione ritorna 0.0. + + + + () The cumulative distribution. Calculated as row-number/partition-rows, where row-number is the value returned by row_number() for the last peer in the group and partition-rows the number of rows in the partition. + () La distribuzione cumulativa. Calcolata come "numero di righe"/"righe della partizione", dove "numero di righe" è il valore ritornato dalla funzione row_number() per l'utimo peer nel gruppo. + + + + (N) Argument N is handled as an integer. This function divides the partition into N groups as evenly as possible and assigns an integer between 1 and N to each group, in the order defined by the ORDER BY clause, or in arbitrary order otherwise. If necessary, larger groups occur first. This function returns the integer value assigned to the group that the current row is a part of. + (N) L'argomento N è gestito come valore intero. Questa funzione divide la partizione in N gruppi il più uniformemente possibile e assegna un'intero tra 1 e N ad ogni gruppo, nell'ordine definito dalla clausula ORDER BY o altrimenti in ordine arbitrario. Se necessario i gruppi più grandi compariranno per primi. Questa funzione ritorna il valore intero assegnato al gruppo di cui fa parte la riga corrente. + + + + (expr) Returns the result of evaluating expression expr against the previous row in the partition. Or, if there is no previous row (because the current row is the first), NULL. + (expr) Ritorna il risultato della valutazione dell'espressione expr sulla riga precedente della partizione o, se non esiste una riga precedente (perché la riga è la prima), NULL. + + + + (expr,offset) If the offset argument is provided, then it must be a non-negative integer. In this case the value returned is the result of evaluating expr against the row offset rows before the current row within the partition. If offset is 0, then expr is evaluated against the current row. If there is no row offset rows before the current row, NULL is returned. + (expr, offset) Se l'argomento offset viene fornito, allora dev'essere un intero non negativo. In questo caso il valore ritornato è il risultato della valutazione dell'espressione expr sulla riga "offset" posizioni antecedente nella partizione. Se offset è 0 allora expr viene valutata sulla riga corrente. Se non ci sono offset righe antecedenti viene ritornato NULL. + + + + + (expr,offset,default) If default is also provided, then it is returned instead of NULL if the row identified by offset does not exist. + (expr,offset,default) Se viene fornito anche default, allora viene ritornato al posto di NULL se la riga identificata da offset non esiste. + + + + (expr) Returns the result of evaluating expression expr against the next row in the partition. Or, if there is no next row (because the current row is the last), NULL. + (expr) Ritorna il risultato della valutazione dell'espressione expr con la riga successiva nella partizione o, se non c'è una riga successiva (perché la riga corrente è l'utlima) NULL. + + + + (expr,offset) If the offset argument is provided, then it must be a non-negative integer. In this case the value returned is the result of evaluating expr against the row offset rows after the current row within the partition. If offset is 0, then expr is evaluated against the current row. If there is no row offset rows after the current row, NULL is returned. + (expr,offset) Se viene fornito l'argomento offset, dev'essere un intero non negativo. In questo caso il valore ritornato è il risultato della valutazione dell'espressione expr sulla riga "offset" posizioni successiva a quella corrente nella partizione. Se offset è 0, allora expr viene valutata sulla riga corrente. Se non c'è una riga "offset" posizioni successive, NULL viene restituito. + + + + (expr) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the first row in the window frame for each row. + (expr) Questa funzione interna calcola la cornice della finestra di ciascuna riga allo stesso modo di una funzione finestra aggregata. Ritorna il valore della valutazione di expr sulla prima riga nella cornice della finestra per ciascuna riga. + + + + (expr) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the last row in the window frame for each row. + (expr) Questa funzione interna calcola la cornice della finestra per ciascuna riga allo stesso modo della funzione finestra aggregata. Ritorna il valore dell'espressione expr valutata sull'ultima riga della cornice della finestra per ciascuna riga. + + + + (expr,N) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the row N of the window frame. Rows are numbered within the window frame starting from 1 in the order defined by the ORDER BY clause if one is present, or in arbitrary order otherwise. If there is no Nth row in the partition, then NULL is returned. + (expr,N) Questa funzione interna calcola la cornice della finestra per ciascuna riga allo stesso modo della funzione aggregata finestra. Ritorna il valore della valutazione dell'espressione expr sulla riga N della cornice della finestra. Le righe sono numerate dalla cornice della finestra partendo da 1 nell'ordine definito dalla clausula ORDER BY se presente o in modo arbitrario. Se non esiste la riga Nesima nella partizione, viene ritornato NULL. + + + + SqliteTableModel + + + reading rows + leggo le righe + + + + loading... + caricamento... + + + + References %1(%2) +Hold %3Shift and click to jump there + Riferimenti %1(%2) +Tieni premuto %3Shift e clicca per saltare lì + + + + Error changing data: +%1 + Errore nella modifica dei dati: +%1 + + + + retrieving list of columns + recupero la lista delle colonne + + + + Fetching data... + Recupero dati... + + + + + Cancel + Annulla + + + + TableBrowser + + + Browse Data + Naviga nei dati + + + + &Table: + &Tabella: + + + + Select a table to browse data + Seleziona una tabella per navigare tra i dati + + + + Use this list to select a table to be displayed in the database view + Usa questa lista per selezionare una tabella da visualizzare nella vista del database + + + + This is the database table view. You can do the following actions: + - Start writing for editing inline the value. + - Double-click any record to edit its contents in the cell editor window. + - Alt+Del for deleting the cell content to NULL. + - Ctrl+" for duplicating the current record. + - Ctrl+' for copying the value from the cell above. + - Standard selection and copy/paste operations. + Questa è la vista della tabella del database. Puoi eseguire le seguenti operazioni: + - Inizia a scrivere per modificare i valori. + - Doppio-click su qualsiasi valore per modificarne il contenuto nella finestra di editor della cella. + - Alt+Del per eliminare il contenuto della cella e portarlo a NULL. + - Ctrl+" per duplicare il valore corrente. + - Ctrl+' per copiare il valore dalla cella soprastante. + - Operazioni di selezione e copia/incolla. + + + + Text pattern to find considering the checks in this frame + Il pattern da cercare considerando le spunte in quest'area + + + + Find in table + Trova nella tabella + + + + Find previous match [Shift+F3] + Trova corrispondenza precedente [Shift+F3] + + + + Find previous match with wrapping + Trova la corrispondenza precedente con reinizio + + + + Shift+F3 + + + + + Find next match [Enter, F3] + Trova la prossima corrispondenza [Invio, F3] + + + + Find next match with wrapping + Trova la prossima corrispondenza con reinizio + + + + F3 + + + + + The found pattern must match in letter case + Il pattern trovato deve corrispondere esattamente (maiuscole/minuscole) incluse + + + + Case Sensitive + Case Sensitive + + + + The found pattern must be a whole word + Il pattern trovato deve essere una parola intera + + + + Whole Cell + Cella completa + + + + Interpret search pattern as a regular expression + Interpreta il pattern di ricerca come un'espressione regolare + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + <html><head/><body><p>Quando selezionata, il pattern da trovare viene interpretato come un'espressione regolare UNIX. Vedi: <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + + + + Regular Expression + Espressione regolare + + + + + Close Find Bar + Chiudi la barra di ricerca + + + + Text to replace with + Testo da usare per la sostituzione + + + + Replace with + Sostituisci con + + + + Replace next match + Sostituisci la prossima corrispondenza + + + + + Replace + Sostituisci + + + + Replace all matches + Sostituisci tutte le corrispondenze + + + + Replace all + Sostituisci tutto + + + + <html><head/><body><p>Scroll to the beginning</p></body></html> + <html><head/><body><p>Scorri all'ìinizio</p></body></html> + + + + <html><head/><body><p>Clicking this button navigates to the beginning in the table view above.</p></body></html> + <html><head/><body><p>Cliccare questo pulsante scorre la vista all'inizio della tabella.</p></body></html> + + + + |< + |< + + + + Scroll one page upwards + Scorri di una pagina in su + + + + <html><head/><body><p>Clicking this button navigates one page of records upwards in the table view above.</p></body></html> + <html><head/><body><p>Cliccando questo pulsante la vista scorre le righe di una pagina verso l'inizio della tabella.</p></body></html> + + + + < + < + + + + 0 - 0 of 0 + 0 - 0 di 0 + + + + Scroll one page downwards + Scorri di una pagina in giù + + + + <html><head/><body><p>Clicking this button navigates one page of records downwards in the table view above.</p></body></html> + <html><head/><body><p>Cliccando questo pulsante la vista scorre le righe di una pagina verso il fondo della tabella.</p></body></html> + + + + > + > + + + + Scroll to the end + Scorri alla fine + + + + <html><head/><body><p>Clicking this button navigates up to the end in the table view above.</p></body></html> + <html><head/><body><p>Cliccando questo pulsante la vista scorre al fondo della tabella.</p></body></html> + + + + >| + >| + + + + <html><head/><body><p>Click here to jump to the specified record</p></body></html> + <html><head/><body><p>Clicca qui per saltare alla riga specificata</p></body></html> + + + + <html><head/><body><p>This button is used to navigate to the record number specified in the Go to area.</p></body></html> + <html><head/><body><p>Questo pulsante è utilizzato per navigare alla riga impostata nell'area "Vai a".</p></body></html> + + + + Go to: + Vai a: + + + + Enter record number to browse + Inserisci il numero di riga a cui scorrere + + + + Type a record number in this area and click the Go to: button to display the record in the database view + Inserisci un numero in quest'area e clicca sul pul pulsante "Vai a" per visualizzare la riga selezionata + + + + 1 + 1 + + + + Show rowid column + Mostra colonna rowid + + + + Toggle the visibility of the rowid column + Mostra/nasconde la colonna rowid + + + + Unlock view editing + Sblocca la modifica della vista + + + + This unlocks the current view for editing. However, you will need appropriate triggers for editing. + Sblocca la vista corrente per modificarla. Per poterla modificare avrai comunque bisogno degli appropriati trigger. + + + + Edit display format + Modifica formato di visualizzazione + + + + Edit the display format of the data in this column + Modifica il formato di visualizzazione dei dati in questa colonna + + + + + New Record + Nuova Riga + + + + + Insert a new record in the current table + Inserisci un nuovo valore nella tabella corrente + + + + <html><head/><body><p>This button creates a new record in the database. Hold the mouse button to open a pop-up menu of different options:</p><ul><li><span style=" font-weight:600;">New Record</span>: insert a new record with default values in the database.</li><li><span style=" font-weight:600;">Insert Values...</span>: open a dialog for entering values before they are inserted in the database. This allows to enter values acomplishing the different constraints. This dialog is also open if the <span style=" font-weight:600;">New Record</span> option fails due to these constraints.</li></ul></body></html> + <html><head/><body><p>Questo pulsante crea una nuova riga nel database. Mantieni premuto il tasto del mouse per ottenere più opzioni:</p><ul><li><span style=" font-weight:600;">Nuova Riga</span>: inserisce una nuova riga con i valori predefiniti.</li><li><span style=" font-weight:600;">Inserisci Valori...</span>: apre una finestra per inserire i valori prima che vengano immessi nel database. Questo permette che l'immissione dei valori rispetti diversi limiti (constraints). Questa finestra si apre anche se l'opzione <span style=" font-weight:600;">Nuova Riga</span> fallisce a causa di questi limiti (constraints).</li></ul></body></html> + + + + + Delete Record + Elimina Riga + + + + Delete the current record + Elimina il valore corrente + + + + + This button deletes the record or records currently selected in the table + Questo pulsante elimina la/e righe selezionate nella tabella + + + + + Insert new record using default values in browsed table + Inserisce un nuovo record utilizzando i valori di default della tabella + + + + Insert Values... + Inserisci Valori... + + + + + Open a dialog for inserting values in a new record + Apre una finestra per l'inermento di valori all'interno di un nuovo record + + + + Export to &CSV + Esporta in &CSV + + + + + Export the filtered data to CSV + Esporta i dati filtrati in CSV + + + + This button exports the data of the browsed table as currently displayed (after filters, display formats and order column) as a CSV file. + Questo pulsante esporta i dati della tabella così come visualizzati (applicando filtri, formati e ordine delle colonne) in un file CSV. + + + + Save as &view + Salva come &vista + + + + + Save the current filter, sort column and display formats as a view + Salva il filtro corrente, ordine colonne e formati dati come vista + + + + This button saves the current setting of the browsed table (filters, display formats and order column) as an SQL view that you can later browse or use in SQL statements. + Questo pulsante salva le impostazioni della tabella visualizzata (filtri, formati e ordine colonne) in una vista SQL che puoi successivamente navigare o utilizzare in statement SQL. + + + + Save Table As... + Salva Tabella Come... + + + + + Save the table as currently displayed + Salva la tabella così come visualizzata + + + + <html><head/><body><p>This popup menu provides the following options applying to the currently browsed and filtered table:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Export to CSV: this option exports the data of the browsed table as currently displayed (after filters, display formats and order column) to a CSV file.</li><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Save as view: this option saves the current setting of the browsed table (filters, display formats and order column) as an SQL view that you can later browse or use in SQL statements.</li></ul></body></html> + <html><head/><body><p>Questo menù fornisce le seguenti opzioni applicabili alla tabella filtrata e visualizzata correntemente:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Esporta in CSV: questa opzione esporta i dati della tabella così come visualizzati (con filtri, riordine delle colonne e formati) in un file CSV.</li><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Salva come vista: questa opzione salva le impostazioni correnti della tabella visualizzata (filtri, riordine delle colonne e formati) come vista SQL che puoi successivamente visualizzare o utilizzare come statement.</li></ul></body></html> + + + + Hide column(s) + Nascondi colonna(e) + + + + Hide selected column(s) + Nasconde la(e) colonna(e) selezionata(e) + + + + Show all columns + Mostra tutte le colonne + + + + Show all columns that were hidden + Mostra tutte le colonne nascoste + + + + + Set encoding + Imposta codifica + + + + Change the encoding of the text in the table cells + Modifica la codifica del testo nelle celle della tabella + + + + Set encoding for all tables + Imposta la codifica per tutte le tabelle + + + + Change the default encoding assumed for all tables in the database + Modifica il valore predefinito di codifica per tutte le tabelle del database + + + + Clear Filters + Pulisci Filtri + + + + Clear all filters + Cancella tutti i filtri + + + + + This button clears all the filters set in the header input fields for the currently browsed table. + Questo pulsante pulisce tutti i filtri impostati nella riga d'intestazione per la tabella corrente. + + + + Clear Sorting + Ripristina Ordinamento + + + + Reset the order of rows to the default + Ripristina l'ordine delle righe predefinito + + + + + This button clears the sorting columns specified for the currently browsed table and returns to the default order. + Questo pulsante ripristina l'ordinamento delle colonne predefinito per la tabella corrente. + + + + Print + Stampa + + + + Print currently browsed table data + Stampa i dati della tabella attualmente in esplorazione + + + + Print currently browsed table data. Print selection if more than one cell is selected. + Stampa i dati visualizzati. Stampa la selezione se più di una cella è selezionata. + + + + Ctrl+P + + + + + Refresh + Aggiorna + + + + Refresh the data in the selected table + Aggiorna i dati della tabella selezionata + + + + This button refreshes the data in the currently selected table. + Questo pulsante aggiorna i dati della tabella selezionata. + + + + F5 + + + + + Find in cells + Trova nelle celle + + + + Open the find tool bar which allows you to search for values in the table view below. + Apre la barra di ricerca che ti permette di cercare valori nella tabella visualizzata qui sotto. + + + + + Bold + Grassetto + + + + Ctrl+B + + + + + + Italic + Corsivo + + + + + Underline + Sottolinea + + + + Ctrl+U + + + + + + Align Right + Allinea a Destra + + + + + Align Left + Allinea a Sinistra + + + + + Center Horizontally + Centra Orizzontalmente + + + + + Justify + Giustifica + + + + + Edit Conditional Formats... + Modifica Formattazione Condizionale... + + + + Edit conditional formats for the current column + Modifica formattazione condizionale per la colonna corrente + + + + Clear Format + Ripristina formattazione + + + + Clear All Formats + Ripristina Tutte le Formattazioni + + + + + Clear all cell formatting from selected cells and all conditional formats from selected columns + Ripristina la formattazione di tutte le celle selezionate e tutte le formattazioni condizionali delle colonne selezionate + + + + + Font Color + Colore Testo + + + + + Background Color + Colore Sfondo + + + + Toggle Format Toolbar + Mostra/Nascondi barra dei formati + + + + Show/hide format toolbar + Mostra/nascondi barra dei formati + + + + + This button shows or hides the formatting toolbar of the Data Browser + Questo pulsante mostra o nasconde la barra dei formati per il Browser dei dati + + + + Select column + Seleziona colonna + + + + Ctrl+Space + + + + + Replace text in cells + Sostituisci testo nelle celle + + + + Filter in any column + Filtra in qualsiasi colonna + + + + Ctrl+R + + + + + %n row(s) + + %n riga + %n righe + + + + + , %n column(s) + + , %n colonna + , %n colonne + + + + + . Sum: %1; Average: %2; Min: %3; Max: %4 + . Somma: %1; Media: %2; Min: %3; Max: %4 + + + + Conditional formats for "%1" + Formattazione condizionale per '%1' + + + + determining row count... + determino il numero di righe... + + + + %1 - %2 of >= %3 + %1 - %2 di >= %3 + + + + %1 - %2 of %3 + %1 - %2 di %3 + + + + Please enter a pseudo-primary key in order to enable editing on this view. This should be the name of a unique column in the view. + Si prega d'inserire una pseudo-chiave primaria in modo da abilitare le modifiche su questa vista. Deve corrispondere al nome di una colonna univoca nella vista. + + + + Delete Records + Elimina i Records + + + + Duplicate records + Duplica i records + + + + Duplicate record + Duplica il record + + + + Ctrl+" + + + + + Adjust rows to contents + Adatta le righe al contenuto + + + + Error deleting record: +%1 + Errore eliminando le righe: +%1 + + + + Please select a record first + Si prega di selezionare prima un record + + + + There is no filter set for this table. View will not be created. + Non c'è filtro impostato per questa tabella. La vista non sarà creata. + + + + Please choose a new encoding for all tables. + Si prega di scegliere una nuova codifica per tutte le tabelle. + + + + Please choose a new encoding for this table. + Si prega di scegliere una nuova codifica per questa tabella. + + + + %1 +Leave the field empty for using the database encoding. + %1 +Lasciare il campo vuoto per utilizzare la codifica del database. + + + + This encoding is either not valid or not supported. + Questa codifica non è valida o non è supportata. + + + + %1 replacement(s) made. + %1 sostituzione(i) effettuata(e). + + + + VacuumDialog + + + Compact Database + Compatta Database + + + + Warning: Compacting the database will commit all of your changes. + Attenzione: Compattare il database salverà tutte le tue modifiche. + + + + Please select the databases to co&mpact: + Si prega di selezionare il database da co&mpattare: + + + diff --git a/ConfigFiles/translations/sqlb_ja.qm b/ConfigFiles/translations/sqlb_ja.qm new file mode 100644 index 0000000000000000000000000000000000000000..536ea32ffe0e209c40d264eb06d1eb04332162da GIT binary patch literal 182656 zcmc$H31Cyj_V>BB*_xyYyNG~cDIn1HvMXQ_D0?ZTEtI{aZQ6#mNl8*@SrtK60jq#3 z0?LlKp@Iu2i+~F%vbcgEptAWC1m6?k`_0^&o1{$u|L^~OA1Ko%cV^CrxDTKmM#A*EXr~Z8(?V_!cO=pb zCz@eHI||P~kM=PVEHlw!%(q|Tt#IAUTXD)Fv`a|%z7=o9DfnI+Pc-jSv;&CdV=V0l znCD)!JJF6L(qAL-`A$Tw-Y4308em&Un1S*7yoh=G6ZOTqGD`v8D56IJ?+6dkQ`6=4 z)3=C5*C(1Zi^R2fzUu(F-PDo9t)obIXc39$A0pwMhe=Z>k*L=@q?!E;316Ki&C;eo zK{juNMGx>+^lT!{nsTBwr+6!P>XK&NY7#s<1*WniE5Qbx8zn!mmc-`{P->^cMD~0d+$9G5(uUH?-UU6h zr1araNH~u6i`Af;d6Y3?9#M{gGCl#`SH3_)I)g7>zCuF{;JfieL+9bS^`D{LNi^*Y z4c(0P$qjP*NqZXl7M?3VNtug*kH)KcE6#eKGME0Fgcplx*x#2ykGp7i;xQ8LE~nv6 zz(2VfjVK2mA6>^=VN)87m}?;Vyo^T8coA@lH0t3ui0;zUnC}uv_;o3bjR73@9jEMp z>q*#=McJQ#-VZ-bc@L~6;oE%5Ti%f9tL8Lr>}C>7GsuH}zM%oY-7+(}dK23=2BM-PwqfN0Eexm~KGnG+y$-q=ZVY$-$!cxXYB1CT%ep(hq& z+}gA0iO)n5*8M^&hgwLuluRpMhMf3*KCM2FarzvjHTo11?|zmxw%9=Q-Z0u!p(i0B ziZ;Ir`pbHWUj5ifVup=gud$rOuAk6bV;2w=6w!{{MnwC!(T>k9lCaTCyE4Gv=hxDQ znrTE=V(7qL&~rzT4xAoB!iqg~sGp035%KiBu#m)tAJVa7KB9*=&?)0Go%;*> zQu8kQV*u#?uC{a|x-sySKsPpSCQ8dYJ%=lrU|A!3yC(K5@O!-lF)s< zU>)Ql$~w(k;qT3YHD@6S&z=zO{Af0b3-$~3TCXHw{$qm8<{)bOZ^3r>C!*&(LL-M0 zbVWk58u29F|8JqWXAFt8Jwo%(pga1$Ewt!^ewt{Z#o+6ZdznH)jf+GFI|~VRFVUwy zA>n9y@NJpUZS4Cb4Ea)cpk_LWk3K5&>Lmbg?+Zi!{EcX8XTkN%b zkhPuY+pEGyFV6*iPvWik&?~~nTW68*_;}&-Gl#HG9fTu)_9WV#BOLt-`e?sRIF<`O z{$#yys(lIx{Wc31E}SB||99RB3!fG)|Ji|rc@u;`HbOUj+fcYVdOHc5-Vv_O-3&Q) zRrsqK_^(?v;o6WLL_e(%u3cyf`c0PGb2{P1rXirGmqf86blSBGqGsYlL`(OJx|MrL zxc(Jy#it1oh2Zkt?T&~Q8$Thz&{}-%?#o1blEoF8h0srbi>nVcBr1GW zT)T8P(UI2ThE_9(jy4jv?#J)DqQtkEyqa`Ud?&9R0j#UnX(qS+saUp3zaTjpc&>(hXL`VsM);x9=!@vQiL>3X8! z4)Ob=hhWcL7LO+%gFVtvJQ3}JeB3Mk{P0=m>&@c%Jka6V{o-$3`Vl?dLA+!Jy*->I z{?Ts<(S^^&Yjr@6&0B~!hGQS5d=eEk$wlIz4N^wXiJqziwLVE!R0wZjnDYYTgjgXWgh3wIPr8CPb~6 z+mfhGa@5L1;OpM!qE@coPGYrTQLCO@4!!we)cT#kYm>X8HpTYBeo@rR4X#5jY>L_v zJski=Mmm5+0 zJa3cG>$RwTFAXB$M_<%O%OH35^pE=Db1l)JEl~&mT2A7mjZr7EAB8DDB2z);+yISH+q;YGFT~5jFLCrk9`n*sxzzMvz-JlsZ^ADm4cWOp-zfNM}bpXzUS9uH_BriHVy06X5$d{?d$V{tfo)sHSM*V%SH^HKkv~5`8dP zGvVNH@Krla+4e86uTN;EzO@T-sk7!`C*%o)YSdq| zxbIW&9a4EKEHY}Ae%zD9vL%`)`@KulTgO}B-N)qiVjbR!8S^zy&U})Dug!9ME?#bb zkJUW65_A{;s^;lMDI|7qXr3LhlZ1EQ(=2a4jl@xHHP8P`1i!Y|te6)IJ8i#a^&_*1 zcBg69bi{KNZ8dA|1)X%hpjndyJMvtf+@3GjtT~uL^n7*A+6mZaT|dqG>|-R{vtF}t z;Xx874o7>O=yED=Ma>$tzvJ@<(E@LmOVI+~m!C#^g=l3RxxKst?VtF)hur>QMEh@| zKN8TwuKgneE$ID^aY({(j)jE#M`;dRTLt{RtodxsY2foa z&1XAbCz>-_^Lc0J-!U6<=!(&j(*DsiQgi%2m)|EzNg1 zkOz-`tvNBdC5h9UYR)tU9L;-Z&U~@?`hcjGkY9N?pF8#L!WUPzR&Lv!)D zY}gCMnqNoMAd2mzx$3G3`fRTGQ{R+?@7~w^CmQoFSg85y(}vL3!?oJ?EF{vyay$D~ ztscMAhD5D##wFMbAM#ds{swQwho)=qsNR8uo)fiq?ZzOb| z+wyC`ablac^_}rVO@?V({|op(X4JNSG7Wy|Deb)-w-bGIP?b@Oq+aQ-)Xx+)HiO#;IEy-R;!qSOa--;dxUA(3(eFpIU{+xEg zD>F$fw`nH|%Sosaqn%uFiG&{x$nE7V+Nr-_yhdxZv$}&H{USU3CNV#6GNDw-|Kz zc@OP6W-m^DL%ZSqA7Jla&~Dg!8uat2cEgd!N!Tz;yRifK{Mn7#jf?x>_iwa2tQUdL zN42|36G=?^M7wL>3-H&^X?GU@zq+m3JqE1viG1z;MWB!8KGS~Y*+um0dF>aULT)^I zPHl=(kv1 zzYiOdX!u!|vZO7E(|*+rYFY|DT%t?;cnR#*IlAGi08fVKt zc^~A_LES@M;Nv~L?%~;pL47nxH|O2$Bt(tY&Fc$2x9bVrqx-L6A3N(7b;a-RpV2LP z|KB9+d`h=?ZVCL&6S^g@^&+8bUER`#xuCzUx@FZs@8^%})_j*twC=R-<*y~^?e}$C zMz)2Y)>8M@0~bkbovnNOMhb~j4(oQ#D~H}p)a`BYAjZ2_w>SG7;u3D%XWh;dt*xW` zZ0ZpB2TgQGp9Foi?xs6>Vj1|Oh3=b?Uz3==Tz6vXVG_NM=uUk61_>u0(f!=waT0x3 zbZ3wJ3Ol)@?!r$gBupgTrAFZ2kw57!Td~ehe%Jk#3j68Xb-KUvUxS^{PA@D+zo@_T zn(M&(jTiK~&c`4xQ}s38*g!&31AVQLz@IrwAG>Zh^wS}^z0g8`&%YW%UR~3-YJZ8u z%s2F{Pd-e-);sk*W8lyI{ME4r|)y-6X=si^(nn; z!;d_vPn*6Qe&T%nm{yQK@Ac7-Jp_4rUkiN>?01oN>T@f=Ck<=s^D?lm(_iTG8(=@0 zj@9QEf}WcErZ2=ki{)AR!tbxc&iqqfcmi}fvWtHF+WJJLJN2G;*wvFC)|dT^{r+K~ ze#*CpVP`GTPw)5<2@@vjXTEtK@RFmS_4y3wqh`Dn79P;gbtS@H{zCs~9O(47E&9b5 zKSTT|TEFD(Zt#ox>zBSh9Qtgi{;5+7As-j&m;V_HdJ*(5OoQL~AD{k(!@&QbkM*lD zuIMS%um0;a?EDP-udk zHiey>ssAt&@sXNy^dCJqjl{h3`p=$%eBb|<{466e&_f4{s4)gNDQoy3~e^grsBBfim3f4YZ<=-e>g3gg@A&)Q}o9+jiNu%sT* z;7t9MjP=kjq`xsz3%crP(B4svXr9xc>kas?<{C`3fR`4F4KaDwA(s~zsyzk&wBvn- zYR9xhmwq$caU68<>KsG8(ct@PFBlrk0e)V7*U<2-dq~*c-_ZOw@In2qhJl-@$2mCjBnxX4?=nb)4ZWnDa^w2}jHvZJmbHjS< zcYi~lC%%9kdeG3p805uT!^@}gNqlyrVasc2hbL*nf7hJEMa z!8fN3`$we^Z5wX*oMMh z$%ZSbptsE?!_~s=B#x+V_%jLn<2_;c6aK6)ZD%x}!bcK?(wqHC=O+zHF%cHQ04cU}VgBd$f) zKac%uSTDMPJqPl1WOO6MF2#wO=$7k7Ag;Y9I{tagyDu(Ux)c4I^oYLKJcfibjic{f zhyDHVeDr|gOKxm|3H&b@mt^h~Sh{QH3?-)qs%vG+iZ_mB2Gjs1G| zo@noK;N{e@Xzzx)BwQ|!F6$0`(fsA;@*dwKpAgSmaav;ZL!SfAs{^8EywH%u-p!*I zA9)ISm1)sW{~PmOy%7EEao{_ree{~m86@0&Ao`uRUq;-$cJ#X!Ar&Y z_h}b>ndyl~_eEcM2Xgoqmr?WPW)h4)7`0Piue{aSXxMQd_f!w+dyVjLtvUu=2B zn0XERu)d)&XLn7aM^bnzjK65i?Fubqhk|3f82_83)%;a zc`qG<9iCzw_XFfX>qExkH-XphY8a>VSWdKPopH+9JCJYMY@B)K4e;G5anpO61- zTv}p>oZMu5=Ij^}@11X4(eW|~;@`$qPg_X1v$b*c+o12JKN#0Gz_=G`8rN;93q7#h zxbDzq&|w4P`o{(EMTzmXJk0O18DC?3e|EZY>#wkjE}t^K^E2>f_|5oktz)1AkMZ3F zKG;t=aywfz?uqxoUv(PyZ0U!1da`l94{|-}McxXp-^E+;xfRBbUPZj3)#Jv`CTxM- zA{dV%H%3`0#%~Hik29V%p6QA4%UT)F^^QjT`n>U6W&-%7qw!oG`+cMF{FPV|g{E@5 z@LS_=z_;kwV7#P-UDA_`m)m2%pZv!7$0^vA!kfk`38%sLNye)qF2lY%Y5cRd261VN z@z1aDd&M|`u1spSTY_l(xmIu-K`pJhsT2>bBj z7p8;?j32keB=v0w|7o{LT5yqsM7ybtu!^N@O>IukM7-cZQy0h=%I$6HG1En~@C#GY zi0z0oEHd?eCmQ+LcX%r-I&13F)J5W$`KEr(!H5sNZW_3{6!Y~r4PtrO4G;2G7`?@m zIvaQ$W-w)MItV|hrOBC(dB2}!n)*!^31_vY1-)k>&v6LtY2-y8lG{z|O^e6WhCi|2 zw3zif`jctdag6KUV|s4wYNBczP0#-hxca?sS~adQ33qHTz3`oxXvIpo{j{rTZN&!I zJ9A9yTW=>JE5o$mevI>E1Jg^~K2I~f{4V5VYN=_8QhlWJa#(tKEZ<+IE?aRR>+n zc+YgQ2+u!#-1Os@7fI~&u<2A|w2wbxIyE61{%0@KnJv(xS4NtC@@*sGfn}x(+W}X% z3f>CO{AK#rE0AA5n@qnA*nxfc!1TvY^N?36GSfBCNB{54;({8;Hytr+4jv#{m1fqB zYfs|bBD3L(JD~@DGaE-&AnvokY;89N_R%VHwTs9@XS6iejCvLLPBGt^wjK8CC3C&^ ztoBLdYoZWiF+<((T__+z@ zVQVuWC!RKs7zKHyHJe8dxCHt0xH+pJ3I6|=X2+84@MoVg=VdGdovt$Hmo$N&P;4Ie z4&ZNn*zCpg!h^lczPwHNU2C2w;`w=Go_K8;iSu0MSxrD+IaAED4Orj&@#fhNg3ec; zG|!n_4nJXodHxjOo5=hqql0Cs<|if`hhO@Uc}ed*B-HxGysQQIaN`p5Q=5J#ap^1O zmD}zBJ?8ROoY%s<$^v;}-DF-P?nfS~nR(5!*ANdrW!}K_u z2b$j)QX6@qBJ;baenA}QNAr$8(06q{Gk;*+gZO_Z^9OOD*Y{4DcQ@Sxd#=#De}x5k z%zEZe5dWe2TJskNKzB{=G#{LfeR%2@^H=v-NH~~c{&qIT-?PB{{Z8!L3ro$%e}Me% zbjEz{b=bf9KjrqRIP>}A7vVoIGXMHo65{lN`D$y7|F0G1zh3(a^w!0E{m3ZHzal1T z)0eQ{y)l~cDUfeJ#%TKb6v-O((jZVdL}+5z5*UQc`Z-2>$8NBc{n^;CtSEG0i^*oz$xl6W6jS^?flTnf|CrpiN@ED znT7b4FzuI^`ArrgKYTLg(HYl~$J-RMY$Evj!woSjy$g|7%ZhpVt47F&_KtZYt|9yb zL(H~UKY+inFlKwN>m)w#ub5qTKrS6Q9<%!y7vd+M$L#*-I}#qEn0@BOB$|t3J~KeS z#I1|@ywfzq`GxYCs|CO7y5dq#dI2W zW6etzYp+wFv;LMENhcsbU$fM{3;jF&WV!n*;Hj2mu|+}d)pA-Ip=L;UbAqMuWX%7> zHM!mWn5FgPLqt2KSUSa7z=ywDI&A{{n?JSO+Z6a})7;Xf4EXwdqovE2-H_jGX1Tv7 z@KyHi{X3H{<1Lx_utSD_W65f!L0o2`#s14N@Qu$>kn=I* z+yjV@9<)D9LYGyR z$6Mj~%oi+6I&3Gg&pFF8LjmW20?W#`Ku@o@EHAt|3vtuCEgK6UZysN7d8^(B$o~(p zy!BQh==*2OwxzQ`Kie()KLI_o+F|*)WFd)*$6G#L;6R>isO6L2G0)_0EMFX*34Qvu z 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 + + + + AboutDialog + + + About DB Browser for SQLite + DB Browser for SQLite ã«ã¤ã„㦠+ + + + Version + ãƒãƒ¼ã‚¸ãƒ§ãƒ³ + + + + <html><head/><body><p>DB Browser for SQLite is an open source, freeware visual tool used to create, design and edit SQLite database files.</p><p>It is bi-licensed under the Mozilla Public License Version 2, as well as the GNU General Public License Version 3 or later. You can modify or redistribute it under the conditions of these licenses.</p><p>See <a href="http://www.gnu.org/licenses/gpl.html">http://www.gnu.org/licenses/gpl.html</a> and <a href="https://www.mozilla.org/MPL/2.0/index.txt">https://www.mozilla.org/MPL/2.0/index.txt</a> for details.</p><p>For more information on this program please visit our website at: <a href="http://sqlitebrowser.org">http://sqlitebrowser.org</a></p><p><span style=" font-size:small;">This software uses the GPL/LGPL Qt Toolkit from </span><a href="http://qt-project.org/"><span style=" font-size:small;">http://qt-project.org/</span></a><span style=" font-size:small;"><br/>See </span><a href="http://qt-project.org/doc/qt-5/licensing.html"><span style=" font-size:small;">http://qt-project.org/doc/qt-5/licensing.html</span></a><span style=" font-size:small;"> for licensing terms and information.</span></p><p><span style=" font-size:small;">It also uses the Silk icon set by Mark James licensed under a Creative Commons Attribution 2.5 and 3.0 license.<br/>See </span><a href="http://www.famfamfam.com/lab/icons/silk/"><span style=" font-size:small;">http://www.famfamfam.com/lab/icons/silk/</span></a><span style=" font-size:small;"> for details.</span></p></body></html> + <html><head/><body><p>DB Browser for SQLite 㯠SQLite データベースを作æˆã€ãƒ‡ã‚¶ã‚¤ãƒ³ã€ç·¨é›†ã§ãã‚‹ã€ã‚ªãƒ¼ãƒ—ンソースã§ç„¡æ–™ã®ãƒ´ã‚£ã‚¸ãƒ¥ã‚¢ãƒ«ãƒ„ールã§ã™ã€‚</p><p>ã“ã®ã‚½ãƒ•トウェア㯠Mozilla Public License Version 2 㨠the GNU General Public License Version 3 (ã‚‚ã—ãã¯ãれ以é™ã®ã‚‚ã®) ã®2ã¤ã§ãƒ©ã‚¤ã‚»ãƒ³ã‚¹ã•れã¦ã„ã¾ã™ã€‚ã‚ãªãŸã¯ã“れらã®ãƒ©ã‚¤ã‚»ãƒ³ã‚¹ã®æ¡ä»¶ã®ä¸‹ã§ã“ã®ã‚½ãƒ•トウェアを変更ã€ã‚‚ã—ãã¯ã€å†é…布ã§ãã¾ã™ã€‚</p><p>詳細㯠<a href="http://www.gnu.org/licenses/gpl.html">http://www.gnu.org/licenses/gpl.html</a> 㨠<a href="https://www.mozilla.org/MPL/2.0/index.txt">https://www.mozilla.org/MPL/2.0/index.txt</a> ã‚’ã”覧ãã ã•ã„。</p><p>ã“ã®ãƒ—ログラムã®ã•らãªã‚‹æƒ…å ±ã¯ã€ç§ãŸã¡ã®ã‚¦ã‚§ãƒ–サイトをã”覧ãã ã•ã„。: <a href="http://sqlitebrowser.org">http://sqlitebrowser.org</a></p><p><span style=" font-size:small;">ã“ã®ã‚½ãƒ•トウェア㯠GPL/LGPL Qt Toolkit を使用ã—ã¦ã„ã¾ã™ã€‚ </span><a href="http://qt-project.org/"><span style=" font-size:small;">http://qt-project.org/</span></a><span style=" font-size:small;"><br/>ライセンスæ¡é …や情報㯠</span><a href="http://qt-project.org/doc/qt-5/licensing.html"><span style=" font-size:small;">http://qt-project.org/doc/qt-5/licensing.html</span></a><span style=" font-size:small;"> ã‚’ã”覧ãã ã•ã„。</span></p><p><span style=" font-size:small;">ã¾ãŸã€ Mark James ã® Silk icon set ã‚’ Creative Commons Attribution 2.5 and 3.0 license ã®å…ƒã§ä½¿ç”¨ã—ã¦ã„ã¾ã™ã€‚<br/>詳細㯠</span><a href="http://www.famfamfam.com/lab/icons/silk/"><span style=" font-size:small;">http://www.famfamfam.com/lab/icons/silk/</span></a><span style=" font-size:small;"> ã‚’ã”覧ãã ã•ã„。</span></p></body></html> + + + + AddRecordDialog + + + Add New Record + æ–°ã—ã„レコードを追加 + + + + Enter values for the new record considering constraints. Fields in bold are mandatory. + 制約を考慮ã—ã¦æ–°ã—ã„レコードã«å€¤ã‚’入力ã—ã¾ã™ã€‚太字ã®ãƒ•ィールドã¯å¿…é ˆã§ã™ã€‚ + + + + In the Value column you can specify the value for the field identified in the Name column. The Type column indicates the type of the field. Default values are displayed in the same style as NULL values. + 「値ã€åˆ—ã§ã¯ã€ã€Œåå‰ã€åˆ—ã§è­˜åˆ¥ã•れãŸãƒ•ィールドã®å€¤ã‚’指定ã§ãã¾ã™ã€‚「データ型ã€åˆ—ã¯ãƒ•ィールドã®ãƒ‡ãƒ¼ã‚¿åž‹ã‚’示ã—ã¾ã™ã€‚ デフォルト値ã¯NULL値ã¨åŒã˜ã‚¹ã‚¿ã‚¤ãƒ«ã§è¡¨ç¤ºã•れã¾ã™ã€‚ + + + + Name + åå‰ + + + + Type + データ型 + + + + Value + 値 + + + + Values to insert. Pre-filled default values are inserted automatically unless they are changed. + 挿入ã™ã‚‹å€¤ã€‚変更ã•れãªã„é™ã‚Šã€äº‹å‰å…¥åŠ›ã•れãŸãƒ‡ãƒ•ォルト値ãŒè‡ªå‹•çš„ã«æŒ¿å…¥ã•れã¾ã™ã€‚ + + + + When you edit the values in the upper frame, the SQL query for inserting this new record is shown here. You can edit manually the query before saving. + 上ã®ãƒ•レームã§å€¤ã‚’編集ã™ã‚‹ã¨ã€ã“ã®æ–°ã—ã„レコードを挿入ã™ã‚‹ SQL クエリーãŒã“ã“ã«è¡¨ç¤ºã•れã¾ã™ã€‚ä¿å­˜ã™ã‚‹å‰ã«ã“ã®ã‚¯ã‚¨ãƒªãƒ¼ã‚’手動ã§ç·¨é›†ã§ãã¾ã™ã€‚ + + + + <html><head/><body><p><span style=" font-weight:600;">Save</span> will submit the shown SQL statement to the database for inserting the new record.</p><p><span style=" font-weight:600;">Restore Defaults</span> will restore the initial values in the <span style=" font-weight:600;">Value</span> column.</p><p><span style=" font-weight:600;">Cancel</span> will close this dialog without executing the query.</p></body></html> + <html><head/><body><p><span style=" font-weight:600;">ä¿å­˜</span>ã¯è¡¨ç¤ºã•れã¦ã„ã‚‹æ–°ã—ã„レコードを挿入ã™ã‚‹SQL文をデータベースã«é©ç”¨ã—ã¾ã™ã€‚</p><p><span style=" font-weight:600;">ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã«æˆ»ã™</span>ã¯<span style=" font-weight:600;">「値ã€</span>åˆ—ã‚’åˆæœŸå€¤ã«æˆ»ã—ã¾ã™ã€‚</p><p><span style=" font-weight:600;">キャンセル</span>ã¯ã‚¯ã‚¨ãƒªãƒ¼ã‚’実行ã›ãšã«ãƒ€ã‚¤ã‚¢ãƒ­ã‚°ã‚’é–‰ã˜ã¾ã™ã€‚</p></body></html> + + + + Auto-increment + + 自動増加 + + + + + Unique constraint + + ä¸€æ„æ€§åˆ¶ç´„ + + + + + Check constraint: %1 + + 検査誓約: %1 + + + + + Foreign key: %1 + + 外部キー: %1 + + + + + Default value: %1 + + デフォルト値: %1 + + + + + Error adding record. Message from database engine: + +%1 + レコード追加ã§ã‚¨ãƒ©ãƒ¼ã€‚データベースエンジンã‹ã‚‰ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸: + +%1 + + + + Are you sure you want to restore all the entered values to their defaults? + 入力ã—ãŸå€¤ã‚’ã™ã¹ã¦ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã«æˆ»ã—ã¾ã™ã‹? + + + + Application + + + Possible command line arguments: + 使用å¯èƒ½ãªã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³å¼•æ•°: + + + + Usage: %1 [options] [<database>|<project>] + + ä½¿ã„æ–¹: %1 [オプション] [<DB>|<プロジェクト>] + + + + + -h, --help Show command line options + -h, --help コマンドラインã®ã‚ªãƒ—ションを表示 + + + + -q, --quit Exit application after running scripts + -q, --quit スクリプト実行後ã«ã‚¢ãƒ—リケーションを終了 + + + + -s, --sql <file> Execute this SQL file after opening the DB + -s, --sql <ファイル> DBã‚’é–‹ã„ãŸå¾Œã€ã“ã®SQLファイルを実行 + + + + -t, --table <table> Browse this table after opening the DB + -t, --table <テーブル> DBã‚’é–‹ã„ãŸå¾Œã“ã®ãƒ†ãƒ¼ãƒ–ルを閲覧 + + + + -R, --read-only Open database in read-only mode + -R, --read-only 読ã¿å–り専用モードã§ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã‚’é–‹ã + + + + -o, --option <group>/<setting>=<value> + -o, --option <グループ>/<設定>=<値> + + + + Run application with this setting temporarily set to value + 一時的ã«ã“ã®å€¤ã‚’設定ã—ã¦ã‚¢ãƒ—リケーションを実行 + + + + -O, --save-option <group>/<setting>=<value> + -O, --save-option <グループ>/<設定>=<値> + + + + Run application saving this value for this setting + ã“ã®å€¤ã®è¨­å®šã‚’ä¿å­˜ã—ã¦ã‚¢ãƒ—リケーションを実行 + + + + -v, --version Display the current version + -v, --version ç¾åœ¨ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚’表示 + + + + <database> Open this SQLite database + <データベース> ã“ã®SQLiteデータベースを開ã + + + + <project> Open this project file (*.sqbpro) + <プロジェクト> ã“ã®ãƒ—ロジェクトファイル(*.sqbpro)ã‚’é–‹ã + + + + The -s/--sql option requires an argument + -s/--sql オプションã¯å¼•æ•°ãŒå¿…è¦ã§ã™ + + + + The file %1 does not exist + ファイル %1 ãŒå­˜åœ¨ã—ã¾ã›ã‚“ + + + + The -t/--table option requires an argument + -t/--table オプションã¯å¼•æ•°ãŒå¿…è¦ã§ã™ + + + + The -o/--option and -O/--save-option options require an argument in the form group/setting=value + -o/--option 㨠-O/--save-optionオプション㯠グループ/設定=値 ã®å½¢å¼ã§å¼•æ•°ãŒå¿…è¦ã§ã™ + + + + SQLite Version + SQLite ãƒãƒ¼ã‚¸ãƒ§ãƒ³ + + + + SQLCipher Version %1 (based on SQLite %2) + SQLCipher ãƒãƒ¼ã‚¸ãƒ§ãƒ³ %1 (SQLite %2 ãŒãƒ™ãƒ¼ã‚¹) + + + + DB Browser for SQLite Version %1. + DB Browser for SQLite ãƒãƒ¼ã‚¸ãƒ§ãƒ³ %1. + + + + Built for %1, running on %2 + %1 å‘ã‘ビルド, %2 ã§å‹•作中 + + + + Qt Version %1 + Qt ãƒãƒ¼ã‚¸ãƒ§ãƒ³ %1 + + + + Invalid option/non-existant file: %1 + 䏿­£ãªã‚ªãƒ—ション/存在ã—ãªã„ファイルã§ã™: %1 + + + + CipherDialog + + + SQLCipher encryption + SQLCipher æš—å·åŒ– + + + + &Password + パスワード(&P) + + + + &Reenter password + パスワードã®å†å…¥åŠ›(&R) + + + + Passphrase + パスフレーズ + + + + Raw key + 生ã®ã‚­ãƒ¼ + + + + Encr&yption settings + æš—å·åŒ–設定(&Y) + + + + SQLCipher &3 defaults + SQLCipher 3 デフォルト(&3) + + + + SQLCipher &4 defaults + SQLCipher 4 デフォルト(&4) + + + + Custo&m + カスタム(&M) + + + + Page si&ze + ページサイズ(&Z) + + + + &KDF iterations + KDFå復回数(&K) + + + + HMAC algorithm + HMACアルゴリズム + + + + KDF algorithm + KDFアルゴリズム + + + + Plaintext Header Size + プレーンテキストヘッダーサイズ + + + + Please set a key to encrypt the database. +Note that if you change any of the other, optional, settings you'll need to re-enter them as well every time you open the database file. +Leave the password fields empty to disable the encryption. +The encryption process might take some time and you should have a backup copy of your database! Unsaved changes are applied before modifying the encryption. + データベースを暗å·åŒ–ã™ã‚‹ã‚­ãƒ¼ã‚’設定ã—ã¦ãã ã•ã„。 +ãã®ã»ã‹ã®ä»»æ„ã®è¨­å®šã‚’変更ã™ã‚‹ã¨ã€ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ãƒ•ァイルを開ãã¨ãã¯æ¯Žå›žå†å…¥åŠ›ãŒå¿…è¦ã«ãªã‚‹ã“ã¨ã«æ³¨æ„ã—ã¦ãã ã•ã„。 +æš—å·åŒ–を無効ã«ã™ã‚‹ã«ã¯ãƒ‘スワード欄を空白ã«ã—ã¾ã™ã€‚ +æš—å·åŒ–工程ã«ã¯å°‘ã—æ™‚é–“ãŒã‹ã‹ã‚‹ã§ã—ょã†ã€‚データベースã®ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—を作æˆã™ã‚‹ã¹ãã§ã™! ä¿å­˜ã—ã¦ã„ãªã„å¤‰æ›´ã¯æš—å·åŒ–ã®å‰ã«å映ã•れã¾ã™ã€‚ + + + + Please enter the key used to encrypt the database. +If any of the other settings were altered for this database file you need to provide this information as well. + ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã®æš—å·åŒ–ã«ä½¿ç”¨ã™ã‚‹ã‚­ãƒ¼ã‚’入力ã—ã¦ãã ã•ã„。 +ã“ã®ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ãƒ•ァイルã®ä»–ã®è¨­å®šãŒå¤‰æ›´ã•れãŸå ´åˆã¯ã€ã“ã®æƒ…報も指定ã™ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚ + + + + ColumnDisplayFormatDialog + + + Choose display format + 表示書å¼ã‚’é¸æŠž + + + + Display format + è¡¨ç¤ºæ›¸å¼ + + + + Choose a display format for the column '%1' which is applied to each value prior to showing it. + カラム '%1' ã®è¡¨ç¤ºå½¢å¼ã‚’é¸æŠžã—ã¦ãã ã•ã„。ã“れã¯è¡¨ç¤ºå‰ã«å„値ã«é©ç”¨ã•れã¾ã™ã€‚ + + + + Default + デフォルト + + + + Decimal number + å進数 + + + + Exponent notation + 指数表記 + + + + Hex blob + å六進Blob + + + + Hex number + å六進数 + + + + Octal number + 八進数 + + + + Round number + 概数 + + + + Apple NSDate to date + Apple NSDate を日付㫠+ + + + Java epoch (milliseconds) to date + Java エãƒãƒƒã‚¯ (ミリ秒) を日付㫠+ + + + .NET DateTime.Ticks to date + .NET DateTime.Ticks を日付㫠+ + + + Julian day to date + ユリウス日を日付㫠+ + + + Unix epoch to date + Unix エãƒãƒƒã‚¯ã‚’日付㫠+ + + + Unix epoch to local time + Unix エãƒãƒƒã‚¯ã‚’地方時㫠+ + + + Windows DATE to date + Windows DATE を日付㫠+ + + + Date as dd/mm/yyyy + 日付(dd/mm/yyyy) + + + + Lower case + å°æ–‡å­— + + + + Upper case + 大文字 + + + + Custom + カスタム + + + + Custom display format must contain a function call applied to %1 + カスタム表示形å¼ã«ã¯ã€%1 ã«é©ç”¨ã•れる関数呼ã³å‡ºã—ãŒå«ã¾ã‚Œã¦ã„ã‚‹å¿…è¦ãŒã‚りã¾ã™ + + + + Error in custom display format. Message from database engine: + +%1 + カスタム表示形å¼ã§ã‚¨ãƒ©ãƒ¼ã€‚データベースエンジンã‹ã‚‰ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸: + +%1 + + + + Custom display format must return only one column but it returned %1. + カスタム表示形å¼ã¯ãŸã 1ã¤ã®ã‚«ãƒ©ãƒ ã‚’è¿”ã™å¿…è¦ãŒã‚りã¾ã™ãŒã€%1 ãŒè¿”ã£ã¦ãã¾ã—ãŸã€‚ + + + + CondFormatManager + + + Conditional Format Manager + æ¡ä»¶ä»˜ã書å¼ç®¡ç† + + + + This dialog allows creating and editing conditional formats. Each cell style will be selected by the first accomplished condition for that cell data. Conditional formats can be moved up and down, where those at higher rows take precedence over those at lower. Syntax for conditions is the same as for filters and an empty condition applies to all values. + ã“ã®ãƒ€ã‚¤ã‚¢ãƒ­ã‚°ã§æ¡ä»¶ä»˜ã書å¼ã®ä½œæˆã¨ç·¨é›†ãŒã§ãã¾ã™ã€‚ãれãžã‚Œã®ã‚»ãƒ«ã‚¹ã‚¿ã‚¤ãƒ«ã¯ã‚»ãƒ«ã®ãƒ‡ãƒ¼ã‚¿ãŒæœ€åˆã«ä¸€è‡´ã—ãŸæ¡ä»¶ã®ã‚‚ã®ãŒé¸æŠžã•れã¾ã™ã€‚æ¡ä»¶ä»˜ã書å¼ã¯ä¸Šä¸‹ã«ç§»å‹•ã§ãã€ä¸Šã®è¡Œã¯ä¸‹ã®è¡Œã«å„ªå…ˆã—ã¾ã™ã€‚æ¡ä»¶ã®æ§‹æ–‡ã¯ãƒ•ィルターã¨åŒã˜ã§ã€ç©ºç™½ã®æ¡ä»¶ã¯å…¨ã¦ã®å€¤ã«é©ç”¨ã•れã¾ã™ã€‚ + + + + Add new conditional format + æ–°ã—ã„æ¡ä»¶ä»˜ã書å¼ã‚’追加ã—ã¾ã™ + + + + &Add + 追加(&A) + + + + Remove selected conditional format + é¸æŠžã—ãŸæ¡ä»¶ä»˜ã書å¼ã‚’削除ã—ã¾ã™ + + + + &Remove + 削除(&R) + + + + Move selected conditional format up + é¸æŠžã—ãŸæ¡ä»¶ä»˜ã書å¼ã‚’上ã¸ç§»å‹•ã—ã¾ã™ + + + + Move &up + 上ã¸(&U) + + + + Move selected conditional format down + é¸æŠžã—ãŸæ¡ä»¶ä»˜ã書å¼ã‚’下ã¸ç§»å‹•ã—ã¾ã™ + + + + Move &down + 下ã¸(&D) + + + + Foreground + 剿™¯ + + + + Text color + 文字色 + + + + Background + 背景 + + + + Background color + 背景色 + + + + Font + フォント + + + + Size + サイズ + + + + Bold + 太字 + + + + Italic + イタリック + + + + Underline + 下線 + + + + Alignment + é…ç½® + + + + Condition + æ¡ä»¶ + + + + + Click to select color + クリックã§è‰²ã‚’é¸æŠž + + + + Are you sure you want to clear all the conditional formats of this field? + 本当ã«ã“ã®ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã®æ¡ä»¶ä»˜ã書å¼ã‚’ã™ã¹ã¦å‰Šé™¤ã—ã¾ã™ã‹? + + + + DBBrowserDB + + + This database has already been attached. Its schema name is '%1'. + ã“ã®ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã«ã¯æ—¢ã«æŽ¥ç¶šã—ã¦ã„ã¾ã™ã€‚ã“ã®ã‚¹ã‚­ãƒ¼ãƒžã®åå‰ã¯ '%1' ã§ã™ã€‚ + + + + Please specify the database name under which you want to access the attached database + 接続ã—ãŸãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã¸ã®ã‚¢ã‚¯ã‚»ã‚¹æ™‚ã«ä½¿ç”¨ã™ã‚‹ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹åを指定ã—ã¦ãã ã•ã„ + + + + Invalid file format + 䏿­£ãªãƒ•ァイルフォーマット + + + + Do you really want to close this temporary database? All data will be lost. + 本当ã«ã“ã®ä¸€æ™‚データベースを閉ã˜ã¾ã™ã‹? ã™ã¹ã¦ã®ãƒ‡ãƒ¼ã‚¿ã¯å–ªå¤±ã—ã¾ã™ã€‚ + + + + Do you want to save the changes made to the database file %1? + データベースファイル '%1' ã¸ã®å¤‰æ›´ã‚’ä¿å­˜ã—ã¾ã™ã‹? + + + + Database didn't close correctly, probably still busy + ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ãŒæ­£å¸¸ã«é–‰ã˜ã‚‰ã‚Œã¾ã›ã‚“ã§ã—ãŸã€‚多分ã¾ã ãƒ“ジー状態ã§ã™ + + + + The database is currently busy: + データベースã¯ç¾åœ¨ãƒ“ジー状態ã§ã™: + + + + Do you want to abort that other operation? + ä»–ã®æ“作を中断ã—ã¾ã™ã‹? + + + + Exporting database to SQL file... + データベースをSQLファイルã«ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆ... + + + + + Cancel + キャンセル + + + + + No database file opened + データベースファイルを開ã„ã¦ã„ã¾ã›ã‚“ + + + + Executing SQL... + SQLを実行... + + + + Action cancelled. + æ“作をキャンセルã—ã¾ã—ãŸã€‚ + + + + + Error in statement #%1: %2. +Aborting execution%3. + ã“ã®æ–‡ã§ã‚¨ãƒ©ãƒ¼ #%1: %2。 +実行を中断%3。 + + + + + and rolling back + ロールãƒãƒƒã‚¯ã—ã¾ã—㟠+ + + + didn't receive any output from %1 + %1 ã‹ã‚‰å‡ºåŠ›ã‚’å¾—ã‚‰ã‚Œã¾ã›ã‚“ã§ã—㟠+ + + + could not execute command: %1 + コマンド: %1 を実行ã§ãã¾ã›ã‚“ã§ã—㟠+ + + + Cannot delete this object + ã“ã®ã‚ªãƒ–ジェクトã¯å‰Šé™¤ã§ãã¾ã›ã‚“ + + + + Cannot set data on this object + ã“ã®ã‚ªãƒ–ジェクトã«ãƒ‡ãƒ¼ã‚¿è¨­å®šã¯ã§ãã¾ã›ã‚“ + + + + + A table with the name '%1' already exists in schema '%2'. + åå‰ãŒ '%1' ã®ãƒ†ãƒ¼ãƒ–ルã¯ã‚¹ã‚­ãƒ¼ãƒž '%2' ã«æ—¢ã«å­˜åœ¨ã—ã¾ã™ã€‚ + + + + No table with name '%1' exists in schema '%2'. + スキーマ '%2' ã«åå‰ãŒ '%1' ã®ãƒ†ãƒ¼ãƒ–ルãŒã‚りã¾ã›ã‚“。 + + + + + Cannot find column %1. + カラム %1 ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。 + + + + Creating savepoint failed. DB says: %1 + セーブãƒã‚¤ãƒ³ãƒˆã®ä½œæˆã«å¤±æ•—。DBã®å応: %1 + + + + Renaming the column failed. DB says: +%1 + カラムå変更ã«å¤±æ•—。DBã®å応: +%1 + + + + + Releasing savepoint failed. DB says: %1 + セーブãƒã‚¤ãƒ³ãƒˆã®è§£æ”¾ã«å¤±æ•—。DBã®å応: %1 + + + + Creating new table failed. DB says: %1 + æ–°ã—ã„テーブルã®ä½œæˆã«å¤±æ•—。DBã®å応: %1 + + + + Copying data to new table failed. DB says: +%1 + æ–°ã—ã„テーブルã¸ã®ãƒ‡ãƒ¼ã‚¿ã®ã‚³ãƒ”ーã«å¤±æ•—。DBã®å応: +%1 + + + + Deleting old table failed. DB says: %1 + å¤ã„テーブルã®å‰Šé™¤ã«å¤±æ•—。DBã®å応: %1 + + + + Error renaming table '%1' to '%2'. +Message from database engine: +%3 + テーブルåã® '%1' ã‹ã‚‰ '%2' ã¸ã®å¤‰æ›´ã§ã‚¨ãƒ©ãƒ¼ã€‚ +データベースエンジンã‹ã‚‰ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸: +%3 + + + + could not get list of db objects: %1 + DBオブジェクトã®ä¸€è¦§ã‚’å–å¾—ã§ãã¾ã›ã‚“: %1 + + + + Restoring some of the objects associated with this table failed. This is most likely because some column names changed. Here's the SQL statement which you might want to fix and execute manually: + + + ã“ã®ãƒ†ãƒ¼ãƒ–ルã«é–¢é€£ã™ã‚‹ã‚ªãƒ–ジェクトã®å¾©å…ƒã«å¤±æ•—ã—ã¾ã—ãŸã€‚ã“れã¯ãŠãらã一部ã®ã‚«ãƒ©ãƒ åãŒå¤‰æ›´ã•れãŸãŸã‚ã§ã™ã€‚ã“ã®SQL文を手動ã§ä¿®æ­£ã—実行ã—ã¦ãã ã•ã„。 +Restoring some of the objects associated with this table failed. This is most likely because some column names changed. Here's the SQL statement which you might want to fix and execute manually: + + + + + + could not get list of databases: %1 + データベースã®ä¸€è¦§ã‚’å–å¾—ã§ãã¾ã›ã‚“: %1 + + + + Error setting pragma %1 to %2: %3 + プラグマ %1 ã‚’ %2 ã«è¨­å®šæ™‚ã«ã‚¨ãƒ©ãƒ¼: %3 + + + + File not found. + ファイルãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。 + + + + Error loading extension: %1 + æ‹¡å¼µã®èª­ã¿è¾¼ã¿ã§ã‚¨ãƒ©ãƒ¼: %1 + + + + could not get column information + カラム情報ãŒå–å¾—ã§ãã¾ã›ã‚“ã§ã—㟠+ + + + DbStructureModel + + + Name + åå‰ + + + + Object + オブジェクト + + + + Type + データ型 + + + + Schema + スキーマ + + + + Database + データベース + + + + Browsables + 表示å¯èƒ½ + + + + All + ã™ã¹ã¦ + + + + Temporary + 一時 + + + + Tables (%1) + テーブル (%1) + + + + Indices (%1) + インデックス (%1) + + + + Views (%1) + ビュー (%1) + + + + Triggers (%1) + トリガー (%1) + + + + EditDialog + + + Edit database cell + データベースã®ã‚»ãƒ«ã‚’編集 + + + + Mode: + モード: + + + + This is the list of supported modes for the cell editor. Choose a mode for viewing or editing the data of the current cell. + ã“れã¯ã‚µãƒãƒ¼ãƒˆã—ã¦ã„るセル編集モードã®ä¸€è¦§ã§ã™ã€‚ç¾åœ¨ã®ã‚»ãƒ«ãƒ‡ãƒ¼ã‚¿ã®è¡¨ç¤ºä¿®æ­£ã«ä½¿ç”¨ã™ã‚‹ãƒ¢ãƒ¼ãƒ‰ã‚’é¸ã‚“ã§ãã ã•ã„。 + + + + Text + テキスト + + + + RTL Text + RTL テキスト + + + + Binary + ãƒã‚¤ãƒŠãƒªãƒ¼ + + + + + Image + ç”»åƒ + + + + JSON + JSON + + + + XML + XML + + + + + Automatically adjust the editor mode to the loaded data type + 編集モードを読ã¿è¾¼ã‚“ã ãƒ‡ãƒ¼ã‚¿åž‹ã«è‡ªå‹•çš„ã«èª¿æ•´ + + + + This checkable button enables or disables the automatic switching of the editor mode. When a new cell is selected or new data is imported and the automatic switching is enabled, the mode adjusts to the detected data type. You can then change the editor mode manually. If you want to keep this manually switched mode while moving through the cells, switch the button off. + ã“ã®ãƒã‚§ãƒƒã‚¯ãƒœã‚¿ãƒ³ã¯ç·¨é›†ãƒ¢ãƒ¼ãƒ‰ã®è‡ªå‹•切り替ãˆã‚’有効/無効ã«ã—ã¾ã™ã€‚æ–°ã—ã„セルãŒé¸æŠžã•ã‚Œã‚‹ã‹æ–°ã—ã„データãŒã‚¤ãƒ³ãƒãƒ¼ãƒˆã•ã‚ŒãŸæ™‚ã«è‡ªå‹•切り替ãˆãŒæœ‰åйã ã¨ã€æ¤œå‡ºã—ãŸãƒ‡ãƒ¼ã‚¿åž‹ã«ãƒ¢ãƒ¼ãƒ‰ã‚’調整ã—ã¾ã™ã€‚ãã®å¾Œã€ç·¨é›†ãƒ¢ãƒ¼ãƒ‰ã¯æ‰‹å‹•ã§å¤‰æ›´ã§ãã¾ã™ã€‚セル間ã®ç§»å‹•æ™‚ã«æ‰‹å‹•ã§å¤‰æ›´ã—ãŸãƒ¢ãƒ¼ãƒ‰ã‚’ç¶­æŒã—ãŸã„ãªã‚‰ã°ã€ã“ã®ãƒœã‚¿ãƒ³ã‚’オフã«ã—ã¾ã™ã€‚ + + + + Auto-switch + 自動切替 + + + + The text editor modes let you edit plain text, as well as JSON or XML data with syntax highlighting, automatic formatting and validation before saving. + +Errors are indicated with a red squiggle underline. + ã“ã®ç·¨é›†ãƒ¢ãƒ¼ãƒ‰ã¯æ§‹æ–‡å¼·èª¿ã—ã¦ã€ãƒ—レーンテキストã ã‘ã§ãªãã€JSONã‚„XMLデータを編集ã—ã‚„ã™ãã—ã¾ã™ã€‚ä¿å­˜å‰ã«è‡ªå‹•çš„ã«æ•´å½¢ã¨æ¤œè¨¼ã‚’ã—ã¾ã™ã€‚ + +エラーã¯èµ¤ã„ç ´ç·šã§ç¤ºã•れã¾ã™ã€‚ + + + + This Qt editor is used for right-to-left scripts, which are not supported by the default Text editor. The presence of right-to-left characters is detected and this editor mode is automatically selected. + ã“ã®Qtエディターã¯å³æ›¸ãã®æ–‡ç« ã«ä½¿ã‚れã¾ã™ã€‚ã“れã¯ãƒ‡ãƒ•ォルトã®ãƒ†ã‚­ã‚¹ãƒˆã‚¨ãƒ‡ã‚£ã‚¿ãƒ¼ã§ã¯ã‚µãƒãƒ¼ãƒˆã•れã¦ã„ã¾ã›ã‚“ã€‚å³æ›¸ãã®æ–‡å­—ã®å­˜åœ¨ãŒæ¤œçŸ¥ã•れるã¨ã€ã“ã®ã‚¨ãƒ‡ã‚£ã‚¿ãƒ¼ãƒ¢ãƒ¼ãƒ‰ãŒè‡ªå‹•çš„ã«é¸æŠžã•れã¾ã™ã€‚ + + + + Apply data to cell + セルã«ãƒ‡ãƒ¼ã‚¿ã‚’é©ç”¨ + + + + Open preview dialog for printing the data currently stored in the cell + ç¾åœ¨ã‚»ãƒ«ã«ã‚るデータをå°åˆ·ã™ã‚‹ãƒ—レビューダイアログを開ã + + + + Auto-format: pretty print on loading, compact on saving. + 自動整形: ãれã„ã«è¡¨ç¤ºã€åœ§ç¸®ã—ã¦ä¿å­˜ã€‚ + + + + When enabled, the auto-format feature formats the data on loading, breaking the text in lines and indenting it for maximum readability. On data saving, the auto-format feature compacts the data removing end of lines, and unnecessary whitespace. + 有効ã«ã™ã‚‹ã¨ã€è‡ªå‹•整形機能ã¯èª­ã¿è¾¼ã¿æ™‚ã«ãƒ‡ãƒ¼ã‚¿ã®å¯èª­æ€§ã‚’高ã‚る改行ã¨ã‚¤ãƒ³ãƒ‡ãƒ³ãƒˆã‚’加ãˆã¾ã™ã€‚データã®ä¿å­˜æ™‚ã«ã¯ã€æ”¹è¡Œã¨ä¸è¦ãªç©ºç™½ã‚’å–り除ãデータを圧縮ã—ã¾ã™ã€‚ + + + + Word Wrap + ワードラップ + + + + Wrap lines on word boundaries + å˜èªžå˜ä½ã§ãƒ¯ãƒ¼ãƒ‰ãƒ©ãƒƒãƒ— + + + + + Open in default application or browser + デフォルトã®ã‚¢ãƒ—リケーションã‹ãƒ–ラウザーã§é–‹ã + + + + Open in application + アプリケーションã§é–‹ã + + + + The value is interpreted as a file or URL and opened in the default application or web browser. + 値ã¯ãƒ•ァイルã‹URLã¨è§£é‡ˆã•れã€ãƒ‡ãƒ•ォルトã®ã‚¢ãƒ—リケーションã‹ã‚¦ã‚§ãƒ–ブラウザã§é–‹ã‹ã‚Œã¾ã™ã€‚ + + + + Save file reference... + ファイルå‚ç…§ã‚’ä¿å­˜... + + + + Save reference to file + å‚照をファイルã«ä¿å­˜ + + + + + Open in external application + 外部ã®ã‚¢ãƒ—リケーションã§é–‹ã + + + + Autoformat + 自動整形 + + + + &Export... + エクスãƒãƒ¼ãƒˆ(&E)... + + + + + &Import... + インãƒãƒ¼ãƒˆ(&I)... + + + + + Import from file + ファイルã‹ã‚‰ã‚¤ãƒ³ãƒãƒ¼ãƒˆ + + + + + Opens a file dialog used to import any kind of data to this database cell. + ã“ã®ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã®ã‚»ãƒ«ã«ä»»æ„ã®ç¨®é¡žã®ãƒ‡ãƒ¼ã‚¿ã‚’インãƒãƒ¼ãƒˆã™ã‚‹ãƒ•ァイルダイアログを開ãã¾ã™ã€‚ + + + + Export to file + ファイルã¸ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆ + + + + Opens a file dialog used to export the contents of this database cell to a file. + ã“ã®ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã®ã‚»ãƒ«ã®å†…容をファイルã«ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆã™ã‚‹ãƒ•ァイルダイアログを開ãã¾ã™ã€‚ + + + + Erases the contents of the cell + セルã®å†…容を削除 + + + + Set as &NULL + NULLã«è¨­å®š(&N) + + + + This area displays information about the data present in this database cell + ã“ã®ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã®ã‚»ãƒ«ã«å­˜åœ¨ã™ã‚‹ãƒ‡ãƒ¼ã‚¿ã®æƒ…報をã“ã“ã«è¡¨ç¤º + + + + Type of data currently in cell + ç¾åœ¨ã‚»ãƒ«ã«ã‚るデータã®ç¨®é¡ž + + + + Size of data currently in table + ç¾åœ¨ãƒ†ãƒ¼ãƒ–ルã«ã‚るデータã®ã‚µã‚¤ã‚º + + + + This button saves the changes performed in the cell editor to the database cell. + ã“ã®ãƒœã‚¿ãƒ³ã¯ã‚¨ãƒ‡ã‚£ã‚¿ãƒ¼ã§è¡Œã‚れãŸå¤‰æ›´ã‚’データベースã®ã‚»ãƒ«ã«ä¿å­˜ã—ã¾ã™ã€‚ + + + + Apply + é©ç”¨ + + + + + Print... + å°åˆ·... + + + + Open preview dialog for printing displayed image + 表示ã•れãŸç”»åƒã‚’å°åˆ·ã™ã‚‹ãƒ—レビューダイアログを開ã + + + + + Ctrl+P + + + + + Open preview dialog for printing displayed text + 表示ã•れãŸãƒ†ã‚­ã‚¹ãƒˆã‚’å°åˆ·ã™ã‚‹ãƒ—レビューダイアログを開ã + + + + Copy Hex and ASCII + å六進数ã¨ASCIIをコピー + + + + Copy selected hexadecimal and ASCII columns to the clipboard + é¸æŠžã—ãŸå六進数ã¨ASCIIã®ã‚«ãƒ©ãƒ ã‚’クリップボードã«ã‚³ãƒ”ー + + + + Ctrl+Shift+C + + + + + + Image data can't be viewed in this mode. + ç”»åƒãƒ‡ãƒ¼ã‚¿ã¯ã“ã®ãƒ¢ãƒ¼ãƒ‰ã§ã¯è¡¨ç¤ºã§ãã¾ã›ã‚“。 + + + + + Try switching to Image or Binary mode. + ç”»åƒ/ãƒã‚¤ãƒŠãƒªãƒ¼ãƒ¢ãƒ¼ãƒ‰ã«åˆ‡ã‚Šæ›¿ãˆã¦ã¿ã¦ãã ã•ã„。 + + + + + Binary data can't be viewed in this mode. + ãƒã‚¤ãƒŠãƒªãƒ¼ãƒ‡ãƒ¼ã‚¿ã¯ã“ã®ãƒ¢ãƒ¼ãƒ‰ã§ã¯è¡¨ç¤ºã§ãã¾ã›ã‚“。 + + + + + Try switching to Binary mode. + ãƒã‚¤ãƒŠãƒªãƒ¼ãƒ¢ãƒ¼ãƒ‰ã«åˆ‡ã‚Šæ›¿ãˆã¦ã¿ã¦ãã ã•ã„。 + + + + + Image files (%1) + ç”»åƒãƒ•ァイル (%1) + + + + Binary files (*.bin) + ãƒã‚¤ãƒŠãƒªãƒ¼ãƒ•ァイル (*.bin) + + + + Choose a file to import + インãƒãƒ¼ãƒˆã™ã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ã‚’é¸æŠž + + + + %1 Image + %1 ç”»åƒ + + + + Choose a filename to export data + エクスãƒãƒ¼ãƒˆãƒ‡ãƒ¼ã‚¿ã®ãƒ•ァイルåã‚’é¸æŠž + + + + Invalid data for this mode + ã“ã®ãƒ¢ãƒ¼ãƒ‰ã§ã¯ä¸æ­£ãªãƒ‡ãƒ¼ã‚¿ + + + + The cell contains invalid %1 data. Reason: %2. Do you really want to apply it to the cell? + セルã«ä¸æ­£ãªãƒ‡ãƒ¼ã‚¿ %1 ãŒã‚りã¾ã™ã€‚ç†ç”±: %2。本当ã«ã‚»ãƒ«ã«é©ç”¨ã—ã¾ã™ã‹? + + + + + Type of data currently in cell: Text / Numeric + ç¾åœ¨ã‚»ãƒ«ã«ã‚るデータã®ç¨®é¡ž: テキスト / 数値 + + + + + + %n character(s) + + %n 文字 + + + + + Type of data currently in cell: %1 Image + ç¾åœ¨ã‚»ãƒ«ã«ã‚るデータã®ç¨®é¡ž: %1 ç”»åƒ + + + + %1x%2 pixel(s) + %1x%2 ピクセル + + + + Type of data currently in cell: NULL + ç¾åœ¨ã‚»ãƒ«ã«ã‚るデータã®ç¨®é¡ž: NULL + + + + + %n byte(s) + + %n ãƒã‚¤ãƒˆ + + + + + Type of data currently in cell: Valid JSON + ç¾åœ¨ã‚»ãƒ«ã«ã‚るデータã®ç¨®é¡ž: æ­£è¦ãªJSON + + + + Type of data currently in cell: Binary + ç¾åœ¨ã‚»ãƒ«ã«ã‚るデータã®ç¨®é¡ž: ãƒã‚¤ãƒŠãƒªãƒ¼ + + + + Couldn't save file: %1. + ファイルをä¿å­˜ã§ãã¾ã›ã‚“: %1. + + + + The data has been saved to a temporary file and has been opened with the default application. You can now edit the file and, when you are ready, apply the saved new data to the cell editor or cancel any changes. + データã¯ä¸€æ™‚ファイルã«ä¿å­˜ã•れã€ãƒ‡ãƒ•ォルトã®ã‚¢ãƒ—リケーションã§é–‹ã‹ã‚Œã¾ã—ãŸã€‚ã™ãã«ãƒ•ァイルを編集ã§ãã€æº–å‚™ãŒã§ããŸã‚‰ã€ä¿å­˜ã—ãŸæ–°ã—ã„データをセルエディターã«é©ç”¨ã™ã‚‹ã‹ã€å¤‰æ›´ã‚’キャンセルã§ãã¾ã™ã€‚ + + + + EditIndexDialog + + + Edit Index Schema + インデックスã®ã‚¹ã‚­ãƒ¼ãƒžã‚’編集 + + + + &Name + åå‰(&N) + + + + &Table + テーブル(&T) + + + + &Unique + 一æ„(&U) + + + + For restricting the index to only a part of the table you can specify a WHERE clause here that selects the part of the table that should be indexed + インデックスをテーブルã®ä¸€éƒ¨ã®ã¿ã«åˆ¶é™ã™ã‚‹å ´åˆã¯ã€ãã®éƒ¨åˆ†ã‚’é¸æŠžã™ã‚‹WHERE節をã“ã“ã«æŒ‡å®šã—ã¾ã™ + + + + Partial inde&x clause + インデックス指定節(&X) + + + + Colu&mns + カラム(&M) + + + + Table column + テーブルã®ã‚«ãƒ©ãƒ  + + + + Type + データ型 + + + + Add a new expression column to the index. Expression columns contain SQL expression rather than column names. + æ–°ã—ã„å¼ã‚«ãƒ©ãƒ ã‚’インデックスã«åŠ ãˆã‚‹ã€‚å¼ã‚«ãƒ©ãƒ ã¯ã‚«ãƒ©ãƒ åã§ãªãSQLå¼ã‚’æŒã¡ã¾ã™ã€‚ + + + + Index column + インデックスカラム + + + + Order + 順番 + + + + Deleting the old index failed: +%1 + å¤ã„インデックスã®å‰Šé™¤ã«å¤±æ•—: +%1 + + + + Creating the index failed: +%1 + インデックスã®ä½œæˆã«å¤±æ•—: +%1 + + + + EditTableDialog + + + Edit table definition + テーブルã®å®šç¾©ã‚’編集 + + + + Table + テーブル + + + + Advanced + 高度ãªè¨­å®š + + + + Without Rowid + Rowidãªã— + + + + Make this a 'WITHOUT rowid' table. Setting this flag requires a field of type INTEGER with the primary key flag set and the auto increment flag unset. + テーブルをrowidãªã—ã§ä½œæˆã—ã¾ã™ã€‚ã“れを設定ã™ã‚‹ã«ã¯ã€ä¸»ã‚­ãƒ¼ã«è¨­å®šã•れãŸè‡ªå‹•増加ãªã—ã®INTEGERフィールドãŒå¿…è¦ã§ã™ã€‚ + + + + Fields + フィールド + + + + Database sche&ma + データベーススキーマ(&M) + + + + Add + 追加 + + + + Remove + 削除 + + + + Move to top + 先頭㸠+ + + + Move up + 上㸠+ + + + Move down + 下㸠+ + + + Move to bottom + 末尾㸠+ + + + + Name + åå‰ + + + + + Type + データ型 + + + + NN + NN + + + + Not null + éžnull + + + + PK + PK + + + + Primary key + 主キー + + + + AI + AI + + + + Autoincrement + 自動増加 + + + + U + U + + + + + + Unique + ä¸€æ„ + + + + Default + デフォルト + + + + Default value + デフォルト値 + + + + + + Check + 検査 + + + + Check constraint + 検査制約 + + + + Collation + ç…§åˆé †åº + + + + + + Foreign Key + 外部キー + + + + Constraints + 制約 + + + + Add constraint + 制約を追加 + + + + Remove constraint + 制約を削除 + + + + Columns + カラム + + + + SQL + SQL + + + + <html><head/><body><p><span style=" font-weight:600; color:#ff0000;">Warning: </span>There is something with this table definition that our parser doesn't fully understand. Modifying and saving this table might result in problems.</p></body></html> + <html><head/><body><p><span style=" font-weight:600; color:#ff0000;">警告: </span>ãƒ†ãƒ¼ãƒ–ãƒ«å®šç¾©ã«æ§‹æ–‡è§£æžã§ããªã„ã‚‚ã®ãŒã‚りã¾ã™ã€‚ã“ã®ãƒ†ãƒ¼ãƒ–ルを変更ã—ä¿å­˜ã™ã‚‹ã¨å•題ãŒèµ·ãã‚‹ã‹ã‚‚ã—れã¾ã›ã‚“。.</p></body></html> + + + + + Primary Key + 主キー + + + + Add a primary key constraint + 主キー制約を追加 + + + + Add a foreign key constraint + 外部キー制約を追加 + + + + Add a unique constraint + ä¸€æ„æ€§åˆ¶ç´„を追加 + + + + Add a check constraint + 検査誓約を追加 + + + + + There can only be one primary key for each table. Please modify the existing primary key instead. + 主キーã¯å„テーブルã«ä¸€ã¤ã ã‘存在ã§ãã¾ã™ã€‚替ã‚ã‚Šã«æ—¢å­˜ã®ä¸»ã‚­ãƒ¼ã‚’変更ã—ã¦ãã ã•ã„。 + + + + Error creating table. Message from database engine: +%1 + テーブル作æˆã§ã‚¨ãƒ©ãƒ¼ã€‚データベースエンジンã‹ã‚‰ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸: +%1 + + + + There already is a field with that name. Please rename it first or choose a different name for this field. + ã“ã®åå‰ã¯æ—¢ã«åˆ¥ã®ãƒ•ィールドã«ä½¿ç”¨ã•れã¦ã„ã¾ã™ã€‚既存ã®ãƒ•ィールドåを変更ã™ã‚‹ã‹ã€åˆ¥ã®åå‰ã‚’付ã‘ã¦ãã ã•ã„。 + + + + This column is referenced in a foreign key in table %1 and thus its name cannot be changed. + ã“ã®ã‚«ãƒ©ãƒ ã¯ãƒ†ãƒ¼ãƒ–ル %1 ã®å¤–部キーã«å‚ç…§ã•れã¦ã„ã‚‹ã®ã§ã€åå‰ã‚’変更ã§ãã¾ã›ã‚“。 + + + + There is at least one row with this field set to NULL. This makes it impossible to set this flag. Please change the table data first. + å°‘ãªãã¨ã‚‚1ã¤ã®è¡Œã§ã“ã®ãƒ•ィールドã«NULLãŒè¨­å®šã•れã¦ã„ã¾ã™ã€‚ãã®ãŸã‚ã€éžNULLを設定ã™ã‚‹ã®ã¯ä¸å¯èƒ½ã§ã™ã€‚å…ˆã«ãƒ†ãƒ¼ãƒ–ルã®ãƒ‡ãƒ¼ã‚¿ã‚’変更ã—ã¦ãã ã•ã„。 + + + + There is at least one row with a non-integer value in this field. This makes it impossible to set the AI flag. Please change the table data first. + å°‘ãªãã¨ã‚‚1ã¤ã®è¡Œã§ã“ã®ãƒ•ィールドã«INTEGERã§ãªã„値ãŒè¨­å®šã•れã¦ã„ã¾ã™ã€‚ãã®ãŸã‚ã€è‡ªå‹•増加を設定ã™ã‚‹ã®ã¯ä¸å¯èƒ½ã§ã™ã€‚å…ˆã«ãƒ†ãƒ¼ãƒ–ルã®ãƒ‡ãƒ¼ã‚¿ã‚’変更ã—ã¦ãã ã•ã„。 + + + + Column '%1' has duplicate data. + + カラム '%1' ã«é‡è¤‡ãƒ‡ãƒ¼ã‚¿ãŒã‚りã¾ã™ã€‚ + + + + + This makes it impossible to enable the 'Unique' flag. Please remove the duplicate data, which will allow the 'Unique' flag to then be enabled. + 一æ„ã«ã™ã‚‹ã®ã¯ä¸å¯èƒ½ã§ã™ã€‚é‡è¤‡ãƒ‡ãƒ¼ã‚¿ã‚’削除ã™ã‚‹ã¨ã€ä¸€æ„ã«ã§ãるよã†ã«ãªã‚Šã¾ã™ã€‚ + + + + Are you sure you want to delete the field '%1'? +All data currently stored in this field will be lost. + 本当ã«ãƒ•ィールド '%1' を削除ã—ã¾ã™ã‹? +ç¾åœ¨ã“ã®ãƒ•ィールドã«ã‚ã‚‹ã™ã¹ã¦ã®ãƒ‡ãƒ¼ã‚¿ã¯å¤±ã‚れã¾ã™ã€‚ + + + + Please add a field which meets the following criteria before setting the without rowid flag: + - Primary key flag set + - Auto increment disabled + rowidã‚’ãªã—ã«ã—ã¦ã€ä»¥ä¸‹ã®æ¡ä»¶ã«åˆã†ãƒ•ィールドを追加ã—ã¦ãã ã•ã„。 + - 主キーã«ã™ã‚‹ + - 自動増加ãªã— + + + + ExportDataDialog + + + Export data as CSV + データをCSVã«ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆ + + + + Tab&le(s) + テーブル(&L) + + + + Colu&mn names in first line + 先頭行をカラムåã«(&M) + + + + Fie&ld separator + フィールド区切り(&L) + + + + , + , + + + + ; + ; + + + + Tab + タブ + + + + | + | + + + + + + Other + ãã®ä»– + + + + &Quote character + 引用符文字(&Q) + + + + " + " + + + + ' + ' + + + + New line characters + 改行文字 + + + + Windows: CR+LF (\r\n) + Windows: CR+LF (\r\n) + + + + Unix: LF (\n) + Unix: LF (\n) + + + + Pretty print + æ•´å½¢ + + + + Export data as JSON + データをJSONã«ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆ + + + + exporting CSV + CSVã«ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆ + + + + + Could not open output file: %1 + 出力ファイルを開ã‘ã¾ã›ã‚“: %1 + + + + exporting JSON + JSONã«ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆ + + + + + Choose a filename to export data + エクスãƒãƒ¼ãƒˆãƒ‡ãƒ¼ã‚¿ã®ãƒ•ァイルåã‚’é¸æŠž + + + + Please select at least 1 table. + å°‘ãªãã¨ã‚‚1ã¤ã®ãƒ†ãƒ¼ãƒ–ãƒ«ã‚’é¸æŠžã—ã¦ãã ã•ã„。 + + + + Choose a directory + ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãƒ¼ã‚’é¸æŠž + + + + Export completed. + エクスãƒãƒ¼ãƒˆå®Œäº†ã€‚ + + + + ExportSqlDialog + + + Export SQL... + SQLã«ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆ... + + + + Tab&le(s) + テーブル(&L) + + + + Select All + ã™ã¹ã¦é¸æŠž + + + + Deselect All + ã™ã¹ã¦éžé¸æŠž + + + + &Options + オプション(&O) + + + + Keep column names in INSERT INTO + INSERT INTO ã«ã‚«ãƒ©ãƒ åã‚’ä¿æŒ + + + + Multiple rows (VALUES) per INSERT statement + INSERTæ–‡ã«è¤‡æ•°è¡Œ(VALUES) + + + + Export everything + ã™ã¹ã¦ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆ + + + + Export schema only + スキーマã®ã¿ã‚’エクスãƒãƒ¼ãƒˆ + + + + Export data only + データã®ã¿ã‚’エクスãƒãƒ¼ãƒˆ + + + + Keep old schema (CREATE TABLE IF NOT EXISTS) + å¤ã„ã‚¹ã‚­ãƒ¼ãƒžã‚’ä¿æŒ (CREATE TABLE IF NOT EXISTS) + + + + Overwrite old schema (DROP TABLE, then CREATE TABLE) + å¤ã„スキーマを上書ã (DROP TABLE ã—ãŸå¾Œã« CREATE TABLE) + + + + Please select at least one table. + å°‘ãªãã¨ã‚‚1ã¤ã®ãƒ†ãƒ¼ãƒ–ãƒ«ã‚’é¸æŠžã—ã¦ãã ã•ã„。 + + + + Choose a filename to export + エクスãƒãƒ¼ãƒˆã™ã‚‹ãƒ•ァイルåã‚’é¸æŠž + + + + Export completed. + エクスãƒãƒ¼ãƒˆå®Œäº†ã€‚ + + + + Export cancelled or failed. + エクスãƒãƒ¼ãƒˆã‚’キャンセルã¾ãŸã¯å¤±æ•—ã—ã¾ã—ãŸã€‚ + + + + ExtendedScintilla + + + + Ctrl+H + + + + + Ctrl+F + + + + + + Ctrl+P + + + + + Find... + 検索... + + + + Find and Replace... + 検索ã¨ç½®æ›... + + + + Print... + å°åˆ·... + + + + ExtendedTableWidget + + + Use as Exact Filter + 抽出フィルターã«ä½¿ã† + + + + Containing + å«ã‚€ + + + + Not containing + å«ã¾ãªã„ + + + + Not equal to + ç­‰ã—ããªã„ + + + + Greater than + より大ãã„ + + + + Less than + 未満 + + + + Greater or equal + 以上 + + + + Less or equal + 以下 + + + + Between this and... + ã“れã¨ã®é–“... + + + + Regular expression + æ­£è¦è¡¨ç¾ + + + + Edit Conditional Formats... + æ¡ä»¶ä»˜ã書å¼ã‚’編集... + + + + Set to NULL + NULLã«è¨­å®š + + + + Copy + コピー + + + + Copy with Headers + ヘッダーをå«ã‚ã¦ã‚³ãƒ”ー + + + + Copy as SQL + SQLã¨ã—ã¦ã‚³ãƒ”ー + + + + Paste + 貼り付㑠+ + + + Print... + å°åˆ·... + + + + Use in Filter Expression + フィルターå¼ã‚’使用 + + + + Alt+Del + + + + + Ctrl+Shift+C + + + + + Ctrl+Alt+C + + + + + The content of the clipboard is bigger than the range selected. +Do you want to insert it anyway? + クリップボードã®å†…容ã¯é¸æŠžã•れãŸç¯„囲より大ãã„ã§ã™. +ãれã§ã‚‚挿入ã—ã¾ã™ã‹? + + + + <p>Not all data has been loaded. <b>Do you want to load all data before selecting all the rows?</b><p><p>Answering <b>No</b> means that no more data will be loaded and the selection will not be performed.<br/>Answering <b>Yes</b> might take some time while the data is loaded but the selection will be complete.</p>Warning: Loading all the data might require a great amount of memory for big tables. + <p>読ã¿è¾¼ã¾ã‚Œã¦ã„ãªã„データãŒã‚りã¾ã™ã€‚<b>ã™ã¹ã¦ã®è¡Œã‚’é¸æŠžã™ã‚‹å‰ã«ã€ã™ã¹ã¦ã®ãƒ‡ãƒ¼ã‚¿ã‚’読ã¿è¾¼ã¿ã¾ã™ã‹?</b><p><p>ç­”ãˆãŒ <b>ã„ã„ãˆ</b> ãªã‚‰ã°ã€ãƒ‡ãƒ¼ã‚¿ã¯èª­ã¿è¾¼ã¾ã‚Œãšã€é¸æŠžã¯å®Ÿè¡Œã•れã¾ã›ã‚“。<br/>ç­”ãˆãŒ <b>ã¯ã„</b> ãªã‚‰ã°ã€æ™‚é–“ãŒã‹ã‹ã‚Šã¾ã™ãŒã€ã™ã¹ã¦ã®ãƒ‡ãƒ¼ã‚¿ã‚’読ã¿è¾¼ã¿ã€é¸æŠžãŒå®Ÿè¡Œã•れã¾ã™ã€‚</p>警告: 大ãã„テーブルã«ã‚ã‚‹ã™ã¹ã¦ã®ãƒ‡ãƒ¼ã‚¿ã®èª­ã¿è¾¼ã¿ã«ã¯ã‹ãªã‚Šã®è¨˜æ†¶é ˜åŸŸã‚’å¿…è¦ã¨ã—ã¾ã™ã€‚ + + + + Cannot set selection to NULL. Column %1 has a NOT NULL constraint. + é¸æŠžç¯„å›²ã«NULLを設定ã§ãã¾ã›ã‚“。カラム %1 ã«ã¯éžNULL制約ãŒã‚りã¾ã™ã€‚ + + + + FileExtensionManager + + + File Extension Manager + ファイル拡張å­ç®¡ç† + + + + &Up + 上ã¸(&U) + + + + &Down + 下ã¸(&D) + + + + &Add + 追加(&A) + + + + &Remove + 削除(&R) + + + + + Description + 説明 + + + + Extensions + æ‹¡å¼µå­ + + + + *.extension + *.æ‹¡å¼µå­ + + + + FilterLineEdit + + + Filter + フィルター + + + + These input fields allow you to perform quick filters in the currently selected table. +By default, the rows containing the input text are filtered out. +The following operators are also supported: +% Wildcard +> Greater than +< Less than +>= Equal to or greater +<= Equal to or less += Equal to: exact match +<> Unequal: exact inverse match +x~y Range: values between x and y +/regexp/ Values matching the regular expression + ã“ã®å…¥åŠ›æ¬„ã¯ç¾åœ¨é¸æŠžã—ãŸãƒ†ãƒ¼ãƒ–ルã®å³å¸­ãƒ•ィルターã«ãªã‚Šã¾ã™ã€‚ +デフォルトã§ã¯å…¥åŠ›ãƒ†ã‚­ã‚¹ãƒˆãŒå«ã¾ã‚Œã‚‹è¡ŒãŒæŠ½å‡ºã•れã¾ã™ã€‚ +ä»¥ä¸‹ã®æ¼”ç®—å­ã«ã‚‚対応ã—ã¦ã„ã¾ã™ã€‚: +% ワイルドカード +> より大ãã„ +< 未満 +>= 以上 +<= 以下 += ç­‰ã—ã„: 完全ã«ä¸€è‡´ +<> ç­‰ã—ããªã„: ä¸ä¸€è‡´ +x~y 範囲: xã¨yã®é–“ +/regexp/ æ­£è¦è¡¨ç¾ã«ä¸€è‡´ã™ã‚‹å€¤ + + + + Set Filter Expression + フィルターå¼ã‚’設定 + + + + What's This? + ã“れã¯ä½•? + + + + Is NULL + NULL + + + + Is not NULL + NULLã§ãªã„ + + + + Is empty + 空文字 + + + + Is not empty + 空文字ã§ãªã„ + + + + Not containing... + å«ã¾ãªã„... + + + + Equal to... + ç­‰ã—ã„... + + + + Not equal to... + ç­‰ã—ããªã„... + + + + Greater than... + より大ãã„... + + + + Less than... + 未満... + + + + Greater or equal... + 以上... + + + + Less or equal... + 以下... + + + + In range... + 範囲内... + + + + Regular expression... + æ­£è¦è¡¨ç¾... + + + + Clear All Conditional Formats + ã™ã¹ã¦ã®æ¡ä»¶ä»˜ã書å¼ã‚’削除 + + + + Use for Conditional Format + æ¡ä»¶ä»˜ã書å¼ã‚’使ㆠ+ + + + Edit Conditional Formats... + æ¡ä»¶ä»˜ã書å¼ã‚’編集... + + + + FindReplaceDialog + + + Find and Replace + 検索ã¨ç½®æ› + + + + Fi&nd text: + 検索文字列(&N): + + + + Re&place with: + ç½®æ›æ–‡å­—列(&P): + + + + Match &exact case + 大/å°æ–‡å­—を区別(&E) + + + + Match &only whole words + å˜èªžä¸€è‡´ã®ã¿(&O) + + + + When enabled, the search continues from the other end when it reaches one end of the page + 有効ã«ã™ã‚‹ã¨ã€ãƒšãƒ¼ã‚¸ã®æœ€å¾Œã«åˆ°é”ã™ã‚‹ã¨å…ˆé ­ã«æˆ»ã£ã¦æ¤œç´¢ã—ã¾ã™ + + + + &Wrap around + 折り返ã—ã‚り(&W) + + + + When set, the search goes backwards from cursor position, otherwise it goes forward + 設定ã™ã‚‹ã¨ã‚«ãƒ¼ã‚½ãƒ«ä½ç½®ã‹ã‚‰æˆ»ã£ã¦æ¤œç´¢ã—ã¾ã™ã€‚設定ã—ãªã„ã¨ã‚«ãƒ¼ã‚½ãƒ«ä½ç½®ã®å…ˆã‚’検索ã—ã¾ã™ + + + + Search &backwards + 戻ã£ã¦æ¤œç´¢(&B) + + + + <html><head/><body><p>When checked, the pattern to find is searched only in the current selection.</p></body></html> + <html><head/><body><p>設定ã™ã‚‹ã¨ã€ç¾åœ¨é¸æŠžã—ãŸç¯„囲ã®ã¿ã‚’検索ã—ã¾ã™ã€‚</p></body></html> + + + + &Selection only + é¸æŠžç¯„å›²ã®ã¿(&S) + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + <html><head/><body><p>設定ã™ã‚‹ã¨ã€æ¤œç´¢æ–‡å­—列ã¯UNIXæ­£è¦è¡¨ç¾ã¨è§£é‡ˆã•れã¾ã™ã€‚以下をå‚ç…§ <a href="https://ja.wikibooks.org/wiki/%E6%AD%A3%E8%A6%8F%E8%A1%A8%E7%8F%BE">Wikibooksã®æ­£è¦è¡¨ç¾</a>。</p></body></html> + + + + Use regular e&xpressions + æ­£è¦è¡¨ç¾ã‚’使用(&X) + + + + Find the next occurrence from the cursor position and in the direction set by "Search backwards" + カーソルä½ç½®ã‹ã‚‰"戻ã£ã¦æ¤œç´¢"ã§è¨­å®šã—ãŸæ–¹å‘ã«ã‚ã‚‹ã€æ¬¡ã«ä¸€è‡´ã™ã‚‹æ–‡å­—列を検索ã—ã¾ã™ + + + + &Find Next + 次を検索(&F) + + + + F3 + + + + + &Replace + ç½®æ›(&R) + + + + Highlight all the occurrences of the text in the page + ページ内ã®ã™ã¹ã¦ã®ä¸€è‡´ã™ã‚‹æ–‡å­—列を強調 + + + + F&ind All + ã™ã¹ã¦æ¤œç´¢(&I) + + + + Replace all the occurrences of the text in the page + ページ内ã®ã™ã¹ã¦ã®ä¸€è‡´ã™ã‚‹æ–‡å­—åˆ—ã‚’ç½®æ› + + + + Replace &All + ã™ã¹ã¦ç½®æ›(&A) + + + + The searched text was not found + 検索文字列ã¯è¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ã§ã—㟠+ + + + The searched text was not found. + 検索文字列ã¯è¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ã§ã—ãŸã€‚ + + + + The searched text was found one time. + 検索文字列ãŒ1ã¤ã‚りã¾ã—ãŸã€‚ + + + + The searched text was found %1 times. + 検索文字列ãŒ%1ã¤ã‚りã¾ã—ãŸã€‚ + + + + The searched text was replaced one time. + 検索文字列を1ã¤ç½®ãæ›ãˆã¾ã—ãŸã€‚ + + + + The searched text was replaced %1 times. + 検索文字列を%1ã¤ç½®ãæ›ãˆã¾ã—ãŸã€‚ + + + + ForeignKeyEditor + + + &Reset + リセット(&R) + + + + Foreign key clauses (ON UPDATE, ON DELETE etc.) + 外部キー節 (ON UPDATE, ON DELETE ãªã©ã€‚) + + + + ImportCsvDialog + + + Import CSV file + CSVファイルをインãƒãƒ¼ãƒˆ + + + + Table na&me + テーブルå(&M) + + + + &Column names in first line + 先頭行をカラムåã«(&C) + + + + Field &separator + フィールド区切り(&S) + + + + , + , + + + + ; + ; + + + + + Tab + タブ + + + + | + | + + + + Other + ãã®ä»– + + + + &Quote character + 引用符文字(&Q) + + + + + Other (printable) + ãã®ä»– (å°åˆ·å¯èƒ½) + + + + + Other (code) + ãã®ä»– (文字コード) + + + + " + " + + + + ' + ' + + + + &Encoding + エンコード(&E) + + + + UTF-8 + UTF-8 + + + + UTF-16 + UTF-16 + + + + ISO-8859-1 + ISO-8859-1 + + + + Trim fields? + フィールドをトリムã™ã‚‹? + + + + Separate tables + テーブルを分ã‘ã‚‹ + + + + Advanced + 高度ãªè¨­å®š + + + + When importing an empty value from the CSV file into an existing table with a default value for this column, that default value is inserted. Activate this option to insert an empty value instead. + 空値をCSVファイルã‹ã‚‰æ—¢å­˜ã®ãƒ†ãƒ¼ãƒ–ルã®ãƒ‡ãƒ•ォルト値ãŒã‚るカラムã«ã‚¤ãƒ³ãƒãƒ¼ãƒˆã™ã‚‹ã¨ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ãŒæŒ¿å…¥ã•れã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを有効ã«ã™ã‚‹ã¨ä»£ã‚りã«ç©ºå€¤ãŒæŒ¿å…¥ã•れã¾ã™ã€‚ + + + + Ignore default &values + デフォルト値を無視(&V) + + + + Activate this option to stop the import when trying to import an empty value into a NOT NULL column without a default value. + ã“ã®ã‚ªãƒ—ションを有効ã«ã™ã‚‹ã¨ã€ãƒ‡ãƒ•ォルト値ãŒãªã NOT NULL ãªã‚«ãƒ©ãƒ ã«ç©ºå€¤ã‚’インãƒãƒ¼ãƒˆã—よã†ã¨ã—ãŸã¨ãã«ã€ã‚¤ãƒ³ãƒãƒ¼ãƒˆã‚’中止ã—ã¾ã™ã€‚ + + + + Fail on missing values + 値ãŒãªã„å ´åˆä¸­æ­¢ + + + + Disable data type detection + データ型検出を無効 + + + + Disable the automatic data type detection when creating a new table. + æ–°ã—ã„テーブルを作るã¨ãã«è‡ªå‹•データ型検出を無効ã«ã—ã¾ã™ã€‚ + + + + When importing into an existing table with a primary key, unique constraints or a unique index there is a chance for a conflict. This option allows you to select a strategy for that case: By default the import is aborted and rolled back but you can also choose to ignore and not import conflicting rows or to replace the existing row in the table. + 主キーã€ä¸€æ„性制約ã€ä¸€æ„ãªã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ãŒã‚る既存ã®ãƒ†ãƒ¼ãƒ–ルã«ã‚¤ãƒ³ãƒãƒ¼ãƒˆã™ã‚‹ã¨ã€ç«¶åˆãŒç™ºç”Ÿã™ã‚‹å¯èƒ½æ€§ãŒã‚りã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã§ã€ç«¶åˆã®è§£æ±ºæ–¹æ³•ã‚’é¸æŠžã§ãã¾ã™ã€‚デフォルトã§ã¯ã‚¤ãƒ³ãƒãƒ¼ãƒˆã‚’中止ã—ロールãƒãƒƒã‚¯ã—ã¾ã™ãŒã€ç„¡è¦–ã‚’é¸æŠžã—ã¦ç«¶åˆã—ãŸè¡Œã‚’インãƒãƒ¼ãƒˆã—ãªã„ã€ã‚‚ã—ãã¯ã€ãƒ†ãƒ¼ãƒ–ãƒ«å†…ã®æ—¢å­˜ã®è¡Œã‚’ç½®ãæ›ãˆã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚ + + + + Abort import + インãƒãƒ¼ãƒˆã‚’中止 + + + + Ignore row + 行を無視 + + + + Replace existing row + 既存ã®è¡Œã‚’ç½®ãæ›ãˆ + + + + Conflict strategy + ç«¶åˆã®è§£æ±ºæ–¹æ³• + + + + + Deselect All + ã™ã¹ã¦éžé¸æŠž + + + + Match Similar + 類似ã«ä¸€è‡´ + + + + Select All + ã™ã¹ã¦é¸æŠž + + + + There is already a table named '%1' and an import into an existing table is only possible if the number of columns match. + åå‰ãŒ '%1' ã®ãƒ†ãƒ¼ãƒ–ãƒ«ã¯æ—¢ã«å­˜åœ¨ã—ã¦ã„ã¾ã™ã€‚既存ã®ãƒ†ãƒ¼ãƒ–ルã¸ã®ã‚¤ãƒ³ãƒãƒ¼ãƒˆã¯ã‚«ãƒ©ãƒ ã®æ•°ãŒä¸€è‡´ã™ã‚‹å ´åˆã®ã¿å¯èƒ½ã§ã™ã€‚ + + + + There is already a table named '%1'. Do you want to import the data into it? + åå‰ãŒ '%1' ã®ãƒ†ãƒ¼ãƒ–ãƒ«ã¯æ—¢ã«å­˜åœ¨ã—ã¦ã„ã¾ã™ã€‚データをã“れã«ã‚¤ãƒ³ãƒãƒ¼ãƒˆã—ã¾ã™ã‹? + + + + Creating restore point failed: %1 + 復元ãƒã‚¤ãƒ³ãƒˆã®ä½œæˆã«å¤±æ•—: %1 + + + + Creating the table failed: %1 + テーブルã®ä½œæˆã«å¤±æ•—: %1 + + + + importing CSV + CSVã®ã‚¤ãƒ³ãƒãƒ¼ãƒˆ + + + + Inserting row failed: %1 + è¡Œã®æŒ¿å…¥ã«å¤±æ•—: %1 + + + + Importing the file '%1' took %2ms. Of this %3ms were spent in the row function. + ファイル '%1' ã®ã‚¤ãƒ³ãƒãƒ¼ãƒˆã« %2msã‹ã‹ã‚Šã¾ã—ãŸã€‚内 %3ms ã¯è¡Œé–¢æ•°ã«è²»ã‚„ã•れã¾ã—ãŸã€‚ + + + + MainWindow + + + DB Browser for SQLite + DB Browser for SQLite + + + + + Database Structure + This has to be equal to the tab title in all the main tabs + データベース構造 + + + + This is the structure of the opened database. +You can drag SQL statements from an object row and drop them into other applications or into another instance of 'DB Browser for SQLite'. + + ã“れã¯é–‹ã„ã¦ã„ã‚‹ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã®æ§‹é€ ã§ã™ã€‚ +SQL文をオブジェクト行ã‹ã‚‰ãƒ‰ãƒ©ãƒƒã‚°ã—ã»ã‹ã®ã‚¢ãƒ—リケーションや'DB Browser for SQLite'ã®ä»–ã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã«ãƒ‰ãƒ­ãƒƒãƒ—ã§ãã¾ã™ã€‚ + + + + + + Browse Data + This has to be equal to the tab title in all the main tabs + データ閲覧 + + + + + Edit Pragmas + This has to be equal to the tab title in all the main tabs + プラグマ編集 + + + + Warning: this pragma is not readable and this value has been inferred. Writing the pragma might overwrite a redefined LIKE provided by an SQLite extension. + 警告: ã“ã®ãƒ—ラグマã¯èª­ã¿å–りå¯èƒ½ã§ãªãã€ã“ã®å€¤ã¯æŽ¨å®šã§ã™ã€‚プラグマを書ã込んã§ã‚‚ã€SQLite æ‹¡å¼µãªã©ã§ä¸Šæ›¸ãã•れるã‹ã‚‚ã—れã¾ã›ã‚“。 + + + + + Execute SQL + This has to be equal to the tab title in all the main tabs + SQL実行 + + + + toolBar1 + ツールãƒãƒ¼1 + + + + &File + ファイル(&F) + + + + &Import + インãƒãƒ¼ãƒˆ(&I) + + + + &Export + エクスãƒãƒ¼ãƒˆ(&E) + + + + &Edit + 編集(&E) + + + + &View + ビュー(&V) + + + + &Help + ヘルプ(&H) + + + + &Tools + ツール(&T) + + + + DB Toolbar + DBツールãƒãƒ¼ + + + + Edit Database &Cell + データベースã®ã‚»ãƒ«ã‚’編集(&C) + + + + SQL &Log + SQLログ(&L) + + + + Show S&QL submitted by + 表示ã™ã‚‹SQLã®é€ä¿¡å…ƒã¯(&Q) + + + + User + ユーザー + + + + Application + アプリケーション + + + + Error Log + エラーログ + + + + This button clears the contents of the SQL logs + ã“ã®ãƒœã‚¿ãƒ³ã§SQLログã®å†…容を消去ã—ã¾ã™ + + + + &Clear + 消去(&C) + + + + This panel lets you examine a log of all SQL commands issued by the application or by yourself + ã“ã®ãƒ‘ãƒãƒ«ã§ã‚¢ãƒ—リケーションやã‚ãªãŸãŒç™ºè¡Œã—ãŸå…¨ã¦ã®SQLコマンドã®ãƒ­ã‚°ã‚’調査ã§ãã¾ã™ + + + + &Plot + プロット(&P) + + + + DB Sche&ma + DBスキーマ(&M) + + + + This is the structure of the opened database. +You can drag multiple object names from the Name column and drop them into the SQL editor and you can adjust the properties of the dropped names using the context menu. This would help you in composing SQL statements. +You can drag SQL statements from the Schema column and drop them into the SQL editor or into other applications. + + ã“れã¯é–‹ã„ã¦ã„ã‚‹ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã®æ§‹é€ ã§ã™ã€‚ +複数ã®ã‚ªãƒ–ジェクトåã‚’åå‰ã‚«ãƒ©ãƒ ã‹ã‚‰ãƒ‰ãƒ©ãƒƒã‚°ã—SQLエディターã«ãƒ‰ãƒ­ãƒƒãƒ—ã§ãã¾ã™ã€‚ドロップã—ãŸåå‰ã®ãƒ—ロパティã¯ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆãƒ¡ãƒ‹ãƒ¥ãƒ¼ã§èª¿ç¯€ã§ãã¾ã™ã€‚ã“れã¯SQLæ–‡ã®ä½œæˆã«å½¹ç«‹ã¡ã¾ã™ã€‚ +SQL文をスキーマカラムã‹ã‚‰SQLエディターや他ã®ã‚¢ãƒ—リケーションã«ãƒ‰ãƒ­ãƒƒãƒ—ã§ãã¾ã™ã€‚ + + + + + &Remote + リモート(&R) + + + + + Project Toolbar + プロジェクトツールãƒãƒ¼ + + + + Extra DB toolbar + 追加DBツールãƒãƒ¼ + + + + + + Close the current database file + ç¾åœ¨ã®ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ãƒ•ァイルを閉ã˜ã¾ã™ + + + + &New Database... + æ–°ã—ã„データベース(&N)... + + + + + Create a new database file + æ–°ã—ã„データベースファイルを作æˆã—ã¾ã™ + + + + This option is used to create a new database file. + ã“ã®ã‚ªãƒ—ã‚·ãƒ§ãƒ³ã¯æ–°ã—ã„データベースファイルを作æˆã™ã‚‹ãŸã‚ã«ä½¿ã„ã¾ã™ã€‚ + + + + Ctrl+N + + + + + + &Open Database... + データベースを開ã(&O)... + + + + + + + + Open an existing database file + 既存ã®ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ãƒ•ァイルを開ãã¾ã™ + + + + + + This option is used to open an existing database file. + ã“ã®ã‚ªãƒ—ã‚·ãƒ§ãƒ³ã¯æ—¢å­˜ã®ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ãƒ•ァイルを開ããŸã‚ã«ä½¿ã„ã¾ã™ã€‚ + + + + Ctrl+O + + + + + &Close Database + データベースを閉ã˜ã‚‹(&C) + + + + This button closes the connection to the currently open database file + ã“ã®ãƒœã‚¿ãƒ³ã§ç¾åœ¨é–‹ã„ã¦ã„るデータベースファイルã¨ã®æŽ¥ç¶šã‚’é–‰ã˜ã¾ã™ + + + + Open SQL file(s) + SQLファイルを開ã + + + + This button opens files containing SQL statements and loads them in new editor tabs + ã“ã®ãƒœã‚¿ãƒ³ã§SQL文をå«ã‚€ãƒ•ァイルを新ã—ã„エディタータブã«é–‹ãã¾ã™ + + + + Execute line + 行を実行 + + + + Sa&ve Project + プロジェクトをä¿å­˜(&V) + + + + This button lets you save all the settings associated to the open DB to a DB Browser for SQLite project file + ã“ã®ãƒœã‚¿ãƒ³ã§é–‹ã„ã¦ã„ã‚‹DBã«é–¢é€£ä»˜ã‘られる全ã¦ã®è¨­å®šã‚’SQLiteプロジェクトファイルã«ä¿å­˜ã—ã¾ã™ + + + + This button lets you open a DB Browser for SQLite project file + ã“ã®ãƒœã‚¿ãƒ³ã§SQLiteプロジェクトファイルを開ãã¾ã™ + + + + Ctrl+Shift+O + + + + + Find + 検索 + + + + Find or replace + 検索ã¨ç½®æ› + + + + Print text from current SQL editor tab + ç¾åœ¨ã®SQLエディタータブã®ãƒ†ã‚­ã‚¹ãƒˆã‚’å°åˆ·ã—ã¾ã™ + + + + Print the structure of the opened database + é–‹ã„ã¦ã„ã‚‹ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã®æ§‹é€ ã‚’å°åˆ·ã—ã¾ã™ + + + + Un/comment block of SQL code + SQLコードã®ãƒ–ロックをコメント/éžã‚³ãƒ¡ãƒ³ãƒˆã« + + + + Un/comment block + ブロックをコメント/éžã‚³ãƒ¡ãƒ³ãƒˆ + + + + Comment or uncomment current line or selected block of code + ç¾åœ¨è¡Œã‹ã‚³ãƒ¼ãƒ‰ã®é¸æŠžã•れãŸãƒ–ロックをコメント/éžã‚³ãƒ¡ãƒ³ãƒˆã«ã—ã¾ã™ + + + + Comment or uncomment the selected lines or the current line, when there is no selection. All the block is toggled according to the first line. + é¸æŠžã•れãŸè¡Œã‹ã€é¸æŠžãŒãªã„ãªã‚‰ã°ç¾åœ¨è¡Œã‚’コメント/éžã‚³ãƒ¡ãƒ³ãƒˆã«ã—ã¾ã™ã€‚ブロック全体ã¯ãã®å…ˆé ­è¡Œã«å¾“ã„コメント/éžã‚³ãƒ¡ãƒ³ãƒˆã•れã¾ã™ã€‚ + + + + Ctrl+/ + + + + + Stop SQL execution + SQLã®å®Ÿè¡Œã‚’中止 + + + + Stop execution + 実行を中止 + + + + Stop the currently running SQL script + ç¾åœ¨å®Ÿè¡Œä¸­ã® SQL スクリプトを中止ã—ã¾ã™ + + + + &Save Project As... + プロジェクトã«åå‰ã‚’付ã‘ã¦ä¿å­˜(&S)... + + + + + + Save the project in a file selected in a dialog + ダイアログã§é¸æŠžã—ãŸãƒ•ァイルã«ãƒ—ロジェクトをä¿å­˜ã—ã¾ã™ + + + + Save A&ll + ã™ã¹ã¦ä¿å­˜(&L) + + + + + + Save DB file, project file and opened SQL files + DBファイルã€ãƒ—ロジェクトファイルã€é–‹ã„ã¦ã„ã‚‹SQLファイルをä¿å­˜ã—ã¾ã™ + + + + Ctrl+Shift+S + + + + + Browse Table + テーブルを閲覧 + + + + + Ctrl+W + + + + + &Revert Changes + 変更をå–り消ã—(&R) + + + + + Revert database to last saved state + 最後ã«ä¿å­˜ã—ãŸçŠ¶æ…‹ã¸ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã‚’戻ã—ã¾ã™ + + + + This option is used to revert the current database file to its last saved state. All changes made since the last save operation are lost. + ã“ã®ã‚ªãƒ—ションã¯ç¾åœ¨ã®ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ãƒ•ァイルを最後ã«ä¿å­˜ã—ãŸçŠ¶æ…‹ã«æˆ»ã™ãŸã‚ã«ä½¿ã„ã¾ã™ã€‚最後ã®ä¿å­˜ã®å¾Œã«è¡Œã‚れãŸã™ã¹ã¦ã®å¤‰æ›´ã¯å¤±ã‚れã¾ã™ã€‚ + + + + &Write Changes + 変更を書ãè¾¼ã¿(&W) + + + + + Write changes to the database file + データベースファイルã«å¤‰æ›´ã‚’書ãè¾¼ã¿ã¾ã™ + + + + This option is used to save changes to the database file. + ã“ã®ã‚ªãƒ—ションã¯ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ãƒ•ァイルã«å¤‰æ›´ã‚’ä¿å­˜ã™ã‚‹ãŸã‚ã«ä½¿ã„ã¾ã™ã€‚ + + + + Ctrl+S + + + + + Compact &Database... + データベースを圧縮(&D)... + + + + Compact the database file, removing space wasted by deleted records + 削除ã•れãŸãƒ¬ã‚³ãƒ¼ãƒ‰ãŒæ®‹ã£ã¦ã„るスペースをå–り除ãã€ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ãƒ•ァイルを圧縮ã—ã¾ã™ + + + + + Compact the database file, removing space wasted by deleted records. + 削除ã•れãŸãƒ¬ã‚³ãƒ¼ãƒ‰ãŒæ®‹ã£ã¦ã„るスペースをå–り除ãã€ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ãƒ•ァイルを圧縮ã—ã¾ã™ã€‚ + + + + E&xit + 終了(&X) + + + + Ctrl+Q + + + + + &Database from SQL file... + SQLファイルã‹ã‚‰ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã¸(&D)... + + + + Import data from an .sql dump text file into a new or existing database. + SQLダンプテキストファイルã‹ã‚‰ãƒ‡ãƒ¼ã‚¿ã‚’ã€æ–°ã—ã„ã‚‚ã—ãã¯æ—¢å­˜ã®ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã«ã‚¤ãƒ³ãƒãƒ¼ãƒˆã—ã¾ã™ã€‚ + + + + This option lets you import data from an .sql dump text file into a new or existing database. SQL dump files can be created on most database engines, including MySQL and PostgreSQL. + ã“ã®ã‚ªãƒ—ションã§SQLダンプテキストファイルã‹ã‚‰ãƒ‡ãƒ¼ã‚¿ã‚’ã€æ–°ã—ã„ã‚‚ã—ãã¯æ—¢å­˜ã®ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã«ã‚¤ãƒ³ãƒãƒ¼ãƒˆã§ãã¾ã™ã€‚SQLダンプファイルã¯ã€MySQLã‚„PostgreSQLãªã©ã€ã»ã¨ã‚“ã©ã®ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã‚¨ãƒ³ã‚¸ãƒ³ã§ä½œæˆã§ãã¾ã™ã€‚ + + + + &Table from CSV file... + CSVファイルã‹ã‚‰ãƒ†ãƒ¼ãƒ–ルã¸(&T)... + + + + Open a wizard that lets you import data from a comma separated text file into a database table. + カンマ区切りã®ãƒ†ã‚­ã‚¹ãƒˆãƒ•ァイルã®ãƒ‡ãƒ¼ã‚¿ã‚’データベースã®ãƒ†ãƒ¼ãƒ–ルã«ã‚¤ãƒ³ãƒãƒ¼ãƒˆã™ã‚‹ã‚¦ã‚£ã‚¶ãƒ¼ãƒ‰ã‚’é–‹ãã¾ã™ã€‚ + + + + Open a wizard that lets you import data from a comma separated text file into a database table. CSV files can be created on most database and spreadsheet applications. + カンマ区切りã®ãƒ†ã‚­ã‚¹ãƒˆãƒ•ァイルã®ãƒ‡ãƒ¼ã‚¿ã‚’データベースã®ãƒ†ãƒ¼ãƒ–ルã«ã‚¤ãƒ³ãƒãƒ¼ãƒˆã™ã‚‹ã‚¦ã‚£ã‚¶ãƒ¼ãƒ‰ã‚’é–‹ãã¾ã™ã€‚CSVファイルã¯ã»ã¨ã‚“ã©ã®ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã‚„表計算アプリケーションã§ä½œæˆã§ãã¾ã™ã€‚ + + + + &Database to SQL file... + データベースをSQLファイルã¸(&D)... + + + + Export a database to a .sql dump text file. + データベースを .sql ダンプテキストファイルã«ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆã—ã¾ã™ã€‚ + + + + This option lets you export a database to a .sql dump text file. SQL dump files contain all data necessary to recreate the database on most database engines, including MySQL and PostgreSQL. + ã“ã®ã‚ªãƒ—ションã§ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã‚’ .sql ダンプテキストファイルã«ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆã§ãã¾ã™ã€‚SQLダンプファイルã¯ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã®å†ä½œæˆã«å¿…è¦ãªã™ã¹ã¦ã®ãƒ‡ãƒ¼ã‚¿ã‚’å«ã¿ã€MySQLã‚„PostgreSQLãªã©ã€ã»ã¨ã‚“ã©ã®ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã‚¨ãƒ³ã‚¸ãƒ³ã§åˆ©ç”¨ã§ãã¾ã™ã€‚ + + + + &Table(s) as CSV file... + テーブルをCSVファイルã¸(&T)... + + + + Export a database table as a comma separated text file. + データベースã®ãƒ†ãƒ¼ãƒ–ルをカンマ区切りã®ãƒ†ã‚­ã‚¹ãƒˆãƒ•ァイルã«ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆã—ã¾ã™ã€‚ + + + + Export a database table as a comma separated text file, ready to be imported into other database or spreadsheet applications. + データベースã®ãƒ†ãƒ¼ãƒ–ルをカンマ区切りã®ãƒ†ã‚­ã‚¹ãƒˆãƒ•ァイルã«ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆã—ã¾ã™ã€‚ä»–ã®ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã‚„表計算アプリケーションã§ã‚¤ãƒ³ãƒãƒ¼ãƒˆã§ãã¾ã™ã€‚ + + + + &Create Table... + テーブルを作æˆ(&C)... + + + + Open the Create Table wizard, where it is possible to define the name and fields for a new table in the database + ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã«æ–°ã—ã„テーブルã®åå‰ã¨ãƒ•ィールドを定義ã§ãã‚‹ã€ãƒ†ãƒ¼ãƒ–ル作æˆã‚¦ã‚¤ã‚¶ãƒ¼ãƒ‰ã‚’é–‹ãã¾ã™ + + + + &Delete Table... + テーブルを削除(&D)... + + + + + Delete Table + テーブルを削除 + + + + Open the Delete Table wizard, where you can select a database table to be dropped. + 削除ã™ã‚‹ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ãƒ†ãƒ¼ãƒ–ãƒ«ã‚’é¸æŠžã§ãã‚‹ã€ãƒ†ãƒ¼ãƒ–ル削除ウィザードをã²ã‚‰ãã¾ã™ã€‚ + + + + &Modify Table... + テーブルを変更(&M)... + + + + Open the Modify Table wizard, where it is possible to rename an existing table. It is also possible to add or delete fields form a table, as well as modify field names and types. + 既存ã®ãƒ†ãƒ¼ãƒ–ルåを変更ã§ãã‚‹ã€ãƒ†ãƒ¼ãƒ–ル変更ウィザードを開ãã¾ã™ã€‚テーブルã®ãƒ•ィールドを追加削除ã—ãŸã‚Šã€ãƒ•ィールドåやデータ型ã®å¤‰æ›´ã‚‚ã§ãã¾ã™ã€‚ + + + + Create &Index... + インデックスã®ä½œæˆ(&I)... + + + + Open the Create Index wizard, where it is possible to define a new index on an existing database table. + 既存ã®ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ãƒ†ãƒ¼ãƒ–ãƒ«ã«æ–°ã—ã„インデックスを定義ã§ãã‚‹ã€ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ã‚¦ã‚£ã‚¶ãƒ¼ãƒ‰ã‚’é–‹ãã¾ã™ã€‚ + + + + &Preferences... + 設定(&P)... + + + + + Open the preferences window. + 設定ウィンドウを開ãã¾ã™ã€‚ + + + + &DB Toolbar + DBツールãƒãƒ¼(&D) + + + + Shows or hides the Database toolbar. + データベースツールãƒãƒ¼ã‚’表示/éžè¡¨ç¤ºã—ã¾ã™ã€‚ + + + + Ctrl+T + + + + + W&hat's This? + ã“れã¯ä½•(&H)? + + + + Ctrl+F4 + + + + + Shift+F1 + + + + + &About + DB Browser for SQLite ã«ã¤ã„ã¦(&A) + + + + &Recently opened + 最近開ã„ãŸãƒ•ァイル(&R) + + + + Open &tab + タブを開ã(&T) + + + + This button opens a new tab for the SQL editor + ã“ã®ãƒœã‚¿ãƒ³ã§SQLã‚¨ãƒ‡ã‚£ã‚¿ãƒ¼ã®æ–°ã—ã„タブを開ãã¾ã™ + + + + &Execute SQL + SQLを実行(&E) + + + + This button executes the currently selected SQL statements. If no text is selected, all SQL statements are executed. + ã“ã®ãƒœã‚¿ãƒ³ã§ç¾åœ¨é¸æŠžã—ã¦ã„ã‚‹SQL文を実行ã—ã¾ã™ã€‚テキストãŒé¸æŠžã•れã¦ã„ãªã„å ´åˆã€ã™ã¹ã¦ã®SQLæ–‡ãŒå®Ÿè¡Œã•れã¾ã™ã€‚ + + + + + + Save SQL file + SQLファイルをä¿å­˜ + + + + &Load Extension... + 拡張を読ã¿è¾¼ã¿(&L)... + + + + + Execute current line + ç¾åœ¨è¡Œã‚’実行 + + + + This button executes the SQL statement present in the current editor line + ã“ã®ãƒœã‚¿ãƒ³ã¯ç¾åœ¨ã‚¨ãƒ‡ã‚£ã‚¿ãƒ¼ã®è¡Œã«ã‚ã‚‹SQL文を実行ã—ã¾ã™ + + + + Shift+F5 + + + + + Export as CSV file + CSVファイルã«ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆ + + + + Export table as comma separated values file + テーブルをカンマ区切りã®ãƒ•ァイルã«ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆã—ã¾ã™ + + + + &Wiki + ウィキ(&W) + + + + F1 + + + + + Bug &Report... + ãƒã‚°ãƒ¬ãƒãƒ¼ãƒˆ(&R)... + + + + Feature Re&quest... + æ©Ÿèƒ½ã‚’è¦æ±‚(&Q)... + + + + Web&site + ウェブサイト(&S) + + + + &Donate on Patreon... + Patreonã§å¯„付(&D)... + + + + + Save the current session to a file + ç¾åœ¨ã®ã‚»ãƒƒã‚·ãƒ§ãƒ³ã‚’ファイルã«ä¿å­˜ã—ã¾ã™ + + + + Open &Project... + プロジェクトを開ã(&P)... + + + + + Load a working session from a file + 作業中ã®ã‚»ãƒƒã‚·ãƒ§ãƒ³ã‚’ファイルã‹ã‚‰èª­ã¿è¾¼ã¿ã¾ã™ + + + + &Attach Database... + ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã«æŽ¥ç¶š(&A)... + + + + + Add another database file to the current database connection + ä»–ã®ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ãƒ•ァイルをç¾åœ¨ã®ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹æŽ¥ç¶šã«åŠ ãˆã¾ã™ + + + + This button lets you add another database file to the current database connection + ã“ã®ãƒœã‚¿ãƒ³ã§ä»–ã®ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ãƒ•ァイルをç¾åœ¨ã®ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹æŽ¥ç¶šã«åŠ ãˆã¾ã™ + + + + &Set Encryption... + æš—å·åŒ–を設定(&S)... + + + + + Save SQL file as + åå‰ã‚’付ã‘ã¦SQLファイルをä¿å­˜ + + + + This button saves the content of the current SQL editor tab to a file + ã“ã®ãƒœã‚¿ãƒ³ã¯ç¾åœ¨ã®SQLエディタータブã®å†…容をファイルã«ä¿å­˜ã—ã¾ã™ + + + + &Browse Table + テーブルを閲覧(&B) + + + + Copy Create statement + CREATE文をコピー + + + + Copy the CREATE statement of the item to the clipboard + ã“ã®ã‚¢ã‚¤ãƒ†ãƒ ã®CREATE文をクリップボードã«ã‚³ãƒ”ーã—ã¾ã™ + + + + SQLCipher &FAQ + SQLCipher FAQ(&F) + + + + Opens the SQLCipher FAQ in a browser window + SQLCipher ã® FAQ をブラウザã§é–‹ãã¾ã™ + + + + Table(&s) to JSON... + テーブルをJSONã¸(&S)... + + + + Export one or more table(s) to a JSON file + 1ã¤ä»¥ä¸Šã®ãƒ†ãƒ¼ãƒ–ルをJSONファイルã«ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆã—ã¾ã™ + + + + Open Data&base Read Only... + データベースを読ã¿å–り専用ã§é–‹ã(&B)... + + + + Open an existing database file in read only mode + 既存ã®ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ãƒ•ァイルを読ã¿å–り専用モードã§é–‹ãã¾ã™ + + + + Save results + çµæžœã‚’ä¿å­˜ + + + + Save the results view + çµæžœã®ãƒ“ューをä¿å­˜ + + + + This button lets you save the results of the last executed query + ã“ã®ãƒœã‚¿ãƒ³ã§æœ€å¾Œã«å®Ÿè¡Œã—ãŸã‚¯ã‚¨ãƒªãƒ¼ã®çµæžœã‚’ä¿å­˜ã—ã¾ã™ + + + + + Find text in SQL editor + SQLã‚¨ãƒ‡ã‚£ã‚¿ãƒ¼ã®æ–‡å­—列を検索 + + + + This button opens the search bar of the editor + ã“ã®ãƒœã‚¿ãƒ³ã¯ã‚¨ãƒ‡ã‚£ã‚¿ãƒ¼ã®æ¤œç´¢ãƒãƒ¼ã‚’é–‹ãã¾ã™ + + + + Ctrl+F + + + + + + Find or replace text in SQL editor + SQLã‚¨ãƒ‡ã‚£ã‚¿ãƒ¼ã®æ–‡å­—列を検索/ç½®æ›ã—ã¾ã™ + + + + This button opens the find/replace dialog for the current editor tab + ã“ã®ãƒœã‚¿ãƒ³ã¯ç¾åœ¨ã®ã‚¨ãƒ‡ã‚£ã‚¿ãƒ¼ã‚¿ãƒ–ã®æ¤œç´¢/ç½®æ›ãƒ€ã‚¤ã‚¢ãƒ­ã‚°ã‚’é–‹ãã¾ã™ + + + + Ctrl+H + + + + + Export to &CSV + CSVã«ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆ(&C) + + + + Save as &view + ビューã¨ã—ã¦ä¿å­˜(&V) + + + + Save as view + ビューã¨ã—ã¦ä¿å­˜ + + + + Shows or hides the Project toolbar. + プロジェクトツールãƒãƒ¼ã‚’表示/éžè¡¨ç¤ºã—ã¾ã™ã€‚ + + + + Extra DB Toolbar + 追加DBツールãƒãƒ¼ + + + + New In-&Memory Database + æ–°ã—ã„インメモリーデータベース(&M) + + + + Drag && Drop Qualified Names + æ­£è¦åŒ–åå‰ã‚’ドラッグ&&ドロップ + + + + + Use qualified names (e.g. "Table"."Field") when dragging the objects and dropping them into the editor + オブジェクトをドラッグã—エディターã«ãƒ‰ãƒ­ãƒƒãƒ—ã—ãŸã¨ãã«ã€æ­£è¦åŒ–åç§°(例 "Table"."Field")を使ã„ã¾ã™ + + + + Drag && Drop Enquoted Names + クォートã•れãŸåå‰ã‚’ドラッグ&&ドロップ + + + + + Use escaped identifiers (e.g. "Table1") when dragging the objects and dropping them into the editor + オブジェクトをドラッグã—エディターã«ãƒ‰ãƒ­ãƒƒãƒ—ã—ãŸã¨ãã«ã€ã‚¨ã‚¹ã‚±ãƒ¼ãƒ—ã•れãŸåå‰(例 "Table1")を使ã„ã¾ã™ + + + + &Integrity Check + æ•´åˆæ€§æ¤œæŸ»(&I) + + + + Runs the integrity_check pragma over the opened database and returns the results in the Execute SQL tab. This pragma does an integrity check of the entire database. + é–‹ã„ã¦ã„ã‚‹ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã®æ•´åˆæ€§æ¤œæŸ»ãƒ—ラグマを実行ã—ã€çµæžœã‚’SQL実行タブã«å‡ºåŠ›ã—ã¾ã™ã€‚ã“ã®ãƒ—ラグマã¯ã™ã¹ã¦ã®ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã®æ•´åˆæ€§æ¤œæŸ»ã‚’行ã„ã¾ã™ã€‚ + + + + &Foreign-Key Check + 外部キー検査(&F) + + + + Runs the foreign_key_check pragma over the opened database and returns the results in the Execute SQL tab + é–‹ã„ã¦ã„るデータベースã®å¤–部キー検査プラグマを実行ã—ã€çµæžœã‚’SQL実行タブã«å‡ºåŠ›ã—ã¾ã™ + + + + &Quick Integrity Check + 峿™‚æ•´åˆæ€§æ¤œæŸ»(&Q) + + + + Run a quick integrity check over the open DB + é–‹ã„ã¦ã„ã‚‹DBã®é«˜é€Ÿæ•´åˆæ€§æ¤œæŸ»ã‚’実行ã—ã¾ã™ + + + + Runs the quick_check pragma over the opened database and returns the results in the Execute SQL tab. This command does most of the checking of PRAGMA integrity_check but runs much faster. + é–‹ã„ã¦ã„るデータベースã®é«˜é€Ÿæ•´åˆæ€§æ¤œæŸ»ãƒ—ラグマを実行ã—ã€çµæžœã‚’SQL実行タブã«å‡ºåŠ›ã—ã¾ã™ã€‚ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯(通常ã®)æ•´åˆæ€§æ¤œæŸ»PRAGMAã®å¤§éƒ¨åˆ†ã‚’行ã„ã¾ã™ãŒã€ã‚ˆã‚Šé«˜é€Ÿã«å‹•作ã—ã¾ã™ã€‚ + + + + &Optimize + 最é©åŒ–(&O) + + + + Attempt to optimize the database + ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã®æœ€é©åŒ–を試ã¿ã¾ã™ + + + + Runs the optimize pragma over the opened database. This pragma might perform optimizations that will improve the performance of future queries. + é–‹ã„ã¦ã„ã‚‹ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã®æœ€é©åŒ–プラグマを実行ã—ã¾ã™ã€‚ã“ã®ãƒ—ラグマã¯å°†æ¥ã®ã‚¯ã‚¨ãƒªãƒ¼ã®æ€§èƒ½ã‚’改善ã•ã›ã¾ã™ã€‚ + + + + + Print + å°åˆ· + + + + Open a dialog for printing the text in the current SQL editor tab + ç¾åœ¨ã®SQLã‚¨ãƒ‡ã‚£ã‚¿ãƒ¼ã‚¿ãƒ–ã®æ–‡å­—列をå°åˆ·ã™ã‚‹ãƒ€ã‚¤ã‚¢ãƒ­ã‚°ã‚’é–‹ãã¾ã™ + + + + Open a dialog for printing the structure of the opened database + é–‹ã„ã¦ã„ã‚‹ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã®æ§‹é€ ã‚’å°åˆ·ã™ã‚‹ãƒ€ã‚¤ã‚¢ãƒ­ã‚°ã‚’é–‹ãã¾ã™ + + + + + Ctrl+P + + + + + Execute all/selected SQL + ã™ã¹ã¦/é¸æŠžã—ãŸSQLを実行 + + + + Ctrl+Return + Ctrl+Return + + + + Ctrl+L + + + + + Ctrl+D + + + + + Ctrl+I + + + + + Ctrl+E + + + + + Window Layout + ウィンドウレイアウト + + + + Reset Window Layout + ウィンドウレイアウトをリセット + + + + Alt+0 + + + + + Simplify Window Layout + ウィンドウレイアウトをシンプル㫠+ + + + Shift+Alt+0 + + + + + Dock Windows at Bottom + ウィンドウを下ã«ãƒ‰ãƒƒã‚­ãƒ³ã‚° + + + + Dock Windows at Left Side + ウィンドウを左ã«ãƒ‰ãƒƒã‚­ãƒ³ã‚° + + + + Dock Windows at Top + ウィンドウを上ã«ãƒ‰ãƒƒã‚­ãƒ³ã‚° + + + + The database is currenctly busy. + データベースã¯ç¾åœ¨ãƒ“ジー状態ã§ã™ã€‚ + + + + Click here to interrupt the currently running query. + ã“ã“をクリックã—ã¦ã€ç¾åœ¨å®Ÿè¡Œä¸­ã®ã‚¯ã‚¨ãƒªãƒ¼ã‚’中断ã—ã¾ã™ã€‚ + + + + Encrypted + æš—å·åŒ– + + + + Database is encrypted using SQLCipher + データベースã¯SQLCipherã§æš—å·åŒ–ã•れã¦ã„ã¾ã™ + + + + Read only + 読ã¿å–り専用 + + + + Database file is read only. Editing the database is disabled. + データベースã¯èª­ã¿å–り専用ã§ã™ã€‚データベースã®ç·¨é›†ã¯ã§ãã¾ã›ã‚“。 + + + + Database encoding + データベースã®ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‰ + + + + + Choose a database file + ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ãƒ•ã‚¡ã‚¤ãƒ«ã‚’é¸æŠž + + + + Could not open database file. +Reason: %1 + データベースファイルを開ã‘ã¾ã›ã‚“。 +ç†ç”±: %1 + + + + + + Choose a filename to save under + セーブã™ã‚‹ãƒ•ァイルåを下ã‹ã‚‰é¸æŠž + + + + In-Memory database + インメモリーデータベース + + + + You are still executing SQL statements. Closing the database now will stop their execution, possibly leaving the database in an inconsistent state. Are you sure you want to close the database? + ã¾ã SQL文を実行中ã§ã™ã€‚今ã€ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã‚’é–‰ã˜ã‚‹ã¨ã€å®Ÿè¡ŒãŒä¸­æ­¢ã•れã€ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã«ä¸€è²«æ€§ãŒãªã„状態を残ã™ã‹ã‚‚ã—れã¾ã›ã‚“。本当ã«ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã‚’é–‰ã˜ã¾ã™ã‹? + + + + Edit View %1 + ビュー %1 を編集 + + + + Edit Trigger %1 + トリガー %1 を編集 + + + + Opened '%1' in read-only mode from recent file list + 最近使ã£ãŸãƒ•ァイルリストã‹ã‚‰èª­ã¿å–り専用モード㧠'%1' ã‚’é–‹ãã¾ã—㟠+ + + + Opened '%1' from recent file list + 最近使ã£ãŸãƒ•ァイルリストã‹ã‚‰ '%1' ã‚’é–‹ãã¾ã—㟠+ + + + Could not find resource file: %1 + リソースファイルãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“: %1 + + + + Could not open project file for writing. +Reason: %1 + 書ã込むプロジェクトファイルを開ãã“ã¨ãŒã§ãã¾ã›ã‚“。 +ç†ç”±: %1 + + + + Project saved to file '%1' + プロジェクトをファイル '%1' ã«ä¿å­˜ã—ã¾ã—㟠+ + + + This action will open a new SQL tab with the following statements for you to edit and run: + ã“ã®æ“作ã¯ã“ã®æ–‡ã®ç·¨é›†ã¨å®Ÿè¡ŒãŒã§ãã‚‹æ–°ã—ã„SQLタブを開ãã¾ã™: + + + + Busy (%1) + ビジー (%1) + + + + Rename Tab + タブåを変更 + + + + Duplicate Tab + タブを複製 + + + + Close Tab + タブを閉ã˜ã‚‹ + + + + Opening '%1'... + '%1' ã‚’é–‹ã„ã¦ã„ã¾ã™... + + + + There was an error opening '%1'... + '%1' ã‚’é–‹ãã¨ãã«ã‚¨ãƒ©ãƒ¼ãŒã‚りã¾ã—ãŸ... + + + + Value is not a valid URL or filename: %1 + å€¤ã¯æ­£è¦ã®URLã‚‚ã—ãã¯ãƒ•ァイルåã§ã‚りã¾ã›ã‚“: %1 + + + + Are you sure you want to delete the table '%1'? +All data associated with the table will be lost. + 本当ã«ãƒ†ãƒ¼ãƒ–ル '%1' を削除ã—ã¾ã™ã‹? +テーブルã«é–¢é€£ã™ã‚‹ã™ã¹ã¦ã®ãƒ‡ãƒ¼ã‚¿ã¯å¤±ã‚れã¾ã™ã€‚ + + + + Are you sure you want to delete the view '%1'? + 本当ã«ãƒ“ュー '%1' を削除ã—ã¾ã™ã‹? + + + + Are you sure you want to delete the trigger '%1'? + 本当ã«ãƒˆãƒªã‚¬ãƒ¼ '%1' を削除ã—ã¾ã™ã‹? + + + + Are you sure you want to delete the index '%1'? + 本当ã«ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ '%1' を削除ã—ã¾ã™ã‹? + + + + Error: could not delete the table. + エラー: テーブルを削除ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ + + + + Error: could not delete the view. + エラー: ビューを削除ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ + + + + Error: could not delete the trigger. + エラー: トリガーを削除ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ + + + + Error: could not delete the index. + エラー: インデックスを削除ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ + + + + Message from database engine: +%1 + データベースエンジンã‹ã‚‰ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã€‚ +%1 + + + + Editing the table requires to save all pending changes now. +Are you sure you want to save the database? + テーブルã®ç·¨é›†ã«ã¯ä¿ç•™ä¸­ã®ã™ã¹ã¦ã®å¤‰æ›´ã‚’今ä¿å­˜ã™ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚ +本当ã«ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã‚’ä¿å­˜ã—ã¾ã™ã‹? + + + + Error checking foreign keys after table modification. The changes will be reverted. + デーブル変更後ã®å¤–部キー検査ã§ã‚¨ãƒ©ãƒ¼ã€‚変更ã¯å…ƒã«æˆ»ã‚Šã¾ã™ã€‚ + + + + This table did not pass a foreign-key check.<br/>You should run 'Tools | Foreign-Key Check' and fix the reported issues. + ã“ã®ãƒ†ãƒ¼ãƒ–ルã¯å¤–部キー検査ã«åˆæ ¼ã—ã¾ã›ã‚“ã§ã—ãŸã€‚<br/>'ツール | 外部キー検査' を実行ã—ã€å ±å‘Šã•れãŸå•題を解決ã—ã¾ã™ã€‚ + + + + You are already executing SQL statements. Do you want to stop them in order to execute the current statements instead? Note that this might leave the database in an inconsistent state. + SQLæ–‡ã¯æ—¢ã«å®Ÿè¡Œä¸­ã§ã™ã€‚替ã‚りã«ç¾åœ¨ã®æ–‡ã‚’実行ã™ã‚‹ãŸã‚ã€ä¸­æ­¢ã—ã¾ã™ã‹? 注æ„: ã“れã¯ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã«ä¸€è²«æ€§ãŒãªã„状態を残ã™ã‹ã‚‚ã—れã¾ã›ã‚“。 + + + + -- EXECUTING SELECTION IN '%1' +-- + -- '%1 内ã®é¸æŠžéƒ¨åˆ†ã‚’実行中' +-- + + + + -- EXECUTING LINE IN '%1' +-- + -- '%1 内ã®è¡Œã‚’実行中' +-- + + + + -- EXECUTING ALL IN '%1' +-- + -- '%1 内をã™ã¹ã¦å®Ÿè¡Œä¸­' +-- + + + + Result: %1 + çµæžœ: %1 + + + + Setting PRAGMA values or vacuuming will commit your current transaction. +Are you sure? + PRAGMA 値ã®è¨­å®šã‚„ãƒã‚­ãƒ¥ãƒ¼ãƒ ã¯ç¾åœ¨ã®ãƒˆãƒ©ãƒ³ã‚¶ã‚¯ã‚·ãƒ§ãƒ³ã‚’コミットã—ã¾ã™ã€‚ +本当ã«è¡Œã„ã¾ã™ã‹? + + + + %1 rows returned in %2ms + %1 行㌠%2ms ã§è¿”ã•れã¾ã—㟠+ + + + + At line %1: + %1 行目: + + + + Result: %2 + çµæžœ: %2 + + + + Choose text files + ãƒ†ã‚­ã‚¹ãƒˆãƒ•ã‚¡ã‚¤ãƒ«ã‚’é¸æŠž + + + + Error while saving the database file. This means that not all changes to the database were saved. You need to resolve the following error first. + +%1 + データベースã®ä¿å­˜ä¸­ã«ã‚¨ãƒ©ãƒ¼ã€‚ã“れã¯å…¨ã¦ã®å¤‰æ›´ãŒãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã«ä¿å­˜ã•れã¦ã„ãªã‹ã£ãŸãŸã‚ã§ã™ã€‚ã¾ãšã€ä»¥ä¸‹ã®ã‚¨ãƒ©ãƒ¼ã‚’解決ã—ã¦ãã ã•ã„。 + +%1 + + + + Are you sure you want to undo all changes made to the database file '%1' since the last save? + 本当ã«ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ãƒ•ァイル '%1' ã¸ã®æœ€å¾Œã®ä¿å­˜å¾Œã«è¡Œã‚れãŸã™ã¹ã¦ã®å¤‰æ›´ã‚’å…ƒã«æˆ»ã—ã¾ã™ã‹? + + + + Choose a file to import + インãƒãƒ¼ãƒˆã™ã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ã‚’é¸æŠž + + + + &%1 %2%3 + &%1 %2%3 + + + + (read only) + (読ã¿å–り専用) + + + + Open Database or Project + データベース化プロジェクトを開ã + + + + Attach Database... + ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã«æŽ¥ç¶š... + + + + Import CSV file(s)... + CSVファイルをインãƒãƒ¼ãƒˆ... + + + + Select the action to apply to the dropped file(s). <br/>Note: only 'Import' will process more than one file. + + ドロップã•れãŸãƒ•ァイルã«å¯¾ã—ã¦è¡Œã†æ“ä½œã‚’é¸æŠžã—ã¦ãã ã•ã„。 <br/>注æ„: 'インãƒãƒ¼ãƒˆ' ã®ã¿ãŒè¤‡æ•°ãƒ•ァイルを処ç†ã§ãã¾ã™ã€‚ + + + + + Do you want to save the changes made to SQL tabs in a new project file? + æ–°ã—ã„プロジェクトファイルã«SQLタブã§è¡Œã‚れãŸå¤‰æ›´ã‚’ä¿å­˜ã—ã¾ã™ã‹? + + + + Do you want to save the changes made to SQL tabs in the project file '%1'? + プロジェクトファイル '%1' ã«SQLタブã§è¡Œã‚れãŸå¤‰æ›´ã‚’ä¿å­˜ã—ã¾ã™ã‹? + + + + Do you want to save the changes made to the SQL file %1? + 変更をSQLファイル %1 ã«ä¿å­˜ã—ã¾ã™ã‹? + + + + The statements in this tab are still executing. Closing the tab will stop the execution. This might leave the database in an inconsistent state. Are you sure you want to close the tab? + ã“ã®ã‚¿ãƒ–ã®æ–‡ã¯ã¾ã å®Ÿè¡Œä¸­ã§ã™ã€‚タブを閉ã˜ã‚‹ã¨å®Ÿè¡ŒãŒä¸­æ­¢ã•れã¾ã™ã€‚ã“れã¯ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã«ä¸€è²«æ€§ãŒãªã„状態を残ã™ã‹ã‚‚ã—れã¾ã›ã‚“。本当ã«ã‚¿ãƒ–ã‚’é–‰ã˜ã¾ã™ã‹? + + + + Text files(*.sql *.txt);;All files(*) + テキストファイル(*.sql *.txt);;ã™ã¹ã¦ã®ãƒ•ァイル(*) + + + + Do you want to create a new database file to hold the imported data? +If you answer no we will attempt to import the data in the SQL file to the current database. + インãƒãƒ¼ãƒˆã—ãŸãƒ‡ãƒ¼ã‚¿ã‚’ä¿æŒã™ã‚‹æ–°ã—ã„データベースを作æˆã—ã¾ã™ã‹ +ã„ã„ãˆã‚’é¸æŠžã™ã‚‹ã¨ã€SQLファイルã‹ã‚‰ã®ãƒ‡ãƒ¼ã‚¿ã‚’ç¾åœ¨ã®ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã«ã‚¤ãƒ³ãƒãƒ¼ãƒˆã—よã†ã¨ã—ã¾ã™ã€‚ + + + + Do you want to save the changes made to the project file '%1'? + プロジェクトファイル '%1' ã«å¤‰æ›´ã‚’ä¿å­˜ã—ã¾ã™ã‹? + + + + Execution finished with errors. + エラーãŒã‚りã¾ã—ãŸãŒã€å®Ÿè¡ŒãŒçµ‚了ã—ã¾ã—ãŸã€‚ + + + + Execution finished without errors. + エラーãªã—ã§å®Ÿè¡ŒãŒçµ‚了ã—ã¾ã—ãŸã€‚ + + + + File %1 already exists. Please choose a different name. + ファイル %1 ã¯æ—¢ã«å­˜åœ¨ã—ã¦ã„ã¾ã™ã€‚é•ã†åå‰ã‚’é¸ã‚“ã§ãã ã•ã„。 + + + + Error importing data: %1 + データã®ã‚¤ãƒ³ãƒãƒ¼ãƒˆã§ã‚¨ãƒ©ãƒ¼: %1 + + + + Import completed. Some foreign key constraints are violated. Please fix them before saving. + インãƒãƒ¼ãƒˆãŒçµ‚了ã—ã¾ã—ãŸã€‚ã„ãã¤ã‹ã®å¤–部キー制約ã«é•åãŒã‚りã¾ã™ã€‚ä¿å­˜å‰ã«ä¿®æ­£ã—ã¦ãã ã•ã„。 + + + + Import completed. + インãƒãƒ¼ãƒˆå®Œäº†ã€‚ + + + + Delete View + ビューを削除 + + + + Modify View + ビューを変更 + + + + Delete Trigger + トリガーを削除 + + + + Modify Trigger + トリガーを変更 + + + + Delete Index + インデックスを削除 + + + + Modify Index + インデックスを変更 + + + + Modify Table + テーブルを変更 + + + + Setting PRAGMA values will commit your current transaction. +Are you sure? + PRAGMA 値ã®è¨­å®šã¯ç¾åœ¨ã®ãƒˆãƒ©ãƒ³ã‚¶ã‚¯ã‚·ãƒ§ãƒ³ã‚’コミットã—ã¾ã™ã€‚ +本当ã«è¡Œã„ã¾ã™ã‹? + + + + Select SQL file to open + é–‹ãSQLãƒ•ã‚¡ã‚¤ãƒ«ã‚’é¸æŠž + + + + Select file name + ファイルåã‚’é¸æŠž + + + + Select extension file + æ‹¡å¼µãƒ•ã‚¡ã‚¤ãƒ«ã‚’é¸æŠž + + + + Extension successfully loaded. + æ‹¡å¼µã®èª­ã¿è¾¼ã¿ã«æˆåŠŸã—ã¾ã—ãŸã€‚ + + + + Error loading extension: %1 + æ‹¡å¼µã®èª­ã¿è¾¼ã¿ã§ã‚¨ãƒ©ãƒ¼: %1 + + + + + Don't show again + 二度ã¨è¡¨ç¤ºã—ãªã„ + + + + New version available. + æ–°ã—ã„ãƒãƒ¼ã‚¸ãƒ§ãƒ³ãŒã‚りã¾ã™ã€‚ + + + + A new DB Browser for SQLite version is available (%1.%2.%3).<br/><br/>Please download at <a href='%4'>%4</a>. + æ–°ã—ã„ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã® DB Browser for SQLite (%1.%2.%3)ãŒã‚りã¾ã™ã€‚<br/><br/><a href='%4'>%4</a>ã‹ã‚‰ãƒ€ã‚¦ãƒ³ãƒ­ãƒ¼ãƒ‰ã—ã¦ãã ã•ã„。 + + + + Choose a project file to open + é–‹ããƒ—ãƒ­ã‚¸ã‚§ã‚¯ãƒˆãƒ•ã‚¡ã‚¤ãƒ«ã‚’é¸æŠž + + + + DB Browser for SQLite project file (*.sqbpro) + DB Browser for SQLite プロジェクトファイル (*.sqbpro) + + + + This project file is using an old file format because it was created using DB Browser for SQLite version 3.10 or lower. Loading this file format is still fully supported but we advice you to convert all your project files to the new file format because support for older formats might be dropped at some point in the future. You can convert your files by simply opening and re-saving them. + ã“ã®ãƒ—ロジェクトファイル㯠DB Browser for SQLite version 3.10 以下ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã§ä½¿ã‚れãŸã€å¤ã„ファイルフォーマットを使用ã—ã¦ã„ã¾ã™ã€‚ã“ã®ãƒ•ァイルフォーマットã®èª­ã¿è¾¼ã¿ã¯ã„ã¾ã å®Œå…¨ã«ã‚µãƒãƒ¼ãƒˆã•れã¦ã„ã¾ã™ãŒã€å°†æ¥å¤ã„フォーマットã®ã‚µãƒãƒ¼ãƒˆã¯ãªããªã‚‹ãŸã‚ã€ã™ã¹ã¦ã®ãƒ—ロジェクトファイルを新ã—ã„フォーマットã«å¤‰æ›ã™ã‚‹ã“ã¨ã‚’ãŠã™ã™ã‚ã—ã¾ã™ã€‚ファイルを変æ›ã™ã‚‹ã«ã¯å˜ç´”ã«ãƒ•ァイルを開ãå†ä¿å­˜ã—ã¾ã™ã€‚ + + + + Collation needed! Proceed? + ç…§åˆé †åºãŒå¿…è¦ã§ã™!続行ã—ã¾ã™ã‹? + + + + A table in this database requires a special collation function '%1' that this application can't provide without further knowledge. +If you choose to proceed, be aware bad things can happen to your database. +Create a backup! + ã“ã®ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã«ã‚るテーブルã¯ç‰¹åˆ¥ãªç…§åˆé †åºé–¢æ•° '%1' ãŒå¿…è¦ã§ã™ãŒã€ã“ã®ã‚¢ãƒ—ãƒªã‚±ãƒ¼ã‚·ãƒ§ãƒ³ã¯æ›´ãªã‚‹çŸ¥è­˜ãªã—ã§ã¯æä¾›ã§ãã¾ã›ã‚“。 +続行ã™ã‚‹ã¨ã€ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã«ä½•ã‹æ‚ªã„ã“ã¨ãŒã‚ã‚‹ã‹ã‚‚ã—れã¾ã›ã‚“。 +ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—を作æˆã—ã¦ãã ã•ã„! + + + + creating collation + ç…§åˆé †åºã®ä½œæˆä¸­ + + + + Set a new name for the SQL tab. Use the '&&' character to allow using the following character as a keyboard shortcut. + SQLã‚¿ãƒ–ã«æ–°ã—ã„åå‰ã‚’設定ã—ã¦ãã ã•ã„。'&&'ã®æ–‡å­—を使ã†ã¨ã€ãã®æ¬¡ã®æ–‡å­—をキーボードショートカットã«ã§ãã¾ã™ã€‚ + + + + Please specify the view name + ビューã®åå‰ã‚’指定ã—ã¦ãã ã•ã„ + + + + There is already an object with that name. Please choose a different name. + ãã®åå‰ã®ã‚ªãƒ–ã‚¸ã‚§ã‚¯ãƒˆã¯æ—¢ã«å­˜åœ¨ã—ã¾ã™ã€‚別ã®åå‰ã‚’é¸ã‚“ã§ãã ã•ã„。 + + + + View successfully created. + ビューã®ä½œæˆã«æˆåŠŸã—ã¾ã—ãŸã€‚ + + + + Error creating view: %1 + ビューã®ä½œæˆã§ã‚¨ãƒ©ãƒ¼: %1 + + + + This action will open a new SQL tab for running: + ã“ã®æ“作ã¯å®Ÿè¡Œã®ãŸã‚æ–°ã—ã„SQLタブを開ãã¾ã™: + + + + Press Help for opening the corresponding SQLite reference page. + ヘルプを押ã™ã¨ã€å¯¾å¿œã™ã‚‹ SQLite ã®ãƒªãƒ•ァレンスページを開ãã¾ã™ã€‚ + + + + NullLineEdit + + + Set to NULL + NULL ã«è¨­å®š + + + + Alt+Del + Alt+Del + + + + PlotDock + + + Plot + プロット + + + + <html><head/><body><p>This pane shows the list of columns of the currently browsed table or the just executed query. You can select the columns that you want to be used as X or Y axis for the plot pane below. The table shows detected axis type that will affect the resulting plot. For the Y axis you can only select numeric columns, but for the X axis you will be able to select:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Date/Time</span>: strings with format &quot;yyyy-MM-dd hh:mm:ss&quot; or &quot;yyyy-MM-ddThh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Date</span>: strings with format &quot;yyyy-MM-dd&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Time</span>: strings with format &quot;hh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Label</span>: other string formats. Selecting this column as X axis will produce a Bars plot with the column values as labels for the bars</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Numeric</span>: integer or real values</li></ul><p>Double-clicking the Y cells you can change the used color for that graph.</p></body></html> + <html><head/><body><p>ã“ã®ãƒšã‚¤ãƒ³ã¯ç¾åœ¨é–²è¦§ä¸­ã®ãƒ†ãƒ¼ãƒ–ルã‹ç›´å‰ã«å®Ÿè¡Œã—ãŸã‚¯ã‚¨ãƒªãƒ¼ã®ã‚«ãƒ©ãƒ ã®ä¸€è¦§ã‚’表示ã—ã¾ã™ã€‚下ã®ãƒ—ロットペインã§Xã‚‚ã—ãã¯Y軸ã¨ã—ã¦ä½¿ç”¨ã•ã‚Œã‚‹ã‚«ãƒ©ãƒ ã‚’é¸æŠžã§ãã¾ã™ã€‚表ã¯çµæžœã®ãƒ—ロットã«ä½¿ç”¨ã§ãる軸ã®ç¨®é¡žã‚’表示ã—ã¾ã™ã€‚Y軸ã«ã¯æ•°å€¤ã®ã‚«ãƒ©ãƒ ã®ã¿é¸æŠžã§ãã¾ã™ãŒã€X軸ã«ã¯ã“れらãŒé¸æŠžã§ãã¾ã™:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">日時</span>: &quot;yyyy-MM-dd hh:mm:ss&quot; ã‚‚ã—ã㯠&quot;yyyy-MM-ddThh:mm:ss&quot; å½¢å¼ã®æ–‡å­—列</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">日付</span>: &quot;yyyy-MM-dd&quot; å½¢å¼ã®æ–‡å­—列</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">時刻</span>: &quot;hh:mm:ss&quot; å½¢å¼ã®æ–‡å­—列</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">ラベル</span>: ãã®ä»–ã®å½¢å¼ã®æ–‡å­—列。ã“れをX軸ã«é¸æŠžã™ã‚‹ã¨ã€ã‚«ãƒ©ãƒ ã®å€¤ã‚’棒グラフã®ãƒ©ãƒ™ãƒ«ã¨ã—ã¦è¡¨ç¤ºã—ã¾ã™</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">数値</span>: INTEGER ã‹ REAL ã®å€¤</li></ul><p>Yã®ã‚»ãƒ«ã‚’ダブルクリックã™ã‚‹ã¨ã€ã‚°ãƒ©ãƒ•ã«ä½¿ç”¨ã™ã‚‹è‰²ã‚’変更ã§ãã¾ã™ã€‚</p></body></html> + + + + Columns + カラム + + + + X + X + + + + Y1 + Y1 + + + + Y2 + Y2 + + + + Axis Type + 軸ã®ãƒ‡ãƒ¼ã‚¿åž‹ + + + + Here is a plot drawn when you select the x and y values above. + +Click on points to select them in the plot and in the table. Ctrl+Click for selecting a range of points. + +Use mouse-wheel for zooming and mouse drag for changing the axis range. + +Select the axes or axes labels to drag and zoom only in that orientation. + 上ã§Xã¨Yè»¸ã‚’é¸æŠžã™ã‚‹ã¨ã€ã“ã“ã«ã‚°ãƒ©ãƒ•ãŒæç”»ã•れã¾ã™ã€‚ + +点をクリックã™ã‚‹ã¨ã€ç‚¹ã¨è©²å½“ã™ã‚‹ãƒ†ãƒ¼ãƒ–ルã®å€¤ãŒé¸æŠžã§ãã¾ã™ã€‚Ctrl+クリックã§ç‚¹ã‚’ç¯„å›²é¸æŠžã§ãã¾ã™ã€‚ + +マウスホイールã§ã‚ºãƒ¼ãƒ ã€ãƒ‰ãƒ©ãƒƒã‚°ã§è»¸ã®ç¯„囲を変更ã§ãã¾ã™ã€‚ + +軸ã‹è»¸ã®ãƒ©ãƒ™ãƒ«ã‚’é¸æŠžã™ã‚‹ã¨ã€ã‚ºãƒ¼ãƒ ã‚„ãƒ‰ãƒ©ãƒƒã‚°ã®æ–¹å‘ã‚’é™å®šã§ãã¾ã™ã€‚ + + + + Line type: + ç·šã®ç¨®é¡ž: + + + + + None + ãªã— + + + + Line + ç›´ç·š + + + + StepLeft + 階段(左値) + + + + StepRight + 階段(å³å€¤) + + + + StepCenter + 階段(最近値) + + + + Impulse + インパルス + + + + Point shape: + 点ã®å½¢çж: + + + + Cross + × + + + + Plus + + + + + + Circle + â—‹ + + + + Disc + â— + + + + Square + â–¡ + + + + Diamond + â—‡ + + + + Star + * + + + + Triangle + â–³ + + + + TriangleInverted + â–½ + + + + CrossSquare + ×+â–¡ + + + + PlusSquare + ++â–¡ + + + + CrossCircle + ×+â—‹ + + + + PlusCircle + ++â—‹ + + + + Peace + é™è¬ + + + + <html><head/><body><p>Save current plot...</p><p>File format chosen by extension (png, jpg, pdf, bmp)</p></body></html> + <html><head/><body><p>ç¾åœ¨ã®ãƒ—ロットをä¿å­˜...</p><p>ãƒ•ã‚¡ã‚¤ãƒ«ãƒ•ã‚©ãƒ¼ãƒžãƒƒãƒˆã¯æ‹¡å¼µå­ (png, jpg, pdf, bmp) ã‹ã‚‰é¸æŠžã•れã¾ã™</p></body></html> + + + + Save current plot... + ç¾åœ¨ã®ãƒ—ロットをä¿å­˜... + + + + + Load all data and redraw plot + ã™ã¹ã¦ã®ãƒ‡ãƒ¼ã‚¿ã‚’読ã¿è¾¼ã¿å†æç”» + + + + Copy + コピー + + + + Print... + å°åˆ·... + + + + Show legend + 凡例を表示 + + + + Stacked bars + 値をç©ã¿é‡ã­ã‚‹ + + + + Date/Time + 日時 + + + + Date + 日付 + + + + Time + 時刻 + + + + + Numeric + 数値 + + + + Label + ラベル + + + + Invalid + 䏿­£ + + + + + + Row # + 行 # + + + + Load all data and redraw plot. +Warning: not all data has been fetched from the table yet due to the partial fetch mechanism. + ã™ã¹ã¦ã®ãƒ‡ãƒ¼ã‚¿ã‚’読ã¿è¾¼ã¿å†æç”»ã—ã¾ã™ã€‚ +警告: 部分的ãªãƒ•ã‚§ãƒƒãƒæ©Ÿæ§‹ã«ã‚ˆã‚Šã€ã¾ã ãƒ†ãƒ¼ãƒ–ルã‹ã‚‰ã™ã¹ã¦ã®ãƒ‡ãƒ¼ã‚¿ãŒãƒ•ェッãƒã•れã¦ã„ã‚‹ã‚ã‘ã§ã¯ã‚りã¾ã›ã‚“。 + + + + Choose an axis color + 軸ã®è‰²ã‚’é¸æŠž + + + + Choose a filename to save under + 以下をä¿å­˜ã™ã‚‹ãƒ•ァイルåã‚’é¸æŠž + + + + PNG(*.png);;JPG(*.jpg);;PDF(*.pdf);;BMP(*.bmp);;All Files(*) + PNG(*.png);;JPG(*.jpg);;PDF(*.pdf);;BMP(*.bmp);;ã™ã¹ã¦ã®ãƒ•ァイル(*) + + + + There are curves in this plot and the selected line style can only be applied to graphs sorted by X. Either sort the table or query by X to remove curves or select one of the styles supported by curves: None or Line. + ã“ã®ãƒ—ロットã«ã¯æœªã‚½ãƒ¼ãƒˆãªãƒ‡ãƒ¼ã‚¿ãŒã‚りã¾ã™ã€‚é¸æŠžã—ãŸç·šã®ç¨®é¡žã¯X軸ã§ã‚½ãƒ¼ãƒˆã•れãŸãƒ‡ãƒ¼ã‚¿ã®ã¿ã«é©ç”¨ã§ãã¾ã™ã€‚テーブルやクエリーをX軸ã§ã‚½ãƒ¼ãƒˆã™ã‚‹ã‹ã€æœªã‚½ãƒ¼ãƒˆã®ãƒ‡ãƒ¼ã‚¿ã§ã‚‚使用ã§ãる〠ãªã— ã‚„ ç›´ç·š å½¢å¼ã‚’é¸æŠžã—ã¦ãã ã•ã„。 + + + + Loading all remaining data for this table took %1ms. + ã“ã®ãƒ†ãƒ¼ãƒ–ãƒ«ã®æ®‹ã£ã¦ã„るデータã™ã¹ã¦ã®èª­ã¿è¾¼ã¿ã« %1ms ã‹ã‹ã‚Šã¾ã—ãŸã€‚ + + + + PreferencesDialog + + + Preferences + 設定 + + + + &General + 全般(&G) + + + + Default &location + デフォルトã®ãƒ•ォルダー(&L) + + + + Remember last location + 最後ã«ä½¿ç”¨ã—ãŸãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãƒ¼ã‚’記憶 + + + + Always use this location + 常ã«ã“ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãƒ¼ã‚’使用 + + + + Remember last location for session only + セッションã ã‘ã§æœ€å¾Œã«ä½¿ç”¨ã—ãŸãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãƒ¼ã‚’記憶 + + + + + + ... + ... + + + + Lan&guage + 言語(&L) + + + + Toolbar style + ツールãƒãƒ¼å½¢å¼ + + + + + + + + Only display the icon + アイコンã®ã¿è¡¨ç¤º + + + + + + + + Only display the text + 文字ã®ã¿è¡¨ç¤º + + + + + + + + The text appears beside the icon + ã‚¢ã‚¤ã‚³ãƒ³ã®æ¨ªã«æ–‡å­—を表示 + + + + + + + + The text appears under the icon + アイコンã®ä¸‹ã«æ–‡å­—を表示 + + + + + + + + Follow the style + スタイルã«å¾“ㆠ+ + + + Show remote options + リモートオプションを表示ã™ã‚‹ + + + + + + + + + + + + enabled + 有効 + + + + Automatic &updates + 自動アップデート(&U) + + + + DB file extensions + DBãƒ•ã‚¡ã‚¤ãƒ«æ‹¡å¼µå­ + + + + Manage + ç®¡ç† + + + + Main Window + メインウィンドウ + + + + Database Structure + データベース構造 + + + + Browse Data + データ閲覧 + + + + Execute SQL + SQL実行 + + + + Edit Database Cell + データベースセル編集 + + + + When this value is changed, all the other color preferences are also set to matching colors. + ã“ã®å€¤ãŒå¤‰æ›´ã•れるã¨ã€ä»–ã®è‰²è¨­å®šã™ã¹ã¦ã‚‚一致ã™ã‚‹è‰²ã«è¨­å®šã•れã¾ã™ã€‚ + + + + Follow the desktop style + デスクトップスタイルã«å¾“ㆠ+ + + + Dark style + ダークスタイル + + + + Application style + アプリケーションスタイル + + + + This sets the font size for all UI elements which do not have their own font size option. + ã“れã¯ç‹¬è‡ªã®ãƒ•ォントサイズオプションをæŒãŸãªã„å…¨ã¦ã®UIè¦ç´ ã®ãƒ•ォントサイズを設定ã—ã¾ã™ã€‚ + + + + Font size + フォントサイズ + + + + &Database + データベース(&D) + + + + Database &encoding + データベースã®ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‰(&E) + + + + Open databases with foreign keys enabled. + 外部キーを有効ã«ã—ã¦ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã‚’é–‹ã。 + + + + &Foreign keys + 外部キー(&F) + + + + Remove line breaks in schema &view + スキーマビューã‹ã‚‰æ”¹è¡Œã‚’å–り除ã(&V) + + + + When enabled, the line breaks in the Schema column of the DB Structure tab, dock and printed output are removed. + 有効ã«ã™ã‚‹ã¨ã€DB構造タブã®ã‚«ãƒ©ãƒ ã‚¹ã‚­ãƒ¼ãƒžã€ãƒ‰ãƒƒã‚¯ã‚„å°åˆ·ã•れãŸå‡ºåŠ›ã«ã‚る改行ãŒå–り除ã‹ã‚Œã¾ã™ã€‚ + + + + Prefetch block si&ze + 先読ã¿ãƒ–ロックサイズ(&Z) + + + + SQ&L to execute after opening database + データベースを開ã„ãŸå¾Œã«å®Ÿè¡Œã™ã‚‹SQL(&L) + + + + Default field type + デフォルトã®ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ãƒ‡ãƒ¼ã‚¿å½¢å¼ + + + + Database structure font size + データベース構造ã®ãƒ•ォントサイズ + + + + Data &Browser + データ閲覧(&B) + + + + Font + フォント + + + + &Font + フォント(&F) + + + + Font si&ze + フォントサイズ(&Z) + + + + Content + 内容 + + + + Symbol limit in cell + セル内ã®ã‚·ãƒ³ãƒœãƒ«ä¸Šé™ + + + + This is the maximum number of items allowed for some computationally expensive functionalities to be enabled: +Maximum number of rows in a table for enabling the value completion based on current values in the column. +Maximum number of indexes in a selection for calculating sum and average. +Can be set to 0 for disabling the functionalities. + ã“れã¯ã„ãã¤ã‹ã®è¨ˆç®—è² è·ã®é«˜ã„機能を有効ã«ã§ãã‚‹é …ç›®ã®æœ€å¤§æ•°ã§ã™ã€‚ +カラム内ã®ç¾åœ¨å€¤ã«åŸºã¥ã„ãŸå€¤è£œå®Œã‚’有効ã«ã™ã‚‹ã€ãƒ†ãƒ¼ãƒ–ル内ã®è¡Œã®æœ€å¤§æ•°ã€‚ +é¸æŠžå†…ã®åˆè¨ˆã¨å¹³å‡ã‚’計算ã™ã‚‹ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ã®æœ€å¤§æ•°ã€‚ +0ã«è¨­å®šã™ã‚‹ã¨ã“ã®æ©Ÿèƒ½ã‚’無効ã«ã§ãã¾ã™ã€‚ + + + + This is the maximum number of rows in a table for enabling the value completion based on current values in the column. +Can be set to 0 for disabling completion. + ã“れã¯ç¾åœ¨ã®å€¤ã‚’基ã«ã—ãŸã‚«ãƒ©ãƒ ã®å€¤è£œå®Œã‚’有効ã«ã—ãŸã¨ãã®ãƒ†ãƒ¼ãƒ–ル内ã®è¡Œæ•°ã®æœ€å¤§å€¤ã§ã™ã€‚ + + + + Field display + フィールド表示 + + + + Displayed &text + 表示ã•れãŸãƒ†ã‚­ã‚¹ãƒˆ(&T) + + + + Binary + ãƒã‚¤ãƒŠãƒªãƒ¼ + + + + NULL + NULL + + + + Regular + 通常 + + + + + + + + + Click to set this color + クリックã§ã“ã®è‰²ã‚’設定 + + + + Text color + 文字色 + + + + Background color + 背景色 + + + + Preview only (N/A) + 閲覧ã®ã¿(設定ä¸å¯) + + + + Filters + フィルター + + + + Escape character + エスケープ文字 + + + + Delay time (&ms) + é…延時間 (ms) (&M) + + + + Set the waiting time before a new filter value is applied. Can be set to 0 for disabling waiting. + æ–°ã—ã„フィルターã®å€¤ãŒé©ç”¨ã•れるå‰ã®å¾…機時間を設定ã—ã¾ã™ã€‚0ã«ã™ã‚‹ã¨å¾…機ã—ã¾ã›ã‚“。 + + + + &SQL + SQL(&S) + + + + Settings name + 設定å + + + + Context + 内容 + + + + Colour + 色 + + + + Bold + 太字 + + + + Italic + イタリック + + + + Underline + 下線 + + + + Keyword + キーワード + + + + Function + 関数 + + + + Table + テーブル + + + + Comment + コメント + + + + Identifier + è­˜åˆ¥å­ + + + + String + 文字列 + + + + Current line + ç¾åœ¨è¡Œ + + + + Background + 背景 + + + + Foreground + 剿™¯ + + + + SQL editor &font + SQLエディターフォント(&F) + + + + SQL &editor font size + SQLエディターフォントサイズ(&E) + + + + SQL &results font size + SQLçµæžœãƒ•ォントサイズ(&R) + + + + Tab size + タブサイズ + + + + &Wrap lines + ワードラップ(&W) + + + + Never + ã—ãªã„ + + + + At word boundaries + å˜èªžã§ + + + + At character boundaries + 文字㧠+ + + + At whitespace boundaries + 空白㧠+ + + + &Quotes for identifiers + 識別å­ã®ã‚¯ã‚©ãƒ¼ãƒˆ(&Q) + + + + Choose the quoting mechanism used by the application for identifiers in SQL code. + アプリケーションãŒSQLコード内ã§è­˜åˆ¥å­ã‚’クォートã™ã‚‹ä»•組ã¿ã‚’é¸æŠžã—ã¾ã™ã€‚ + + + + "Double quotes" - Standard SQL (recommended) + "ダブルクォート" - 一般的㪠SQL (推奨) + + + + `Grave accents` - Traditional MySQL quotes + `グレイヴアクセント` - ä¼çµ±çš„㪠MySQL ã®ã‚¯ã‚©ãƒ¼ãƒˆ + + + + [Square brackets] - Traditional MS SQL Server quotes + [角括弧] - ä¼çµ±çš„㪠MS SQL Server ã®ã‚¯ã‚©ãƒ¼ãƒˆ + + + + Code co&mpletion + コード補完(&M) + + + + Keywords in &UPPER CASE + キーワードを大文字ã«(&U) + + + + When set, the SQL keywords are completed in UPPER CASE letters. + 設定ã™ã‚‹ã¨ã€SQLキーワードを大文字ã«è£œå®Œã—ã¾ã™ã€‚ + + + + Error indicators + エラー指摘 + + + + When set, the SQL code lines that caused errors during the last execution are highlighted and the results frame indicates the error in the background + 設定ã™ã‚‹ã¨ã€æœ€å¾Œã®å®Ÿè¡Œã§ã‚¨ãƒ©ãƒ¼ãŒèµ·ããŸSQLコードã®è¡ŒãŒå¼·èª¿ã•れã€çµæžœãƒ•レームãŒãƒãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰ã§ã‚¨ãƒ©ãƒ¼ã‚’指摘ã—ã¾ã™ + + + + Hori&zontal tiling + 横ã«ä¸¦ã¹ã‚‹(&Z) + + + + If enabled the SQL code editor and the result table view are shown side by side instead of one over the other. + 有効ã«ã™ã‚‹ã¨ã€é‡ã­ã‚‹ä»£ã‚りã«ã€SQLコードエディターã¨çµæžœã‚¿ãƒ–ビューãŒä¸¦ã‚“ã§è¡¨ç¤ºã•れã¾ã™ã€‚ + + + + Close button on tabs + タブ上ã®é–‰ã˜ã‚‹ãƒœã‚¿ãƒ³ + + + + If enabled, SQL editor tabs will have a close button. In any case, you can use the contextual menu or the keyboard shortcut to close them. + å¯èƒ½ãªã‚‰ã°ã€SQLエディタータブã«é–‰ã˜ã‚‹ãƒœã‚¿ãƒ³ã‚’表示ã—ã¾ã™ã€‚ã©ã®ã‚ˆã†ãªå ´åˆã§ã‚‚ã€ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆãƒ¡ãƒ‹ãƒ¥ãƒ¼ã‚„キーボートショートカットを使ã£ã¦é–‰ã˜ã‚‹ã“ã¨ã¯ã§ãã¾ã™ã€‚ + + + + &Extensions + æ‹¡å¼µ(&E) + + + + Select extensions to load for every database: + ã™ã¹ã¦ã®ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã§èª­ã¿è¾¼ã‚€æ‹¡å¼µã‚’é¸æŠž: + + + + Add extension + 拡張を追加 + + + + Remove extension + 拡張を削除 + + + + <html><head/><body><p>While supporting the REGEXP operator SQLite doesn't implement any regular expression<br/>algorithm but calls back the running application. DB Browser for SQLite implements this<br/>algorithm for you to let you use REGEXP out of the box. However, as there are multiple possible<br/>implementations of this and you might want to use another one, you're free to disable the<br/>application's implementation and load your own by using an extension. Requires restart of the application.</p></body></html> + <html><head/><body><p>REGEXP演算å­ãŒã‚µãƒãƒ¼ãƒˆã•れã¦ã„ã‚‹é–“ã€SQLite ã¯æ­£è¦è¡¨ç¾ã‚’実装ã—ã¾ã›ã‚“ãŒã€å®Ÿè¡Œä¸­ã®ã‚¢ãƒ—リケーションをコールãƒãƒƒã‚¯ã—ã¾ã™ã€‚DB Browser for SQLite ã¯ã“れを実装ã—ã¦ã„ã‚‹ã®ã§ã€REGEXP ã‚’ã™ãã«ä½¿ãˆã¾ã™ã€‚ã—ã‹ã—ã€ã“れã«ã¯è¤‡æ•°ã®å®Ÿè£…ãŒã‚りã€ã‚¢ãƒ—リケーションã®å®Ÿè£…を無効ã«ã—拡張を使ã£ã¦ä»–ã®å®Ÿè£…を読ã¿è¾¼ã‚€ã“ã¨ãŒè‡ªç”±ã«ã§ãã¾ã™ã€‚アプリケーションã®å†èµ·å‹•ãŒå¿…è¦ã§ã™ã€‚</p></body></html> + + + + Disable Regular Expression extension + æ­£è¦è¡¨ç¾æ‹¡å¼µã‚’無効 + + + + <html><head/><body><p>SQLite provides an SQL function for loading extensions from a shared library file. Activate this if you want to use the <span style=" font-style:italic;">load_extension()</span> function from SQL code.</p><p>For security reasons, extension loading is turned off by default and must be enabled through this setting. You can always load extensions through the GUI, even though this option is disabled.</p></body></html> + <html><head/><body><p>SQLite ã¯å…±æœ‰ãƒ©ã‚¤ãƒ–ラリファイルã‹ã‚‰æ‹¡å¼µã‚’読ã¿è¾¼ã‚€SQL関数をæä¾›ã—ã¾ã™ã€‚SQLコードã‹ã‚‰<span style=" font-style:italic;">load_extension()</span>関数を使ã„ãŸã„ãªã‚‰ã°ã€.ã“れを有効ã«ã—ã¾ã™ã€‚</p><p>セキュリティー上ã®ç†ç”±ã‹ã‚‰ã€æ‹¡å¼µã®èª­ã¿è¾¼ã¿ã¯ãƒ‡ãƒ•ォルトã§ç„¡åйã«ãªã£ã¦ãŠã‚Šã€ä½¿ç”¨ã™ã‚‹ã«ã¯ã“ã®è¨­å®šã‚’有効ã«ã™ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションãŒç„¡åйã§ã‚‚ã€GUIを通ã˜ã¦æ‹¡å¼µã‚’読ã¿è¾¼ã‚€ã“ã¨ã¯å¸¸ã«ã§ãã¾ã™ã€‚</p></body></html> + + + + Allow loading extensions from SQL code + SQLã‚³ãƒ¼ãƒ‰ã§æ‹¡å¼µã®èª­ã¿è¾¼ã¿ã‚’許å¯ã™ã‚‹ + + + + Remote + リモート + + + + CA certificates + èªè¨¼å±€è¨¼æ˜Žæ›¸ + + + + Proxy + プロキシ + + + + Configure + 設定 + + + + + Subject CN + 対象CN + + + + Common Name + Common Name + + + + Subject O + 対象O + + + + Organization + Organization + + + + + Valid from + 証明開始 + + + + + Valid to + 証明終了 + + + + + Serial number + ã‚·ãƒªã‚¢ãƒ«ç•ªå· + + + + Your certificates + ã‚ãªãŸã®è¨¼æ˜Žæ›¸ + + + + Threshold for completion and calculation on selection + 補完ã¨é¸æŠžç¯„囲内ã®è¨ˆç®—ã®é–¾å€¤ + + + + Show images in cell + セル内ã«ç”»åƒã‚’表示 + + + + Enable this option to show a preview of BLOBs containing image data in the cells. This can affect the performance of the data browser, however. + ã“ã®ã‚ªãƒ—ションを有効ã«ã™ã‚‹ã¨ã€ã‚»ãƒ«å†…ã®ç”»åƒãƒ‡ãƒ¼ã‚¿ã‚’å«ã‚€ BLOB ã®ãƒ—レビューãŒã§ãã¾ã™ã€‚ã—ã‹ã—ã€ã“れã¯ãƒ‡ãƒ¼ã‚¿é–²è¦§ã®æ€§èƒ½ã«å½±éŸ¿ã—ã¾ã™ã€‚ + + + + File + ファイル + + + + Subject Common Name + 対象Common Name + + + + Issuer CN + 発行者CN + + + + Issuer Common Name + 発行者Common Name + + + + Clone databases into + ã“ã“ã«ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã‚’複製 + + + + + Choose a directory + ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãƒ¼ã‚’é¸æŠž + + + + The language will change after you restart the application. + アプリケーションをå†èµ·å‹•ã™ã‚‹ã¨ã€è¨€èªžãŒå¤‰æ›´ã•れã¾ã™ã€‚ + + + + Select extension file + æ‹¡å¼µãƒ•ã‚¡ã‚¤ãƒ«ã‚’é¸æŠž + + + + Extensions(*.so *.dylib *.dll);;All files(*) + æ‹¡å¼µ(*.so *.dylib *.dll);;ã™ã¹ã¦ã®ãƒ•ァイル(*) + + + + Import certificate file + 証明書ファイルをインãƒãƒ¼ãƒˆ + + + + No certificates found in this file. + ã“ã®ãƒ•ァイルã«è¨¼æ˜Žæ›¸ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。 + + + + Are you sure you want do remove this certificate? All certificate data will be deleted from the application settings! + 本当ã«ã“ã®è¨¼æ˜Žæ›¸ã‚’削除ã—ã¾ã™ã‹? ã™ã¹ã¦ã®è¨¼æ˜Žæ›¸ãƒ‡ãƒ¼ã‚¿ã¯ã“ã®ã‚¢ãƒ—リケーション設定ã‹ã‚‰å‰Šé™¤ã•れã¾ã™! + + + + Are you sure you want to clear all the saved settings? +All your preferences will be lost and default values will be used. + 本当ã«ä¿å­˜ã•れãŸè¨­å®šã‚’削除ã—ã¾ã™ã‹? +ã™ã¹ã¦ã®è¨­å®šã¯å¤±ã‚れã€ãƒ‡ãƒ•ォルト値ãŒä½¿ç”¨ã•れã¾ã™ã€‚ + + + + ProxyDialog + + + Proxy Configuration + プロキシ設定 + + + + Pro&xy Type + プロキシタイプ(&X) + + + + Host Na&me + ホストå(&M) + + + + Port + ãƒãƒ¼ãƒˆ + + + + Authentication Re&quired + èªè¨¼ãŒå¿…è¦(&Q) + + + + &User Name + ユーザーå(&U) + + + + Password + パスワード + + + + None + ãªã— + + + + System settings + システム設定 + + + + HTTP + HTTP + + + + Socks v5 + Socks v5 + + + + QObject + + + All files (*) + ã™ã¹ã¦ã®ãƒ•ァイル (*) + + + + Error importing data + データã®ã‚¤ãƒ³ãƒãƒ¼ãƒˆã§ã‚¨ãƒ©ãƒ¼ + + + + from record number %1 + ãƒ¬ã‚³ãƒ¼ãƒ‰ç•ªå· %1 ã§ + + + + . +%1 + . +%1 + + + + Importing CSV file... + CSVファイルをインãƒãƒ¼ãƒˆä¸­... + + + + Cancel + キャンセル + + + + SQLite database files (*.db *.sqlite *.sqlite3 *.db3) + SQLite データベースファイル (*.db *.sqlite *.sqlite3 *.db3) + + + + Left + å·¦ + + + + Right + å³ + + + + Center + 中央 + + + + Justify + å‡ç­‰ + + + + SQLite Database Files (*.db *.sqlite *.sqlite3 *.db3) + SQLite データベースファイル (*.db *.sqlite *.sqlite3 *.db3) + + + + DB Browser for SQLite Project Files (*.sqbpro) + DB Browser for SQLite プロジェクトファイル (*.sqbpro) + + + + SQL Files (*.sql) + SQL ファイル (*.sql) + + + + All Files (*) + ã™ã¹ã¦ã®ãƒ•ァイル (*) + + + + Text Files (*.txt) + テキストファイル (*.txt) + + + + Comma-Separated Values Files (*.csv) + カンマ区切りファイル (*.csv) + + + + Tab-Separated Values Files (*.tsv) + タブ区切りファイル (*.tsv) + + + + Delimiter-Separated Values Files (*.dsv) + 区切りファイル (*.dsv) + + + + Concordance DAT files (*.dat) + 用語索引 DAT ファイル (*.dat) + + + + JSON Files (*.json *.js) + JSONファイル (*.json *.js) + + + + XML Files (*.xml) + XMLファイル (*.xml) + + + + Binary Files (*.bin *.dat) + ãƒã‚¤ãƒŠãƒªãƒ¼ãƒ•ァイル (*.bin *.dat) + + + + SVG Files (*.svg) + SVG ファイル (*.svg) + + + + Hex Dump Files (*.dat *.bin) + å六進ダンプファイル (*.dat *.bin) + + + + Extensions (*.so *.dylib *.dll) + æ‹¡å¼µ (*.so *.dylib *.dll) + + + + RemoteCommitsModel + + + Commit ID + コミットID + + + + Message + メッセージ + + + + Date + 日付 + + + + Author + 作者 + + + + Size + サイズ + + + + Authored and committed by %1 + %1 ãŒä½œæˆãƒ»ã‚³ãƒŸãƒƒãƒˆã—ã¾ã—㟠+ + + + Authored by %1, committed by %2 + %1 ãŒä½œæˆ, %2 ãŒã‚³ãƒŸãƒƒãƒˆã—ã¾ã—㟠+ + + + RemoteDatabase + + + Error opening local databases list. +%1 + ローカルデータベースã®ä¸€è¦§ã‚’é–‹ãã¨ãã«ã‚¨ãƒ©ãƒ¼ã€‚ +%1 + + + + Error creating local databases list. +%1 + ローカルデータベースã®ä¸€è¦§ã®ä½œæˆã§ã‚¨ãƒ©ãƒ¼ã€‚ +%1 + + + + RemoteDock + + + Remote + リモート + + + + Identity + アイデンティティー + + + + Push currently opened database to server + ç¾åœ¨é–‹ã„ã¦ã„るデータベースをサーãƒãƒ¼ã«ãƒ—ッシュã—ã¾ã™ + + + + DBHub.io + DBHub.io + + + + <html><head/><body><p>In this pane, remote databases from dbhub.io website can be added to DB Browser for SQLite. First you need an identity:</p><ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Login to the dbhub.io website (use your GitHub credentials or whatever you want)</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Click the button to &quot;Generate client certificate&quot; (that's your identity). That'll give you a certificate file (save it to your local disk).</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Go to the Remote tab in DB Browser for SQLite Preferences. Click the button to add a new certificate to DB Browser for SQLite and choose the just downloaded certificate file.</li></ol><p>Now the Remote panel shows your identity and you can add remote databases.</p></body></html> + <html><head/><body><p>ã“ã®ãƒšã‚¤ãƒ³ã§ã¯ã€dbhub.io ウェブサイトã®ãƒªãƒ¢ãƒ¼ãƒˆãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã‚’ DB Browser for SQLite ã«è¿½åŠ ã—ã¾ã™ã€‚最åˆã«ã‚¢ã‚¤ãƒ‡ãƒ³ãƒ†ã‚£ãƒ†ã‚£ãƒ¼ãŒå¿…è¦ã§ã™ã€‚:</p><ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">dbhub.io ウェブサイトã«ãƒ­ã‚°ã‚¤ãƒ³ã—ã¾ã™ã€‚(GitHubã‹ã‚ãªãŸãŒæœ›ã‚€èªè¨¼æƒ…報を使ã„ã¾ã™)</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">ボタンをクリックã—&quotクライアント証明書を作æˆ&quotã—ã¾ã™(ã“れãŒã‚ãªãŸã®ã‚¢ã‚¤ãƒ‡ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã§ã™)。 証明書ファイルãŒä¸Žãˆã‚‰ã‚Œã¾ã™(ã‚ãªãŸã®ãƒ­ãƒ¼ã‚«ãƒ«ãƒ‡ã‚£ã‚¹ã‚¯ã«ä¿å­˜ã—ã¾ã™)。</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"> +DB Browser for SQLite 設定ã®ãƒªãƒ¢ãƒ¼ãƒˆã‚¿ãƒ–ã«è¡Œãã€æ–°ã—ã„証明書を DB Browsser for SQLite ã«è¿½åŠ ã™ã‚‹ãƒœã‚¿ãƒ³ã‚’クリックã—ã€ãƒ€ã‚¦ãƒ³ãƒ­ãƒ¼ãƒ‰ã—ãŸè¨¼æ˜Žæ›¸ãƒ•ã‚¡ã‚¤ãƒ«ã‚’é¸æŠžã—ã¾ã™ã€‚</li></ol><p>ã“れã§ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ‘ãƒãƒ«ã«ã‚ãªãŸã®ã‚¢ã‚¤ãƒ‡ãƒ³ãƒ†ã‚£ãƒ†ã‚£ãŒè¡¨ç¤ºã•れã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ãŒè¿½åŠ ã§ãã¾ã™ã€‚</p></body></html> + + + + Local + ローカル + + + + Current Database + ç¾åœ¨ã®ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ + + + + Clone + クローン + + + + User + ユーザー + + + + Database + データベース + + + + Branch + ブランム+ + + + Commits + コミット + + + + Commits for + ã“れã«ã‚³ãƒŸãƒƒãƒˆ + + + + Delete Database + データベースを削除 + + + + Delete the local clone of this database + ã“ã®ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã®ãƒ­ãƒ¼ã‚«ãƒ«ã‚¯ãƒ­ãƒ¼ãƒ³ã‚’削除 + + + + Open in Web Browser + ウェブブラウザーã§é–‹ã + + + + Open the web page for the current database in your browser + ブラウザã§ç¾åœ¨ã®ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã®ã‚¦ã‚§ãƒ–ページを開ã + + + + Clone from Link + リンクã‹ã‚‰ã‚¯ãƒ­ãƒ¼ãƒ³ + + + + Use this to download a remote database for local editing using a URL as provided on the web page of the database. + データベースã®ã‚¦ã‚§ãƒ–ãƒšãƒ¼ã‚¸ã§æä¾›ã•れるURLを使ã£ã¦ã€ãƒ­ãƒ¼ã‚«ãƒ«ç·¨é›†ç”¨ã®ãƒªãƒ¢ãƒ¼ãƒˆãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã‚’ダウンロードã™ã‚‹ã«ã¯ã€ã“れを使ã„ã¾ã™ã€‚ + + + + Refresh + æ›´æ–° + + + + Reload all data and update the views + å…¨ã¦ã®ãƒ‡ãƒ¼ã‚¿ã‚’å†èª­ã¿è¾¼ã¿ã—ビューを更新ã™ã‚‹ + + + + F5 + + + + + Clone Database + データベースをクローン + + + + Open Database + データベースを開ã + + + + Open the local copy of this database + ã“ã®ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã®ãƒ­ãƒ¼ã‚«ãƒ«ã‚³ãƒ”ーを開ã + + + + Check out Commit + コミットをãƒã‚§ãƒƒã‚¯ã‚¢ã‚¦ãƒˆ + + + + Download and open this specific commit + ã“ã®ç‰¹å®šã®ã‚³ãƒŸãƒƒãƒˆã‚’ダウンロードã—é–‹ã + + + + Check out Latest Commit + 最新ã®ã‚³ãƒŸãƒƒãƒˆã‚’ãƒã‚§ãƒƒã‚¯ã‚¢ã‚¦ãƒˆ + + + + Check out the latest commit of the current branch + ç¾åœ¨ã®ãƒ–ランãƒã®æœ€æ–°ã®ã‚³ãƒŸãƒƒãƒˆã‚’ãƒã‚§ãƒƒã‚¯ã‚¢ã‚¦ãƒˆ + + + + Save Revision to File + リヴィジョンをファイルã«ä¿å­˜ + + + + Saves the selected revision of the database to another file + データベースã®é¸æŠžã—ãŸãƒªãƒ´ã‚£ã‚¸ãƒ§ãƒ³ã‚’ã»ã‹ã®ãƒ•ァイルã«ä¿å­˜ + + + + Upload Database + データベースをアップロード + + + + Upload this database as a new commit + ã“ã®ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã‚’æ–°ã—ã„コミットã¨ã—ã¦ã‚¢ãƒƒãƒ—ロード + + + + <html><head/><body><p>You are currently using a built-in, read-only identity. For uploading your database, you need to configure and use your DBHub.io account.</p><p>No DBHub.io account yet? <a href="https://dbhub.io/"><span style=" text-decoration: underline; color:#007af4;">Create one now</span></a> and import your certificate <a href="#preferences"><span style=" text-decoration: underline; color:#007af4;">here</span></a> to share your databases.</p><p>For online help visit <a href="https://dbhub.io/about"><span style=" text-decoration: underline; color:#007af4;">here</span></a>.</p></body></html> + <html><head/><body><p>ã‚ãªãŸã¯ç¾åœ¨çµ„ã¿è¾¼ã¿ã®èª­ã¿è¾¼ã¿å°‚用ã®ã‚¢ã‚¤ãƒ‡ãƒ³ãƒ†ã‚£ãƒ†ã‚£ãƒ¼ã‚’使用ã—ã¦ã„ã¾ã™ã€‚ã‚ãªãŸã®ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã‚’アップロードã™ã‚‹ã«ã¯ã€ã‚ãªãŸã® DBHub.io アカウントを設定ã—使ã†å¿…è¦ãŒã‚りã¾ã™ã€‚</p><p>DBHub.io ã®ã‚¢ã‚«ã‚¦ãƒ³ãƒˆãŒã¾ã ãªã„? <a href="https://dbhub.io/"><span style=" text-decoration: underline; color:#007af4;">今ã™ãアカウントを作り</span></a>ã€ã‚ãªãŸã®è¨¼æ˜Žæ›¸ã‚’<a href="#preferences"><span style=" text-decoration: underline; color:#007af4;">ã“ã“ã‹ã‚‰</span></a>インãƒãƒ¼ãƒˆã—ã¦ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã‚’共有ã—ã¦ãã ã•ã„。</p><p>オンラインã®ãƒ˜ãƒ«ãƒ—ã¯<a href="https://dbhub.io/about"><span style=" text-decoration: underline; color:#007af4;">ã“ã“</span></a>を見ã¦ãã ã•ã„。</p></body></html> + + + + Back + 戻る + + + + Select an identity to connect + 接続ã™ã‚‹ã‚¢ã‚¤ãƒ‡ãƒ³ãƒ†ã‚£ãƒ†ã‚£ãƒ¼ã‚’é¸æŠž + + + + Public + 公開 + + + + This downloads a database from a remote server for local editing. +Please enter the URL to clone from. You can generate this URL by +clicking the 'Clone Database in DB4S' button on the web page +of the database. + ã“れã¯ãƒ­ãƒ¼ã‚«ãƒ«ç·¨é›†ç”¨ã«ãƒªãƒ¢ãƒ¼ãƒˆã‚µãƒ¼ãƒãƒ¼ã‹ã‚‰ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã‚’ダウンロードã—ã¾ã™ã€‚ +クローン元ã®URLを入力ã—ã¦ãã ã•ã„。ã“ã®URLã¯ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã® +ウェブページã«ã‚ã‚‹ 'Clone Database in DB4S' ボタンを +クリックã—ã¦ç”Ÿæˆã§ãã¾ã™ã€‚ + + + + Invalid URL: The host name does not match the host name of the current identity. + 䏿­£ãªURL: ホストåãŒç¾åœ¨ã®ã‚¢ã‚¤ãƒ‡ãƒ³ãƒ†ã‚£ãƒ†ã‚£ãƒ¼ã®ãƒ›ã‚¹ãƒˆåã¨ä¸€è‡´ã—ã¾ã›ã‚“。 + + + + Invalid URL: No branch name specified. + 䏿­£ãªURL: ブランãƒåãŒæŒ‡å®šã•れã¦ã„ã¾ã›ã‚“。 + + + + Invalid URL: No commit ID specified. + 䏿­£ãªURL: コミットIDãŒæŒ‡å®šã•れã¦ã„ã¾ã›ã‚“。 + + + + You have modified the local clone of the database. Fetching this commit overrides these local changes. +Are you sure you want to proceed? + データベースã®ãƒ­ãƒ¼ã‚«ãƒ«ã‚¯ãƒ­ãƒ¼ãƒ³ãŒç·¨é›†ã•れã¦ã„ã¾ã™ã€‚ã“ã®ã‚³ãƒŸãƒƒãƒˆã‚’フェッãƒã™ã‚‹ã¨ãƒ­ãƒ¼ã‚«ãƒ«ã®å¤‰æ›´ãŒç„¡è¦–ã•れã¾ã™ã€‚ +本当ã«å®Ÿè¡Œã—ã¾ã™ã‹? + + + + The database has unsaved changes. Are you sure you want to push it before saving? + データベースã«ä¿å­˜ã•れã¦ã„ãªã„変更ãŒã‚りã¾ã™ã€‚本当ã«ä¿å­˜å‰ã«ãƒ—ッシュã—ã¾ã™ã‹? + + + + The database you are trying to delete is currently opened. Please close it before deleting. + 削除ã—よã†ã¨ã—ãŸãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã¯ç¾åœ¨é–‹ã‹ã‚Œã¦ã„ã¾ã™ã€‚削除å‰ã«é–‰ã˜ã¦ãã ã•ã„。 + + + + This deletes the local version of this database with all the changes you have not committed yet. Are you sure you want to delete this database? + ã“れã¯ã“ã®ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã®ãƒ­ãƒ¼ã‚«ãƒ«ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚’ã¾ã ã‚³ãƒŸãƒƒãƒˆã—ã¦ã„ãªã„変更ã¨å…±ã«å‰Šé™¤ã—ã¾ã™ã€‚本当ã«ã“ã®ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã‚’削除ã—ã¾ã™ã‹? + + + + RemoteLocalFilesModel + + + Name + åå‰ + + + + Branch + ブランム+ + + + Last modified + 最終変更 + + + + Size + サイズ + + + + Commit + コミット + + + + File + ファイル + + + + RemoteModel + + + Name + åå‰ + + + + Commit + コミット + + + + Last modified + 最終変更 + + + + Size + サイズ + + + + Size: + サイズ: + + + + Last Modified: + 最終変更: + + + + Licence: + ライセンス: + + + + Default Branch: + デフォルトブランãƒ: + + + + RemoteNetwork + + + Choose a location to save the file + ファイルをä¿å­˜ã™ã‚‹å ´æ‰€ã‚’é¸æŠž + + + + Error opening remote file at %1. +%2 + %1 ã®ãƒªãƒ¢ãƒ¼ãƒˆãƒ•ァイルを開ãã¨ãã«ã‚¨ãƒ©ãƒ¼. +%2 + + + + Error: Invalid client certificate specified. + エラー: 䏿­£ãªã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆè¨¼æ˜Žæ›¸ãŒæŒ‡å®šã•れã¾ã—ãŸã€‚ + + + + Please enter the passphrase for this client certificate in order to authenticate. + ã“ã®ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆè¨¼æ˜Žæ›¸ã‚’確èªã™ã‚‹ãŸã‚パスフレーズを入力ã—ã¦ãã ã•ã„。 + + + + Cancel + キャンセル + + + + Uploading remote database to +%1 + リモートデータベースをã“ã“ã«ã‚¢ãƒƒãƒ—ロード中 +%1 + + + + Downloading remote database from +%1 + リモートデータベースをã“ã“ã‹ã‚‰ãƒ€ã‚¦ãƒ³ãƒ­ãƒ¼ãƒ‰ä¸­ +%1 + + + + + Error: The network is not accessible. + エラー: ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã«ã‚¢ã‚¯ã‚»ã‚¹ã§ãã¾ã›ã‚“。 + + + + Error: Cannot open the file for sending. + エラー: é€ä¿¡ã™ã‚‹ãƒ•ァイルを開ã‘ã¾ã›ã‚“。 + + + + RemotePushDialog + + + Push database + データベースをプッシュ + + + + Database na&me to push to + プッシュã™ã‚‹ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã®åå‰(&M) + + + + Commit message + コミットメッセージ + + + + Database licence + データベースライセンス + + + + Public + 公開 + + + + Branch + ブランム+ + + + Force push + 強制プッシュ + + + + Username + ユーザーå + + + + Database will be public. Everyone has read access to it. + データベースを公開ã«ã—ã¾ã™ã€‚ã™ã¹ã¦ã®äººãŒã‚¢ã‚¯ã‚»ã‚¹ã§ãã¾ã™ã€‚ + + + + Database will be private. Only you have access to it. + データベースをéžå…¬é–‹ã«ã—ã¾ã™ã€‚ã‚ãªãŸã ã‘ãŒã‚¢ã‚¯ã‚»ã‚¹ã§ãã¾ã™ã€‚ + + + + Use with care. This can cause remote commits to be deleted. + 注æ„ã—ã¦ä½¿ç”¨ã—ã¦ãã ã•ã„。ã“れã¯ãƒªãƒ¢ãƒ¼ãƒˆã‚³ãƒŸãƒƒãƒˆãŒå‰Šé™¤ã•れるå¯èƒ½æ€§ãŒã‚りã¾ã™ã€‚ + + + + RunSql + + + Execution aborted by user + 実行ã¯ãƒ¦ãƒ¼ã‚¶ãƒ¼ã«ã‚ˆã‚Šä¸­æ­¢ã•れã¾ã—㟠+ + + + , %1 rows affected + , %1 行ã«å½±éŸ¿ã‚’与ãˆã¾ã—㟠+ + + + query executed successfully. Took %1ms%2 + クエリーã®å®Ÿè¡Œã«æˆåŠŸã—ã¾ã—ãŸã€‚ %1ms%2 ã‹ã‹ã‚Šã¾ã—㟠+ + + + executing query + 実行クエリー + + + + SelectItemsPopup + + + A&vailable + 使用å¯èƒ½(&V) + + + + Sele&cted + é¸æŠžæ¸ˆ(&C) + + + + SqlExecutionArea + + + Form + フォーム + + + + Find previous match [Shift+F3] + å‰ã‚’検索 [Shift+F3] + + + + Find previous match with wrapping + ワードラップ込ã¿ã§å‰ã‚’検索 + + + + Shift+F3 + + + + + The found pattern must be a whole word + å˜èªžå˜ä½ã§æ¤œç´¢ã—ã¾ã™ + + + + Whole Words + å˜èªžå˜ä½ + + + + Text pattern to find considering the checks in this frame + ã“ã®ãƒ•レームã§ã®ãƒã‚§ãƒƒã‚¯ãƒœãƒƒã‚¯ã‚¹ã‚’考慮ã—ãŸæ¤œç´¢æ–‡å­—列 + + + + Find in editor + エディター内を検索 + + + + The found pattern must match in letter case + 大/å°æ–‡å­—を区別ã—ã¾ã™ + + + + Case Sensitive + 大/å°æ–‡å­—を区別 + + + + Find next match [Enter, F3] + 次を検索 [Enter, F3] + + + + Find next match with wrapping + ãƒžãƒƒãƒ”ãƒ³ã‚°ã§æ¬¡ã‚’検索 + + + + F3 + + + + + Interpret search pattern as a regular expression + æ­£è¦è¡¨ç¾ã§æ¤œç´¢ + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + <html><head/><body><p>設定ã™ã‚‹ã¨ã€æ¤œç´¢æ¡ä»¶ã¯UNIXæ­£è¦è¡¨ç¾ã¨è§£é‡ˆã•れã¾ã™ã€‚以下をå‚ç…§ <a href="https://ja.wikibooks.org/wiki/%E6%AD%A3%E8%A6%8F%E8%A1%A8%E7%8F%BE">Wikibooksã®æ­£è¦è¡¨ç¾</a>。</p></body></html> + + + + Regular Expression + æ­£è¦è¡¨ç¾ + + + + + Close Find Bar + 検索ãƒãƒ¼ã‚’é–‰ã˜ã‚‹ + + + + <html><head/><body><p>Results of the last executed statements.</p><p>You may want to collapse this panel and use the <span style=" font-style:italic;">SQL Log</span> dock with <span style=" font-style:italic;">User</span> selection instead.</p></body></html> + <html><head/><body><p>最後ã«å®Ÿè¡Œã—ãŸæ–‡ã®çµæžœã€‚</p><p>ã“ã®ãƒ‘ãƒãƒ«ã‚’折りãŸãŸã‚“ã§ã€<span style=" font-style:italic;">SQL Log</span>ドックã§<span style=" font-style:italic;">ユーザー</span>ã‚’é¸æŠžã—ã¦è¡¨ç¤ºã•ã›ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚</p></body></html> + + + + This field shows the results and status codes of the last executed statements. + ã“ã®ãƒ•ィールドã«ã¯æœ€å¾Œã«å®Ÿè¡Œã—ãŸæ–‡ã®çµæžœã¨ã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹ã‚³ãƒ¼ãƒ‰ãŒè¡¨ç¤ºã•れã¾ã™ã€‚ + + + + Results of the last executed statements + 最後ã«å®Ÿè¡Œã—ãŸæ–‡ã®çµæžœ + + + + Couldn't read file: %1. + ファイルを読ã‚ã¾ã›ã‚“: %1. + + + + + Couldn't save file: %1. + ファイルをä¿å­˜ã§ãã¾ã›ã‚“: %1. + + + + Your changes will be lost when reloading it! + å†èª­ã¿è¾¼ã¿ã™ã‚‹ã¨å¤‰æ›´ãŒå¤±ã‚れã¾ã™! + + + + The file "%1" was modified by another program. Do you want to reload it?%2 + ファイル "%1" ã¯ä»–ã®ãƒ—ログラムã«ã‚ˆã£ã¦å¤‰æ›´ã•れã¾ã—ãŸã€‚å†èª­ã¿è¾¼ã¿ã—ã¾ã™ã‹?%2 + + + + SqlTextEdit + + + Ctrl+/ + + + + + SqlUiLexer + + + (X) The abs(X) function returns the absolute value of the numeric argument X. + (X) abs(X) 関数ã¯ã€æ•°å€¤ã§ã‚る引数 X ã®çµ¶å¯¾å€¤ã‚’è¿”ã—ã¾ã™ã€‚ + + + + () The changes() function returns the number of database rows that were changed or inserted or deleted by the most recently completed INSERT, DELETE, or UPDATE statement. + () changes() 関数ã¯ã€æœ€å¾Œã«æˆåŠŸã—㟠INSERT, DELETE, UPDATE æ–‡ã§ã€å¤‰æ›´ã€æŒ¿å…¥ã€å‰Šé™¤ã•れãŸãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã®è¡Œæ•°ã‚’è¿”ã—ã¾ã™ã€‚ + + + + (X1,X2,...) The char(X1,X2,...,XN) function returns a string composed of characters having the unicode code point values of integers X1 through XN, respectively. + (X1,X2,...) char(X1,X2,...,XN) 関数ã¯ã€ãれãžã‚Œã®æ–‡å­—㌠Unicode 符å·ä½ç½®ã§æ•´æ•°å€¤ X1 ã‹ã‚‰ XN ã‚’æŒã¤æ–‡å­—列を返ã—ã¾ã™ã€‚ + + + + (X,Y,...) The coalesce() function returns a copy of its first non-NULL argument, or NULL if all arguments are NULL + (X,Y,...) coalesce() 関数㯠NULL ã§ãªã„引数ã®ã†ã¡ã€æœ€ã‚‚å·¦ã®å¼•æ•°ã®ã‚³ãƒ”ーを返ã—ã¾ã™ã€‚ã™ã¹ã¦ã®å¼•数㌠NULL ãªã‚‰ã°ã€NULL ã‚’è¿”ã—ã¾ã™ + + + + (X,Y) The glob(X,Y) function is equivalent to the expression "Y GLOB X". + (X,Y) glob(X,Y) é–¢æ•°ã¯æ¬¡ã®å¼ã¨åŒå€¤ã§ã™ã€‚ "Y GLOB X". + + + + (X,Y) The ifnull() function returns a copy of its first non-NULL argument, or NULL if both arguments are NULL. + (X,Y) ifnull() 関数㯠NULL ã§ãªã„引数ã®ã†ã¡ã€æœ€ã‚‚å·¦ã®å¼•æ•°ã®ã‚³ãƒ”ーを返ã—ã¾ã™ã€‚両方ã®å¼•数㌠NULL ãªã‚‰ã°ã€NULL ã‚’è¿”ã—ã¾ã™ã€‚ + + + + (X,Y) The instr(X,Y) function finds the first occurrence of string Y within string X and returns the number of prior characters plus 1, or 0 if Y is nowhere found within X. + (X,Y) instr(X,Y) é–¢æ•°ã¯æ–‡å­—列 X 内ã«ã‚る最åˆã®æ–‡å­—列 Y を検索ã—ã€ãã®å‰ã®æ–‡å­—æ•°ã«1を加ãˆãŸå€¤ã‚’è¿”ã—ã¾ã™ã€‚X ã« Y ãŒãªã„å ´åˆã¯0ã‚’è¿”ã—ã¾ã™ã€‚ + + + + (X) The hex() function interprets its argument as a BLOB and returns a string which is the upper-case hexadecimal rendering of the content of that blob. + (X) hex() 関数ã¯å¼•æ•°ã‚’ BLOB ã¨è§£é‡ˆã—ã€ãã®ä¸­èº«ã‚’大文字ã®åå…­é€²æ•°ã®æ–‡å­—列ã¨ã—ã¦è¿”ã—ã¾ã™ã€‚ + + + + () The last_insert_rowid() function returns the ROWID of the last row insert from the database connection which invoked the function. + () last_insert_rowid() 関数ã¯ã€ã“ã®é–¢æ•°ã‚’呼ã³å‡ºã—ãŸãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹æŽ¥ç¶šãŒæœ€å¾Œã« INSERT ã—ãŸè¡Œã® ROWID ã‚’è¿”ã—ã¾ã™ã€‚of the last row insert from the database connection which invoked the function. + + + + (X) For a string value X, the length(X) function returns the number of characters (not bytes) in X prior to the first NUL character. + (X) 文字列 X ã«å¯¾ã—ã€length(X) 関数ã¯ã€æœ€åˆã® NULL 文字ã®å‰ã«ã‚る文字数(ãƒã‚¤ãƒˆæ•°ã§ãªã)ã‚’è¿”ã—ã¾ã™ã€‚ + + + + (X,Y) The like() function is used to implement the "Y LIKE X" expression. + (X,Y) like() 関数㯠"Y LIKE X" å¼ã¨åŒå€¤ã§ã™ã€‚ + + + + (X,Y,Z) The like() function is used to implement the "Y LIKE X ESCAPE Z" expression. + (X,Y,Z) like() 関数㯠"Y LIKE X ESCAPE Z" å¼ã¨åŒå€¤ã§ã™ã€‚ + + + + (X) The load_extension(X) function loads SQLite extensions out of the shared library file named X. +Use of this function must be authorized from Preferences. + (X) load_extension(X) 関数ã¯ã€åå‰ãŒ X ã®å…±æœ‰ãƒ©ã‚¤ãƒ–ラリã‹ã‚‰ã™ãã« SQLite 拡張を読ã¿è¾¼ã¿ã¾ã™ã€‚. +ã“ã®é–¢æ•°ã®ä½¿ç”¨ã«ã¯ã€è¨­å®šãƒ€ã‚¤ã‚¢ãƒ­ã‚°ã‹ã‚‰ã®èªè¨¼ãŒå¿…è¦ã§ã™ã€‚ + + + + (X,Y) The load_extension(X) function loads SQLite extensions out of the shared library file named X using the entry point Y. +Use of this function must be authorized from Preferences. + (X) load_extension(X,Y) 関数ã¯ã€åå‰ãŒ X ã®å…±æœ‰ãƒ©ã‚¤ãƒ–ラリã®ã‚¨ãƒ³ãƒˆãƒªãƒ¼ãƒã‚¤ãƒ³ãƒˆ Y ã‹ã‚‰ã™ãã« SQLite 拡張を読ã¿è¾¼ã¿ã¾ã™ã€‚. +ã“ã®é–¢æ•°ã®ä½¿ç”¨ã«ã¯ã€è¨­å®šãƒ€ã‚¤ã‚¢ãƒ­ã‚°ã‹ã‚‰ã®èªè¨¼ãŒå¿…è¦ã§ã™ã€‚ + + + + (X) The lower(X) function returns a copy of string X with all ASCII characters converted to lower case. + (X) lower(X) 関数ã¯ã€ã™ã¹ã¦ ASCII 文字ã§ã‚る文字列 X ã‚’ã€ã™ã¹ã¦å°æ–‡å­—ã«å¤‰æ›ã—ãŸæ–‡å­—列を返ã—ã¾ã™ã€‚ + + + + (X) ltrim(X) removes spaces from the left side of X. + (X) ltrim(X) 関数ã¯ã€X ã®å·¦ç«¯ã«ã‚る空白をå–り除ãã¾ã™ã€‚ + + + + (X,Y) The ltrim(X,Y) function returns a string formed by removing any and all characters that appear in Y from the left side of X. + (X,Y) ltrim(X,Y)関数ã¯ã€X ã®å·¦ç«¯ã‹ã‚‰ã€ Y ã«å«ã¾ã‚Œã‚‹æ–‡å­—ã‚’ã™ã¹ã¦å–り除ã„ãŸæ–‡å­—列を返ã—ã¾ã™ã€‚ + + + + (X,Y,...) The multi-argument max() function returns the argument with the maximum value, or return NULL if any argument is NULL. + (X,Y,...) 複数ã®å¼•æ•°ã‚’æŒã¤ max() 関数ã¯å¼•æ•°ã®æœ€å¤§å€¤ã‚’è¿”ã—ã¾ã™ã€‚引数㫠NULL ãŒå«ã¾ã‚Œã¦ã„ã‚‹å ´åˆã¯ NULL ã‚’è¿”ã—ã¾ã™ã€‚ + + + + (X,Y,...) The multi-argument min() function returns the argument with the minimum value. + (X,Y,...) 複数ã®å¼•æ•°ã‚’æŒã¤ min() 関数ã¯å¼•æ•°ã®æœ€å°å€¤ã‚’è¿”ã—ã¾ã™ã€‚引数㫠NULL ãŒå«ã¾ã‚Œã¦ã„ã‚‹å ´åˆã¯ NULL ã‚’è¿”ã—ã¾ã™ã€‚ + + + + (X,Y) The nullif(X,Y) function returns its first argument if the arguments are different and NULL if the arguments are the same. + (X,Y) nullif(X,Y) 関数ã¯ã€äºŒã¤ã®å¼•æ•°ãŒé•ã†å ´åˆç¬¬ä¸€å¼•æ•°ã‚’ã€åŒã˜å ´åˆã¯ NULL ã‚’è¿”ã—ã¾ã™ã€‚ + + + + (FORMAT,...) The printf(FORMAT,...) SQL function works like the sqlite3_mprintf() C-language function and the printf() function from the standard C library. + (FORMAT,...) printf(FORMAT,...) SQL 関数ã¯ã€C言語㮠sqlite3_mprintf() é–¢æ•°ã‚„ã€æ¨™æº–Cライブラリー㮠printf() 関数ã®ã‚ˆã†ã«å‹•作ã—ã¾ã™ã€‚ + + + + (X) The quote(X) function returns the text of an SQL literal which is the value of its argument suitable for inclusion into an SQL statement. + (X) quote(X) 関数ã¯ã€å¼•æ•°ã‚’SQLæ–‡ã«å«ã‚ã‚‹ã®ã«é©ã—ãŸSQLãƒªãƒ†ãƒ©ãƒ«ã®æ–‡å­—ã«ã—ã¦è¿”ã—ã¾ã™ã€‚ + + + + () The random() function returns a pseudo-random integer between -9223372036854775808 and +9223372036854775807. + () random() 関数ã¯ã€ç¯„囲㌠-9223372036854775808 ã‹ã‚‰ +9223372036854775807 ã®æ•´æ•°ã§ã‚る疑似乱数を返ã—ã¾ã™ã€‚ + + + + (N) The randomblob(N) function return an N-byte blob containing pseudo-random bytes. + (N) randomblob(N) 関数ã¯ã€ç–‘ä¼¼ä¹±æ•°ã§æ§‹æˆã•れ㟠N ãƒã‚¤ãƒˆã® BLOB ã‚’è¿”ã—ã¾ã™ã€‚function return an N-byte blob containing pseudo-random bytes. + + + + (X,Y,Z) The replace(X,Y,Z) function returns a string formed by substituting string Z for every occurrence of string Y in string X. + (X,Y,Z) replace(X,Y,Z) 関数ã¯ã€æ–‡å­—列 X ã«å«ã¾ã‚Œã‚‹æ–‡å­—列 Y ã‚’ã™ã¹ã¦æ–‡å­—列 Z ã«ç½®ãæ›ãˆã¦è¿”ã—ã¾ã™ã€‚ + + + + (X) The round(X) function returns a floating-point value X rounded to zero digits to the right of the decimal point. + (X) round(X) 関数ã¯ã€æµ®å‹•å°æ•°ç‚¹æ•° X ã®å°æ•°ç‚¹ä»¥ä¸‹ã‚’å››æ¨äº”å…¥ã—ã¦è¿”ã—ã¾ã™ã€‚ + + + + (X,Y) The round(X,Y) function returns a floating-point value X rounded to Y digits to the right of the decimal point. + (X,Y) round(X,Y) 関数ã¯ã€æµ®å‹•å°æ•°ç‚¹æ•° X ã‚’å°æ•°ç‚¹ç¬¬ Y ä½ã¾ã§ã«ãªã‚‹ã‚ˆã†ã«å››æ¨äº”å…¥ã—ã¦è¿”ã—ã¾ã™ã€‚ + + + + (X) rtrim(X) removes spaces from the right side of X. + (X) rtrim(X) 関数ã¯ã€X ã®å³ç«¯ã«ã‚る空白をå–り除ãã¾ã™ã€‚ + + + + (X,Y) The rtrim(X,Y) function returns a string formed by removing any and all characters that appear in Y from the right side of X. + (X,Y) rtrim(X,Y) 関数ã¯ã€X ã®å³ç«¯ã‹ã‚‰ã€ Y ã«å«ã¾ã‚Œã‚‹æ–‡å­—ã‚’ã™ã¹ã¦å–り除ã„ãŸæ–‡å­—列を返ã—ã¾ã™ã€‚ + + + + (X) The soundex(X) function returns a string that is the soundex encoding of the string X. + (X) soundex(X) 関数ã¯ã€æ–‡å­—列 X ã‚’ soundex ã«ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‰ã—ãŸæ–‡å­—列を返ã—ã¾ã™ã€‚ + + + + (X,Y) substr(X,Y) returns all characters through the end of the string X beginning with the Y-th. + (X,Y) substr(X,Y) 関数ã¯ã€æ–‡å­—列 Xã®ã€å…ˆé ­ã‹ã‚‰ Y 番目ã‹ã‚‰æœ«å°¾ã¾ã§ã®æ–‡å­—列を返ã—ã¾ã™ã€‚ + + + + (X,Y,Z) The substr(X,Y,Z) function returns a substring of input string X that begins with the Y-th character and which is Z characters long. + (X,Y,Z) substr(X,Y,Z) 関数ã¯ã€æ–‡å­—列 X ã®ã€å…ˆé ­ã‹ã‚‰ Y 番目ã‹ã‚‰ Z æ–‡å­—ã®æ–‡å­—列を返ã—ã¾ã™ã€‚ + + + + () The total_changes() function returns the number of row changes caused by INSERT, UPDATE or DELETE statements since the current database connection was opened. + () total_changes() 関数ã¯ã€ç¾åœ¨é–‹ã‹ã‚ŒãŸæŽ¥ç¶šã®ã‚るデータベースã«ãŠã„ã¦ã€INSERTã€UPDATEã€DELETEã§å¤‰æ›´ã•れãŸè¡Œæ•°ã‚’è¿”ã—ã¾ã™ã€‚ returns the number of row changes caused by INSERT, UPDATE or DELETE statements since the current database connection was opened. + + + + (X) trim(X) removes spaces from both ends of X. + (X) trim(X) 関数ã¯ã€X ã®ä¸¡ç«¯ã«ã‚る空白をå–り除ãã¾ã™ã€‚ + + + + (X,Y) The trim(X,Y) function returns a string formed by removing any and all characters that appear in Y from both ends of X. + (X,Y) trim(X,Y) 関数ã¯ã€X ã®ä¸¡ç«¯ã‹ã‚‰ã€ Y ã«å«ã¾ã‚Œã‚‹æ–‡å­—ã‚’ã™ã¹ã¦å–り除ã„ãŸæ–‡å­—列を返ã—ã¾ã™ã€‚ + + + + (X) The typeof(X) function returns a string that indicates the datatype of the expression X. + (X) typeof(X) 関数ã¯ã€å¼ X ã®ãƒ‡ãƒ¼ã‚¿åž‹ã‚’ç¤ºã™æ–‡å­—列を返ã—ã¾ã™ã€‚ + + + + (X) The unicode(X) function returns the numeric unicode code point corresponding to the first character of the string X. + (X) unicode(X) 関数ã¯ã€æ–‡å­—列 X ã®æœ€åˆã®æ–‡å­—ã«å¯¾å¿œã™ã‚‹ Unicode 符å·ä½ç½®ã‚’è¿”ã—ã¾ã™ã€‚ + + + + (X) The upper(X) function returns a copy of input string X in which all lower-case ASCII characters are converted to their upper-case equivalent. + (X) upper(X) 関数ã¯ã€ã™ã¹ã¦ ASCII 文字ã§ã‚る文字列 X ã‚’ã€ã™ã¹ã¦å¤§æ–‡å­—ã«å¤‰æ›ã—ãŸæ–‡å­—列を返ã—ã¾ã™ã€‚ + + + + (N) The zeroblob(N) function returns a BLOB consisting of N bytes of 0x00. + (N) zeroblob(N) 関数ã¯ã€ã™ã¹ã¦ 0x00 ã§åŸ‹ã‚られãŸã€N ãƒã‚¤ãƒˆã® BLOB ã‚’è¿”ã—ã¾ã™ã€‚ + + + + + + + (timestring,modifier,modifier,...) + (時刻文字列, 修飾å­, 修飾å­,...) + + + + (format,timestring,modifier,modifier,...) + (フォーマット, 時刻文字列, 修飾å­, 修飾å­,...) + + + + (X) The avg() function returns the average value of all non-NULL X within a group. + (X) avg() 関数ã¯ã€ã‚°ãƒ«ãƒ¼ãƒ—内ã®éžNULLãªå€¤ã®å¹³å‡ã‚’è¿”ã—ã¾ã™ã€‚ + + + + (X) The count(X) function returns a count of the number of times that X is not NULL in a group. + (X) count(X) 関数ã¯ã‚°ãƒ«ãƒ¼ãƒ—内ã«ã‚ã‚‹ã€NULLã§ãªã„ X ã®ä»¶æ•°ã‚’è¿”ã—ã¾ã™ã€‚ + + + + (X) The group_concat() function returns a string which is the concatenation of all non-NULL values of X. + (X) group_concat() 関数ã¯ã€éžNULLãªã™ã¹ã¦ã® X を連çµã—ãŸæ–‡å­—列を返ã—ã¾ã™ã€‚ + + + + (X,Y) The group_concat() function returns a string which is the concatenation of all non-NULL values of X. If parameter Y is present then it is used as the separator between instances of X. + (X,Y) group_concat() 関数ã¯ã€éžNULLãªã™ã¹ã¦ã® X を連çµã—ãŸæ–‡å­—列を返ã—ã¾ã™ã€‚ã‚‚ã—ã€å¼•æ•° Y ãŒå­˜åœ¨ã™ã‚‹ãªã‚‰ã°ã€X を連çµã™ã‚‹ã¨ãã®åŒºåˆ‡ã‚Šæ–‡å­—ã¨ã—ã¦ä½¿ç”¨ã—ã¾ã™ã€‚ + + + + (X) The max() aggregate function returns the maximum value of all values in the group. + (X) max() 集計関数ã¯ã€ã‚°ãƒ«ãƒ¼ãƒ—内ã®(éžNULLã§ã‚ã‚‹)最大値を返ã—ã¾ã™ã€‚ + + + + (X) The min() aggregate function returns the minimum non-NULL value of all values in the group. + (X) min() 集計関数ã¯ã€ã‚°ãƒ«ãƒ¼ãƒ—内ã®(éžNULLã§ã‚ã‚‹)最å°å€¤ã‚’è¿”ã—ã¾ã™ã€‚ + + + + + (X) The sum() and total() aggregate functions return sum of all non-NULL values in the group. + (X) sum() 㨠total() 集計関数ã¯ã€ã‚°ãƒ«ãƒ¼ãƒ—内ã®éžNULLãªå€¤ã®åˆè¨ˆã‚’è¿”ã—ã¾ã™ã€‚ + + + + () The number of the row within the current partition. Rows are numbered starting from 1 in the order defined by the ORDER BY clause in the window definition, or in arbitrary order otherwise. + () ç¾åœ¨ã®åˆ†å‰²å†…ã®è¡Œç•ªå·ã€‚行ã¯ã€ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦å®šç¾©ã® ORDER BY å¥ã‚„ãれ以外ã®ä»»æ„ã®é †åºã«å¾“ã„ã€1 ã‹ã‚‰é †ã«ç•ªå·ä»˜ã‘ã•れã¾ã™ã€‚ + + + + () The row_number() of the first peer in each group - the rank of the current row with gaps. If there is no ORDER BY clause, then all rows are considered peers and this function always returns 1. + () å„グループã®é †ä½ - åŒå€¤ã¯åŒé †ä½ã§ã€æ¬¡ã®å€¤ã¯é‡è¤‡åˆ†ã ã‘é †ä½ãŒãšã‚Œã¾ã™ã€‚ã‚‚ã—ã€ORDER BY å¥ãŒãªã‘れã°ã€ã™ã¹ã¦ã®è¡Œã‚’åŒé †ä½ã¨ã¿ãªã—ã€å¸¸ã« 1 ã‚’è¿”ã—ã¾ã™ã€‚ + + + + () The number of the current row's peer group within its partition - the rank of the current row without gaps. Partitions are numbered starting from 1 in the order defined by the ORDER BY clause in the window definition. If there is no ORDER BY clause, then all rows are considered peers and this function always returns 1. + () å„グループã®é †ä½ - åŒå€¤ã¯åŒé †ä½ã§ã€æ¬¡ã®å€¤ã¯é‡è¤‡ã«é–¢ã‚らãšå‰ã®é †ä½+1ã«ãªã‚Šã¾ã™ã€‚パーティションã¯ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦å®šç¾©ã® ORDER BY å¥ã‚„ãれ以外ã®ä»»æ„ã®é †åºã«å¾“ã„ã€1 ã‹ã‚‰é †ã«ç•ªå·ä»˜ã‘ã•れã¾ã™ã€‚ã‚‚ã—ã€ORDER BY å¥ãŒãªã‘れã°ã€ã™ã¹ã¦ã®è¡Œã‚’åŒé †ä½ã¨ã¿ãªã—ã€å¸¸ã« 1 ã‚’è¿”ã—ã¾ã™ã€‚ + + + + () Despite the name, this function always returns a value between 0.0 and 1.0 equal to (rank - 1)/(partition-rows - 1), where rank is the value returned by built-in window function rank() and partition-rows is the total number of rows in the partition. If the partition contains only one row, this function returns 0.0. + () ãã®åå‰ã«ã‚‚é–¢ã‚らãšã€ã“ã®é–¢æ•°ã¯å¸¸ã« 0.0 ã‹ã‚‰ 1.0 ã®å€¤ã‚’è¿”ã—ã¾ã™ã€‚ã“ã®å€¤ã¯ã€(rank - 1)/(パーティション行数 - 1) ã§ã™ã€‚ã“ã“ã§ã€rank ã¯çµ„ã¿è¾¼ã¿ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦é–¢æ•°ã® rank()ã€ãƒ‘ーティション行数ã¯ãƒ‘ーティション内ã®è¡Œã®æ•°ã§ã™ã€‚ã‚‚ã—ã€ãƒ‘ーティションã«1行ã—ã‹å«ã¾ã‚Œã¦ã„ãªã‘れã°ã€ã“ã®é–¢æ•°ã¯ 0.0 ã‚’è¿”ã—ã¾ã™ã€‚ + + + + () The cumulative distribution. Calculated as row-number/partition-rows, where row-number is the value returned by row_number() for the last peer in the group and partition-rows the number of rows in the partition. + () ç´¯ç©åˆ†å¸ƒã€‚(行番å·)/(パーティション行数) ã§è¨ˆç®—ã•れã¾ã™ã€‚ã“ã“ã§è¡Œç•ªå·ã¯ã‚°ãƒ«ãƒ¼ãƒ—内㧠row_number() ã§è¿”ã•れãŸå€¤ã€ãƒ‘ーティション行数ã¯ãƒ‘ーティション内ã®è¡Œã®æ•°ã§ã™ã€‚ + + + + (N) Argument N is handled as an integer. This function divides the partition into N groups as evenly as possible and assigns an integer between 1 and N to each group, in the order defined by the ORDER BY clause, or in arbitrary order otherwise. If necessary, larger groups occur first. This function returns the integer value assigned to the group that the current row is a part of. + (N) 引数 N ã¯INTEGERã¨ã—ã¦æ‰±ã‚れã¾ã™ã€‚ã“ã®é–¢æ•°ã¯ãƒ‘ーティションを ORDER BY å¥ã‚„ãれ以外ã®ä»»æ„ã®é †åºã«å¾“ã„ N 個ã®ã‚°ãƒ«ãƒ¼ãƒ—ã«å¯èƒ½ãªé™ã‚Šç­‰åˆ†ã—ã€ãれãžã‚Œã®ã‚°ãƒ«ãƒ¼ãƒ—ã« 1 ã‹ã‚‰ N ã®INTEGERã‚’ã¤ã‘ã¾ã™ã€‚å¿…è¦ãŒã‚れã°ã€å…ˆé ­ã®ã»ã†ã«ã‚るグループã®ä»¶æ•°ã‚’多ãã™ã‚‹ã‚ˆã†ã«å‰²ã‚Šå½“ã¦ã‚‰ã‚Œã¾ã™ã€‚ã“ã®é–¢æ•°ã¯ç¾åœ¨ã®è¡ŒãŒå«ã¾ã‚Œã‚‹ã‚°ãƒ«ãƒ¼ãƒ—ã«å‰²ã‚Šå½“ã¦ã‚‰ã‚ŒãŸINTEGERã‚’è¿”ã—ã¾ã™ã€‚ + + + + (expr) Returns the result of evaluating expression expr against the previous row in the partition. Or, if there is no previous row (because the current row is the first), NULL. + (expr) パーティション内ã®å‰ã®è¡Œã«å¯¾ã—ã¦å¼ expr を評価ã—ãŸçµæžœã‚’è¿”ã—ã¾ã™ã€‚(先頭行ã®ãŸã‚)å‰ã®è¡ŒãŒãªã‘れã°ã€NULLã‚’è¿”ã—ã¾ã™ã€‚ + + + + (expr,offset) If the offset argument is provided, then it must be a non-negative integer. In this case the value returned is the result of evaluating expr against the row offset rows before the current row within the partition. If offset is 0, then expr is evaluated against the current row. If there is no row offset rows before the current row, NULL is returned. + (expr,offset) 引数 offset ãŒä¸Žãˆã‚‰ã‚Œã‚‹å ´åˆã€éžè² ã®INTEGERã§ã‚ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚ã“ã®å ´åˆã€ãƒ‘ーティション内㮠offset ã ã‘å‰ã®è¡Œã«å¯¾ã—ã¦å¼ expr を評価ã—ãŸçµæžœã‚’è¿”ã—ã¾ã™ã€‚offset ㌠0 ãªã‚‰ã°ã€ç¾åœ¨è¡Œã«å¯¾ã—ã¦è©•価ã—ã¾ã™ã€‚å‰ã®è¡ŒãŒãªã‘れã°ã€NULLã‚’è¿”ã—ã¾ã™ã€‚ + + + + + (expr,offset,default) If default is also provided, then it is returned instead of NULL if the row identified by offset does not exist. + (expr,offset,default) default ãŒä¸Žãˆã‚‰ã‚Œã‚‹å ´åˆã€è©²å½“ã®è¡ŒãŒãªã‘れã°ã€NULL ã®ä»£ã‚り㫠defaul 値を返ã—ã¾ã™ã€‚ + + + + (expr) Returns the result of evaluating expression expr against the next row in the partition. Or, if there is no next row (because the current row is the last), NULL. + (expr) ãƒ‘ãƒ¼ãƒ†ã‚£ã‚·ãƒ§ãƒ³å†…ã®æ¬¡ã®è¡Œã«å¯¾ã—ã¦å¼ expr を評価ã—ãŸçµæžœã‚’è¿”ã—ã¾ã™ã€‚(最終行ã®ãŸã‚)次ã®è¡ŒãŒãªã‘れã°ã€NULLã‚’è¿”ã—ã¾ã™ã€‚ + + + + (expr,offset) If the offset argument is provided, then it must be a non-negative integer. In this case the value returned is the result of evaluating expr against the row offset rows after the current row within the partition. If offset is 0, then expr is evaluated against the current row. If there is no row offset rows after the current row, NULL is returned. + (expr,offset) 引数 offset ãŒä¸Žãˆã‚‰ã‚Œã‚‹å ´åˆã€éžè² ã®INTEGERã§ã‚ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚ã“ã®å ´åˆã€ãƒ‘ーティション内㮠offset ã ã‘次ã®è¡Œã«å¯¾ã—ã¦å¼ expr を評価ã—ãŸçµæžœã‚’è¿”ã—ã¾ã™ã€‚offset ㌠0 ãªã‚‰ã°ã€ç¾åœ¨è¡Œã«å¯¾ã—ã¦è©•価ã—ã¾ã™ã€‚次ã®è¡ŒãŒãªã‘れã°ã€NULLã‚’è¿”ã—ã¾ã™ã€‚ + + + + (expr) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the first row in the window frame for each row. + (expr) ã“ã®çµ„ã¿è¾¼ã¿ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦é–¢æ•°ã¯ã€åŒã˜é›†è¨ˆã‚¦ã‚£ãƒ³ãƒ‰ã‚¦é–¢æ•°ã‚’使ã£ã¦ãれãžã‚Œã®è¡Œã®ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ãƒ•レームを計算ã—ã¾ã™ã€‚å„行ã®ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ãƒ•ãƒ¬ãƒ¼ãƒ ã®æœ€åˆã®è¡Œã«å¯¾ã—ã¦è©•価ã•れる expr ã®å€¤ã‚’è¿”ã—ã¾ã™ã€‚ + + + + (expr) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the last row in the window frame for each row. + (expr) ã“ã®çµ„ã¿è¾¼ã¿ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦é–¢æ•°ã¯ã€åŒã˜é›†è¨ˆã‚¦ã‚£ãƒ³ãƒ‰ã‚¦é–¢æ•°ã‚’使ã£ã¦ãれãžã‚Œã®è¡Œã®ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ãƒ•レームを計算ã—ã¾ã™ã€‚å„行ã®ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ãƒ•ãƒ¬ãƒ¼ãƒ ã®æœ€å¾Œã®è¡Œã«å¯¾ã—ã¦è©•価ã•れる expr ã®å€¤ã‚’è¿”ã—ã¾ã™ã€‚ + + + + (expr,N) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the row N of the window frame. Rows are numbered within the window frame starting from 1 in the order defined by the ORDER BY clause if one is present, or in arbitrary order otherwise. If there is no Nth row in the partition, then NULL is returned. + (expr,N) ã“ã®çµ„ã¿è¾¼ã¿ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦é–¢æ•°ã¯ã€åŒã˜é›†è¨ˆã‚¦ã‚£ãƒ³ãƒ‰ã‚¦é–¢æ•°ã‚’使ã£ã¦ãれãžã‚Œã®è¡Œã®ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ãƒ•レームを計算ã—ã¾ã™ã€‚å„行ã®ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ãƒ•レーム㮠N 番目ã®è¡Œã«å¯¾ã—ã¦è©•価ã•れる expr ã®å€¤ã‚’è¿”ã—ã¾ã™ã€‚行ã¯ã€ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦å®šç¾©ã® ORDER BY å¥ã‚„ãれ以外ã®ä»»æ„ã®é †åºã«å¾“ã„ã€1 ã‹ã‚‰é †ã«ç•ªå·ä»˜ã‘ã•れã¾ã™ã€‚ N 番目ã®è¡ŒãŒãƒ‘ーティションã«ãªã„å ´åˆã€NULL ãŒè¿”ã•れã¾ã™ã€‚ + + + + SqliteTableModel + + + reading rows + 行を読ã¿è¾¼ã¿ä¸­ + + + + loading... + 読ã¿è¾¼ã¿ä¸­... + + + + References %1(%2) +Hold %3Shift and click to jump there + ã“れをå‚ç…§ %1(%2) +%3Shift ã‚’ä¿æŒã—クリックã§ã‚¸ãƒ£ãƒ³ãƒ— + + + + Error changing data: +%1 + データã®å¤‰æ›´ã§ã‚¨ãƒ©ãƒ¼: +%1 + + + + retrieving list of columns + カラムã®ä¸€è¦§ã‚’å–得中 + + + + Fetching data... + データをå–得中... + + + + + Cancel + キャンセル + + + + TableBrowser + + + Browse Data + データ閲覧 + + + + &Table: + テーブル(&T): + + + + Select a table to browse data + 閲覧ã™ã‚‹ãƒ‡ãƒ¼ã‚¿ã®ãƒ†ãƒ¼ãƒ–ãƒ«ã‚’é¸æŠž + + + + Use this list to select a table to be displayed in the database view + ã“ã®ä¸€è¦§ã‚’使ã£ã¦ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ãƒ“ューã«è¡¨ç¤ºã™ã‚‹ãƒ†ãƒ¼ãƒ–ãƒ«ã‚’é¸æŠž + + + + This is the database table view. You can do the following actions: + - Start writing for editing inline the value. + - Double-click any record to edit its contents in the cell editor window. + - Alt+Del for deleting the cell content to NULL. + - Ctrl+" for duplicating the current record. + - Ctrl+' for copying the value from the cell above. + - Standard selection and copy/paste operations. + ã“れã¯ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ãƒ†ãƒ¼ãƒ–ルã®ãƒ“ューã§ã™ã€‚ä»¥ä¸‹ã®æ“作ãŒã§ãã¾ã™: + - 値をインライン編集ã§ãã¾ã™ã€‚ + - レコードをダブルクリックã™ã‚‹ã¨ã€ã‚»ãƒ«ç·¨é›†ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ã§å†…容を編集ã§ãã¾ã™ã€‚ + - Alt+Del ã§ã‚»ãƒ«ã®å†…容をNULLã«ã§ãã¾ã™ã€‚ + - Ctrl+" ã§ç¾åœ¨ã®ãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’複製ã§ãã¾ã™ã€‚ + - Ctrl+' ã§ä¸Šã®ã‚»ãƒ«ã®å€¤ã‚’コピーã§ãã¾ã™ã€‚ + - é€šå¸¸ã®æ“作ã§ã€é¸æŠž/コピー/貼り付ã‘ãŒã§ãã¾ã™ã€‚ + + + + Text pattern to find considering the checks in this frame + ã“ã®ãƒ•レームã§ã®ãƒã‚§ãƒƒã‚¯ãƒœãƒƒã‚¯ã‚¹ã‚’考慮ã—ãŸæ¤œç´¢æ–‡å­—列 + + + + Find in table + テーブルを検索 + + + + Find previous match [Shift+F3] + å‰ã‚’検索 [Shift+F3] + + + + Find previous match with wrapping + 折り返ã—ã¦å‰ã‚’検索 + + + + Shift+F3 + + + + + Find next match [Enter, F3] + 次を検索 [Enter, F3] + + + + Find next match with wrapping + 折り返ã—ã¦æ¬¡ã‚’検索 + + + + F3 + + + + + The found pattern must match in letter case + 大/å°æ–‡å­—を区別ã—ã¾ã™ + + + + Case Sensitive + 大/å°æ–‡å­—を区別 + + + + The found pattern must be a whole word + å˜èªžå˜ä½ã§æ¤œç´¢ã—ã¾ã™ + + + + Whole Cell + セル全体ã«ä¸€è‡´ + + + + Interpret search pattern as a regular expression + æ­£è¦è¡¨ç¾ã§æ¤œç´¢ + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + <html><head/><body><p>設定ã™ã‚‹ã¨ã€æ¤œç´¢æ¡ä»¶ã¯UNIXæ­£è¦è¡¨ç¾ã¨è§£é‡ˆã•れã¾ã™ã€‚以下をå‚ç…§ <a href="https://ja.wikibooks.org/wiki/%E6%AD%A3%E8%A6%8F%E8%A1%A8%E7%8F%BE">Wikibooksã®æ­£è¦è¡¨ç¾</a>。</p></body></html> + + + + Regular Expression + æ­£è¦è¡¨ç¾ + + + + + Close Find Bar + 検索ãƒãƒ¼ã‚’é–‰ã˜ã‚‹ + + + + Text to replace with + ã“ã®æ–‡å­—列ã§ç½®ãæ›ãˆã‚‹ + + + + Replace with + ç½®æ› + + + + Replace next match + 次ã«ä¸€è‡´ã—ãŸã‚‚ã®ã‚’ç½®ãæ›ãˆ + + + + + Replace + ç½®æ› + + + + Replace all matches + 一致ã—ãŸã‚‚ã®ã™ã¹ã¦ã‚’ç½®ãæ›ãˆ + + + + Replace all + ã™ã¹ã¦ç½®æ› + + + + <html><head/><body><p>Scroll to the beginning</p></body></html> + 先頭㸠+ + + + <html><head/><body><p>Clicking this button navigates to the beginning in the table view above.</p></body></html> + <html><head/><body><p>ã“ã®ãƒœã‚¿ãƒ³ã‚’クリックã™ã‚‹ã¨ã€ä¸Šã®ãƒ†ãƒ¼ãƒ–ルビューを先頭ã¾ã§ç§»å‹•ã—ã¾ã™ã€‚</p></body></html> + + + + |< + |< + + + + Scroll one page upwards + 1ページå‰ã¸ + + + + <html><head/><body><p>Clicking this button navigates one page of records upwards in the table view above.</p></body></html> + <html><head/><body><p>ã“ã®ãƒœã‚¿ãƒ³ã‚’クリックã™ã‚‹ã¨ã€ä¸Šã®ãƒ†ãƒ¼ãƒ–ルビューを1ページå‰ã¸ç§»å‹•ã—ã¾ã™ã€‚</p></body></html> + + + + < + < + + + + 0 - 0 of 0 + 0 - 0 of 0 + + + + Scroll one page downwards + 1ページ後㸠+ + + + <html><head/><body><p>Clicking this button navigates one page of records downwards in the table view above.</p></body></html> + <html><head/><body><p>ã“ã®ãƒœã‚¿ãƒ³ã‚’クリックã™ã‚‹ã¨ã€ä¸Šã®ãƒ†ãƒ¼ãƒ–ルビューを1ページ後ã¸ç§»å‹•ã—ã¾ã™ã€‚</p></body></html> + + + + > + > + + + + Scroll to the end + 末尾㸠+ + + + <html><head/><body><p>Clicking this button navigates up to the end in the table view above.</p></body></html> + <html><head/><body><p>ã“ã®ãƒœã‚¿ãƒ³ã‚’クリックã™ã‚‹ã¨ã€ä¸Šã®ãƒ†ãƒ¼ãƒ–ルビューを末尾ã¾ã§ç§»å‹•ã—ã¾ã™ã€‚</p></body></html> + + + + >| + >| + + + + <html><head/><body><p>Click here to jump to the specified record</p></body></html> + <html><head/><body><p>ã“ã“をクリックã—ã¦æŒ‡å®šã®ãƒ¬ã‚³ãƒ¼ãƒ‰ã¾ã§ç§»å‹•</p></body></html> + + + + <html><head/><body><p>This button is used to navigate to the record number specified in the Go to area.</p></body></html> + <html><head/><body><p>ã“ã®ãƒœã‚¿ãƒ³ã¯ ã“ã“ã¸ç§»å‹• ã®å…¥åŠ›æ¬„ã§æŒ‡å®šã•れãŸç•ªå·ã®ãƒ¬ã‚³ãƒ¼ãƒ‰ã¸ç§»å‹•ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã—ã¾ã™ã€‚</p></body></html> + + + + Go to: + ã“ã“ã¸ç§»å‹•: + + + + Enter record number to browse + 閲覧ã™ã‚‹ãƒ¬ã‚³ãƒ¼ãƒ‰ã®ç•ªå·ã‚’入力 + + + + Type a record number in this area and click the Go to: button to display the record in the database view + ã“ã®æ¬„ã«ãƒ¬ã‚³ãƒ¼ãƒ‰ã®ç•ªå·ã‚’入力ã—ã€ã“ã“ã¸ç§»å‹•ボタンをクリックã™ã‚‹ã¨ã€ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ãƒ“ューã«ãƒ¬ã‚³ãƒ¼ãƒ‰ãŒè¡¨ç¤ºã•れã¾ã™ + + + + 1 + 1 + + + + Show rowid column + rowidカラムを表示 + + + + Toggle the visibility of the rowid column + rowidカラムã®è¡¨ç¤ºã‚’切り替ãˆã¾ã™ + + + + Unlock view editing + ビューã®ç·¨é›†ã‚’開放 + + + + This unlocks the current view for editing. However, you will need appropriate triggers for editing. + ã“れã¯ç¾åœ¨ã®ãƒ“ューã§ç·¨é›†ã§ãるよã†ã«ã—ã¾ã™ã€‚ã—ã‹ã—ã€ç·¨é›†æ™‚ã®ãƒˆãƒªã‚¬ãƒ¼ã«å¯¾å¿œã™ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚ + + + + Edit display format + 表示書å¼ã‚’編集 + + + + Edit the display format of the data in this column + ã“ã®ã‚«ãƒ©ãƒ ã®ãƒ‡ãƒ¼ã‚¿ã®è¡¨ç¤ºæ›¸å¼ã‚’編集ã—ã¾ã™ + + + + + New Record + æ–°ã—ã„レコード + + + + + Insert a new record in the current table + æ–°ã—ã„レコードをç¾åœ¨ã®ãƒ†ãƒ¼ãƒ–ãƒ«ã«æŒ¿å…¥ + + + + <html><head/><body><p>This button creates a new record in the database. Hold the mouse button to open a pop-up menu of different options:</p><ul><li><span style=" font-weight:600;">New Record</span>: insert a new record with default values in the database.</li><li><span style=" font-weight:600;">Insert Values...</span>: open a dialog for entering values before they are inserted in the database. This allows to enter values acomplishing the different constraints. This dialog is also open if the <span style=" font-weight:600;">New Record</span> option fails due to these constraints.</li></ul></body></html> + <html><head/><body><p>ã“ã®ãƒœã‚¿ãƒ³ã¯æ–°ã—ã„レコードをデータベースã«ä½œæˆã—ã¾ã™ã€‚マウスボタンを押ã—ãŸã¾ã¾ã«ã™ã‚‹ã¨ã€é•ã†ã‚ªãƒ—ションã®ãƒãƒƒãƒ—アップメニューãŒé–‹ãã¾ã™:</p><ul><li><span style=" font-weight:600;">æ–°ã—ã„レコード</span>: データベースã«ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã§æ–°ã—ã„レコードを挿入ã—ã¾ã™ã€‚</li><li><span style=" font-weight:600;">値を挿入...</span>: ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã«æŒ¿å…¥ã™ã‚‹å‰ã«ãƒ‡ãƒ¼ã‚¿ã‚’入力ã™ã‚‹ãƒ€ã‚¤ã‚¢ãƒ­ã‚°ã‚’é–‹ãã¾ã™ã€‚ã“れã§ä»–ã®åˆ¶ç´„を満ãŸã™å€¤ãŒå…¥åŠ›ã§ãã¾ã™ã€‚ã“ã®ãƒ€ã‚¤ã‚¢ãƒ­ã‚°ã¯<span style=" font-weight:600;">æ–°ã—ã„レコード</span>オプションãŒãれらã®åˆ¶ç´„ã®ã›ã„ã§å¤±æ•—ã—ãŸã¨ãã«ã‚‚é–‹ãã¾ã™ã€‚</li></ul></body></html> + + + + + Delete Record + レコードを削除 + + + + Delete the current record + ç¾åœ¨ã®ãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’削除 + + + + + This button deletes the record or records currently selected in the table + ã“ã®ãƒœã‚¿ãƒ³ã¯ãƒ†ãƒ¼ãƒ–ルã«ã‚ã‚‹ç¾åœ¨é¸æŠžä¸­ã®ãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’削除ã—ã¾ã™ + + + + + Insert new record using default values in browsed table + 閲覧中ã®ãƒ†ãƒ¼ãƒ–ルã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã‚’ä½¿ã„æ–°ã—ã„レコードを挿入ã—ã¾ã™ + + + + Insert Values... + 値を挿入... + + + + + Open a dialog for inserting values in a new record + æ–°ã—ã„レコードã«å€¤ã‚’挿入ã™ã‚‹ãƒ€ã‚¤ã‚¢ãƒ­ã‚°ã‚’é–‹ãã¾ã™ + + + + Export to &CSV + CSVã«ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆ(&C) + + + + + Export the filtered data to CSV + フィルターã•れãŸãƒ‡ãƒ¼ã‚¿ã‚’CSVã«ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆ + + + + This button exports the data of the browsed table as currently displayed (after filters, display formats and order column) as a CSV file. + ã“ã®ãƒœã‚¿ãƒ³ã¯é–²è¦§ä¸­ã®ãƒ†ãƒ¼ãƒ–ルã®ãƒ‡ãƒ¼ã‚¿ã‚’ç¾åœ¨ã®è¡¨ç¤ºé€šã‚Š(フィルターã€è¡¨ç¤ºå½¢å¼ã€ã‚«ãƒ©ãƒ é †ç•ª)ã«CSVファイルã«ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆã—ã¾ã™ã€‚ + + + + Save as &view + ビューã¨ã—ã¦ä¿å­˜(&V) + + + + + Save the current filter, sort column and display formats as a view + ç¾åœ¨ã®ãƒ•ィルターã€ã‚«ãƒ©ãƒ é †ç•ªã€è¡¨ç¤ºå½¢å¼ã‚’ビューã«ä¿å­˜ + + + + This button saves the current setting of the browsed table (filters, display formats and order column) as an SQL view that you can later browse or use in SQL statements. + ã“ã®ãƒœã‚¿ãƒ³ã¯é–²è¦§ä¸­ã®ãƒ†ãƒ¼ãƒ–ルã®ç¾åœ¨ã®è¡¨ç¤ºè¨­å®š(フィルターã€è¡¨ç¤ºå½¢å¼ã€ã‚«ãƒ©ãƒ é †ç•ª)ã‚’SQLビューã¨ã—ã¦ä¿å­˜ã—ã€ã‚ã¨ã§é–²è¦§ã‚„SQLæ–‡ã¨ã—ã¦ä½¿ç”¨ã§ãるよã†ã«ã—ã¾ã™ã€‚ + + + + Save Table As... + テーブルã«åå‰ã‚’付ã‘ã¦ä¿å­˜... + + + + + Save the table as currently displayed + ç¾åœ¨è¡¨ç¤ºã•れã¦ã„ã‚‹ã‚‚ã®ã‚’テーブルã«ä¿å­˜ + + + + <html><head/><body><p>This popup menu provides the following options applying to the currently browsed and filtered table:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Export to CSV: this option exports the data of the browsed table as currently displayed (after filters, display formats and order column) to a CSV file.</li><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Save as view: this option saves the current setting of the browsed table (filters, display formats and order column) as an SQL view that you can later browse or use in SQL statements.</li></ul></body></html> + <html><head/><body><p>ã“ã®ãƒãƒƒãƒ—アップメニューã¯ç¾åœ¨é–²è¦§ã—ã¦ã„るテーブルã«é©ç”¨ã•れる以下ã®ã‚ªãƒ—ションをæä¾›ã—ã¾ã™ã€‚:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">CSVã«ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆ: ã“ã®ã‚ªãƒ—ションã¯é–²è¦§ä¸­ã®ãƒ†ãƒ¼ãƒ–ルã®ãƒ‡ãƒ¼ã‚¿ã‚’ç¾åœ¨ã®è¡¨ç¤ºé€šã‚Š(フィルターã€è¡¨ç¤ºå½¢å¼ã€ã‚«ãƒ©ãƒ é †ç•ª)ã«CSVファイルã«ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆã—ã¾ã™ã€‚</li><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">ビューã¨ã—ã¦ä¿å­˜: ã“ã®ã‚ªãƒ—ションã¯é–²è¦§ä¸­ã®ãƒ†ãƒ¼ãƒ–ルã®ç¾åœ¨ã®è¡¨ç¤ºè¨­å®š(フィルターã€è¡¨ç¤ºå½¢å¼ã€ã‚«ãƒ©ãƒ é †ç•ª)ã‚’SQLビューã¨ã—ã¦ä¿å­˜ã—ã€ã‚ã¨ã§é–²è¦§ã‚„SQLæ–‡ã¨ã—ã¦ä½¿ç”¨ã§ãるよã†ã«ã—ã¾ã™ã€‚</li></ul></body></html> + + + + Hide column(s) + カラムを隠㙠+ + + + Hide selected column(s) + é¸æŠžã—ãŸã‚«ãƒ©ãƒ ã‚’éš ã™ + + + + Show all columns + ã™ã¹ã¦ã®ã‚«ãƒ©ãƒ ã‚’表示 + + + + Show all columns that were hidden + éš ã•れãŸã™ã¹ã¦ã®ã‚«ãƒ©ãƒ ã‚’表示 + + + + + Set encoding + エンコードã®è¨­å®š + + + + Change the encoding of the text in the table cells + テーブルã®ã‚»ãƒ«ã«ã‚るテキストã®ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‰ã‚’変更ã—ã¾ã™ + + + + Set encoding for all tables + ã™ã¹ã¦ã®ãƒ†ãƒ¼ãƒ–ルã®ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‰ã®è¨­å®š + + + + Change the default encoding assumed for all tables in the database + データベース内ã®ã™ã¹ã¦ã®ãƒ†ãƒ¼ãƒ–ルã®ãƒ‡ãƒ•ォルトエンコードを変更ã—ã¾ã™ + + + + Clear Filters + フィルターを削除 + + + + Clear all filters + ã™ã¹ã¦ã®ãƒ•ィルターを消去 + + + + + This button clears all the filters set in the header input fields for the currently browsed table. + ã“ã®ãƒœã‚¿ãƒ³ã§ç¾åœ¨é–²è¦§ã—ã¦ã„るテーブルã®ãƒ˜ãƒƒãƒ€ãƒ¼å…¥åŠ›æ¬„ã«è¨­å®šã•れãŸã™ã¹ã¦ã®ãƒ•ィルターを消去ã—ã¾ã™ã€‚ + + + + Clear Sorting + ä¸¦ã¹æ›¿ãˆã‚’解除 + + + + Reset the order of rows to the default + 行ã®é †ç•ªã‚’デフォルトã«ãƒªã‚»ãƒƒãƒˆã—ã¾ã™ + + + + + This button clears the sorting columns specified for the currently browsed table and returns to the default order. + ã“ã®ãƒœã‚¿ãƒ³ã¯ã€ç¾åœ¨é–²è¦§ä¸­ã®ãƒ†ãƒ¼ãƒ–ルã«ã‚ã‚‹ä¸¦ã³æ›¿ãˆãŸã‚«ãƒ©ãƒ ã‚’デフォルトã®é †ç•ªã«æˆ»ã—ã¾ã™ã€‚ + + + + Print + å°åˆ· + + + + Print currently browsed table data + ç¾åœ¨é–²è¦§ä¸­ã®ãƒ†ãƒ¼ãƒ–ルデータをå°åˆ· + + + + Print currently browsed table data. Print selection if more than one cell is selected. + ç¾åœ¨é–²è¦§ä¸­ã®ãƒ†ãƒ¼ãƒ–ルデータをå°åˆ·ã—ã¾ã™ã€‚複数ã®ã‚»ãƒ«ã‚’é¸æŠžã—ã¦ã„ã‚‹å ´åˆã€é¸æŠžç¯„囲をå°åˆ·ã—ã¾ã™ã€‚ + + + + Ctrl+P + + + + + Refresh + æ›´æ–° + + + + Refresh the data in the selected table + é¸æŠžã—ãŸãƒ†ãƒ¼ãƒ–ルã®ãƒ‡ãƒ¼ã‚¿ã‚’æ›´æ–° + + + + This button refreshes the data in the currently selected table. + ã“ã®ãƒœã‚¿ãƒ³ã§ç¾åœ¨é¸æŠžã—ã¦ã„るテーブルã®ãƒ‡ãƒ¼ã‚¿ã‚’æ›´æ–°ã—ã¾ã™ã€‚ + + + + F5 + + + + + Find in cells + セル内を検索 + + + + Open the find tool bar which allows you to search for values in the table view below. + テーブルビューã®ä¸‹ã«å€¤ã‚’検索ã™ã‚‹ãŸã‚ã®æ¤œç´¢ãƒ„ールãƒãƒ¼ã‚’é–‹ãã¾ã™ã€‚ + + + + + Bold + 太字 + + + + Ctrl+B + + + + + + Italic + イタリック + + + + + Underline + 下線 + + + + Ctrl+U + + + + + + Align Right + 峿ƒãˆ + + + + + Align Left + å·¦æƒãˆ + + + + + Center Horizontally + 中央æƒãˆ + + + + + Justify + å‡ç­‰å‰²ä»˜ + + + + + Edit Conditional Formats... + æ¡ä»¶ä»˜ã書å¼ã‚’編集... + + + + Edit conditional formats for the current column + ç¾åœ¨ã®ã‚«ãƒ©ãƒ ã®æ¡ä»¶ä»˜ã書å¼ã‚’編集ã—ã¾ã™ + + + + Clear Format + 書å¼ã‚’削除 + + + + Clear All Formats + ã™ã¹ã¦ã®æ›¸å¼ã‚’削除 + + + + + Clear all cell formatting from selected cells and all conditional formats from selected columns + é¸æŠžã—ãŸã‚»ãƒ«ã®ã™ã¹ã¦ã®æ›¸å¼ã‚’削除ã—ã€é¸æŠžã—ãŸã‚«ãƒ©ãƒ ã®ã™ã¹ã¦ã®æ¡ä»¶ä»˜ã書å¼ã‚’削除ã—ã¾ã™ + + + + + Font Color + フォント色 + + + + + Background Color + 背景色 + + + + Toggle Format Toolbar + フォーマットツールãƒãƒ¼ã‚’切り替㈠+ + + + Show/hide format toolbar + フォーマットツールãƒãƒ¼ã‚’表示/éžè¡¨ç¤ºã—ã¾ã™ + + + + + This button shows or hides the formatting toolbar of the Data Browser + ã“ã®ãƒœã‚¿ãƒ³ã§ãƒ‡ãƒ¼ã‚¿é–²è¦§ã®æ›¸å¼ãƒ„ールãƒãƒ¼ã‚’表示/éžè¡¨ç¤ºã—ã¾ã™ + + + + Select column + ã‚«ãƒ©ãƒ ã‚’é¸æŠž + + + + Ctrl+Space + Ctrl+スペース + + + + Replace text in cells + セル内ã®ãƒ†ã‚­ã‚¹ãƒˆã‚’ç½®ãæ›ãˆ + + + + Filter in any column + カラムをフィルター + + + + Ctrl+R + + + + + %n row(s) + + %n 行 + + + + + , %n column(s) + + , %n カラム + + + + + . Sum: %1; Average: %2; Min: %3; Max: %4 + . åˆè¨ˆ: %1; å¹³å‡: %2; 最低: %3; 最高: %4 + + + + Conditional formats for "%1" + "%1" ã®æ¡ä»¶ä»˜ãæ›¸å¼ + + + + determining row count... + 行数を計算中... + + + + %1 - %2 of >= %3 + %1 - %2 of >= %3 + + + + %1 - %2 of %3 + %1 - %2 of %3 + + + + Please enter a pseudo-primary key in order to enable editing on this view. This should be the name of a unique column in the view. + ã“ã®ãƒ“ューã§ã®ç·¨é›†ã‚’有効ã«ã™ã‚‹ãŸã‚ã€ç–‘似主キーを入力ã—ã¦ãã ã•ã„。ビューã«ä¸€æ„ãªã‚«ãƒ©ãƒ ã®åå‰ãŒå¿…è¦ã§ã™ã€‚ + + + + Delete Records + レコードを削除 + + + + Duplicate records + レコードを複製 + + + + Duplicate record + レコードを複製 + + + + Ctrl+" + + + + + Adjust rows to contents + 行を内容ã«åˆã‚ã›èª¿æ•´ + + + + Error deleting record: +%1 + レコードã®å‰Šé™¤ã§ã‚¨ãƒ©ãƒ¼: +%1 + + + + Please select a record first + 最åˆã«ãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’é¸æŠžã—ã¦ãã ã•ã„ + + + + There is no filter set for this table. View will not be created. + ã“ã®ãƒ†ãƒ¼ãƒ–ルã«ãƒ•ィルターã®è¨­å®šã¯ã‚りã¾ã›ã‚“。ビューã¯ä½œæˆã•れã¾ã›ã‚“。 + + + + Please choose a new encoding for all tables. + ã™ã¹ã¦ã®ãƒ†ãƒ¼ãƒ–ãƒ«ã®æ–°ã—ã„ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‰ã‚’é¸æŠžã—ã¦ãã ã•ã„。 + + + + Please choose a new encoding for this table. + ã™ã¹ã¦ã®ãƒ†ãƒ¼ãƒ–ãƒ«ã®æ–°ã—ã„ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‰ã‚’é¸æŠžã—ã¦ãã ã•ã„。 + + + + %1 +Leave the field empty for using the database encoding. + %1 +データベースã®ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‰ã‚’使ã†ãŸã‚ã€ãƒ•ィールドを空ã«ã—ã¾ã™ã€‚ + + + + This encoding is either not valid or not supported. + ã“ã®ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‰ã¯ä¸æ­£ã‹ã‚µãƒãƒ¼ãƒˆã•れã¦ã„ã¾ã›ã‚“。 + + + + %1 replacement(s) made. + %1 ã¤ç½®ãæ›ãˆã¾ã—ãŸã€‚ + + + + VacuumDialog + + + Compact Database + データベースを圧縮 + + + + Warning: Compacting the database will commit all of your changes. + 警告: データベースã®åœ§ç¸®ã¯ã‚ãªãŸã®å¤‰æ›´ã‚’ã™ã¹ã¦ã‚³ãƒŸãƒƒãƒˆã—ã¾ã™ã€‚ + + + + Please select the databases to co&mpact: + 圧縮ã™ã‚‹ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã‚’é¸æŠžã—ã¦ãã ã•ã„(&M): + + + diff --git a/ConfigFiles/translations/sqlb_ko_KR.qm b/ConfigFiles/translations/sqlb_ko_KR.qm new file mode 100644 index 0000000000000000000000000000000000000000..c4fc87686111cbaeaa3916a4068cdad072874fd3 GIT binary patch literal 186801 zcmce<31Cx2*FSvjZIY&GngFsYVnB9E3kZl<%2swL2t^PPN!xURZnP;-1r!BAMMOme z7X+0}%OVshP_RY1u`h!1h`2nUD2p2?D#G_WGr2cun*zS?`~5+gHn}r%=FHj8nYj`9 z@%8uo^yaJk8#nxT{PG=Nt|B7i#Pml84ev$NG9SM+AzE@owtG_1wjg?afNb|ZhBg$x zPm=B4Uw2`Dfc{|#X7`G|f(WE^0AGFhmmPN_-WGf=W zLqxNiqaBOqF`nTiQtCX3_7$SS??tOxFfM*qpXcXZCFO_dqE(*y@z>+5%tHqM(@Y}V~JimLo_Cn zXerjm?Wa?T9zoyfcagdZ&v$!QwjcgNYW`S^GlGN?!Z}yVy^54k1!A5lNKnnRT4txAJ z*%~JheQ}oTLqW4YEu|VqYJ;wRrP`k~BIVB3RBsCKb7nTx+jWuDCAFx*$!wxe6uQ0t zI8y5ULU&!NLrVWv)cif*xziuiYR5sMy0xhF#%R#xa%%n2DbP_Ewcc(Z`r1XUu}}1k zjap-0lzF|V^$%N#-knLU&$q+pPg5Jl^Ynhy26&_YzD;comJ)q;fZBZB0PQsjuZj6K z4W>?K14s$1PZ1L_&*lZxx5ib_|4QojNip`V7WMnefbUmO|IS|%o$pBfr`$(0b{!2! zyPK5POK8BkH;CpwM*}-!zrI^X0~ftZ%CvJdxW_6|*Dj}F_Z}mPy+9A#A42rPWg0%U z0OLMMBOaPY%DEXd;_wR4O?`?P^BmgODP|w=zV&&8vV~D(Bl$%DDo63 zE!xmS$$0mf~(iWVMJv0o3+@&|3CTwh7c*F#R6j-?gnG0uQxv@$T7)Ha{c2Q49cKKX!h zUk)VY-rltCL(pGZJNj^MGO4jcXj84Fqz+VQ%lLWV52BCb8xtLJ)5ixdlCotUeG&uy zzH*&P3^RzXuBHQ}py$Y`bl}WL?9*NJ>3}p+;ycin%6w8=U!YT`+(geDq0^R)q^wA% zbAMxBZtqE#2Z8?YI8WDungCDJ>G}ujNbS~#t{-ksN?9w#bQ|b?*r!Tx@qD5W-%vt! zWRWuH4#hq+jmSAdw5laRvB%9PWzC~XgFSOdeY3A}d+2gfUi)5gI9x;>U5euvWcNGI zDUDspL~$=G&1;2`Iw(bHkvWdk#utAB zomr5-_bTC^bp+ooRJxBZB<0Z$lpeQ@AoVS?(x;C?YMi1xc;y$OC;n2>-na%jy-%5Z z%0bGw5@p&2=$~avl$ra30LOl1)*S~)>H4fPD{cv?iQ&qe6X1uL7nHeYfZv|KD$n0` z0OP)^Jim4nQKN9>#hqC1Yx|Vt2YNyko>5k%T_d%=TiLMIM#`HXDfxF!Benl7rQnYa zM4MhxiXPob^zA-n&-!OU-_fE~7c5uy=FcYO?VprG-+f9-?n}z?E4_(!mnffo4t;d+ zOXXBN`1ok1a=K$QDI>-!7cQKJ-iQ{h@@v0RQ#KP_B;rnCRjI%GC=^LBFeI`^zTfdhSTjQy*3B`~)chAF75aGl|~# zOf@YpB{g`FZ09|%1|@*civLoBBWFOqUQk0iB$2xGlp3-D_^EL~wOz<23Tvj;I97+$ zXN%N34gE-2{h8XVVJ0bUC#ucb&LL&vcr~mw_V<KaXS zeXiPRW+tg0`)^2H__sQ#&tOv5Emo)f<|fr}pZZMWVWie- zq0U`)iqsBwsq@|dKaI*!=SPFix;>@7^nN7dd!+jE2m45|_gCM#>k`r4pVVcB`9u@9 zs4G5gM3g#FUA1U8(U;-s`)!^=`>UE?j^E2ys@qszO`oQ2Pq+ti{4I4yPAn;Z&s28~ z#riEKwP-x>JnEvlD+J^G7NG7rhxKhaq3+(saxhEXeZB$Y*3W9`Sl}ZdPA%OqgVct1 zs--(He@T+MXFcE^?^ZvZdLO=TqaKfQ5 z3VM6y3H9=TSBWk?u3oJRdTiN5z5WpPVQy?dz+-8oKJr$8sXc^JgZ=@5bJM_=rvvJo z_=o8GV*$61I6%rjlL8uk0eQ0Q!+<+O{!427(ttZ3F_LmVG@wa)*oS?W2i*N8_HozY zfaZ@Cg8!}uwEPb6KU*)Lv#AlOokIfd9jy>G|0m%7F<5un?*S2Kur70}fbOq>PaQD< zJtl63Y57(_@ArYnr=kO*1~wvPU1&hmh0CPec0OQOr;$Vtj|>>|<~rCTQvx0-1Rq@K zAMj}Fb)-gS28_>s2l{hTK-@dyNEuZ(z_k+l7x!5}LJ9ajZdAa8_&m_#mVopQCx|{8 z9*`9be)(l=z~s1I(EB~nVt?zX0go?TM^yYwz!M*?03SUb@bb6IU}yCVSOQx{={zA| zSslou{e=O`o^1`gAwOVwB=B|LKLN|v>?HNhHv-;SycBY0M!=d~z-xF?KyI@>!1s>< z>+igVaqR(lLC-@j*9piQ3V5Dr7LfNg_A&9ffc$>X0bhdyw$BS9Gz) zlX}3*&#ME7{%UqK}Y0oSL`CslddpuRDVXvG+V z`gRlO-OUDL;1I}<&a$1?)?hF013PAop_Dk#x1ZPgH9Nl?*YC>^fk137V`YLyA9#HpC#qP9K*e*c))R(ap`%Eh)xIxM(W^) z4G*u!{;%6>c=&VZo0G!~kGgYV2gMlTZJVJd5)FypfbR?H8z!`XZ&EMOkTPWf{E5d5 z*@v4Em01mwk30mv$}vpcd6?)xC&TnDpTN$$WOzCmaxiY4;n~d>N$n9}n71DA99m^~ zF+BjTRDHvO{!56)trM;C#xsURdwY{Qr@3MAfCBgldqk_0Pn7Ln6GW@V9x*JQwHW@x z%d-7rfo!imZ&bQfM^c>Tp_QhQ|@-W;=wl=7DhOFPaWb;4%D+dr$Yua6s+J=Y9& zUyfnLGjo8iUkocdJuXCbRYbj`dCH0wRXo0uCYoGH`2+k+N%?cYD41-)ObjrKa)`wSnz%p&J{*{)nD+pFV5t3ERrE#$-1r_rjI zKMO7JeDw%g1JOT2&>Hc1G1@@e)1#YVbF@Or(I7*9 zo$o+zQw&=ZqDkrXmSJb(zL1Ao3_FiQJ`^rB6b*hK^ia=G^sx>0(6fd;b8V#b?PWM{ z^&QavWy8UhXQ0=|7!K~*1iAd7;ZRrT;kD8PzY+9y zw$Zr5Mrz38vR(A8F%ZAg`k#!Jr+$My+fuYj?xUhr7r2e}YIY)J@E^uI;CE5c>&AvX z0r#pV##Y0yo~dVztxo`svu_$h8-x)xZD$Pq8T)YhD`UsS!{MKPYwXf_C(+?K#xDJi z!7hEpcwaQ+-ra6vuV{>$Yc~!tJWVuosBzdy=)Z`3_Orl;Ul|iGx?pc~Hm3C23Onx`WBT9~M8AwPX2i}X<(;EO_p)9@ zch4|pzX5o!{cW7QVHWu9L*o=>DJczF7$1N6H|WXMqE!`#arzG!uT_L`c2Drdbw#ww z^1;U0?*Z;6&l;b(7)i>{3yt&ou7Er`FWZX~(H0|4kZF8jZz9$=#yI~~BjzhG&i@g9 z=7Rmk7sr7f8V48`UOzzUJw1&}&bNpBFr$V1>blFgtmHZ=#t`FjGwj*FB8=}02VP1) zGQM*i^Mw9kT)hBv_*nzvYPK8aj5NMq_%$hib~nCXdIsx6d;Asn12v5wbOOJxX=VIi z0qn3XV~ii$FT$>=WBepLlGNd;#!t%Lh252C+?@pchWy7^Y{oj53^JC#2>N)xyYXP= zCq%!mH6Gp%`SI2OKn_9N0&vD(sHixo3?0&cQJmO{~0OwJZ(Jt z1Y#xMXB#iy54viVWW4qU=6ysl)lAC5IxdKuIG~>ppFYezgPmW}|6n(`@kJU8Z4sUq$?5vgx6B08eBm)A(_( zLe6h6jh||Ro_yal{>5)dNqor^-?cL-wMUCqeeO$BBItvf&oU)GIt}roAXD-q82{y6 zrZoG@h-Zu!t&;zzY0@Zs-u7?Pq>n+5T`roY+%b;SF@>fn<3OjapEEsf{x9NMDW>Tu zBf&41Ow$j)1pA}h^u*h+N9QY`~;qj=EYGSh1{K<~dTFs(c} zm}uQR)A|$bz)w9)c@K9WW#F5pEj=!hdS6@9w(HS|o28g`J(mN!^(#|p%O}D2%S@%Q z=ipC7nhth9k9btE>EQH{M9EuCpDhM`b$r3}**C9Y{|}h{^Y95$otsSGOg~2IQ@u^! z?A=Vt#Z#uUEfJ4pZ%}^!G5>QQu!R z{gb#6cJWVv%2M>J**DN|4SZ>OI?&Yh6#SWzz*?K%CuPWzz}gQ3f45B!Y_@tg{M}I5 z{y8JC)z6Ip_n5#o9e;yduN@fr?bGmAf&zPoz^}XBH?Yrl=Sg|@nZSNez@Jy23hcLX z1u6M22lo4JAN0!g!05hpV7D$09R9>^q9=O?j%x$?v*(V$@t?+mFP{pGgB`Di>{m%xM=tn2*zz{ESTA8k$rCQbxBH7yRDh<#S){2Dm%%WH_gvIA-eS9jPsCj%F4dI;h9b|1$`7!lj0RU(LHlsv|q_zb5SOy|V+) z^vWdqH9)k=4U#d?xVv!$#26LbI`64cK4znN5Aq z!0-9p99$cC>2#MlB;gt1b@44q9(VQrA=f7Z= zd|(uB2#r)CRpyQlD=55Ua;m=($@0eExy;&k!bx}X_&Rs{~ zzg{sH_jng^zggzeX3bzfk1?0FC+f`ArUH_qIm1m|0neUAx<>T<6pzav2=^sJC zSE0A_?LoJ7h9B_6?4a6f0QbEoWSciCsKIZ5KY2<}!}Hj`W`#j_I^&4eT7nwq0_Jm)T zDO%-?A4RLqoF5eRsh#Nf;h-Uj*ARDd1VzKnr74dDJs1eOd}w0OsO3(gKRX1CxgYj$ zjk{#~_A^28ca=ilC_#zcfTyP?1|^Sg1$+hsWxkI6THZS-Ybo$@?zNz-_v@2N-v>?Y z3BA#=OHfX)FOgp$+0OeVXyzfn`OoE`r`~Nu>WH&J3yv=Vo%INM{ZGt$?WLeMzXHDF zcL%Lp7lZijjG*n?))QUa6;yB$a{YtHgNpjY-d(>mXxB5)`)x9VcJG1S`g2QAdGE`R z+e3oNrvo2}!-MvAhyUDSX3+8cW2AIx5%izGVb81x5Bg&GQSg--baIo8D1BhisT!;& zHwK;Vei8Qd??FHObd8jqu|Yq+1UkR_YS6{yMbI~MgD$bYc)e@T@7p1df4<9N_-GyC z!ZwR>8tj(c5f<~u_kpjAEg{3!A%2u?sr3rrc-dsR#pHVhNiMe6@(Sgnc&v{IJLp?nFHGud9|WF~HA?UoDZ2rKG-B zZ0Q~XzEYAcef~&;-2Kbae+~SRdv;oewu9a%df77SD)wPru_bQzZSeQEiB_4m)Dj;7 zIk5DiCBDaR(5E9Tu2BJ`yxGFy%EjkzzkoIm?M_R=+Ea)Nwy;e28uFm+@0Qe$E|YRL z!7{DaQlf>8EYp6h2Yo-vGV8m|;JZA_vs0mmj+9vzWjG-(=ULwPaU7|AKC&$9e2J8x z!UZkJxf9DQ=o$bmV$Y1*ioBh`&_1_ILwWBlhIO~HvoRj zQcJlT^1W}GXqAtD60N#6%d+P~#4kd(TMkanL;mG+%V${~iN`yJ{Mumf4f-L6}`1d82^S?JE)iy%5OM6*<0lroDM9Xi+jqrPBSuSBci0o${>&`I5B>_iAM%A+9=*&e+fyz1rmVfXwIye4!fDap?S zzuyhxymf!@T4AU64qjgXIXS#2IPdpUkmo~!Ki&X6+-X$s$Di0qQU477$Ayyx60Qit>k-Z#UAIMS)${mYpDeh5Br9Q{r; z3qI_e0XyTx;3Iv3|B1f^AAJ>kxHL5QGgl_!-)DnA-~9mm^ZejbH9;4%_XdBPg6H4< zJNUmxFOnLyI{0)GwC@^&Pfw0TTy#nBcX>x3?+ylk@7@Y~T?xLh6L9tTRkX_L^x&U2 zKz?1y3I1ge;`$q=1z-ODImB((S?Mb1BW9shomUI_r(dmxBL|39J!v&f=t%0~wN~@t z2JkoUvsxZ`8F8QvR{K5UU?=so*0_kg^tdM0+X6lWzWZAn4BtuW+_~1<3&XI!RO{_O z^@H5`%j(z-JpT8fwW&3ks9C(VnG^Yv`OU4ZCP9wGePV4r;RN_C(c0!U(DiF`tZnZD z{$B54Z95C{X!lHOhv>$zt6o5h{S4h@?QpIY%dUYrK+A-FInAhOfM_Cgy?uK2x&pKf{;O|t& znuX_;d5YDYkPAO&gmsFF=U>=nopSXxjc1Q11BA`dUly;fMXLOLBk3_ucl>FSdU0StRV93D!;h0N0c)*3Bd9 zAa1hTT5$RY#Dlh2Kkf&8cjpCbk-eDcxp%EaZ9%WQyIXfR&BgxJx0WxnA+I^cx({(6 zYIw|g_yFjxU6S?46WE8h1FfImXCvj*73&vsF#f)_)-QKq-`0O^{pxGT@B2Dh&uxMq zYOf{R6`QT+zq*Jxc|Ge-8>0}n&$Rv#it+y#Y5jZS=b$&Y_1f{V@N54J3CKMPJN}mt z!=z}?V@Qax{{f=!I)?=PJ`QsFju2~;FvQa~hSU#%o)3CPwlhmY>UW(1{hk)m@FMu9 z^UEQ3Ujn`tJsZ;E5a^_NVo2N8O(E~IL&EAo{e=d>yW2jzDSfcEMzv~T*`AR zLY}{SKJ2WhkQbi1M)d6yA+JpVUmslj@`B6v6=C+MUx%y~oFOXjjN5^&pqN+!(U^jWonjUJTj2=OpNQTS%F80jUjgLk^muUpie3Idty~ z=&8p-zL}YhxL;(*H?Q6cI?W6D=F8pS|KCH-Zuu5*{;nZs&&_~5i4OU>Ht6DV&5*xK z55Rt$6Y}?GkniTNLjIWz{di%7O-#IqmnpVUiLgT+zTNg{a|7Zt@7bI`oB~|`u_eXrg}%DYHsRZG zq%L>cQd8m2p|NGNsu?oTG_VTUW9r8yKT#sNK#(w zZ`-=ebBZx6-!nSIjf#N!#JiW}%d-mhD)#aqv$& z+D;72hW*^z_GKyLSAJjHmtRDaGO~;9^hf28(}}hp&tsjv%53M7k^da}lZOGep#Uvvy{$Ukj=r}sg>zifYB!1zCZWxE;-d$3Ek?dm6ZZrVZH zKNA$hl_sDKfIZY)wr_rg)`-tvveO@5A|Bk?uI!A)xI1K<7b#kGZby4i{}%!OyLJof z_2mJwJ@C5Sw%m<8$R)dNUme8lU$@(>SV#SCc6(wZQE6X$t?t0X#v}H+@z~!{4ea%< z?ZooV-(p(TCv}qf3%OX93%C`iS|dnauWTp(f;U+rx1S_WOq^; zDVLku<7%RRVH3OSJJ931pW2gP|EX`<>}g>xQk9|hN$+Dl2ix0omaaoS{F*)IGUi$I zgZ<^bXJN1Ou)p%dGNP8N?2ERXBDIccU;I`Wsr`=ImmGq9{LUQv8#dtS+c5iz9oXMK zZ`xPB3qRf(C)*c>*;jYP_`f>stCJ^_GWv-9{lpcZyEpB*{j=e}H?Xg*pA38dh<)vS zImlmpW#4$MHssYP`}Qd4*A_q9x99%{c(mC|+CZ;%J8v)LxZ=6f_I7#x2gLeYo z4Su#CYQ21fDxT+J5}2`S5q%wto@wEAn>t*}sT_zUnr_{>8Ux zL?y@V-?rb3xN#Tz88_%5GQ)oHVmwiuL-wDpo6(tarn_a>QVKm6LQETb6ywjyoAYMQ(I*y!A^$+4?`Ssni7*ywfb$WdxI zhOu@=m0c|^Ajgr8rL#AdZ9Gk3SVK55tP%Wgshj7{AG`L-mer*_(92z3lN?*7mAZ=} zcD*N{83O1Z1Jo(_>jZSeD4SyOb27!@H(pO1)|n<&>!1h4nzQg}IzDqyhuo|9w;x5L zUXxpXlCk2%2>*7hd&u!o4aVHsD-7xJ-Q*~kRc7EdZ*I3$TOWSjGOef~KT&yY-j!{g zMvnb!$|fBf&Epj;EH#j0LtgPA?#FnP7%j~$Xm|8HMj6kaV#K+-Hv7fmf}$>r?ZVt+ zsf+pbh>TMv1^iHd>~SM0_r>s$nw=pCqDB3ZBqt zunBhV|7t9z1Sds`9jYGUtV%GaR-gwj>_b2qgE3+UK-&&&GS(K4^-sm`Zv5*87QC?k z-;L^71@Gv-F1cSH8@=l!(|$qyOQ&L<)0L>A>n-ej7EKbn3>g3}@|6=BCVjCaspaNS4{{z)x<-sT9o0)F@?A8a``_Z<4{^F6?p^q#W~Q3Tm$b1@lkQykmwV`7D_j z7vNvH$AdjTIUv#S6vcoh($Q}s#&Qeklv}dqSh5eVXppenxiN1{5>RCb+)Mymarj-s zO}L<;|K++W@z0ItW6b)(E;#0Yi&^yNy@w9bB(0Pk%!wM^;hBmv|8KAskKKvGcyg_s z@RP5kVNOk~BxC+x;`rY|R~aw=Cp&Tj=}~n)U3>m->ENRpEO{#HDH;L}$pkMsXdr${ z1rKDEj>c~zz+KE^4zzLDQOVaXax?VQ8-3U|apT*`_=!JBM{kzbteqXy6W_V2gd?&dPSCINa&!DUR$cS3G`l#AUjiZaft4%1Ta5L*ICZ zD?Zt+4HxfpJ7b+$E=NLgiYqHDB0Phq9^mGAVw2mZB*(eZc%iKbD-5 z;&cqlj>Wf*!SV^mgRac1ZDbh^iZ1*QPb z%rM78>Di7rEHO1bJ~<(WzsLl@S?N#!~?RvmJu$O zBf{xO%5)`kYm(%4XLJn@pE6}iSYldsSbAn+xb}Q_Vn#|BZ$y*GTX`xX+!-mbSz+uf z&)}&NNn(N_!v=?U2x}Lf3=~ccb5C{432y08F$?d0yvyxOPSF?D7aygjW6P7%@NKG- zap1sz?j-D6MrL|qrZd%%k>cW=1yulPpcU*&EPix3obIkwP?9w%1z*KVf@8RKG*tP9 zf$|VaL{4s& z20I>bJ7Pes69HgCW_qe4BAf?|tbkLXbdtL*7B#^Y=N1@k5_z+EJv&&bpEf$fe-pqX zVl%@d1?k)pMDgiy3}hz{H6^DddPwPJ^Y{m}n&JKh{6b_%(grXNa8@b{j(A^!0k=zR zOQydWs1ORyl&o}?EOHk|B&SStB!dSXSuVFDHpellBzs$uN6)+^*CaD{m*=o-!(3 zAwnn>lsCISg=OT(Hy@12JIN~8H!#C)<-O9+)j zN$l|4egH~n|GZ)_AEJyOW4fj|Mzuc ztZzK$CzNwjGf7$H-%Ro&wx+m}6O-IsJGW~G6*R&*+2vti#}rsDj;!q1ROlNvO|p{G zr=+nd1QiDBBh{6L&(p5O1WWAkf zajq1tufR`SN;<3tVM)Xb=>)X7lOU@cuBooLY#j}gvR#=ua-J%}&E7LUez-u9kASP; zWn#&)x&*S}aYr=JD*Lb?@;gG8vN~H2F;Q<@o%c0JYIc4z_TqAD$+)b4!e2L-y6ZCy z?1^p2fr*)w?fGGfQ*OGp4KQ2;(m@L@Sf1KeNU}&~OHA%z_iCXGEnTqb1Ubsz%0;*z zo}cvh+Ct=|!Fys)k^M@J0JS2E4w=1YwmZFTavBVFrbA1$!`CfqSUepXAS0KhXAoS+ zW;nR-9jI>aBv;%-2P;B%rZYLs-8IP3tbO(4)n3=G;0hzr?`XGqXjbCkCPQUy$Rea1Sb_z-VNse9`z?RO63mOdZ@`rd8Dx8o~?X|ctJ z3QK3pemn|~$C`pa7345_`xR|#$)QoE2<&qjV=xWQt;M0b+y?yFuJ_Py8ViI^$L>0r z*GdLGbwutNAmyi!kJxh-jDq>uzs$;T#j%6Q0#=AyVY=~e2}}zT-jdV%naABJ4*9erU3~p^kiZjPMLl(~ zH=f>xCs_iQDbfJSJ6)WYTeA{rJSxD!W~F22Sh?bHxg3$q!ZO%C zWieP$)W~Ee+gL1WiqEfW$2PFAbk}HU7u}L}AW7%mGL4Z^UQ`AV#r;?ai#dVtUG+CX z7q-$Y()mO;OR_UEI5ve)1L8~kH5*dGDiEyXYcwGW;3J7SCLk=Y zBxqP~#79g6$%_~kFv|nV!D3yI=HLtGWXQwnF*^pD@Rt7;H7%>7VPE2Eo4W{@))TT( zzznQcDT{QR^mq9EGdvrSwTuiny)qIbLB$fVQeWA^3wOEMf?`Gp?&<9!Jiz!{ho6(r z-W8P2+I3PRcd;5s#N*giZ8d(^GR*H%9F^C?#-Ch?2Xq7zQZv#soteqlCHDNmLt>GB z*ThMA2U1-_nYPh#(#t7=FijQ8A{d&3-lx_p5jaE+EpTwP5^T_gNcwweB1Oipo#ws<(RFmxS>p=b6jcf@p(ix2Z(H=hNnSYW#|0LMh zT-)IXDKHUIw(dBRFIk`>TQHK!X6Ns#w0{wRZW2Q`DI0#G{-@7W{N~H$&IC3%Gqcmu z*iOre%S_I2`^Q*}2jVOpVwqP)cATq9K=c~q2mvvr75@x3`E==EeC`QZ@N*2WAEDF( z@MbZ*h}1eFIFKL7K=%>en#Yr4(ahgCB+#5cV4zvZM)mT$%Nmx2QWA{o2IF$|3Fo&W zfNkwJhQ12itgjCbE_Ls$%}^gYR9Nl@%Wj4m2?)RyA(}`}%0mhq`OPgujCt_4Erg3E zYB(2{De_b@+ooX|?QuhCE?C4N$g6MoS+OaK+(D@uH}+Xo;3t!i9e01&(1^|vE0NXh@?_^#}vFXiF0wccl zloN^gQ+Z7tm^*r9C#N9S0Qag{`%s;C5yEcP!S94!{!LJpsR`I%cRWm=va#Q=te!7x z)?QdNRV06p(#6}hv+buzbD0D#q1+6PX9{tEwU@a|bB~Rd#;+%;#-%X6?qt&eX;6sC z@gA8To|c~0)-@FwH4c2ROy~++_+5NcG3R&)o%(DcvcIP3n60OC8x|De^RD_r9mCSI zvXYsXD`*mDW@0u6G_tz-ouh^LbBE7|!YpcwzttE|f=GH`eTjnmvVo0oJd64SVPJ8MNjJzvt}x1G z`F*_3t}ogBD4n{iK06V|qDmH4l7Hi4pc~qzhwDn3ZG*N$@w>0}<*^fB%RpJeNQYys zZMfz(gV|CY!bl7Em}uRqHy5MD8nv}@y_RGEtW9V>5Tma~+$Mqs2nK)^$_r6D=tj+D zo;NOBb=u(*i|ix`5u`phCy>oKbc z5yde|5#Q2bX)R!J0~V>^{w*|8!rVXv=ri5UGYPfdti2;X9l?pTbPnT!`Tedlk{Q0> zRYZzBbI`*~S@Z~gf0!yOv1t|b#v?vKf;J;LRK;?|@vw(N9&tSE)mGDVjqr$w9#oNj zwW&D`g6M_)TTs8?G6?qVUG?>4*_#iF>WfMMloW{MKd;3qIoK!MY%PvC-UX_uISS{z z>L{rBFlScQ6a?@6_o^*=IZAUm%piIX_vu};`EVCx86-u<4M(xUt3Dxm5Ao?8*gG3} zfaa+;m>E}2O3#kre#ob9?LLSMH_wqikB5(hu~~KDwWvSpn0lfH$x%Ew_v@{><%@OH z+4>LZ*&BJ>#Pm$~b=5#pL&JTQ?jel$oAj=IbTLYq3t{x7z+K{XjPY5AWf%uBvyz)X zCOn?1&>MIIba?T2R#rw*CSL zr3wB=S?Ft@30n(59FJjlPuduoCOq^Wf4lLtHyB-Z)f2q7_>SSx(6CVo3UhaObCX34 zSwyg~;9|qdV--)^x({pdWb5>mEFUH-IV9z|!PAJ=>J>gN5C-T%SfrY*7iJld09lOk z8BrGFNJpnkE%w0WIV`GEK*!KhhE@IBmn*kh9s50#JkmYjG>eS`^9 zWh<3^z8LXhm7~I&2NO!RQPzf^B~CT*tznZMF1rd91<_M{e#`kCvlwR_Bt)EJs^k$C zuL8ScMbIy_qQ&gpf#OR%-&QWccQA1=BwJ4x%*8&ia7H>o!#G(`jDMa}N;~Er%|DjJ zGaQTX?w;&_JcdWmtS$r@n{sqb$_*_CyECd}U*0gW77KsFd|modaj}S6pUg!}4ixYt zB2ZJe=4tkoo)txrJz{%blVg2bef6wnDjY{BXkT1ha7Ez2lN{N)k3*fFSsQDx%6XaQ z$_&Ma05?|0F`~Ts(rRRg7>m3g$5J^KD58$_HzMQCJ0O*p*PvCN^H3v)ew>05K_UK$ zFghJ}lRL?Ya|-Rj)B~!S_O}Fd1=k zj#P@eIA#!y5rp;&vkZ12Vk9_3liT=0WPK3Ja$|sW4#o>dlzV$tgVK~ROH75|nHAzV z;+x7TW{2B35yC7TvkMT|L=wqGq)U-PNa9JIj#y{h#Ow@M#TkMh@c^=j9$stg7@5ZQ zRJ=n*j$w;1YjR)^pLrsmvJ_79*L{HVFU%~6ZaHzr0gR=Kkig;2DZE$yduTRQ1v?so z8>c=v0`C*Xuj93qo8P0w$*a*r)s5QmhNE`8$*8ycv-u^9>8q{nh0=>H|4VNN$2FSz zpp2e_7+k{Z!q3SfMa#wYT<|)PvY6vHEGtLIPoLzDu;@N9jws}OVnBXjG0AZgMLq#r zE3{05-Xh`T2^jPhWqLm5Nh4_J4E&YxlxVCaC3*ire1V z6Kz3`1LwD}C>2REkL?e^R^&MJWo723M|&rwbNb(@C8t275_-C;MYHxT98;2# zJv#{;A%f93&^_xC14 zTUq6lE|9*0KAcIIWx^J^N&kUbf1LKJh))Pn#x@JsGNojV$XzF~+kCvs{x?}jA3c98 ziB*lJ-u2mg$k{97I~ArPC)rT;375)|kewDM!rh#9(&YniD?Q_zz#XH(%}TZc9RTiQ zqc<$()f8W1~7WqktZGLHQjR3lV?GR$#Hr3yFMYePArOFANI_L-Ui z@WEEAkG+Kv%#fd*%Xj+#V&UGmObkuLDH4vm zICjD4qm~7Teae*rc5(gnN8zL}^?1%z3L#<~9u|5&z6E6K}) z{P#h+b$B|?AKW_Ho1%81oR92Eq@(I#7ScfHj~VS;H!^l|aN+Qqw03 z+o_t4jku1C3*UA;3HzlXVwm6~Q8`jEcXK<}6LP@;GmtnS0yKMNXf>l7%If5Y>RT1m zGX-@~9J#*1N+Q^g(`uMxQDSBAw30<$Gar!6UB-T1g`&g()fOej!SP2Wn5QJM>S{da zUQkyc+!;}mSk3B81?_To6qf7jv-E;n!eQC88*NqPUNyYESeK^@l~~=3vYJny(a;O! zbvHm}t-^A|QL&?5%T(`Mr#Ff#CJJNHm4b61H=W$T`=ECZVnP&zaD(}4`)(ahxGg=1bpad4vCO@>#k#XM7h24AUr(}_xXiDqKlEI|eAHftNJb2tLsHw3$7b(6~F_?hzVn@)Md zRW_+^LLm|=O0FhS1|kZ=RPJ|uH^8T%LIBjD#XGCx&vjI~z*i!~aIEwuT&)aak++GC z$ADKCuvN(cO>O@~UP+V5`pp>r%0P1!@HxB>S;EOdsAKMpf6C9K#l{xsz7GoKmS2(M zvu}lP6lP~HMl1I8&Mou-#zBEycm?_y&&C8kpIaKSErZj)D zRuyX!mDm`r7xUEIL*}zS7RNW)cjnL%7s&C?RcRho%zfDLMlFAer+`${^2Z`NrBM{N&e9P!E!&@tPE zA|}AGWt9FLnXB-6Np@O4&c~134^%BNVFK?WNOL>{< zJ#{mnlT!C~P(OI&y{)i(#FHJUg@`h6;=gjD;J%(fGH2jDMSD1_!Wa|58fOaEo8`#t zpQz!?ic4~(I`M6X76LIybOMZGmWNz6uGMK&-o8-A4+AW#;-%xd@Ir|fFa^Z`Ytw?=RyHT_49jTTvg_eEb4;# zGAqZ{N~a#l7ZmfqgMlOQ8R@!V%~WrC%6w1;h= zd5WX9mTlV2ZFvzehG-u;7LAd2YVnS3JXadEZg9y$>aOWYiBZO7VeXb`<%cV3Ng5QDE^;i8W?Uw&9pCaf zwWif4=Lp*7GM?^^oh}gKajoXZULsO2tn->TRbd&v`C`o42DNhl-JyN)<;n^<6BL1if*sR4ZWu= z?{3x}Wg;EIEI7g}Pgr^m8K$Q-yT`vWX@V=DR;+8caRu+sj=5XTmo#NOF+f`3iazBX za>|r+r#MRm`xe((Ag!mDyj2$GQ?=?HO)IlL7J3^MgZwWFAOP#6AZIaW33dha~Wo@}}fVJ5@el=hZ;?hhf zO2JY&AjviMj6vRB863t>9efwH31+MhR=prLmLPhnP#}k#iLfJ3>;nLsbpUSt15j71 z++wqWLa|07L7X zF;&+oJ`?)vXBeiG)GN$UuPG`D&~D8H?eDwWSk}+E8+apRQI24KXjR{5m|qKaA4uh= zd`n7nM2ytR7ktkD>BJyl#OA>>*XwF0zY@S$GoD;XO$ifrPelX?2FZUcjM8#XCtA%u$S-N=@u9vK31&c=9 z3CMwn7=!232#x}Yb9gvf?3cEM-{Z@8yf5-lg>Kf$W1KJ@bbN?ovl`E^SMNDO!Ha_V z+STEAu4vx1%5zEAm<585!GZI|n&=YZs)tuxfeAdvN_A*@%7BZe36c<5(7fbWlzHl0 z9_AR}#>qYDE(;L>$XO%%m+?(C<58xle^JH~M=zRyThS!TO4P|+Zc=6jARR5mOv2m%h1sSSOo0C*+50X3pxN4PVy z<4`K$8iJ#MDIzdr;G>25vlbCGV$mR~t^9Yf`Z9^$)g0xa@apHPQ95uT~P(5nn|8bLKX>W%Sf)j7B8mVvm ztR^@{VDP4kfvc)d7Zl?;?<%}&{~*>t_#rnJnyU)_LSizL6Os75DFXeU&G$c@bq6T5 z%2bvIlU)e2-gu*|Vt++ovAj@UqZ!8gfK()C8L5^&h%@_Cs?`u(rs7}tf5*BN_0YT7 znzf(Wtb-#Xd8#X=WtJe1%AI+>G_X@`zQR}UXlaJ{agN(nO((PLJ;SJwGjQjSgC3?v~1^f~YsruWH!F;^|yACW0H6xfSs!Pm;;`)?hhOHZp z7Ks#3tl3h|;;r0JMH_Yz7tlzDqbr;`98}NY8a_nBa0trdLWe?!q-J0j z_%j%zuxx}9th`E#yaT7qaD23mlVCAH7My{&B!9~?Ys=DmSh$DR1*$wr2eI~+nr#5f z4)WU9-u6?*2)W~YStpu81T*y-a)e$_j_Z|ml`~)tzW80pyEXXhLnQSdq!i)D9 z`wqU^!!Ptq;vbr~=IYR!dL^ehGyM`lN9|z^cDA0_%8?KY+x2QCwdZw|TgibXoy0jg zIEZA-WN<%#6ql6&*STK!nX z!8uwz`<#W7LUE7n5&XN^(YQx>KHS zs?0IXwJp+Qg0I!68CE_ne7)XmKQe)dSR(Ho8*o+W>N@^-3BR{HGo{V2DwwJ8kX1Z1 zA}Kk+-KKYyN1=wA`WiDD8NiPd*G9=3Q+({BTCB8mGqYOJ*{G-oQ<5B78_Z80{;ocJ z2( zMEllLY^U?hKN>>x!EVAsv$d2NoE=Wd6Nx~8m z?|>+sTC`i<@KgY|2ccGRRiwOOK;MvdVmg>6tn0K&3D^hHOyMYtrxcm>V0GqfB)fPl zoDUD#^`1-{^5ps{FNoq>0w(-l0K=yc{h_0mjF?E1kYzH%C52P zqosX(qAucIO8thj>LgoC98E#kcaaW(D)T4pA6!07)YLoW`L2+L%k5IRnM&v zUUOy`1CG#(kd4}|YWJ6Wl(*1q7345DSq~&J+$>z>5LLAkv`K$|OJHFwvCV*K(g^!+ zkk=M!nDz_yz#D-rts4;>n8;NGo)CyMC@X{R7hs!Cloh=g^Ds8at8qeV;OJKjZpq`5 zOZ@s5Zv~`zc+6l27kK$2!`t_DDa+tRO3^G`hDzR3-4UEkWSNX(8wm(6qT-_(C_EA# zOpIaWU^)xSVe}Dhq!MozZ!W@>f4oh6xY6U9Mf+44T1W6H#4Ja1zAVq*(wayPJ1nlE z5x#&Z_|go33I%g_alxFvRo>7fo75aP@Hf7RYqEFYC8hhvm$FxSX3k&@7Y+FQjT z>EeN0AtpR*A5s*jg(|=C0W!1H;W5(qO+Uh603U+?v?616agL3b`E(tmF)?fwGK;V! zgY!h3dXZOx@U;L?j$w}B$S;VrXb04N_)W00V9()0JK!_HjTlhmj4P|WT@vFG!@@cd ziGN?x;)ty%#`E0psA(7(Wk+6XhZdnn=|V$KR*S_b;5k$;BYJlh1n1mhoYVO zMQAyaE!ZU2A4`W!!*hBemLKiwz4YfFQPAkYv(%CD95H80AT#SQ zhl`_2h%`t)n+q{z@(q@#9iKXmuf_}09Jx;xikk=Jn0zg)W^rj|42`BCEWPADetd|J zpA|=KEZYJ|_*|8yv$=#u&_b1+BMYbCnd){XPi|zy~VH>4|Sv>xjb!+ZH!h7hT;pNjMsLZWw zV`@yQ%b7OxG#p>OkjYUbfC+?ov^!8Wa`<48Y4UIgW0jdqUaRbDKQdnN$_mXw z^}Dh|ELG(dLXzEi>*YEslC-pp%M1BBcCW_(Vwt*Uhy1Q&+MXR!0PX&nM?utC+#JVB zL)bDNvJq7tetMOPOXs;Ks|2nB$*oadD1{V5DdCf>#oscs$oWLHpfXYJ5y>gsf#iut z0j0twVsjTEmWYTaC{?14?h%J8dB;-WN5i(B~JxF|+RiBf!l36p=8 zJg>cMQT_%LYDLrFT`l9~=U&4>0$EtOer}lwQ1ThSU;?#S$j=BmV_#4%7)MZ<_IP2Q z1WC1Fg9jPHf>}oj7+MWBX|=Pak?}@0h%0Irsdre?iFk{A;USMwITJZdz>ib0ZW&h9 zA`c>+i#NKsGI=f7N)NXPZSFz7NAOozgFloj!UEZs$CvtQOYseqvbgusq^uN>+$2k_ z4!tK8=!TJ+a%Pna`va&E6kK0^Us#quwj@tOli&kRQT8Y=WHlmHghZ1l;=*SK8|r0sd^<- zY%j7_aT7&y-?PyutKfVd%Q^V1@@J+|osAqaSk8{EC-&sSaA6K{L9bIDbYt@ll&tX_ zkExpm_+0uUEQ$r|`kw>ONswTBFdTxdWn^3rFX}Qt8XX9Rd(9a15m_4CfGqm^0LwS3 zi+Td&(&bekTH(P&mn%bZq4tPp)c{ri0I3EAhoc6J26qxptR?b=w9=%-y_XV4;u8;E z(-RW>F#u(HdDW{9q>H+3^`@zLr?KUn>(;NI*1U6X$dHMz;F2VCEd~jq7B76&$i*9& z_KBoEE=T|vX2`XyxK~6=i-TpmwlZBp>oIMC4Ss~9AA%+_#X}M=9y?WwQF^YXWI^E< z7d}}4hMR4pg4*jpEx07_-_e!&oiVsy#Y=_|HlDNqL*sYkmNK-%w-kCa4L6*ld6hY2 z91%;s*<_8hE%M{qAsM7Eqmj6)UGu^#xOR*pf1aJkbMzHTdW0Mrt3tH4<&B5un0fX2 zRnHnKPoyDFUqkboO(K!yZ!PtGeKMIR}C@Q^Ca96jawr#9%eODvY)|9Lh~y0wY9$4ln;vgF{_F8DrPCwg(Vj%HJC`g z!p?+dg#MB{$D+YE87pc#p%p|GqR?XNIttrR6fU!-f*yHRT7Vqg;0vE{fz$cjKd)=Y zW5F(O2m^>V6{Bno;~ZO2Sfri!@tspkx{&*kPVBk$1T+`qiI5RenM#UgMZ|{T11FC#nQ+;YaY%*Xby2bd!+f23mNE2R4`Qji|O`imX5q&KAtdPsbiNa1=pYT?FD6hy2Agnr!e@_!cD2 zPl5D#oj72*3#63eFTaztlZS`oR4hQ`;UPbDx|ItX8|w##ctSoj zbjy?0)>ft!bF!(W6M9W1Scjlkhqn~WFZ8p#a7%(_ORjX5;*kkp)j}W)w z`CnN0;#NT6uT|{F7?1*;g(U9O=#RU@hU0%nnVE&O_-=efCqoDPmA;T;{GKW3H6hx( zI{{h~cO=0#bt3->fyCd*QecijA&#fNvBv2b)xXd1KFIWoDqzonTO2!*#=jJDRfiEL zlknaRE(k@rh}aBS|L+%dR&5WMx%4G)IUuSZBw1I>%oe^$14w9C)KKqf9GZ!;`f9th z6cybqaaSw9fSF&U%$F6n!fuJm#4@vBkkLM(sLn88ieHw-D`^gx1Ujmnz~Yf;NSf&| zS%omW*=nkLZH^zgsXR#kuU?nv5N~2m!F4W~Fy-#11pMU}De5m%1aUGd(?nTMqA*=6 zyr_?bqJ|TBTU2>XmLf;3MGe_&=eVF28kaT!ZxQ$M2Fh9JYNIguOP5HxM>6EWKL7SE zusSfJI2BciIUvp%D)~~vo4y2)uKZ740>~Sjp4s*8goJkZgLeXsa%S@D5AYUT`3BS& z!9(mmqeveSAy^%rz&$%`!evMBOuU>Ax>+9a!zGU3F@8HUU#!d}G6~u8jX)rCzFZwA zXorY*81ry!S0G@|KVp1sP+5WxiGY^^f{YQDN=HB-)$^L)s&Ca}iW4O3qp1zJM{s~n z(P~dokR&*|%9E@_^(O;7cl7vuw5|*jd0*!yHL%{fuGE_%q5gaXkrf zcI7u>Rf~oi)h=GV0r3`qGUR@}E=Wh2xo7-jPVk6RTz)q)Uds$>r?%M2moYS{$bBy) zA`5dff6sD2ORT|l|621mL^My_w$8n^+c0!^Ts>j+v%0GCc18V^KBtiR^=f>4qPs;u zmh1J%eJc{cDDvqlr*{1=wxtX%R(SDZx)6VrUc0CR9MThRi~i2VYWK~+?4Wlt_U1rd zwGW5#Ci8_T&{)02O9}V}Q7Nv|a4ElAoWkV0xbOl1hdZ*ytx>TvYV?*hAYe@r-wOHAbt`Vh$_xT7<^HgWG zSTeCN@wx5R_xeV^3$5HCB+8S<5^1n%=c!du?{Z{WUw9p1-MT9&ooa{bpbf=N05+IU zLBm6;h?r{bfbhI%QomzHOnS5H8|C>Hzu2g_?WVrshUID@H_6vh>I)Bsbu1+RAbCx( z-zm;lv^OBtGR1{<$rR6YEbJ8Acq@^TKNju^-w2^+3b?m+@L8sz<>lRFa37&U*!;|d zz(^IA6Tb;;5XxwBL*+VS*#9s zgn0%3;uco%wEiXzpLolnA$-rYFdT4S%cub{{fCZ>;Y)Rr<6B7k1Q+MX7t6_~5>lM} z=1}oY4w-vpnaf@UznF4BbWERqeTHi`j*H9Zbj>Kb^1UQ%val1v@e~**pc1|e&mq3g z#yb<`^$C7=$)?@EB<~l~w>U^#q@~@@<+p3C{qV>(o|R#-O5JUuJD`b8N1{wz*jwEg zg+oH+`EoJZ-2D zjHxUiYhc`TXbT4jEE`^tR~4C~k?2i>-C6BS29We1eF^HYLDfF_tuHfyaYW^ZOqJtB zWG&ddm!ENYCLh3-SAWSfw0yQLm-uO|vS#bPvPrv69(s@cWL_Qm(|0OUMS7CDGUM3hB7>Z=)#%|aAST4_?iu

    $=B6qk|naA(FJOJTiWZr*7y8<-=`zn?}J=E`26gQ z?JC?peA@(p7sdQzWDN115A^f^>CJn86igK_3=%v1>%cPfA(Oj-XSk=PnU?5Vmd7ZM zV{1)*BZ`Suz9{~j@`m@AjN30=enTmD7H9S{xi7O_XOYQ_W+n-I_ySX^bDOjz%EuY} zIwsA=THa)`*eyVyU80scH|Qr2uAF*BmndC#A1{`dlKOc+y)>-Wac)fSpnCmyi;;8( zKa)@r=k3$)Yq@T3yMu_qvYCt1)teO!ejO|)h2BuF=SX`Ur2wAP6T-~EbK=GYpG4d5H4&$I*bg8Ns956airJN%~D&lP4aE86RlrJ zh$kw0O#H)ZoCBqC-{IA&MO9V%#9E8GR$8aTd*C;f-`*77h2It-dVj zAo$MwWV?zKhw)3GC=ETEDk^0M*h!K09+u+ke1QqH*Xxd_^k3= zUV;nA#UzE)JUKxV4qUi+8M=@XI!b9A=lnOBN&rj>W@_Ey$UQ9MVpCt)HiuCJF<{AE zgm?b0b<=n;5Ymq;z+gID1AqYKhQJ<;5^cm!A#T(Hsti&^&mCd(XgvU-0G@qV4iGe9 zO0R*skav@Q?bs{i$XzqV|H-f9C={XGrc`~`nU`2-j(G%oY`rgtF$1C^o?k-t~ z?yOu!G1%Jq*qtXGvL$&Oo%qH)J03kL-Mt~Hy-je`eA|rQQy}{7Ho4nwGB2rKDR4#@ z?i*ZTF@GGF8D*cH4WYgoBb`||ThpomkYY+X5J z)l{uA!|$y3l64fadx#;TiM! z#db6lIc(A^eKVB`5DVzVo^43A-75ts(@Mv z8qVXQNxBUajha5xY8y#Ro9hzfN`%qhbqZ$ zr$v3%>p3c)h52k(`@`u|U1?D(R`X>NGcSbn=0s-}tP-APgG#9<`{A&8PCRGurMdmA z+tb%mfIM32fd`|AYnMK)YJwE_8eQX?_aowfCmg*z%}5fwwN)=}x*VmMSo|O;W5#G} zDVI@pa7+-DXUG(z$KzQ=K5a93NrvM{m_i;p@~n(gT&=(lMw!e_Y(0vDZlWAZNASQ8T`dIUd4MllI+nWhzT<>7R7Oo&i20KS5a6b#Pw6?(5)ufn|l)9|ORU=(?+I1!i9= zA($jW!S;=+UHfMN>#(16@djO$mvJ%JkrHhXB+;HsI%orfjU{Vy6a1vGT#uom2g^C63L%t;!DFdi)T?uXdUr)P zmQm0>fkc{_Q)v=2a=Vz2JMendsQjR60BThPuJbb<=g9vd5!OcD=e-k7y?1~6?t>jP z1wWWN=L3rUu^^mTpj#9zBc3gyUUrB(aQZB9oHBt{5ZDJ{hV{2;1O8SP=ingzL=qg@%xJ?lKZs=cPtgu3NGiK) ztp^`GpnE3R$3c+jXdBZv?heam$!j$Yqp@T_91~t!X|=d5h1=3}5%JsLIfZhc)wIt~ zy%xqbD~F8b8CfEEM)vUJ@LZ9|1DSlf`lx7QxA`iD+^d^uwz~vb)IpXV1`!!Stdy@|H6==w)-xIZY_7qR9Em$D*q9eQi=TGts1fBV= z{etaPDkQ>)#h=xVr}Um&%AY6E&HS1Q%~a!+Z`t`!my!t>W6BV)9gYC8_%gW@9z zYC7tl(y8WtX0b8$fBHSz7X8A$T1U~2FM5cH_LEVt#{dPtOYtteL+YcvJZ$A+?kycK znA@9_UZ=l93*;*uulx{6=&*9)xUDs%(hjod+uMe>({BV@h4MZZw5)lqn)BN_w;xF<8Jw*hd3x;ZN2w^=y zj0iS7f_O--E$e+$A%`)1@`158xq!IlZJi@6@o^sQDd|8Ak_2grRp`}VB2HBXh55_m z_Cn~8tROKSZCfmq0=2MtTgz~S9BVTv#qG+aJB#NMzbnlC$AEFiJ`VuLEtt*$fX)Fx zf`u*L*#{&T)f6pC0`*Qw6BL5}o=5t+k*+gAoUY%|U;ZpGwWLnr&+!Xn=%FQ)ROiC@ zY#HXl1l8HuQ+|qJ?2uLjXm7|zYKOhNw(Lyf<*m7u5@njvZu$cd1Ia3me_J`gn2l+| zv-mGgweouAcJ5NMBJJ4GX+TzH1PaU1n0g!%YhM&Wfxq#fGotyWuBcj*E1Zr*^BQ1H zm>0pwZ|N zaUE!(d(p?koyFK)jj%>uD@nk$fEE==yTWa75gTnuD9r}I;OE3u{GUOY>bxP}vI?ot{y5KOY%nHTs#JK#XDLaa6rgJ^mZlw$`>KRzJJlZ23wAxVoW@ zCBPRp;Hw{=d)*DVR2t4Z+H$?3Hcs6&Urw?Or|Lp3Yt8uY8Mk+oud|lzWs_i#&RlQx z`TutM{g@iD_y8PLV%AGN^92bTsjX}0R-Amt#&)k!N6so)jzFwL-T>j7{O)X()&%oXiJ$$;TH+)H;*iY1@>mBL z4$qAMnjyvZyF7jL!GIgk*T;(?Txg`o7+R%%ut(M;xG|igJuq0p^@r@kPZf_#9+uRN zMeM}YL*kJ`l`;};4NLd7<>o`I)>T4`3p0D}k;+<`+q04d&+J(RI&5Tzum@{bUhGU} zuXP&b1A&o-m|#WG2K3k?ypoYR`@Eu}7IVa=el5erg;rA!FuiRZy@sONvh_hvQN6wp zfgsY`D_)3g{g|gu6b=c*D7{?`6K}GdiDzG3c1JVvGiaF-?pAv1s*A`p9$jr1gd`D! zfq|yCTap;D#_gvtj`W5NG<74?UM9?3{;>j?D|s|HYBP7gIA(g6t5o8RGYe$tIOW~W zPwj$}d_+q41h@tFXu00AHdv*}R3v@&Z_j{2y@IMj;*QHy%XX9PfUFqC6>0})(ZtU7&agY@j-63tjcnojKONi0mRnr!c z6F+(ETzMSIIUgg{dSQf*srPaAoAR6Tr5j9olNw^6<`$_xZdUrATru?m`;l1EoPvr- zy7;qm|A8aJwD2D1zn%@+{f`yB>!#Su1=JghKgAQ(7Piot2A> z-LYmTD!nQ0UL(N8jvI-|(zGale+if> zn@b6?vP&Q7>+kMDg5{d+OMRkRvn`VDYqo!WspSgP6OO5lQnM}o<9?_SHPMf@Ldc~6 zhU8#fy*1mmqX?-8>-Oi!+K13GEc`8K0%gBnDx47~CqP;`#(J2q}Cw2NJv1}p2wNtwi|IfNC#W%&H8B!Z-| zSh{<}TTX33(gGBtGVQ?yE$YO}?uA2P0O)WUPkZq)i@@qwgXR$ad|ZA5W22}slG9J? znZ4cg7II4Ctseq&-3xyWs79oTDgBcqan@)_Q!gsWVH8qdp~vC7?gV;h2vJZa{EPvs$M6NwMEqR~1a8t2BHJ0T`c=3>NLAQ(3IFt=1>>gH zVE*wh>0PS)GLIH?syt%)kH%)8X)(8*lwWH+P5pA}otd?m)3t=4{x9JWR7r^e2VU3X zJtlq9Fmn7MDKZJ$QQG?Z=y=0VkY~Up#XGcr@8Q5xWH?7pep@l$3v}M+*YuXl!=zlPd;cfba>cGZ#ynV>`z~U}V2^k;#M9CZ`ucXy`o8c8;PP*={UzuT zI3iGeczd}Y9$$%Ujn}p>_0V7rc+?1mLmW9 zn^;ScE=m)wCmp3cO%(k8+yge>r}KwI^M|=m?LIcu4VN-(D(<9AXw{kA#b*h=GV)s< z1$24tC~f05?52Gb2J!`!9J&xska2FSmE~w68WH$xmpserRc)6b$hqoblCF$y;pJfvA{p9NL@gTVI z_72=LNB89NJq1gjlqi*wt$hH5h{Gi1Xe)*#`=mATqYo>P0gRh9Y$3T?;o22d+uf;s zI=oI=1Z1rl8{4$7p*-XvPSpmGsZHT=Miem6y`b|m z^h^B0_S8PwXbU;ERlew$gUUGbBOwKT;ubLuJN2UwNi7*?)Zyh|Ga@rB^H+}i<$2iW zzfAse=C#xBYpGA>?$lr|`&)7=3fL5L$6venFEw+4yF8Cp<}=eLBS!naK`Kv<|7dY< zrVV?F`7U9EhjIt00u&xl7?Vz{JU?~c?=LB0sIV>wE9G>fz~z%4PF!!yR@(@8nEr~& z<UVh)`((lRsU6@h4vi0X4*%ItJ6>8}!Q+<}b`N$T zUe3S^L-YE`5fj0QR0d3>e3p!tNck)oE)o1}c~pPn4FF8teXf<#@Ls*JVC$zfVv%+# zM5f?{(9{dLNdo`0W)$w2ViFw|Vfq6Ktvc?+T1kNjTO7%UoeQ}Ri`ri~tRNirOsFu0 z*Ko4m+=(5)#5@U?G_(t-d_#gDrV@zECd_n;$E8J%gnX1oj*CSGQNj9CcmTx=?E?SM zGKO*x_yfKDjJH9)Yd_VDKpF6akx2hLx=6 zn4)GwU2I}WXBar%pB>XOJCch5N!2P!Jk!wV=c>ES<*H-0G(v=ik);Kkya*Rlw=E$X zT<2OFI>5pBOcP1*;seE#;t3vSA%k2CEIYI_jfzq;iC7U8$5e->T0NiFCtEckw8E4m zYlCK9Hr~D9+FO~BI|6dbcANXGG4r8eC5b6+vrX&m-d(Gm0V&@`FfAum%5oF82rc)17WhYWB82xN*yt&;7y1JIU9AJv3TEL=y4p zW}~t_?D2+`dyftBPTQAT(8ZU#N%BiLRCZM(VOu+}P_1&S?Zjuk` zgsjb)^UO;+qB2Zi`P=V8sgZ@+thbvdxHB?O6?OrQ3Pz7(_a>iSM znl}Bk18$>8P^y*4t9%p0h#tj-hmN|=wq|@3B=@NOO{P6U^npGCL@~1yW)R?pCQM8X zRWJExJ_(s5LEh9 zWWkkyi~_l34AtJ{t;+WlerRWP$qD+@0ya20&`G@BQD|2bW{hJh{c#?SZ<4n~SeD^; zc5}>f{0$)`iZ)8NXG5YyR@(v=?FwVr$^~ZiWRD6a<~H<|#cvh7FO573>TYLWz~&>t zHVzc&xPAW@s)Y}L9Md(L-cKz&H63t!fi>msaR;~LP{*E)cixjqM`~QFEw0UCw%L-} znr8cs3pWUnziG?`PpySJc2kh zN!}cd!rxwl==~R>`s%sx9wuaIr@~vFM}JJ{=9)AdmO%@D7B8nT8ojmDu8XKR>xOB1Y3bWh&N5DgM3&P|a78dO3-NNd1pTeXU4D59YSaw(Mu zaVF$KXI`85vOlLYulcjG?_trG5*H}@et7w6HXv(!-xH&P@}y#fhM;~U(9g`z;aox9 zWY7vjTP0-%-5T-{zzU*NnUo_&XB2EiNfK(}nkwo6JzB-f+(=wPn*F!tBN&9QWs;D0 zY8@!XRE!|26&zqRIOiGjV3SJ=%)z7`A{kQwlPze~G^EZ>(+EGZLVRrOkus{|0Thmm zTV@_rpw3bmdl~F;W1%^WZ1~5Gdvjq&xeOa;zSU&XG~lk}6r4aLHGGrajvER)xd%P@4vGh%l`mK1 zr_92)rY$K51T@rSl?pyK1?cI&H?R)B`Hg5kgmLZcL;c*Uv?HepBY{SEWxau2s?z=-N?6GzTJO`vsrk@lU~ zz7tbiRj>?Xf++PicD6e?|`a>_uB(LkUA^9&Phu#dII&Ln1ESCF~^ z*&Dp_>T4|IXHKcIlNA7c57Gn&6T*RFd87xrU$Y39$?dL{$P`{x->bT~Ktpxto|uSw zS}d-7%gw-VTU*#Y*3&hL!A)3Ca>%;aw)#!4M^mQ52@PEPHo@1NsE>DA47^kLEj4Ju zD6rV4FN{~Tt1lSK`9>J!ktoI_G)_)+`I*;dE}Xk8%^&d8!Nr9Kdiu4>NrI@<#V)50 zhPb|zbT!?JAxQ)<_0Hz zqPv^4`ujZnEq~+4+#=(`@qqwKCH=(!iXw;3toBOn#E>iletyR)78efm4+Ssq%BzRR z&l414+a%_CV*y!LOkrso1D3pxtAOAgqcJRTTl~aOE0GwA@X-a_nbmI`Ir$svG1GHr zAT;uYp$Ht`nD5D|gD0yC7A2^%TC+5`8#9;3)z#@Y)$kDwo2pm~qmvj{2^p7Fh%Ghq z+uw+xf%z=sg%ar*6c;vlc`GI5A*(6Red=cu5OYvbUY5hm2l0z`b3y8P9~c?>8e(|! zJ5qOiy5s5=mTz|_SJ_uRK#%1-d{iUH#o3W^Z8uptkNd2KLCbVwL<9AP5|h0}s}3nU zv&viADB33le}B9Rc2+q`qmI&4TF+Rhd4{PKQp2l~D31ir9z3R6ClmR$;KhZ9QOqxR zp=PVZHCh0W(SKfq@P)o#6T z3-{hXxp5=%bnM=BsAKQ``|~>xhr4&bm}qM@ZVXLR`(Gyl?mE2$FP~suRp}cR<3#_f zWBs@7-H+@b3mCvGfZ}?D*ENI07jRo_fOa^GcXjNA+cnkQ6B5Z-2X;uw zPl%T)XCvJXluHO9JaQt(35=sU_#~VwVxeog{m$mw?`ppN?)4f+FTwOC&j+(~Yt(<) z0a4f8zIomD+cyh%G<3MXpbF%3IqtuCkFZ3F&B&`Rt?QY69u&BZYWyp&s-pk1bCa)0 zykakn2lgrog2l^@&T18Ba(vfBbimp08U!*iIEV$+m>g(AFjZkO7k_RvT%3CT0@}|k zx*~P_#;a+rh?@p-HIsKvPm`Lc_fq!!Hh2C1!wzE{6;&6T+if%?XnHRDI{Xn`EK~%; zQNPytwhjq-DQZX((^7F*D=hG&x{8A+Dua?RPxf_3d8Ut!j?jpZe;hUAp~xTWX|6E^ zRU_pcZMu4hLPqw2BH$Z6Q1_)^^WZTQErZ>u7vnGoz!24c6tJ;cU5(Lgkm(xsfzjdH zLWjK5FZgKnE-H`QP~}DbHe>toJ8qyvcZz-1ZQnMjpaKg6mt?0Q$_gh(%c_a`h<*th z1j_T-Viz%{8UxcVW?cKG&;n}x3g>Pr%XUP2A8OT9SxLn+vr(r>M*X%dq#BCag`^rv zXw--8sFqXO*C01iG^uz67xUV1*A?ifN5Qwl7*}g)b*p}CA#+sof1+Ybu~ZtuttOIP z%%wam{V>YpQPLU#u|tBvBe0bK2#k*pQ~Q)q+~ii?xu9vHEIOm8Q#TW`=ef%y7pI1`|!mp%mLt@2^$J2U|(z=?wKO|~=G2cK{xq`mqD8k^#qsyd9j*m-n991T}W zb1JnMS(ROK=(W{qm*C}4sa#jfjM=IcWHQ*wzRk;*FI;l1YUeX{HBLUm!sVzY{jOCx z5*x96=jgFKLy}+;NRf8y1z}0C$x0iMthjXNXz6$!JU(dBjPXL%eMnO@I4G96aHY#! zX!p(m29k%nN(A{0ncdyux)XOk&PT1hp{*4Sh7KUIbUqtRt{9l)r(?a^^oqQ_u)v$b zgUQ*hwdHyvjfrEVY{RGA2;i@xG}-x6D-6xP-o$Fi%ynzs^|;COCWvfy6jU0vPQS0k zfKS)5T(ELpD=AZI{^@TtyD)+hKq3UGmUQTD-UYbU<9YEsaI+bLG&0JU5wTaOwj(He zOS?Xt7$e7nrn2hGzXXGafz>TysoGUx&kZd4W)S@Mb-a7LaU{Y&X?XdU zydOw0|0%#Zo*?XkDa19a8SQ(M55(4|{|IQM4j`!9}SFqV{eg8!W z6Y1&2a{ns0YM!oJDVMI!qv#4sPGRO!m*iB&O@<6%+KAvC$pFEAbfX|_mxqoWqc^MA z)r9~RK^~~o7=dkrH#tH3rVqXGJt4uBhU5k;2GyU-d1vZQA;fz`yuuC9A`@iPr%wK) z^=u<=&-kyA8jdHHD83zk6r6^8TD$DPTyTu;Zh&erptY-|Fm)dB9F)Qk?xa=r;N4r5S6i-1k8^q#m#WSJT9gR#Myb2T%U!9J3MHbsL< zqV?FlYpywnS|vk+X@h@36P|*Ch?rW*Qx`mqyA#uh@mtz7mTV2T z@GKMZ zHtL}G__M#%eQ3}A$j`Pn&l>zs=jm04?#LcmKYFC%BWUk;sB;?*?h!=hKZVHr9{eef zJOGUBH{Ro1AF>hjIBvEgXp{`~&Ilm5&KJ@q@A_zog^T0Kf75Pg+gD+j>o~<7V-BHw#gyAlErCPII1qcoFP;F^G0njgQb;9myGQ z@#jGS%wQ^Z;aUz$a*Pq0eN>=T2Uj8@@OC#RjD^jiXA3gcs01Uxq`s?f7z$PB0@pdF zV{i^`ok-cwJhE_1g3AP(zSTBc{z(HEN?OxY9!&;m`DTR4SU$3o-Qp8r*#;WE=O z%|Z2Vbd$M}qV<1)Sg3iJGa&oCx|KZfiE9#LOt{qfkgt}|VQ#DB7y!pv}*1(Ru#RxBe zNQNi_%|^@wAI8R{O`L_vLft7A#K=hmLBaPRcQH=eD5To`xhxu}%av$SL0k8q z=o#?)#uID19l1ZTBVr+;l$$gUa^|q-O0fXlFP~BdwdTXtr1?9W{TDyV?72FB?&AqJd-l!Sf}Q+cvXi!+qvd=%9AqK7R>vy9 z!G3N|_S2!&fGcKl`aMRcO@5##W6$(e2Y?yebERIuT#Ltm77a~c_3YTpk7zcs@f@ex zrq7a0{`g;eU4623qzF52A>TTJ0MXrpPq408cYZ%hb%c7ol`;0nt}|c1t7H8>gdCN9 zh%CtHSPXoVzxJxk+|cSuzNZ-ZYUjQ&p=q%E5dX!y3u9sYoGGAXWtxkyGR5#!K5p}7 zGJgk#$`^L^Xd<2DDb-8a?jmwXv2eHa=dN9?^l<?d7YFFb^ z1#&|LfcTCY;E5yGl9h4^*AL|7$&5A zJqj!XV{sH#cH<9~Qn!6w;`t}QKjO94Q#v9bFH?9fxu%sOor&p6_9JPuxy8(bq7COk zmt>la=2pEak?aHu)Ma=Ul6^L6pDNU_Q=V&Dr-Hm>c&CTF40roU?Ut|-c8Uy7n&&vJ z=Slx!N9<0oH=hTOkqdCg=mnb4=zZ=oBjBP(MBl0===6Igi(sEx6$B_0q@?AuoIU*N zhwhO{<|=-9>iHRQM{!(UDy>L+r96I0>n}n9ts%2^SN6NQYArp1m%^o!quRHk;B3ix z7_W|@B|7X2#OsW;(ok18xDaaeDDr30uR$@Bmco9xz4&pI)Urn|t5*B1sR>i0CVLl> zz=ovx&@F9^ENv^0E!J46CTJO4pbbF**9{brKy~|nw1I?-We=3Z7o-lfHfu#?Aex5w zSG{UwjPvDmh+lP6YOo#o&aO}=)pW7NR#R)6(n%C*5`XZA8QW$(qKF@B@;not)~*Pq zLITFV5;Ok^Rz)6zX1z*M+eSG?lS4%NWx*b=*EK1rdRoMZ^tGp9zw=L{4E2$Bc# zqURI&DvRAX7NCbc);$3(=g9&1Y2y-gE)s?Ss^0Lwlb|UU^nsUSk}Bd%*2@k z3r8z;o#e(4PL0zq=2@syE=g#(HQsQ$K%27a>e@YW7czMrO|lSP$k14;bdTIZP}Ner zzrO0R+$;w(FPPB7B&8^@4uZ{Uaq-UaU)x;af-32-(xlt?TX$P=2kE4{x{&($=x9HH z7nFulM87%?fqUel$y{fsU5O~ue75~~Aw`n<3u(94&BH6`_lF1ZL z!9>S~+BR7(Oa<`8O-iFJXz2Cr)8Gz?Ue_dgRdN9EG3`e^l3Xn`kYo4ZfxLCzA_EAK znYY)~KC$t1ig={SioKd8!Uj};Af()a)z+d*aX!6Vx9JbBUh1-iT>!&bec^_kIRA8{ z8`9bw#nQ_SteR|$;&^eZML~dFlTkXRoT1t+Yz}F6Q@&I&zkK`9fJAy*{SXXv&_#(C z@jRaF8v;6slDxU7NBbmLd;n~edL{L8s13n;+L^^>^hzmXB1@uW*=JJ}8Z>z?m_Q9bzAkM_&@yWU^ zuHQSjai7-Gvpt4x{jH=HCdfdnDi^n0#7PT%MtGp>ZjHnP7MbN%H2D%}vj~kNLjzbu z8XrlRvZjB|TrID3OuYkRp_Xunbin*R^oeZ0x@mUO@GKpJl#8MQLHg=kN!CK84?ZJ^^kuB3{F%S^*GS5otQCy$Fu14z>4dJBUkaTf~aGPD|x zPUteMT|mT66!E^2J=>TW7cdjNwyPsgjf=!&=HoaOtb33V7YK0_Z*vL(tRuqGb>at> zE!E}_c|vR3*g+;U zBBN%St?9F*eZGE^Tko?TYwlMmpRFU7B#dSQbk|0llC$5r!~d#TjUoj2?#T{pEn$sUthXM<1r?-sHLs;&QScfnZ)6l(@s=9%32r_VnVxyN;9 zna_Vd-Cvx9kEQPO|M)xJXBSYbA!sbDON%w$4a_qGLkKl-2g9s0*JK-5Qz^nk*5btL zzE#)hWh-;zrZM`h5qTA3vfvvv6&t}NabioEgT~{;u$!`nC0>BW5Y3ndk3mp#?RMA_ zaR-EMX=o?()zNlM@h>v&&aId|oM8hxCQ~N$FknWJHef;HLlmSo1XDQZfRJ%1-XQfM zBNk*DBm9XCm?z9^S2jJI+i=m~gD=oH#|+=khgRxuyV4r2PS+~dd!h66yiz;kJ0(pE zt=Z9<;pB=%NLuKMxlL+j>Or?miwzP#VEkZhVkk8OQ)M>7mGNrfr16Hk;j$i1v0nTeyAbt`h8E%{ zB_mCWMi~{MMc!p)X8=CL4r*^XIR81G=)r&rRNF^Xl^N+>VSpe%ft? zm2CrCQF+Hlddxvbms;;~ey_X-$)@E$iefjOHmskD0E;dM^$TgafjI}Bf`gm?#{2I( ziaOzvwU#5n=!!eVG{9lwD6&qO+!_F0MAXN#jI4GGh0)b!*}%<4bYR%maF^!Bc$?Pe z{3}12K#qM$c4b2MF-Q~M(|U?(({pO$w~@~K#x)|LCBu) zh#}%@fkv6LxZ9tFp|2YyBPHpp$_opbSEC&bYki*tA700}aDO95qIk#!r%29gjqK-P z5W(H|AlueMq)X=)$7ImYvPT5CfTTcVQ?y}z&yI&kKoFfRd9;9om*Wc&kw!X=?Q6Pp zVQvM&lYSG6>RW9r4HBG=%f_MTcoGs8>T;*%{4>iCd@o==TjqwrYNdu5mw}AxYl-F4 zyg|H)r>oADD{Lh9A=L{iXfuhBkjNpkf1CtDSMbYW)&<9oV)aa4;O?x{%n7oLYAfQq zYq=bL3OTbk;2mZ_ z?8rw^IF?6B8Pkxtb=+uluq@p1hUmic`A>k;*xo4ctE;@?(XX;S6AU7rXnE~?5}_lg ziQcuF+)`0L`9wo4mQy?ComNWkS|Kh)s4}U$zd#lODOced-+Yi& zDhw_y-&O?M3*MO8@ly~Zk~j$rT^j8#r{Nd;Mt8X(qegdy=6hFK;I}XE@U7WEaIbdJ zXH2@Fh*u9qVcZa^%MiGOV^%89R5h;PB?mGt#T~XA4vvy0Y0XZ&5tFD(a54EI*ieMD z@P)%&5gPpI%E2kC>hLD4pa;n9W3Uc>6(s|EP|EPDxh}zRcj52(9HIUO{>6<^cQm2K zR^L`f?qz7(Fl^!=`4v+&CIUA5uoNY_2F&wSfO)>ED;X9DS$sjB(k~2JvpZ@JpkcTf z0-q&SvtDf~;9&TneVEDI2NpF%NCkFbM1m_m<~;yM!`q7QB`K9+2mGr?dgUkJk{xdZ z0Km9v+&zE6?WVgGzmvTrriwa<9#A*S)gqF3{Knm%D+F~C_kdr*0br2?3 zTKLjAZ&he3ul#^`G)8Q53oqVz`Um8XSAKBe;?z5rU*KkI-)=+GmGy7Ct#!E#=DDBo zO&UO@I^>q=8Nodtu=x=LpvKD!3yUDrU|m7>8ATGAZ;MP0fe_`RqvF1hv4r?ajtG}3r zvSDjTlcZFnQ+d^$i;%xCIEgA>z2o zN+2qKxNLcTGPN7piv?WQEGsjhfCsb(nMA+0nx*Yb7O|rc#u#r^C%mXbR5=roXH+`% zzS|vB#fh?#+piWG0X};QMjPTW3Dob%Bf(O*tNbDeS6*4!e++qrJ-{k#7onYG!QzKd zQA2T5mWE1(N741#Sxm0~MAKMbZ64sCL*q`H?y*LL)EN-JmiU>wAS;h!s=P_VZRo zZTmNd8zd_@98)K6X_va!?&cBm!}}bX)hc}(1h=RICeYss(;v`IiV>D45$df`d$Y=J zpsza9muwwXg-|zTgsl${cV~}93e|uG&%$-=7VQ{(&SmjqDQQs*)>+6wZXL7EkWFLs3$V;}q{fHIWs#fE5 z>YQJv%o~@67$bwkLi$jA1fvJ8Xpqu>)1EP+%P`psG!#SCl7%C0mV-7kcUA%atW$Rn zd1T}!VsT&IXqNg_kThLF{O0ltlOM45#pz$X@x9A0OdOF|!E6ZPD3gk+?Nrn|h$_P0 zNZTMmH|JS;o*T2SP*}(CwGnI_wGHfBe?P)|HWCU$*5}n&n8~}v)PjuQ5YHTMu1y-KVLt2@mal0AdU}1 zUFm`ZGzy@@ddiA#zBjqdN)st5Y#zpbh!4^*b%S!lt~^=n8XX;=wM4`=N(L}lN@_oA zr2trLu%s6&9>x(2)c8t#!A$+ii=b9nHSk0^730h1cU;Vsc!0{^z|(Me>X(VEWqZR* z`Z!h*!>=uC@9jHU{%klSVC>6k{W5@e3x4*w5G85K{Rs~rE5^Z!mm}0&aF`v=fI%w^(P;2y%z7ifM{@zOTs-X3J_WpK5w>M*_98mfcIfonA!Bse0P# ztoaH63|{=Eh&9oO#DRW(M9Oc7Wj-*}X97bRc?=IzpoYPb5=NTSznEHmwZl=zm8g-0 z#F$5q&u^!3I09AqnGwr%Q{T=CjHDkulA#?`HgtY9fu_r)X=XEHQ?!kloy#6NG6wXY zJ5NYv1sUw)9=q!{na=1>GH(vQ1T^q{Pf=|z2`}@z0|E)uWycAbK(g8e~gdcUji+s zvnNjGw8GA`WaDB=NB;b5KIxW+yk>G$YP2`U494?Kbm029)I`SIgw=yX=7}ssK`v~z zxwt?O=9z5GB3by65L*=4)Y7Exh8uf<8VdS*s8sNxMjI?HUF3=ck`ewKI(K9i$kK&T z={zhE_sc)ndRbjkgoC|c+#uiCsleay-{Uce_yJL5{8O)=6|-}B)=O08X$v@#@psRa zB{Oe?;QAsq1{1(mSS&C_piU8_O~O*xIVf2;(B-wDgEv_lIp3gj3&mqo9GHdfB1eVR z=)_osolbFy%d-BD4FAyt5@`(dU2nPu@h+(YL$mxZDrZUc5Ww!U zcuTPvn#&oRC5?&aUT29lw!+E=UilGwM1g4$_?7e7HAdH)uhI(hZl&eal}3AC5*^x@ zfTH``oJWdpq#aQ}U&-ZB1ZDuVJ+@JxDIj`gBg4q}PPZvotmm z#jT67fg6e<8-neiI?gzykFYJ<+_qr(>J?QfSJ)n=Z+$7Wa;a7>3yPDNFQhMnORxqo zL!u?=wS7OD3^zns?((N*DS%QyHJ?lznE{RQIkBSz&HjYAP1rt(l%P1~TRGC>c_95q z%)$;2B8#6|-fGQF)66d|oYoTP%i;!=5)$#9YOkD_Na+k$DI>)R#l|GHf!Ue?Y{FLt zNS+z;p%bT=7i4u0__MEMbrh5qRuthWyN4V<%^36N zt986zq;=~pGKOrPYjkY-YSYNo9Bd6zT9}ZQbU=&Kn`*{aGXR}}fk4QN|3QTUn-a$e z^bgITtP0HzCqI1ohqGk@03m5FJSX5fK0njf*whPeZJv689PG#cS_F_rvVEoJVD2^U z*q}v0QJ~ty! zUs=w`g0R-zx-LjS*EQD!?(8Cn==ONhA|j%rp_YZ`^no4?t$MUt^SG?}*B(&(5+*kl z645X$f4{KcsaHBqm-$d5n?jVSlQRiWe<(1^soNc`bZ>7NKVLN4`D-K#BArkkRU< z)JRJTPUL0WkH3QcvQBpB9`O_J>GGyg(c$GRc7JUYsCs?@`2+s@GCcK`{8(p#juu(U zMPorQKZNd4V*+?ea(na=s>iND;u(3VMuhm?U%!e7$Kst9dc;UogEdAt3slm%*zB)QI(b;q<+o=6{5ZCAC#z}+-$yiKAb#ZLky zPUx!~(b`N@pkS#AyMjdUvU^r}uej#;8bu(Lpkc(F;a>8FSxV*D&mW|$S!8WHb*zuC zC${L&xh}fSzyJOmd7_}HOpgmYZbnXu$++r6J=ju9Z6#L~uM1$B(bF_F{HMi2vL?QRZO%q?H zm&n_o)x3-WhRIt zv}3l+kvIm&RU<5n!k5|a8{Z|$Q+z^sdnmKpUcE38k+2wcO!Sg>PrehIksz@qF94tn zAy?*vp6C9B(_9>wM74X(QfgVvxz~+N-T+RdpTq@;81ABP=oRtPpo@@0ZJ&A!aw3!T z(K0ark4a}wR}m5r1OMp4utA(ELI%|o7e{}0^PQV`fdI|`-Viw)H4R{y!m~dF{;F;( zO^{O>9cBeA-bdgTk$bt={bV0tsFX%2h7An@WUjgLcrP7XN(r`Mn>0)KW7uVw&c*J6 zr2;>q>jZE{FtSmM8*|o{n8;&z2znajV6tNc!fFOSO5JugG83Hv-b;!8Yb_tF+sc9- z8^PZBH*_-)B=vvF`}7t>j-ND8WwMzpaUY&mbn06#jsNC~U{IK}(A^FPP0Fp)g4jr^ zu|3%yASEzQbs#Z^8tag0+OfIS{Ea3wtccthliLEz4sJwupB5+?hV>7`1RKW$CmR8( zQOva#6@3)P1b7V-1j4bDU&n;^rTmHf9`pGh+5+V3g#DS!C)giz=t7IaVQ(v0s0a@u zD#p~pGE9#8)g2maAx)#_K#B$h=vB@JX61j{L4?vgU9L`cN%~3F-IWrv+evMj8*24V z)i+5v)F?q2dbT|E!cTJ`b5%ToslT0kZT7ib(@eGC%GTsM02k_n%+>>PxCVeBOW0IX z$-DJ-6B5-^>M9~6GY_Z-uor=ZJWKTrO%rgQS8-Za^Gx`3V=121-VuFqCO7r2Wrq|hRa;jx4Vffq zE`_>ySq0w5i6i*`-xBWQwseBrk`@RHS}}l}3eQV(K3QGBKzPIngX(XJgf*Tl5ml_& zByud{3Ie)Q?7lBg7%@JAh$A;uZ{M}RenQ7_db;(}#fsy=1LlTmWjr5U<=+lIzaY*^ zT=)K$q;Nj23g#v#y1p_*^MyrI`7P}jL0r`Zdk_f#mGJs#2jh4uXHG!2^f<7pk4eya z05AsT5Ro54NHEq3fsi|FAHHi0$r2CxBSNceFF|^{+*Zv56@UWeZe6{QdQQZZC=Z=y z9ZWkz_@^H}^&-L$qYkQx?c7-$sZ3)QgUwz~1TJz;u=Cpe$bQ)dHFP%+Ig37lpETt5 zgGaXI+W4Zx9{{_Vo8vOV!6D4=Kh)M1Za)P~elMmtfC+AwKlfmo-MJR|TPG&o4QmyD zGo0J5@Bd2e#E{x7C7?*6`tkb~exctfpMLxObN`2E+7$r{xZX|pdJr}*iY{NnpY>0} z811P1tP?XD239iaw*}H%G@F)a)^4>=ZR;%$^l#tRi`Ut*eOu>H_wnu9hPSuV`EK9w zaQ_hVX>My7=CAg6IvRj%K+8~3cl;pVG(320L;h>S_`l)qqo@r(FuY!xwrJ-qG9Y)h z`T#m+fefC?vNf3Zf_IhN`D({2W%6g;VJUBHur{j7SP5uy{fpIx;^MrmE1$VMG~Wa% z?&Js4?_avXLMx|RnaW?!jH670dE^eGcBhf4a*w|8Jp~Ae+W#27HCbOICTgH_nM!B0fu*1=c_H+1clS z0Jt!V%p@|8*G=Gzn}-?`xB~7ML2{gfq91i1*qZwgoc~tuMvdam=f(DV9DnM`eIA1I zfIQM;66&~7p6;;d6Ps`w$AH|;C%)jFEX#KTncuPhqxg=&@M(RGVANxBZ{lBVgzdQu zb+jM9r=@tK%&r?f4w@eC#LU*n>*F`cH6`avg2YwbnY(L2t4f=1w5GH#{1rvt*!565 z8RITDOISk@J5jl67T4nrZA8I6jfLl%+?u-wC%_Tdz7=gb zP7CzKKAdfj+z;F5b~!KZIafk@Rl+z=;m>89Q{Kec^UmN+K$2&GF7Ly=pqcv5Mp*mz zVFum!CyzG0=y3r5Y(-C{Sc^PbvJ~Kay>w*uLVC$NKuUZqcOg2R_zQ^N@3gP}3EYHJ z-@o)u<=Mk?{v2J4%FE_G8~^P7`6NE#n}ldtbxkLc^{W2)6h7i9ynJHvhn1&5-f!gt z;lW~b7fvgXcICjZF5tU!m(JwK@tH>ECk>QO83#ps0e=H*=7%pof2E45h!|Mb8;Rw2 zdt&K4@1Fn-6X}Wj7vo=ZD=5LK1#Rj*{Mp~(7H}+;{3*RZ3aRM}l%39Wu%srceVGhY24sgxx4$iYQxjz-CNHr(;MsNf9~q zyA*Mxs9I{2qNUK-FB3E4aZ2=-NH#Vz@4?XlBopbfI|2;_-kzhT-C-S2mcoE0tV8w% z3ZXXND!R;QKRidr`+GjWW}r9%+xA8nMYiTQ4UgTMH$UiUMxeO3(36a5m(us#+ z3`6C6kK;cZ_wCyVIDT*M)`5YorIP-FHzWB;NBom*E&Y9IyWlU-?6?1;|93Xwn%1w2 z{YSl~1)k~uhfb-j2qNQ-Nzr|JS*;JYIo~c3F=`?M!LgV@QZJ!ELU&*a?;eFixR{3t z3TAi`F&7YKnuzV4aS8y4Vc3Y|0h3+2#)FT&^56Y!-miqw?UZD;f_WE@6h4N2`h-wg zMc2?W3Zv053cHTN)3>p!zfWrulD0pZ??QS}&6_QrYUG4KK?43tSOPW*Ju1Nki8wY= z9PU-)QnrOCS4|5HEfvmswR8u$LkGA+g+0ky+a}i1>O$*UvYdqWw=W zaibu`;%$rBs&XqilM9z#>~J=d!?7eK4Yo&ESUE#ka^)1So4M>Jv1C`@2qO9_KdPd9 z=svrCmvY>|cay)qFz&vq+BGyRasBa$FPZu!AwTZ3#k)peBChOgB@(fZK)I&E%|xOj zFgZZjbM2N%yR<3$t=mPxrxiEZx*Z->EhZnIV-?j(H&PWDP2~h@ME7i=-s3)9>UdJ+ z_e;*roqOh$AG&X^Z|y4%AoXYEm-R0-FpM77)>bUMgoQ_u=2fkIrLKx5i^gWF)YX?8 zV*nM*7_gQvF4Sy8$PktCx`a~JW8X6mElvC5C_9kI~5G*5+lKojwC!Dzg zqM!WkY!y`o`?Zd#$un?vYR=(V_UAs!o_J+lmKBVA^$-+`mN&k4@mcyQY<1Xkb2F!= zUdZMDD$nm((n6t+y!afE-!fiC$I-9(v$OBK{QSue{r(v^I=LQZPN+SSu13DF!gX?V z8b7E0*G1y9#0XcYTP|*hzz&J>B6N8Y(M=)tA)DNoyc5WbBzNe2wcQ&f`c3!?I|Pp0)Red zFec|$?eaKWYu$jE;BNAV!$ri3K(LUn5emY)-d9qLTKt$=bupxKr=EXh3olpV$iU_q zq$Abq2XZCBqdYtFUB9-LTij-g2qYeL1Ti8SawzA>Hz%%XoiY54kE71pfa1d9lUlBz z&x)H~wI3Oqf zr#n!8z7uBj1Lo(}Ihd75W!r)M_alP}9C*l`^2G!EGyHh?^MTeq{CW3L{CVfT1Nbw& zdYWH_{y>{wCB8p37@VHbE|2vuKG0L_3T+MoUK%iN zKWJ81bg5yZG|44u8j@S2X`0xw{O$K=$C!HOl^;%j$4e_wdq7~ErCxyL0t9He%_ffL z?q~0)mbBa^YfgM$mypQiKI3+4@j;*fK2y0}tI~bXu5Cle(_7h9&E$6{KzeA5bWM@$ z3gh^#VDZChOMxdTNkHfxpnwr1Gogg1?Ra0 z$hjiebOxL`Ma5Ikv+tO|xej-et<6spxpMxxLvrO1cLW0@BZWmCfl%WlEAj;upm6vs z&8#-4$cjgc9MTo`;n!dzqCEn}ZE)Mi^M{-ByZg`y#4!BK<2|73%pwefCq80R5Pl{d zHWR_Gjg%;rWi^kA*!a+U1Plk_SSG#|NG8k;ttedtM5wBmYEnh3O69#+a$z#|M5;SR z`XDfd)WGWLUnV}TvmZmS0xrEL@CdKV9d@^W(c#MRt6;s3z%|!BDzKV3vEe6CO8M&^ zl~nTaPd4P%Tn6iXY17PR+`Kio(HrqU6MX&iBbOj=caiV?>kZy_*2S^R~hU#DnguphO*_=Ez*yl zE%27YLvl2tqIf9ptQDDKPl7(H3OLe?c69{6K%bnGNj%~$W?A787>I-tWbMR~1pEAi z;hf>+Uw04OEei%4nKcQdS0FsUp3PGqg^RBC<@e8xTZAc<2FW!G@+Vm@Y&a&!v3(9# zdZ!wNAQKd90)V66GBUte61G8nnIEJ< zCH$T?0X#)=Dh9e@qsqz7OWlN7YG|Sz;R4PYVO?AM%22tx z;I84QUv)z^0g)$O8-x|vsZmoS-DP}?Fg)xGEAtyKW^Yv`Ng2oqt*h+_~4!z8lR3GB5gZV;&xVclJ3v<0EPaytb8! zY-=Je*sHFCea}7zvNXUT%TsNYva=&~*y-e%%#KgJGy5Ip8um!hH4u#JmWBz&BfUh^ z8u`*%`3~;BfA`@7CQ|@jprI-(z%aND0f8(>E}>?{LB7gkqy0sqzL~m?<)kHDcd`E% zOnl{D6!wO9y9K?fuF2H-$zG!#Mopg0!P&qP=U~eBWx%>mJA`}2c5wA1v@ebnueW%o;w=a zoIluu;v3j>oB@FPP&UkBy)fo$B0;(3_R%ot$n(nb~Oy<=^Jhz62-R7n@x&wERw>6%kw%h5RVrcAQ#+;+Pjy?C~ zaR_jqx*w=*S)9+{pjy?@v#NSG4ce=w$h$3L3yv~$n-&ILiWRr)#%Rg1MC4J8_bpCV zzd74TM-2r!IJyMSb|&}wS?ii|8*n_l0U#HWyfjMhhj0U=Q86pHuZFuIuMafMs(c#f zf?Z(F6nUgp$S^Kt*Hab7%ermv@?1)5P5! z@)W819i!zTU~+(bDvS=p)}6VsC6k-R&tJIY)>X3;%;OkjFtzoiY;CetUDPV_fv2>s zo@|&c|G4^GGxrAElC+v){Ave zqPeGGQPhfd@vI+8!c-DdY4z$BXT3AZm0Q$9W+r6aG|x~naqbyKaeycCw>|};G~k&D zXxp<~Lkwgo2X9P;6c0(6;gh;ZW);|=Thzx2@&QtT;lV;2vLdDPl`-p3e)89It79&N z2Bay69gnUb8i{C-EDvQ|g1XC+)bjM-OTtKGZ+3geo*;%m++uQO{1-iD-G+Ki12EHi z@lG*%?DO7g-7Xf6?HVdj)T56!V@6fPp}1Kr0X_s`OV;NC zp4x5Z%Z#3Gt?UUB2kor+%l#hpUhU==<_KU&- zMASO%C<>(W7HqoF0^39}XDoQ-nH-6VgmN(0vjFHt$vf9N1hf`Gb>T_KHx&j-Sw``g zDjzB1k;Tl-aV;QCf^a@)6v^FAk&Lcz#;hCO__K-IVPV@h^@0&PI=ngGh~9@WYe;tm zW);uqC_$+&LJOa2^r%NY<9CHe%VpdJjA2G^e}3@`Jfd@N~oaL4fN-C`Y6re;i853h71Hbz{nmN?&evZRd4snF*{-+xh?5AZ{UeWP)zEDR_EE^> zA2m@AZq%iwWoE-Ab5(KGiq5`yRjVp`XWT&5dyL&aYl9iOPJ;9HC8DNISAn~btN2T; ze*jj(!q-VnkZ8XT@=q3XU!qP!H;bCRF7;E!Jld?M$4ifsSK(JvR1q_)^&=JK#iE=f z)u*0+`DxZik`TD{8tUf89z>~%$fKaiiRrqq*`sJE@aYb=M+JjvYCWZ5*5WSVEO{)hL`;eR4GPBkb z?rzzO4A8Kw`X({b(v0hdILawpnzR3atd-A!itozpcbl?wFY`@~LKT_Ax5R}p6R&5e#|7UVy=Hi3*tw6V! zt^|2gICS8^?t}SVJKA?=bX_|=0rM0)@<9em+lqsQW22BgGMZMu(!ug{uYca1z_NV+ zTbk;684asW=6plYzT)6K1KE@=ZlEfgza{17)$$$T{lRB_rPsAuyr0rf#>Cd}0h8HI zUlxy=7=uWxre`WJw4d3JXAs$P843jRnS(s>9%s>&<301SU!Ttpe`ufBSC{Cvz3vCM-KWi&)~*>mG>H@yjAo&md> zv60GW1s`pY4uN^r^pEoj538NZfzwqD3VrSe0%3vSKK^>xHVTi z$6rB%eGS}DPyr$~Ky8w1?Atwn(kh_nF{;-YHL7@&m5!P7pC(|cit|9})>yS{`tnN+ zZ*B4|HZq!TSz1BsaKXqW3o+SPP=k>cBLQ5xKIpximD07!ex$qen}b%{iCf7{dgrnD z$hGj7`&h~(KaW_Opop{H&COa&1J^67Tli#P}O$mXC z5RI>Hy@yoaXd;T-oraqpj(s9=Xxb-d1m7`tK%nd?Q>>kO=iK=8BofayPDVE48`=?e z5780v_aG7(8#i)cPODl`O@&Zc&lO6QbOF@OA=r*Sju$sc76n8A$_~VehexI~{w}vk zeUzG)L0U>O<3QX?v0Xe1JxF9=Qf1QI*4cv%fU`r2PJwUpQHa-3%6=*u8DU_62f#lm zzKNmyCfPKwX;|0zcua>`?5&1OiY6t`(vDp-rO%jwHDlN6;})-&$Z)ej^~F*oWP}!? zjIQcPBo$?saFuCCBSJMn7U-JDvKuVXTtJR$E`i}UTg9xITm1@#j!Eq`?W0;wHB)S_ zoBPe&YHS`6vGFau*|lGgyk2dl@SvOaQrp3U8JmXvS8;Oc{mI`zU^p@!g(x(%A0Ox( zLT3Cv7EFf#JkJ4CUq-g+n3cP_qu2?lBHOT_>a&~nVzkLrm6p7in|;oA@^;|q&+AgV zNAv+noJbPmn{oKqe5jO1Xd+4Q-VW%D{eZbsc~DhUf*kR_gxe4>VG%V{FFhAy*5he3 zQZ9v05u9;>m&5`(G|32;h%TjeYG;qA{v2f<8QSzNlD_GkSpvQ2l23D46rf%25D z0e#V$>0ezqMaAOWoBaRrv2)|1T%0)nbOatW253`^iqIX+Z2HC#CI({kFKq!XMRCpa z2Q)&fuS-cN{1lB!2*>NOIdDAkyllVpJs=tF5gRzj)~4@o@z3Kee(zWM#$N+%xDm?G zrIYWnpYhi&oMJ!;XHMU(&ME3;cI?a(gd6(32z0>P3e-==Q~b zd1wO&h#eRmFf4_p8z3(RfD)rM5vQoDS z952GEZmro@F#^-&@Cg@|S2i{TuX-5!#WMhxf3BQL6 z8%4L814A(p3?q7FG>uLH!If13(bomspLpg=*a4cmV9!CObwo2~Ga`WFJHBQP~p+9QquboGVuZ7d?MyZyt$F2o{CWueT5SDZpn8*%jj-ZUXWJ z(-IoBRHmM_m;zt7F*Jc%%(PBGZzClj6$1@ELH(jc7&6XZwiVvz;86(!s=CA%x zGEOuR2ka>tH4ihUUE-WG+AojVpZc=bx>{RjB2K;%GcOC~n_hLAmU&C8ZfPqkxIUb)E^BEWH8h_E3kUQkMzPoV@&EBgfbcP{2j|fzRosAE z2B=}Q})+9hjpN*MB{H5Sa5e>QR@(-G9O_moJ=}rnA9ak?+aQ z;FamFSWJ_~Bw+)J1XvSwm`9p@_&yQhPAONnkfspTrb)W#d+0@sXg}jb(ID=nAk>y+ z7>yehl%KmRostLeFT`-q>nqyqZ=cm`)j&)EMoq&L@^(?(DCt?buX4Gt@YDVb#)|oy z2aMTcPLTzf2ynU)v(EK^oQq^SWCZKkM!JNw8m3Y}g1^qb$5@0}$+|py;!RVUNMK=t zG^JQjG3g^RX@P_}#Z0BjZs5&93AuTi`bi*Tbg4UJDOXkOhwIj;Za_(P_3{Me)65ku zKmDJk-sL+?zyfc2l;CmS`kO%>nsZ+|lRH_35Ih7}Nbux7oSL(C%vHVh5(l8Y`ux*Z zx44VB`AZs7jU0XqmM)jRj3CO65mY;(Vg^-vU%R+|pm@`prGb_i^SBG4yWio{Frl35 z+-ywoJ&=yHx!m#C{UhQ~>gpo5c`P{-DLXgs464Vb}q1Dt!sxAhlSPdV-3hpE^9dK@iul_7(4E=b5#se zYn#VR^Eb;G<$?PXsGzg$S2VA~6VXiA%rE_9?sIO&)$QOurTmkh3(gwGDU@pl@rw<6 zWBYMbs2CsxkV5mprYo74Rap!zTaxJ7FQT(j^PMno8K`Zwb0K*M`?~(22gQaVAxdA58bceVFVnftL>Vd6y68DQVL^ANp|%`TdC zSLw;h`EG_GiqW!N5>&^P^UpoliB@=OIuc_hcji;L#k>kqUAuKhhX6yl?cvQ~8ke2u zdI1rApjNTse&%`*$@B!UORR7-50zak)g_MC~%8spG)2B z?!;y{0jfw-SI0j$P7Y=?u$+;O)#@tiR$6fMDR+138A1`s!kJQjO6cOa2aJFt)YZFlm-n^9AQ zI5_*v`L}4gjbChkaDOz_uOSi`bN!lvP-DGUG1rLO&FjC2=-o#d4Ce0a%3}eRw>oz?w-1*p-qRSs z-Lczwc%OGW#|8qovkI`{=iGH(Lcw%M+-UXm6_Q-{ z*g%!i8}lxb*t9Wg*cbZWn`?CoKwt^m=l8Z|wM@w?nl{jqS30KNxpct|a{WG*-&VL& zTAQkv&!(!~_-oQW-!pOK&G(aZ=9M35xn(B!zjF8tR7)mXA`_(UKDqkB-+C2T<3$|T zDRXp1wivvi=?Q6qM!YSui(5f+xn7!9*kx=y@G zjIAh?UfU>MM<)Hds0u^+HzU}If3B0nN=6H>lSFAervSPb@vyk`Qo%g42@2{0-WXY)_Du1VVv%C&HZ=n$yb#wLb3 zNal(A`^pcDcIF{VNsJ5J0}OX~3eFzl;A9J#eFllN{xjAmG4b&93u)Ln)}(CcVOu;#bOdio(QmA=%}r7q0TMUHllDfu z>nlCJ9w~3GX-7WhA{Y1LWc6@Wz@c)e^X3jNQ!CfN317XnThlL<2fQyDRD?L3QwjBfJ06& zNh4CS4%KMKw&Ln1{`YHc%0hcCrq*a#H4=p4K#p zrdUCRyfywBcnqld$$qLr>`nSj%ff}^eWnm}xF^U1(=)T%rhaJ?{b2n?%(<7vDUdgf zwM>~5vYZ=+1z{_|_${ywcH(D|F41CYhT61=Nf|#cX%@8tXE%CP!!c`JYT89sDIJB4 zjlUZaGtnUa#2Tsmk_j6}F!E=l+UD)8g@`5CNHSIv1aF(l2}rT<*3V|k45suVGwygB1Y!D*pk($1x!oN0pOIEK6S z+RTM>mw9_8KQQ;}qnvgT=RbrKEC1u$8NRd0^{;LT?8CgW$8}!`%N~!C-qXjgNHrkk zOyV;z7{H!UB8(DAv3sKwRI^+Ias_zfC~`Q%^$g>)umo!>)G$I3H$a#XsiY}DgortA z+qx6Xmhw!os|!I=Wu;)l+Yv#P{8b)B1n$dkE9QYJI{NuFz2)+7X=_W1W#ui&(q)8X zZtSK@PJD@5^8(8xwB=s)?{EFgrcJ+JJh~ZKGIwEZ;F*m7L}hi8BXe6zal6bGdEyw0 zD68`+xtq&pJW#=JGY#g(^9RSiNp8^i#+K|Rar1E=SW&*Wr++yAWFJJrj2%MFlhN|W zIKPFln_TtT7bcF31Geu>YE?`RMU!2EGv$^bkHVk58Rf2CvJ*v5x_U#OE?0Zt>t`?b zPq)teh3mU+S8orvIaUf^GOdH5#&vHTnF3eQF5oj7bIoswnzu1kR#q>!QnS<4Ss5#*D7oVLt za{g(CV8j~VsEwtxM_b=u@Bpj0rEZdvWC*6|&^Qgc`E$cppOqN9_`yq_A+#i*G1R(V z#S))AxKZnDRv&BQ40TYKv=+MN)t2ytnwdmm>KpQ!cmYz$JDoTWrX6$*Z-l=T1uruX zq`+I|FO+vpZ5TWr=CXC~n}4Cz$hbl$Y4g=FO2a)}Ol@c`dBsrwH~!-~xo(dDHj?{RMca=1sCuucV`XtD zCO_Rg`}`}f(j5dK?LoL)AZ%T_0I(Q-qR$f|5@Kt(k%4gCf+HUeS!W+yp z?j~`8?7LT1uQ3eOY}>F3$?_|$q5w~0JI-C zhBqVs{^B-X)zEi|_cQHh@Vh~Ri?iPOO8Nk7b{>@}V?Ep~JwQ)sTv&d+!jX`4;pHx5Ou0N$bP_hlRcU{45G?Q6NkVz10m3LlG=W2)F?ymD93^ zW9a~uWD#vlE}+mERE__7Jfd1l4xspBpVY%kZqo*x>+}cbPASn+O34`#_BL?@JOx3B zYASS(yXnAasn?S|hd@Z6HM<#74iYG1Xl~Vv8XSN3%_x{35zR;dTndT}n-w3W^pw-m zDqpIPQqw&DE7?wyO*1jkwFgnP7-5kFmU4C~%t}&C*;@u}2f1Bp_;GRrSDqXHN$Z?M zHWE-m%Ovg7ZmU*E-JXL84`<3}8YJk24(-dZyQGSR58aaj7nWkP`%1ZFAJ z>k)sYcE`>dsw;?ZV2)`+xH7<3>{}+dx6BKPU6$z5pN~zwL$6Mh7TC?}A<{v&SXMk6 z9i%x7)*UHyT0+i#Xi#`ciL}3%{4nn~Wb;mqCq*-;OZSD=vR~5@YdDp^F50H;J8G>*%Jvm0_^ERSbn_O2|zhSQ@_k~<16hy>e_7YW{ zKn*j*&f((AY4F3&<25jyM^%m2#Z@LXDQ|9HXD#m}!WhG{*_s4Z3_cE%$I~Lr)Ew#v z&5eh|ppvN+G$o&iTz9z5L~Iv`RHE0lrq|fDV@7@rZr95jqDbF_=*+hSti4vJ2;EBm z6ajz&}BiQNrn)Z#&7>A<`` z`Tvyn^|4W2=bq!Nmr_EwBqa@PN$!LOY8o5ckPkvA4PdyTB@P9L7)nb0F*ehTJyUyJ zAeUTKZF-eT>8g>stL&;;Wv{B;X0ORo;9j6LUChSVtek8}YNTq@RsYBz{Ua-NcT=fX z%1ZnDJh9oq@%ZSSf|8PB}$`FPHAp6?Iv7|GF$AEGJcHd62q7jOr$z^r`ezck`gT-xp`xwk#p&`unO8^LkHMd_SysMrG! zWRTv~u>RbtE{t7N5+v*{igrty98d?@j6SvAq0HkioG+VLkVR#-&zbDH!27tz`6RhPD6&y?B7DgS#9H^=C_Sm z?yLI!I7p~-`}hA$fP$F>!%|*f9Dm)vS`E*tc~NQ=Eps*@r#wFAM|b6sfYg&qnJoqM zRfDHQ@>M;zP|88Y7qEa)e`&L)r9a%Hhti%aBP-`g3C3GV+$32L*%X}8iY|%#p6oZj z(pQe>{bTYM86BlkVM->32WEMQA)JuJ5IbiwMVw5L;ztzt%FVvKKsNK2c<=L>r~Qe2 z+H6215so<<;gq}>m*EmvM4K&wLODbDloc2NW{o^#E=|;<@YBi2L$?&dAd3L|Rjr7C zlnB$nLK>yCElzXn-IHfj_Kp^zvP!^k)F2aXWc?S)e-xKJ*hMfIMu$`rkOQ+KP!9i8HYDTfC@6!!hkB!%+blKJ?*0l3Qeghi+WbGc>y2}lr(sB^wt4f3_bkFOu;*27 zUaAv=inUZ4q#HCc0MUpDrALHc1}5CVa2*jorQSsKHi3{xS0nOGQamlg7QF$lH<}jiUN(ENycZ zZNv@>StSPu54BQsX3(iP{lEc&)k$t(JiqZ1e%L|gIPx$=HP%G<@c3;%Z=>}oIX+HC zOuQx=f?6RTmxbiw_#0`-eq;Cg6r`jg z+6Cd=O9nHOkv)tTQX!ztJbjDVOe1t-;l!v62%KQecyOUlnXkYPc1t5TSXPRibV*rv z%|u?XXJl~i*EQ{T-P?jRvjp*3sWtXHbqEt&zdJ0vPr} zKxL$J8!Fb`piP~1ek^==L~cXh2+I86OpC=Q0kDB#W%=zGDqeqa(U#TU z=*kzYfYwqqM($*Fq20yONJ&JrB^1TZG|0=_Vwn9=KE1jJaFinty<7Jz!dB+ofmTIi z4ZITg;4b|1JLeuic{TWSi0>vCB!gji<_v5luYL7jj>8N`)As2Mo!)pdJ&1`-BnJ`n z(u8MfbeL64lR0fHgdq_skrD5D%;VDBB;>www$l^bolpiapQJfSo}Ft?*BiniF?({u z=wyoMPpx$#wM`>zLrp0yuVcX&RICTOj-lKiqAtNTP(q^6RWd_`#`Ll32X2=LiLJlvWY4HT$ciJoer&a8kR_x=QCMVH-<9M?5`%{@z7Yuj>XV=ZvnZq0m?{ zy_tveX2aEch>EcOwZq~MludLR6*CnG{O#U!LFAk*GLJE9Ycod>SNA0TW0Y1ApN8=r zW9a%36KB6QXZ9ertse}ifKi9g4tYEB_%!})7;k7~p2ofOI!JvlG0mvPtOL>|V6S^pQ&zMU@*|dnEs4z8hq7cx`d0znOnEyUM_aqSi3OD>u6@ zv(c9nt{=Cz88tN@49hGzof&^lTl3K=?ODr`ZItQvvRoTFAuAINp=f6D=r=E3VPPmX z=Zd{9?us3R&(!@w>uxr;ZP zvTWwdxG7{9j3#YF$=vmsC;Sn7N`@R{X+#Yc`0{pQX=8TB`X|!IZ#etX%$LAgAIFGY zxUD6*bx0IeHW%)+Bt6ShBx2y0IG+yKadWG zJ2m-F%_Ueae*=a-u?)a`Dgvb~n5{gqzY|^J(9A^Z60_4joy^3f{`VcEdnYV?g zyA$u3V0xnPvkfX1`5{p{d`@gUWuCsvY7AuLVZCPzFjObAy72Uz zU8`%<_0(=i6YuH~_@zG}N#+J(h!lOKW$=TucBwBkCX7K!MT%!f3W=q!Zy&;$scx*q zTr@LcwHgG#vLZ;H`!S_+O&h0IA}Nn+sDw5XjvVBa@co*AR56Q-oR2Dj|iZS)OD}fhq1znL?=@XsMP)gJL;cgMaN3oM}7rmguk^ zsd*A6^AoX6;%C>Ki{r1qrA6;3a*Vw@@s2fO_uFq5wN@L@X)XyR2ZY6lP)kV^y{pS0 zW^A4_yOf)bQnyr}hF`>uj|-e1XAQaZ5gOu%Md>k$2_Q$F{I-jmyVH-`2x%Kt*3{di zrG%lRgWN9a%Xg+soVeNxwv~qpcQ^CV8zE%y=52>RSw!IDU`A_5t`q{h4@j+5{WVl5Gt_B-M&;t$4Q?-FJHM}`LJ+18SP-LO;VfE6ukTO?qs75}1zJ4z&gs5T(j^GOt~YhBaafD%zA-thQ=05_u9e|ai1^CNjgY90hMS2fV zm+v*hwm@2ncpl*a>i`G^KriD#sLxcS@YxyuXcyx+10*r1^M>FOfE_kM)_TU1JKOhe z-_y~UZQH(Ud&l-hzWLa0RQ}p7R8}kn8bnZW0PpDmoT{Iy16_IM&3ACq?WQ$>ij1IK zOt%Qv&DD1mRKwlLbG)ml!yPHoF?zsTn;477dgAxz{(<+`oUk*SCZHA2Ml^$4>Bc>j zSOL(YiaL~OSE{u#&J|G$Jxrr1{t&O(A&v}4ZELtM(LVt#1CZSc<0LyQXw_>~ZgFx= zdSjaXg^(NTFROpR3Wir-SqySW2O-Yjym-7~<&N#4Y4)lnB5Lul|s#L;M~=&_qJL%6*bM z#G}SteH2=ii@c1JS$`1UaR)&-9MWrW2z$%-rroPOk3NoA^|*-)kGl(`MG*-of9G5f zCk@V8l{!E8jUvn%0&BatA-L5oQFtgSk+oSgBp3|#M)Xyr1_OB(1yzNmj@FO9L?)xP zwl#WEpTD$XvYvFxp(aEsvPo7p5J)`=SdpUb!8ltp`==K2YVcRW{?dx^6{j=2a+y|5 zlVNS>=;{H=iMR3QLS4n=CQ3IN_vjcS)-9K}e(F64+t@>#DLRot%Js+3D+;x!YjYcZg(0$3)7R1%-$N zvm+6tN@0E|R4s@|R3mzDHeP>8C#kI4{GWp;z0B2qQA*xsr(}+dsXYB*6BeqIm6&ZJH_L#Pf!zf# z{Tkx8oHneKezDX3}NR57R@JdF$ z&ob%;(Uv`D&C4H+)K$+p=fSw>7JApe=P z$NITuiZP}z^VL)TV21-@i;D8hdQdaR>m^5!vC5xrn!@3qeBrXM(GlOJC%JeMA>3sp z#Ih=U!#Q|OZO*tvXb4gFR}JlJkcZSi!rm|0b_!0glJyoK58-}vLG)9;8ypZ!YrT z>=FdcBS;Qo(A&_lMrd(E{j+7)`GY+ zMVbZ(gSSKag&Gt>c~BLH@}M%b45~EKEk$3t?Kj?Yp(-kQ#N-avWq;!wB@bH9B$=i? z)1==5Dcv}gmNP?$Oa~F7L*;vjCf$W%H^1=*uP`8Hv^RAhgK>>dn0bi;eNt@UBib0F zlChO+E19Q6n=RVX?0dgO+#g-Okh~W7A!M6BRZm5{DK_1f9U5{>61p%e0u`@^$?a)cEA%1K*+R_p{zkiDjpus`pr5U>@ z*3?d(iFQsK{kA$Mai$DU=*O8Kwzq8Ckt_xR@)$OkrPG^ZoS#1VB6@G^dU@BCivkj< z#m^Fms`O8^otn;|;0p<64H@*AhR!uokfjU6So}kZ%blVp!51;uUp~xdD$ZUneWXBw zNu#X@9JQ!e&$wQJ&>G&@PBH+RO7v2w7>0h^uM5P)AWPyqeA!8RQ@4KSDP=Elyy zjb2#}umr-?!qXXTUl%;{N4OE9HQL&z?g_u4#~N^20pX-a>=f>^9%v+vN_GZU{S{j$ zR?R}y3407_vRYhJn|DVlt{ge8Y(^9~>;QYQR(Zjl?D0GKMt_{M#)%UG`q|+v+6Q&s z!Qx;Oo1NoWoTAsIbSk(VHtG;8mV#3(MMb(K-`GJ!o2uT<=nBQW@eMRm1UGWXHX@aL zf`@{Va;)-W2BQe)%ILOAJVc;=rz-nkUfdfs#~QmDvOVB{sM(BUN+M5d?*^9NN*tRW zO4^Z)-g4$`9v5%g#JdzoX7baLAQ9ZJ+$Ex*Fo#31JRk)lbb|gqI-8eXIDH;nZX|63 zxS2Rp!C0Y7VeEX?Z~QPw4yw_TK-odsT_SPubX4S;v5RmTVPm2+80)~6Po6<88z`-| zh@z~Mx$nv=By$lk~PVmxk?OSdE}> z=TH;fsHk*w6eaa~(9;%HALLiyDk~`$z6`GjWlv^(Mf>qCwIWj1f zrFur;@LC|Ene!vXbbQJDrpl1--BGSuB;O?$oxyp8lw*QFqDsdtyVs;6T zO#%X_L)74g`)qduUA%i;{rw2WVOq04JKH302_BN}sh%s6@;HJ6ddo+Iqy;xq@P|1d zI1UR|4DUU}n7XNjsOJC5xhH_!&Vq1$^lHo5cMWj`l|!!0@7bYB_p~6&@~Bwn zj&~IjJQaO55E%k(Oz;}N{{#gd9?7FfD&k=1{(_CAfSP~s%!tzGMq`Xfy7!V!DwQde z_fog1pqUrGdHR>*&mop*DG`_#T$oY|X&>sat)*Z*_#$bg@4% zQX+WwE#dwJ1frjQ!zG^6ouGR?blFJ*G7O9)-=7_C% zQ2~gv6_+)Mu~b;uD4t|&rVRU*get1GHkmy&r48}kd}s2gnkRyMSCF&=C^#~RPV2q7 z;9iNMrj@zpz+ih}Z`c4t-j^opl}q9#VO;i7?ofyDtqgn6fSevvo= zi*Z5_NrHqxB2|m}tIkU_dET%=q}(8Ys5fctu>2s~>Dn%-9x0(G3l}j&rQ|Ak#rZ}f znFTOM59pX+jff~DLc&U*>5i4=ok)o<;QrHIPKuDY9eOLKo_p<1-j31VjWNOeoiTA= zv-NP5Bzq4xTY#-%fFGE!&1zG_r7oEAqUeD_t`9qgb&_Ws#_vtG6f7*UI9iu=S(i_~ zcBd|i*D|=Adu0`~Ek~I}?e#q5*OORHB=6~(CZ7MV7iL*gGuKpWN!@Uyg04f_Ple7N zSxsYRzc@Skz2UJF5fJj77iU)D?<^X1iRF!uW1z4SJq=BCk(g0F#KR4pjr-LS(@)c) z{N<%iu%8I6?B>R()yn2`V;^~A*YCpa2=4uc-0gy<^ zCFQr7{A*vO1&^jmYnUjRX_cjGF2uma(4r5~YCxkn%+k>4AP{Ev)2c!)LG>7SpD`f( z3h@`>86XKB)*hJ<2F)qWj4?K`tbtsNlkkWHs?Y}p!-Om92{Dtz^xvu_SpN01uI zLMoh{2A`t@c?PuQ6qKWAq_fBA&hdZaWP+>+8nU5kzHbnDq7WuLrkZ{fqqL9@mC1NR zo7pbJBcbN0zN}n8`-S$6oLH`c2z|K%STr?|Lc~C5cQN9{suBCY6R2oBnucgb!6Vdx zwi~A_LeaR#h^~RrkK;6L|F?`gwqkVDD(9X0fqKwjn@s=7E}OL zK#D5{MjLo@L984T+i%uO&(z}fASW7h1BLO5nx8$>2S!6@$+pUQv}E&rismTcEit=& z6q9ZAFymkXaD=^V7W1TtMKR0;2_#Y61tY{45fYXliUiDw!nJy4cW7=$@Ye5)z(mJu z9PjK3LK8um@q*}DBC>-t?%Mgq?I4Y?-(5W6_Rjhb(d0-;TfC=eMPQ9z&ih)rDio{)w2%x)%FbdEZh?qSQ%&0YX4KjrX z`~t#e>=KHmiDWzEgi#>fKQGbk87Gz)*B}Rp-AN;dXLe)r-~d9}K~G}+sDRan=yLE}!p&Gl z^>h4Y7_2&Y!PS0h@>|l>Qh_yLbBh^ZC<7Zd&C~cY5&_1UUxIL%ivec;2eZB;?@&_S zuYg7*`P;73?vNA_nf(rZI|hY6)E%0OzM=ZPVaTjhW#ajhPsAY-Y4@ZdaDsuY%@HC` zM-cf#0Avo@jvA;97BpSa=R8L#E3=J6}e|8Az{_fe(mljEx_Ww!k>TYULFIuPLrUOo+r4!-Nn^a=(QD zBvA#zmQ=)7=9D==a7aAZ^y^Rpf)m{aN_<87<0-+PR$P)!q;SM21F(k~sS3Qx-}$t}5F5Bg>qhHn za>n=QdoKXv6Iu0DsA;LvV_`Ou(F~&v3CuHZ6WbVT$SB(|wndp&nZIf1Y;EjZ7f}>y zMA3JRoz+p6jCgU#!qice(--z1Q>9RPkOx3&9B_mne5*$ zrT5E5k{pH05;4Pk?}m7Iv(G#I?j*1mmQ$=H5+W3zEfm~~4gaBmrjRw+JubnUV8V{U z;E1w0f=8UcF^h?OL_h>{rN!`xKwJrh#;e<3#kaHJ5&+!M)4{(CkrpuKwIYok;nYqNo6QETT27FG z{*jzsM6e352+Jrh> zhaV9Y)kDD)(#vz6_s}LolRC;}jv%~MG#(gJ-@;jR?NrMfoqu*^c$#rmq zIbV&h>D4Iq^$q9BYpeo~{^{*Y>Q&b+GVbW$SNDO^lA|%mP+Uml46J0zH<&0TPhgJ( zv`1`I87sIae&V;OqHTh`5{ulb@DVCTAN~D&KQ5)lu7SrjsjuK(#gr{>1C+731Sd~d zaP!!pRrML>v=o(*If3mr#P;iUU2o)$M6}sao7CM$jGb4ex6a^=W;ESm6?h0UZqYk2*ko(ju5y>l3U|+tIMAPOFE? zZQ4}_HmX7RrTV3o(?-|GBs}U$9hKBjyO)WA9kmbw-2LcFeRDC!Gy}E-ZFtzu=?zmQ zU@*&%s3iuEG{gEfZSDzIOaEJiYUl(`FBsRj#*%7&3yHgdE4%T5Ws zNNv%-d`}0zzCGdY1KZdP6B~BNMQd&)>AHPxl?Gbvflh^w02$3FFenv|J@dv`lGFqJ<^z(aYk))v z6vQ3Ws4OFEZV;Xurd%Ra8pT+p<2rChAu}vpN{^sA4sxK?>!68u>=%v-21t8IX_-)c zd;jLcf!@SdoRRx_!tXDy8~jE}*9Ut4Vm{D|@D33hzad*w3^NutzJjdzx?o!AeL>2l zFLwKgp%02&-~S-snP@xv!iNT+f%gR<)NXY!Vx-jvg-+jmphItuk|u%4&Cb+2AM*40 z@SgYf457D>ZOkA39Letu|9d{W@W>6zUtI2^8R8<^O-H0y`g&W5gJ_r3Wyx_E{=$E) zT~t;Swqy7{2gwRqMxxfSC`l8_73c7DKcxCHc>aB?4wQKi&uorn#7ND4tj&}R;;W9^7Z z^Q#Q<0GW{nsi!m7IxdcDXxha8HTQvb=)U@QGhlkB-kx}#Y;kG@Q<$boqh-$W>Pu5! zciNB4mmJvyQ4%xl*Uq;Ub|^%FQ9rbk%U-@0h2$~ArMKT~kiY_j3TT;qerx-s*gWy> z`3tdIWT(|E_L4ctI5%{MZW(5g6b2=MM}7+S!i6Sh$DG^;hUN{-yG)LsT1r&NCoPBt%Z2vW_BCw z&36@wsP>CwF=#5esN56;B5$jMKbZ~>E2mz$811}>a7~)60XrGU3Q=@ParOML>paei z;1){H8owwd3v)UO63f}S)tFgI*68B#=M7vOp;YAQLmNN{ZX+W1;;3=V@rf0Z%{;<6 z$h<$m1@a=de9pnp*9#&>#EpyQ5ZB{GR|S41caf-Bh0dQWAA6>f)q;qiv7xteMp%rX8{ z6Y7zYeUdQJ8rmeQqY0U8l_Rz)8wGUvOy!;`*KE6Lg{f^WyGnm9+SOe46g^`*(n3`| z$jz(V69t1Tc1IUs^^R>Mhz^LT-J99RJ9F|3n|wot2Sj+&@Z(FY${4LJK?~l8 zxbe>(u0dBJA((*RyeKYH7P37$F2MZhM1?Fe>k7xj+@N+B=Yd5T)^3`B>7RvigQiFebtT8x{J+Y5%hG203W1rmkLWFvE`)^*iWCBBoX;&bav@(m|K{kEPbZKjq7rPh)E z6JxL3y!~hijf=@)w(Z@wQQhi}fy0lDpA@PTfGCJjWHYF#2?k~8B7man2;#<%0g4Uk zMpvi~H$wW5UnuavMFjDXnLE-@UQM2BgvoIcQb`T0P6e%hB(UtIWgT0ifhh?UHkDME zm?t0M4OR}d8axg2fB-A{X%Q;1Ye~#F`>FTfTLvSdu7DscyW>!5hJe6|Rldg5u!Gth zg{r!*%tuT}^rqc(?k)-n;r_H1@A*%uGcC!YcBXYr)aN4}{!{NuTWw^$A+y;F$8{-Y z?0N_l$Nf_`Y(5^gcCTP*O-h~T{|8HrGj`+k0xgJBrKyGf_1m`eevQouc|S-=plPs> zr8wiNm$yV}?1*V&>eh3Oew0O93Mj*!-30<3Ud$3^0IOb~c=1MkaSxTw@S6+9T1GEi zyyB-?y0xq4NmdC29o$wd6s5s#^-339d4(m`{cH7G;ZP0Fuvi5r6{-9SH>#5_+Xez2 zes3QAgR9rKcr=5uY$cpV9F8B`rmE<}#i9IDY_x`+^5Mzb;$|mEhEo48o}?eig)~S( z;`HuPsSzaxGr!rb+oYqRa4A#d&F=|nj`C*UOjNm<;wbFP`x8vV4=;1AnX<=E3k6F z7VK$c?XzTU~eJ+KylBEq?)34``| z2ZG2kh=3x`vTPa+8mI|r!b`>Tk>9`ig3RIIIE#}K!mwCO!Fw(Zx~r$Z17=_8S4#?t ztR!j;F(COPS+Om&P23c=p$)7m(EM|bk8PdXXuIe3*q+%QTO^H1_p&6~Y>#RW)5ijj zF$};=N6hQ@V7sX;$Nq)Rx;URVmn7ayxpyB|-7P+KqQCVg+#nP?O&V2eQg|s#ZKSc^ zO|3|bw6txc1V=T5Oy_c)?*KPf4v?~?<#F_b1bObt)r#PrPqA?`B z8G<1dqy*LD`_pQcks%sXUua-@9Ehruq`)9y&Oi-iKmNyL{G_H69^)QcF|VcbOq3?e zSEa0LG(M$HhL))!?dMr1^KiY%xlBP5WlcB>td6y|a@X``PGML<*^2oU=Z|AisN+}> z-gWzS8mb+BSj$z&TB?+UH~L8%o2?YVIzth1pU?<7=@d#eT`|~V{vhh zBliX#0sUE~9B|@Y4dGCetl#1?W#7~YSy7_OAPInJj}ABims_aZ!1jHiv|+H zm>lXh87dOuY6sFSp_^G~QZll1X{FyT1>KY}t5!f7p7fA&;0l`E;06x4MU8dWxILS6 zLR!ly!zHyM=K`liR_e}0i&4k8Kd1ZMA_n0QbzUcp6g6cj@_HtWd|@EmMYMEAAaIeX zTTi@Y#ZDDVXaMqax9lYMz>PpHTBs|?pDlHj@eL>zoyDlPkAzz|Lw&8j@T3b~Zn=DJ z@)l0e(N4@|HLB20V6I~QR%@4jP@*IaJxG#E%vPWes0^)daSmuK# zTh*8YKf$_3(QpsDk9mXD+e5dYLQEa((62ziMyjDat(lS_u0%$~CMA8>Mu$)uRa)3|nUy!Bd#hOz*Cw2ow=n<{u4J(%i2 zJqBLNikrtGneEbBphoZSAvznTZu$N~h%PCbOzvZB-mK@)G6%|C` z`Z$(-GIxyPf|~Gw2O_(oja&lI(o`$_K#CDQQH4(nvonYB`F+Q9HekaR_ za>Bo`o&d=RA<7k+kIKKm$_IY>()np#GHlz$oq71}n|-NhWliva0u)#2c)tb3*r~(51@KlTAOwBLvmOYMHLHx%u**75k`hu}#|LI%|qp&Y2s}z2E zF=*j#-rU4HH@bI7%);;8K|xW2(;PK*rpbztJ{B7ZUdD0{Vsd63Q6*vJA!z`mQlIDhJHV=`lG6VN+f~soKjcAJk*Rdnq zbm%6{5fJMr*`+UQr7r8$AD&x9>U8ba*WcpV#$o0cvC1z(sU?PXs{tW(^X5`KBZ)Kz zi?Y7-qt^@PdMl*#Pq^4%pMua^JTfSe^I^c=LHW)SC^Wo1IPPtg)dkdz;FANZ#n9!K8c@yT72L|Sf$ppvh+MXuMcXuV z^vm}mk|eye6=oKN%veNVcpfp6a^n+#zF9^GmCM8XA&PT&wB_mtdgC5CBZO`=S19z$ zIZ`uLBz2O&5k!4}_7EO$E2WbesRTv8nyM{m`iJIy6k;I&<9D@w#4}K}ww$V-9@Y6%uwh*Mt7uB4$D~>0=G0@YZ3_x*>*6_yJdUfVgV4eOrH20^`WxA_Qx+9Z$LC%TH&tr(f#u zcc%=mRw;l2J`7rRSxzGii}pxQqLPAh0o@}zAw41cw4MhOolz|Oh2Qd5W((M__M6}M zLs%IjoQF~91LwsEEXZYLxt=loDZ7t(UPtm!=cJ)7IFUq|_onbn35b{MHE2DNq@Ik6 zn|b?m2eu;pikNCk1yHsER-|&27+H^tBXL}HDZlXUM94e+uV8i5HhGZhN|lW`b>=Wq zjyjM|O3iQxGDr zJv}|qHtKR~{N{!No8wB!?y1}a5e^DwWdD$9FlT8lpSPxLz0CCx41^ zd?`5gVtj4Mt3(A_Pn2}wA1iv+pYlub{SW^!harZs;Ndu=O=JK0;_~|Spts}nnf!njhHU@rj7Be8XA=% znuv?mSs=khE;o)XJ73lsbGjN3)YnrP+j?1<$*xij3YsZc0QnaTyAZUnQvNZF7IL_+ zu0&atY*;roSyt$9y-U=!azO zyA-*jXOE-$x+tr3#(TjF%wh8Rap^rL75Ut4w716r6FyHdZTfRcm8}W3j-z?x5p6!* zftm@LTpt+A-i-?EV12SGq3JF~A630s+UM>}8*H8hTMK-$Y)=52wzO|r8Rf7xp-M@@WxWaRyPH zmbz~VK0wY9)(7P4rsZ0dD=Nrqv-@43Z?6Wa_xUjPF0rl+Z(M|W3VT^}FMDK2jjZIl zW^m097V^lO=kVe;Sj)%TiX$+}HfhZjI))w3qrH|v7VN?T0a+p?&GITnJN}Bnwcwu& zwWUzL8_^~rwRlfGXOrjMAoK`G0bfoofj2Al1s7aG;X&S!Lg1`~N~^4lFHe6)o@T2? zds6li^}~_LG~eHWW3U%h0h}$5Mo5|=I6!j=^@L$zM&EO35TE7&D4F3MGOZZfmEhx2 z;fhVZ`0_$tq?t0pWej;x1?S2|T25ncmNk`Knib>Xpr7aHXo=GAOxxuj@CxDzf2Tr( z>=Be08DxllGN7CYA&_u~%XG;jETY~hZWon(`)jV?%xe6Z$6oT#dU#KK{CdLqcJNwA#59qb!R zf2BAST+*JYlg!dn6qKqT+^D+7V;QbyB;${66end;iV?a%1PBAYe(dHe_5Qd%`WSLZ zhIsMAPcOglTSZevWrxUd6U)aQ6Z{h+ozar;SUb*-GT>EdrIXqKN;MvZK}jFv*n3<7 z=6_cCk6(M+V1E<6# zUBQ)(o@9xbs+v>Fd)Wta0G%s9#DJ@yG9zg9nr61G&m7N0wQFuTo>IK#vq=Qh$o4Ds zlV!2=?n5j~57M*QJvypSv~(M4--9biOgHgGwzRLSXJllcP11^`qSHDKMx_YD;s4_k z@!QDiCnn`b5`~N!lKwNIsv)NfuU{=o(2$R+sSivs6tAMFfW__W?zn`RPT~zs<0ePZ zOR2gyi7PnqfXIx?FV|U#Qh%gd9`73BS!_i3imb(0hAmX>1;~OP0H>pF4mty`HOw3m LB<>hOV(tGA)46V5 literal 0 HcmV?d00001 diff --git a/ConfigFiles/translations/sqlb_ko_KR.ts b/ConfigFiles/translations/sqlb_ko_KR.ts new file mode 100644 index 0000000..e0d1881 --- /dev/null +++ b/ConfigFiles/translations/sqlb_ko_KR.ts @@ -0,0 +1,7012 @@ + + + + + AboutDialog + + + About DB Browser for SQLite + ~ì— ëŒ€í•˜ì—¬.. 보다는 ~~ ì •ë³´ ë¼ëŠ” í‘œí˜„ì„ ìš”ì¦˜ì— ë§Žì´ ì‚¬ìš©í•¨. + DB Browser for SQLite ì •ë³´ + + + + Version + 버전 + + + + <html><head/><body><p>DB Browser for SQLite is an open source, freeware visual tool used to create, design and edit SQLite database files.</p><p>It is bi-licensed under the Mozilla Public License Version 2, as well as the GNU General Public License Version 3 or later. You can modify or redistribute it under the conditions of these licenses.</p><p>See <a href="http://www.gnu.org/licenses/gpl.html">http://www.gnu.org/licenses/gpl.html</a> and <a href="https://www.mozilla.org/MPL/2.0/index.txt">https://www.mozilla.org/MPL/2.0/index.txt</a> for details.</p><p>For more information on this program please visit our website at: <a href="http://sqlitebrowser.org">http://sqlitebrowser.org</a></p><p><span style=" font-size:small;">This software uses the GPL/LGPL Qt Toolkit from </span><a href="http://qt-project.org/"><span style=" font-size:small;">http://qt-project.org/</span></a><span style=" font-size:small;"><br/>See </span><a href="http://qt-project.org/doc/qt-5/licensing.html"><span style=" font-size:small;">http://qt-project.org/doc/qt-5/licensing.html</span></a><span style=" font-size:small;"> for licensing terms and information.</span></p><p><span style=" font-size:small;">It also uses the Silk icon set by Mark James licensed under a Creative Commons Attribution 2.5 and 3.0 license.<br/>See </span><a href="http://www.famfamfam.com/lab/icons/silk/"><span style=" font-size:small;">http://www.famfamfam.com/lab/icons/silk/</span></a><span style=" font-size:small;"> for details.</span></p></body></html> + <html><head/><body><p>DB Browser for SQLite는 오픈소스, 프리웨어로 SQLite ë°ì´í„°ë² ì´ìФ 파ì¼ë“¤ì„ ìƒì„±, 설계하고 ìˆ˜ì •ì„ í•˜ê¸° 위한 비주얼 툴입니다.</p><p>ì´ í”„ë¡œê·¸ëž¨ì€ ì´ì¤‘ ë¼ì´ì„¼ìŠ¤ë¡œ Mozilla Public License Version 2ê³¼ GNU General Public License Version 3 ë˜ëŠ” ê·¸ ì´í›„ ë²„ì „ì„ ë”°ë¦…ë‹ˆë‹¤. ë”°ë¼ì„œ ì´ í”„ë¡œê·¸ëž¨ì€ ì´ ë¼ì´ì„¼ìŠ¤ë¥¼ 충족하는 범위 ë‚´ì—서 수정하고 ìž¬ë°°í¬ í•  수 있습니다.</p><p>ìžì„¸í•œ ì‚¬í•­ì€ <a href="http://www.gnu.org/licenses/gpl.html">http://www.gnu.org/licenses/gpl.html</a>ê³¼ <a href="https://www.mozilla.org/MPL/2.0/index.txt">https://www.mozilla.org/MPL/2.0/index.txt</a>를 참고하시기 ë°”ëžë‹ˆë‹¤. </p><p>ì´ í”„ë¡œê·¸ëž¨ì— ëŒ€í•œ 좀 ë” ìžì„¸í•œ 정보는 우리 웹사ì´íЏì—서 확ì¸í•˜ì‹¤ 수 있습니다: <a href="http://sqlitebrowser.org">http://sqlitebrowser.org</a></p><p><span style=" font-size:small;">ì´ ì†Œí”„íŠ¸ì›¨ì–´ëŠ” GPL/LGPL Qt Toolkitì„ ì‚¬ìš©í•©ë‹ˆë‹¤.</span><a href="http://qt-project.org/"><span style=" font-size:small;">http://qt-project.org/</span></a><span style=" font-size:small;"><br/>ë¼ì´ì„¼ìФ 사항과 정보는 </span><a href="http://qt-project.org/doc/qt-5/licensing.html"><span style=" font-size:small;">http://qt-project.org/doc/qt-5/licensing.html</span></a><span style=" font-size:small;">를 참고하시기 ë°”ëžë‹ˆë‹¤.</span></p><p><span style=" font-size:small;">ë˜í•œ ì´ í”„ë¡œê·¸ëž¨ì€ Mark Jamesì˜ Silk icon set를 Creative Commons Attribution 2.5와 3.0 ë¼ì´ì„¼ìФ 아래ì—서 사용하고 있습니다.<br/> ìžì„¸í•œ 정보는 </span><a href="http://www.famfamfam.com/lab/icons/silk/"><span style=" font-size:small;">http://www.famfamfam.com/lab/icons/silk/</span></a><span style=" font-size:small;">를 참고하시기 ë°”ëžë‹ˆë‹¤.</span></p></body></html> + + + + AddRecordDialog + + + Add New Record + 새 레코드 추가 + + + + Enter values for the new record considering constraints. Fields in bold are mandatory. + 제약 ì¡°ê±´ì„ ê³ ë ¤í•˜ì—¬ 새 레코드를 위한 ê°’ì„ ìž…ë ¥í•˜ì„¸ìš”. 진하게 ì²˜ë¦¬ëœ í•„ë“œëŠ” 반드시 입력해야 합니다. + + + + In the Value column you can specify the value for the field identified in the Name column. The Type column indicates the type of the field. Default values are displayed in the same style as NULL values. + ê°’ 필드ì—는 ì´ë¦„ í•„ë“œì— ëŒ€ì‘하는 ê°’ì„ ìž…ë ¥ í•  수 있습니다. 타입 필드는 í•„ë“œì˜ íƒ€ìž…ì„ ì˜ë¯¸í•©ë‹ˆë‹¤. 기본 ê°’ì€ NULLê°’ê³¼ ê°™ì€ ìŠ¤íƒ€ì¼ë¡œ 표시ë©ë‹ˆë‹¤. + + + + Name + ì´ë¦„ + + + + Type + 타입 + + + + Value + ê°’ + + + + Values to insert. Pre-filled default values are inserted automatically unless they are changed. + 추가할 값들입니다. 기본 ê°’ë“¤ì´ ë¯¸ë¦¬ ìž…ë ¥ë˜ì–´ 있어 수정하지 않는다면 ìžë™ì ìœ¼ë¡œ 들어갑니다. + + + + When you edit the values in the upper frame, the SQL query for inserting this new record is shown here. You can edit manually the query before saving. + 위 í”„ë ˆìž„ì˜ ê°’ì„ ìˆ˜ì •í•˜ë©´, ìˆ˜ì •ì‚¬í•­ì´ ë°˜ì˜ëœ 레코드 추가 SQL쿼리가 ì—¬ê¸°ì— ë‚˜íƒ€ë‚©ë‹ˆë‹¤. 저장하기 ì „ì´ë¼ë©´ ì§ì ‘ 쿼리를 수정할 ìˆ˜ë„ ìžˆìŠµë‹ˆë‹¤. + + + + <html><head/><body><p><span style=" font-weight:600;">Save</span> will submit the shown SQL statement to the database for inserting the new record.</p><p><span style=" font-weight:600;">Restore Defaults</span> will restore the initial values in the <span style=" font-weight:600;">Value</span> column.</p><p><span style=" font-weight:600;">Cancel</span> will close this dialog without executing the query.</p></body></html> + <html><head/><body><p><span style=" font-weight:600;">저장하기</span>는 새 레코드를 ë°ì´í„°ë² ì´ìŠ¤ì— ì¶”ê°€í•˜ê¸° 위해 작성ë˜ì–´ 나타나 있는 SQL êµ¬ë¬¸ì„ ë°˜ì˜í•©ë‹ˆë‹¤.</p><p><span style=" font-weight:600;">초기값 ë³µì›í•˜ê¸°</span>는 <span style=" font-weight:600;">ê°’</span> 필드를 초기 값으로 ë³µì›í•©ë‹ˆë‹¤.</p><p><span style=" font-weight:600;">취소하기</span>는 ì¿¼ë¦¬ì˜ ì‹¤í–‰ ì—†ì´ ì´ ì°½ì„ ë‹«ìŠµë‹ˆë‹¤.</p></body></html> + + + + Auto-increment + + ìžë™ ì¦ê°€(Auti-increment) + + + + + Unique constraint + + ìœ ë‹ˆí¬ ì œì•½ + + + + + Check constraint: %1 + + 제약 ì¡°ê±´: %1 + + + + + Foreign key: %1 + + 외래키: %1 + + + + + Default value: %1 + + 기본 ê°’: %1 + + + + + Error adding record. Message from database engine: + +%1 + 레코드 추가 ë„중 ì—러가 ë°œìƒí–ˆìŠµë‹ˆë‹¤. ë°ì´í„°ë² ì´ìФ 엔진 메시지: + +%1 + + + + Are you sure you want to restore all the entered values to their defaults? + ì •ë§ë¡œ 모든 입력한 ê°’ë“¤ì„ ì´ˆê¸° 값으로 ë³µì›í•©ë‹ˆê¹Œ? + + + + Application + + + Possible command line arguments: + 사용할 수 있는 명령줄 매개변수: + + + + Usage: %1 [options] [<database>|<project>] + + 사용법: %1 [옵션] [<ë°ì´í„°ë² ì´ìФ>|<프로ì íЏ>] + + + + + -h, --help Show command line options + -h, --help 명령줄 ì˜µì…˜ì„ ë³´ì—¬ì¤ë‹ˆë‹¤ + + + + -q, --quit Exit application after running scripts + -q, --quit 스í¬ë¦½íЏ 실행 후 í”„ë¡œê·¸ëž¨ì„ ì¢…ë£Œí•©ë‹ˆë‹¤ + + + + -s, --sql <file> Execute this SQL file after opening the DB + -s, --sql <파ì¼> DB를 ì—° ë‹¤ìŒ SQL 파ì¼ì„ 실행합니다 + + + + -t, --table <table> Browse this table after opening the DB + -t, --table <table> DB를 ì—° ë‹¤ìŒ ì´ í…Œì´ë¸”ì„ íƒìƒ‰í•©ë‹ˆë‹¤ + + + + -R, --read-only Open database in read-only mode + -R, --read-only ë°ì´í„°ë² ì´ìŠ¤ë¥¼ ì½ê¸° ì „ìš© 모드로 열기합니다 + + + + -o, --option <group>/<setting>=<value> + -o, --option <그룹>/<설정>=<ê°’> + + + + Run application with this setting temporarily set to value + 설정 ê°’ì„ ìž„ì‹œì ìœ¼ë¡œ 저장한 후 프로그램 실행합니다 + + + + -O, --save-option <group>/<setting>=<value> + -O, --save-option <그룹>/<설정>=<ê°’> + + + + Run application saving this value for this setting + 설정 ê°’ì„ ì €ìž¥í•˜ë©´ì„œ í”„ë¡œê·¸ëž¨ì„ ì‹¤í–‰í•©ë‹ˆë‹¤ + + + + -v, --version Display the current version + -v, --version 현재 ë²„ì „ì„ ì¶œë ¥í•©ë‹ˆë‹¤ + + + + <database> Open this SQLite database + <ë°ì´í„°ë² ì´ìФ> ì´ SQLite ë°ì´í„°ë² ì´ìŠ¤ë¥¼ 엽니다 + + + + <project> Open this project file (*.sqbpro) + <프로ì íЏ> ì´ í”„ë¡œì íЏ 파ì¼ì„ 엽니다 (*.sqbpro) + + + + The -s/--sql option requires an argument + -s/--sql ì˜µì…˜ì€ ì‹¤í–‰í•  SQL 파ì¼ëª…ì„ ê°™ì´ ì§€ì •í•´ì£¼ì–´ì•¼ 합니다 + + + + The file %1 does not exist + %1 파ì¼ì´ 존재하지 않습니다 + + + + The -t/--table option requires an argument + -t/--table ì˜µì…˜ì˜ ëŒ€ìƒì´ ë˜ëŠ” í…Œì´ë¸” ëª…ì„ ìž…ë ¥í•˜ì„¸ìš” + + + + The -o/--option and -O/--save-option options require an argument in the form group/setting=value + -o/--option ë˜ëŠ” -O/--save-option ì˜µì…˜ì€ group/setting=value 형ì‹ì˜ ì¸ìˆ˜ê°€ 필요합니다 + + + + Invalid option/non-existant file: %1 + ìž˜ëª»ëœ ì˜µì…˜ì„ ì‚¬ìš©í•˜ì˜€ê±°ë‚˜ 파ì¼ì´ 존재하지 않습니다: %1 + + + + SQLite Version + SQLite 버전 + + + + SQLCipher Version %1 (based on SQLite %2) + SQLCipher 버전 %1 (SQLite %2 기반) + + + + DB Browser for SQLite Version %1. + DB Browser for SQLite 버전 %1. + + + + Built for %1, running on %2 + %1 í™˜ê²½ì„ ìœ„í•´ 빌드ë¨, %2 환경ì—서 실행 중 + + + + Qt Version %1 + Qt 버전 %1 + + + + CipherDialog + + + SQLCipher encryption + SQLCipher 암호화 + + + + &Password + 암호(&P) + + + + &Reenter password + 암호 재입력(&R) + + + + Encr&yption settings + 암호화 설정(&Y) + + + + SQLCipher &3 defaults + SQLCipher &3 기본값 + + + + SQLCipher &4 defaults + SQLCipher &4 기본값 + + + + Custo&m + 수ë™(&M) + + + + Page si&ze + 페ì´ì§€ í¬ê¸°(&Z) + + + + &KDF iterations + &KDF 반복 횟수 + + + + HMAC algorithm + HMAC 알고리즘 + + + + KDF algorithm + KDF 알고리즘 + + + + Plaintext Header Size + í‰ë¬¸ í—¤ë” í¬ê¸° + + + + Passphrase + 암호 + + + + Raw key + Raw 키 + + + + Please set a key to encrypt the database. +Note that if you change any of the other, optional, settings you'll need to re-enter them as well every time you open the database file. +Leave the password fields empty to disable the encryption. +The encryption process might take some time and you should have a backup copy of your database! Unsaved changes are applied before modifying the encryption. + ë°ì´í„°ë² ì´ìŠ¤ë¥¼ 암호화할 때 사용할 키를 지정해주세요. +[주ì˜] ì—¬ëŸ¬ë¶„ì´ ì¶”ê°€ì ì¸ ì„¤ì •ì„ ë³€ê²½í•œë‹¤ë©´, ë°ì´í„°ë² ì´ìФ 파ì¼ì„ ì—´ 때마다 암호를 매번 입력해야합니다. +그러한 ë¶ˆíŽ¸í•¨ì„ í”¼í•˜ê¸° 위해 암호화를 하지 않으려면 암호 필드를 비워ë‘세요 +암호화 ìž‘ì—…ì€ ì‹œê°„ì´ ì¢€ 걸릴 수 있습니다. 그리고 ê¼­ ì—¬ëŸ¬ë¶„ì˜ ë°ì´í„°ë² ì´ìФ ë°±ì—…ë³¸ì„ ë°˜ë“œì‹œ 만들어ë‘세요! 암호화 작업 ì´ì „ì— í•œ 저장ë˜ì§€ ì•Šì€ ë³€ê²½ ì‚¬í•­ë„ ë°˜ì˜ë˜ë‹ˆ 주ì˜í•˜ì„¸ìš”. + + + + Please enter the key used to encrypt the database. +If any of the other settings were altered for this database file you need to provide this information as well. + ë°ì´í„°ë² ì´ìŠ¤ë¥¼ 암호화기 위해 사용할 키를 다시 입력해주세요. +ë°ì´í„°ë² ì´ìФ 파ì¼ì„ 변경하기 위해서는 ì´ ì •ë³´ë¥¼ 다시 입력해야만 합니다. + + + + ColumnDisplayFormatDialog + + + Choose display format + 표시 형ì‹ì„ ì„ íƒí•˜ì„¸ìš” + + + + Display format + 표시 í˜•ì‹ + + + + Choose a display format for the column '%1' which is applied to each value prior to showing it. + '%1' ì»¬ëŸ¼ì˜ í‘œì‹œ 형ì‹ì„ ì„ íƒí•˜ì„¸ìš”. + + + + Default + ì¼ë°˜ + + + + Decimal number + ìˆ«ìž + + + + Exponent notation + 지수 + + + + Hex blob + ì´ì§„ ë°ì´í„° + + + + Hex number + 16진수 + + + + Apple NSDate to date + Apple NSDate ë‚ ì§œ + + + + Java epoch (milliseconds) to date + Java 시간(밀리초)ì„ ë‚ ì§œë¡œ + + + + .NET DateTime.Ticks to date + .NET DateTime Ticks를 날짜로 + + + + Julian day to date + ë‚ ì§œ + + + + Unix epoch to local time + 유닉스 시간(타임스탬프)ì„ ì§€ì—­ 시간으로 + + + + Date as dd/mm/yyyy + 날짜를 dd/mm/yyyy 형태로 + + + + Lower case + ì†Œë¬¸ìž + + + + Custom display format must contain a function call applied to %1 + ì‚¬ìš©ìž ì •ì˜ í‘œì‹œ 형ì‹ì€ %1ì— ì ìš©ëœ 함수 í˜¸ì¶œì„ í¬í•¨í•´ì•¼ 합니다 + + + + Error in custom display format. Message from database engine: + +%1 + ì‚¬ìš©ìž ì •ì˜ í‘œì‹œ 형ì‹ì—서 ì—러가 ë°œìƒí–ˆìŠµë‹ˆë‹¤. ë°ì´í„°ë² ì´ìФ ì—”ì§„ì˜ ë©”ì‹œì§€: +%1 + + + + Custom display format must return only one column but it returned %1. + ì‚¬ìš©ìž ì§€ì • 표시 형ì‹ì€ í•˜ë‚˜ì˜ ì—´ë§Œ 반환해야 하지만 %1개를 반환했습니다. + + + + Octal number + 8진수 + + + + Round number + ë¼ìš´ë“œ 수 + + + + Unix epoch to date + 유닉스 시간(타임스탬프)ì„ ë‚ ì§œë¡œ + + + + Upper case + ëŒ€ë¬¸ìž + + + + Windows DATE to date + Windows ë‚ ì§œ + + + + Custom + ì‚¬ìš©ìž ì§€ì • + + + + CondFormatManager + + + Conditional Format Manager + ì¡°ê±´ë¶€ ì„œì‹ ê´€ë¦¬ìž + + + + This dialog allows creating and editing conditional formats. Each cell style will be selected by the first accomplished condition for that cell data. Conditional formats can be moved up and down, where those at higher rows take precedence over those at lower. Syntax for conditions is the same as for filters and an empty condition applies to all values. + ì´ ëŒ€í™”ìƒìžì—서는 ì¡°ê±´ë¶€ 형ì‹ì„ 추가하고 수정할 수 있습니다. ê° ì…€ 스타ì¼ì€ 해당 ì…€ ë°ì´í„°ì˜ 첫번째 ì¡°ê±´ì— ì˜í•´ 지정ë©ë‹ˆë‹¤. ì¡°ê±´ë¶€ 서ì‹ì€ 위/아래로 ì´ë™í•  수 있으며, ìƒìœ„ í–‰ì— ìžˆëŠ” 형ì‹ì€ 하위 í–‰ì— ìžˆëŠ” 형ì‹ë³´ë‹¤ ìš°ì„ ë©ë‹ˆë‹¤. ì¡°ê±´ êµ¬ë¬¸ì€ í•„í„°ì™€ ë™ì¼í•˜ë©° 빈 ì¡°ê±´ì€ ëª¨ë“  ê°’ì— ëŒ€í•´ ì ìš©ë©ë‹ˆë‹¤. + + + + Add new conditional format + 새 ì¡°ê±´ë¶€ 서ì‹ì„ 추가합니다 + + + + &Add + 추가(&A) + + + + Remove selected conditional format + ì„ íƒí•œ ì¡°ê±´ë¶€ 서ì‹ì„ 삭제합니다 + + + + &Remove + ì‚­ì œ(&R) + + + + Move selected conditional format up + ì„ íƒí•œ ì¡°ê±´ë¶€ 서ì‹ì„ 위로 ì´ë™í•©ë‹ˆë‹¤ + + + + Move &up + 위로 올리기(&U) + + + + Move selected conditional format down + ì„ íƒí•œ ì¡°ê±´ë¶€ 서ì‹ì„ 아래로 ì´ë™í•©ë‹ˆë‹¤ + + + + Move &down + 아래로 내리기(&D) + + + + Foreground + 전경색 + + + + Text color + 글ìžìƒ‰ + + + + Background + 배경색 + + + + Background color + 배경색 + + + + Font + 글꼴 + + + + Size + í¬ê¸° + + + + Bold + 진하게 + + + + Italic + 기울임 + + + + Underline + 밑줄 + + + + Alignment + ì •ë ¬ + + + + Condition + ì¡°ê±´ + + + + + Click to select color + 색ìƒì„ ì„ íƒí•˜ì„¸ìš” + + + + Are you sure you want to clear all the conditional formats of this field? + ì´ í•„ë“œì˜ ëª¨ë“  ì¡°ê±´ë¶€ 서ì‹ì„ ì •ë§ë¡œ 삭제하시겠습니까? + + + + DBBrowserDB + + + Please specify the database name under which you want to access the attached database + ë°ì´í„°ë² ì´ìФ ì—°ê²°ì„ ìœ„í•´ 불러올 ë°ì´í„°ë² ì´ìŠ¤ì˜ ë³„ì¹­ì„ ì§€ì •í•´ì£¼ì„¸ìš” + + + + Invalid file format + ìž˜ëª»ëœ íŒŒì¼ í¬ë§·ìž…니다 + + + + Do you want to save the changes made to the database file %1? + %1 ë°ì´í„°ë² ì´ìФ 파ì¼ì„ ìƒì„±í•˜ê¸° 위해 ë³€ê²½ì‚¬í•­ì„ ì €ìž¥í•˜ê² ìŠµë‹ˆê¹Œ? + + + + Exporting database to SQL file... + ë°ì´í„°ë² ì´ìŠ¤ë¥¼ SQL 파ì¼ë¡œ 내보내는 중... + + + + + Cancel + 취소 + + + + Executing SQL... + SQL 실행 중... + + + + Action cancelled. + ì‹¤í–‰ì´ ì·¨ì†Œë˜ì—ˆìŠµë‹ˆë‹¤. + + + + Do you really want to close this temporary database? All data will be lost. + ì´ ìž„ì‹œ ë°ì´í„°ë² ì´ìŠ¤ë¥¼ ë‹«ì„까요? 모든 ë°ì´í„°ê°€ 사ë¼ì§‘니다. + + + + This database has already been attached. Its schema name is '%1'. + ì´ ë°ì´í„°ë² ì´ìŠ¤ëŠ” ì´ë¯¸ ì—°ê²°ë˜ì—ˆìŠµë‹ˆë‹¤. 스키마 ì´ë¦„ì€ '%1' 입니다. + + + + Database didn't close correctly, probably still busy + ë°ì´í„°ë² ì´ìŠ¤ê°€ 제대로 닫히지 않았습니다, ì•„ë§ˆë„ ì•„ì§ ì‚¬ìš© ì¤‘ì¼ ê²ƒìž…ë‹ˆë‹¤ + + + + The database is currently busy: + ì´ ë°ì´í„°ë² ì´ìŠ¤ëŠ” 현재 사용 중입니다: + + + + Do you want to abort that other operation? + ì´ ëª…ë ¹ì„ ì·¨ì†Œí•˜ì‹œê² ìŠµë‹ˆê¹Œ? + + + + + No database file opened + 열린 ë°ì´í„°ë² ì´ìФ 파ì¼ì´ 없습니다 + + + + + Error in statement #%1: %2. +Aborting execution%3. + #%1: %2 êµ¬ë¬¸ì— ì—러가 있어 ì‹¤í–‰ì´ ì¤‘ë‹¨ë˜ì—ˆìŠµë‹ˆë‹¤%3. + + + + + and rolling back + 그리고 롤백합니다 + + + + didn't receive any output from %1 + %1ì—서 아무런 ì¶œë ¥ì„ ë°›ì§€ 못했습니다 + + + + could not execute command: %1 + ëª…ë ¹ì„ ì‹¤í–‰í•  수 없습니다: %1 + + + + Cannot delete this object + ì´ ê°ì²´ë¥¼ 삭제할 수 없습니다 + + + + Cannot set data on this object + ì´ ê°ì²´ì—는 ë°ì´í„°ë¥¼ 저장할 수 없습니다 + + + + + A table with the name '%1' already exists in schema '%2'. + '%1' ì´ë¦„ì˜ í…Œì´ë¸”ì´ ì´ë¯¸ 스키마 '%2'ì— ì¡´ìž¬í•©ë‹ˆë‹¤. + + + + No table with name '%1' exists in schema '%2'. + 스키마 '%2'ì— ì´ë¦„ì´ '%1'ì¸ í…Œì´ë¸”ì´ ì—†ìŠµë‹ˆë‹¤. + + + + + Cannot find column %1. + %1 ì»¬ëŸ¼ì„ ì°¾ì„ ìˆ˜ 없습니다. + + + + Creating savepoint failed. DB says: %1 + 세ì´ë¸Œ í¬ì¸íŠ¸ë¥¼ ìƒì„±í•˜ì§€ 못했습니다. DB 메시지: %1 + + + + Renaming the column failed. DB says: +%1 + ì—´ ì´ë¦„ì„ ë³€ê²½í•˜ì§€ 못했습니다. DB 메시지: +%1 + + + + + Releasing savepoint failed. DB says: %1 + 세ì´ë¸Œ í¬ì¸íŠ¸ë¥¼ 해제하지 못했습니다. DB 메시지: %1 + + + + Creating new table failed. DB says: %1 + 새 í…Œì´ë¸”ì„ ìƒì„±í•˜ì§€ 못했습니다. DB 메시지: %1 + + + + Copying data to new table failed. DB says: +%1 + 새 í…Œì´ë¸”ì— ë°ì´í„°ë¥¼ 복사하지 못했습니다. DB 메시지: +%1 + + + + Deleting old table failed. DB says: %1 + ì´ì „ í…Œì´ë¸”ì„ ì‚­ì œí•˜ì§€ 못했습니다. DB 메시지: %1 + + + + Error renaming table '%1' to '%2'. +Message from database engine: +%3 + í…Œì´ë¸” '%1'ì˜ ì´ë¦„ì„ '%2'(으)로 변경하는 ë™ì•ˆ 오류가 ë°œìƒí–ˆìŠµë‹ˆë‹¤. +ë°ì´í„°ë² ì´ìФ 엔진 메시지: +%3 + + + + could not get list of db objects: %1 + DB 개체 목ë¡ì„ 가져알 수 없습니다: %1 + + + + Restoring some of the objects associated with this table failed. This is most likely because some column names changed. Here's the SQL statement which you might want to fix and execute manually: + + + ì´ í…Œì´ë¸”ì— ê´€ë ¨ëœ ëª‡ ê°œì˜ ê°ì²´ë¥¼ ë³µì›í•˜ëŠ”ë° ì‹¤íŒ¨í–ˆìŠµë‹ˆë‹¤. ì´ëŸ¬í•œ 경우는 대부분 몇 ê°œì˜ í•„ë“œëª…ì´ ë³€ê²½ë˜ì–´ì„œ ë°œìƒ í–ˆì„ ê°€ëŠ¥ì„±ì´ í½ë‹ˆë‹¤. 아래 SQL êµ¬ë¬¸ì„ ì°¸ê³ í•˜ë©´ ì§ì ‘ 수ë™ìœ¼ë¡œ ê³ ì³ì„œ 실행할 수 ìžˆì„ ê²ƒìž…ë‹ˆë‹¤: + + + + + + could not get list of databases: %1 + ë°ì´í„°ë² ì´ìФ 목ë¡ì„ 가져올 수 없습니다: %1 + + + + Error loading extension: %1 + í™•ìž¥ê¸°ëŠ¥ì„ ë¶ˆëŸ¬ì˜¤ê¸° ì—러: %1 + + + + could not get column information + ì—´ 정보를 가져올 수 없습니다 + + + + Error setting pragma %1 to %2: %3 + pragma ì„¤ì •ì„ %1ì—서 %2로 ë³€ê²½í•˜ëŠ”ë° ì—러: %3 + + + + File not found. + 파ì¼ì„ ì°¾ì„ ìˆ˜ 없습니다. + + + + DbStructureModel + + + Name + ì´ë¦„ + + + + Object + ê°ì²´ + + + + Type + 타입 + + + + Schema + 스키마 + + + + Database + ë°ì´í„°ë² ì´ìФ + + + + Browsables + 열기 + + + + All + ëª¨ë‘ ì„ íƒ + + + + Temporary + 임시 + + + + Tables (%1) + í…Œì´ë¸” (%1) + + + + Indices (%1) + ì¸ë±ìФ (%1) + + + + Views (%1) + ë·° (%1) + + + + Triggers (%1) + 트리거 (%1) + + + + EditDialog + + + Edit database cell + ë°ì´í„°ë² ì´ìФ ë°ì´í„° ê°’ì„ ìˆ˜ì •í•˜ê¸° + + + + Mode: + 모드: + + + + This is the list of supported modes for the cell editor. Choose a mode for viewing or editing the data of the current cell. + ì…€ ì—디터ì—서 ì§€ì›ë˜ëŠ” 모ë¸ë“¤ 목ë¡ìž…니다. 현재 ì…€ì˜ ë°ì´í„°ë¥¼ 보거나 수정하기 위한 모드를 ì„ íƒí•˜ì„¸ìš”. + + + + RTL Text + RTL Text + + + + + Image + ì´ë¯¸ì§€ + + + + JSON + JSON + + + + XML + XML + + + + + Automatically adjust the editor mode to the loaded data type + 불러온 ë°ì´í„° íƒ€ìž…ì„ ì—디터 ëª¨ë“œì— ìžë™ ì ìš© + + + + This checkable button enables or disables the automatic switching of the editor mode. When a new cell is selected or new data is imported and the automatic switching is enabled, the mode adjusts to the detected data type. You can then change the editor mode manually. If you want to keep this manually switched mode while moving through the cells, switch the button off. + ì´ ì²´í¬ ë²„íŠ¼ì€ ì—디터 모드를 ìžë™ìœ¼ë¡œ 변경하는 ê¸°ëŠ¥ì„ í‚¤ê±°ë‚˜ ë•니다. 새 ì…€ì´ ì„ íƒë˜ê±°ë‚˜ 새로운 ë°ì´í„°ê°€ 가져와지면 ìžë™ 변경 ê¸°ëŠ¥ì´ ì¼œì ¸ì„œ ë°ì´í„° íƒ€ìž…ì„ ì¸ì‹í•˜ì—¬ ì ì ˆí•œ 모드를 ì ìš©í•©ë‹ˆë‹¤. ê·¸ í›„ì— ì—¬ëŸ¬ë¶„ì€ ëª¨ë“œë¥¼ 수ë™ìœ¼ë¡œ 변경할 수 있습니다. 만약 ì…€ë“¤ì„ ì´ë™í•  때 모드를 ì§ì ‘ ë³€ê²½í•˜ê³ ìž í•œë‹¤ë©´, ì´ ë²„íŠ¼ì„ ë¹„í™œì„±í™”í•˜ì„¸ìš”. + + + + Auto-switch + ìžë™ 전환 + + + + The text editor modes let you edit plain text, as well as JSON or XML data with syntax highlighting, automatic formatting and validation before saving. + +Errors are indicated with a red squiggle underline. + í…스트 편집기 모드를 사용하면 저장하기 ì „ì— êµ¬ë¬¸ ê°•ì¡° 표시, ìžë™ ì„œì‹ ì§€ì • ë° ìœ íš¨ì„± 검사를 사용하여 JSON ë˜ëŠ” XML ë°ì´í„°ë¿ë§Œ ì•„ë‹ˆë¼ ì¼ë°˜ í…ìŠ¤íŠ¸ë„ íŽ¸ì§‘í•  수 있습니다. +오류는 빨간색 물결 밑줄로 표시ë©ë‹ˆë‹¤. + + + + This Qt editor is used for right-to-left scripts, which are not supported by the default Text editor. The presence of right-to-left characters is detected and this editor mode is automatically selected. + ì´ Qt 편집기는 기본 í…스트 편집기ì—서 ì§€ì›í•˜ì§€ 않는 오른쪽ì—서 왼쪽으로 쓰는 스í¬ë¦½íŠ¸ì— ì‚¬ìš©ë©ë‹ˆë‹¤. 오른쪽ì—서 왼쪽으로 작성ë˜ëŠ” 문ìžê°€ ê°ì§€ë˜ë©´ ì´ íŽ¸ì§‘ê¸° 모드가 ìžë™ìœ¼ë¡œ ì„ íƒë©ë‹ˆë‹¤. + + + + Apply data to cell + ì…€ì— ë°ì´í„° ì ìš© + + + + Open preview dialog for printing displayed image + í‘œì‹œëœ ì´ë¯¸ì§€ì— 대한 ì¸ì‡„ 미리보기 ì°½ì„ ì—½ë‹ˆë‹¤ + + + + Open preview dialog for printing the data currently stored in the cell + 현재 ì…€ì— ì €ìž¥ëœ ë°ì´í„°ì— 대한 ì¸ì‡„ 미리보기 대화ìƒìž 열기 + + + + Auto-format: pretty print on loading, compact on saving. + ìžë™í¬ë§·: 불러올 때 예ì˜ê²Œ 프린트ë˜ê³ , 저장할 때 ìš©ëŸ‰ì„ ì¤„ìž…ë‹ˆë‹¤. + + + + When enabled, the auto-format feature formats the data on loading, breaking the text in lines and indenting it for maximum readability. On data saving, the auto-format feature compacts the data removing end of lines, and unnecessary whitespace. + 활성화ë˜ë©´, ìžë™í¬ë§· ê¸°ëŠ¥ì´ ë°ì´í„°ë¥¼ 불러올 때 í¬ë§·ì„ 지정하여 긴 ë¬¸ìž¥ì„ ì—¬ëŸ¬ 행으로 만들고 들여쓰기를 해서 ê°€ë…ì„±ì„ í–¥ìƒí•©ë‹ˆë‹¤. ë°ì´í„°ë¥¼ 저장할 때는 ìžë™í¬ë§· ê¸°ëŠ¥ì€ ê°œí–‰ 문ìžë¥¼ 제거하여 ë°ì´í„°ë¥¼ 줄ì´ê³  í•„ìš” 없는 ê³µë°±ì„ ì‚­ì œí•©ë‹ˆë‹¤. + + + + Word Wrap + 개행 + + + + Wrap lines on word boundaries + 단어 경계마다 개행 + + + + + Open in default application or browser + 기본 ì‘ìš© 프로그램 ë˜ëŠ” 브ë¼ìš°ì €ì—서 열기 + + + + Open in application + ì‘ìš© 프로그램ì—서 열기 + + + + The value is interpreted as a file or URL and opened in the default application or web browser. + ê°’ì€ íŒŒì¼ ë˜ëŠ” URL로 í•´ì„ë˜ë©° 기본 애플리케ì´ì…˜ ë˜ëŠ” 웹 브ë¼ìš°ì €ì—서 열립니다. + + + + Save file reference... + 참조를 파ì¼ì— 저장... + + + + Save reference to file + 파ì¼ì— 참조 저장 + + + + + Open in external application + 외부 프로그램ì—서 열기 + + + + Autoformat + ìžë™í¬ë§· + + + + &Export... + 내보내기(&E)... + + + + + &Import... + 가져오기(&I)... + + + + + Import from file + 파ì¼ì—서 가져오기 + + + + + Opens a file dialog used to import any kind of data to this database cell. + ì´ ë°ì´í„°ë² ì´ìФ 셀로 ë°ì´í„°ë¥¼ 가져오기 위하여 대화ìƒìžë¥¼ 엽니다. + + + + Export to file + 파ì¼ë¡œ 내보내기 + + + + Opens a file dialog used to export the contents of this database cell to a file. + ì´ ë°ì´í„°ë² ì´ìФ ì…€ì˜ ë‚´ìš©ì„ íŒŒì¼ë¡œ ë‚´ë³´ë‚´ëŠ”ë° ì‚¬ìš©ë˜ëŠ” 대화 ìƒìžë¥¼ 엽니다. + + + + + Print... + ì¸ì‡„하기... + + + + + Ctrl+P + + + + + Open preview dialog for printing displayed text + ì¶œë ¥ëœ í…스트를 ì¸ì‡„하기 위한 ì¸ì‡„ 미리보기 ì°½ì„ ì—½ë‹ˆë‹¤ + + + + Copy Hex and ASCII + Hex와 ASCII를 복사합니다 + + + + Copy selected hexadecimal and ASCII columns to the clipboard + ì„ íƒëœ 16진수와 ASCII 필드를 í´ë¦½ë³´ë“œë¡œ 복사합니다 + + + + Ctrl+Shift+C + + + + + Set as &NULL + NULL로 만들기(&N) + + + + This button saves the changes performed in the cell editor to the database cell. + ì´ ë²„íŠ¼ì€ ë°ì´í„° ì…€ì— ì…€ ì—ë””í„°ì˜ ë³€ê²½ ì‚¬í•­ì„ ì ìš©í•˜ì—¬ 저장하는 버튼입니다. + + + + Apply + ì ìš© + + + + Text + 문ìžì—´ + + + + Binary + ë°”ì´ë„ˆë¦¬ + + + + Erases the contents of the cell + ì…€ì˜ ë°ì´í„° ê°’ì„ ì‚­ì œí•©ë‹ˆë‹¤ + + + + This area displays information about the data present in this database cell + ì´ ì˜ì—­ì€ ì´ ë°ì´í„°ë² ì´ìФ ë°ì´í„° ê°’ì— ëŒ€í•œ 정보를 ë³´ì—¬ì¤ë‹ˆë‹¤ + + + + Type of data currently in cell + 현재 ì…€ì— ìžˆëŠ” ë°ì´í„° 타입 + + + + Size of data currently in table + 현재 í…Œì´ë¸”ì— ìžˆëŠ” ë°ì´í„° í¬ê¸° + + + + Choose a filename to export data + 내보내기 í•  ë°ì´í„°ì˜ íŒŒì¼ ì´ë¦„ì„ ì„ íƒí•˜ì„¸ìš” + + + + + Image data can't be viewed in this mode. + ì´ë¯¸ì§€ ë°ì´í„°ëŠ” ì´ ëª¨ë“œì—서는 ë³¼ 수 없습니다. + + + + + Try switching to Image or Binary mode. + ì´ë¯¸ì§€ë‚˜ ë°”ì´ë„ˆë¦¬ 모드로 바꿔보세요. + + + + + Binary data can't be viewed in this mode. + ë°”ì´ë„ˆë¦¬ ë°ì´í„°ëŠ” ì´ ëª¨ë“œì—서 ë³¼ 수 없습니다. + + + + + Try switching to Binary mode. + ë°”ì´ë„ˆë¦¬ 모드로 바꿔보세요. + + + + + Image files (%1) + ì´ë¯¸ì§€ íŒŒì¼ (%1) + + + + Binary files (*.bin) + ë°”ì´ë„ˆë¦¬ íŒŒì¼ (*.bin) + + + + Choose a file to import + 가져올 파ì¼ì„ ì„ íƒí•˜ì„¸ìš” + + + + %1 Image + %1 ì´ë¯¸ì§€ + + + + Invalid data for this mode + ì´ ëª¨ë“œì— ë§žì§€ 않는 ë°ì´í„° + + + + The cell contains invalid %1 data. Reason: %2. Do you really want to apply it to the cell? + ì´ ì…€ì—는 올바르지 ì•Šì€ %1 ë°ì´í„°ë¥¼ í¬í•¨í•˜ê³  있습니다. ì´ìœ : %2. ì´ ì…€ì„ ì •ë§ë¡œ ì ìš©í• ê¹Œìš”? + + + + + + %n character(s) + + %n ìž + + + + + Type of data currently in cell: %1 Image + 현재 ë°ì´í„° 타입: %1 ì´ë¯¸ì§€ + + + + %1x%2 pixel(s) + %1x%2 픽셀 + + + + Type of data currently in cell: NULL + 현재 ë°ì´í„° 타입: ë„ + + + + Type of data currently in cell: Valid JSON + 현재 ë°ì´í„° 타입: 유효한 JSON + + + + Couldn't save file: %1. + 파ì¼ì„ 저장할 수 없습니다: %1. + + + + The data has been saved to a temporary file and has been opened with the default application. You can now edit the file and, when you are ready, apply the saved new data to the cell editor or cancel any changes. + 현재 ë°ì´í„°ëŠ” 임시 파ì¼ì— 저장ë˜ì—ˆìœ¼ë©° 기본 프로그램으로 열립니다. ì´ì œ 파ì¼ì„ 편집하고 준비ë˜ë©´ ì €ìž¥ëœ ìƒˆ ë°ì´í„°ë¥¼ ì…€ íŽ¸ì§‘ê¸°ì— ì ìš©í•˜ê±°ë‚˜ 변경 ì‚¬í•­ì„ ì·¨ì†Œí•  수 있습니다. + + + + + Type of data currently in cell: Text / Numeric + 현재 ë°ì´í„° 타입: 문ìžì—´ / ìˆ«ìž + + + + Type of data currently in cell: Binary + 현재 ë°ì´í„° 타입: ë°”ì´ë„ˆë¦¬ + + + + + %n byte(s) + + %n ë°”ì´íЏ + + + + + EditIndexDialog + + + &Name + ì´ë¦„(&N) + + + + Order + ì •ë ¬ 순서 + + + + &Table + í…Œì´ë¸”(&T) + + + + Edit Index Schema + ì¸ë±ìФ 스키마 수정 + + + + &Unique + 유니í¬(&U) + + + + For restricting the index to only a part of the table you can specify a WHERE clause here that selects the part of the table that should be indexed + ì¸ë±ìŠ¤ë¥¼ í…Œì´ë¸”ì˜ ì¼ë¶€ë¡œë§Œ 제한하기 위해서 ì¸ë±ì‹± 해야하는 í…Œì´ë¸”ì˜ ì¼ë¶€ë¥¼ 지정하는 WHERE ì ˆì„ ì§€ì •í•  수 있습니다 + + + + Partial inde&x clause + 부분(Partial) ì¸ë±ìŠ¤ì ˆ(&X) + + + + Colu&mns + ì—´(&M) + + + + Table column + í…Œì´ë¸” ì—´ + + + + Type + 타입 + + + + Add a new expression column to the index. Expression columns contain SQL expression rather than column names. + ì¸ë±ìŠ¤ì— ìƒˆ í‘œí˜„ì‹ ì»¬ëŸ¼ì„ ì¶”ê°€í•˜ì„¸ìš”. í‘œí˜„ì‹ ì»¬ëŸ¼ì€ ì»¬ëŸ¼ ì´ë¦„ 대신 SQL 표현ì‹ì´ 들어갑니다. + + + + Index column + ì¸ë±ìФ 컬럼 + + + + Deleting the old index failed: +%1 + ì´ì „ ì¸ë±ìŠ¤ë¥¼ ì‚­ì œí•˜ëŠ”ë° ì‹¤íŒ¨í–ˆìŠµë‹ˆë‹¤: %1 + + + + Creating the index failed: +%1 + ì¸ë±ìФ ìƒì„±ì— 실패했습니다: +%1 + + + + EditTableDialog + + + Edit table definition + í…Œì´ë¸” ì •ì˜ ë³€ê²½ + + + + Table + í…Œì´ë¸” + + + + Advanced + 고급 + + + + Make this a 'WITHOUT rowid' table. Setting this flag requires a field of type INTEGER with the primary key flag set and the auto increment flag unset. + ì´ í…Œì´ë¸”ì„ 'rowidê°€ 없는' í…Œì´ë¸”로 ìƒì„±í•©ë‹ˆë‹¤. ì´ ì„¤ì •ì„ ì‚¬ìš©í•˜ë ¤ë©´ 주 키(Primary Key)로 설정ë˜ê³  ìžë™ ì¦ê°€(Auto Increment)ê°€ í•´ì œëœ INTEGER íƒ€ìž…ì˜ í•„ë“œ 하나가 필요합니다. + + + + Without Rowid + Rowid 필드 ì—†ìŒ + + + + Fields + 필드 + + + + Database sche&ma + ë°ì´í„°ë² ì´ìФ 스키마(&M) + + + + Add + 추가 + + + + Remove + ì‚­ì œ + + + + Move to top + 최ìƒë‹¨ìœ¼ë¡œ 올리기 + + + + Move up + 위로 올리기 + + + + Move down + 아래로 내리기 + + + + Move to bottom + 최하단으로 내리기 + + + + + Name + 필드명 + + + + + Type + 타입 + + + + NN + NN + + + + Not null + Not null + + + + PK + PK + + + + Primary key + 기본 키 + + + + AI + AI + + + + Autoincrement + ìžë™ ì¦ê°€(Autoincrement) + + + + U + U + + + + + + Unique + 유니í¬(Unique) + + + + Default + 기본값 + + + + Default value + 기본값 + + + + + + Check + ì²´í¬ + + + + Check constraint + 제약조건(Check constraint) + + + + Collation + 콜레ì´ì…˜ + + + + + + Foreign Key + 외래키 + + + + Constraints + 제약 ì¡°ê±´ + + + + Add constraint + 제약 ì¡°ê±´ 추가 + + + + Remove constraint + 제약 ì¡°ê±´ ì‚­ì œ + + + + Columns + 필드 + + + + SQL + SQL + + + + <html><head/><body><p><span style=" font-weight:600; color:#ff0000;">Warning: </span>There is something with this table definition that our parser doesn't fully understand. Modifying and saving this table might result in problems.</p></body></html> + <html><head/><body><p><span style=" font-weight:600; color:#ff0000;">Warning: </span>ì´ í…Œì´ë¸” ì •ì˜ ì¤‘ì— íŒŒì„œê°€ í•´ì„í•  수 없는 ë¶€ë¶„ì´ ìžˆìŠµë‹ˆë‹¤. ì´ í…Œì´ë¸”ì„ ìˆ˜ì •í•˜ê±°ë‚˜ 저장하면 문제가 ë°œìƒí•  수 있습니다.</p></body></html> + + + + + Primary Key + 기본 키 + + + + Add a primary key constraint + 기본 키 제약 ì¡°ê±´ 추가 + + + + Add a foreign key constraint + 외래 키 제약 ì¡°ê±´ 추가 + + + + Add a unique constraint + ìœ ë‹ˆí¬ ì œì•½ ì¡°ê±´ 추가 + + + + Add a check constraint + ì²´í¬ ì œì•½ ì¡°ê±´ 추가 + + + + Error creating table. Message from database engine: +%1 + í…Œì´ë¸” ìƒì„± ì—러. ë°ì´í„°ë² ì´ìФ 메시지: +%1 + + + + There already is a field with that name. Please rename it first or choose a different name for this field. + ì´ë¯¸ 다른 필드ì—서 ì‚¬ìš©ì¤‘ì¸ ì´ë¦„입니다. 다른 ì´ë¦„ì„ ì‚¬ìš©í•˜ê±°ë‚˜ 사용 ì¤‘ì¸ í•„ë“œ ì´ë¦„ì„ ë°”ê¾¸ì„¸ìš”. + + + + + There can only be one primary key for each table. Please modify the existing primary key instead. + ê° í…Œì´ë¸”마다 í•˜ë‚˜ì˜ ê¸°ë³¸ 키만 ìžˆì„ ìˆ˜ 있습니다. 기존 기본 키를 대신 수정하세요. + + + + This column is referenced in a foreign key in table %1 and thus its name cannot be changed. + ì´ í•„ë“œëŠ” í…Œì´ë¸” %1 ì— ìžˆëŠ” ì™¸ëž˜í‚¤ì— ì°¸ì¡°ë˜ì–´ 있기 ë•Œë¬¸ì— ì´ë¦„ì„ ë³€ê²½í•  수 없습니다. + + + + There is at least one row with this field set to NULL. This makes it impossible to set this flag. Please change the table data first. + ì´ í•„ë“œ ê°’ì´ NULL로 ë˜ì–´ 있는 레코드가 최소한 하나 ì´ìƒ 존재합니다. ì´ëŸ¬í•œ ìƒíƒœì—서는 ë³€ê²½ì´ ë¶ˆê°€ëŠ¥í•˜ë‹ˆ í…Œì´ë¸”ì˜ ë°ì´í„°ë¥¼ 먼저 수정해서 NULL ê°’ì„ ì‚­ì œì£¼ì„¸ìš”. + + + + There is at least one row with a non-integer value in this field. This makes it impossible to set the AI flag. Please change the table data first. + ì´ í•„ë“œ ê°’ì´ ìˆ«ìžê°€ 아닌 값으로 ë˜ì–´ 있는 레코드가 최소 하나 ì´ìƒ 존재합니다. ì´ëŸ¬í•œ ìƒíƒœì—서는 ë³€ê²½ì´ ë¶ˆê°€ëŠ¥í•˜ë‹ˆ í…Œì´ë¸”ì˜ ë°ì´í„° ê°’ì„ ë¨¼ì € 변경해주세요. + + + + Column '%1' has duplicate data. + + %1 ì—´ì— ì¤‘ë³µëœ ë°ì´í„°ê°€ 있습니다. + + + + + This makes it impossible to enable the 'Unique' flag. Please remove the duplicate data, which will allow the 'Unique' flag to then be enabled. + ì´ë¡œ ì¸í•´ ìœ ë‹ˆí¬ í”Œëž˜ê·¸ë¥¼ 설정할 수 없습니다. 중복 ë°ì´í„°ë¥¼ 제거하여야 ìœ ë‹ˆí¬ í”Œëž˜ê·¸ë¥¼ 설정할 수 있습니다. + + + + Are you sure you want to delete the field '%1'? +All data currently stored in this field will be lost. + ì •ë§ë¡œ '%1' 필드를 삭제하시겠습니까? +ì´ í•„ë“œì— ì €ìž¥ëœ ëª¨ë“  ë°ì´í„°ê°€ ê°™ì´ ì‚­ì œë©ë‹ˆë‹¤. + + + + Please add a field which meets the following criteria before setting the without rowid flag: + - Primary key flag set + - Auto increment disabled + 'rowid 사용하지 않ìŒ'ì„ ì‚¬ìš©í•˜ê¸° 위해서는 아래 ë‘ ê°€ì§€ ì‚¬í•­ì„ ë§Œì¡±ì‹œí‚¤ëŠ” 필드를 추가해주세요: + - 기본 키(Primary Key) 사용 + - ìžë™ ì¦ê°€(Auto Increment) 사용하지 ì•ŠìŒ + + + + ExportDataDialog + + + Export data as CSV + ë°ì´í„°ë¥¼ CSV 파ì¼ë¡œ 내보내기 + + + + Tab&le(s) + í…Œì´ë¸”(&l) + + + + Colu&mn names in first line + 첫 í–‰ì´ í•„ë“œ ì´ë¦„(&M) + + + + Fie&ld separator + 필드 구분ìž(&l) + + + + , + , + + + + ; + ; + + + + Tab + 탭 + + + + | + | + + + + + + Other + 기타 + + + + &Quote character + 문ìžì—´ ë¬¶ìŒ ê¸°í˜¸(&Q) + + + + " + " + + + + ' + ' + + + + New line characters + ê°œí–‰ë¬¸ìž + + + + Windows: CR+LF (\r\n) + Windows: CR+LF (\r\n) + + + + Unix: LF (\n) + Unix: LF (\n) + + + + Pretty print + ì¸ì‡„하기 ì¢‹ì€ ìŠ¤íƒ€ì¼ + + + + + Could not open output file: %1 + 내보낸 파ì¼ì„ ì—´ 수 없습니다: %1 + + + + + Choose a filename to export data + ë°ì´í„°ë¥¼ 내보낼 íŒŒì¼ ì´ë¦„ì„ ì •í•˜ì„¸ìš” + + + + Export data as JSON + JSON으로 내보내기 + + + + exporting CSV + CSV로 내보내기 + + + + exporting JSON + JSON으로 내보내기 + + + + Please select at least 1 table. + 최소한 í…Œì´ë¸” 1개는 ì„ íƒí•˜ì„¸ìš”. + + + + Choose a directory + 디렉터리를 ì„ íƒí•˜ì„¸ìš” + + + + Export completed. + 내보내기가 완료ë˜ì—ˆìŠµë‹ˆë‹¤. + + + + ExportSqlDialog + + + Export SQL... + SQL로 내보내기... + + + + Tab&le(s) + í…Œì´ë¸”(&l) + + + + Select All + ëª¨ë‘ ì„ íƒ + + + + Deselect All + ëª¨ë‘ ì„ íƒ í•´ì œ + + + + &Options + 옵션(&O) + + + + Keep column names in INSERT INTO + INSERT INTOë¬¸ì— í•„ë“œëª… 넣기 + + + + Multiple rows (VALUES) per INSERT statement + í•˜ë‚˜ì˜ INSERTë¬¸ì— ì—¬ëŸ¬ì¤„ (VALUES) 사용하기 + + + + Export everything + ëª¨ë‘ ë‚´ë³´ë‚´ê¸° + + + + Export data only + ë°ì´í„°ë§Œ 내보내기 + + + + Keep old schema (CREATE TABLE IF NOT EXISTS) + ì´ì „ 스키마 유지하기 (CREATE TABLE IF NOT EXISTS) + + + + Overwrite old schema (DROP TABLE, then CREATE TABLE) + ì´ì „ 스키마 ë®ì–´ì“°ê¸° (DROP TABLE, then CREATE TABLE) + + + + Export schema only + 스키마만 내보내기 + + + + Please select at least one table. + 최소한 한 ê°œì˜ í…Œì´ë¸”ì„ ì„ íƒí•´ì£¼ì„¸ìš”. + + + + Choose a filename to export + 내보내기 í•  파ì¼ëª…ì„ ê³ ë¥´ì„¸ìš” + + + + Export completed. + 내보내기가 완료ë˜ì—ˆìŠµë‹ˆë‹¤. + + + + Export cancelled or failed. + 내보내기가 취소ë˜ì—ˆê±°ë‚˜ 실패했습니다. + + + + ExtendedScintilla + + + + Ctrl+H + + + + + Ctrl+F + + + + + + Ctrl+P + + + + + Find... + 찾기... + + + + Find and Replace... + 검색과 바꾸기... + + + + Print... + ì¸ì‡„하기... + + + + ExtendedTableWidget + + + Use as Exact Filter + 정확한 필터로 ì ìš©í•˜ê¸° + + + + Containing + í¬í•¨í•˜ëŠ” + + + + Not containing + í¬í•¨í•˜ì§€ 않는 + + + + Not equal to + 같지 ì•Šì€ + + + + Greater than + 초과 + + + + Less than + 미만 + + + + Greater or equal + ì´ìƒ + + + + Less or equal + ì´í•˜ + + + + Between this and... + ì´ ê°’ê³¼ 사ì´ì—... + + + + Regular expression + ì •ê·œ í‘œí˜„ì‹ + + + + Edit Conditional Formats... + ì¡°ê±´ë¶€ ì„œì‹ íŽ¸ì§‘... + + + + Set to NULL + NULL로 변경하기 + + + + Copy + 복사하기 + + + + Copy with Headers + í—¤ë” í¬í•¨ 복사하기 + + + + Copy as SQL + SQL로 복사하기 + + + + Paste + 붙여넣기 + + + + Print... + ì¸ì‡„하기... + + + + Use in Filter Expression + í•„í„° í‘œí˜„ì‹ ì ìš©í•˜ê¸° + + + + Alt+Del + + + + + Ctrl+Shift+C + + + + + Ctrl+Alt+C + + + + + The content of the clipboard is bigger than the range selected. +Do you want to insert it anyway? + í´ë¦½ë³´ë“œì˜ ë‚´ìš©ì´ ì„ íƒí•œ 범위보다 í½ë‹ˆë‹¤. 어쨌든 추가할까요? + + + + <p>Not all data has been loaded. <b>Do you want to load all data before selecting all the rows?</b><p><p>Answering <b>No</b> means that no more data will be loaded and the selection will not be performed.<br/>Answering <b>Yes</b> might take some time while the data is loaded but the selection will be complete.</p>Warning: Loading all the data might require a great amount of memory for big tables. + <p>모든 ë°ì´í„°ê°€ 로드ë˜ì§€ 않았습니다. <b>모든 í–‰ì„ ì„ íƒí•˜ê¸° ì „ì— ëª¨ë“  ë°ì´í„°ë¥¼ 로드하시겠습니까?</b><p><p><b> 아니요</b>를 ì„ íƒí•˜ë©´ ë” ì´ìƒ ë°ì´í„°ê°€ 로드ë˜ì§€ 않고 ì„ íƒì´ 수행ë˜ì§€ 않습니다.<br/><b>예</b> 를 ì„ íƒí•˜ë©´ ë°ì´í„°ê°€ 로드ë˜ëŠ” ë™ì•ˆ ì‹œê°„ì´ ë‹¤ì†Œ 걸릴 수 있지만 ì„ íƒì´ 완료ë©ë‹ˆë‹¤.</p>경고: 모든 ë°ì´í„°ë¥¼ 로드하려면 í° í…Œì´ë¸”ì„ ìœ„í•´ ë§Žì€ ì–‘ì˜ ë©”ëª¨ë¦¬ê°€ 필요할 수 있습니다. + + + + Cannot set selection to NULL. Column %1 has a NOT NULL constraint. + ì„ íƒ ì‚¬í•­ì„ NULL로 설정할 수 없습니다. ì—´ %1ì— NOT NULL 제약 ì¡°ê±´ì´ ìžˆìŠµë‹ˆë‹¤. + + + + FileExtensionManager + + + File Extension Manager + íŒŒì¼ í™•ìž¥ìž ê´€ë¦¬ìž + + + + &Up + 위로(&U) + + + + &Down + 아래로(&D) + + + + &Add + 추가하기(&A) + + + + &Remove + 삭제하기(&R) + + + + + Description + 설명 + + + + Extensions + í™•ìž¥ìž + + + + *.extension + *.í™•ìž¥ìž + + + + FilterLineEdit + + + Filter + í•„í„° + + + + These input fields allow you to perform quick filters in the currently selected table. +By default, the rows containing the input text are filtered out. +The following operators are also supported: +% Wildcard +> Greater than +< Less than +>= Equal to or greater +<= Equal to or less += Equal to: exact match +<> Unequal: exact inverse match +x~y Range: values between x and y +/regexp/ Values matching the regular expression + ì´ ìž…ë ¥ 필드는 현재 ì„ íƒëœ í…Œì´ë¸”ì— ë¹ ë¥´ê²Œ 필터를 ì ìš©í•  수 있게 í•´ì¤ë‹ˆë‹¤. +기본ì ìœ¼ë¡œ ìž…ë ¥ ë°•ìŠ¤ì— ë“¤ì–´ê°€ìžˆëŠ” ì¡°ê±´ì— ë§žëŠ” í–‰ë“¤ì´ í‘œì‹œë©ë‹ˆë‹¤. +아래와 ê°™ì€ ì—°ì‚°ìžë“¤ì„ 사용할 수 있습니다: +% 와ì¼ë“œì¹´ë“œ +> 초과 +< 미만 +>= ì´ìƒ +<= ì´í•˜ += ê°™ìŒ: 정확히 ì¼ì¹˜ +<> 같지않ìŒ: 정확히 불ì¼ì¹˜ +x~y 범위: x와 yê°’ ì‚¬ì´ ê°’ +/regexp/ ì •ê·œ 표현ì‹ì— ì¼ì¹˜í•˜ëŠ” ê°’ + + + + Clear All Conditional Formats + 모든 ì¡°ê±´ë¶€ ì„œì‹ ì§€ìš°ê¸° + + + + Use for Conditional Format + ì¡°ê±´ë¶€ ì„œì‹ ì‚¬ìš© + + + + Edit Conditional Formats... + ì¡°ê±´ë¶€ ì„œì‹ íŽ¸ì§‘... + + + + Set Filter Expression + í•„í„° í‘œí˜„ì‹ ì„¤ì •í•˜ê¸° + + + + What's This? + ì´ê±´ 무엇ì¸ê°€ìš”? + + + + Is NULL + NULLìž„ + + + + Is not NULL + NULLì´ ì•„ë‹˜ + + + + Is empty + ë¹„ì–´ìžˆìŒ + + + + Is not empty + 비어있지 ì•ŠìŒ + + + + Not containing... + í¬í•¨í•˜ì§€ 않는... + + + + Equal to... + ê°™ì€... + + + + Not equal to... + 같지 않ì€... + + + + Greater than... + 초과... + + + + Less than... + 미만... + + + + Greater or equal... + ì´ìƒ... + + + + Less or equal... + ì´í•˜... + + + + In range... + 범위... + + + + Regular expression... + ì •ê·œ 표현ì‹... + + + + FindReplaceDialog + + + Find and Replace + 찾기와 바꾸기 + + + + Fi&nd text: + ì°¾ì„ í…스트(&N): + + + + Re&place with: + 바꾸려는 í…스트(&P): + + + + Match &exact case + ëŒ€ì†Œë¬¸ìž ì¼ì¹˜ 시(&E) + + + + Match &only whole words + ì „ì²´ 단어 ì¼ì¹˜ 시(&O) + + + + When enabled, the search continues from the other end when it reaches one end of the page + 활성화ë˜ë©´ 페ì´ì§€ì˜ 한쪽 ëì— ë„ë‹¬í–ˆì„ ë•Œ 다른 쪽 ëì—서 ê²€ìƒ‰ì´ ê³„ì†ë©ë‹ˆë‹¤ + + + + &Wrap around + ì „ì²´ 페ì´ì§€ 검색(&W) + + + + When set, the search goes backwards from cursor position, otherwise it goes forward + 활성화ë˜ë©´ 커서 위치 뒤로 검색합니다. 그렇지 않으면 앞으로 검색합니다 + + + + Search &backwards + 뒤로 찾기(&B) + + + + <html><head/><body><p>When checked, the pattern to find is searched only in the current selection.</p></body></html> + <html><head/><body><p>할성화ë˜ë©´ 현재 ì„ íƒ í•­ëª©ì—서만 찾습니다.</p></body></html> + + + + &Selection only + ì„ íƒ í•­ëª©ë§Œ(&S) + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + <html><head/><body><p>ì„ íƒí•˜ë©´ ì°¾ì„ íŒ¨í„´ì´ UNIX ì •ê·œ 표현ì‹ìœ¼ë¡œ í•´ì„ë©ë‹ˆë‹¤. <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>를 참고하십시오.</p></body></html> + + + + Use regular e&xpressions + ì •ê·œ í‘œí˜„ì‹ ì‚¬ìš©(&X) + + + + Find the next occurrence from the cursor position and in the direction set by "Search backwards" + 커서 위치ì—서 "뒤로 찾기"ì—서 설정한 ë°©í–¥ì— ë”°ë¼ ë‹¤ìŒ í•­ëª©ì„ ì°¾ìŠµë‹ˆë‹¤ + + + + &Find Next + ë‹¤ìŒ ì°¾ê¸°(&F) + + + + F3 + + + + + &Replace + 바꾸기(&R) + + + + Highlight all the occurrences of the text in the page + 페ì´ì§€ ë‚´ 찾으려는 í…스트를 ëª¨ë‘ ê°•ì¡° 표시합니다 + + + + F&ind All + ëª¨ë‘ ì°¾ê¸°(&I) + + + + Replace all the occurrences of the text in the page + 페ì´ì§€ ë‚´ ì¼ì¹˜í•˜ëŠ” 모든 í…스트를 바꿉니다 + + + + Replace &All + ëª¨ë‘ ë°”ê¾¸ê¸°(&A) + + + + The searched text was not found + 찾으려는 í…스트를 ì°¾ì„ ìˆ˜ 없습니다 + + + + The searched text was not found. + 찾으려는 í…스트를 ì°¾ì„ ìˆ˜ 없습니다. + + + + The searched text was found one time. + 찾으려는 í…스트를 한 번 발견ë˜ì—ˆìŠµë‹ˆë‹¤. + + + + The searched text was found %1 times. + 찾으려는 í…스트가 %1번 발견ë˜ì—ˆìŠµë‹ˆë‹¤. + + + + The searched text was replaced one time. + í…스트가 한 번 바뀌었습니다. + + + + The searched text was replaced %1 times. + %1ê°œì˜ í…스트가 바뀌었습니다. + + + + ForeignKeyEditor + + + &Reset + 초기화(&R) + + + + Foreign key clauses (ON UPDATE, ON DELETE etc.) + 외부 키(ON UPDATE, ON DELETE 등.) + + + + ImportCsvDialog + + + Import CSV file + CSV íŒŒì¼ ê°€ì ¸ì˜¤ê¸° + + + + Table na&me + í…Œì´ë¸” ì´ë¦„(&M) + + + + &Column names in first line + 첫 í–‰ì— í•„ë“œëª… í¬í•¨(&C) + + + + Field &separator + 필드 구분ìž(&S) + + + + , + , + + + + ; + ; + + + + + Tab + 탭 + + + + | + | + + + + Other + 기타 + + + + &Quote character + 문ìžì—´ ë¬¶ìŒ ê¸°í˜¸(&Q) + + + + + Other (printable) + 기타 (ì¸ì‡„ìš©) + + + + + Other (code) + 기타 (코드) + + + + " + " + + + + ' + ' + + + + &Encoding + ì¸ì½”딩(&E) + + + + UTF-8 + UTF-8 + + + + UTF-16 + UTF-16 + + + + ISO-8859-1 + ISO-8859-1 + + + + Trim fields? + 필드 앞뒤 공백 제거? + + + + Separate tables + í…Œì´ë¸” 나누기 + + + + Advanced + 고급 + + + + When importing an empty value from the CSV file into an existing table with a default value for this column, that default value is inserted. Activate this option to insert an empty value instead. + CSV 파ì¼ì˜ 빈 ê°’ì„ ì´ ì—´ì˜ ê¸°ë³¸ ê°’ì´ ìžˆëŠ” 기존 í…Œì´ë¸”로 가져올 때 해당 ê¸°ë³¸ê°’ì´ ì‚½ìž…ë©ë‹ˆë‹¤. 대신 빈 ê°’ì„ ì‚½ìž…í•˜ë ¤ë©´ ì´ ì˜µì…˜ì„ í™œì„±í™”í•˜ì„¸ìš”. + + + + Ignore default &values + 기본 ê°’ì„ ë¬´ì‹œ(&V) + + + + Activate this option to stop the import when trying to import an empty value into a NOT NULL column without a default value. + 기본 ê°’ ì—†ì´ ë¹„ì–´ 있는 ê°’ì„ NOT NULL 열로 가져오려고 í•  때 가져오기를 중단하려면 ì´ ì˜µì…˜ì„ í™œì„±í™”í•˜ì„¸ìš”. + + + + Fail on missing values + ê°’ ëˆ„ë½ ì‹œ 실패 + + + + Disable data type detection + ë°ì´í„° 타입 ì¸ì‹ ë„기 + + + + Disable the automatic data type detection when creating a new table. + 새 í…Œì´ë¸”ì„ ìƒì„±í•  때 ìžë™ ë°ì´í„° 타입 ì¸ì‹ ê¸°ëŠ¥ì„ ë•니다. + + + + When importing into an existing table with a primary key, unique constraints or a unique index there is a chance for a conflict. This option allows you to select a strategy for that case: By default the import is aborted and rolled back but you can also choose to ignore and not import conflicting rows or to replace the existing row in the table. + 기본 키, 고유 제약 ì¡°ê±´ ë˜ëŠ” 고유 ì¸ë±ìŠ¤ë¥¼ 사용하여 기존 í…Œì´ë¸”로 가져올 때 ì¶©ëŒ ê°€ëŠ¥ì„±ì´ ìžˆìŠµë‹ˆë‹¤. ì´ ì˜µì…˜ì„ ì‚¬ìš©í•˜ë©´ 해당 ê²½ìš°ì— ëŒ€í•œ 대처 ë°©ì•ˆì„ ì„ íƒí•  수 있습니다. 기본ì ìœ¼ë¡œëŠ” 가져오기가 중단ë˜ê³  롤백ë˜ì§€ë§Œ ì¶©ëŒí•˜ëŠ” í–‰ì„ ë¬´ì‹œí•˜ê³  가져오지 않거나 í…Œì´ë¸”ì˜ ê¸°ì¡´ í–‰ì„ ë°”ê¾¸ë„ë¡ ì„ íƒí•  ìˆ˜ë„ ìžˆìŠµë‹ˆë‹¤. + + + + Abort import + 가져오기 취소 + + + + Ignore row + ì—´ 무시 + + + + Replace existing row + 기존 í–‰ 바꾸기 + + + + Conflict strategy + ì¶©ëŒ ë°œìƒ ì‹œ + + + + + Deselect All + ëª¨ë‘ ì„ íƒ í•´ì œ + + + + Match Similar + 비슷한거 찾기 + + + + Select All + ëª¨ë‘ ì„ íƒ + + + + There is already a table named '%1' and an import into an existing table is only possible if the number of columns match. + ì´ë¯¸ '%1'ì´ë¼ëŠ” ì´ë¦„ì„ ê°€ì§„ í…Œì´ë¸”ì´ ì¡´ìž¬í•˜ë©° 기존 í…Œì´ë¸”로 ë°ì´í„°ë¥¼ 가져오는 ê²ƒì€ í•„ë“œì˜ ìˆ˜ê°€ ê°™ì„ ë•Œë§Œ 가능합니다. + + + + There is already a table named '%1'. Do you want to import the data into it? + ì´ë¯¸ '%1'ë¼ëŠ” ì´ë¦„ì˜ í…Œì´ë¸”ì´ ì¡´ìž¬í•©ë‹ˆë‹¤. ë°ì´í„°ë¥¼ ì´ í…Œì´ë¸”로 가져올까요? + + + + Creating restore point failed: %1 + ë³µì› í¬ì¸íŠ¸ë¥¼ ìƒì„±í•˜ëŠ”ë° ì‹¤íŒ¨í–ˆìŠµë‹ˆë‹¤: %1 + + + + Creating the table failed: %1 + í…Œì´ë¸” ìƒì„±ì— 실패했습니다: %1 + + + + importing CSV + CSV 가져오기 + + + + Importing the file '%1' took %2ms. Of this %3ms were spent in the row function. + íŒŒì¼ '%1' ê°€ì ¸ì˜¤ëŠ”ë° %2msê°€ 걸렸습니다. ì´ ì¤‘ì—서 í–‰ ê¸°ëŠ¥ì„ ì ìš©í•˜ëŠ”ë° %3msê°€ 걸렸습니다. + + + + Inserting row failed: %1 + í–‰ ì¶”ê°€ì— ì‹¤íŒ¨í–ˆìŠµë‹ˆë‹¤: %1 + + + + MainWindow + + + DB Browser for SQLite + DB Browser for SQLite + + + + toolBar1 + toolBar1 + + + + Opens the SQLCipher FAQ in a browser window + SQLCipher FAQ를 봅니다 + + + + Export one or more table(s) to a JSON file + í…Œì´ë¸”ì„ JSON 파ì¼ë¡œ 내보냅니다 + + + + Find + 찾기 + + + + Find or replace + 검색과 바꾸기 + + + + Print text from current SQL editor tab + 현재 SQL 편집기 íƒ­ì˜ í…스트 ì¸ì‡„ + + + + Print the structure of the opened database + 현재 ì—´ë ¤ 있는 ë°ì´í„°ë² ì´ìŠ¤ì˜ êµ¬ì¡° ì¸ì‡„ + + + + Un/comment block of SQL code + SQL 코드 블럭 ì£¼ì„ ì²˜ë¦¬/í•´ì œ + + + + Un/comment block + 블럭 ì£¼ì„ ì²˜ë¦¬/í•´ì œ + + + + Comment or uncomment current line or selected block of code + 현재 줄 ë˜ëŠ” ì„ íƒëœ ë¸”ëŸ­ì„ ì£¼ì„ ì²˜ë¦¬ ë˜ëŠ” 해제합니다 + + + + Comment or uncomment the selected lines or the current line, when there is no selection. All the block is toggled according to the first line. + ì„ íƒëœ ì¤„ì„ ì£¼ì„ ì²˜ë¦¬ ë˜ëŠ” 해제합니다. ì„ íƒ í•­ëª©ì´ ì—†ëŠ” 경우 현재 ì¤„ì„ ì²˜ë¦¬í•©ë‹ˆë‹¤. 모든 ë¸”ëŸ­ì€ ì²«ë²ˆì§¸ ì¤„ì„ í†µí•´ 토글 í•  수 있습니다. + + + + Ctrl+/ + + + + + Stop SQL execution + SQL 실행 중단 + + + + Stop execution + 실행 중단 + + + + Stop the currently running SQL script + 현재 실행 ì¤‘ì¸ SQL 스í¬ë¦½íЏ 중단 + + + + Execute all/selected SQL + ì „ì²´ ë˜ëŠ” ì„ íƒí•œ SQL 실행 + + + + Open an existing database file in read only mode + ì½ê¸° ì „ìš© 모드로 존재하는 ë°ì´í„°ë² ì´ìФ 파ì¼ì„ 엽니다 + + + + &File + 파ì¼(&F) + + + + &Import + 가져오기(&I) + + + + &Export + 내보내기(&E) + + + + &Edit + 편집(&E) + + + + &View + 보기(&V) + + + + &Help + ë„움ë§(&H) + + + + &Tools + ë„구(&T) + + + + DB Toolbar + DB 툴바 + + + + Edit Database &Cell + ë°ì´í„°ë² ì´ìФ ì…€ 수정하기(&C) + + + + Error Log + ì—러 로그 + + + + This button clears the contents of the SQL logs + ì´ ë²„íŠ¼ì€ SQL 로그 ë‚´ìš©ì„ ì§€ì›ë‹ˆë‹¤ + + + + This panel lets you examine a log of all SQL commands issued by the application or by yourself + ì´ íŒ¨ë„ì—서 ì‘ìš© 프로그램 ë˜ëŠ” 사용ìžê°€ 실행한 모든 SQL ëª…ë ¹ì˜ ê¸°ë¡ì„ 확ì¸í•  수 있습니다 + + + + DB Sche&ma + DB 스키마(&M) + + + + This is the structure of the opened database. +You can drag multiple object names from the Name column and drop them into the SQL editor and you can adjust the properties of the dropped names using the context menu. This would help you in composing SQL statements. +You can drag SQL statements from the Schema column and drop them into the SQL editor or into other applications. + + ì´ê²ƒì€ 열린 ë°ì´í„°ë² ì´ìŠ¤ì˜ êµ¬ì¡°ìž…ë‹ˆë‹¤. +ì´ë¦„ ì—´ì—서 여러 개체 ì´ë¦„ì„ ëŒì–´ì„œ SQL íŽ¸ì§‘ê¸°ì— ë†“ì„ ìˆ˜ 있으며 컨í…스트 메뉴를 사용하여 ëŒì–´ì„œ ë†“ì€ ì´ë¦„ì˜ ì†ì„±ì„ 변경할 수 있습니다. +ì´ê²ƒì€ SQL ë¬¸ì„ ìž‘ì„±í•˜ëŠ”ë° ë„ì›€ì´ ë©ë‹ˆë‹¤. +스키마 ì—´ì—서 SQL ë¬¸ì„ ëŒì–´ì„œ SQL 편집기나 다른 ì‘ìš© í”„ë¡œê·¸ëž¨ì— ë†“ì„ ìˆ˜ë„ ìžˆìŠµë‹ˆë‹¤. + + + + + &Remote + ì›ê²©(&R) + + + + This button executes the SQL statement present in the current editor line + ì´ ë²„íŠ¼ì€ í˜„ìž¬ 편집기 í–‰ì— ìžˆëŠ” SQL ë¬¸ì„ ì‹¤í–‰í•©ë‹ˆë‹¤ + + + + Shift+F5 + + + + + Sa&ve Project + 프로ì íЏ 저장하기(&V) + + + + User + ì‚¬ìš©ìž + + + + Application + 애플리케ì´ì…˜ + + + + &Clear + 지우기(&C) + + + + &New Database... + 새 ë°ì´í„°ë² ì´ìФ(&N)... + + + + + Create a new database file + 새 ë°ì´í„°ë² ì´ìФ 파ì¼ì„ ìƒì„±í•©ë‹ˆë‹¤ + + + + This option is used to create a new database file. + ì´ ì˜µì…˜ì€ ìƒˆ ë°ì´í„°ë² ì´ìФ 파ì¼ì„ ìƒì„±í•˜ë ¤ê³  í•  때 사용합니다. + + + + Ctrl+N + + + + + + &Open Database... + ë°ì´í„°ë² ì´ìФ 열기(&O)... + + + + + + + + Open an existing database file + 기존 ë°ì´í„°ë² ì´ìФ 파ì¼ì„ 엽니다 + + + + + + This option is used to open an existing database file. + ì´ ì˜µì…˜ì€ ê¸°ì¡´ ë°ì´í„°ë² ì´ìФ 파ì¼ì„ ì—´ 때 사용합니다. + + + + Ctrl+O + + + + + &Close Database + ë°ì´í„°ë² ì´ìФ 닫기(&C) + + + + This button closes the connection to the currently open database file + ì´ ë²„íŠ¼ì€ í˜„ìž¬ ì—´ë ¤ 있는 ë°ì´í„°ë² ì´ìФ 파ì¼ì— 대한 ì—°ê²°ì„ ë‹«ìŠµë‹ˆë‹¤ + + + + + Ctrl+W + + + + + + Revert database to last saved state + 마지막 ì €ìž¥ëœ ìƒíƒœë¡œ ë°ì´í„°ë² ì´ìŠ¤ë¥¼ ë˜ëŒë¦½ë‹ˆë‹¤ + + + + This option is used to revert the current database file to its last saved state. All changes made since the last save operation are lost. + ì´ ì˜µì…˜ì€ í˜„ìž¬ ë°ì´í„°ë² ì´ìŠ¤ë¥¼ 마지막 ì €ìž¥ëœ ìƒíƒœë¡œ ë˜ëŒë¦´ 때 사용합니다. 저장 ì´í›„ì— ì´ë£¨ì–´ì§„ 모든 변경 ì‚¬í•­ì„ ë˜ëŒë¦½ë‹ˆë‹¤. + + + + + Write changes to the database file + 변경 ì‚¬í•­ì„ ë°ì´í„°ë² ì´ìФ 파ì¼ì— ë°˜ì˜í•©ë‹ˆë‹¤ + + + + This option is used to save changes to the database file. + ì´ ì˜µì…˜ì€ ë°ì´í„°ë² ì´ìФ 파ì¼ì— 변경 ì‚¬í•­ì„ ì €ìž¥í•˜ê¸° 위해 사용ë©ë‹ˆë‹¤. + + + + Ctrl+S + + + + + Compact the database file, removing space wasted by deleted records + ì‚­ì œëœ ë ˆì½”ë“œë¡œ 낭비ë˜ëŠ” ê³µê°„ì„ ì œê±°í•˜ì—¬ ë°ì´í„°ë² ì´ìФ íŒŒì¼ ì••ì¶• + + + + + Compact the database file, removing space wasted by deleted records. + ì‚­ì œëœ ë ˆì½”ë“œë¡œ 낭비ë˜ëŠ” ê³µê°„ì„ ì œê±°í•˜ì—¬ ë°ì´í„°ë² ì´ìФ íŒŒì¼ ì••ì¶•. + + + + E&xit + 종료(&X) + + + + Ctrl+Q + + + + + Import data from an .sql dump text file into a new or existing database. + .sql ë¤í”„ 문ìžì—´ 파ì¼ì—서 ë°ì´í„°ë¥¼ 새 ë°ì´í„°ë² ì´ìŠ¤ë‚˜ 기존 ë°ì´í„°ë² ì´ìŠ¤ë¡œ 가져옵니다. + + + + This option lets you import data from an .sql dump text file into a new or existing database. SQL dump files can be created on most database engines, including MySQL and PostgreSQL. + ì´ ì˜µì…˜ì€ .sql ë¤í”„ 문ìžì—´ 파ì¼ì—서 ë°ì´í„°ë¥¼ 새 ë°ì´í„°ë² ì´ìŠ¤ë‚˜ 기존 ë°ì´í„°ë² ì´ìŠ¤ë¡œ 가져옵니다. SQL ë¤í”„ 파ì¼ì€ MySQLì´ë‚˜ PostgreSQL 등 ëŒ€ë¶€ë¶„ì˜ ë°ì´í„°ë² ì´ìФ 엔진ì—서 ìƒì„±í•  수 있습니다. + + + + Open a wizard that lets you import data from a comma separated text file into a database table. + 마법사를 사용하여 CSV 파ì¼(쉼로 필드가 나누어진 문ìžì—´ 파ì¼)ì—서 ë°ì´í„°ë² ì´ìФ í…Œì´ë¸”로 ë°ì´í„°ë¥¼ 가져올 수 있습니다. + + + + Open a wizard that lets you import data from a comma separated text file into a database table. CSV files can be created on most database and spreadsheet applications. + 마법사를 사용하여 CSV 파ì¼(쉼표로 필드가 나누어진 문ìžì—´ 파ì¼)ì—서 ë°ì´í„°ë² ì´ìФ í…Œì´ë¸”로 ë°ì´í„°ë¥¼ 가져올 수 있습니다. CSV 파ì¼ì€ ëŒ€ë¶€ë¶„ì˜ ë°ì´í„°ë² ì´ìŠ¤ì™€ 스프레드시트 애플리케ì´ì…˜ì—서 ìƒì„±í•  수 있습니다. + + + + Export a database to a .sql dump text file. + ë°ì´í„°ë² ì´ìŠ¤ë¥¼ .sql ë¤í”„ 문ìžì—´ 파ì¼ë¡œ 내보내기. + + + + This option lets you export a database to a .sql dump text file. SQL dump files contain all data necessary to recreate the database on most database engines, including MySQL and PostgreSQL. + ì´ ì˜µì…˜ì€ ë°ì´í„°ë² ì´ìŠ¤ë¥¼ .sql ë¤í”„ 문ìžì—´ 파ì¼ë¡œ 내보낼 수 있습니다. SQL ë¤í”„ 파ì¼ì€ MySQLê³¼ PostgreSQL 등 ëŒ€ë¶€ë¶„ì˜ ë°ì´í„°ë² ì´ìФ 엔진ì—서 ë°ì´í„°ë² ì´ìŠ¤ë¥¼ 재ìƒì„±í•˜ê¸° 위한 모든 필요한 ë°ì´í„°ë¥¼ í¬í•¨í•˜ê³  있습니다. + + + + Export a database table as a comma separated text file. + ë°ì´í„°ë² ì´ìФ í…Œì´ë¸”ì„ CSV(쉼표로 ë¶„ë¦¬ëœ ë¬¸ìžì—´ 파ì¼)로 내보내기. + + + + Export a database table as a comma separated text file, ready to be imported into other database or spreadsheet applications. + ë°ì´í„°ë² ì´ìФ í…Œì´ë¸”ì„ CSV(쉼표로 ë¶„ë¦¬ëœ ë¬¸ìžì—´ 파ì¼)로 내보내기. 다른 ë°ì´í„°ë² ì´ìŠ¤ë‚˜ 스프레드시트 애플리케ì´ì…˜ì—서 가져와서 사용할 수 있습니다. + + + + Open the Create Table wizard, where it is possible to define the name and fields for a new table in the database + í…Œì´ë¸” ìƒì„± 마법사를 사용하여 ë°ì´í„°ë² ì´ìФì—서 새 í…Œì´ë¸”ì„ ìœ„í•œ ì´ë¦„ê³¼ 필드를 ì •ì˜í•  수 있습니다 + + + + + Delete Table + í…Œì´ë¸” 삭제하기 + + + + Open the Delete Table wizard, where you can select a database table to be dropped. + í…Œì´ë¸” ì‚­ì œ 마법사를 사용하여 ì„ íƒí•œ ë°ì´í„°ë² ì´ìФ í…Œì´ë¸”ì„ ì‚­ì œí•  수 있습니다. + + + + Open the Modify Table wizard, where it is possible to rename an existing table. It is also possible to add or delete fields form a table, as well as modify field names and types. + í…Œì´ë¸” 편집 마법사를 사용하여 기존 í…Œì´ë¸”ì˜ ì´ë¦„ì„ ë³€ê²½í•˜ê±°ë‚˜ í…Œì´ë¸”ì˜ í•„ë“œë¥¼ 추가, ì‚­ì œ, 필드명 변경 ë° íƒ€ìž… ë³€ê²½ì„ í•  수 있습니다. + + + + Open the Create Index wizard, where it is possible to define a new index on an existing database table. + ì¸ë±ìФ ìƒì„± 마법사를 사용하여 기존 ë°ì´í„°ë² ì´ìФ í…Œì´ë¸”ì— ìƒˆ ì¸ë±ìŠ¤ë¥¼ ì •ì˜í•  수 있습니다. + + + + &Preferences... + 환경설정(&P)... + + + + + Open the preferences window. + 환경설정 ì°½ì„ ì—½ë‹ˆë‹¤. + + + + &DB Toolbar + DB 툴바(&D) + + + + Shows or hides the Database toolbar. + ë°ì´í„°ë² ì´ìФ 툴바를 ë³´ì´ê±°ë‚˜ 숨ê¹ë‹ˆë‹¤. + + + + Shift+F1 + + + + + &Recently opened + 최근 ì—´ì—ˆë˜ íŒŒì¼ë“¤(&R) + + + + Open &tab + 탭 열기(&T) + + + + Ctrl+T + + + + + + Database Structure + This has to be equal to the tab title in all the main tabs + ë°ì´í„°ë² ì´ìФ 구조 + + + + This is the structure of the opened database. +You can drag SQL statements from an object row and drop them into other applications or into another instance of 'DB Browser for SQLite'. + + ì´ê²ƒì€ 열려있는 ë°ì´í„°ë² ì´ìŠ¤ì˜ êµ¬ì¡°ìž…ë‹ˆë‹¤. +개체 í–‰ì—서 SQL ë¬¸ì„ ëŒì–´ì„œ 다른 ì‘ìš© 프로그램ì´ë‚˜ 'DB Browser for SQLite'ì˜ ë‹¤ë¥¸ ì¸ìŠ¤í„´ìŠ¤ì— ë†“ì„ ìˆ˜ 있습니다. + + + + + + Browse Data + This has to be equal to the tab title in all the main tabs + ë°ì´í„° 보기 + + + + + Edit Pragmas + This has to be equal to the tab title in all the main tabs + Pragma 수정 + + + + Warning: this pragma is not readable and this value has been inferred. Writing the pragma might overwrite a redefined LIKE provided by an SQLite extension. + 경고: ì´ pragma는 ì½ê¸° ì „ìš©ì´ ì•„ë‹ˆë©° ì´ ê°’ì€ ì¶”ì¸¡ëœ ê°’ìž…ë‹ˆë‹¤. pragma를 작성하면 SQLiteì—서 제공하는 ìž¬ì •ì˜ ëœ LIKE를 ë®ì–´ 쓸 수 있습니다. + + + + + Execute SQL + This has to be equal to the tab title in all the main tabs + SQL 실행 + + + + Ctrl+F4 + + + + + Compact &Database... + ë°ì´í„°ë² ì´ìФ ì••ì¶•(&D)... + + + + This button executes the currently selected SQL statements. If no text is selected, all SQL statements are executed. + ì´ ë²„íŠ¼ì€ í˜„ìž¬ ì„ íƒë˜ì–´ 있는 SQL ëª…ë ¹ë¬¸ì„ ì‹¤í–‰í•©ë‹ˆë‹¤. 만약 ì„ íƒ í•­ëª©ì´ ì—†ìœ¼ë©´ 모든 SQL ëª…ë ¹ë¬¸ì´ ì‹¤í–‰ë©ë‹ˆë‹¤. + + + + &Load Extension... + 확장ë„구 불러오기(&L)... + + + + Execute line + 줄 실행 + + + + &Wiki + 위키(&W) + + + + F1 + + + + + Bug &Report... + 버그 ë³´ê³ (&R)... + + + + Feature Re&quest... + 기능 제안(&Q)... + + + + Web&site + 웹 사ì´íЏ(&S) + + + + &Donate on Patreon... + 후ì›í•˜ê¸°(&D)... + + + + Open &Project... + 프로ì íЏ 열기(&P)... + + + + &Attach Database... + ë°ì´í„°ë² ì´ìФ ì—°ê²°(&A)... + + + + + Add another database file to the current database connection + 현재 ë°ì´í„°ë² ì´ìФ ì—°ê²°ì— ë‹¤ë¥¸ ë°ì´í„°ë² ì´ìФ ì—°ê²°ì„ ì¶”ê°€í•©ë‹ˆë‹¤ + + + + This button lets you add another database file to the current database connection + ì´ ë²„íŠ¼ì„ ì‚¬ìš©í•˜ë©´ 현재 ë°ì´í„°ë² ì´ìФ ì—°ê²°ì— ë‹¤ë¥¸ ë°ì´í„°ë² ì´ìФ 파ì¼ì„ 추가할 수 있습니다 + + + + &Set Encryption... + 암호화 설정(&S)... + + + + SQLCipher &FAQ + SQLCipher FAQ(&F) + + + + Table(&s) to JSON... + í…Œì´ë¸”ì„ JSON으로 내보내기(&S)... + + + + Browse Table + í…Œì´ë¸” íƒìƒ‰ + + + + Open Data&base Read Only... + ì½ê¸° 전용으로 ë°ì´í„°ë² ì´ìФ 열기(&B)... + + + + Open SQL file(s) + SQL íŒŒì¼ ì—´ê¸° + + + + This button opens files containing SQL statements and loads them in new editor tabs + ì´ ë²„íŠ¼ì€ SQL ë¬¸ì´ í¬í•¨ëœ 파ì¼ì„ ì—´ê³  새 편집기 íƒ­ì— ë¡œë“œí•©ë‹ˆë‹¤ + + + + This button lets you save all the settings associated to the open DB to a DB Browser for SQLite project file + ì´ ë²„íŠ¼ì„ ì‚¬ìš©í•˜ë©´ 열린 DB와 ê´€ë ¨ëœ ëª¨ë“  ì„¤ì •ì„ DB Browser for SQLite 프로ì íЏ 파ì¼ë¡œ 저장할 수 있습니다 + + + + This button lets you open a DB Browser for SQLite project file + ì´ ë²„íŠ¼ì„ ì‚¬ìš©í•˜ë©´ DB Browser for SQLite 프로ì íЏ 파ì¼ì„ ì—´ 수 있습니다 + + + + Ctrl+Shift+O + + + + + Save results + ê²°ê³¼ 저장 + + + + Save the results view + ê²°ê³¼ ë·° 저장 + + + + This button lets you save the results of the last executed query + ì´ ë²„íŠ¼ì€ ë§ˆì§€ë§‰ìœ¼ë¡œ 실행한 ì¿¼ë¦¬ì˜ ê²°ê³¼ê°’ì„ ì €ìž¥í•©ë‹ˆë‹¤ + + + + + Find text in SQL editor + SQL 편집기ì—서 í…스트 찾기 + + + + This button opens the search bar of the editor + ì´ ë²„íŠ¼ì€ íŽ¸ì§‘ê¸°ì˜ ê²€ìƒ‰ì°½ì„ ì—½ë‹ˆë‹¤ + + + + Ctrl+F + + + + + + Find or replace text in SQL editor + SQL 편집기ì—서 í…스트 찾아 바꾸기 + + + + This button opens the find/replace dialog for the current editor tab + ì´ ë²„íŠ¼ì€ í˜„ìž¬ ì—´ë ¤ 있는 íŽ¸ì§‘ê¸°ì˜ ì°¾ê¸° 바꾸기 대화ìƒìžë¥¼ 엽니다 + + + + Ctrl+H + + + + + Export to &CSV + CSV로 내보내기(&C) + + + + Save as &view + 뷰로 저장하기(&V) + + + + Save as view + 다른 ì´ë¦„ì˜ ë·°ë¡œ 저장하기 + + + + Shows or hides the Project toolbar. + 프로ì íЏ 툴바를 표시하거나 숨ê¹ë‹ˆë‹¤. + + + + Extra DB Toolbar + 확장 DB 툴바 + + + + New In-&Memory Database + In-Memory ë°ì´í„°ë² ì´ìФ ìƒì„±(&M) + + + + Drag && Drop Qualified Names + ì •ê·œí™”ëœ ì´ë¦„ì„ ëŒì–´ì„œ 놓기 + + + + + Use qualified names (e.g. "Table"."Field") when dragging the objects and dropping them into the editor + 개체를 ëŒì–´ì„œ íŽ¸ì§‘ê¸°ì— ë†“ì„ ë•Œ ì •ê·œí™”ëœ ì´ë¦„(예: "Table", "Field")ì„ ì‚¬ìš©í•©ë‹ˆë‹¤ + + + + Drag && Drop Enquoted Names + ì¸ìš©ëœ ì´ë¦„ì„ ëŒì–´ì„œ 놓기 + + + + + Use escaped identifiers (e.g. "Table1") when dragging the objects and dropping them into the editor + 개체를 ëŒì–´ì„œ íŽ¸ì§‘ê¸°ì— ë†“ì„ ë•Œ ì´ìŠ¤ì¼€ì´í”„ëœ ì‹ë³„ìž(예: "Table1")ì„ ì‚¬ìš©í•©ë‹ˆë‹¤ + + + + &Integrity Check + 무결성 검사(&I) + + + + Runs the integrity_check pragma over the opened database and returns the results in the Execute SQL tab. This pragma does an integrity check of the entire database. + 열린 ë°ì´í„°ë² ì´ìŠ¤ì— ëŒ€í•´ integrity_check pragma를 실행하고 SQL 실행 íƒ­ì— ê²°ê³¼ë¥¼ 반환합니다. ì´ pragma는 ì „ì²´ ë°ì´í„°ë² ì´ìŠ¤ì˜ ë¬´ê²°ì„± 검사를 수행합니다. + + + + &Foreign-Key Check + 외래키 검사(&F) + + + + Runs the foreign_key_check pragma over the opened database and returns the results in the Execute SQL tab + 열린 ë°ì´í„°ë² ì´ìŠ¤ì— ëŒ€í•´ foreign_key_check pragma를 실행하고 SQL 실행 íƒ­ì— ê²°ê³¼ë¥¼ 반환합니다 + + + + &Quick Integrity Check + 빠른 무결성 검사(&Q) + + + + Run a quick integrity check over the open DB + 열린 ë°ì´í„°ë² ì´ìФ 대해 빠른 무결성 검사 실행 + + + + Runs the quick_check pragma over the opened database and returns the results in the Execute SQL tab. This command does most of the checking of PRAGMA integrity_check but runs much faster. + 열린 ë°ì´í„°ë² ì´ìŠ¤ì— ëŒ€í•´ quick_check pragma를 실행하고 SQL 실행 íƒ­ì— ê²°ê³¼ë¥¼ 반환합니다. ì´ ëª…ë ¹ì€ ëŒ€ë¶€ë¶„ì˜ PRAGMA integrity_check 검사를 수행하지만 훨씬 빠르게 실행ë©ë‹ˆë‹¤. + + + + &Optimize + 최ì í™”(&O) + + + + Attempt to optimize the database + ë°ì´í„°ë² ì´ìФ 최ì í™” + + + + Runs the optimize pragma over the opened database. This pragma might perform optimizations that will improve the performance of future queries. + 열린 ë°ì´í„°ë² ì´ìŠ¤ì— ëŒ€í•´ 최ì í™” pragma를 실행합니다. ì´ pragma는 향후 ì¿¼ë¦¬ì˜ ì„±ëŠ¥ì„ í–¥ìƒì‹œí‚¤ëŠ” 최ì í™”를 수행할 수 있습니다. + + + + + Print + ì¸ì‡„하기 + + + + &Save Project As... + 다른 ì´ë¦„으로 프로ì íЏ 저장(&S)... + + + + + + Save the project in a file selected in a dialog + 대화ìƒìžì—서 ì„ íƒí•œ 파ì¼ì— 프로ì íЏ 저장 + + + + Save A&ll + ëª¨ë‘ ì €ìž¥(&l) + + + + + + Save DB file, project file and opened SQL files + DB 파ì¼, 프로ì íЏ íŒŒì¼ ë° ì—´ë¦° SQL íŒŒì¼ ì €ìž¥ + + + + Ctrl+Shift+S + + + + + Open a dialog for printing the text in the current SQL editor tab + 현재 SQL 편집기 탭ì—서 í…스트를 ì¸ì‡„하기 위한 대화ìƒìžë¥¼ 엽니다 + + + + Open a dialog for printing the structure of the opened database + 열린 ë°ì´í„°ë² ì´ìŠ¤ì˜ êµ¬ì¡°ë¥¼ ì¸ì‡„하기 위한 대화ìƒìžë¥¼ 엽니다 + + + + SQL &Log + SQL 로그(&L) + + + + Show S&QL submitted by + ~ì— ì˜í•´ ì‹¤í–‰ëœ SQL 보기(&Q) + + + + &Plot + 플롯(&P) + + + + + Project Toolbar + 프로ì íЏ 툴바 + + + + Extra DB toolbar + 확장 DB 툴바 + + + + + + Close the current database file + 현재 ë°ì´í„°ë² ì´ìФ íŒŒì¼ ë‹«ê¸° + + + + &Revert Changes + 변경사항 취소하기(&R) + + + + &Write Changes + 변경사항 저장하기(&W) + + + + &Database from SQL file... + SQL 파ì¼ë¡œë¶€í„° ë°ì´í„°ë² ì´ìФ 가져오기(&D)... + + + + &Table from CSV file... + CSV 파ì¼ì—서 í…Œì´ë¸” 가져오기(&T)... + + + + &Database to SQL file... + ë°ì´í„°ë² ì´ìŠ¤ë¥¼ SQL로 내보내기(&D)... + + + + &Table(s) as CSV file... + í…Œì´ë¸”ì„ CSV 파ì¼ë¡œ 내보내기(&T)... + + + + &Create Table... + í…Œì´ë¸” ìƒì„±í•˜ê¸°(&C)... + + + + &Delete Table... + í…Œì´ë¸” 삭제하기(&D)... + + + + &Modify Table... + í…Œì´ë¸” 수정하기(&M)... + + + + Create &Index... + ì¸ë±ìФ ìƒì„±í•˜ê¸°(&I)... + + + + W&hat's This? + ì´ê±´ 무엇ì¸ê°€ìš”?(&H) + + + + &About + ì •ë³´(&A) + + + + This button opens a new tab for the SQL editor + ì´ ë²„íŠ¼ì€ SQL íŽ¸ì§‘ê¸°ì˜ ìƒˆë¡œìš´ íƒ­ì„ ì—½ë‹ˆë‹¤ + + + + &Execute SQL + SQL 실행하기(&E) + + + + + + Save SQL file + SQL íŒŒì¼ ì €ìž¥í•˜ê¸° + + + + + Execute current line + 현재 í–‰ 실행하기 + + + + Ctrl+E + + + + + Export as CSV file + CSV 파ì¼ë¡œ 내보내기 + + + + Export table as comma separated values file + í…Œì´ë¸”ì„ CSV 파ì¼ë¡œ 내보내기 + + + + + Save the current session to a file + 현재 ì„¸ì…˜ì„ íŒŒì¼ë¡œ 저장하기 + + + + + Load a working session from a file + 파ì¼ì—서 작업 세션 불러오기 + + + + + Save SQL file as + SQL íŒŒì¼ ë‹¤ë¦„ ì´ë¦„으로 저장하기 + + + + This button saves the content of the current SQL editor tab to a file + ì´ ë²„íŠ¼ì€ í˜„ìž¬ SQL íŽ¸ì§‘ê¸°ì˜ ë‚´ìš©ì„ íŒŒì¼ë¡œ 저장합니다 + + + + &Browse Table + í…Œì´ë¸” 보기(&B) + + + + Copy Create statement + ìƒì„± 구문 복사하기 + + + + Copy the CREATE statement of the item to the clipboard + í•­ëª©ì˜ ìƒì„± êµ¬ë¬¸ì„ í´ë¦½ë³´ë“œì— 복사합니다 + + + + Ctrl+Return + + + + + Ctrl+L + + + + + + Ctrl+P + + + + + Ctrl+D + + + + + Ctrl+I + + + + + Encrypted + ì•”í˜¸í™”ë¨ + + + + Read only + ì½ê¸° ì „ìš© + + + + Database file is read only. Editing the database is disabled. + ë°ì´í„°ë² ì´ìФ 파ì¼ì´ ì½ê¸° 전용입니다. ë°ì´í„°ë² ì´ìФ 수정 ê¸°ëŠ¥ì´ ë¹„í™œì„±í™”ë©ë‹ˆë‹¤. + + + + Database encoding + ë°ì´í„°ë² ì´ìФ ì¸ì½”딩 + + + + Database is encrypted using SQLCipher + ë°ì´í„°ë² ì´ìŠ¤ëŠ” SQLCipher를 통해 암호화ë©ë‹ˆë‹¤ + + + + + Choose a database file + ë°ì´í„°ë² ì´ìФ 파ì¼ì„ ì„ íƒí•˜ì„¸ìš” + + + + + + Choose a filename to save under + 저장하려는 파ì¼ëª…ì„ ì„ íƒí•˜ì„¸ìš” + + + + Error while saving the database file. This means that not all changes to the database were saved. You need to resolve the following error first. + +%1 + ë°ì´í„°ë² ì´ìФ 파ì¼ì„ ì €ìž¥í•˜ë˜ ì¤‘ ì—러가 ë°œìƒí–ˆìŠµë‹ˆë‹¤. ì´ ë§ì€ 모든 ë³€ê²½ì‚¬í•­ë“¤ì´ ë°ì´í„°ë² ì´ìŠ¤ì— ì €ìž¥ë˜ì§€ 못했ìŒì„ ì˜ë¯¸í•©ë‹ˆë‹¤. 다ìŒì— 나오는 ì—러를 먼저 해결하세요. +%1 + + + + Are you sure you want to undo all changes made to the database file '%1' since the last save? + ì •ë§ë¡œ ë°ì´í„°ë² ì´ìФ íŒŒì¼ '%1'ì˜ ëª¨ë“  변경 ì‚¬í•­ì„ ë§ˆì§€ë§‰ ì €ìž¥ëœ ìƒíƒœë¡œ ë˜ëŒë¦½ë‹ˆê¹Œ? + + + + Choose a file to import + 가져올 파ì¼ì„ ì„ íƒí•˜ì„¸ìš” + + + + &%1 %2%3 + &%1 %2%3 + + + + (read only) + (ì½ê¸° ì „ìš©) + + + + Open Database or Project + ë°ì´í„°ë² ì´ìФ ë˜ëŠ” 프로ì íЏ 열기 + + + + Attach Database... + ë°ì´í„°ë² ì´ìФ ì—°ê²°... + + + + Import CSV file(s)... + CSV íŒŒì¼ ê°€ì ¸ì˜¤ê¸°... + + + + Select the action to apply to the dropped file(s). <br/>Note: only 'Import' will process more than one file. + + ë“œë¡­ëœ íŒŒì¼ì— ì ìš©í•  ìž‘ì—…ì„ ì„ íƒí•©ë‹ˆë‹¤. <br/>참고: '가져오기'ë§Œ ë‘ ê°œ ì´ìƒì˜ 파ì¼ì„ 처리합니다. + + + + + Do you want to save the changes made to SQL tabs in the project file '%1'? + '%1' 프로ì íЏ 파ì¼ì— SQL íƒ­ì„ ì¶”ê°€í•˜ê¸° 위해 ë³€ê²½ì‚¬í•­ì„ ì €ìž¥í•˜ì‹œê² ìŠµë‹ˆê¹Œ? + + + + Text files(*.sql *.txt);;All files(*) + 문ìžì—´ 파ì¼(*.sql *.txt);;모든 파ì¼(*) + + + + Do you want to create a new database file to hold the imported data? +If you answer no we will attempt to import the data in the SQL file to the current database. + ë°ì´í„°ë¥¼ 가져와서 새 ë°ì´í„°ë² ì´ìФ 파ì¼ì„ ìƒì„±í•˜ê³  ì‹¶ì€ì‹ ê°€ìš”? +아니ë¼ë©´ SQL 파ì¼ì˜ ë°ì´í„°ë¥¼ 현재 ë°ì´í„°ë² ì´ìŠ¤ë¡œ 가져오기를 í•  것입니다. + + + + You are still executing SQL statements. Closing the database now will stop their execution, possibly leaving the database in an inconsistent state. Are you sure you want to close the database? + ì•„ì§ SQL ëª…ë ¹ë¬¸ì´ ì‹¤í–‰ë˜ëŠ” 중입니다. ë°ì´í„°ë² ì´ìŠ¤ë¥¼ 닫으면 ì‹¤í–‰ì´ ì¤‘ë‹¨ë˜ì–´ ë°ì´í„°ë² ì´ìŠ¤ê°€ ì¼ê´€ì„±ì´ 없어질 수 있습니다. ì •ë§ë¡œ ë°ì´í„°ë² ì´ìŠ¤ë¥¼ 닫으시겠습니까? + + + + Do you want to save the changes made to the project file '%1'? + %1 ë°ì´í„°ë² ì´ìФ 파ì¼ì„ ìƒì„±í•˜ê¸° 위해 ë³€ê²½ì‚¬í•­ì„ ì €ìž¥í•˜ì‹œê² ìŠµë‹ˆê¹Œ? + + + + File %1 already exists. Please choose a different name. + íŒŒì¼ %1ì´ ì´ë¯¸ 존재합니다. 다른 파ì¼ëª…ì„ ì„ íƒí•˜ì„¸ìš”. + + + + Error importing data: %1 + ë°ì´í„° 가져오기 ì—러: %1 + + + + Import completed. + 가져오기가 완료ë˜ì—ˆìŠµë‹ˆë‹¤. + + + + Delete View + ë·° 삭제하기 + + + + Modify View + ë·° 수정하기 + + + + Delete Trigger + 트리거 삭제하기 + + + + Modify Trigger + 트리거 수정하기 + + + + Delete Index + ì¸ë±ìФ 삭제하기 + + + + Modify Index + ì¸ë±ìФ 수정하기 + + + + Modify Table + í…Œì´ë¸” 수정하기 + + + + Do you want to save the changes made to SQL tabs in a new project file? + 새 프로ì íЏ 파ì¼ì— SQL íƒ­ì„ ì¶”ê°€í•˜ê¸° 위해 ë³€ê²½ì‚¬í•­ì„ ì €ìž¥í•˜ì‹œê² ìŠµë‹ˆê¹Œ? + + + + Do you want to save the changes made to the SQL file %1? + %1 SQL 파ì¼ì„ ìƒì„±í•˜ê¸° 위해 ë³€ê²½ì‚¬í•­ì„ ì €ìž¥í•˜ì‹œê² ìŠµë‹ˆê¹Œ? + + + + Could not find resource file: %1 + 리소스 파ì¼ì„ ì°¾ì„ ìˆ˜ 없습니다: %1 + + + + Choose a project file to open + 불러올 프로ì íЏ 파ì¼ì„ ì„ íƒí•˜ì„¸ìš” + + + + Could not open project file for writing. +Reason: %1 + 쓰기 모드로 프로ì íЏ 파ì¼ì„ ì—´ 수 없습니다. +ì›ì¸: %1 + + + + Busy (%1) + 사용 중 (%1) + + + + Setting PRAGMA values will commit your current transaction. +Are you sure? + PRAGMA ì„¤ì •ì„ ë³€ê²½í•˜ë ¤ë©´ ì—¬ëŸ¬ë¶„ì˜ í˜„ìž¬ íŠ¸ëžœìž­ì…˜ì„ ì»¤ë°‹í•´ì•¼í•©ë‹ˆë‹¤. +ë™ì˜í•˜ì‹­ë‹ˆê¹Œ? + + + + Window Layout + ì°½ ë ˆì´ì•„웃 + + + + Reset Window Layout + ì°½ ë ˆì´ì•„웃 초기화 + + + + Alt+0 + + + + + Simplify Window Layout + ì°½ ë ˆì´ì•„웃 단순화 + + + + Shift+Alt+0 + + + + + Dock Windows at Bottom + í•˜ë‹¨ì— ì°½ ê³ ì • + + + + Dock Windows at Left Side + ì¢Œì¸¡ì— ì°½ ê³ ì • + + + + Dock Windows at Top + ìƒë‹¨ì— ì°½ ê³ ì • + + + + The database is currenctly busy. + ì´ ë°ì´í„°ë² ì´ìŠ¤ëŠ” 현재 사용 중입니다. + + + + Click here to interrupt the currently running query. + 여기를 눌러 현재 실행 ì¤‘ì¸ ì¿¼ë¦¬ë¥¼ ê°•ì œ 중단합니다. + + + + Could not open database file. +Reason: %1 + ë°ì´í„°ë² ì´ìФ 파ì¼ì„ ì—´ 수 없습니다. +ì›ì¸: %1 + + + + In-Memory database + In-Memory ë°ì´í„°ë² ì´ìФ + + + + Are you sure you want to delete the table '%1'? +All data associated with the table will be lost. + ì •ë§ë¡œ í…Œì´ë¸” '%1'ì„ ì‚­ì œí•˜ì‹œê² ìŠµë‹ˆê¹Œ? +í…Œì´ë¸”ì˜ ëª¨ë“  ë°ì´í„°ê°€ ì‚­ì œë©ë‹ˆë‹¤. + + + + Are you sure you want to delete the view '%1'? + ì •ë§ë¡œ '%1' 뷰를 삭제할까요? + + + + Are you sure you want to delete the trigger '%1'? + ì •ë§ë¡œ '%1' 트리거를 삭제할까요? + + + + Are you sure you want to delete the index '%1'? + ì •ë§ë¡œ '%1' ì¸ë±ìŠ¤ë¥¼ 삭제할까요? + + + + Error: could not delete the table. + ì—러: í…Œì´ë¸”ì„ ì‚­ì œí•  수 없습니다. + + + + Error: could not delete the view. + ì—러: 뷰를 삭제할 수 없습니다. + + + + Error: could not delete the trigger. + ì—러: 트리거를 삭제할 수 없습니다. + + + + Error: could not delete the index. + ì—러: ì¸ë±ìŠ¤ë¥¼ 삭제할 수 없습니다. + + + + Message from database engine: +%1 + ë°ì´í„°ë² ì´ìФ 엔진 메시지: +%1 + + + + Editing the table requires to save all pending changes now. +Are you sure you want to save the database? + 'pending'ì˜ ëœ»ì´ ë³´ë¥˜ìž…ë‹ˆë‹¤ë§Œ, 여기서는 작업 중ì´ë˜ì´ ë” ë§žë‹¤ê³  íŒë‹¨í–ˆìŠµë‹ˆë‹¤. + í…Œì´ë¸”ì„ íŽ¸ì§‘í•˜ë ¤ë©´ 작업 중ì´ë˜ 모든 변경 ì‚¬í•­ì„ ì €ìž¥í•´ì•¼í•©ë‹ˆë‹¤. +ë°ì´í„°ë² ì´ìŠ¤ë¥¼ 저장하시겠습니까? + + + + Edit View %1 + ë·° 편집 %1 + + + + Edit Trigger %1 + 트리거 편집 %1 + + + + You are already executing SQL statements. Do you want to stop them in order to execute the current statements instead? Note that this might leave the database in an inconsistent state. + ì´ë¯¸ SQL ëª…ë ¹ë¬¸ì„ ì‹¤í–‰í•˜ì˜€ìŠµë‹ˆë‹¤. 현재 ëª…ë ¹ë¬¸ì„ ëŒ€ì‹  실행하기 위해 기존 ì‹¤í–‰ì„ ì¤‘ë‹¨í•˜ì‹œê² ìŠµë‹ˆê¹Œ? ì´ë¡œ ì¸í•´ ë°ì´í„°ë² ì´ìŠ¤ê°€ ì¼ê´€ì„±ì´ 없는 ìƒíƒœê°€ ë  ìˆ˜ 있습니다. + + + + -- EXECUTING SELECTION IN '%1' +-- + -- '%1ì˜ ì„ íƒ í•­ëª© 실행 +-- + + + + -- EXECUTING LINE IN '%1' +-- + --'%1'ì—서 ë¼ì¸ 실행 중 +-- + + + + -- EXECUTING ALL IN '%1' +-- + -- '%1'로부터 ì „ì²´ 실행 +-- + + + + + At line %1: + %1번째 줄: + + + + Result: %1 + ê²°ê³¼: %1 + + + + Result: %2 + ê²°ê³¼: %2 + + + + Setting PRAGMA values or vacuuming will commit your current transaction. +Are you sure? + PRAGMA ê°’ì„ ì§€ì •í•˜ì§€ 않으면 현재 íŠ¸ëžœìž­ì…˜ì— DB íŒŒì¼ ì²­ì†Œ 작업(Vacuum)ì´ ì»¤ë°‹ë©ë‹ˆë‹¤. 진행할까요? + + + + Opened '%1' in read-only mode from recent file list + 최근 íŒŒì¼ ëª©ë¡ì—서 ì½ê¸° ì „ìš© 모드로 '%1'ì„(를) 열었습니다 + + + + Opened '%1' from recent file list + 최근 íŒŒì¼ ëª©ë¡ì—서 '%1'ì„(를) 열었습니다 + + + + This action will open a new SQL tab with the following statements for you to edit and run: + ì´ ìž‘ì—…ì„ ìˆ˜í–‰í•˜ë©´ 편집하거나 실행할 수 있는 ë‹¤ìŒ ëª…ë ¹ë¬¸ì´ í¬í•¨ëœ 새 SQL íƒ­ì´ ì—´ë¦½ë‹ˆë‹¤: + + + + Rename Tab + 탭 ì´ë¦„ 변경 + + + + Duplicate Tab + 탭 복제 + + + + Close Tab + 탭 닫기 + + + + Opening '%1'... + '%1' 여는 중... + + + + There was an error opening '%1'... + '%1'ì„ ì—¬ëŠ” 중 ì—러가 ë°œìƒí–ˆìŠµë‹ˆë‹¤... + + + + Value is not a valid URL or filename: %1 + 올바른 URL ë˜ëŠ” íŒŒì¼ ì´ë¦„ì´ ì•„ë‹™ë‹ˆë‹¤: %1 + + + + %1 rows returned in %2ms + %2msì˜ ì‹œê°„ì´ ê±¸ë ¤ì„œ %1 í–‰ì´ ë°˜í™˜ë˜ì—ˆìŠµë‹ˆë‹¤ + + + + Choose text files + í…스트 íŒŒì¼ ì„ íƒ + + + + Import completed. Some foreign key constraints are violated. Please fix them before saving. + 가져오기가 완료ë˜ì—ˆìŠµë‹ˆë‹¤. ì¼ë¶€ 외래 í‚¤ì˜ ì œì•½ ì¡°ê±´ì´ ìœ„ë°˜ë˜ì—ˆìŠµë‹ˆë‹¤. 저장 하기 ì „ì— ìˆ˜ì •í•˜ì‹­ì‹œì˜¤. + + + + The statements in this tab are still executing. Closing the tab will stop the execution. This might leave the database in an inconsistent state. Are you sure you want to close the tab? + ì´ íƒ­ì˜ ëª…ë ¹ë¬¸ì€ ì—¬ì „ížˆ 실행 중입니다. íƒ­ì„ ë‹«ìœ¼ë©´ ì‹¤í–‰ì´ ì¤‘ë‹¨ë©ë‹ˆë‹¤. ì´ë¡œ ì¸í•´ ë°ì´í„°ë² ì´ìŠ¤ê°€ ì¼ê´€ì„±ì´ 없는 ìƒíƒœê°€ ë  ìˆ˜ 있습니다. ì •ë§ë¡œ íƒ­ì„ ë‹«ìœ¼ì‹œê² ìŠµë‹ˆê¹Œ? + + + + Select SQL file to open + ì—´ SQL 파ì¼ì„ ì„ íƒí•˜ì„¸ìš” + + + + Select file name + íŒŒì¼ ì´ë¦„ì„ ì„ íƒí•˜ì„¸ìš” + + + + Select extension file + íŒŒì¼ í™•ìž¥ìžë¥¼ ì„ íƒí•˜ì„¸ìš” + + + + Extension successfully loaded. + í™•ìž¥ê¸°ëŠ¥ì„ ì„±ê³µì ìœ¼ë¡œ 불러왔습니다. + + + + Error loading extension: %1 + 확장기능 불러오기 ì—러: %1 + + + + + Don't show again + 다시 ë³´ì§€ 않기 + + + + New version available. + ì´ìš© 가능한 새 ë²„ì „ì´ ìžˆìŠµë‹ˆë‹¤. + + + + A new DB Browser for SQLite version is available (%1.%2.%3).<br/><br/>Please download at <a href='%4'>%4</a>. + ì´ìš© 가능한 새 ë²„ì „ì´ ìžˆìŠµë‹ˆë‹¤ (%1.%2.%3).<br/><br/><a href='%4'>%4</a>ì—서 다운로드하세요. + + + + This project file is using an old file format because it was created using DB Browser for SQLite version 3.10 or lower. Loading this file format is still fully supported but we advice you to convert all your project files to the new file format because support for older formats might be dropped at some point in the future. You can convert your files by simply opening and re-saving them. + ì´ í”„ë¡œì íЏ 파ì¼ì€ DB Browser for SQLite 버전 3.10 ì´í•˜ë¥¼ 사용하여 ìƒì„±ë˜ì—ˆê¸° ë•Œë¬¸ì— ì´ì „ íŒŒì¼ í˜•ì‹ì„ 사용하고 있습니다. ì´ íŒŒì¼ í˜•ì‹ì„ 불러오는 ê²ƒì€ ì—¬ì „ížˆ 완벽하게 ì§€ì›ë˜ì§€ë§Œ ì´ì „ 형ì‹ì— 대한 ì§€ì›ì´ 추후 ì¤‘ë‹¨ë  ìˆ˜ 있으므로 모든 프로ì íЏ 파ì¼ì„ ì‹ ê·œ íŒŒì¼ í˜•ì‹ìœ¼ë¡œ 변환하는 ê²ƒì´ ì¢‹ìŠµë‹ˆë‹¤. 파ì¼ì„ ì—´ê³  다시 저장하기만하면 파ì¼ì„ 변환할 수 있습니다. + + + + Project saved to file '%1' + '%1' 파ì¼ë¡œ 프로ì íŠ¸ê°€ 저장ë˜ì—ˆìŠµë‹ˆë‹¤ + + + + Collation needed! Proceed? + 콜레ì´ì…˜ì´ 필요합니다! 진행할까요? + + + + A table in this database requires a special collation function '%1' that this application can't provide without further knowledge. +If you choose to proceed, be aware bad things can happen to your database. +Create a backup! + ì´ ë°ì´í„°ë² ì´ìŠ¤ì˜ í…Œì´ë¸”ì€ ì´ ì• í”Œë¦¬ì¼€ì´ì…˜ì—서 잘 알지 못하는 특별한 함수 '%1'ê°€ 필요합니다. +ì´ëŒ€ë¡œ ê³„ì† ì§„í–‰í•  수는 있습니다만 ì—¬ëŸ¬ë¶„ì˜ ë°ì´í„°ë² ì´ìŠ¤ì— ë‚˜ìœ ì˜í–¥ì´ ê°ˆ ìˆ˜ë„ ìžˆìŠµë‹ˆë‹¤. +ë°±ì—…ì„ ìƒì„±í•˜ì„¸ìš”! + + + + creating collation + 콜레ì´ì…˜ ìƒì„± + + + + Set a new name for the SQL tab. Use the '&&' character to allow using the following character as a keyboard shortcut. + SQL íƒ­ì˜ ìƒˆ ì´ë¦„ì„ ì„¤ì •í•˜ì„¸ìš”. '&&' 문ìžë¥¼ 사용하여 다ìŒì— ë”°ë¼ì˜¤ëŠ” 문ìžë¥¼ 키보드 단축키로서 사용할 수 있습니다. + + + + Please specify the view name + ë·° ì´ë¦„ì„ ì§€ì •í•´ì£¼ì„¸ìš” + + + + There is already an object with that name. Please choose a different name. + ì´ë¯¸ ê°™ì€ ì´ë¦„ì˜ ê°ì²´ê°€ 존재합니다. 다른 ì´ë¦„ì„ ê³ ë¥´ì„¸ìš”. + + + + View successfully created. + ë·°ê°€ 성공ì ìœ¼ë¡œ ìƒì„±ë˜ì—ˆìŠµë‹ˆë‹¤. + + + + Error creating view: %1 + ë·° ìƒì„± ì—러: %1 + + + + This action will open a new SQL tab for running: + ì´ ìž‘ì—…ì€ ë‹¤ìŒì„ 실행하는 새 SQL íƒ­ì„ ì—½ë‹ˆë‹¤: + + + + Press Help for opening the corresponding SQLite reference page. + 해당 SQLite 참조 페ì´ì§€ë¥¼ 열려면 ë„움ë§ì„ 누르십시오. + + + + DB Browser for SQLite project file (*.sqbpro) + DB Browser for SQLite 프로ì íЏ íŒŒì¼ (*.sqbpro) + + + + Error checking foreign keys after table modification. The changes will be reverted. + í…Œì´ë¸” 수정 후 외래 키를 확ì¸í•˜ëŠ” 중 오류가 ë°œìƒí•˜ì˜€ìŠµë‹ˆë‹¤. 변경 ì‚¬í•­ì´ ë˜ëŒë ¤ì§‘니다. + + + + This table did not pass a foreign-key check.<br/>You should run 'Tools | Foreign-Key Check' and fix the reported issues. + ì´ í…Œì´ë¸”ì€ ì™¸ëž˜ 키 검사를 통과하지 못했습니다.<br/>'ë„구 -> 외래 키 검사'를 실행하여 ë³´ê³ ëœ ë¬¸ì œë¥¼ 해결하십시오. + + + + Execution finished with errors. + ì—러가 ë°œìƒí•˜ì—¬ 실행 중단ë¨. + + + + Execution finished without errors. + ì—러 ì—†ì´ ì‹¤í–‰ 완료. + + + + NullLineEdit + + + Set to NULL + NULL로 변경하기 + + + + Alt+Del + + + + + PlotDock + + + Plot + 플롯 + + + + <html><head/><body><p>This pane shows the list of columns of the currently browsed table or the just executed query. You can select the columns that you want to be used as X or Y axis for the plot pane below. The table shows detected axis type that will affect the resulting plot. For the Y axis you can only select numeric columns, but for the X axis you will be able to select:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Date/Time</span>: strings with format &quot;yyyy-MM-dd hh:mm:ss&quot; or &quot;yyyy-MM-ddThh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Date</span>: strings with format &quot;yyyy-MM-dd&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Time</span>: strings with format &quot;hh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Label</span>: other string formats. Selecting this column as X axis will produce a Bars plot with the column values as labels for the bars</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Numeric</span>: integer or real values</li></ul><p>Double-clicking the Y cells you can change the used color for that graph.</p></body></html> + <html><head/><body><p>ì´ í™”ë©´ì€ í˜„ìž¬ ë³´ê³  있는 í…Œì´ë¸” ë˜ëŠ” 방금 실행한 ì¿¼ë¦¬ì˜ í•„ë“œ 목ë¡ì„ ë³´ì—¬ì¤ë‹ˆë‹¤. 아래 플롯 í™”ë©´ì— Xì¶• ë˜ëŠ” Y축으로 사용할 필드를 ì„ íƒí•  수 있습니다. ì´ í‘œëŠ” ê²°ê³¼ í”Œë¡¯ì— ì˜í–¥ì„ 줄 수 있다고 ì¸ì‹ëœ ì¶•ì˜ ì¢…ë¥˜ë¥¼ ë³´ì—¬ì¤ë‹ˆë‹¤. Yì¶•ì€ ìˆ«ìž íƒ€ìž… 필드만 ì„ íƒí•  수 있지만 Xì¶•ì€ ë‹¤ìŒê³¼ ê°™ì€ í•„ë“œ íƒ€ìž…ì„ ì„ íƒí•  수 있습니다:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Date/Time</span>: strings with format &quot;yyyy-MM-dd hh:mm:ss&quot; or &quot;yyyy-MM-ddThh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">ë‚ ì§œ</span>: 문ìžì—´ í¬ë§· &quot;yyyy-MM-dd&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">시간</span>: 문ìžì—´ í¬ë§· &quot;hh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">ë¼ë²¨</span>: ì´ í•„ë“œë¥¼ X축으로 ì„ íƒí•˜ë©´ 필드 ê°’ì´ ë§‰ëŒ€ì˜ ë ˆì´ë¸”로 í‘œì‹œëœ ë§‰ëŒ€ 그래프가 ìƒì„±ë©ë‹ˆë‹¤.</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">숫ìž</span>: 정수 ë˜ëŠ” 실수</li></ul><p>Y ì…€ì„ ë”블 í´ë¦­í•˜ë©´ ê·¸ëž˜í”„ì— ì‚¬ìš©ëœ ìƒ‰ì„ ë³€ê²½í•  수 있습니다.</p></body></html> + + + + Columns + 필드 + + + + X + X + + + + Y1 + Y1 + + + + Y2 + Y2 + + + + Axis Type + ì¶• 타입 + + + + Here is a plot drawn when you select the x and y values above. + +Click on points to select them in the plot and in the table. Ctrl+Click for selecting a range of points. + +Use mouse-wheel for zooming and mouse drag for changing the axis range. + +Select the axes or axes labels to drag and zoom only in that orientation. + 위ì—서 x와 y ê°’ì„ ì„ íƒí•˜ë©´ ì—¬ê¸°ì— í”Œë¡¯ì´ ê·¸ë ¤ì§‘ë‹ˆë‹¤. + +플롯과 í…Œì´ë¸”ì—서 í•­ëª©ì„ í´ë¦­í•˜ë©´ ì„ íƒë©ë‹ˆë‹¤. 여러 ë²”ìœ„ì˜ í•­ëª©ì„ ì„ íƒí•˜ë ¤ë©´ Control+í´ë¦­ì„ 하세요. + +확대/축소를 하려면 마우스 íœ ì„ ì´ìš©í•˜ê³  ì¶• 범위를 바꾸려면 마우스를 드래그하세요. + +한 방향으로만 드래그 ë˜ëŠ” 확대/축소를 하고 싶다면 ì¶• ë˜ëŠ” ì¶• ë¼ë²¨ì„ ì„ íƒí•˜ì„¸ìš”. + + + + Line type: + í–‰ 타입: + + + + + None + 사용하지 ì•ŠìŒ + + + + Line + í–‰ + + + + StepLeft + 왼쪽으로 + + + + StepRight + 오른쪽으로 + + + + StepCenter + 중앙으로 + + + + Impulse + 임펄스(Impulse) + + + + Point shape: + í¬ì¸íЏ 모양: + + + + Cross + ì‹­ìžê°€ + + + + Plus + ë”하기 + + + + Circle + ì› + + + + Disc + 디스í¬(Disc) + + + + Square + 정사ê°í˜• + + + + Diamond + 마름모 + + + + Star + 별 + + + + Triangle + 삼ê°í˜• + + + + TriangleInverted + 역삼ê°í˜• + + + + CrossSquare + CrossSquare + + + + PlusSquare + PlusSquare + + + + CrossCircle + CrossCircle + + + + PlusCircle + PlusCircle + + + + Peace + Peace + + + + <html><head/><body><p>Save current plot...</p><p>File format chosen by extension (png, jpg, pdf, bmp)</p></body></html> + <html><head/><body><p>현재 플롯 저장하기...</p><p>íŒŒì¼ í¬ë§· 확장ìžë¥¼ ì„ íƒí•˜ì„¸ìš” (png, jpg, pdf, bmp)</p></body></html> + + + + Save current plot... + 현재 플롯 저장하기... + + + + + Load all data and redraw plot + 모든 ë°ì´í„°ë¥¼ 불러와서 í”Œë¡¯ì„ ë‹¤ì‹œ 그립니다 + + + + + + Row # + í–‰ # + + + + Copy + 복사 + + + + Print... + ì¸ì‡„하기... + + + + Show legend + 범례 표시 + + + + Stacked bars + ëˆ„ì  ë§‰ëŒ€ + + + + Date/Time + ë‚ ì§œ/시간 + + + + Date + ë‚ ì§œ + + + + Time + 시간 + + + + + Numeric + ìˆ«ìž + + + + Label + ë ˆì´ë¸” + + + + Invalid + 올바르지 ì•ŠìŒ + + + + Load all data and redraw plot. +Warning: not all data has been fetched from the table yet due to the partial fetch mechanism. + 모든 ë°ì´í„°ë¥¼ 불러와서 í”Œë¡¯ì„ ë‹¤ì‹œ 그립니다. +주ì˜: ì´ ê¸°ëŠ¥ì€ ë¶€ë¶„ë§Œ 가져오는 메커니즘으로 ì¸í•˜ì—¬ í…Œì´ë¸”ì—서 모든 ë°ì´í„°ê°€ 가져와지지는 않습니다. + + + + Choose an axis color + ì¶• ìƒ‰ê¹”ì„ ì„ íƒí•˜ì„¸ìš” + + + + Choose a filename to save under + 저장하려는 파ì¼ëª…ì„ ì„ íƒí•˜ì„¸ìš” + + + + PNG(*.png);;JPG(*.jpg);;PDF(*.pdf);;BMP(*.bmp);;All Files(*) + PNG(*.png);;JPG(*.jpg);;PDF(*.pdf);;BMP(*.bmp);;모든 파ì¼(*) + + + + There are curves in this plot and the selected line style can only be applied to graphs sorted by X. Either sort the table or query by X to remove curves or select one of the styles supported by curves: None or Line. + í”Œë¡¯ì— ìžˆëŠ” 곡선들 ì¤‘ì— X축으로 ì •ë ¬ëœ ê·¸ëž˜í”„ë§Œ ì„ íƒí•œ ì„ ì˜ ìŠ¤íƒ€ì¼ì„ 변경할 수 있습니다. X로 표 ë˜ëŠ” 쿼리를 정렬하여 ê³¡ì„ ì„ ì œê±°í•˜ë ¤ë©´ '사용하지 않ìŒ'ì„, ê³¡ì„ ì´ ì§€ì›í•˜ëŠ” ìŠ¤íƒ€ì¼ ì¤‘ 하나를 ì„ íƒí•˜ë ¤ë©´ 'í–‰'ì„ ì„ íƒí•˜ì„¸ìš”. + + + + Loading all remaining data for this table took %1ms. + í…Œì´ë¸”ì˜ ë‚˜ë¨¸ì§€ ë°ì´í„°ë¥¼ ë¶ˆëŸ¬ì˜¤ëŠ”ë° %1msê°€ 소요ë˜ì—ˆìŠµë‹ˆë‹¤. + + + + PreferencesDialog + + + Preferences + 환경설정 + + + + &General + ì¼ë°˜(&G) + + + + Remember last location + 마지막 위치를 기억 + + + + Always use this location + í•­ìƒ ì´ ìœ„ì¹˜ë¥¼ 사용 + + + + Remember last location for session only + ê°™ì€ ì„¸ì…˜ì—서만 마지막 위치를 기억 + + + + + + ... + ... + + + + Default &location + 기본 위치(&L) + + + + Lan&guage + 언어(&G) + + + + Automatic &updates + ìžë™ ì—…ë°ì´íЏ(&U) + + + + + + + + + + + + enabled + 사용하기 + + + + Show remote options + ì›ê²© 옵션 보기 + + + + &Database + ë°ì´í„°ë² ì´ìФ(&D) + + + + Database &encoding + ë°ì´í„°ë² ì´ìФ ì¸ì½”딩(&E) + + + + Open databases with foreign keys enabled. + 외래키 ê¸°ëŠ¥ì„ ì‚¬ìš©í•˜ë©° ë°ì´í„°ë² ì´ìŠ¤ë¥¼ 엽니다. + + + + &Foreign keys + 외래키(&F) + + + + Data &Browser + ë°ì´í„° 보기(&B) + + + + Remove line breaks in schema &view + 스키마 ë·°ì—서 ê°œí–‰ì„ ì œê±°í•©ë‹ˆë‹¤(&V) + + + + Prefetch block si&ze + 프리패치 í•  블럭 í¬ê¸°(&Z) + + + + SQ&L to execute after opening database + ë°ì´í„°ë² ì´ìŠ¤ë¥¼ ì—° 후 SQLì„ ì‹¤í–‰(&L) + + + + Default field type + 기본 필드 타입 + + + + Font + 글꼴 + + + + &Font + 글꼴(&F) + + + + Content + ë‚´ìš© + + + + Symbol limit in cell + ì…€ 안 심볼 한계 + + + + NULL + NULL + + + + Regular + 보통 + + + + Binary + ë°”ì´ë„ˆë¦¬ + + + + Background + 배경색 + + + + Filters + í•„í„° + + + + Toolbar style + 툴바 ìŠ¤íƒ€ì¼ + + + + + + + + Only display the icon + ì•„ì´ì½˜ë§Œ 표시 + + + + + + + + Only display the text + í…스트만 표시 + + + + + + + + The text appears beside the icon + í…스트를 ì•„ì´ì½˜ 옆으로 + + + + + + + + The text appears under the icon + í…스트가 ì•„ì´ì½˜ 아래로 + + + + + + + + Follow the style + 애플리케ì´ì…˜ ìŠ¤íƒ€ì¼ ì ìš© + + + + DB file extensions + ë°ì´í„°ë² ì´ìФ íŒŒì¼ í™•ìž¥ìž + + + + Manage + 관리 + + + + Main Window + ë©”ì¸ ì°½ + + + + Database Structure + ë°ì´í„°ë² ì´ìФ 구조 + + + + Browse Data + ë°ì´í„° 보기 + + + + Execute SQL + SQL 실행 + + + + Edit Database Cell + ë°ì´í„°ë² ì´ìФ ì…€ 수정 + + + + When this value is changed, all the other color preferences are also set to matching colors. + ì´ ê°’ì´ ë³€ê²½ë˜ë©´ 다른 모든 색ìƒë“¤ë„ ì´ì— ì¼ì¹˜í•˜ëŠ” 색ìƒìœ¼ë¡œ 설정ë©ë‹ˆë‹¤. + + + + Follow the desktop style + ë°ìФí¬í†± ìŠ¤íƒ€ì¼ ì ìš© + + + + Dark style + 어둡게 + + + + Application style + 애플리케ì´ì…˜ ìŠ¤íƒ€ì¼ + + + + This sets the font size for all UI elements which do not have their own font size option. + 개별 글꼴 í¬ê¸° ì˜µì…˜ì´ ì—†ëŠ” 모든 UI ìš”ì†Œì˜ ê¸€ê¼´ í¬ê¸°ë¥¼ 설정합니다. + + + + Font size + 글꼴 í¬ê¸° + + + + When enabled, the line breaks in the Schema column of the DB Structure tab, dock and printed output are removed. + 활성화ë˜ë©´ DB 구조 íƒ­ì˜ ìŠ¤í‚¤ë§ˆ ì—´ì—서 줄 바꿈, ë… ë° ì¸ì‡„ëœ ì¶œë ¥ì´ ì œê±°ë©ë‹ˆë‹¤. + + + + Database structure font size + ë°ì´í„°ë² ì´ìФ 구조 글꼴 í¬ê¸° + + + + Font si&ze + 글꼴 í¬ê¸°(&Z) + + + + This is the maximum number of items allowed for some computationally expensive functionalities to be enabled: +Maximum number of rows in a table for enabling the value completion based on current values in the column. +Maximum number of indexes in a selection for calculating sum and average. +Can be set to 0 for disabling the functionalities. + ì—°ì‚°ì´ ë§Žì´ ê±¸ë¦¬ëŠ” ì¼ë¶€ ê¸°ëŠ¥ì„ í™œì„±í™”í•˜ëŠ”ë° í—ˆìš©ë˜ëŠ” 최대 항목 수입니다. +ì—´ì˜ í˜„ìž¬ ê°’ì„ ê¸°ë°˜ìœ¼ë¡œ ê°’ ì™„ì„±ì„ í™œì„±í™”í•˜ê¸° 위한 í…Œì´ë¸”ì˜ ìµœëŒ€ í–‰ì˜ ê°¯ìˆ˜ìž…ë‹ˆë‹¤. +합계 ë° í‰ê· ì„ 계산하려는 ì„ íƒ í•­ëª©ì˜ ìµœëŒ€ ì¸ë±ìФ 수입니다. +기능 비활성화하려면 0으로 설정하세요. + + + + This is the maximum number of rows in a table for enabling the value completion based on current values in the column. +Can be set to 0 for disabling completion. + ì—´ì˜ í˜„ìž¬ ê°’ì„ ê¸°ë°˜ìœ¼ë¡œ ê°’ ì™„ì„±ì„ í™œì„±í™”í•˜ê¸° 위한 í…Œì´ë¸”ì˜ ìµœëŒ€ í–‰ 수입니다. +비활성화하려면 0으로 설정하세요. + + + + Close button on tabs + íƒ­ì— ë‹«ê¸° 버튼 + + + + If enabled, SQL editor tabs will have a close button. In any case, you can use the contextual menu or the keyboard shortcut to close them. + 활성화ë˜ë©´ SQL 편집기 íƒ­ì— ë‹«ê¸° ë²„íŠ¼ì´ ìƒê¹ë‹ˆë‹¤. ì–´ë–¤ 경우든 컨í…스트 메뉴나 키보드 단축기를 사용하여 ë‹«ì„ ìˆ˜ 있습니다. + + + + Proxy + 프ë¡ì‹œ + + + + Configure + 설정 + + + + Field display + 필드 출력 + + + + Displayed &text + 출력 í…스트(&T) + + + + + + + + + Click to set this color + ì„ íƒí•˜ì—¬ ì´ ìƒ‰ìƒì„ ì„ íƒí•˜ì„¸ìš” + + + + Text color + 글ìžìƒ‰ + + + + Background color + 배경색 + + + + Preview only (N/A) + 미리보기만 출력 (N/A) + + + + Escape character + ì´ìŠ¤ì¼€ì´í”„ ë¬¸ìž + + + + Delay time (&ms) + 대기 시간 (&ms) + + + + Set the waiting time before a new filter value is applied. Can be set to 0 for disabling waiting. + 새로운 í•„í„° ê°’ì„ ì ìš©í•˜ê¸° ì „ì— ëŒ€ê¸°í•  ì‹œê°„ì„ ì„¤ì •í•˜ì„¸ìš”. 대기 ì‹œê°„ì„ 0으로 하면 대기하지 않습니다. + + + + &SQL + SQL(&S) + + + + Settings name + 설정 ì´ë¦„ + + + + Context + ë‚´ìš© + + + + Colour + 색깔 + + + + Bold + 진하게 + + + + Italic + 기울게 + + + + Underline + 밑줄 + + + + Keyword + 키워드 + + + + Function + 함수 + + + + Table + í…Œì´ë¸” + + + + Comment + ì£¼ì„ + + + + Identifier + ì‹ë³„ìž + + + + String + 문ìžì—´ + + + + Current line + 현재 í–‰ + + + + SQL &editor font size + SQL ì—디터 글꼴 í¬ê¸°(&E) + + + + Tab size + 탭 í¬ê¸° + + + + &Wrap lines + 줄 바꿈(&W) + + + + Never + 사용 안 함 + + + + At word boundaries + 단어 경계ì—서 + + + + At character boundaries + ë¬¸ìž ê²½ê³„ì—서 + + + + At whitespace boundaries + 공백ì—서 + + + + &Quotes for identifiers + ì‹ë³„ìž êµ¬ë¶„ 기호(&Q) + + + + Choose the quoting mechanism used by the application for identifiers in SQL code. + SQL ì½”ë“œì˜ ì‹ë³„ìžì— 대해 ì‘ìš© 프로그램ì—서 사용하는 기호를 ì„ íƒí•©ë‹ˆë‹¤. + + + + "Double quotes" - Standard SQL (recommended) + "í° ë”°ì˜´í‘œ" - SQL 표준 (권장ë¨) + + + + `Grave accents` - Traditional MySQL quotes + 'ìž‘ì€ ë”°ì˜´í‘œ' - MySQL 전통 ì¸ìš© 부호 + + + + [Square brackets] - Traditional MS SQL Server quotes + [대괄호] - MS SQL 전통 ì¸ìš© 부호 + + + + Keywords in &UPPER CASE + í‚¤ì›Œë“œì— ëŒ€í•´ 대문ìž(&U) + + + + When set, the SQL keywords are completed in UPPER CASE letters. + 활성화ë˜ë©´ SQL 키워드가 대문ìžë¡œ 완성ë©ë‹ˆë‹¤. + + + + When set, the SQL code lines that caused errors during the last execution are highlighted and the results frame indicates the error in the background + 활성화ë˜ë©´ 마지막 실행 ì¤‘ì— ì˜¤ë¥˜ë¥¼ ì¼ìœ¼í‚¨ SQL 코드 ì¤„ì´ ê°•ì¡° 표시ë˜ê³  ê²°ê³¼ í”„ë ˆìž„ì€ ë°±ê·¸ë¼ìš´ë“œì— 오류를 나타냅니다 + + + + <html><head/><body><p>SQLite provides an SQL function for loading extensions from a shared library file. Activate this if you want to use the <span style=" font-style:italic;">load_extension()</span> function from SQL code.</p><p>For security reasons, extension loading is turned off by default and must be enabled through this setting. You can always load extensions through the GUI, even though this option is disabled.</p></body></html> + <html><head/><body><p>SQLite는 공유 ë¼ì´ë¸ŒëŸ¬ë¦¬ 파ì¼ì—서 í™•ìž¥ì„ ë¡œë“œí•˜ê¸° 위한 SQL 함수를 제공합니다. SQL 코드ì—서 <span style=" font-style:italic;">load_extension()</span> 함수를 사용하려면 ì´ ê¸°ëŠ¥ì„ í™œì„±í™”í•˜ì‹­ì‹œì˜¤.</p><p>보안 ìƒì˜ ì´ìœ ë¡œ 확장 로드는 기본ì ìœ¼ë¡œ 비활성화ë˜ì–´ 있으며 ì„¤ì •ì„ í†µí•´ 활성화해야 합니다. ì´ ì˜µì…˜ì´ ë¹„í™œì„±í™”ë˜ì–´ 있ë”ë¼ë„ í•­ìƒ GUI를 통해 í™•ìž¥ì„ ë¡œë“œí•  수 있습니다.</p></body></html> + + + + Allow loading extensions from SQL code + SQL 코드ì—서 í™•ìž¥ê¸°ëŠ¥ì„ ë¶ˆëŸ¬ì˜¤ëŠ” ê²ƒì„ í—ˆìš© + + + + Remote + ì›ê²© + + + + CA certificates + CA ì¸ì¦ì„œ + + + + + Subject CN + 제목 CN + + + + Common Name + ì¼ë°˜ ì´ë¦„ + + + + Subject O + 제목 O + + + + Organization + 기관 + + + + + Valid from + 유효날짜(시작) + + + + + Valid to + 유효날짜(ë) + + + + + Serial number + 시리얼 넘버 + + + + Your certificates + ë‹¹ì‹ ì˜ ì¸ì¦ì„œ + + + + File + íŒŒì¼ + + + + Subject Common Name + 주제 ì¼ë°˜ ì´ë¦„ + + + + Issuer CN + ì´ìŠˆ 등ë¡ìž CN + + + + Issuer Common Name + ì´ìŠˆ 등ë¡ìž ì¼ë°˜ ì´ë¦„ + + + + Clone databases into + ë°ì´í„°ë² ì´ìФ 복제하기 + + + + SQL editor &font + SQL 편집기 글꼴(&F) + + + + Error indicators + ì—러 표시 + + + + Hori&zontal tiling + 화면 ìˆ˜í‰ ë‚˜ëˆ„ê¸°(&Z) + + + + If enabled the SQL code editor and the result table view are shown side by side instead of one over the other. + 활성화ë˜ë©´ SQL 코드 편집기와 ê²°ê³¼ í…Œì´ë¸” ë·°ê°€ 나란히 표시ë©ë‹ˆë‹¤. + + + + Code co&mpletion + 코드 완성(&M) + + + + Threshold for completion and calculation on selection + ì„ íƒì— 대한 완료 ë° ì—°ì‚° 임계 ê°’ + + + + Show images in cell + ì…€ì— ì´ë¯¸ì§€ 표시 + + + + Enable this option to show a preview of BLOBs containing image data in the cells. This can affect the performance of the data browser, however. + ì…€ì— ì´ë¯¸ì§€ ë°ì´í„°ê°€ í¬í•¨ëœ BLOBì˜ ë¯¸ë¦¬ë³´ê¸°ë¥¼ 표시하려면 ì´ ì˜µì…˜ì„ í™œì„±í™”í•©ë‹ˆë‹¤. 그러나 ì´ëŠ” ë°ì´í„° 브ë¼ìš°ì €ì˜ ì„±ëŠ¥ì— ì˜í–¥ì„ ë¼ì¹  수 있습니다. + + + + Foreground + 전경색 + + + + SQL &results font size + SQL ê²°ê³¼ 글꼴 í¬ê¸°(&R) + + + + &Extensions + 확장기능(&E) + + + + Select extensions to load for every database: + 불러올 í™•ìž¥ê¸°ëŠ¥ì„ ì„ íƒí•˜ì„¸ìš”(í™•ìž¥ê¸°ëŠ¥ì€ ëª¨ë“  ë°ì´í„°ë² ì´ìŠ¤ì— ë°˜ì˜ë©ë‹ˆë‹¤): + + + + Add extension + 확장기능 추가 + + + + Remove extension + 확장기능 제거 + + + + <html><head/><body><p>While supporting the REGEXP operator SQLite doesn't implement any regular expression<br/>algorithm but calls back the running application. DB Browser for SQLite implements this<br/>algorithm for you to let you use REGEXP out of the box. However, as there are multiple possible<br/>implementations of this and you might want to use another one, you're free to disable the<br/>application's implementation and load your own by using an extension. Requires restart of the application.</p></body></html> + <html><head/><body><p>SQLiteì—서는 기본ì ìœ¼ë¡œ ì •ê·œ í‘œí˜„ì‹ ê¸°ëŠ¥ì„ ì œê³µí•˜ì§€ 않습니다만 애플리케ì´ì…˜ì„ 실행하여 호출하는 ê²ƒì€ ê°€ëŠ¥í•©ë‹ˆë‹¤. DB Browser for SQLiteì—서는 ì´ ì•Œê³ ë¦¬ì¦˜ì„ ë°•ìŠ¤ ë°–ì—ì„œë„ ì •ê·œ 표현ì‹ì„ 사용할 수 있ë„ë¡ ì´ ì•Œê³ ë¦¬ì¦˜ì„ êµ¬í˜„í•´ì¤ë‹ˆë‹¤. 하지만 í™•ìž¥ê¸°ëŠ¥ì„ ì‚¬ìš©í•˜ì—¬ 외부ì—서 만든 알고리즘 êµ¬í˜„ì„ ì‚¬ìš©í•˜ê³ ìž í•œë‹¤ë©´ DB Browser for SQLiteì—서 제공하는 구현 ì‚¬ìš©ì„ ìžìœ ë¡­ê²Œ ëŒ ìˆ˜ 있습니다. ì´ ê¸°ëŠ¥ì€ ì• í”Œë¦¬ì¼€ì´ì…˜ì„ 재시작해야 합니다.</p></body></html> + + + + Disable Regular Expression extension + ì •ê·œ í‘œí˜„ì‹ í™•ìž¥ê¸°ëŠ¥ 비활성화 + + + + + Choose a directory + 디렉터리를 ì„ íƒí•˜ì„¸ìš” + + + + The language will change after you restart the application. + 언어 ë³€ê²½ì€ ì• í”Œë¦¬ì¼€ì´ì…˜ì„ 재시작해야 ë°˜ì˜ë©ë‹ˆë‹¤. + + + + Select extension file + 확장기능 파ì¼ì„ ì„ íƒí•˜ì„¸ìš” + + + + Extensions(*.so *.dylib *.dll);;All files(*) + 확장기능(*.so *.dylib *dll);;모든 파ì¼(*) + + + + Import certificate file + ì¸ì¦ì„œ íŒŒì¼ ê°€ì ¸ì˜¤ê¸° + + + + No certificates found in this file. + ì´ íŒŒì¼ì—는 ì¸ì¦ì„œê°€ 없습니다. + + + + Are you sure you want do remove this certificate? All certificate data will be deleted from the application settings! + ì •ë§ë¡œ ì´ ì¸ì¦ì„œë¥¼ 삭제하겠습니까? 애플리케ì´ì…˜ 설정ì—서 모든 ì¦ëª… ë°ì´í„°ê°€ ì‚­ì œë  ê²ƒìž…ë‹ˆë‹¤! + + + + Are you sure you want to clear all the saved settings? +All your preferences will be lost and default values will be used. + ì €ìž¥ëœ ëª¨ë“  ì„¤ì •ì„ ì •ë§ë¡œ 초기화하시겠습니까? +모든 ì„¤ì •ì´ ì´ˆê¸°í™”ë˜ê³  기본값으로 대체ë©ë‹ˆë‹¤. + + + + ProxyDialog + + + Proxy Configuration + 프ë¡ì‹œ 설정 + + + + Pro&xy Type + 프ë¡ì‹œ 종류(&X) + + + + Host Na&me + 서버 주소(&M) + + + + Port + í¬íЏ + + + + Authentication Re&quired + ì¸ì¦ ì •ë³´ í•„ìš”(&Q) + + + + &User Name + 사용ìžëª…(&U) + + + + Password + 암호 + + + + None + 사용하지 ì•ŠìŒ + + + + System settings + 시스템 설정 + + + + HTTP + HTTP + + + + Socks v5 + Socks v5 + + + + QObject + + + Error importing data + ë°ì´í„° 가져오기 ì—러 + + + + from record number %1 + 레코드 넘버: %1 + + + + . +%1 + . +%1 + + + + Importing CSV file... + CSV íŒŒì¼ ê°€ì ¸ì˜¤ê¸°... + + + + Cancel + 취소 + + + + All files (*) + 모든 파ì¼(*) + + + + SQLite database files (*.db *.sqlite *.sqlite3 *.db3) + SQLite ë°ì´í„°ë² ì´ìФ 파ì¼(*.db *.sqlite *.sqlite3 *.db3) + + + + Left + 왼쪽 + + + + Right + 오른쪽 + + + + Center + 중앙 + + + + Justify + ì •ë ¬ + + + + SQLite Database Files (*.db *.sqlite *.sqlite3 *.db3) + SQLite ë°ì´í„°ë² ì´ìФ íŒŒì¼ (*.db *.sqlite *.sqlite3 *.db3) + + + + DB Browser for SQLite Project Files (*.sqbpro) + DB Browser for SQLite 프로ì íЏ íŒŒì¼ (*.sqbpro) + + + + SQL Files (*.sql) + SQL íŒŒì¼ (*.sql) + + + + All Files (*) + 모든 íŒŒì¼ (*) + + + + Text Files (*.txt) + í…스트 íŒŒì¼ (*.txt) + + + + Comma-Separated Values Files (*.csv) + 쉼표로 êµ¬ë¶„ëœ íŒŒì¼ (*.csv) + + + + Tab-Separated Values Files (*.tsv) + 탭으로 ë¶„ë¦¬ëœ íŒŒì¼ (*.tsv) + + + + Delimiter-Separated Values Files (*.dsv) + 구분ìžë¡œ êµ¬ë¶„ëœ íŒŒì¼ (*.dsv) + + + + Concordance DAT files (*.dat) + Concordance DAT íŒŒì¼ (*.dat) + + + + JSON Files (*.json *.js) + JSON íŒŒì¼ (*.json *.js) + + + + XML Files (*.xml) + XML íŒŒì¼ (*.xml) + + + + Binary Files (*.bin *.dat) + ë°”ì´ë„ˆë¦¬ íŒŒì¼ (*bin *.dat) + + + + SVG Files (*.svg) + SVG íŒŒì¼ (*.svg) + + + + Hex Dump Files (*.dat *.bin) + Hex ë¤í”„ íŒŒì¼ (*.dat *bin) + + + + Extensions (*.so *.dylib *.dll) + 확장기능 (*.so *.dylib *.dll) + + + + RemoteCommitsModel + + + Commit ID + 커밋 ID + + + + Message + 메시지 + + + + Date + ë‚ ì§œ + + + + Author + ì €ìž + + + + Size + í¬ê¸° + + + + Authored and committed by %1 + %1ì— ì˜í•´ 작성ë˜ê³  ì»¤ë°‹ë¨ + + + + Authored by %1, committed by %2 + %1ì— ì˜í•´ 작성ë˜ê³ , %2ì— ì˜í•´ ì»¤ë°‹ë¨ + + + + RemoteDatabase + + + Error opening local databases list. +%1 + 로컬 ë°ì´í„°ë² ì´ìФ 목ë¡ì„ ì—´ë˜ ì¤‘ ì—러가 ë°œìƒí–ˆìŠµë‹ˆë‹¤. %1 + + + + Error creating local databases list. +%1 + 로컬 ë°ì´í„°ë² ì´ìФ 목ë¡ì„ ìƒì„±í•˜ë˜ 중 ì—러가 ë°œìƒí–ˆìŠµë‹ˆë‹¤. %1 + + + + RemoteDock + + + Remote + ì›ê²© + + + + Local + 로컬 + + + + Identity + ì‹ ì› + + + + Push currently opened database to server + 현재 열린 ë°ì´ë² ì´ìŠ¤ë¥¼ 서버로 ë°˜ì˜í•©ë‹ˆë‹¤ + + + + DBHub.io + DBHub.io + + + + <html><head/><body><p>In this pane, remote databases from dbhub.io website can be added to DB Browser for SQLite. First you need an identity:</p><ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Login to the dbhub.io website (use your GitHub credentials or whatever you want)</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Click the button to &quot;Generate client certificate&quot; (that's your identity). That'll give you a certificate file (save it to your local disk).</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Go to the Remote tab in DB Browser for SQLite Preferences. Click the button to add a new certificate to DB Browser for SQLite and choose the just downloaded certificate file.</li></ol><p>Now the Remote panel shows your identity and you can add remote databases.</p></body></html> + <html><head/><body><p>ì´ ì°½ì—서는 DBHub.io 웹 사ì´íŠ¸ì˜ ì›ê²© ë°ì´í„°ë² ì´ìŠ¤ë¥¼ DB Browser for SQLiteì— ì¶”ê°€í•  수 있습니다.</p><ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">DBHub.io 웹 사ì´íŠ¸ì— ë¡œê·¸ì¸(ì›í•˜ì‹œë©´ GitHub ìžê²© ì¦ëª…ì„ ì‚¬ìš©í•  수 있습니다)</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">ë²„íŠ¼ì„ í´ë¦­í•˜ì—¬ &quot;í´ë¼ì´ì–¸íЏ ì¸ì¦ì„œ ìƒì„±&quot; (ë‹¹ì‹ ì˜ ì‹ ì› ì •ë³´). 그러면 ì¸ì¦ì„œ 파ì¼ì´ 제공ë©ë‹ˆë‹¤(로컬 디스í¬ì— 저장)</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">DB Browser for SQLite ì„¤ì •ì˜ ì›ê²© 탭으로 ì´ë™í•©ë‹ˆë‹¤. ë²„íŠ¼ì„ í´ë¦­í•˜ì—¬ DB Browser for SQLiteì— ìƒˆ ì¸ì¦ì„œë¥¼ 추가하고 방금 다운로드한 ì¸ì¦ì„œ 파ì¼ì„ ì„ íƒí•©ë‹ˆë‹¤.</li></ol><p>ì´ì œ ì›ê²© 패ë„ì— IDê°€ 표시ë˜ê³  ì›ê²© ë°ì´í„°ë² ì´ìŠ¤ë¥¼ 추가할 수 있습니다.</p></body></html> + + + + Current Database + 현재 ë°ì´í„°ë² ì´ìФ + + + + Clone + 복제 + + + + User + ì‚¬ìš©ìž + + + + Database + ë°ì´í„°ë² ì´ìФ + + + + Branch + 브랜치 + + + + Commits + 커밋 + + + + Commits for + 커밋 조회할 브랜치 + + + + Delete Database + ë°ì´í„°ë² ì´ìФ ì‚­ì œ + + + + Delete the local clone of this database + ì´ ë°ì´í„°ë² ì´ìŠ¤ì˜ ë¡œì»¬ 복제본 ì‚­ì œ + + + + Open in Web Browser + 웹 브ë¼ìš°ì €ì—서 열기 + + + + Open the web page for the current database in your browser + 브ë¼ìš°ì €ì—서 현재 ë°ì´í„°ë² ì´ìŠ¤ì˜ ì›¹ 페ì´ì§€ë¥¼ 엽니다 + + + + Clone from Link + 주소로부터 복제 + + + + Use this to download a remote database for local editing using a URL as provided on the web page of the database. + ì´ë¥¼ 사용하여 로컬 íŽ¸ì§‘ì„ ìœ„í•´ ë°ì´í„°ë² ì´ìŠ¤ì˜ ì›¹ 페ì´ì§€ì—서 ì œê³µëœ URLì„ ì‚¬ìš©í•˜ì—¬ ì›ê²© ë°ì´í„°ë² ì´ìŠ¤ë¥¼ 다운로드 합니다. + + + + Refresh + 새로고침 + + + + Reload all data and update the views + 모든 ë°ì´í„°ë¥¼ 다시 로드하고 뷰를 ì—…ë°ì´íŠ¸í•©ë‹ˆë‹¤ + + + + F5 + + + + + Clone Database + ë°ì´í„°ë² ì´ìФ 복제 + + + + Open Database + ë°ì´í„°ë² ì´ìФ 열기 + + + + Open the local copy of this database + ì´ ë°ì´í„°ë² ì´ìŠ¤ì˜ ë¡œì»¬ ë³µì œë³¸ì„ ì—½ë‹ˆë‹¤ + + + + Check out Commit + 커밋 ì²´í¬ì•„웃 + + + + Download and open this specific commit + ì´ íŠ¹ì • ì»¤ë°‹ì„ ë‹¤ìš´ë¡œë“œí•˜ì—¬ 엽니다 + + + + Check out Latest Commit + 최신 커밋 í™•ì¸ + + + + Check out the latest commit of the current branch + ì´ ë¸Œëžœì¹˜ì˜ ìµœì‹  커밋 í™•ì¸ + + + + Save Revision to File + ë¦¬ë¹„ì „ì„ íŒŒì¼ì— 저장 + + + + Saves the selected revision of the database to another file + ë°ì´í„°ë² ì´ìŠ¤ì˜ ì„ íƒí•œ ë¦¬ë¹„ì „ì„ ë‹¤ë¥¸ 파ì¼ì— 저장합니다 + + + + Upload Database + ë°ì´í„°ë² ì´ìФ 업로드 + + + + Upload this database as a new commit + ì´ ë°ì´í„°ë² ì´ìŠ¤ë¥¼ 새 커밋으로 업로드 + + + + <html><head/><body><p>You are currently using a built-in, read-only identity. For uploading your database, you need to configure and use your DBHub.io account.</p><p>No DBHub.io account yet? <a href="https://dbhub.io/"><span style=" text-decoration: underline; color:#007af4;">Create one now</span></a> and import your certificate <a href="#preferences"><span style=" text-decoration: underline; color:#007af4;">here</span></a> to share your databases.</p><p>For online help visit <a href="https://dbhub.io/about"><span style=" text-decoration: underline; color:#007af4;">here</span></a>.</p></body></html> + <html><head/><body><p>현재 기본으로 제공ë˜ëŠ” ì½ê¸° ì „ìš© ID를 사용하고 있습니다. ë°ì´í„°ë² ì´ìŠ¤ë¥¼ 업로드하려면 DBHub.io ê³„ì •ì„ êµ¬ì„±í•˜ê³  사용해야 합니다.</p><p>ì•„ì§ DBHub.io ê³„ì •ì´ ì—†ìœ¼ì‹­ë‹ˆê¹Œ? <a href="https://dbhub.io/"><span style=" text-decoration: underline; color:#007af4;">지금 만들어</span></a> ì¸ì¦ì„œë¥¼ 가져옵니다. <a href="#preferences"><span style=" text-decoration: underline; color:#007af4;">여기</span></a>ì—서 ë°ì´í„°ë² ì´ìŠ¤ë¥¼ 공유하세요.</p><p>온ë¼ì¸ ë„움ë§ì„ 보려면 <a href="https://dbhub.io/about"><span style=" text-decoration: underline; color:#007af4;">여기</span></a>를 방문하세요.</p></body></html> + + + + Back + 뒤로가기 + + + + Select an identity to connect + ì—°ê²°í•  ID를 ì„ íƒí•˜ì„¸ìš” + + + + Public + 공개 + + + + This downloads a database from a remote server for local editing. +Please enter the URL to clone from. You can generate this URL by +clicking the 'Clone Database in DB4S' button on the web page +of the database. + 로컬 íŽ¸ì§‘ì„ ìœ„í•´ ì›ê²© 서버ì—서 ë°ì´í„°ë² ì´ìŠ¤ë¥¼ 다운로드합니다. +복제하려는 URLì„ ìž…ë ¥í•˜ì„¸ìš”. ë°ì´í„°ë² ì´ìŠ¤ì˜ ì›¹ 페ì´ì§€ì—서 +'DB4Sì—서 ë°ì´í„°ë² ì´ìФ 복제' ë²„íŠ¼ì„ í´ë¦­í•˜ì—¬ +ì´ëŸ¬í•œ URLì„ ìƒì„±í•  수 있습니다. + + + + Invalid URL: The host name does not match the host name of the current identity. + ìž˜ëª»ëœ URL: 호스트 ì´ë¦„ì´ í˜„ìž¬ IDì˜ í˜¸ìŠ¤íŠ¸ ì´ë¦„ê³¼ ì¼ì¹˜í•˜ì§€ 않습니다. + + + + Invalid URL: No branch name specified. + ìž˜ëª»ëœ URL: ì§€ì •ëœ ë¸Œëžœì¹˜ ì´ë¦„ì´ ì—†ìŠµë‹ˆë‹¤. + + + + Invalid URL: No commit ID specified. + ìž˜ëª»ëœ URL: 커밋 IDê°€ 지정ë˜ì§€ 않았습니다. + + + + You have modified the local clone of the database. Fetching this commit overrides these local changes. +Are you sure you want to proceed? + ë°ì´í„°ë² ì´ìŠ¤ì˜ ë¡œì»¬ ë³µì œë³¸ì„ ìˆ˜ì •í–ˆìŠµë‹ˆë‹¤. ì´ ì»¤ë°‹ì„ ê°€ì ¸ì˜¤ë©´ ì´ëŸ¬í•œ 로컬 변경 ì‚¬í•­ì´ ë¬´ì‹œë©ë‹ˆë‹¤. +계ì†í•˜ì‹œê² ìŠµë‹ˆê¹Œ? + + + + The database has unsaved changes. Are you sure you want to push it before saving? + ë°ì´í„°ë² ì´ìŠ¤ì— ì €ìž¥ë˜ì§€ ì•Šì€ ë³€ê²½ ì‚¬í•­ì´ ìžˆìŠµë‹ˆë‹¤. 저장하기 ì „ì— í‘¸ì‹œí•˜ì‹œê² ìŠµë‹ˆê¹Œ? + + + + The database you are trying to delete is currently opened. Please close it before deleting. + 삭제하려는 ë°ì´í„°ë² ì´ìŠ¤ê°€ 현재 열려있습니다. 삭제하기 ì „ì— ë‹«ìœ¼ì‹­ì‹œì˜¤. + + + + This deletes the local version of this database with all the changes you have not committed yet. Are you sure you want to delete this database? + ì´ë ‡ê²Œí•˜ë©´ ì•„ì§ ì»¤ë°‹í•˜ì§€ ì•Šì€ ëª¨ë“  변경 사항과 함께 ì´ ë°ì´í„°ë² ì´ìŠ¤ì˜ ë¡œì»¬ ë²„ì „ì´ ì‚­ì œë©ë‹ˆë‹¤. ì •ë§ë¡œ ë°ì´í„°ë² ì´ìŠ¤ë¥¼ 삭제하시겠습니까? + + + + RemoteLocalFilesModel + + + Name + ì´ë¦„ + + + + Branch + 브랜치 + + + + Last modified + 마지막 ìˆ˜ì •ì¼ + + + + Size + í¬ê¸° + + + + Commit + 커밋 + + + + File + íŒŒì¼ + + + + RemoteModel + + + Name + ì´ë¦„ + + + + Last modified + 마지막 수정 + + + + Size + í¬ê¸° + + + + Commit + 커밋 + + + + Size: + í¬ê¸°: + + + + Last Modified: + 마지막 수정: + + + + Licence: + ë¼ì´ì„¼ìФ: + + + + Default Branch: + 기본 브랜치: + + + + RemoteNetwork + + + Choose a location to save the file + 파ì¼ì„ 저장할 위치를 ì„ íƒí•˜ì„¸ìš” + + + + Error opening remote file at %1. +%2 + %1 ì— ìžˆëŠ” ì›ê²© 파ì¼ì„ ì—´ë˜ ì¤‘ ì—러가 ë°œìƒí–ˆìŠµë‹ˆë‹¤. +%2 + + + + Error: Invalid client certificate specified. + ì—러: 올바르지 ì•Šì€ í´ë¼ì´ì–¸íЏ ì¸ì¦ì„œìž…니다. + + + + Please enter the passphrase for this client certificate in order to authenticate. + ì¸ì¦ì„ 위한 í´ë¼ì´ì–¸íЏ ì¸ì¦ì„œ 암호를 입력해주세요. + + + + Cancel + 취소 + + + + Uploading remote database to +%1 + %1로 +ì›ê²© ë°ì´í„°ë² ì´ìŠ¤ë¥¼ 업로드 중입니다 + + + + Downloading remote database from +%1 + %1 ì—서 ì›ê²© ë°ì´í„°ë² ì´ìŠ¤ë¥¼ 다운로드 중입니다. {1?} + + + + + Error: The network is not accessible. + ì—러: 네트워í¬ì— 접근할 수 없습니다. + + + + Error: Cannot open the file for sending. + ì—러: 보내려는 파ì¼ì„ ì—´ 수 없습니다. + + + + RemotePushDialog + + + Push database + ë°ì´í„°ë² ì´ìФ 푸시(Push) + + + + Database na&me to push to + 푸시할 ë°ì´í„°ë² ì´ìФ ì´ë¦„(&M) + + + + Commit message + 커밋 메시지 + + + + Database licence + ë°ì´í„°ë² ì´ìФ ë¼ì´ì„¼ìФ + + + + Public + 공개 + + + + Branch + 브랜치 + + + + Force push + ê°•ì œ 푸시 + + + + Username + 사용ìžëª… + + + + Database will be public. Everyone has read access to it. + 공개 ë°ì´í„°ë² ì´ìŠ¤ë¡œ 지정합니다. 누구나 ì½ê¸° ì ‘ê·¼ì´ ê°€ëŠ¥í•©ë‹ˆë‹¤. + + + + Database will be private. Only you have access to it. + 비공개 ë°ì´í„°ë² ì´ìŠ¤ë¡œ 지정합니다. 당신만 접근할 수 있습니다. + + + + Use with care. This can cause remote commits to be deleted. + 주ì˜í•´ì„œ 사용하세요. ì›ê²© ì»¤ë°‹ì„ ì‚­ì œí•˜ëŠ” 결과를 초래할 수 있습니다. + + + + RunSql + + + Execution aborted by user + 사용ìžì— ì˜í•´ì„œ ì‹¤í–‰ì´ ì·¨ì†Œë˜ì—ˆìŠµë‹ˆë‹¤ + + + + , %1 rows affected + , %1 í–‰ì´ ì˜í–¥ 받았습니다 + + + + query executed successfully. Took %1ms%2 + %2 ë°ì´í„°ë² ì´ìŠ¤ì— ì¿¼ë¦¬ê°€ 성공ì ìœ¼ë¡œ 실행ë˜ì—ˆìŠµë‹ˆë‹¤. %1ms 걸렸습니다 + + + + executing query + 쿼리 실행 중 + + + + SelectItemsPopup + + + A&vailable + 사용 가능한(&V) + + + + Sele&cted + ì„ íƒë¨(&C) + + + + SqlExecutionArea + + + Form + í¼ + + + + Find previous match [Shift+F3] + ì´ì „ 찾기 [Shift+F3] + + + + Find previous match with wrapping + 랩핑(Wrapping)ëœ ì´ì „ ì¼ì¹˜ë‚´ì—­ 검색하기 + + + + Shift+F3 + + + + + The found pattern must be a whole word + 온전한 ë‚±ë§ ì¼ì¹˜ 검색패턴 + + + + Whole Words + 온전한 ë‚±ë§ ì¼ì¹˜ + + + + Text pattern to find considering the checks in this frame + ì´ í”„ë ˆìž„ 안ì—서 확ì¸í•˜ê¸° 위해 ê²€ìƒ‰í•˜ê³ ìž í•˜ëŠ” 문ìžì—´ 패턴 + + + + Find in editor + 편집기 ë‚´ì—서 찾기 + + + + The found pattern must match in letter case + ëŒ€ì†Œë¬¸ìž ì¼ì¹˜ 검색패턴 + + + + Case Sensitive + ëŒ€ì†Œë¬¸ìž ì¼ì¹˜ + + + + Find next match [Enter, F3] + ë‹¤ìŒ ì°¾ê¸° [Enter,F3] + + + + Find next match with wrapping + 랩핑(Wrapping)으로 ë‹¤ìŒ ì°¾ê¸° + + + + F3 + + + + + Interpret search pattern as a regular expression + 검색 패턴 ì •ê·œ í‘œí˜„ì‹ ì‚¬ìš© + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + <html><head/><body><p>ì„ íƒí•˜ë©´ ì°¾ì„ íŒ¨í„´ì´ UNIX ì •ê·œ 표현ì‹ìœ¼ë¡œ í•´ì„ë©ë‹ˆë‹¤. <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>를 참고하십시오.</p></body></html> + + + + Regular Expression + ì •ê·œ í‘œí˜„ì‹ + + + + + Close Find Bar + 검색바 닫기 + + + + <html><head/><body><p>Results of the last executed statements.</p><p>You may want to collapse this panel and use the <span style=" font-style:italic;">SQL Log</span> dock with <span style=" font-style:italic;">User</span> selection instead.</p></body></html> + <html><head/><body><p>마지막으로 ì‹¤í–‰ëœ ëª…ë ¹ë¬¸ì˜ ê²°ê³¼ìž…ë‹ˆë‹¤.</p><p>ì´ íŒ¨ë„ì„ ì¶•ì†Œí•˜ê³  대신 <span style=" font-style:italic;">사용ìž</span> ì„ íƒê³¼ 함께 <span style=" font-style:italic;">SQL 로그</span> ë…ì„ ì‚¬ìš©í•  수 있습니다.</p></body></html> + + + + Results of the last executed statements + 가장 최근 실행 구문 ê²°ê³¼ + + + + This field shows the results and status codes of the last executed statements. + ì´ í•„ë“œëŠ” 가장 ìµœê·¼ì— ì‹¤í–‰ëœ êµ¬ë¬¸ì˜ ê²°ê³¼ì™€ ìƒíƒœ 코드를 ë³´ì—¬ì¤ë‹ˆë‹¤. + + + + Couldn't read file: %1. + 파ì¼ì„ ì½ì„ 수 없습니다: %1. + + + + + Couldn't save file: %1. + 파ì¼ì„ 저장할 수 없습니다: %1. + + + + Your changes will be lost when reloading it! + 다시 불러오면 변경 ì‚¬í•­ì„ ìžƒìŠµë‹ˆë‹¤! + + + + The file "%1" was modified by another program. Do you want to reload it?%2 + "%1" 파ì¼ì´ 다른 í”„ë¡œê·¸ëž¨ì— ì˜í•´ 수정ë˜ì—ˆìŠµë‹ˆë‹¤. 다시 불러오겠습니까?%2 + + + + SqlTextEdit + + + Ctrl+/ + + + + + SqlUiLexer + + + (X) The abs(X) function returns the absolute value of the numeric argument X. + (X) abs(X) 함수는 ìˆ«ìž ë§¤ê°œë³€ìˆ˜ Xì˜ ì ˆëŒ€ê°’ì„ ë°˜í™˜í•©ë‹ˆë‹¤. + + + + () The changes() function returns the number of database rows that were changed or inserted or deleted by the most recently completed INSERT, DELETE, or UPDATE statement. + () changes() 함수는 가장 ìµœê·¼ì— ì‹¤í–‰ëœ INSERT, DELETE, UPDATE 구문ì—서 ë°ì´í„°ë² ì´ìФì—서 변경ë˜ê±°ë‚˜ 추가ë˜ê±°ë‚˜ ì‚­ì œëœ í–‰ 수를 반환합니다. + + + + (X1,X2,...) The char(X1,X2,...,XN) function returns a string composed of characters having the unicode code point values of integers X1 through XN, respectively. + (X1,X2,...) char(X1,X2,...,XN) 함수는 ê°ê°ì˜ X1ì—서 XN ìˆ«ìž ê°’ì˜ ìœ ë‹ˆì½”ë“œ í¬ì¸íЏ ê°’ì„ ê°€ì§„ 문ìžë“¤ë¡œ êµ¬ì„±ëœ ë¬¸ìžì—´ì„ 반환합니다. + + + + (X,Y,...) The coalesce() function returns a copy of its first non-NULL argument, or NULL if all arguments are NULL + (X,Y,...) coalesce() 함수는 첫번째 NULLì´ ì•„ë‹Œ ì¸ìž ê°’ì˜ ì‚¬ë³¸ì„ ë°˜í™˜í•©ë‹ˆë‹¤. 만약 ì¸ìž ê°’ì´ ëª¨ë‘ NULLì´ë¼ë©´ NULLì„ ë°˜í™˜í•©ë‹ˆë‹¤ + + + + (X,Y) The glob(X,Y) function is equivalent to the expression "Y GLOB X". + (X,Y) glob(X,Y) 함수는 "Y GLOB X" 표현ì‹ê³¼ 같습니다. + + + + (X,Y) The ifnull() function returns a copy of its first non-NULL argument, or NULL if both arguments are NULL. + (X,Y) ifnull() 함수는 첫번째 NULLì´ ì•„ë‹Œ ì¸ìž ê°’ì˜ ì‚¬ë³¸ì„ ë°˜í™˜í•©ë‹ˆë‹¤. 만약 ì¸ìžê°’ 둘 다 NULLì´ë¼ë©´ NULLì„ ë°˜í™˜í•©ë‹ˆë‹¤. + + + + (X,Y) The instr(X,Y) function finds the first occurrence of string Y within string X and returns the number of prior characters plus 1, or 0 if Y is nowhere found within X. + (X,Y) instr(X,Y) 함수는 문ìžì—´ Xì—서 문ìžì—´ Yê°€ 있다면 첫 ê¸€ìž ìœ„ì¹˜ + 1 ê°’ì„ ë¦¬í„´í•©ë‹ˆë‹¤. 만약 문ìžì—´ Xì—서 문ìžì—´ Yê°€ 발견ë˜ì§€ 않는다면 0ì„ ë°˜í™˜í•©ë‹ˆë‹¤. + + + + (X) The hex() function interprets its argument as a BLOB and returns a string which is the upper-case hexadecimal rendering of the content of that blob. + (X) hex() 함수는 매개변수를 BLOB으로 변환한 후 blobì˜ ë‚´ìš©ì„ ëŒ€ë¬¸ìž 16진수 문ìžì—´ë¡œ 변환하여 반환합니다. + + + + () The last_insert_rowid() function returns the ROWID of the last row insert from the database connection which invoked the function. + () last_insert_rowid() 함수는 함수가 í˜¸ì¶œëœ ë°ì´í„°ë² ì´ìФ ì—°ê²°ì—서 가장 ìµœê·¼ì— ì¶”ê°€ëœ í–‰ì˜ ROWID를 반환합니다. + + + + (X) For a string value X, the length(X) function returns the number of characters (not bytes) in X prior to the first NUL character. + (X) 문ìžì—´ 변수 X를 위한 것으로 length(X) 함수는 첫 번째 NUL 문ìžë¥¼ 만날 ë•Œê¹Œì§€ì˜ (ë°”ì´íЏ 수가 아닌)ë¬¸ìž ìˆ˜ë¥¼ 반환합니다. + + + + (X,Y) The like() function is used to implement the "Y LIKE X" expression. + (X,Y) like() 함수는 "Y LIKE X" 표현ì‹ì„ 구현하기위해 사용합니다. + + + + (X,Y,Z) The like() function is used to implement the "Y LIKE X ESCAPE Z" expression. + (X,Y,Z) like() 함수는 "Y LIKE X ESCAPE Z" 표현ì‹ì„ 구현하기 위해 사용합니다. + + + + (X) The load_extension(X) function loads SQLite extensions out of the shared library file named X. +Use of this function must be authorized from Preferences. + (X) load_extension(X) 함수는 Xë¼ëŠ” 공유 ë¼ì´ë¸ŒëŸ¬ë¦¬ 파ì¼ì—서 SQLite í™•ìž¥ì„ ë¡œë“œí•©ë‹ˆë‹¤. +ì´ ê¸°ëŠ¥ì˜ ì‚¬ìš©ì€ í™˜ê²½ì„¤ì •ì—서 승ì¸í•˜ì—¬ì•¼ 합니다. + + + + (X,Y) The load_extension(X) function loads SQLite extensions out of the shared library file named X using the entry point Y. +Use of this function must be authorized from Preferences. + (X,Y) The load_extension(X) 함수는 ì§„ìž…ì  Y를 사용하여 Xë¼ëŠ” 공유 ë¼ì´ë¸ŒëŸ¬ë¦¬ 파ì¼ì—서 SQLite í™•ìž¥ì„ ë¡œë“œí•©ë‹ˆë‹¤. +ì´ ê¸°ëŠ¥ì˜ ì‚¬ìš©ì€ í™˜ê²½ì„¤ì •ì—서 승ì¸ë˜ì–´ì•¼ 합니다. + + + + (X) The lower(X) function returns a copy of string X with all ASCII characters converted to lower case. + (X) lower(X) 함수는 문ìžì—´ Xì—서 모든 ASCII 문ìžë¥¼ 소문ìžë¡œ 변경한 문ìžì—´ ì‚¬ë³¸ì„ ë°˜í™˜í•©ë‹ˆë‹¤. + + + + (X) ltrim(X) removes spaces from the left side of X. + (X) ltrim(X) 함수는 Xì˜ ì¢Œì¸¡ì˜ ê³µë°± ì—¬ë°±ì„ ì œê±°í•©ë‹ˆë‹¤. + + + + (X,Y) The ltrim(X,Y) function returns a string formed by removing any and all characters that appear in Y from the left side of X. + (X,Y) ltrim(X,Y) 함수는 Xì˜ ì¢Œì¸¡ì—서 Yì— ìžˆëŠ” 모든 문ìžë¥¼ 제거한 문ìžì—´ì„ 반환합니다. + + + + (X,Y,...) The multi-argument max() function returns the argument with the maximum value, or return NULL if any argument is NULL. + (X,Y,...) 다중 ì¸ìžë¥¼ 제공하는 max() 함수는 주어진 ì¸ìž ê°’ 중ì—서 가장 í° ê°’ì„ ë°˜í™˜í•©ë‹ˆë‹¤. 만약 주어진 ì¸ìž ì¤‘ì— NULL ê°’ì´ í•˜ë‚˜ë¼ë„ 있으면 NULLì„ ë°˜í™˜í•©ë‹ˆë‹¤. + + + + (X,Y,...) The multi-argument min() function returns the argument with the minimum value. + (X,Y,...) 다중 ì¸ìžë¥¼ 제공하는 min() 함수는 주어진 ì¸ìž ê°’ 중ì—서 가장 ìž‘ì€ ê°’ì„ ë°˜í™˜í•©ë‹ˆë‹¤. + + + + (X,Y) The nullif(X,Y) function returns its first argument if the arguments are different and NULL if the arguments are the same. + Y) nullif(X,Y) 함수는 ë‘ ì¸ìž ê°’ì´ ì„œë¡œ 다르면 X를 반환하고 ë‘ ì¸ìž ê°’ì´ ê°™ìœ¼ë©´ NULLì„ ë°˜í™˜í•©ë‹ˆë‹¤. + + + + (FORMAT,...) The printf(FORMAT,...) SQL function works like the sqlite3_mprintf() C-language function and the printf() function from the standard C library. + (FORMAT,...) printf(FORMAT,...) SQL 함수는 sqlite3_mprintf() C-언어 함수와 표준 C ë¼ì´ë¸ŒëŸ¬ë¦¬ì—ì„œì˜ printf() 함수처럼 ë™ìž‘합니다. + + + + (X) The quote(X) function returns the text of an SQL literal which is the value of its argument suitable for inclusion into an SQL statement. + (X) quote(X) 함수는 X를 SQL문 ì•ˆì— í¬í•¨ë˜ê¸°ì— ì ì ˆí•˜ë„ë¡ SQL 리터럴 문ìžì—´ë¡œ 반환합니다. + + + + () The random() function returns a pseudo-random integer between -9223372036854775808 and +9223372036854775807. + () random() 함수는 -9223372036854775808와 +9223372036854775807 사ì´ì˜ pseudo-ëžœë¤ ì •ìˆ˜ë¥¼ 반환합니다. + + + + (N) The randomblob(N) function return an N-byte blob containing pseudo-random bytes. + (N) randomblob(N) 함수는 psedo-ëžœë¤ ë°”ì´íŠ¸ë¥¼ í¬í•¨í•œ N-ë°”ì´íЏ blobì„ ë°˜í™˜í•©ë‹ˆë‹¤. + + + + (X,Y,Z) The replace(X,Y,Z) function returns a string formed by substituting string Z for every occurrence of string Y in string X. + (X,Y,Z) replace(X,Y,Z) 함수는 문ìžì—´ Xì— ìžˆëŠ” 모든 문ìžì—´ Y를 Z로 치환한 문ìžì—´ì„ 반환합니다. + + + + (X) The round(X) function returns a floating-point value X rounded to zero digits to the right of the decimal point. + (X) round(X) 함수는 ë¶€ë™ì†Œìˆ˜ì  ê°’ X를 0ì˜ ìžë¦¬ì—서 반올림한 ê°’ì„ ë°˜í™˜í•©ë‹ˆë‹¤. + + + + (X,Y) The round(X,Y) function returns a floating-point value X rounded to Y digits to the right of the decimal point. + (X,Y) round(X,Y) 함수는 ë¶€ë™ì†Œìˆ˜ì  ê°’ X를 ì†Œìˆ˜ì  ìš°ì¸¡ì—서 Yìžë¦¬ì—서 반올림한 ê°’ì„ ë°˜í™˜í•©ë‹ˆë‹¤. + + + + (X) rtrim(X) removes spaces from the right side of X. + (X) rtrim(X)ì€ Xì˜ ìš°ì¸¡ ê³µë°±ì„ ì œê±°í•©ë‹ˆë‹¤. + + + + (X,Y) The rtrim(X,Y) function returns a string formed by removing any and all characters that appear in Y from the right side of X. + (X,Y) rtrim(X,Y) 함수는 Xì˜ ìš°ì¸¡ì—서 Yì— ìžˆëŠ” 모든 문ìžë¥¼ 삭제한 문ìžì—´ì„ 반환합니다. + + + + (X) The soundex(X) function returns a string that is the soundex encoding of the string X. + (X) soundex(X) 함수는 문ìžì—´ Xì˜ ì‚¬ìš´ë±ìФ(Soundex) ì¸ì½”딩 문ìžì—´ì„ 반환합니다. + + + + (X,Y) substr(X,Y) returns all characters through the end of the string X beginning with the Y-th. + (X,Y) substr(X,Y) 함수는 문ìžì—´ Xì—서 Y번째부터 ë까지 모든 문ìžì—´ì„ 반환합니다. + + + + (X,Y,Z) The substr(X,Y,Z) function returns a substring of input string X that begins with the Y-th character and which is Z characters long. + (X,Y,Z) substr(X,Y,Z) 함수는 문ìžì—´ Xì—서 Y번째 문ìžë¶€í„° Zë¬¸ìž ìˆ˜ë§Œí¼ ë°˜í™˜í•©ë‹ˆë‹¤. + + + + () The total_changes() function returns the number of row changes caused by INSERT, UPDATE or DELETE statements since the current database connection was opened. + () total_changes() 함수는 현재 ë°ì´í„°ë² ì´ìФ ì—°ê²°ì´ ì—´ë¦° 후 INSERT, UPDATE, DELETE êµ¬ë¬¸ì— ì˜í•´ì„œ ë³€ê²½ëœ ë ˆì½”ë“œ í–‰ 수를 반환합니다. + + + + (X) trim(X) removes spaces from both ends of X. + (X) trim(X) 함수는 Xì˜ ì–‘ìª½ ê³µë°±ì„ ì œê±°í•©ë‹ˆë‹¤. + + + + (X,Y) The trim(X,Y) function returns a string formed by removing any and all characters that appear in Y from both ends of X. + (X,Y) trim(X,Y) 함수는 Xì˜ ì–‘ëì—서 Yì— í•´ë‹¹í•˜ëŠ” 문ìžë“¤ì„ 삭제한 문ìžì—´ì„ 반환합니다. + + + + (X) The typeof(X) function returns a string that indicates the datatype of the expression X. + (X) typeof(X) 함수는 í‘œí˜„ì‹ Xì˜ ë°ì´í„° íƒ€ìž…ì„ ë‚˜íƒ€ë‚´ëŠ” 문ìžì—´ì„ 반환합니다. + + + + (X) The unicode(X) function returns the numeric unicode code point corresponding to the first character of the string X. + (X) unicode(X) 함수는 문ìžì—´ Xì˜ ì²« 글ìžì— 해당하는 ìˆ«ìž ìœ ë‹ˆì½”ë“œ í¬ì¸íŠ¸ë¥¼ 반환합니다. + + + + (X) The upper(X) function returns a copy of input string X in which all lower-case ASCII characters are converted to their upper-case equivalent. + (X) upper(X) 함수는 ìž…ë ¥ 문ìžì—´ Xì—서 ASCII 문ìžì— 해당하는 글ìžë¥¼ 대문ìžë¡œ 변경한 문ìžì—´ ì‚¬ë³¸ì„ ë°˜í™˜í•©ë‹ˆë‹¤. + + + + (N) The zeroblob(N) function returns a BLOB consisting of N bytes of 0x00. + (N) zeroblob(N) 함수는 N ë°”ì´íŠ¸ì˜ 0x00으로 ì´ë£¨ì–´ì§„ BLOBì„ êµ¬ì„±í•˜ì—¬ 반환합니다. + + + + + + + (timestring,modifier,modifier,...) + (timestring,modifier,modifier,...) + + + + (format,timestring,modifier,modifier,...) + (format,timestring,modifier,modifier,...) + + + + (X) The avg() function returns the average value of all non-NULL X within a group. + (X) avg() 함수는 그룹ì—서 모든 NULLì´ ì•„ë‹Œ Xì˜ ê°’ì˜ í‰ê· ì„ 반환합니다. + + + + (X) The count(X) function returns a count of the number of times that X is not NULL in a group. + (X) count(X) 함수는 그룹ì—서 NULLì´ ì•„ë‹Œ 개수를 세어 반환합니다. + + + + (X) The group_concat() function returns a string which is the concatenation of all non-NULL values of X. + (X) group_concat() 함수는 Xì˜ ëª¨ë“  NULLì´ ì•„ë‹Œ ê°’ë“¤ì˜ ë¬¸ìžì—´ë¡œ í•©ì³ì„œ 반환합니다. + + + + (X,Y) The group_concat() function returns a string which is the concatenation of all non-NULL values of X. If parameter Y is present then it is used as the separator between instances of X. + (X,Y) group_concat() 함수는 Xì˜ ëª¨ë“  NULLì´ ì•„ë‹Œ ê°’ë“¤ì˜ ë¬¸ìžì—´ë¡œ í•©ì³ì„œ 반환합니다. 만약 매개변수 Yê°€ 있다면 ê°’ë“¤ì„ ë¬¸ìžì—´ë¡œ í•©ì¹  때 구분ìžë¡œ 사용합니다. + + + + (X) The max() aggregate function returns the maximum value of all values in the group. + (X) max() 집계 함수는 그룹ì—서 모든 값들 중 가장 í° ê°’ì„ ë°˜í™˜í•©ë‹ˆë‹¤. + + + + (X) The min() aggregate function returns the minimum non-NULL value of all values in the group. + (X) min() 집계 함수는 그룹ì—서 NULLì´ ì•„ë‹Œ 모든 값들 중 가장 ìž‘ì€ ê°’ì„ ë°˜í™˜í•©ë‹ˆë‹¤. + + + + + (X) The sum() and total() aggregate functions return sum of all non-NULL values in the group. + (X) sum(x)ê³¼ total() 집계 함수는 ê·¸ë£¹ì˜ ëª¨ë“  NULLì´ ì•„ë‹Œ ê°’ë“¤ì˜ í•©ì„ ë°˜í™˜í•©ë‹ˆë‹¤. + + + + () The number of the row within the current partition. Rows are numbered starting from 1 in the order defined by the ORDER BY clause in the window definition, or in arbitrary order otherwise. + () 현재 파티션 ë‚´ì˜ í–‰ 번호입니다. í–‰ì€ ì°½ ì •ì˜ì˜ ORDER BY ì ˆì— ì •ì˜ëœ 순서대로 1부터 시작하거나 ìž„ì˜ì˜ 순서로 번호가 지정ë©ë‹ˆë‹¤. + + + + () The row_number() of the first peer in each group - the rank of the current row with gaps. If there is no ORDER BY clause, then all rows are considered peers and this function always returns 1. + () ê° ê·¸ë£¹ì˜ ì²« 번째 í”¼ì–´ì˜ row_number ()-ê°„ê²©ì´ ìžˆëŠ” 현재 í–‰ì˜ ìˆœìœ„. ORDER BY ì ˆì´ ì—†ìœ¼ë©´ 모든 í–‰ì´ í”¼ì–´ë¡œ 간주ë˜ê³  ì´ í•¨ìˆ˜ëŠ” í•­ìƒ 1ì„ ë°˜í™˜í•©ë‹ˆë‹¤. + + + + () The number of the current row's peer group within its partition - the rank of the current row without gaps. Partitions are numbered starting from 1 in the order defined by the ORDER BY clause in the window definition. If there is no ORDER BY clause, then all rows are considered peers and this function always returns 1. + () 파티션 ë‚´ 현재 í–‰ì˜ í”¼ì–´ 그룹 번호 - ê°„ê²©ì´ ì—†ëŠ” 현재 í–‰ì˜ ìˆœìœ„, íŒŒí‹°ì…˜ì€ ì°½ ì •ì˜ì˜ ORDER BYì ˆì— ì •ì˜ëœ 순서대로 1부터 시작ë©ë‹ˆë‹¤. ORDER BY ì ˆì´ ì—†ìœ¼ë©´ 모든 í–‰ì´ í”¼ì–´ë¡œ 간주ë˜ì–´ ì´ í•¨ìˆ˜ëŠ” í•­ìƒ 1ì„ ë°˜í™˜í•©ë‹ˆë‹¤. + + + + () Despite the name, this function always returns a value between 0.0 and 1.0 equal to (rank - 1)/(partition-rows - 1), where rank is the value returned by built-in window function rank() and partition-rows is the total number of rows in the partition. If the partition contains only one row, this function returns 0.0. + () ì´ë¦„ì—ë„ ë¶ˆêµ¬í•˜ê³  ì´ í•¨ìˆ˜ëŠ” í•­ìƒ (rank - 1)/(partition-rows - 1)ê³¼ ê°™ì€ 0.0ì—서 1.0 사ì´ì˜ ê°’ì„ ë°˜í™˜í•©ë‹ˆë‹¤. 여기서 rank는 내장 ì°½ 함수 rank() ë° partitionì—서 반환한 값입니다. rows는 íŒŒí‹°ì…˜ì˜ ì´ í–‰ 수 입니다. íŒŒí‹°ì…˜ì— í–‰ì´ í•˜ë‚˜ë§Œ í¬í•¨ëœ 경우 ì´ í•¨ìˆ˜ëŠ” 0.0ì„ ë°˜í™˜í•©ë‹ˆë‹¤. + + + + () The cumulative distribution. Calculated as row-number/partition-rows, where row-number is the value returned by row_number() for the last peer in the group and partition-rows the number of rows in the partition. + () ëˆ„ì  ë¶„í¬. row-number/partition-rows로 계산ë©ë‹ˆë‹¤. 여기서 row-number는 ê·¸ë£¹ì˜ ë§ˆì§€ë§‰ í”¼ì–´ì— ëŒ€í•´ row_number()ì—서 반환한 ê°’ì´ê³  partition-rows는 íŒŒí‹°ì…˜ì˜ í–‰ 수입니다. + + + + (N) Argument N is handled as an integer. This function divides the partition into N groups as evenly as possible and assigns an integer between 1 and N to each group, in the order defined by the ORDER BY clause, or in arbitrary order otherwise. If necessary, larger groups occur first. This function returns the integer value assigned to the group that the current row is a part of. + (N) ì¸ìž Nì€ ì •ìˆ˜ë¡œ 취급ë©ë‹ˆë‹¤. ì´ í•¨ìˆ˜ëŠ” ORDER BY êµ¬ë¬¸ì´ ìžˆë‹¤ë©´ ê·¸ 순서대로, 없다면 ìž„ì˜ì˜ 순서로 가능하면 균등하게 Nê°œì˜ ê·¸ë£¹ìœ¼ë¡œ 나누고 ê° ê·¸ë£¹ì— 1부터 N 사ì´ì˜ 정수를 할당합니다. 필요한 경우 í° ê·¸ë£¹ì´ ë¨¼ì € 나옵니다. ì´ í•¨ìˆ˜ëŠ” 현재 í–‰ì´ ì†í•´ìžˆëŠ” ê·¸ë£¹ì´ í• ë‹¹ëœ ì •ìˆ˜ë¥¼ 반환합니다. + + + + (expr) Returns the result of evaluating expression expr against the previous row in the partition. Or, if there is no previous row (because the current row is the first), NULL. + (expr) íŒŒí‹°ì…˜ì˜ ì´ì „ í–‰ì— ëŒ€í•´ expr 표현ì‹ì„ í‰ê°€í•œ 결과를 반환합니다. ë˜ëŠ” ì´ì „ í–‰ì´ ì—†ëŠ” 경우(현재 í–‰ì´ ì²«ë²ˆì§¸ì¼ ë•Œ) NULL 반환ë©ë‹ˆë‹¤. + + + + (expr,offset) If the offset argument is provided, then it must be a non-negative integer. In this case the value returned is the result of evaluating expr against the row offset rows before the current row within the partition. If offset is 0, then expr is evaluated against the current row. If there is no row offset rows before the current row, NULL is returned. + (expr,offset) offset ì¸ìˆ˜ê°€ 제공ë˜ë©´ ìŒì´ 아닌 정수여야합니다. ì´ ê²½ìš° ë°˜í™˜ëœ ê°’ì€ íŒŒí‹°ì…˜ ë‚´ì˜ í˜„ìž¬ í–‰ ì´ì „ì— í–‰ 오프셋 í–‰ì— ëŒ€í•´ expr를 í‰ê°€í•œ 결과입니다. ì˜¤í”„ì…‹ì´ 0ì´ë©´ exprì´ í˜„ìž¬ í–‰ì— ëŒ€í•´ í‰ê°€ë©ë‹ˆë‹¤. 현재 í–‰ ì•žì— í–‰ 오프셋 í–‰ì´ ì—†ìœ¼ë©´ NULLì´ ë°˜í™˜ë©ë‹ˆë‹¤. + + + + + (expr,offset,default) If default is also provided, then it is returned instead of NULL if the row identified by offset does not exist. + (expr,offset,default) defaultë„ ì œê³µë˜ë©´ offset으로 ì‹ë³„ëœ í–‰ì´ ì¡´ìž¬í•˜ì§€ ì•Šì•˜ì„ ë•Œ NULL 대신 반환ë©ë‹ˆë‹¤. + + + + (expr) Returns the result of evaluating expression expr against the next row in the partition. Or, if there is no next row (because the current row is the last), NULL. + (expr) íŒŒí‹°ì…˜ì˜ ë‹¤ìŒ í–‰ì— ëŒ€í•´ expr 표현ì‹ì„ í‰ê°€í•œ 결과를 반환합니다. ë˜ëŠ” ë‹¤ìŒ í–‰ì´ ì—†ëŠ” 경우(현재 í–‰ì´ ë§ˆì§€ë§‰ í–‰ì¼ ë•Œ) NULLì´ ë°˜í™˜ë©ë‹ˆë‹¤. + + + + (expr,offset) If the offset argument is provided, then it must be a non-negative integer. In this case the value returned is the result of evaluating expr against the row offset rows after the current row within the partition. If offset is 0, then expr is evaluated against the current row. If there is no row offset rows after the current row, NULL is returned. + (expr,offset) offset ì¸ìˆ˜ê°€ 제공ë˜ë©´ ìŒì´ 아닌 정수여야 합니다. ì´ ê²½ìš° ë°˜í™˜ëœ ê°’ì€ íŒŒí‹°ì…˜ ë‚´ì—서 현재 í–‰ ë’¤ì— ìžˆëŠ” í–‰ 오프셋 í–‰ì— ëŒ€í•´ exprì„ í‰ê°€í•œ 결과입니다. ì˜¤í”„ì…‹ì´ 0ì´ë©´ exprì´ í˜„ìž¬ í–‰ì— ëŒ€í•´ í‰ê°€ë©ë‹ˆë‹¤. 현재 í–‰ ë’¤ì— í–‰ 오프셋 í–‰ì´ ì—†ìœ¼ë©´ NULLì´ ë°˜í™˜ë©ë‹ˆë‹¤. + + + + (expr) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the first row in the window frame for each row. + (expr)ì´ ë‚´ìž¥ ì°½ 함수는 집계 ì°½ 함수와 ë™ì¼í•œ ë°©ì‹ìœ¼ë¡œ ê° í–‰ì˜ ì°½ í”„ë ˆìž„ì„ ê³„ì‚°í•©ë‹ˆë‹¤. ê° í–‰ì˜ ì°½ 프레임ì—서 첫 번째 í–‰ì— ëŒ€í•´ í‰ê°€ëœ exprì˜ ê°’ì„ ë¦¬í„´í•©ë‹ˆë‹¤. + + + + (expr) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the last row in the window frame for each row. + (expr)ì´ ë‚´ìž¥ ì°½ 함수는 집계 ì°½ 함수와 ë™ì¼í•œ ë°©ì‹ìœ¼ë¡œ ê° í–‰ì˜ ì°½ í”„ë ˆìž„ì„ ê³„ì‚°í•©ë‹ˆë‹¤. ê° í–‰ì˜ ì°½ 프레임ì—서 마지막 í–‰ì— ëŒ€í•´ í‰ê°€ ëœ exprì˜ ê°’ì„ ë¦¬í„´í•©ë‹ˆë‹¤. + + + + (expr,N) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the row N of the window frame. Rows are numbered within the window frame starting from 1 in the order defined by the ORDER BY clause if one is present, or in arbitrary order otherwise. If there is no Nth row in the partition, then NULL is returned. + (expr,N)ì´ ë‚´ìž¥ ì°½ 함수는 집계 ì°½ 함수와 ë™ì¼í•œ ë°©ì‹ìœ¼ë¡œ ê° í–‰ì˜ ì°½ í”„ë ˆìž„ì„ ê³„ì‚°í•©ë‹ˆë‹¤. ì°½ í”„ë ˆìž„ì˜ N í–‰ì— ëŒ€í•´ í‰ê°€ ëœ exprì˜ ê°’ì„ ë¦¬í„´í•©ë‹ˆë‹¤. í–‰ì€ ORDER BY ì ˆì— ì •ì˜ ëœ ìˆœì„œëŒ€ë¡œ 1부터 시작하여 ì°½ 프레임 ë‚´ì—서 번호가 매겨집니다. 그렇지 않으면 ìž„ì˜ì˜ 순서로 번호가 매겨집니다. íŒŒí‹°ì…˜ì— N 번째 í–‰ì´ ì—†ìœ¼ë©´ NULLì´ ë°˜í™˜ë©ë‹ˆë‹¤. + + + + SqliteTableModel + + + reading rows + í–‰ì„ ì½ëŠ” 중 + + + + loading... + 로딩 중... + + + + References %1(%2) +Hold %3Shift and click to jump there + 참조 %1(%2) +%3Shift를 누른 ìƒíƒœì—서 ì´ë™í•˜ê³ ìž 하는 ê³³ì„ í´ë¦­í•˜ì„¸ìš” + + + + Error changing data: +%1 + ë°ì´í„° 수정 ì—러: +%1 + + + + retrieving list of columns + ì»¬ëŸ¼ì€ í•„ë“œë¡œ 표현합니다. + 필드 ëª©ë¡ ê°€ì ¸ì˜¤ê¸° + + + + Fetching data... + ë°ì´í„°ë¥¼ 가져오는 중입니다... + + + + + Cancel + 취소 + + + + TableBrowser + + + Browse Data + ë°ì´í„° íƒìƒ‰ + + + + &Table: + í…Œì´ë¸”(&T): + + + + Select a table to browse data + íƒìƒ‰í•˜ë ¤ëŠ” ë°ì´í„°ê°€ 있는 í…Œì´ë¸”ì„ ì„ íƒí•˜ì„¸ìš” + + + + Use this list to select a table to be displayed in the database view + 리스트ì—서 í…Œì´ë¸”ì„ ì„ íƒí•˜ë©´ ë°ì´í„°ë² ì´ìФ ë·°ì—서 ë³¼ 수 있습니다 + + + + This is the database table view. You can do the following actions: + - Start writing for editing inline the value. + - Double-click any record to edit its contents in the cell editor window. + - Alt+Del for deleting the cell content to NULL. + - Ctrl+" for duplicating the current record. + - Ctrl+' for copying the value from the cell above. + - Standard selection and copy/paste operations. + ì´ê²ƒì€ ë°ì´í„°ë² ì´ìŠ¤ì˜ í…Œì´ë¸” 뷰입니다. ë‹¤ìŒ ìž‘ì—…ì„ ìˆ˜í–‰í•  수 있습니다: + - ê°’ì„ ì¸ë¼ì¸ìœ¼ë¡œ 편집하기 위한 ìž‘ì„±ì„ ì‹œìž‘í•©ë‹ˆë‹¤. + - ì…€ 편집기 ì°½ì—서 ë‚´ìš©ì„ íŽ¸ì§‘í•˜ë ¤ë©´ 레코드를 ë”블 í´ë¦­í•©ë‹ˆë‹¤. + - ì…€ ë‚´ìš©ì„ NULL 값으로 삭제하려면 Alt+Del + - Ctrl + "는 현재 레코드를 복제합니다. + - ìœ„ì˜ ì…€ì—서 ê°’ì„ ë³µì‚¬í•˜ë ¤ë©´ Ctrl + ' + - 표준 ì„ íƒ ë° ë³µì‚¬ / 붙여넣기 작업. + + + + Text pattern to find considering the checks in this frame + ì´ í”„ë ˆìž„ 안ì—서 확ì¸í•˜ê¸° 위해 ê²€ìƒ‰í•˜ê³ ìž í•˜ëŠ” 문ìžì—´ 패턴 + + + + Find in table + í…Œì´ë¸”ì—서 찾기 + + + + Find previous match [Shift+F3] + ì´ì „ 찾기 [Shift+F3] + + + + Find previous match with wrapping + ëž©í•‘ëœ ì´ì „ ì¼ì¹˜ë‚´ì—­ 검색하기 + + + + Shift+F3 + + + + + Find next match [Enter, F3] + ë‹¤ìŒ ì°¾ê¸° [Enter, F3] + + + + Find next match with wrapping + 랩핑(Wrapping)으로 ë‹¤ìŒ ì°¾ê¸° + + + + F3 + + + + + The found pattern must match in letter case + ëŒ€ì†Œë¬¸ìž ì¼ì¹˜ 검색패턴 + + + + Case Sensitive + ëŒ€ì†Œë¬¸ìž ì¼ì¹˜ + + + + The found pattern must be a whole word + 온전한 ë‚±ë§ ì¼ì¹˜ 검색패턴 + + + + Whole Cell + ì „ì²´ ì…€ + + + + Interpret search pattern as a regular expression + 검색 íŒ¨í„´ì„ ì •ê·œ 표현ì‹ìœ¼ë¡œ í•´ì„ + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + <html><head/><body><p>ì„ íƒí•˜ë©´ 찾으려는 íŒ¨í„´ì´ UNIX ì •ê·œì‹ìœ¼ë¡œ í•´ì„ë©ë‹ˆë‹¤. <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>ì„ ì°¸ê³ í•˜ì„¸ìš”.</p></body></html> + + + + Regular Expression + ì •ê·œ í‘œí˜„ì‹ + + + + + Close Find Bar + 검색바 닫기 + + + + Text to replace with + 바꾸려는 í…스트 + + + + Replace with + ~로 바꾸기 + + + + Replace next match + ì¼ì¹˜í•˜ëŠ” ë‹¤ìŒ í…스트 바꾸기 + + + + + Replace + 바꾸기 + + + + Replace all matches + ì¼ì¹˜í•˜ëŠ” 모든 í…스트 바꾸기 + + + + Replace all + ëª¨ë‘ ë°”ê¾¸ê¸° + + + + <html><head/><body><p>Scroll to the beginning</p></body></html> + <html><head/><body><p>첫 페ì´ì§€ë¡œ 갑니다.</p></body></html> + + + + <html><head/><body><p>Clicking this button navigates to the beginning in the table view above.</p></body></html> + <html><head/><body><p>í…Œì´ë¸” ë·° 맨 위로 가기 위해서는 ì´ ë²„íŠ¼ì„ í´ë¦­í•˜ì„¸ìš”.</p></body></html> + + + + |< + |< + + + + Scroll one page upwards + 한 페ì´ì§€ 위로 스í¬ë¡¤í•©ë‹ˆë‹¤ + + + + <html><head/><body><p>Clicking this button navigates one page of records upwards in the table view above.</p></body></html> + <html><head/><body><p>위 í…Œì´ë¸” ë·°ì—서 레코드를 한 페ì´ì§€ 앞으로 가려면 ì´ ë²„íŠ¼ì„ í´ë¦­í•˜ì„¸ìš”.</p></body></html> + + + + < + < + + + + 0 - 0 of 0 + 0 - 0 of 0 + + + + Scroll one page downwards + 한 페ì´ì§€ 아래로 스í¬ë¡¤í•©ë‹ˆë‹¤ + + + + <html><head/><body><p>Clicking this button navigates one page of records downwards in the table view above.</p></body></html> + <html><head/><body><p>위 í…Œì´ë¸” ë·°ì—서 레코드를 한 페ì´ì§€ 뒤로 가려면 ì´ ë²„íŠ¼ì„ í´ë¦­í•˜ì„¸ìš”.</p></body></html> + + + + > + > + + + + Scroll to the end + 마지막 페ì´ì§€ë¡œ ì´ë™ + + + + <html><head/><body><p>Clicking this button navigates up to the end in the table view above.</p></body></html> + <html><head/><body><p>í…Œì´ë¸” ë·° 맨 아래로 가기 위해서는 ì´ ë²„íŠ¼ì„ í´ë¦­í•˜ì„¸ìš”.</p></body></html> + + + + >| + >| + + + + <html><head/><body><p>Click here to jump to the specified record</p></body></html> + <html><head/><body><p>특정 레코드로 ì´ë™í•˜ë ¤ë©´ 여기를 í´ë¦­í•˜ì„¸ìš”</p></body></html> + + + + <html><head/><body><p>This button is used to navigate to the record number specified in the Go to area.</p></body></html> + <html><head/><body><p>ì´ ë²„íŠ¼ì€ íŠ¹ì • ìœ„ì¹˜ì˜ ë ˆì½”ë“œ 넘버로 가기 위해서 사용합니다.</p></body></html> + + + + Go to: + 특정 레코드 행으로 가기: + + + + Enter record number to browse + ì°¾ì„ ë ˆì½”ë“œ í–‰ 번호를 입력하세요 + + + + Type a record number in this area and click the Go to: button to display the record in the database view + 레코드 í–‰ 번호를 입력하고 '특정 레코드 행으로 가기:' ë²„íŠ¼ì„ í´ë¦­í•˜ë©´ ë°ì´í„°ë² ì´ìФ ë·°ì— ë ˆì½”ë“œê°€ 표시ë©ë‹ˆë‹¤ + + + + 1 + 1 + + + + Show rowid column + ì»¬ëŸ¼ì˜ rowid 표시하기 + + + + Toggle the visibility of the rowid column + rowid ì»¬ëŸ¼ì„ í‘œì‹œí•˜ê±°ë‚˜ 숨ê¹ë‹ˆë‹¤ + + + + Unlock view editing + ë·° 수정 잠금 해제하기 + + + + This unlocks the current view for editing. However, you will need appropriate triggers for editing. + ìˆ˜ì •ì„ ìœ„í•˜ì—¬ 현재 ë·°ì˜ ìž ê¸ˆì„ í•´ì œí•©ë‹ˆë‹¤. 하지만 ìˆ˜ì •ì„ ìœ„í•´ì„œëŠ” ì ì ˆí•œ 트리거가 필요할 것입니다. + + + + Edit display format + 표시 í˜•ì‹ ë³€ê²½ + + + + Edit the display format of the data in this column + ì´ ì»¬ëŸ¼ì— ìžˆëŠ” ë°ì´í„°ì˜ 표시 형ì‹ì„ 수정합니다 + + + + + New Record + 새 레코드 + + + + + Insert a new record in the current table + 현재 í…Œì´ë¸”ì— ìƒˆ 레코드를 추가합니다 + + + + <html><head/><body><p>This button creates a new record in the database. Hold the mouse button to open a pop-up menu of different options:</p><ul><li><span style=" font-weight:600;">New Record</span>: insert a new record with default values in the database.</li><li><span style=" font-weight:600;">Insert Values...</span>: open a dialog for entering values before they are inserted in the database. This allows to enter values acomplishing the different constraints. This dialog is also open if the <span style=" font-weight:600;">New Record</span> option fails due to these constraints.</li></ul></body></html> + <html><head/><body><p>ì´ ë²„íŠ¼ì€ ë°ì´í„°ë² ì´ìŠ¤ì— ìƒˆ 레코드를 ìƒì„±í•©ë‹ˆë‹¤.</p><ul><li><span style=" font-weight:600;">새 레코드</span>: ë°ì´í„°ë² ì´ìŠ¤ì˜ ê¸°ë³¸ê°’ìœ¼ë¡œ 새 레코드를 ìƒì„±í•©ë‹ˆë‹¤.</li><li><span style=" font-weight:600;">ê°’ 삽입...</span>: ë°ì´í„°ë² ì´ìŠ¤ì— ê°’ì„ ì‚½ìž…í•˜ê¸° ì „ì— ê°’ì„ ìž…ë ¥í•  수 있는 대화ìƒìžë¥¼ 엽니다. ì´ë¥¼ 통해 다양한 제약 ì¡°ê±´ì— ì¶©ì¡±í•˜ëŠ” ê°’ì„ ìž…ë ¥í•  수 있습니다. ì´ëŸ¬í•œ 제약으로 ì¸í•´ <span style=" font-weight:600;">새 레코드</span> ì˜µì…˜ì´ ì‹¤íŒ¨í•œ 경우ì—ë„ ì´ ëŒ€í™”ìƒìžê°€ 열립니다.</li></ul></body></html> + + + + + Delete Record + 레코드 ì‚­ì œ + + + + Delete the current record + 현재 레코드 삭제하기 + + + + + This button deletes the record or records currently selected in the table + ì´ ë²„íŠ¼ì€ í…Œì´ë¸”ì—서 현재 ì„ íƒëœ 레코드를 삭제합니다 + + + + + Insert new record using default values in browsed table + 현재 íƒìƒ‰í•œ í…Œì´ë¸”ì˜ ê¸°ë³¸ê°’ì„ ì‚¬ìš©í•˜ì—¬ 새 레코드 삽입 + + + + Insert Values... + ê°’ 추가... + + + + + Open a dialog for inserting values in a new record + 새 ë ˆì½”ë“œì˜ ê°’ì„ ì‚½ìž…í•˜ê¸° 위한 대화ìƒìžë¥¼ 엽니다 + + + + Export to &CSV + CSV로 내보내기(&C) + + + + + Export the filtered data to CSV + 필러ë§ëœ ë°ì´í„°ë¥¼ CSV로 내보내기 + + + + This button exports the data of the browsed table as currently displayed (after filters, display formats and order column) as a CSV file. + ì´ ë²„íŠ¼ì€ í˜„ìž¬ 표시ëœëŒ€ë¡œ(í•„í„°, 표시 í˜•ì‹ ë° ì—´ 순서) íƒìƒ‰ëœ í…Œì´ë¸”ì˜ ë°ì´í„°ë¥¼ CSV 파ì¼ë¡œ 내보냅니다. + + + + Save as &view + 뷰로 저장하기(&V) + + + + + Save the current filter, sort column and display formats as a view + 현재 í•„í„°, ì—´ ì •ë ¬ ë° í‘œì‹œ 형ì‹ì„ 뷰로 저장 + + + + This button saves the current setting of the browsed table (filters, display formats and order column) as an SQL view that you can later browse or use in SQL statements. + ì´ ë²„íŠ¼ì€ ê²€ìƒ‰ëœ í…Œì´ë¸”ì˜ í˜„ìž¬ 설정(í•„í„°, 표시 í˜•ì‹ ë° ì—´ 순서)ì„ ë‚˜ì¤‘ì— SQL 문ì—서 검색하거나 사용할 수 있는 SQL 뷰로 저장합니다. + + + + Save Table As... + 다른 ì´ë¦„으로 í…Œì´ë¸” 저장... + + + + + Save the table as currently displayed + 현재 ì¶œë ¥ëœ í˜•íƒœë¡œ í…Œì´ë¸” 저장 + + + + <html><head/><body><p>This popup menu provides the following options applying to the currently browsed and filtered table:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Export to CSV: this option exports the data of the browsed table as currently displayed (after filters, display formats and order column) to a CSV file.</li><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Save as view: this option saves the current setting of the browsed table (filters, display formats and order column) as an SQL view that you can later browse or use in SQL statements.</li></ul></body></html> + <html><head/><body><p>ì´ íŒì—… 메뉴는 현재 íƒìƒ‰ ë° í•„í„°ë§ëœ í‘œì— ì ìš©ë˜ëŠ” ë‹¤ìŒ ì˜µì…˜ì„ ì œê³µí•©ë‹ˆë‹¤.</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">CSV로 내보내기: ì´ ì˜µì…˜ì€ í˜„ìž¬ 표시ëœëŒ€ë¡œ(í•„í„°, 표시 í˜•ì‹ ë° ì—´ 순서) íƒìƒ‰ëœ í…Œì´ë¸”ì˜ ë°ì´í„°ë¥¼ CSV 파ì¼ë¡œ 내보냅니다.</li><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">뷰로 저장: ì´ ì˜µì…˜ì€ ê²€ìƒ‰ëœ í…Œì´ë¸”ì˜ í˜„ìž¬ 설정(í•„í„°, 표시 í˜•ì‹ ë° ì—´ 순서)ì„ ë‚˜ì¤‘ì— SQL 문ì—서 검색하거나 사용할 수 있는 SQL 뷰로 저장합니다.</li></ul></body></html> + + + + Hide column(s) + 컬럼(들) 숨기기 + + + + Hide selected column(s) + ì„ íƒí•œ 컬럼(들)ì„ ìˆ¨ê¸°ê¸° + + + + Show all columns + ì „ì²´ 컬럼 보기 + + + + Show all columns that were hidden + 숨겨진 ì „ì²´ 컬럼 보기 + + + + + Set encoding + ì¸ì½”딩 지정하기 + + + + Change the encoding of the text in the table cells + í…Œì´ë¸” ì…€ ì•ˆì˜ í…스트 ì¸ì½”ë”©ì„ ë³€ê²½í•©ë‹ˆë‹¤ + + + + Set encoding for all tables + 모든 í…Œì´ë¸”ì˜ ì¸ì½”딩 지정하기 + + + + Change the default encoding assumed for all tables in the database + ë°ì´í„°ë² ì´ìФ ì•ˆì— ìžˆëŠ” 모든 í…Œì´ë¸”ì˜ ê¸°ë³¸ ì¸ì½”ë”©ì„ ë³€ê²½í•©ë‹ˆë‹¤ + + + + Clear Filters + í•„í„° 지우기 + + + + Clear all filters + 모든 í•„í„° 지우기 + + + + + This button clears all the filters set in the header input fields for the currently browsed table. + ì´ ë²„íŠ¼ì€ í˜„ìž¬ íƒìƒ‰ëœ í…Œì´ë¸”ì˜ í—¤ë” ìž…ë ¥ í•„ë“œì— ì„¤ì •ëœ ëª¨ë“  필터를 ì§€ì›ë‹ˆë‹¤. + + + + Clear Sorting + ì •ë ¬ 초기화 + + + + Reset the order of rows to the default + í–‰ 순서를 기본값으로 재설정 + + + + + This button clears the sorting columns specified for the currently browsed table and returns to the default order. + ì´ ë²„íŠ¼ì€ í˜„ìž¬ ê²€ìƒ‰ëœ í…Œì´ë¸”ì— ì§€ì •ëœ ì—´ ì •ë ¬ì„ ì§€ìš°ê³  기본 순서로 ëŒì•„갑니다. + + + + Print + ì¸ì‡„하기 + + + + Print currently browsed table data + 현재 íƒìƒ‰í•œ í…Œì´ë¸” ë°ì´í„°ë¥¼ ì¸ì‡„합니다 + + + + Print currently browsed table data. Print selection if more than one cell is selected. + 현재 찾아본 í…Œì´ë¸” ë°ì´í„°ë¥¼ ì¸ì‡„합니다. 둘 ì´ìƒì˜ ì…€ì´ ì„ íƒëœ 경우 ì„ íƒ í•­ëª©ë§Œ ì¸ì‡„합니다. + + + + Ctrl+P + + + + + Refresh + 새로고침 + + + + Refresh the data in the selected table + ì„ íƒí•œ í…Œì´ë¸”ì˜ ë°ì´í„° 새로고치기 + + + + This button refreshes the data in the currently selected table. + ì´ ë²„íŠ¼ì€ í˜„ìž¬ ì„ íƒëœ í…Œì´ë¸”ì˜ ë°ì´í„°ë¥¼ 새로고칩니다. + + + + F5 + + + + + Find in cells + ì…€ì—서 찾기 + + + + Open the find tool bar which allows you to search for values in the table view below. + 아래 표 보기ì—서 ê°’ì„ ê²€ìƒ‰í•  수 있는 ë„구 모ìŒì„ 엽니다. + + + + + Bold + 진하게 + + + + Ctrl+B + + + + + + Italic + 기울임 + + + + + Underline + 밑줄 + + + + Ctrl+U + + + + + + Align Right + 우측으로 ì •ë ¬ + + + + + Align Left + 좌측으로 ì •ë ¬ + + + + + Center Horizontally + ê°€ìš´ë° ì •ë ¬ + + + + + Justify + ì •ë ¬ + + + + + Edit Conditional Formats... + ì¡°ê±´ë¶€ ì„œì‹ íŽ¸ì§‘... + + + + Edit conditional formats for the current column + ì´ ì»¬ëŸ¼ì˜ ì¡°ê±´ë¶€ ì„œì‹ íŽ¸ì§‘ + + + + Clear Format + ì„œì‹ ì§€ìš°ê¸° + + + + Clear All Formats + 모든 í•„í„° 지우기 + + + + + Clear all cell formatting from selected cells and all conditional formats from selected columns + ì„ íƒí•œ ì…€ì˜ ëª¨ë“  ì…€ 서ì‹ê³¼ ì„ íƒí•œ ì—´ì˜ ëª¨ë“  ì¡°ê±´ë¶€ ì„œì‹ ì§€ìš°ê¸° + + + + + Font Color + 글ìžìƒ‰ + + + + + Background Color + 배경색 + + + + Toggle Format Toolbar + ì„œì‹ íˆ´ë°” 토글 + + + + Show/hide format toolbar + ì„œì‹ íˆ´ë°” 표시/숨기기 + + + + + This button shows or hides the formatting toolbar of the Data Browser + ì´ ë²„íŠ¼ì€ ë°ì´í„° 브ë¼ìš°ì €ì˜ ì„œì‹ ë„구 모ìŒì„ 표시하거나 숨ê¹ë‹ˆë‹¤ + + + + Select column + 컬럼 ì„ íƒ + + + + Ctrl+Space + + + + + Replace text in cells + ì…€ì˜ í…스트 바꾸기 + + + + Filter in any column + 모든 ì—´ì—서 í•„í„°ë§ + + + + Ctrl+R + + + + + %n row(s) + + %n ì—´(들) + + + + + , %n column(s) + + , %n 컬럼(들) + + + + + . Sum: %1; Average: %2; Min: %3; Max: %4 + . 합계: %1, í‰ê· : %2, 최소값: %3, 최대값: %4 + + + + Conditional formats for "%1" + "%1"ì— ëŒ€í•œ ì¡°ê±´ë¶€ ì„œì‹ + + + + determining row count... + í–‰ 개수 ê²°ì • 중... + + + + %1 - %2 of >= %3 + %1 - %2 of >= %3 + + + + %1 - %2 of %3 + %1 - %2 of %3 + + + + Please enter a pseudo-primary key in order to enable editing on this view. This should be the name of a unique column in the view. + ì´ ë·°ì—서 ìˆ˜ì •ì„ í™œì„±í™”í•˜ê¸° 위하여 pseudo-primary key를 입력하시기 ë°”ëžë‹ˆë‹¤. ì´ê²ƒì€ ë·°ì—서 유ì¼í•œ ì´ë¦„ì´ì–´ì•¼ 합니다. + + + + Delete Records + 레코드 ì‚­ì œ + + + + Duplicate records + 레코드 복제하기 + + + + Duplicate record + 레코드 복제하기 + + + + Ctrl+" + + + + + Adjust rows to contents + ë‚´ìš©ì— ë§žê²Œ í–‰ í¬ê¸° ì¡°ì ˆ + + + + Error deleting record: +%1 + 레코드 추가 ì—러: +%1 + + + + Please select a record first + 레코드를 먼저 ì„ íƒí•˜ì„¸ìš” + + + + There is no filter set for this table. View will not be created. + ì´ í…Œì´ë¸”ì„ ìœ„í•œ í•„í„°ê°€ 설정ë˜ì§€ 않았습니다. ë·°ê°€ ìƒì„±ë˜ì§€ 않습니다. + + + + Please choose a new encoding for all tables. + 모든 í…Œì´ë¸”ì— ì„¤ì •í•  새 ì¸ì½”ë”©ì„ ì„ íƒí•˜ì„¸ìš”. + + + + Please choose a new encoding for this table. + ì´ í…Œì´ë¸”ì— ì ìš©í•  새 ì¸ì½”ë”©ì„ ì„ íƒí•˜ì„¸ìš”. + + + + %1 +Leave the field empty for using the database encoding. + %1 +ë°ì´í„°ë² ì´ìФ ì¸ì½”ë”©ì„ ì‚¬ìš©í•˜ê¸° 위해 필드를 비워둡니다. + + + + This encoding is either not valid or not supported. + ì´ ì¸ì½”ë”©ì€ ì˜¬ë°”ë¥´ì§€ 않거나 ì§€ì›ë˜ì§€ 않습니다. + + + + %1 replacement(s) made. + %1ê°œì˜ êµì²´ê°€ ì´ë£¨ì–´ì¡ŒìŠµë‹ˆë‹¤. + + + + VacuumDialog + + + Compact Database + ë°ì´í„°ë² ì´ìФ í¬ê¸° 줄ì´ê¸°(Vacuum) + + + + Warning: Compacting the database will commit all of your changes. + 주ì˜: ë°ì´í„°ë² ì´ìФ í¬ê¸° 줄ì´ê¸°ë¥¼ 하면 저장ë˜ì§€ ì•Šì€ ëª¨ë“  ìˆ˜ì •ì‚¬í•­ì´ ë°˜ì˜ë©ë‹ˆë‹¤. + + + + Please select the databases to co&mpact: + í¬ê¸°ë¥¼ ì¤„ì¼ ë°ì´í„°ë² ì´ìŠ¤ë¥¼ ì„ íƒí•˜ì„¸ìš”(&M): + + + diff --git a/ConfigFiles/translations/sqlb_nl.qm b/ConfigFiles/translations/sqlb_nl.qm new file mode 100644 index 0000000000000000000000000000000000000000..928c3c6ed662eb207c0fbb1707ad48c7abc3c9a4 GIT binary patch literal 253683 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 literal 0 HcmV?d00001 diff --git a/ConfigFiles/translations/sqlb_nl.ts b/ConfigFiles/translations/sqlb_nl.ts new file mode 100644 index 0000000..9e6d4ed --- /dev/null +++ b/ConfigFiles/translations/sqlb_nl.ts @@ -0,0 +1,7076 @@ + + + + + AboutDialog + + + About DB Browser for SQLite + Over DB-browser voor SQLite + + + + Version + Versie + + + + <html><head/><body><p>DB Browser for SQLite is an open source, freeware visual tool used to create, design and edit SQLite database files.</p><p>It is bi-licensed under the Mozilla Public License Version 2, as well as the GNU General Public License Version 3 or later. You can modify or redistribute it under the conditions of these licenses.</p><p>See <a href="http://www.gnu.org/licenses/gpl.html">http://www.gnu.org/licenses/gpl.html</a> and <a href="https://www.mozilla.org/MPL/2.0/index.txt">https://www.mozilla.org/MPL/2.0/index.txt</a> for details.</p><p>For more information on this program please visit our website at: <a href="http://sqlitebrowser.org">http://sqlitebrowser.org</a></p><p><span style=" font-size:small;">This software uses the GPL/LGPL Qt Toolkit from </span><a href="http://qt-project.org/"><span style=" font-size:small;">http://qt-project.org/</span></a><span style=" font-size:small;"><br/>See </span><a href="http://qt-project.org/doc/qt-5/licensing.html"><span style=" font-size:small;">http://qt-project.org/doc/qt-5/licensing.html</span></a><span style=" font-size:small;"> for licensing terms and information.</span></p><p><span style=" font-size:small;">It also uses the Silk icon set by Mark James licensed under a Creative Commons Attribution 2.5 and 3.0 license.<br/>See </span><a href="http://www.famfamfam.com/lab/icons/silk/"><span style=" font-size:small;">http://www.famfamfam.com/lab/icons/silk/</span></a><span style=" font-size:small;"> for details.</span></p></body></html> + <html><head/><body><p>DB-browser voor SQLite is een open source en freeware visuele tool om SQLite databasebestanden mee te creëren, te ontwerpen en te bewerken.</p><p>Het is uitgebracht onder een duolicentie: Mozilla Public License versie 2 en GNU General Public License versie 3 of hoger. Je mag het aanpassen en herdistribueren onder de voorwaarden van deze licenties.</p><p>Zie <a href="http://www.gnu.org/licenses/gpl.html">http://www.gnu.org/licenses/gpl.html</a> en <a href="https://www.mozilla.org/MPL/2.0/index.txt">https://www.mozilla.org/MPL/2.0/index.txt</a> voor de details.</p><p>Bezoek onze website op <a href="http://sqlitebrowser.org">http://sqlitebrowser.org</a> voor meer informatie over dit programma.</p><p><span style=" font-size:small;">Deze software maakt gebruik van de GPL/LGPL Qt Toolkit van </span><a href="http://qt-project.org/"><span style=" font-size:small;">http://qt-project.org/</span></a><span style=" font-size:small;"><br/>Zie </span><a href="http://qt-project.org/doc/qt-5/licensing.html"><span style=" font-size:small;">http://qt-project.org/doc/qt-5/licensing.html</span></a><span style=" font-size:small;"> voor de licentievoorwaarden en informatie.</span></p><p><span style=" font-size:small;">Het maakt tevens gebruik van de Silk iconenset van Mark James, uitgebracht onder de Creative Commons Attribution 2.5 en 3.0 licenties.<br/>Zie </span><a href="http://www.famfamfam.com/lab/icons/silk/"><span style=" font-size:small;">http://www.famfamfam.com/lab/icons/silk/</span></a><span style=" font-size:small;"> voor de details.</span></p></body></html> + + + + AddRecordDialog + + + Add New Record + Nieuw record toevoegen + + + + Enter values for the new record considering constraints. Fields in bold are mandatory. + Voer waarden in voor het nieuwe record, rekening houdend met beperkingen. Vette velden zijn verplicht. + + + + In the Value column you can specify the value for the field identified in the Name column. The Type column indicates the type of the field. Default values are displayed in the same style as NULL values. + In de Waarde-kolom kun je de waarde opgegeven voor het veld geïdentificeerd in de Naam-kolom. De Type-kolom geeft het type van het veld aan. Standaardwaarden worden in dezelfde stijl getoond als NULL-waarden. + + + + Name + Naam + + + + Type + Type + + + + Value + Waarde + + + + Values to insert. Pre-filled default values are inserted automatically unless they are changed. + In te voeren waarden. Vooringevulde standaardwaarden worden automatisch ingevoerd, tenzij ze aanpast worden. + + + + When you edit the values in the upper frame, the SQL query for inserting this new record is shown here. You can edit manually the query before saving. + Wanneer je waarden in het kader hierboven bewerkt, dan wordt de SQL-opdracht voor het invoegen van een nieuw record hier getoond. Je kunt de opdracht dan nog bewerken, voordat je deze opslaat. + + + + <html><head/><body><p><span style=" font-weight:600;">Save</span> will submit the shown SQL statement to the database for inserting the new record.</p><p><span style=" font-weight:600;">Restore Defaults</span> will restore the initial values in the <span style=" font-weight:600;">Value</span> column.</p><p><span style=" font-weight:600;">Cancel</span> will close this dialog without executing the query.</p></body></html> + <html><head/><body><p><span style=" font-weight:600;">Opslaan</span> verstuurt de SQL-instructie voor het invoeren van een nieuw record naar de database.</p><p><span style=" font-weight:600;">Standaardwaarden herstellen</span> herstelt de initiële waarden van de <span style=" font-weight:600;">Value</span>-kolom.</p><p><span style=" font-weight:600;">Annuleren</span> sluit dit venster zonder de opdracht uit te voeren.</p></body></html> + + + + Auto-increment + + Automatisch ophogen + + + + + Unique constraint + + Uniciteitsbeperking + + + + + Check constraint: %1 + + Controlebeperking: %1 + + + + + Foreign key: %1 + + Vreemde sleutel: %1 + + + + + Default value: %1 + + Standaardwaarde: %1 + + + + + Error adding record. Message from database engine: + +%1 + Fout bij toevoegen record. Melding van de database: + +%1 + + + + Are you sure you want to restore all the entered values to their defaults? + Weet je zeker dat je alle ingevoerde waarden wilt herstellen naar hun standaardwaarden? + + + + Application + + + Usage: %1 [options] [<database>|<project>] + + Gebruik: %1 [opties] [<database>|<project>] + + + + + Possible command line arguments: + Mogelijke opdrachtregelargumenten: + + + + -h, --help Show command line options + -h, --help Toon opdrachtregelargumenten + + + + -q, --quit Exit application after running scripts + -q, --quit Sluit applicatie nadat scripts uitgevoerd zijn + + + + -s, --sql <file> Execute this SQL file after opening the DB + -s, --sql <bestand> Voer dit SQL-bestand uit nadat de database geopend is + + + + -t, --table <table> Browse this table after opening the DB + -t, --table <tabel> Blader door deze tabel nadat de database geopend is + + + + -R, --read-only Open database in read-only mode + -R, --read-only Open database in alleen-lezenmodus + + + + -o, --option <group>/<setting>=<value> + -o, --option <groep>/<instelling>=<waarde> + + + + Run application with this setting temporarily set to value + Applicatie uitvoeren met tijdelijke waarde voor deze instelling + + + + -O, --save-option <group>/<setting>=<value> + -O, --save-option <groep>/<instelling>=<waarde> + + + + Run application saving this value for this setting + Applicatie uitvoeren met waarde voor deze instelling permanent opgeslagen + + + + -v, --version Display the current version + -v, --version Toon de huidige versie + + + + <database> Open this SQLite database + <database> Open deze SQLite-database + + + + <project> Open this project file (*.sqbpro) + <project> Open dit projectbestand (*.sqbpro) + + + + The -s/--sql option requires an argument + De -s/--sql optie vereist een argument + + + + The file %1 does not exist + Het bestand %1 bestaat niet + + + + The -t/--table option requires an argument + De -t/--table optie vereist een argument + + + + The -o/--option and -O/--save-option options require an argument in the form group/setting=value + De -o/--option and -O/--save-option opties vereisen een argument in de vorm van groep/instelling=waarde + + + + Invalid option/non-existant file: %1 + Ongeldige optie of niet bestaand bestand: %1 + + + + SQLite Version + SQLite-versie + + + + SQLCipher Version %1 (based on SQLite %2) + SQLCipher-versie %1 (gebaseerd op SQLite %2) + + + + DB Browser for SQLite Version %1. + DB-browser voor SQLite versie %1. + + + + Built for %1, running on %2 + Gebouwd voor %1, draaiend op %2 + + + + Qt Version %1 + Qt-versie %1 + + + + CipherDialog + + + SQLCipher encryption + SQLCipher encryptie + + + + &Password + &Wachtwoord + + + + &Reenter password + Wa&chtwoord herhalen + + + + Passphrase + Toegangsfrase + + + + Raw key + Onbewerkte sleutel + + + + Encr&yption settings + Encr&yptie-instellingen + + + + SQLCipher &3 defaults + SQLCipher &3 standaardwaarden + + + + SQLCipher &4 defaults + SQLCipher &4 standaardwaarden + + + + Custo&m + &Aangepast + + + + Page si&ze + &Paginagrootte + + + + &KDF iterations + KDF &iteraties + + + + HMAC algorithm + &HMAC-algoritme + + + + KDF algorithm + &KDF-algoritme + + + + Plaintext Header Size + Platte-&tekstheadergrootte + + + + Please set a key to encrypt the database. +Note that if you change any of the other, optional, settings you'll need to re-enter them as well every time you open the database file. +Leave the password fields empty to disable the encryption. +The encryption process might take some time and you should have a backup copy of your database! Unsaved changes are applied before modifying the encryption. + Geef een sleutel op om de database mee te versleutelen. +Wees je ervan bewust dat als je een van de andere, optionele, opties wijzigt, je die iedere keer opnieuw moet invoeren als je het databasebestand wilt openen. +Laat wachtwoordvelden leeg om de versleuteling uit te schakelen. +Versleuteling kan wat tijd in beslag nemen en je doet er tevens verstandig aan een backup van je database te hebben! Onopgeslagen wijzigingen worden toegepast voordat de versleuteling aangepast wordt. + + + + Please enter the key used to encrypt the database. +If any of the other settings were altered for this database file you need to provide this information as well. + Voer de sleutel in waarmee database is versleuteld. +Indien enige andere opties voor dit databasebestand gewijzigd waren dan dien je die gegevens hier nu ook opnieuw in te voeren. + + + + ColumnDisplayFormatDialog + + + Choose display format + Kies een opmaak + + + + Display format + Opmaak + + + + Choose a display format for the column '%1' which is applied to each value prior to showing it. + Kies een opmaak voor de kolom '%1' die op iedere waarde wordt toegepast voordat deze getoond wordt. + + + + Default + Standaard + + + + Decimal number + Decimaal getal + + + + Exponent notation + Wetenschappelijke E-notatie + + + + Hex blob + Hexadecimale blob + + + + Hex number + Hexadecimaal getal + + + + Octal number + Octaal getal + + + + Round number + Afgerond getal + + + + Apple NSDate to date + Apple NSDate naar datum + + + + Java epoch (milliseconds) to date + Java-epoch (milliseconden) naar datum + + + + .NET DateTime.Ticks to date + .NET DateTime.Ticks naar datum + + + + Julian day to date + Juliaanse dag naar datum + + + + Unix epoch to date + Unix-epoch naar datum + + + + Unix epoch to local time + Unix-epoch naar lokale tijd + + + + Windows DATE to date + Windows DATE naar datum + + + + Date as dd/mm/yyyy + Datum als dd/mm/jjjj + + + + Lower case + onderkast + + + + Upper case + BOVENKAST + + + + Custom + Aangepast + + + + Custom display format must contain a function call applied to %1 + Aangepaste opmaak moet bestaan uit een functie-aanroep die toegepast wordt op %1 + + + + Error in custom display format. Message from database engine: + +%1 + Fout in de aangepaste opmaak. Melding van de database: + +%1 + + + + Custom display format must return only one column but it returned %1. + Aangepaste opmaak moet slechts één kolom retourneren, maar retourneerde er %1. + + + + CondFormatManager + + + Conditional Format Manager + Voorwaardelijke-opmaakbeheerder + + + + This dialog allows creating and editing conditional formats. Each cell style will be selected by the first accomplished condition for that cell data. Conditional formats can be moved up and down, where those at higher rows take precedence over those at lower. Syntax for conditions is the same as for filters and an empty condition applies to all values. + Dit dialoogvenster stelt je in staat om voorwaardelijke opmaakregels te creëren en te bewerken. Iedere celstijl zal worden geselecteerd op basis van de eerst vervulde voorwaarde voor diens celwaarde. De voorwaardelijke opmaakregels kunnen omhoog en omlaag verplaatst worden. Hoger geplaatste regels hebben hogere prioriteit. De syntaxis voor de voorwaarden in dezelfde als voor filters en een lege voorwaarde wordt toegepast op alle waarden. + + + + Add new conditional format + Nieuwe voorwaardelijke-opmaakregel toevoegen + + + + &Add + &Toevoegen + + + + Remove selected conditional format + Verwijder de geselecteerde voorwaardelijke-opmaakregel + + + + &Remove + &Verwijderen + + + + Move selected conditional format up + Verplaats de geselecteerde voorwaardelijke-opmaakregel omhoog + + + + Move &up + Om&hoog verplaatsen + + + + Move selected conditional format down + Verplaats de geselecteerde voorwaardelijke-opmaakregel omlaag + + + + Move &down + Om&laag verplaatsen + + + + Foreground + Voorgrond + + + + Text color + Tekstkleur + + + + Background + Achtergrond + + + + Background color + Achtergrondkleur + + + + Font + Lettertype + + + + Size + Grootte + + + + Bold + Vet + + + + Italic + Cursief + + + + Underline + Onderstreept + + + + Alignment + Uitlijning + + + + Condition + Voorwaarde + + + + + Click to select color + Klik om een kleur te selecteren + + + + Are you sure you want to clear all the conditional formats of this field? + Weet je zeker dat je alle voorwaardelijke-opmaakregels voor dit veld wilt verwijderen? + + + + DBBrowserDB + + + This database has already been attached. Its schema name is '%1'. + Deze database is al gekoppeld. Diens schemanaam is '%1'. + + + + Please specify the database name under which you want to access the attached database + Geef de databasenaam zoals je de gekoppelde database wilt benaderen + + + + Invalid file format + Ongeldig bestandsformaat + + + + Do you really want to close this temporary database? All data will be lost. + Weet je zeker dat je deze tijdelijke database wilt sluiten? Alle gegevens zullen verloren gaan. + + + + Do you want to save the changes made to the database file %1? + Wil je de wijzigingen opslaan die je de gemaakt hebt voor database %1? + + + + Database didn't close correctly, probably still busy + Database is niet goed afgesloten; waarschijnlijk nog steeds bezig + + + + The database is currently busy: + De database is momenteel bezig: + + + + Do you want to abort that other operation? + Wil je die andere handeling afbreken? + + + + Exporting database to SQL file... + Database wordt geëxporteerd naar SQL-bestand... + + + + + Cancel + Annuleren + + + + + No database file opened + Er is geen databasebestand open + + + + Executing SQL... + SQL wordt uitgevoerd... + + + + Action cancelled. + Handeling geannuleerd. + + + + + Error in statement #%1: %2. +Aborting execution%3. + Fout in instructie #%1: %2. +Uitvoering wordt afgebroken%3. + + + + + and rolling back + en teruggedraaid + + + + didn't receive any output from %1 + Geen uitvoer ontvangen van %1 + + + + could not execute command: %1 + kon opdracht niet uitvoeren: %1 + + + + Cannot delete this object + Kan dit object niet verwijderen + + + + Cannot set data on this object + Kan de gegevens niet toepassen op dit object + + + + + A table with the name '%1' already exists in schema '%2'. + Er bestaat al een tabel met de naam '%1' in schema '%2'. + + + + No table with name '%1' exists in schema '%2'. + Er bestaat geen tabel met de naam '%1' in schema '%2'. + + + + + Cannot find column %1. + Kan kolom %1 niet vinden. + + + + Creating savepoint failed. DB says: %1 + Het maken van een herstelpunt is niet gelukt. Melding van de database: %1 + + + + Renaming the column failed. DB says: +%1 + Het hernoemen van de kolom is niet gelukt. Melding van de database: %1 + + + + + Releasing savepoint failed. DB says: %1 + Het opheffen van een herstelpunt is niet gelukt. Melding van de database: %1 + + + + Creating new table failed. DB says: %1 + Het maken van de nieuwe tabel is niet gelukt. Melding van de database: %1 + + + + Copying data to new table failed. DB says: +%1 + Het kopiëren van de gegevens naar de nieuwe tabel is niet gelukt. Melding van de database: %1 + + + + Deleting old table failed. DB says: %1 + Het verwijderen van de oude tabel is niet gelukt. Melding van de database: %1 + + + + Restoring some of the objects associated with this table failed. This is most likely because some column names changed. Here's the SQL statement which you might want to fix and execute manually: + + + Fout bij het het herstellen van sommige objecten die met deze tabel geassocieerd zijn. Dit gebeurde hoogstwaarschijnlijk omdat kolomnamen gewijzigd zijn. Dit is de SQL-instructie die je wellicht aan wilt passen om het nogmaals mee te proberen: + + + + + + Error renaming table '%1' to '%2'. +Message from database engine: +%3 + Fout bij het hernoemen van tabel '%1' naar '%2'. +Melding van de database: +%3 + + + + could not get list of db objects: %1 + Fout bij het verkrijgen van lijst met database-objecten: %1 + + + + could not get list of databases: %1 + Fout bij het verkrijgen van lijst met databases: %1 + + + + Error setting pragma %1 to %2: %3 + Fout bij het omzetten van pragma %1 naar %2: %3 + + + + File not found. + Bestand niet gevonden. + + + + Error loading extension: %1 + Fout bij het laden van extensie: %1 + + + + could not get column information + Fout bij het verkrijgen van kolominformatie + + + + DbStructureModel + + + Name + Naam + + + + Object + Object + + + + Type + Type + + + + Schema + Schema + + + + Database + Database + + + + Browsables + Doorbladerbare + + + + All + Alle + + + + Temporary + Tijdelijke + + + + Tables (%1) + Tabellen (%1) + + + + Indices (%1) + Indices (%1) + + + + Views (%1) + Views (%1) + + + + Triggers (%1) + Triggers (%1) + + + + EditDialog + + + Edit database cell + Databasecel bewerken + + + + This area displays information about the data present in this database cell + Dit gebied toont informatie over de aanwezige gegevens in de databasecel + + + + Mode: + Modus: + + + + This is the list of supported modes for the cell editor. Choose a mode for viewing or editing the data of the current cell. + Dit is de lijst van ondersteunde modi voor de celbewerker. Kies een modus om de gegevens van de huidige cel te bekijken of te bewerken. + + + + Text + Tekst + + + + RTL Text + Rechts-naar-linkstekst + + + + Binary + Binair + + + + + Image + Afbeelding + + + + JSON + JSON + + + + XML + XML + + + + + Automatically adjust the editor mode to the loaded data type + De bewerker automatisch aanpassen aan het geladen gegevenstype + + + + This checkable button enables or disables the automatic switching of the editor mode. When a new cell is selected or new data is imported and the automatic switching is enabled, the mode adjusts to the detected data type. You can then change the editor mode manually. If you want to keep this manually switched mode while moving through the cells, switch the button off. + Deze aanvinkbare knop zet het automatisch wisselen van de bewerkingsmodus aan of uit. Wanneer een nieuwe cel wordt geselecteerd of nieuwe gegevens worden geïmporteerd en automatisch wisselen aangevinkt is, dan verandert de modus naar het gedetecteerde gegevenstype. Je kunt de bewerkingsmodus dan alsnog handmatig aanpassen. Vink de knop uit als je handmatig wisselen wilt gebruiken tijdens het navigeren door de cellen. + + + + Auto-switch + Automatisch wisselen + + + + The text editor modes let you edit plain text, as well as JSON or XML data with syntax highlighting, automatic formatting and validation before saving. + +Errors are indicated with a red squiggle underline. + De tekstbewerkingsmodi stellen je in staat om platte tekst te bewerken, maar ook JSON en XML met syntaxiskleuring en automatisch formatteren en validatie voordat je het opslaat. + +Fouten worden aangegeven met rode kronkelige onderstreping. + + + + This Qt editor is used for right-to-left scripts, which are not supported by the default Text editor. The presence of right-to-left characters is detected and this editor mode is automatically selected. + Deze Qt-bewerker wordt voor rechts-naar-linksteksten gebruikt, omdat dit niet ondersteund wordt door de standaard tekstbewerker. Er werden rechts-naar-linkstekens gedetecteerd en daarom is deze bewerkingsmodus automatisch geselecteerd. + + + + Type of data currently in cell + Het gegevenstype van de huidige gegevens in de cel + + + + Size of data currently in table + De grootte van de huidige gegevens in de tabel + + + + Apply data to cell + Gegevens toepassen op cel + + + + This button saves the changes performed in the cell editor to the database cell. + Deze knop slaat de wijzigingen die aangebracht zijn in de celbewerker op in de cel. + + + + Apply + Toepassen + + + + + Print... + Afdrukken... + + + + Open preview dialog for printing displayed image + Open voorvertoningsdialoogvenster om getoonde afbeelding af te drukken + + + + Open preview dialog for printing displayed text + Open voorvertoningsdialoogvenster om getoonde tekst af te drukken + + + + Open preview dialog for printing the data currently stored in the cell + Opent een voorvertoningsdialoogvenster voor het afdrukken van de de huidige gegevens in de cel + + + + + Ctrl+P + + + + + Copy Hex and ASCII + HEX en ASCII kopiëren + + + + Copy selected hexadecimal and ASCII columns to the clipboard + De geselecteerde hexadecimale en ASCII kolommen kopiëren naar het klembord + + + + Ctrl+Shift+C + + + + + Autoformat + Auto-opmaak + + + + Auto-format: pretty print on loading, compact on saving. + Auto-opmaak: mooi opmaken bij het laden, comprimeren bij het opslaan. + + + + When enabled, the auto-format feature formats the data on loading, breaking the text in lines and indenting it for maximum readability. On data saving, the auto-format feature compacts the data removing end of lines, and unnecessary whitespace. + Indien geselecteerd zal de auto-opmaakfunctie de gegevens bij het laden mooi opmaken, door de tekst op te delen in regels en deze dan in te laten springen. Bij het opslaan zal de auto-opmaakfunctie de gegevens comprimeren door regeleinden en onnodige witruimte te verwijderen. + + + + &Export... + &Exporteren... + + + + Export to file + Naar bestand exporteren + + + + Opens a file dialog used to export the contents of this database cell to a file. + Opent een bestandsdialoogvenster om de inhoud van deze databasecel naar een bestand te exporteren. + + + + + &Import... + &Importeren... + + + + + Import from file + Uit bestand importeren + + + + + Opens a file dialog used to import any kind of data to this database cell. + Opent een bestandsdialoogvenster om gegevens van een willekeurig gegevenstype naar deze databasecel te importeren. + + + + Set as &NULL + Omzetten naar &NULL + + + + Erases the contents of the cell + Wist de inhoud van de cel + + + + Word Wrap + Woordterugloop + + + + Wrap lines on word boundaries + Past regelterugloop toe op woordbegrenzingen + + + + + Open in default application or browser + In standaard applicatie of browser openen + + + + Open in application + In applicatie openen + + + + The value is interpreted as a file or URL and opened in the default application or web browser. + De waarde wordt geïnterpreteerd als bestand of URL en wordt geopend in de standaard applicatie of webbrower. + + + + Save file reference... + Bestandsreferentie opslaan... + + + + Save reference to file + Referentie in bestand opslaan + + + + + Open in external application + In externe applicatie openen + + + + + Image data can't be viewed in this mode. + Afbeeldingsgegevens kunnen niet worden getoond in deze modus. + + + + + Try switching to Image or Binary mode. + Probeer te wisselen naar Afbeeldings- of Binaire modus. + + + + + Binary data can't be viewed in this mode. + Binaire gegevens kunnen niet worden getoond in deze modus. + + + + + Try switching to Binary mode. + Probeer te wisselen naar Binaire modus. + + + + + Image files (%1) + Afbeeldingbestanden (%1) + + + + Choose a file to import + Kies een bestand om te importeren + + + + %1 Image + %1 Afbeelding + + + + Binary files (*.bin) + Binaire bestanden (*.bin) + + + + Choose a filename to export data + Kies een bestandsnaam om naar te exporteren + + + + Invalid data for this mode + Ongeldige gegevens voor deze modus + + + + The cell contains invalid %1 data. Reason: %2. Do you really want to apply it to the cell? + De cel bevat ongeldige %1 gegevens. Reden: %2. Weet je zeker dat je het op de cel wilt toepassen? + + + + + Type of data currently in cell: Text / Numeric + Gegevenstype van de huidige gegevens in de cel: tekst / numeriek + + + + + + %n character(s) + + %n teken + %n tekens + + + + + Type of data currently in cell: %1 Image + Gegevenstype van de huidige gegevens in de cel: %1 afbeelding + + + + %1x%2 pixel(s) + %1x%2 pixel(s) + + + + Type of data currently in cell: NULL + Gegevenstype van de huidige gegevens in de cel: NULL + + + + + %n byte(s) + + %n byte + %n bytes + + + + + Type of data currently in cell: Valid JSON + Gegevenstype van de huidige gegevens in de cel: geldige JSON + + + + Type of data currently in cell: Binary + Gegevenstype van de huidige gegevens in de cel: binair + + + + Couldn't save file: %1. + Kon het bestand niet opslaan: %1. + + + + The data has been saved to a temporary file and has been opened with the default application. You can now edit the file and, when you are ready, apply the saved new data to the cell editor or cancel any changes. + De gegevens zijn in een tijdelijk bestand opgeslagen en is geopend in de standaard applicatie. Je kunt het bestand nu bewerken en, wanneer je klaar bent, de opgeslagen nieuwe gegevens toepassen op de cel of de wijzingen annuleren. + + + + EditIndexDialog + + + Edit Index Schema + Schema-index bewerken + + + + &Name + &Naam + + + + &Table + &Tabel + + + + &Unique + &Uniek + + + + For restricting the index to only a part of the table you can specify a WHERE clause here that selects the part of the table that should be indexed + Om de index slechts op een gedeelte van de tabel toe te passen kun je hier een WHERE clausule opgeven die slechts dát gedeelte van de tabel selecteert dat geïndexeerd dient te worden + + + + Partial inde&x clause + Gedeeltelijke inde&x-clausule + + + + Colu&mns + &Kolommen + + + + Table column + Tabelkolom + + + + Type + Type + + + + Add a new expression column to the index. Expression columns contain SQL expression rather than column names. + Voeg een nieuwe expressiekolom toe aan de index. Expressiekolommen bevatten SQL-expressies in plaats van kolomnamen. + + + + Index column + Indexkolom + + + + Order + Sortering + + + + Deleting the old index failed: +%1 + Het verwijderen van de oude index is mislukt: +%1 + + + + Creating the index failed: +%1 + Het maken van de index is mislukt: +%1 + + + + EditTableDialog + + + Edit table definition + Tabeldefinitie bewerken + + + + Table + Tabel + + + + Advanced + Geavanceerd + + + + Database sche&ma + Database&schema + + + + Without Rowid + Zonder &rowid + + + + Make this a 'WITHOUT rowid' table. Setting this flag requires a field of type INTEGER with the primary key flag set and the auto increment flag unset. + Maak van deze tabel een 'WITHOUT rowid'-tabel. Om deze optie toe te kunnen passen is een primair sleutelveld van het type INTEGER nodig, waarop geen automatische ophoging wordt toegepast. + + + + Fields + Velden + + + + Add + Toevoegen + + + + Remove + Verwijderen + + + + Move to top + Bovenaan plaatsen + + + + Move up + Omhoog verplaatsen + + + + Move down + Omlaag verplaatsen + + + + Move to bottom + Onderaan plaatsen + + + + + Name + Naam + + + + + Type + Type + + + + NN + NN + + + + Not null + Niet NULL + + + + PK + PS + + + + Primary key + Primaire sleutel + + + + AI + AO + + + + Autoincrement + Automatisch ophogen + + + + U + U + + + + + + Unique + Uniek + + + + Default + Standaard + + + + Default value + Standaardwaarde + + + + + + Check + Controle + + + + Check constraint + Controlebeperking + + + + Collation + Collatie + + + + + + Foreign Key + Vreemde sleutel + + + + Constraints + Beperkingen + + + + Add constraint + Beperking toevoegen + + + + Remove constraint + Beperking verwijderen + + + + Columns + Kolommen + + + + SQL + SQL + + + + <html><head/><body><p><span style=" font-weight:600; color:#ff0000;">Warning: </span>There is something with this table definition that our parser doesn't fully understand. Modifying and saving this table might result in problems.</p></body></html> + <html><head/><body><p><span style=" font-weight:600; color:#ff0000;">Waarschuwing: </span>Er is iets aan deze tabeldefinitie dat onze parser niet volledig begrijpt. Het aanpassen en opslaan van deze tabel kan problemen opleveren.</p></body></html> + + + + + Primary Key + Primaire sleutel + + + + Add a primary key constraint + Voeg een primaire sleutelbeperking toe + + + + Add a foreign key constraint + Voeg een vreemde sleutelbeperking toe + + + + Add a unique constraint + Voeg een uniciteitsbeperking toe + + + + Add a check constraint + Voeg een controlebeperking toe + + + + + There can only be one primary key for each table. Please modify the existing primary key instead. + Er kan maar een primairesleutel per tabel bestaan. Pas in plaats daarvan de al bestaande primaire sleutel aan. + + + + Error creating table. Message from database engine: +%1 + Fout bij maken van de tabel. Melding van de database: +%1 + + + + There already is a field with that name. Please rename it first or choose a different name for this field. + Er bestaat al een veld met die naam. Hernoem dat veld eerst of kies een andere naam voor dit veld. + + + + This column is referenced in a foreign key in table %1 and thus its name cannot be changed. + Naar deze kolom wordt verwezen in een vreemde sleutel in tabel %1 en kan daarom niet aangepast worden. + + + + There is at least one row with this field set to NULL. This makes it impossible to set this flag. Please change the table data first. + Er is tenminste een record waarin de waarde van dit veld NULL is. Dit maakt het onmogelijk om deze optie toe te passen. Pas de tabelgegevens eerst aan. + + + + There is at least one row with a non-integer value in this field. This makes it impossible to set the AI flag. Please change the table data first. + Er is tenminste een record waarin de waarde van dit veld geen geheel getal is. Dit maakt het onmogelijk om de AO-optie toe te passen. Pas de tabelgegevens eerst aan. + + + + Column '%1' has duplicate data. + + Kolom '%1' heeft gedupliceerde waarden. + + + + + This makes it impossible to enable the 'Unique' flag. Please remove the duplicate data, which will allow the 'Unique' flag to then be enabled. + Dit maakt het onmogelijk om de Uniek-optie toe te passen. Verwijder eerst de gedupliceerde waarden, zodat de Uniek-optie toe kan worden gepast. + + + + Are you sure you want to delete the field '%1'? +All data currently stored in this field will be lost. + Weet je zeker dat je het veld '%1' wilt verwijderen? +Alle waarden die momenteel opgeslagen zijn in dit veld zullen verloren gaan. + + + + Please add a field which meets the following criteria before setting the without rowid flag: + - Primary key flag set + - Auto increment disabled + Voeg eerste een veld toe dat aan de volgende criteria voldoet, voordat je de 'Zonder rowid' optie toepast: + - Primaire sleutel ingeschakeld + - Automatisch ophogen uitgeschakeld + + + + ExportDataDialog + + + Export data as CSV + Gegevens exporteren als CSV + + + + Tab&le(s) + &Tabel(-len) + + + + Colu&mn names in first line + &Kolomnamen op eerste regel + + + + Fie&ld separator + &Veldscheidingsteken + + + + , + , + + + + ; + ; + + + + Tab + Tab + + + + | + | + + + + + + Other + Anders + + + + &Quote character + &Scheidingsteken tekenreeks + + + + " + " + + + + ' + ' + + + + New line characters + Nieuwe-regeltekens + + + + Windows: CR+LF (\r\n) + Windows: CR+LF (\r\n) + + + + Unix: LF (\n) + Unix: LF (\n) + + + + Pretty print + Mooi opmaken + + + + Export data as JSON + Exporteer de gegevens als JSON + + + + exporting CSV + CSV wordt geëxporteerd + + + + + Could not open output file: %1 + Kon het uitvoerbestand niet openen: %1 + + + + exporting JSON + JSON wordt geëxporteerd + + + + + Choose a filename to export data + Kies een bestandsnaam om naar te exporteren + + + + Please select at least 1 table. + Selecteerd tenminste één tabel. + + + + Choose a directory + Kies een map + + + + Export completed. + Het exporteren is voltooid. + + + + ExportSqlDialog + + + Export SQL... + SQL exporteren... + + + + Tab&le(s) + &Tabel(-len) + + + + Select All + Alles selecteren + + + + Deselect All + Alles deselecteren + + + + &Options + &Opties + + + + Keep column names in INSERT INTO + Kolomnamen behouden in INSERT INTO + + + + Multiple rows (VALUES) per INSERT statement + Meervoudige records (VALUES) per INSERT-instructie + + + + Export everything + Alles exporteren + + + + Export schema only + Alleen het schema exporteren + + + + Export data only + Alleen de gegevens exporteren + + + + Keep old schema (CREATE TABLE IF NOT EXISTS) + Ouder schema behouden (CREATE TABLE IF NOT EXISTS) + + + + Overwrite old schema (DROP TABLE, then CREATE TABLE) + Ouder schema overschrijven (DROP TABLE, daarna CREATE TABLE) + + + + Please select at least one table. + Selecteer tenminste één tabel. + + + + Choose a filename to export + Kies een bestandsnaam om naar te exporteren + + + + Export completed. + Het exporteren is voltooid. + + + + Export cancelled or failed. + Het exporteren is geannuleerd of niet gelukt. + + + + ExtendedScintilla + + + + Ctrl+H + + + + + Ctrl+F + + + + + + Ctrl+P + + + + + Find... + Zoeken... + + + + Find and Replace... + Zoeken en Vervangen... + + + + Print... + Afdrukken... + + + + ExtendedTableWidget + + + Use as Exact Filter + Als exact filter gebruiken + + + + Containing + Bevat + + + + Not containing + Bevat niet + + + + Not equal to + Niet gelijk aan + + + + Greater than + Groter dan + + + + Less than + Kleiner dan + + + + Greater or equal + Groter dan of gelijk aan + + + + Less or equal + Kleiner dan of gelijk aan + + + + Between this and... + Binnen het bereik van dit en... + + + + Regular expression + Als reguliere expressie + + + + Edit Conditional Formats... + Voorwaardelijke opmaakregels bewerken... + + + + Set to NULL + Omzetten naar NULL + + + + Copy + Kopiëren + + + + Copy with Headers + Kopiëren met kolomnamen + + + + Copy as SQL + Kopiëren als SQL + + + + Paste + Plakken + + + + Print... + Afdrukken... + + + + Use in Filter Expression + Gebruiken in filterexpressie + + + + Alt+Del + + + + + Ctrl+Shift+C + + + + + Ctrl+Alt+C + + + + + The content of the clipboard is bigger than the range selected. +Do you want to insert it anyway? + De inhoud van het klembord is groter dan het geselecteerde bereik. +Wil je het desondanks invoegen? + + + + <p>Not all data has been loaded. <b>Do you want to load all data before selecting all the rows?</b><p><p>Answering <b>No</b> means that no more data will be loaded and the selection will not be performed.<br/>Answering <b>Yes</b> might take some time while the data is loaded but the selection will be complete.</p>Warning: Loading all the data might require a great amount of memory for big tables. + <p>Niet alle gegevens zijn geladen. <b>Wil je alle gegevens laden voordat alle records geselecteerd worden?</b><p><p> <b>Nee</b> betekent dat gegevens laden gestopt wordt en de selectie niet toegepast zal worden.<br/> <b>Ja</b> betekent dat het een tijd kan duren totdat alle gegevens geladen zijn, maar de selectie wel toegepast zal worden.</p>Waarschuwing: Alle gegevens laden kan een grote hoeveelheid werkgeheugen vereisen voor grote tabellen. + + + + Cannot set selection to NULL. Column %1 has a NOT NULL constraint. + Kan de selectie niet omzetten naar NULL. Kolom %1 heeft een NIET NULL-beperking. + + + + FileExtensionManager + + + File Extension Manager + Bestandsextensiebeheerder + + + + &Up + Om&hoog + + + + &Down + Om&laag + + + + &Add + &Toevoegen + + + + &Remove + &Verwijderen + + + + + Description + Omschrijving + + + + Extensions + Extensies + + + + *.extension + *.extensie + + + + FilterLineEdit + + + Filter + Filter + + + + These input fields allow you to perform quick filters in the currently selected table. +By default, the rows containing the input text are filtered out. +The following operators are also supported: +% Wildcard +> Greater than +< Less than +>= Equal to or greater +<= Equal to or less += Equal to: exact match +<> Unequal: exact inverse match +x~y Range: values between x and y +/regexp/ Values matching the regular expression + Deze invoervelden stellen je in staat om snelfilters toe te passen op de huidig geselecteerde tabel. +Gewoonlijk worden records die de ingevoerde tekst bevatten gefilterd. +De volgende operatoren worden ook ondersteund: +% Jokerteken +> Groter dan +< Kleiner dan +>= Groter dan of gelijk aan +<= Kleiner dan of gelijk aan += Gelijk aan: exacte overeenkomst +<> Niet gelijk aan: inverse van exacte overeenkomst +x~y Bereik: waarden tussen x en y +/regexp/ Waarden die voldoen aan de reguliere expressie + + + + Set Filter Expression + Filterexpressie toepassen + + + + What's This? + Wat is dit? + + + + Is NULL + Is NULL + + + + Is not NULL + Is niet NULL + + + + Is empty + Is leeg + + + + Is not empty + Is niet leeg + + + + Not containing... + Bevat niet... + + + + Equal to... + Gelijk aan... + + + + Not equal to... + Niet gelijk aan... + + + + Greater than... + Groter dan... + + + + Less than... + Kleiner dan... + + + + Greater or equal... + Groter dan of gelijk aan... + + + + Less or equal... + Kleiner dan of gelijk aan... + + + + In range... + Binnen het bereik... + + + + Regular expression... + Reguliere expressie... + + + + Clear All Conditional Formats + Verwijder alle voorwaardelijke opmaakregels + + + + Use for Conditional Format + Gebruiken voor voorwaardelijke opmaak + + + + Edit Conditional Formats... + Voorwaardelijke opmaakregels bewerken... + + + + FindReplaceDialog + + + Find and Replace + Zoeken en vervangen + + + + Fi&nd text: + Zoek &tekst: + + + + Re&place with: + Vervang &door: + + + + Match &exact case + Identieke onder-/boven&kast + + + + Match &only whole words + Alleen &hele woorden + + + + When enabled, the search continues from the other end when it reaches one end of the page + Indien geselecteerd zal het zoeken aan het andere einde doorgaan zodra een einde bereikt is + + + + &Wrap around + Door&gaan na einde + + + + When set, the search goes backwards from cursor position, otherwise it goes forward + Indien geselecteerd zal, ten opzichte van de cursorpositie, achteruit in plaats van vooruit gezocht worden + + + + Search &backwards + &Omgekeerd zoeken + + + + <html><head/><body><p>When checked, the pattern to find is searched only in the current selection.</p></body></html> + <html><head/><body><p>Indien geselecteerd wordt alleen gezocht in de huidige selectie.</p></body></html> + + + + &Selection only + Alleen in &selectie + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + <html><head/><body><p>Indien geselecteerd wordt de zoekterm geïnterpreteerd als een UNIX reguliere expressie. Zie hiervoor <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Reguliere Expressies in Wikibooks (Engels)</a>.</p></body></html> + + + + Use regular e&xpressions + Gebruik reguliere e&xpressies + + + + Find the next occurrence from the cursor position and in the direction set by "Search backwards" + Zoek de eerstvolgende overeenkomst vanaf de cursorpositie, in de richting aangegeven door de optie "Omgekeerd zoeken" + + + + &Find Next + Volgende &zoeken + + + + F3 + + + + + &Replace + &Vervangen + + + + Highlight all the occurrences of the text in the page + Markeer alle overeenkomsten met de tekst in de pagina + + + + F&ind All + Alles z&oeken + + + + Replace all the occurrences of the text in the page + Vervang alle overeenkomsten met de tekst in de pagina + + + + Replace &All + Alles v&ervangen + + + + The searched text was not found + De gezochte tekst is niet gevonden + + + + The searched text was not found. + De gezochte tekst is niet gevonden. + + + + The searched text was replaced one time. + De gezochte tekst is één keer vervangen. + + + + The searched text was found one time. + De gezochte tekst is één keer gevonden. + + + + The searched text was replaced %1 times. + De gezochte tekst is %1 keer vervangen. + + + + The searched text was found %1 times. + De gezochte tekst is %1 keer gevonden. + + + + ForeignKeyEditor + + + &Reset + &Herstellen + + + + Foreign key clauses (ON UPDATE, ON DELETE etc.) + Vreemde-sleutelclausules (ON UPDATE, ON DELETE, etc.) + + + + ImportCsvDialog + + + Import CSV file + CSV-bestand importeren + + + + Table na&me + &Tabelnaam + + + + &Column names in first line + &Kolomnamen op eerste regel + + + + Field &separator + &Veldscheidingsteken + + + + , + , + + + + ; + ; + + + + + Tab + Tab + + + + | + | + + + + + Other (printable) + Anders (afdrukbaar) + + + + + Other (code) + Anders (code) + + + + &Quote character + &Scheidingsteken tekenreeks + + + + " + " + + + + ' + ' + + + + &Encoding + &Encodering + + + + UTF-8 + UTF-8 + + + + UTF-16 + UTF-16 + + + + ISO-8859-1 + ISO-8859-1 + + + + Other + Anders + + + + Trim fields? + Velden trimmen? + + + + Separate tables + Tabellen scheiden + + + + Advanced + Geavanceerd + + + + When importing an empty value from the CSV file into an existing table with a default value for this column, that default value is inserted. Activate this option to insert an empty value instead. + Indien geselecteerd dan wordt een lege waarde in plaats van de standaardwaarde ingevoerd voor bestaande tabellen die een standaardwaarde hebben voor deze kolom. + + + + Ignore default &values + &Negeer standaardwaarden + + + + Activate this option to stop the import when trying to import an empty value into a NOT NULL column without a default value. + Indien geselecteerd dan wordt het importeren afgebroken zodra een lege waarde wordt geprobeerd in te voeren in een NIET NULL veld die geen standaardwaarde kent. + + + + Fail on missing values + Afbreken bij afwezige waarden + + + + Disable data type detection + Gegevenstypedetectie uitschakelen + + + + Disable the automatic data type detection when creating a new table. + Schakel automatische gegevenstypedetectie uit als een nieuwe tabel wordt gemaakt. + + + + When importing into an existing table with a primary key, unique constraints or a unique index there is a chance for a conflict. This option allows you to select a strategy for that case: By default the import is aborted and rolled back but you can also choose to ignore and not import conflicting rows or to replace the existing row in the table. + Tijdens het importeren in bestaande tabellen kunnen er conflicten optreden met primaire sleutels, unieke beperkingen en unieke indices. Deze instelling geeft je de keuze om daar een strategie voor te kiezen: standaard wordt het importeren afgebroken en teruggedraaid, maar je kunt ook kiezen om conflicterende records te negeren en dus niet te importeren, of om bestaande records te laten overschrijven door geïmporteerde records. + + + + Abort import + Importeren afbreken + + + + Ignore row + Record negeren + + + + Replace existing row + Bestaand record vervangen + + + + Conflict strategy + Conflictstrategie + + + + + Deselect All + Alles deselecteren + + + + Match Similar + Overeenkomende selecteren + + + + Select All + Alles selecteren + + + + There is already a table named '%1' and an import into an existing table is only possible if the number of columns match. + Er bestaat al een tabel met de naam '%1' en importeren in een al bestaande tabel is alleen mogelijk als het aantal kolommen overeenkomt. + + + + There is already a table named '%1'. Do you want to import the data into it? + Er bestaat al een tabel met de naam '%1'. Wil je de gegevens hierin importeren? + + + + Creating restore point failed: %1 + Maken van een herstelpunt is mislukt: %1 + + + + Creating the table failed: %1 + Maken van de tabel is mislukt: %1 + + + + importing CSV + CSV wordt geïmporteerd + + + + Inserting row failed: %1 + Invoegen van record is mislukt: %1 + + + + Importing the file '%1' took %2ms. Of this %3ms were spent in the row function. + Het importeren van het bestand '%1' duurde %2ms. Hiervan werd %3ms gebruikt voor de rijfunctie. + + + + MainWindow + + + DB Browser for SQLite + DB-browser voor SQLite + + + + + Database Structure + This has to be equal to the tab title in all the main tabs + Databasestructuur + + + + This is the structure of the opened database. +You can drag SQL statements from an object row and drop them into other applications or into another instance of 'DB Browser for SQLite'. + + Dit is de structuur van de geopende database. +Je kunt SQL-instructies vanuit een objectrij naar andere applicaties of andere vensters van 'DB-browser voor SQLite' verslepen. + + + + + + Browse Data + This has to be equal to the tab title in all the main tabs + Gegevensbrowser + + + + + Edit Pragmas + This has to be equal to the tab title in all the main tabs + Pragma's bewerken + + + + Warning: this pragma is not readable and this value has been inferred. Writing the pragma might overwrite a redefined LIKE provided by an SQLite extension. + Waarschuwing: dit pragma kan niet uitgelezen worden en de waarde is daarom afgeleid. Dit pragma wijzigen kan ervoor zorgen dat een door een SQLite-extensie hergedefinieerde LIKE overschreven wordt. + + + + + Execute SQL + This has to be equal to the tab title in all the main tabs + SQL uitvoeren + + + + toolBar1 + werkbalk1 + + + + &File + &Bestand + + + + &Import + &Importeren + + + + &Export + &Exporteren + + + + &Edit + Be&werken + + + + &View + Bee&ld + + + + &Help + &Help + + + + &Tools + E&xtra + + + + DB Toolbar + Databasewerkbalk + + + + Edit Database &Cell + Database&cel bewerken + + + + SQL &Log + SQL-&log + + + + Show S&QL submitted by + Toon S&QL van + + + + User + Gebruiker + + + + Application + Applicatie + + + + Error Log + Foutenlog + + + + This button clears the contents of the SQL logs + Deze knop leegt de inhoud van de SQL-logs + + + + &Clear + &Legen + + + + This panel lets you examine a log of all SQL commands issued by the application or by yourself + In dit kader kun je de logs inspecteren van alle SQL-opdrachten die door de applicatie of door jezelf zijn uitgevoerd + + + + &Plot + &Plot + + + + DB Sche&ma + Databasesche&ma + + + + This is the structure of the opened database. +You can drag multiple object names from the Name column and drop them into the SQL editor and you can adjust the properties of the dropped names using the context menu. This would help you in composing SQL statements. +You can drag SQL statements from the Schema column and drop them into the SQL editor or into other applications. + + Dit is de structuur van de geopende database. +Je kunt meerdere objectnamen vanuit de Naam-kolom naar de SQL-bewerker verslepen en je kunt hun eigenschappen dan bewerken met behulp van contextmenu's. Dit vergemakkelijkt het opstellen van SQL-instructies. +Je kunt SQL-instructies vanuit de Schema-kolom naar de SQL-bewerker of naar andere applicaties verslepen. + + + + + &Remote + Toegang op &afstand + + + + + Project Toolbar + Projectwerkbalk + + + + Extra DB toolbar + Werkbalk voor gekoppelde databases + + + + + + Close the current database file + Sluit het huidige databasebestand + + + + &New Database... + &Nieuwe database... + + + + + Create a new database file + Maak een nieuw databasebestand + + + + This option is used to create a new database file. + Deze optie wordt gebruikt om een nieuw databasebestand te maken. + + + + Ctrl+N + + + + + + &Open Database... + &Database openen... + + + + + + + + Open an existing database file + Een bestaand databasebestand openen + + + + + + This option is used to open an existing database file. + Deze optie wordt gebruikt om een bestaand databasebestand te openen. + + + + Ctrl+O + + + + + &Close Database + Database &sluiten + + + + This button closes the connection to the currently open database file + Deze knop verbreekt de verbinding met het huidig geopende databasebestand + + + + Ctrl+F4 + + + + + &Revert Changes + Wijzigingen &terugdraaien + + + + + Revert database to last saved state + Database terugdraaien naar de laatst opgeslagen staat + + + + This option is used to revert the current database file to its last saved state. All changes made since the last save operation are lost. + Deze optie wordt gebruikt om het huidig geopende databasebestand terug te draaien naar de laatst opgeslagen staat. Alle wijzigingen die gemaakt zijn sinds de laatste opslag gaan verloren. + + + + &Write Changes + &Wijzigingen opslaan + + + + + Write changes to the database file + Wijzigingen opslaan in het databasebestand + + + + This option is used to save changes to the database file. + Deze optie wordt gebruikt om wijzigingen op te slaan in het databasebestand. + + + + Ctrl+S + + + + + Compact &Database... + &Database comprimeren... + + + + Compact the database file, removing space wasted by deleted records + Comprimeer het databasebestand door lege ruimte van verwijderde records te op te schonen + + + + + Compact the database file, removing space wasted by deleted records. + Comprimeer het databasebestand door lege ruimte van verwijderde records te op te schonen. + + + + E&xit + A&fsluiten + + + + Ctrl+Q + + + + + &Database from SQL file... + &Database vanuit SQL-bestand... + + + + Import data from an .sql dump text file into a new or existing database. + Importeer gegevens vanuit een .sql dump tekstbestand naar een nieuwe of bestaande database. + + + + This option lets you import data from an .sql dump text file into a new or existing database. SQL dump files can be created on most database engines, including MySQL and PostgreSQL. + Deze optie stelt je in staat om gegevens vanuit een .sql dump tekstbestand te importeren naar een nieuwe of bestaande database. De meeste databaseprogramma's kunnen SQL-dumpbestanden maken, waaronder MySQL en PostgreSQL. + + + + &Table from CSV file... + &Tabel vanuit CSV-bestand... + + + + Open a wizard that lets you import data from a comma separated text file into a database table. + Open een assistent om gegevens uit een kommagescheiden tekstbestand te importeren naar een databasetabel. + + + + Open a wizard that lets you import data from a comma separated text file into a database table. CSV files can be created on most database and spreadsheet applications. + Open een assistent om gegevens uit een kommagescheiden tekstbestand (CSV) te importeren naar een databasetabel. De meeste database- en spreadsheetprogramma's kunnen CSV-bestanden maken. + + + + &Database to SQL file... + &Database naar SQL-bestand... + + + + Export a database to a .sql dump text file. + Exporteer een database naar een .sql dump tekstbestand. + + + + This option lets you export a database to a .sql dump text file. SQL dump files contain all data necessary to recreate the database on most database engines, including MySQL and PostgreSQL. + Deze optie stelt je in staat om een database te exporteren naar een .sql dump tekstbestand. SQL-dumpbestanden bevatten de benodigde gegevens om de database opnieuw te maken in de meeste databaseprogramma's, waaronder MySQL en PostgreSQL. + + + + &Table(s) as CSV file... + &Tabel(-len) naar CSV-bestand... + + + + Export a database table as a comma separated text file. + Exporteer een databasetabel naar een kommagescheiden tekstbestand. + + + + Export a database table as a comma separated text file, ready to be imported into other database or spreadsheet applications. + Exporteer een databasetabel naar een kommagescheiden tekstbestand, om deze te kunnen importeren in ander database- of spreadsheetprogramma. + + + + &Create Table... + Tabel &maken... + + + + Open the Create Table wizard, where it is possible to define the name and fields for a new table in the database + Open de tabel-makenassistent, waarin je namen en velden voor een nieuwe databasetabel kunt definiëren + + + + &Delete Table... + Tabel &verwijderen... + + + + + Delete Table + Tabel verwijderen + + + + Open the Delete Table wizard, where you can select a database table to be dropped. + Open de tabel-verwijderassistent, waarin je databasetabellen kunt selecteren om te verwijderen. + + + + &Modify Table... + Tabel &wijzigen... + + + + Open the Modify Table wizard, where it is possible to rename an existing table. It is also possible to add or delete fields form a table, as well as modify field names and types. + Open de tabel-wijzigingenassistent, waarin je een databasetabel kunt hernoemen. Het is hierin ook mogelijk om velden toe te voegen en te verwijderen en om veldnamen en -typen te wijzigen. + + + + Create &Index... + &Index maken... + + + + Open the Create Index wizard, where it is possible to define a new index on an existing database table. + Open de index-makenassistent, waarin je een nieuwe index voor een bestaande databasetabel kunt definiëren. + + + + &Preferences... + I&nstellingen... + + + + + Open the preferences window. + Open het instellingenvenster. + + + + &DB Toolbar + &Databasewerkbalk + + + + Shows or hides the Database toolbar. + Toont of verbergt de databasewerkbalk. + + + + W&hat's This? + W&at is dit? + + + + Shift+F1 + + + + + &About + &Over + + + + &Recently opened + &Recent geopend + + + + Open &tab + &Tabblad openen + + + + This button opens a new tab for the SQL editor + Deze knop opent een nieuw tabblad in de SQL-bewerker + + + + Ctrl+T + + + + + &Execute SQL + SQL &uitvoeren + + + + Execute all/selected SQL + Voer alle of de geselecteerde SQL uit + + + + This button executes the currently selected SQL statements. If no text is selected, all SQL statements are executed. + Deze knop voert de huidig geselecteerde SQL-instructies uit. Indien geen tekst geselecteerd is worden alle SQL-instructies uitgevoerd. + + + + Ctrl+Return + + + + + Open SQL file(s) + SQL-bestand(-en) openen + + + + This button opens files containing SQL statements and loads them in new editor tabs + Deze knop opent bestanden die SQL-instructies bevatten en laadt deze in nieuwe bewerkerstabbladen + + + + + + Save SQL file + SQL-bestand opslaan + + + + &Load Extension... + Extensie &laden... + + + + + Execute current line + Huidige regel uitvoeren + + + + Execute line + Regel uitvoeren + + + + This button executes the SQL statement present in the current editor line + Deze knop voert de SQL-instructies uit die zich op de huidige bewerkingsregel bevindt + + + + Shift+F5 + + + + + Export as CSV file + Exporteren als CSV-bestand + + + + Export table as comma separated values file + Tabel exporteren als bestand met kommagescheiden waarden + + + + &Wiki + &Wiki + + + + F1 + + + + + Bug &Report... + Bugs &rapporteren... + + + + Feature Re&quest... + Functionaliteit &verzoeken... + + + + Web&site + Web&site + + + + &Donate on Patreon... + &Doneren op Patreon... + + + + Sa&ve Project + P&roject opslaan + + + + + Save the current session to a file + De huidige sessie oplaan in een bestand + + + + This button lets you save all the settings associated to the open DB to a DB Browser for SQLite project file + Deze knop stelt je in staat om alle instellingen met betrekking tot de geopende database op te slaan in een DB-browser voor SQLite-projectbestand + + + + Open &Project... + &Project openen... + + + + + Load a working session from a file + Een sessie laden vanuit een bestand + + + + This button lets you open a DB Browser for SQLite project file + Deze knop stelt je in staat om DB-browser voor SQLite-projectbestand te openen + + + + &Attach Database... + Database &koppelen... + + + + + Add another database file to the current database connection + Koppel nog een databasebestand aan de huidige databaseverbinding + + + + This button lets you add another database file to the current database connection + Deze knop stelt je in staat om nog een databasebestand aan de huidige databaseverbinding te koppelen + + + + &Set Encryption... + Encr&yptie instellen... + + + + + Save SQL file as + SQL-bestand opslaan als + + + + This button saves the content of the current SQL editor tab to a file + Deze knop slaat de inhoud van het huidige SQL-bewerkingstabblad op in een bestand + + + + &Browse Table + &Bladeren door tabel + + + + Copy Create statement + CREATE-instructie kopiëren + + + + Copy the CREATE statement of the item to the clipboard + De CREATE-instructie van het item kopiëren naar het klembord + + + + SQLCipher &FAQ + SQLCipher &FAQ + + + + Opens the SQLCipher FAQ in a browser window + Opent de SQLCipher FAQ in een browservenster + + + + Table(&s) to JSON... + Tabel(-&len) naar JSON-bestand... + + + + Export one or more table(s) to a JSON file + Exporteer een of meerdere tabel(-len) naar een JSON-bestand + + + + Open Data&base Read Only... + Database als &alleen-lezen openen... + + + + Open an existing database file in read only mode + Een bestaand databasebestand openen in alleen-lezenmodus + + + + Ctrl+Shift+O + + + + + Save results + Resultaten opslaan + + + + Save the results view + Het resultatenoverzicht opslaan + + + + This button lets you save the results of the last executed query + Deze knop stelt je in staat om de resultaten van de laatst uitgevoerde opdracht op te slaan + + + + + Find text in SQL editor + Tekst zoeken in de SQL-bewerker + + + + Find + Zoeken + + + + This button opens the search bar of the editor + Deze knop opent de zoekbalk van de bewerker + + + + Ctrl+F + + + + + + Find or replace text in SQL editor + Tekst zoeken of vervangen in de SQL-bewerker + + + + Find or replace + Zoeken of vervangen + + + + This button opens the find/replace dialog for the current editor tab + Deze knop opent het zoek-en-vervangdialoogvenster voor het huidige bewerkerstabblad + + + + Ctrl+H + + + + + Export to &CSV + Exporteren naar &CSV + + + + Save as &view + Opslaan als &view + + + + Save as view + Opslaan als view + + + + Shows or hides the Project toolbar. + Toont of verbergt de projectwerkbalk. + + + + Extra DB Toolbar + Gekoppelde-databaseswerkbalk + + + + New In-&Memory Database + Nieuwe werk&geheugendatabase + + + + Drag && Drop Qualified Names + Gekwalificeerde namen verslepen + + + + + Use qualified names (e.g. "Table"."Field") when dragging the objects and dropping them into the editor + Gebruik gekwalificeerde namen (bijv. "Tabel"."Veld") wanneer ik objecten versleep naar de bewerker + + + + Drag && Drop Enquoted Names + Aangehaalde namen verslepen + + + + + Use escaped identifiers (e.g. "Table1") when dragging the objects and dropping them into the editor + Gebruik aangehaalde entiteitsnamen (bijv. "Tabel1") wanneer ik objecten versleep naar de bewerker + + + + &Integrity Check + &Integriteit controleren + + + + Runs the integrity_check pragma over the opened database and returns the results in the Execute SQL tab. This pragma does an integrity check of the entire database. + Voert het pragma integrity_check uit op de geopende database en toont de resultaten in het tabblad SQL uitvoeren. Dit pragma doet een integriteitscontrole over de gehele database. + + + + &Foreign-Key Check + &Vreemde sleutels controleren + + + + Runs the foreign_key_check pragma over the opened database and returns the results in the Execute SQL tab + Voert het pragma foreign_key_check uit op de geopende database en toont de resultaten in het tabblad SQL uitvoeren + + + + &Quick Integrity Check + Integriteit &snel controleren + + + + Run a quick integrity check over the open DB + Voert een snelle integriteitscontrole uit op de geopende database + + + + Runs the quick_check pragma over the opened database and returns the results in the Execute SQL tab. This command does most of the checking of PRAGMA integrity_check but runs much faster. + Voert het pragma quick_check uit op de geopende database en toont de resultaten in het tabblad SQL uitvoeren. Dit commando voert veel van de controles uit die het pragma integrity_check ook uitvoert, maar verloopt veel sneller. + + + + &Optimize + &Optimaliseren + + + + Attempt to optimize the database + Probeert de database te optimaliseren + + + + Runs the optimize pragma over the opened database. This pragma might perform optimizations that will improve the performance of future queries. + Voert het pragma optimize uit op de geopende database. Dit pragma kan optimalisaties uitvoeren die de prestaties van toekomstige SQL-opdrachten mogelijk verbeteren. + + + + + Print + Afdrukken + + + + Print text from current SQL editor tab + Tekst uit het huidige SQL-bewerkerstabblad afdrukken + + + + Open a dialog for printing the text in the current SQL editor tab + Opent een dialoogvenster voor het afdrukken van tekst uit het huidige SQL-bewerkerstabblad + + + + + Ctrl+P + + + + + Print the structure of the opened database + De structuur van de geopende database afdrukken + + + + Open a dialog for printing the structure of the opened database + Opent een dialoogvenster voor het afdrukken van de structuur van de geopende database + + + + Un/comment block of SQL code + Blok SQL-code wel/niet commentaar + + + + Un/comment block + Blok wel/niet commentaar + + + + Comment or uncomment current line or selected block of code + De huidige regel of het geselecteerde codeblok wel/niet markeren als commentaar + + + + Comment or uncomment the selected lines or the current line, when there is no selection. All the block is toggled according to the first line. + Markeert het geselecteerde codeblok, of de huidige regel indien er geen selectie is, wel/niet als commentaar. Het gehele blok wordt omgezet op basis van de eerste regel. + + + + Ctrl+/ + + + + + Stop SQL execution + SQL uitvoeren stoppen + + + + Stop execution + Uitvoeren stoppen + + + + Stop the currently running SQL script + Stop het SQL script dat nu uitgevoerd wordt + + + + &Save Project As... + Pr&oject opslaan als... + + + + + + Save the project in a file selected in a dialog + Het project opslaan in een bestand dat je selecteert in een dialoogvenster + + + + Save A&ll + A&lles opslaan + + + + + + Save DB file, project file and opened SQL files + Het databasebestand, projectbestand en alle geopende SQL-bestanden opslaan + + + + Ctrl+Shift+S + + + + + Browse Table + Bladeren door tabel + + + + + Ctrl+W + + + + + Ctrl+L + + + + + Ctrl+D + + + + + Ctrl+I + + + + + Ctrl+E + + + + + Window Layout + Vensterindeling + + + + Reset Window Layout + Vensterindeling herstellen + + + + Alt+0 + + + + + Simplify Window Layout + Vensterindeling versimpelen + + + + Shift+Alt+0 + + + + + Dock Windows at Bottom + Vensters dokken aan onderzijde + + + + Dock Windows at Left Side + Vensters dokken aan de linkerzijde + + + + Dock Windows at Top + Vensters dokken aan de bovenzijde + + + + The database is currenctly busy. + De database is momenteel bezig. + + + + Click here to interrupt the currently running query. + Klik hier om het SQL script dat nu uitgevoerd wordt te onderbreken. + + + + Encrypted + Versleuteld + + + + Database is encrypted using SQLCipher + Database is versleuteld met SQLCipher + + + + Read only + Aleen-lezen + + + + Database file is read only. Editing the database is disabled. + Het databasebestand is alleen-lezen. Het bewerken van de database is uitgeschakeld. + + + + Database encoding + Databasecodering + + + + + Choose a database file + Kies een databasebestand + + + + Could not open database file. +Reason: %1 + Kon het databasebestand niet openen. +Reden: %1 + + + + + + Choose a filename to save under + Kies een bestandsnaam om in op te slaan + + + + In-Memory database + Werkgeheugendatabase + + + + You are still executing SQL statements. Closing the database now will stop their execution, possibly leaving the database in an inconsistent state. Are you sure you want to close the database? + Je voert nog steeds SQL-instructies uit. Het sluiten van de database zal het uitvoeren stoppen en de database daarmee mogelijk inconsistent maken. Weet je zeker dat je de database wilt sluiten? + + + + Do you want to save the changes made to the project file '%1'? + Wil je de wijzigingen opslaan die je de gemaakt hebt voor projectbestand %1? + + + + Are you sure you want to delete the table '%1'? +All data associated with the table will be lost. + Weet je zeker dat je de tabel '%1' wilt verwijderen? +Alle gegevens die met deze tabel geassocieerd worden zullen verloren gaan. + + + + Are you sure you want to delete the view '%1'? + Weet je zeker dat je de view '%1' wilt verwijderen? + + + + Are you sure you want to delete the trigger '%1'? + Weet je zeker dat je de trigger '%1' wilt verwijderen? + + + + Are you sure you want to delete the index '%1'? + Weet je zeker dat je de index '%1' wilt verwijderen? + + + + Error: could not delete the table. + Fout: kon de tabel niet verwijderen. + + + + Error: could not delete the view. + Fout: kon de view niet verwijderen. + + + + Error: could not delete the trigger. + Fout: kon de trigger niet verwijderen. + + + + Error: could not delete the index. + Fout: kon de index niet verwijderen. + + + + Message from database engine: +%1 + Melding van de database: +%1 + + + + Editing the table requires to save all pending changes now. +Are you sure you want to save the database? + Het bewerken van de tabel vereist dat niet-opgeslagen wijzigingen nu opgeslagen worden. +Weet je zeker dat de database op wilt slaan? + + + + Error checking foreign keys after table modification. The changes will be reverted. + Fout bij het controleren van vreemde sleutels na tabelwijzigingen. De wijzigingen zullen teruggedraaid worden. + + + + This table did not pass a foreign-key check.<br/>You should run 'Tools | Foreign-Key Check' and fix the reported issues. + Deze tabel kwam niet door de vreemde-sleutelscontrole.<br/>Voer 'Extra | Vreemde sleutels controleren' uit en repareer de gerapporteerde problemen. + + + + Edit View %1 + View %1 bewerken + + + + Edit Trigger %1 + Trigger %1 bewerken + + + + You are already executing SQL statements. Do you want to stop them in order to execute the current statements instead? Note that this might leave the database in an inconsistent state. + Je voert momenteel al SQL-instructies uit. Wil je deze stoppen en in plaats daarvan de huidige instructies uitvoeren? Wees je ervan bewust dat dit ervoor kan zorgen dat de database inconsistent wordt. + + + + -- EXECUTING SELECTION IN '%1' +-- + -- SELECTIE WORDT UITGEVOERD IN '%1' +-- + + + + -- EXECUTING LINE IN '%1' +-- + -- REGEL WORDT UITGEVOERD IN '%1' +-- + + + + -- EXECUTING ALL IN '%1' +-- + -- ALLES WORDT UITGEVOERD IN '%1' +-- + + + + + At line %1: + In regel %1: + + + + Result: %1 + Resultaat: %1 + + + + Result: %2 + Resultaat: %2 + + + + %1 rows returned in %2ms + %1 records geretourneerd in %2ms + + + + Setting PRAGMA values or vacuuming will commit your current transaction. +Are you sure? + Vacuümeren of pragma's omzetten zal jouw huidige transactie committeren. +Weet je het zeker? + + + + Execution finished with errors. + Uitvoering voltooid met fouten. + + + + Execution finished without errors. + Uitvoering voltooid zonder fouten. + + + + Choose text files + Kies tekstbestanden + + + + Error while saving the database file. This means that not all changes to the database were saved. You need to resolve the following error first. + +%1 + Er zijn fouten opgetreden tijdens het opslaan van het databasebestand. Daarom zijn niet alle wijzigingen opgeslagen. Je dient de volgende fouten eerst op te lossen: + +%1 + + + + Are you sure you want to undo all changes made to the database file '%1' since the last save? + Weet je zeker dat je alle wijzigingen die je gemaakt hebt in databasebestand '%1', nadat je deze voor het laatst opgeslagen hebt, ongedaan wilt maken? + + + + Choose a file to import + Kies een bestand om te importeren + + + + Do you want to create a new database file to hold the imported data? +If you answer no we will attempt to import the data in the SQL file to the current database. + Wil je een nieuw databasebestand aanmaken om de geïmporteerde gegevens in te bewaren? +Als je nee antwoordt, wordt geprobeerd om de gegevens uit het SQL-bestand te importeren in de huidige database. + + + + File %1 already exists. Please choose a different name. + Bestand %1 bestaat al. Kies een andere naam. + + + + Error importing data: %1 + Fout bij het importeren van de gegevens: %1 + + + + Import completed. Some foreign key constraints are violated. Please fix them before saving. + Importeren voltooid. Sommige vreemde-sleutelbeperkingen werden echter geschonden. Repareer deze voordat je opslaat. + + + + Import completed. + Importeren voltooid. + + + + Delete View + View verwijderen + + + + Modify View + View wijzigen + + + + Delete Trigger + Trigger verwijderen + + + + Modify Trigger + Trigger wijzigen + + + + Delete Index + Index verwijderen + + + + Modify Index + Index wijzigen + + + + Modify Table + Tabel wijzigen + + + + Opened '%1' in read-only mode from recent file list + '%1' geopend vanuit recent-geopende-bestandenlijst in alleen-lezenmodus + + + + Opened '%1' from recent file list + '%1' geopend vanuit recent-geopende-bestandenlijst + + + + &%1 %2%3 + &%1 %2%3 + + + + (read only) + (alleen-lezen) + + + + Open Database or Project + Database of project openen + + + + Attach Database... + Database koppelen... + + + + Import CSV file(s)... + CSV-bestand(-en) importeren... + + + + Select the action to apply to the dropped file(s). <br/>Note: only 'Import' will process more than one file. + + Selecteer de handeling die toegepast moet worden op het gesleepte bestand. <br/>Let op: alleen 'Importeren' kan op meerdere bestanden tegelijk toegepast worden. + Selecteer de handeling die toegepast moet worden op de gesleepte bestanden). <br/>Let op: alleen 'Importeren' kan op meerdere bestanden tegelijk toegepast worden. + + + + + Setting PRAGMA values will commit your current transaction. +Are you sure? + Pragma's omzetten zal jouw huidige transactie committeren. +Weet je het zeker? + + + + Do you want to save the changes made to SQL tabs in a new project file? + Wil je de wijzigingen die je in de SQL-tabbladen gemaakt hebt opslaan in een nieuw projectbestand? + + + + Do you want to save the changes made to SQL tabs in the project file '%1'? + Wil je de wijzigingen die je in de SQL-tabbladen gemaakt hebt opslaan in het projectbestand '%1'? + + + + Do you want to save the changes made to the SQL file %1? + Wil je de wijzigingen die je in SQL-bestand %1 gemaakt hebt opslaan? + + + + The statements in this tab are still executing. Closing the tab will stop the execution. This might leave the database in an inconsistent state. Are you sure you want to close the tab? + De instructies in dit tabblad worden nog steeds uitgevoerd. Het sluiten van het tabblad zal het uitvoeren stoppen en de database daarmee mogelijk inconsistent maken. Weet je zeker dat je het tabblad wilt sluiten? + + + + This project file is using an old file format because it was created using DB Browser for SQLite version 3.10 or lower. Loading this file format is still fully supported but we advice you to convert all your project files to the new file format because support for older formats might be dropped at some point in the future. You can convert your files by simply opening and re-saving them. + Dit projectbestand gebruikt een oud bestandsformaat, omdat het gemaakt is met versie 3.10 of lager van DB-browser voor SQLite. Dit bestandsformaat wordt nog steeds volledig ondersteund, maar we adviseren je om al jouw projectbestanden om te zetten naar het nieuwe bestandsformaat, omdat oudere formaten in de toekomst mogelijk niet meer ondersteund zullen worden. Je kunt je bestanden omzetten door ze simpelweg te openen en opnieuw op te slaan. + + + + Select SQL file to open + Selecteer SQL-bestanden om te openen + + + + Text files(*.sql *.txt);;All files(*) + Tekstbestanden(*.sql *.txt);;Alle bestanden(*) + + + + Select file name + Selecteer bestandsnaam + + + + Select extension file + Selecteer extensiebestand + + + + Extension successfully loaded. + Extensie laden gelukt. + + + + Error loading extension: %1 + Fout bij het laden van extensie: %1 + + + + Could not find resource file: %1 + Kon het bronbestand niet vinden: %1 + + + + + Don't show again + Toon dit niet nogmaals + + + + New version available. + Nieuwe versie beschikbaar. + + + + A new DB Browser for SQLite version is available (%1.%2.%3).<br/><br/>Please download at <a href='%4'>%4</a>. + Er is een nieuwe versie van DB-browser voor SQLite beschikbaar (%1.%2.%3).<br/><br/>Je kunt deze downloaden op <a href='%4'>%4</a>. + + + + Choose a project file to open + Kies een projectbestand om te openen + + + + DB Browser for SQLite project file (*.sqbpro) + DB-browser voor SQLite-projectbestanden (*.sqbpro) + + + + Could not open project file for writing. +Reason: %1 + Kon het projectbestand niet openen om naar te schrijven. +Reden: %1 + + + + Project saved to file '%1' + Project opgeslagen in bestand '%1' + + + + Collation needed! Proceed? + Collatie vereist! Doorgaan? + + + + A table in this database requires a special collation function '%1' that this application can't provide without further knowledge. +If you choose to proceed, be aware bad things can happen to your database. +Create a backup! + Een table in deze database vereist een speciale collatiefunctie '%1' die deze applicatie niet kan bieden zonder extra informatie. +Wees je er bewust van dat als je doorgaat er slechte dingen kunnen gebeuren met jouw database. +Maak een backup! + + + + creating collation + collatie aan het maken + + + + Set a new name for the SQL tab. Use the '&&' character to allow using the following character as a keyboard shortcut. + Geef een nieuwe naam voor het SQL-tabblad. Gebruik het '&&'-teken om de een van de volgende tekens als sneltoets in te stellen. + + + + Please specify the view name + Geef de viewnaam op + + + + There is already an object with that name. Please choose a different name. + Er bestaat al een object met die naam. Kies een andere naam. + + + + View successfully created. + View maken gelukt. + + + + Error creating view: %1 + Fout bij het maken van view: %1 + + + + This action will open a new SQL tab for running: + Deze handeling opent een nieuw SQL-tabblad om het volgende uit te voeren: + + + + This action will open a new SQL tab with the following statements for you to edit and run: + Deze handeling opent een nieuw SQL-tabblad met volgende instructies die je zodoende kunt bewerken en uitvoeren: + + + + Press Help for opening the corresponding SQLite reference page. + Druk op Help om de bijbehorende SQLlite-referentiepagina te openen. + + + + Busy (%1) + Bezig (%1) + + + + Rename Tab + Tabblad hernoemen + + + + Duplicate Tab + Tabblad dupliceren + + + + Close Tab + Tabblad sluiten + + + + Opening '%1'... + Opent '%1'... + + + + There was an error opening '%1'... + Fout bij het openen van '%1'... + + + + Value is not a valid URL or filename: %1 + Waarde is geen geldige URL of bestandsnaam: %1 + + + + NullLineEdit + + + Set to NULL + Omzetten naar NULL + + + + Alt+Del + + + + + PlotDock + + + Plot + Plot + + + + <html><head/><body><p>This pane shows the list of columns of the currently browsed table or the just executed query. You can select the columns that you want to be used as X or Y axis for the plot pane below. The table shows detected axis type that will affect the resulting plot. For the Y axis you can only select numeric columns, but for the X axis you will be able to select:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Date/Time</span>: strings with format &quot;yyyy-MM-dd hh:mm:ss&quot; or &quot;yyyy-MM-ddThh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Date</span>: strings with format &quot;yyyy-MM-dd&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Time</span>: strings with format &quot;hh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Label</span>: other string formats. Selecting this column as X axis will produce a Bars plot with the column values as labels for the bars</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Numeric</span>: integer or real values</li></ul><p>Double-clicking the Y cells you can change the used color for that graph.</p></body></html> + <html><head/><body><p>Dit paneel toont de lijst van kolommen van de tabel die nu doorgebladerd wordt of van de zojuist uitgevoerde SQL-opdracht. Je kunt de kolommen selecteren die je wilt gebruiken als X- of Y-assen in de plot hieronder. De tabel toont gedetecteerde astypen die de plot zullen beïnvloeden. Voor de Y-as kun je alleen numerieke kolommen gebruiken, maar voor de X-as kun je de volgende gegevenstypen selecteren:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Datum/Tijd</span>: tekenreeksen volgens het formaat &quot;yyyy-MM-dd hh:mm:ss&quot; of &quot;yyyy-MM-ddThh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Datum</span>: tekenreeksen volgens het formaat &quot;yyyy-MM-dd&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Tijd</span>: tekenreeksen volgens het formaat &quot;hh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Label</span>: andersoortige tekenreeksformaten. Als je dit selecteert voor de X-as dan wordt een staafdiagram geplot met de kolomwaarden als labels voor de staven</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Numeriek</span>: gehele of reële getallen</li></ul><p>Door dubbel te klikken op de Y-cellen kun je de kleur voor die grafiek aanpassen.</p></body></html> + + + + Columns + Kolommen + + + + X + X + + + + Y1 + Y1 + + + + Y2 + Y2 + + + + Axis Type + Astype + + + + Here is a plot drawn when you select the x and y values above. + +Click on points to select them in the plot and in the table. Ctrl+Click for selecting a range of points. + +Use mouse-wheel for zooming and mouse drag for changing the axis range. + +Select the axes or axes labels to drag and zoom only in that orientation. + Hier wordt de plot getekend zodra je hierboven x- en y-waarden selecteert. + +Klik op punten om deze in de plot en in de tabel te selecteren. Ctrl+klik om meerdere punten te selecteren. + +Gebruik het muiswiel om te zoomen en sleep met de muis om het asbereik te veranderen. + +Selecteer de as of aslabels om alleen in die richting te slepen en te zoomen. + + + + Line type: + Lijntype: + + + + + None + Geen + + + + Line + Lijn + + + + StepLeft + Stap links + + + + StepRight + Stap rechts + + + + StepCenter + Stap gecentreerd + + + + Impulse + Impuls + + + + Point shape: + Puntvorm: + + + + Cross + Kruis + + + + Plus + Plus + + + + Circle + Cirkel + + + + Disc + Discus + + + + Square + Vierkant + + + + Diamond + Diamant + + + + Star + Ster + + + + Triangle + Driehoek + + + + TriangleInverted + Geïnverteerde driehoek + + + + CrossSquare + Vierkant met kruis + + + + PlusSquare + Vierkant met plus + + + + CrossCircle + Cirkel met kruis + + + + PlusCircle + Cirkel met plus + + + + Peace + Vredesteken + + + + <html><head/><body><p>Save current plot...</p><p>File format chosen by extension (png, jpg, pdf, bmp)</p></body></html> + <html><head/><body><p>Huidige plot opslaan...</p><p>Bestandsformaat volgens extensie (png, jpg, pdf, bmp)</p></body></html> + + + + Save current plot... + Huidige plot opslaan... + + + + + Load all data and redraw plot + Laad alle gegevens en teken plot opnieuw + + + + Copy + Kopiëren + + + + Print... + Afdrukken... + + + + Show legend + Legenda tonen + + + + Stacked bars + Gestapelde staven + + + + Date/Time + Datum/Tijd + + + + Date + Datum + + + + Time + Tijd + + + + + Numeric + Numeriek + + + + Label + Label + + + + Invalid + Ongeldig + + + + + + Row # + Record # + + + + Load all data and redraw plot. +Warning: not all data has been fetched from the table yet due to the partial fetch mechanism. + Laad alle gegevens en teken plot opnieuw. +Waarschuwing: door het partiële laadmechanisme zijn nog niet alle gegevens zijn uit de tabel opgehaald. + + + + Choose an axis color + Kies een askleur + + + + Choose a filename to save under + Kies een bestandsnaam om in op te slaan + + + + PNG(*.png);;JPG(*.jpg);;PDF(*.pdf);;BMP(*.bmp);;All Files(*) + PNG(*.png);;JPG(*.jpg);;PDF(*.pdf);;BMP(*.bmp);;Alle bestanden(*) + + + + There are curves in this plot and the selected line style can only be applied to graphs sorted by X. Either sort the table or query by X to remove curves or select one of the styles supported by curves: None or Line. + Dit plot bevat curves, maar de geselecteerde lijnstijl kan alleen toegepast worden op diagrammen die gesorteerd worden op X. Sorteer daarom de tabel of SQL-opdracht op X of selecteer een stijl die curves ondersteunt: Geen of Lijn. + + + + Loading all remaining data for this table took %1ms. + Het laden van alle overgebleven gegevens voor deze tabel duurde %1ms. + + + + PreferencesDialog + + + Preferences + Voorkeuren + + + + &General + &Algemeen + + + + Default &location + Standaard&locatie + + + + Remember last location + Onthoud laatste locatie + + + + Always use this location + Gebruik altijd deze locatie + + + + Remember last location for session only + Onthoud laatste locatie alleen gedurende sessie + + + + + + ... + ... + + + + Lan&guage + &Taal + + + + Toolbar style + Werkbalkstijl + + + + + + + + Only display the icon + Toon alleen het icoon + + + + + + + + Only display the text + Toon alleen de tekst + + + + + + + + The text appears beside the icon + Toon de tekst naast het icoon + + + + + + + + The text appears under the icon + Toon de tekst onder het icoon + + + + + + + + Follow the style + Volg de stijl + + + + Show remote options + Toon 'Toegang op afstand'-opties + + + + + + + + + + + + enabled + inschakelen + + + + Automatic &updates + Automatische &updates + + + + DB file extensions + Databasebestandsextensies + + + + Manage + Beheren + + + + Main Window + Hoofdvenster + + + + Database Structure + Databasestructuur + + + + Browse Data + Gegevensbrowser + + + + Execute SQL + SQL uitvoeren + + + + Edit Database Cell + Databasecel bewerken + + + + When this value is changed, all the other color preferences are also set to matching colors. + Indien deze waarde aangepast wordt, dan worden alle andere kleurvoorkeuren ook aangepast naar die stijl. + + + + Follow the desktop style + Volg de desktopstijl + + + + Dark style + Donkere stijl + + + + Application style + Applicatiestijl + + + + This sets the font size for all UI elements which do not have their own font size option. + Dit bepaalt het lettertypegrootte voor gebruikersinterface-elementen die geen eigen lettertypegrootte-instelling hebben. + + + + Font size + Lettertypegrootte + + + + &Database + &Database + + + + Database &encoding + Database&codering + + + + Open databases with foreign keys enabled. + Databases openen met vreemde-sleutelondersteuning ingeschakeld. + + + + &Foreign keys + &Vreemde sleutels + + + + Remove line breaks in schema &view + Verwijder regeleinden in schema&weergave + + + + Prefetch block si&ze + Prefetch-&blokgrootte + + + + Default field type + Standaard veldgegevenstype + + + + When enabled, the line breaks in the Schema column of the DB Structure tab, dock and printed output are removed. + Indien geselecteerd worden de regeleinden verwijderd uit de schemakolom van het databasestructuurtabblad, -dock en uit geprinte afdrukken. + + + + Database structure font size + Lettertypegrootte databasestructuur + + + + SQ&L to execute after opening database + S&QL uitvoeren na het openen van database + + + + Data &Browser + Gegevens&browser + + + + Font + Lettertype + + + + &Font + &Lettertype + + + + Font si&ze + Lettertype&grootte + + + + Content + Inhoud + + + + Symbol limit in cell + Symboollimiet in cel + + + + This is the maximum number of items allowed for some computationally expensive functionalities to be enabled: +Maximum number of rows in a table for enabling the value completion based on current values in the column. +Maximum number of indexes in a selection for calculating sum and average. +Can be set to 0 for disabling the functionalities. + Dit bepaalt het maximum aantal items dat voor sommige functionaliteiten met intensieve berekeningen toegestaan is: +Het maximum aantal records in een tabel om waarde-aanvulling in te schakelen aan de hand van de huidige invoer in de kolom. +Het maximaal aantal indices in een selectie om sommen en gemiddelden berekenen in te schakelen. +Voer 0 in om deze functionaliteiten uit te schakelen. + + + + This is the maximum number of rows in a table for enabling the value completion based on current values in the column. +Can be set to 0 for disabling completion. + Dit bepaalt het maximum aantal records in een tabel om waarde-aanvulling in te schakelen aan de hand van de huidige invoer in de kolom. +Voer 0 in om waarde-aanvulling uit te schakelen. + + + + Threshold for completion and calculation on selection + Drempelwaarde voor aanvullingen en berekeningen op selecties + + + + Show images in cell + Toon afbeeldingen in cel + + + + Enable this option to show a preview of BLOBs containing image data in the cells. This can affect the performance of the data browser, however. + Indien geselecteerd wordt in de cellen een voorvertoning getoond van BLOBs die afbeeldingsgegevens bevatten. Dit kan de prestaties van de gegevensbrowser echter beïnvloeden. + + + + Field display + Veldweergave + + + + Displayed &text + Weergegeven &tekst + + + + Binary + Binair + + + + NULL + NULL + + + + Regular + Gewoon + + + + + + + + + Click to set this color + Klik om een kleur te selecteren + + + + Text color + Tekstkleur + + + + Background color + Achtergrondkleur + + + + Preview only (N/A) + Enkel voorvertoning (N/B) + + + + Filters + Filters + + + + Escape character + Escape-teken + + + + Delay time (&ms) + Vertragingstijd (&ms) + + + + Set the waiting time before a new filter value is applied. Can be set to 0 for disabling waiting. + Bepaalt de tijd die gewacht wordt voordat een nieuw filter wordt toegepast. Voer 0 in om wachten uit te schakelen. + + + + &SQL + &SQL + + + + Settings name + Instellingsnaam + + + + Context + Context + + + + Colour + Kleur + + + + Bold + Vet + + + + Italic + Cursief + + + + Underline + Onderstreept + + + + Keyword + Sleutelwoord + + + + Function + Functie + + + + Table + Tabel + + + + Comment + Commentaar + + + + Identifier + Entiteitsnaam + + + + String + Tekenreeks + + + + Current line + Huidige regel + + + + Background + Achtergrond + + + + Foreground + Voorgrond + + + + SQL editor &font + &Lettertype SQL-bewerker + + + + SQL &editor font size + Lettertypegrootte SQL-b&ewerker + + + + SQL &results font size + Lettertypegrootte SQL-&resultaten + + + + Tab size + Tabbreedte + + + + &Wrap lines + Regelteru&gloop toepassen + + + + Never + Nooit + + + + At word boundaries + Op woordbegrenzingen + + + + At character boundaries + Op letterbegrenzingen + + + + At whitespace boundaries + Op witruimtebegrenzingen + + + + &Quotes for identifiers + &Aanhalingstekens voor entiteitsnamen + + + + Choose the quoting mechanism used by the application for identifiers in SQL code. + Kies het aanhalingstekensbeleid van de applicatie voor het demarceren van entiteitsnamen in SQL-code. + + + + "Double quotes" - Standard SQL (recommended) + "Dubbele aanhalingstekens" - Standaard SQL (aanbevolen) + + + + `Grave accents` - Traditional MySQL quotes + `Accent graves` - Traditionele MySQL aanhalingstekens + + + + [Square brackets] - Traditional MS SQL Server quotes + [Rechte haakjes] - Traditionele MS SQL-Server aanhalingstekens + + + + Code co&mpletion + Code-aan&vulling + + + + Keywords in &UPPER CASE + Sleutelwoorden in &BOVENKAST + + + + When set, the SQL keywords are completed in UPPER CASE letters. + Indien geselecteerd worden SQL-sleutelwoorden voltooid in BOVENKAST-letters. + + + + Error indicators + Foutindicatoren + + + + When set, the SQL code lines that caused errors during the last execution are highlighted and the results frame indicates the error in the background + Indien geselecteerd dan worden de SQL-coderegels die de fouten tijdens de laatste uitvoering veroorzaakten gemarkeerd en het resultatenkader toont de fout op de achtergrond + + + + Hori&zontal tiling + Hori&zontaal tegelen + + + + If enabled the SQL code editor and the result table view are shown side by side instead of one over the other. + Indien geselecteerd worden de SQL-bewerker en de resultatenweergavetabel naast elkaar, in plaats van over elkaar heen, getoond. + + + + Close button on tabs + Sluitknoppen op tabbladen + + + + If enabled, SQL editor tabs will have a close button. In any case, you can use the contextual menu or the keyboard shortcut to close them. + Indien geselecteerd krijgen SQL-bewerkingstabbladen een sluitknop. Je kunt echter ook altijd het contextmenu of sneltoetsen gebruiken om ze te sluiten. + + + + &Extensions + &Extensies + + + + Select extensions to load for every database: + Selecteer extensies die voor iedere database geladen dienen te worden: + + + + Add extension + Extensie toevoegen + + + + Remove extension + Extensie verwijderen + + + + <html><head/><body><p>While supporting the REGEXP operator SQLite doesn't implement any regular expression<br/>algorithm but calls back the running application. DB Browser for SQLite implements this<br/>algorithm for you to let you use REGEXP out of the box. However, as there are multiple possible<br/>implementations of this and you might want to use another one, you're free to disable the<br/>application's implementation and load your own by using an extension. Requires restart of the application.</p></body></html> + <html><head/><body><p>Hoewel SQLite de REGEXP operator ondersteunt heeft ze geen reguliere-expressiesalgoritme<br/>geïmplementeerd, maar doet ze hiervoor een beroep op de hostapplicatie. DB-browser voor SQLite<br/>implementeert dit algoritme voor jou, zodat je REGEXP direct kunt gebruiken.<br/>Omdat er echter meerdere implementaties mogelijk zijn en je mogelijk een andere implementatie<br/>wilt gebruiken, staat het je vrij om onze implementatie uit te schakelen en je eigen implementatie te laden<br/>via een extensie. Hiervoor is een herstart van de applicatie nodig.</p></body></html> + + + + Disable Regular Expression extension + Schakel extensie voor reguliere expressies uit + + + + <html><head/><body><p>SQLite provides an SQL function for loading extensions from a shared library file. Activate this if you want to use the <span style=" font-style:italic;">load_extension()</span> function from SQL code.</p><p>For security reasons, extension loading is turned off by default and must be enabled through this setting. You can always load extensions through the GUI, even though this option is disabled.</p></body></html> + <html><head/><body><p>SQLite biedt een SQL-functie om extensies te laden vanuit een gedeelde bibliotheek. Activeer deze optie als je de <span style=" font-style:italic;">load_extension()</span> functie vanuit SQL-code wilt aanroepen.</p><p>Om veiligheidsredenen is deze manier van extensies laden standaard uitgeschakeld en dient via deze optie in te worden geschakeld. Je kunt extensies echter altijd laden via de gebruikersinterface, zelfs als deze optie uitgeschakeld is.</p></body></html> + + + + Allow loading extensions from SQL code + Extensies laden vanuit SQL-code toestaan + + + + Remote + Toegang op afstand + + + + Your certificates + Jouw certificaten + + + + File + Bestand + + + + + Subject CN + Subject GN + + + + Subject Common Name + Subject Gebruikelijk Naam + + + + Issuer CN + Verstrekker GN + + + + Issuer Common Name + Verstrekker Gebruikelijke Naam + + + + + Valid from + Geldig vanaf + + + + + Valid to + Geldig tot + + + + + Serial number + Serienummer + + + + CA certificates + CA-certificaten + + + + Common Name + Gebruikelijke naam + + + + Subject O + Subject O + + + + Organization + Organisatie + + + + Clone databases into + Database klonen naar + + + + Proxy + Proxy + + + + Configure + Instellen + + + + + Choose a directory + Kies een map + + + + The language will change after you restart the application. + De taal verandert nadat je de applicatie opnieuw hebt opgestart. + + + + Select extension file + Selecteer extensiebestand + + + + Extensions(*.so *.dylib *.dll);;All files(*) + Extensies(*.so *.dylib *.dll);;Alle bestanden(*) + + + + Import certificate file + Certificaatbestand importeren + + + + No certificates found in this file. + Geen certificaten gevonden in dit bestand. + + + + Are you sure you want do remove this certificate? All certificate data will be deleted from the application settings! + Weet je zeker dat je dit certificaat wilt verwijderen? Alle certificaatgegevens zullen worden verwijderd uit de applicatie-instellingen! + + + + Are you sure you want to clear all the saved settings? +All your preferences will be lost and default values will be used. + Weet je zeker dat je alle opgeslagen instellingen wilt verwijderen? +Al jouw instellingen zullen worden verwijderd en de standaardinstellingen zullen worden gebruikt. + + + + ProxyDialog + + + Proxy Configuration + Proxy-instellingen + + + + Pro&xy Type + Pro&xytype + + + + Host Na&me + &Hostnaam + + + + Port + &Poort + + + + Authentication Re&quired + &Authenticatie vereist + + + + &User Name + &Gebruikersnaam + + + + Password + &Wachtwoord + + + + None + Geen + + + + System settings + Systeeminstellingen + + + + HTTP + HTTP + + + + Socks v5 + Socks v5 + + + + QObject + + + Left + Links + + + + Right + Rechts + + + + Center + Gecentreerd + + + + Justify + Uitgevuld + + + + All files (*) + Alle bestanden (*) + + + + SQLite Database Files (*.db *.sqlite *.sqlite3 *.db3) + SQLite-databasebestanden (*.db *.sqlite *.sqlite3 *.db3) + + + + DB Browser for SQLite Project Files (*.sqbpro) + DB-browser voor SQLite-projectbestanden (*.sqbpro) + + + + SQL Files (*.sql) + SQL-bestanden (*.sql) + + + + All Files (*) + Alle bestanden (*) + + + + Text Files (*.txt) + Tekstbestanden (*.txt) + + + + Comma-Separated Values Files (*.csv) + Kommagescheiden bestanden (*.csv) + + + + Tab-Separated Values Files (*.tsv) + Tabgescheiden bestanden (*.tsv) + + + + Delimiter-Separated Values Files (*.dsv) + Scheidingstekengescheiden bestanden (*.dsv) + + + + Concordance DAT files (*.dat) + Concordance-DAT-bestanden (*.dat) + + + + JSON Files (*.json *.js) + JSON-bestanden (*.json *.js) + + + + XML Files (*.xml) + XML-bestanden (*.xml) + + + + Binary Files (*.bin *.dat) + Binaire bestanden (*.bin *.dat) + + + + SVG Files (*.svg) + SVG-bestanden (*.svg) + + + + Hex Dump Files (*.dat *.bin) + Hexdump-bestand (*.dat *.bin) + + + + Extensions (*.so *.dylib *.dll) + Extensies (*.so *.dylib *.dll) + + + + Error importing data + Fout bij het importeren van de gegevens + + + + from record number %1 + van recordnummer %1 + + + + . +%1 + . +%1 + + + + Importing CSV file... + CSV-bestand importeren... + + + + Cancel + Annuleren + + + + SQLite database files (*.db *.sqlite *.sqlite3 *.db3) + SQLite-databasebestanden (*.db *.sqlite *.sqlite3 *.db3) + + + + RemoteCommitsModel + + + Commit ID + Commit ID + + + + Message + Bericht + + + + Date + Datum + + + + Author + Auteur + + + + Size + Grootte + + + + Authored and committed by %1 + Geautoriseerd en gecommitteerd door %1 + + + + Authored by %1, committed by %2 + Geautoriseerd door %1, gecommitteerd door %2 + + + + RemoteDatabase + + + Error opening local databases list. +%1 + Fout bij het openen van lijst met lokale databases. +%1 + + + + Error creating local databases list. +%1 + Fout bij het maken van lijst met lokale databases. +%1 + + + + RemoteDock + + + Remote + Toegang op afstand + + + + Identity + Identiteit + + + + Push currently opened database to server + Push huidig geopende database naar server + + + + DBHub.io + DBHub.io + + + + <html><head/><body><p>In this pane, remote databases from dbhub.io website can be added to DB Browser for SQLite. First you need an identity:</p><ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Login to the dbhub.io website (use your GitHub credentials or whatever you want)</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Click the button to &quot;Generate client certificate&quot; (that's your identity). That'll give you a certificate file (save it to your local disk).</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Go to the Remote tab in DB Browser for SQLite Preferences. Click the button to add a new certificate to DB Browser for SQLite and choose the just downloaded certificate file.</li></ol><p>Now the Remote panel shows your identity and you can add remote databases.</p></body></html> + <html><head/><body><p>In dit paneel kun je externe databases van de dbhub.io website toevoegen aan DB-browser voor SQLite. Allereerst heb je een identiteit nodig:</p><ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Log in op de dbhub.io website (gebruik bijvoorbeeld jouw GitHub account of wat je maar wilt)</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Klik de knop &quot;Generate client certificate&quot; (dat is jouw identiteit). Daarmee krijg je een certificaatbestand (sla deze op, op jouw lokale schijf).</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Ga vervolgens naar het tabblad 'Toegang op afstand', in het instellingenvenster van DB-browser voor SQLite. Klik op de knop om een nieuw certificaat toe te voegen aan DB-browser for SQLite en kies dan het zojuist gedownloade certificaatbestand.</li></ol><p>Nu toont het paneel 'Toegang op afstand' jouw identiteit en kun je externe databases toevoegen.</p></body></html> + + + + Local + Lokaal + + + + Current Database + Huidige database + + + + Clone + Klonen + + + + User + Gebruiker + + + + Database + Database + + + + Branch + Tak + + + + Commits + Commits + + + + Commits for + Commits voor + + + + <html><head/><body><p>You are currently using a built-in, read-only identity. For uploading your database, you need to configure and use your DBHub.io account.</p><p>No DBHub.io account yet? <a href="https://dbhub.io/"><span style=" text-decoration: underline; color:#007af4;">Create one now</span></a> and import your certificate <a href="#preferences"><span style=" text-decoration: underline; color:#007af4;">here</span></a> to share your databases.</p><p>For online help visit <a href="https://dbhub.io/about"><span style=" text-decoration: underline; color:#007af4;">here</span></a>.</p></body></html> + <html><head/><body><p>Je gebruikt momenteel een ingebouwde, alleen-lezenindentiteit. Om jouw database te uploaden dien je jouw DBHub.io-account in te stellen en te gebruiken.</p><p>Nog geen DBHub.io account? <a href="https://dbhub.io/"><span style=" text-decoration: underline; color:#007af4;">Maak er nu een aan</span></a> en importeer jouw certificaat <a href="#preferences"><span style=" text-decoration: underline; color:#007af4;">hier</span></a> om jouw databases te delen.</p><p>Bezoek <a href="https://dbhub.io/about"><span style=" text-decoration: underline; color:#007af4;">deze link</span></a> voor online hulp.</p></body></html> + + + + Back + Terug + + + + Delete Database + Database verwijderen + + + + Delete the local clone of this database + De lokale kloon van deze database verwijderen + + + + Open in Web Browser + In webbrowser openen + + + + Open the web page for the current database in your browser + De webpagina van de huidige database openen in je browser + + + + Clone from Link + Van link klonen + + + + Use this to download a remote database for local editing using a URL as provided on the web page of the database. + Hiermee download je een externe database om lokaal te bewerken aan de hand van de URL die verstrekt werd op de webpagina van de database. + + + + Refresh + Verversen + + + + Reload all data and update the views + Alle gegevens herladen en de views updaten + + + + F5 + + + + + Clone Database + Database klonen + + + + Open Database + Database openen + + + + Open the local copy of this database + Lokale kopie van deze database openen + + + + Check out Commit + Commit inladen + + + + Download and open this specific commit + Deze specifieke downloaden en openen + + + + Check out Latest Commit + Laatste commit inladen + + + + Check out the latest commit of the current branch + De laatste commit van de huidige tak inladen + + + + Save Revision to File + Revisie opslaan in bestand + + + + Saves the selected revision of the database to another file + Slaat de geselecteerde revisie van de database op in een ander bestand + + + + Upload Database + Database uploaden + + + + Upload this database as a new commit + Deze database uploaden als een nieuwe commit + + + + Select an identity to connect + Selecteer een identiteit om te verbinden + + + + Public + Openbaar + + + + This downloads a database from a remote server for local editing. +Please enter the URL to clone from. You can generate this URL by +clicking the 'Clone Database in DB4S' button on the web page +of the database. + Dit downloadt een database van een externe server om lokaal te bewerken. +Voer een URL in van waaruit gekloond moet worden. Je kunt deze URL +genereren door te klikken op de 'Clone Database in DB4S'-knop op de +webpagina van de database. + + + + Invalid URL: The host name does not match the host name of the current identity. + Ongeldige URL: De hostnaam komt niet overeen met de hostnaam van de huidige identiteit. + + + + Invalid URL: No branch name specified. + Ongeldige URL: Geen taknaam opgegeven. + + + + Invalid URL: No commit ID specified. + Ongeldige URL: Geen commit-ID opgegeven. + + + + You have modified the local clone of the database. Fetching this commit overrides these local changes. +Are you sure you want to proceed? + Je hebt de lokale kloon van de database aangepast. Als je deze commit inlaadt overschrijft dit lokale wijzigingen. +Weet je zeker dat je door wilt gaan? + + + + The database has unsaved changes. Are you sure you want to push it before saving? + De database heeft niet-opgeslagen wijzigingen. Weet je zeker dat je wilt pushen voordat je opslaat? + + + + The database you are trying to delete is currently opened. Please close it before deleting. + De database die je probeert te verwijderen is op het ogenblik geopend. Sluit deze voordat je deze verwijdert. + + + + This deletes the local version of this database with all the changes you have not committed yet. Are you sure you want to delete this database? + Dit verwijdert de lokale database met alle wijzigingen die je nog niet gecommitteerd hebt. Weet je zeker dat je deze database wilt verwijderen? + + + + RemoteLocalFilesModel + + + Name + Naam + + + + Branch + Tak + + + + Last modified + Laatst gewijzigd + + + + Size + Grootte + + + + Commit + Commit + + + + File + Bestand + + + + RemoteModel + + + Name + Naam + + + + Last modified + Laatst gewijzigd + + + + Size + Grootte + + + + Commit + Commit + + + + Size: + Grootte: + + + + Last Modified: + Laatst gewijzigd: + + + + Licence: + Licentie: + + + + Default Branch: + Standaardtak: + + + + RemoteNetwork + + + Choose a location to save the file + Kies een locatie om het bestand in op te slaan + + + + Error opening remote file at %1. +%2 + Fout bij het openen van extern bestand %1. +%2 + + + + Error: Invalid client certificate specified. + Fout: ongeldig certificaatbestand opgegeven. + + + + Please enter the passphrase for this client certificate in order to authenticate. + Geef de toegangsfrase voor dit client-certificaat op om te authenticeren. + + + + Cancel + Annuleren + + + + Uploading remote database to +%1 + Externe database wordt geüploadt naar +%1 + + + + Downloading remote database from +%1 + Externe database wordt gedownload vanaf +%1 + + + + + Error: The network is not accessible. + Fout: het netwerk is niet toegankelijk. + + + + Error: Cannot open the file for sending. + Fout: kan het te verzenden bestand niet openen. + + + + RemotePushDialog + + + Push database + Database pushen + + + + Database na&me to push to + Database&naam om naar te pushen + + + + Commit message + Commitbericht + + + + Database licence + Databaselicentie + + + + Public + Openbaar + + + + Branch + Tak + + + + Force push + Push forceren + + + + Username + Gebruikersnaam + + + + Database will be public. Everyone has read access to it. + Database wordt openbaar. Iedereen zal leestoegang hebben. + + + + Database will be private. Only you have access to it. + Database wordt privé. Alleen jij zal leestoegang hebben. + + + + Use with care. This can cause remote commits to be deleted. + Wees hier voorzichtig mee; dit kan ervoor zorgen dat externe commits verwijderd worden. + + + + RunSql + + + Execution aborted by user + Uitvoering afgebroken door gebruiker + + + + , %1 rows affected + , %1 records getroffen + + + + query executed successfully. Took %1ms%2 + Opdracht succesvol uitgevoerd. Duurde %1ms%2 + + + + executing query + opdracht wordt uitgevoerd + + + + SelectItemsPopup + + + A&vailable + Beschi&kbaar + + + + Sele&cted + Gese&lecteerd + + + + SqlExecutionArea + + + Form + Formulier + + + + Find previous match [Shift+F3] + Vorige overeenkomst zoeken [Shift+F3] + + + + Find previous match with wrapping + Vorige overeenkomst zoeken met terugloop + + + + Shift+F3 + + + + + The found pattern must be a whole word + Het gevonden patroon moet een heel woord zijn + + + + Whole Words + Hele woorden + + + + Text pattern to find considering the checks in this frame + Zoekterm die gezocht moet worden met de geselecteerde opties in dit kader + + + + Find in editor + Zoek in bewerker + + + + The found pattern must match in letter case + De gevonden overeenkomst moet identiek zijn in onder- en bovenkast + + + + Case Sensitive + Identieke onder-/bovenkast + + + + Find next match [Enter, F3] + Volgende overeenkomst zoeken [Enter, F3] + + + + Find next match with wrapping + Volgende overeenkomst zoeken met terugloop + + + + F3 + + + + + Interpret search pattern as a regular expression + Interpreteer zoekterm als reguliere expressie + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + <html><head/><body><p>Indien geselecteerd wordt de zoekterm geïnterpreteerd als een UNIX reguliere expressie. Zie hiervoor <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Reguliere Expressies in Wikibooks (Engels)</a>.</p></body></html> + + + + Regular Expression + Reguliere expressie + + + + + Close Find Bar + Zoekbalk sluiten + + + + <html><head/><body><p>Results of the last executed statements.</p><p>You may want to collapse this panel and use the <span style=" font-style:italic;">SQL Log</span> dock with <span style=" font-style:italic;">User</span> selection instead.</p></body></html> + <html><head/><body><p>Resultaten van de laatst uitgevoerde opdrachten.</p><p>Je kunt dit paneel ook inklappen en in plaats daarvan het <span style=" font-style:italic;">SQL-log</span>dock gebruiken met <span style=" font-style:italic;">Gebruiker</span> geselecteerd.</p></body></html> + + + + This field shows the results and status codes of the last executed statements. + Dit veld toont de resultaten en statuscodes van de laatst uitgevoerde opdrachten. + + + + Results of the last executed statements + Resultaten van de laatst uitgevoerde opdrachten + + + + Couldn't read file: %1. + Kon het bestand niet lezen: %1. + + + + + Couldn't save file: %1. + Kon het bestand niet opslaan: %1. + + + + Your changes will be lost when reloading it! + Jouw wijzigingen zullen verloren gaan als je het opnieuw laadt! + + + + The file "%1" was modified by another program. Do you want to reload it?%2 + Het bestand '%1' is aangepast door een ander programma. Wil je het herladen?%2 + + + + SqlTextEdit + + + Ctrl+/ + + + + + SqlUiLexer + + + (X) The abs(X) function returns the absolute value of the numeric argument X. + (X) De abs(X) functie retourneert de absolute waarde van het numerieke argument X. + + + + () The changes() function returns the number of database rows that were changed or inserted or deleted by the most recently completed INSERT, DELETE, or UPDATE statement. + () De changes() functie retourneert het aantal databaserecords dat gewijzigd, ingevoegd +of verwijderd is door de meest recent voltooide INSERT-, DELETE- of UPDATE-instructie. + + + + (X1,X2,...) The char(X1,X2,...,XN) function returns a string composed of characters having the unicode code point values of integers X1 through XN, respectively. + (X1,X2,...) De char(X1,X2,...,XN) functie retourneert een tekenreeks bestaande uit tekens +met de respectievelijke unicode-codepuntwaarden van de gehele getallen X1 tot en met XN. + + + + (X,Y,...) The coalesce() function returns a copy of its first non-NULL argument, or NULL if all arguments are NULL + (X,Y,...) De coalesce(X,Y,...) functie retourneert een kopie van het eerste niet-NULL argument, of NULL als alle argument NULL zijn + + + + (X,Y) The glob(X,Y) function is equivalent to the expression "Y GLOB X". + (X,Y) De glob(X,Y) functie is het equivalent van de expressie "Y GLOB X". + + + + (X,Y) The ifnull() function returns a copy of its first non-NULL argument, or NULL if both arguments are NULL. + (X,Y) De ifnull(X,Y) functie retourneert een kopie van het eerste niet-NULL argument, of NULL als beide argumenten NULL zijn. + + + + (X,Y) The instr(X,Y) function finds the first occurrence of string Y within string X and returns the number of prior characters plus 1, or 0 if Y is nowhere found within X. + (X,Y) De instr(X,Y) functie zoekt het eerste voorkomen van tekenreeks Y in tekenreeks X +en retourneert het aantal voorgaande tekens plus 1, of 0 als Y niet voorkomt in X. + + + + (X) The hex() function interprets its argument as a BLOB and returns a string which is the upper-case hexadecimal rendering of the content of that blob. + (X) De hex(X) functie interpreteert het argument als een BLOB en retourneert de +hexadecimale voorstelling van de BLOB-inhoud als tekenreeks in bovenkast. + + + + () The last_insert_rowid() function returns the ROWID of the last row insert from the database connection which invoked the function. + () De last_insert_rowid() functie retourneert het ROWID van het laatste record dat +door de databaseverbinding die de functie aanriep is ingevoegd. + + + + (X) For a string value X, the length(X) function returns the number of characters (not bytes) in X prior to the first NUL character. + (X) Voor een tekenreeks X, retourneert de length(X) functie het aantal tekens (en niet bytes) in X voor het eerste NUL-teken. + + + + (X,Y) The like() function is used to implement the "Y LIKE X" expression. + (X,Y) De like(X,Y) functie wordt gebruikt als implementatie voor de expressie "Y LIKE X". + + + + (X,Y,Z) The like() function is used to implement the "Y LIKE X ESCAPE Z" expression. + (X,Y,Z) De like(X,Y,Z) functie wordt gebruikt als implementatie voor de expressie "Y LIKE X ESCAPE Z". + + + + (X) The load_extension(X) function loads SQLite extensions out of the shared library file named X. +Use of this function must be authorized from Preferences. + (X) De load_extension(X) functie laadt SQLite extensies uit een gedeeld biblitheekbestand genaamd X. +Voor het gebruik van deze functie is autorisatie vanuit Instellingen nodig. + + + + (X,Y) The load_extension(X) function loads SQLite extensions out of the shared library file named X using the entry point Y. +Use of this function must be authorized from Preferences. + (X,Y) De load_extension(X,Y) functie laadt SQLite extensies uit een gedeeld biblitheekbestand +genaamd X gebruikmakend van toegangspunt Y. +Voor het gebruik van deze functie is autorisatie vanuit Instellingen nodig. + + + + (X) The lower(X) function returns a copy of string X with all ASCII characters converted to lower case. + (X) De lower(X) functie retourneert een kopie van de tekenreeks X waarbij alle ASCII-tekens omgezet worden naar onderkast. + + + + (X) ltrim(X) removes spaces from the left side of X. + (X) ltrim(X) verwijdert alle spaties aan de linkerkant van X. + + + + (X,Y) The ltrim(X,Y) function returns a string formed by removing any and all characters that appear in Y from the left side of X. + (X,Y) De ltrim(X,Y) functie retourneert een tekenreeks die gevormd wordt door alle +tekens die in Y voorkomen te verwijderen van de linkerkant van X. + + + + (X,Y,...) The multi-argument max() function returns the argument with the maximum value, or return NULL if any argument is NULL. + (X,Y,...) De max(X,Y,...) functie accepteert een variabel aantal argumenten en +retourneert het argument met de hoogste waarde, of NULL als enig argument NULL is. + + + + (X,Y,...) The multi-argument min() function returns the argument with the minimum value. + (X,Y,...) De min(X,Y,...) functie accepteert een variabel aantal argumenten en retourneert het argument met de laagste waarde. + + + + (X,Y) The nullif(X,Y) function returns its first argument if the arguments are different and NULL if the arguments are the same. + (X,Y) De nullif(X,Y) functie retourneert het eerste argument als de argumenten +verschillend zijn en NULL als de argumenten hetzelfde zijn. + + + + (FORMAT,...) The printf(FORMAT,...) SQL function works like the sqlite3_mprintf() C-language function and the printf() function from the standard C library. + (FORMAT,...) De printf(FORMAT,...) SQL functie werkt zoals de sqlite3_mprintf() functie +in de C-taal en de printf() functie uit de standaard C-bibliotheek. + + + + (X) The quote(X) function returns the text of an SQL literal which is the value of its argument suitable for inclusion into an SQL statement. + (X) De quote(X) functie retourneert de tekst van een SQL literaal met de waarde van +het argument, geschikt om in te sluiten in een SQL-instructie. + + + + () The random() function returns a pseudo-random integer between -9223372036854775808 and +9223372036854775807. + () De random() functie retourneert een pseudowillekeurig geheel getal tussen -9223372036854775808 en +9223372036854775807. + + + + (N) The randomblob(N) function return an N-byte blob containing pseudo-random bytes. + (N) De randomblob(N) functie retourneert een N-byte blob met pseudowillekeurige bytes. + + + + (X,Y,Z) The replace(X,Y,Z) function returns a string formed by substituting string Z for every occurrence of string Y in string X. + (X,Y,Z) De replace(X,Y,Z) functie retourneert een tekenreeks samengesteld door alle +voorvallen van tekenreeks Y in tekenreeks X te vervangen door tekenreeks Z. + + + + (X) The round(X) function returns a floating-point value X rounded to zero digits to the right of the decimal point. + (X) De round(X) functie retourneert het zwevendekommagetal X afgerond naar nul cijfers achter de komma. + + + + (X,Y) The round(X,Y) function returns a floating-point value X rounded to Y digits to the right of the decimal point. + (X,Y) De round(X,Y) functie retourneert het zwevendekommagetal X afgerond naar Y cijfers achter de komma. + + + + (X) rtrim(X) removes spaces from the right side of X. + (X) rtrim(X) verwijdert alle spaties aan de rechterkant van X. + + + + (X,Y) The rtrim(X,Y) function returns a string formed by removing any and all characters that appear in Y from the right side of X. + (X,Y) De rtrim(X,Y) functie retourneert een tekenreeks die gevormd wordt door alle +tekens die in Y voorkomen te verwijderen van de rechterkant van X. + + + + (X) The soundex(X) function returns a string that is the soundex encoding of the string X. + (X) De soundex(X) functie retourneert de soundex-codering van tekenreeks X als tekenreeks. + + + + (X,Y) substr(X,Y) returns all characters through the end of the string X beginning with the Y-th. + (X,Y) substr(X,Y) retourneert alle tekens van de tekenreeks X, van het Y-ste teken tot en met het laatste. + + + + (X,Y,Z) The substr(X,Y,Z) function returns a substring of input string X that begins with the Y-th character and which is Z characters long. + (X,Y,Z) De substr(X,Y,Z) functie retourneert het deel van de tekenreeks X, vanaf het Y-ste teken, en met lengte Z. + + + + () The total_changes() function returns the number of row changes caused by INSERT, UPDATE or DELETE statements since the current database connection was opened. + () De total_changes() functie retourneert het aantal databaserecords dat gewijzigd is +door INSERT-, DELETE- of UPDATE-instructies sinds de databaseconnectie geopend werd. + + + + (X) trim(X) removes spaces from both ends of X. + (X) trim(X) verwijdert alle spaties aan beide kanten van X. + + + + (X,Y) The trim(X,Y) function returns a string formed by removing any and all characters that appear in Y from both ends of X. + (X,Y) De trim(X,Y) functie retourneert een tekenreeks die gevormd wordt door alle tekens +die in Y voorkomen te verwijderen van beide kanten van X. + + + + (X) The typeof(X) function returns a string that indicates the datatype of the expression X. + (X) De typeof(X) functie retourneert een tekenreeks die aangeeft wat het gegevenstype van expressie X is. + + + + (X) The unicode(X) function returns the numeric unicode code point corresponding to the first character of the string X. + (X) De unicode(X) functie retourneert het numerieke unicode-codepunt van het eerste teken in de tekenreeks X. + + + + (X) The upper(X) function returns a copy of input string X in which all lower-case ASCII characters are converted to their upper-case equivalent. + (X) De upper(X) functie retourneert een kopie van de tekenreeks X waarbij alle +onderkast ASCII-tekens omgezet worden naar hun bovenkast equivalent. + + + + (N) The zeroblob(N) function returns a BLOB consisting of N bytes of 0x00. + (N) De zeroblob(N) functie retourneert een blob met N 0x00 bytes. + + + + + + + (timestring,modifier,modifier,...) + (tijdtekenreeks,modificator,modificator,...) + + + + (format,timestring,modifier,modifier,...) + (formaat,tijdtekenreeks,modificator,modificator,...) + + + + (X) The avg() function returns the average value of all non-NULL X within a group. + (X) De avg() functie retourneert de gemiddelde waarde van alle niet-NULL X in een groep. + + + + (X) The count(X) function returns a count of the number of times that X is not NULL in a group. + (X) De count(X) functie retourneert het aantal maal dat X niet NULL is in een groep. + + + + (X) The group_concat() function returns a string which is the concatenation of all non-NULL values of X. + (X) De group_concat(X) functie retourneert een tekenreeks die de aaneenschakeling is van alle niet-NULL waarden van X. + + + + (X,Y) The group_concat() function returns a string which is the concatenation of all non-NULL values of X. If parameter Y is present then it is used as the separator between instances of X. + (X,Y) De group_concat(X,Y) functie retourneert een tekenreeks die de aaneenschakeling +is van alle niet-NULL waarden van X, met Y als scheidingsteken(-reeks). + + + + (X) The max() aggregate function returns the maximum value of all values in the group. + (X) De max(X) aggregaatfunctie retourneert de hoogste waarde van alle waarden in de groep. + + + + (X) The min() aggregate function returns the minimum non-NULL value of all values in the group. + (X) De min(X) aggregaatfunctie retourneert de laagste niet-NULL waarde van alle waarden in de groep. + + + + + (X) The sum() and total() aggregate functions return sum of all non-NULL values in the group. + (X) De sum(X) en total(X) aggregaatfuncties retourneren de opsomming van alle niet-NULL waarden in de groep. + + + + () The number of the row within the current partition. Rows are numbered starting from 1 in the order defined by the ORDER BY clause in the window definition, or in arbitrary order otherwise. + () Het nummer van de rij binnen de huidige partitie. Rijen worden genummerd vanaf 1 +in de volgorde zoals gedefinieerd door de ORDER BY clausule in de vensterdefinitie, +of anders in arbitraire volgorde. + + + + () The row_number() of the first peer in each group - the rank of the current row with gaps. If there is no ORDER BY clause, then all rows are considered peers and this function always returns 1. + () Het row_number() van de eerste peer in elke groep - de rang van de huidige rij +met hiaten. Als er geen ORDER BY clausule is, dan worden alle rijen als peer +beschouwd en retourneert deze functie altijd 1. + + + + () The number of the current row's peer group within its partition - the rank of the current row without gaps. Partitions are numbered starting from 1 in the order defined by the ORDER BY clause in the window definition. If there is no ORDER BY clause, then all rows are considered peers and this function always returns 1. + () Het nummer van de peergroep van de huidige rij, binnen diens partitie - de rang +van de huidige rij zonder hiaten. Partities worden genummerd vanaf 1 in de volgorde +zoals gedefinieerd door de ORDER BY clausule in de vensterdefinitie. Als er geen +ORDER BY clausule is, dan worden alle rijen als peer beschouwd en retourneert deze functie altijd 1. + + + + () Despite the name, this function always returns a value between 0.0 and 1.0 equal to (rank - 1)/(partition-rows - 1), where rank is the value returned by built-in window function rank() and partition-rows is the total number of rows in the partition. If the partition contains only one row, this function returns 0.0. + () Ondanks de naam retourneert deze functie altijd een waarde tussen 0,0 en 1,0 +gelijk aan (rang - 1)/(partitierijen - 1), waarbij rang de waarde is die geretourneerd +wordt door de ingebouwde vensterfunctie rank() en partitierijen het totaal aantal +rijen in de partitie is. Wanneer de partitie maar een rij bevat dan retourneert deze functie 0,0. + + + + () The cumulative distribution. Calculated as row-number/partition-rows, where row-number is the value returned by row_number() for the last peer in the group and partition-rows the number of rows in the partition. + () De cumulatieve distributie. Berekend als rijnummer/partitierijen, waarbij rijnummer +de waarde is die geretourneerd wordt door row_number() voor de laatste peer in de +groep en partitierijen het aantal rijen in de partitie is. + + + + (N) Argument N is handled as an integer. This function divides the partition into N groups as evenly as possible and assigns an integer between 1 and N to each group, in the order defined by the ORDER BY clause, or in arbitrary order otherwise. If necessary, larger groups occur first. This function returns the integer value assigned to the group that the current row is a part of. + (N) Argument N wordt behandeld als geheel getal. Deze functie deelt de partitie zo +evenredig als mogelijk op in N groepen en kent aan elke groep een getal tussen +1 en N toe , in de volgorde zoals gedefinieerd door de ORDER BY clausule, indien +aanwezig, en anders in arbitraire volgorde.. Indien nodig komen grote groepen eerst. +Deze functie retourneert het gehele getal dat toegekend is aan de groep waar de +huidige rij deel van uit maakt. + + + + (expr) Returns the result of evaluating expression expr against the previous row in the partition. Or, if there is no previous row (because the current row is the first), NULL. + (expr) Evalueert de expressie expr tegen de vorige rij in de partitie en retourneert +het resultaat. Of NULL, indien er geen vorige rij bestaat (omdat de huidige rij de eerste is). + + + + (expr,offset) If the offset argument is provided, then it must be a non-negative integer. In this case the value returned is the result of evaluating expr against the row offset rows before the current row within the partition. If offset is 0, then expr is evaluated against the current row. If there is no row offset rows before the current row, NULL is returned. + (expr,verschuiving) Indien het argument verschuiving wordt meegegeven dan dient +dit een niet-negatief geheel getal te zijn. In dat geval wordt de expressie expr tegen +de rij met afstand verschuiving voor de huidige rij in de partitie geëvalueerd en het +resultaat retourneerd. Als verschuiving 0 is dan wordt tegen de huidige rij geëvalueerd. +Indien er geen rij met afstand verschuiving voor de huidige rij bestaat, wordt NULL geretourneerd. + + + + + (expr,offset,default) If default is also provided, then it is returned instead of NULL if the row identified by offset does not exist. + (expr,verschuiving,standaardwaarde) Retourneert standaardwaarde als deze meegegeven +is of anders NULL wanneer de rij volgens de verschuiving niet bestaat. + + + + (expr) Returns the result of evaluating expression expr against the next row in the partition. Or, if there is no next row (because the current row is the last), NULL. + (expr) Evalueert de expressie expr tegen de volgende rij in de partitie en retourneert +het resultaat. Of NULL, indien er geen volgende rij bestaat (omdat de huidige rij de laatste is). + + + + (expr,offset) If the offset argument is provided, then it must be a non-negative integer. In this case the value returned is the result of evaluating expr against the row offset rows after the current row within the partition. If offset is 0, then expr is evaluated against the current row. If there is no row offset rows after the current row, NULL is returned. + (expr,verschuiving) Indien het argument verschuiving wordt meegegeven dan +dient dit een niet-negatief geheel getal te zijn. In dat geval wordt de expressie +expr tegen de rij met afstand verschuiving na de huidige rij in de partitie +geëvalueerd en het resultaat retourneerd. Als verschuiving 0 is dan wordt tegen +de huidige rij geëvalueerd. Indien er geen rij met afstand verschuiving na de +huidige rij bestaat, wordt NULL geretourneerd. + + + + (expr) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the first row in the window frame for each row. + (expr) Deze ingebouwde vensterfunctie berekent het vensterkader voor elke rij, +op dezelfde manier als een geaggregeerde vensterfunctie. Evalueert voor elke rij +de expressie expr tegen de eerste rij in het vensterkader en retourneert de waarde. + + + + (expr) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the last row in the window frame for each row. + (expr) Deze ingebouwde vensterfunctie berekent het vensterkader voor elke rij, +op dezelfde manier als een geaggregeerde vensterfunctie. Evalueert voor elke rij +de expressie expr tegen de laatste rij in het vensterkader en retourneert de waarde. + + + + (expr,N) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the row N of the window frame. Rows are numbered within the window frame starting from 1 in the order defined by the ORDER BY clause if one is present, or in arbitrary order otherwise. If there is no Nth row in the partition, then NULL is returned. + (expr,N) Deze ingebouwde vensterfunctie berekent het vensterkader voor elke rij, +op dezelfde manier als een geaggregeerde vensterfunctie. Evalueert de expressie +expr tegen rij N van het vensterkader en retourneert de waarde. Rijen worden binnen +het vensterkader genummerd vanaf 1 in de volgorde zoals gedefinieerd door de +ORDER BY clausule,indien aanwezig, en anders in arbitraire volgorde. Als rij N niet +bestaat in de partitie dan wordt NULL geretourneerd. + + + + SqliteTableModel + + + reading rows + records lezen + + + + loading... + aan het laden... + + + + References %1(%2) +Hold %3Shift and click to jump there + Verwijst naar %1(%2) +Houdt %3Shift ingedrukt terwijl je klikt om er naartoe te springen + + + + Error changing data: +%1 + Fout bij het aanpassen van gegevens: +%1 + + + + retrieving list of columns + lijst met kolommen aan het ophalen + + + + Fetching data... + Gegevens aan het ophalen... + + + + + Cancel + Annuleren + + + + TableBrowser + + + Browse Data + Gegevensbrowser + + + + &Table: + &Tabel: + + + + Select a table to browse data + Selecteer een tabel om door gegevens te bladeren + + + + Use this list to select a table to be displayed in the database view + Gebruik deze lijst om een tabel te selecteren die getoond zal worden in de gegevensbrowser + + + + This is the database table view. You can do the following actions: + - Start writing for editing inline the value. + - Double-click any record to edit its contents in the cell editor window. + - Alt+Del for deleting the cell content to NULL. + - Ctrl+" for duplicating the current record. + - Ctrl+' for copying the value from the cell above. + - Standard selection and copy/paste operations. + Dit is het databasetabeloverzicht: Je kunt hier de volgende handelingen uitvoeren: + - Beginnen met typen om waarden in de regel te bewerken. + - Dubbelklikken op een willekeurig record om diens inhoud te bewerken in het celbewerkingsvenster. + - Alt-Del om de celinhoud om te zetten naar NULL. + - Ctrl+" om het huidige record te dupliceren. + - Ctrl+' om de celwaarde boven te kopiëren. + - Gebruikelijke kopiëren/plakken handelingen. + + + + Text pattern to find considering the checks in this frame + Zoekterm die gezocht moet worden met de geselecteerde opties in dit kader + + + + Find in table + Zoek in tabel + + + + Find previous match [Shift+F3] + Vorige overeenkomst zoeken [Shift+F3] + + + + Find previous match with wrapping + Vorige overeenkomst zoeken met terugloop + + + + Shift+F3 + + + + + Find next match [Enter, F3] + Volgende overeenkomst zoeken [Enter, F3] + + + + Find next match with wrapping + Volgende overeenkomst zoeken met terugloop + + + + F3 + + + + + The found pattern must match in letter case + De gevonden overeenkomst moet identiek zijn in onder-/bovenkast + + + + Case Sensitive + Identieke onder-/bovenkast + + + + The found pattern must be a whole word + Het gevonden patroon moet een heel woord zijn + + + + Whole Cell + Gehele cel + + + + Interpret search pattern as a regular expression + Interpreteer zoekterm als reguliere expressie + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + <html><head/><body><p>Indien geselecteerd wordt de zoekterm geïnterpreteerd als een UNIX reguliere expressie. Zie hiervoor <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Reguliere Expressies in Wikibooks (Engels)</a>.</p></body></html> + + + + Regular Expression + Reguliere expressie + + + + + Close Find Bar + Zoekbalk sluiten + + + + Text to replace with + Tekst om mee te vervangen + + + + Replace with + Vervangen met + + + + Replace next match + Vervang volgende overeenkomst + + + + + Replace + Vervangen + + + + Replace all matches + Alle overeenkomsten vervangen + + + + Replace all + Alles vervangen + + + + <html><head/><body><p>Scroll to the beginning</p></body></html> + <html><head/><body><p>Blader naar het begin</p></body></html> + + + + <html><head/><body><p>Clicking this button navigates to the beginning in the table view above.</p></body></html> + <html><head/><body><p>Klikken op deze knop brengt je naar het begin van het hierboven getoonde tabeloverzicht.</p></body></html> + + + + |< + |< + + + + Scroll one page upwards + Blader één pagina omhoog + + + + <html><head/><body><p>Clicking this button navigates one page of records upwards in the table view above.</p></body></html> + <html><head/><body><p>Klikken op deze knop bladert één pagina omhoog in het hierboven getoonde tabeloverzicht.</p></body></html> + + + + < + < + + + + 0 - 0 of 0 + 0 - 0 van 0 + + + + Scroll one page downwards + Blader één pagina omlaag + + + + <html><head/><body><p>Clicking this button navigates one page of records downwards in the table view above.</p></body></html> + <html><head/><body><p>Klikken op deze knop bladert één pagina omlaag in het hierboven getoonde tabeloverzicht.</p></body></html> + + + + > + > + + + + Scroll to the end + Blader naar het einde + + + + <html><head/><body><p>Clicking this button navigates up to the end in the table view above.</p></body></html> + <html><head/><body><p>Klikken op deze knop brengt je naar het einde van het hierboven getoonde tabeloverzicht.</p></body></html> + + + + >| + >| + + + + <html><head/><body><p>Click here to jump to the specified record</p></body></html> + <html><head/><body><p>Klik op deze knop om naar een specifiek record te springen</p></body></html> + + + + <html><head/><body><p>This button is used to navigate to the record number specified in the Go to area.</p></body></html> + <html><head/><body><p>Deze knop wordt gebruikt om naar het specifieke record van het Ga-naar-veld te springen.</p></body></html> + + + + Go to: + Ga naar: + + + + Enter record number to browse + Voer een recordnummer in om te browsen + + + + Type a record number in this area and click the Go to: button to display the record in the database view + Voer een specifiek recordnummer in dit veld in en klik op de Ga naar-knop, om het record in het tabeloverzicht te tonen + + + + 1 + 1 + + + + Show rowid column + De rowid-kolom tonen + + + + Toggle the visibility of the rowid column + De zichtbaarheid van de rowid-kolom omschakelen + + + + Unlock view editing + Viewbewerking ontgrendelen + + + + This unlocks the current view for editing. However, you will need appropriate triggers for editing. + Dit ontgrendelt de huidige view om deze te bewerken. Je hebt echter de juiste triggers nodig om te kunnen bewerken. + + + + Edit display format + Opmaak bewerken + + + + Edit the display format of the data in this column + De opmaak van de gegevens in deze kolom bewerken + + + + + New Record + Nieuw record + + + + + Insert a new record in the current table + Een nieuw record in de huidige tabel invoegen + + + + <html><head/><body><p>This button creates a new record in the database. Hold the mouse button to open a pop-up menu of different options:</p><ul><li><span style=" font-weight:600;">New Record</span>: insert a new record with default values in the database.</li><li><span style=" font-weight:600;">Insert Values...</span>: open a dialog for entering values before they are inserted in the database. This allows to enter values acomplishing the different constraints. This dialog is also open if the <span style=" font-weight:600;">New Record</span> option fails due to these constraints.</li></ul></body></html> + <html><head/><body><p>Deze knop maakt een nieuw record aan in de database. Houd de muis ingedrukt om een popupmenu met opties te openen:</p><ul><li><span style=" font-weight:600;">Nieuw record</span>: een nieuw record met standaardwaarden invoegen.</li><li><span style=" font-weight:600;">Waarden invoeren...</span>: opent een dialoogvenster om waarden in te voeren voordat ze in de database worden ingevoegd. Hiermee kun je waarden invoeren die aan de beperkingen voldoen. Dit dialoogvenster wordt tevens geopend als <span style=" font-weight:600;">Nieuw record</span> mislukte door deze beperkingen.</li></ul></body></html> + + + + + Delete Record + Record verwijderen + + + + Delete the current record + Het huidige record verwijderen + + + + + This button deletes the record or records currently selected in the table + Deze knop verwijdert huidig in de tabel geselecteerde records + + + + + Insert new record using default values in browsed table + Nieuw record invoegen met de standaardwaarden die gelden voor de getoonde tabel + + + + Insert Values... + Waarden invoeren... + + + + + Open a dialog for inserting values in a new record + Open een dialoogvenster om waarden voor een nieuw record in te voeren + + + + Export to &CSV + Exporteren als &CSV + + + + + Export the filtered data to CSV + De gefilterde gegevens exporteren naar CSV + + + + This button exports the data of the browsed table as currently displayed (after filters, display formats and order column) as a CSV file. + Deze knop exporteert de gegevens van de tabel zoals deze nu getoond worden (door filters, opmaak en kolomsorteringen) naar een CSV-bestand. + + + + Save as &view + Opslaan als &view + + + + + Save the current filter, sort column and display formats as a view + De huidige filters, kolomsorteringen en opmaak opslaan als view + + + + This button saves the current setting of the browsed table (filters, display formats and order column) as an SQL view that you can later browse or use in SQL statements. + Deze knop slaat de gegevens van de tabel zoals deze nu getoond worden (door filters, opmaak en kolomsorteringen) op als SQL-view zodat je er later doorheen kunt bladeren of deze in SQL-instructies kunt gebruiken. + + + + Save Table As... + Tabel opslaan als... + + + + + Save the table as currently displayed + Tabel opslaan zoals deze op het ogenblik wordt getoond + + + + <html><head/><body><p>This popup menu provides the following options applying to the currently browsed and filtered table:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Export to CSV: this option exports the data of the browsed table as currently displayed (after filters, display formats and order column) to a CSV file.</li><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Save as view: this option saves the current setting of the browsed table (filters, display formats and order column) as an SQL view that you can later browse or use in SQL statements.</li></ul></body></html> + <html><head/><body><p>Dit popupmenu biedt de volgende opties om toe te passen op de huidig getoonde en gefilterde tabel:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Exporteren naar CSV: Deze optie exporteert de gegevens van de tabel zoals deze nu getoond worden (door filters, opmaak en kolomsorteringen) naar een CSV-bestand.</li><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Opslaan als view: Deze optie slaat de gegevens van de tabel zoals deze nu getoond worden (door filters, opmaak en kolomsorteringen) op als SQL-view zodat je er later doorheen kunt bladeren of deze in SQL-instructies kunt gebruiken.</li></ul></body></html> + + + + Hide column(s) + Kolom(-men) verbergen + + + + Hide selected column(s) + Geselecteerde kolom(-men) verbergen + + + + Show all columns + Alle kolommen tonen + + + + Show all columns that were hidden + Alle kolommen tonen die verborgen waren + + + + + Set encoding + Encodering aanpassen + + + + Change the encoding of the text in the table cells + Encodering van de tekst in de tabelcellen aanpassen + + + + Set encoding for all tables + Encodering van alle tabellen aanpassen + + + + Change the default encoding assumed for all tables in the database + De standaard veronderstelde encodering voor alle tabellen aanpassen + + + + Clear Filters + Filters wissen + + + + Clear all filters + Alle filters wissen + + + + + This button clears all the filters set in the header input fields for the currently browsed table. + Deze knop wist alle filters onder de kolomkoppen voor de huidig getoonde tabel. + + + + Clear Sorting + Sortering opheffen + + + + Reset the order of rows to the default + Herstelt de sortering van de records naar de standaardsortering + + + + + This button clears the sorting columns specified for the currently browsed table and returns to the default order. + Deze knop heft alle sorteringen voor de huidig getoonde tabel op en zet deze terug naar de standaardsortering. + + + + Print + Afdrukken + + + + Print currently browsed table data + De huidig getoonde tabelgegevens afdrukken + + + + Print currently browsed table data. Print selection if more than one cell is selected. + De huidig getoonde tabelgegevens afdrukken. Drukt selectie af als meer dan één cel geselecteerd is. + + + + Ctrl+P + + + + + Refresh + Verversen + + + + Refresh the data in the selected table + Ververs de gegevens van de huidig geselecteerde tabel + + + + This button refreshes the data in the currently selected table. + Deze knop ververst de gegevens van de huidig geselecteerde tabel. + + + + F5 + + + + + Find in cells + In cellen zoeken + + + + Open the find tool bar which allows you to search for values in the table view below. + Open de zoekwerkbalk die je in staat stelt waarden te zoeken in het hieronder getoonde overzicht. + + + + + Bold + Vet + + + + Ctrl+B + + + + + + Italic + Cursief + + + + + Underline + Onderstreept + + + + Ctrl+U + + + + + + Align Right + Rechts uitlijnen + + + + + Align Left + Links uitlijnen + + + + + Center Horizontally + Horizontaal centreren + + + + + Justify + Uitvullen + + + + + Edit Conditional Formats... + Voorwaardelijke opmaakregels bewerken... + + + + Edit conditional formats for the current column + Voorwaardelijke opmaakregels voor de huidige kolom bewerken + + + + Clear Format + Opmaak wissen + + + + Clear All Formats + Alle opmaak wissen + + + + + Clear all cell formatting from selected cells and all conditional formats from selected columns + Wis alle celopmaak van geselecteerde cellen en wis alle voorwaardelijke opmaak van geselecteerde kolommen + + + + + Font Color + Tekstkleur + + + + + Background Color + Achtergrondkleur + + + + Toggle Format Toolbar + Toon/verberg opmaakwerkbalk + + + + Show/hide format toolbar + Toont of verbergt de opmaakwerkbalk + + + + + This button shows or hides the formatting toolbar of the Data Browser + Deze knop toont of verbergt de opmaakwerkbalk van de Gegevensbrowser + + + + Select column + Kolom selecteren + + + + Ctrl+Space + + + + + Replace text in cells + Tekst in cellen vervangen + + + + Filter in any column + Willekeurige kolom filteren + + + + Ctrl+R + + + + + %n row(s) + + %n record + %n records + + + + + , %n column(s) + + , %n kolom + , %n kolommen + + + + + . Sum: %1; Average: %2; Min: %3; Max: %4 + . Som: %1; Gemiddelde: %2; Min.: %3; Max.: %4 + + + + Conditional formats for "%1" + Voorwaardelijke opmaakregels voor "%1" + + + + determining row count... + aantal records bepalen... + + + + %1 - %2 of >= %3 + %1 - %2 van >= %3 + + + + %1 - %2 of %3 + %1 - %2 van %3 + + + + Please enter a pseudo-primary key in order to enable editing on this view. This should be the name of a unique column in the view. + Voer een pseudo-primaire sleutel in om het bewerken van deze view in te schakelen. Dit dient de naam van een unieke-waardenkolom in de view te zijn. + + + + Delete Records + Records verwijderen + + + + Duplicate records + Records dupliceren + + + + Duplicate record + Record dupliceren + + + + Ctrl+" + + + + + Adjust rows to contents + Rijen aanpassen aan inhoud + + + + Error deleting record: +%1 + Fout bij het verwijderen van record: +%1 + + + + Please select a record first + Selecteer eerst een record + + + + There is no filter set for this table. View will not be created. + Er is geen filter voor deze tabel ingesteld. View wordt niet gemaakt. + + + + Please choose a new encoding for all tables. + Kies een nieuwe codering voor alle tabellen. + + + + Please choose a new encoding for this table. + Kies een nieuwe codering voor deze tabel. + + + + %1 +Leave the field empty for using the database encoding. + %1 +Laat het veld leeg om de databasecodering te gebruiken. + + + + This encoding is either not valid or not supported. + De codering is niet geldig of wordt niet ondersteund. + + + + %1 replacement(s) made. + %1 vervangin(-en) gedaan. + + + + VacuumDialog + + + Compact Database + Database comprimeren + + + + Warning: Compacting the database will commit all of your changes. + Waarschuwing: wanneer je de database comprimeert zullen al jouw gemaakte wijzigingen gecommitteerd worden. + + + + Please select the databases to co&mpact: + Selecteer de databases om te co&mprimeren: + + + diff --git a/ConfigFiles/translations/sqlb_pl.qm b/ConfigFiles/translations/sqlb_pl.qm new file mode 100644 index 0000000000000000000000000000000000000000..5d3d670759617b21754e0a90a6fff26f6a1e86b7 GIT binary patch literal 224964 zcmce931CxI*8h1gNt>o=ipVZtKq!dNA_B@{6)3Avkwp|0N!zpyv`J}Fptx`2zKo9h ziW{!DD~<{-IF7qA?h9_Hj0=vUqcbZ0f4_U*lC%lnH}jwI`*=P;>lUtj?EO_D;%jO+dgk=;BK?2Dr@kVOSl5655uXQ$Jld$QKd;Ai zFg{)vAiy(6w;@cm=@`U^jg#rGp|Ef-JTKwRgd-Ev$H6XP4)E60jFwMJcy zj;D!u4;Q%}eS43@{nK&%qZsoq!1W@Lub)v@Gj^G}dO9D7>&0Tu+CyDEovSg3Qjyh@ zaXkpv4@B~R5znLxMfQ4Jtj3 z*E#%LA;u98i}#H=A{C?6)!g*~T+bD=VTO3$zCg?|QStr+I#PRzFLa6+lfD(-UayH+ z(Ja296UF#sfcQoS#q9p9_@;~y*?pD1)^^a>)l1aXoO8Fn&b?NAhvK=<9#U6x%=_X? z)`+ng?I)kY^-%FG{gaqu$B1vG4?L|=S98iTeVwyeU+2CkzS~X~LT66#YcM#te&eDDe}_WZYW*w9Hl`Gcj?Q@zEgDUq(r%Ejoln{<70i+BdK zO856#ME$&KLe$RgSEv6n@<-7ACct%UsDBZD5?DDnuec> z`7yegG6?fw{NrjF^!JBFp7~7%eKi!{Uo3l(zn2xtUgTGgt+Ln4&xp}GE_;309oK85 zY?sbr_Bl*OZ1#vT`4}0yxKhl1y=78|Um)j8W%5%`i}CT=?AV7PsK$tbKloRnn%eYV~RxXjLNL# zkD|SQ$?R8e5=q`GbLO7~IhiAKUU*W>9z`;DH01w-z2s2;#bUfWSq?o5_q{n5*C$1; z3CW?WaeaKVx*EQ><GPq?yX0SD_WGL~_UreMyX)of@{M9F zSs;hU_7LOmr^)=*{v!8wP*-!{pJo1;elZG1$dM=C2>Kq8BTsoiBz%%Ac&}W{d9AXr z2z2aUC{;6V6?6P|QuV?qnBQNe_8QD*=T~IW!qs9NI$z>*z7=Eo(ULl7y?6=_l4Gud z9oRK0#}(Z#o}Tx~al2z4KDkIvng4`H{5*YqtXxiAdcMf#cgh*zN|A{d$e%7id)0rG zKfP>Y`%Drl*o-MWK-Z?F*|%FU;YgKFI*)*90Yw2 zuaVzwUoGZppZxYJ?C}0q7l{G*JrH-|&tZZi&8__!E<7URHOXNza>jmE@@ zhL|6pYaII1w<1@bW5loACbIEjW9i1Q7;7Ffj{O>bV(-5hC%sqzecHu1b+?zrIJ?0( zwfb@~KY!Rb{cXtgHIt1qK1F{Q_chMm^(FBPImtMGEynlo6~?OgHZhMKY}|ckNX)z= zj5WQE6?5%;){#o}MF(=hvJjW?-1{%4e{b-NqSj z{4_!2yYC^7OXjZMQV#kl2cM*XWI@pez^S@ z=>Mxv8 zx*PnMy~qrG-6AsR&t`|$JBw%6q}j_mS9!Wa4!3O#Ik9 zc56z^$U5^6eP)W8yvsb}x{YF9`;>Xkm3>624>HfIggl)eHUD@UOgnSg zf#xH%`@r6gFdu8J67$gY=Guc7h*`hdd}1N^Tm6ptWKnN1N?Xh)zr?sc`oLWOXWFlX zx&Eu}VorG1eCEhzF&BPdK6Cf+VxDx7`OIVJ|NEEB=k5aC9}G2LTRsZEpKZQT9TB

    n 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 z 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 + + + + AboutDialog + + + About DB Browser for SQLite + O PrzeglÄ…darce SQLite + + + + Version + Wersja + + + + <html><head/><body><p>DB Browser for SQLite is an open source, freeware visual tool used to create, design and edit SQLite database files.</p><p>It is bi-licensed under the Mozilla Public License Version 2, as well as the GNU General Public License Version 3 or later. You can modify or redistribute it under the conditions of these licenses.</p><p>See <a href="http://www.gnu.org/licenses/gpl.html">http://www.gnu.org/licenses/gpl.html</a> and <a href="https://www.mozilla.org/MPL/2.0/index.txt">https://www.mozilla.org/MPL/2.0/index.txt</a> for details.</p><p>For more information on this program please visit our website at: <a href="http://sqlitebrowser.org">http://sqlitebrowser.org</a></p><p><span style=" font-size:small;">This software uses the GPL/LGPL Qt Toolkit from </span><a href="http://qt-project.org/"><span style=" font-size:small;">http://qt-project.org/</span></a><span style=" font-size:small;"><br/>See </span><a href="http://qt-project.org/doc/qt-5/licensing.html"><span style=" font-size:small;">http://qt-project.org/doc/qt-5/licensing.html</span></a><span style=" font-size:small;"> for licensing terms and information.</span></p><p><span style=" font-size:small;">It also uses the Silk icon set by Mark James licensed under a Creative Commons Attribution 2.5 and 3.0 license.<br/>See </span><a href="http://www.famfamfam.com/lab/icons/silk/"><span style=" font-size:small;">http://www.famfamfam.com/lab/icons/silk/</span></a><span style=" font-size:small;"> for details.</span></p></body></html> + <html><head/><body><p>PrzeglÄ…darka SQLite jest darmowym otwartym oprogramowaniem przeznaczonym do graficznej edycji i tworzenia plików bazy danych SQLite.</p><p>Program podlega podwójnej licencji użytkowania: Publiczna licencja Mozilli Wersja 2 jak również Powszechna Licencja Publiczna GNU wersja 3 i późniejsza. Możesz zmieniać i rozpowszechniać program pod warunkami zawartymi w tych licencjach.</p><p>Zobacz <a href="http://www.gnu.org/licenses/gpl.html">http://www.gnu.org/licenses/gpl.html</a> i <a href="https://www.mozilla.org/MPL/2.0/index.txt">https://www.mozilla.org/MPL/2.0/index.txt</a> dla szczegółów.</p><p>Odwiedź naszÄ… stronÄ™ internetowÄ… aby zapoznać siÄ™ ze szczegółami na temat dziaÅ‚ania tego programu: <a href="http://sqlitebrowser.org">http://sqlitebrowser.org</a></p><p><span style=" font-size:small;">To oprogramowanie używa GPL/LGPL Qt Toolkit z: </span><a href="http://qt-project.org/"><span style=" font-size:small;">http://qt-project.org/</span></a><span style=" font-size:small;"><br/>Zobacz </span><a href="http://qt-project.org/doc/qt-5/licensing.html"><span style=" font-size:small;">http://qt-project.org/doc/qt-5/licensing.html</span></a><span style=" font-size:small;"> na temat licencji i użytkowania.</span></p><p><span style=" font-size:small;">Używany również jest zestaw ikon Silk stworzony przez Mark James pod licencjÄ… Creative Commons Attribution 2.5 i 3.0.<br/>Zobacz </span><a href="http://www.famfamfam.com/lab/icons/silk/"><span style=" font-size:small;">http://www.famfamfam.com/lab/icons/silk/</span></a><span style=" font-size:small;"> po wiÄ™cej szczegółów.</span></p></body></html> + + + + AddRecordDialog + + + Add New Record + Nowy rekord + + + + Enter values for the new record considering constraints. Fields in bold are mandatory. + Podaj wartoÅ›ci dla nowego rekordu zwracajÄ…c uwagÄ™ na ograniczenia.Pola wytÅ‚usczone sÄ… obowiÄ…zkowe. + + + + In the Value column you can specify the value for the field identified in the Name column. The Type column indicates the type of the field. Default values are displayed in the same style as NULL values. + W kolumnie Wartość możesz podać wartość dla pola identyfikowanego w kolumnie Nazwa. Kolumna Rodzaj wskazuje rodzaj pola. WartoÅ›ci domyÅ›lne sÄ… wyÅ›wietlane w tym samym stylu, co wartoÅ›ci NULL. + + + + Name + Nazwa + + + + Type + Rodzaj + + + + Value + Wartość + + + + Values to insert. Pre-filled default values are inserted automatically unless they are changed. + WartoÅ›ci do wstawienia. Uprzednio wypeÅ‚nione domyÅ›lne wartoÅ›ci sÄ… wstawiane samoczynnie, chyba że zostaÅ‚y zmienione. + + + + When you edit the values in the upper frame, the SQL query for inserting this new record is shown here. You can edit manually the query before saving. + Tutaj pokazana jest kwerenda SQL dla dodania nowego rekordu zawierajÄ…cego wartoÅ›ci wprowadzone w górnej ramce. Możesz jÄ… rÄ™cznie zmienić przed zapisem rekordu. + + + + <html><head/><body><p><span style=" font-weight:600;">Save</span> will submit the shown SQL statement to the database for inserting the new record.</p><p><span style=" font-weight:600;">Restore Defaults</span> will restore the initial values in the <span style=" font-weight:600;">Value</span> column.</p><p><span style=" font-weight:600;">Cancel</span> will close this dialog without executing the query.</p></body></html> + <html><head/><body><p><span style=" font-weight:600;">Zapisz</span> przekaże wyÅ›wietlone zapytanie SQL do bazy danych w celu zapisania nowego rekordu</p><p><span style=" font-weight:600;">Przywróć domyÅ›lne</span> przywróci wstÄ™pne wartoÅ›ci domyÅ›lne w kolumnie<span style=" font-weight:600;">Wartość</span></p><p><span style=" font-weight:600;">Zaniechaj</span> zamyka to okno bez robienia zmian.</p></body></html> + + + + Auto-increment + + Samoprzyrost + + + + Unique constraint + + Ograniczenie niepowtarzalnoÅ›ci + + + + + Check constraint: %1 + + Ograniczenie sprawdzania: %1 + + + + + Foreign key: %1 + + Klucz obcy: %1 + + + + + Default value: %1 + + Wartość domyÅ›lna: %1 + + + + + Error adding record. Message from database engine: + +%1 + Nie można dodać rekordu. Wiadomość z silnika bazy danych: +%1 + + + + Are you sure you want to restore all the entered values to their defaults? + JesteÅ› pewien że chcesz przywrócić domyÅ›lne wartoÅ›ci dla wszystich wpisów? + + + + Application + + + Possible command line arguments: + Dozwolone argumenty wiersza poleceÅ„: + + + + Usage: %1 [options] [<database>|<project>] + + + + + + -h, --help Show command line options + + + + + -q, --quit Exit application after running scripts + + + + + -s, --sql <file> Execute this SQL file after opening the DB + + + + + -t, --table <table> Browse this table after opening the DB + + + + + -R, --read-only Open database in read-only mode + + + + + -o, --option <group>/<setting>=<value> + + + + + Run application with this setting temporarily set to value + + + + + -O, --save-option <group>/<setting>=<value> + + + + + Run application saving this value for this setting + + + + + -v, --version Display the current version + + + + + <database> Open this SQLite database + + + + + <project> Open this project file (*.sqbpro) + + + + + The -s/--sql option requires an argument + Opcja -s/--sql wymaga argumentu + + + + The file %1 does not exist + Plik %1 nie istnieje + + + + The -t/--table option requires an argument + Opcja -t/--table wymaga argumentu + + + + The -o/--option and -O/--save-option options require an argument in the form group/setting=value + Ustawienia -o/--option oraz -O/--save-option wymagajÄ… argumentu w postaci group/setting=wartość + + + + Invalid option/non-existant file: %1 + NieprawidÅ‚owa opcja lub nieistniejÄ…cy plik: %1 + + + + SQLite Version + Wersja SQLite + + + + SQLCipher Version %1 (based on SQLite %2) + + + + + DB Browser for SQLite Version %1. + + + + + Built for %1, running on %2 + + + + + Qt Version %1 + + + + + CipherDialog + + + SQLCipher encryption + Szyfrowanie SQLCipher + + + + &Password + &HasÅ‚o + + + + &Reenter password + Powtó&rz hasÅ‚o + + + + Encr&yption settings + Ustawienia sz&yfrowania + + + + SQLCipher &3 defaults + DomyÅ›lne SQLCipher &3 + + + + SQLCipher &4 defaults + DomyÅ›lne SQLCipher &4 + + + + Custo&m + WÅ‚as&ny + + + + Page si&ze + Ro&zmiar strony + + + + &KDF iterations + Powtórzenia &KDF + + + + HMAC algorithm + Algorytm HMAC + + + + KDF algorithm + Algorytm KDF + + + + Plaintext Header Size + Rozmiar nagłówka zwykÅ‚ego tekstu + + + + Passphrase + HasÅ‚o + + + + Raw key + Klucz + + + + Please set a key to encrypt the database. +Note that if you change any of the other, optional, settings you'll need to re-enter them as well every time you open the database file. +Leave the password fields empty to disable the encryption. +The encryption process might take some time and you should have a backup copy of your database! Unsaved changes are applied before modifying the encryption. + ProszÄ™ podaj klucz do zaszyfrowania bazy danych. +Zwróć uwagÄ™ na to że wszelkie zmiany wprowadzone tutaj do opcjonalnych ustawieÅ„ bedÄ… wymagane przy każdym otwarciu pliku. +W celu deaktywacji szyfrowania pozostaw pola klucza puste. +Proces szyfrowania może zabrać dużo czasu w zależnoÅ›ci od wielkoÅ›ci bazy danych. Zaleca siÄ™ aby przed rozpoczÄ™ciem tego procesu zrobić kopiÄ™ zapasowÄ… pliku. Wszelkie nie zapisane zmiany bÄ™dÄ… wprowadzone do bazy danych zanim szyfrowanie siÄ™ rozpocznie. + + + + Please enter the key used to encrypt the database. +If any of the other settings were altered for this database file you need to provide this information as well. + ProszÄ™ podać hasÅ‚o do zaszyfrowania bazy danych. +JeÅ›li zostaÅ‚y zmienione jakiekolwiek dodatkowe ustawienia dla pliku tej bazy danych bÄ™dziesz musiaÅ‚ również podać tÄ… informacjÄ™. + + + + ColumnDisplayFormatDialog + + + Choose display format + Wybierz format wyÅ›wietlania + + + + Display format + Format wyÅ›wietlania + + + + Choose a display format for the column '%1' which is applied to each value prior to showing it. + Wybierz domyÅ›lny format wyÅ›wietlania dla kolumny '%1', który bÄ™dzie stosowany dla każdej wartoÅ›ci, zanim zostanie ona wyÅ›wietlona. + + + + Default + DomyÅ›lny + + + + Decimal number + Liczba dziesiÄ™tna + + + + Exponent notation + Zapis wykÅ‚adniczy + + + + Hex blob + Blob szestnastkowy + + + + Hex number + Liczba szesnastkowa + + + + Octal number + Liczba ósemkowa + + + + Round number + Liczba zaokrÄ…glona + + + + Apple NSDate to date + Apple NSDate do daty + + + + Java epoch (milliseconds) to date + Java epoch (milisekundy) do daty + + + + .NET DateTime.Ticks to date + + + + + Julian day to date + Data JuliaÅ„ska do daty + + + + Unix epoch to date + Unix epoch do daty + + + + Unix epoch to local time + Unix epoch do czasu lokalnego + + + + Windows DATE to date + Windows DATE do daty + + + + Date as dd/mm/yyyy + Data w formacie dd/mm/rrrr + + + + Lower case + MaÅ‚e litery + + + + Upper case + Duże litery + + + + Custom + Niestandardowy + + + + Custom display format must contain a function call applied to %1 + WÅ‚asny format wyÅ›wietlania musi zawierać wywoÅ‚anie funkcji zastosowanej na %1 + + + + Error in custom display format. Message from database engine: + +%1 + Błąd we wÅ‚asnym formacie wyÅ›wietlania. Wiadomość z silnika bazy danych: + +%1 + + + + Custom display format must return only one column but it returned %1. + WÅ‚asny format wyÅ›wietlania musi zwracać tylko jednÄ… kolumnÄ™, a zwróciÅ‚ %1. + + + + CondFormatManager + + + Conditional Format Manager + ZarzÄ…dzanie formatowaniem warunkowym + + + + This dialog allows creating and editing conditional formats. Each cell style will be selected by the first accomplished condition for that cell data. Conditional formats can be moved up and down, where those at higher rows take precedence over those at lower. Syntax for conditions is the same as for filters and an empty condition applies to all values. + To okno dialogowe umożliwia tworzenie i zmianÄ™ formatowania warunkowego. WyglÄ…d komórki bÄ™dzie bÄ™dzie okreÅ›lony pierwszym speÅ‚nionym warunkiem dla danych komórki. Formatowania warunkowe można przesunąć w górÄ™ i w dół, gdzie te na górze sÄ… przetwarzane w pierwszej kolejnoÅ›ci. SkÅ‚adnia dla warunków jest taka sama jak dla filtrów, a pusty warunek bÄ™dzie pasowaÅ‚ do wszystkich wartoÅ›ci. + + + + Add new conditional format + Dodaj nowe formatowanie warunkowe + + + + &Add + Dod&aj + + + + Remove selected conditional format + UsuÅ„ wybrane formatowanie warunkowe + + + + &Remove + &UsuÅ„ + + + + Move selected conditional format up + PrzesuÅ„ w górÄ™ wybrane formatowanie warunkowe + + + + Move &up + PrzesuÅ„ w &górÄ™ + + + + Move selected conditional format down + PrzesuÅ„ w dół wybrane formatowanie warunkowe + + + + Move &down + PrzesuÅ„ w &dół + + + + Foreground + Pierwszy plan + + + + Text color + Barwa tekstu + + + + Background + TÅ‚o + + + + Background color + Barwa tÅ‚a + + + + Font + Czcionka + + + + Size + Rozmiar + + + + Bold + Pogrubienie + + + + Italic + Kursywa + + + + Underline + PodkreÅ›lenie + + + + Alignment + Wyrównanie + + + + Condition + Warunek + + + + + Click to select color + Kliknij, aby wybrać barwÄ™ + + + + Are you sure you want to clear all the conditional formats of this field? + Czy na pewno chcesz wyczyÅ›cić wszystkie formatowania warunkowe tego pola? + + + + DBBrowserDB + + + This database has already been attached. Its schema name is '%1'. + Baza danych zostaÅ‚a już dołączona. Nazwa jej schematu to '%1'. + + + + Please specify the database name under which you want to access the attached database + ProszÄ™ podaj nazwÄ™ bazy danych za pomocÄ… której chcesz uzyskać dostÄ™p do załączonej bazy + + + + Invalid file format + NieprawidÅ‚owy format pliku + + + + Do you really want to close this temporary database? All data will be lost. + Czy na pewno chcesz zamknąć tÄ™ tymczasowÄ… bazÄ™ danych? Wszelkie zmiany bedÄ… zapomniane. + + + + Do you want to save the changes made to the database file %1? + Czy na pewno chcesz zapisać zmiany dokonane w pliku bazy danych %1? + + + + Database didn't close correctly, probably still busy + Baza danych nie zostaÅ‚a zamkniÄ™ta poprawnie, prawdopodobnie byÅ‚a nadal zajÄ™ta + + + + The database is currently busy: + Baza danych jest obecnie zajÄ™ta: + + + + Do you want to abort that other operation? + Czy na pewno chcesz przerwać tÄ… innÄ… operacjÄ™? + + + + Exporting database to SQL file... + Eksportowanie bazy danych do pliku SQL… + + + + + Cancel + Zaniechaj + + + + + No database file opened + Plik z bazÄ… danych nie jest obecnie otwarty + + + + Executing SQL... + Wykonywanie SQL… + + + + Action cancelled. + Zaniechano dziaÅ‚ania. + + + + + Error in statement #%1: %2. +Aborting execution%3. + Błąd w poleceniu #%1: %2. +Przerywam wykonywanie%3. + + + + + and rolling back + i przywracam + + + + didn't receive any output from %1 + nie otrzymano żadnego wyniku z %1 + + + + could not execute command: %1 + nie można wykonać polecenia: %1 + + + + Cannot delete this object + Nie można usunąć tego obiektu + + + + Cannot set data on this object + Nie można ustawić danych na tym objekcie + + + + + A table with the name '%1' already exists in schema '%2'. + Tabela o nazwie '%1' już istnieje w schemacie '%2'. + + + + No table with name '%1' exists in schema '%2'. + Tabela o nazwie '%1' nie istnieje w schemacie '%2'. + + + + + Cannot find column %1. + Nie można znaleźć kolumny %1. + + + + Creating savepoint failed. DB says: %1 + Nie można utworzyć punktu zapisu. BD zwraca: %1 + + + + Renaming the column failed. DB says: +%1 + Nie można przemianować tej kolumny. BD zwraca: +%1 + + + + + Releasing savepoint failed. DB says: %1 + Nie można zwolnić punktu zapisu. BD zwraca: %1 + + + + Creating new table failed. DB says: %1 + Nie można utworzyć nowej tabeli. BD zwraca: %1 + + + + Copying data to new table failed. DB says: +%1 + Nie można skopiować nowej tabeli. BD zwraca: +%1 + + + + Deleting old table failed. DB says: %1 + Nie można usunąć starej tabeli. BD zwraca: %1 + + + + Error renaming table '%1' to '%2'. +Message from database engine: +%3 + Błąd przemianowywania tabeli z '%1' na '%2'. +Wiadomość z silnika bazy danych: +%3 + + + + could not get list of db objects: %1 + nie można pobrać listy obiektów bd: %1 + + + + Restoring some of the objects associated with this table failed. This is most likely because some column names changed. Here's the SQL statement which you might want to fix and execute manually: + + + WystÄ…piÅ‚ błąd przy odtworzeniu niektórych obiektów powiÄ…zanych z tÄ… bazÄ… danych. Błędy tego rodzaju wystÄ™pujÄ… za zwyczaj w przypadku zmiany nazw niektórych kolumn. Sprawdź dokÅ‚adnie nastÄ™pujÄ…cÄ… kwerendÄ™ SQL. Po dokonaniu zmian możesz jÄ… rÄ™cznie uruchomić: + + + + + + could not get list of databases: %1 + nie mogÄ™ odczytać listy baz danych: %1 + + + + Error setting pragma %1 to %2: %3 + Błąd przy ustawianiu pragmy %1 do %2: %3 + + + + File not found. + Nie znaleziono pliku. + + + + Error loading extension: %1 + Nie można wczytać rozszerzenia: %1 + + + + could not get column information + nie można uzyskać informacji o kolumnie + + + + DbStructureModel + + + Name + Nazwa + + + + Object + Obiekt + + + + Type + Rodzaj + + + + Schema + Polecenie tworzÄ…ce + + + + Database + Baza danych + + + + Browsables + Obiekty do przeglÄ…dania + + + + All + Wszystkie + + + + Temporary + Tymczasowa + + + + Tables (%1) + Tabele (%1) + + + + Indices (%1) + Indeksy (%1) + + + + Views (%1) + Widoki (%1) + + + + Triggers (%1) + Wyzwalacze (%1) + + + + EditDialog + + + Edit database cell + Zmiana komórki bazy danych + + + + Mode: + Tryb: + + + + This is the list of supported modes for the cell editor. Choose a mode for viewing or editing the data of the current cell. + To jest lista dostÄ™pnych trybów dla edytora komórek. Wybierz tryb do wyÅ›wietlania lub edycji danych dla tej komórki. + + + + Text + Tekst + + + + RTL Text + Tekst od prawej do lewej + + + + Binary + Zapis dwójkowy + + + + + Image + Obraz + + + + JSON + JSON + + + + XML + XML + + + + + Automatically adjust the editor mode to the loaded data type + Sam dostosuj tryb edytora w zależnoÅ›ci od wczytanych danych + + + + This checkable button enables or disables the automatic switching of the editor mode. When a new cell is selected or new data is imported and the automatic switching is enabled, the mode adjusts to the detected data type. You can then change the editor mode manually. If you want to keep this manually switched mode while moving through the cells, switch the button off. + To pole zaznaczane włącza lub wyłącza samoczynne przełączanie do trybu edytora. Po wybraniu nowej komórki lub zaimportowaniu nowych danych i przy włączonym samoczynnym przełączaniu, tryb dostosowuje siÄ™ do wykrytego rodzaju danych. NastÄ™pnie można zmienić tryb edytora rÄ™cznie. Aby zapamiÄ™tać ten try rÄ™czny przy przechodzeniu po komórkach, wystarczy odznaczyć to pole. + + + + Auto-switch + Sam przełączaj + + + + The text editor modes let you edit plain text, as well as JSON or XML data with syntax highlighting, automatic formatting and validation before saving. + +Errors are indicated with a red squiggle underline. + Tryby edytora tekstu umożliwiajÄ… edycjÄ™ zwykÅ‚ego tekstu, a także danych JSON oraz XML +z podÅ›wietlaniem skÅ‚adni, samoformatowaniem oraz sprawdzaniem przed zapisem. + +Błędy sÄ… podkreÅ›lane czerwonym Å›laczkiem. + + + + This Qt editor is used for right-to-left scripts, which are not supported by the default Text editor. The presence of right-to-left characters is detected and this editor mode is automatically selected. + Edytor Qt jest używany do pism od-prawej-do-lewej, które nie sÄ… obsÅ‚ugiwane przez domyÅ›lny edytor tekstu. Obecność znaków pism od-prawej-do-lewej jest wykrywana, a edytor sam przełącza siÄ™ do tego trybu. + + + + Open preview dialog for printing the data currently stored in the cell + Otwiera okno dialogowe do podglÄ…du drukowanych danych z danej komórki + + + + Auto-format: pretty print on loading, compact on saving. + Auto-formatowanie: upiÄ™ksza tekst przy wczytywaniu i Å›ciska przy zapisywaniu. + + + + When enabled, the auto-format feature formats the data on loading, breaking the text in lines and indenting it for maximum readability. On data saving, the auto-format feature compacts the data removing end of lines, and unnecessary whitespace. + Po zaznaczeniu, dane sÄ… formatowane podczas ich wczytywania, Å‚amiÄ…c tekst w wierszach oraz wcinajÄ…c go dla najlepszej czytelnoÅ›ci. Przed zapisaniem, dane sÄ… oczyszczane poprzez usuniÄ™cie zakoÅ„czeÅ„ wierszy oraz niepotrzebnych biaÅ‚ych znaków. + + + + Word Wrap + Zawijaj sÅ‚owa + + + + Wrap lines on word boundaries + Zawijaj wiersze na granicach słów + + + + + Open in default application or browser + Otwórz w domyÅ›lnej aplikacji lub przeglÄ…darce + + + + Open in application + Otwórz w aplikacji + + + + The value is interpreted as a file or URL and opened in the default application or web browser. + Wartość jest traktowana jako plik lub adres URL i otwierana w domyÅ›lnej aplikacji lub przeglÄ…darce sieciowej. + + + + Save file reference... + Zapisz odniesienie pliku... + + + + Save reference to file + Zapisz odniesienie do pliku + + + + + Open in external application + Otwórz w zewnÄ™trznej aplikacji + + + + Autoformat + Sam formatuj + + + + &Export... + &Eksportuj... + + + + + &Import... + &Importuj... + + + + + Import from file + Importuj z pliku + + + + + Opens a file dialog used to import any kind of data to this database cell. + Otwiera okno wyboru pliku z danymi do zaimportowania w tej komórce. + + + + Export to file + Eksportuj do pliku + + + + Opens a file dialog used to export the contents of this database cell to a file. + Otwiera okno pozwalajÄ…ce na wyeksportowanie zawartoÅ›ci komórki do pliku. + + + + Erases the contents of the cell + CzyÅ›ci zawartość komórki + + + + Set as &NULL + Ustaw jako &NULL + + + + This area displays information about the data present in this database cell + Tutaj wyÅ›wietlane sÄ… informacje o danych obecnych w tej komórce + + + + Type of data currently in cell + Rodzaj danych obecnie znajdujÄ…cych siÄ™ w komórce + + + + Size of data currently in table + Rozmiar danych znajdujÄ…cych siÄ™ obecnie w tabeli + + + + Apply data to cell + Zapisz dane w komórce + + + + This button saves the changes performed in the cell editor to the database cell. + Ten przycisk zapisuje zmiany wykonane w edytorze komórki w komórce bazy danych. + + + + Apply + Zastosuj + + + + + Print... + Drukuj... + + + + Open preview dialog for printing displayed image + Otwórz podglÄ…d wydruku dla aktualnie wyÅ›wietlonego obrazu + + + + + Ctrl+P + + + + + Open preview dialog for printing displayed text + Otwiera okno dialogowe do podglÄ…du wyÅ›wietlanego tekstu + + + + Copy Hex and ASCII + Skopiuj Hex i ASCII + + + + Copy selected hexadecimal and ASCII columns to the clipboard + Skopiuj zaznaczone kolumny szesnastkowe oraz ASCII do schowka + + + + Ctrl+Shift+C + + + + + + Image data can't be viewed in this mode. + Obrazy nie mogÄ… zostać wyÅ›wietlone w tym trybie. + + + + + Try switching to Image or Binary mode. + Przejdź do trybu obrazu lub wartoÅ›ci binarnej. + + + + + Binary data can't be viewed in this mode. + Wartość dwójkowa nie może być wyÅ›wietlona w tym trybie. + + + + + Try switching to Binary mode. + Przejdź do trybu wartoÅ›ci binarnej. + + + + + Image files (%1) + Piki graficzne (%1) + + + + Binary files (*.bin) + Pliki Binarne (*.bin) + + + + Choose a file to import + Wybierz plik do zaimportowania + + + + %1 Image + %1 Grafika + + + + Choose a filename to export data + Wybierz nazwÄ™ pliku dla wyeksportowanych danych + + + + Invalid data for this mode + NieprawidÅ‚owe dane w tym trybie + + + + The cell contains invalid %1 data. Reason: %2. Do you really want to apply it to the cell? + Komórka zawiera nieprawidÅ‚owe dane %1. Powód: %2. Czy na pewno wstawić je do komórki? + + + + + Type of data currently in cell: Text / Numeric + Rodzaj danych obecnie znajdujÄ…cych siÄ™ w komórce: Tekst/Liczba + + + + + + %n character(s) + + %n znak + %n znaki + %n znaków + + + + + Type of data currently in cell: %1 Image + Rodzaj danych obecnie znajdujÄ…cych siÄ™ w komórce: Obraz %1 + + + + %1x%2 pixel(s) + %1x%2 piksel(e) + + + + Type of data currently in cell: NULL + Rodzaj danych obecnie znajdujÄ…cych siÄ™ w komórce: NULL + + + + + %n byte(s) + + %n bajt + %n bajty + %n bajtów + + + + + Type of data currently in cell: Valid JSON + Rodzaj danych obecnie znajdujÄ…cych siÄ™ w komórce: PrawidÅ‚owy JSON + + + + Type of data currently in cell: Binary + Rodzaj danych obecnie znajdujÄ…cych siÄ™ w komórce: dwójkowa + + + + Couldn't save file: %1. + Nie można zapisać pliku: %1. + + + + The data has been saved to a temporary file and has been opened with the default application. You can now edit the file and, when you are ready, apply the saved new data to the cell editor or cancel any changes. + Zapisano dane do pliku tymczasowego i otwarto je w domyÅ›lnej aplikacji. Teraz możesz wprowadzić zmiany w pliku, a gdy bÄ™dziesz gotowy, zapisz nowe dane w edytorze komórki lub zaniechaj jakichkolwiek zmian. + + + + EditIndexDialog + + + Edit Index Schema + Edytor tworzenia indeksu + + + + &Name + &Nazwa + + + + &Table + &Tabela + + + + &Unique + &Niepowtarzalny + + + + For restricting the index to only a part of the table you can specify a WHERE clause here that selects the part of the table that should be indexed + Aby ograniczyć indeks tylko do części tabeli można dopisać tutaj polecenie WHERE, które +zaznacza część tabeli, która ma zostać zaindeksowana + + + + Partial inde&x clause + Polecenie częściowego &indeksu + + + + Colu&mns + Kolu&mny + + + + Table column + Kolumna tabeli + + + + Type + Rodzaj + + + + Add a new expression column to the index. Expression columns contain SQL expression rather than column names. + Dodaj nowÄ… kolumnÄ™ wyrażenia do indeksu. Kolumny wyrażeÅ„ zawierajÄ… raczej wyrażenia SQL niż nazwy kolumn. + + + + Index column + Kolumna indeksu + + + + Order + PorzÄ…dek + + + + Deleting the old index failed: +%1 + Usuwanie starego indeksu nie powiodÅ‚o siÄ™: +%1 + + + + Creating the index failed: +%1 + Tworzenie indeksu nie powiodÅ‚o siÄ™: +%1 + + + + EditTableDialog + + + Edit table definition + Edycja tworzenia tabeli + + + + Table + Tabela + + + + Advanced + Zaawansowane + + + + Without Rowid + Bez ID wiersza + + + + Make this a 'WITHOUT rowid' table. Setting this flag requires a field of type INTEGER with the primary key flag set and the auto increment flag unset. + UczyÅ„ z tej tabeli tablÄ™ 'WITHOUT rowid'. Ustawienie tej flagi wymaga pola rodzaju INTEGER z flagÄ… klucza głównego ustawionÄ… i flagÄ… samoprzyrostu wyłączonÄ…. + + + + Fields + Pola + + + + Database sche&ma + Sche&mat bazy danych + + + + Add + Dodaj + + + + Remove + UsuÅ„ + + + + Move to top + PrzesuÅ„ na górÄ™ + + + + Move up + PrzesuÅ„ w górÄ™ + + + + Move down + PrzesuÅ„ w dół + + + + Move to bottom + PrzesuÅ„ na dół + + + + + Name + Nazwa + + + + + Type + Rodzaj + + + + NN + NN + + + + Not null + Nie NULL + + + + PK + PK + + + + Primary key + Klucz główny + + + + AI + AI + + + + Autoincrement + Samoprzyrostowa + + + + U + U + + + + + + Unique + Niepowtarzalna + + + + Default + DomyÅ›lna + + + + Default value + DomyÅ›lna wartość + + + + + + Check + Sprawdzenie + + + + Check constraint + Ograniczenie sprawdzenia + + + + Collation + Zestawienie + + + + + + Foreign Key + Obcy klucz + + + + Constraints + Ograniczenia + + + + Add constraint + Dodaj ograniczenie + + + + Remove constraint + UsuÅ„ ograniczenie + + + + Columns + Kolumny + + + + SQL + SQL + + + + <html><head/><body><p><span style=" font-weight:600; color:#ff0000;">Warning: </span>There is something with this table definition that our parser doesn't fully understand. Modifying and saving this table might result in problems.</p></body></html> + <html><head/><body><p><span style=" font-weight:600; color:#ff0000;">Uwaga: </span>W okreÅ›leniu tabeli jest coÅ›, czego nasze przetwarzanie skÅ‚adni nie rozumie. Zmiana i zapis tej tabeli może skutkować kÅ‚opotami.</p></body></html> + + + + + Primary Key + Klucz główny + + + + Add a primary key constraint + Dodaj ograniczenie klucza głównego + + + + Add a foreign key constraint + Dodaj ograniczenie klucza obcego + + + + Add a unique constraint + Dodaj ograniczenie niepowtarzalnoÅ›ci + + + + Add a check constraint + Dodaj ograniczenie sprawdzania + + + + + There can only be one primary key for each table. Please modify the existing primary key instead. + Dla każdej tabeli może być tylko jeden klucz główny. ZmieÅ„ istniejÄ…cy klucz główny. + + + + Error creating table. Message from database engine: +%1 + Nie można utworzyć tabeli. Wiadomość z silnika bazy danych: +%1 + + + + There already is a field with that name. Please rename it first or choose a different name for this field. + Istnieje już pole o tej nazwie. Przemianuj je najpierw lub wybierz innÄ… nazwÄ™ dla tego pola. + + + + This column is referenced in a foreign key in table %1 and thus its name cannot be changed. + Kolumna ma odwoÅ‚anie do klucza obcego w tabeli %1 wiÄ™c jej nazwa nie można zmienić jej nazwy. + + + + There is at least one row with this field set to NULL. This makes it impossible to set this flag. Please change the table data first. + W tym polu istnieje co najmniej jeden wiersz z wartoÅ›ciÄ… równÄ… NULL. Czyni to niemożliwym ustawienie tej flagi. Najpierw zmieÅ„ dane tabeli. + + + + There is at least one row with a non-integer value in this field. This makes it impossible to set the AI flag. Please change the table data first. + W tym polu istnieje co najmniej jeden wiersz z wartoÅ›ciÄ… nie bÄ™dÄ…cÄ… liczbÄ… caÅ‚kowitÄ…. Czyni to niemożliwym ustawienie flagi AI. Najpierw zmieÅ„ dane tabeli. + + + + Column '%1' has duplicate data. + + Kolumna '%1' zawiera powielone dane. + + + + + This makes it impossible to enable the 'Unique' flag. Please remove the duplicate data, which will allow the 'Unique' flag to then be enabled. + Czyni to niemożliwym nadanie flagi 'Unique'. UsuÅ„ powielone dane, aby móc nadać flagÄ™ 'Unique'. + + + + Are you sure you want to delete the field '%1'? +All data currently stored in this field will be lost. + Czy na pewno usunąć pole '%1'? +Wszystkie dane przechowywane w tym polu zostanÄ… utracone. + + + + Please add a field which meets the following criteria before setting the without rowid flag: + - Primary key flag set + - Auto increment disabled + Dodaj pola, które speÅ‚niajÄ… dane warunki przed ustawieniem flagi bez rowid: + - Ustawiono flagÄ™ głównego klucza + - Wyłączono samoprzyrost + + + + ExportDataDialog + + + Export data as CSV + Eksport danych jako CSV + + + + Tab&le(s) + Tabe&la/e + + + + Colu&mn names in first line + Nazwy kolu&mn w pierwszym wierszu + + + + Fie&ld separator + Znak oddzie&lajÄ…cy pola + + + + , + , + + + + ; + ; + + + + Tab + Tab + + + + | + | + + + + + + Other + Inny + + + + &Quote character + &Znak cytatu + + + + " + " + + + + ' + ' + + + + New line characters + Znak nowego wiersza + + + + Windows: CR+LF (\r\n) + Windows: CR+LF (\r\n) + + + + Unix: LF (\n) + Unix: LF (\n) + + + + Pretty print + UpiÄ™ksz wydruk + + + + Export data as JSON + Eksport danych jako JSON + + + + exporting CSV + eksportowanie CSV + + + + + Could not open output file: %1 + Nie można otworzyć pliku wyjÅ›ciowego: %1 + + + + exporting JSON + eksportowanie JSON + + + + + Choose a filename to export data + Wybierz nazwÄ™ pliku dla eksportowanych danych + + + + Please select at least 1 table. + Wybierz przynajmniej jednÄ… tabelÄ™. + + + + Choose a directory + Wybierz poÅ‚ożenie + + + + Export completed. + Eksportowanie zakoÅ„czone. + + + + ExportSqlDialog + + + Export SQL... + Eksportuj danych jako SQL + + + + Tab&le(s) + Tabel&a/e + + + + Select All + Zaznacz wszystkie + + + + Deselect All + Odznacz wszystkie + + + + &Options + &Opcje + + + + Keep column names in INSERT INTO + Pozostaw nazwy kolumn w INSERT INTO + + + + Multiple rows (VALUES) per INSERT statement + Wiele rzÄ™dów (WartoÅ›ci) dla polecenia INSERT + + + + Export everything + Eksportuj wszystko + + + + Export schema only + Eksportuj tylko schemat + + + + Export data only + Eksportuj tylko dane + + + + Keep old schema (CREATE TABLE IF NOT EXISTS) + Zachowaj poprzedni schemat (CREATE TABLE IF NOT EXISTS) + + + + Overwrite old schema (DROP TABLE, then CREATE TABLE) + ZastÄ…p poprzedni schemat (DROP TABLE, then CREATE TABLE) + + + + Please select at least one table. + Wybierz przynajmniej jednÄ… tabelÄ™. + + + + Choose a filename to export + Wybierz nazwÄ™ eksportowanego pliku + + + + Export completed. + Eksportowanie zakoÅ„czono. + + + + Export cancelled or failed. + Eksportowanie nie udaÅ‚o siÄ™ lub zostaÅ‚o zaniechane. + + + + ExtendedScintilla + + + + Ctrl+H + + + + + Ctrl+F + + + + + + Ctrl+P + + + + + Find... + Znajdź... + + + + Find and Replace... + Znajdź i zamień… + + + + Print... + Drukuj... + + + + ExtendedTableWidget + + + Use as Exact Filter + Użyj jako dokÅ‚adnego filtra + + + + Containing + Zawiera + + + + Not containing + Nie zawiera + + + + Not equal to + Nierówny + + + + Greater than + WiÄ™kszy niż + + + + Less than + Mniejszy niż + + + + Greater or equal + WiÄ™kszy lub równy + + + + Less or equal + Mniejszy lub równy + + + + Between this and... + PomiÄ™dzy tym a... + + + + Regular expression + Wyrażenie regularne + + + + Edit Conditional Formats... + ZmieÅ„ formatowanie warunkowe... + + + + Set to NULL + Ustaw jako NULL + + + + Copy + Skopiuj + + + + Copy with Headers + Skopiuj wraz z nagłówkami + + + + Copy as SQL + Skopiuj jako SQL + + + + Paste + Wklej + + + + Print... + Drukuj... + + + + Use in Filter Expression + Użyj w wyrażeniu filtra + + + + <p>Not all data has been loaded. <b>Do you want to load all data before selecting all the rows?</b><p><p>Answering <b>No</b> means that no more data will be loaded and the selection will not be performed.<br/>Answering <b>Yes</b> might take some time while the data is loaded but the selection will be complete.</p>Warning: Loading all the data might require a great amount of memory for big tables. + <p>Nie wczytano wszystkich danych. <b>Czu chcesz wczytać wszystkie dane przez zaznaczeniem wszystkich wierszy?</b><p><p>Odpowiedź <b>Nie</b> oznacza, że nie +zostanie wczytanych wiÄ™cej danych i nie zostanie nic zaznaczone.<br/>Odpowiedź <b>Tak</b> oznacza, że trochÄ™ czasu może być potrzebne na wczytanie danych za to zaznaczenie bÄ™dzie peÅ‚ne.</p>Uwaga: Wczytanie wszystkich danych może wymagać dużej iloÅ›ci pamiÄ™ci dla dużych tabel. + + + + Cannot set selection to NULL. Column %1 has a NOT NULL constraint. + Nie można ustawić zaznaczonych na NULL. Kolumna %1 ma ograniczenie NOT NULL. + + + + Alt+Del + + + + + Ctrl+Shift+C + + + + + Ctrl+Alt+C + + + + + The content of the clipboard is bigger than the range selected. +Do you want to insert it anyway? + Zawartość schowka jest wiÄ™ksza niż zaznaczony zakres. +Czy chcesz go wstawić mimo tego? + + + + FileExtensionManager + + + File Extension Manager + ZarzÄ…dzanie Rozszerzeniami Plików + + + + &Up + &W górÄ™ + + + + &Down + W &dół + + + + &Add + Dod&aj + + + + &Remove + &UsuÅ„ + + + + + Description + Opis + + + + Extensions + Rozszerzenia + + + + *.extension + *.rozszerzenie + + + + FilterLineEdit + + + Filter + Filtr + + + + These input fields allow you to perform quick filters in the currently selected table. +By default, the rows containing the input text are filtered out. +The following operators are also supported: +% Wildcard +> Greater than +< Less than +>= Equal to or greater +<= Equal to or less += Equal to: exact match +<> Unequal: exact inverse match +x~y Range: values between x and y +/regexp/ Values matching the regular expression + Te pola wejÅ›ciowe umożliwiajÄ… szybkie filtrowanie na bieżącej tabeli. +DomyÅ›lnie, wiersze zawierajÄ…ce tekst wejÅ›ciowy sÄ… odfiltrowywane. +ObsÅ‚ugiwane sÄ… nastÄ™pujÄ…ce operatory: +% Znak wieloznaczny +> WiÄ™ksze niż +< Mniejsze niż +>= Równe lub wiÄ™ksze +<= Równe lub mniejsze += Równe: dokÅ‚adnie pasuje +<> Nierówne: nie pasuje +x~y Zakres: wartoÅ›ci pomiÄ™dzy x oraz y +/regexp/ WartoÅ›ci pasujÄ…ce do wyrażenia regularnego + + + + Clear All Conditional Formats + Wyczyść wszystkie formatowania warunkowe + + + + Use for Conditional Format + Użyj do formatowania warunkowego + + + + Edit Conditional Formats... + Edytuj formatowanie warunkowe... + + + + Set Filter Expression + Ustaw wyrażenia filtra + + + + What's This? + Co to jest? + + + + Is NULL + Jest NULL + + + + Is not NULL + Nie jest NULL + + + + Is empty + Jest puste + + + + Is not empty + Nie jest puste + + + + Not containing... + Nie zawiera... + + + + Equal to... + Równe... + + + + Not equal to... + Nierówne... + + + + Greater than... + WiÄ™ksze niż... + + + + Less than... + Mniejsze niż... + + + + Greater or equal... + WiÄ™ksze lub równe... + + + + Less or equal... + Mniejsze lub równe... + + + + In range... + W zakresie... + + + + Regular expression... + Wyrażenie regularne... + + + + FindReplaceDialog + + + Find and Replace + Znajdź i zastÄ…p + + + + Fi&nd text: + Z&najdź tekst: + + + + Re&place with: + ZamieÅ„ &z: + + + + Match &exact case + Rozróżniaj wielkość lit&er + + + + Match &only whole words + Tylk&o caÅ‚e wyrazy + + + + When enabled, the search continues from the other end when it reaches one end of the page + Po zaznaczeniu, wyszukiwanie jest wznawiane od przeciwlegÅ‚ego koÅ„ca strony po osiÄ…gniÄ™ciu koÅ„ca strony. + + + + &Wrap around + Za&wijaj + + + + When set, the search goes backwards from cursor position, otherwise it goes forward + Po zaznaczeniu, wyszukiwanie postÄ™puje wstecz od poÅ‚ożenia wskaźnika, w przeciwnym przypadku postÄ™puje wprzód + + + + Search &backwards + Szukaj &na odwrót + + + + <html><head/><body><p>When checked, the pattern to find is searched only in the current selection.</p></body></html> + <html><head/><body><p>Po zaznaczeniu, wzorzec do znalezienia jest szukany tylko w bieżącym zaznaczeniu.</p></body></html> + + + + &Selection only + Tylko &zaznaczenie + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + <html><head/><body><p>Po zaznaczeniu, wzorzec do znalezienia jest rozważany jako wyrażenie regularne UNIX. Zajrzyj do <a href="https://en.wikibooks.org/wiki/Regular_Expressions">WyrażeÅ„ Regularnych w Wikibooks</a>.</p></body></html> + + + + Use regular e&xpressions + Stosuj wyrażenie &regularne + + + + Find the next occurrence from the cursor position and in the direction set by "Search backwards" + Szukaj kolejnego wystÄ…pienia od poÅ‚ożenia wskaźnika i w stronÄ™ okreÅ›lonÄ… poprzez +"Wyszukiwanie wstecz" + + + + &Find Next + Z&najdź nastÄ™pne + + + + F3 + + + + + &Replace + &ZastÄ…p + + + + Highlight all the occurrences of the text in the page + PodÅ›wietl wszystkie wystÄ…pienia tekstu na stronie + + + + F&ind All + Znajdź wszystk&ie + + + + Replace all the occurrences of the text in the page + ZastÄ…p wszystkie wystÄ…pienia w tekÅ›cie na stronie + + + + Replace &All + Z&amieÅ„ wszystkie + + + + The searched text was not found + Nie znaleziono szukanego tekstu + + + + The searched text was not found. + Nie znaleziono szukanego tekstu. + + + + The searched text was found one time. + Szukany tekst zostaÅ‚ znaleziony raz. + + + + The searched text was found %1 times. + Szukany tekst zostaÅ‚ znaleziony %1 razy. + + + + The searched text was replaced one time. + Szukany tekst zostaÅ‚ zamieniony raz. + + + + The searched text was replaced %1 times. + Szukany tekst zostaÅ‚ zamieniony %1 razy. + + + + ForeignKeyEditor + + + &Reset + &Resetuj + + + + Foreign key clauses (ON UPDATE, ON DELETE etc.) + Polecenia obcego klucza (ON UPDATE, ON DELETE itp.) + + + + ImportCsvDialog + + + Import CSV file + Importuj plik CSV + + + + Table na&me + &Nazwa tabeli + + + + &Column names in first line + &Nazwy kolumn w pierwszej linii + + + + Field &separator + &Znak oddzielajÄ…cy pola + + + + , + , + + + + ; + ; + + + + + Tab + Tab + + + + | + | + + + + Other + Inny + + + + &Quote character + Znak &cytatów + + + + + Other (printable) + Inne (drukowalne) + + + + + Other (code) + Inny (kod) + + + + " + " + + + + ' + ' + + + + &Encoding + Kodowani&e + + + + UTF-8 + UTF-8 + + + + UTF-16 + UTF-16 + + + + ISO-8859-1 + ISO-8859-1 + + + + Trim fields? + Przycinać pola? + + + + Separate tables + Oddzielaj tabele + + + + Advanced + Zaawansowane + + + + When importing an empty value from the CSV file into an existing table with a default value for this column, that default value is inserted. Activate this option to insert an empty value instead. + Przy importowaniu pustej wartoÅ›ci z pliku CSV do istniejÄ…cej tabeli z domyÅ›lnÄ… wartoÅ›ciÄ… dla tej kolumny, wstawiana jest ta domyÅ›lna wartość. Aby zamiast tego wstawić pustÄ… wartość, wystarczy zaznaczyć to pole. + + + + Ignore default &values + Ignoruj domyÅ›lne &wartoÅ›ci + + + + Activate this option to stop the import when trying to import an empty value into a NOT NULL column without a default value. + Zaznacz to pole, aby zatrzymać importowanie, podczas importowania pustej wartoÅ›ci do kolumny NOT NULL bez domyÅ›lnej wartoÅ›ci. + + + + Fail on missing values + ZgÅ‚aszaj błąd dla brakujÄ…cych wartoÅ›ci + + + + Disable data type detection + Wyłącz wykrywanie rodzajów danych + + + + Disable the automatic data type detection when creating a new table. + Wyłącz samowykrywanie rodzaju danych przy tworzeniu nowej tabeli. + + + + When importing into an existing table with a primary key, unique constraints or a unique index there is a chance for a conflict. This option allows you to select a strategy for that case: By default the import is aborted and rolled back but you can also choose to ignore and not import conflicting rows or to replace the existing row in the table. + Przy importowaniu do istniejÄ…cej tabeli o głównym kluczu, ograniczeniu lub indeksie niepowtarzalnoÅ›ci istnieje szansa na sprzeczność. To ustawienie umożliwia wybranie strategii dla tego przypadku. DomyÅ›lnie importowanie jest przerywane, a zmiany wycofywane, lecz można także pominąć wiersze bÄ™dÄ…ce w sprzecznoÅ›ci lub zastÄ…pić istniejÄ…cy wiersz w tabeli. + + + + Abort import + Przerwij importowanie + + + + Ignore row + PomiÅ„ wiersz + + + + Replace existing row + ZastÄ…p istniejÄ…cy wiersz + + + + Conflict strategy + Strategia na sprzecznoÅ›ci + + + + + Deselect All + Odznacz wszystkie + + + + Match Similar + Dopasuj do podobnych + + + + Select All + Zaznacz wszystkie + + + + There is already a table named '%1' and an import into an existing table is only possible if the number of columns match. + Tabela o nazwie '%1' już istnieje i importowanie do istniejÄ…cej tabeli jest możliwe tylko gdy liczba kolumn zgadza siÄ™. + + + + There is already a table named '%1'. Do you want to import the data into it? + Tabela o nazwie '%1' już istnieje. Czy chcesz zaimportować dane do niej? + + + + Creating restore point failed: %1 + Nie można utworzyć punktu przywracania: %1 + + + + Creating the table failed: %1 + Tworzenie tabeli nie powiodÅ‚o siÄ™: %1 + + + + importing CSV + importowanie CSV + + + + Inserting row failed: %1 + Wstawianie rzÄ™du nie powiodÅ‚o siÄ™: %1 + + + + Importing the file '%1' took %2ms. Of this %3ms were spent in the row function. + Importowanie pliku '%1' zajęło %2ms. Z tego %3ms spÄ™dzono na funkcji wiersza. + + + + MainWindow + + + DB Browser for SQLite + PrzeglÄ…darka SQLite + + + + + Database Structure + This has to be equal to the tab title in all the main tabs + Struktura danych + + + + Warning: this pragma is not readable and this value has been inferred. Writing the pragma might overwrite a redefined LIKE provided by an SQLite extension. + Uwaga: to polecenie pragma nie jest czytelne, wiÄ™c ta wartość powstaÅ‚a z domysÅ‚u. Zapisanie polecenie pragma może zastÄ…pić LIKE dostarczony przez rozszerzenie SQLite. + + + + toolBar1 + toolBar1 + + + + This is the structure of the opened database. +You can drag SQL statements from an object row and drop them into other applications or into another instance of 'DB Browser for SQLite'. + + Oto struktura bieżącej bazy danych. +Można przeciÄ…gać polecenia SQL z wiersza obiektu i upuszczać je na innych aplikacjach lub wstawiać je do innego wystÄ…pienia 'PrzeglÄ…darki SQLite'. + + + + + Browse Data + This has to be equal to the tab title in all the main tabs + PrzeglÄ…darka danych + + + + Execute line + Wykonaj wiersz + + + + Un/comment block of SQL code + Dodaj/UsuÅ„ uwagÄ™ do kawaÅ‚ka kodu SQL + + + + Un/comment block + Dodaj/UsuÅ„ uwagÄ™ do kawaÅ‚ka kodu + + + + Comment or uncomment current line or selected block of code + Dodaj lub usuÅ„ uwagÄ™ do bieżącego wiersza lub zaznaczonego kawaÅ‚ka kodu + + + + Comment or uncomment the selected lines or the current line, when there is no selection. All the block is toggled according to the first line. + Dodaj lub usuÅ„ uwagÄ™ do bieżącego wiersza lub zaznaczonych wierszy, gdy jest coÅ› zaznaczone. CaÅ‚y kawaÅ‚ek przełączany jest wg pierwszego wiersza. + + + + Ctrl+/ + + + + + Stop SQL execution + Zatrzymaj wykonywanie SQL + + + + Stop execution + Zatrzymaj wykonywanie + + + + Stop the currently running SQL script + Zatrzymaj wykonywanie bieżącego skryptu SQL + + + + + Edit Pragmas + This has to be equal to the tab title in all the main tabs + Polecenia Pragmy + + + + + Execute SQL + This has to be equal to the tab title in all the main tabs + Polecenia SQL + + + + &File + &Plik + + + + &Import + &Importuj + + + + &Export + &Eksportuj + + + + &Edit + &Edycja + + + + &View + &Widok + + + + &Help + Po&moc + + + + &Tools + &NarzÄ™dzia + + + + DB Toolbar + Pasek zadaÅ„ bazy danych + + + + Edit Database &Cell + Zmiana komórki bazy dany&ch + + + + SQL &Log + Dziennik SQ&L + + + + Show S&QL submitted by + Pokaż S&QL wydane przez + + + + User + Użytkownika + + + + Application + AplikacjÄ™ + + + + Error Log + Dziennik błędów + + + + This button clears the contents of the SQL logs + Ten przycisk czyÅ›ci zawartość logów SQL + + + + &Clear + Wy&czyść + + + + This panel lets you examine a log of all SQL commands issued by the application or by yourself + Ten panel umożliwia przeglÄ…d dziennika wszystkich poleceÅ„ SQL wydanych przez aplikacjÄ™ lub przez ciebie + + + + &Plot + &Wykres + + + + DB Sche&ma + Struktura da&nych + + + + &Remote + &Zdalne BD + + + + + Project Toolbar + Pasek zadaÅ„ projektu + + + + Extra DB toolbar + Dodatkowy pasek zadaÅ„ bazy danych + + + + + + Close the current database file + Zamknij obecny plik bazy danych + + + + &New Database... + &Nowa baza danych… + + + + + Create a new database file + Utwórz nowy plik bazy danych + + + + This option is used to create a new database file. + Ta opcja jest wykorzystywana do tworzenia nowego pliku bazy danych. + + + + Ctrl+N + + + + + + &Open Database... + &Otwórz bazÄ™ danych… + + + + + + + + Open an existing database file + Otwórz istniejÄ…cÄ… bazÄ™ danych + + + + + + This option is used to open an existing database file. + Ta opcja otwiera istniejÄ…cy plik bazy danych. + + + + Ctrl+O + + + + + &Close Database + Zamknij bazÄ™ dany&ch + + + + This button closes the connection to the currently open database file + Ten przycisk koÅ„czy połączenie z obecnie otwartym plikiem bazy danych + + + + Open SQL file(s) + + + + + This button opens files containing SQL statements and loads them in new editor tabs + + + + + This button lets you save all the settings associated to the open DB to a DB Browser for SQLite project file + + + + + This button lets you open a DB Browser for SQLite project file + + + + + Browse Table + PrzeglÄ…daj tabelÄ™ + + + + + Ctrl+W + + + + + &Revert Changes + &Wycofaj zmiany + + + + + Revert database to last saved state + Przywróć bazÄ™ danych do ostatniego zapisanego stanu + + + + This option is used to revert the current database file to its last saved state. All changes made since the last save operation are lost. + Ten dziaÅ‚anie sÅ‚uży do przywrócenia bieżącej bazy danych do ostatnio zapisanego stanu. Wszystkie zmiany od czasu ostatniego zapisu zostanÄ… utracone. + + + + &Write Changes + &Zapisz zmiany + + + + + Write changes to the database file + Zapisz zmiany w pliku bazy danych + + + + This option is used to save changes to the database file. + Ta opcja zapisuje zmiany w pliku bazy danych. + + + + Ctrl+S + + + + + Ctrl+Shift+O + + + + + &Save Project As... + Zapi&sz projekt jako... + + + + + + Save the project in a file selected in a dialog + Zapisuje projekt w pliku wskazanym w dialogu + + + + Save A&ll + Zapisz w&szystko + + + + + + Save DB file, project file and opened SQL files + Zapisuje plik bazy danych, projektu i otwarte pliki SQL + + + + Ctrl+Shift+S + + + + + This is the structure of the opened database. +You can drag multiple object names from the Name column and drop them into the SQL editor and you can adjust the properties of the dropped names using the context menu. This would help you in composing SQL statements. +You can drag SQL statements from the Schema column and drop them into the SQL editor or into other applications. + + Oto struktura bieżącej bazy danych. +Można przeciÄ…gać wiele nazw obiektów z kolumny nazwy i upuszczać je w edytorze SQL. NastÄ™pnie można dostosować wÅ‚aÅ›ciwoÅ›ci upuszczonych nazw poprzez menu podrÄ™czne. To ma na celu pomoc w tworzeniu polecenia SQL. +Można przeciÄ…gać polecenia SQL z kolumny schematu i upuszczać je w edytorze SQL lub innych aplikacjach. + + + + Compact &Database... + ÅšciÅ›nij bazÄ™ &danych... + + + + Compact the database file, removing space wasted by deleted records + ÅšciÅ›nij plik bazÄ™ danych, usuwajÄ…c przestrzenie marnowane przez usuniÄ™te rekordy + + + + + Compact the database file, removing space wasted by deleted records. + ÅšciÅ›nij plik bazÄ™ danych, usuwajÄ…c przestrzenie marnowane przez usuniÄ™te rekordy. + + + + E&xit + &Wyjdź + + + + Ctrl+Q + + + + + &Database from SQL file... + Baza &danych z pliku SQL… + + + + Import data from an .sql dump text file into a new or existing database. + Importuj dane z pliku tekstowego zrzutu .sql do nowej lub istniejÄ…cej bazy danych. + + + + This option lets you import data from an .sql dump text file into a new or existing database. SQL dump files can be created on most database engines, including MySQL and PostgreSQL. + To dziaÅ‚anie, umożliwia importowanie danych z pliku tekstowego zrzutu .sql do nowej lub istniejÄ…cej bazy danych. Pliki zrzutu SQL można utworzyć w wiÄ™kszoÅ›ci silników baz danych, włączajÄ…c w to MySQL oraz PostgreSQL. + + + + &Table from CSV file... + &Tabela z pliku CSV… + + + + Open a wizard that lets you import data from a comma separated text file into a database table. + Otwiera okno pomocnika do importowania danych z pliku CSV do tabeli bazy danych. + + + + Open a wizard that lets you import data from a comma separated text file into a database table. CSV files can be created on most database and spreadsheet applications. + Otwiera okno pomocnika do importowania danych z pliku CSV do tabeli bazy danych. +Plik CSV można stworzyć na podstawie wiÄ™kszoÅ›ci baz danych i aplikacji arkuszy kalkulacyjnych. + + + + &Database to SQL file... + Baza &danych do pliku SQL… + + + + Export a database to a .sql dump text file. + Eksportuj bazÄ™ danych do pliku tekstowego zrzutu .sql + + + + This option lets you export a database to a .sql dump text file. SQL dump files contain all data necessary to recreate the database on most database engines, including MySQL and PostgreSQL. + To dziaÅ‚anie umożliwia eksportowanie bazy danych do pliku tekstowego zrzutu .sql. Plik zrzutu SQL zawiera wszystkie dane niezbÄ™dne do odtworzenia bazy danych na wiÄ™kszoÅ›ci silników baz danych, włączajÄ…c w to MySQL oraz PostgreSQL. + + + + &Table(s) as CSV file... + &Tabele do pliku CSV… + + + + Export a database table as a comma separated text file. + Eksportuje tabelÄ™ bazy danych jako plik tekstowy, oddzielajÄ…c wartoÅ›ci przecinkami. + + + + Export a database table as a comma separated text file, ready to be imported into other database or spreadsheet applications. + Eksportuje tabelÄ™ bazy danych jako plik tekstowym który można zaimportować w innych aplikacjach bazodanowych lub arkuszach kalkulacyjnych; oddzielajÄ…c wartoÅ›ci przecinkami. + + + + &Create Table... + &Utwórz tabelę… + + + + Open the Create Table wizard, where it is possible to define the name and fields for a new table in the database + Otwiera okno tworzenia tabel, gdzie można zdefiniować nazwÄ™ i pola w nowej tabeli w bazie danych + + + + &Delete Table... + U&suÅ„ tabelę… + + + + + Delete Table + UsuÅ„ tabelÄ™ + + + + Open the Delete Table wizard, where you can select a database table to be dropped. + Otwiera pomocnika do UsuniÄ™cia Tabeli, gdzie można wybrać tabelÄ™ bazy danych do usuniÄ™cia. + + + + &Modify Table... + Z&mieÅ„ tabelę… + + + + Open the Modify Table wizard, where it is possible to rename an existing table. It is also possible to add or delete fields form a table, as well as modify field names and types. + Otwiera pomocnika do Zmiany Tabeli, gdzie można przemianować istniejÄ…cÄ… tabelÄ…. +Można także dodawać i usuwać pola z tabli, a także zmieniać nazwy oraz rodzaje pól. + + + + Create &Index... + Utwórz &indeks… + + + + Open the Create Index wizard, where it is possible to define a new index on an existing database table. + Otwiera pomocnika do Tworzenia Indeksu, gdzie można okreÅ›lić nowy indeks na istniejÄ…cej tabeli bazy danych. + + + + &Preferences... + &Ustawienia... + + + + + Open the preferences window. + Otwórz okno ustawieÅ„. + + + + &DB Toolbar + Pasek narzÄ™dzi bazy &danych + + + + Shows or hides the Database toolbar. + Pokazuje lub ukrywa pasek narzÄ™dzi Baza danych + + + + Ctrl+T + + + + + W&hat's This? + &Co to jest? + + + + Ctrl+F4 + + + + + Shift+F1 + + + + + &About + O progr&amie + + + + &Load Extension... + &Wczytaj rozszerzenia... + + + + &Wiki + &Wiki + + + + F1 + + + + + Bug &Report... + &ZgÅ‚oszenie błędu... + + + + Feature Re&quest... + ZgÅ‚oszenie ż&yczenia... + + + + Web&site + Strona &sieciowa + + + + &Donate on Patreon... + &Darowizna na Patreon... + + + + Open &Project... + Otwórz &projekt... + + + + &Attach Database... + Dołącz bazÄ™ d&anych... + + + + &Set Encryption... + U&staw szyfrowanie... + + + + This button saves the content of the current SQL editor tab to a file + Ten przycisk zapisuje treść bieżącej karty edytora SQL do pliku + + + + SQLCipher &FAQ + &Najczęściej zadawane pytania SQLCipher + + + + New In-&Memory Database + Nowa baza danych w-pa&miÄ™ci + + + + Drag && Drop Qualified Names + PrzeciÄ…gnij && upuść nazwy ze struktury + + + + + Use qualified names (e.g. "Table"."Field") when dragging the objects and dropping them into the editor + Używaj nazw ze struktury (np. "Tabela"."Pole") przy przeciÄ…ganiu obiektów i upuszczaniu ich w edytorze + + + + Drag && Drop Enquoted Names + PrzeciÄ…gnij && upuść nazw w cudzysÅ‚owach + + + + + Use escaped identifiers (e.g. "Table1") when dragging the objects and dropping them into the editor + Używaj nazw w cudzysÅ‚owach (np. "Tabela1") przy przeciÄ…ganiu obiektów i upuszczaniu ich w edytorze + + + + &Integrity Check + Sprawdzanie spójnoÅ›c&i + + + + Runs the integrity_check pragma over the opened database and returns the results in the Execute SQL tab. This pragma does an integrity check of the entire database. + Wykonuje polecenie pragma integrity_check na bieżącej bazie danych i zwraca wynik na karcie Wykonywania SQL. To polecenie pragma wykonuje sprawdzenie spójnoÅ›ci caÅ‚ej bazy danych. + + + + &Foreign-Key Check + &Sprawdzenie obcego klucza + + + + Runs the foreign_key_check pragma over the opened database and returns the results in the Execute SQL tab + Wykonuje polecenie pragma foreign_key_check na bieżącej bazie danych i zwraca wynik na karcie Wykonywania SQL + + + + &Quick Integrity Check + &Szybkie sprawdzenie spójnoÅ›ci + + + + Run a quick integrity check over the open DB + Wykonaj sprawdzenie spójnoÅ›ci bieżącej bazy danych + + + + Runs the quick_check pragma over the opened database and returns the results in the Execute SQL tab. This command does most of the checking of PRAGMA integrity_check but runs much faster. + Wykonuje polecenie pragma quick_check na bieżącej bazie danych i zwraca wynik na karcie Wykonywania SQL. To polecenie pragma wykonuje wiÄ™kszość tego, co wykonuje polecenie pragma integrity_check lecz robi to znacznie szybciej. + + + + &Optimize + &Optymalizacja + + + + Attempt to optimize the database + Próba optymalizacji bazy danych + + + + Runs the optimize pragma over the opened database. This pragma might perform optimizations that will improve the performance of future queries. + Wykonuje polecenie pragma optimize na bieżącej bazie danych. To polecenie może wykonać optymalizacje, które zwiÄ™kszÄ… wydajność przyszÅ‚ych zapytaÅ„. + + + + + Print + Drukuj + + + + Print text from current SQL editor tab + Drukuj tekst z bieżącej karty edytora SQL + + + + Open a dialog for printing the text in the current SQL editor tab + Otwiera okno dialogowe do drukowania tekstu w bieżącej karcie edytora SQL + + + + Print the structure of the opened database + Drukuj strukturÄ™ bieżącej bazy danych + + + + Open a dialog for printing the structure of the opened database + Otwiera okno dialogowe do drukowania struktury bieżącej bazy danych + + + + &Recently opened + Ostatnio otwie&rane + + + + Open &tab + Otwórz kar&tÄ™ + + + + This button opens a new tab for the SQL editor + Ten przycisk otwiera nowÄ… tabelÄ™ w edytorze SQL + + + + &Execute SQL + &Wykonaj SQL + + + + Execute all/selected SQL + Wykonaj wszystkie/zaznaczone SQL + + + + This button executes the currently selected SQL statements. If no text is selected, all SQL statements are executed. + Ten przycisk wykona obecnie zaznaczone polecenia SQL. JeÅ›li nie zaznaczone tekstu, to zostanÄ… wykonane wszystkie polecenia SQL. + + + + + + Save SQL file + Zapisz plik SQL + + + + + Execute current line + Wykonaj bieżący wiersz + + + + This button executes the SQL statement present in the current editor line + Ten przycisk wykonuje polecenie SQL z obecnego wiersza edytora + + + + Shift+F5 + + + + + Export as CSV file + Eksportuj do pliku CSV + + + + Export table as comma separated values file + Eksportuj tabelÄ™ jako plik z wartoÅ›ciami oddzielonymi przecinkami + + + + Sa&ve Project + &Zapisz projekt + + + + + Save the current session to a file + Zapisz obecnÄ… sesjÄ™ do pliku + + + + + Load a working session from a file + Wczytaj otoczenie pracy z pliku + + + + + Add another database file to the current database connection + Dodaj kolejny plik bazy danych do połączenia bieżącej bazy danych + + + + This button lets you add another database file to the current database connection + Ten przycisk umożliwia dodanie kolejnego pliku bazy danych do połączenia bieżącej bazy danych + + + + + Save SQL file as + Zapisz plik SQL jako + + + + &Browse Table + &PrzeglÄ…daj tabelÄ™ + + + + Copy Create statement + Skopiuj polecenie tworzÄ…ce + + + + Copy the CREATE statement of the item to the clipboard + Skopiuj polecenie CREATE elementu do schowka + + + + Opens the SQLCipher FAQ in a browser window + Otwiera FAQ SQLCipher w oknie przeglÄ…darki + + + + Table(&s) to JSON... + Tabele do pliku J&SON… + + + + Export one or more table(s) to a JSON file + Eksportuj jednÄ… lub wiÄ™cej tabel do pliku JSON + + + + Open Data&base Read Only... + Otwórz &bazÄ™ danych tylko do odczytu… + + + + Open an existing database file in read only mode + Otwórz istniejÄ…cy plik bazy danych w trybie tylko do odczytu + + + + Save results + Zapisz wyniki + + + + Save the results view + Zapisuje widok wyniku + + + + This button lets you save the results of the last executed query + Ten przycisk umożliwia zapisanie wyników ostatnio wykonanego zapytania + + + + + Find text in SQL editor + Znajdź tekst w edytorze SQL + + + + Find + Znajdź + + + + This button opens the search bar of the editor + Ten przycisk otwiera pasek wyszukiwania edytora + + + + Ctrl+F + + + + + + Find or replace text in SQL editor + Znajdź lub zastÄ…p tekst w edytorze SQL + + + + Find or replace + Znajdź i zastÄ…p + + + + This button opens the find/replace dialog for the current editor tab + Ten przycisk otwiera okno dialogowe znajdowania/zastÄ™powania dla bieżącej karty edytora + + + + Ctrl+H + + + + + Export to &CSV + Eksportuj do &CSV + + + + Save as &view + Zapisz jako &widok + + + + Save as view + Zapisz jako widok + + + + Shows or hides the Project toolbar. + Pokazuje lub ukrywa pasek narzÄ™dzi Projekt. + + + + Extra DB Toolbar + Dodatkowy pasek narzÄ™dzi bazy danych + + + + Ctrl+Return + Ctrl+Return + + + + Ctrl+L + + + + + + Ctrl+P + + + + + Ctrl+D + + + + + Ctrl+I + + + + + Ctrl+E + + + + + Reset Window Layout + Wyzeruj ukÅ‚ad okien + + + + Alt+0 + + + + + The database is currenctly busy. + Baza danych jest obecnie zajÄ™ta. + + + + Click here to interrupt the currently running query. + NaciÅ›nij tutaj, aby przerwać wykonywanie bieżącego zapytania. + + + + Encrypted + Szyfrowana + + + + Database is encrypted using SQLCipher + Baza danych jest zaszyfrowana z użyciem SQLCipher + + + + Read only + Tylko do odczytu + + + + Database file is read only. Editing the database is disabled. + Plik bazy danych jest tylko do odczytu. Edytowanie bazy danych jest wyłączone. + + + + Database encoding + Kodowanie bazy danych + + + + + Choose a database file + Wybierz plik bazy danych + + + + Could not open database file. +Reason: %1 + Nie można otworzyć pliku bazy danych. +Powód: %1 + + + + + + Choose a filename to save under + Wybierz nazwÄ™ pliku do zapisu + + + + Setting PRAGMA values or vacuuming will commit your current transaction. +Are you sure? + Ustawianie wartoÅ›ci PRAGMA lub odkurzanie spowoduje wdrożenie twoich zmian +z bieżącej transakcji. +Czy na pewno? + + + + In-Memory database + Baza danych w-pamiÄ™ci + + + + Do you want to save the changes made to the project file '%1'? + Czy chcesz zapisać zmiany wprowadzone w plik projektu '%1'? + + + + Are you sure you want to delete the table '%1'? +All data associated with the table will be lost. + Czy na pewno usunąć tabelÄ™ '%1'? +Wszystkie dane skojarzone z tÄ… tabelÄ… zostanÄ… utracone. + + + + Are you sure you want to delete the view '%1'? + Czy na pewno usunąć widok '%1'? + + + + Are you sure you want to delete the trigger '%1'? + Czy na pewno usunąć wyzwalacz '%1'? + + + + + Are you sure you want to delete the index '%1'? + Czy na pewno usunąć indeks '%1'? + + + + Error: could not delete the table. + Błąd: nie można usunąć bazy danych. + + + + Error: could not delete the view. + Błąd: nie można usunąć widoku. + + + + Error: could not delete the trigger. + Błąd: nie można usunąć wyzwalacza. + + + + Error: could not delete the index. + Błąd: nie można usunąć indeksu. + + + + Message from database engine: +%1 + Wiadomość z silnika bazy danych: +%1 + + + + Editing the table requires to save all pending changes now. +Are you sure you want to save the database? + Zmiana tabeli wymaga zapisania wszystkich oczekujÄ…cych zmian. +Czy na pewno zapisać bazÄ™ danych? + + + + Error checking foreign keys after table modification. The changes will be reverted. + Błąd sprawdzania kluczy obcych po zmianie tabeli. Zmiany zostanÄ… wycofane. + + + + This table did not pass a foreign-key check.<br/>You should run 'Tools | Foreign-Key Check' and fix the reported issues. + Tabela nie przeszÅ‚a sprawdzenia klucza obcego.<br/>Należy wykonać 'NarzÄ™dzia | Sprawdzenie obcego klucza' i naprawić zgÅ‚oszone kÅ‚opoty. + + + + Edit View %1 + + + + + Edit Trigger %1 + + + + + You are already executing SQL statements. Do you want to stop them in order to execute the current statements instead? Note that this might leave the database in an inconsistent state. + Już wykonujesz polecenia SQL. Czy zatrzymać je, aby wykonać bieżące polecenia? DziaÅ‚anie to może spowodować niespójność w bazie danych. + + + + -- EXECUTING SELECTION IN '%1' +-- + -- WYKONYWANIE ZAZNACZENIA W '%1' +-- + + + + -- EXECUTING LINE IN '%1' +-- + -- WYKONYWANIE WIERSZA W '%1' +-- + + + + -- EXECUTING ALL IN '%1' +-- + -- WYKONYWANIE WSZYSTKIEGO W '%1' +-- + + + + + At line %1: + W wierszu %1: + + + + Result: %1 + Wynik: %1 + + + + Result: %2 + Wynik: %2 + + + + %1 rows returned in %2ms + Zwrócono %1 wierszy w czasie %2ms + + + + Choose text files + Wybierz pliki tekstowe + + + + Opened '%1' in read-only mode from recent file list + + + + + Opened '%1' from recent file list + + + + + Project saved to file '%1' + Projekt zapisano do pliku '%1' + + + + This action will open a new SQL tab with the following statements for you to edit and run: + + + + + Rename Tab + Przemianuj kartÄ™ + + + + Duplicate Tab + Powiel kartÄ™ + + + + Close Tab + Zamknij kartÄ™ + + + + Opening '%1'... + Otwieranie '%1'... + + + + There was an error opening '%1'... + Błąd otwierania '%1'... + + + + Value is not a valid URL or filename: %1 + Wartość nie jest prawidÅ‚owym adresem URL lub nazwÄ… pliku: %1 + + + + Error while saving the database file. This means that not all changes to the database were saved. You need to resolve the following error first. + +%1 + Nie można zapisać bazy danych. Oznacza to, że nie wszystkie zmiany daÅ‚o siÄ™ zapisać w bazie danych. Najpierw trzeba pozbyć siÄ™ nastÄ™pujÄ…cych kÅ‚opotów. + +%1 + + + + Are you sure you want to undo all changes made to the database file '%1' since the last save? + Czy na pewno wycofać wszystkie zmiany wprowadzone w pliku bazy danych '%1' od czasu ostatniego zapisu? + + + + Choose a file to import + Wybierz pliki do zaimportowania + + + + &%1 %2%3 + &%1 %2%3 + + + + (read only) + (tylko do odczytu) + + + + Open Database or Project + Otwórz bazÄ™ danych lub projekt + + + + Attach Database... + Dołącz bazÄ™ danych... + + + + Import CSV file(s)... + Importuj plik(i) CSV... + + + + Select the action to apply to the dropped file(s). <br/>Note: only 'Import' will process more than one file. + + Wybierz dziaÅ‚anie dla upuszczonego pliku. <br/>Uwaga: tylko 'Import' przetworzy wiÄ™cej niż jeden plik. + Wybierz dziaÅ‚anie dla upuszczonych plików. <br/>Uwaga: tylko 'Import' przetworzy wiÄ™cej niż jeden plik. + Wybierz dziaÅ‚anie dla upuszczonych plików. <br/>Uwaga: tylko 'Import' przetworzy wiÄ™cej niż jeden plik. + + + + + Do you want to save the changes made to SQL tabs in the project file '%1'? + Czy chcesz zapisać zmiany wprowadzone w tabelach SQL do pliku projektu '%1'? + + + + Text files(*.sql *.txt);;All files(*) + Pliki tekstowe(*.sql *.txt);;Wszystkie pliki(*) + + + + Do you want to create a new database file to hold the imported data? +If you answer no we will attempt to import the data in the SQL file to the current database. + Czy utworzyć plik nowej bazy danych do przechowania zaimportowanych danych? +JeÅ›li nie, to dane zostanÄ… zaimportowane do pliku bieżącej bazy danych. + + + + Window Layout + + + + + Simplify Window Layout + + + + + Shift+Alt+0 + + + + + Dock Windows at Bottom + + + + + Dock Windows at Left Side + + + + + Dock Windows at Top + + + + + You are still executing SQL statements. Closing the database now will stop their execution, possibly leaving the database in an inconsistent state. Are you sure you want to close the database? + Nadal wykonujesz polecenia SQL. Wykonywanie tych poleceÅ„ zostanie zatrzymane, po zamkniÄ™ciu bazy danych, co może spowodować w niej niespójnoÅ›ci. Czy na pewno zamknąć tÄ™ bazÄ™ danych? + + + + File %1 already exists. Please choose a different name. + Plik %1 już istnieje. Wybierz innÄ… nazwÄ™. + + + + Error importing data: %1 + Błąd importowania danych: %1 + + + + Import completed. Some foreign key constraints are violated. Please fix them before saving. + UkoÅ„czono import. NastÄ…piÅ‚o przekroczenie niektórych z ograniczeÅ„ obcego klucza. Napraw je przed zapisaniem. + + + + Import completed. + Importowanie zakoÅ„czone. + + + + Delete View + UsuÅ„ widok + + + + Modify View + ZmieÅ„ widok + + + + Delete Trigger + UsuÅ„ wyzwalacz + + + + Modify Trigger + ZmieÅ„ wyzwalacz + + + + Delete Index + UsuÅ„ indeks + + + + Modify Index + ZmieÅ„ indeks + + + + Modify Table + ZmieÅ„ tabelÄ™ + + + + Setting PRAGMA values will commit your current transaction. +Are you sure? + Ustawianie wartoÅ›ci PRAGMA spowoduje wdrożenie twoich zmian +z bieżącej transakcji. +Czy na pewno? + + + + Select SQL file to open + Wybierz plik SQL do otworzenia + + + + Select file name + Wybierz nazwÄ™ pliku + + + + Select extension file + Wybierz plik rozszerzenia + + + + Execution finished with errors. + Wykonano z błędami. + + + + Execution finished without errors. + Wykonano bez błędów. + + + + Do you want to save the changes made to SQL tabs in a new project file? + Czy chcesz zapisać zmiany wprowadzone w tabelach SQL do nowego pliku projektu? + + + + Do you want to save the changes made to the SQL file %1? + Czy chcesz zapisać zmiany wprowadzone w SQL do pliku %1? + + + + The statements in this tab are still executing. Closing the tab will stop the execution. This might leave the database in an inconsistent state. Are you sure you want to close the tab? + Polecenia w tej karcie nadal sÄ… wykonywane. Wykonywanie tych poleceÅ„ zostanie zatrzymane, po zamkniÄ™ciu karty, co może spowodować niespójnoÅ›ci w bazie danych. Czy na pewno zamknąć tÄ™ kartÄ™? + + + + Extension successfully loaded. + PomyÅ›lnie wczytano rozszerzenie. + + + + Error loading extension: %1 + Nie można wczytać rozszerzenia: %1 + + + + Could not find resource file: %1 + Nie można znaleźć pliku zasobów: %1 + + + + + Don't show again + Nie pokazuj ponownie + + + + New version available. + Nowa wersja jest dostÄ™pna. + + + + A new DB Browser for SQLite version is available (%1.%2.%3).<br/><br/>Please download at <a href='%4'>%4</a>. + DostÄ™pna jest nowa wersja PrzeglÄ…darki SQLite (%1.%2.%3).<br/><br/>Pobierz z <a href='%4'>%4</a>. + + + + Choose a project file to open + Wybierz plik projektu do otworzenia + + + + DB Browser for SQLite project file (*.sqbpro) + Plik projektu PrzeglÄ…darki SQLite (*.sqbpro) + + + + This project file is using an old file format because it was created using DB Browser for SQLite version 3.10 or lower. Loading this file format is still fully supported but we advice you to convert all your project files to the new file format because support for older formats might be dropped at some point in the future. You can convert your files by simply opening and re-saving them. + Ten plik projektu używa starego formatu pliku, bo zostaÅ‚ stworzony przy użyciu PrzeglÄ…darki SQLite w wersji 3.10 lub niższej. Wczytywanie tego formatu pliku jest nadal w peÅ‚ni obsÅ‚ugiwane, lecz zalecamy przeksztaÅ‚cenie wszystkich plików projektu na nowy format pliku, bo obsÅ‚uga starych formatów może zniknąć w przyszÅ‚oÅ›ci. Aby przeksztaÅ‚cić plik, wystarczy go otworzyć i zapisać. + + + + Could not open project file for writing. +Reason: %1 + Nie można otworzyć pliku projektu do zapisu. +Powód: %1 + + + + Collation needed! Proceed? + Potrzebne zestawianie! PostÄ…pić naprzód? + + + + A table in this database requires a special collation function '%1' that this application can't provide without further knowledge. +If you choose to proceed, be aware bad things can happen to your database. +Create a backup! + Tabela w tej bazie danych wymaga wyjÄ…tkowej funkcji zestawienia '%1' której ta aplikacja nie może dostarczyć bez dalszej wiedzy. +PójÅ›cia z tym dalej, może spowodować uszkodzenia w bazie danych. +Stwórz kopiÄ™ zapasowÄ…! + + + + creating collation + tworzenie zestawienia + + + + Set a new name for the SQL tab. Use the '&&' character to allow using the following character as a keyboard shortcut. + Przemianowuje kartÄ™ SQL. Wstaw znaku '&&' aby móc wykorzystać nastÄ™pujÄ…cy po nim znak jako skrót klawiszowy. + + + + Please specify the view name + OkreÅ›l nazwÄ™ widoku + + + + There is already an object with that name. Please choose a different name. + Istnieje już obiekt o tej nazwie. Nadaj innÄ… nazwÄ™. + + + + View successfully created. + PomyÅ›lnie utworzono widok. + + + + Error creating view: %1 + Błąd tworzenia widoku: %1 + + + + This action will open a new SQL tab for running: + To dziaÅ‚anie otworzy nowÄ… kartÄ™ SQL aby wykonać: + + + + Press Help for opening the corresponding SQLite reference page. + NaciÅ›nij Pomoc, aby otworzyć powiÄ…zanÄ… stronÄ™ w podrÄ™czniku SQLite. + + + + Busy (%1) + ZajÄ™ty (%1) + + + + NullLineEdit + + + Set to NULL + Ustaw na NULL + + + + Alt+Del + + + + + PlotDock + + + Plot + Wykres + + + + <html><head/><body><p>This pane shows the list of columns of the currently browsed table or the just executed query. You can select the columns that you want to be used as X or Y axis for the plot pane below. The table shows detected axis type that will affect the resulting plot. For the Y axis you can only select numeric columns, but for the X axis you will be able to select:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Date/Time</span>: strings with format &quot;yyyy-MM-dd hh:mm:ss&quot; or &quot;yyyy-MM-ddThh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Date</span>: strings with format &quot;yyyy-MM-dd&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Time</span>: strings with format &quot;hh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Label</span>: other string formats. Selecting this column as X axis will produce a Bars plot with the column values as labels for the bars</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Numeric</span>: integer or real values</li></ul><p>Double-clicking the Y cells you can change the used color for that graph.</p></body></html> + <html><head/><body><p>To okno pokazuje wykaz wszystkich kolumn w bieżącej tabeli lub wÅ‚aÅ›nie wykonane zapytanie. Można wybrać kolumny wykorzystywane jako oÅ› X lub Y do okna wykresu poniżej. Tabela pokazuje wykryty rodzaj osi, który wpÅ‚ynie na wynikowy wykres. Dla osi Y można wybrać tylko kolumny liczbowe, a dla osi X można wybrać:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Data/Czas</span>: ciÄ…gi znaków o formacie &quot;yyyy-MM-dd hh:mm:ss&quot; lub &quot;yyyy-MM-ddThh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Data</span>: ciÄ…gi znaków o formacie &quot;yyyy-MM-dd&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Czas</span>: ciÄ…gi znaków o formacie &quot;hh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Etykieta</span>: inne ciÄ…gi znaków. Wybranie tej kolumny jako osi X utworzy wykres sÅ‚upkowy z wartoÅ›ciami z kolumny bÄ™dÄ…cymi etykietami dla sÅ‚upków</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Liczbowe</span>: liczby caÅ‚kowite lub rzeczywiste</li></ul><p>Aby zmienić barwy wykresu, należy kliknąć dwukrotnie na komórkach Y.</p></body></html> + + + + Columns + Kolumny + + + + X + X + + + + Y1 + + + + + Y2 + + + + + Axis Type + Rodzaj osi + + + + Here is a plot drawn when you select the x and y values above. + +Click on points to select them in the plot and in the table. Ctrl+Click for selecting a range of points. + +Use mouse-wheel for zooming and mouse drag for changing the axis range. + +Select the axes or axes labels to drag and zoom only in that orientation. + Tutaj rysowany jest wykres po wybraniu wartoÅ›ci x oraz y powyżej. + +Aby zaznaczyć punkt na wykresie i w tabeli, należy kliknąć na niego. Ctrl+Klik aby zaznaczyć zakres punktów. + +Aby zmienić zakres osi, należy kliknąć i przeciÄ…gnąć myszÄ…. Aby powiÄ™kszyć należy przewinąć rolkÄ… myszy. + +Aby przeciÄ…gnąć i powiÄ™kszyć tylko w jednÄ… stronÄ™, należy wybrać osie lub etykiety osi. + + + + Line type: + Rodzaj linii: + + + + + None + Brak + + + + Line + Linia + + + + StepLeft + Krok w lewo + + + + StepRight + Krok w prawo + + + + StepCenter + Krok do Å›rodka + + + + Impulse + Impuls + + + + Point shape: + KsztaÅ‚t punktu: + + + + Cross + Krzyż + + + + Plus + Plus + + + + Circle + Kółko + + + + Disc + Dysk + + + + Square + Kwadrat + + + + Diamond + Diament + + + + Star + Gwiazda + + + + Triangle + TrójkÄ…t + + + + TriangleInverted + TrójkÄ…t odwrócony + + + + CrossSquare + Krzyż w kwadracie + + + + PlusSquare + Plus w kwadracie + + + + CrossCircle + Krzyż w okrÄ™gu + + + + PlusCircle + Plus w okrÄ™gu + + + + Peace + Znak pokoju + + + + <html><head/><body><p>Save current plot...</p><p>File format chosen by extension (png, jpg, pdf, bmp)</p></body></html> + <html><head/><body><p>Zapisz bieżący wykres...</p><p>Format pliku wybierany na podstawie rozszerzenia (png, jpg, pdf, bmp)</p></body></html> + + + + Save current plot... + Zapisz bieżący wykres… + + + + + Load all data and redraw plot + Wczytaj wszystkie dane i przerysuj wykres + + + + Copy + Skopiuj + + + + Print... + Drukuj... + + + + Show legend + Pokaż legendÄ™ + + + + Stacked bars + SÅ‚upki na stosie + + + + Date/Time + Data/Czas + + + + Date + Data + + + + Time + Czas + + + + + Numeric + Liczbowa + + + + Label + Podpis + + + + Invalid + NieprawidÅ‚owy + + + + + + Row # + Nr wiersza + + + + Load all data and redraw plot. +Warning: not all data has been fetched from the table yet due to the partial fetch mechanism. + Wczytaj wszystkie dane i przerysuj wykres. +Uwaga: jeszcze nie wczytano wszystkich danych z tabeli ze wzglÄ™du na mechanizm częściowego wczytywania. + + + + Choose an axis color + Wybierz barwÄ™ osi + + + + Choose a filename to save under + Wybierz nazwÄ™ pliku do zapisu + + + + PNG(*.png);;JPG(*.jpg);;PDF(*.pdf);;BMP(*.bmp);;All Files(*) + PNG(*.png);;JPG(*.jpg);;PDF(*.pdf);;BMP(*.bmp);;Wszystkie pliki(*) + + + + There are curves in this plot and the selected line style can only be applied to graphs sorted by X. Either sort the table or query by X to remove curves or select one of the styles supported by curves: None or Line. + W tym wykresie wystÄ™pujÄ… krzywe, a wybrany wyglÄ…d linii można zastosować tylko dla wykresów uszeregowanych po X. Uszereguj tabelÄ™ lub zapytaj po X, aby usunąć krzywe lub wybierz jeden z wyglÄ…dów obsÅ‚ugiwanych przez krzywe: Brak lub Linia. + + + + Loading all remaining data for this table took %1ms. + Wczytywanie wszystkich pozostaÅ‚ych danych dla tej tabeli zajęło %1ms. + + + + PreferencesDialog + + + Preferences + Ustawienia + + + + &General + O&gólne + + + + Default &location + DomyÅ›&lne poÅ‚ożenie + + + + Remember last location + PamiÄ™taj ostatnie poÅ‚ożenie + + + + Always use this location + Zawsze używaj poniższego poÅ‚ożenia + + + + Remember last location for session only + Zapomnij ostatnie poÅ‚ożenie, dopiero po zamkniÄ™ciu programu + + + + + + ... + … + + + + Lan&guage + &JÄ™zyk + + + + Toolbar style + WyglÄ…d paska narzÄ™dzi + + + + + + + + Only display the icon + WyÅ›wietl tylko ikonÄ™ + + + + + + + + Only display the text + WyÅ›wietl tylko tekst + + + + + + + + The text appears beside the icon + Tekst obok ikony + + + + + + + + The text appears under the icon + Tekst pod ikonÄ… + + + + + + + + Follow the style + DomyÅ›lnie dla wyglÄ…du + + + + Show remote options + Pokaż ustawienia zdalnych BD + + + + + + + + + + + + enabled + włączone + + + + Automatic &updates + Sam &uaktualniaj + + + + DB file extensions + Rozszerzenia plików bazy danych + + + + Manage + ZarzÄ…dzaj + + + + Main Window + Główne okno + + + + Database Structure + Struktura danych + + + + Browse Data + PrzeglÄ…darka danych + + + + Execute SQL + Wykonaj SQL + + + + Edit Database Cell + Zmiana komórki bazy danych + + + + When this value is changed, all the other color preferences are also set to matching colors. + Po zmianie tej wartoÅ›ci, wszystkie inne ustawienia barw zostanÄ… także ustawione na +pasujÄ…ce barwy. + + + + Follow the desktop style + Zgodny z systemem + + + + Dark style + Ciemny + + + + Application style + WyglÄ…d programu + + + + This sets the font size for all UI elements which do not have their own font size option. + + + + + Font size + + + + + &Database + Baza &danych + + + + Database &encoding + Kodowani&e bazy danych + + + + Open databases with foreign keys enabled. + Otwiera bazy danych z włączonymi kluczami obcymi. + + + + &Foreign keys + &Obce klucze + + + + Remove line breaks in schema &view + UsuÅ„ podziaÅ‚y wierszy w &widoku schematu + + + + When enabled, the line breaks in the Schema column of the DB Structure tab, dock and printed output are removed. + Po zaznaczeniu, usuwany jest znak Å‚amania wiersza w kolumnie schematu karty struktury bazy danych, doku oraz drukowanym wyniku. + + + + Prefetch block si&ze + Ro&zmiar obszaru wczytanego z wyprzedzeniem + + + + SQ&L to execute after opening database + SQ&L do wykonania po otworzeniu bazy danych + + + + Default field type + DomyÅ›lny rodzaj pola + + + + Data &Browser + &PrzeglÄ…darka danych + + + + Font + Czcionka + + + + &Font + &Czcionka + + + + Font si&ze + Ro&zmiar czcionki + + + + Content + Zawartość + + + + Symbol limit in cell + Graniczna liczba znaków w komórce + + + + This is the maximum number of items allowed for some computationally expensive functionalities to be enabled: +Maximum number of rows in a table for enabling the value completion based on current values in the column. +Maximum number of indexes in a selection for calculating sum and average. +Can be set to 0 for disabling the functionalities. + Jest to graniczna liczba elementów, która jest dozwolona dla niektórych obliczeniowo pracochÅ‚onnych dziaÅ‚aÅ„: +Graniczna liczba wierszy w tabeli do włączenia uzupeÅ‚niania wartoÅ›ci na podstawie bieżących wartoÅ›ci w kolumnie. +Graniczna liczba indeksów w zaznaczeniu do obliczenia sumy i Å›redniej. +Można ustawić na 0, aby wyłączyć wszystkie te dziaÅ‚ania. + + + + This is the maximum number of rows in a table for enabling the value completion based on current values in the column. +Can be set to 0 for disabling completion. + Jest to graniczna liczba wierszy w tabeli do włączenia uzupeÅ‚niania wartoÅ›ci na podstawie wartoÅ›ci znajdujÄ…cych siÄ™ już w kolumnie. +Można ustawić na 0, aby wyłączyć uzupeÅ‚nianie. + + + + Close button on tabs + + + + + If enabled, SQL editor tabs will have a close button. In any case, you can use the contextual menu or the keyboard shortcut to close them. + + + + + Proxy + PoÅ›rednik + + + + Configure + Ustawienia + + + + Field display + WyÅ›wietlanie pola + + + + Displayed &text + WyÅ›wietlany &tekst + + + + Binary + Dane dwójkowe + + + + NULL + WartoÅ›ci NULL + + + + Regular + ZwykÅ‚e dane + + + + + + + + + Click to set this color + NaciÅ›nij, aby ustawić tÄ™ barwÄ™ + + + + Text color + Barwa tekstu + + + + Background color + Barwa tÅ‚a + + + + Preview only (N/A) + Tylko do podglÄ…du (ND) + + + + Filters + Filtry + + + + Escape character + Znak wyjÅ›cia + + + + Delay time (&ms) + Czas opóźnienia (&ms) + + + + Set the waiting time before a new filter value is applied. Can be set to 0 for disabling waiting. + Ustaw czas oczekiwania przed zastosowaniem nowej wartoÅ›ci filtra. Może być ustawiony na 0, aby wyłączyć oczekiwanie. + + + + &SQL + &SQL + + + + Settings name + Nazwa ustawienia + + + + Context + WystÄ™powanie + + + + Colour + Barwa + + + + Bold + Pogrubienie + + + + Italic + Pochylenie + + + + Underline + PodkreÅ›lenie + + + + Keyword + SÅ‚owo kluczowe + + + + Function + Funkcja + + + + Table + Tabela + + + + Comment + Uwaga + + + + Identifier + Identyfikator + + + + String + CiÄ…g znaków + + + + Current line + Bieżący wiersz + + + + Background + TÅ‚o + + + + Foreground + Pierwszy plan + + + + SQL &editor font size + Rozmiar czcionki &edytora SQL + + + + SQL &results font size + &Rozmiar czcionki wyników SQL + + + + Tab size + Rozmiar tabulatora + + + + SQL editor &font + &Czcionka edytora SQL + + + + Database structure font size + + + + + Threshold for completion and calculation on selection + UzupeÅ‚niaj i obliczaj do tej liczby wierszy + + + + Show images in cell + Pokaż obrazy w komórce + + + + Enable this option to show a preview of BLOBs containing image data in the cells. This can affect the performance of the data browser, however. + Włącz to, aby pokazać podglÄ…d obiektów BLOB zawierajÄ…cych dane obrazów w komórkach. Może to jednak wpÅ‚ynąć na wydajność przeglÄ…darki danych. + + + + &Wrap lines + Za&wijaj wiersze + + + + &Quotes for identifiers + &CudzysÅ‚owy dla identyfikatorów + + + + Choose the quoting mechanism used by the application for identifiers in SQL code. + Wybierz zapis cudzysÅ‚owów stosowany w aplikacji do identyfikatorów w kodzie SQL. + + + + "Double quotes" - Standard SQL (recommended) + "Podwójne cudzysÅ‚owy" - Standard SQL (zalecane) + + + + `Grave accents` - Traditional MySQL quotes + `Pojedyncze cudzysÅ‚owy` - Tradycyjne cudzysÅ‚owy MySQL + + + + [Square brackets] - Traditional MS SQL Server quotes + [Nawiasy kwadratowe] - Tradycyjne cudzysÅ‚owy MS SQL Server + + + + Code co&mpletion + UzupeÅ‚nianie &kodu + + + + Keywords in &UPPER CASE + SÅ‚owa kl&uczowe WIELKIMI LITERAMI + + + + When set, the SQL keywords are completed in UPPER CASE letters. + Po zaznaczeniu, polecenia SQL sÄ… uzupeÅ‚niane wielkimi literami. + + + + Error indicators + Wskaźniki błędów + + + + When set, the SQL code lines that caused errors during the last execution are highlighted and the results frame indicates the error in the background + Po zaznaczeniu, wiersze kodu SQL, które powodowaÅ‚y błędy podczas ostatniego wykonywania, sÄ… podÅ›wietlana, a okno wyniku pokazuje błąd w tle + + + + Hori&zontal tiling + Kafelki w po&ziomie + + + + If enabled the SQL code editor and the result table view are shown side by side instead of one over the other. + Po zaznaczeniu, edytor kodu SQL oraz widok tabeli wynikowej bÄ™dÄ… wyÅ›wietlane obok siebie zamiast jedno nad drugim. + + + + Never + Nigdy + + + + At word boundaries + Na granicach słów + + + + At character boundaries + Na granicach znaków + + + + At whitespace boundaries + Na granicach biaÅ‚ych znaków + + + + &Extensions + Rozsz&erzenia + + + + Select extensions to load for every database: + Wybierz rozszerzenia wczytywane dla każdej bazy danych: + + + + Add extension + Dodaj rozszerzenie + + + + Remove extension + UsuÅ„ rozszerzenie + + + + <html><head/><body><p>While supporting the REGEXP operator SQLite doesn't implement any regular expression<br/>algorithm but calls back the running application. DB Browser for SQLite implements this<br/>algorithm for you to let you use REGEXP out of the box. However, as there are multiple possible<br/>implementations of this and you might want to use another one, you're free to disable the<br/>application's implementation and load your own by using an extension. Requires restart of the application.</p></body></html> + <html><head/><body><p>Mimo obsÅ‚ugi polecenia REGEXP, SQLite nie implementuje żadnego z algorytmu wyrażeÅ„ regularnych<br/>lecz zwraca siÄ™ z powrotem do aplikacji, która je uruchomiÅ‚a. PrzeglÄ…darka SQLite implementuje ten<br/>algorytm, aby móc od razu korzystać z REGEXP. Jednakże, ze wzglÄ™du na to, że istnieje wiele możliwych<br/>implementacji wyrażeÅ„ regularnych, to można wyłączyć ten wbudowany<br/>i wczytać swój wÅ‚asny. Wymaga to jednak ponownego uruchomienia aplikacji.</p></body></html> + + + + Disable Regular Expression extension + Wyłącz rozszerzenie wyrażeÅ„ regularnych + + + + <html><head/><body><p>SQLite provides an SQL function for loading extensions from a shared library file. Activate this if you want to use the <span style=" font-style:italic;">load_extension()</span> function from SQL code.</p><p>For security reasons, extension loading is turned off by default and must be enabled through this setting. You can always load extensions through the GUI, even though this option is disabled.</p></body></html> + <html><head/><body><p>SQLite dostarcza funkcjÄ™ SQL do wczytywania rozszerzeÅ„ z pliku biblioteki współdzielonej. Zaznacz to, aby używać funkcji <span style=" font-style:italic;">load_extension()</span> z kodu SQL.</p><p>Ze wzglÄ™du na bezpieczeÅ„stwo, wczytywanie rozszerzeÅ„ jest domyÅ›lnie wyłączone i musi zostać włączone przez to ustawienie. Zawsze można wczytywać rozszerzenia przez interfejs użytkownika, nawet gdy pole to jest odznaczone.</p></body></html> + + + + Allow loading extensions from SQL code + Zezwól na wczytywanie rozszerzeÅ„ z kodu SQL + + + + Remote + Zdalne BD + + + + CA certificates + Certyfikaty UC + + + + + Subject CN + NP podmiotu + + + + Common Name + Nazwa powszechna + + + + Subject O + O podmiotu + + + + Organization + Organizacja + + + + + Valid from + Ważny od + + + + + Valid to + Ważny do + + + + + Serial number + Numer seryjny + + + + Your certificates + Twoje certyfikaty + + + + File + Plik + + + + Subject Common Name + Nazwa powszechna podmiotu + + + + Issuer CN + NP wydawcy + + + + Issuer Common Name + Nazwa powszechna wydawcy + + + + Clone databases into + Pobieraj bazy danych do + + + + + Choose a directory + Wybierz katalog + + + + The language will change after you restart the application. + JÄ™zyk zmieni siÄ™ po ponownym uruchomieniu aplikacji. + + + + Select extension file + Wybierz plik rozszerzenia + + + + Extensions(*.so *.dylib *.dll);;All files(*) + Rozszerzenia(*.so *.dylib *.dll);;Wszystkie pliki(*) + + + + Import certificate file + Importuj plik certyfikatu + + + + No certificates found in this file. + Nie znaleziono certyfikatów w tym pliku. + + + + Are you sure you want do remove this certificate? All certificate data will be deleted from the application settings! + Czy na pewno usunąć ten certyfikat? Wszystkie dane certyfikatu zostanÄ… usuniÄ™te z ustawieÅ„ aplikacji! + + + + Are you sure you want to clear all the saved settings? +All your preferences will be lost and default values will be used. + Czy na pewno wyczyÅ›cić wszystkie zapisane ustawienia? +Wszystkie zapisane ustawienia zostanÄ… utracone i zastÄ…pione domyÅ›lnymi. + + + + ProxyDialog + + + Proxy Configuration + Ustawienia proxy + + + + Pro&xy Type + &Rodzaj poÅ›rednika: + + + + Host Na&me + Nazwa &gospodarza + + + + Port + Port + + + + Authentication Re&quired + &Wymagane uwierzytelnienie + + + + &User Name + Nazwa &użytkownika + + + + Password + HasÅ‚o + + + + None + Brak + + + + System settings + Ustawienia systemowe + + + + HTTP + HTTP + + + + Socks v5 + Socks v5 + + + + QObject + + + All files (*) + Wszystkie pliki (*) + + + + Error importing data + Błąd importowania danych + + + + from record number %1 + z rekordu o numerze %1 + + + + . +%1 + . +%1 + + + + Importing CSV file... + Importowanie pliku CSV… + + + + Cancel + Zaniechaj + + + + SQLite database files (*.db *.sqlite *.sqlite3 *.db3) + Pliki bazy danych SQLite (*.db *.sqlite *.sqlite3 *.db3) + + + + Left + Do lewej + + + + Right + Do prawej + + + + Center + Do Å›rodka + + + + Justify + Wyjustuj + + + + SQLite Database Files (*.db *.sqlite *.sqlite3 *.db3) + Pliki bazy danych SQLite (*.db *.sqlite *.sqlite3 *.db3) + + + + DB Browser for SQLite Project Files (*.sqbpro) + PrzeglÄ…darka BD dla plików projektu SQLite (*.sqbpro) + + + + SQL Files (*.sql) + Pliki SQL (*.sql) + + + + All Files (*) + Wszystkie pliki (*) + + + + Text Files (*.txt) + Pliki tekstowe (*.txt) + + + + Comma-Separated Values Files (*.csv) + Pliki z wartoÅ›ciami oddzielonymi przecinkiem (*.csv) + + + + Tab-Separated Values Files (*.tsv) + Pliki z wartoÅ›ciami oddzielonymi tabulatorem (*.tsv) + + + + Delimiter-Separated Values Files (*.dsv) + Pliki z wartoÅ›ciami oddzielonymi rozdzielaczem (*.dsv) + + + + Concordance DAT files (*.dat) + Pliki Concordance DAT (*.dat) + + + + JSON Files (*.json *.js) + Pliki JSON (*.json *.js) + + + + XML Files (*.xml) + Pliki XML (*.xml) + + + + Binary Files (*.bin *.dat) + Pliki dwójkowe (*.bin *.dat) + + + + SVG Files (*.svg) + Pliki SVG (*.svg) + + + + Hex Dump Files (*.dat *.bin) + Pliki zrzutu szesnastkowego (*.dat *.bin) + + + + Extensions (*.so *.dylib *.dll) + Rozszerzenia (*.so *.dylib *.dll) + + + + RemoteCommitsModel + + + Commit ID + + + + + Message + + + + + Date + Data + + + + Author + + + + + Size + Rozmiar + + + + Authored and committed by %1 + + + + + Authored by %1, committed by %2 + + + + + RemoteDatabase + + + Error opening local databases list. +%1 + Nie można otworzyć wykazu lokalnych baz danych. +%1 + + + + Error creating local databases list. +%1 + Nie można utworzyć wykazu lokalnych baz danych. +%1 + + + + RemoteDock + + + Remote + Zdalne BD + + + + Identity + Tożsamość + + + + Push currently opened database to server + Wypchnij bieżącÄ… bazÄ™ danych na serwer + + + + DBHub.io + + + + + <html><head/><body><p>In this pane, remote databases from dbhub.io website can be added to DB Browser for SQLite. First you need an identity:</p><ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Login to the dbhub.io website (use your GitHub credentials or whatever you want)</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Click the button to &quot;Generate client certificate&quot; (that's your identity). That'll give you a certificate file (save it to your local disk).</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Go to the Remote tab in DB Browser for SQLite Preferences. Click the button to add a new certificate to DB Browser for SQLite and choose the just downloaded certificate file.</li></ol><p>Now the Remote panel shows your identity and you can add remote databases.</p></body></html> + + + + + Local + + + + + Current Database + + + + + Clone + + + + + User + Użytkownika + + + + Database + Baza danych + + + + Branch + Gałąź + + + + Commits + + + + + Commits for + + + + + Delete Database + + + + + Delete the local clone of this database + + + + + Open in Web Browser + + + + + Open the web page for the current database in your browser + + + + + Clone from Link + + + + + Use this to download a remote database for local editing using a URL as provided on the web page of the database. + + + + + Refresh + OdÅ›wież + + + + Reload all data and update the views + + + + + F5 + + + + + Clone Database + + + + + Open Database + + + + + Open the local copy of this database + + + + + Check out Commit + + + + + Download and open this specific commit + + + + + Check out Latest Commit + + + + + Check out the latest commit of the current branch + + + + + Save Revision to File + + + + + Saves the selected revision of the database to another file + + + + + Upload Database + + + + + Upload this database as a new commit + + + + + <html><head/><body><p>You are currently using a built-in, read-only identity. For uploading your database, you need to configure and use your DBHub.io account.</p><p>No DBHub.io account yet? <a href="https://dbhub.io/"><span style=" text-decoration: underline; color:#007af4;">Create one now</span></a> and import your certificate <a href="#preferences"><span style=" text-decoration: underline; color:#007af4;">here</span></a> to share your databases.</p><p>For online help visit <a href="https://dbhub.io/about"><span style=" text-decoration: underline; color:#007af4;">here</span></a>.</p></body></html> + <html><head/><body><p>Obecnie używasz wbudowanej tożsamoÅ›ci, która jest tylko do odczytu. Aby wysÅ‚ać bazÄ™ danych musisz posÅ‚użyć siÄ™ kontem z DBHub.io.</p><p>Nie masz jeszcze konta DBHub.io? <a href="https://dbhub.io/"><span style=" text-decoration: underline; color:#007af4;">Utwórz je teraz</span></a> i zaimportuj swój certyfikat<a href="#preferences"><span style=" text-decoration: underline; color:#007af4;">tutaj</span></a>, aby móc dzielić siÄ™ swoimi bazami danych.</p><p>Aby uzyskać pomoc w sieci, zajrzyj <a href="https://dbhub.io/about"><span style=" text-decoration: underline; color:#007af4;">tutaj</span></a>.</p></body></html> + + + + Back + Wstecz + + + + Select an identity to connect + + + + + Public + Publiczna + + + + This downloads a database from a remote server for local editing. +Please enter the URL to clone from. You can generate this URL by +clicking the 'Clone Database in DB4S' button on the web page +of the database. + + + + + Invalid URL: The host name does not match the host name of the current identity. + + + + + Invalid URL: No branch name specified. + + + + + Invalid URL: No commit ID specified. + + + + + You have modified the local clone of the database. Fetching this commit overrides these local changes. +Are you sure you want to proceed? + + + + + The database has unsaved changes. Are you sure you want to push it before saving? + + + + + The database you are trying to delete is currently opened. Please close it before deleting. + + + + + This deletes the local version of this database with all the changes you have not committed yet. Are you sure you want to delete this database? + + + + + RemoteLocalFilesModel + + + Name + Nazwa + + + + Branch + Gałąź + + + + Last modified + Ostatnia zmiana + + + + Size + Rozmiar + + + + Commit + + + + + File + Plik + + + + RemoteModel + + + Name + Nazwa + + + + Commit + Wdroż + + + + Last modified + Ostatnia zmiana + + + + Size + Rozmiar + + + + Size: + + + + + Last Modified: + + + + + Licence: + + + + + Default Branch: + + + + + RemoteNetwork + + + Choose a location to save the file + + + + + Error opening remote file at %1. +%2 + WystÄ…piÅ‚ błąd podczas otwierania zdalnego pliku w %1. +%2 + + + + Error: Invalid client certificate specified. + Błąd: Podano nieprawidÅ‚owy certyfikat klienta. + + + + Please enter the passphrase for this client certificate in order to authenticate. + Podaj hasÅ‚o dla certyfikatu tego klienta, aby siÄ™ uwierzytelnić. + + + + Cancel + Zaniechaj + + + + Uploading remote database to +%1 + WysyÅ‚anie zdalnej bazy danych do +%1 + + + + Downloading remote database from +%1 + Pobieranie zdalnej bazy danych z +%1 + + + + + Error: The network is not accessible. + Błąd: Sieć jest niedostÄ™pna. + + + + Error: Cannot open the file for sending. + Błąd: Nie można otworzyć pliku do wysÅ‚ania. + + + + RemotePushDialog + + + Push database + Wypchnij bazÄ™ danych + + + + Database na&me to push to + &Nazwa bazy danych, do której wypchnąć + + + + Commit message + Opis wdrożenia + + + + Database licence + Licencja bazy danych + + + + Public + Publiczna + + + + Branch + Gałąź + + + + Force push + WymuÅ› wypchniÄ™cie + + + + Username + + + + + Database will be public. Everyone has read access to it. + Baza danych bÄ™dzie publiczna. Każdy bÄ™dzie mógÅ‚ uzyskać do niej dostÄ™p. + + + + Database will be private. Only you have access to it. + Baza danych bÄ™dzie prywatna. Tylko Ty bÄ™dziesz mieć do niej dostÄ™p. + + + + Use with care. This can cause remote commits to be deleted. + BÄ…dź ostrożny. Może to usunąć wdrożenia ze zdalnych miejsc. + + + + RunSql + + + Execution aborted by user + Wykonywanie przerwane przez użytkownika + + + + , %1 rows affected + , dotyczyÅ‚o %1 wiersza + + + + query executed successfully. Took %1ms%2 + pomyÅ›lnie wykonano zapytanie. Zajęło to %1ms%2 + + + + executing query + wykonywanie zapytania + + + + SelectItemsPopup + + + A&vailable + &DostÄ™pne + + + + Sele&cted + &Wybrane + + + + SqlExecutionArea + + + Form + Formularz + + + + Find previous match [Shift+F3] + Znajdź poprzednie trafienie [Shift+F3] + + + + Find previous match with wrapping + Znajdź poprzednie pasujÄ…ce z zawijaniem + + + + Shift+F3 + + + + + The found pattern must be a whole word + Wzorzec do znalezienia musi być caÅ‚ym sÅ‚owem + + + + Whole Words + CaÅ‚e sÅ‚owa + + + + Text pattern to find considering the checks in this frame + Wzorzec tekstu do znalezienia, biorÄ…c pod uwagÄ™ pola zaznaczone w tym oknie + + + + Find in editor + Znajdź w edytorze + + + + The found pattern must match in letter case + Wzorzec do znalezienia musi pasować wielkoÅ›ciÄ… liter + + + + Case Sensitive + Rozróżniaj wielkość znaków + + + + Find next match [Enter, F3] + Znajdź nastÄ™pne trafienie [Enter, F3] + + + + Find next match with wrapping + Znajdź nastÄ™pne pasujÄ…ce z zawijaniem + + + + F3 + + + + + Interpret search pattern as a regular expression + Rozpatrz wzorzec wyszukiwania jako wyrażenie regularne + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + <html><head/><body><p>Po zaznaczeniu, wzorzec do znalezienia jest rozważany jako wyrażenie regularne UNIX. Zajrzyj do <a href="https://en.wikibooks.org/wiki/Regular_Expressions">WyrażeÅ„ Regularnych w Wikibooks</a>.</p></body></html> + + + + Regular Expression + Wyrażenie regularne + + + + + Close Find Bar + Zamknij pasek wyszukiwania + + + + <html><head/><body><p>Results of the last executed statements.</p><p>You may want to collapse this panel and use the <span style=" font-style:italic;">SQL Log</span> dock with <span style=" font-style:italic;">User</span> selection instead.</p></body></html> + <html><head/><body><p>Wynik ostatnio wykonanych poleceÅ„.</p><p>Zalecamy zwiniÄ™cie tego okna i otworzenie doku <span style=" font-style:italic;">Dziennika SQL</span> z wyborem <span style=" font-style:italic;">Użytkownika</span>.</p></body></html> + + + + Results of the last executed statements + Wyniki ostatnio wykonanych poleceÅ„ + + + + This field shows the results and status codes of the last executed statements. + To pole pokazuje wyniki i kody wyjÅ›cia ostatnio wykonanych poleceÅ„ + + + + Couldn't read file: %1. + Nie można odczytać pliku: %1. + + + + + Couldn't save file: %1. + Nie można zapisać pliku: %1. + + + + Your changes will be lost when reloading it! + Utracisz swoje zmiany po ponownym wczytaniu! + + + + The file "%1" was modified by another program. Do you want to reload it?%2 + Inny program zmieniÅ‚ plik "%1". Czy chcesz wczytać go ponownie?%2 + + + + SqlTextEdit + + + Ctrl+/ + + + + + SqlUiLexer + + + (X) The abs(X) function returns the absolute value of the numeric argument X. + (X) Funkcja abs(X) zwraca wartość bezwzglÄ™dnÄ… argumentu liczbowego X. + + + + () The changes() function returns the number of database rows that were changed or inserted or deleted by the most recently completed INSERT, DELETE, or UPDATE statement. + () Funkcja changes() zwraca liczbÄ™ wierszy bazy danych, które zostaÅ‚y wstawiony lub usuniÄ™te przez ostatnio ukoÅ„czone polecenie INSERT, DELETE, or UPDATE. + + + + (X1,X2,...) The char(X1,X2,...,XN) function returns a string composed of characters having the unicode code point values of integers X1 through XN, respectively. + (X1,X2,...) Funkcja char(X1,X2,...,XN) zwraca ciÄ…g znaków skÅ‚adajÄ…cy siÄ™ ze znaków majÄ…cych wartoÅ›ci punków kodu unikod bÄ™dÄ…cych liczbami caÅ‚kowitymi w zakresie od X1 do XN, odpowiednio. + + + + (X,Y,...) The coalesce() function returns a copy of its first non-NULL argument, or NULL if all arguments are NULL + (X,Y,...) Funkcja coalesce() zwraca kopiÄ™ swojego pierwszego argumentu nie-NULL lub NULL, jeÅ›li wszystkie argumenty sÄ… NULL + + + + (X,Y) The glob(X,Y) function is equivalent to the expression "Y GLOB X". + (X,Y) Funkcja glob(X,Y) jest tożsama wyrażeniu "Y GLOB X". + + + + (X,Y) The ifnull() function returns a copy of its first non-NULL argument, or NULL if both arguments are NULL. + (X,Y) Funkcja ifnull() zwraca kopiÄ™ swojego pierwszego argumentu nie-NULL lub NULL, jeÅ›li oba argumenty sÄ… NULL. + + + + (X,Y) The instr(X,Y) function finds the first occurrence of string Y within string X and returns the number of prior characters plus 1, or 0 if Y is nowhere found within X. + (X,Y) Funkcja instr(X,Y) znajduje pierwsze wystÄ…pienie ciÄ…gu znaków Y wewnÄ…trz ciÄ…gu znaków X i zwraca liczbÄ™ znaków poprzedzajÄ…cych plus 1, lub 0, jeÅ›li nie można znaleźć Y w X. + + + + (X) The hex() function interprets its argument as a BLOB and returns a string which is the upper-case hexadecimal rendering of the content of that blob. + (X) Funkcja hex() interpretuje swoje argumenty jako KAWAÅKI i zwraca ciÄ…gi znaków, które sÄ… przedstawieniem szesnastkowym treÅ›ci kawaÅ‚ka, zapisanym wielkimi literami. + + + + () The last_insert_rowid() function returns the ROWID of the last row insert from the database connection which invoked the function. + () Funkcja last_insert_rowid() zwraca ROWID ostatniego wstawionego wiersza z połączenia bazy danych, która wywoÅ‚aÅ‚a tÄ™ funkcjÄ™. + + + + (X) For a string value X, the length(X) function returns the number of characters (not bytes) in X prior to the first NUL character. + (X) Dla wartoÅ›ci ciÄ…gu znaków X, funkcja length(X) zwraca liczbÄ™ znaków (nie bajtów) w X do chwili napotkania pierwszego znaku NUL. + + + + (X,Y) The like() function is used to implement the "Y LIKE X" expression. + (X,Y) Funkcja like() jest używana do implementacji wyrażenia "Y LIKE X". + + + + (X,Y,Z) The like() function is used to implement the "Y LIKE X ESCAPE Z" expression. + (X,Y,Z) Funkcja like() jest używana do implementacji wyrażenia "Y LIKE X ESCAPE Z". + + + + (X) The load_extension(X) function loads SQLite extensions out of the shared library file named X. +Use of this function must be authorized from Preferences. + (X) Funkcja load_extension(X) wczytuje rozszerzenia SQLite z pliku biblioteki współdzielonej o nazwie X. +Aby użyć tej funkcji, należy wyrazić zgodÄ™ w Ustawieniach. + + + + (X,Y) The load_extension(X) function loads SQLite extensions out of the shared library file named X using the entry point Y. +Use of this function must be authorized from Preferences. + (X,Y) Funkcja load_extension(X) wczytuje rozszerzenia SQLite z pliku biblioteki współdzielonej o nazwie X przy użyciu punktu wejÅ›ciowego Y. +Aby użyć tej funkcji, należy wyrazić zgodÄ™ w Ustawieniach. + + + + (X) The lower(X) function returns a copy of string X with all ASCII characters converted to lower case. + (X) Funkcja lower(X) zwraca kopiÄ™ ciÄ…gu znaków X po przeksztaÅ‚ceniu wszystkich znaków ASCII na pisane maÅ‚ymi literami. + + + + (X) ltrim(X) removes spaces from the left side of X. + (X) ltrim(X) usuwa odstÄ™py z lewej strony X. + + + + (X,Y) The ltrim(X,Y) function returns a string formed by removing any and all characters that appear in Y from the left side of X. + (X,Y) Funkcja ltrim(X,Y) zwraca ciÄ…g znaków utworzony po usuniÄ™ciu dowolnego i wszystkich znaków, które ukazujÄ… siÄ™ w Y z lewej strony X. + + + + (X,Y,...) The multi-argument max() function returns the argument with the maximum value, or return NULL if any argument is NULL. + (X,Y,...) Funkcja wieloargumentowa max() zwraca argument o wartoÅ›ci najwiÄ™kszej lub NULL, jeÅ›li dowolny argument jest NULL. + + + + (X,Y,...) The multi-argument min() function returns the argument with the minimum value. + (X,Y,...) Funkcja wieloargumentowa min() zwraca argument o wartoÅ›ci najmniejszej. + + + + (X,Y) The nullif(X,Y) function returns its first argument if the arguments are different and NULL if the arguments are the same. + (X,Y) Funkcja nullif(X,Y) zwraca swój pierwszy argument, jeÅ›li argumenty sÄ… różne i NULL, jeÅ›li argumenty sÄ… te same. + + + + (FORMAT,...) The printf(FORMAT,...) SQL function works like the sqlite3_mprintf() C-language function and the printf() function from the standard C library. + (FORMAT,...) Funkcja SQL printf(FORMAT,...) dziaÅ‚a jak funkcja sqlite3_mprintf() jÄ™zyka C oraz printf() ze standardowej biblioteki C. + + + + (X) The quote(X) function returns the text of an SQL literal which is the value of its argument suitable for inclusion into an SQL statement. + (X) Funkcja quote(X) zwraca dosÅ‚owny tekst SQL, który jest wartoÅ›ciÄ… jego argumentów +gotowÄ… do wstawienia w polecenie SQL. + + + + () The random() function returns a pseudo-random integer between -9223372036854775808 and +9223372036854775807. + () Funkcja random() zwraca pseudo-losowÄ… liczbÄ™ caÅ‚kowitÄ… z zakresu od -9223372036854775808 do +9223372036854775807. + + + + (N) The randomblob(N) function return an N-byte blob containing pseudo-random bytes. + (N) Funkcja randomblob(N) zwraca N-bajtowy kawaÅ‚ek zawierajÄ…cy pseudo-losowe bajty. + + + + (X,Y,Z) The replace(X,Y,Z) function returns a string formed by substituting string Z for every occurrence of string Y in string X. + (X,Y,Z) Funkcja replace(X,Y,Z) zwraca ciÄ…g znaków utworzony poprzez podmianÄ™ ciÄ…gu znaków Z dla każdego wystÄ…pienia ciÄ…gu znaków Y w ciÄ…gu znaków X. + + + + (X) The round(X) function returns a floating-point value X rounded to zero digits to the right of the decimal point. + (X) Funkcja round(X) zwraca wartość liczby zmiennoprzecinkowej X zaokrÄ…glonej do części caÅ‚kowitej. + + + + (X,Y) The round(X,Y) function returns a floating-point value X rounded to Y digits to the right of the decimal point. + (X,Y) Funkcja round(X,Y) zwraca wartość liczby zmiennoprzecinkowej X zaokrÄ…glonej do liczby znaków dziesiÄ™tnych okreÅ›lonych przez Y. + + + + (X) rtrim(X) removes spaces from the right side of X. + (X) rtrim(X) usuwa odstÄ™py z prawej strony X. + + + + (X,Y) The rtrim(X,Y) function returns a string formed by removing any and all characters that appear in Y from the right side of X. + (X,Y) Funkcja rtrim(X,Y) zwraca ciÄ…g znaków utworzony po usuniÄ™ciu dowolnego i wszystkich znaków, które ukazujÄ… siÄ™ w Y z prawej strony X. + + + + (X) The soundex(X) function returns a string that is the soundex encoding of the string X. + (X) Funkcja soundex(X) zwraca ciÄ…g znaków X zakodowany jako soundex. + + + + (X,Y) substr(X,Y) returns all characters through the end of the string X beginning with the Y-th. + (X,Y) substr(X,Y) zwraca wszystkie znaki do koÅ„ca ciÄ…gu znaków X zaczynajÄ…c od Y-tego. + + + + (X,Y,Z) The substr(X,Y,Z) function returns a substring of input string X that begins with the Y-th character and which is Z characters long. + (X,Y,Z) Funkcja substr(X,Y,Z) zwraca podciÄ…g znaków ciÄ…gu wejÅ›ciowego znaków X, który zaczyna siÄ™ na Y-tym znaku i który jest dÅ‚ugi na Z znaków. + + + + () The total_changes() function returns the number of row changes caused by INSERT, UPDATE or DELETE statements since the current database connection was opened. + () Funkcja total_changes() zwraca liczbÄ™ zmienionych wierszy przez polecenia INSERT, UPDATE lub DELETE od chwili nawiÄ…zania połączenia z bazÄ… danych. + + + + (X) trim(X) removes spaces from both ends of X. + (X) trim(X) usuwa odstÄ™py z obu stron X. + + + + (X,Y) The trim(X,Y) function returns a string formed by removing any and all characters that appear in Y from both ends of X. + (X,Y) Funkcja trim(X,Y) zwraca ciÄ…g znaków utworzony po usuniÄ™ciu dowolnego i wszystkich znaków, które ukazujÄ… siÄ™ w Y z obu stron X. + + + + (X) The typeof(X) function returns a string that indicates the datatype of the expression X. + (X) Funkcja typeof(X) zwraca ciÄ…g znaków, który wskazuje na rodzaj danych wyrażenia X. + + + + (X) The unicode(X) function returns the numeric unicode code point corresponding to the first character of the string X. + (X) Funkcja unicode(X) zwraca punkt numerycznego kodu unikodu odpowiadajÄ…cy pierwszemu znakowi ciÄ…gu X. + + + + (X) The upper(X) function returns a copy of input string X in which all lower-case ASCII characters are converted to their upper-case equivalent. + (X) Funkcja upper(X) zwraca kopiÄ™ ciÄ…gu znaków X po przeksztaÅ‚ceniu wszystkich znaków ASCII na pisane wielkimi literami. + + + + (N) The zeroblob(N) function returns a BLOB consisting of N bytes of 0x00. + (N) Funkcja zeroblob(N) zwraca KAWAÅEK skÅ‚adajÄ…cy siÄ™ z N bajtów 0x00. + + + + + + + (timestring,modifier,modifier,...) + (ciÄ…g_znaków_czasu,zmieniacz,zmieniacz,...) + + + + (format,timestring,modifier,modifier,...) + (format,ciÄ…g_znaków_czasu,zmieniacz,zmieniacz,...) + + + + (X) The avg() function returns the average value of all non-NULL X within a group. + (X) Funkcja avg() zwraca wartość Å›redniÄ… wszystkich nie-NULL X wewnÄ…trz grupy. + + + + (X) The count(X) function returns a count of the number of times that X is not NULL in a group. + (X) Funkcja count(X) zwraca liczbÄ™ tego ile razy X nie jest NULL w grupie. + + + + (X) The group_concat() function returns a string which is the concatenation of all non-NULL values of X. + (X) Funkcja group_concat() zwraca ciÄ…g znaków, który jest złączeniem wszystkich wartoÅ›ci nie-NULL X. + + + + (X,Y) The group_concat() function returns a string which is the concatenation of all non-NULL values of X. If parameter Y is present then it is used as the separator between instances of X. + (X,Y) Funkcja group_concat() zwraca ciÄ…g znaków bÄ™dÄ…cy złączeniem wszystkich wartoÅ›ci nie-NULL X. JeÅ›li obecne jest Y, to sÅ‚uży jako znak oddzielajÄ…cy wystÄ…pienia X. + + + + (X) The max() aggregate function returns the maximum value of all values in the group. + (X) Funkcja max() zwraca najwyższÄ… wartość z wartoÅ›ci w grupie. + + + + (X) The min() aggregate function returns the minimum non-NULL value of all values in the group. + (X) Funkcja min() zwraca najmniejszÄ… wartość nie-NULL z wartoÅ›ci w grupie. + + + + + (X) The sum() and total() aggregate functions return sum of all non-NULL values in the group. + (X) Funkcje sum() oraz total() zwracajÄ… sumÄ™ wszystkich wartoÅ›ci nie-NULL w grupie. + + + + () The number of the row within the current partition. Rows are numbered starting from 1 in the order defined by the ORDER BY clause in the window definition, or in arbitrary order otherwise. + () Numer wiersza wewnÄ…trz bieżącej partycji. Partycje sÄ… ponumerowane od 1 w kolejnoÅ›ci okreÅ›lonej przez wyrażenie ORDER BY w okreÅ›leniu okna lub w dowolnej kolejnoÅ›ci. + + + + () The row_number() of the first peer in each group - the rank of the current row with gaps. If there is no ORDER BY clause, then all rows are considered peers and this function always returns 1. + () Numer wiersza row_number() pierwszego czÅ‚onka w każdej grupie - ranga bieżącego wiersza w rozstÄ™pach. JeÅ›li brak polecenia ORDER BY, to wszystkie wiersze sÄ… rozważane jako czÅ‚onkowie i funkcja zawsze zwraca 1. + + + + () The number of the current row's peer group within its partition - the rank of the current row without gaps. Partitions are numbered starting from 1 in the order defined by the ORDER BY clause in the window definition. If there is no ORDER BY clause, then all rows are considered peers and this function always returns 1. + () Numer grupy bieżącego wiersza wewnÄ…trz jego partycji - ranga bieżącego wiersza bez przerw. Partycje sÄ… ponumerowane od 1 w kolejnoÅ›ci okreÅ›lonej przez wyrażenie ORDER BY w okreÅ›leniu okna. JeÅ›li brak wyrażenia ORDER BY, to wszystkie wiersze sÄ… rozważane jako leżące obok siebie, a funkcja ta zwraca 1. + + + + () Despite the name, this function always returns a value between 0.0 and 1.0 equal to (rank - 1)/(partition-rows - 1), where rank is the value returned by built-in window function rank() and partition-rows is the total number of rows in the partition. If the partition contains only one row, this function returns 0.0. + () Pomimo nazwy, funkcja ta zawsze zwraca wartość pomiÄ™dzy 0.0 oraz 1.0 równÄ… (rank - 1)/(wiersze-partycji - 1), gdzie rank jest wartoÅ›ciÄ… zwracanÄ… przez wbudowanÄ… funkcjÄ™ rank() okna, a wiersze-partycji jest caÅ‚kowitÄ… liczbÄ… wierszy w partycji. JeÅ›li partycja zawiera tylko jeden wiersz, to ta funkcja zwraca 0.0. + + + + () The cumulative distribution. Calculated as row-number/partition-rows, where row-number is the value returned by row_number() for the last peer in the group and partition-rows the number of rows in the partition. + () RozkÅ‚ad nagromadzony. Obliczany jako numer-wiersza/wiersze-partycji, gdzie +numer-wiersza jest wartoÅ›ciÄ… zwracanÄ… przez row_number() dla ostatniego +elementu w grupie, a wiersze-partycji to liczba wierszy w partycji. + + + + (N) Argument N is handled as an integer. This function divides the partition into N groups as evenly as possible and assigns an integer between 1 and N to each group, in the order defined by the ORDER BY clause, or in arbitrary order otherwise. If necessary, larger groups occur first. This function returns the integer value assigned to the group that the current row is a part of. + (N) Argument N jest rozważany jako liczba caÅ‚kowita. Ta funkcja dzieli partycjÄ™ na N grup tak równo jak to możliwe i przypisuje liczbÄ™ caÅ‚kowitÄ… z zakresu od 1 do N każdej grupie w kolejnoÅ›ci okreÅ›lonej przez polecenie ORDER BY lub dowolnej. JeÅ›li zajdzie taka potrzeba, to wiÄ™ksze grupy wystÄ…piÄ… jako pierwsze. Ta funkcja zwraca liczbÄ™ caÅ‚kowitÄ… przypisanÄ… do grupy, do której bieżący wiersz należy. + + + + (expr) Returns the result of evaluating expression expr against the previous row in the partition. Or, if there is no previous row (because the current row is the first), NULL. + (expr) Zwraca wynik obliczania wyrażenia expr na poprzednim wierszu w partycji. Lub, jeÅ›li nie ma poprzedniego wiersza (bo bieżący wiersz jest pierwszym), NULL. + + + + (expr,offset) If the offset argument is provided, then it must be a non-negative integer. In this case the value returned is the result of evaluating expr against the row offset rows before the current row within the partition. If offset is 0, then expr is evaluated against the current row. If there is no row offset rows before the current row, NULL is returned. + (expr,przesuniÄ™cie) JeÅ›li podano argument przesuniÄ™cia, to musi on być nieujemnÄ… liczbÄ… caÅ‚kowitÄ…. W tym przypadku wartoÅ›ciÄ… zwracanÄ… jest wynik obliczenia wyrażenia na wierszu przesuniÄ™tym o danÄ… liczbÄ™ wierszy wstecz wzglÄ™dem bieżącego wiersza. JeÅ›li nie bÄ™dzie takiego wiersza, to zwracane jest NULL. + + + + + (expr,offset,default) If default is also provided, then it is returned instead of NULL if the row identified by offset does not exist. + (expr,przesuniÄ™cie,domyÅ›lne) JeÅ›li podano także domyÅ›lne, to jest to wartoÅ›ci zwracana zamiast NULL, jeÅ›li wiersz okreÅ›lony przez przesuniÄ™cie nie istnieje. + + + + (expr) Returns the result of evaluating expression expr against the next row in the partition. Or, if there is no next row (because the current row is the last), NULL. + (expr) Zwraca wynik obliczania wyrażenia expr na nastÄ™pnym wierszu w partycji. Lub, jeÅ›li nie ma nastÄ™pnego wiersza (bo bieżący wiersz jest ostatnim), NULL. + + + + (expr,offset) If the offset argument is provided, then it must be a non-negative integer. In this case the value returned is the result of evaluating expr against the row offset rows after the current row within the partition. If offset is 0, then expr is evaluated against the current row. If there is no row offset rows after the current row, NULL is returned. + (expr,przesuniÄ™cie) JeÅ›li podano argument przesuniÄ™cia, to musi on być nieujemnÄ… liczbÄ… caÅ‚kowitÄ…. W tym przypadku wartoÅ›ciÄ… zwracanÄ… jest wynik obliczenia wyrażenia na wierszu przesuniÄ™tym o danÄ… liczbÄ™ wierszy wprzód wzglÄ™dem bieżącego wiersza. JeÅ›li nie bÄ™dzie takiego wiersza, to zwracane jest NULL. + + + + (expr) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the first row in the window frame for each row. + (expr) Ta wbudowana funkcja okna oblicza ramÄ™ okna dla każdego wiersza w ten sam sposób jak funkcja okna zÅ‚ożonego. Zwraca wartość expr obliczonÄ… na pierwszym wierszu ramy okna dla każdego wiersza. + + + + (expr) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the last row in the window frame for each row. + (expr) Ta wbudowana funkcja okna oblicza ramÄ™ okna dla każdego wiersza w ten sam sposób jak funkcja okna zÅ‚ożonego. Zwraca wartość expr obliczonÄ… na ostatnim wierszu ramy okna dla każdego wiersza. + + + + (expr,N) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the row N of the window frame. Rows are numbered within the window frame starting from 1 in the order defined by the ORDER BY clause if one is present, or in arbitrary order otherwise. If there is no Nth row in the partition, then NULL is returned. + (expr,N) Ta wbudowana funkcja okna oblicza ramÄ™ okna dla każdego wiersza w ten sam sposób jak funkcja okna zÅ‚ożonego. Zwraca wartość expr obliczonÄ… na N-tym wierszu ramy okna. Wiersze sÄ… numerowane wewnÄ…trz ramy okna poczynajÄ…c od 1 w kolejnoÅ›ci okreÅ›lonej przez polecenie ORDER BY jeÅ›li jest obecne lub w dowolnej kolejnoÅ›ci. JeÅ›li N-ty wiersz nie istnieje w partycji, to zwracane jest NULL. + + + + SqliteTableModel + + + reading rows + czytanie wierszy + + + + loading... + wczytywanie... + + + + References %1(%2) +Hold %3Shift and click to jump there + OdwoÅ‚ania %1(%2) +PrzyciÅ›nij %3Shift i kliknij, aby tu przejść + + + + Error changing data: +%1 + WystÄ…piÅ‚ błąd podczas zmiany danych: +%1 + + + + retrieving list of columns + uzyskiwanie listy kolumn + + + + Fetching data... + Uzyskiwanie danych… + + + + + Cancel + Zaniechaj + + + + TableBrowser + + + Browse Data + PrzeglÄ…daj dane + + + + &Table: + &Tabela: + + + + Select a table to browse data + Wybierz tabelÄ™, aby przeglÄ…dać dane + + + + Use this list to select a table to be displayed in the database view + Użyj tej listy, aby zaznaczyć tabelÄ™ wyÅ›wietlanÄ… w widoku bazy danych + + + + This is the database table view. You can do the following actions: + - Start writing for editing inline the value. + - Double-click any record to edit its contents in the cell editor window. + - Alt+Del for deleting the cell content to NULL. + - Ctrl+" for duplicating the current record. + - Ctrl+' for copying the value from the cell above. + - Standard selection and copy/paste operations. + Oto widok tabeli bazy danych. Możliwe sÄ… nastÄ™pujÄ…ce dziaÅ‚ania: + - Pisanie do przeedytowania wartoÅ›ci w-wierszu. + - Dwukrotne klikniÄ™cie na rekordzie, aby edytować jego zawartość w edytorze komórek. + - Alt+Del do usuniÄ™cia treÅ›ci komórki i ustawienia NULL. + - Ctrl+" do powielenia bieżącego rekordu. + - Ctrl+' do skopiowania wartoÅ›ci z komórki powyżej. + - Standardowe zaznaczanie/kopiowanie/wklejanie. + + + + Text pattern to find considering the checks in this frame + Wzorzec tekstu do znalezienia, biorÄ…c pod uwagÄ™ pola zaznaczone w tym oknie + + + + Find in table + Znajdź w tabeli + + + + Find previous match [Shift+F3] + Znajdź poprzednie pasujÄ…ce [Shift+F3] + + + + Find previous match with wrapping + Znajdź poprzednie pasujÄ…ce z mapowaniem + + + + Shift+F3 + + + + + Find next match [Enter, F3] + Znajdź nastÄ™pne pasujÄ…ce [Enter, F3] + + + + Find next match with wrapping + Znajdź nastÄ™pne pasujÄ…ce z nawracaniem + + + + F3 + + + + + The found pattern must match in letter case + Wzorzec do znalezienia musi pasować wielkoÅ›ciÄ… liter + + + + Case Sensitive + Rozróżniaj wielkość liter + + + + The found pattern must be a whole word + Wzorzec do znalezienia musi być caÅ‚ym sÅ‚owem + + + + Whole Cell + CaÅ‚a komórka + + + + Interpret search pattern as a regular expression + Rozpatrz wzorzec wyszukiwania jako wyrażenie regularne + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + <html><head/><body><p>Po zaznaczeniu, wzorzec do znalezienia jest rozważany jako wyrażenie regularne UNIX. Zajrzyj do <a href="https://en.wikibooks.org/wiki/Regular_Expressions">WyrażeÅ„ Regularnych w Wikibooks</a>.</p></body></html> + + + + Regular Expression + Wyrażenie regularne + + + + + Close Find Bar + Zamknij pasek wyszukiwania + + + + Text to replace with + Tekst do zastÄ…pienia + + + + Replace with + ZastÄ…p + + + + Replace next match + ZastÄ…p nastÄ™pne pasujÄ…ce wyrażenie + + + + + Replace + ZastÄ…p + + + + Replace all matches + ZastÄ…p wszystkie pasujÄ…ce wyrażenia + + + + Replace all + ZastÄ…p wszystkie + + + + <html><head/><body><p>Scroll to the beginning</p></body></html> + <html><head/><body><p>PrzewiÅ„ do poczÄ…tku</p></body></html> + + + + <html><head/><body><p>Clicking this button navigates to the beginning in the table view above.</p></body></html> + <html><head/><body><p>NaciÅ›niÄ™cie tego przycisku kieruje na poczÄ…tek powyższego widoku tabeli.</p></body></html> + + + + |< + |< + + + + Scroll one page upwards + PrzewiÅ„ jednÄ… stronÄ™ w górÄ™ + + + + <html><head/><body><p>Clicking this button navigates one page of records upwards in the table view above.</p></body></html> + <html><head/><body><p>NaciÅ›niÄ™cie tego przycisku przenosi o jednÄ… stronÄ™ wyżej w powyższym widoku tabeli.</p></body></html> + + + + < + < + + + + 0 - 0 of 0 + 0 - 0 z 0 + + + + Scroll one page downwards + PrzewiÅ„ jednÄ… stronÄ™ w dół + + + + <html><head/><body><p>Clicking this button navigates one page of records downwards in the table view above.</p></body></html> + <html><head/><body><p>NaciÅ›niÄ™cie tego przycisku przenosi o jednÄ… stronÄ™ niżej w powyższym widoku tabeli.</p></body></html> + + + + > + > + + + + Scroll to the end + PrzewiÅ„ na koniec + + + + <html><head/><body><p>Clicking this button navigates up to the end in the table view above.</p></body></html> + + + + + >| + >| + + + + <html><head/><body><p>Click here to jump to the specified record</p></body></html> + <html><head/><body><p>NaciÅ›nij tutaj, aby przejść do danego rekordu</p></body></html> + + + + <html><head/><body><p>This button is used to navigate to the record number specified in the Go to area.</p></body></html> + <html><head/><body><p>Ten przycisk sÅ‚uży to przejÅ›cia do rekordu o numerze podanym w obszarze PrzejÅ›cia.</p></body></html> + + + + Go to: + Przejdź do: + + + + Enter record number to browse + Wprowadź numer rekordu do przejrzenia + + + + Type a record number in this area and click the Go to: button to display the record in the database view + Wpisz numer rekordu w tym obszarze i naciÅ›nij na Przejdź Do, aby wyÅ›wietlić rekord w widoku bazy danych + + + + 1 + 1 + + + + Show rowid column + Pokaż kolumnÄ™ ID wiersza + + + + Toggle the visibility of the rowid column + Pokaż/Ukryj kolumnÄ™ ID wiersza + + + + Unlock view editing + Odblokuj zmianÄ™ widoku + + + + This unlocks the current view for editing. However, you will need appropriate triggers for editing. + To umożliwia wprowadzanie zmian w bieżącym widoku. Jednakże potrzebne bÄ™dÄ… odpowiednie wyzwalacze do zmiany. + + + + Edit display format + ZmieÅ„ format wyÅ›wietlania + + + + Edit the display format of the data in this column + ZmieÅ„ sposób wyÅ›wietlania danych w tej kolumnie + + + + + New Record + Nowy rekord + + + + + Insert a new record in the current table + Wstaw nowy rekord bieżącej tabeli + + + + <html><head/><body><p>This button creates a new record in the database. Hold the mouse button to open a pop-up menu of different options:</p><ul><li><span style=" font-weight:600;">New Record</span>: insert a new record with default values in the database.</li><li><span style=" font-weight:600;">Insert Values...</span>: open a dialog for entering values before they are inserted in the database. This allows to enter values acomplishing the different constraints. This dialog is also open if the <span style=" font-weight:600;">New Record</span> option fails due to these constraints.</li></ul></body></html> + <html><head/><body><p>Ten przycisk tworzy nowy rekord w bazie danych. PrzyciÅ›nij przycisk myszy, aby otworzyć menu podrÄ™czne z różnymi ustawieniami:</p><ul><li><span style=" font-weight:600;">Nowy rekord</span>: wstawia nowy rekord o domyÅ›lnych wartoÅ›ciach do bazy danych.</li><li><span style=" font-weight:600;">Wstaw wartoÅ›ci...</span>: otwiera okno dialogowe do wpisywania wartoÅ›ci przed ich wstawieniem do bazy danych. Umożliwia to wpisanie wartoÅ›ci przy zachowaniu różnych ograniczeÅ„. To okno dialogowe jest także otwarte, gdy nie powiedzie siÄ™ wykonanie polecenia <span style=" font-weight:600;">Nowy rekord</span> ze wzglÄ™du na te ograniczenia .</li></ul></body></html> + + + + + Delete Record + UsuÅ„ rekord + + + + Delete the current record + UsuÅ„ bieżący rekord + + + + + This button deletes the record or records currently selected in the table + Ten przycisk usuwa obecnie zaznaczony rekord lub rekordy z tabeli + + + + + Insert new record using default values in browsed table + Wstaw nowy rekord przy użyciu domyÅ›lnych wartoÅ›ci bieżącej tabeli + + + + Insert Values... + Wstaw wartoÅ›ci... + + + + + Open a dialog for inserting values in a new record + Otwiera okno dialogowe do wstawiania wartoÅ›ci do nowego rekordu + + + + Export to &CSV + Eksportuj do &CSV + + + + + Export the filtered data to CSV + Eksportuj przefiltrowane dane do CSV + + + + This button exports the data of the browsed table as currently displayed (after filters, display formats and order column) as a CSV file. + Ten przycisk wyeksportuje dane bieżącej tabeli tak jak sÄ… obecnie wyÅ›wietlane (po filtrach, z formatami wyÅ›wietlania i kolejnoÅ›ciÄ… kolumn) jako plik CSV. + + + + Save as &view + Zapisz jako &widok + + + + + Save the current filter, sort column and display formats as a view + Zapisuje bieżący filtr, kolumnÄ™ do szeregowania oraz formaty wyÅ›wietlania jako widok + + + + This button saves the current setting of the browsed table (filters, display formats and order column) as an SQL view that you can later browse or use in SQL statements. + Ten przycisk zapisuje bieżące ustawienia oglÄ…danej tabeli (filtry, formaty wyÅ›wietlania i kolejność kolumn) jako widok SQL, który można później przeglÄ…dać lub wstawić do polecenia SQL. + + + + Save Table As... + Zapisz tabelÄ™ jako... + + + + + Save the table as currently displayed + Zapisz tabelÄ™ tak, jak jest obecnie wyÅ›wietlana + + + + <html><head/><body><p>This popup menu provides the following options applying to the currently browsed and filtered table:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Export to CSV: this option exports the data of the browsed table as currently displayed (after filters, display formats and order column) to a CSV file.</li><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Save as view: this option saves the current setting of the browsed table (filters, display formats and order column) as an SQL view that you can later browse or use in SQL statements.</li></ul></body></html> + <html><head/><body><p>To menu podrÄ™czne zawiera nastÄ™pujÄ…ce ustawienie stosujÄ…ce siÄ™ do obecnie oglÄ…danej i filtrowanej tabeli:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Eksportuj do CSV: eksportuje dane oglÄ…danej tabeli tak jak jest obecnie wyÅ›wietlana (po filtrach, z formatami wyÅ›wietlania i kolejnoÅ›ciÄ… kolumn) do pliku CSV.</li><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Zapisz jako widok: zapisuje bieżące ustawienia oglÄ…danej tabeli (filtry, formaty wyÅ›wietlania i kolejność kolumn) jako widok SQL, który można później przeglÄ…dać lub wstawić do polecenia SQL.</li></ul></body></html> + + + + Hide column(s) + Ukryj kolumnÄ™/y + + + + Hide selected column(s) + Ukryj zaznaczonÄ…/e kolumnÄ™/y + + + + Show all columns + Pokaż wszystkie kolumny + + + + Show all columns that were hidden + Pokaż wszystkie ukryte kolumny + + + + + Set encoding + Ustaw kodowanie + + + + Change the encoding of the text in the table cells + ZmieÅ„ kodowanie tekstu w komórkach tabeli + + + + Set encoding for all tables + Ustaw kodowanie dla wszystkich tabel + + + + Change the default encoding assumed for all tables in the database + ZmieÅ„ domyÅ›lne kodowanie przyjÄ™te dla wszystkich table w bazie danych + + + + Clear Filters + Wyczyść filtry + + + + Clear all filters + Wyczyść wszystkie filtry + + + + + This button clears all the filters set in the header input fields for the currently browsed table. + Ten przycisk wyczyÅ›ci wszystkie filtry ustawione na polach wejÅ›ciowych nagłówka dla bieżącej tabeli. + + + + Clear Sorting + Wyczyść szeregowanie + + + + Reset the order of rows to the default + Przywróć porzÄ…dek wierszy do domyÅ›lnego + + + + + This button clears the sorting columns specified for the currently browsed table and returns to the default order. + Ten przycisk czyÅ›ci kolumny szeregowania dla danej tabeli i powraca do domyÅ›lnego porzÄ…dku. + + + + Print + Drukuj + + + + Print currently browsed table data + WyÅ›wietl dane bieżącej tabeli + + + + Print currently browsed table data. Print selection if more than one cell is selected. + Drukuj dane bieżącej tabeli. Drukuj zaznaczenie, jeÅ›li zaznaczono wiÄ™cej niż jednÄ… komórkÄ™. + + + + Ctrl+P + + + + + Refresh + OdÅ›wież + + + + Refresh the data in the selected table + OdÅ›wież dane w zaznaczonej tabeli + + + + This button refreshes the data in the currently selected table. + Ten przycisk odÅ›wieża dane w obecnie zaznaczonej tabeli. + + + + F5 + + + + + Find in cells + Znajdź w komórkach + + + + Open the find tool bar which allows you to search for values in the table view below. + Otwórz pasek wyszukiwania, który umożliwi wyszukiwanie wartoÅ›ci w poniższym widoku tabeli. + + + + + Bold + Pogrubienie + + + + Ctrl+B + + + + + + Italic + Kursywa + + + + + Underline + PodkreÅ›lenie + + + + Ctrl+U + + + + + + Align Right + Wyrównaj do prawej + + + + + Align Left + Wyrównaj do lewej + + + + + Center Horizontally + WyÅ›rodkuj w poziomie + + + + + Justify + Justowanie + + + + + Edit Conditional Formats... + Edytuj formatowanie warunkowe... + + + + Edit conditional formats for the current column + ZmieÅ„ formatowania warunkowe dla bieżącej kolumny + + + + Clear Format + Wyczyść format + + + + Clear All Formats + Wyczyść wszystkie formatowania + + + + + Clear all cell formatting from selected cells and all conditional formats from selected columns + Wyczyść wszystkie formatowania warunkowe dla zaznaczonej komórki i wszystkie formatowania warunkowe dla zaznaczonych kolumn + + + + + Font Color + Barwa czcionki + + + + + Background Color + Barwa tÅ‚a + + + + Toggle Format Toolbar + Pokaż pasek formatowania + + + + Show/hide format toolbar + Pokaż/ukryj pasek formatu + + + + + This button shows or hides the formatting toolbar of the Data Browser + Ten przycisk pokazuje lub ukrywa pasek formatowania dla przeglÄ…darki danych + + + + Select column + Zaznacz kolumnÄ™ + + + + Ctrl+Space + Ctrl+Spacja + + + + Replace text in cells + ZastÄ…p tekst w komórkach + + + + Filter in any column + + + + + Ctrl+R + + + + + %n row(s) + + %n wiersz + %n wiersze + %n wierszy + + + + + , %n column(s) + + , %n kolumna + , %n kolumny + , %n kolumn + + + + + . Sum: %1; Average: %2; Min: %3; Max: %4 + . Suma: %1; Åšrednia: %2; Min: %3; Maks: %4 + + + + Conditional formats for "%1" + Formatowania warunkowe dla "%1" + + + + determining row count... + okreÅ›lanie liczby wierszy… + + + + %1 - %2 of >= %3 + %1 - %2 z >= %3 + + + + %1 - %2 of %3 + %1 - %2 z %3 + + + + Please enter a pseudo-primary key in order to enable editing on this view. This should be the name of a unique column in the view. + Podaj pseudo-główny klucz, aby rozpocząć edytowanie w tym widoku. Powinna to być nazwa niepowtarzalnej kolumny w widoku. + + + + Delete Records + UsuÅ„ rekordy + + + + Duplicate records + Powielone rekordy + + + + Duplicate record + Powiel rekord + + + + Ctrl+" + + + + + Adjust rows to contents + Dostosuj wiersze do treÅ›ci + + + + Error deleting record: +%1 + Błąd usuwania rekordu: +%1 + + + + Please select a record first + Najpierw wybierz rekord + + + + There is no filter set for this table. View will not be created. + Nie ustawiono filtru dla tej tabeli. Widok nie zostanie utworzony. + + + + Please choose a new encoding for all tables. + Wybierz nowe kodowanie dla wszystkich tabel. + + + + Please choose a new encoding for this table. + Wybierz kodowanie dla tej tabeli. + + + + %1 +Leave the field empty for using the database encoding. + %1 +Pozostaw pole pustym, aby użyć kodowania bazy danych. + + + + This encoding is either not valid or not supported. + To kodowanie jest nieprawidÅ‚owe lub nieobsÅ‚ugiwane + + + + %1 replacement(s) made. + Wykonano %1 zastÄ…pieÅ„ + + + + VacuumDialog + + + Compact Database + ÅšciÅ›nij bazÄ™ danych... + + + + Warning: Compacting the database will commit all of your changes. + Uwaga: Åšciskanie bazy danych spowoduje wdrożenie wszystkich twoich zmian. + + + + Please select the databases to co&mpact: + Wybierz bazÄ™ danych do Å›ciÅ›&niÄ™cia: + + + diff --git a/ConfigFiles/translations/sqlb_pt_BR.qm b/ConfigFiles/translations/sqlb_pt_BR.qm new file mode 100644 index 0000000000000000000000000000000000000000..c869afe8d8774e04322d185d8e7aa4c814e603a3 GIT binary patch literal 236318 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 literal 0 HcmV?d00001 diff --git a/ConfigFiles/translations/sqlb_pt_BR.ts b/ConfigFiles/translations/sqlb_pt_BR.ts new file mode 100644 index 0000000..cc8776f --- /dev/null +++ b/ConfigFiles/translations/sqlb_pt_BR.ts @@ -0,0 +1,7023 @@ + + + + + AboutDialog + + + About DB Browser for SQLite + Sobre DB Browser para SQLite + + + + Version + Versão + + + + <html><head/><body><p>DB Browser for SQLite is an open source, freeware visual tool used to create, design and edit SQLite database files.</p><p>It is bi-licensed under the Mozilla Public License Version 2, as well as the GNU General Public License Version 3 or later. You can modify or redistribute it under the conditions of these licenses.</p><p>See <a href="http://www.gnu.org/licenses/gpl.html">http://www.gnu.org/licenses/gpl.html</a> and <a href="https://www.mozilla.org/MPL/2.0/index.txt">https://www.mozilla.org/MPL/2.0/index.txt</a> for details.</p><p>For more information on this program please visit our website at: <a href="http://sqlitebrowser.org">http://sqlitebrowser.org</a></p><p><span style=" font-size:small;">This software uses the GPL/LGPL Qt Toolkit from </span><a href="http://qt-project.org/"><span style=" font-size:small;">http://qt-project.org/</span></a><span style=" font-size:small;"><br/>See </span><a href="http://qt-project.org/doc/qt-5/licensing.html"><span style=" font-size:small;">http://qt-project.org/doc/qt-5/licensing.html</span></a><span style=" font-size:small;"> for licensing terms and information.</span></p><p><span style=" font-size:small;">It also uses the Silk icon set by Mark James licensed under a Creative Commons Attribution 2.5 and 3.0 license.<br/>See </span><a href="http://www.famfamfam.com/lab/icons/silk/"><span style=" font-size:small;">http://www.famfamfam.com/lab/icons/silk/</span></a><span style=" font-size:small;"> for details.</span></p></body></html> + <html><head/><body><p>DB Browser para SQLite é uma ferramenta de código livre gratuita usada para criar, projetar e editar bancos de dados SQLite.</p><p>Ela é bi-licensiada sob a Mozilla Public License Version 2 e sob a GNU General Public License Version 3 ou posterior. Você pode modificar ou redistribuir ela sob as condições de qualquer uma dessas licenças.</p><p>Veja <a href="http://www.gnu.org/licenses/gpl.html">http://www.gnu.org/licenses/gpl.html</a> e <a href="https://www.mozilla.org/MPL/2.0/index.txt">https://www.mozilla.org/MPL/2.0/index.txt</a> para mais detalhes.</p><p>Para mais informações sobre esse programa visite nosso site em: <a href="http://sqlitebrowser.org">http://sqlitebrowser.org</a></p><p><span style=" font-size:small;">Esse software usa o GPL/LGPL Qt Toolkit de </span><a href="http://qt-project.org/"><span style=" font-size:small;">http://qt-project.org/</span></a><span style=" font-size:small;"><br/>Veja </span><a href="http://qt-project.org/doc/qt-5/licensing.html"><span style=" font-size:small;">http://qt-project.org/doc/qt-5/licensing.html</span></a><span style=" font-size:small;"> para termos de licença e informação.</span></p><p><span style=" font-size:small;">Ele também usa o conjunto de ícones Silk por Mark James licenciado sob a Creative Commons Attribution 2.5 e 3.0.<br/>Veja </span><a href="http://www.famfamfam.com/lab/icons/silk/"><span style=" font-size:small;">http://www.famfamfam.com/lab/icons/silk/</span></a><span style=" font-size:small;"> para detalhes.</span></p></body></html> + + + + AddRecordDialog + + + Add New Record + Adicionar novo registro + + + + Enter values for the new record considering constraints. Fields in bold are mandatory. + Entre valores para o novo registro considerando as restriões. Campos em negrito são obrigatórios. + + + + In the Value column you can specify the value for the field identified in the Name column. The Type column indicates the type of the field. Default values are displayed in the same style as NULL values. + Na coluna Valor você pode especificar o valor para o campo identificado na coluna Nome. A coluna Tipo indica qual o tipo do campo. Valores padrão são exibidos no mesmo estilo que valores nulos. + + + + Name + Nome + + + + Type + Tipo + + + + Value + Valor + + + + Values to insert. Pre-filled default values are inserted automatically unless they are changed. + Valores para inserir. Valores padrão pré-preenchidos são inseridos automaticamente a não ser que sejam alterados. + + + + When you edit the values in the upper frame, the SQL query for inserting this new record is shown here. You can edit manually the query before saving. + Quando você edita os valores no frame acima, a consulta SQL para inserir esse novo registro é exibida aqui. Você pode editar manualmente a consulta antes de salvar. + + + + <html><head/><body><p><span style=" font-weight:600;">Save</span> will submit the shown SQL statement to the database for inserting the new record.</p><p><span style=" font-weight:600;">Restore Defaults</span> will restore the initial values in the <span style=" font-weight:600;">Value</span> column.</p><p><span style=" font-weight:600;">Cancel</span> will close this dialog without executing the query.</p></body></html> + <html><head/><body><p><span style=" font-weight:600;">Salvar</span> irá enviar o comando SQL exibido para o banco de dados para a inserção do novo registro.</p><p><span style=" font-weight:600;">Restaurar Padrões</span> irá restaurar os valores iniciais na coluna <span style=" font-weight:600;">Valor</span>.</p><p><span style=" font-weight:600;">Cancelar</span> irá fechar esse diálogo sem executar a consulta.</p></body></html> + + + + Auto-increment + + Auto-incremento + + + + + Unique constraint + + Restrição de unicidade + + + + + Check constraint: %1 + + Restrição de condição %1 + + + + + Foreign key: %1 + + Chave estrangeira: %1 + + + + + Default value: %1 + + Valor padrão: %1 + + + + + Error adding record. Message from database engine: + +%1 + Erro adicionando registro. Mensagem do banco de dados: + +%1 + + + + Are you sure you want to restore all the entered values to their defaults? + Você tem certeza que deseja restaurar todos os valores inseridos para os seus valores padrão? + + + + Application + + + Possible command line arguments: + Possíveis argumentos da linha de comando: + + + + Usage: %1 [options] [<database>|<project>] + + Uso: %1 [opções] [<banco de dados>|<projeto>] + + + + + -h, --help Show command line options + -h, --help Exibir opções de linha de comando + + + + -q, --quit Exit application after running scripts + -q, --quit Sair do programa após executar os scripts + + + + -s, --sql <file> Execute this SQL file after opening the DB + -s, --sql <arquivo> Executar esse arquivo de SQL após abrir o BD + + + + -t, --table <table> Browse this table after opening the DB + -t, --table <tabela> Navegar essa tabela após abrir o banco de dados + + + + -R, --read-only Open database in read-only mode + -R, --read-only Abrir o banco de dados em modo somente leitura + + + + -o, --option <group>/<setting>=<value> + -o, -option <grupo>/<configuração>=valor + + + + Run application with this setting temporarily set to value + Roda a aplicação com esse valor para essa configuração temporariamente + + + + -O, --save-option <group>/<setting>=<value> + -O, --save-option <grupo>/<configuração>=valor + + + + Run application saving this value for this setting + Roda a aplicação salvando esse valor para essa configuração + + + + -v, --version Display the current version + -v, --version Exibir a versão atual + + + + <database> Open this SQLite database + <banco de dados> Abre esse banco de dados SQLite + + + + <project> Open this project file (*.sqbpro) + <projeto> Abre esse projeto (*.sqbpro) + + + + The -s/--sql option requires an argument + A opção -s/--sql requer um argumento + + + + The file %1 does not exist + O arquivo %1 não existe + + + + The -o/--option and -O/--save-option options require an argument in the form group/setting=value + As opções -o/--option e -O/--save-option requerem um argumento no formato grupo/configuração=valor + + + + Invalid option/non-existant file: %1 + Opção inválida/arquivo inexistente: %1 + + + + SQLite Version + Versão do SQLite + + + + SQLCipher Version %1 (based on SQLite %2) + SQLCipher versão %1 (baseado em SQLite %2) + + + + DB Browser for SQLite Version %1. + DB Browser para SQLite versão %1. + + + + Built for %1, running on %2 + Compilado para %1, rodando em %2 + + + + Qt Version %1 + Versão do Qt: %1 + + + + The -t/--table option requires an argument + A opção -t/--table requer um argumento + + + + CipherDialog + + + SQLCipher encryption + Encriptação SQLCipher + + + + &Password + &Senha + + + + &Reenter password + &Entre a senha novamente + + + + Encr&yption settings + &Configurações de encriptação + + + + SQLCipher &3 defaults + Padrões do SQLCipher &3 + + + + SQLCipher &4 defaults + Padrões do SQLCipher &4 + + + + Custo&m + Custo&mizado + + + + &KDF iterations + Iterações &KDF + + + + HMAC algorithm + Algoritmo de HMAC + + + + KDF algorithm + Algoritmo de KDF + + + + Plaintext Header Size + Tamanho do cabeçalho de texto + + + + Please enter the key used to encrypt the database. +If any of the other settings were altered for this database file you need to provide this information as well. + Por favor, entre a chave usada para encriptar o banco de dados. +Se quaisquer das outras configurações foram alteradas você terá de prover essas informações também. + + + + Please set a key to encrypt the database. +Note that if you change any of the other, optional, settings you'll need to re-enter them as well every time you open the database file. +Leave the password fields empty to disable the encryption. +The encryption process might take some time and you should have a backup copy of your database! Unsaved changes are applied before modifying the encryption. + Por favor, selecione uma chave para encriptar o banco de dados. +Note que se você alterar quaisquer configurações opcionais você terá de entrá-las todas as vezes que você abrir o arquivo do banco de dados. +Deixe os campos de senha em branco para desativar a encriptação. +O processo de encriptação pode demorar alguns minutos e você deve ter um backup do seu banco de dados! Alterações não salvas são aplicadas antes de se modificar a encriptação. + + + + Page si&ze + &Tamanho da página + + + + Passphrase + Palavra chave + + + + Raw key + Chave desencriptada + + + + ColumnDisplayFormatDialog + + + Choose display format + Escolha um formato de exibição + + + + Display format + Formato de exibição + + + + Choose a display format for the column '%1' which is applied to each value prior to showing it. + Escolha um formato de exibição para a coluna '%1' que será aplicado a cada valor antes de exibí-lo. + + + + Default + Padrão + + + + Decimal number + Número decimal + + + + Exponent notation + Notação exponencial + + + + Hex blob + BLOB hexadecimal + + + + Hex number + Número hexadecimal + + + + .NET DateTime.Ticks to date + .NET DateTime.Ticks até a data + + + + Julian day to date + Dia juliano para data + + + + Lower case + Caixa baixa + + + + Custom display format must contain a function call applied to %1 + Formato de exibição customizado precisa conter uma função aplicada a %1 + + + + Error in custom display format. Message from database engine: + +%1 + Erro em formato de exibição customizado. Mensagem da engine da base de dados: + +%1 + + + + Custom display format must return only one column but it returned %1. + Formato de exibição customizado precisa retornar apenas uma coluna mas retornou %1. + + + + Octal number + Octal + + + + Round number + Número arredondado + + + + Unix epoch to date + Era unix para data + + + + Upper case + Caixa alta + + + + Windows DATE to date + DATE do Windows para data + + + + Custom + Personalizado + + + + Apple NSDate to date + NSDate da Apple para date + + + + Java epoch (milliseconds) to date + Época Java (ms) para data + + + + Unix epoch to local time + Época Unix para tempo local + + + + Date as dd/mm/yyyy + Data como dd/mm/yyyy + + + + CondFormatManager + + + Conditional Format Manager + Gerenciador de formato condicional + + + + This dialog allows creating and editing conditional formats. Each cell style will be selected by the first accomplished condition for that cell data. Conditional formats can be moved up and down, where those at higher rows take precedence over those at lower. Syntax for conditions is the same as for filters and an empty condition applies to all values. + Esse diálogo permite a criação e edição de formatos condicionais. O estilo de cada célula será escolhido pela primeira condição satisfeita pelo valor daquela célula. Formatos condicionais podem ser movidos para cima e para baixo, tendo precedência os formatos localizados mais acima. A sintaxe para as condições é a mesma utilizada para os filtros e uma condição vazia é sempre satisfeita. + + + + Add new conditional format + Adicionar novo formato condicional + + + + &Add + &Adicionar + + + + Remove selected conditional format + Remover formato condicional selecionado + + + + &Remove + &Remover + + + + Move selected conditional format up + Mover formato condicional selecionado para cima + + + + Move &up + Mover para &cima + + + + Move selected conditional format down + Mover formato condicional selecionado para baixo + + + + Move &down + Mover para &baixo + + + + Foreground + Plano de frente + + + + Text color + Cor do texto + + + + Background + Fundo + + + + Background color + Cor do plano de fundo + + + + Font + Fonte + + + + Size + Tamanho + + + + Bold + Negrito + + + + Italic + Itálico + + + + Underline + Sublinhado + + + + Alignment + Alinhamento + + + + Condition + Condição + + + + + Click to select color + Clique para selecionar a cor + + + + Are you sure you want to clear all the conditional formats of this field? + Você tem certeza de que deseja limpar todos os formatos condicionais deste campo? + + + + DBBrowserDB + + + Please specify the database name under which you want to access the attached database + Por favor, especifique o nome do banco de dados sob o qual você quer acessar o banco de dados anexado + + + + Do you want to save the changes made to the database file %1? + Você quer salvar as alterações feitas ao arquivo de banco de dados %1? + + + + Exporting database to SQL file... + Exportando banco de dados para arquivo SQL... + + + + + Cancel + Cancelar + + + + Executing SQL... + Executando SQL... + + + + Action cancelled. + Ação cancelada. + + + + Restoring some of the objects associated with this table failed. This is most likely because some column names changed. Here's the SQL statement which you might want to fix and execute manually: + + + A restauração de alguns dos objetos associados com essa tabela falhou. Provavelmente porque os nomes de algumas colunas mudaram. Aqui está a consulta que você pode querer corrigir e executar manualmente: + + + + + + Error setting pragma %1 to %2: %3 + Erro definindo pragma %1 para %2: %3 + + + + File not found. + Arquivo não encontrado. + + + + Invalid file format + Formato de arquivo inválido + + + + + Error in statement #%1: %2. +Aborting execution%3. + Erro no comando #%1: %2. +Aborting execution%3. + + + + + and rolling back + e revertendo + + + + Cannot set data on this object + Não se pode definir dados nesse objeto + + + + could not get column information + não pôde obter informação sobre a coluna + + + + This database has already been attached. Its schema name is '%1'. + Esse banco de dados já foi anexado. O seu nome de esquema e '%1'. + + + + Do you really want to close this temporary database? All data will be lost. + Você realmente quer fechar esse banco de dados temporário? Todos os dados serão perdidos. + + + + Database didn't close correctly, probably still busy + A base de dados não fechou corretamente, provavelmente ainda ocupada + + + + The database is currently busy: + O banco de dados está ocupado: + + + + Do you want to abort that other operation? + Você quer abortar a outra operação? + + + + + No database file opened + Não há um arquivo de banco de dados aberto + + + + didn't receive any output from %1 + não recebeu nenhuma saída de %1 + + + + could not execute command: %1 + não pode executar comando: %1 + + + + Cannot delete this object + Não pode deletar esse objeto + + + + + A table with the name '%1' already exists in schema '%2'. + Uma tabela com o nome '%1' já existe no esquema '%2'. + + + + No table with name '%1' exists in schema '%2'. + Nem uma tabela chamada '%1' existe no esquema '%2'. + + + + + Cannot find column %1. + Não pode encontrar coluna %1. + + + + Creating savepoint failed. DB says: %1 + Criação de savepoint falhou. BD diz: %1 + + + + Renaming the column failed. DB says: +%1 + Renomeação de coluna falhou. BD diz: +%1 + + + + + Releasing savepoint failed. DB says: %1 + Liberação de savepoint falhou. BD diz: %1 + + + + Creating new table failed. DB says: %1 + Criação de tabela falhou. BD diz: %1 + + + + Copying data to new table failed. DB says: +%1 + Cópia de dados para uma nova tabela falhou. BD diz: +%1 + + + + Deleting old table failed. DB says: %1 + Deletando tabela antiga falhou. BD diz: %1 + + + + Error renaming table '%1' to '%2'. +Message from database engine: +%3 + Erro renomeando tabela de '%1' para '%2'. +Mensagem da engine do banco de dados: +%3 + + + + could not get list of db objects: %1 + não conseguiu listar objetos da BD: %1 + + + + could not get list of databases: %1 + não pôde obter a lista de bancos de dados: %1 + + + + Error loading extension: %1 + Erro carregado extensão: %1 + + + + DbStructureModel + + + Name + Nome + + + + Object + Objeto + + + + Type + Tipo + + + + Schema + Esquema + + + + Tables (%1) + Tabelas (%1) + + + + Indices (%1) + Ãndices (%1) + + + + Views (%1) + Vistas (%1) + + + + Triggers (%1) + Gatilhos (%1) + + + + All + Todos + + + + Database + Banco de dados + + + + Browsables + Navegáveis + + + + Temporary + Temporário + + + + EditDialog + + + Edit database cell + Editar célula + + + + Text + Texto + + + + Binary + Binário + + + + Erases the contents of the cell + Apaga os conteúdos da célula + + + + This area displays information about the data present in this database cell + Essa área exibe informação sobre os dados presentes nessa célula + + + + Type of data currently in cell + Tipo de dados atualmente na célula + + + + Size of data currently in table + Tamanho dos dados atualmente na célula + + + + Choose a filename to export data + Escolha um arquivo para exportar dados + + + + + Type of data currently in cell: Text / Numeric + Tipo de dados atualmente na célula: Texto / Numérico + + + + + + %n character(s) + + %n char + %n chars + + + + + Type of data currently in cell: Binary + Tipo de dados atualmente na célula: Binário + + + + + %n byte(s) + + %n byte + %n bytes + + + + + Mode: + Modo: + + + + + Image + Imagem + + + + Set as &NULL + Definir como &NULL + + + + Apply + Aplicar + + + + Type of data currently in cell: %1 Image + Tipo de dado atualmente na célula: %1 Imagem + + + + %1x%2 pixel(s) + %1x%2 pixel(s) + + + + Type of data currently in cell: NULL + Tipo de dado atualmente na célula: NULL + + + + This is the list of supported modes for the cell editor. Choose a mode for viewing or editing the data of the current cell. + Essa é a lista de modos suportados pelo editor de célula. Escolha um modo para visualizar ou editar os dados da célula atual. + + + + RTL Text + Texto para a esquerda + + + + JSON + JSON + + + + XML + XML + + + + + Automatically adjust the editor mode to the loaded data type + Automaticamente ajustar o modo do editor para o tipo de dado carregado + + + + This checkable button enables or disables the automatic switching of the editor mode. When a new cell is selected or new data is imported and the automatic switching is enabled, the mode adjusts to the detected data type. You can then change the editor mode manually. If you want to keep this manually switched mode while moving through the cells, switch the button off. + Esse botão assinalável ativa ou desativa a troca automática do modo do editor. Quando uma nova célula é selecionado ou novos dados são importados e a troca automática está habilitada, o modo ajusta para o tipo detectado. Você pode então mudar o modo do editor manualmente. Se você quer manter o modo manualmente escolhido enquanto movendo pelas células, desmarque essa opção. + + + + Auto-switch + Auto-trocar + + + + The text editor modes let you edit plain text, as well as JSON or XML data with syntax highlighting, automatic formatting and validation before saving. + +Errors are indicated with a red squiggle underline. + O modo do editor de texto deixa você editar tanto texto simples como JSON e XML com realce de sintaxe, formatação automática e validação antes de salvar. + +Erros são indicados com um sublinhado vermelho. + + + + This Qt editor is used for right-to-left scripts, which are not supported by the default Text editor. The presence of right-to-left characters is detected and this editor mode is automatically selected. + Esse editor do QT é usado para scripts da direita para a esquerda, que não são suportados pelo editor de texto padrão. Quando a presença de caracteres da direita para a esquerda é detectada, esse modo é automaticamente selecionado. + + + + Open preview dialog for printing the data currently stored in the cell + Abrir diálogo de prévia para impressão dos dados atualmente armazenados na célula + + + + Auto-format: pretty print on loading, compact on saving. + Auto-formatar: exibir formatado ao carregar, compactar ao salvar. + + + + When enabled, the auto-format feature formats the data on loading, breaking the text in lines and indenting it for maximum readability. On data saving, the auto-format feature compacts the data removing end of lines, and unnecessary whitespace. + Quando ativado, a funcionalidade de auto-formatar formata os dados ao carregar, quebrando o texto em linhas e indentando ele para melhor legibilidade. Ao salvar os dados, o auto-formatador compacta os dados removendo espaços em branco desnecessários. + + + + Word Wrap + Quebra de linha + + + + Wrap lines on word boundaries + Quebra de linha em limites de palavras + + + + + Open in default application or browser + Abrir em aplicação padrão ou navegador + + + + Open in application + Abrir em aplicação + + + + The value is interpreted as a file or URL and opened in the default application or web browser. + O valor é interpretado como um arquivo ou URL e aberto na aplicação padrão ou navegador. + + + + Save file reference... + Salvar referência de arquivo... + + + + Save reference to file + Salvar referência para arquivo + + + + + Open in external application + Abrir em aplicação externa + + + + Autoformat + Autoformatar + + + + &Export... + &Exportar... + + + + + &Import... + &Importar... + + + + + Import from file + Importar do arquivo + + + + + Opens a file dialog used to import any kind of data to this database cell. + Abre um seletor de arquivos usado para importar qualquer tipo de dado para essa célula. + + + + Export to file + Exportar para arquivo + + + + Opens a file dialog used to export the contents of this database cell to a file. + Abre um seletor de arquivo para exportar os conteúdos dessa célula para um arquivo. + + + + Apply data to cell + Aplicar dados à célula + + + + This button saves the changes performed in the cell editor to the database cell. + Esse botão salva as modificações realizadas no editor da célula para a célula do banco de dados. + + + + + Image data can't be viewed in this mode. + Dados de imagem não podem ser visualizados nesse modo. + + + + + Try switching to Image or Binary mode. + Tente mudar para modo de Imagem ou Binário. + + + + + Binary data can't be viewed in this mode. + Dados binários não podem ser visualizados nesse modo. + + + + + Try switching to Binary mode. + Tente mudar para modo binário. + + + + Couldn't save file: %1. + Não pôde salvar arquivo: %1. + + + + The data has been saved to a temporary file and has been opened with the default application. You can now edit the file and, when you are ready, apply the saved new data to the cell editor or cancel any changes. + Os dados foram salvos em um arquivo temporário e este foi aberto com a aplicação padrão. Você pode agora editar os dados e, quando você estiver pronto, salvar suas mudanças para o editor de células ou cancelar quaisquer mudanças. + + + + + Image files (%1) + Arquivos de imagem (%1) + + + + Binary files (*.bin) + Arquivos binários (*.bin) + + + + Choose a file to import + Escolha um arquivo para importar + + + + %1 Image + %1 Imagem + + + + Invalid data for this mode + Dados inválidos para esse modo + + + + The cell contains invalid %1 data. Reason: %2. Do you really want to apply it to the cell? + A célula contém dados inválidos %1. Motivo: %2. Você realmente quer aplicar isso? + + + + Type of data currently in cell: Valid JSON + Tipo de dados atualmente na célula: JSON válido + + + + + Print... + Imprimir... + + + + Open preview dialog for printing displayed image + Abrir diálogo de prévia para imprimir imagem exibida + + + + + Ctrl+P + + + + + Open preview dialog for printing displayed text + Abrir diálogo de prévia para imprimir texto exibido + + + + Copy Hex and ASCII + Copiar Hex e ASCII + + + + Copy selected hexadecimal and ASCII columns to the clipboard + Copiar colunas hexadecimal e ASCII selecionadas para a área de transferência + + + + Ctrl+Shift+C + + + + + EditIndexDialog + + + &Name + &Nome + + + + Order + Ordem + + + + &Table + &Tabela + + + + &Unique + &Único + + + + Creating the index failed: +%1 + Criação de índice falhou: +%1 + + + + Edit Index Schema + Editar esquema do índice + + + + For restricting the index to only a part of the table you can specify a WHERE clause here that selects the part of the table that should be indexed + Para restringir o índice para somente uma parte da tabela você pode especificar uma cláusula WHERE aqui que seleciona a parte da tabela que deveria ser indexada + + + + Partial inde&x clause + Cláusula de índi&ce parcial + + + + Colu&mns + Colu&nas + + + + Table column + Coluna da tabela + + + + Type + Tipo + + + + Add a new expression column to the index. Expression columns contain SQL expression rather than column names. + Adicionar uma nova coluna de expressão para o índice. Colunas de expressão contêm expressões SQL em vez de nomes de coluna. + + + + Index column + Indexar coluna + + + + Deleting the old index failed: +%1 + Deletar o índice antigo falhou: +%1 + + + + EditTableDialog + + + Edit table definition + Editar definição da tabela + + + + Table + Tabela + + + + Advanced + Avançado + + + + Database sche&ma + Esque&ma do banco de dados + + + + Make this a 'WITHOUT rowid' table. Setting this flag requires a field of type INTEGER with the primary key flag set and the auto increment flag unset. + Fazer dessa uma tabela 'SEM rowid'. Definir essa flag requer um campo do tipo INTEGER com a primary key flag definida e a auto increment flag não. + + + + Without Rowid + Sem Rowid + + + + Fields + Campos + + + + Add + Adicionar + + + + Remove + Remover + + + + Move to top + Mover para o topo + + + + Move up + Mover para cima + + + + Move down + Mover para baixo + + + + Move to bottom + Mover para o fundo + + + + + Name + Nome + + + + + Type + Tipo + + + + Not null + Não null + + + + PK + PK + + + + Primary key + Primary key + + + + AI + AI + + + + Autoincrement + Autoincrement + + + + U + U + + + + + + Unique + Unique + + + + Default + Default + + + + Default value + Default value + + + + + + Check + Check + + + + Check constraint + Check constraint + + + + Collation + Agrupamento + + + + + + Foreign Key + Foreign Key + + + + Constraints + Restrições + + + + Add constraint + Adicionar restrição + + + + Remove constraint + Remover restrição + + + + Columns + Colunas + + + + SQL + SQL + + + + + Primary Key + Chave primária + + + + Add a primary key constraint + Adicionar restrição de chave primária + + + + Add a foreign key constraint + Adicionar restrição de chave estrangeira + + + + Add a unique constraint + Adicionar uma restrição de unicidade + + + + Add a check constraint + Adicionar uma restrição de verificação + + + + + There can only be one primary key for each table. Please modify the existing primary key instead. + Cada tabela pode ter apenas uma chave primária. Por favor, modifique a chave primária existente. + + + + Error creating table. Message from database engine: +%1 + Erro criando tabela. Mensagem da engine do banco de dados: +%1 + + + + There is at least one row with this field set to NULL. This makes it impossible to set this flag. Please change the table data first. + Há pelo menos uma linha com esse campo definido NULL. Logo, é impossível definir essa flag. Por favor, mude os dados da tabela primeiro. + + + + There is at least one row with a non-integer value in this field. This makes it impossible to set the AI flag. Please change the table data first. + Há pelo menos uma linha com um valor não-inteiro nesse campo. Logo, é impossível definir essa flag. Por favor, mude os dados da tabela primeiro. + + + + Column '%1' has duplicate data. + + Coluna '%1' tem dados duplicados. + + + + + This makes it impossible to enable the 'Unique' flag. Please remove the duplicate data, which will allow the 'Unique' flag to then be enabled. + Isso faz com que seja impossível de se habilitar a flag de unicidade. Por favor, remova os dados duplicados para permitir que a flag seja habilitada. + + + + Are you sure you want to delete the field '%1'? +All data currently stored in this field will be lost. + Você tem certeza de que deseja deletar o campo '%1? +Todos os dados atualmente armazenados nesse campo serão perdidos. + + + + There already is a field with that name. Please rename it first or choose a different name for this field. + Já existe um campo com este nome. Por favor, renomeie-o primeiro ou escolha um nome diferente para esse campo. + + + + Please add a field which meets the following criteria before setting the without rowid flag: + - Primary key flag set + - Auto increment disabled + Por favor, adicione um campo que atende aos seguintes critérios antes de definir a flag "without rowid": + - Flag "primary key" definida + - Incremento automático desativado + + + + This column is referenced in a foreign key in table %1 and thus its name cannot be changed. + Essa coluna é referenciada em uma chave estrangeira na tabela %1 e portanto seu nome não pode ser alterado. + + + + <html><head/><body><p><span style=" font-weight:600; color:#ff0000;">Warning: </span>There is something with this table definition that our parser doesn't fully understand. Modifying and saving this table might result in problems.</p></body></html> + <html><head/><body><p><span style=" font-weight:600; color:#ff0000;">Alerta: </span>Nosso parser não entende algo dessa definição de tabela. Modificar e salvar essa tabela pode causar problemas.</p></body></html> + + + + NN + NN + + + + ExportDataDialog + + + Export data as CSV + Exportar dados como CSV + + + + , + , + + + + ; + ; + + + + Tab + Tab + + + + | + | + + + + + + Other + Outro + + + + &Quote character + &Ãspas + + + + " + " + + + + ' + ' + + + + + Could not open output file: %1 + Não pôde abrir arquivo de saída: %1 + + + + + Choose a filename to export data + Escolha um arquivo para exportar dados + + + + Please select at least 1 table. + Por favor, selecione pelo menos uma tabela. + + + + Choose a directory + Escolha um diretório + + + + Export completed. + Exportação completa. + + + + New line characters + Caracteres de nova linha + + + + Windows: CR+LF (\r\n) + Windows: CR+LF (\r\n) + + + + Unix: LF (\n) + Unix: LF (\n) + + + + Tab&le(s) + Tabe&las(s) + + + + Colu&mn names in first line + &Nomes das colunas na primeira linha + + + + Fie&ld separator + Se&parador de campo + + + + Pretty print + Otimizar para leitura humana + + + + Export data as JSON + Exportar dados como JSON + + + + exporting CSV + exportando CSV + + + + exporting JSON + exportando JSON + + + + ExportSqlDialog + + + Export SQL... + Exportar SQL... + + + + &Options + &Opções + + + + Keep column names in INSERT INTO + Manter nomes de colunas em INSERT INTO + + + + Export schema only + Exportar somente esquema + + + + Choose a filename to export + Escolha um arquivo para exportar + + + + Export completed. + Exportação completa. + + + + Export cancelled or failed. + Exportação falhou ou foi cancelada. + + + + Tab&le(s) + Tabe&las(s) + + + + Select All + Selecionar tudo + + + + Deselect All + Limpar seleção + + + + Multiple rows (VALUES) per INSERT statement + Múltiplas linhas (VALUES) por INSERT + + + + Export everything + Exportar tudo + + + + Export data only + Exportar somente dados + + + + Keep old schema (CREATE TABLE IF NOT EXISTS) + Manter esquema antigo (CREATE TABLE IF NOT EXISTS) + + + + Overwrite old schema (DROP TABLE, then CREATE TABLE) + Sobrescrever esquema antigo (DROP TABLE, then CREATE TABLE) + + + + Please select at least one table. + Por favor selecione pelo menos uma tabela. + + + + ExtendedScintilla + + + + Ctrl+H + + + + + Ctrl+F + + + + + + Ctrl+P + + + + + Find... + Encontrar... + + + + Find and Replace... + Encontrar e substituir... + + + + Print... + Imprimir... + + + + ExtendedTableWidget + + + Set to NULL + Definir como NULL + + + + Copy + Copiar + + + + Paste + Colar + + + + The content of the clipboard is bigger than the range selected. +Do you want to insert it anyway? + O conteúdo da área de transferência é maior do que o intervalo selecionado. +Deseja inserir mesmo assim? + + + + Use as Exact Filter + Usar como filtro exato + + + + Containing + Contendo + + + + Not containing + Não contendo + + + + Not equal to + Diferente de + + + + Greater than + Maior que + + + + Less than + Menor que + + + + Greater or equal + Maior ou igual a + + + + Less or equal + Menor ou igual a + + + + Between this and... + Entre isso e... + + + + Regular expression + Expressão regular + + + + Edit Conditional Formats... + Editar formatos condicionais... + + + + Copy with Headers + Copiar com cabeçalhos + + + + Copy as SQL + Copiar como SQL + + + + Print... + Imprimir... + + + + Use in Filter Expression + Usar na expressão de filtro + + + + Alt+Del + + + + + Ctrl+Shift+C + + + + + Ctrl+Alt+C + + + + + <p>Not all data has been loaded. <b>Do you want to load all data before selecting all the rows?</b><p><p>Answering <b>No</b> means that no more data will be loaded and the selection will not be performed.<br/>Answering <b>Yes</b> might take some time while the data is loaded but the selection will be complete.</p>Warning: Loading all the data might require a great amount of memory for big tables. + <p>Nem todos os dados foram carregados. <b>Você quer carregar todos os dados antes de selecionar todas as linhas?</b><p><p>Respondendo <b>Não</b> significa que mais dados não serão carregados e a seleção não será executada.<br/>Respondendo <b>Sim</b> pode levar algum tempo enquanto os dados são carregados mas a seleção será incompleta.</p>Aviso: carregar todos os dados pode exigir uma grande quantidade de memória para tabelas grandes. + + + + Cannot set selection to NULL. Column %1 has a NOT NULL constraint. + Não é possível definir a seleção como NULL. Coluna %1 tem uma restrição de nulidade. + + + + FileExtensionManager + + + File Extension Manager + Gerenciador de extensão de arquivo + + + + &Up + &Subir + + + + &Down + &Descer + + + + &Add + &Adicionar + + + + &Remove + &Remover + + + + + Description + Descrição + + + + Extensions + Extensões + + + + *.extension + *.extensão + + + + FilterLineEdit + + + Filter + Filtro + + + + These input fields allow you to perform quick filters in the currently selected table. +By default, the rows containing the input text are filtered out. +The following operators are also supported: +% Wildcard +> Greater than +< Less than +>= Equal to or greater +<= Equal to or less += Equal to: exact match +<> Unequal: exact inverse match +x~y Range: values between x and y +/regexp/ Values matching the regular expression + Esses campos de entrada permitem você realizar filtros rápidos na tabela atualmente selecionada. +Por padrão, as linhas que contém o texto de entrada são filtradas +Os seguintes operadores também são suportados: +% Curinga +> Maior que +< Menor que +>= Maior ou igual a +<= Menor ou igual a += Igual +<> Diferente +x~y Intervalo: valores entre x e y +/regexp/ Valores satisfazendo a expressão regular + + + + Clear All Conditional Formats + Limpar todos os formatos condicionais + + + + Use for Conditional Format + Usar para formato condicional + + + + Edit Conditional Formats... + Editar formatos condicionais... + + + + Set Filter Expression + Definir expressão de filtro + + + + What's This? + O que é isso? + + + + Is NULL + É NULL + + + + Is not NULL + Não é NULL + + + + Is empty + É vazio + + + + Is not empty + Não é vazio + + + + Not containing... + Não contendo... + + + + Equal to... + Igual a... + + + + Not equal to... + Diferente de... + + + + Greater than... + Maior que... + + + + Less than... + Menor que... + + + + Greater or equal... + Maior ou igual... + + + + Less or equal... + Menor ou igual... + + + + In range... + No intervalo... + + + + Regular expression... + Expressão regular... + + + + FindReplaceDialog + + + Find and Replace + Encontrar e substituir + + + + Fi&nd text: + E&ncontrar texto: + + + + Re&place with: + Su&bstituir com: + + + + Match &exact case + Casar caixa &exata + + + + Match &only whole words + Casar s&omente palavras inteiras + + + + When enabled, the search continues from the other end when it reaches one end of the page + Quando ativado, a busca continua do outro fim quando ela atinge um fim da página + + + + &Wrap around + &Envolver em torno + + + + When set, the search goes backwards from cursor position, otherwise it goes forward + Quando ativado, a busca retrocede a partir do cursor em vez de ir para frente + + + + Search &backwards + Buscar para &trás + + + + <html><head/><body><p>When checked, the pattern to find is searched only in the current selection.</p></body></html> + <html><head/><body><p>Quando selecionado, o padrão procurado é testado somente na seleção atual.</p></body></html> + + + + &Selection only + &Somente seleção + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + <html><head/><body><p>Quando selecionado, o padrão a ser encontrado é interpretado como uma expressão regular UNIX. Veja <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression nos Wikibooks</a>.</p></body></html> + + + + Use regular e&xpressions + Usar e&xpressões regulares + + + + Find the next occurrence from the cursor position and in the direction set by "Search backwards" + Encontrar a próxima ocorrência a partir da posição do cursor na direção selecionada por "Buscar para trás" + + + + &Find Next + &Encontrar próximo + + + + F3 + + + + + &Replace + &Substituir + + + + Highlight all the occurrences of the text in the page + Realçar todas as ocorrências do texto na página + + + + F&ind All + Encontrar &todos + + + + Replace all the occurrences of the text in the page + Substituir todas as ocorrências do texto na página + + + + Replace &All + Substituir &todos + + + + The searched text was not found + O texto procurado não foi encontrado + + + + The searched text was not found. + O texto procurado não foi encontrado. + + + + The searched text was found one time. + O texto procurado foi encontrado uma vez. + + + + The searched text was found %1 times. + O texto procurado foi encontrado %1 vezes. + + + + The searched text was replaced one time. + O texto procurado foi substituído uma vez. + + + + The searched text was replaced %1 times. + O texto procurado foi substituído %1 vezes. + + + + ForeignKeyEditor + + + &Reset + &Resetar + + + + Foreign key clauses (ON UPDATE, ON DELETE etc.) + Cláusulas de chave estrangeira (ON UPDATE, ON DELETE etc.) + + + + ImportCsvDialog + + + Import CSV file + Importar arquivo CSV + + + + &Column names in first line + Nomes das &colunas na primeira linha + + + + Field &separator + &Separador de campos + + + + , + , + + + + ; + ; + + + + + Tab + Tab + + + + | + | + + + + Other + Outro + + + + &Quote character + &Ãspas + + + + + Other (printable) + Outro (imprimível) + + + + + Other (code) + Outro (código) + + + + " + " + + + + ' + ' + + + + &Encoding + &Encoding + + + + UTF-8 + UTF-8 + + + + UTF-16 + UTF-16 + + + + ISO-8859-1 + ISO-8859-1 + + + + Trim fields? + Trim fields? + + + + Creating restore point failed: %1 + Criação de ponto de restauração falhou: %1 + + + + Creating the table failed: %1 + Criação de tabela falhou: %1 + + + + Inserting row failed: %1 + Inserir linha falhou: %1 + + + + Separate tables + Tabelas separadas + + + + When importing into an existing table with a primary key, unique constraints or a unique index there is a chance for a conflict. This option allows you to select a strategy for that case: By default the import is aborted and rolled back but you can also choose to ignore and not import conflicting rows or to replace the existing row in the table. + Quando importando em uma tabela existente com uma chave primária, restrições de unicidade ou índice único há uma chance para conflitos. Essa opção permite a você selecionar uma estratégia para esse caso. Por padrão, a importação é abortada e revertida, mas você também pode escolher ignorar e não importar linhas conflitantes ou substituir as entradas existentes na tabela. + + + + Abort import + Abortar importação + + + + Ignore row + Ignorar linha + + + + Replace existing row + Substituir linhas existentes + + + + Conflict strategy + Estratégia para conflitos + + + + + Deselect All + Limpar seleção + + + + Match Similar + Detectar similares + + + + Select All + Selecionar tudo + + + + Table na&me + No&me da tabela + + + + Advanced + Avançado + + + + When importing an empty value from the CSV file into an existing table with a default value for this column, that default value is inserted. Activate this option to insert an empty value instead. + Quando importando um valor em branco do arquivo CSV em uma tabela existente com um valor padrão para essa coluna, aquele valor padrão é inserido. Ative essa opção para inserir um valor em branco em vez. + + + + Ignore default &values + Ignorar &valores padrão + + + + Activate this option to stop the import when trying to import an empty value into a NOT NULL column without a default value. + Ative essa opção para parar a importação quando tentando importar um valor em branco em uma coluna NOT NULL sem um valor padrão. + + + + Fail on missing values + Falhar em valores faltando + + + + Disable data type detection + Desativar detecção de tipo de dados + + + + Disable the automatic data type detection when creating a new table. + Desativa a detecção automática de tipo de dados quando criando uma nova tabela. + + + + There is already a table named '%1' and an import into an existing table is only possible if the number of columns match. + Já existe uma tabela chamada '%1' e uma importação em uma tabela existente só é possível se o número de colunas bate. + + + + There is already a table named '%1'. Do you want to import the data into it? + Já existe uma tabela chamada '%1'. Você quer importar os dados nela? + + + + importing CSV + Importando CSV + + + + Importing the file '%1' took %2ms. Of this %3ms were spent in the row function. + Importando o arquivo '%1' levou %2 ms. Desses, %3 ms foram gastos na função da linha. + + + + MainWindow + + + DB Browser for SQLite + DB Browser para SQLite + + + + toolBar1 + toolBar1 + + + + &File + &Arquivo + + + + &Import + &Importar + + + + &Export + E&xportar + + + + &Edit + &Editar + + + + &View + &Exibir + + + + &Help + A&juda + + + + DB Toolbar + Barra de ferramentas do banco de dados + + + + User + Usuário + + + + Application + Aplicativo + + + + &Clear + &Limpar + + + + &New Database... + &Novo banco de dados... + + + + + Create a new database file + Criar um novo arquivo de banco de dados + + + + This option is used to create a new database file. + Essa opção e utilizada para criar um novo arquivo de banco de dados. + + + + Ctrl+N + + + + + + &Open Database... + &Abrir banco de dados... + + + + + + + + Open an existing database file + Abre um arquivo de banco de dados existente + + + + + + This option is used to open an existing database file. + Esta opção abre um arquivo de banco de dados existente. + + + + Ctrl+O + + + + + &Close Database + &Fechar banco de dados + + + + + Ctrl+W + + + + + + Revert database to last saved state + Reverter banco de dados para o último estado salvo + + + + This option is used to revert the current database file to its last saved state. All changes made since the last save operation are lost. + Essa opção é usada para reverter o atual arquivo de banco de dados para seu último estado salvo. Todas as modificações feitas desde a última operação de salvamento são perdidas. + + + + + Write changes to the database file + Salva modificações para o arquivo de banco de dados + + + + This option is used to save changes to the database file. + Essa opção é usada para salvar modificações para o arquivo de banco de dados. + + + + Ctrl+S + + + + + Compact the database file, removing space wasted by deleted records + Compactar o arquivo do banco de dados, removendo espaço desperdiçado por registros deletados + + + + + Compact the database file, removing space wasted by deleted records. + Compactar o arquivo do banco de dados, removendo espaço desperdiçado por registros deletados. + + + + E&xit + &Sair + + + + Ctrl+Q + + + + + Import data from an .sql dump text file into a new or existing database. + Importar dados de um arquivo de texto .sql em um banco de dados. + + + + This option lets you import data from an .sql dump text file into a new or existing database. SQL dump files can be created on most database engines, including MySQL and PostgreSQL. + Essa opção deixa você importar dados de um arquivo SQL em um banco de dados. Arquivos de SQL podem ser criados na maioria dos bancos de dados, como MySQL e PostgreSQL. + + + + Open a wizard that lets you import data from a comma separated text file into a database table. + Abre um assistente que permite você importar dados de um arquivo CSV em uma tabela de banco de dados. + + + + Open a wizard that lets you import data from a comma separated text file into a database table. CSV files can be created on most database and spreadsheet applications. + Abre um assistente que permite você importar dados de um arquivo CSV em uma tabela de banco de dados. Arquivos CSV podem ser criados pela maioria dos programas de banco de dados e planilhas. + + + + Export a database to a .sql dump text file. + Exportar o banco de dados para um arquivo de texto .sql. + + + + This option lets you export a database to a .sql dump text file. SQL dump files contain all data necessary to recreate the database on most database engines, including MySQL and PostgreSQL. + Essa opção permite você exportar um banco de dados para um arquivo de texto .sql. Arquivos de despejo SQL contêm todos os dados necessários para recriar o banco de dados na maioria dos motores de banco de dados, incluindo MySQL e PostgreSQL. + + + + Export a database table as a comma separated text file. + Exportar uma tabela de banco de dados como um arquivo CSV. + + + + Export a database table as a comma separated text file, ready to be imported into other database or spreadsheet applications. + Exportar uma tabela de banco de dados como um arquivo CSV, pronto para ser importado por outro banco de dados ou planilhas. + + + + Open the Create Table wizard, where it is possible to define the name and fields for a new table in the database + Abre o assistente de criação de tabelas, em que é possível definir o nome e os campos para uma nova tabela no banco de dados + + + + + Delete Table + Deletar tabela + + + + Open the Delete Table wizard, where you can select a database table to be dropped. + Abre o assistente de deleção de tabelas, em que você pode selecionar uma tabela para ser eliminada. + + + + Open the Modify Table wizard, where it is possible to rename an existing table. It is also possible to add or delete fields form a table, as well as modify field names and types. + Abre o assistente de modificação de tabelas, em que você pode renomear uma tabela existente. Também é possível adicionar ou deletar campos de uma tabela, assim como modificar nomes e tipos de campos. + + + + Open the Create Index wizard, where it is possible to define a new index on an existing database table. + Abre o assistente de criação de índice, em que é possível definir um novo índice em um tabela de banco de dados já existente. + + + + &Preferences... + &Configurações... + + + + + Open the preferences window. + Abre a janela de configurações. + + + + &DB Toolbar + Barra de ferramentas do banco de &dados + + + + Shows or hides the Database toolbar. + Exibe ou oculta a barra de ferramentas do banco de dados. + + + + Shift+F1 + + + + + &Recently opened + &Recentemente aberto + + + + Open &tab + Abrir &aba + + + + Ctrl+T + + + + + &Execute SQL + &Executar SQL + + + + + Execute SQL + This has to be equal to the tab title in all the main tabs + Executar SQL + + + + + + Save SQL file + Salvar arquivo SQL + + + + + Execute current line + Executar linha atual + + + + Ctrl+E + + + + + Export as CSV file + Exportar como arquivo CSV + + + + Export table as comma separated values file + Exportar tabela como CSV + + + + + Save the current session to a file + Salvar a atual sessão para um arquivo + + + + + Load a working session from a file + Carregar uma sessão de um arquivo + + + + + Save SQL file as + Salvar arquivo SQL como + + + + &Browse Table + &Navegar tabela + + + + Copy Create statement + Copiar comando Create + + + + Copy the CREATE statement of the item to the clipboard + Copia o comando CREATE do item para a área de transferência + + + + Ctrl+Return + Ctrl+ENTER + + + + Ctrl+L + + + + + + Ctrl+P + + + + + Ctrl+D + + + + + Ctrl+I + + + + + Reset Window Layout + Resetar layout da janela + + + + Alt+0 + + + + + The database is currenctly busy. + O banco de dados está ocupado. + + + + Click here to interrupt the currently running query. + Clique aqui para interromper a consulta atual. + + + + Database encoding + Codificação do banco de dados + + + + Database is encrypted using SQLCipher + Banco de dados encriptado usando SQLCipher + + + + + Choose a database file + Escolha um arquivo de banco de dados + + + + + + Choose a filename to save under + Escolha um nome de arquivo para salvar + + + + Are you sure you want to undo all changes made to the database file '%1' since the last save? + Você tem certeza de que deseja desfazer todas as modificações feitas no arquivo de banco de dados '%1' desde o último salvamento? + + + + Choose a file to import + Escolha um arquivo para importar + + + + Text files(*.sql *.txt);;All files(*) + Arquivos de texto(*.sql *.txt);;Todos os arquivos(*) + + + + Do you want to create a new database file to hold the imported data? +If you answer no we will attempt to import the data in the SQL file to the current database. + Você deseja criar um novo arquivo de banco de dados para armazenar os dados importados? +Se você disser que não, tentaremos importar os dados do arquivo SQL para o banco de dados atual. + + + + Window Layout + Layout da janela + + + + Simplify Window Layout + Simplificar layout da janela + + + + Shift+Alt+0 + + + + + Dock Windows at Bottom + Encaixar janelas embaixo + + + + Dock Windows at Left Side + Encaixar janelas à esquerda + + + + Dock Windows at Top + Encaixar janelas no topo + + + + You are still executing SQL statements. Closing the database now will stop their execution, possibly leaving the database in an inconsistent state. Are you sure you want to close the database? + Você ainda está executando comandos SQL. Fechar o banco de dados agora fará a execução parar, talvez deixando o banco de dados em um estado inconsistente. Você tem certeza de que deseja fechar o banco de dados? + + + + Do you want to save the changes made to the project file '%1'? + Você quer salvar as modificações feitas para o arquivo de projeto '%1'? + + + + Result: %1 + Resulto: %1 + + + + File %1 already exists. Please choose a different name. + Arquivo %1 já existe. Por favor, escolha um nome diferente. + + + + Error importing data: %1 + Erro importando dados: %1 + + + + Import completed. + Importação completa. + + + + Delete View + Deletar vista + + + + Delete Trigger + Deletar gatilho + + + + Delete Index + Deletar índice + + + + Setting PRAGMA values will commit your current transaction. +Are you sure? + Definir valores de PRAGMA vai cometer sua transação atual. +Você tem certeza? + + + + Do you want to save the changes made to SQL tabs in the project file '%1'? + Você quer salvar as mudanças feitas nas abas de SQL no arquivo de projeto '%1'? + + + + Select SQL file to open + Selecione arquivo SQL para abrir + + + + Select file name + Selecione o nome do arquivo + + + + Select extension file + Selecione o arquivo de extensão + + + + Extension successfully loaded. + Extensão carregada com sucesso. + + + + Error loading extension: %1 + Erro carregado extensão: %1 + + + + + Don't show again + Não mostrar novamente + + + + New version available. + Nova versão disponível. + + + + A new DB Browser for SQLite version is available (%1.%2.%3).<br/><br/>Please download at <a href='%4'>%4</a>. + Uma nova vesão do DB Browser para SQLite está disponível (%1.%2.%3)<br/><br/>Por favor, baixe em <a href='%4'>%4</a>. + + + + DB Browser for SQLite project file (*.sqbpro) + Arquivo de projeto DB Browser para SQLite (*.sqbpro) + + + + SQL &Log + &Log do SQL + + + + Show S&QL submitted by + Exibir S&QL enviado por + + + + &Plot + &Plotar + + + + &Revert Changes + &Reverter modificações + + + + &Write Changes + &Escrever modificações + + + + &Database from SQL file... + &Banco de dados a partir de arquivo SQL... + + + + &Table from CSV file... + &Tabela a partir de arquivo CSV... + + + + &Database to SQL file... + &Banco de dados para arquivo SQL... + + + + &Table(s) as CSV file... + &Tabela para arquivo CSV... + + + + &Create Table... + &Criar tabela... + + + + &Delete Table... + &Deletar tabela... + + + + &Modify Table... + &Modificar tabela... + + + + Create &Index... + &Criar índice... + + + + W&hat's This? + O &que é isso? + + + + Sa&ve Project + &Salvar projeto + + + + Encrypted + Encriptado + + + + Read only + Somente leitura + + + + Database file is read only. Editing the database is disabled. + Arquivo de banco de dados é somente leitura. Edição do banco de dados está desativada. + + + + Execution finished with errors. + Execução finalizada com erros. + + + + Execution finished without errors. + Execução finalizada sem erros. + + + + + Database Structure + This has to be equal to the tab title in all the main tabs + Estrutura do banco de dados + + + + + Browse Data + This has to be equal to the tab title in all the main tabs + Navegar dados + + + + + Edit Pragmas + This has to be equal to the tab title in all the main tabs + Editar pragmas + + + + Edit Database &Cell + Editar &célula do banco de dados + + + + DB Sche&ma + Esque&ma do banco de dados + + + + Open SQL file(s) + Abrir arquivo(s) SQL + + + + This button opens files containing SQL statements and loads them in new editor tabs + Este botão abre arquivos SQL e carrega eles em novas abas no editor + + + + Shift+F5 + + + + + Opens the SQLCipher FAQ in a browser window + Abre o FAQ do SQLCipher em uma janela do navegador + + + + Export one or more table(s) to a JSON file + Exporta uma ou mais tabela(s) para um arquivo JSON + + + + Error while saving the database file. This means that not all changes to the database were saved. You need to resolve the following error first. + +%1 + Erro enquanto salvava o banco de dados. Isso indica que nem todas as mudanças foram salvas. Você precisa resolver o seguinte erro primeiro. + +%1 + + + + &Remote + &Remoto + + + + Open an existing database file in read only mode + Abre um banco de dados existente em modo somente leitura + + + + Could not open database file. +Reason: %1 + Não pôde abrir arquivo do banco de dados. +Motivo: %1 + + + + Choose text files + Escolha arquivos de texto + + + + Modify View + Modificar vista + + + + Modify Trigger + Modificar gatilho + + + + Modify Index + Modificar índice + + + + Modify Table + Modificar tabela + + + + Setting PRAGMA values or vacuuming will commit your current transaction. +Are you sure? + Definir valores de PRAGMA ou fazer vacuum irá commitar sua transação atual. +Deseja continuar? + + + + This is the structure of the opened database. +You can drag SQL statements from an object row and drop them into other applications or into another instance of 'DB Browser for SQLite'. + + Essa é a estrutura do banco de dados aberto. +Você pode arrastar comandos SQL de uma linha e soltá-los em outras aplicações ou em outra instância do DB Browser para SQLite. + + + + + Warning: this pragma is not readable and this value has been inferred. Writing the pragma might overwrite a redefined LIKE provided by an SQLite extension. + Alerta: esse pragma não é legível e esse valor foi inferido. Escrever o pragma pode sobrescrever um LIKE redefinido provido por uma extensão SQL. + + + + &Tools + Ferramen&tas + + + + Error Log + Log de erros + + + + This button clears the contents of the SQL logs + Esse botão limpa os logs do SQL + + + + This panel lets you examine a log of all SQL commands issued by the application or by yourself + Esse painel deixa você examinar um log de todos os comandos SQL dados pela aplicação ou por você + + + + This is the structure of the opened database. +You can drag multiple object names from the Name column and drop them into the SQL editor and you can adjust the properties of the dropped names using the context menu. This would help you in composing SQL statements. +You can drag SQL statements from the Schema column and drop them into the SQL editor or into other applications. + + Essa é a estrutura do banco de dados aberto. +Você pode arrastar múltiplos nomes de objetos da coluna Nome e largá-los no editor SQL e você pode ajustar as propriedades dos nomes largados usando o menu de contexto. Isso ajudaria você a compor comandos SQL. +Você pode arrastar comandos SQL da coluna Esquema e largá-los no editor SQL ou em outras aplicações. + + + + + + Project Toolbar + Barra de ferramentas do projeto + + + + Extra DB toolbar + Barra de ferramentas do banco de dados extra + + + + + + Close the current database file + Fechar o arquivo de banco de dados aberto + + + + This button closes the connection to the currently open database file + Esse botão fecha a conexão com o arquivo aberto + + + + Ctrl+F4 + + + + + Compact &Database... + Compactar banco de &dados... + + + + &About + &Sobre + + + + This button opens a new tab for the SQL editor + Esse botão abre uma nova aba para o editor SQL + + + + Execute all/selected SQL + Executar todo/selecionado SQL + + + + This button executes the currently selected SQL statements. If no text is selected, all SQL statements are executed. + Esse botão executa o SQL selecionado. Se não existe SQL selecionado, todo o SQL é executado. + + + + &Load Extension... + &Carregar extensão... + + + + Execute line + Executar linha + + + + This button executes the SQL statement present in the current editor line + Esse botão executa o comando SQL presente na linha atual do editor + + + + &Wiki + &Wiki + + + + F1 + + + + + Bug &Report... + &Reportar bug... + + + + Feature Re&quest... + Re&quisitar feature... + + + + Web&site + &Site + + + + &Donate on Patreon... + &Doar no Patreon... + + + + Open &Project... + Abrir &projeto... + + + + &Attach Database... + &Anexar banco de dados... + + + + + Add another database file to the current database connection + Adiciona outro arquivo de banco de dados para a conexão atual + + + + This button lets you add another database file to the current database connection + Esse botão deixa você adicionar outro banco de dados para a conexão atual com o banco de dados + + + + &Set Encryption... + Definir en&criptação... + + + + This button saves the content of the current SQL editor tab to a file + Esse botão salva o conteúdo do editor SQL para um arquivo + + + + SQLCipher &FAQ + &FAQ do SQLCipher + + + + Table(&s) to JSON... + Tabela(&s) para JSON... + + + + Open Data&base Read Only... + Abrir &banco de dados somente leitura... + + + + Ctrl+Shift+O + + + + + Save results + Salvar resultados + + + + Save the results view + Salvar a vista de resultados + + + + This button lets you save the results of the last executed query + Esse botão deixa você salvar os resultados da última consulta executada + + + + + Find text in SQL editor + Encontrar texto no editor SQL + + + + Find + Encontrar + + + + This button opens the search bar of the editor + Esse botão abre a barra de busca do editor + + + + Ctrl+F + + + + + + Find or replace text in SQL editor + Encontrar ou substituir texto no editor SQL + + + + Find or replace + Encontrar ou substituir + + + + This button opens the find/replace dialog for the current editor tab + Esse botão abre o diálogo de encontrar/substituir para a aba atual do editor + + + + Ctrl+H + + + + + Export to &CSV + Exportar para &CSV + + + + Save as &view + Salvar como &vista + + + + Save as view + Salvar como vista + + + + Shows or hides the Project toolbar. + Mostra ou oculta a barra de ferramentos do Projeto. + + + + Extra DB Toolbar + Barra de ferramentas do banco de dados extra + + + + This button lets you save all the settings associated to the open DB to a DB Browser for SQLite project file + Este botão lhe permite salvar todas as configurações associadas ao banco de dados aberto a um arquivo de projeto do DB Browser para SQLite + + + + This button lets you open a DB Browser for SQLite project file + Este botão lhe permite abrir um arquivo de projeto do DB Browser para SQLite + + + + New In-&Memory Database + Nova tabela em &memória + + + + Drag && Drop Qualified Names + Arrastar e soltar nomes qualificados + + + + + Use qualified names (e.g. "Table"."Field") when dragging the objects and dropping them into the editor + Use nomes qualificados (p.e. "Tabela"."Campo") quando arrastando objetos e soltando eles no editor + + + + Drag && Drop Enquoted Names + Arrastar e soltar nomes entre áspas + + + + + Use escaped identifiers (e.g. "Table1") when dragging the objects and dropping them into the editor + Use identificadores escapados (p.e. "Tabela1") quando arrastando e soltando objetos no editor + + + + &Integrity Check + Teste de &integridade + + + + Runs the integrity_check pragma over the opened database and returns the results in the Execute SQL tab. This pragma does an integrity check of the entire database. + Roda o teste de integridade sobre o banco de dados aberto e retorna os resultados na aba Executar SQL. + + + + &Foreign-Key Check + Teste de chave &estrangeira + + + + Runs the foreign_key_check pragma over the opened database and returns the results in the Execute SQL tab + Roda o teste de chave estrangeira sobre o banco de dados aberto e retorna os resultados na aba Executar SQL + + + + &Quick Integrity Check + Teste de integridade &rápido + + + + Run a quick integrity check over the open DB + Roda um teste de integridade rápido sobre o banco de dados aberto + + + + Runs the quick_check pragma over the opened database and returns the results in the Execute SQL tab. This command does most of the checking of PRAGMA integrity_check but runs much faster. + Roda um outro pragma para a verificação de integridade do banco de dados. Faz quase tantos testes quando o outro PRAGMA mas executa muito mais rápido. + + + + &Optimize + &Otimizar + + + + Attempt to optimize the database + Tenta otimizar o banco de dados + + + + Runs the optimize pragma over the opened database. This pragma might perform optimizations that will improve the performance of future queries. + Roda o pragma de otimização sobre o banco de dados aberto. Esse pragma pode realizar otimizações que vão melhorar a performance de consultas futuras. + + + + + Print + Imprimir + + + + Print text from current SQL editor tab + Imprimir texto do editor SQL + + + + Open a dialog for printing the text in the current SQL editor tab + Abre um diálogo para imprimir o texto na aba atual do editor SQL + + + + Print the structure of the opened database + Imprime a estrutura do banco de dados aberto + + + + Open a dialog for printing the structure of the opened database + Abre um diálogo para imprimir a estrutura do banco de dados aberto + + + + Un/comment block of SQL code + Comentar bloco de SQL + + + + Un/comment block + Comentar bloco + + + + Comment or uncomment current line or selected block of code + Comentar ou remover comentário da linha ou bloco atualmente selecionado + + + + Comment or uncomment the selected lines or the current line, when there is no selection. All the block is toggled according to the first line. + Comentar ou remover comentários das linhas selecionadas ou da linha atual, se não há seleção. Todo o bloco é alterado de acordo com a primeira linha. + + + + Ctrl+/ + + + + + Stop SQL execution + Parar execução do SQL + + + + Stop execution + Parar execução + + + + Stop the currently running SQL script + Parar o script de SQL atualmente executando + + + + &Save Project As... + &Salvar projeto como... + + + + + + Save the project in a file selected in a dialog + Salvar o projeto em um arquivo selecionado em um diálogo + + + + Save A&ll + Salvar &todos + + + + + + Save DB file, project file and opened SQL files + Salvar arquivo do BD, arquivo do projeto e arquivos SQL abertos + + + + Ctrl+Shift+S + + + + + Browse Table + Navegar tabelas + + + + In-Memory database + Banco de dados em memória + + + + Are you sure you want to delete the table '%1'? +All data associated with the table will be lost. + Você tem certeza de que deseja deletar a tabela '%1'? +Todos os dados associados com a tabela serão perdidos. + + + + Are you sure you want to delete the view '%1'? + Você tem certeza que deseja deletar a vista '%1'? + + + + Are you sure you want to delete the trigger '%1'? + Você tem certeza que deseja deletar o gatilho '%1'? + + + + Are you sure you want to delete the index '%1'? + Você tem certeza que deseja deletar o índice '%1'? + + + + Error: could not delete the table. + Erro: não pôde deletar a tabela. + + + + Error: could not delete the view. + Erro: não pôde deletar a vista. + + + + Error: could not delete the trigger. + Erro: não pôde deletar o gatilho. + + + + Error: could not delete the index. + Erro: não pôde deletar o índice. + + + + Message from database engine: +%1 + Mensagem do banco de dados: +%1 + + + + Editing the table requires to save all pending changes now. +Are you sure you want to save the database? + Editar a tabela requer salvar todas as mudanças pendentes agora. +Você tem certeza que quer salvar o banco de dados? + + + + Edit View %1 + Editar vista %1 + + + + Edit Trigger %1 + Editar gatilho %1 + + + + You are already executing SQL statements. Do you want to stop them in order to execute the current statements instead? Note that this might leave the database in an inconsistent state. + Você já está executando comandos SQL. Você quer pará-los para executar os comandos atuais? Fechar o banco de dados agora pode deixá-lo em um estado inconsistente. + + + + -- EXECUTING SELECTION IN '%1' +-- + -- EXECUTANDO SELEÇÃO EM '%1' +-- + + + + -- EXECUTING LINE IN '%1' +-- + -- EXECUTANDO LINHA EM '%1' +-- + + + + -- EXECUTING ALL IN '%1' +-- + -- EXECUTANDO TUDO EM '%1' +-- + + + + Opened '%1' in read-only mode from recent file list + Abiu '%1' em modo somente leitura a partir da lista de arquivos recentes + + + + Opened '%1' from recent file list + Abiu '%1' a partir da lista de arquivos recentes + + + + Project saved to file '%1' + Projeto salvo no arquivo '%1' + + + + This action will open a new SQL tab with the following statements for you to edit and run: + Esta ação abrirá uma nova aba SQL com os seguintes comandos para você editar e executar: + + + + Rename Tab + Renomear aba + + + + Duplicate Tab + Duplicar aba + + + + Close Tab + Fechar aba + + + + Opening '%1'... + Abrindo '%1'... + + + + There was an error opening '%1'... + Houve um erro abrindo '%1'... + + + + Value is not a valid URL or filename: %1 + Valor não é uma URL ou nome de arquivo válido: %1 + + + + %1 rows returned in %2ms + %1 linhas retornadas em %2 ms + + + + + At line %1: + Na linha %1: + + + + Result: %2 + Resultado: %2 + + + + Import completed. Some foreign key constraints are violated. Please fix them before saving. + Importação completa. Algumas chaves estrangeiras são violadas. Por favor corrija-as antes de salvar. + + + + &%1 %2%3 + &%1 %2%3 + + + + (read only) + (somente leitura) + + + + Open Database or Project + Abrir banco de dados ou projeto + + + + Attach Database... + Anexar banco de dados... + + + + Import CSV file(s)... + Importar arquivo(s) CSV... + + + + Select the action to apply to the dropped file(s). <br/>Note: only 'Import' will process more than one file. + + Selecione a ação para aplicar ao %n arquivo dropado. <br/>Note que só 'Importar' vai processar mais de um arquivo. + Selecione a ação para aplicar aos %n arquivos dropados. <br/>Note que só 'Importar' vai processar mais de um arquivo. + + + + + Do you want to save the changes made to SQL tabs in a new project file? + Você quer salvar as mudanças feitas nas abas de SQL no arquivo de projeto? + + + + Do you want to save the changes made to the SQL file %1? + Você quer salvar as alterações feitas ao arquivo SQL %1? + + + + The statements in this tab are still executing. Closing the tab will stop the execution. This might leave the database in an inconsistent state. Are you sure you want to close the tab? + Os comandos nessa aba ainda estão executando. Fechar a aba vai parar a execução. Isso pode deixar o banco de dados em um estado inconsistente. Você tem certeza de que deseja fechar a aba? + + + + Could not find resource file: %1 + Não pôde encontrar o arquivo de recursos: %1 + + + + Choose a project file to open + Escolha um arquivo de projeto para abrir + + + + This project file is using an old file format because it was created using DB Browser for SQLite version 3.10 or lower. Loading this file format is still fully supported but we advice you to convert all your project files to the new file format because support for older formats might be dropped at some point in the future. You can convert your files by simply opening and re-saving them. + Esse arquivo de projeto está usando um formato de arquivo mais velho porque ele foi criado usando DB Browser para SQLite versão 3.10 ou menor. Esse arquivo é suportado mas nós aconselhamos converter todos os projetos para o novo formato de arquivos porque o suporte para arquivos antigos pode ser abandonado no futuro. Você pode converter seus arquivos simplesmente abrindo e salvando eles. + + + + Could not open project file for writing. +Reason: %1 + Não pôde abrir arquivo de projeto para a escrita. +Motivo: %1 + + + + Collation needed! Proceed? + Função de comparação necessária! Proceder? + + + + A table in this database requires a special collation function '%1' that this application can't provide without further knowledge. +If you choose to proceed, be aware bad things can happen to your database. +Create a backup! + Uma tabela nesse banco de dados requer uma função de comparação especial '%1' que esse aplicativo não pode prover. +So você optar por proceder, esteja avisado de que coisas ruins podem acontecer para o seu banco de dados. +Faça um backup! + + + + creating collation + criando função de comparação + + + + Set a new name for the SQL tab. Use the '&&' character to allow using the following character as a keyboard shortcut. + Defina um novo nome para a aba de SQL. Use o caractere '&&' para poder usar o seguinte caractere como um atalho de teclado. + + + + Please specify the view name + Por favor, especifique o nome da vista + + + + There is already an object with that name. Please choose a different name. + Já existe um objeto com esse nome. Por favor, escolha um nome diferente. + + + + View successfully created. + Vista criada com sucesso. + + + + Error creating view: %1 + Erro criando vista: %1 + + + + This action will open a new SQL tab for running: + Essa ação irá abrir uma nova aba SQL para rodar: + + + + Press Help for opening the corresponding SQLite reference page. + Pressione Help para abrir a página de referência SQL correspondente. + + + + Busy (%1) + Ocupado (%1) + + + + Error checking foreign keys after table modification. The changes will be reverted. + Erro verificando as chaves estrangeiras após modificação. Mudanças serão revertidas. + + + + This table did not pass a foreign-key check.<br/>You should run 'Tools | Foreign-Key Check' and fix the reported issues. + Essa tabela não passou um teste de chave estrangeira.<br/>Você deveria rodar 'Ferramentas | Teste de Chave Estrangeira| e corrigir os problemas reportados. + + + + NullLineEdit + + + Set to NULL + Definir como NULL + + + + Alt+Del + + + + + PlotDock + + + Plot + Plotar + + + + Columns + Colunas + + + + X + X + + + + Line type: + Tipo da linha: + + + + + None + Nenhum + + + + Line + Linha + + + + StepLeft + Passo à esquerda + + + + StepRight + Passo à direita + + + + StepCenter + Passo centralizado + + + + Impulse + Impulso + + + + Point shape: + Ponto: + + + + Cross + Cruz + + + + Plus + Mais + + + + Circle + Círculo + + + + Disc + Disco + + + + Square + Quadrado + + + + Diamond + Diamante + + + + Star + Estrela + + + + Triangle + Triângulo + + + + TriangleInverted + Triângulo Invertido + + + + CrossSquare + Cruz Quadrado + + + + PlusSquare + Mais Quadrado + + + + CrossCircle + Cruz Círculo + + + + PlusCircle + Mais Círculo + + + + Peace + Paz + + + + <html><head/><body><p>Save current plot...</p><p>File format chosen by extension (png, jpg, pdf, bmp)</p></body></html> + <html><head/><body><p>Salvar plotagem atual...</p><p>Formato de arquivo definido pela extensão (png, jpg, pdf, bmp)</p></body></html> + + + + Save current plot... + Salvar plotagem atual... + + + + + + Row # + Coluna # + + + + Choose a filename to save under + Escolha um nome de arquivo para salvar + + + + PNG(*.png);;JPG(*.jpg);;PDF(*.pdf);;BMP(*.bmp);;All Files(*) + PNG(*.png);;JPG(*.jpg);;PDF(*.pdf);;BMP(*.bmp);;Todos os arquivos(*) + + + + <html><head/><body><p>This pane shows the list of columns of the currently browsed table or the just executed query. You can select the columns that you want to be used as X or Y axis for the plot pane below. The table shows detected axis type that will affect the resulting plot. For the Y axis you can only select numeric columns, but for the X axis you will be able to select:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Date/Time</span>: strings with format &quot;yyyy-MM-dd hh:mm:ss&quot; or &quot;yyyy-MM-ddThh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Date</span>: strings with format &quot;yyyy-MM-dd&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Time</span>: strings with format &quot;hh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Label</span>: other string formats. Selecting this column as X axis will produce a Bars plot with the column values as labels for the bars</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Numeric</span>: integer or real values</li></ul><p>Double-clicking the Y cells you can change the used color for that graph.</p></body></html> + <html><head/><body><p>Esse painel mostra a lista de colunas da tabela atualmente exibida ou a consulta recém executada. Você pode selecionar as colunas que você quer que sejam utilizadas como os eixos X e Y para o painel de plotagem abaixo. A tabela mostra o tipo detectado de exio que será utilizado na plotagem. For o eixo Y você só pode selecionar colunas numéricas, mas para o eixo X você pode selecionar:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Data/Hora</span>: strings com o formato &quot;yyyy-MM-dd hh:mm:ss&quot; ou &quot;yyyy-MM-ddThh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Data</span>: strings com o formato &quot;yyyy-MM-dd&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Hora</span>: strings com o formato &quot;hh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Rótulo</span>: outros formatos de string. Selecionando essa coluna como X vai produzir um gráfico de barras com as colunas como rótulos para as barras</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Numérico</span>: valores inteiros ou reais</li></ul><p>Clicando duas vezes nas células Y você pode mudar a cor usada para aquele gráfico.</p></body></html> + + + + Y1 + Y1 + + + + Y2 + Y2 + + + + Axis Type + Tipo do eixo + + + + Here is a plot drawn when you select the x and y values above. + +Click on points to select them in the plot and in the table. Ctrl+Click for selecting a range of points. + +Use mouse-wheel for zooming and mouse drag for changing the axis range. + +Select the axes or axes labels to drag and zoom only in that orientation. + Aqui está um gráfico feito quando você seleciona os valores X e Y acima. + +Clique nos pontos para selecioná-los no gráfico e na tabela. Ctrl+Clique para selecionar um intervalo de pontos. + +Use o scroll do mouse para dar zoom e arraste o mouse para alterar o intervalo dos eixos. + +Selecione os eixos ou rótulos dos eixos para arrastar e dar zoom somente naquela orientação. + + + + + Load all data and redraw plot + Carregar todos os dados e plotar de novo + + + + Copy + Copiar + + + + Show legend + Mostrar legenda + + + + Stacked bars + Barras empilhadas + + + + Date/Time + Data/Hora + + + + Date + Data + + + + Time + Hora + + + + + Numeric + Numérico + + + + Label + Rótulo + + + + Invalid + Inválido + + + + Load all data and redraw plot. +Warning: not all data has been fetched from the table yet due to the partial fetch mechanism. + Carregar todos os dados e plotar de novo. +Aviso: nem todos os dados foram obtidos da tabela ainda devido ao mecanismo de obtenção parcial. + + + + Choose an axis color + Escolher a cor do eixo + + + + There are curves in this plot and the selected line style can only be applied to graphs sorted by X. Either sort the table or query by X to remove curves or select one of the styles supported by curves: None or Line. + Existem curvas nesse gráfico e o estilo de linha selecionado só pode ser aplicado para gráficos ordenados por X. Ou ordene a tabela ou consulte por X para remover curvas ou selecione um dos estilos suportados por curvas: Nenhum ou Linha. + + + + Loading all remaining data for this table took %1ms. + Carregar os dados restantes para essa tabela levou %1ms. + + + + Print... + Imprimir... + + + + PreferencesDialog + + + Preferences + Configurações + + + + &General + &Geral + + + + Remember last location + Lembrar do último diretório + + + + Always use this location + Sempre usar esse diretório + + + + Remember last location for session only + Lembrar do último diretório somente nessa sessão + + + + + + ... + ... + + + + Default &location + Diretório &padrão + + + + Lan&guage + &Idioma + + + + Automatic &updates + &Atualizações automáticas + + + + + + + + + + + + enabled + ativado + + + + &Database + &Banco de dados + + + + Database &encoding + &Codificação do banco de dados + + + + Open databases with foreign keys enabled. + Abrir bancos de dados com chaves estrangeiras ativado. + + + + &Foreign keys + &Chaves estrangeiras + + + + Data &Browser + Navegador de &dados + + + + &SQL + &SQL + + + + Settings name + Settings name + + + + Context + Context + + + + Colour + Cor + + + + Bold + Negrito + + + + Italic + Itálico + + + + Underline + Underline + + + + Keyword + Palavra-chave + + + + Function + Função + + + + Table + Tabela + + + + Comment + Comentário + + + + Identifier + Identificador + + + + String + String + + + + Current line + Linha atual + + + + SQL &editor font size + Tamanho da fonte do &editor de SQL + + + + SQL editor &font + &Fonte do editor de SQL + + + + &Extensions + &Extensões + + + + Select extensions to load for every database: + Selecione extensões para carregar para todos os bancos de dados: + + + + Add extension + Adicionar extensão + + + + Remove extension + Remover extensão + + + + <html><head/><body><p>While supporting the REGEXP operator SQLite doesn't implement any regular expression<br/>algorithm but calls back the running application. DB Browser for SQLite implements this<br/>algorithm for you to let you use REGEXP out of the box. However, as there are multiple possible<br/>implementations of this and you might want to use another one, you're free to disable the<br/>application's implementation and load your own by using an extension. Requires restart of the application.</p></body></html> + <html><head/><body><p>Embora suporte o operador REGEXP, SQLite não implementa expressões regulares mas recorre ao aplicativo em execução.<br/>DB Browser para SQLite implementa esse algoritmo para você poder utilizar REGEXP.<br/>Todavia, como existem múltiplas implementações possíveis desse algoritmo e você pode querer usar outra, você pode desativar a implementação do aplicativo e carregar a sua própria implementação através de uma extensão.<br/>Requer que o programa seja reiniciado.</p></body></html> + + + + Disable Regular Expression extension + Desativar extensão de expressões regulares + + + + + Choose a directory + Escolha um diretório + + + + The language will change after you restart the application. + A linguagem mudará após reiniciar o programa. + + + + Select extension file + Selecione arquivo de extensão + + + + Extensions(*.so *.dylib *.dll);;All files(*) + Extensões(*.so *.dylib *.dll);;Todos os arquivos(*) + + + + Remove line breaks in schema &view + Remover quebras de linhas em &vista de esquema + + + + Prefetch block si&ze + &Tamanho de bloco de prefetch + + + + Default field type + Tipo padrão de campo + + + + Font + Fonte + + + + &Font + &Fonte + + + + NULL + NULL + + + + Regular + Regular + + + + Binary + Binário + + + + Background + Fundo + + + + Filters + Filtros + + + + Escape character + Caractere de escape + + + + Delay time (&ms) + Tempo de delay (&ms) + + + + Set the waiting time before a new filter value is applied. Can be set to 0 for disabling waiting. + Definir o tempo de espera antes de aplicar um novo filtro de valor. Pode ser definido para zero para desativar espera. + + + + Tab size + Tamanho de tabulação + + + + Error indicators + Indicadores de erro + + + + Hori&zontal tiling + Disposição &horizontal + + + + If enabled the SQL code editor and the result table view are shown side by side instead of one over the other. + Se ativados, o editor de SQL e a tabela de resultados são exibidos lado a lado em vez de um sobre o outro. + + + + Code co&mpletion + Co&mpletação de código + + + + Show remote options + Mostrar opções remotas + + + + SQ&L to execute after opening database + SQ&L para executar após abrir o banco de dados + + + + Content + Conteúdo + + + + Symbol limit in cell + Limite de símbolos na célula + + + + Threshold for completion and calculation on selection + Limite de compleção e cálculo em seleção + + + + Show images in cell + Mostrar imagens na célula + + + + Enable this option to show a preview of BLOBs containing image data in the cells. This can affect the performance of the data browser, however. + Habilite essa opção para mostrar uma prévia de BLOBs contendo dados de imagens nas células. Isso pode afetar a performance do visualizados de dados. + + + + Remote + Remoto + + + + CA certificates + Certificados CA + + + + + Subject CN + Nome comum do sujeito + + + + Common Name + Nome comum + + + + Subject O + O do sujeito + + + + Organization + Organização + + + + + Valid from + Válido de + + + + + Valid to + Válido para + + + + + Serial number + Número serial + + + + Your certificates + Seus certificados + + + + File + Arquivo + + + + Subject Common Name + Nome comum do sujeito + + + + Issuer CN + CN do emissor + + + + Issuer Common Name + Nome Comum do emissor + + + + Import certificate file + Importar certificado + + + + No certificates found in this file. + Nem um certificado encontrado nesse arquivo. + + + + Are you sure you want do remove this certificate? All certificate data will be deleted from the application settings! + Você tem certeza de que deseja remover esse certificado? Todos os dados do certificado serão deletados das configurações da aplicação! + + + + Clone databases into + Clonar bancos de dados em + + + + Toolbar style + Estilo da barra de ferramentas + + + + + + + + Only display the icon + Exibir apenas o ícone + + + + + + + + Only display the text + Exibir apenas o texto + + + + + + + + The text appears beside the icon + O texto aparece ao lado do ícone + + + + + + + + The text appears under the icon + O texto aparece sob o ícone + + + + + + + + Follow the style + Seguir o estilo + + + + DB file extensions + Extensões de arquivo de bancos de dados + + + + Manage + Gerenciar + + + + Main Window + Janela principal + + + + Database Structure + Estrutura do banco de dados + + + + Browse Data + Navegar dados + + + + Execute SQL + Executar SQL + + + + Edit Database Cell + Editar célula do banco de dados + + + + When this value is changed, all the other color preferences are also set to matching colors. + Quando este valor é alterado, todas as outras preferências de cor são definidas para cores compatíveis. + + + + Follow the desktop style + Seguir o estilo do desktop + + + + Dark style + Estilo escuro + + + + Application style + Estilo da aplicação + + + + This sets the font size for all UI elements which do not have their own font size option. + Isso define o tamanho da fonte para todos os elementos da interface que não possuem sua própria opção de tamanho de fonte. + + + + Font size + Tamanho da fonte + + + + Database structure font size + Tamanho da fonte da estrutura do banco de dados + + + + Font si&ze + &Tamanho da fonte + + + + This is the maximum number of items allowed for some computationally expensive functionalities to be enabled: +Maximum number of rows in a table for enabling the value completion based on current values in the column. +Maximum number of indexes in a selection for calculating sum and average. +Can be set to 0 for disabling the functionalities. + Esse é o número máximo de itens permitidos para que algumas funcionalidades computacionalmente caras sejam habilitadas: +Número máximo de linhas em uma tabela para habilitar compleção de valores baseada nos valores atualmente na coluna. +Número máximo de índices em uma seleção para se calcular soma e média. +Pode ser deixado em 0 para se desabilitar as funcionalidades. + + + + This is the maximum number of rows in a table for enabling the value completion based on current values in the column. +Can be set to 0 for disabling completion. + Esse é o número máximo de linhas na tabela para preencher baseado nos valores atualmente na coluna. +Pode ser 0 para desabilitar preenchimento. + + + + Field display + Exibição do campo + + + + Displayed &text + &Texto exibido + + + + + + + + + Click to set this color + Clique para definir essa cor + + + + Text color + Cor do texto + + + + Background color + Cor do plano de fundo + + + + Preview only (N/A) + Somente prévia (N/D) + + + + Foreground + Plano de frente + + + + SQL &results font size + Tamanho da fonte dos &resultados do SQL + + + + &Wrap lines + &Quebra de linhas + + + + Never + Nunca + + + + At word boundaries + Nos limites de palavras + + + + At character boundaries + Nos limites de caractere + + + + At whitespace boundaries + Nos limites de espaço em branco + + + + &Quotes for identifiers + Ãspas &para identificadores + + + + Choose the quoting mechanism used by the application for identifiers in SQL code. + Escolha as áspas utilizadas pela aplicação para identificadores no código SQL. + + + + "Double quotes" - Standard SQL (recommended) + "Ãspas duplas" - SQL Padrão (recomendado) + + + + `Grave accents` - Traditional MySQL quotes + `Crases`- MySQL tradicional + + + + [Square brackets] - Traditional MS SQL Server quotes + [Colchetes] - MS SQL Server tradicional + + + + Keywords in &UPPER CASE + Palavras-chave em &CAIXA ALTA + + + + When set, the SQL keywords are completed in UPPER CASE letters. + Quando definido, as palavras-chave SQL serão completadas em CAIXA ALTA. + + + + When set, the SQL code lines that caused errors during the last execution are highlighted and the results frame indicates the error in the background + Quando definido, as linhas de código SQL que causaram erros durante a última execução são destacadas e os resultados indicam os erros no fundo + + + + Close button on tabs + Botão para fechar abas + + + + If enabled, SQL editor tabs will have a close button. In any case, you can use the contextual menu or the keyboard shortcut to close them. + Se ativado, as abas do editor de SQL terão um botão para fechá-las. De qualquer forma, você pode usar o menu de contexto ou o atalho de teclado para fechá-las. + + + + Proxy + Proxy + + + + Configure + Configurar + + + + Are you sure you want to clear all the saved settings? +All your preferences will be lost and default values will be used. + Você tem certeza que deseja limpar as configurações salvas? +Todas as suas preferências serão perdidas e os valores padrão serão utilizados. + + + + When enabled, the line breaks in the Schema column of the DB Structure tab, dock and printed output are removed. + Quando ativado, as quebras de linha na coluna Esquema da aba Estrutura do banco de dados e nas saídas impressas são removidas. + + + + <html><head/><body><p>SQLite provides an SQL function for loading extensions from a shared library file. Activate this if you want to use the <span style=" font-style:italic;">load_extension()</span> function from SQL code.</p><p>For security reasons, extension loading is turned off by default and must be enabled through this setting. You can always load extensions through the GUI, even though this option is disabled.</p></body></html> + <html><head/><body><p>SQLite provê uma função SQL para carregar extensões de um arquivo de biblioteca. Ative isso se você quer usar a função <span style=" font-style:italic;">load_extension()</span> a partir de código SQL.</p><p>Por motivos de segurança, carregamento de extensões é desabilitado por padrão e precisa ser habilitado através dessa configuração. Você sempre pode carregar extensões através da interface gráfica, mesmo com essa opção desabilitada.</p></body></html> + + + + Allow loading extensions from SQL code + Permitir o carregamento de extensões a partir de código SQL + + + + ProxyDialog + + + Proxy Configuration + Configuração do proxy + + + + Pro&xy Type + Tipo do pro&xy + + + + Host Na&me + No&me do host + + + + Port + Porta + + + + Authentication Re&quired + Au&tenticação necessária + + + + &User Name + Nome do &usuário + + + + Password + Senha + + + + None + Nenhum + + + + System settings + Configurações do sistema + + + + HTTP + HTTP + + + + Socks v5 + Socks v5 + + + + QObject + + + Error importing data + Erro importando dados + + + + from record number %1 + a partir de registro número %1 + + + + . +%1 + . +%1 + + + + Cancel + Cancelar + + + + All files (*) + Todos arquivos (*) + + + + Importing CSV file... + Importando arquivo CSV... + + + + SQLite database files (*.db *.sqlite *.sqlite3 *.db3) + Bancos de dados SQLite (*.db *.sqlite *.sqlite3 *.db3) + + + + Left + Esquerda + + + + Right + Direita + + + + Center + Centro + + + + Justify + Justificar + + + + SQLite Database Files (*.db *.sqlite *.sqlite3 *.db3) + Arquivos de banco de dados SQL (*.db *.sqlite *.sqlite3 *.db3) + + + + DB Browser for SQLite Project Files (*.sqbpro) + Arquivo de projeto DB Browser para SQLite (*.sqbpro) + + + + SQL Files (*.sql) + Arquivos SQL (*.sql) + + + + All Files (*) + Todos arquivos (*) + + + + Text Files (*.txt) + Arquivos de texto (*.txt) + + + + Comma-Separated Values Files (*.csv) + Arquivos de valores separados por vírgulas (*.csv) + + + + Tab-Separated Values Files (*.tsv) + Arquivos de valores separados por tabs (*.tsv) + + + + Delimiter-Separated Values Files (*.dsv) + Arquivos de valores separados por delimitadores (*.dsv) + + + + Concordance DAT files (*.dat) + Arquivos DAT Concordance (*.dat) + + + + JSON Files (*.json *.js) + Arquivos JSON (*.json) + + + + XML Files (*.xml) + Arquivos XML (*.xml) + + + + Binary Files (*.bin *.dat) + Arquivos binários (*.bin) + + + + SVG Files (*.svg) + Arquivos SVG (*.svg) + + + + Hex Dump Files (*.dat *.bin) + Arquivos de dump hexadecimal (*.dat *.bin) + + + + Extensions (*.so *.dylib *.dll) + Extensões (*.so *.dylib *.dll) + + + + RemoteCommitsModel + + + Commit ID + ID do commit + + + + Message + Mensagem + + + + Date + Data + + + + Author + Autor + + + + Size + Tamanho + + + + Authored and committed by %1 + Autorado e cometido por %1 + + + + Authored by %1, committed by %2 + Autorado por %1, cometido por %2 + + + + RemoteDatabase + + + Error opening local databases list. +%1 + Erro abrindo lista local de bancos de dados. +%1 + + + + Error creating local databases list. +%1 + Erro criando lista local de bancos de dados. +%1 + + + + RemoteDock + + + Remote + Remoto + + + + Local + Local + + + + Identity + Identidade + + + + Push currently opened database to server + Enviar o banco de dados aberto para o servidor + + + + DBHub.io + DBHub.io + + + + <html><head/><body><p>In this pane, remote databases from dbhub.io website can be added to DB Browser for SQLite. First you need an identity:</p><ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Login to the dbhub.io website (use your GitHub credentials or whatever you want)</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Click the button to &quot;Generate client certificate&quot; (that's your identity). That'll give you a certificate file (save it to your local disk).</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Go to the Remote tab in DB Browser for SQLite Preferences. Click the button to add a new certificate to DB Browser for SQLite and choose the just downloaded certificate file.</li></ol><p>Now the Remote panel shows your identity and you can add remote databases.</p></body></html> + <html><head/><body><p>Neste painel, bancos de dados remotos do dbhub.io podem ser adicionados ao DB Browser para SQLite. Primeiro você precisa adicionar uma identidade:</p><ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Entre no dbhub.io (use suas credenciais do GitHub ou algum outro método)</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Clique o botão &quot;Gerar certificado do cliente&quot; (essa é sua identidade). Isto te dará um certificado (salve-o no disco local).</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Vá para a aba Remoto nas configurações do DB Browser para SQLite. Clique no botão para adicionar um novo certificado ao DB Browser para SQLite e escolha o arquivo recém baixado.</li></ol><p>Agora o painel remoto mostra sua identidade e você pode adicionar bancos de dados remotos.</p></body></html> + + + + Current Database + Banco de dados atual + + + + Clone + Clonar + + + + User + Usuário + + + + Database + Banco de dados + + + + Branch + Ramo + + + + Commits + Commits + + + + Commits for + Commits para + + + + <html><head/><body><p>You are currently using a built-in, read-only identity. For uploading your database, you need to configure and use your DBHub.io account.</p><p>No DBHub.io account yet? <a href="https://dbhub.io/"><span style=" text-decoration: underline; color:#007af4;">Create one now</span></a> and import your certificate <a href="#preferences"><span style=" text-decoration: underline; color:#007af4;">here</span></a> to share your databases.</p><p>For online help visit <a href="https://dbhub.io/about"><span style=" text-decoration: underline; color:#007af4;">here</span></a>.</p></body></html> + <html><head/><body><p>Você está utilizando uma identidade somente leitura. Para fazer upload do seu banco de dados, você precisa configurar e usar a sua conta no DBHub.io.</p><p>Se você ainda não tem uma conta no DBHub, <a href="https://dbhub.io/"><span style=" text-decoration: underline; color:#007af4;">crie uma agora</span></a> e importe seu certificado <a href="#preferences"><span style=" text-decoration: underline; color:#007af4;">aqui</span></a> para compartilhar os seus bancos de dados.</p><p>Para ajuda online, visite <a href="https://dbhub.io/about"><span style=" text-decoration: underline; color:#007af4;">este link</span></a>.</p></body></html> + + + + Back + Voltar + + + + Delete Database + Deletar banco de dados + + + + Delete the local clone of this database + Deletar o clone local desse banco de dados + + + + Open in Web Browser + Abrir no navegador Web + + + + Open the web page for the current database in your browser + Abrir a página da Web do banco de dados atual no seu navegador + + + + Clone from Link + Clonar a partir de um link + + + + Use this to download a remote database for local editing using a URL as provided on the web page of the database. + Use isso para baixar um banco de dados remoto para edição local usando uma URL encontrada na página na Web do banco de dados. + + + + Refresh + Atualizar + + + + Reload all data and update the views + Recarregar todos os dados e atualizar as vistas + + + + F5 + + + + + Clone Database + Clonar banco de dados + + + + Open Database + Abrir banco de dados + + + + Open the local copy of this database + Abrir a cópia local desse banco de dados + + + + Check out Commit + Ver commit + + + + Download and open this specific commit + Baixar e abrir esse commit específico + + + + Check out Latest Commit + Ver último commit + + + + Check out the latest commit of the current branch + Ver último commit do ramo atual + + + + Save Revision to File + Salvar revisão em arquivo + + + + Saves the selected revision of the database to another file + Salva a revisão selecionada do banco de dados em outro arquivo + + + + Upload Database + Fazer upload do banco de dados + + + + Upload this database as a new commit + Fazer upload desse banco de dados como um novo commit + + + + Select an identity to connect + Selecione uma identidade para se conectar + + + + Public + Público + + + + This downloads a database from a remote server for local editing. +Please enter the URL to clone from. You can generate this URL by +clicking the 'Clone Database in DB4S' button on the web page +of the database. + Isso baixa um banco de dados de um servidor remoto para edição local. +Por favor ,entre a URL a partir da qual o clone será feito. Você pode gerar +essa URL clicando no botão 'Clone Database in DB4S' na página na Web +do banco de dados. + + + + Invalid URL: The host name does not match the host name of the current identity. + URL inválida: o nome do host não confere com o nome do host da identidade atual. + + + + Invalid URL: No branch name specified. + URL inválida: ramo não especificado. + + + + Invalid URL: No commit ID specified. + URL inválida: ID do commit não especificada. + + + + You have modified the local clone of the database. Fetching this commit overrides these local changes. +Are you sure you want to proceed? + Você modificou seu clone local do banco de dados. Obter esse commit sobrescreve essas mudanças locais. +Você tem certeza de que deseja continuar? + + + + The database has unsaved changes. Are you sure you want to push it before saving? + O banco de dados tem mudanças não salvas. Você tem certeza de que deseja fazer o push antes de salvar? + + + + The database you are trying to delete is currently opened. Please close it before deleting. + O banco de dados que você está tentando deletar está atualmente aberto. Por favor, feche-o antes de deletar. + + + + This deletes the local version of this database with all the changes you have not committed yet. Are you sure you want to delete this database? + Isso deleta a versão local desse banco de dados com todas as mudanças que você ainda não cometeu. Você tem certeza de que deseja deletar esse banco de dados? + + + + RemoteLocalFilesModel + + + Name + Nome + + + + Branch + Ramo + + + + Last modified + Última modificação + + + + Size + Tamanho + + + + Commit + Commit + + + + File + Arquivo + + + + RemoteModel + + + Name + Nome + + + + Last modified + Última modificação + + + + Size + Tamanho + + + + Size: + Tamanho: + + + + Last Modified: + Última modificação: + + + + Licence: + licença: + + + + Default Branch: + Ramo padrão: + + + + Commit + Commit + + + + RemoteNetwork + + + Choose a location to save the file + Escolha um lugar para salvar o arquivo + + + + Error opening remote file at %1. +%2 + Erro abrindo arquivo remoto em %1. +%2 + + + + Error: Invalid client certificate specified. + Erro: Certificado de cliente inválido especificado. + + + + Please enter the passphrase for this client certificate in order to authenticate. + Por favor entre a frase chave para esse certificado de cliente para se autenticar. + + + + Cancel + Cancelar + + + + Uploading remote database to +%1 + Enviando banco de dados remoto para +%1 + + + + Downloading remote database from +%1 + Baixando banco de dados remoto de +%1 + + + + + Error: The network is not accessible. + Erro: A rede não é acessível. + + + + Error: Cannot open the file for sending. + Erro: Não pôde abrir o arquivo para envio. + + + + RemotePushDialog + + + Push database + Enviar banco de dados + + + + Database na&me to push to + No&me do banco de dados para enviar + + + + Commit message + Mensagem de commit + + + + Username + Nome de usuário + + + + Database licence + Licença do banco de dados + + + + Public + Público + + + + Database will be public. Everyone has read access to it. + Banco de dados será público. Todos poderão lê-lo. + + + + Database will be private. Only you have access to it. + Banco de dados será privado. Somente você terá acesso a ele. + + + + Branch + Ramo + + + + Force push + Forçar envio + + + + Use with care. This can cause remote commits to be deleted. + Use com cuidado. Isso pode causar a perda de commits remotos. + + + + RunSql + + + Execution aborted by user + Execução abortada pelo usuário + + + + , %1 rows affected + , %1 linhas afetadas + + + + query executed successfully. Took %1ms%2 + consulta executada com sucesso. Levou %1ms%2 + + + + executing query + executando consulta + + + + SelectItemsPopup + + + A&vailable + &Disponível + + + + Sele&cted + &Selecionado + + + + SqlExecutionArea + + + Form + Formulário + + + + <html><head/><body><p>Results of the last executed statements.</p><p>You may want to collapse this panel and use the <span style=" font-style:italic;">SQL Log</span> dock with <span style=" font-style:italic;">User</span> selection instead.</p></body></html> + <html><head/><body><p>Resultados dos últimos comandos executados.</p><p>Você pode querer colapsar esse painel e usar o dock <span style=" font-style:italic;">Log SQL</span> com seleção <span style=" font-style:italic;">Usuário</span> em vez disso.</p></body></html> + + + + Results of the last executed statements + Resultados dos últimos comandos executados + + + + This field shows the results and status codes of the last executed statements. + Esse campo mostra os resultados e códigos de status dos últimos comandos executados. + + + + Find previous match [Shift+F3] + Encontrar resultado anterior [Shift+F3] + + + + Find previous match with wrapping + Encontrar resultado anterior com mapeamento + + + + Shift+F3 + + + + + The found pattern must be a whole word + O padrão encontrado precisa ser uma palavra inteira + + + + Whole Words + Palavras inteiras + + + + Text pattern to find considering the checks in this frame + Padrão de texto para encontrar considerando os testes nesse frame + + + + Find in editor + Encontrar no editor + + + + The found pattern must match in letter case + O padrão encontrado precisa casar em capitalização + + + + Case Sensitive + Sensível à capitalização + + + + Find next match [Enter, F3] + Encontrar próxima correspondência [Enter, F3] + + + + Find next match with wrapping + Encontrar próxima correspondência no arquivo inteiro + + + + F3 + + + + + Interpret search pattern as a regular expression + Interpretar padrão de busca como expressão regular + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + <html><head/><body><p>Quando assinalado, o padrão a ser buscado é interpretado como uma expressão regular UNIX. Veja <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression nos Wikibooks</a>.</p></body></html> + + + + Regular Expression + Expressão Regular + + + + + Close Find Bar + Fechar barra de busca + + + + Couldn't read file: %1. + Não pôde ler arquivo: %1. + + + + + Couldn't save file: %1. + Não pôde salvar arquivo: %1. + + + + Your changes will be lost when reloading it! + Suas modificações serão perdidas quando recarregando! + + + + The file "%1" was modified by another program. Do you want to reload it?%2 + O arquivo "%1" foi modificado por outro programa. Você quer recarregá-lo?%2 + + + + SqlTextEdit + + + Ctrl+/ + + + + + SqlUiLexer + + + (X) The abs(X) function returns the absolute value of the numeric argument X. + (X) A função abs(X) retorna o valor absoluto do argumento numérico X. + + + + () The changes() function returns the number of database rows that were changed or inserted or deleted by the most recently completed INSERT, DELETE, or UPDATE statement. + + + + + (X1,X2,...) The char(X1,X2,...,XN) function returns a string composed of characters having the unicode code point values of integers X1 through XN, respectively. + (X1,X2,...) The char(X1,X2,...,XN) function returns a string composed of characters having the unicode code point values of integers X1 through XN, respectively. + + + + (X,Y,...) The coalesce() function returns a copy of its first non-NULL argument, or NULL if all arguments are NULL + (X,Y,...) The coalesce() function returns a copy of its first non-NULL argument, or NULL if all arguments are NULL + + + + (X,Y) The glob(X,Y) function is equivalent to the expression "Y GLOB X". + (X,Y) The glob(X,Y) function is equivalent to the expression "Y GLOB X". + + + + (X,Y) The ifnull() function returns a copy of its first non-NULL argument, or NULL if both arguments are NULL. + (X,Y) The ifnull() function returns a copy of its first non-NULL argument, or NULL if both arguments are NULL. + + + + (X,Y) The instr(X,Y) function finds the first occurrence of string Y within string X and returns the number of prior characters plus 1, or 0 if Y is nowhere found within X. + (X,Y) The instr(X,Y) function finds the first occurrence of string Y within string X and returns the number of prior characters plus 1, or 0 if Y is nowhere found within X. + + + + (X) The hex() function interprets its argument as a BLOB and returns a string which is the upper-case hexadecimal rendering of the content of that blob. + (X) The hex() function interprets its argument as a BLOB and returns a string which is the upper-case hexadecimal rendering of the content of that blob. + + + + () The last_insert_rowid() function returns the ROWID of the last row insert from the database connection which invoked the function. + () The last_insert_rowid() function returns the ROWID of the last row insert from the database connection which invoked the function. + + + + (X) For a string value X, the length(X) function returns the number of characters (not bytes) in X prior to the first NUL character. + + + + + (X,Y) The like() function is used to implement the "Y LIKE X" expression. + + + + + (X,Y,Z) The like() function is used to implement the "Y LIKE X ESCAPE Z" expression. + + + + + (X) The lower(X) function returns a copy of string X with all ASCII characters converted to lower case. + + + + + (X) ltrim(X) removes spaces from the left side of X. + + + + + (X,Y) The ltrim(X,Y) function returns a string formed by removing any and all characters that appear in Y from the left side of X. + + + + + (X,Y,...) The multi-argument max() function returns the argument with the maximum value, or return NULL if any argument is NULL. + + + + + (X,Y,...) The multi-argument min() function returns the argument with the minimum value. + + + + + (X,Y) The nullif(X,Y) function returns its first argument if the arguments are different and NULL if the arguments are the same. + + + + + (FORMAT,...) The printf(FORMAT,...) SQL function works like the sqlite3_mprintf() C-language function and the printf() function from the standard C library. + + + + + (X) The quote(X) function returns the text of an SQL literal which is the value of its argument suitable for inclusion into an SQL statement. + + + + + () The random() function returns a pseudo-random integer between -9223372036854775808 and +9223372036854775807. + + + + + (N) The randomblob(N) function return an N-byte blob containing pseudo-random bytes. + + + + + (X,Y,Z) The replace(X,Y,Z) function returns a string formed by substituting string Z for every occurrence of string Y in string X. + + + + + (X) The round(X) function returns a floating-point value X rounded to zero digits to the right of the decimal point. + + + + + (X,Y) The round(X,Y) function returns a floating-point value X rounded to Y digits to the right of the decimal point. + + + + + (X) rtrim(X) removes spaces from the right side of X. + + + + + (X,Y) The rtrim(X,Y) function returns a string formed by removing any and all characters that appear in Y from the right side of X. + + + + + (X) The soundex(X) function returns a string that is the soundex encoding of the string X. + + + + + (X,Y) substr(X,Y) returns all characters through the end of the string X beginning with the Y-th. + + + + + (X,Y,Z) The substr(X,Y,Z) function returns a substring of input string X that begins with the Y-th character and which is Z characters long. + + + + + () The total_changes() function returns the number of row changes caused by INSERT, UPDATE or DELETE statements since the current database connection was opened. + + + + + (X) trim(X) removes spaces from both ends of X. + + + + + (X,Y) The trim(X,Y) function returns a string formed by removing any and all characters that appear in Y from both ends of X. + + + + + (X) The typeof(X) function returns a string that indicates the datatype of the expression X. + + + + + (X) The unicode(X) function returns the numeric unicode code point corresponding to the first character of the string X. + + + + + (X) The upper(X) function returns a copy of input string X in which all lower-case ASCII characters are converted to their upper-case equivalent. + + + + + (N) The zeroblob(N) function returns a BLOB consisting of N bytes of 0x00. + + + + + + + + (timestring,modifier,modifier,...) + + + + + (format,timestring,modifier,modifier,...) + + + + + (X) The avg() function returns the average value of all non-NULL X within a group. + + + + + (X) The count(X) function returns a count of the number of times that X is not NULL in a group. + + + + + (X) The group_concat() function returns a string which is the concatenation of all non-NULL values of X. + + + + + (X,Y) The group_concat() function returns a string which is the concatenation of all non-NULL values of X. If parameter Y is present then it is used as the separator between instances of X. + + + + + (X) The max() aggregate function returns the maximum value of all values in the group. + + + + + (X) The min() aggregate function returns the minimum non-NULL value of all values in the group. + + + + + + (X) The sum() and total() aggregate functions return sum of all non-NULL values in the group. + + + + + () The number of the row within the current partition. Rows are numbered starting from 1 in the order defined by the ORDER BY clause in the window definition, or in arbitrary order otherwise. + () O número de linhas dentro da partição atual. Linhas são numeradas de 1 na ordem definida pela cláusula ORDER BY na definição da janela, ou de forma arbitrária. + + + + () The row_number() of the first peer in each group - the rank of the current row with gaps. If there is no ORDER BY clause, then all rows are considered peers and this function always returns 1. + () O row_number() do primeiro elemento de cada grupo - o rank da linha atual com gaps. Se não há uma cláusula ORDER BY, então todas as linhas são consideradas elementos e essa função sempre retorna 1. + + + + () The number of the current row's peer group within its partition - the rank of the current row without gaps. Partitions are numbered starting from 1 in the order defined by the ORDER BY clause in the window definition. If there is no ORDER BY clause, then all rows are considered peers and this function always returns 1. + () O número do grupo de colegas da linha atual dentro da sua partição - o rank da linha atual sem intervalos. Partições são numeradas a partir de 1 na ordem definida pela cláusula ORDER BY na definição. Se não há ORDER BY, então todas as linhas são consideradas colegas e essa função sempre retorna 1. + + + + () Despite the name, this function always returns a value between 0.0 and 1.0 equal to (rank - 1)/(partition-rows - 1), where rank is the value returned by built-in window function rank() and partition-rows is the total number of rows in the partition. If the partition contains only one row, this function returns 0.0. + () Apesar do nome, essa função sempre retorna um valor entre 0.0 e 1.0 igual a (rank - 1)/(linhas-na-partição - 1), onde rank é o valor retornado pela built-in rank() e linhas-na-partição é o número total de linhas na partição. Se a partição contém somente uma linha, essa função retorna 0. + + + + () The cumulative distribution. Calculated as row-number/partition-rows, where row-number is the value returned by row_number() for the last peer in the group and partition-rows the number of rows in the partition. + () A distribuição cumulativa. Calculada como número-da-linha/linhas-na-partição em que número-da-linha é o valor retornado por row_number() para o último elemento do grupo e linhas-na-partição é o número de linhas na partição. + + + + (N) Argument N is handled as an integer. This function divides the partition into N groups as evenly as possible and assigns an integer between 1 and N to each group, in the order defined by the ORDER BY clause, or in arbitrary order otherwise. If necessary, larger groups occur first. This function returns the integer value assigned to the group that the current row is a part of. + (N) Argumento N é interpretado como um inteiro. Essa função divide a partição em N grupos tão igualmente como possível e atribui um inteiro entre 1 e N para cada grupo, na ordem definida pela cláusula ORDER BY, ou em ordem arbitrária. Se necessário, grupos maiores ocorrem primeiro. Essa função retorna o valor inteiro atribuido ao grupo que a linha atual é parte de. + + + + (expr) Returns the result of evaluating expression expr against the previous row in the partition. Or, if there is no previous row (because the current row is the first), NULL. + (expr) Retorna o resultado de avaliar expressão expr contra a linha anterior na partição. Ou, se não há linha anterior, NULL. + + + + (expr,offset) If the offset argument is provided, then it must be a non-negative integer. In this case the value returned is the result of evaluating expr against the row offset rows before the current row within the partition. If offset is 0, then expr is evaluated against the current row. If there is no row offset rows before the current row, NULL is returned. + (expr,offset) Se o offset é fornecido, então ele precisa ser um inteiro não-negativo. Nesse caso, o valor retornado é o resultado de avaliar expr contra a linha offset linhas antes da linha atual dentro da partição. Se offset é 0, então expr é avaliada contra a linha atual. Se não há linha offset linhas antes da linha atual, NULL é retornado. + + + + + (expr,offset,default) If default is also provided, then it is returned instead of NULL if the row identified by offset does not exist. + (expr,offset,default) Se default também é fornecido, ele é retornado em vez de NULL se a linha identificada por offset não existe. + + + + (expr) Returns the result of evaluating expression expr against the next row in the partition. Or, if there is no next row (because the current row is the last), NULL. + (expr) Retorna o resultado de avaliar a expressão expr contra a próxima linha na partição. Ou, se não há próxima linha, NULL. + + + + (expr,offset) If the offset argument is provided, then it must be a non-negative integer. In this case the value returned is the result of evaluating expr against the row offset rows after the current row within the partition. If offset is 0, then expr is evaluated against the current row. If there is no row offset rows after the current row, NULL is returned. + (expr,offset) Se o offset é fornecido, então ele precisa ser um inteiro não-negativo. Nesse caso, o valor retornado é o resultado de avaliar expr contra a linha offset linhas após a linha atual dentro da partição. Se offset é 0, então expr é avaliada contra a linha atual. Se não há linha offset linhas após a linha atual, NULL é retornado. + + + + (expr) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the first row in the window frame for each row. + (expr) Essa função de janela built-in calcula o frame da janela para cada linha na mesma forma que uma função de janela agregada. Ela retorna o valor de expr avaliada contra a primeira linha do frame da janela para cada linha. + + + + (expr) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the last row in the window frame for each row. + (expr) Essa função de janela built-in calcula o frame da janela para cada linha na mesma forma que uma função de janela agregada. Ela retorna o valor de expr avaliada contra a última linha do frame da janela para cada linha. + + + + (expr,N) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the row N of the window frame. Rows are numbered within the window frame starting from 1 in the order defined by the ORDER BY clause if one is present, or in arbitrary order otherwise. If there is no Nth row in the partition, then NULL is returned. + (expr) Essa função de janela built-in calcula o frame da janela para cada linha na mesma forma que uma função de janela agregada. Ela retorna o valor de expr avaliada contra a linha N do frame da janela para cada linha.Linhas são numeradas dentro do frame da janela começando em 1 na ordem definida pela cláusula ORDER BY se uma está presente, ou em ordem arbitrária, caso contrário. Se não há uma N-ésima linha na partição, NULL é retornado. + + + + (X) The load_extension(X) function loads SQLite extensions out of the shared library file named X. +Use of this function must be authorized from Preferences. + (X) A função load_extension(X) carrega extensões para SQLite a partir de um arquivo chamado X. +Uso dessa função precisa ser autorizado em Preferências. + + + + (X,Y) The load_extension(X) function loads SQLite extensions out of the shared library file named X using the entry point Y. +Use of this function must be authorized from Preferences. + (X,Y) A função load_extension(X) carrega extensões para SQLite a partir de um arquivo chamado X usando o ponto de entrada Y. +Uso dessa função precisa ser autorizado em Preferências. + + + + SqliteTableModel + + + Error changing data: +%1 + Erro modificando dados: +%1 + + + + reading rows + lendo linhas + + + + loading... + carregando... + + + + References %1(%2) +Hold %3Shift and click to jump there + Referencia %1(%2) +Segure %3Shift e clique para ir para lá + + + + retrieving list of columns + obtendo lista de colunas + + + + Fetching data... + Obtendo dados... + + + + + Cancel + Cancelar + + + + TableBrowser + + + Browse Data + Navegar dados + + + + &Table: + &Tabela: + + + + Select a table to browse data + Selecione uma tabela para navegar + + + + Use this list to select a table to be displayed in the database view + Use esta lista para selecionar uma tabela para ser exibida na vista do banco de dados + + + + This is the database table view. You can do the following actions: + - Start writing for editing inline the value. + - Double-click any record to edit its contents in the cell editor window. + - Alt+Del for deleting the cell content to NULL. + - Ctrl+" for duplicating the current record. + - Ctrl+' for copying the value from the cell above. + - Standard selection and copy/paste operations. + Essa é a vista de tabela do banco de dados. Você pode fazer as seguintes ações: + - Começar a escrever para editar o valor. + - Clicar duas vezes em qualquer registro para editar seus conteúdos no editor de célula. + - Alt+Del para deletar o conteúdo da célula para NULL. + - Ctrl+" para duplicar o registro atual. + - Ctrl+' para copiar o valor da célula de cima. + - Seleção normal para copiar e colar. + + + + Text pattern to find considering the checks in this frame + Padrão de texto para encontrar considerando os testes nesse frame + + + + Find in table + Encontrar na tabela + + + + Find previous match [Shift+F3] + Encontrar resultado anterior [Shift+F3] + + + + Find previous match with wrapping + Encontrar resultado anterior com mapeamento + + + + Shift+F3 + + + + + Find next match [Enter, F3] + Encontrar próxima correspondência [Enter, F3] + + + + Find next match with wrapping + Encontrar próxima correspondência com quebra de linha + + + + F3 + + + + + The found pattern must match in letter case + O padrão encontrado precisa casar em capitalização + + + + Case Sensitive + Sensível à capitalização + + + + The found pattern must be a whole word + O padrão encontrado precisa ser uma palavra inteira + + + + Whole Cell + Célula inteira + + + + Interpret search pattern as a regular expression + Interpretar padrão de busca como expressão regular + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + <html><head/><body><p>Quando marcado, o padrão para ser encontrado é interpretado como uma expressão regular do UNIX. Veja <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + + + + Regular Expression + Expressão regular + + + + + Close Find Bar + Fechar barra de busca + + + + Text to replace with + Texto para substituir com + + + + Replace with + Substituir com + + + + Replace next match + Substituir próxima correspondência + + + + + Replace + Substituir + + + + Replace all matches + Substituir todas as correspondências + + + + Replace all + Substituir todos + + + + <html><head/><body><p>Scroll to the beginning</p></body></html> + <html><head/><body><p>Rolar para o começo</p></body></html> + + + + <html><head/><body><p>Clicking this button navigates to the beginning in the table view above.</p></body></html> + <html><head/><body><p>Clicar nesse botão navega até o começo da vista de tabela acima.</p></body></html> + + + + |< + |< + + + + Scroll one page upwards + Rolar uma página para cima + + + + <html><head/><body><p>Clicking this button navigates one page of records upwards in the table view above.</p></body></html> + <html><head/><body><p>Clicando nesse botão navega uma página de registros para cima.</p></body></html> + + + + < + < + + + + 0 - 0 of 0 + 0 - 0 de 0 + + + + Scroll one page downwards + Rolar uma página para baixo + + + + <html><head/><body><p>Clicking this button navigates one page of records downwards in the table view above.</p></body></html> + <html><head/><body><p>Clicando nesse botão navega uma página de registros para baixo.</p></body></html> + + + + > + > + + + + Scroll to the end + Rolar para o fim + + + + <html><head/><body><p>Clicking this button navigates up to the end in the table view above.</p></body></html> + <html><head/><body><p>Clicar nesse botão navega para o fim da tabela acima.</p></body></html> + + + + >| + >| + + + + <html><head/><body><p>Click here to jump to the specified record</p></body></html> + <html><head/><body><p>Clique aqui para pular para o registro especificado</p></body></html> + + + + <html><head/><body><p>This button is used to navigate to the record number specified in the Go to area.</p></body></html> + <html><head/><body><p>Esse botão navega para o registro especificado na área Ir para.</p></body></html> + + + + Go to: + Ir para: + + + + Enter record number to browse + Entre o número do registro para navegar + + + + Type a record number in this area and click the Go to: button to display the record in the database view + Digite o número de um registro nessa área e clique no botão Ir para: para exibir o registro na vista do banco de dados + + + + 1 + 1 + + + + Show rowid column + Mostrar coluna rowid + + + + Toggle the visibility of the rowid column + Alternar a visibilidade da coluna rowid + + + + Unlock view editing + Liberar edição da vista + + + + This unlocks the current view for editing. However, you will need appropriate triggers for editing. + Isso libera a vista atual para edição. Todavia, você vai precisar dos gatilhos apropriados para editar. + + + + Edit display format + Editar formato de exibição + + + + Edit the display format of the data in this column + Editar o formato de exibição dos dados nessa coluna + + + + + New Record + Novo registro + + + + + Insert a new record in the current table + Inserir um novo registro na tabela atual + + + + <html><head/><body><p>This button creates a new record in the database. Hold the mouse button to open a pop-up menu of different options:</p><ul><li><span style=" font-weight:600;">New Record</span>: insert a new record with default values in the database.</li><li><span style=" font-weight:600;">Insert Values...</span>: open a dialog for entering values before they are inserted in the database. This allows to enter values acomplishing the different constraints. This dialog is also open if the <span style=" font-weight:600;">New Record</span> option fails due to these constraints.</li></ul></body></html> + <html><head/><body><p>Esse botão cria um novo registro no banco de dados. Segure o botão do mouse para abrir um menu de opções diferentes:</p><ul><li><span style=" font-weight:600;">Novo Registro</span>: insere um novo registro com valores padrão no banco de dados.</li><li><span style=" font-weight:600;">Inserir Valores...</span>: abre um diálogo para novos valores antes de serem inseridos no banco de dados. Isso permite a entrada de valores de acordo com as restrições. Esse diálogo também é abaerto se a opção<span style=" font-weight:600;">Novo Registro</span> falha devido a essas restrições.</li></ul></body></html> + + + + + Delete Record + Deletar registro + + + + Delete the current record + Deletar o registro atual + + + + + This button deletes the record or records currently selected in the table + Esse botão deleta o registro ou registros selecionados + + + + + Insert new record using default values in browsed table + Inserir novo registro usando valores padrão na tabela + + + + Insert Values... + Inserir valores... + + + + + Open a dialog for inserting values in a new record + Abre um diálogo para inserir valores em um novo registro + + + + Export to &CSV + Exportar para &CSV + + + + + Export the filtered data to CSV + Exportar dados filtrados para CSV + + + + This button exports the data of the browsed table as currently displayed (after filters, display formats and order column) as a CSV file. + Esse botão exporta os dados da tabela como atualmente exibidos como um arquivo CSV. + + + + Save as &view + Salvar como &vista + + + + + Save the current filter, sort column and display formats as a view + Salva o filtro, ordenação e formato como uma vista + + + + This button saves the current setting of the browsed table (filters, display formats and order column) as an SQL view that you can later browse or use in SQL statements. + Esse botão salva as configurações da tabela exibida como uma vista SQL que você pode utilizar em comandos SQL depois. + + + + Save Table As... + Salvar tabela como... + + + + + Save the table as currently displayed + Salva a tabela como atualmente exibida + + + + <html><head/><body><p>This popup menu provides the following options applying to the currently browsed and filtered table:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Export to CSV: this option exports the data of the browsed table as currently displayed (after filters, display formats and order column) to a CSV file.</li><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Save as view: this option saves the current setting of the browsed table (filters, display formats and order column) as an SQL view that you can later browse or use in SQL statements.</li></ul></body></html> + <html><head/><body><p>Esse Menu provê as seguintes opções para a tabela atual:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Exportar para CSV: essa opção exporta os dados como estão exibidos para um arquivo CSV.</li><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Salvar como vista: essa opção salva a configuração atual da tabela como uma vista SQL que você depois pode consultar em comandos SQL.</li></ul></body></html> + + + + Hide column(s) + Ocultar coluna(s) + + + + Hide selected column(s) + Ocultar coluna(s) selecionada(s) + + + + Show all columns + Mostrar todas as colunas + + + + Show all columns that were hidden + Mostrar todas as colunas ocultas + + + + + Set encoding + Definir codificação + + + + Change the encoding of the text in the table cells + Modificar a codificação do texto nas células da tabela + + + + Set encoding for all tables + Modificar codificação para todas as tabelas + + + + Change the default encoding assumed for all tables in the database + Modificar a codificação padrão assumida para todas as tabelas no banco de dados + + + + Clear Filters + Limpar filtros + + + + Clear all filters + Limpar todos os filtros + + + + + This button clears all the filters set in the header input fields for the currently browsed table. + Esse botão limpa todos os filtros definidos no cabeçalho para a tabela atualmente navegada. + + + + Clear Sorting + Limpar ordenamento + + + + Reset the order of rows to the default + Resetar a ordem das linhas para o padrão + + + + + This button clears the sorting columns specified for the currently browsed table and returns to the default order. + Esse botão limpa o ordenamento especificado para a tabela atual e volta para a ordem padrão. + + + + Print + Imprimir + + + + Print currently browsed table data + Imprimir dados da tabela atual + + + + Print currently browsed table data. Print selection if more than one cell is selected. + Imprimir dados da tabela atual. Imprime a seleção se mais de uma célula está selecionada. + + + + Ctrl+P + + + + + Refresh + Atualizar + + + + Refresh the data in the selected table + Atualizar os dados na tabela selecionada + + + + This button refreshes the data in the currently selected table. + Este botão atualiza os dados na tabela atualmente selecionada. + + + + F5 + + + + + Find in cells + Encontrar em células + + + + Open the find tool bar which allows you to search for values in the table view below. + Abre a barra de ferramentas para buscar que permite que você busque por valores na vista da tabela abaixo. + + + + + Bold + Negrito + + + + Ctrl+B + + + + + + Italic + Itálico + + + + + Underline + Sublinhado + + + + Ctrl+U + + + + + + Align Right + Alinhar à direita + + + + + Align Left + Alinhar à esquerda + + + + + Center Horizontally + Centralizar horizontalmente + + + + + Justify + Justificar + + + + + Edit Conditional Formats... + Editar formatos condicionais... + + + + Edit conditional formats for the current column + Editar os formatos condicionais para a coluna atual + + + + Clear Format + Limpar formato + + + + Clear All Formats + Limpar todos os formatos + + + + + Clear all cell formatting from selected cells and all conditional formats from selected columns + Limpa toda a formatação das células selecionadas e todos os formatos condicionais das colunas selecionadas + + + + + Font Color + Cor do texto + + + + + Background Color + Cor do plano de fundo + + + + Toggle Format Toolbar + Alterar barra de ferramentas de formatação + + + + Show/hide format toolbar + Mostrar/esconder barra de ferramentas de formatação + + + + + This button shows or hides the formatting toolbar of the Data Browser + Esse botão mostra ou esconde a barra de ferramentas de formatação do navegador de dados + + + + Select column + Selecionar coluna + + + + Ctrl+Space + + + + + Replace text in cells + Substituir texto em células + + + + Filter in any column + Filtrar em qualquer coluna + + + + Ctrl+R + + + + + %n row(s) + + %n linha(s) + %n linhas + + + + + , %n column(s) + + , %n coluna(s) + , %n colunas + + + + + . Sum: %1; Average: %2; Min: %3; Max: %4 + . Soma: %1; Média: %2; Mínimo: %3; Máximo: %4 + + + + Conditional formats for "%1" + Formatos condicionais para "%1" + + + + determining row count... + determinando número de linhas... + + + + %1 - %2 of >= %3 + %1 - %2 de >= %3 + + + + %1 - %2 of %3 + %1 - %2 de %3 + + + + Please enter a pseudo-primary key in order to enable editing on this view. This should be the name of a unique column in the view. + Por favor, entre uma pseudo-chave primária para habilitar edição nessa vista. Isso deveria ser o nome de uma coluna única na vista. + + + + Delete Records + Deletar registros + + + + Duplicate records + Duplicar registros + + + + Duplicate record + Duplicar registro + + + + Ctrl+" + + + + + Adjust rows to contents + Ajustar linhas aos conteúdos + + + + Error deleting record: +%1 + Erro deletando registro: +%1 + + + + Please select a record first + Por favor, selecione um registro primeiro + + + + There is no filter set for this table. View will not be created. + Não há filtro para essa tabela. Vista não será criada. + + + + Please choose a new encoding for all tables. + Por favor, escolha uma nova codificação para todas tabelas. + + + + Please choose a new encoding for this table. + Por favor, escolha uma nova codificação para essa tabela. + + + + %1 +Leave the field empty for using the database encoding. + %1 +Deixe o campo em branco para usar a codificação do banco de dados. + + + + This encoding is either not valid or not supported. + Essa codificação é inválida ou não suportada. + + + + %1 replacement(s) made. + %1 substituição(ões) feita(s). + + + + VacuumDialog + + + Compact Database + Compactar banco de dados + + + + Warning: Compacting the database will commit all of your changes. + Alerta: compactando o banco de dados irá confirmar todas as suas modificações. + + + + Please select the databases to co&mpact: + Por favor selecione o banco de dados para co&mpactar: + + + diff --git a/ConfigFiles/translations/sqlb_ru.qm b/ConfigFiles/translations/sqlb_ru.qm new file mode 100644 index 0000000000000000000000000000000000000000..37b587aae6db2874293a61002e1c1a80a682cdac GIT binary patch literal 177150 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

    r(eu1Lzq{I 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 + + + + AboutDialog + + + About DB Browser for SQLite + О программе Обозреватель Ð´Ð»Ñ SQLite + + + + Version + ВерÑÐ¸Ñ + + + + <html><head/><body><p>DB Browser for SQLite is an open source, freeware visual tool used to create, design and edit SQLite database files.</p><p>It is bi-licensed under the Mozilla Public License Version 2, as well as the GNU General Public License Version 3 or later. You can modify or redistribute it under the conditions of these licenses.</p><p>See <a href="http://www.gnu.org/licenses/gpl.html">http://www.gnu.org/licenses/gpl.html</a> and <a href="https://www.mozilla.org/MPL/2.0/index.txt">https://www.mozilla.org/MPL/2.0/index.txt</a> for details.</p><p>For more information on this program please visit our website at: <a href="http://sqlitebrowser.org">http://sqlitebrowser.org</a></p><p><span style=" font-size:small;">This software uses the GPL/LGPL Qt Toolkit from </span><a href="http://qt-project.org/"><span style=" font-size:small;">http://qt-project.org/</span></a><span style=" font-size:small;"><br/>See </span><a href="http://qt-project.org/doc/qt-5/licensing.html"><span style=" font-size:small;">http://qt-project.org/doc/qt-5/licensing.html</span></a><span style=" font-size:small;"> for licensing terms and information.</span></p><p><span style=" font-size:small;">It also uses the Silk icon set by Mark James licensed under a Creative Commons Attribution 2.5 and 3.0 license.<br/>See </span><a href="http://www.famfamfam.com/lab/icons/silk/"><span style=" font-size:small;">http://www.famfamfam.com/lab/icons/silk/</span></a><span style=" font-size:small;"> for details.</span></p></body></html> + <html><head/><body><p>Обозреватель Ð´Ð»Ñ SQLite - Ñто беÑÐ¿Ð»Ð°Ñ‚Ð½Ð°Ñ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¼Ð°, Ñ Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚Ñ‹Ð¼ иÑходным кодом, Ð¿Ñ€ÐµÐ´Ð½Ð°Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ð°Ñ Ð´Ð»Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð¸ Ñ€ÐµÐ´Ð°ÐºÑ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð±Ð°Ð· данных SQLite.</p><p>Программа лицензирована по двум лицензиÑм: Mozilla Public License Version 2 и GNU General Public License Version 3 or later. Можно изменÑть или раÑпроÑтранÑть её на уÑловиÑÑ… Ñтих лицензий.</p><p>Лицензии можно проÑмотреть по ÑÑылкам <a href="http://www.gnu.org/licenses/gpl.html"><span style=" text-decoration: underline; color:#0000ff;">http://www.gnu.org/licenses/gpl.html</span></a> и <a href="https://www.mozilla.org/MPL/2.0/index.txt"><span style=" text-decoration: underline; color:#0000ff;">https://www.mozilla.org/MPL/2.0/index.txt</span></a>.</p><p>Дополнительную информацию о программе можно узнать на веб-Ñайте:<br/><a href="https://sqlitebrowser.org"><span style=" text-decoration: underline; color:#0000ff;">https://sqlitebrowser.org</span></a></p><p><span style=" font-size:small;">Это программное обеÑпечение иÑпользует GPL/LGPL Qt Toolkit </span><a href="http://qt-project.org/"><span style=" font-size:small; text-decoration: underline; color:#0000ff;">http://qt-project.org/</span></a><span style=" font-size:small;"><br/>УÑÐ»Ð¾Ð²Ð¸Ñ Ð»Ð¸Ñ†ÐµÐ½Ð·Ð¸Ð¸ на Qt Toolkit </span><a href="http://qt-project.org/doc/qt-5/licensing.html"><span style=" font-size:small; text-decoration: underline; color:#0000ff;">http://qt-project.org/doc/qt-5/licensing.html</span></a><span style=" font-size:small;">.</span></p><p><span style=" font-size:small;">Эта программа также иÑпользует набор иконок Silk от Марка ДжеймÑа (Mark James), лицензированный под лицензией Creative Commons Attribution 2.5 and 3.0.<br/>ÐŸÐ¾Ð´Ñ€Ð¾Ð±Ð½Ð°Ñ Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð¿Ð¾ адреÑу </span><a href="http://www.famfamfam.com/lab/icons/silk/"><span style=" font-size:small; text-decoration: underline; color:#0000ff;">http://www.famfamfam.com/lab/icons/silk/</span></a><span style=" font-size:small;">.</span></p></body></html> + + + + AddRecordDialog + + + Add New Record + Добавить Ðовую ЗапиÑÑŒ + + + + Enter values for the new record considering constraints. Fields in bold are mandatory. + Введите Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð´Ð»Ñ Ð½Ð¾Ð²Ð¾Ð¹ запиÑи Ñ ÑƒÑ‡ÐµÑ‚Ð¾Ð¼ ограничений. ПолÑ, выделенные жирным шрифтом, ÑвлÑÑŽÑ‚ÑÑ Ð¾Ð±Ñзательными. + + + + In the Value column you can specify the value for the field identified in the Name column. The Type column indicates the type of the field. Default values are displayed in the same style as NULL values. + Ð’ Ñтолбце "Значение" вы можете указать значение Ð´Ð»Ñ Ð¿Ð¾Ð»Ñ, указанного в Ñтолбце "ИмÑ". Ð’ Ñтолбце "Тип" указываетÑÑ Ñ‚Ð¸Ð¿ полÑ. Ð—Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð¿Ð¾ умолчанию отображаютÑÑ Ð² том же Ñтиле, что и Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ NULL. + + + + Name + Ð˜Ð¼Ñ + + + + Type + Тип + + + + Value + Значение + + + + Values to insert. Pre-filled default values are inserted automatically unless they are changed. + Ð—Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð´Ð»Ñ Ð²Ñтавки. Предварительно заполненные Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð¿Ð¾ умолчанию вÑтавлÑÑŽÑ‚ÑÑ Ð°Ð²Ñ‚Ð¾Ð¼Ð°Ñ‚Ð¸Ñ‡ÐµÑки, еÑли они не изменены. + + + + When you edit the values in the upper frame, the SQL query for inserting this new record is shown here. You can edit manually the query before saving. + Когда вы редактируете Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð² верхнем фрейме, здеÑÑŒ отображаетÑÑ Ð·Ð°Ð¿Ñ€Ð¾Ñ SQL Ð´Ð»Ñ Ð²Ñтавки Ñтой новой запиÑи. Ð’Ñ‹ можете вручную отредактировать Ð·Ð°Ð¿Ñ€Ð¾Ñ Ð¿ÐµÑ€ÐµÐ´ Ñохранением. + + + + <html><head/><body><p><span style=" font-weight:600;">Save</span> will submit the shown SQL statement to the database for inserting the new record.</p><p><span style=" font-weight:600;">Restore Defaults</span> will restore the initial values in the <span style=" font-weight:600;">Value</span> column.</p><p><span style=" font-weight:600;">Cancel</span> will close this dialog without executing the query.</p></body></html> + <html><head/><body><p><span style=" font-weight:600;">Сохранение</span> отправит показанный оператор SQL в БД Ð´Ð»Ñ Ð²Ñтавки новой запиÑи.</p><p><span style=" font-weight:600;">ВоÑÑтановить Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð¿Ð¾ умолчанию</span> воÑÑтановит иÑходные Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð² колонке <span style=" font-weight:600;">Значение</span>.</p><p><span style=" font-weight:600;">Отмена</span> закрывает Ñтот диалог без Ð²Ñ‹Ð¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ Ð·Ð°Ð¿Ñ€Ð¾Ñов.</p></body></html> + + + + Auto-increment + + Ðвто-увеличение + + + + + Unique constraint + + УникальноÑÑŒ + + + + + Check constraint: %1 + + Проверка: %1 + + + + + Foreign key: %1 + + Внешний ключ: %1 + + + + + Default value: %1 + + Значение по умолчанию: %1 + + + + + Error adding record. Message from database engine: + +%1 + Ошибка Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð·Ð°Ð¿Ð¸Ñи. Сообщение из базы данных: + +%1 + + + + Are you sure you want to restore all the entered values to their defaults? + Ð’Ñ‹ дейÑтвительно хотите воÑÑтановить вÑе введенные Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð¿Ð¾ умолчанию? + + + + Application + + + Possible command line arguments: + + + + + Usage: %1 [options] [<database>|<project>] + + + + + + -h, --help Show command line options + + + + + -q, --quit Exit application after running scripts + + + + + -s, --sql <file> Execute this SQL file after opening the DB + + + + + -t, --table <table> Browse this table after opening the DB + + + + + -R, --read-only Open database in read-only mode + + + + + -o, --option <group>/<setting>=<value> + + + + + Run application with this setting temporarily set to value + + + + + -O, --save-option <group>/<setting>=<value> + + + + + Run application saving this value for this setting + + + + + -v, --version Display the current version + + + + + <database> Open this SQLite database + + + + + <project> Open this project file (*.sqbpro) + + + + + The -s/--sql option requires an argument + + + + + The file %1 does not exist + + + + + The -t/--table option requires an argument + + + + + The -o/--option and -O/--save-option options require an argument in the form group/setting=value + + + + + Invalid option/non-existant file: %1 + + + + + SQLite Version + ВерÑÐ¸Ñ SQLite + + + + SQLCipher Version %1 (based on SQLite %2) + + + + + DB Browser for SQLite Version %1. + + + + + Built for %1, running on %2 + + + + + Qt Version %1 + + + + + CipherDialog + + + SQLCipher encryption + Шифрование SQLCipher + + + + &Password + &Пароль + + + + &Reenter password + Пароль &ещё раз + + + + Encr&yption settings + + + + + SQLCipher &3 defaults + + + + + SQLCipher &4 defaults + + + + + Custo&m + + + + + Page si&ze + Размер &Ñтраницы + + + + &KDF iterations + + + + + HMAC algorithm + + + + + KDF algorithm + + + + + Plaintext Header Size + + + + + Passphrase + Фраза + + + + Raw key + Ключ + + + + Please set a key to encrypt the database. +Note that if you change any of the other, optional, settings you'll need to re-enter them as well every time you open the database file. +Leave the password fields empty to disable the encryption. +The encryption process might take some time and you should have a backup copy of your database! Unsaved changes are applied before modifying the encryption. + ПожалуйÑта укажите ключ шифрованиÑ. +ЕÑли вы измените какую-либо опциональную наÑтройку, то ее нужно будет вводить при каждом открытии Ñтого файла базы данных. +ОÑтавьте пароль пуÑтым еÑли шифрование не требуетÑÑ. +ПроцеÑÑ Ð¼Ð¾Ð¶ÐµÑ‚ занÑть некоторое Ð²Ñ€ÐµÐ¼Ñ Ð¸ наÑтоÑтельно рекомендуем Ñоздать резервную копию перед продолжением! Ðе Ñохраненные Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð°Ð²Ñ‚Ð¾Ð¼Ð°Ñ‚Ð¸Ñ‡ÐµÑки будут Ñохранены. + + + + Please enter the key used to encrypt the database. +If any of the other settings were altered for this database file you need to provide this information as well. + ПожалуйÑта введите ключ Ð´Ð»Ñ ÑˆÐ¸Ñ„Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð±Ð°Ð·Ñ‹ данных. +ЕÑли любые другие наÑтройки были изменены Ð´Ð»Ñ Ð´Ð°Ð½Ð½Ð¾Ð¹ базы данный то нужно так же предоÑтавить данную информацию. + + + + ColumnDisplayFormatDialog + + + Choose display format + Выберите формат Ð¾Ñ‚Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð¸Ñ + + + + Display format + Формат Ð¾Ñ‚Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð¸Ñ + + + + Choose a display format for the column '%1' which is applied to each value prior to showing it. + Выберите формат Ð¾Ñ‚Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð¸Ñ Ð´Ð»Ñ ÐºÐ¾Ð»Ð¾Ð½ÐºÐ¸ '%1', который будет применен к каждому ее значению. + + + + Default + По умолчанию + + + + Decimal number + ДеÑÑтичное чиÑло + + + + Exponent notation + ЭкÑÐ¿Ð¾Ð½ÐµÐ½Ñ†Ð¸Ð°Ð»ÑŒÐ½Ð°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ + + + + Hex blob + Бинарные данные + + + + Hex number + ШеÑтнадцатеричное чиÑло + + + + Apple NSDate to date + Apple NSDate дата + + + + Java epoch (milliseconds) to date + Java epoch дата + + + + .NET DateTime.Ticks to date + + + + + Julian day to date + ЮлианÑÐºÐ°Ñ Ð´Ð°Ñ‚Ð° + + + + Unix epoch to local time + Unix-Ð²Ñ€ÐµÐ¼Ñ + + + + Date as dd/mm/yyyy + Дата в формате дд/мм/гггг + + + + Lower case + Ðижний региÑтр + + + + Custom display format must contain a function call applied to %1 + + + + + Error in custom display format. Message from database engine: + +%1 + + + + + Custom display format must return only one column but it returned %1. + + + + + Octal number + ВоÑьмеричное чиÑло + + + + Round number + Округленное чиÑло + + + + Unix epoch to date + Unix-дата + + + + Upper case + Верхний региÑтр + + + + Windows DATE to date + Windows дата + + + + Custom + Мой формат + + + + CondFormatManager + + + Conditional Format Manager + + + + + This dialog allows creating and editing conditional formats. Each cell style will be selected by the first accomplished condition for that cell data. Conditional formats can be moved up and down, where those at higher rows take precedence over those at lower. Syntax for conditions is the same as for filters and an empty condition applies to all values. + + + + + Add new conditional format + + + + + &Add + &Добавить + + + + Remove selected conditional format + + + + + &Remove + &Удалить + + + + Move selected conditional format up + + + + + Move &up + + + + + Move selected conditional format down + + + + + Move &down + + + + + Foreground + Передний план + + + + Text color + Цвет текÑта + + + + Background + Фон + + + + Background color + Цвет фона + + + + Font + Шрифт + + + + Size + Размер + + + + Bold + Жирный + + + + Italic + КурÑив + + + + Underline + Подчёркивание + + + + Alignment + + + + + Condition + + + + + + Click to select color + + + + + Are you sure you want to clear all the conditional formats of this field? + + + + + DBBrowserDB + + + Please specify the database name under which you want to access the attached database + + + + + Invalid file format + Ошибочный формат файла + + + + Do you want to save the changes made to the database file %1? + Сохранить Ñделанные Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð² файле базы данных %1? + + + + Exporting database to SQL file... + ЭкÑпорт базы данных в файл SQL... + + + + + Cancel + Отменить + + + + Executing SQL... + Выполнить код SQL... + + + + Action cancelled. + ДейÑтвие отменено. + + + + This database has already been attached. Its schema name is '%1'. + Эта БД уже приÑоединена. Ð˜Ð¼Ñ ÐµÐµ Ñхемы - '%1'. + + + + Do you really want to close this temporary database? All data will be lost. + Ð’Ñ‹ дейÑтвительно хотите закрыть Ñту временную БД? Ð’Ñе данные будут потерÑны. + + + + Database didn't close correctly, probably still busy + + + + + The database is currently busy: + БД занÑта: + + + + Do you want to abort that other operation? + Ð’Ñ‹ хотите отменить Ñту операцию? + + + + + No database file opened + Файл БД не открыт + + + + + Error in statement #%1: %2. +Aborting execution%3. + Ошибка в выражении #%1: %2. +Прерываем выполнение%3. + + + + + and rolling back + и отменÑем + + + + didn't receive any output from %1 + + + + + could not execute command: %1 + + + + + Cannot delete this object + Ðе удаетÑÑ ÑƒÐ´Ð°Ð»Ð¸Ñ‚ÑŒ Ñтот объект + + + + Cannot set data on this object + Ðевозможно назначить данные Ð´Ð»Ñ Ñтого объекта + + + + + A table with the name '%1' already exists in schema '%2'. + Таблица Ñ Ð¸Ð¼ÐµÐ½ÐµÐ¼ '%1' уже ÑущеÑтвует в Ñхеме '%2'. + + + + No table with name '%1' exists in schema '%2'. + + + + + + Cannot find column %1. + + + + + Creating savepoint failed. DB says: %1 + + + + + Renaming the column failed. DB says: +%1 + + + + + + Releasing savepoint failed. DB says: %1 + + + + + Creating new table failed. DB says: %1 + + + + + Copying data to new table failed. DB says: +%1 + + + + + Deleting old table failed. DB says: %1 + + + + + Error renaming table '%1' to '%2'. +Message from database engine: +%3 + + + + + could not get list of db objects: %1 + + + + + Restoring some of the objects associated with this table failed. This is most likely because some column names changed. Here's the SQL statement which you might want to fix and execute manually: + + + Ошибка воÑÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ Ð½ÐµÐºÐ¾Ñ‚Ð¾Ñ€Ñ‹Ñ… объектов, аÑÑоциированных Ñ Ñтой таблицей. Ðаиболее вероÑÑ‚Ð½Ð°Ñ Ð¿Ñ€Ð¸Ñ‡Ð¸Ð½Ð° Ñтого - изменение имён некоторых Ñтолбцов таблицы. Вот SQL оператор, который нужно иÑправить и выполнить вручную: + + + + + + could not get list of databases: %1 + не могу получить ÑпиÑок БД: %1 + + + + Error loading extension: %1 + Ошибка загрузки раÑширениÑ: %1 + + + + could not get column information + не могу полчить информацию о колонке + + + + Error setting pragma %1 to %2: %3 + Ошибка уÑтановки прагмы %1 в %2: %3 + + + + File not found. + Файл не найден. + + + + DbStructureModel + + + Name + Ð˜Ð¼Ñ + + + + Object + Объект + + + + Type + Тип + + + + Schema + Схема + + + + Database + База данных + + + + Browsables + ПроÑматриваемые + + + + All + Ð’Ñе + + + + Temporary + Временный + + + + Tables (%1) + Таблицы (%1) + + + + Indices (%1) + ИндекÑÑ‹ (%1) + + + + Views (%1) + ПредÑÑ‚Ð°Ð²Ð»ÐµÐ½Ð¸Ñ (%1) + + + + Triggers (%1) + Триггеры (%1) + + + + EditDialog + + + Edit database cell + Редактирование Ñчейки базы данных + + + + Mode: + Режим: + + + + + Image + Изображение + + + + Set as &NULL + ПриÑвоить &NULL + + + + Apply data to cell + Применить данные к Ñчейке + + + + This button saves the changes performed in the cell editor to the database cell. + Ðажав Ñту кнопку, вы Ñохраните Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð¿Ñ€Ð¾Ð¸Ð·Ð²ÐµÐ´ÐµÐ½Ð½Ñ‹Ðµ в Ñтом редакторе, в ÑоответÑтвующую Ñчейку БД. + + + + Apply + Применить + + + + Text + ТекÑÑ‚ + + + + This is the list of supported modes for the cell editor. Choose a mode for viewing or editing the data of the current cell. + Это ÑпиÑок поддерживаемых режимов. Выбирете режим Ð´Ð»Ñ Ð¿Ñ€Ð¾Ñмотра или Ñ€ÐµÐ´Ð°ÐºÑ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð´Ð°Ð½Ð½Ñ‹Ñ… текущей Ñчейки. + + + + RTL Text + + + + + Binary + Двоичные данные + + + + JSON + + + + + XML + + + + + + Automatically adjust the editor mode to the loaded data type + ÐвтоматичеÑки подбор режима редактора на оÑнове данных + + + + This checkable button enables or disables the automatic switching of the editor mode. When a new cell is selected or new data is imported and the automatic switching is enabled, the mode adjusts to the detected data type. You can then change the editor mode manually. If you want to keep this manually switched mode while moving through the cells, switch the button off. + Эта кнопка позволÑет включать или отключать автоматичеÑкое переключение режима редактора. Когда выбрана Ð½Ð¾Ð²Ð°Ñ Ñчейка или импортированы новые данные, а автоматичеÑкое переключение включено, режим наÑтраиваетÑÑ Ð½Ð° обнаруженный тип данных. Ð’Ñ‹ можете вручную изменить режим редактора. ЕÑли вы хотите Ñохранить Ñтот режим ручного Ð¿ÐµÑ€ÐµÐºÐ»ÑŽÑ‡ÐµÐ½Ð¸Ñ Ð¿Ñ€Ð¸ перемещении по Ñчейкам, выключите кнопку. + + + + Auto-switch + Ðвтопереключение + + + + The text editor modes let you edit plain text, as well as JSON or XML data with syntax highlighting, automatic formatting and validation before saving. + +Errors are indicated with a red squiggle underline. + + + + + This Qt editor is used for right-to-left scripts, which are not supported by the default Text editor. The presence of right-to-left characters is detected and this editor mode is automatically selected. + + + + + Open preview dialog for printing the data currently stored in the cell + + + + + Auto-format: pretty print on loading, compact on saving. + ÐвтоматичеÑкое форматирование: ÑтилиÑтичеÑкое форматирование при загрузке, компактноÑть - при Ñохранении. + + + + When enabled, the auto-format feature formats the data on loading, breaking the text in lines and indenting it for maximum readability. On data saving, the auto-format feature compacts the data removing end of lines, and unnecessary whitespace. + Когда включено, Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ Ð°Ð²Ñ‚Ð¾Ð¼Ð°Ñ‚Ð¸Ñ‡ÐµÑкого Ñ„Ð¾Ñ€Ð¼Ð°Ñ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ñ„Ð¾Ñ€Ð¼Ð°Ñ‚Ð¸Ñ€ÑƒÐµÑ‚ данные по загрузке, Ñ€Ð°Ð·Ð±Ð¸Ð²Ð°Ñ Ñ‚ÐµÐºÑÑ‚ в Ñтроках и отÑтупы Ð´Ð»Ñ Ð¼Ð°ÐºÑимальной читаемоÑти. При Ñохранении данных Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ Ð°Ð²Ñ‚Ð¾Ð¼Ð°Ñ‚Ð¸Ñ‡ÐµÑкого Ñ„Ð¾Ñ€Ð¼Ð°Ñ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð¾Ð±ÑŠÐµÐ´Ð¸Ð½Ñет данные, удалÑющие конец Ñтрок, и ненужные пробелы. + + + + Word Wrap + + + + + Wrap lines on word boundaries + + + + + + Open in default application or browser + + + + + Open in application + + + + + The value is interpreted as a file or URL and opened in the default application or web browser. + + + + + Save file reference... + + + + + Save reference to file + + + + + + Open in external application + + + + + Autoformat + Ðвтоформатирование + + + + &Export... + + + + + + &Import... + + + + + + Import from file + Импортировать из файла + + + + + Opens a file dialog used to import any kind of data to this database cell. + Открывает диалоговое окно файла, иÑпользуемое Ð´Ð»Ñ Ð¸Ð¼Ð¿Ð¾Ñ€Ñ‚Ð° любых данных в Ñту Ñчейку базы данных. + + + + Export to file + ЭкÑпортировать в файл + + + + Opens a file dialog used to export the contents of this database cell to a file. + Открывает диалоговое окно файла, иÑпользуемое Ð´Ð»Ñ ÑкÑпорта Ñодержимого Ñтой Ñчейки базы данных в файл. + + + + Erases the contents of the cell + ОчищаетÑÑ Ñодержимое Ñчейки + + + + This area displays information about the data present in this database cell + Эта облаÑть отображает информацию о данных, находÑщихÑÑ Ð² Ñтой Ñчейке базы данных + + + + Type of data currently in cell + Тип данных в Ñчейке + + + + Size of data currently in table + Размер данных в таблице + + + + + Print... + Печать... + + + + Open preview dialog for printing displayed image + Открыть диалоговое окно предварительного проÑмотра Ð´Ð»Ñ Ð¿ÐµÑ‡Ð°Ñ‚Ð¸ отображаемого Ð¸Ð·Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð¸Ñ + + + + + Ctrl+P + + + + + Open preview dialog for printing displayed text + Открыть диалоговое окно предварительного проÑмотра Ð´Ð»Ñ Ð¿ÐµÑ‡Ð°Ñ‚Ð¸ отображаемого текÑта + + + + Copy Hex and ASCII + Копировать HEX и ASCII + + + + Copy selected hexadecimal and ASCII columns to the clipboard + Копировать выбранные HEX и ASCII Ñтолбцы в буфер обмена + + + + Ctrl+Shift+C + + + + + Choose a filename to export data + Выбрать Ð¸Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð° Ð´Ð»Ñ ÑкÑпорта данных + + + + Type of data currently in cell: %1 Image + Тип данных в Ñчейке: %1 Изображение + + + + %1x%2 pixel(s) + %1x%2 пикÑелей + + + + Type of data currently in cell: NULL + Тип данных в Ñчейке: NULL + + + + + Type of data currently in cell: Text / Numeric + Тип данных в Ñчейке: ТекÑÑ‚ / ЧиÑловое + + + + + Image data can't be viewed in this mode. + Изображение не может быть отображено в Ñтом режиме. + + + + + Try switching to Image or Binary mode. + Попробуйте переключитьÑÑ Ð² Бинарный режим или режим ИзображениÑ. + + + + + Binary data can't be viewed in this mode. + Бинарные данные не могут быть отображены в Ñтом режиме. + + + + + Try switching to Binary mode. + Попробуйте переключитьÑÑ Ð² Бинарный режим. + + + + Couldn't save file: %1. + Ðе удалоÑÑŒ Ñохранить файл:%1. + + + + The data has been saved to a temporary file and has been opened with the default application. You can now edit the file and, when you are ready, apply the saved new data to the cell editor or cancel any changes. + + + + + + Image files (%1) + Файлы изображений (%1) + + + + Binary files (*.bin) + Бинарные файлы (*.bin) + + + + Choose a file to import + Выбрать файл Ð´Ð»Ñ Ð¸Ð¼Ð¿Ð¾Ñ€Ñ‚Ð° + + + + %1 Image + %1 Изображение + + + + Invalid data for this mode + Ошибочные данные Ð´Ð»Ñ Ñтого режима + + + + The cell contains invalid %1 data. Reason: %2. Do you really want to apply it to the cell? + Ячейка Ñодержит ошибочные %1 данные. Причина: %2. Ð’Ñ‹ дейÑтвительно хотите применить их? + + + + + + %n character(s) + + %n Ñимвол + %n Ñимвола + %n Ñимволов + + + + + Type of data currently in cell: Valid JSON + Тип данных в Ñчейке: JSON + + + + Type of data currently in cell: Binary + Тип данных в Ñчейке: Двоичные данные + + + + + %n byte(s) + + %n байт + %n байта + %n байтов + + + + + EditIndexDialog + + + &Name + &Ð˜Ð¼Ñ + + + + Order + Сортировка + + + + &Table + &Таблица + + + + Edit Index Schema + Редактирование ИндекÑа + + + + &Unique + &Уникальный + + + + For restricting the index to only a part of the table you can specify a WHERE clause here that selects the part of the table that should be indexed + Ð”Ð»Ñ Ð¾Ð³Ñ€Ð°Ð½Ð¸Ñ‡ÐµÐ½Ð¸Ñ Ð¸Ð½Ð´ÐµÐºÑа только чаÑтью таблицы вы можете указать здеÑÑŒ выражение WHERE, которое выбирает чаÑть таблицы, ÐºÐ¾Ñ‚Ð¾Ñ€Ð°Ñ Ð´Ð¾Ð»Ð¶Ð½Ð° быть проиндекÑирована + + + + Partial inde&x clause + &ЧаÑтичный Ð¸Ð½Ð´ÐµÐºÑ + + + + Colu&mns + &Колонки + + + + Table column + Колонка таблицы + + + + Type + Тип + + + + Add a new expression column to the index. Expression columns contain SQL expression rather than column names. + Добавить новое колоночное-выражение в индекÑ. Колоночное выражение может Ñодержкать SQL Ð²Ñ‹Ñ€Ð°Ð¶ÐµÐ½Ð¸Ñ Ð²Ð¼ÐµÑто имен колонок. + + + + Index column + Колонка индекÑа + + + + Deleting the old index failed: +%1 + Удаление Ñтарого индекÑа завершилоÑÑŒ Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ¾Ð¹: +%1 + + + + Creating the index failed: +%1 + Ошибка ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð¸Ð½Ð´ÐµÐºÑа: +%1 + + + + EditTableDialog + + + Edit table definition + Редактирование Ð¾Ð¿Ñ€ÐµÐ´ÐµÐ»ÐµÐ½Ð¸Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ‹ + + + + Table + Таблица + + + + Advanced + Дополнительно + + + + Make this a 'WITHOUT rowid' table. Setting this flag requires a field of type INTEGER with the primary key flag set and the auto increment flag unset. + Чтобы Ñоздать таблицу 'без rowid', нужно чтобы в ней был INTEGER первичный ключ Ñ Ð¾Ñ‚ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ‹Ð¼ автоинкрементом. + + + + Without Rowid + Без rowid + + + + Database sche&ma + + + + + Fields + ÐŸÐ¾Ð»Ñ + + + + Add + + + + + Remove + + + + + Move to top + + + + + Move up + + + + + Move down + + + + + Move to bottom + + + + + + Name + Ð˜Ð¼Ñ + + + + + Type + Тип + + + + NN + ÐП + + + + Not null + Ðе пуÑтое (null) + + + + PK + ПК + + + + Primary key + Первичный ключ + + + + AI + ÐИ + + + + Autoincrement + Ðвтоинкремент + + + + U + У + + + + + + Unique + Уникальное + + + + Default + По умолчанию + + + + Default value + Значение по умолчанию + + + + + + Check + Проверить + + + + Check constraint + Проверить ограничение + + + + Collation + + + + + + + Foreign Key + Внешний ключ + + + + Constraints + + + + + Add constraint + + + + + Remove constraint + + + + + Columns + Столбцы + + + + SQL + + + + + <html><head/><body><p><span style=" font-weight:600; color:#ff0000;">Warning: </span>There is something with this table definition that our parser doesn't fully understand. Modifying and saving this table might result in problems.</p></body></html> + <html><head/><body><p><span style=" font-weight:600; color:#ff0000;">Внимание: </span>Ð’ опиÑании Ñтой таблицы еÑть что-то, что наш парÑер не понимает. ÐœÐ¾Ð´Ð¸Ñ„Ð¸ÐºÐ°Ñ†Ð¸Ñ Ð¸ Ñохрание Ñтой таблицы может породить проблемы.</p></body></html> + + + + + Primary Key + + + + + Add a primary key constraint + + + + + Add a foreign key constraint + + + + + Add a unique constraint + + + + + Add a check constraint + + + + + Error creating table. Message from database engine: +%1 + Ошибка ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ‹. Сообщение от движка базы данных: %1 + + + + There already is a field with that name. Please rename it first or choose a different name for this field. + Поле Ñ Ñ‚Ð°ÐºÐ¸Ð¼ именем уже ÑущеÑтвует. ПожалуйÑта переименуйте его, либо выберите другое Ð¸Ð¼Ñ Ð´Ð»Ñ Ð´Ð°Ð½Ð½Ð¾Ð³Ð¾ полÑ. + + + + + There can only be one primary key for each table. Please modify the existing primary key instead. + + + + + This column is referenced in a foreign key in table %1 and thus its name cannot be changed. + Ðа данную колонку ÑÑылкаетÑÑ Ð²Ð½ÐµÑˆÐ½Ð¸Ð¹ ключ в таблице %1, поÑтому ее Ð¸Ð¼Ñ Ð½Ðµ может быть изменено. + + + + There is at least one row with this field set to NULL. This makes it impossible to set this flag. Please change the table data first. + СущеÑтвует по крайней мере одна Ñтрока, где Ñто поле уÑтановлено в NULL. УÑтановить Ñтот флаг нельзÑ. Сначала измените данные таблицы. + + + + There is at least one row with a non-integer value in this field. This makes it impossible to set the AI flag. Please change the table data first. + СущеÑтвует по крайней мере одна Ñтрока, где Ñто поле Ñодержит нечиÑловое значение. УÑтановить флаг ÐИ нельзÑ. Сначала измените данные таблицы. + + + + Column '%1' has duplicate data. + + + + + + This makes it impossible to enable the 'Unique' flag. Please remove the duplicate data, which will allow the 'Unique' flag to then be enabled. + + + + + Are you sure you want to delete the field '%1'? +All data currently stored in this field will be lost. + Удалить поле '%1'? +Ð’Ñе данные, которые в наÑтоÑщий момент Ñохранены в Ñтом поле, будут потерÑны. + + + + Please add a field which meets the following criteria before setting the without rowid flag: + - Primary key flag set + - Auto increment disabled + Перед тем как применÑть флаг без rowid, пожалуйÑта убедитеÑÑŒ, что ÑущеÑтвует Ñтолбец, который: + - ÑвлÑетÑÑ Ð¿ÐµÑ€Ð²Ð¸Ñ‡Ð½Ñ‹Ð¹ ключом + - Ð´Ð»Ñ Ð½ÐµÐ³Ð¾ отключен автоинкремент + + + + ExportDataDialog + + + Export data as CSV + ЭкÑпортировать данные в формате CSV + + + + Tab&le(s) + &Таблицы + + + + Colu&mn names in first line + &Имена Ñтолбцов в первой Ñтроке + + + + Fie&ld separator + &Разделитель полей + + + + , + , + + + + ; + ; + + + + Tab + ТабулÑÑ†Ð¸Ñ + + + + | + | + + + + + + Other + Другой + + + + &Quote character + &Символ кавычки + + + + " + " + + + + ' + ' + + + + New line characters + Разделитель Ñтрок + + + + Windows: CR+LF (\r\n) + + + + + Unix: LF (\n) + + + + + Pretty print + КраÑивый вывод + + + + + Could not open output file: %1 + Ðе удалоÑÑŒ открыть выходной файл: %1 + + + + + Choose a filename to export data + Выберите Ð¸Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð° Ð´Ð»Ñ ÑкÑпорта данных + + + + Export data as JSON + ЭкÑпортировать данные как JSON + + + + exporting CSV + ÑкÑпортирование CSV + + + + exporting JSON + ÑкÑпортирование JSON + + + + Please select at least 1 table. + ПожалуйÑта, выберите Ñ…Ð¾Ñ‚Ñ Ð±Ñ‹ одну таблицу. + + + + Choose a directory + Выберать каталог + + + + Export completed. + ЭкÑпорт завершён. + + + + ExportSqlDialog + + + Export SQL... + ЭкÑпорт SQL.... + + + + Tab&le(s) + &Таблицы + + + + Select All + Выбрать вÑе + + + + Deselect All + Отменить выбор + + + + &Options + &Опции + + + + Keep column names in INSERT INTO + Ð˜Ð¼Ñ Ñтолбцов в выражении INSERT INTO + + + + Multiple rows (VALUES) per INSERT statement + ÐеÑколько Ñтрок (VALUES) на INSERT выражение + + + + Export everything + ЭкÑпортировать вÑе + + + + Export data only + ЭкÑпортировать только данные + + + + Keep old schema (CREATE TABLE IF NOT EXISTS) + ПроверÑть ÑущеÑтвоватние таблицы (CREATE TABLE IF NOT EXISTS) + + + + Overwrite old schema (DROP TABLE, then CREATE TABLE) + УдалÑть Ñтарую таблицу перед Ñозданием (DROP TABLE, затем CREATE TABLE) + + + + Export schema only + ЭкÑпортировать только Ñхему данных + + + + Please select at least one table. + ПожалуйÑта, выберите Ñ…Ð¾Ñ‚Ñ Ð±Ñ‹ одну таблицу. + + + + Choose a filename to export + Выберите Ð¸Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð° Ð´Ð»Ñ ÑкÑпорта + + + + Export completed. + ЭкÑпорт завершён. + + + + Export cancelled or failed. + ЭкÑпорт отменён или возникли ошибки. + + + + ExtendedScintilla + + + + Ctrl+H + + + + + Ctrl+F + + + + + + Ctrl+P + + + + + Find... + + + + + Find and Replace... + Ðайти и Заменить... + + + + Print... + Печать... + + + + ExtendedTableWidget + + + Use as Exact Filter + ИÑпользовать как Точный Фильтр + + + + Containing + Содержит + + + + Not containing + + + + + Not equal to + Ðе равно + + + + Greater than + Больше чем + + + + Less than + Меньше чем + + + + Greater or equal + Больше или равно + + + + Less or equal + Меньше или равно + + + + Between this and... + Между Ñтим и... + + + + Regular expression + + + + + Edit Conditional Formats... + + + + + Set to NULL + СброÑить в NULL + + + + Copy + Копировать + + + + Copy with Headers + Копировать Ñ Ð·Ð°Ð³Ð¾Ð»Ð¾Ð²ÐºÐ°Ð¼Ð¸ + + + + Copy as SQL + Копировать как SQL + + + + Paste + Ð’Ñтавить + + + + Print... + Печать... + + + + Use in Filter Expression + ИÑпользовать в Выражении Фильтра + + + + Alt+Del + + + + + Ctrl+Shift+C + + + + + Ctrl+Alt+C + + + + + The content of the clipboard is bigger than the range selected. +Do you want to insert it anyway? + Содержимое буфера обмена больше чем выделенный диапозон. +Ð’Ñе равно вÑтавить? + + + + <p>Not all data has been loaded. <b>Do you want to load all data before selecting all the rows?</b><p><p>Answering <b>No</b> means that no more data will be loaded and the selection will not be performed.<br/>Answering <b>Yes</b> might take some time while the data is loaded but the selection will be complete.</p>Warning: Loading all the data might require a great amount of memory for big tables. + + + + + Cannot set selection to NULL. Column %1 has a NOT NULL constraint. + + + + + FileExtensionManager + + + File Extension Manager + Менеджер раÑÑˆÐ¸Ñ€ÐµÐ½Ð¸Ñ Ñ„Ð°Ð¹Ð»Ð¾Ð² + + + + &Up + &Выше + + + + &Down + &Ðиже + + + + &Add + &Добавить + + + + &Remove + &Удалить + + + + + Description + ОпиÑание + + + + Extensions + РаÑÑˆÐ¸Ñ€ÐµÐ½Ð¸Ñ + + + + *.extension + + + + + FilterLineEdit + + + Filter + Фильтр + + + + These input fields allow you to perform quick filters in the currently selected table. +By default, the rows containing the input text are filtered out. +The following operators are also supported: +% Wildcard +> Greater than +< Less than +>= Equal to or greater +<= Equal to or less += Equal to: exact match +<> Unequal: exact inverse match +x~y Range: values between x and y +/regexp/ Values matching the regular expression + + + + + Clear All Conditional Formats + + + + + Use for Conditional Format + + + + + Edit Conditional Formats... + + + + + Set Filter Expression + УÑтановить Выражение Фильтра + + + + What's This? + Что Это? + + + + Is NULL + NULL + + + + Is not NULL + не NULL + + + + Is empty + пуÑто + + + + Is not empty + не пуÑто + + + + Not containing... + + + + + Equal to... + Равно... + + + + Not equal to... + Ðе равно... + + + + Greater than... + Больше чем... + + + + Less than... + Меньше чем... + + + + Greater or equal... + Больше или равно... + + + + Less or equal... + Меньше или равно... + + + + In range... + Ð’ диапазоне... + + + + Regular expression... + + + + + FindReplaceDialog + + + Find and Replace + ПоиÑк и Замена + + + + Fi&nd text: + &ТекÑÑ‚ Ð´Ð»Ñ Ð¿Ð¾Ð¸Ñка: + + + + Re&place with: + ТекÑÑ‚ Ð´Ð»Ñ &замены: + + + + Match &exact case + Учитывать &региÑтр + + + + Match &only whole words + Слова &целиком + + + + When enabled, the search continues from the other end when it reaches one end of the page + Когда отмечено, поиÑк продолжаетÑÑ Ñ Ð´Ñ€ÑƒÐ³Ð¾Ð³Ð¾ конца, когда он доÑтигает противоположного конца Ñтраницы + + + + &Wrap around + &Закольцевать + + + + When set, the search goes backwards from cursor position, otherwise it goes forward + Когда отмечено, поиÑк возвращаетÑÑ Ð½Ð°Ð·Ð°Ð´ из Ð¿Ð¾Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ ÐºÑƒÑ€Ñора, в противном Ñлучае он идет вперед + + + + Search &backwards + ИÑкать в &обратном порÑдке + + + + <html><head/><body><p>When checked, the pattern to find is searched only in the current selection.</p></body></html> + + + + + &Selection only + + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + <html><head/><body><p>При проверке шаблон Ð´Ð»Ñ Ð¿Ð¾Ð¸Ñка интерпретируетÑÑ ÐºÐ°Ðº регулÑрное выражение UNIX. <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Узнать больше о РегулÑрных выражениÑÑ… на Wikibooks.org</a>.</p></body></html> + + + + Use regular e&xpressions + &РегулÑрные Ð²Ñ‹Ñ€Ð°Ð¶ÐµÐ½Ð¸Ñ + + + + Find the next occurrence from the cursor position and in the direction set by "Search backwards" + Ðайдите Ñледующее вхождение из позиции курÑора и в направлении, заданном "ИÑкать назад" + + + + &Find Next + ИÑкать &дальше + + + + F3 + + + + + &Replace + &Замена + + + + Highlight all the occurrences of the text in the page + Выделить вÑе Ð²Ñ…Ð¾Ð¶Ð´ÐµÐ½Ð¸Ñ Ñ‚ÐµÐºÑта на Ñтранице + + + + F&ind All + Ðайти &вÑе + + + + Replace all the occurrences of the text in the page + Заменить вÑе Ð²Ñ…Ð¾Ð¶Ð´ÐµÐ½Ð¸Ñ Ñ‚ÐµÐºÑта на Ñтранице + + + + Replace &All + За&менить вÑе + + + + The searched text was not found + ИÑкомый текÑÑ‚ не найден + + + + The searched text was not found. + ИÑкомый текÑÑ‚ не найден. + + + + The searched text was found one time. + ИÑкомый текÑÑ‚ найден один раз. + + + + The searched text was found %1 times. + ИÑкомый текÑÑ‚ найден %1 раз. + + + + The searched text was replaced one time. + ИÑкомый текÑÑ‚ заменен один раз. + + + + The searched text was replaced %1 times. + ИÑкомый текÑÑ‚ заменен %1 раз. + + + + ForeignKeyEditor + + + &Reset + &Ð¡Ð±Ñ€Ð¾Ñ + + + + Foreign key clauses (ON UPDATE, ON DELETE etc.) + УÑÐ»Ð¾Ð²Ð¸Ñ (ON UPDATE, ON DELETE и Ñ‚.д.) + + + + ImportCsvDialog + + + Import CSV file + Импортировать файл в формате CSV + + + + Table na&me + &Ð˜Ð¼Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ‹ + + + + &Column names in first line + И&мена Ñтолбцов в первой Ñтроке + + + + Field &separator + &Разделитель полей + + + + , + + + + + ; + + + + + + Tab + ТабулÑÑ†Ð¸Ñ + + + + | + + + + + Other + Другой + + + + &Quote character + &Символ кавычки + + + + + Other (printable) + + + + + + Other (code) + + + + + " + + + + + ' + + + + + &Encoding + &Кодировка + + + + UTF-8 + + + + + UTF-16 + + + + + ISO-8859-1 + + + + + Trim fields? + Обрезать полÑ? + + + + Separate tables + Отдельные таблицы + + + + Advanced + Дополнительно + + + + When importing an empty value from the CSV file into an existing table with a default value for this column, that default value is inserted. Activate this option to insert an empty value instead. + При импорте пуÑтого Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð¸Ð· файла CSV в ÑущеÑтвующую таблицу Ð´Ð»Ñ Ñтолбца Ñ ÑƒÐºÐ°Ð·Ð°Ð½Ð½Ñ‹Ð¼ значением по умолчанию оно будет вÑтавлено. Ðктивируйте Ñту опцию, чтобы вмеÑто Ñтого вÑтавить пуÑтое значение. + + + + Ignore default &values + Игнорировать значение &по-умолчанию + + + + Activate this option to stop the import when trying to import an empty value into a NOT NULL column without a default value. + Ðктивируйте Ñту опцию чтобы прекратить импорт при попытке импорта пуÑтого Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð² NOT NULL колонку без Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð¿Ð¾-умолчанию. + + + + Fail on missing values + Ошибка при отÑутÑтвии значений + + + + Disable data type detection + Отключить определение типа данных + + + + Disable the automatic data type detection when creating a new table. + Отключить автоматичеÑкое определение типа при Ñоздании новой таблицы. + + + + When importing into an existing table with a primary key, unique constraints or a unique index there is a chance for a conflict. This option allows you to select a strategy for that case: By default the import is aborted and rolled back but you can also choose to ignore and not import conflicting rows or to replace the existing row in the table. + + + + + Abort import + + + + + Ignore row + + + + + Replace existing row + + + + + Conflict strategy + + + + + + Deselect All + Отменить Выбор + + + + Match Similar + Ðайти Ð¡Ð¾Ð²Ð¿Ð°Ð´ÐµÐ½Ð¸Ñ + + + + Select All + Выбрать Ð’Ñе + + + + There is already a table named '%1' and an import into an existing table is only possible if the number of columns match. + Уже ÑущеÑтвует таблица Ñ Ð¸Ð¼ÐµÐ½ÐµÐ¼ '%1' и импорт в ÑущеÑтвующую таблицу возможен, только еÑли чиÑло Ñтолбцов Ñовпадает. + + + + There is already a table named '%1'. Do you want to import the data into it? + Уже ÑущеÑтвует таблица Ñ Ð¸Ð¼ÐµÐ½ÐµÐ¼ '%1'. Ð’Ñ‹ хотите импортировать данные в нее? + + + + Creating restore point failed: %1 + Ошибка ÑÐ¾Ð·Ð½Ð°Ð½Ð¸Ñ Ñ‚Ð¾Ñ‡ÐºÐ¸ воÑÑтановлениÑ: %1 + + + + Creating the table failed: %1 + Ошибка ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ‹: %1 + + + + importing CSV + импортирование CSV + + + + Importing the file '%1' took %2ms. Of this %3ms were spent in the row function. + Импорт файла '%1' занÑл %2мÑ. Из них %3Ð¼Ñ Ð±Ñ‹Ð»Ð¾ потрачено в функции Ñтроки. + + + + Inserting row failed: %1 + Ошибка вÑтавки Ñтроки: %1 + + + + MainWindow + + + DB Browser for SQLite + Обозреватель Ð´Ð»Ñ SQLite + + + + toolBar1 + панельИнÑтрументов1 + + + + Warning: this pragma is not readable and this value has been inferred. Writing the pragma might overwrite a redefined LIKE provided by an SQLite extension. + Предупреждение: Ñта прагма не читаетÑÑ, и Ñто значение было выведено. Применение прагмы может перезапиÑать переопределенный LIKE, предоÑтавлÑемый раÑширением SQLite. + + + + &Tools + &ИнÑтрументы + + + + Error Log + + + + + This button clears the contents of the SQL logs + Эта кнопка очищает Ñодержимое журналов SQL + + + + This panel lets you examine a log of all SQL commands issued by the application or by yourself + Эта панель позволÑет вам проÑматривать журнал вÑех SQL-команд, выданных приложением или вами + + + + This is the structure of the opened database. +You can drag multiple object names from the Name column and drop them into the SQL editor and you can adjust the properties of the dropped names using the context menu. This would help you in composing SQL statements. +You can drag SQL statements from the Schema column and drop them into the SQL editor or into other applications. + + Это Ñтруктура открытой БД. +Ð’Ñ‹ можете перетащить неÑколько имен объектов из Ñтолбца "ИмÑ" и отброÑить их в редактор SQL, и вы можете наÑтроить ÑвойÑтва Ñброшенных имен Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ контекÑтного меню. Это поможет вам при ÑоÑтавлении SQL-инÑтрукций. +Ð’Ñ‹ можете перетаÑкивать операторы SQL из Ñтолбца "Схема" и переноÑить их в редактор SQL или в другие приложениÑ. + + + + + + Project Toolbar + Панель ИнÑтрументов Проекта + + + + Extra DB toolbar + Ð”Ð¾Ð¿Ð¾Ð»Ð½Ð¸Ñ‚ÐµÐ»ÑŒÐ½Ð°Ñ ÐŸÐ°Ð½ÐµÐ»ÑŒ ИнÑтрументов БД + + + + + + Close the current database file + Закрыть файл текущей БД + + + + Ctrl+F4 + + + + + &About + О &программе + + + + This button opens a new tab for the SQL editor + Эта кнопка открывает новую вкладку Ð´Ð»Ñ Ñ€ÐµÐ´Ð°ÐºÑ‚Ð¾Ñ€Ð° SQL + + + + Execute all/selected SQL + Выполнить вÑе/выбранный SQL + + + + This button executes the currently selected SQL statements. If no text is selected, all SQL statements are executed. + Эта кнопка выполнÑет текущие выбранные операторы SQL. ЕÑли в текÑтовом редакторе ничего не выбрано , вÑе инÑтрукции SQL выполнÑÑŽÑ‚ÑÑ. + + + + &Load Extension... + &Загрузить раÑширение... + + + + Execute line + + + + + This button executes the SQL statement present in the current editor line + Эта кнопка выполнÑет оператор SQL, приÑутÑтвующий в текущей Ñтроке редактора + + + + &Wiki + &Вики + + + + F1 + + + + + Bug &Report... + Баг &репорт... + + + + Feature Re&quest... + ЗапроÑить &функцию... + + + + Web&site + &Веб-Ñайт + + + + &Donate on Patreon... + Сделать &пожертвование в Patreon... + + + + Open &Project... + Открыть &проект... + + + + &Attach Database... + &Прикрепить БД... + + + + + Add another database file to the current database connection + Добавить другой файл БД в текущее Ñоединение + + + + This button lets you add another database file to the current database connection + Эта кнопка позволÑет добавить другой файл БД в текущее Ñоединение Ñ Ð‘Ð” + + + + &Set Encryption... + Ðазначитть &шифрование... + + + + This button saves the content of the current SQL editor tab to a file + Эта кнопка ÑохранÑет Ñодержимое текущей вкладки редактора SQL в файл + + + + SQLCipher &FAQ + + + + + Table(&s) to JSON... + Таблицы в файл &JSON... + + + + Open Data&base Read Only... + Открыть БД &только Ð´Ð»Ñ Ñ‡Ñ‚ÐµÐ½Ð¸Ñ... + + + + Ctrl+Shift+O + + + + + Save results + Сохранить результаты + + + + Save the results view + Сохранить результаты + + + + This button lets you save the results of the last executed query + Эта кнопка позволÑет Ñохранить результаты поÑледнего выполненного запроÑа + + + + + Find text in SQL editor + Ðайти текÑÑ‚ в редакторе SQL + + + + Find + + + + + This button opens the search bar of the editor + Эта кнопка открывает панель поиÑка редактора + + + + Ctrl+F + + + + + + Find or replace text in SQL editor + Ðайти или заменить текÑÑ‚ в редакторе SQL + + + + Find or replace + + + + + This button opens the find/replace dialog for the current editor tab + Эта кнопка открывает диалог поиÑка/замены Ð´Ð»Ñ Ñ‚ÐµÐºÑƒÑ‰ÐµÐ¹ вкладки редактора + + + + Ctrl+H + + + + + Export to &CSV + ЭкÑпортировать в &CSV + + + + Save as &view + Сохранить как &предÑтавление + + + + Save as view + Сохранить как предÑтавление + + + + Shows or hides the Project toolbar. + Показывает или Ñкрывает панель инÑтрументов Проекта. + + + + Extra DB Toolbar + Ð”Ð¾Ð¿Ð¾Ð»Ð½Ð¸Ñ‚ÐµÐ»ÑŒÐ½Ð°Ñ ÐŸÐ°Ð½ÐµÐ»ÑŒ ИнÑтрументов БД + + + + Open SQL file(s) + + + + + This button opens files containing SQL statements and loads them in new editor tabs + + + + + This button lets you open a DB Browser for SQLite project file + + + + + New In-&Memory Database + ÐÐ¾Ð²Ð°Ñ Ð‘Ð” в &ПамÑти + + + + Drag && Drop Qualified Names + Квалифицированные имена при перетакÑкивании + + + + + Use qualified names (e.g. "Table"."Field") when dragging the objects and dropping them into the editor + Квалифицированные имена (например, "Table"."Field") при перетаÑкивании объектов в редактор + + + + Drag && Drop Enquoted Names + Экранированные имена при перетаÑкивании + + + + + Use escaped identifiers (e.g. "Table1") when dragging the objects and dropping them into the editor + Экранировать имена идентификаторов (например, "Table1"), когда перетаÑкиваютÑÑ Ð¾Ð±ÑŠÐµÐºÑ‚Ñ‹ в редактор + + + + &Integrity Check + Проверка &ЦелоÑтноÑти + + + + Runs the integrity_check pragma over the opened database and returns the results in the Execute SQL tab. This pragma does an integrity check of the entire database. + ВыполнÑет прагму integrity_check Ð´Ð»Ñ Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚Ð¾Ð¹ БД и возвращает результаты во вкладке "SQL". Эта прагма выполнÑет проверку целоÑтноÑти вÑей базы данных. + + + + &Foreign-Key Check + Проверка &Внешних ключей + + + + Runs the foreign_key_check pragma over the opened database and returns the results in the Execute SQL tab + ЗапуÑкает прагму foreign_key_check Ð´Ð»Ñ Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚Ð¾Ð¹ БД и возвращает результаты во вкладке "SQL" + + + + &Quick Integrity Check + &БыÑÑ‚Ñ€Ð°Ñ ÐŸÑ€Ð¾Ð²ÐµÑ€ÐºÐ° ЦелоÑтноÑти + + + + Run a quick integrity check over the open DB + ЗапуÑк быÑтрой проверки целоÑтноÑти Ð´Ð»Ñ Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚Ñ‹Ð¹ БД + + + + Runs the quick_check pragma over the opened database and returns the results in the Execute SQL tab. This command does most of the checking of PRAGMA integrity_check but runs much faster. + ЗапуÑкает прагму quick_check Ð´Ð»Ñ Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚Ð¾Ð¹ БД и возвращает результаты во вкладке "SQL". Эта команда выполнÑет большую чаÑть проверки PRAGMA integrity_check, но работает намного быÑтрее. + + + + &Optimize + &ÐžÐ¿Ñ‚Ð¸Ð¼Ð¸Ð·Ð°Ñ†Ð¸Ñ + + + + Attempt to optimize the database + Попытка оптимизации БД + + + + Runs the optimize pragma over the opened database. This pragma might perform optimizations that will improve the performance of future queries. + ВыполнÑет прагму optimize Ð´Ð»Ñ Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚Ð¾Ð¹ БД. Эта прагма может выполнÑть оптимизацию, ÐºÐ¾Ñ‚Ð¾Ñ€Ð°Ñ ÑƒÐ»ÑƒÑ‡ÑˆÐ¸Ñ‚ производительноÑть будущих запроÑов. + + + + + Print + Печать + + + + Print text from current SQL editor tab + Печать текÑта изтекущей вкладки редактора SQL + + + + Open a dialog for printing the text in the current SQL editor tab + Открывает диалоговое окно Ð´Ð»Ñ Ð¿ÐµÑ‡Ð°Ñ‚Ð¸ текÑта из текущей вкладки редактора SQL + + + + Print the structure of the opened database + Печать Ñтруктуры открытой БД + + + + Open a dialog for printing the structure of the opened database + Открывает диалоговое окно Ð´Ð»Ñ Ð¿ÐµÑ‡Ð°Ñ‚Ð¸ Ñтруктуры текущей БД + + + + Un/comment block of SQL code + + + + + Un/comment block + + + + + Comment or uncomment current line or selected block of code + + + + + Comment or uncomment the selected lines or the current line, when there is no selection. All the block is toggled according to the first line. + + + + + Ctrl+/ + + + + + Stop SQL execution + + + + + Stop execution + + + + + Stop the currently running SQL script + + + + + Browse Table + + + + + &Save Project As... + + + + + + + Save the project in a file selected in a dialog + + + + + Save A&ll + + + + + + + Save DB file, project file and opened SQL files + + + + + Ctrl+Shift+S + + + + + &File + &Файл + + + + &Import + &Импорт + + + + &Export + &ЭкÑпорт + + + + &Edit + &Редактирование + + + + &View + &Вид + + + + &Help + &Справка + + + + DB Toolbar + Панель инÑтрументов БД + + + + Edit Database &Cell + Редактирование &Ñчейки БД + + + + DB Sche&ma + Схе&ма БД + + + + &Remote + &Удаленный Ñервер + + + + + Execute current line + Выполнить текущую Ñтроку + + + + Shift+F5 + + + + + Sa&ve Project + &Сохранить проект + + + + Open an existing database file in read only mode + Открыть ÑущеÑтвующий файл базы данных в режиме только Ð´Ð»Ñ Ñ‡Ñ‚ÐµÐ½Ð¸Ñ + + + + Opens the SQLCipher FAQ in a browser window + Открыть SQLCiphier FAQ в браузере + + + + Export one or more table(s) to a JSON file + ЭкÑпортировать таблицы в JSON файл + + + + + Save SQL file as + Сохранить файл SQL как + + + + &Browse Table + Пр&оÑмотр данных + + + + User + Пользователем + + + + Application + Приложением + + + + &Clear + О&чиÑтить + + + + &New Database... + &ÐÐ¾Ð²Ð°Ñ Ð±Ð°Ð·Ð° данных... + + + + + Create a new database file + Создать новый файл базы данных + + + + This option is used to create a new database file. + Эта Ð¾Ð¿Ñ†Ð¸Ñ Ð¸ÑпользуетÑÑ, чтобы Ñоздать новый файл базы данных. + + + + Ctrl+N + + + + + + &Open Database... + &Открыть базу данных... + + + + + + + + Open an existing database file + Открыть ÑущеÑтвующий файл базы данных + + + + + + This option is used to open an existing database file. + Эта Ð¾Ð¿Ñ†Ð¸Ñ Ð¸ÑпользуетÑÑ, чтобы открыть ÑущеÑтвующий файл базы данных. + + + + Ctrl+O + + + + + &Close Database + &Закрыть базу данных + + + + This button closes the connection to the currently open database file + Эта кнопка закрывает Ñоединение Ñ Ñ‚ÐµÐºÑƒÑ‰Ð¸Ð¼ файлом БД + + + + + Ctrl+W + + + + + + Revert database to last saved state + Вернуть базу данных в поÑледнее Ñохранённое ÑоÑтоÑние + + + + This option is used to revert the current database file to its last saved state. All changes made since the last save operation are lost. + Эта Ð¾Ð¿Ñ†Ð¸Ñ Ð¸ÑпользуетÑÑ, чтобы вернуть текущий файл базы данных в его поÑледнее Ñохранённое ÑоÑтоÑние. Ð’Ñе изменениÑ, Ñделаные Ñ Ð¿Ð¾Ñледней операции ÑÐ¾Ñ…Ñ€Ð°Ð½ÐµÐ½Ð¸Ñ Ñ‚ÐµÑ€ÑÑŽÑ‚ÑÑ. + + + + + Write changes to the database file + ЗапиÑать Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð² файл базы данных + + + + This option is used to save changes to the database file. + Эта Ð¾Ð¿Ñ†Ð¸Ñ Ð¸ÑпользуетÑÑ, чтобы Ñохранить Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð² файле базы данных. + + + + Ctrl+S + + + + + Compact &Database... + &Уплотнить базу данных... + + + + Compact the database file, removing space wasted by deleted records + Уплотнить базу данных, удалÑÑ Ð¿Ñ€Ð¾ÑтранÑтво, занимаемое удалёнными запиÑÑми + + + + + Compact the database file, removing space wasted by deleted records. + Уплотнить базу данных, удалÑÑ Ð¿Ñ€Ð¾ÑтранÑтво, занимаемое удалёнными запиÑÑми. + + + + E&xit + &Выход + + + + Ctrl+Q + + + + + Import data from an .sql dump text file into a new or existing database. + Импортировать данные из текÑтового файла sql в новую или ÑущеÑтвующую базу данных. + + + + This option lets you import data from an .sql dump text file into a new or existing database. SQL dump files can be created on most database engines, including MySQL and PostgreSQL. + Эта Ð¾Ð¿Ñ†Ð¸Ñ Ð¿Ð¾Ð·Ð²Ð¾Ð»Ñет импортировать данные из текÑтового файла sql в новую или ÑущеÑтвующую базу данных. Файл SQL может быть Ñоздан на большинÑтве движков баз данных, Ð²ÐºÐ»ÑŽÑ‡Ð°Ñ MySQL и PostgreSQL. + + + + Open a wizard that lets you import data from a comma separated text file into a database table. + Открыть маÑтер, который позволÑет импортировать данные из файла CSV в таблицу базы данных. + + + + Open a wizard that lets you import data from a comma separated text file into a database table. CSV files can be created on most database and spreadsheet applications. + Открыть маÑтер, который позволÑет импортировать данные из файла CSV в таблицу базы данных. Файлы CSV могут быть Ñозданы в большинÑтве приложений баз данных и Ñлектронных таблиц. + + + + Export a database to a .sql dump text file. + ЭкÑпортировать базу данных в текÑтовый файл .sql. + + + + This option lets you export a database to a .sql dump text file. SQL dump files contain all data necessary to recreate the database on most database engines, including MySQL and PostgreSQL. + Эта Ð¾Ð¿Ñ†Ð¸Ñ Ð¿Ð¾Ð·Ð²Ð¾Ð»Ñет ÑкÑпортировать базу данных в текÑтовый файл .sql. Файлы SQL Ñодержат вÑе данные, необходимые Ð´Ð»Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð±Ð°Ð·Ñ‹ данных в большиÑтве движков баз данных, Ð²ÐºÐ»ÑŽÑ‡Ð°Ñ MySQL и PostgreSQL. + + + + Export a database table as a comma separated text file. + ЭкÑпортировать таблицу базы данных как CSV текÑтовый файл. + + + + Export a database table as a comma separated text file, ready to be imported into other database or spreadsheet applications. + ЭкÑпортировать таблицу базы данных как CSV текÑтовый файл, готовый Ð´Ð»Ñ Ð¸Ð¼Ð¿Ð¾Ñ€Ñ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð² другие базы данных или Ð¿Ñ€Ð¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ñлектронных таблиц. + + + + Open the Create Table wizard, where it is possible to define the name and fields for a new table in the database + Открыть маÑтер ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†, где возможно определить Ð¸Ð¼Ñ Ð¸ Ð¿Ð¾Ð»Ñ Ð´Ð»Ñ Ð½Ð¾Ð²Ð¾Ð¹ таблиы в базе данных + + + + Open the Delete Table wizard, where you can select a database table to be dropped. + Открыть маÑтер ÑƒÐ´Ð°Ð»ÐµÐ½Ð¸Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ‹, где можно выбрать таблицу базы данных Ð´Ð»Ñ ÑƒÐ´Ð°Ð»ÐµÐ½Ð¸Ñ. + + + + Open the Modify Table wizard, where it is possible to rename an existing table. It is also possible to add or delete fields form a table, as well as modify field names and types. + Открыть маÑтер Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ‹, где возможно переименовать ÑущеÑтвующую таблиц. Можно добавить или удалить Ð¿Ð¾Ð»Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ‹, так же изменÑть имена полей и типы. + + + + Open the Create Index wizard, where it is possible to define a new index on an existing database table. + Открыть маÑтер ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð¸Ð½Ñ‚ÐµÐºÑа, в котором можно определить новый Ð¸Ð½Ð´ÐµÐºÑ Ð´Ð»Ñ ÑущеÑтвующей таблиц базы данных. + + + + &Preferences... + &ÐаÑтройки... + + + + + Open the preferences window. + Открыть окно наÑтроек. + + + + &DB Toolbar + &Панель инÑтрументов БД + + + + Shows or hides the Database toolbar. + Показать или Ñкрыть панель инÑтрументов База данных. + + + + Shift+F1 + + + + + &Recently opened + &Ðедавно открываемые + + + + Open &tab + Открыть &вкладку + + + + Ctrl+T + + + + + + Database Structure + This has to be equal to the tab title in all the main tabs + Структура БД + + + + This is the structure of the opened database. +You can drag SQL statements from an object row and drop them into other applications or into another instance of 'DB Browser for SQLite'. + + Это Ñтруктура открытой БД. +Ð’Ñ‹ можете перетаÑкивать операторы SQL из Ñтроки "объект" и переноÑить их в другие Ð¿Ñ€Ð¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð¸Ð»Ð¸ в другой ÑкземплÑÑ€ "Обозреватель Ð´Ð»Ñ SQLite". + + + + + + Browse Data + This has to be equal to the tab title in all the main tabs + Данные + + + + + Edit Pragmas + This has to be equal to the tab title in all the main tabs + Прагмы + + + + + Execute SQL + This has to be equal to the tab title in all the main tabs + SQL + + + + SQL &Log + &Журнал SQL + + + + Show S&QL submitted by + По&казывать SQL, выполненный + + + + &Plot + &График + + + + &Revert Changes + &Отменить Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ + + + + &Write Changes + &ЗапиÑать Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ + + + + &Database from SQL file... + &База данных из файла SQL... + + + + &Table from CSV file... + &Таблицы из файла CSV... + + + + &Database to SQL file... + Базу &данных в файл SQL... + + + + &Table(s) as CSV file... + &Таблицы в файл CSV... + + + + &Create Table... + &Создать таблицу... + + + + &Delete Table... + &Удалить таблицу... + + + + &Modify Table... + &Изменить таблицу... + + + + Create &Index... + Создать и&ндекÑ... + + + + W&hat's This? + Что &Ñто такое? + + + + &Execute SQL + Ð’&ыполнить код SQL + + + + + + Save SQL file + Сохранить файл SQL + + + + Ctrl+E + + + + + Export as CSV file + ЭкÑпортировать в файл CSV + + + + Export table as comma separated values file + ЭкÑпортировать таблицу как CSV файл + + + + + Save the current session to a file + Сохранить текущее ÑоÑтоÑние в файл + + + + This button lets you save all the settings associated to the open DB to a DB Browser for SQLite project file + + + + + + Load a working session from a file + Загрузить рабочее ÑоÑтоÑние из файла + + + + Copy Create statement + Копировать CREATE выражение + + + + Copy the CREATE statement of the item to the clipboard + Копировать CREATE выражение Ñлемента в буффер обмена + + + + Ctrl+Return + + + + + Ctrl+L + + + + + + Ctrl+P + + + + + Ctrl+D + + + + + Ctrl+I + + + + + Reset Window Layout + + + + + Alt+0 + + + + + The database is currenctly busy. + + + + + Click here to interrupt the currently running query. + + + + + Encrypted + Зашифровано + + + + Read only + Только Ð´Ð»Ñ Ñ‡Ñ‚ÐµÐ½Ð¸Ñ + + + + Database file is read only. Editing the database is disabled. + База данных только Ð´Ð»Ñ Ñ‡Ñ‚ÐµÐ½Ð¸Ñ. Редактирование запрещено. + + + + Database encoding + Кодировка базы данных + + + + Database is encrypted using SQLCipher + База данных зашифрована Ñ Ð¸Ñпользованием SQLCipher + + + + + Choose a database file + Выбрать файл базы данных + + + + Could not open database file. +Reason: %1 + Ðе удалоÑÑŒ открыть файл базы данных. +Причина:%1 + + + + + + Choose a filename to save under + Выбрать имÑ, под которым Ñохранить данные + + + + A new DB Browser for SQLite version is available (%1.%2.%3).<br/><br/>Please download at <a href='%4'>%4</a>. + Вышла Ð½Ð¾Ð²Ð°Ñ Ð²ÐµÑ€ÑÐ¸Ñ ÐžÐ±Ð¾Ð·Ñ€ÐµÐ²Ð°Ñ‚ÐµÐ»Ñ Ð´Ð»Ñ SQLite (%1.%2.%3).<br/><br/>Она доÑтупна Ð´Ð»Ñ ÑÐºÐ°Ñ‡Ð¸Ð²Ð°Ð½Ð¸Ñ Ð¿Ð¾ адреÑу <a href='%4'>%4</a>. + + + + DB Browser for SQLite project file (*.sqbpro) + Файл проекта ÐžÐ±Ð¾Ð·Ñ€ÐµÐ²Ð°Ñ‚ÐµÐ»Ñ Ð´Ð»Ñ SQLite (*.sqbpro) + + + + Error while saving the database file. This means that not all changes to the database were saved. You need to resolve the following error first. + +%1 + Ошибка при Ñохранении файла базы данных. Это означает, что не вÑе Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð² базе данных были Ñохранены. Сначала вам необходимо разрешить Ñледующую ошибку. + +%1 + + + + Are you sure you want to undo all changes made to the database file '%1' since the last save? + Отменить вÑе изменениÑ, Ñделанные в файле базы данных '%1' поÑле поÑледнего ÑохранениÑ? + + + + Choose a file to import + Выберать файл Ð´Ð»Ñ Ð¸Ð¼Ð¿Ð¾Ñ€Ñ‚Ð° + + + + Text files(*.sql *.txt);;All files(*) + ТекÑтовые файлы(*.sql *.txt);;Ð’Ñе файлы(*) + + + + Do you want to create a new database file to hold the imported data? +If you answer no we will attempt to import the data in the SQL file to the current database. + Создать новый файл базы данных, чтобы Ñохранить импортированные данные? +ЕÑли ответить Ðет, будет выполнена попытка импортировать данные файла SQL в текущую базу данных. + + + + Window Layout + + + + + Simplify Window Layout + + + + + Shift+Alt+0 + + + + + Dock Windows at Bottom + + + + + Dock Windows at Left Side + + + + + Dock Windows at Top + + + + + You are still executing SQL statements. Closing the database now will stop their execution, possibly leaving the database in an inconsistent state. Are you sure you want to close the database? + + + + + Do you want to save the changes made to the project file '%1'? + + + + + Edit View %1 + + + + + Edit Trigger %1 + + + + + File %1 already exists. Please choose a different name. + Файл %1 уже ÑущеÑтвует. Выберите другое имÑ. + + + + Error importing data: %1 + Ошибка Ð¸Ð¼Ð¿Ð¾Ñ€Ñ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð´Ð°Ð½Ð½Ñ‹Ñ…: %1 + + + + Import completed. + Импорт завершён. + + + + Delete View + Удалить предÑтавление + + + + Modify View + Модифицировать предÑтавление + + + + Delete Trigger + Удалить триггер + + + + Modify Trigger + Модифицировать триггер + + + + Delete Index + Удалить Ð¸Ð½Ð´ÐµÐºÑ + + + + Opened '%1' in read-only mode from recent file list + + + + + Opened '%1' from recent file list + + + + + &%1 %2%3 + &%1 %2%3 + + + + (read only) + + + + + Open Database or Project + + + + + Attach Database... + + + + + Import CSV file(s)... + + + + + Select the action to apply to the dropped file(s). <br/>Note: only 'Import' will process more than one file. + + + + + + + + + Do you want to save the changes made to SQL tabs in a new project file? + + + + + Do you want to save the changes made to the SQL file %1? + + + + + The statements in this tab are still executing. Closing the tab will stop the execution. This might leave the database in an inconsistent state. Are you sure you want to close the tab? + + + + + Could not find resource file: %1 + + + + + Choose a project file to open + Выберите файл проекта Ð´Ð»Ñ Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚Ð¸Ñ + + + + This project file is using an old file format because it was created using DB Browser for SQLite version 3.10 or lower. Loading this file format is still fully supported but we advice you to convert all your project files to the new file format because support for older formats might be dropped at some point in the future. You can convert your files by simply opening and re-saving them. + Этот файл проекта иÑпользует Ñтарый формат файла, потому что он был Ñоздан Ñ Ð¸Ñпользованием DB Browser Ð´Ð»Ñ SQLite верÑии 3.10 или ниже. Загрузка Ñтого формата по-прежнему полноÑтью поддерживаетÑÑ, но мы Ñоветуем вам преобразовать вÑе ваши файлы проекта в новый формат файла, поÑкольку поддержка более Ñтарых форматов может быть удалена в какой-то момент в будущем. Ð’Ñ‹ можете конвертировать ваши файлы, проÑто Ð¾Ñ‚ÐºÑ€Ñ‹Ð²Ð°Ñ Ð¸ повторно ÑохранÑÑ Ð¸Ñ…. + + + + Could not open project file for writing. +Reason: %1 + + + + + Busy (%1) + + + + + Error checking foreign keys after table modification. The changes will be reverted. + Ошибка проверки внешних ключей поÑле Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ‹. Ð˜Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð±ÑƒÐ´ÑƒÑ‚ отменены. + + + + This table did not pass a foreign-key check.<br/>You should run 'Tools | Foreign-Key Check' and fix the reported issues. + Эта таблица не прошла проверку внешнего ключа. <br/> Ð’Ñ‹ должны запуÑтить "ИнÑтрументы | Проверка внешнего ключа"и иÑправить Ñообщенные проблемы. + + + + Execution finished with errors. + + + + + Execution finished without errors. + + + + + + Delete Table + Удалить таблицу + + + + Setting PRAGMA values will commit your current transaction. +Are you sure? + УÑтановка значений PRAGMA завершит текущую транзакцию. УÑтановить значениÑ? + + + + In-Memory database + БД в памÑти + + + + Are you sure you want to delete the table '%1'? +All data associated with the table will be lost. + Ð’Ñ‹ дейÑтвительно хотите удалить таблицу '%1'? +Ð’Ñе данные, ÑвÑзанные Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†ÐµÐ¹, будут потерÑны. + + + + Are you sure you want to delete the view '%1'? + Ð’Ñ‹ дейÑтвительно хотите удалить предÑтавление '%1'? + + + + Are you sure you want to delete the trigger '%1'? + Ð’Ñ‹ дейÑтвительно хотите удалить триггер '%1'? + + + + Are you sure you want to delete the index '%1'? + Ð’Ñ‹ дейÑтвительно хотите удалить Ð¸Ð½Ð´ÐµÐºÑ '%1'? + + + + Error: could not delete the table. + Ошибка: не удалоÑÑŒ удалить таблицу. + + + + Error: could not delete the view. + Ошибка: не удалоÑÑŒ удалить предÑтавление. + + + + Error: could not delete the trigger. + Ошибка: не удалоÑÑŒ удалить триггер. + + + + Error: could not delete the index. + Ошибка: не удалоÑÑŒ удалить индекÑ. + + + + Message from database engine: +%1 + Сообщение от СУБД: +%1 + + + + Editing the table requires to save all pending changes now. +Are you sure you want to save the database? + Ð”Ð»Ñ Ñ€ÐµÐ´Ð°ÐºÑ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ‹ необходимо Ñохранить вÑе ожидающие Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ ÑейчаÑ. +Ð’Ñ‹ дейÑтвительно хотите Ñохранить БД? + + + + You are already executing SQL statements. Do you want to stop them in order to execute the current statements instead? Note that this might leave the database in an inconsistent state. + + + + + -- EXECUTING SELECTION IN '%1' +-- + -- ВЫПОЛÐЕÐИЕ ВЫБОРКИ Ð’ '%1' +-- + + + + -- EXECUTING LINE IN '%1' +-- + -- ВЫПОЛÐЕÐИЕ СТРОКИ Ð’ '%1' +-- + + + + -- EXECUTING ALL IN '%1' +-- + -- ВЫПОЛÐЕÐИЕ ВСЕ Ð’ '%1' +-- + + + + + At line %1: + + + + + Result: %1 + + + + + Result: %2 + + + + + Setting PRAGMA values or vacuuming will commit your current transaction. +Are you sure? + УÑтановка значений PRAGMA или Ð²Ð°ÐºÑƒÑƒÐ¼Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð¿Ñ€Ð¸Ð²ÐµÐ´ÐµÑ‚ к фикÑации текущей транзакции. +Уверены ли вы? + + + + This action will open a new SQL tab with the following statements for you to edit and run: + + + + + Rename Tab + + + + + Duplicate Tab + + + + + Close Tab + + + + + Opening '%1'... + + + + + There was an error opening '%1'... + + + + + Value is not a valid URL or filename: %1 + + + + + %1 rows returned in %2ms + %1 Ñтрок возвращено за %2Ð¼Ñ + + + + Choose text files + Выберите текÑтовые файлы + + + + Import completed. Some foreign key constraints are violated. Please fix them before saving. + Импорт завершен. Ðарушены некоторые Ð¾Ð³Ñ€Ð°Ð½Ð¸Ñ‡ÐµÐ½Ð¸Ñ Ð²Ð½ÐµÑˆÐ½Ð¸Ñ… ключей. ПожалуйÑта, иÑправьте их перед Ñохранением. + + + + Modify Index + Модифицировать Ð˜Ð½Ð´ÐµÐºÑ + + + + Modify Table + Модифицировать Таблицу + + + + Do you want to save the changes made to SQL tabs in the project file '%1'? + + + + + Select SQL file to open + Выбрать файл SQL Ð´Ð»Ñ Ð¾ÐºÑ‚Ñ€Ñ‹Ñ‚Ð¸Ñ + + + + Select file name + Выбрать Ð¸Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð° + + + + Select extension file + Выбрать раÑширение файла + + + + Extension successfully loaded. + РаÑширение уÑпешно загружено. + + + + Error loading extension: %1 + Ошибка загрузки раÑширениÑ: %1 + + + + + Don't show again + Ðе показывать Ñнова + + + + New version available. + ДоÑтупна Ð½Ð¾Ð²Ð°Ñ Ð²ÐµÑ€ÑиÑ. + + + + Project saved to file '%1' + + + + + Collation needed! Proceed? + Ðужно выполнить ÑопоÑтавление! Продолжить? + + + + A table in this database requires a special collation function '%1' that this application can't provide without further knowledge. +If you choose to proceed, be aware bad things can happen to your database. +Create a backup! + Таблица в базе данных требует Ð²Ñ‹Ð¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ Ñпециальной функции ÑопоÑÑ‚Ð°Ð²Ð»ÐµÐ½Ð¸Ñ '%1'. +ЕÑли вы продолжите, то возможна порча вашей базы данных. +Создайте резервную копию! + + + + creating collation + + + + + Set a new name for the SQL tab. Use the '&&' character to allow using the following character as a keyboard shortcut. + Задайте новое Ð¸Ð¼Ñ Ð´Ð»Ñ Ð²ÐºÐ»Ð°Ð´ÐºÐ¸ SQL. ИÑпользуйте Ñимвол '&&', чтобы разрешить иÑпользование Ñледующего Ñимвола в качеÑтве ÑÐ¾Ñ‡ÐµÑ‚Ð°Ð½Ð¸Ñ ÐºÐ»Ð°Ð²Ð¸Ñˆ. + + + + Please specify the view name + Укажите Ð¸Ð¼Ñ Ð¿Ñ€ÐµÐ´ÑÑ‚Ð°Ð²Ð»ÐµÐ½Ð¸Ñ + + + + There is already an object with that name. Please choose a different name. + Объект Ñ ÑƒÐºÐ°Ð·Ð°Ð½Ð½Ñ‹Ð¼ именем уже ÑущеÑтвует. Выберите другое имÑ. + + + + View successfully created. + ПредÑтавление уÑпешно Ñоздано. + + + + Error creating view: %1 + Ошибка ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð¿Ñ€ÐµÐ´ÑтавлениÑ: %1 + + + + This action will open a new SQL tab for running: + Это дейÑтвие откроет новую вкладку SQL Ð´Ð»Ñ Ð·Ð°Ð¿ÑƒÑка: + + + + Press Help for opening the corresponding SQLite reference page. + Ðажмите "Справка" Ð´Ð»Ñ Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚Ð¸Ñ ÑоответÑтвующей Ñправочной Ñтраницы SQLite. + + + + NullLineEdit + + + Set to NULL + УÑтановить в NULL + + + + Alt+Del + + + + + PlotDock + + + Plot + График + + + + <html><head/><body><p>This pane shows the list of columns of the currently browsed table or the just executed query. You can select the columns that you want to be used as X or Y axis for the plot pane below. The table shows detected axis type that will affect the resulting plot. For the Y axis you can only select numeric columns, but for the X axis you will be able to select:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Date/Time</span>: strings with format &quot;yyyy-MM-dd hh:mm:ss&quot; or &quot;yyyy-MM-ddThh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Date</span>: strings with format &quot;yyyy-MM-dd&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Time</span>: strings with format &quot;hh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Label</span>: other string formats. Selecting this column as X axis will produce a Bars plot with the column values as labels for the bars</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Numeric</span>: integer or real values</li></ul><p>Double-clicking the Y cells you can change the used color for that graph.</p></body></html> + <html><head/><body><p>Ðа Ñтой панели отображаетÑÑ ÑпиÑок Ñтолбцов текущей проÑматриваемой таблицы или только что выполненного запроÑа. Ð’Ñ‹ можете выбрать Ñтолбцы, которые вы хотите иÑпользовать в качеÑтве оÑи X или Y Ð´Ð»Ñ Ð³Ñ€Ð°Ñ„Ð¸ÐºÐ° ниже. Ð’ таблице показан тип обнаруженной оÑи, который повлиÑет на итоговый график. Ð”Ð»Ñ Ð¾Ñи Y вы можете выбирать только чиÑловые Ñтолбцы, но Ð´Ð»Ñ Ð¾Ñи X вы можете выбрать:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Дата/ВремÑ</span>: Ñтроки Ñ Ñ„Ð¾Ñ€Ð¼Ð°Ñ‚Ð¾Ð¼ &quot;гггг-ММ-дд чч:мм:ÑÑ&quot; или &quot;гггг-ММ-ддTчч:мм:ÑÑ&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Дата</span>: Ñтроки Ñ Ñ„Ð¾Ñ€Ð¼Ð°Ñ‚Ð¾Ð¼ &quot;гггг-ММ-дд&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">ВремÑ</span>: Ñтроки Ñ Ñ„Ð¾Ñ€Ð¼Ð°Ñ‚Ð¾Ð¼ &quot;чч:мм:ÑÑ&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">ТекÑÑ‚</span>: Ñтроки лубого формата. Выбор Ñтого Ñтолбца по оÑи X приведет к Ñозданию графика Баров, Ñо значениÑми Ñтолбцов в качеÑтве меток Ð´Ð»Ñ Ð±Ð°Ñ€Ð¾Ð²</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">ЧиÑла</span>: целочиÑленные или вещеÑтвенные значениÑ</li></ul><p>Дважды щелкните по Ñчейкам Y, вы можете изменить иÑпользуемый цвет Ð´Ð»Ñ Ñтого графика.</p></body></html> + + + + Columns + Столбцы + + + + X + X + + + + Y1 + + + + + Y2 + + + + + Axis Type + ОÑÑŒ + + + + Here is a plot drawn when you select the x and y values above. + +Click on points to select them in the plot and in the table. Ctrl+Click for selecting a range of points. + +Use mouse-wheel for zooming and mouse drag for changing the axis range. + +Select the axes or axes labels to drag and zoom only in that orientation. + Вот график, нариÑованный, когда вы выбираете Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ x и y выше. + +Ðажмите на пункты, чтобы выбрать их на графике и в таблице. Ctrl + Click Ð´Ð»Ñ Ð²Ñ‹Ð±Ð¾Ñ€Ð° диапазона точек. + +ИÑпользуйте колеÑико мыши Ð´Ð»Ñ Ð¼Ð°ÑÑˆÑ‚Ð°Ð±Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð¸ перетаÑÐºÐ¸Ð²Ð°Ð½Ð¸Ñ Ð¼Ñ‹ÑˆÑŒÑŽ Ð´Ð»Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð´Ð¸Ð°Ð¿Ð°Ð·Ð¾Ð½Ð° оÑей. + +Выберите метки оÑей или оÑей Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÑ‚Ð°ÑÐºÐ¸Ð²Ð°Ð½Ð¸Ñ Ð¸ маÑÑˆÑ‚Ð°Ð±Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ñ‚Ð¾Ð»ÑŒÐºÐ¾ в Ñтой ориентации. + + + + Line type: + ЛиниÑ: + + + + + None + Ðет + + + + Line + ÐžÐ±Ñ‹Ñ‡Ð½Ð°Ñ + + + + StepLeft + СтупенчатаÑ, Ñлева + + + + StepRight + СтупенчатаÑ, Ñправа + + + + StepCenter + СтупенчатаÑ, по центру + + + + Impulse + Ð˜Ð¼Ð¿ÑƒÐ»ÑŒÑ + + + + Point shape: + ОтриÑовка точек: + + + + Cross + КреÑÑ‚ + + + + Plus + ÐŸÐ»ÑŽÑ + + + + Circle + Круг + + + + Disc + ДиÑк + + + + Square + Квадрат + + + + Diamond + Ромб + + + + Star + Звезда + + + + Triangle + Треугольник + + + + TriangleInverted + Треугольник перевернутый + + + + CrossSquare + КреÑÑ‚ в квадрате + + + + PlusSquare + ÐŸÐ»ÑŽÑ Ð² квадрате + + + + CrossCircle + КреÑÑ‚ в круге + + + + PlusCircle + ÐŸÐ»ÑŽÑ Ð² круге + + + + Peace + Мир + + + + <html><head/><body><p>Save current plot...</p><p>File format chosen by extension (png, jpg, pdf, bmp)</p></body></html> + <html><head/><body><p>Сохранить текущий график...</p><p>Формат файла выбираетÑÑ Ñ€Ð°Ñширением (png, jpg, pdf, bmp)</p></body></html> + + + + Save current plot... + Сохранить текущий график... + + + + + Load all data and redraw plot + Загрузить вÑе данные и перериÑовать + + + + + + Row # + Строка # + + + + Copy + Копировать + + + + Print... + Печать... + + + + Show legend + Легенда + + + + Stacked bars + + + + + Date/Time + Дата/Ð’Ñ€ÐµÐ¼Ñ + + + + Date + Дата + + + + Time + Ð’Ñ€ÐµÐ¼Ñ + + + + + Numeric + ЧиÑло + + + + Label + ТекÑÑ‚ + + + + Invalid + Ошибка + + + + Load all data and redraw plot. +Warning: not all data has been fetched from the table yet due to the partial fetch mechanism. + Загружает вÑе данные и перериÑовыет график. +Предупреждение: не вÑе данные были получены из таблицы из-за механизма чаÑтичной выборки. + + + + Choose an axis color + Выберите цвет оÑи + + + + Choose a filename to save under + Выбрать Ð¸Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð°, под которым Ñохранить данные + + + + PNG(*.png);;JPG(*.jpg);;PDF(*.pdf);;BMP(*.bmp);;All Files(*) + PNG(*.png);;JPG(*.jpg);;PDF(*.pdf);;BMP(*.bmp);;Ð’Ñе файлы(*) + + + + There are curves in this plot and the selected line style can only be applied to graphs sorted by X. Either sort the table or query by X to remove curves or select one of the styles supported by curves: None or Line. + Ðа Ñтом графике еÑть кривые, и выбранный Ñтиль линии может применÑтьÑÑ Ñ‚Ð¾Ð»ÑŒÐºÐ¾ к графикам, отÑортированным по X. Либо Ñортируйте таблицу или Ð·Ð°Ð¿Ñ€Ð¾Ñ Ð¿Ð¾ X, чтобы удалить кривые, либо выберите один из Ñтилей, поддерживаемых кривыми: None или Line. + + + + Loading all remaining data for this table took %1ms. + + + + + PreferencesDialog + + + Preferences + ÐаÑтройки + + + + &Database + &База данных + + + + Database &encoding + &Кодировка базы данных + + + + Open databases with foreign keys enabled. + Открывать базы данных Ñ Ð²ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ‹Ð¼Ð¸ внешними ключами. + + + + &Foreign keys + &Внешние ключи + + + + + + + + + + + + enabled + включены + + + + Default &location + &РаÑположение +по умолчанию + + + + + + ... + ... + + + + &General + &Общие + + + + Remember last location + Запоминать поÑледнюю директорию + + + + Always use this location + Ð’Ñегда открывать указанную + + + + Remember last location for session only + Запоминать поÑледнюю директорию только Ð´Ð»Ñ ÑеÑÑий + + + + Lan&guage + &Язык + + + + Automatic &updates + &Следить за обновлениÑми + + + + SQ&L to execute after opening database + + + + + Data &Browser + Обозреватель &данных + + + + Remove line breaks in schema &view + Удалить переводы Ñтроки в &Ñхеме данных + + + + Show remote options + Опции "облака" + + + + Prefetch block si&ze + Размер блока &упреждающей выборки + + + + Default field type + Тип данных по умолчанию + + + + Font + Шрифт + + + + &Font + &Шрифт + + + + Content + Содержимое + + + + Symbol limit in cell + КоличеÑтво Ñимволов в Ñчейке + + + + NULL + + + + + Regular + Обычные + + + + Binary + Двоичные данные + + + + Background + Фон + + + + Filters + Фильтры + + + + Threshold for completion and calculation on selection + + + + + Show images in cell + + + + + Enable this option to show a preview of BLOBs containing image data in the cells. This can affect the performance of the data browser, however. + + + + + Escape character + Символ ÑÐºÑ€Ð°Ð½Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ + + + + Delay time (&ms) + Ð’Ñ€ÐµÐ¼Ñ Ð·Ð°Ð´ÐµÑ€Ð¶ÐºÐ¸ (&мÑ) + + + + Set the waiting time before a new filter value is applied. Can be set to 0 for disabling waiting. + Ð’Ñ€ÐµÐ¼Ñ Ð·Ð°Ð´ÐµÑ€Ð¶ÐºÐ¸ перед применением нового фильтра. Ðулевое значение отключает ожидание. + + + + &SQL + Р&едактор SQL + + + + Settings name + Ð˜Ð¼Ñ Ð½Ð°Ñтроек + + + + Context + КонтекÑÑ‚ + + + + Colour + Цвет + + + + Bold + Жирный + + + + Italic + КурÑив + + + + Underline + Подчёркивание + + + + Keyword + Ключевое Ñлово + + + + Function + Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ + + + + Table + Таблица + + + + Comment + Комментарий + + + + Identifier + Идентификатор + + + + String + Строка + + + + Current line + Ð¢ÐµÐºÑƒÑ‰Ð°Ñ Ñтрока + + + + SQL &editor font size + Размер шрифта в &редакторе SQL + + + + Tab size + Размер табулÑции + + + + SQL editor &font + &Шрифт в редакторе SQL + + + + Error indicators + Индикаторы ошибок + + + + Hori&zontal tiling + Гори&зонтальное раÑпределение + + + + If enabled the SQL code editor and the result table view are shown side by side instead of one over the other. + ЕÑли Ð´Ð°Ð½Ð½Ð°Ñ Ð¾Ð¿Ñ†Ð¸Ñ Ð²ÐºÐ»ÑŽÑ‡ÐµÐ½Ð°, то SQL редактор и результат запроÑа будут раÑположены Ñ€Ñдом по горизонтали. + + + + Code co&mpletion + Ðвто&дополнение кода + + + + Toolbar style + Стиль тулбара + + + + + + + + Only display the icon + Только иконки + + + + + + + + Only display the text + Только текÑÑ‚ + + + + + + + + The text appears beside the icon + ТекÑÑ‚ над иконкой + + + + + + + + The text appears under the icon + ТекÑÑ‚ под иконкой + + + + + + + + Follow the style + Указано в Ñтиле + + + + DB file extensions + РаÑÑˆÐ¸Ñ€ÐµÐ½Ð¸Ñ Ñ„Ð°Ð¹Ð»Ð¾Ð² БД + + + + Manage + ÐаÑтроить + + + + Main Window + + + + + Database Structure + Структура БД + + + + Browse Data + Данные + + + + Execute SQL + SQL + + + + Edit Database Cell + Редактирование Ñчейки БД + + + + When this value is changed, all the other color preferences are also set to matching colors. + + + + + Follow the desktop style + + + + + Dark style + + + + + Application style + + + + + This sets the font size for all UI elements which do not have their own font size option. + + + + + Font size + + + + + When enabled, the line breaks in the Schema column of the DB Structure tab, dock and printed output are removed. + Когда отмечено, переноÑÑ‹ Ñтрок в Ñтолбце 'Схема' во вкладке 'Структура базы данных', 'док' и 'печатный результат' удалÑÑŽÑ‚ÑÑ. + + + + Database structure font size + + + + + Font si&ze + Ра&змер шрифта + + + + This is the maximum number of items allowed for some computationally expensive functionalities to be enabled: +Maximum number of rows in a table for enabling the value completion based on current values in the column. +Maximum number of indexes in a selection for calculating sum and average. +Can be set to 0 for disabling the functionalities. + + + + + This is the maximum number of rows in a table for enabling the value completion based on current values in the column. +Can be set to 0 for disabling completion. + МакÑимальное количеÑтво Ñтрок в таблице Ð´Ð»Ñ Ð²ÐºÐ»ÑŽÑ‡ÐµÐ½Ð¸Ñ Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð¸Ñ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð½Ð° оÑнове текущих значений в Ñтолбце. +Может быть уÑтановлено в 0 Ð´Ð»Ñ Ð¾Ñ‚ÐºÐ»ÑŽÑ‡ÐµÐ½Ð¸Ñ Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð¸Ñ. + + + + Field display + Отображение Ð¿Ð¾Ð»Ñ + + + + Displayed &text + Отображаемый &текÑÑ‚ + + + + + + + + + Click to set this color + + + + + Text color + Цвет текÑта + + + + Background color + Цвет фона + + + + Preview only (N/A) + Предв. проÑмотр + + + + Foreground + Передний план + + + + SQL &results font size + &Размер шрифта + + + + &Wrap lines + &ÐŸÐµÑ€ÐµÐ½Ð¾Ñ Ñтрок + + + + Never + Ðикогда + + + + At word boundaries + Ðа границах Ñлов + + + + At character boundaries + Ðа границах Ñимволов + + + + At whitespace boundaries + Ðа границах пробелов + + + + &Quotes for identifiers + Обравмление &идентификаторов + + + + Choose the quoting mechanism used by the application for identifiers in SQL code. + Выберите механизм обрамлениÑ, иÑпользуемый приложением Ð´Ð»Ñ Ð¸Ð´ÐµÐ½Ñ‚Ð¸Ñ„Ð¸ÐºÐ°Ñ‚Ð¾Ñ€Ð¾Ð² в коде SQL. + + + + "Double quotes" - Standard SQL (recommended) + "Двойные кавычки" - Cтандартный SQL (рекомендуетÑÑ) + + + + `Grave accents` - Traditional MySQL quotes + `ГравиÑ` - Традиционные кавычки MySQL + + + + [Square brackets] - Traditional MS SQL Server quotes + [Квадратные Ñкобки] - традиционные кавычки Ð´Ð»Ñ MS SQL Server + + + + Keywords in &UPPER CASE + Ключевые Ñлова в &ВЕРХÐЕМ РЕГИСТРЕ + + + + When set, the SQL keywords are completed in UPPER CASE letters. + Когда отмечено, ключевые Ñлова SQL будут в ВЕРХÐЕМ РЕГИСТРЕ. + + + + When set, the SQL code lines that caused errors during the last execution are highlighted and the results frame indicates the error in the background + Когда уÑтановлено, Ñтроки кода SQL, вызвавшие ошибки во Ð²Ñ€ÐµÐ¼Ñ Ð¿Ð¾Ñледнего выполнениÑ, подÑвечиваютÑÑ, а виджет результатов указывает на ошибку в фоновом режиме + + + + Close button on tabs + + + + + If enabled, SQL editor tabs will have a close button. In any case, you can use the contextual menu or the keyboard shortcut to close them. + + + + + &Extensions + Р&аÑÑˆÐ¸Ñ€ÐµÐ½Ð¸Ñ + + + + Select extensions to load for every database: + Выберите раÑширениÑ, чтобы загружать их Ð´Ð»Ñ ÐºÐ°Ð¶Ð´Ð¾Ð¹ базы данных: + + + + Add extension + Добавить раÑширение + + + + Remove extension + Удалить раÑширение + + + + <html><head/><body><p>While supporting the REGEXP operator SQLite doesn't implement any regular expression<br/>algorithm but calls back the running application. DB Browser for SQLite implements this<br/>algorithm for you to let you use REGEXP out of the box. However, as there are multiple possible<br/>implementations of this and you might want to use another one, you're free to disable the<br/>application's implementation and load your own by using an extension. Requires restart of the application.</p></body></html> + <html><head/><body><p>Обозреватель Ð´Ð»Ñ SQLite позволÑет иÑпользовать оператор REGEXP 'из коробки'. Ðо тем <br/>не менее, возможны неÑколько различных вариантов реализаций данного оператора и вы Ñвободны <br/>в выборе какую именно иÑпользовать. Можно отключить нашу реализацию и иÑпользовать другую - <br/>путем загрузки ÑоответÑвующего раÑширениÑ. Ð’ Ñтом Ñлучае требуетÑÑ Ð¿ÐµÑ€ÐµÐ·Ð°Ð³Ñ€ÑƒÐ·ÐºÐ° приложениÑ.</p></body></html> + + + + Disable Regular Expression extension + Отключить раÑширение РегулÑрных Выражений + + + + <html><head/><body><p>SQLite provides an SQL function for loading extensions from a shared library file. Activate this if you want to use the <span style=" font-style:italic;">load_extension()</span> function from SQL code.</p><p>For security reasons, extension loading is turned off by default and must be enabled through this setting. You can always load extensions through the GUI, even though this option is disabled.</p></body></html> + + + + + Allow loading extensions from SQL code + + + + + Remote + Удаленный Ñервер + + + + CA certificates + СРÑертификаты + + + + Proxy + + + + + Configure + + + + + + Subject CN + + + + + Common Name + + + + + Subject O + + + + + Organization + + + + + + Valid from + + + + + + Valid to + + + + + + Serial number + + + + + Your certificates + Ваши Ñертификаты + + + + File + Файл + + + + Subject Common Name + + + + + Issuer CN + + + + + Issuer Common Name + + + + + Clone databases into + Путь Ð´Ð»Ñ ÐºÐ»Ð¾Ð½Ð¸Ñ€ÑƒÐµÐ¼Ñ‹Ñ… БД + + + + + Choose a directory + Выберать каталог + + + + The language will change after you restart the application. + Язык будет применен поÑле перезапуÑка приложениÑ. + + + + Select extension file + Выберать файл раÑÑˆÐ¸Ñ€ÐµÐ½Ð¸Ñ + + + + Extensions(*.so *.dylib *.dll);;All files(*) + + + + + Import certificate file + Импорт файла Ñертификата + + + + No certificates found in this file. + Ð’ данном файле не найден Ñертификат. + + + + Are you sure you want do remove this certificate? All certificate data will be deleted from the application settings! + Ð’Ñ‹ дейÑтвительно хотите удалить Ñтот Ñертификат? Ð’Ñе данные Ñертификата будут удалены из наÑтроек приложениÑ! + + + + Are you sure you want to clear all the saved settings? +All your preferences will be lost and default values will be used. + Ð’Ñ‹ дейÑтвительно хотите удалить вÑе Ñохраненные наÑтройки? +Ð’Ñе ваши Ð¿Ñ€ÐµÐ´Ð¿Ð¾Ñ‡Ñ‚ÐµÐ½Ð¸Ñ Ð±ÑƒÐ´ÑƒÑ‚ потерÑны, и будут иÑпользоватьÑÑ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð¿Ð¾ умолчанию. + + + + ProxyDialog + + + Proxy Configuration + + + + + Pro&xy Type + + + + + Host Na&me + + + + + Port + + + + + Authentication Re&quired + + + + + &User Name + + + + + Password + + + + + None + Ðет + + + + System settings + + + + + HTTP + + + + + Socks v5 + + + + + QObject + + + Error importing data + Ошибка Ð¸Ð¼Ð¿Ð¾Ñ€Ñ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð´Ð°Ð½Ð½Ñ‹Ñ… + + + + from record number %1 + Ñ Ð·Ð°Ð¿Ð¸Ñи номер %1 + + + + . +%1 + + + + + Importing CSV file... + Импортирование CSV файла... + + + + Cancel + Отменить + + + + All files (*) + Ð’Ñе файлы (*) + + + + SQLite database files (*.db *.sqlite *.sqlite3 *.db3) + Файлы SQLite баз данных (*.db *.sqlite *.sqlite3 *.db3) + + + + Left + + + + + Right + + + + + Center + + + + + Justify + + + + + SQLite Database Files (*.db *.sqlite *.sqlite3 *.db3) + + + + + DB Browser for SQLite Project Files (*.sqbpro) + + + + + SQL Files (*.sql) + + + + + All Files (*) + + + + + Text Files (*.txt) + + + + + Comma-Separated Values Files (*.csv) + + + + + Tab-Separated Values Files (*.tsv) + + + + + Delimiter-Separated Values Files (*.dsv) + + + + + Concordance DAT files (*.dat) + + + + + JSON Files (*.json *.js) + + + + + XML Files (*.xml) + + + + + Binary Files (*.bin *.dat) + + + + + SVG Files (*.svg) + + + + + Hex Dump Files (*.dat *.bin) + + + + + Extensions (*.so *.dylib *.dll) + + + + + RemoteCommitsModel + + + Commit ID + + + + + Message + + + + + Date + Дата + + + + Author + + + + + Size + Размер + + + + Authored and committed by %1 + + + + + Authored by %1, committed by %2 + + + + + RemoteDatabase + + + Error opening local databases list. +%1 + Ошибка при открытии ÑпиÑка локальных БД. +%1 + + + + Error creating local databases list. +%1 + Ошибка при Ñоздании ÑпиÑка локальных БД. +%1 + + + + RemoteDock + + + Remote + Удаленный Ñервер + + + + Identity + ID + + + + Push currently opened database to server + Отправить текущую БД на Ñервер + + + + DBHub.io + + + + + <html><head/><body><p>In this pane, remote databases from dbhub.io website can be added to DB Browser for SQLite. First you need an identity:</p><ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Login to the dbhub.io website (use your GitHub credentials or whatever you want)</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Click the button to &quot;Generate client certificate&quot; (that's your identity). That'll give you a certificate file (save it to your local disk).</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Go to the Remote tab in DB Browser for SQLite Preferences. Click the button to add a new certificate to DB Browser for SQLite and choose the just downloaded certificate file.</li></ol><p>Now the Remote panel shows your identity and you can add remote databases.</p></body></html> + + + + + Local + + + + + Current Database + + + + + Clone + + + + + User + Пользователем + + + + Database + База данных + + + + Branch + Ветка + + + + Commits + + + + + Commits for + + + + + Delete Database + + + + + Delete the local clone of this database + + + + + Open in Web Browser + + + + + Open the web page for the current database in your browser + + + + + Clone from Link + + + + + Use this to download a remote database for local editing using a URL as provided on the web page of the database. + + + + + Refresh + Обновить + + + + Reload all data and update the views + + + + + F5 + + + + + Clone Database + + + + + Open Database + + + + + Open the local copy of this database + + + + + Check out Commit + + + + + Download and open this specific commit + + + + + Check out Latest Commit + + + + + Check out the latest commit of the current branch + + + + + Save Revision to File + + + + + Saves the selected revision of the database to another file + + + + + Upload Database + + + + + Upload this database as a new commit + + + + + <html><head/><body><p>You are currently using a built-in, read-only identity. For uploading your database, you need to configure and use your DBHub.io account.</p><p>No DBHub.io account yet? <a href="https://dbhub.io/"><span style=" text-decoration: underline; color:#007af4;">Create one now</span></a> and import your certificate <a href="#preferences"><span style=" text-decoration: underline; color:#007af4;">here</span></a> to share your databases.</p><p>For online help visit <a href="https://dbhub.io/about"><span style=" text-decoration: underline; color:#007af4;">here</span></a>.</p></body></html> + + + + + Back + + + + + Select an identity to connect + + + + + Public + Публичный + + + + This downloads a database from a remote server for local editing. +Please enter the URL to clone from. You can generate this URL by +clicking the 'Clone Database in DB4S' button on the web page +of the database. + + + + + Invalid URL: The host name does not match the host name of the current identity. + + + + + Invalid URL: No branch name specified. + + + + + Invalid URL: No commit ID specified. + + + + + You have modified the local clone of the database. Fetching this commit overrides these local changes. +Are you sure you want to proceed? + + + + + The database has unsaved changes. Are you sure you want to push it before saving? + + + + + The database you are trying to delete is currently opened. Please close it before deleting. + + + + + This deletes the local version of this database with all the changes you have not committed yet. Are you sure you want to delete this database? + + + + + RemoteLocalFilesModel + + + Name + Ð˜Ð¼Ñ + + + + Branch + Ветка + + + + Last modified + Изменен + + + + Size + Размер + + + + Commit + Коммит + + + + File + + + + + RemoteModel + + + Name + Ð˜Ð¼Ñ + + + + Last modified + Изменен + + + + Size + Размер + + + + Commit + Коммит + + + + Size: + + + + + Last Modified: + + + + + Licence: + + + + + Default Branch: + + + + + RemoteNetwork + + + Choose a location to save the file + + + + + Error opening remote file at %1. +%2 + Ошибка Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚Ð¸Ñ Ñ„Ð°Ð¹Ð»Ð° %1. +%2 + + + + Error: Invalid client certificate specified. + Ошибка: Указан неверный Ñертификат клиента. + + + + Please enter the passphrase for this client certificate in order to authenticate. + ПожалуйÑта введите ключевую фразу Ð´Ð»Ñ Ñтого Ñертификата клиента. + + + + Cancel + Отменить + + + + Uploading remote database to +%1 + ЗагружаетÑÑ ÑƒÐ´Ð°Ð»ÐµÐ½Ð½Ð°Ñ Ð‘Ð” в +%1 + + + + Downloading remote database from +%1 + СкачиваетÑÑ ÑƒÐ´Ð°Ð»ÐµÐ½Ð½Ð°Ñ Ð‘Ð” из +%1 + + + + + Error: The network is not accessible. + Ошибка: Ñеть недоÑтупна. + + + + Error: Cannot open the file for sending. + Ошибка: не удаетÑÑ Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚ÑŒ файл Ð´Ð»Ñ Ð¾Ñ‚Ð¿Ñ€Ð°Ð²ÐºÐ¸. + + + + RemotePushDialog + + + Push database + Отправить БД + + + + Database na&me to push to + &Ð˜Ð¼Ñ Ð‘Ð” + + + + Commit message + Сообщение + + + + Database licence + Ð›Ð¸Ñ†ÐµÐ½Ð·Ð¸Ñ + + + + Public + Публичный + + + + Branch + Ветка + + + + Force push + Принудительно + + + + Username + + + + + Database will be public. Everyone has read access to it. + БД будет публичной. У каждого будет доÑтуп на чтение к ней. + + + + Database will be private. Only you have access to it. + БД будет конфиденциальной. Только у Ð²Ð°Ñ Ð±ÑƒÐ´ÐµÑ‚ доÑтуп к ней. + + + + Use with care. This can cause remote commits to be deleted. + ИÑпользуйте Ñ Ð¾ÑторожноÑтью. Это может привеÑти к удалению ÑущеÑтвующих коммитов. + + + + RunSql + + + Execution aborted by user + Выполнение прервано пользователем + + + + , %1 rows affected + , %1 Ñтрок изменено + + + + query executed successfully. Took %1ms%2 + Ð·Ð°Ð¿Ñ€Ð¾Ñ ÑƒÑпешно выполнен. ЗанÑло %1мÑ%2 + + + + executing query + + + + + SelectItemsPopup + + + A&vailable + + + + + Sele&cted + + + + + SqlExecutionArea + + + Form + Форма + + + + Find previous match [Shift+F3] + Ðайти предыдущее Ñовпадение [Shift+F3] + + + + Find previous match with wrapping + Ðайти предыдущее Ñовпадение, закольцевав поиÑк + + + + Shift+F3 + + + + + The found pattern must be a whole word + Ðайденный шаблон должен быть целым Ñловом + + + + Whole Words + Слова ПолноÑтью + + + + Text pattern to find considering the checks in this frame + Шаблон Ð´Ð»Ñ Ð¿Ð¾Ð¸Ñка, ÑƒÑ‡Ð¸Ñ‚Ñ‹Ð²Ð°Ñ Ð²Ñе проверки + + + + Find in editor + Ðайти в редакторе + + + + The found pattern must match in letter case + У найденного шаблона должен Ñовпадать региÑтр + + + + Case Sensitive + Учитывать РегиÑтр + + + + Find next match [Enter, F3] + Ðайти Ñледующее Ñовпдение [Enter, F3] + + + + Find next match with wrapping + Ðайти Ñледующее Ñовпадение, закольцевав поиÑк + + + + F3 + + + + + Interpret search pattern as a regular expression + Интерпретировать шаблон поиÑка как регулÑрное выражение + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + <html><head/><body><p>При проверке шаблон Ð´Ð»Ñ Ð¿Ð¾Ð¸Ñка интерпретируетÑÑ ÐºÐ°Ðº регулÑрное выражение UNIX. <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Узнать больше о РегулÑрных выражениÑÑ… на Wikibooks.org</a>.</p></body></html> + + + + Regular Expression + РегулÑрное выражение + + + + + Close Find Bar + Закрыть ПоиÑковую Панель + + + + <html><head/><body><p>Results of the last executed statements.</p><p>You may want to collapse this panel and use the <span style=" font-style:italic;">SQL Log</span> dock with <span style=" font-style:italic;">User</span> selection instead.</p></body></html> + + + + + Results of the last executed statements + Результаты поÑледних выполненных операторов + + + + This field shows the results and status codes of the last executed statements. + Это поле показывает результаты и коды ÑтатуÑов поÑледних выполненных операторов. + + + + Couldn't read file: %1. + Ðе удалоÑÑŒ прочитать файл:%1. + + + + + Couldn't save file: %1. + Ðе удалоÑÑŒ Ñохранить файл:%1. + + + + Your changes will be lost when reloading it! + + + + + The file "%1" was modified by another program. Do you want to reload it?%2 + + + + + SqlTextEdit + + + Ctrl+/ + + + + + SqlUiLexer + + + (X) The abs(X) function returns the absolute value of the numeric argument X. + (X) Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ abs(X) возвращает модуль чиÑла аргумента X. + + + + () The changes() function returns the number of database rows that were changed or inserted or deleted by the most recently completed INSERT, DELETE, or UPDATE statement. + () Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ changes() возвращает количеÑтво Ñтрок в базе данных, которые были изменены, вÑтавлены или удалены поÑле удачного Ð²Ñ‹Ð¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ INSERT, DELETE или UPDATE. + + + + (X1,X2,...) The char(X1,X2,...,XN) function returns a string composed of characters having the unicode code point values of integers X1 through XN, respectively. + (X1,X2,...) Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ char(X1,X2,...,XN) возвращает Ñтроку ÑоÑтавленную из Ñимволов, переданных в качеÑтве аргументов. + + + + (X,Y,...) The coalesce() function returns a copy of its first non-NULL argument, or NULL if all arguments are NULL + (X,Y,...) Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ coalesce() возвращает копию первого аргумента не равного NULL иначе еÑли такого нет то возвращаетÑÑ NULL + + + + (X,Y) The glob(X,Y) function is equivalent to the expression "Y GLOB X". + (X,Y) Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ glob(X,Y) Ñквивалент выражению "Y GLOB X". + + + + (X,Y) The ifnull() function returns a copy of its first non-NULL argument, or NULL if both arguments are NULL. + (X,Y) Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ ifnull() возвращает копию первого аргумента не равного NULL иначе еÑли оба аргумента равны NULL то возвращает NULL. + + + + (X,Y) The instr(X,Y) function finds the first occurrence of string Y within string X and returns the number of prior characters plus 1, or 0 if Y is nowhere found within X. + (X,Y) Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ instr(X,Y) возвращает количеÑтво Ñимволов, Ð½Ð°Ñ‡Ð¸Ð½Ð°Ñ Ñ ÐºÐ¾Ñ‚Ð¾Ñ€Ð¾Ð³Ð¾ в Ñтроке X найденна подÑтрока Y или 0 еÑли Ñ‚Ð°ÐºÐ¾Ð²Ð°Ñ Ð½Ðµ обнаружена. + + + + (X) The hex() function interprets its argument as a BLOB and returns a string which is the upper-case hexadecimal rendering of the content of that blob. + (X) Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ hex() интерпретирует аргумент как BLOB и возвращает Ñтроку в 16-ричной ÑиÑтеме ÑчиÑÐ»ÐµÐ½Ð¸Ñ Ñ Ñодержимым аргумента. + + + + () The last_insert_rowid() function returns the ROWID of the last row insert from the database connection which invoked the function. + () Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ last_insert_rowid() возвращает ROWID поÑледней вÑтавленной Ñтроки. + + + + (X) For a string value X, the length(X) function returns the number of characters (not bytes) in X prior to the first NUL character. + (X) Ð”Ð»Ñ Ñтрокового Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ X, Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ length(X) возвращает количеÑтво Ñимволов (не байт) от начала Ñтроки до первого Ñимвола '\0'. + + + + (X,Y) The like() function is used to implement the "Y LIKE X" expression. + (X,Y) Ð¤ÑƒÐºÐ½Ñ†Ð¸Ñ like() Ñквивалент выражению "Y LIKE X". + + + + (X,Y,Z) The like() function is used to implement the "Y LIKE X ESCAPE Z" expression. + (X,Y,Z) Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ like() Ñквивалент Ð²Ñ‹Ñ€Ð°Ð¶ÐµÐ½Ð¸Ñ "Y LIKE X ESCAPE Z". + + + + (X) The load_extension(X) function loads SQLite extensions out of the shared library file named X. +Use of this function must be authorized from Preferences. + + + + + (X,Y) The load_extension(X) function loads SQLite extensions out of the shared library file named X using the entry point Y. +Use of this function must be authorized from Preferences. + + + + + (X) The lower(X) function returns a copy of string X with all ASCII characters converted to lower case. + (X) Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ lower(X) возвращает копию Ñтроки X, в которой вÑе ACSII Ñимволы переведены в нижний региÑтр. + + + + (X) ltrim(X) removes spaces from the left side of X. + (X) ltrim(X) удалÑет Ñимволы пробелов Ñлева Ð´Ð»Ñ Ñтроки X. + + + + (X,Y) The ltrim(X,Y) function returns a string formed by removing any and all characters that appear in Y from the left side of X. + (X,Y) Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ ltrim(X,Y) возвращает новую Ñтроку путем ÑƒÐ´Ð°Ð»ÐµÐ½Ð¸Ñ Ð¸Ð· Ñтроки X Ñлева любого Ñимвола из Y. + + + + (X,Y,...) The multi-argument max() function returns the argument with the maximum value, or return NULL if any argument is NULL. + (X,Y,...) Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ max() возвращает аргумент Ñ Ð¼Ð°ÐºÑимальным значением, либо NULL еÑли хотÑбы один аргумент равен NULL. + + + + (X,Y,...) The multi-argument min() function returns the argument with the minimum value. + (X,Y,...) Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ min() возвращает аргумент Ñ Ð¼Ð¸Ð½Ð¸Ð¼Ð°Ð»ÑŒÐ½Ñ‹Ð¼ значением. + + + + (X,Y) The nullif(X,Y) function returns its first argument if the arguments are different and NULL if the arguments are the same. + (X,Y) Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ nullif(X,Y) возвращает первый аргумент еÑли аргументы различны либо NULL еÑли они одинаковы. + + + + (FORMAT,...) The printf(FORMAT,...) SQL function works like the sqlite3_mprintf() C-language function and the printf() function from the standard C library. + (FORMAT,...) Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ printf(FORMAT,...) работает так же как printf() из Ñтандартной библиотеки Ñзыка Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¼Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð¡Ð¸. + + + + (X) The quote(X) function returns the text of an SQL literal which is the value of its argument suitable for inclusion into an SQL statement. + (X) Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ quote(X) возвращает измененную Ñтроку X, которую можно иÑпользовать в SQL выражениÑÑ…. + + + + () The random() function returns a pseudo-random integer between -9223372036854775808 and +9223372036854775807. + () Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ random() возвращает пÑевдо Ñлучайное целочиÑленное значение из диапозона от-9223372036854775808 до +9223372036854775807. + + + + (N) The randomblob(N) function return an N-byte blob containing pseudo-random bytes. + (N) Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ randomblob(N) возвращает N-байтный BLOB, Ñодержащий пÑевдо Ñлучайные байты. + + + + (X,Y,Z) The replace(X,Y,Z) function returns a string formed by substituting string Z for every occurrence of string Y in string X. + (X,Y,Z) Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ replace(X,Y,Z) возвращает новую Ñтроку на оÑнове Ñтроки X, заменой вÑех подÑтрок Y на Z. + + + + (X) The round(X) function returns a floating-point value X rounded to zero digits to the right of the decimal point. + (X) Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ round(X) округлÑет X до целого значениÑ. + + + + (X,Y) The round(X,Y) function returns a floating-point value X rounded to Y digits to the right of the decimal point. + (X,Y) Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ round(X,Y) округлÑет X до Y чиÑел поÑле запÑтой Ñправа. + + + + (X) rtrim(X) removes spaces from the right side of X. + (X) rtrim(X) удалÑет Ñимволы пробела Ñправа Ñтроки X. + + + + (X,Y) The rtrim(X,Y) function returns a string formed by removing any and all characters that appear in Y from the right side of X. + (X,Y) Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ rtrim(X,Y) возвращает новую Ñтроку путем ÑƒÐ´Ð°Ð»ÐµÐ½Ð¸Ñ Ð¸Ð· Ñтроки X Ñправа любого Ñимвола из Ñтроки Y. + + + + (X) The soundex(X) function returns a string that is the soundex encoding of the string X. + (X) Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ soundex(X) возвращает копию Ñтроки X, кодированную в формате soundex. + + + + (X,Y) substr(X,Y) returns all characters through the end of the string X beginning with the Y-th. + (X,Y) substr(X,Y) возвращает подÑтроку из Ñтроки X, Ð½Ð°Ñ‡Ð¸Ð½Ð°Ñ Ñ Y-го Ñимвола. + + + + (X,Y,Z) The substr(X,Y,Z) function returns a substring of input string X that begins with the Y-th character and which is Z characters long. + (X,Y,Z) Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ substr(X,Y,Z) возвращает подÑтроку из Ñтроки X, Ð½Ð°Ñ‡Ð¸Ð½Ð°Ñ Ñ Y-го Ñимвола, длинной Z-Ñимволов. + + + + () The total_changes() function returns the number of row changes caused by INSERT, UPDATE or DELETE statements since the current database connection was opened. + () Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ total_changes() возвращает количеÑтво Ñтрок измененных Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ INSERT, UPDATE или DELETE, Ð½Ð°Ñ‡Ð¸Ð½Ð°Ñ Ñ Ñ‚Ð¾Ð³Ð¾ момента как текущее подключение к базе данных было открыто. + + + + (X) trim(X) removes spaces from both ends of X. + (X) trim(X) удалÑет пробелы Ñ Ð¾Ð±Ð¾Ð¸Ñ… Ñторон Ñтроки X. + + + + (X,Y) The trim(X,Y) function returns a string formed by removing any and all characters that appear in Y from both ends of X. + (X,Y) Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ trim(X,Y) Ñоздает новую Ñтроку из X, путем ÑƒÐ´Ð°Ð»ÐµÐ½Ð¸Ñ Ñ Ð¾Ð±Ð¾Ð¸Ñ… концов Ñимволов, которые приÑутÑвуют в Ñтроке Y. + + + + (X) The typeof(X) function returns a string that indicates the datatype of the expression X. + (X) Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ typeof(X) возвращает Ñтроку Ñ Ñ‚Ð¸Ð¿Ð¾Ð¼ данных Ð²Ñ‹Ñ€Ð°Ð¶ÐµÐ½Ð¸Ñ X. + + + + (X) The unicode(X) function returns the numeric unicode code point corresponding to the first character of the string X. + (X) Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ unicode(X) возвращает чиÑловое значение UNICODE кода Ñимвола. + + + + (X) The upper(X) function returns a copy of input string X in which all lower-case ASCII characters are converted to their upper-case equivalent. + (X) Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ upper(X) возвращает копию Ñтроки X, в которой Ð´Ð»Ñ ÐºÐ°Ð¶Ð´Ð¾Ð³Ð¾ ASCII Ñимвола региÑтр будет перобразован из нижнего в верхний. + + + + (N) The zeroblob(N) function returns a BLOB consisting of N bytes of 0x00. + (N) Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ zeroblob(N) возвращает BLOB размером N байт Ñо значениÑми 0x00. + + + + + + + (timestring,modifier,modifier,...) + + + + + (format,timestring,modifier,modifier,...) + + + + + (X) The avg() function returns the average value of all non-NULL X within a group. + (X) Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ avg() возвращает Ñреднее значение Ð´Ð»Ñ Ð²Ñех не равных NULL значений группы. + + + + (X) The count(X) function returns a count of the number of times that X is not NULL in a group. + (X) Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ count(X) возвращает количеÑтво Ñтрок, в которых X не равно NULL в группе. + + + + (X) The group_concat() function returns a string which is the concatenation of all non-NULL values of X. + (X) Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ group_concat() возвращает Ñтроку из вÑех значений X не равных NULL. + + + + (X,Y) The group_concat() function returns a string which is the concatenation of all non-NULL values of X. If parameter Y is present then it is used as the separator between instances of X. + (X,Y) Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ group_concat() возвращает Ñтроку из вÑех значений X не равных NULL. Y - разделитель между значениÑми X. + + + + (X) The max() aggregate function returns the maximum value of all values in the group. + (X) ÐÐ³Ð³Ñ€ÐµÐ³Ð°Ñ‚Ð½Ð°Ñ Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ max() возвращает макÑимальное значение Ð´Ð»Ñ X. + + + + (X) The min() aggregate function returns the minimum non-NULL value of all values in the group. + (X) ÐÐ³Ð³Ñ€ÐµÐ³Ð°Ñ‚Ð½Ð°Ñ Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ min() возвращает минимальное значение Ð´Ð»Ñ X. + + + + + (X) The sum() and total() aggregate functions return sum of all non-NULL values in the group. + (X) Ðггрегатные функции sum() и total() возвращают Ñумму вÑех не NULL значений Ð´Ð»Ñ X. + + + + () The number of the row within the current partition. Rows are numbered starting from 1 in the order defined by the ORDER BY clause in the window definition, or in arbitrary order otherwise. + () ЧиÑло Ñтрок в текущем разделе. Строки нумеруютÑÑ Ð½Ð°Ñ‡Ð¸Ð½Ð°Ñ Ñ 1 в порÑдке, определенном выражением ORDER BY, или иначе в произвольном порÑдке. + + + + () The row_number() of the first peer in each group - the rank of the current row with gaps. If there is no ORDER BY clause, then all rows are considered peers and this function always returns 1. + () Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ row_number() возвращает номер первой Ñтроки в каждой группе - ранг текущей Ñтроки Ñ Ñ€Ð°Ð·Ñ€Ñ‹Ð²Ð°Ð¼Ð¸. ЕÑли не ÑущеÑтвует Ð²Ñ‹Ñ€Ð°Ð¶ÐµÐ½Ð¸Ñ ORDER BY, вÑе Ñтроки ÑчитаютÑÑ Ð¾Ð´Ð½Ð¾Ñ€Ð°Ð½Ð³Ð¾Ð²Ñ‹Ð¼Ð¸, и Ñта Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ Ð²Ñегда возвращает 1. + + + + () The number of the current row's peer group within its partition - the rank of the current row without gaps. Partitions are numbered starting from 1 in the order defined by the ORDER BY clause in the window definition. If there is no ORDER BY clause, then all rows are considered peers and this function always returns 1. + () ЧиÑло одноранговой группы текущей Ñтроки в Ñвоем разделе - ранг текущей Ñтроки без пробелов. Разделы нумеруютÑÑ, Ð½Ð°Ñ‡Ð¸Ð½Ð°Ñ Ñ 1 в порÑдке, определенном выражением ORDER BY в определении окна. ЕÑли не ÑущеÑтвует Ð¿Ñ€ÐµÐ´Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ ORDER BY, вÑе Ñтроки ÑчитаютÑÑ Ð¾Ð´Ð½Ð¾Ñ€Ð°Ð½Ð³Ð¾Ð²Ñ‹Ð¼Ð¸, и Ñта Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ Ð²Ñегда возвращает 1. + + + + () Despite the name, this function always returns a value between 0.0 and 1.0 equal to (rank - 1)/(partition-rows - 1), where rank is the value returned by built-in window function rank() and partition-rows is the total number of rows in the partition. If the partition contains only one row, this function returns 0.0. + () ÐеÑÐ¼Ð¾Ñ‚Ñ€Ñ Ð½Ð° имÑ, Ñта Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ Ð²Ñегда возвращает значение между 0.0 и 1.0, равное (rank-1) / (partition-rows-1), где rank - Ñто значение, возвращаемое вÑтроенной функцией window rank () rows - Ñто общее количеÑтво Ñтрок в разделе. ЕÑли раздел Ñодержит только одну Ñтроку, Ñта Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ Ð²Ð¾Ð·Ð²Ñ€Ð°Ñ‰Ð°ÐµÑ‚ 0.0. + + + + () The cumulative distribution. Calculated as row-number/partition-rows, where row-number is the value returned by row_number() for the last peer in the group and partition-rows the number of rows in the partition. + () КумулÑтивное раÑпределение. РаÑÑчитываетÑÑ ÐºÐ°Ðº номер-Ñтроки / Ñтроки-раздела, где номер-Ñтроки - Ñто значение, возвращаемое row_number() Ð´Ð»Ñ Ð¿Ð¾Ñледнего однорангового узла в группе, а Ñтроки-раздела- количеÑтво Ñтрок в разделе. + + + + (N) Argument N is handled as an integer. This function divides the partition into N groups as evenly as possible and assigns an integer between 1 and N to each group, in the order defined by the ORDER BY clause, or in arbitrary order otherwise. If necessary, larger groups occur first. This function returns the integer value assigned to the group that the current row is a part of. + (N) Ðргумент N обрабатываетÑÑ ÐºÐ°Ðº целое чиÑло. Эта Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ Ð´ÐµÐ»Ð¸Ñ‚ раздел на N групп как можно более равномерно и назначает целое чиÑло от 1 до N каждой группе в порÑдке, определенном выражением ORDER BY, или в произвольном порÑдке, при его отÑутÑтвии. При необходимоÑти Ñначала поÑвлÑÑŽÑ‚ÑÑ Ð±Ð¾Ð»ÑŒÑˆÐ¸Ðµ группы. Эта Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ Ð²Ð¾Ð·Ð²Ñ€Ð°Ñ‰Ð°ÐµÑ‚ целочиÑленное значение, приÑвоенное группе, в которой находитÑÑ Ñ‚ÐµÐºÑƒÑ‰Ð°Ñ Ñтрока. + + + + (expr) Returns the result of evaluating expression expr against the previous row in the partition. Or, if there is no previous row (because the current row is the first), NULL. + (expr) Возвращает результат вычиÑÐ»ÐµÐ½Ð¸Ñ Ð²Ñ‹Ñ€Ð°Ð¶ÐµÐ½Ð¸Ñ expr в предыдущей Ñтроке раздела. Или, еÑли нет предыдущей Ñтроки (поÑкольку Ñ‚ÐµÐºÑƒÑ‰Ð°Ñ Ñтрока ÑвлÑетÑÑ Ð¿ÐµÑ€Ð²Ð¾Ð¹), NULL. + + + + (expr,offset) If the offset argument is provided, then it must be a non-negative integer. In this case the value returned is the result of evaluating expr against the row offset rows before the current row within the partition. If offset is 0, then expr is evaluated against the current row. If there is no row offset rows before the current row, NULL is returned. + (expr, offset) ЕÑли аргумент offset укзан, то он должен быть неотрицательным целым чиÑлом. Ð’ Ñтом Ñлучае возвращаемое значение ÑвлÑетÑÑ Ñ€ÐµÐ·ÑƒÐ»ÑŒÑ‚Ð°Ñ‚Ð¾Ð¼ вычиÑÐ»ÐµÐ½Ð¸Ñ expr в Ñтроках ÑÐ¼ÐµÑ‰ÐµÐ½Ð¸Ñ Ñтрок до текущей Ñтроки в разделе. ЕÑли Ñмещение равно 0, то expr вычиÑлÑетÑÑ Ð¾Ñ‚Ð½Ð¾Ñительно текущей Ñтроки. ЕÑли перед текущей Ñтрокой нет Ñтрок ÑÐ¼ÐµÑ‰ÐµÐ½Ð¸Ñ Ñтрок, возвращаетÑÑ NULL. + + + + + (expr,offset,default) If default is also provided, then it is returned instead of NULL if the row identified by offset does not exist. + (expr, offset, default) ЕÑли задано значение по умолчанию, оно возвращаетÑÑ Ð²Ð¼ÐµÑто NULL, еÑли Ñтрока, Ð¸Ð´ÐµÐ½Ñ‚Ð¸Ñ„Ð¸Ñ†Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð½Ð°Ñ Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ ÑмещениÑ, не ÑущеÑтвует. + + + + (expr) Returns the result of evaluating expression expr against the next row in the partition. Or, if there is no next row (because the current row is the last), NULL. + (expr) Возвращает результат вычиÑÐ»ÐµÐ½Ð¸Ñ Ð²Ñ‹Ñ€Ð°Ð¶ÐµÐ½Ð¸Ñ expr в Ñледующей Ñтроке раздела. Или, еÑли нет Ñледующей Ñтроки (поÑкольку поÑледнÑÑ Ñтрока ÑвлÑетÑÑ Ð¿Ð¾Ñледней), NULL. + + + + (expr,offset) If the offset argument is provided, then it must be a non-negative integer. In this case the value returned is the result of evaluating expr against the row offset rows after the current row within the partition. If offset is 0, then expr is evaluated against the current row. If there is no row offset rows after the current row, NULL is returned. + (expr, offset) ЕÑли аргумент offset указан, то он должен быть неотрицательным целым чиÑлом. Ð’ Ñтом Ñлучае возвращаемое значение ÑвлÑетÑÑ Ñ€ÐµÐ·ÑƒÐ»ÑŒÑ‚Ð°Ñ‚Ð¾Ð¼ вычиÑÐ»ÐµÐ½Ð¸Ñ expr в Ñтроках ÑÐ¼ÐµÑ‰ÐµÐ½Ð¸Ñ Ñтрок поÑле текущей Ñтроки в разделе. ЕÑли Ñмещение равно 0, то expr вычиÑлÑетÑÑ Ð¾Ñ‚Ð½Ð¾Ñительно текущей Ñтроки. ЕÑли поÑле текущей Ñтроки нет Ñтрок ÑÐ¼ÐµÑ‰ÐµÐ½Ð¸Ñ Ñтроки, возвращаетÑÑ NULL. + + + + (expr) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the first row in the window frame for each row. + (expr) Эта вÑÑ‚Ñ€Ð¾ÐµÐ½Ð½Ð°Ñ ÐžÐºÐ¾Ð½Ð½Ð°Ñ Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ Ð²Ñ‹Ñ‡Ð¸ÑлÑет Оконный Кадр Ð´Ð»Ñ ÐºÐ°Ð¶Ð´Ð¾Ð¹ Ñтроки так же, как Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ ÐžÐºÐ½Ð° агрегата. Она возвращает значение Ð²Ñ‹Ð¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ Ð²Ñ‹Ñ€Ð°Ð¶ÐµÐ½Ð¸Ñ expr, оцениваемое по отношению к первой Ñтроке в оконном фрейме Ð´Ð»Ñ ÐºÐ°Ð¶Ð´Ð¾Ð¹ Ñтроки. + + + + (expr) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the last row in the window frame for each row. + (expr) Эта вÑÑ‚Ñ€Ð¾ÐµÐ½Ð½Ð°Ñ ÐžÐºÐ¾Ð½Ð½Ð°Ñ Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ Ð²Ñ‹Ñ‡Ð¸ÑлÑет Оконный Кадр Ð´Ð»Ñ ÐºÐ°Ð¶Ð´Ð¾Ð¹ Ñтроки так же, как Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ ÐžÐºÐ½Ð° агрегата. Она возвращает значение Ð²Ñ‹Ð¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ Ð²Ñ‹Ñ€Ð°Ð¶ÐµÐ½Ð¸Ñ expr, оцениваемое по отношению к поÑледней Ñтроке в оконном фрейме Ð´Ð»Ñ ÐºÐ°Ð¶Ð´Ð¾Ð¹ Ñтроки. + (expr) Эта вÑÑ‚Ñ€Ð¾ÐµÐ½Ð½Ð°Ñ Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ Ð¾ÐºÐ½Ð° вычиÑлÑет оконный кадр Ð´Ð»Ñ ÐºÐ°Ð¶Ð´Ð¾Ð¹ Ñтроки так же, как Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ Ð¾ÐºÐ½Ð° агрегата. Он возвращает значение expr, оцениваемое по поÑледней Ñтроке в оконном фрейме Ð´Ð»Ñ ÐºÐ°Ð¶Ð´Ð¾Ð¹ Ñтроки. + + + + (expr,N) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the row N of the window frame. Rows are numbered within the window frame starting from 1 in the order defined by the ORDER BY clause if one is present, or in arbitrary order otherwise. If there is no Nth row in the partition, then NULL is returned. + (expr, N) Эта вÑÑ‚Ñ€Ð¾ÐµÐ½Ð½Ð°Ñ Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ Ð¾ÐºÐ½Ð° вычиÑлÑет оконный фрейм Ð´Ð»Ñ ÐºÐ°Ð¶Ð´Ð¾Ð¹ Ñтроки так же, как Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ Ð¾ÐºÐ½Ð° агрегата. Она возвращает значение Ð²Ñ‹Ð¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ Ð²Ñ‹Ñ€Ð°Ð¶ÐµÐ½Ð¸Ñ expr, оцениваемое по Ñтроке N оконного фрейма. Строки нумеруютÑÑ Ð² рамке окна, Ð½Ð°Ñ‡Ð¸Ð½Ð°Ñ Ñ 1 в порÑдке, определенном выражением ORDER BY, еÑли оно приÑутÑтвует, или в произвольном порÑдке в противном Ñлучае. ЕÑли в разделе нет N-й Ñтроки, возвращаетÑÑ NULL. + + + + SqliteTableModel + + + reading rows + читаем Ñтроки + + + + loading... + загрузка... + + + + References %1(%2) +Hold %3Shift and click to jump there + СÑылаетÑÑ Ð½Ð° %1(%2) +Ðажмите %3Shift и клик чтобы перемеÑтитьÑÑ Ñ‚ÑƒÐ´Ð° + + + + Error changing data: +%1 + Ошибка Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð´Ð°Ð½Ð½Ñ‹Ñ…: +%1 + + + + retrieving list of columns + получаем ÑпиÑок колонок + + + + Fetching data... + Подгружаем данные... + + + + + Cancel + Отменить + + + + TableBrowser + + + Browse Data + Данные + + + + &Table: + &Таблица: + + + + Select a table to browse data + Выберите таблицу Ð´Ð»Ñ Ð¿Ñ€Ð¾Ñмотра данных + + + + Use this list to select a table to be displayed in the database view + ИÑпользуйте Ñтот ÑпиÑок, чтобы выбрать таблицу, ÐºÐ¾Ñ‚Ð¾Ñ€Ð°Ñ Ð´Ð¾Ð»Ð¶Ð½Ð° быть отображена в предÑтавлении базы данных + + + + This is the database table view. You can do the following actions: + - Start writing for editing inline the value. + - Double-click any record to edit its contents in the cell editor window. + - Alt+Del for deleting the cell content to NULL. + - Ctrl+" for duplicating the current record. + - Ctrl+' for copying the value from the cell above. + - Standard selection and copy/paste operations. + Это предÑтавление таблицы БД. Ð’Ñ‹ можете выполнить Ñледующие дейÑтвиÑ: + - Ðачните пиÑать Ð´Ð»Ñ Ñ€ÐµÐ´Ð°ÐºÑ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ, Ð²Ð²ÐµÐ´Ñ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ðµ. + - Дважды щелкните любую запиÑÑŒ, чтобы отредактировать ее Ñодержимое в окне редактора Ñчеек. + - Alt + Del Ð´Ð»Ñ Ð¾Ð±Ð½ÑƒÐ»ÐµÐ½Ð¸Ñ Ñодержимого Ñчейки в NULL. + - Ctrl + " Ð´Ð»Ñ Ð´ÑƒÐ±Ð»Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ñ‚ÐµÐºÑƒÑ‰ÐµÐ¹ запиÑи. + - Ctrl + ' Ð´Ð»Ñ ÐºÐ¾Ð¿Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð¸Ð· Ñчейки выше. + - Стандартные операции выбора и копированиÑ/вÑтавки. + + + + Text pattern to find considering the checks in this frame + Шаблон Ð´Ð»Ñ Ð¿Ð¾Ð¸Ñка, ÑƒÑ‡Ð¸Ñ‚Ñ‹Ð²Ð°Ñ Ð²Ñе проверки + + + + Find in table + + + + + Find previous match [Shift+F3] + Ðайти предыдущее Ñовпадение [Shift+F3] + + + + Find previous match with wrapping + Ðайти предыдущее Ñовпадение, закольцевав поиÑк + + + + Shift+F3 + + + + + Find next match [Enter, F3] + Ðайти Ñледующее Ñовпдение [Enter, F3] + + + + Find next match with wrapping + Ðайти Ñледующее Ñовпадение, закольцевав поиÑк + + + + F3 + + + + + The found pattern must match in letter case + У найденного шаблона должен Ñовпадать региÑтр + + + + Case Sensitive + Учитывать РегиÑтр + + + + The found pattern must be a whole word + Ðайденный шаблон должен быть целым Ñловом + + + + Whole Cell + + + + + Interpret search pattern as a regular expression + Интерпретировать шаблон поиÑка как регулÑрное выражение + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + <html><head/><body><p>При проверке шаблон Ð´Ð»Ñ Ð¿Ð¾Ð¸Ñка интерпретируетÑÑ ÐºÐ°Ðº регулÑрное выражение UNIX. <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Узнать больше о РегулÑрных выражениÑÑ… на Wikibooks.org</a>.</p></body></html> + + + + Regular Expression + РегулÑрное выражение + + + + + Close Find Bar + Закрыть ПоиÑковую Панель + + + + Text to replace with + + + + + Replace with + + + + + Replace next match + + + + + + Replace + + + + + Replace all matches + + + + + Replace all + + + + + <html><head/><body><p>Scroll to the beginning</p></body></html> + <html><head/><body><p>Прокрутить к началу</p></body></html> + + + + <html><head/><body><p>Clicking this button navigates to the beginning in the table view above.</p></body></html> + <html><head/><body><p>Ðажатие Ñтой кнопки переводит к началу в таблице выше.</p></body></html> + + + + |< + + + + + Scroll one page upwards + Страница вверх + + + + <html><head/><body><p>Clicking this button navigates one page of records upwards in the table view above.</p></body></html> + <html><head/><body><p>Ðажатие Ñтой кнопки перемещает одну Ñтраницу запиÑей вверх в виде таблицы выше.</p></body></html> + + + + < + < + + + + 0 - 0 of 0 + 0 - 0 из 0 + + + + Scroll one page downwards + Страница вниз + + + + <html><head/><body><p>Clicking this button navigates one page of records downwards in the table view above.</p></body></html> + <html><head/><body><p>Ðажатие Ñтой кнопки перемещает одну Ñтраницу запиÑей вниз в виде таблицы выше.</p></body></html> + + + + > + > + + + + Scroll to the end + Прокрутить к концу + + + + <html><head/><body><p>Clicking this button navigates up to the end in the table view above.</p></body></html> + + + + + >| + + + + + <html><head/><body><p>Click here to jump to the specified record</p></body></html> + <html><head/><body><p>Ðажмите здеÑÑŒ, чтобы перейти к указанной запиÑи</p></body></html> + + + + <html><head/><body><p>This button is used to navigate to the record number specified in the Go to area.</p></body></html> + <html><head/><body><p>Эта кнопка иÑпользуетÑÑ, чтобы перемеÑтитьÑÑ Ðº запиÑи, номер которой указан в облаÑти Перейти к</p></body></html> + + + + Go to: + Перейти к: + + + + Enter record number to browse + Введите номер запиÑи Ð´Ð»Ñ Ð¿Ñ€Ð¾Ñмотра + + + + Type a record number in this area and click the Go to: button to display the record in the database view + Ðапечатайте номер запиÑи в Ñтой облаÑти и нажмите кнопку Перейти к:, чтобы отобразить запиÑÑŒ в предÑтавлении базы данных + + + + 1 + 1 + + + + Show rowid column + Отображать колонку rowid + + + + Toggle the visibility of the rowid column + + + + + Unlock view editing + Разблокировать возможноÑть Ñ€ÐµÐ´Ð°ÐºÑ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ + + + + This unlocks the current view for editing. However, you will need appropriate triggers for editing. + Разблокировать текущий вид Ð´Ð»Ñ Ñ€ÐµÐ´Ð°ÐºÑ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ. Однако Ð´Ð»Ñ Ñ€ÐµÐ´Ð°ÐºÑ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð²Ð°Ð¼ понадобÑÑ‚ÑÑ ÑоответÑтвующие триггеры. + + + + Edit display format + Формат Ð¾Ñ‚Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð¸Ñ + + + + Edit the display format of the data in this column + Редактирование формата Ð¾Ñ‚Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð¸Ñ Ð´Ð»Ñ Ð´Ð°Ð½Ð½Ñ‹Ñ… из Ñтой колонки + + + + + New Record + Добавить запиÑÑŒ + + + + + Insert a new record in the current table + Добавить новую запиÑÑŒ в текущую таблицу + + + + <html><head/><body><p>This button creates a new record in the database. Hold the mouse button to open a pop-up menu of different options:</p><ul><li><span style=" font-weight:600;">New Record</span>: insert a new record with default values in the database.</li><li><span style=" font-weight:600;">Insert Values...</span>: open a dialog for entering values before they are inserted in the database. This allows to enter values acomplishing the different constraints. This dialog is also open if the <span style=" font-weight:600;">New Record</span> option fails due to these constraints.</li></ul></body></html> + <html><head/><body><p>Эта кнопка Ñоздает новую запиÑÑŒ в базе данных. Удерживайте кнопку мыши, чтобы открыть вÑплывающее меню различных параметров:</p><ul><li><span style=" font-weight:600;">ÐÐ¾Ð²Ð°Ñ Ð—Ð°Ð¿Ð¸ÑÑŒ</span>: вÑтавлÑет новую запиÑÑŒ Ñо значениÑми по умолчанию.</li><li><span style=" font-weight:600;">Ð’Ñтавить ЗначениÑ...</span>: открывает диалог Ð´Ð»Ñ Ð²Ð²Ð¾Ð´Ð° значений перед тем, как они будут вÑтавленны в БД. Это позволÑет вводить значениÑ, Ð½Ð°Ð·Ð½Ð°Ñ‡Ð°Ñ Ñ€Ð°Ð·Ð»Ð¸Ñ‡Ð½Ñ‹Ðµ ограничениÑ. Этот диалог также открываетÑÑ, еÑли <span style=" font-weight:600;">ÐÐ¾Ð²Ð°Ñ Ð—Ð°Ð¿Ð¸ÑÑŒ</span> Ð¾Ð¿Ñ†Ð¸Ñ Ð½Ðµ Ñрабатывает из-за Ñтих ограничений.</li></ul></body></html> + + + + + Delete Record + Удалить запиÑÑŒ + + + + Delete the current record + Удалить текущую запиÑÑŒ + + + + + This button deletes the record or records currently selected in the table + Эта кнопка удалÑет запиÑÑŒ или запиÑи, выбранные в наÑтоÑщее Ð²Ñ€ÐµÐ¼Ñ Ð² таблице + + + + + Insert new record using default values in browsed table + Ð’ÑтавлÑет новую запиÑÑŒ, иÑÐ¿Ð¾Ð»ÑŒÐ·ÑƒÑ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð¿Ð¾ умолчанию в проÑматриваемой таблице + + + + Insert Values... + Ð’Ñтавить ЗначениÑ... + + + + + Open a dialog for inserting values in a new record + Открывает диалоговое окно Ð´Ð»Ñ Ð²Ñтавки значений в новую запиÑÑŒ + + + + Export to &CSV + ЭкÑпортировать в &CSV + + + + + Export the filtered data to CSV + ЭкÑпортировать отфильтрованные данные в CSV + + + + This button exports the data of the browsed table as currently displayed (after filters, display formats and order column) as a CSV file. + Эта кнопка ÑкÑпортирует данные проÑматриваемой таблицы так как отображаетÑÑ (поÑле обработки фильтрами, форматами Ð¾Ñ‚Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð¸Ñ Ð¸ Ñ‚.д.) в виде файла CSV. + + + + Save as &view + Сохранить как &предÑтавление + + + + + Save the current filter, sort column and display formats as a view + Сохранить текущие фильтры, Ñтолбецы Ñортировки и форматы Ð¾Ñ‚Ð¾Ð±Ñ€Ð°Ð¶Ð°Ð½Ð¸Ñ Ð² виде предÑÑ‚Ð°Ð²Ð»ÐµÐ½Ð¸Ñ + + + + This button saves the current setting of the browsed table (filters, display formats and order column) as an SQL view that you can later browse or use in SQL statements. + Эта кнопка ÑохранÑет текущие наÑтройки проÑматриваемой таблицы (фильтры, форматы Ð¾Ñ‚Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð¸Ñ Ð¸ Ñтолбец Ñортировки) в виде предÑÑ‚Ð°Ð²Ð»ÐµÐ½Ð¸Ñ SQL, которое вы можете впоÑледÑтвии проÑмотреть или иÑпользовать в операторах SQL. + + + + Save Table As... + + + + + + Save the table as currently displayed + Сохранить таблицу так как ÑÐµÐ¹Ñ‡Ð°Ñ Ð¾Ñ‚Ð¾Ð±Ñ€Ð°Ð¶Ð°ÐµÑ‚ÑÑ + + + + <html><head/><body><p>This popup menu provides the following options applying to the currently browsed and filtered table:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Export to CSV: this option exports the data of the browsed table as currently displayed (after filters, display formats and order column) to a CSV file.</li><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Save as view: this option saves the current setting of the browsed table (filters, display formats and order column) as an SQL view that you can later browse or use in SQL statements.</li></ul></body></html> + <html><head/><body><p>Это вÑплывающее меню предоÑтавлÑет Ñледующие параметры, применÑемые к текущей проÑматриваемой и отфильтрованной таблице:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">ЭкÑпортировать ввиде CSV: данные проÑматриваемой таблицы ÑохранÑетÑÑ Ñ‚Ð°Ðº как отображаетÑÑ (поÑле Ð¿Ñ€Ð¸Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ñ„Ð¸Ð»ÑŒÑ‚Ñ€Ð¾Ð², форматов Ð¾Ñ‚Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð¸Ñ Ð¸ порÑдка колонок) в CSV файл.</li><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Сохранить как вид: Ñта Ð¾Ð¿Ñ†Ð¸Ñ ÑохранÑет наÑтройки текущей отображаемой таблицы (фильтры, форматы Ð¾Ñ‚Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð¸Ñ Ð¸ порÑдок колонок) как SQL вид, который вы позже можете проÑматривать или иÑпользовать в SQL выражениÑÑ….</li></ul></body></html> + + + + Hide column(s) + Скрыть колонки + + + + Hide selected column(s) + Скрыть выбранные колонки + + + + Show all columns + Показать вÑе колонки + + + + Show all columns that were hidden + Показать вÑе колонки, которые были Ñкрыты + + + + + Set encoding + Кодировка + + + + Change the encoding of the text in the table cells + Изменение кодировки текÑта в данной таблице + + + + Set encoding for all tables + УÑтановить кодировку Ð´Ð»Ñ Ð²Ñех таблиц + + + + Change the default encoding assumed for all tables in the database + Изменить кодировку по умолчанию Ð´Ð»Ñ Ð²Ñех таблиц в базе данных + + + + Clear Filters + + + + + Clear all filters + ОчиÑтить вÑе фильтры + + + + + This button clears all the filters set in the header input fields for the currently browsed table. + Эта кнопка очищает вÑе фильтры, уÑтановленные в полÑÑ… ввода заголовка Ð´Ð»Ñ Ñ‚ÐµÐºÑƒÑ‰ÐµÐ¹ проÑматриваемой таблицы. + + + + Clear Sorting + + + + + Reset the order of rows to the default + + + + + + This button clears the sorting columns specified for the currently browsed table and returns to the default order. + + + + + Print + Печать + + + + Print currently browsed table data + Печатать отображаемую таблицу + + + + Print currently browsed table data. Print selection if more than one cell is selected. + РаÑпечатывайте текущие данные таблицы. Выбор печати, еÑли выбрано неÑколько Ñчеек. + + + + Ctrl+P + + + + + Refresh + Обновить + + + + Refresh the data in the selected table + Обновить данные в выбранной таблице + + + + This button refreshes the data in the currently selected table. + Эта кнопка обновлÑет данные выбранной в данный момент таблицы. + + + + F5 + + + + + Find in cells + + + + + Open the find tool bar which allows you to search for values in the table view below. + + + + + + Bold + Жирный + + + + Ctrl+B + + + + + + Italic + КурÑив + + + + + Underline + Подчёркивание + + + + Ctrl+U + + + + + + Align Right + + + + + + Align Left + + + + + + Center Horizontally + + + + + + Justify + + + + + + Edit Conditional Formats... + + + + + Edit conditional formats for the current column + + + + + Clear Format + + + + + Clear All Formats + + + + + + Clear all cell formatting from selected cells and all conditional formats from selected columns + + + + + + Font Color + + + + + + Background Color + + + + + Toggle Format Toolbar + + + + + Show/hide format toolbar + + + + + + This button shows or hides the formatting toolbar of the Data Browser + + + + + Select column + + + + + Ctrl+Space + + + + + Replace text in cells + + + + + Filter in any column + + + + + Ctrl+R + + + + + %n row(s) + + + + + + + + + , %n column(s) + + + + + + + + + . Sum: %1; Average: %2; Min: %3; Max: %4 + + + + + Conditional formats for "%1" + + + + + determining row count... + определÑем количеÑтво Ñтрок... + + + + %1 - %2 of >= %3 + %1 - %2 из >= %3 + + + + %1 - %2 of %3 + %1 - %2 из %3 + + + + Please enter a pseudo-primary key in order to enable editing on this view. This should be the name of a unique column in the view. + ПожалуйÑта, введите пÑевдо-первичный ключ, чтобы разрешить редактирование в Ñтом предÑтавлении. Это должно быть Ð¸Ð¼Ñ ÑƒÐ½Ð¸ÐºÐ°Ð»ÑŒÐ½Ð¾Ð³Ð¾ Ñтолбца в предÑтавлении. + + + + Delete Records + Удалить ЗапиÑи + + + + Duplicate records + Дублированные запиÑи + + + + Duplicate record + Дубликат запиÑи + + + + Ctrl+" + + + + + Adjust rows to contents + + + + + Error deleting record: +%1 + Ошибка ÑƒÐ´Ð°Ð»ÐµÐ½Ð¸Ñ Ð·Ð°Ð¿Ð¸Ñи: %1 + + + + Please select a record first + Сначала выберите запиÑÑŒ + + + + There is no filter set for this table. View will not be created. + Ð”Ð»Ñ Ñтой таблицы не уÑтановлен фильтр. ПредÑтавление не будет Ñоздано. + + + + Please choose a new encoding for all tables. + ПожалуйÑта выбирите новую кодировку Ð´Ð»Ñ Ð²Ñех таблиц. + + + + Please choose a new encoding for this table. + ПожалуйÑта выбирите новую кодировку Ð´Ð»Ñ Ð´Ð°Ð½Ð½Ð¾Ð¹ таблицы. + + + + %1 +Leave the field empty for using the database encoding. + %1 +ОÑтавьте Ñто поле пуÑтым еÑли хотите чтобы иÑпользовалаÑÑŒ кодировка по умолчанию. + + + + This encoding is either not valid or not supported. + ÐÐµÐ²ÐµÑ€Ð½Ð°Ñ ÐºÐ¾Ð´Ð¸Ñ€Ð¾Ð²ÐºÐ° либо она не поддерживаетÑÑ. + + + + %1 replacement(s) made. + + + + + VacuumDialog + + + Compact Database + Ðе понÑтно, что лучше "уплотнение" или "Ñжатие"? + Уплотнение базы данных + + + + Warning: Compacting the database will commit all of your changes. + Предупреждение: Уплотнение базы данных зафикÑирует вÑе изменениÑ, которые были Ñделаны. + + + + Please select the databases to co&mpact: + Выберите объекты Ð´Ð»Ñ &уплотнениÑ: + + + diff --git a/ConfigFiles/translations/sqlb_tr.qm b/ConfigFiles/translations/sqlb_tr.qm new file mode 100644 index 0000000000000000000000000000000000000000..21ab22af34089015fc04810b93d7c4b4da833be3 GIT binary patch literal 225322 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 + + + + AboutDialog + + + About DB Browser for SQLite + SQLite DB Browser Hakkında + + + + Version + Versiyon + + + + <html><head/><body><p>DB Browser for SQLite is an open source, freeware visual tool used to create, design and edit SQLite database files.</p><p>It is bi-licensed under the Mozilla Public License Version 2, as well as the GNU General Public License Version 3 or later. You can modify or redistribute it under the conditions of these licenses.</p><p>See <a href="http://www.gnu.org/licenses/gpl.html">http://www.gnu.org/licenses/gpl.html</a> and <a href="https://www.mozilla.org/MPL/2.0/index.txt">https://www.mozilla.org/MPL/2.0/index.txt</a> for details.</p><p>For more information on this program please visit our website at: <a href="http://sqlitebrowser.org">http://sqlitebrowser.org</a></p><p><span style=" font-size:small;">This software uses the GPL/LGPL Qt Toolkit from </span><a href="http://qt-project.org/"><span style=" font-size:small;">http://qt-project.org/</span></a><span style=" font-size:small;"><br/>See </span><a href="http://qt-project.org/doc/qt-5/licensing.html"><span style=" font-size:small;">http://qt-project.org/doc/qt-5/licensing.html</span></a><span style=" font-size:small;"> for licensing terms and information.</span></p><p><span style=" font-size:small;">It also uses the Silk icon set by Mark James licensed under a Creative Commons Attribution 2.5 and 3.0 license.<br/>See </span><a href="http://www.famfamfam.com/lab/icons/silk/"><span style=" font-size:small;">http://www.famfamfam.com/lab/icons/silk/</span></a><span style=" font-size:small;"> for details.</span></p></body></html> + <html> <head /> <body> <p> DB Browser for SQLite, SQLite veritabanı dosyaları oluÅŸturmak, tasarlamak ve düzenlemek için kullanılan açık kaynak kodlu, ücretsiz bir araçtır. </p> <p> 'Mozilla Kamu Lisansı Sürüm 2' ve 'GNU Genel Kamu Lisansı Sürüm 3 veya üstü' olmak üzere iki lisansa sahiptir. Bu lisansların koÅŸulları çerçevesinde yazılımı düzenleyebilir veya yeniden dağıtabilirsiniz. </p> <p> Detaylar için, lütfen <a href="http://www.gnu.org/licenses/gpl.html" >http://www.gnu.org/licenses/gpl.html</a > ve <a href="https://www.mozilla.org/MPL/2.0/index.txt" >https://www.mozilla.org/MPL/2.0/index.txt</a > adreslerini ziyaret ediniz. </p> <p> Bu yazılım hakkında detaylı bilgi için lütfen internet sitemizi ziyaret ediniz: <a href="http://sqlitebrowser.org">http://sqlitebrowser.org</a> </p> <p> <span style=" font-size:small;" >Bu yazılım GPL/LGPL lisansına sahip Qt Araç Kitini (<a href="http://qt-project.org/" ><span style=" font-size:small;">http://qt-project.org/</span></a>) kullanmaktadır.</span> <br /> <span style=" font-size:small;">Lisans koÅŸulları ve bilgiler için </span ><a href="http://qt-project.org/doc/qt-5/licensing.html" ><span style=" font-size:small;" >http://qt-project.org/doc/qt-5/licensing.html</span ></a ><span style=" font-size:small;"> adresini ziyaret ediniz.</span > </p> <p> <span style=" font-size:small;" > Bu yazılım ayrıca, Mark James tarafından hazırlanan, 'Creative Commons Attribution 2.5 veya 3.0' lisansına sahip Silk ikon setini kullanmaktadır. <br />Detaylar için </span ><a href="http://www.famfamfam.com/lab/icons/silk/" ><span style=" font-size:small;" >http://www.famfamfam.com/lab/icons/silk/</span ></a ><span style=" font-size:small;"> adresini ziyaret ediniz.</span> </p> </body> </html> + + + + AddRecordDialog + + + Add New Record + Yeni Kayıt Ekle + + + + Enter values for the new record considering constraints. Fields in bold are mandatory. + Yeni kayıt için kısıtlamaları göz önüne alarak yeni deÄŸerleri giriniz. Kalın vurgulu alanlar zorunludur. + + + + In the Value column you can specify the value for the field identified in the Name column. The Type column indicates the type of the field. Default values are displayed in the same style as NULL values. + DeÄŸer sütununda, isim sütunuyla belirtilen alan için deÄŸer belirtebilirsiniz. Tip sütunu alanın tipini belirtir. Varsayılan deÄŸerler NULL ile aynı stilde görüntülenir. + + + + Name + İsim + + + + Type + Tip + + + + Value + DeÄŸer + + + + Values to insert. Pre-filled default values are inserted automatically unless they are changed. + Eklenecek deÄŸerler. Varsayılan olarak doldurulmuÅŸ deÄŸerler, deÄŸiÅŸtirilmedikleri takdirde otomatik olarak ekleneceklerdir. + + + + When you edit the values in the upper frame, the SQL query for inserting this new record is shown here. You can edit manually the query before saving. + Üstteki bölümdeki deÄŸerleri deÄŸiÅŸtirdiÄŸinizde, yeni kaydı eklemek için kullanılacak sorgu burada görüntülenir. Kaydet butonuna basmadan önce manuel olarak bu sorguyu düzenleyebilirsiniz. + + + + <html><head/><body><p><span style=" font-weight:600;">Save</span> will submit the shown SQL statement to the database for inserting the new record.</p><p><span style=" font-weight:600;">Restore Defaults</span> will restore the initial values in the <span style=" font-weight:600;">Value</span> column.</p><p><span style=" font-weight:600;">Cancel</span> will close this dialog without executing the query.</p></body></html> + <html> <head /> <body> <p> <span style=" font-weight:600;">Kaydet</span> butonu yeni kaydı eklemek için ilgili SQL ifadesini veritabanına gönderir. </p> <p> <span style=" font-weight:600;">Varsayılanları Yükle</span> butonu <span style=" font-weight:600;">DeÄŸer</span> sütunundakileri varsayılanlarına yükler. </p> <p> <span style=" font-weight:600;">İptal</span> butonu sorguyu çalıştırmadan bu pencereyi kapatır. </p> </body> </html> + + + + Auto-increment + + Otomatik-Artan + + + + + Unique constraint + + Benzersiz kısıtı + + + + + Check constraint: %1 + + Kısıtlamayı kontrol et: %1 + + + + + Foreign key: %1 + + Yabancı anahatar: %1 + + + + + Default value: %1 + + Varsayılan deÄŸer: %1 + + + + + Error adding record. Message from database engine: + +%1 + Kayıt eklenirken hata oluÅŸtu. Veritabanı motoru mesajı: + +%1 + + + + Are you sure you want to restore all the entered values to their defaults? + Girilen bütün deÄŸerleri varsayılanlarına döndürmek istediÄŸinize emin misiniz? + + + + Application + + + Possible command line arguments: + Muhtemel komut satırı argümanları: + + + + Usage: %1 [options] [<database>|<project>] + + + + + + -h, --help Show command line options + + + + + -q, --quit Exit application after running scripts + + + + + -s, --sql <file> Execute this SQL file after opening the DB + + + + + -t, --table <table> Browse this table after opening the DB + + + + + -R, --read-only Open database in read-only mode + + + + + -o, --option <group>/<setting>=<value> + + + + + Run application with this setting temporarily set to value + + + + + -O, --save-option <group>/<setting>=<value> + + + + + Run application saving this value for this setting + + + + + -v, --version Display the current version + + + + + <database> Open this SQLite database + + + + + <project> Open this project file (*.sqbpro) + + + + + The -s/--sql option requires an argument + -s/--sql opsiyonu bir argüman gerektirir + + + + The file %1 does not exist + %1 dosyası mevcut deÄŸil + + + + The -t/--table option requires an argument + -t/--table opsiyonu bir argüman gerektirir + + + + The -o/--option and -O/--save-option options require an argument in the form group/setting=value + -o/--option ve -O/--save-option opsiyonları grup/ayar=deÄŸer formatında bir argüman gerektirir + + + + Invalid option/non-existant file: %1 + Geçersiz seçenek veya mevcut olmayan dosya: %1 + + + + SQLite Version + SQLite Versiyonu + + + + SQLCipher Version %1 (based on SQLite %2) + + + + + DB Browser for SQLite Version %1. + + + + + Built for %1, running on %2 + %1 için derlendi, %2 üzerinde çalışıyor + + + + Qt Version %1 + + + + + CipherDialog + + + SQLCipher encryption + SQLCipher ÅŸifrelemesi + + + + &Password + &Parola + + + + &Reenter password + Pa&rolayı tekrar girin + + + + Encr&yption settings + Åžifreleme A&yarları + + + + SQLCipher &3 defaults + SQLCipher &3 varsayılanları + + + + SQLCipher &4 defaults + SQLCipher &4 varsayılanları + + + + Custo&m + &Özel + + + + Page si&ze + &Sayfa boyutu + + + + &KDF iterations + &KDF yinelemeleri + + + + HMAC algorithm + HMAC algoritması + + + + KDF algorithm + KDF algoritması + + + + Plaintext Header Size + Düz Metin Üstbilgi Boyutu + + + + Passphrase + Parola + + + + Raw key + Ham anahtar + + + + Please set a key to encrypt the database. +Note that if you change any of the other, optional, settings you'll need to re-enter them as well every time you open the database file. +Leave the password fields empty to disable the encryption. +The encryption process might take some time and you should have a backup copy of your database! Unsaved changes are applied before modifying the encryption. + Lütfen veritabanını ÅŸifrelemek için anahtar ayarlayın. +Unutmayın, bunun dışında isteÄŸe baÄŸlı yapacağınız herhangi deÄŸiÅŸikliklerde, veritabanı dosyasını her açtığınızda ÅŸifrenizi yeniden girmeniz gerekecektir. +Åžifrelemeyi devre dışı bırakmak için parola alanını boÅŸ bırakınız. +Åžifreleme iÅŸlemi biraz zaman alabilir ve bu iÅŸlemi yapmadan önce veritabanınızın yedeÄŸini almalısınız! KaydedilmemiÅŸ deÄŸiÅŸiklikler ÅŸifreniz deÄŸiÅŸtirilmeden önce kaydedilir. + + + + Please enter the key used to encrypt the database. +If any of the other settings were altered for this database file you need to provide this information as well. + Lütfen veritabanınızı ÅŸifrelemek için kullandığınız anahtarı giriniz. +Bu veritabanı için herhangi bir baÅŸka ayar daha yapılmışsa, bu bilgileri de saÄŸlamalısınız. + + + + ColumnDisplayFormatDialog + + + Choose display format + Görüntüleme formatını seçiniz + + + + Display format + Görüntüleme formatı + + + + Choose a display format for the column '%1' which is applied to each value prior to showing it. + '%1' sütunu için görüntülemeden önce uygulanacak bir görüntüleme formatı seçin. + + + + Default + Varsayılan + + + + Decimal number + Ondalık sayı + + + + Exponent notation + Üslü gösterim + + + + Hex blob + Onaltılık ikili veri + + + + Hex number + Onaltılık sayı + + + + Apple NSDate to date + Apple NSDate tipinden tarih tipine + + + + Java epoch (milliseconds) to date + Java epoch (milisaniye) tipinden tarih tipine + + + + .NET DateTime.Ticks to date + + + + + Julian day to date + Julian day tipinden tarih tipine + + + + Unix epoch to local time + Unix epoch tipinden yerel zaman tipine + + + + Date as dd/mm/yyyy + dd/mm/yyyy tarih formatı + + + + Lower case + Küçük harf + + + + Custom display format must contain a function call applied to %1 + Özel görüntüleme formatı, %1 için uygulanan fonksiyon çaÄŸrısı içermelidir + + + + Error in custom display format. Message from database engine: + +%1 + Özel görüntüleme formatınde hata oluÅŸtu. Veritabanı motoru mesajı: + +%1 + + + + Custom display format must return only one column but it returned %1. + Özel görüntüleme formatı sadece bir sütun döndürmeli: %1. + + + + Octal number + Sekizlik sayı + + + + Round number + Küsüratsız sayı + + + + Unix epoch to date + Unix epoch tipinden tarih tipine + + + + Upper case + Büyük harf + + + + Windows DATE to date + Windows DATE tipinden tarih tipine + + + + Custom + Özel + + + + CondFormatManager + + + Conditional Format Manager + KoÅŸullu Biçim Yöneticisi + + + + This dialog allows creating and editing conditional formats. Each cell style will be selected by the first accomplished condition for that cell data. Conditional formats can be moved up and down, where those at higher rows take precedence over those at lower. Syntax for conditions is the same as for filters and an empty condition applies to all values. + Bu iletiÅŸim kutusu koÅŸullu biçimler oluÅŸturmaya ve düzenlemeye izin verir. Her hücre stili, hücre verisi için ilk saÄŸlanan koÅŸul tarafından seçilecektir. KoÅŸullu biçimler yukarı ve aÅŸağı taşınabilir, üst sıralardakiler alt sıralardakilere göre önceliklidir. KoÅŸullar için sözdizimi, filtreler ile aynıdır ve boÅŸ koÅŸullar tüm hücreler için geçerlidir. + + + + Add new conditional format + Yeni koÅŸullu biçim oluÅŸtur + + + + &Add + &Ekle + + + + Remove selected conditional format + Seçilen koÅŸullu biçimi sil + + + + &Remove + &Sil + + + + Move selected conditional format up + Seçilen koÅŸullu biçimi yukarı taşı + + + + Move &up + Y&ukarı taşı + + + + Move selected conditional format down + Seçilen koÅŸullu biçimi aÅŸağı taşı + + + + Move &down + AÅŸağı &Taşı + + + + Foreground + Ön plan + + + + Text color + Yazı rengi + + + + Background + Arka plan + + + + Background color + Arka plan rengi + + + + Font + Yazı tipi + + + + Size + Boyut + + + + Bold + Kalın + + + + Italic + İtalik + + + + Underline + Altı çizili + + + + Alignment + Hizalama + + + + Condition + KoÅŸul + + + + + Click to select color + Renk seçmek için tıklayın + + + + Are you sure you want to clear all the conditional formats of this field? + Bu alanın tüm koÅŸullu biçimlerini silmek istediÄŸinizden emin misiniz? + + + + DBBrowserDB + + + Please specify the database name under which you want to access the attached database + Lütfen veritabanının ismini eriÅŸmek istediÄŸiniz baÄŸlı veritabanının altında belirtin + + + + Invalid file format + Geçersiz dosya formatı + + + + Do you want to save the changes made to the database file %1? + %1 veritabanı dosyasında yaptığınız deÄŸiÅŸiklikleri kaydetmek istiyor musunuz? + + + + Exporting database to SQL file... + veritabanı, SQL dosyası olarak dışa aktarılıyor... + + + + + Cancel + İptal + + + + Executing SQL... + SQL yürütülüyor... + + + + Action cancelled. + İşlem iptal edildi. + + + + This database has already been attached. Its schema name is '%1'. + Bu veritabanı zaten mevcut ve ÅŸemasının ismi '%1'. + + + + Do you really want to close this temporary database? All data will be lost. + Gerçekten geçici veritabanını kapatmak istiyor musunuz? Bütün veriler kaybedilecek. + + + + Database didn't close correctly, probably still busy + Veritabanı doÄŸru bir ÅŸekilde kapatılamadı, muhtemelen hâlâ kullanımda + + + + The database is currently busy: + Veritabanı ÅŸu anda meÅŸgul: + + + + Do you want to abort that other operation? + DiÄŸer iÅŸlemi iptal etmek istiyor musunuz? + + + + + No database file opened + Hiçbir veritabanı dosyası açılmamış + + + + + Error in statement #%1: %2. +Aborting execution%3. + Belirtilen ifadede hata oluÅŸtu: #%1: %2 +Yürütme durduruluyor %3. + + + + + and rolling back + ve iÅŸlem geri alınıyor + + + + didn't receive any output from %1 + %1 sorgusundan herhangi bir çıktı alınamadı + + + + could not execute command: %1 + komut iÅŸletilemedi: %1 + + + + Cannot delete this object + Bu obje silinemiyor + + + + Cannot set data on this object + Bu objeye veri atanamıyor + + + + + A table with the name '%1' already exists in schema '%2'. + '%2' ÅŸemasında '%1' isimli tablo zaten mevcut. + + + + No table with name '%1' exists in schema '%2'. + '%2' ÅŸeması içerisinde '%1' isminde bir tablo yok. + + + + + Cannot find column %1. + %1 sütunu bulunamadı. + + + + Creating savepoint failed. DB says: %1 + Kayıt noktası oluÅŸturulamadı. Veritabanı mesajı: %1 + + + + Renaming the column failed. DB says: +%1 + Sütun yeniden adlandırılamadı. Veritabanı motoru mesajı: +%1 + + + + + Releasing savepoint failed. DB says: %1 + Kayıt noktası serbest bırakılamadı. Veritabanı motoru mesajı: %1 + + + + Creating new table failed. DB says: %1 + Veri tabanı oluÅŸturulamadı. Veritabanı mesajı: %1 + + + + Copying data to new table failed. DB says: +%1 + Yeni tabloya veri kopyalanamadı. Veritabanı mesajı: +%1 + + + + Deleting old table failed. DB says: %1 + Eski tablolar silinemedi: Veritabanı mesajı: %1 + + + + Error renaming table '%1' to '%2'. +Message from database engine: +%3 + '%1' tablosu '%2' olarak adlandırılırken hata oluÅŸtu. +Veritabanı motoru mesajı: +%3 + + + + could not get list of db objects: %1 + veritabanı objelerinin listesi alınamadı: %1 + + + + Restoring some of the objects associated with this table failed. This is most likely because some column names changed. Here's the SQL statement which you might want to fix and execute manually: + + + Bu tabloyla iliÅŸkili bazı objelerin restore iÅŸlemi baÅŸarısız. Bu hata büyük olasılıkla sütunların isminin deÄŸiÅŸimden kaynaklanıyor. SQL sorgusunu elle düzeltmek ve yürütmek isterseniz: + + + + + + could not get list of databases: %1 + veri tabanı listesi alınamadı: %1 + + + + Error loading extension: %1 + Eklenti yüklenirken hata oluÅŸtu: %1 + + + + could not get column information + sütun bilgisi alınamadı + + + + Error setting pragma %1 to %2: %3 + Belirtilen pragma ayarlanırken hata oluÅŸtu: %1 > %2: %3 + + + + File not found. + Dosya bulunamadı. + + + + DbStructureModel + + + Name + İsim + + + + Object + Obje + + + + Type + Tip + + + + Schema + Åžema + + + + Database + Veritabanı + + + + Browsables + Görüntülenebilir olanlar + + + + All + Tümü + + + + Temporary + Geçici + + + + Tables (%1) + Tablolar (%1) + + + + Indices (%1) + İndisler (%1) + + + + Views (%1) + Görünümler (%1) + + + + Triggers (%1) + Tetikleyiciler (%1) + + + + EditDialog + + + Edit database cell + Veritabanı hücresini düzenle + + + + Mode: + Mod: + + + + This is the list of supported modes for the cell editor. Choose a mode for viewing or editing the data of the current cell. + Bu, hücre düzenleyicisi için desteklenen modların listesidir. Geçerli hücrenin verilerini görüntülemek veya düzenlemek için bir mod seçin. + + + + RTL Text + SaÄŸdan Sola Okunan Metin + + + + + Image + Görüntü + + + + JSON + JSON + + + + XML + XML + + + + + Automatically adjust the editor mode to the loaded data type + Düzenleyici modunu otomatik olarak yüklenen veri tipine ayarlar + + + + This checkable button enables or disables the automatic switching of the editor mode. When a new cell is selected or new data is imported and the automatic switching is enabled, the mode adjusts to the detected data type. You can then change the editor mode manually. If you want to keep this manually switched mode while moving through the cells, switch the button off. + Bu onay kutusu, editör modunun otomatik olarak deÄŸiÅŸtirilmesini etkinleÅŸtirir veya devre dışı bırakır. Bu kutucuk iÅŸaretliyken, yeni bir hücre seçildiÄŸinde veya yeni veriler içe aktarıldığında, mod algılanan veri türüne göre ayarlanır. Daha sonra editör modunu manuel olarak deÄŸiÅŸtirebilirsiniz. Hücreler arasında hareket ederken bu manuel modu korumak isterseniz, kutucuÄŸun iÅŸaretini kaldırın. + + + + Auto-switch + Otomatik geçiÅŸ + + + + The text editor modes let you edit plain text, as well as JSON or XML data with syntax highlighting, automatic formatting and validation before saving. + +Errors are indicated with a red squiggle underline. + Metin editorü modları,otomatik biçimlendirme, metin, JSON veya XML verilerinizi vurgulu olarak düzenlemenizi ve kayıttan önce formatlamanızı ve doÄŸrulamanızı saÄŸlar . + +Hatalar, kırmızı dalgalı alt çizgiyle belirtilir. + + + + This Qt editor is used for right-to-left scripts, which are not supported by the default Text editor. The presence of right-to-left characters is detected and this editor mode is automatically selected. + Qt editör, varsayılan metin editörü tarafından desteklenmeyen saÄŸdan sola okunan dillde yazılmış betikleri için kullanılır. + + + + Open preview dialog for printing the data currently stored in the cell + Åžu anda hücrede saklanan veriyi yazdırmak için önizleme penceresini aç + + + + Auto-format: pretty print on loading, compact on saving. + Otomatik format: yüklenirken aÅŸamasında kaliteli baskı, kayıt açısından da tasarrufludur. + + + + When enabled, the auto-format feature formats the data on loading, breaking the text in lines and indenting it for maximum readability. On data saving, the auto-format feature compacts the data removing end of lines, and unnecessary whitespace. + EtkinleÅŸtirildiÄŸinde, otomatik biçimlendirme özelliÄŸi yükleme sırasında verileri biçimlendirir, metni satırlara böler ve maksimum okunabilirlik için girintili yapar. Veri kaydederken otomatik biçimlendirme özelliÄŸi, satır sonu karakterlerini ve gereksiz boÅŸlukları kaldırarak verileri sıkıştırır. + + + + Word Wrap + Kelime Kaydırma + + + + Wrap lines on word boundaries + Kelime sınırlarında kelimeyi kaydırır + + + + + Open in default application or browser + Varsayılan program veya görüntüleyicide aç + + + + Open in application + Uygualamada aç + + + + The value is interpreted as a file or URL and opened in the default application or web browser. + DeÄŸe,r bir dosya veya URL olarak yorumlanır ve varsayılan uygulamada veya web tarayıcısında açılır. + + + + Save file reference... + Dosya referansını kaydet... + + + + Save reference to file + Referansı dosyaya kaydet + + + + + Open in external application + Harici bir programda aç + + + + Autoformat + Otomatik format + + + + &Export... + D&ışa aktar... + + + + + &Import... + &İçe aktar... + + + + + Import from file + Dosyadan içe aktar + + + + + Opens a file dialog used to import any kind of data to this database cell. + Veritabanı hücresine herhangi bir tipte veri yüklemek için bir dosya iletiÅŸim kutusu açar. + + + + Export to file + Dosyaya aktar + + + + Opens a file dialog used to export the contents of this database cell to a file. + Veritabanı hücresinin içeriÄŸini bir dosyaya aktarmak için kullanılan bir dosya iletiÅŸim kutusu açar. + + + + + Print... + Yazdır... + + + + Open preview dialog for printing displayed image + Görüntülenen resmi yazdırmak için önizleme penceresini aç + + + + + Ctrl+P + + + + + Open preview dialog for printing displayed text + Görüntülenen yazıyı yazdırmak için önizleme penceresini aç + + + + Copy Hex and ASCII + Onaltılık ve ASCII deÄŸerini kopyala + + + + Copy selected hexadecimal and ASCII columns to the clipboard + Seçilen onaltılık ve ASCII sütunlarını panoya kopyala + + + + Ctrl+Shift+C + + + + + Set as &NULL + &NULL olarak ayarla + + + + Apply data to cell + Veriyi hücreye uygula + + + + This button saves the changes performed in the cell editor to the database cell. + Bu buton, hücre editöründe yapılan deÄŸiÅŸiklikleri veritabanı hücresine kaydeder. + + + + Apply + Uygula + + + + Text + Metin + + + + Binary + İkili + + + + Erases the contents of the cell + Hücre içeriÄŸini siler + + + + This area displays information about the data present in this database cell + Bu alan veritabanı hücresinin içindeki içerik hakkında bilgileri görüntüler + + + + Type of data currently in cell + Åžu anda hücrenin içinde bulunan veri tipi + + + + Size of data currently in table + Åžuan da tablonun içinde bulunan verinin boyutu + + + + Choose a filename to export data + Veriyi dışa aktarmak için dosya ismi seçiniz + + + + + Image data can't be viewed in this mode. + Imaj verisi bu modda görüntülenemiyor. + + + + + Try switching to Image or Binary mode. + Görüntü veya İkili mod arasında geçiÅŸ yapın. + + + + + Binary data can't be viewed in this mode. + İkili veri bu modda görüntülenemiyor. + + + + + Try switching to Binary mode. + İkili veri moduna geçmeyi deneyin. + + + + + Image files (%1) + Görüntü dosyaları (%1) + + + + Binary files (*.bin) + İkili dosyalar (*.bin) + + + + Choose a file to import + İçe aktarmak için dosya seçiniz + + + + %1 Image + %1 imajı + + + + Invalid data for this mode + Bu mod için geçersiz veri + + + + The cell contains invalid %1 data. Reason: %2. Do you really want to apply it to the cell? + Hücre geçersiz %1 verisi içeriyor. Sebep: %2. Bu deÄŸiÅŸikliÄŸi hücreye gerçekten uygulamak istiyor musunuz? + + + + Type of data currently in cell: %1 Image + Åžu anda hücrenin içinde bulunan veri tipi: %1 Imajı + + + + %1x%2 pixel(s) + %1x%2 piksel + + + + Type of data currently in cell: NULL + Åžu anda hücrenin içinde bulunan veri tipi: NULL + + + + Type of data currently in cell: Valid JSON + Åžu anda hücrenin içinde bulunan veri tipi: DoÄŸrulanmış JSON + + + + Couldn't save file: %1. + Dosya kaydedilemedi: %1. + + + + The data has been saved to a temporary file and has been opened with the default application. You can now edit the file and, when you are ready, apply the saved new data to the cell editor or cancel any changes. + Veriler geçici bir dosyaya kaydedildi ve varsayılan uygulama ile açıldı. Artık dosyayı düzenleyebilir ve hazır olduÄŸunuzda, kaydedilen yeni verileri hücre editörüne uygulayabilir veya deÄŸiÅŸiklikleri iptal edebilirsiniz. + + + + + Type of data currently in cell: Text / Numeric + Åžuan da hücresinin içinde bulunan verinin tipi: Metin / Nümerik + + + + + + %n character(s) + + %n karakter + + + + + Type of data currently in cell: Binary + Åžuan da hücresinin içinde bulunan verinin tipi: İkili Veri + + + + + %n byte(s) + + %n bayt + + + + + EditIndexDialog + + + &Name + &İsim + + + + Order + Sırala + + + + &Table + &Tablo + + + + Edit Index Schema + Index Åžemasını Düzenle + + + + &Unique + Benzersi&z + + + + For restricting the index to only a part of the table you can specify a WHERE clause here that selects the part of the table that should be indexed + Index'i tablonun yalnızca bir bölümüyle sınırlamak için, burada tablonun dizine alınması gereken kısmını seçen bir WHERE deyimi belirtebilirsiniz + + + + Partial inde&x clause + Kısmi inde&x hükmü + + + + Colu&mns + Sütu&nlar + + + + Table column + Tablo sütunu + + + + Type + Tip + + + + Add a new expression column to the index. Expression columns contain SQL expression rather than column names. + Index için yeni bir ifade sütunu ekleyin. İfade sütunları, sütun adları deÄŸil SQL ifadesi içerir. + + + + Index column + Index sütunu + + + + Deleting the old index failed: +%1 + Eski index silinemedi: +%1 + + + + Creating the index failed: +%1 + İndeks oluÅŸturma hatası: %1 + + + + EditTableDialog + + + Edit table definition + Tablo tanımını düzenle + + + + Table + Tablo + + + + Advanced + GeliÅŸmiÅŸ + + + + Make this a 'WITHOUT rowid' table. Setting this flag requires a field of type INTEGER with the primary key flag set and the auto increment flag unset. + Tabloyu satır ID'si olmadan ayarlayın. Bu ayar için, Tamsayı(Integer) tipinde otomatik arttır özelliÄŸi olmayan ve birincil anahtar olarak ayarlanmış bir alan gerekli. + + + + Without Rowid + Satır ID(Rowid) Kullanma + + + + Database sche&ma + Veritabanı &Åžeması + + + + Fields + Alanlar + + + + Add + Ekle + + + + Remove + Sil + + + + Move to top + En yukarı taşı + + + + Move up + Yukarı taşı + + + + Move down + AÅŸağı taşı + + + + Move to bottom + En aÅŸağı taşı + + + + + Name + İsim + + + + + Type + Tip + + + + NN + NN + + + + Not null + NULL Olamaz + + + + PK + Birincil Anahtar + + + + Primary key + Birincil Anahtar + + + + AI + Otomatik Arttırma + + + + Autoincrement + Otomatik Arttırma + + + + U + Benzersiz + + + + + + Unique + Benzersiz + + + + Default + Varsayılan + + + + Default value + Varsayılan deÄŸer + + + + + + Check + Kontrol + + + + Check constraint + Kısıtlama Kontrol + + + + Collation + KarşılaÅŸtırma + + + + + + Foreign Key + Yabancı Anahtar + + + + Constraints + Kısıtlar + + + + Add constraint + Kısıt ekle + + + + Remove constraint + Kısıtı kaldır + + + + Columns + Sütunlar + + + + SQL + SQL + + + + <html><head/><body><p><span style=" font-weight:600; color:#ff0000;">Warning: </span>There is something with this table definition that our parser doesn't fully understand. Modifying and saving this table might result in problems.</p></body></html> + <html> <head /> <body> <p> <span style=" font-weight:600; color:#ff0000;">Uyarı: </span>Bu tablo tanımında ayrıştırıcının tam olarak anlayamadığı bir ÅŸey var. Bu tabloyu deÄŸiÅŸtirmek ve kaydetmek sorunlara neden olabilir. </p> </body> </html> + + + + + Primary Key + Birincil Anahtar + + + + Add a primary key constraint + Birinci anahtar kısıtlaması ekle + + + + Add a foreign key constraint + Yabancı anahtar kısıtı ekle + + + + Add a unique constraint + Benzersiz kısıtı ekle + + + + Add a check constraint + Kontrol kısıtı ekle + + + + + There can only be one primary key for each table. Please modify the existing primary key instead. + Her tabloda yalnızca bir birincil anahtar bulunabilir. Mevcut birincil anahtarı düzenlemeyi denedin. + + + + Error creating table. Message from database engine: +%1 + Tablo oluÅŸturma hatası. veritabanı motorunun mesajı: %1 + + + + There already is a field with that name. Please rename it first or choose a different name for this field. + Bu isme sahip alan zaten var. Lütfen bu alan için farklı bir isim kullanın veya aynı isme sahip alanı yeniden adlandırın. + + + + There is at least one row with this field set to NULL. This makes it impossible to set this flag. Please change the table data first. + Tablonuzun en az bir satırında boÅŸ bırakılmış alan var. Bu sebeple bu özelliÄŸi etkinleÅŸtirmek imkansız. Lütfen ilk önce tablonuzdaki veriyi deÄŸiÅŸtirin. + + + + There is at least one row with a non-integer value in this field. This makes it impossible to set the AI flag. Please change the table data first. + Tablonuzun en az bir satırında tamsayı dışında deÄŸer içeren alan var. Bu sebeÄŸle otomatik arttır özelliÄŸini etkinleÅŸtirmek imkansız. Lütfen ilk önce tablonuzdaki veriyi deÄŸiÅŸtirin. + + + + Column '%1' has duplicate data. + + '%1' sütununda yinelenen veriler var. + + + + + This makes it impossible to enable the 'Unique' flag. Please remove the duplicate data, which will allow the 'Unique' flag to then be enabled. + Åžu anda 'Benzersiz' kısıtı eklenmesi imkansız.'Benzersiz' kısıtını ekleyebilmek için lütfen yinelenen deÄŸerleri silin. + + + + This column is referenced in a foreign key in table %1 and thus its name cannot be changed. + Bu sütun%1 tablosundaki yabancı bir anahtar tarafından referans alınıyor, bu nedenle adı deÄŸiÅŸtirilemez. + + + + Are you sure you want to delete the field '%1'? +All data currently stored in this field will be lost. + Gerçekten '%1' alanını silmek istediÄŸinize emin misiniz? Bu alanda mevcut bütün verilerinizi kaybedeceksiniz. + + + + Please add a field which meets the following criteria before setting the without rowid flag: + - Primary key flag set + - Auto increment disabled + Lütfen 'Satır ID(Rowid) Kullanma' özelliÄŸini etkinleÅŸtirmek için öncelikle aÅŸağıdaki ölçütleri karşılayan alan ekleyin: +- Birincil anahtar ayarlayın +- Otomatik arttır ayarını devre dışı bırakın + + + + ExportDataDialog + + + Export data as CSV + Veriyi CSV olarak dışa aktar + + + + Tab&le(s) + Tab&lolar + + + + Colu&mn names in first line + Sütu&n isimleri ilk satırda + + + + Fie&ld separator + &Alan ayracı + + + + , + , + + + + ; + ; + + + + Tab + Tab karakteri + + + + | + | + + + + + + Other + DiÄŸer + + + + &Quote character + &Tırnak karakteri + + + + " + " + + + + ' + ' + + + + New line characters + Yeni satır karakterleri + + + + Windows: CR+LF (\r\n) + Windows: CR+LF (\r\n) + + + + Unix: LF (\n) + Unix: LF (\n) + + + + Pretty print + Düzenli baskı + + + + + Could not open output file: %1 + OluÅŸturulan dosya açılamadı: %1 + + + + + Choose a filename to export data + Verileri dışarı aktarmak için dosya ismi seçiniz + + + + Export data as JSON + Veriyi JSON olarak dışa aktar + + + + exporting CSV + CSV dışa aktarılıyor + + + + exporting JSON + JSON dışa aktarılıyor + + + + Please select at least 1 table. + Lütfen en az 1 tablo seçiniz. + + + + Choose a directory + Dizin seçiniz + + + + Export completed. + Dışa aktarma tamamlandı. + + + + ExportSqlDialog + + + Export SQL... + SQL dosyasını dışa aktar... + + + + Tab&le(s) + Tablo&lar + + + + Select All + Tümünü Seç + + + + Deselect All + Tüm Seçimi İptal Et + + + + &Options + &Seçenekler + + + + Keep column names in INSERT INTO + INSERT ve INTO komutlarında sütun isimlerini tut + + + + Multiple rows (VALUES) per INSERT statement + Tek INSERT ifadesi için çok satırlı (VALUES) ifade + + + + Export everything + Her ÅŸeyi dışa aktar + + + + Export data only + Sadece veriyi dışa aktar + + + + Keep old schema (CREATE TABLE IF NOT EXISTS) + Eski ÅŸemayı tut (CREATE TABLE IF NOT EXISTS) + + + + Overwrite old schema (DROP TABLE, then CREATE TABLE) + Eski ÅŸemanın üzerine yaz (DROP TABLE, then CREATE TABLE) + + + + Export schema only + Sadece ÅŸemayı dışa aktar + + + + Please select at least one table. + Lütfen en az bir tablo seçiniz. + + + + Choose a filename to export + Dışa aktarmak için dosya ismi seçiniz + + + + Export completed. + Dışa aktarma tamamlandı. + + + + Export cancelled or failed. + Dışa aktarma iptal edildi veya baÅŸarısız. + + + + ExtendedScintilla + + + + Ctrl+H + + + + + Ctrl+F + + + + + + Ctrl+P + + + + + Find... + Bul... + + + + Find and Replace... + Bul ve DeÄŸiÅŸtir... + + + + Print... + Yazdır... + + + + ExtendedTableWidget + + + Use as Exact Filter + Tam Filtre Olarak Kullan + + + + Containing + İçersin + + + + Not containing + İçermesin + + + + Not equal to + EÅŸit deÄŸil + + + + Greater than + Büyüktür + + + + Less than + Küçüktür + + + + Greater or equal + Büyük eÅŸit + + + + Less or equal + Küçük eÅŸit + + + + Between this and... + Åžunların arasında... + + + + Regular expression + Düzenli ifadeler (RegEx) + + + + Edit Conditional Formats... + KoÅŸullu Biçimleri Düzenle... + + + + Set to NULL + NULL olarak ayarla + + + + Copy + Kopyala + + + + Copy with Headers + Üst BaÅŸlıklarla Kopyala + + + + Copy as SQL + SQL olarak Kopyala + + + + Paste + Yapıştır + + + + Print... + Yazdır... + + + + Use in Filter Expression + Filtre İfadesinde Kullan + + + + Alt+Del + Alt+De + + + + Ctrl+Shift+C + + + + + Ctrl+Alt+C + + + + + The content of the clipboard is bigger than the range selected. +Do you want to insert it anyway? + Pano içeriÄŸi seçilen aralıktan daha büyük. + Yine de eklemek istiyor musunuz? + + + + <p>Not all data has been loaded. <b>Do you want to load all data before selecting all the rows?</b><p><p>Answering <b>No</b> means that no more data will be loaded and the selection will not be performed.<br/>Answering <b>Yes</b> might take some time while the data is loaded but the selection will be complete.</p>Warning: Loading all the data might require a great amount of memory for big tables. + <p> Tüm veriler yüklenmedi. <b>Tüm satırları seçmeden önce tüm verileri yüklemek istiyor musunuz?</b> </p> <p></p> <p> <b>Hayır</b> olarak cevaplamak, tüm verileri yüklemeyecek ve seçim iÅŸlemini uygulanmayacak. <br /> <b>Evet</b> seçeneÄŸi biraz zaman alabilir ama seçim iÅŸlemini gerçekleÅŸtirecektir. </p> Uyarı: Tüm verilerin yüklenmesi büyük tablolar için büyük miktarda bellek gerektirebilir. + + + + Cannot set selection to NULL. Column %1 has a NOT NULL constraint. + Seçim NULL olarak ayarlanamıyor. %1 sütununda NOT NULL kısıtlaması var. + + + + FileExtensionManager + + + File Extension Manager + Dosya Uzantı Yöneticisi + + + + &Up + &Yukarı + + + + &Down + &AÅŸağı + + + + &Add + &Ekle + + + + &Remove + &Sil + + + + + Description + Açıklama + + + + Extensions + Uzantılar + + + + *.extension + *.uzantı + + + + FilterLineEdit + + + Filter + Filtre + + + + These input fields allow you to perform quick filters in the currently selected table. +By default, the rows containing the input text are filtered out. +The following operators are also supported: +% Wildcard +> Greater than +< Less than +>= Equal to or greater +<= Equal to or less += Equal to: exact match +<> Unequal: exact inverse match +x~y Range: values between x and y +/regexp/ Values matching the regular expression + Bu giriÅŸ alanları, seçili tabloda hızlı filtreler gerçekleÅŸtirmenizi saÄŸlar. +Varsayılan olarak, metin içeren satırlar filtrelenir. +Ayrıca aÅŸağıdaki operatörler de destekleniyor: +% Joker +> Büyüktür +< Küçüktür +>= Büyük eÅŸit +<= Küçük eÅŸit += EÅŸittir +<> EÅŸit deÄŸil +x~y Aralık: deÄŸerler x ve y arasında +/regexp/ Kurallı ifadelerle(RegExp) eÅŸleÅŸen deÄŸerler + + + + Clear All Conditional Formats + Tüm KoÅŸullu Biçimleri Temizle + + + + Use for Conditional Format + KoÅŸullu Biçim için Kullan + + + + Edit Conditional Formats... + KoÅŸullu Biçimleri Düzenle... + + + + Set Filter Expression + Filtre İfadesi Ayarla + + + + What's This? + Bu nedir? + + + + Is NULL + NULL mu + + + + Is not NULL + NULL deÄŸil mi + + + + Is empty + BoÅŸ mu + + + + Is not empty + BoÅŸ deÄŸil mi + + + + Not containing... + İçermiyor... + + + + Equal to... + Åžuna eÅŸit... + + + + Not equal to... + Åžuna eÅŸit deÄŸil... + + + + Greater than... + Büyüktür... + + + + Less than... + Küçüktür... + + + + Greater or equal... + Büyük eÅŸit... + + + + Less or equal... + Küçük eÅŸit... + + + + In range... + Aralıkta mı... + + + + Regular expression... + Düzenli ifade (RegEx)... + + + + FindReplaceDialog + + + Find and Replace + Bul ve DeÄŸiÅŸtir + + + + Fi&nd text: + &Aranan Metin: + + + + Re&place with: + Åžununla d&eÄŸiÅŸtir: + + + + Match &exact case + Büyük kü&çük harfe duyarlı + + + + Match &only whole words + Kelimenin ta&mamını eÅŸleÅŸtir + + + + When enabled, the search continues from the other end when it reaches one end of the page + EtkinleÅŸtirildiÄŸinde, arama sayfanın bir ucuna ulaÅŸtığında diÄŸer uçtan devam eder + + + + &Wrap around + Ba&ÅŸa dön + + + + When set, the search goes backwards from cursor position, otherwise it goes forward + Ayarlandığında, arama imleç konumundan geriye doÄŸru gider, aksi takdirde ileri gider + + + + Search &backwards + Geri&ye doÄŸru ara + + + + <html><head/><body><p>When checked, the pattern to find is searched only in the current selection.</p></body></html> + <html><head/><body><p>İşaretlendiÄŸinde, girilen desen yalnızca geçerli seçimde aranır.</p></body></html> + + + + &Selection only + Sadece se&çimde ara + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + <html> <head /> <body> <p> İşaretlendiÄŸinde, girilen desen UNIX düzenli ifadesi olarak yorumlanır. <a href="https://en.wikibooks.org/wiki/Regular_Expressions" >Wikibooks</a > üzerinden düzenli ifadeleri inceleyebilirsiniz. </p> </body> </html> + + + + Use regular e&xpressions + Düzenli ifadeleri &kullan + + + + Find the next occurrence from the cursor position and in the direction set by "Search backwards" + İmleç konumundan itibaren belirtilen yönde bir sonraki eÅŸleÅŸmeyi bulur + + + + &Find Next + Sonrakini &Bul + + + + F3 + + + + + &Replace + &DeÄŸiÅŸtir + + + + Highlight all the occurrences of the text in the page + EÅŸleÅŸen tüm kelimeleri vurgula + + + + F&ind All + Tüm&ünü Bul + + + + Replace all the occurrences of the text in the page + Sayfadaki bulunan metinlerin tümünü deÄŸiÅŸtir + + + + Replace &All + &Tümünü DeÄŸiÅŸtir + + + + The searched text was not found + Aranan metin bulunamadı + + + + The searched text was not found. + The searched text was not found. + + + + The searched text was found one time. + Aranan metin bir kez bulundu. + + + + The searched text was found %1 times. + Aranan metin %1 kez bulundu. + + + + The searched text was replaced one time. + Aranan metin bir kez deÄŸiÅŸtirildi. + + + + The searched text was replaced %1 times. + Aranan metin %1 kez deÄŸiÅŸtirildi. + + + + ForeignKeyEditor + + + &Reset + &Sıfırla + + + + Foreign key clauses (ON UPDATE, ON DELETE etc.) + Yabancı anahtar hükümleri (ON UPDATE, ON DELETE vb.) + + + + ImportCsvDialog + + + Import CSV file + CSV dosyasını içe aktar + + + + Table na&me + Tablo İs&mi + + + + &Column names in first line + İlk satır &sütun isimleri içeriyor + + + + Field &separator + Alan &ayracı + + + + , + , + + + + ; + ; + + + + + Tab + Tab karakteri + + + + | + | + + + + Other + DiÄŸer + + + + &Quote character + &Tırnak karakteri + + + + + Other (printable) + DiÄŸer (yazdırılabilir) + + + + + Other (code) + DiÄŸer (Kod) + + + + " + " + + + + ' + ' + + + + &Encoding + &Kodlama + + + + UTF-8 + UTF-8 + + + + UTF-16 + UTF-16 + + + + ISO-8859-1 + ISO-8859-1 + + + + Trim fields? + Alanlar biçimlendirilsin mi? + + + + Separate tables + Tablolar ayrılmış + + + + Advanced + GeliÅŸmiÅŸ + + + + When importing an empty value from the CSV file into an existing table with a default value for this column, that default value is inserted. Activate this option to insert an empty value instead. + CSV dosyasından boÅŸ bir deÄŸer alındığında, sütunun varsayılan deÄŸeri kullanılır. Varsayılan deÄŸer yerine boÅŸ bir deÄŸer eklemek için bu seçeneÄŸi etkinleÅŸtirin. + + + + Ignore default &values + &Varsayılan deÄŸerleri yoksay + + + + Activate this option to stop the import when trying to import an empty value into a NOT NULL column without a default value. + Varsayılan deÄŸeri olmayan NOT NULL kısıtına sahip bir sütuna, boÅŸ bir deÄŸer içe aktarmaya çalışırken içe aktarmayı durdurmak için bu seçeneÄŸi etkinleÅŸtirin. + + + + Fail on missing values + Eksik deÄŸerde iÅŸlemi durdur + + + + Disable data type detection + Veri tipi algılamayı devre dışı bırak + + + + Disable the automatic data type detection when creating a new table. + Yeni bir tablo oluÅŸtururken otomatik veri tipi algılamayı devre dışı bırakın. + + + + When importing into an existing table with a primary key, unique constraints or a unique index there is a chance for a conflict. This option allows you to select a strategy for that case: By default the import is aborted and rolled back but you can also choose to ignore and not import conflicting rows or to replace the existing row in the table. + Birincil anahtar, benzersiz kısıtı veya benzersiz index kısıtına sahip mevcut bir tablo içe aktarırken çakışma meydana gelebilir. Bu seçenek, bu durum için bir strateji seçmenize olanak tanır: Varsayılan olarak iÅŸlem iptal edilir ve geri alınır, ancak isterseniz çakışmaları yoksayıp içe aktarmazsınız veya yeni satırları mevcut olanlarla deÄŸiÅŸtirebilirsiniz. + + + + Abort import + İçe aktarmayı iptal et + + + + Ignore row + Satırı yoksay + + + + Replace existing row + Varolan kaydı deÄŸiÅŸtir + + + + Conflict strategy + Çakışma stratejisi + + + + + Deselect All + Tüm seçimi iptal et + + + + Match Similar + Benzerleri EÅŸleÅŸtir + + + + Select All + Tümünü Seç + + + + There is already a table named '%1' and an import into an existing table is only possible if the number of columns match. + '%1' isminde bir tablo zaten var, var olan bir tablo için içe aktarma, yalnızca sütun sayıları eÅŸitse mümkün olabilir. + + + + There is already a table named '%1'. Do you want to import the data into it? + '%1' adında bir tablo zaten var. Verileri içe aktarmak istiyor musunuz? + + + + Creating restore point failed: %1 + Geri yükleme noktası oluÅŸturma baÅŸarısız: %1 + + + + Creating the table failed: %1 + Tablo oluÅŸturma baÅŸarısız: %1 + + + + importing CSV + CSV İçe Aktarma + + + + Importing the file '%1' took %2ms. Of this %3ms were spent in the row function. + '%1' dosyasını içe aktarmak %2ms sürdü. %3ms satır fonksiyonunda harcandı. + + + + Inserting row failed: %1 + Satır ekleme baÅŸarısız: %1 + + + + MainWindow + + + DB Browser for SQLite + SQLite DB Browser + + + + toolBar1 + toolBar1 + + + + Opens the SQLCipher FAQ in a browser window + SQLCipher Hakkında SSS bölümünü tarayıcı penceresinde açar + + + + Export one or more table(s) to a JSON file + Bir veya daha fazla tabloyu JSON dosyası olarak dışa aktarın + + + + Open an existing database file in read only mode + Mevcut bir veritabanı dosyasını salt okunur modda açar + + + + &File + &Dosya + + + + &Import + &İçe Aktar + + + + &Export + &Dışa Aktar + + + + &Edit + Düz&enle + + + + &View + &Görünüm + + + + &Help + &Yardım + + + + DB Toolbar + Veritabanı Araç ÇubuÄŸu + + + + Edit Database &Cell + Veritabanı Hü&cresini Düzenle + + + + DB Sche&ma + Veritabanı Åže&ması + + + + &Remote + &Uzak Bilgisayar + + + + + Execute current line + Geçerli satırı yürüt + + + + This button executes the SQL statement present in the current editor line + Bu buton, geçerli editör satırında bulunan SQL ifadesini yürütür + + + + Shift+F5 + + + + + Sa&ve Project + Projeyi &Kaydet + + + + User + Kullanıcı + + + + Application + Uygulama + + + + &Clear + &Temizle + + + + &New Database... + Ye&ni Veritabanı... + + + + + Create a new database file + Yeni bir veritabanı dosyası oluÅŸtur + + + + This option is used to create a new database file. + Bu seçenek yeni bir veritabanı dosyası oluÅŸturmak için kullanılır. + + + + Ctrl+N + + + + + + &Open Database... + &Veritabanı Aç... + + + + + + + + Open an existing database file + Mevcut veritabanı dosyasını aç + + + + + + This option is used to open an existing database file. + Bu seçenek mevcut veritabanı dosyasını açmak için kullanılır. + + + + Ctrl+O + + + + + &Close Database + Veritabanı &Kapat + + + + + Ctrl+W + + + + + + Revert database to last saved state + Veritabanını en son kaydedilen duruma döndür + + + + This option is used to revert the current database file to its last saved state. All changes made since the last save operation are lost. + Bu seçenek veritabanını en son kaydedilen durumuna döndürür. Geçerli kayıttan sonra yaptığınız tüm deÄŸiÅŸiklikler kaybolacaktır. + + + + + Write changes to the database file + DeÄŸiÅŸiklikleri veritabanı dosyasına kaydet + + + + This option is used to save changes to the database file. + Bu seçenek deÄŸiÅŸiklikleri veritabanı dosyasına kaydetmenizi saÄŸlar. + + + + Ctrl+S + + + + + Compact the database file, removing space wasted by deleted records + Veritabanı dosyasını geniÅŸletmek, silinen kayıtlardan dolayı meydana gelen boÅŸlukları temizler + + + + + Compact the database file, removing space wasted by deleted records. + Veritabanı dosyasını geniÅŸletmek, silinen kayıtlardan dolayı meydana gelen boÅŸlukları temizler. + + + + E&xit + &Çıkış + + + + Ctrl+Q + + + + + Import data from an .sql dump text file into a new or existing database. + Verileri .sql uzantılı döküm dosyasından varolan veya yeni veritabanına aktarın. + + + + This option lets you import data from an .sql dump text file into a new or existing database. SQL dump files can be created on most database engines, including MySQL and PostgreSQL. + Bu seçenek verileri .sql döküm dosyasından varolan veya yeni veritabanına aktarmanıza olanak saÄŸlar. SQL dosyaları MySQL ve PostgreSQL dahil olmak üzere birçok veritabanı motorları tarafından oluÅŸtururlar. + + + + Open a wizard that lets you import data from a comma separated text file into a database table. + Virgülle ayrılmış metin dosyalarını veritabanınızın içine aktarmanızı saÄŸlayan sihirbazı açar. + + + + Open a wizard that lets you import data from a comma separated text file into a database table. CSV files can be created on most database and spreadsheet applications. + Virgülle ayrılmış metin dosyalarını veritabanınızın içine aktarmanızı saÄŸlayan sihirbazı açar. CSV dosyaları çoÄŸu veritabanı motorları ve elektronik tablo uygulamaları tarafından oluÅŸtururlar. + + + + Export a database to a .sql dump text file. + Veritabanını .sql döküm dosyası olarak dışa aktar. + + + + This option lets you export a database to a .sql dump text file. SQL dump files contain all data necessary to recreate the database on most database engines, including MySQL and PostgreSQL. + Bu seçenek veritabanını .sql döküm dosyası olarak dışa aktarmanızı saÄŸlar. SQL döküm dosyaları veritabanını, MySQL ve PostgreSQL dahil birçok veritabanı motorunda yeniden oluÅŸturmak için gereken verilerin tümünü içerir. + + + + Export a database table as a comma separated text file. + Veritabanı tablosunu virgülle ayrılmış metin dosyası olarak dışa aktar. + + + + Export a database table as a comma separated text file, ready to be imported into other database or spreadsheet applications. + Veritabanını virgülle ayrılmış metin dosyası olarak diÄŸer veritabanı veya elektronik tablo uygulamalarına aktarmaya hazır olacak ÅŸekilde dışa aktarın. + + + + Open the Create Table wizard, where it is possible to define the name and fields for a new table in the database + Tablo OluÅŸturma sihirbazı, veritabanı için alanlarını ve ismini ayarlayabileceÄŸiniz, yeni bir tablo oluÅŸturmanızı saÄŸlar + + + + + Delete Table + Tabloyu Sil + + + + Open the Delete Table wizard, where you can select a database table to be dropped. + Tablo Silme sihirbazı, seçtiÄŸiniz tabloları silmenizi saÄŸlar. + + + + Open the Modify Table wizard, where it is possible to rename an existing table. It is also possible to add or delete fields form a table, as well as modify field names and types. + Tablo Düzenleme sihirbazı, varolan tablonuzu yeniden adlandırmanıza olanak saÄŸlar. Ayrıca yeni alan ekleyebilir, silebilir hatta alanların ismini ve tipini de düzenleyebilirsiniz. + + + + Open the Create Index wizard, where it is possible to define a new index on an existing database table. + İndeks OluÅŸturma sihirbazı, varolan veritabanı tablosuna yeni indeks tanımlamanıza olanak saÄŸlar. + + + + &Preferences... + &Tercihler... + + + + + Open the preferences window. + Tercihler penceresini açar. + + + + &DB Toolbar + &Veritabanı Araç ÇubuÄŸu + + + + Shows or hides the Database toolbar. + Veritabanı araç çubuÄŸunu gösterir veya gizler. + + + + Shift+F1 + + + + + &Recently opened + En son açılanla&r + + + + Open &tab + Se&kme Aç + + + + Ctrl+T + + + + + + Database Structure + This has to be equal to the tab title in all the main tabs + Veritabanı Yapısı + + + + This is the structure of the opened database. +You can drag SQL statements from an object row and drop them into other applications or into another instance of 'DB Browser for SQLite'. + + Bu, açılan veritabanının yapısıdır. +SQL ifadelerini bir nesne satırından sürükleyip baÅŸka uygulamalara veya 'DB Browser for SQLite programının baÅŸka bir penceresine bırakabilirsiniz. + + + + + + Browse Data + This has to be equal to the tab title in all the main tabs + Veriyi Görüntüle + + + + Un/comment block of SQL code + Kod bloÄŸunu yorum satırına dönüştür/yorum satırını iptal et + + + + Un/comment block + Yorum satırına dönüştür/yorum satırını iptal et + + + + Comment or uncomment current line or selected block of code + Geçerli satırı veya kod bloÄŸunu, yorum satırına dönüştür veya yorum satırını iptal et + + + + Comment or uncomment the selected lines or the current line, when there is no selection. All the block is toggled according to the first line. + Geçerli satırı veya kod bloÄŸunu, yorum satırına dönüştür veya yorum satırını iptal et. Hiç seçim yoksa tüm bloklar ilk satır baz alınarak deÄŸiÅŸtirilir. + + + + Ctrl+/ + + + + + Stop SQL execution + SQL yürütmesini durdur + + + + Stop execution + Yürütmeyi durdur + + + + Stop the currently running SQL script + Åžu anda çalışan SQL betiÄŸini durdur + + + + + Edit Pragmas + This has to be equal to the tab title in all the main tabs + Pragmaları Düzenle + + + + Warning: this pragma is not readable and this value has been inferred. Writing the pragma might overwrite a redefined LIKE provided by an SQLite extension. + Uyarı: Bu pragma okunamaz ve bu deÄŸer çıkartıldı. Bu pragmayı yazmak, bir SQLite eklentisi tarafından saÄŸlanan yeniden tanımlanmış bir LIKE'nin üzerine yazabilir. + + + + + Execute SQL + This has to be equal to the tab title in all the main tabs + SQL kodunu yürüt + + + + &Tools + Ara&çlar + + + + SQL &Log + SQL &Günlüğü + + + + Show S&QL submitted by + Åžuna ait S&QL'i göster + + + + Error Log + Hata Günlüğü + + + + This button clears the contents of the SQL logs + Bu buton SQL günlüğünün içeriÄŸini temizler + + + + This panel lets you examine a log of all SQL commands issued by the application or by yourself + Bu panel, uygulama veya kendiniz tarafından verilen tüm SQL komutlarının bir günlüğünü incelemenizi saÄŸlar + + + + &Plot + &Çizim + + + + This is the structure of the opened database. +You can drag multiple object names from the Name column and drop them into the SQL editor and you can adjust the properties of the dropped names using the context menu. This would help you in composing SQL statements. +You can drag SQL statements from the Schema column and drop them into the SQL editor or into other applications. + + Bu, açılan veritabanının yapısıdır. +Birden çok nesne adını Ad sütunundan sürükleyip SQL editörüne bırakabilir ve bırakılan adların özelliklerini baÄŸlam menüsünü kullanarak ayarlayabilirsiniz. Bu, SQL ifadeleri oluÅŸturmanıza yardımcı olacaktır. +SQL deyimlerini Åžema sütunundan sürükleyip SQL editörüne veya diÄŸer uygulamalara bırakabilirsiniz. + + + + + + Project Toolbar + Proje Araç ÇubuÄŸu + + + + Extra DB toolbar + Ekstra Veritabanı araç çubuÄŸu + + + + + + Close the current database file + Geçerli veritabano dosyasını kapat + + + + This button closes the connection to the currently open database file + Bu buton, ÅŸu anda açık olan veritabanı dosyasına ait baÄŸlantıyı kapatır + + + + Ctrl+F4 + + + + + &Revert Changes + DeÄŸiÅŸiklikleri &Geri Al + + + + &Write Changes + DeÄŸiÅŸiklikleri &Kaydet + + + + Compact &Database... + Veriabanını &Sıkıştır... + + + + Execute all/selected SQL + Tüm/seçin SQL sorgusunu yürüt + + + + This button executes the currently selected SQL statements. If no text is selected, all SQL statements are executed. + Bu buton seçili olan SQL ifadesini yürütür. Hiçbir metin seçilmezse, tüm SQL ifadeleri yürütülür. + + + + Open SQL file(s) + + + + + This button opens files containing SQL statements and loads them in new editor tabs + + + + + &Load Extension... + Ek&lenti Yükle... + + + + Execute line + Tek satır yürüt + + + + &Wiki + &Wiki + + + + F1 + + + + + Bug &Report... + Hata &Raporu... + + + + Feature Re&quest... + &Özellik Talebi... + + + + Web&site + Web &Sitesi + + + + &Donate on Patreon... + &Patreon üzerinden Bağış Yapın... + + + + Open &Project... + &Proje Aç... + + + + &Attach Database... + &Veritabanı Ekle... + + + + + Add another database file to the current database connection + Åžu anki veritabanı baÄŸÄŸlantısına baÅŸka bir veritabanı dosyası ekle + + + + This button lets you add another database file to the current database connection + Bu buton, geçerli veritabanı baÄŸlantısına baÅŸka bir veritabanı dosyası eklemenizi saÄŸlar + + + + &Set Encryption... + &Åžifreleme Belirtle... + + + + SQLCipher &FAQ + SQLCipher &SSS + + + + Table(&s) to JSON... + Tablodan &JSON dosyasına... + + + + Open Data&base Read Only... + Salt &Okunur Veritabanı Aç... + + + + Ctrl+Shift+O + + + + + Save results + Sonuçları kaydet + + + + Save the results view + Sonuç görünümünü kaydet + + + + This button lets you save the results of the last executed query + Bu buton son yürütülen sorgunun sonuçlarını kaydetmenizi saÄŸlar + + + + + Find text in SQL editor + SQL editörünte metin ara + + + + Find + Bul + + + + This button opens the search bar of the editor + Bu buton editörün arama çubuÄŸunu açar + + + + Ctrl+F + + + + + + Find or replace text in SQL editor + SQL editöründe metin bul veya deÄŸiÅŸtir + + + + Find or replace + Bul veya deÄŸiÅŸtir + + + + This button opens the find/replace dialog for the current editor tab + Bu buton, geçerli editör sekmesi için bul / deÄŸiÅŸtir iletiÅŸim kutusunu açar + + + + Ctrl+H + + + + + Export to &CSV + &CSV dosyası olarak dışa aktar + + + + Save as &view + &Görünüm olarak kaydet + + + + Save as view + Görünüm olarak kaydet + + + + Browse Table + Tabloyu Görüntüle + + + + Shows or hides the Project toolbar. + Proje araç çubuÄŸunu gösterir veya gizler. + + + + This button lets you save all the settings associated to the open DB to a DB Browser for SQLite project file + + + + + This button lets you open a DB Browser for SQLite project file + + + + + Extra DB Toolbar + Ekstra Veritabanı Araç ÇubuÄŸu + + + + New In-&Memory Database + &Yeni Bellek İçi Veritabanı + + + + Drag && Drop Qualified Names + Nitelikli İsimleri Sürükle && Bırak + + + + + Use qualified names (e.g. "Table"."Field") when dragging the objects and dropping them into the editor + Nesneleri sürükleyip düzenleyiciye bırakırken özel isimleri kullanın (örn. "Tablo". "Alan") + + + + Drag && Drop Enquoted Names + İsimleri Sürükle && Bırak + + + + + Use escaped identifiers (e.g. "Table1") when dragging the objects and dropping them into the editor + Nesneleri sürükleyip editöre bırakırken çıkış karakter belirleyicilerini kullanın(ör. "Tablo1") kullanın + + + + &Integrity Check + &Bütünlük Denetimi + + + + Runs the integrity_check pragma over the opened database and returns the results in the Execute SQL tab. This pragma does an integrity check of the entire database. + integrity_check pragmasını açılan veritabanı üzerinde çalıştırır ve 'SQL Kodunu Yürüt' sekmesinde sonuçları döndürür. Bu pragma veritabanının tamamının bütünlüğünü kontrol eder. + + + + &Foreign-Key Check + &Yabancı anahtar kontrolü + + + + Runs the foreign_key_check pragma over the opened database and returns the results in the Execute SQL tab + Foreign_key_check pragmasını açık veritabanı üzerinde çalıştırır ve 'SQL Kodunu Yürüt' sekmesinde sonuçları döndürür + + + + &Quick Integrity Check + &Hızlı Bütünlük Testi + + + + Run a quick integrity check over the open DB + Açık veritabanı üzerinde hızlı bir bütünlük denetimi yapın + + + + Runs the quick_check pragma over the opened database and returns the results in the Execute SQL tab. This command does most of the checking of PRAGMA integrity_check but runs much faster. + quick_check pragmasını açık veritabanı üzerinde çalıştırır ve 'SQL Kodunu Yürüt' sekmesinde sonuçları döndürür. Bu komut PRAGMA integrity_check denetiminin çoÄŸunu yapar, ancak çok daha hızlı çalışır. + + + + &Optimize + &Optimize + + + + Attempt to optimize the database + Veritabanını optimize etmeyi dene + + + + Runs the optimize pragma over the opened database. This pragma might perform optimizations that will improve the performance of future queries. + Açılan veritabanı üzerinden optimizasyon pragmasını çalıştırır. Bu uygulama gelecekteki sorguların performansını artırmaya yardımcı olabilir. + + + + + Print + Yazdır + + + + Print text from current SQL editor tab + Geçerli SQL düzenleyici sekmesinden metni yazdırın + + + + Open a dialog for printing the text in the current SQL editor tab + Geçerli SQL düzenleyici sekmesindeki metni yazdırmak için bir iletiÅŸim kutusu açın + + + + Print the structure of the opened database + Åžu anda açık olan veritabanı yapısını yazdırın + + + + Open a dialog for printing the structure of the opened database + Açılan veritabanının yapısını yazdırmak için bir bir iletiÅŸim kutusu açın + + + + &Save Project As... + Projeyi &Farklı Kaydet... + + + + + + Save the project in a file selected in a dialog + Projeyi iletiÅŸim kutusunda seçilen bir dosyaya kaydedin + + + + Save A&ll + Tümünü &Kaydet + + + + + + Save DB file, project file and opened SQL files + Veritabanı dosyasını, proje dosyasını ve açılan SQL dosyalarını kaydedin + + + + Ctrl+Shift+S + + + + + &Database from SQL file... + SQL &dosyasından veritabanı... + + + + &Table from CSV file... + CSV dosyasından &tablo... + + + + &Database to SQL file... + Veritabanından SQL &dosyası... + + + + &Table(s) as CSV file... + &Tablodan CSV dosyası olarak... + + + + &Create Table... + &Tablo OluÅŸtur... + + + + &Delete Table... + &Tabloyu Sil... + + + + &Modify Table... + Tabloyu &Düzenle... + + + + Create &Index... + &Index OluÅŸtur... + + + + W&hat's This? + Bu &nedir? + + + + &About + &İptal + + + + This button opens a new tab for the SQL editor + Bu buton SQL editörü için yeni bir sekme açar + + + + &Execute SQL + &SQL kodunu yürüt + + + + + + Save SQL file + SQL dosyasını kaydet + + + + Ctrl+E + + + + + Export as CSV file + CSV dosyası olarak dışa aktar + + + + Export table as comma separated values file + Tabloyu virgülle ayrılmış girdiler dosyası olarak dışa aktar + + + + + Save the current session to a file + Geçerli oturumu dosyaya kaydet + + + + + Load a working session from a file + Dosyadan çalışma oturumunu yükle + + + + + Save SQL file as + SQL dosyasını bu ÅŸekilde kaydet + + + + This button saves the content of the current SQL editor tab to a file + Bu buton geçerli SQL editörü sekmesinin içeriÄŸini bir dosyaya kaydeder + + + + &Browse Table + &Tabloyu Görüntüle + + + + Copy Create statement + 'Create' ifadesini kopyala + + + + Copy the CREATE statement of the item to the clipboard + Objenin 'Create' ifadesini panoya kopyala + + + + Ctrl+Return + + + + + Ctrl+L + + + + + + Ctrl+P + + + + + Ctrl+D + + + + + Ctrl+I + + + + + Encrypted + ÅžifrelenmiÅŸ + + + + Read only + Salt okunur + + + + Database file is read only. Editing the database is disabled. + Veritabanı salt okunur. Veritabanı düzenleme devre dışı. + + + + Database encoding + Veritabanı kodlaması + + + + Database is encrypted using SQLCipher + Veritabanı SQLCipher kullanılırak ÅŸifrelendi + + + + + Choose a database file + Veritabanı dosyasını seçiniz + + + + + + Choose a filename to save under + Kaydetmek için dosya ismi seçiniz + + + + Error while saving the database file. This means that not all changes to the database were saved. You need to resolve the following error first. + +%1 + Veritabanı dosyası kaydedilirken hata oluÅŸtu. Bu, veritabanındaki tüm deÄŸiÅŸikliklerin kaydedilmediÄŸi anlamına gelir. Önce aÅŸağıdaki hatayı çözmeniz gerekir. + +%1 + + + + Are you sure you want to undo all changes made to the database file '%1' since the last save? + Son kayıttan itibaren '%1' dosyasına yaptığınız deÄŸiÅŸiklikleri geri almak istediÄŸinize emin misiniz? + + + + Choose a file to import + İçe aktarmak için dosya seçiniz + + + + &%1 %2%3 + &%1 %2%3 + + + + (read only) + (salt okunur) + + + + Open Database or Project + Veritabanı veya Proje Açın + + + + Attach Database... + Veritabanı Ekle... + + + + Import CSV file(s)... + CSV dosyalarını içe aktarın... + + + + Select the action to apply to the dropped file(s). <br/>Note: only 'Import' will process more than one file. + + Bırakılan dosyalara uygulanacak eylemi seçin. <br/>Not: yalnızca 'İçe Aktar' birden fazla dosyayı iÅŸleyecektir. + + + + + Do you want to save the changes made to SQL tabs in the project file '%1'? + SQL sekmelerinde yapılan deÄŸiÅŸiklikleri '%1' proje dosyasına kaydetmek istiyor musunuz? + + + + Text files(*.sql *.txt);;All files(*) + Metin dosyaları(*.sql *.txt);;Tüm dosyalar(*) + + + + Do you want to create a new database file to hold the imported data? +If you answer no we will attempt to import the data in the SQL file to the current database. + İçeri aktarılan verileri tutmak için yeni bir veritabanı dosyası oluÅŸturmak istiyor musunuz? +EÄŸer cevabınız hayır ise biz SQL dosyasındaki verileri geçerli veritabanına aktarmaya baÅŸlayacağız. + + + + You are still executing SQL statements. Closing the database now will stop their execution, possibly leaving the database in an inconsistent state. Are you sure you want to close the database? + Åžu anda SQL sorgularını yürütüyorsunuz. Veritabanının ÅŸimdi kapatılması, muhtemelen veritabanını tutarsız bir durumda bırakarak yürütmeyi durduracaktır. Veritabanını kapatmak istediÄŸinizden emin misiniz? + + + + Do you want to save the changes made to the project file '%1'? + '%1' proje dosyasında yapılan deÄŸiÅŸiklikleri kaydetmek istiyor musunuz? + + + + File %1 already exists. Please choose a different name. + %1 dosyası zaten mevcut. Lütfen farklı bir isim seçiniz. + + + + Error importing data: %1 + Dosya içeri aktarılırken hata oluÅŸtu: %1 + + + + Import completed. + İçeri aktarma tamamlandı. + + + + Delete View + Görünümü Sil + + + + Modify View + Görünümü Düzenle + + + + Delete Trigger + Tetikleyiciyi Sil + + + + Modify Trigger + Tetikleyiciyi Düzenle + + + + Delete Index + İndeksi Sil + + + + Modify Index + Index'i Düzenle + + + + Modify Table + Tabloyu Düzenle + + + + Do you want to save the changes made to SQL tabs in a new project file? + SQL sekmelerinde yapılan deÄŸiÅŸiklikleri yeni bir proje dosyasına kaydetmek istiyor musunuz? + + + + Do you want to save the changes made to the SQL file %1? + %1 SQL dosyasında yapılan deÄŸiÅŸiklikleri kaydetmek istiyor musunuz? + + + + The statements in this tab are still executing. Closing the tab will stop the execution. This might leave the database in an inconsistent state. Are you sure you want to close the tab? + Bu sekmedeki sorgular hala yürütülüyor. Sekmenin kapatılması yürütmeyi durdurur. Bu durum, veritabanını tutarsız bir durumda bırakabilir. Sekmeyi kapatmak istediÄŸinizden emin misiniz? + + + + Could not find resource file: %1 + Kaynak dosya bulunamadı: %1 + + + + Choose a project file to open + Açmak için bir proje dosyası seçin + + + + This project file is using an old file format because it was created using DB Browser for SQLite version 3.10 or lower. Loading this file format is still fully supported but we advice you to convert all your project files to the new file format because support for older formats might be dropped at some point in the future. You can convert your files by simply opening and re-saving them. + Bu proje dosyası eski bir formatta, çünkü DB Browser for SQLite 3.10 veya daha düşük bir sürüm ile oluÅŸturulmuÅŸ. Bu dosya biçiminin yüklenmesi hala tam olarak desteklenmektedir, ancak gelecekte daha eski biçimlere yönelik destek azalabileceÄŸinden, tüm proje dosyalarınızı yeni dosya biçimine dönüştürmenizi öneririz. Dosyalarınızı açıp yeniden kaydederek dönüştürebilirsiniz. + + + + Could not open project file for writing. +Reason: %1 + Proje dosyası yazmaya açılamadı. +Nedeni: %1 + + + + Busy (%1) + MeÅŸgul (%1) + + + + Setting PRAGMA values will commit your current transaction. +Are you sure? + PRAGMA deÄŸerlerini ayarlamak geçerli iÅŸleminizi yürütmeye alacaktır. +Bunu yapmak istediÄŸinize emin misiniz? + + + + Window Layout + + + + + Reset Window Layout + Pencere Düzenini Sıfırla + + + + Alt+0 + + + + + Simplify Window Layout + + + + + Shift+Alt+0 + + + + + Dock Windows at Bottom + + + + + Dock Windows at Left Side + + + + + Dock Windows at Top + + + + + The database is currenctly busy. + VerÅŸtabanı ÅŸu anda meÅŸgul. + + + + Click here to interrupt the currently running query. + Çalışmakta olan sorguyu kesmek için burayı tıklayın. + + + + Could not open database file. +Reason: %1 + Veritabanı dosyası açılamadı. +Nedeni: %1 + + + + In-Memory database + Bellek İçi Veritabanı + + + + Are you sure you want to delete the table '%1'? +All data associated with the table will be lost. + '%1' tablosunu silmek istediÄŸinizden emin misiniz? +Tabloyla iliÅŸkili tüm veriler kaybedilecektir. + + + + Are you sure you want to delete the view '%1'? + '%1' görünümünü silmek istediÄŸinizden emin misiniz? + + + + Are you sure you want to delete the trigger '%1'? + '%1' tetikleyicisini silmek istediÄŸinizden emin misiniz? + + + + Are you sure you want to delete the index '%1'? + '%1' indexsini silmek istediÄŸinizden emin misiniz? + + + + Error: could not delete the table. + Hata: tablo silinemedi. + + + + Error: could not delete the view. + Hata: görünüm silinemedi. + + + + Error: could not delete the trigger. + Hata: tetikleyici silinemedi. + + + + Error: could not delete the index. + Hata: index silinemedi. + + + + Message from database engine: +%1 + Veritabanı motorundan mesaj: +%1 + + + + Editing the table requires to save all pending changes now. +Are you sure you want to save the database? + Tabloyu düzenlemek için bekleyen tüm deÄŸiÅŸikliklerin ÅŸimdi kaydedilmesi gerekir. +Veritabanını kaydetmek istediÄŸinizden emin misiniz? + + + + Edit View %1 + + + + + Edit Trigger %1 + + + + + You are already executing SQL statements. Do you want to stop them in order to execute the current statements instead? Note that this might leave the database in an inconsistent state. + Åžu anda zaten yürütülen SQL sorguları var. Bunun yerine, ÅŸimdiki sorguları çalıştırmak için ÅŸu anda yürütülen sorguyu durdurmak istiyor musunuz? Bunun veritabanını tutarsız bir durumda bırakabileceÄŸini unutmayın. + + + + -- EXECUTING SELECTION IN '%1' +-- + -- SEÇİM '%1' İÇERİSİNDE YÜRÜTÜLÜYOR +-- + + + + -- EXECUTING LINE IN '%1' +-- + -- SATIR '%1' İÇERİSİNDE YÜRÜTÜLÜYOR +-- + + + + -- EXECUTING ALL IN '%1' +-- + -- TÜMÜ '%1' İÇERİSİNDE YÜRÜTÜLÜYOR +-- + + + + + At line %1: + %1. satırda: + + + + Result: %1 + Sonuç: %1 + + + + Result: %2 + Sonuç: %2 + + + + Setting PRAGMA values or vacuuming will commit your current transaction. +Are you sure? + PRAGMA deÄŸerlerini ayarlamak veya vakumlamak mevcut iÅŸleminizi kaydeder. +Emin misiniz? + + + + Opened '%1' in read-only mode from recent file list + + + + + Opened '%1' from recent file list + + + + + This action will open a new SQL tab with the following statements for you to edit and run: + + + + + Rename Tab + Sekmeyi Yeniden Adlandır + + + + Duplicate Tab + Sekmeyi Klonla + + + + Close Tab + Sekmeyi Kapat + + + + Opening '%1'... + '%1' açılıyor... + + + + There was an error opening '%1'... + '%1' açılırken hata oluÅŸtu... + + + + Value is not a valid URL or filename: %1 + Geçersiz bir URL veya dosya adı: %1 + + + + %1 rows returned in %2ms + %2ms içerisinde %1 tane satır döndürüldü + + + + Choose text files + Metin dosyaları seçin + + + + Import completed. Some foreign key constraints are violated. Please fix them before saving. + İçe aktarma tamamlandı. Bazı yabancı anahtar kısıtları ihlal edildi. Lütfen kaydetmeden önce bunları çözün. + + + + Select SQL file to open + Açmak için SQL dosyasını seçiniz + + + + Select file name + Dosya ismi seçiniz + + + + Select extension file + Eklenti dosyasını seçiniz + + + + Extension successfully loaded. + Eklenti baÅŸarıyla yüklendi. + + + + Error loading extension: %1 + Eklenti yüklenirken hata oluÅŸtu: %1 + + + + + Don't show again + Bir daha gös'terme + + + + New version available. + Yeni sürüm mevcut. + + + + A new DB Browser for SQLite version is available (%1.%2.%3).<br/><br/>Please download at <a href='%4'>%4</a>. + Yeni bir SQLite DB Browser sürümü mevcut (%1.%2.%3).<br/><br/>Lütfen buradan indiriniz: <a href='%4'>%4</a>. + + + + Project saved to file '%1' + Proje '%1' dosyasına kaydedildi + + + + Collation needed! Proceed? + Harmanlama gerekli! Devam edilsin mi? + + + + A table in this database requires a special collation function '%1' that this application can't provide without further knowledge. +If you choose to proceed, be aware bad things can happen to your database. +Create a backup! + Bu veritabanınındaki bir tablo özel '%1' koleksiyon fonksiyonu gerektirmektedir. +Daha fazla bilgi olmadan program bunu saÄŸlayamaz. EÄŸer bu ÅŸekilde devam edecekseniz, veritabanınıza kötü ÅŸeyler olabileceÄŸinin farkında olun ve yedek oluÅŸturun. +Bir yedek oluÅŸturun! + + + + creating collation + harmanlama oluÅŸturuluyor + + + + Set a new name for the SQL tab. Use the '&&' character to allow using the following character as a keyboard shortcut. + SQL sekmesi için yeni bir ad belirleyin. AÅŸağıdaki karakteri klavye kısayolu olarak kullanmak için '&&' karakterini kullanın. + + + + Please specify the view name + Lütfen görünüm ismini belirtin + + + + There is already an object with that name. Please choose a different name. + Bu isme sahip obje zaten mevcut. Lütfen farklı bir isim seçiniz. + + + + View successfully created. + Görünüm baÅŸarıyla oluÅŸturuldu. + + + + Error creating view: %1 + Görünüm oluÅŸturma hatası: %1 + + + + This action will open a new SQL tab for running: + Bu iÅŸlem çalıştırmak için yeni bir SQL sekmesi açar: + + + + Press Help for opening the corresponding SQLite reference page. + İlgili SQLite referans sayfasını açmak için Yardım'a basın. + + + + DB Browser for SQLite project file (*.sqbpro) + SQLite DB Browser proje dosyası (*.sqbpro) + + + + Error checking foreign keys after table modification. The changes will be reverted. + Tablo deÄŸiÅŸikliÄŸinden sonra yabancı anahtarlar kontrol edilirken hata oluÅŸtu. DeÄŸiÅŸiklikler geri alınacak. + + + + This table did not pass a foreign-key check.<br/>You should run 'Tools | Foreign-Key Check' and fix the reported issues. + Bu tablo birincil anahtar kontrolünden geçmedi.<br/>'Araçlar | Birinci Anahat Kontrolü' komutunu çalıştırın ve raporlanan sorunları düzeltin. + + + + Execution finished with errors. + Yürütme hatalarla tamamlandı. + + + + Execution finished without errors. + Yürütme hatasız tamamlandı. + + + + NullLineEdit + + + Set to NULL + NULL olarak ayarlar + + + + Alt+Del + + + + + PlotDock + + + Plot + Grafik Çizimi + + + + <html><head/><body><p>This pane shows the list of columns of the currently browsed table or the just executed query. You can select the columns that you want to be used as X or Y axis for the plot pane below. The table shows detected axis type that will affect the resulting plot. For the Y axis you can only select numeric columns, but for the X axis you will be able to select:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Date/Time</span>: strings with format &quot;yyyy-MM-dd hh:mm:ss&quot; or &quot;yyyy-MM-ddThh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Date</span>: strings with format &quot;yyyy-MM-dd&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Time</span>: strings with format &quot;hh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Label</span>: other string formats. Selecting this column as X axis will produce a Bars plot with the column values as labels for the bars</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Numeric</span>: integer or real values</li></ul><p>Double-clicking the Y cells you can change the used color for that graph.</p></body></html> + <html> <head /> <body> <p> Bu bölme, o anda taranan tablonun sütunları listesini veya yürütülen sorguyu gösterir. AÅŸağıdaki çizim bölmesi için X veya Y ekseni olarak kullanılmasını istediÄŸiniz sütunları seçebilirsiniz. Tablo, ortaya çıkan grafiÄŸi etkileyecek algılanan eksen tipini gösterir. Y ekseni için yalnızca sayısal sütunlar seçebilirsiniz, ancak X ekseni için aÅŸağıdakileri seçebilirsiniz: </p> <ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;" > <li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;" > <span style=" font-weight:600;">Tarih/Saat</span>: &quot;yyyy-MM-dd hh:mm:ss&quot; veya &quot;yyyy-MM-ddThh:mm:ss&quot; ve string formatında </li> <li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;" > <span style=" font-weight:600;">Tarih</span>: &quot;yyyy-MM-dd&quot; ve string formatında </li> <li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;" > <span style=" font-weight:600;">Saat</span>: &quot;hh:mm:ss&quot; ve string formatında </li> <li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;" > <span style=" font-weight:600;">BaÅŸlık</span>: diÄŸer string formatları. Bu sütunun X ekseni için seçilmesi, sütun deÄŸerlerinin çubukları için etiket oluÅŸturur. </li> <li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;" > <span style=" font-weight:600;">Nümerik</span>: integer veya real tipindeki deÄŸerler </li> </ul> <p> Y hücrelerini çift tıklatarak o grafik için kullanılan rengi deÄŸiÅŸtirebilirsiniz. </p> </body> </html> + + + + Columns + Sütun + + + + X + X + + + + Y1 + + + + + Y2 + + + + + Axis Type + Eksen Tipi + + + + Here is a plot drawn when you select the x and y values above. + +Click on points to select them in the plot and in the table. Ctrl+Click for selecting a range of points. + +Use mouse-wheel for zooming and mouse drag for changing the axis range. + +Select the axes or axes labels to drag and zoom only in that orientation. + Yukarıdaki x ve y deÄŸerlerini seçtiÄŸinizde çizilen bir grafik. + +Noktaları grafikte ve tabloda seçmek için üzerine tıklayın. Nokta aralığı seçmek için Ctrl+Tıklama yapın. + +YakınlaÅŸtırma için fare tekerleÄŸini ve eksen aralığını deÄŸiÅŸtirmek için fare tekerini kullanın. + +Yalnızca geçerli yönde sürüklemek ve yakınlaÅŸtırmak için eksen veya eksen etiketlerini seçin. + + + + Line type: + Çizgi Tipi: + + + + + None + Hiçbiri + + + + Line + Çizgi + + + + StepLeft + Sola Basamakla + + + + StepRight + SaÄŸa Basamakla + + + + StepCenter + Merkeze Basamakla + + + + Impulse + Kaydırmalı + + + + Point shape: + Nokta ÅŸekli: + + + + Cross + Çarpı + + + + Plus + Artı + + + + Circle + Daire + + + + Disc + Disk + + + + Square + Kare + + + + Diamond + Elmas + + + + Star + Yıldız + + + + Triangle + Üçgen + + + + TriangleInverted + Ters Üçgen + + + + CrossSquare + Çapraz Kare + + + + PlusSquare + Kare İçinde Artı + + + + CrossCircle + Daire İçinde Çarpı + + + + PlusCircle + Daire İçinde Artı + + + + Peace + Barış Simgesi + + + + <html><head/><body><p>Save current plot...</p><p>File format chosen by extension (png, jpg, pdf, bmp)</p></body></html> + <html><head/><body><p>Geçerli çizimi kaydet...</p><p>Uzantıya göre seçilen dosya formatları (png, jpg, pdf, bmp)</p></body></html> + + + + Save current plot... + Geçerli çizimi kaydet... + + + + + Load all data and redraw plot + Tüm verileri yükle ve grafiÄŸi yeniden çiz + + + + + + Row # + Satır # + + + + Copy + Kopyala + + + + Print... + Yazdır... + + + + Show legend + Göstergeyi göster + + + + Stacked bars + Yığılmış çubuklar + + + + Date/Time + Tarih/Saat + + + + Date + Tarih + + + + Time + Saat + + + + + Numeric + Nümerik + + + + Label + Etiket + + + + Invalid + Geçersiz + + + + Load all data and redraw plot. +Warning: not all data has been fetched from the table yet due to the partial fetch mechanism. + Tüm verileri yükle ve grafiÄŸi yeniden çiz. +Uyarı: Kısmi yükleme mekanizması nedeniyle tüm veriler tablodan henüz alınmadı. + + + + Choose an axis color + Bir eksen rengi seçin + + + + Choose a filename to save under + Altına kaydetmek için dosya ismi seçiniz + + + + PNG(*.png);;JPG(*.jpg);;PDF(*.pdf);;BMP(*.bmp);;All Files(*) + PNG(*.png);;JPG(*.jpg);;PDF(*.pdf);;BMP(*.bmp);;Tüm dosyalar(*) + + + + There are curves in this plot and the selected line style can only be applied to graphs sorted by X. Either sort the table or query by X to remove curves or select one of the styles supported by curves: None or Line. + Bu grafikte eÄŸriler var ve seçilen çizgi stili yalnızca X'e göre sıralanmış grafiklere uygulanabilir. EÄŸrileri kaldırmak için tabloyu veya sorguyu X'e göre sıralayın veya eÄŸriler tarafından desteklenen stillerden birini seçin: 'Hiçbiri' veya 'Çizgi'. + + + + Loading all remaining data for this table took %1ms. + Bu tablo için kalan tüm verilerin yüklenmesi %1ms sürdü. + + + + PreferencesDialog + + + Preferences + Tercihler + + + + &General + &Genel + + + + Remember last location + Son dizini hatırla + + + + Always use this location + Her zaman bu dizini kullan + + + + Remember last location for session only + Aynı oturum için son dizini hatırla + + + + + + ... + ... + + + + Default &location + Varsayılan &dizin + + + + Lan&guage + Di&l + + + + Automatic &updates + Otomatik &güncellemeler + + + + + + + + + + + + enabled + etkin + + + + Show remote options + Uzak bilgisayar opsiyonlarını göster + + + + &Database + &Veritabanı + + + + Database &encoding + &Veritabanı kodlaması + + + + Open databases with foreign keys enabled. + Veritabanlarını Yabancı Anahtarlar etkin olacak ÅŸekilde aç. + + + + &Foreign keys + &Yabancı Anahtarlar + + + + Data &Browser + Veri &Görüntüleyici + + + + Remove line breaks in schema &view + Åžema &görünümde satır sonlarını kaldır + + + + Prefetch block si&ze + Önceden getirme blo&k boyutu + + + + SQ&L to execute after opening database + Veritabanı açıldıktan sonra yürütülecek SQ&L + + + + Default field type + Varsayılan dosya tipi + + + + Font + Yazı + + + + &Font + &Yazı + + + + Content + İçerik + + + + Symbol limit in cell + Hücredeki sembol limiti + + + + Threshold for completion and calculation on selection + Seçimdeki tamamlama ve hesaplama eÅŸiÄŸi + + + + Show images in cell + Resimleri hücrede göster + + + + Enable this option to show a preview of BLOBs containing image data in the cells. This can affect the performance of the data browser, however. + Hücrelerde görüntü verileri içeren BLOB tipindeki verilerin önizlemesini göstermek için bu seçeneÄŸi etkinleÅŸtirin. Ancak bu, veri görüntüleyicisinin performansını etkileyebilir. + + + + NULL + NULL + + + + Regular + Kurallı + + + + Binary + İkili veri + + + + Background + Arka plan + + + + Filters + Filtreler + + + + Toolbar style + Araç çubuÄŸu stili + + + + + + + + Only display the icon + Sadece ikonu göster + + + + + + + + Only display the text + Sadece metni göster + + + + + + + + The text appears beside the icon + Metin simgenin yanında görünsün + + + + + + + + The text appears under the icon + Metin simgenin altında görünsün + + + + + + + + Follow the style + Stili baz al + + + + DB file extensions + Veritabanı dosya uzantıları + + + + Manage + Yönet + + + + Main Window + Ana Pencere + + + + Database Structure + Veritabanı Yapısı + + + + Browse Data + Verileri Görüntüle + + + + Execute SQL + SQL kodunu yürütme + + + + Edit Database Cell + Veritabanı Hücresini Düzenleme + + + + When this value is changed, all the other color preferences are also set to matching colors. + Bu deÄŸer deÄŸiÅŸtirildiÄŸinde, diÄŸer tüm renk tercihleri de eÅŸleÅŸen renklere ayarlanır. + + + + Follow the desktop style + Masaüstü stilini baz al + + + + Dark style + Koyu Tema + + + + Application style + Uygulama stili + + + + This sets the font size for all UI elements which do not have their own font size option. + + + + + Font size + + + + + When enabled, the line breaks in the Schema column of the DB Structure tab, dock and printed output are removed. + EtkinleÅŸtirildiÄŸinde, Veritabanı Yapısı sekmesinin Åžema sütununda satır sonu karakterleri ve yazdırılan çıktılar kaldırılır. + + + + Database structure font size + + + + + Font si&ze + Yazı B&oyutu + + + + This is the maximum number of items allowed for some computationally expensive functionalities to be enabled: +Maximum number of rows in a table for enabling the value completion based on current values in the column. +Maximum number of indexes in a selection for calculating sum and average. +Can be set to 0 for disabling the functionalities. + Bu, bazı hesaplama açısından pahalı iÅŸlevlerin etkinleÅŸtirilmesine izin verilen maksimum öğe sayısıdır: +Sütundaki geçerli deÄŸerlere dayalı olarak deÄŸer tamamlamayı etkinleÅŸtirmek için bir tablodaki maksimum satır sayısı. +Toplam ve ortalamayı hesaplamak için bir seçimdeki maksimum index sayısı. +İşlevleri devre dışı bırakmak için 0 olarak ayarlanabilir. + + + + This is the maximum number of rows in a table for enabling the value completion based on current values in the column. +Can be set to 0 for disabling completion. + Bu, sütundaki geçerli deÄŸerlere dayalı olarak deÄŸer tamamlamayı etkinleÅŸtirmek için bir tablodaki maksimum satır sayısıdır. +Tamamlamayı devre dışı bırakmak için 0 olarak ayarlanabilir. + + + + Close button on tabs + + + + + If enabled, SQL editor tabs will have a close button. In any case, you can use the contextual menu or the keyboard shortcut to close them. + + + + + Proxy + Proxy + + + + Configure + Yapılandır + + + + Field display + Alan görünümü + + + + Displayed &text + Görün&tülenen metin + + + + + + + + + Click to set this color + Bu rengi ayarlamak için tıklayın + + + + Text color + Metin rengi + + + + Background color + Arka plan rengi + + + + Preview only (N/A) + Sadece önizleme (N/A) + + + + Escape character + Kaçış karakteri + + + + Delay time (&ms) + Gecikme süresi (&ms) + + + + Set the waiting time before a new filter value is applied. Can be set to 0 for disabling waiting. + Yeni bir filtre deÄŸeri uygulanmadan önce bekleme süresini ayarlayın. Beklemeyi devre dışı bırakmak için 0 olarak ayarlanabilir. + + + + &SQL + &SQL + + + + Settings name + Ayarlar ismi + + + + Context + Özellik + + + + Colour + Renk + + + + Bold + Kalın + + + + Italic + İtalik + + + + Underline + Altı çizili + + + + Keyword + Anahtar Kelime + + + + Function + Fonksiyon + + + + Table + Tablo + + + + Comment + Yorum + + + + Identifier + Kimlik + + + + String + String + + + + Current line + Geçerli satır + + + + SQL &editor font size + SQL &Editör yazı boyutu + + + + Tab size + TAB karakter boyutu + + + + &Wrap lines + &Satırları kaydır + + + + Never + Asla + + + + At word boundaries + Kelime dahilinde + + + + At character boundaries + Karakter dahilinde + + + + At whitespace boundaries + Beyaz boÅŸluk dahilinde + + + + &Quotes for identifiers + Tanımlıyıcılar için &tırnaklar + + + + Choose the quoting mechanism used by the application for identifiers in SQL code. + Uygulama tarafından SQL kodundaki tanımlayıcılar için kullanılan tırnak stilini seçin. + + + + "Double quotes" - Standard SQL (recommended) + "Çift tırnak" - Standart SQL (önerilir) + + + + `Grave accents` - Traditional MySQL quotes + `Ters tırnaklar` - Geleneksel MySQL tırnakları + + + + [Square brackets] - Traditional MS SQL Server quotes + [Köşeli parantezler] - Geleneksel MS SQL Server + + + + Keywords in &UPPER CASE + Anahtar kelimeler B&ÜYÜK HARFLİ + + + + When set, the SQL keywords are completed in UPPER CASE letters. + Ayarlandığında, SQL anahtar kelimeleri BÜYÜK HARFLERLE tamamlanır. + + + + When set, the SQL code lines that caused errors during the last execution are highlighted and the results frame indicates the error in the background + Ayarlandığında, son yürütme sırasında hatalara neden olan SQL kod satırları vurgulanır ve sonuç çerçevesi arka plandaki hatayı gösterir + + + + <html><head/><body><p>SQLite provides an SQL function for loading extensions from a shared library file. Activate this if you want to use the <span style=" font-style:italic;">load_extension()</span> function from SQL code.</p><p>For security reasons, extension loading is turned off by default and must be enabled through this setting. You can always load extensions through the GUI, even though this option is disabled.</p></body></html> + <html> <head /> <body> <p> SQLite, paylaşılmış kütüphane dosyasından eklenti yüklemeye yarayan bir fonksiyon sunar. <span style=" font-style:italic;">load_extension()</span> fonksiyonunu SQL kodu içerisinde kullanmak istiyorsanız fonksiyonu aktive edin. </p> <p> Güvenlik nedeniyle, uzantı yüklemesi varsayılan olarak kapalıdır ve bu ayar ile etkinleÅŸtirilmelidir. Bu seçenek devre dışı bırakılmış olsa bile, uzantıları her zaman GUI üzerinden yükleyebilirsiniz. </p> </body> </html> + + + + Allow loading extensions from SQL code + SQL kodundan eklenti yüklemeye izin ver + + + + Remote + Uzak Bilgisayar + + + + CA certificates + CA sertifikaları + + + + + Subject CN + CN Konusu + + + + Common Name + Yaygın İsim + + + + Subject O + Konu O + + + + Organization + Organizasyon + + + + + Valid from + Åžundan tarihten itibaren geçerli + + + + + Valid to + Åžu tarihe kadar geçerli + + + + + Serial number + Seri numarası + + + + Your certificates + Sertifikalarınız + + + + File + Dosya + + + + Subject Common Name + Ortak Konu Adı + + + + Issuer CN + CN SaÄŸlayıcısı + + + + Issuer Common Name + Ortak SaÄŸlayıcı Adı + + + + Clone databases into + Veritabanını ÅŸuraya kopyala + + + + SQL editor &font + SQL Editör &yazı boyutu + + + + Error indicators + Hata belirteçleri + + + + Hori&zontal tiling + Ya&tay Döşeme + + + + If enabled the SQL code editor and the result table view are shown side by side instead of one over the other. + EtkinleÅŸtirilirse, SQL kod düzenleyicisi ve sonuç tablosu görünümü üst üste yerine yan yana gösterilir. + + + + Code co&mpletion + Kod ta&mamlama + + + + Foreground + Ön plan + + + + SQL &results font size + S&QL sonuçları yazı tipi boyutu + + + + &Extensions + &Eklentiler + + + + Select extensions to load for every database: + Her veritabanında kullanmak için eklenti seçiniz: + + + + Add extension + Eklenti Ekle + + + + Remove extension + Eklenti Sil + + + + <html><head/><body><p>While supporting the REGEXP operator SQLite doesn't implement any regular expression<br/>algorithm but calls back the running application. DB Browser for SQLite implements this<br/>algorithm for you to let you use REGEXP out of the box. However, as there are multiple possible<br/>implementations of this and you might want to use another one, you're free to disable the<br/>application's implementation and load your own by using an extension. Requires restart of the application.</p></body></html> + <html><head/><body><p>Kurallı ifade(REGEXP) operatörü aktif edildiÄŸinde SQLite, herhangi bir kurallı ifade uygulamaz ama ÅŸuan da çalışan uygulamayı geri çağırır. <br/>SQLite DB Browser kurallı ifadeyi kutunun dışında kullanmanıza izin vermek için bu algoritmayı uygular. <br/>Birden çok muhtemel uygulama olduÄŸu gibi sizde farklı birini kullanabilirsiniz.<br/>Programın uygulamalarını devre dışı bırakmakta ve kendi eklentinizle kendi uygulamanızı yüklemekte özgürsünüz.<br/>Ayrıca uygulamayı yeniden baÅŸlatmak gerekir.</p></body></html> + + + + Disable Regular Expression extension + Kurallı İfade eklentisini devre dışı bırak + + + + + Choose a directory + Dizin seçiniz + + + + The language will change after you restart the application. + Seçilen dil uygulama yeniden baÅŸlatıldıktan sonra uygulanacaktır. + + + + Select extension file + Eklenti dosyası seçiniz + + + + Extensions(*.so *.dylib *.dll);;All files(*) + Eklentiler(*.so *.dylib *.dll);;Tüm dosyalar(*) + + + + Import certificate file + Sertifika dosyası içe aktar + + + + No certificates found in this file. + Bu dosyada sertifika bulunamadı. + + + + Are you sure you want do remove this certificate? All certificate data will be deleted from the application settings! + Bu sertifikayı kaldırmak istediÄŸinizden emin misiniz? Tüm sertifika verileri uygulama ayarlarından silinecektir! + + + + Are you sure you want to clear all the saved settings? +All your preferences will be lost and default values will be used. + Kaydedilen tüm ayarları silmek istediÄŸinizden emin misiniz? +Tüm tercihleriniz kaybolacak ve varsayılan deÄŸerler kullanılacak. + + + + ProxyDialog + + + Proxy Configuration + Proxy Yapılandırması + + + + Pro&xy Type + Pro&xy Tipi + + + + Host Na&me + A&na Bilgisayar Adı + + + + Port + Port + + + + Authentication Re&quired + Kimlik &DoÄŸrulaması Gerekli + + + + &User Name + K&ullanıcı Adı + + + + Password + Parola + + + + None + Hiçbiri + + + + System settings + Sistem ayarları + + + + HTTP + HTTP + + + + Socks v5 + Socks v5 + + + + QObject + + + Error importing data + Veriyi içe aktarılırken hata oluÅŸtu + + + + from record number %1 + kayıt numarasından: %1 + + + + . +%1 + . %1 + + + + Importing CSV file... + CSV dosyası içe aktarılıyor... + + + + Cancel + İptal + + + + All files (*) + Tüm dosyalar (*) + + + + SQLite database files (*.db *.sqlite *.sqlite3 *.db3) + SQLite veritabanı dosyaları (*.db *.sqlite *.sqlite3 *.db3) + + + + Left + Sola Hizala + + + + Right + SaÄŸa Hizala + + + + Center + Ortala + + + + Justify + İki yana yasla + + + + SQLite Database Files (*.db *.sqlite *.sqlite3 *.db3) + SQLite Veritabanı Dosyaları (*.db *.sqlite *.sqlite3 *.db3) + + + + DB Browser for SQLite Project Files (*.sqbpro) + DB Browser for SQLite Proje Dosyaları (*.sqbpro) + + + + SQL Files (*.sql) + SQL Dosyaları (*.sql) + + + + All Files (*) + Tüm Dosyalar (*) + + + + Text Files (*.txt) + Metin Dosyaları (*.txt) + + + + Comma-Separated Values Files (*.csv) + Virgülle Ayrılmış DeÄŸerler Dosyaları (* .csv) + + + + Tab-Separated Values Files (*.tsv) + Tab ile Ayrılmış DeÄŸerler Dosyaları (*.tsv) + + + + Delimiter-Separated Values Files (*.dsv) + Sınırlayıcı ile Ayrılmış DeÄŸerler Dosyaları (* .dsv) + + + + Concordance DAT files (*.dat) + Uyumluluk DAT dosyaları (* .dat) + + + + JSON Files (*.json *.js) + JSON dosyaları (*.json *.js) + + + + XML Files (*.xml) + XML Dosyaları (*.xml) + + + + Binary Files (*.bin *.dat) + İkili Dosyalar (*.bin *.dat) + + + + SVG Files (*.svg) + SVG Dosyaları (*.svg) + + + + Hex Dump Files (*.dat *.bin) + Onaltılık Döküm Dosyaları (* .dat * .bin) + + + + Extensions (*.so *.dylib *.dll) + Eklentiler (* .so * .dylib * .dll) + + + + RemoteCommitsModel + + + Commit ID + + + + + Message + + + + + Date + Tarih + + + + Author + + + + + Size + Boyut + + + + Authored and committed by %1 + + + + + Authored by %1, committed by %2 + + + + + RemoteDatabase + + + Error opening local databases list. +%1 + Yerel veritabanı listesi açılamadı. +%1 + + + + Error creating local databases list. +%1 + Yerel veritabanı listesi oluÅŸturulamadı. +%1 + + + + RemoteDock + + + Remote + Uzak Bilgisayar + + + + Identity + Kmlik + + + + Push currently opened database to server + Åžu anda açık olan veritabanını sunucuya aktar + + + + DBHub.io + + + + + <html><head/><body><p>In this pane, remote databases from dbhub.io website can be added to DB Browser for SQLite. First you need an identity:</p><ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Login to the dbhub.io website (use your GitHub credentials or whatever you want)</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Click the button to &quot;Generate client certificate&quot; (that's your identity). That'll give you a certificate file (save it to your local disk).</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Go to the Remote tab in DB Browser for SQLite Preferences. Click the button to add a new certificate to DB Browser for SQLite and choose the just downloaded certificate file.</li></ol><p>Now the Remote panel shows your identity and you can add remote databases.</p></body></html> + + + + + Local + + + + + Current Database + + + + + Clone + + + + + User + Kullanıcı + + + + Database + Veritabanı + + + + Branch + Branch + + + + Commits + + + + + Commits for + + + + + Delete Database + + + + + Delete the local clone of this database + + + + + Open in Web Browser + + + + + Open the web page for the current database in your browser + + + + + Clone from Link + + + + + Use this to download a remote database for local editing using a URL as provided on the web page of the database. + + + + + Refresh + Yenile + + + + Reload all data and update the views + + + + + F5 + + + + + Clone Database + + + + + Open Database + + + + + Open the local copy of this database + + + + + Check out Commit + + + + + Download and open this specific commit + + + + + Check out Latest Commit + + + + + Check out the latest commit of the current branch + + + + + Save Revision to File + + + + + Saves the selected revision of the database to another file + + + + + Upload Database + + + + + Upload this database as a new commit + + + + + <html><head/><body><p>You are currently using a built-in, read-only identity. For uploading your database, you need to configure and use your DBHub.io account.</p><p>No DBHub.io account yet? <a href="https://dbhub.io/"><span style=" text-decoration: underline; color:#007af4;">Create one now</span></a> and import your certificate <a href="#preferences"><span style=" text-decoration: underline; color:#007af4;">here</span></a> to share your databases.</p><p>For online help visit <a href="https://dbhub.io/about"><span style=" text-decoration: underline; color:#007af4;">here</span></a>.</p></body></html> + <html> <head /> <body> <p> Åžu anda dahili, salt okunur kimlik kullanıyorsunuz. Kendi veritabanınızı yüklemek için DBHub.io hesabı kullanıp konfigure etmeniz gerekiyor. </p> <p> Henüz DBHub.io hesabınız yok mu? <a href="https://dbhub.io/" ><span style=" text-decoration: underline; color:#007af4;" >Åžimdi bir tane oluÅŸturun</span ></a > ve veritabanınızı paylaÅŸmak için <a href="#preferences" ><span style=" text-decoration: underline; color:#007af4;" >buradan</span ></a > sertifikanızı içe aktarın. </p> <p> Çevrimiçi yardım için <a href="https://dbhub.io/about" ><span style=" text-decoration: underline; color:#007af4;" >burayı</span ></a > ziyaret edin. </p> </body> </html> + + + + Back + Geri + + + + Select an identity to connect + + + + + Public + + + + + This downloads a database from a remote server for local editing. +Please enter the URL to clone from. You can generate this URL by +clicking the 'Clone Database in DB4S' button on the web page +of the database. + + + + + Invalid URL: The host name does not match the host name of the current identity. + + + + + Invalid URL: No branch name specified. + + + + + Invalid URL: No commit ID specified. + + + + + You have modified the local clone of the database. Fetching this commit overrides these local changes. +Are you sure you want to proceed? + + + + + The database has unsaved changes. Are you sure you want to push it before saving? + + + + + The database you are trying to delete is currently opened. Please close it before deleting. + + + + + This deletes the local version of this database with all the changes you have not committed yet. Are you sure you want to delete this database? + + + + + RemoteLocalFilesModel + + + Name + İsim + + + + Branch + Branch + + + + Last modified + Son deÄŸiÅŸtirilme + + + + Size + Boyut + + + + Commit + Commit + + + + File + + + + + RemoteModel + + + Name + İsim + + + + Commit + Commit + + + + Last modified + Son deÄŸiÅŸtirilme + + + + Size + Boyut + + + + Size: + + + + + Last Modified: + + + + + Licence: + + + + + Default Branch: + + + + + RemoteNetwork + + + Choose a location to save the file + + + + + Error opening remote file at %1. +%2 + %1 adresinde bulunan dosya açılamadı. %2 + + + + Error: Invalid client certificate specified. + Hata: Geçersiz istemci sertifikası belirtildi. + + + + Please enter the passphrase for this client certificate in order to authenticate. + Kimlik doÄŸrulaması için lütfen istemci sertifikasının parolasını girin. + + + + Cancel + İptal + + + + Uploading remote database to +%1 + Uzak veritabanı karşıya yükleniyor +%1 + + + + Downloading remote database from +%1 + Uzaktaki sunucu indiriliyor: +%1 + + + + + Error: The network is not accessible. + Hata: AÄŸa eriÅŸilemiyor. + + + + Error: Cannot open the file for sending. + Hata: Dosya gönderim için açılamadı. + + + + RemotePushDialog + + + Push database + Veritabanını aktar + + + + Database na&me to push to + Aktarılacak veritaba&nı adı + + + + Commit message + Commit mesajı + + + + Database licence + Veritabanı lisansı + + + + Public + Halka açık + + + + Branch + Branch + + + + Force push + Aktarmaya zorla + + + + Username + + + + + Database will be public. Everyone has read access to it. + Veritabanı halka açık olacak. Herkes okuma iznine sahip olacak. + + + + Database will be private. Only you have access to it. + Veritabanı özel olacak. Sadece sizin eriÅŸiminiz olacak. + + + + Use with care. This can cause remote commits to be deleted. + Dikkatlice kullanın. Bu, uzaktaki deÄŸiÅŸikliklerin silinmesine sebep olabilir. + + + + RunSql + + + Execution aborted by user + Yürütme kullanıcı tarafından durduruldu + + + + , %1 rows affected + , %1 satır etkilendi + + + + query executed successfully. Took %1ms%2 + sorgu baÅŸarıyla yürütüldü. %1ms%2 sürdü + + + + executing query + sorgu yürütülüyor + + + + SelectItemsPopup + + + A&vailable + &Kullanılabilir + + + + Sele&cted + &Seçilen + + + + SqlExecutionArea + + + Form + Form + + + + Find previous match [Shift+F3] + Önceki eÅŸleÅŸmeyi bul [Shift, F3] + + + + Find previous match with wrapping + Sarmalayarak bir önceki eÅŸleÅŸmeyi bul + + + + Shift+F3 + + + + + The found pattern must be a whole word + Bulunan desen tam bir kelime olmalıdır + + + + Whole Words + Kelimenin Tamamı + + + + Text pattern to find considering the checks in this frame + Bu alandaki kontrolleri baz alarak bulunacak metin deseni + + + + Find in editor + Editörde ara + + + + The found pattern must match in letter case + Bulunan desen büyük küçük harfe duyarlı olmalıdır + + + + Case Sensitive + Büyük küçük harfe duyarı + + + + Find next match [Enter, F3] + Sonraki eÅŸleÅŸmeyi bul [Enter, F3] + + + + Find next match with wrapping + Sarmalayarak bir sonraki eÅŸleÅŸmeyi bul + + + + F3 + + + + + Interpret search pattern as a regular expression + Arama desenini düzenli ifade(RegEx) olarak yorumla + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + <html> <head /> <body> <p> İşaretlendiÄŸinde, girilen desen UNIX düzenli ifadesi olarak yorumlanır. <a href="https://en.wikibooks.org/wiki/Regular_Expressions" >Wikibooks</a > üzerinden düzenli ifadeleri inceleyebilirsiniz. </p> </body> </html> + + + + Regular Expression + Kurallı İfade (RegEx) + + + + + Close Find Bar + Araba çubuÄŸunu kapat + + + + <html><head/><body><p>Results of the last executed statements.</p><p>You may want to collapse this panel and use the <span style=" font-style:italic;">SQL Log</span> dock with <span style=" font-style:italic;">User</span> selection instead.</p></body></html> + <html> <head /> <body> <p>Son yürütülen ifadelerin sonuçları.</p> <p> Bu paneli daraltmak ve bunun yerine <span style=" font-style:italic;">SQL Log Günlüğünü</span> <span style=" font-style:italic;">Kullanıcı</span> seçimi ile kullanmak isteyebilirsiniz. </p> </body> </html> + + + + Results of the last executed statements + Son yürütülen ifadenin sonucu + + + + This field shows the results and status codes of the last executed statements. + Bu alan son yürütülen ifadenin durum kodlarını ve sonuçlarını gösterir. + + + + Couldn't read file: %1. + Dosya okunamadı: %1. + + + + + Couldn't save file: %1. + Dosya kaydedilemedi: %1. + + + + Your changes will be lost when reloading it! + Yeniden yüklerken deÄŸiÅŸiklikleriniz kaybolacak! + + + + The file "%1" was modified by another program. Do you want to reload it?%2 + "%1" dosyası baÅŸka bir program tarafından deÄŸiÅŸtirildi. Yeniden yüklemek istiyor musunuz?%2 + + + + SqlTextEdit + + + Ctrl+/ + + + + + SqlUiLexer + + + (X) The abs(X) function returns the absolute value of the numeric argument X. + (X) abs(X) fonksiyonu X sayısal argümanının mutlak deÄŸerini döndürür. + + + + () The changes() function returns the number of database rows that were changed or inserted or deleted by the most recently completed INSERT, DELETE, or UPDATE statement. + () changes() fonksiyonu en son yürütülen INSERT, DELETE veya UPDATE ifadesinden etkilenen veritabanı satırlarının sayısını döndürür. + + + + (X1,X2,...) The char(X1,X2,...,XN) function returns a string composed of characters having the unicode code point values of integers X1 through XN, respectively. + (X1,X2,...) char(X1,X2,...,XN) fonksiyonu sırasıyla X1'den XN'e kadar olan tamsayıların unicode karakter karşılıklarından oluÅŸan dizeyi döndürür. + + + + (X,Y,...) The coalesce() function returns a copy of its first non-NULL argument, or NULL if all arguments are NULL + (X,Y,...) coalesce() fonksiyonu NULL olmayan ilk argümanı döndürür. EÄŸer tüm argümanlar NULL ise NULL deÄŸerini döndürür + + + + (X,Y) The glob(X,Y) function is equivalent to the expression "Y GLOB X". + (X,Y) glob(X,Y) fonksiyonu "Y GLOB X" ifadesinin eÅŸdeÄŸerini döndürür. + + + + (X,Y) The ifnull() function returns a copy of its first non-NULL argument, or NULL if both arguments are NULL. + (X,Y) ifnull() fonksiyonu NULL olmayan ilk argümanı döndürür. EÄŸer her iki argüman da NULL ise NULL deÄŸerini döndürür. + + + + (X,Y) The instr(X,Y) function finds the first occurrence of string Y within string X and returns the number of prior characters plus 1, or 0 if Y is nowhere found within X. + (X,Y) instr(X,Y) fonksiyonu ilk önce X dizesinin içinde Y dizesinin içeriÄŸini arar ve eÅŸleÅŸen yerden önceki karakterlerin sayısının 1 fazlasını döndürür. EÄŸer Y, X içerisinde bulunmazsa 0 deÄŸerini döndürür. + + + + (X) The hex() function interprets its argument as a BLOB and returns a string which is the upper-case hexadecimal rendering of the content of that blob. + (X) hex() fonksiyonu argümanı BLOB olarak yorumlar ve BLOB içeriÄŸinin büyük harf onaltılık kısmını dize olarak döndürür. + + + + () The last_insert_rowid() function returns the ROWID of the last row insert from the database connection which invoked the function. + () last_insert_rowid() fonksiyonu çaÄŸrılan veritabanı baÄŸlantısından en son eklenen satırın ROWID deÄŸerini döndürür. + + + + (X) For a string value X, the length(X) function returns the number of characters (not bytes) in X prior to the first NUL character. + (X) length() fonksiyonu X dize deÄŸeri için NULL ifadesine kadar olan karakter sayısını döndürür (bayt olarak deÄŸil). + + + + (X,Y) The like() function is used to implement the "Y LIKE X" expression. + (X,Y) like() fonksiyonu "Y LIKE X" ifadesini uygulamak için kullanılır. + + + + (X,Y,Z) The like() function is used to implement the "Y LIKE X ESCAPE Z" expression. + (X,Y,Z) like() fonksiyonu "Y LIKE X ESCAPE Z" ifadesini uygulamak için kullanılır. + + + + (X) The load_extension(X) function loads SQLite extensions out of the shared library file named X. +Use of this function must be authorized from Preferences. + (X) load_extension(X) fonksiyonu, SQLite eklentilerini X adlı paylaşılan kitaplık dosyasından yükler. Bu iÅŸlevin kullanımına Tercihler'den izin verilmelidir. + + + + (X,Y) The load_extension(X) function loads SQLite extensions out of the shared library file named X using the entry point Y. +Use of this function must be authorized from Preferences. + (X, Y) load_extension(X) iÅŸlevi, Y giriÅŸ noktasını kullanarak X adlı paylaşılan kitaplık dosyasından SQLite eklentilerini yükler. +Bu iÅŸlevin kullanımına Tercihler'den izin verilmelidir. + + + + (X) The lower(X) function returns a copy of string X with all ASCII characters converted to lower case. + (X) lower(X) fonksiyonu tüm X dizesinin tüm ASCII karakterlerinin küçük harfe dönüştürülmüş karşılığını döndürür. + + + + (X) ltrim(X) removes spaces from the left side of X. + (X) ltrim(X) fonksiyonu X'in sol tarafındaki boÅŸlukları siler. + + + + (X,Y) The ltrim(X,Y) function returns a string formed by removing any and all characters that appear in Y from the left side of X. + (X,Y) ltrim(X,Y) fonksiyonu X'in sol tarafındaki Y'de bulunan tüm karakterlerin silinmiÅŸ halini dize halinde döndürür. + + + + (X,Y,...) The multi-argument max() function returns the argument with the maximum value, or return NULL if any argument is NULL. + (X,Y,...) Çok argümanlı max() fonksiyonu en büyük deÄŸere sahip argümanı döndürür. EÄŸer herhangi bir argüman NULL ise NULL deÄŸerini döndürür. + + + + (X,Y,...) The multi-argument min() function returns the argument with the minimum value. + (X,Y,...) Çok argümanlı min() fonksiyonu en küçük deÄŸere sahip argümanı döndürür. + + + + (X,Y) The nullif(X,Y) function returns its first argument if the arguments are different and NULL if the arguments are the same. + (X,Y) nullif(X,Y) fonksiyonu eÄŸer argümanlar farklı ise ilk argümanı, eÄŸer argümanlar aynı ise NULL döndürür. + + + + (FORMAT,...) The printf(FORMAT,...) SQL function works like the sqlite3_mprintf() C-language function and the printf() function from the standard C library. + (FORMAT,...) printf(FORMAT,...) SQL fonksiyonu C dilindeki sqlite3_mprintf() fonksiyonu ve standard C kütüphanesindeki printf() fonksiyonu ile aynı mantıkta çalışır. + + + + (X) The quote(X) function returns the text of an SQL literal which is the value of its argument suitable for inclusion into an SQL statement. + (X) quote(X) fonksiyonu girilen argümanlardan SQL ifadesi olarak tam anlamıyla dahil edilmeye uygun olanları döndürür. + + + + () The random() function returns a pseudo-random integer between -9223372036854775808 and +9223372036854775807. + () random() fonksiyonu -9223372036854775808 ve +9223372036854775807 tamsayı deÄŸerli arasında rastgele deÄŸer döndürür. + + + + (N) The randomblob(N) function return an N-byte blob containing pseudo-random bytes. + (N) randomblob(N) fonksiyonu rastgele bayt içeren N-byte türünde blob döndürür. + + + + (X,Y,Z) The replace(X,Y,Z) function returns a string formed by substituting string Z for every occurrence of string Y in string X. + (X,Y,Z) replace(X,Y,Z) fonksiyonu X içindeki her Y argümanını, Z argümanıyla deÄŸiÅŸtirmesiyle oluÅŸan dizeyi döndürür. + + + + (X) The round(X) function returns a floating-point value X rounded to zero digits to the right of the decimal point. + (X) round(X) fonksiyonu X ondalıklı sayısının ondalıklı kısmın sıfıra yuvarlanmasıyla oluÅŸan deÄŸeri döndürür. + + + + (X,Y) The round(X,Y) function returns a floating-point value X rounded to Y digits to the right of the decimal point. + (X,Y) round(X,Y) fonksiyonu X ondalıklı sayısının Y kadar sağındaki ondalıklı kısmı sıfıra yuvarlanmasıyla oluÅŸan deÄŸeri döndürür. + + + + (X) rtrim(X) removes spaces from the right side of X. + (X) rtrim(X) fonksiyonu X'in saÄŸ tarafındaki boÅŸlukları siler. + + + + (X,Y) The rtrim(X,Y) function returns a string formed by removing any and all characters that appear in Y from the right side of X. + (X,Y) rtrim(X,Y) fonksiyonu X'in saÄŸ tarafındaki Y'de bulunan tüm karakterlerin silinmiÅŸ halini dize halinde döndürür. + + + + (X) The soundex(X) function returns a string that is the soundex encoding of the string X. + (X) soundex(X) fonksiyonu X dizesinin soundex kodlamasını string olarak döndürür. + + + + (X,Y) substr(X,Y) returns all characters through the end of the string X beginning with the Y-th. + (X,Y) substr(X,Y) fonksiyonu X dizesinin baÅŸlangıcından Y. indekse kadar olan string bölümünü döndürür. + + + + (X,Y,Z) The substr(X,Y,Z) function returns a substring of input string X that begins with the Y-th character and which is Z characters long. + (X,Y,Z) substr(X,Y,Z) fonksiyonu X dizesinin Y. indeksinden baÅŸlayarak Z uzunluÄŸu kadar olan string bölümünü döndürür. + + + + () The total_changes() function returns the number of row changes caused by INSERT, UPDATE or DELETE statements since the current database connection was opened. + () total_changes() fonksiyonu geçerli veritabanı baÄŸlantısı açıldığından itibaren INSERT, UPDATE veya DELETE ifadelerinden etkilenen toplam satır sayısını döndürür. + + + + (X) trim(X) removes spaces from both ends of X. + (X) trim(X) fonksiyonu X'in içinde bulunan boÅŸlukları siler. + + + + (X,Y) The trim(X,Y) function returns a string formed by removing any and all characters that appear in Y from both ends of X. + (X,Y) trim(X,Y) fonksiyonu X'in içindeki Y'de bulunan tüm karakterlerin silinmiÅŸ halini dize halinde döndürür. + + + + (X) The typeof(X) function returns a string that indicates the datatype of the expression X. + (X) typeof(X) fonksiyonu X ifadesinin veri tipini gösteren dizeyi döndürür. + + + + (X) The unicode(X) function returns the numeric unicode code point corresponding to the first character of the string X. + (X) unicode(X) fonksiyonu X'in ilk karakterine karşılık gelen unicode kod noktasını döndürür. + + + + (X) The upper(X) function returns a copy of input string X in which all lower-case ASCII characters are converted to their upper-case equivalent. + (X) upper(X) fonksiyonu tüm X dizesinin tüm küçük ASCII karakterlerinin büyük harf karşılığına çevrilmiÅŸ kopyasını döndürür. + + + + (N) The zeroblob(N) function returns a BLOB consisting of N bytes of 0x00. + (N) zeroblob(N) fonksiyonu 0x00'ın N bayt kadar meydana gelmiÅŸ halini BLOB olarak döndürür. + + + + + + + (timestring,modifier,modifier,...) + + + + + (format,timestring,modifier,modifier,...) + + + + + (X) The avg() function returns the average value of all non-NULL X within a group. + (X) avg() fonksiyonu bir gruptaki NULL olmayan tüm X deÄŸerlerinin ortalama deÄŸerini döndürür. + + + + (X) The count(X) function returns a count of the number of times that X is not NULL in a group. + (X) count(X) fonksiyonu bir gruptaki X'in kaç kere NULL olmadığının sayısını döndürür. + + + + (X) The group_concat() function returns a string which is the concatenation of all non-NULL values of X. + (X) group_concat() fonksiyonu X'in NULL olmayan tüm deÄŸerlerle birleÅŸimini dize olarak döndürür. + + + + (X,Y) The group_concat() function returns a string which is the concatenation of all non-NULL values of X. If parameter Y is present then it is used as the separator between instances of X. + (X,Y) group_concat() fonksiyonu X'in NULL olmayan tüm deÄŸerlerle birleÅŸimini dize olarak döndürür. EÄŸer Y parametresi mevcutsa X'in örnekleri arasında ayraç olarak kullanılır. + + + + (X) The max() aggregate function returns the maximum value of all values in the group. + (X) max() küme fonksiyonu gruptaki tüm deÄŸerler arasından en büyük deÄŸeri döndürür. + + + + (X) The min() aggregate function returns the minimum non-NULL value of all values in the group. + (X) min() küme fonksiyonu gruptaki NULL olmayan tüm deÄŸerler arasından en küçük deÄŸeri döndürür. + + + + + (X) The sum() and total() aggregate functions return sum of all non-NULL values in the group. + (X) sum() ve total() küme fonksiyonları gruptaki NULL olmayan tüm deÄŸerlerin toplamını döndürür. + + + + () The number of the row within the current partition. Rows are numbered starting from 1 in the order defined by the ORDER BY clause in the window definition, or in arbitrary order otherwise. + () Geçerli bölümdeki satır sayısı. Satırlar, 1'den baÅŸlayarak, tanım penceresinde ORDER BY ifadesi tarafından tanımlanan sırada veya aksi takdirde rastgele sırada numaralandırılır. + + + + () The row_number() of the first peer in each group - the rank of the current row with gaps. If there is no ORDER BY clause, then all rows are considered peers and this function always returns 1. + () row_number() her gruptaki ilk eÅŸin - boÅŸlukları olan geçerli satırın sırası. ORDER BY ifadesi yoksa, tüm satırlar eÅŸ olarak kabul edilir ve bu iÅŸlev her zaman 1 deÄŸerini döndürür. + + + + () The number of the current row's peer group within its partition - the rank of the current row without gaps. Partitions are numbered starting from 1 in the order defined by the ORDER BY clause in the window definition. If there is no ORDER BY clause, then all rows are considered peers and this function always returns 1. + () Geçerli satırın kendi bölümündeki eÅŸ grubunun sayısı - boÅŸluklar olmadan geçerli satırın sırası. Bölümler, 1'den baÅŸlayarak, tanım penceresindeki ORDER BY ifadesi tarafından tanımlanan sırada numaralandırılır. ORDER BY iifadesi yoksa, tüm satırlar eÅŸ olarak kabul edilir ve bu iÅŸlev her zaman 1 deÄŸerini döndürür. + + + + () Despite the name, this function always returns a value between 0.0 and 1.0 equal to (rank - 1)/(partition-rows - 1), where rank is the value returned by built-in window function rank() and partition-rows is the total number of rows in the partition. If the partition contains only one row, this function returns 0.0. + () İsme raÄŸmen, bu iÅŸlev her zaman 0.0 ile 1.0 arasında (sıralama - 1) / (bölüm satırları - 1) deÄŸerine bir deÄŸer döndürür; burada sıralama, yerleÅŸik pencere rank() fonksiyonu ve bölüm- tarafından döndürülen deÄŸerdir. satırlar, bölümdeki toplam satır sayısıdır. Bölüm yalnızca bir satır içeriyorsa, bu iÅŸlev 0,0 deÄŸerini döndürür. + + + + () The cumulative distribution. Calculated as row-number/partition-rows, where row-number is the value returned by row_number() for the last peer in the group and partition-rows the number of rows in the partition. + () Kümülatif dağılım. Satır-sayısı/bölüm-satırları olarak hesaplanır; burada satır-sayısı, gruptaki son eÅŸ için row_number() tarafından döndürülen deÄŸerdir ve bölüm-satırdaki bölüm sayısıdır. + + + + (N) Argument N is handled as an integer. This function divides the partition into N groups as evenly as possible and assigns an integer between 1 and N to each group, in the order defined by the ORDER BY clause, or in arbitrary order otherwise. If necessary, larger groups occur first. This function returns the integer value assigned to the group that the current row is a part of. + (N) N argümanı bir tamsayı olarak ele alınır. Bu iÅŸlev, bölümü olabildiÄŸince eÅŸit bir ÅŸekilde N gruplarına böler ve ORDER BY ifadesi tarafından tanımlanan sırada veya aksi takdirde rasgele sırayla her gruba 1 ve N arasında bir tam sayı atar. Gerekirse, önce daha büyük gruplar oluÅŸur. Bu iÅŸlev, geçerli satırın parçası olduÄŸu gruba atanan tamsayı deÄŸerini döndürür. + + + + (expr) Returns the result of evaluating expression expr against the previous row in the partition. Or, if there is no previous row (because the current row is the first), NULL. + (expr) Bölümdeki önceki satıra göre expr ifade deÄŸerlendirmesinin sonucunu döndürür. Veya, önceki satır yoksa (geçerli satır ilk satır olduÄŸu için), NULL. + + + + (expr,offset) If the offset argument is provided, then it must be a non-negative integer. In this case the value returned is the result of evaluating expr against the row offset rows before the current row within the partition. If offset is 0, then expr is evaluated against the current row. If there is no row offset rows before the current row, NULL is returned. + (expr,offset) Uzaklık deÄŸiÅŸkeni saÄŸlanırsa, negatif olmayan bir tam sayı olmalıdır. Bu durumda, döndürülen deÄŸer, bölüm içindeki geçerli satırdan önce satır ofseti satırlarına göre ifade deÄŸerlendirmesinin sonucudur. Ofset 0 ise, ifade geçerli satıra göre deÄŸerlendirilir. Geçerli satırdan önce satır kaydırma satırları yoksa, NULL döndürülür. + + + + + (expr,offset,default) If default is also provided, then it is returned instead of NULL if the row identified by offset does not exist. + (expr,offset,default) Varsayılan da saÄŸlanmışsa, ofset ile tanımlanan satır yoksa NULL döndürülür. + + + + (expr) Returns the result of evaluating expression expr against the next row in the partition. Or, if there is no next row (because the current row is the last), NULL. + (expr) Bölümdeki bir sonraki satıra göre expr ifade deÄŸerlendirmesinin sonucunu döndürür. Veya, bir sonraki satır yoksa (geçerli satır son olduÄŸu için), NULL. + + + + (expr,offset) If the offset argument is provided, then it must be a non-negative integer. In this case the value returned is the result of evaluating expr against the row offset rows after the current row within the partition. If offset is 0, then expr is evaluated against the current row. If there is no row offset rows after the current row, NULL is returned. + (expr,offset) Uzaklık deÄŸiÅŸkeni saÄŸlanırsa, negatif olmayan bir tam sayı olmalıdır. Bu durumda, döndürülen deÄŸer, bölüm içindeki geçerli satırdan sonra ifade ofset satırlarına göre ifade deÄŸerlendirmesinin sonucudur. Ofset 0 ise, ifade geçerli satıra göre deÄŸerlendirilir. Geçerli satırdan sonra satır ofseti satırı yoksa, NULL döndürülür. + + + + (expr) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the first row in the window frame for each row. + (expr) Bu yerleÅŸik pencere iÅŸlevi, her satır için pencere çerçevesini birleÅŸtirilmiÅŸ pencere iÅŸlevi ile aynı ÅŸekilde hesaplar. Her satır için pencere çerçevesindeki ilk satıra karşı deÄŸerlendirilen ifade deÄŸerini döndürür. + + + + (expr) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the last row in the window frame for each row. + (expr) Bu yerleÅŸik pencere iÅŸlevi, her satır için pencere çerçevesini birleÅŸtirilmiÅŸ pencere iÅŸlevi ile aynı ÅŸekilde hesaplar. Her satır için pencere çerçevesindeki son satıra göre deÄŸerlendirilen ifade deÄŸerini döndürür. + + + + (expr,N) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the row N of the window frame. Rows are numbered within the window frame starting from 1 in the order defined by the ORDER BY clause if one is present, or in arbitrary order otherwise. If there is no Nth row in the partition, then NULL is returned. + (expr,N) Bu yerleÅŸik pencere iÅŸlevi, her satır için pencere çerçevesini birleÅŸtirilmiÅŸ pencere iÅŸlevi ile aynı ÅŸekilde hesaplar. Pencere çerçevesinin N satırına göre deÄŸerlendirilen ifade deÄŸerini döndürür. Satırlar, pencere çerçevesi içinde 1'den baÅŸlayarak, ORDER BY deyimi tarafından varsa veya baÅŸka bir ÅŸekilde rastgele sırada numaralandırılır. Bölümde N'inci satırı yoksa, NULL döndürülür. + + + + SqliteTableModel + + + reading rows + satırlar okunuyor + + + + loading... + yükleniyor... + + + + References %1(%2) +Hold %3Shift and click to jump there + Referanslar %1(%2) +Buraya atlamak için %3Shift'e basılı tutun ve tıklayın + + + + Error changing data: +%1 + Veri deÄŸiÅŸtirme hatası: %1 + + + + retrieving list of columns + sütunların listesi alınıyor + + + + Fetching data... + Veri alınıyor... + + + + + Cancel + İptal + + + + TableBrowser + + + Browse Data + Veriyi Görüntüle + + + + &Table: + &Tablo: + + + + Select a table to browse data + Verileri görüntülemek için tablo seçiniz + + + + Use this list to select a table to be displayed in the database view + Veritabanı görünümünde gösterilecek tabloyu seçmek için bu listeyi kullanın + + + + This is the database table view. You can do the following actions: + - Start writing for editing inline the value. + - Double-click any record to edit its contents in the cell editor window. + - Alt+Del for deleting the cell content to NULL. + - Ctrl+" for duplicating the current record. + - Ctrl+' for copying the value from the cell above. + - Standard selection and copy/paste operations. + Bu veritabanı tablosu görünümüdür. AÅŸağıdaki iÅŸlemleri yapabilirsiniz: +  - Satır içi deÄŸeri düzenlemek için yazmaya baÅŸlayın. +  - İçeriklerini hücre düzenleyici penceresinde düzenlemek için herhangi bir kaydı çift tıklayın. +  - Hücre içeriÄŸini NULL'a dönüştürmek için Alt + Del tuÅŸlarına basın. +  - Geçerli kaydı çoÄŸaltmak için Ctrl + "tuÅŸlarına basın. +  - Yukarıdaki hücreden deÄŸeri kopyalamak için Ctrl + '. +  - Standart seçim ve kopyalama / yapıştırma iÅŸlemleri. + + + + Text pattern to find considering the checks in this frame + Bu çerçevedeki kontrolleri baz alarak bulmak için metin deseni + + + + Find in table + Tabloda ara + + + + Find previous match [Shift+F3] + Önceki eÅŸleÅŸmeyi bul [Shift,F3] + + + + Find previous match with wrapping + Sarmalayarak bir önceki eÅŸleÅŸmeyi bul + + + + Shift+F3 + + + + + Find next match [Enter, F3] + Sonraki eÅŸleÅŸmeyi bul [Enter, F3] + + + + Find next match with wrapping + Sarmalayarak bir sonraki eÅŸleÅŸmeyi bul + + + + F3 + + + + + The found pattern must match in letter case + Bulunan desen büyük küçük harfe duyarlı ÅŸekilde eÅŸleÅŸmelidir + + + + Case Sensitive + Büyük Küçük Harfe Duyarlı + + + + The found pattern must be a whole word + Bulunan kalıp tam bir kelime olmalıdır + + + + Whole Cell + Tüm hücre + + + + Interpret search pattern as a regular expression + Arama desenini düzenliifade olarak yorumlama + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + <html> <head /> <body> <p> İşaretlendiÄŸinde, girilen desen UNIX düzenli ifadesi olarak yorumlanır. <a href="https://en.wikibooks.org/wiki/Regular_Expressions" >Wikibooks</a > üzerinden düzenli ifadeleri inceleyebilirsiniz. </p> </body> </html> + + + + Regular Expression + Düzenli İfade (RegEx) + + + + + Close Find Bar + Arama ÇubuÄŸunu Kapat + + + + Text to replace with + DeÄŸiÅŸtirilecek metin + + + + Replace with + Åžununla deÄŸiÅŸtir + + + + Replace next match + Sonraki eÅŸleÅŸmeyi deÄŸiÅŸtir + + + + + Replace + DeÄŸiÅŸtir + + + + Replace all matches + Tüm eÅŸleÅŸenleri deÄŸiÅŸtir + + + + Replace all + Tümünü DeÄŸiÅŸtir + + + + <html><head/><body><p>Scroll to the beginning</p></body></html> + <html><head/><body><p>BaÅŸa sürükle</p></body></html> + + + + <html><head/><body><p>Clicking this button navigates to the beginning in the table view above.</p></body></html> + <html><head/><body><p>Bu butona basıldığında üstteki tablo görünümünün baÅŸlangıcına kaydırılır.</p></body></html> + + + + |< + |< + + + + Scroll one page upwards + Bir sayfa yukarı kaydır + + + + <html><head/><body><p>Clicking this button navigates one page of records upwards in the table view above.</p></body></html> + <html><head/><body><p>Bu butona tıklamak, yukarıdaki tablo görünümünde kayıt sayfasını yukarı doÄŸru kaydırır.</p></body></html> + + + + < + < + + + + 0 - 0 of 0 + 0 - 0 / 0 + + + + Scroll one page downwards + Bir sayfa aÅŸağı kaydır + + + + <html><head/><body><p>Clicking this button navigates one page of records downwards in the table view above.</p></body></html> + <html><head/><body><p>Bu butona tıklamak, yukarıdaki tablo görünümünde kayıt sayfasını aÅŸağıya doÄŸru kaydırır.</p></body></html> + + + + > + > + + + + Scroll to the end + Sona sürükle + + + + <html><head/><body><p>Clicking this button navigates up to the end in the table view above.</p></body></html> + + + + + >| + >| + + + + <html><head/><body><p>Click here to jump to the specified record</p></body></html> + <html><head/><body><p>İstediÄŸiniz kayda atlamak için buraya tıklayın</p></body></html> + + + + <html><head/><body><p>This button is used to navigate to the record number specified in the Go to area.</p></body></html> + <html><head/><body><p>Bu buton belirtilen kayıt numarasına gitmek için kullanılır.</p></body></html> + + + + Go to: + Bu kayda gidin: + + + + Enter record number to browse + Görüntülemek için kayıt numarasını giriniz + + + + Type a record number in this area and click the Go to: button to display the record in the database view + Bu alana veritabanı görünümünde görüntülemek istediÄŸiniz kayıt numarasını giriniz ve Bu kayda gidin butonuna tıklayınız + + + + 1 + 1 + + + + Show rowid column + rowid sütununu göster + + + + Toggle the visibility of the rowid column + Rowid sütununun görünürlüğünü ayarla + + + + Unlock view editing + Görünüm düzenlemenin kilidini aç + + + + This unlocks the current view for editing. However, you will need appropriate triggers for editing. + Bu, geçerli görünümün düzenleme için kilidini açar. Ancak, düzenleme için uygun tetikleyicilere ihtiyacınız olacaktır. + + + + Edit display format + Görüntüleme formatını düzenle + + + + Edit the display format of the data in this column + Bu sütundaki verilerin görüntüleme biçimini düzenleyin + + + + + New Record + Yeni Kayıt + + + + + Insert a new record in the current table + Geçerli tabloya yeni bir kayıt ekle + + + + <html><head/><body><p>This button creates a new record in the database. Hold the mouse button to open a pop-up menu of different options:</p><ul><li><span style=" font-weight:600;">New Record</span>: insert a new record with default values in the database.</li><li><span style=" font-weight:600;">Insert Values...</span>: open a dialog for entering values before they are inserted in the database. This allows to enter values acomplishing the different constraints. This dialog is also open if the <span style=" font-weight:600;">New Record</span> option fails due to these constraints.</li></ul></body></html> + <html> <head /> <body> <p> Bu düğme veritabanında yeni bir kayıt oluÅŸturur. Farklı seçeneklerin olduÄŸu açılır menüsüyü görüntülemek için fare düğmesini basılı tutun: </p> <ul> <li> <span style=" font-weight:600;">Yeni Kayıt</span>: veritabanına varsayılan deÄŸerleri olan yeni bir kayıt ekler. </li> <li> <span style=" font-weight:600;">DeÄŸerler Ekleyin...</span>: veritabanına eklenmeden önce deÄŸerleri girmek için bir iletiÅŸim kutusu açın. Bu, farklı kısıtlamaları karşılayan deÄŸerlerin girilmesine izin verir. Bu iletiÅŸim kutusu, bu kısıtlamalar nedeniyle <span style=" font-weight:600;">Yeni Kayıt</span> seçeneÄŸi baÅŸarısız olursa da açılır. </li> </ul> </body> </html> + + + + + Delete Record + Kaydı Sil + + + + Delete the current record + Geçerli kaydı sil + + + + + This button deletes the record or records currently selected in the table + Bu buton tabloda seçili olan kaydı veya kayıtları siler + + + + + Insert new record using default values in browsed table + Görüntülenen tablosundaki varsayılan deÄŸerleri kullanarak yeni kayıt ekle + + + + Insert Values... + DeÄŸerler Ekle... + + + + + Open a dialog for inserting values in a new record + Yeni bir kayda deÄŸer eklemek için bir iletiÅŸim kutusu açın + + + + Export to &CSV + &CSV dosyası olarak dışa aktar + + + + + Export the filtered data to CSV + FiltrelenmiÅŸ veriyi CSV olarak dışa aktar + + + + This button exports the data of the browsed table as currently displayed (after filters, display formats and order column) as a CSV file. + Bu buton, görüntülenen tablonun verilerini ÅŸu anda görüntülendiÄŸi ÅŸekliyle (filtrelerden, görüntüleme biçimlerinden ve sütunların sıralamasına kadar) bir CSV dosyası olarak dışa aktarır. + + + + Save as &view + &Görünüm olarak kaydet + + + + + Save the current filter, sort column and display formats as a view + Geçerli filtreyi, sütunu ve görüntüleme biçimlerini bir görünüm olarak kaydedin + + + + This button saves the current setting of the browsed table (filters, display formats and order column) as an SQL view that you can later browse or use in SQL statements. + Bu buton, görüntülenen tablonun geçerli ayarlarını (filtreler, görüntü formatları ve sütunların sırasına kadar) daha sonra göz atabileceÄŸiniz veya SQL ifadelerinde kullanabileceÄŸiniz bir SQL görünümü olarak kaydeder. + + + + Save Table As... + Tabloyu Farklı Kaydet... + + + + + Save the table as currently displayed + Tabloyu ÅŸu anda gösterilen ÅŸekilde kaydet + + + + <html><head/><body><p>This popup menu provides the following options applying to the currently browsed and filtered table:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Export to CSV: this option exports the data of the browsed table as currently displayed (after filters, display formats and order column) to a CSV file.</li><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Save as view: this option saves the current setting of the browsed table (filters, display formats and order column) as an SQL view that you can later browse or use in SQL statements.</li></ul></body></html> + <html> <head /> <body> <p> Bu açılır menü, o anda görüntülenen ve filtrelenen tablo için geçerli olan aÅŸağıdaki seçenekleri sunar: </p> <ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;" > <li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;" > CSV olarak Dışa Aktar: Bu seçenek, görüntülenen tablonun verilerini ÅŸu anda görüntülendiÄŸi ÅŸekliyle (filtrelerden, görüntüleme biçimlerinden ve sipariÅŸ sütunun sıralamasına kadar) bir CSV dosyasına aktarır. </li> <li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;" > Görünüm olarak kaydet: Bu seçenek, göz atılan tablonun geçerli ayarlarını (filtreler, görüntü formatları ve sipariÅŸ sütun sıralamasına kadar) daha sonra göz atabileceÄŸiniz veya SQL ifadelerinde kullanabileceÄŸiniz bir SQL görünümü olarak kaydeder. </li> </ul> </body> </html> + + + + Hide column(s) + Sütunları gizle + + + + Hide selected column(s) + Seçilen sütunları gizle + + + + Show all columns + Tüm sütunları göster + + + + Show all columns that were hidden + Gizlenen tüm sütunları göster + + + + + Set encoding + Kodlama seç + + + + Change the encoding of the text in the table cells + Tablo hücrelerindeki metnin kodlamasını deÄŸiÅŸtirme + + + + Set encoding for all tables + Tüm tablolar için kodlama seç + + + + Change the default encoding assumed for all tables in the database + Veritabanındaki tüm tablolar için varsayılan kodlamayı deÄŸiÅŸtirme + + + + Clear Filters + Filtreleri Temizle + + + + Clear all filters + Tüm filtreleri temizle + + + + + This button clears all the filters set in the header input fields for the currently browsed table. + Bu buton, o anda görüntülenen tablonun baÅŸlık giriÅŸ alanlarında ayarlanan tüm filtreleri temizler. + + + + Clear Sorting + Sıralamayı Temizle + + + + Reset the order of rows to the default + Satırların sırasını varsayılana sıfırla + + + + + This button clears the sorting columns specified for the currently browsed table and returns to the default order. + Bu buton, o anda görüntülenen tablo için belirtilen sıralama sütunlarını temizler ve varsayılan sıraya geri döner. + + + + Print + Yazdır + + + + Print currently browsed table data + Åžu anda görüntülenen tablo verilerini yazdır + + + + Print currently browsed table data. Print selection if more than one cell is selected. + Åžu anda görüntülenen tablo verilerini yazdırın. Birden fazla hücre seçilirse seçimi yazdırın. + + + + Ctrl+P + + + + + Refresh + Yenile + + + + Refresh the data in the selected table + Seçilen tablodaki verileri yenile + + + + This button refreshes the data in the currently selected table. + Bu buton, seçilen tablodaki verileri yeniler. + + + + F5 + + + + + Find in cells + Hücrelerde ara + + + + Open the find tool bar which allows you to search for values in the table view below. + AÅŸağıdaki tablo görünümünde deÄŸerleri aramanıza izin veren bul araç çubuÄŸunu açın. + + + + + Bold + Kalın + + + + Ctrl+B + + + + + + Italic + İtalik + + + + + Underline + Altı çizili + + + + Ctrl+U + + + + + + Align Right + SaÄŸa Hizala + + + + + Align Left + Sola Hizala + + + + + Center Horizontally + Yatayda Ortala + + + + + Justify + İki yana yasla + + + + + Edit Conditional Formats... + KoÅŸullu Biçimlendirmeyi Düzenle... + + + + Edit conditional formats for the current column + Geçerli sütun için koÅŸullu biçimlendirmeyi düzenle + + + + Clear Format + Biçimlendirmeleri Temizle + + + + Clear All Formats + Tüm Biçimlendirmeleri Temizle + + + + + Clear all cell formatting from selected cells and all conditional formats from selected columns + Seçilen hücrelerdeki tüm hücre biçimlendirmelerini ve seçilen sütunlardaki tüm koÅŸullu biçimleri temizle + + + + + Font Color + Yazı Rengi + + + + + Background Color + Arka Plan Rengi + + + + Toggle Format Toolbar + Biçim Araç ÇubuÄŸunu Aç/Kapat + + + + Show/hide format toolbar + Biçim araç çubuÄŸunu göster/gizle + + + + + This button shows or hides the formatting toolbar of the Data Browser + Bu düğme Veri Görüntüleyici'nin biçimlendirme araç çubuÄŸunu gösterir veya gizler + + + + Select column + Sütun seç + + + + Ctrl+Space + + + + + Replace text in cells + Hücrelerdeki metinleri deÄŸiÅŸtir + + + + Filter in any column + + + + + Ctrl+R + + + + + %n row(s) + + %n satır + + + + + , %n column(s) + + , %n sütun + + + + + . Sum: %1; Average: %2; Min: %3; Max: %4 + . Toplam: %1; Ortalama: %2; Min: %3; Maks: %4 + + + + Conditional formats for "%1" + "%1" için koÅŸullu biçimlendirme + + + + determining row count... + satır sayısı belirleniyor... + + + + %1 - %2 of >= %3 + %1 - %2 >= %3 + + + + %1 - %2 of %3 + %1 - %2 / %3 + + + + Please enter a pseudo-primary key in order to enable editing on this view. This should be the name of a unique column in the view. + Bu görünümde düzenlemeyi etkinleÅŸtirmek için lütfen sözde birincil anahtar girin. Bu, görünümdeki benzersiz bir sütunun adı olmalıdır. + + + + Delete Records + Kayıtları Sil + + + + Duplicate records + Yinelenen kayıtlar + + + + Duplicate record + Yinelenen kayıt + + + + Ctrl+" + + + + + Adjust rows to contents + Satırları içeriklere göre ayarlama + + + + Error deleting record: +%1 + Kayıt silme hatası: +%1 + + + + Please select a record first + Lütfen öncelikle kaydı seçiniz + + + + There is no filter set for this table. View will not be created. + Bu tablo için ayarlanmış filtre yok. Görünüm oluÅŸturulmaz. + + + + Please choose a new encoding for all tables. + Lütfen tüm tablolar için yeni bir kodlama seçin. + + + + Please choose a new encoding for this table. + Lütfen bu tablo için yeni bir kodlama seçin. + + + + %1 +Leave the field empty for using the database encoding. + %1 +Veritabanı kodlamasını kullanmak için alanı boÅŸ bırakın. + + + + This encoding is either not valid or not supported. + Bu kodlama geçerli deÄŸil veya desteklenmiyor. + + + + %1 replacement(s) made. + %1 deÄŸiÅŸimi yapıldı. + + + + VacuumDialog + + + Compact Database + Veritabanını Sıkıştır + + + + Warning: Compacting the database will commit all of your changes. + Uyarı: Veritabanını sıkıştırmak bütün deÄŸiÅŸikliklerinizi kaydedecektir. + + + + Please select the databases to co&mpact: + Sıkıştır&mak istediÄŸiniz veritabanını seçiniz: + + + diff --git a/ConfigFiles/translations/sqlb_uk_UA.qm b/ConfigFiles/translations/sqlb_uk_UA.qm new file mode 100644 index 0000000000000000000000000000000000000000..dfb5e51d3f6dc3a880c233f2a111cfde4721055c GIT binary patch literal 84283 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 + + + + AboutDialog + + + About DB Browser for SQLite + Про ОглÑдач БД Ð´Ð»Ñ SQLite + + + + Version + ВерÑÑ–Ñ + + + + <html><head/><body><p>DB Browser for SQLite is an open source, freeware visual tool used to create, design and edit SQLite database files.</p><p>It is bi-licensed under the Mozilla Public License Version 2, as well as the GNU General Public License Version 3 or later. You can modify or redistribute it under the conditions of these licenses.</p><p>See <a href="http://www.gnu.org/licenses/gpl.html">http://www.gnu.org/licenses/gpl.html</a> and <a href="https://www.mozilla.org/MPL/2.0/index.txt">https://www.mozilla.org/MPL/2.0/index.txt</a> for details.</p><p>For more information on this program please visit our website at: <a href="http://sqlitebrowser.org">http://sqlitebrowser.org</a></p><p><span style=" font-size:small;">This software uses the GPL/LGPL Qt Toolkit from </span><a href="http://qt-project.org/"><span style=" font-size:small;">http://qt-project.org/</span></a><span style=" font-size:small;"><br/>See </span><a href="http://qt-project.org/doc/qt-5/licensing.html"><span style=" font-size:small;">http://qt-project.org/doc/qt-5/licensing.html</span></a><span style=" font-size:small;"> for licensing terms and information.</span></p><p><span style=" font-size:small;">It also uses the Silk icon set by Mark James licensed under a Creative Commons Attribution 2.5 and 3.0 license.<br/>See </span><a href="http://www.famfamfam.com/lab/icons/silk/"><span style=" font-size:small;">http://www.famfamfam.com/lab/icons/silk/</span></a><span style=" font-size:small;"> for details.</span></p></body></html> + + + + + AddRecordDialog + + + Add New Record + + + + + Enter values for the new record considering constraints. Fields in bold are mandatory. + + + + + In the Value column you can specify the value for the field identified in the Name column. The Type column indicates the type of the field. Default values are displayed in the same style as NULL values. + + + + + Name + Ім'Ñ + + + + Type + Тип + + + + Value + + + + + Values to insert. Pre-filled default values are inserted automatically unless they are changed. + + + + + When you edit the values in the upper frame, the SQL query for inserting this new record is shown here. You can edit manually the query before saving. + + + + + <html><head/><body><p><span style=" font-weight:600;">Save</span> will submit the shown SQL statement to the database for inserting the new record.</p><p><span style=" font-weight:600;">Restore Defaults</span> will restore the initial values in the <span style=" font-weight:600;">Value</span> column.</p><p><span style=" font-weight:600;">Cancel</span> will close this dialog without executing the query.</p></body></html> + + + + + Auto-increment + + + + + + Unique constraint + + + + + + Check constraint: %1 + + + + + + Foreign key: %1 + + + + + + Default value: %1 + + + + + + Error adding record. Message from database engine: + +%1 + + + + + Are you sure you want to restore all the entered values to their defaults? + + + + + Application + + + Possible command line arguments: + ДоÑтупні ключі командного Ñ€Ñдку: + + + + Usage: %1 [options] [<database>|<project>] + + + + + + -h, --help Show command line options + + + + + -q, --quit Exit application after running scripts + + + + + -s, --sql <file> Execute this SQL file after opening the DB + + + + + -t, --table <table> Browse this table after opening the DB + + + + + -R, --read-only Open database in read-only mode + + + + + -o, --option <group>/<setting>=<value> + + + + + Run application with this setting temporarily set to value + + + + + -O, --save-option <group>/<setting>=<value> + + + + + Run application saving this value for this setting + + + + + -v, --version Display the current version + + + + + <database> Open this SQLite database + + + + + <project> Open this project file (*.sqbpro) + + + + + The -s/--sql option requires an argument + -s/--sql Ð¾Ð¿Ñ†Ñ–Ñ Ð²Ð¸Ð¼Ð°Ð³Ð°Ñ” аргумент + + + + The -t/--table option requires an argument + -t/--table параметр таблиці вимагає аргумент + + + + The -o/--option and -O/--save-option options require an argument in the form group/setting=value + + + + + Invalid option/non-existant file: %1 + Ðевірна опціÑ/файл не Ñ–Ñнує: %1 + + + + SQLite Version + ВерÑÑ–Ñ SQLite + + + + SQLCipher Version %1 (based on SQLite %2) + + + + + DB Browser for SQLite Version %1. + + + + + Built for %1, running on %2 + + + + + Qt Version %1 + + + + + The file %1 does not exist + Файл %1 не Ñ–Ñнує + + + + CipherDialog + + + SQLCipher encryption + Ð¨Ð¸Ñ„Ñ€ÑƒÐ²Ð°Ð½Ð½Ñ SQLCipher + + + + &Password + &Пароль + + + + &Reenter password + &Пароль ще раз + + + + Encr&yption settings + + + + + SQLCipher &3 defaults + + + + + SQLCipher &4 defaults + + + + + Custo&m + + + + + Page si&ze + &Розмір Ñторінки + + + + &KDF iterations + + + + + HMAC algorithm + + + + + KDF algorithm + + + + + Plaintext Header Size + + + + + Passphrase + Парольна фраза + + + + Raw key + Ðеоброблений ключ + + + + Please set a key to encrypt the database. +Note that if you change any of the other, optional, settings you'll need to re-enter them as well every time you open the database file. +Leave the password fields empty to disable the encryption. +The encryption process might take some time and you should have a backup copy of your database! Unsaved changes are applied before modifying the encryption. + Будь лаÑка, вкажіть ключ шифруваннÑ. +Якщо Ви зміните будь-Ñке опційне налаштуваннÑ, то його доведетьÑÑ Ð²Ð²Ð¾Ð´Ð¸Ñ‚Ð¸ під Ñ‡Ð°Ñ ÐºÐ¾Ð¶Ð½Ð¾Ð³Ð¾ Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ñ†ÑŒÐ¾Ð³Ð¾ файлу бази даних. +Залиште Ð¿Ð¾Ð»Ñ Ð¿Ð°Ñ€Ð¾Ð»ÑŽ порожніми, щоб відімкнути шифруваннÑ. +ÐŸÑ€Ð¾Ñ†ÐµÑ Ð¼Ð¾Ð¶Ðµ тривати деÑкий чаÑ. РекомендуєтьÑÑ Ñтворити резервну копію перед продовженнÑм! Ð’ÑÑ– незбережені зміни збережутьÑÑ Ð°Ð²Ñ‚Ð¾Ð¼Ð°Ñ‚Ð¸Ñ‡Ð½Ð¾. + + + + Please enter the key used to encrypt the database. +If any of the other settings were altered for this database file you need to provide this information as well. + Будь лаÑка, введіть ключ Ð´Ð»Ñ ÑˆÐ¸Ñ„Ñ€ÑƒÐ²Ð°Ð½Ð½Ñ Ð±Ð°Ð·Ð¸ даних. +Якщо будь-Ñкі інші Ð½Ð°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð±ÑƒÐ»Ð¸ змінені Ð´Ð»Ñ Ñ†Ñ–Ñ”Ñ— бази даних, то потрібно надати цю інформацію також. + + + + ColumnDisplayFormatDialog + + + Choose display format + Оберіть формат показу + + + + Display format + Формат показу + + + + Choose a display format for the column '%1' which is applied to each value prior to showing it. + Оберіть формат показу Ð´Ð»Ñ ÐºÐ¾Ð»Ð¾Ð½ÐºÐ¸ '%1'. Формат заÑтоÑуєтьÑÑ Ð´Ð¾ кожного Ñ—Ñ— значеннÑм. + + + + Default + За замовчуваннÑм + + + + Decimal number + ДеÑÑткове чиÑло + + + + Exponent notation + ЕкÑпоненціальний Ð·Ð°Ð¿Ð¸Ñ + + + + Hex blob + Бінарні дані + + + + Hex number + ШіÑтнадцÑткове чиÑло + + + + Apple NSDate to date + Дата Apple NSDate + + + + Java epoch (milliseconds) to date + + + + + .NET DateTime.Ticks to date + + + + + Julian day to date + Дата за ЮліанÑьким календарем + + + + Unix epoch to local time + + + + + Date as dd/mm/yyyy + + + + + Lower case + Ðижній регіÑтр + + + + Custom display format must contain a function call applied to %1 + + + + + Error in custom display format. Message from database engine: + +%1 + + + + + Custom display format must return only one column but it returned %1. + + + + + Octal number + Ð’Ñ–Ñімкове чиÑло + + + + Round number + Округлене чиÑло + + + + Unix epoch to date + Unix-Ñ‡Ð°Ñ + + + + Upper case + Верхній регіÑтр + + + + Windows DATE to date + Windows дата + + + + Custom + Мій формат + + + + CondFormatManager + + + Conditional Format Manager + + + + + This dialog allows creating and editing conditional formats. Each cell style will be selected by the first accomplished condition for that cell data. Conditional formats can be moved up and down, where those at higher rows take precedence over those at lower. Syntax for conditions is the same as for filters and an empty condition applies to all values. + + + + + Add new conditional format + + + + + &Add + + + + + Remove selected conditional format + + + + + &Remove + + + + + Move selected conditional format up + + + + + Move &up + + + + + Move selected conditional format down + + + + + Move &down + + + + + Foreground + + + + + Text color + + + + + Background + Фон + + + + Background color + + + + + Font + Шрифт + + + + Size + Розмір + + + + Bold + Жирний + + + + Italic + КурÑив + + + + Underline + ПідкреÑÐ»ÐµÐ½Ð½Ñ + + + + Alignment + + + + + Condition + + + + + + Click to select color + + + + + Are you sure you want to clear all the conditional formats of this field? + + + + + DBBrowserDB + + + This database has already been attached. Its schema name is '%1'. + + + + + Please specify the database name under which you want to access the attached database + Будь лаÑка, вкажіть ім'Ñ Ð±Ð°Ð·Ð¸ даних, під Ñким Ви хочете отримати доÑтуп до під'єднаних баз даних + + + + Invalid file format + Ðеправильний формат файлу + + + + Do you really want to close this temporary database? All data will be lost. + + + + + Do you want to save the changes made to the database file %1? + Зберегти зроблені зміни у файлі бази даних %1? + + + + Database didn't close correctly, probably still busy + + + + + The database is currently busy: + + + + + Do you want to abort that other operation? + + + + + Exporting database to SQL file... + ЕкÑпорт бази даних у файл SQL... + + + + + Cancel + СкаÑувати + + + + + No database file opened + + + + + Executing SQL... + Виконати код SQL... + + + + Action cancelled. + Дію ÑкаÑовано. + + + + + Error in statement #%1: %2. +Aborting execution%3. + Помилка в операторі #%1: %2. +Ð’Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ ÑкаÑовано%3. + + + + + and rolling back + Ñ– відкочено + + + + didn't receive any output from %1 + + + + + could not execute command: %1 + + + + + Cannot delete this object + + + + + Cannot set data on this object + Ðе вдаєтьÑÑ Ð²Ñтановити дані в цей об'єкт + + + + + A table with the name '%1' already exists in schema '%2'. + + + + + No table with name '%1' exists in schema '%2'. + + + + + + Cannot find column %1. + + + + + Creating savepoint failed. DB says: %1 + + + + + Renaming the column failed. DB says: +%1 + + + + + + Releasing savepoint failed. DB says: %1 + + + + + Creating new table failed. DB says: %1 + + + + + Copying data to new table failed. DB says: +%1 + + + + + Deleting old table failed. DB says: %1 + + + + + Error renaming table '%1' to '%2'. +Message from database engine: +%3 + + + + + could not get list of db objects: %1 + + + + + Restoring some of the objects associated with this table failed. This is most likely because some column names changed. Here's the SQL statement which you might want to fix and execute manually: + + + Ðе вдалоÑÑ ÑкаÑувати Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ð´ÐµÑких об'єктів, аÑоційованих із цією таблицею. Ðайімовірніша причина цього - зміна імен деÑких Ñтовпців таблиці. ОÑÑŒ SQL оператор, Ñкий потрібно виправити Ñ– виконати вручну: + + + + could not get list of databases: %1 + + + + + Error loading extension: %1 + Помилка Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ: %1 + + + + could not get column information + неможливо отримати інформацію про Ñтовпець + + + + Error setting pragma %1 to %2: %3 + Помилка вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ ÐŸÑ€Ð°Ð³Ð¼Ð¸ %1 в %2: %3 + + + + File not found. + Файл не знайдено. + + + + DbStructureModel + + + Name + Ім'Ñ + + + + Object + Об'єкт + + + + Type + Тип + + + + Schema + Схема + + + + Database + + + + + Browsables + + + + + All + Ð’Ñе + + + + Temporary + + + + + Tables (%1) + Таблиці (%1) + + + + Indices (%1) + ІндекÑи (%1) + + + + Views (%1) + ПереглÑди (%1) + + + + Triggers (%1) + Тригери (%1) + + + + EditDialog + + + Edit database cell + Ð ÐµÐ´Ð°Ð³ÑƒÐ²Ð°Ð½Ð½Ñ ÐºÐ¾Ð¼Ñ–Ñ€ÐºÐ¸ бази даних + + + + Mode: + Режим: + + + + This is the list of supported modes for the cell editor. Choose a mode for viewing or editing the data of the current cell. + + + + + RTL Text + + + + + + Image + Ð—Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ + + + + JSON + + + + + XML + + + + + + Automatically adjust the editor mode to the loaded data type + + + + + This checkable button enables or disables the automatic switching of the editor mode. When a new cell is selected or new data is imported and the automatic switching is enabled, the mode adjusts to the detected data type. You can then change the editor mode manually. If you want to keep this manually switched mode while moving through the cells, switch the button off. + + + + + Auto-switch + + + + + The text editor modes let you edit plain text, as well as JSON or XML data with syntax highlighting, automatic formatting and validation before saving. + +Errors are indicated with a red squiggle underline. + + + + + This Qt editor is used for right-to-left scripts, which are not supported by the default Text editor. The presence of right-to-left characters is detected and this editor mode is automatically selected. + + + + + Open preview dialog for printing the data currently stored in the cell + + + + + Auto-format: pretty print on loading, compact on saving. + + + + + When enabled, the auto-format feature formats the data on loading, breaking the text in lines and indenting it for maximum readability. On data saving, the auto-format feature compacts the data removing end of lines, and unnecessary whitespace. + + + + + Word Wrap + + + + + Wrap lines on word boundaries + + + + + + Open in default application or browser + + + + + Open in application + + + + + The value is interpreted as a file or URL and opened in the default application or web browser. + + + + + Save file reference... + + + + + Save reference to file + + + + + + Open in external application + + + + + Autoformat + + + + + &Export... + + + + + + &Import... + + + + + + Import from file + + + + + + Opens a file dialog used to import any kind of data to this database cell. + + + + + Export to file + + + + + Opens a file dialog used to export the contents of this database cell to a file. + + + + + + Print... + + + + + Open preview dialog for printing displayed image + + + + + + Ctrl+P + + + + + Open preview dialog for printing displayed text + + + + + Copy Hex and ASCII + + + + + Copy selected hexadecimal and ASCII columns to the clipboard + + + + + Ctrl+Shift+C + + + + + Set as &NULL + ПриÑвоїти &NULL + + + + Apply data to cell + + + + + This button saves the changes performed in the cell editor to the database cell. + + + + + Apply + ЗаÑтоÑувати + + + + Text + ТекÑÑ‚ + + + + Binary + Двійкові дані + + + + Erases the contents of the cell + ÐžÑ‡Ð¸Ñ‰ÐµÐ½Ð½Ñ Ð²Ð¼Ñ–Ñту комірки + + + + This area displays information about the data present in this database cell + Ð¦Ñ Ð·Ð¾Ð½Ð° показує інформацію про дані, що Ñ” в цій комірці бази даних + + + + Type of data currently in cell + Тип даних у комірці + + + + Size of data currently in table + Розмір даних у таблиці + + + + Choose a filename to export data + Вибрати ім'Ñ Ñ„Ð°Ð¹Ð»Ñƒ Ð´Ð»Ñ ÐµÐºÑпорту даних + + + + Type of data currently in cell: %1 Image + Тип даних у комірці: %1 Ð—Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ + + + + %1x%2 pixel(s) + %1x%2 пікÑелів + + + + Type of data currently in cell: NULL + Тип даних у комірці: NULL + + + + + Type of data currently in cell: Text / Numeric + Тип даних у комірці: ТекÑÑ‚ / ЧиÑлове + + + + + Image data can't be viewed in this mode. + + + + + + Try switching to Image or Binary mode. + + + + + + Binary data can't be viewed in this mode. + + + + + + Try switching to Binary mode. + + + + + + Image files (%1) + + + + + Binary files (*.bin) + + + + + Choose a file to import + Оберіть файл Ð´Ð»Ñ Ñ–Ð¼Ð¿Ð¾Ñ€Ñ‚Ñƒ + + + + %1 Image + + + + + Invalid data for this mode + + + + + The cell contains invalid %1 data. Reason: %2. Do you really want to apply it to the cell? + + + + + + + %n character(s) + + %n Ñимвол + %n Ñимволу + %n Ñимволів + + + + + Type of data currently in cell: Valid JSON + + + + + Type of data currently in cell: Binary + Тип даних у комірці: Двійкові дані + + + + Couldn't save file: %1. + Ðеможливо зберегти файл: %1. + + + + The data has been saved to a temporary file and has been opened with the default application. You can now edit the file and, when you are ready, apply the saved new data to the cell editor or cancel any changes. + + + + + + %n byte(s) + + %n байт + %n байта + %n байтів + + + + + EditIndexDialog + + + &Name + &Ім'Ñ + + + + Order + Ð¡Ð¾Ñ€Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ + + + + &Table + &Ð¢Ð°Ð±Ð»Ð¸Ñ†Ñ + + + + Edit Index Schema + Ð ÐµÐ´Ð°Ð³ÑƒÐ²Ð°Ð½Ð½Ñ Ñ–Ð½Ð´ÐµÐºÑу Ñхеми + + + + &Unique + &Унікальний + + + + For restricting the index to only a part of the table you can specify a WHERE clause here that selects the part of the table that should be indexed + Ð”Ð»Ñ Ð¾Ð±Ð¼ÐµÐ¶ÐµÐ½Ð½Ñ Ñ–Ð½Ð´ÐµÐºÑу чаÑтиною таблиці оберіть пункт WHERE, Ñкий обере чаÑтину таблиці Ð´Ð»Ñ Ñ–Ð½Ð´ÐµÐºÑації + + + + Partial inde&x clause + ЧаÑтковий ÐºÐ»Ð°Ñ Ñ–Ð½Ð´Ðµ&кÑа + + + + Colu&mns + Стов&пці + + + + Table column + Стовпець таблиці + + + + Type + Тип + + + + Add a new expression column to the index. Expression columns contain SQL expression rather than column names. + Додати новий Ñтовпець виразу до індекÑа. Стовпці виразів міÑÑ‚Ñть SQL вирази, а не імена Ñтовпців + + + + Index column + Стовпець індекÑу + + + + Deleting the old index failed: +%1 + Ðевдале Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ñтарого індекÑу: +%1 + + + + Creating the index failed: +%1 + Ðевдале ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ñ–Ð½Ð´ÐµÐºÑу + + + + EditTableDialog + + + Edit table definition + Ð ÐµÐ´Ð°Ð³ÑƒÐ²Ð°Ð½Ð½Ñ Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ– + + + + Table + Ð¢Ð°Ð±Ð»Ð¸Ñ†Ñ + + + + Advanced + Додатково + + + + Make this a 'WITHOUT rowid' table. Setting this flag requires a field of type INTEGER with the primary key flag set and the auto increment flag unset. + Щоб Ñтворити таблицю 'WITHOUT rowid', потрібно, щоб у ній був первинний ключ INTEGER з відімкненим автоінкрементом. + + + + Without Rowid + Без ідентифікатора + + + + Fields + ÐŸÐ¾Ð»Ñ + + + + Database sche&ma + + + + + Add + + + + + Remove + + + + + Move to top + + + + + Move up + + + + + Move down + + + + + Move to bottom + + + + + + Name + Ім'Ñ + + + + + Type + Тип + + + + NN + + + + + Not null + Ðе (null) + + + + PK + ПК + + + + Primary key + Первинний ключ + + + + AI + ÐІ + + + + Autoincrement + Ðвтоінкремент + + + + U + У + + + + + + Unique + Унікальне + + + + Default + За замовчуваннÑм + + + + Default value + Ð—Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð·Ð° замовчуваннÑм + + + + + + Check + Перевірити + + + + Check constraint + Перевірити Ð¾Ð±Ð¼ÐµÐ¶ÐµÐ½Ð½Ñ + + + + Collation + + + + + + + Foreign Key + Зовнішній ключ + + + + Constraints + + + + + Add constraint + + + + + Remove constraint + + + + + Columns + Стовпці + + + + SQL + + + + + <html><head/><body><p><span style=" font-weight:600; color:#ff0000;">Warning: </span>There is something with this table definition that our parser doesn't fully understand. Modifying and saving this table might result in problems.</p></body></html> + + + + + + Primary Key + + + + + Add a primary key constraint + + + + + Add a foreign key constraint + + + + + Add a unique constraint + + + + + Add a check constraint + + + + + There already is a field with that name. Please rename it first or choose a different name for this field. + Поле з таким ім'Ñм уже Ñ–Ñнує. Будь лаÑка, переіменуйте його або виберіть інше ім'Ñ Ð´Ð»Ñ Ñ†ÑŒÐ¾Ð³Ð¾ полÑ. + + + + + There can only be one primary key for each table. Please modify the existing primary key instead. + + + + + Error creating table. Message from database engine: +%1 + Помилка ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ–. ÐŸÐ¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð²Ñ–Ð´ Ñдра бази даних: +%1 + + + + This column is referenced in a foreign key in table %1 and thus its name cannot be changed. + Ðа цей Ñтовпець поÑилаєтьÑÑ Ð·Ð¾Ð²Ð½Ñ–ÑˆÐ½Ñ–Ð¹ ключ у таблиці %1, тому Ñ—Ñ— ім'Ñ Ð½ÐµÐ¼Ð¾Ð¶Ð»Ð¸Ð²Ð¾ змінити. + + + + There is at least one row with this field set to NULL. This makes it impossible to set this flag. Please change the table data first. + ІÑнує принаймні один Ñ€Ñдок, де це поле вÑтановлено в NULL. Ð’Ñтановити цей прапорець неможливо. Спочатку змініть дані таблиці. + + + + There is at least one row with a non-integer value in this field. This makes it impossible to set the AI flag. Please change the table data first. + ІÑнує принаймні один Ñ€Ñдок, де це поле міÑтить нечиÑлове значеннÑ. Ð’Ñтановити прапорець ÐІ неможливо. Спочатку змініть дані таблиці. + + + + Column '%1' has duplicate data. + + + + + + This makes it impossible to enable the 'Unique' flag. Please remove the duplicate data, which will allow the 'Unique' flag to then be enabled. + + + + + Are you sure you want to delete the field '%1'? +All data currently stored in this field will be lost. + Ви впевнені, що хочете видалити поле '%1'? +Ð’ÑÑ– дані, Ñкі міÑÑ‚ÑтьÑÑ Ð² цьому полі, будуть втрачені. + + + + Please add a field which meets the following criteria before setting the without rowid flag: + - Primary key flag set + - Auto increment disabled + Будь лаÑка, перед вÑтановленнÑм Ð¿Ñ€Ð°Ð¿Ð¾Ñ€Ñ†Ñ Ð±ÐµÐ· rowid додайте поле, Ñке має такі критерії: +- вÑтановлено прапорець первинного ключа +- відімкнений автоінкремент + + + + ExportDataDialog + + + Export data as CSV + ЕкÑпортувати дані у форматі CSV + + + + Tab&le(s) + &Таблиці + + + + Colu&mn names in first line + &Імена Ñтовпців у першому Ñ€Ñдку + + + + Fie&ld separator + &Роздільник полів + + + + , + , + + + + ; + ; + + + + Tab + ТабулÑÑ†Ñ–Ñ + + + + | + | + + + + + + Other + Інший + + + + &Quote character + &Символ лапок + + + + " + " + + + + ' + ' + + + + New line characters + Ðовий роздільник Ñ€Ñдків + + + + Windows: CR+LF (\r\n) + Windows: CR+LF (\r\n) + + + + Unix: LF (\n) + Unix: LF (\n) + + + + Pretty print + Гарний виÑновок + + + + + Could not open output file: %1 + Ðе вдалоÑÑ Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ð¸ вихідний файл: %1 + + + + + Choose a filename to export data + Виберіть ім'Ñ Ñ„Ð°Ð¹Ð»Ñƒ Ð´Ð»Ñ ÐµÐºÑпорту даних + + + + Export data as JSON + ЕкÑпортувати дані у форматі JSON + + + + exporting CSV + + + + + exporting JSON + + + + + Please select at least 1 table. + Будь лаÑка, оберіть хоча б 1 таблицю. + + + + Choose a directory + Оберіть каталог + + + + Export completed. + ЕкÑпорт завершено. + + + + ExportSqlDialog + + + Export SQL... + ЕкÑпорт SQL... + + + + Tab&le(s) + &Таблиці + + + + Select All + Обрати вÑе + + + + Deselect All + СкаÑувати вибір + + + + &Options + &Опції + + + + Keep column names in INSERT INTO + Імена Ñтовпців у виразі INSERT INTO + + + + Multiple rows (VALUES) per INSERT statement + Кілька Ñ€Ñдків (VALUES) на INSERT вираз + + + + Export everything + ЕкÑпортувати вÑÑ– + + + + Export data only + ЕкÑпортувати тільки дані + + + + Keep old schema (CREATE TABLE IF NOT EXISTS) + Стара Ñхема (CREATE TABLE IF NOT EXISTS) + + + + Overwrite old schema (DROP TABLE, then CREATE TABLE) + ПерезапиÑати Ñтару Ñхему (DROP TABLE, тоді CREATE TABLE) + + + + Export schema only + ЕкÑпортувати тільки Ñхему даних + + + + Please select at least one table. + + + + + Choose a filename to export + Оберіть ім'Ñ Ñ„Ð°Ð¹Ð»Ñƒ Ð´Ð»Ñ ÐµÐºÑпорту + + + + Export completed. + ЕкÑпорт завершено. + + + + Export cancelled or failed. + ЕкÑпорт ÑкаÑовано або виникла помилка. + + + + ExtendedScintilla + + + + Ctrl+H + + + + + Ctrl+F + + + + + + Ctrl+P + + + + + Find... + + + + + Find and Replace... + + + + + Print... + + + + + ExtendedTableWidget + + + Use as Exact Filter + + + + + Containing + + + + + Not containing + + + + + Not equal to + + + + + Greater than + + + + + Less than + + + + + Greater or equal + + + + + Less or equal + + + + + Between this and... + + + + + Regular expression + + + + + Edit Conditional Formats... + + + + + Set to NULL + Ð’Ñтановити в NULL + + + + Copy + Копіювати + + + + Copy with Headers + + + + + Copy as SQL + + + + + Paste + Ð’Ñтавити + + + + Print... + + + + + Use in Filter Expression + + + + + Alt+Del + + + + + Ctrl+Shift+C + + + + + Ctrl+Alt+C + + + + + The content of the clipboard is bigger than the range selected. +Do you want to insert it anyway? + ВміÑÑ‚ буфера обміну більше ніж обраний діапазон. +Ð’Ñе одно вÑтавити? + + + + <p>Not all data has been loaded. <b>Do you want to load all data before selecting all the rows?</b><p><p>Answering <b>No</b> means that no more data will be loaded and the selection will not be performed.<br/>Answering <b>Yes</b> might take some time while the data is loaded but the selection will be complete.</p>Warning: Loading all the data might require a great amount of memory for big tables. + + + + + Cannot set selection to NULL. Column %1 has a NOT NULL constraint. + + + + + FileExtensionManager + + + File Extension Manager + + + + + &Up + + + + + &Down + + + + + &Add + + + + + &Remove + + + + + + Description + + + + + Extensions + + + + + *.extension + + + + + FilterLineEdit + + + Filter + Фільтр + + + + These input fields allow you to perform quick filters in the currently selected table. +By default, the rows containing the input text are filtered out. +The following operators are also supported: +% Wildcard +> Greater than +< Less than +>= Equal to or greater +<= Equal to or less += Equal to: exact match +<> Unequal: exact inverse match +x~y Range: values between x and y +/regexp/ Values matching the regular expression + + + + + Clear All Conditional Formats + + + + + Use for Conditional Format + + + + + Edit Conditional Formats... + + + + + Set Filter Expression + + + + + What's This? + + + + + Is NULL + + + + + Is not NULL + + + + + Is empty + + + + + Is not empty + + + + + Not containing... + + + + + Equal to... + + + + + Not equal to... + + + + + Greater than... + + + + + Less than... + + + + + Greater or equal... + + + + + Less or equal... + + + + + In range... + + + + + Regular expression... + + + + + FindReplaceDialog + + + Find and Replace + + + + + Fi&nd text: + + + + + Re&place with: + + + + + Match &exact case + + + + + Match &only whole words + + + + + When enabled, the search continues from the other end when it reaches one end of the page + + + + + &Wrap around + + + + + When set, the search goes backwards from cursor position, otherwise it goes forward + + + + + Search &backwards + + + + + <html><head/><body><p>When checked, the pattern to find is searched only in the current selection.</p></body></html> + + + + + &Selection only + + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + + + + + Use regular e&xpressions + + + + + Find the next occurrence from the cursor position and in the direction set by "Search backwards" + + + + + &Find Next + + + + + F3 + + + + + &Replace + + + + + Highlight all the occurrences of the text in the page + + + + + F&ind All + + + + + Replace all the occurrences of the text in the page + + + + + Replace &All + + + + + The searched text was not found + + + + + The searched text was not found. + + + + + The searched text was found one time. + + + + + The searched text was found %1 times. + + + + + The searched text was replaced one time. + + + + + The searched text was replaced %1 times. + + + + + ForeignKeyEditor + + + &Reset + &Скинути + + + + Foreign key clauses (ON UPDATE, ON DELETE etc.) + + + + + ImportCsvDialog + + + Import CSV file + Імпортувати файл у форматі CSV + + + + Table na&me + + + + + &Column names in first line + І&мена Ñтовпців у першому Ñ€Ñдку + + + + Field &separator + &Роздільник полів + + + + , + , + + + + ; + ; + + + + + Tab + ТабулÑÑ†Ñ–Ñ + + + + | + | + + + + Other + Інший + + + + &Quote character + &Символ лапок + + + + + Other (printable) + + + + + + Other (code) + + + + + " + " + + + + ' + ' + + + + &Encoding + &ÐšÐ¾Ð´ÑƒÐ²Ð°Ð½Ð½Ñ + + + + UTF-8 + UTF-8 + + + + UTF-16 + UTF-16 + + + + ISO-8859-1 + ISO-8859-1 + + + + Trim fields? + Обрізати полÑ? + + + + Separate tables + Розділити таблиці + + + + Advanced + Додатково + + + + When importing an empty value from the CSV file into an existing table with a default value for this column, that default value is inserted. Activate this option to insert an empty value instead. + + + + + Ignore default &values + + + + + Activate this option to stop the import when trying to import an empty value into a NOT NULL column without a default value. + + + + + Fail on missing values + + + + + Disable data type detection + + + + + Disable the automatic data type detection when creating a new table. + + + + + When importing into an existing table with a primary key, unique constraints or a unique index there is a chance for a conflict. This option allows you to select a strategy for that case: By default the import is aborted and rolled back but you can also choose to ignore and not import conflicting rows or to replace the existing row in the table. + + + + + Abort import + + + + + Ignore row + + + + + Replace existing row + + + + + Conflict strategy + + + + + + Deselect All + СкаÑувати вибір + + + + Match Similar + Ð¡Ð¿Ñ–Ð²Ð¿Ð°Ð´Ñ–Ð½Ð½Ñ + + + + Select All + Обрати вÑе + + + + There is already a table named '%1' and an import into an existing table is only possible if the number of columns match. + + + + + There is already a table named '%1'. Do you want to import the data into it? + + + + + Creating restore point failed: %1 + Помилка ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ñ‚Ð¾Ñ‡ÐºÐ¸ відновленнÑ: %1 + + + + Creating the table failed: %1 + Помилка ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ–: %1 + + + + importing CSV + + + + + Importing the file '%1' took %2ms. Of this %3ms were spent in the row function. + + + + + Inserting row failed: %1 + Помилка вÑтавки Ñ€Ñдка: %1 + + + + MainWindow + + + DB Browser for SQLite + ОглÑдач Ð´Ð»Ñ SQLite + + + + toolBar1 + панельІнÑтрументів1 + + + + &Remote + &Віддалений + + + + &File + &Файл + + + + &Import + &Імпорт + + + + &Export + &ЕкÑпорт + + + + &Edit + &Ð ÐµÐ´Ð°Ð³ÑƒÐ²Ð°Ð½Ð½Ñ + + + + &View + &Вид + + + + &Help + &Довідка + + + + &Tools + + + + + DB Toolbar + Панель інÑтрументів БД + + + + Edit Database &Cell + Ð ÐµÐ´Ð°Ð³ÑƒÐ²Ð°Ð½Ð½Ñ &комірки БД + + + + Error Log + + + + + This button clears the contents of the SQL logs + + + + + This panel lets you examine a log of all SQL commands issued by the application or by yourself + + + + + DB Sche&ma + Схе&ма БД + + + + + Execute SQL + This has to be equal to the tab title in all the main tabs + Виконати SQL + + + + + Execute current line + Виконати поточний Ñ€Ñдок + + + + This button executes the SQL statement present in the current editor line + + + + + Shift+F5 + + + + + Sa&ve Project + &Зберегти проект + + + + Opens the SQLCipher FAQ in a browser window + Відкрити SQLCiphier ЧаПи в браузері + + + + Export one or more table(s) to a JSON file + ЕкÑпортувати таблиці в JSON файл + + + + + Save SQL file as + Зберегти файл SQL Ñк + + + + This button saves the content of the current SQL editor tab to a file + + + + + &Browse Table + Пе&реглÑд таблиці + + + + User + КориÑтувачем + + + + Application + Додатком + + + + &Clear + О&чиÑтити + + + + &New Database... + &Ðова база даних... + + + + + Create a new database file + Створити новий файл бази даних + + + + This option is used to create a new database file. + Ð¦Ñ Ð¾Ð¿Ñ†Ñ–Ñ Ð²Ð¸ÐºÐ¾Ñ€Ð¸ÑтовуєтьÑÑ Ñ‰Ð¾Ð± Ñтворити новий файл бази даних. + + + + Ctrl+N + + + + + + &Open Database... + &Відкрити базу даних... + + + + + + + + Open an existing database file + Відкрити Ñ–Ñнуючий файл бази даних + + + + + + This option is used to open an existing database file. + Ð¦Ñ Ð¾Ð¿Ñ†Ñ–Ñ Ð²Ð¸ÐºÐ¾Ñ€Ð¸ÑтовуєтьÑÑ, щоб відкрити Ñ–Ñнуючий файл бази даних. + + + + Ctrl+O + + + + + &Close Database + &Закрити базу даних + + + + This button closes the connection to the currently open database file + + + + + + Ctrl+W + + + + + + Revert database to last saved state + Повернути базу даних до оÑтаннього збереженого Ñтану + + + + This option is used to revert the current database file to its last saved state. All changes made since the last save operation are lost. + Ð¦Ñ Ð¾Ð¿Ñ†Ñ–Ñ Ð²Ð¸ÐºÐ¾Ñ€Ð¸ÑтовуєтьÑÑ, щоб повернути поточний файл бази даних до його оÑтаннього збереженого Ñтану. Ð’ÑÑ– зміни, зроблені з оÑтанньої операції збереженнÑ, буде втрачено. + + + + + Write changes to the database file + ЗапиÑати зміни у файл бази даних + + + + This option is used to save changes to the database file. + Ð¦Ñ Ð¾Ð¿Ñ†Ñ–Ñ Ð²Ð¸ÐºÐ¾Ñ€Ð¸ÑтовуєтьÑÑ, щоб зберегти зміни у файлі бази даних. + + + + Ctrl+S + + + + + Compact &Database... + + + + + Compact the database file, removing space wasted by deleted records + Ущільнити базу даних, видаливши проÑтір, зайнÑтий видаленими запиÑами + + + + + Compact the database file, removing space wasted by deleted records. + Ущільнити базу даних, видаливши проÑтір, зайнÑтий видаленими запиÑами. + + + + E&xit + &Вихід + + + + Ctrl+Q + + + + + Import data from an .sql dump text file into a new or existing database. + Імпортувати дані з текÑтового файлу .sql в нову або Ñ–Ñнуючу базу даних. + + + + This option lets you import data from an .sql dump text file into a new or existing database. SQL dump files can be created on most database engines, including MySQL and PostgreSQL. + Ð¦Ñ Ð¾Ð¿Ñ†Ñ–Ñ Ð´Ð°Ñ” змогу імпортувати дані з текÑтового файлу .sql у нову або Ñ–Ñнуючу базу даних. Файл SQL можна Ñтворити на більшоÑті двигунів баз даних, включно з MySQL Ñ– PostgreSQL. + + + + Open a wizard that lets you import data from a comma separated text file into a database table. + Відкрити майÑтер, Ñкий дає змогу імпортувати дані з файлу CSV у таблицю бази даних. + + + + Open a wizard that lets you import data from a comma separated text file into a database table. CSV files can be created on most database and spreadsheet applications. + Відкрити майÑтер, Ñкий дає змогу імпортувати дані з файлу CSV у таблицю бази даних. Файли CSV можна Ñтворити в більшоÑті програм баз даних Ñ– електронних таблиць. + + + + Export a database to a .sql dump text file. + ЕкÑпортувати базу даних у текÑтовий файл .sql. + + + + This option lets you export a database to a .sql dump text file. SQL dump files contain all data necessary to recreate the database on most database engines, including MySQL and PostgreSQL. + Ð¦Ñ Ð¾Ð¿Ñ†Ñ–Ñ Ð´Ð°Ñ” змогу екÑпортувати базу даних у текÑтовий файл .sql. Файли SQL міÑÑ‚Ñть вÑÑ– дані, необхідні Ð´Ð»Ñ ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð±Ð°Ð·Ð¸ даних у більшоÑті движків баз даних, включно з MySQL Ñ– PostgreSQL. + + + + &Table(s) as CSV file... + Таблиці у файл CSV... + + + + Export a database table as a comma separated text file. + ЕкÑпортувати таблицю бази даних Ñк CSV текÑтовий файл. + + + + Export a database table as a comma separated text file, ready to be imported into other database or spreadsheet applications. + ЕкÑпортувати таблицю бази даних Ñк CSV текÑтовий файл, готовий Ð´Ð»Ñ Ñ–Ð¼Ð¿Ð¾Ñ€Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð² інші бази даних або програми електронних таблиць. + + + + Open the Create Table wizard, where it is possible to define the name and fields for a new table in the database + Відкрити майÑтер ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†ÑŒ, де можливо визначити ім'Ñ Ñ– Ð¿Ð¾Ð»Ñ Ð´Ð»Ñ Ð½Ð¾Ð²Ð¾Ñ— таблиці в базі даних + + + + Open the Delete Table wizard, where you can select a database table to be dropped. + Відкрити майÑтер Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ–, де можна вибрати таблицю бази даних Ð´Ð»Ñ Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ. + + + + Open the Modify Table wizard, where it is possible to rename an existing table. It is also possible to add or delete fields form a table, as well as modify field names and types. + Відкрити майÑтер зміни таблиці, де можливо перейменувати Ñ–Ñнуючу таблиць. Можна додати або видалити Ð¿Ð¾Ð»Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ–, так Ñамо змінювати імена полів Ñ– типи. + + + + Open the Create Index wizard, where it is possible to define a new index on an existing database table. + Відкрити майÑтер ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð†Ð½Ð´ÐµÐºÑу, в Ñкому можна визначити новий Ñ–Ð½Ð´ÐµÐºÑ Ð´Ð»Ñ Ñ–Ñнуючої таблиці бази даних. + + + + &Preferences... + &ÐалаштуваннÑ... + + + + + Open the preferences window. + Відкрити вікно налаштувань. + + + + &DB Toolbar + &Панель інÑтрументів БД + + + + Shows or hides the Database toolbar. + Показати або приховати панель інÑтрументів БД. + + + + Shift+F1 + + + + + Execute all/selected SQL + + + + + This button executes the currently selected SQL statements. If no text is selected, all SQL statements are executed. + + + + + Open SQL file(s) + + + + + This button opens files containing SQL statements and loads them in new editor tabs + + + + + Execute line + + + + + &Wiki + + + + + F1 + + + + + Bug &Report... + + + + + Feature Re&quest... + + + + + Web&site + + + + + &Donate on Patreon... + + + + + &Attach Database... + + + + + + Add another database file to the current database connection + + + + + This button lets you add another database file to the current database connection + + + + + &Set Encryption... + + + + + SQLCipher &FAQ + + + + + Table(&s) to JSON... + + + + + Open Data&base Read Only... + + + + + Ctrl+Shift+O + + + + + Save results + + + + + Save the results view + + + + + This button lets you save the results of the last executed query + + + + + + Find text in SQL editor + + + + + Find + + + + + This button opens the search bar of the editor + + + + + Ctrl+F + + + + + + Find or replace text in SQL editor + + + + + Find or replace + + + + + This button opens the find/replace dialog for the current editor tab + + + + + Ctrl+H + + + + + Export to &CSV + ЕкÑпортувати в &CSV + + + + Save as &view + Зберегти Ñк &виглÑд + + + + Save as view + Зберегти Ñк виглÑд + + + + Browse Table + + + + + Shows or hides the Project toolbar. + + + + + This button lets you save all the settings associated to the open DB to a DB Browser for SQLite project file + + + + + This button lets you open a DB Browser for SQLite project file + + + + + Extra DB Toolbar + + + + + New In-&Memory Database + + + + + Drag && Drop Qualified Names + + + + + + Use qualified names (e.g. "Table"."Field") when dragging the objects and dropping them into the editor + + + + + Drag && Drop Enquoted Names + + + + + + Use escaped identifiers (e.g. "Table1") when dragging the objects and dropping them into the editor + + + + + &Integrity Check + + + + + Runs the integrity_check pragma over the opened database and returns the results in the Execute SQL tab. This pragma does an integrity check of the entire database. + + + + + &Foreign-Key Check + + + + + Runs the foreign_key_check pragma over the opened database and returns the results in the Execute SQL tab + + + + + &Quick Integrity Check + + + + + Run a quick integrity check over the open DB + + + + + Runs the quick_check pragma over the opened database and returns the results in the Execute SQL tab. This command does most of the checking of PRAGMA integrity_check but runs much faster. + + + + + &Optimize + + + + + Attempt to optimize the database + + + + + Runs the optimize pragma over the opened database. This pragma might perform optimizations that will improve the performance of future queries. + + + + + + Print + + + + + Print text from current SQL editor tab + + + + + Open a dialog for printing the text in the current SQL editor tab + + + + + Print the structure of the opened database + + + + + Open a dialog for printing the structure of the opened database + + + + + &Save Project As... + + + + + + + Save the project in a file selected in a dialog + + + + + Save A&ll + + + + + + + Save DB file, project file and opened SQL files + + + + + Ctrl+Shift+S + + + + + &Recently opened + &Ðедавно відкриті + + + + Open &tab + Відкрити &вкладку + + + + Open an existing database file in read only mode + Відкрити Ñ–Ñнуючий файл БД у режимі тільки Ð´Ð»Ñ Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ + + + + Ctrl+T + + + + + + Database Structure + This has to be equal to the tab title in all the main tabs + Структура БД + + + + This is the structure of the opened database. +You can drag SQL statements from an object row and drop them into other applications or into another instance of 'DB Browser for SQLite'. + + + + + + + Browse Data + This has to be equal to the tab title in all the main tabs + ПереглÑнути дані + + + + Un/comment block of SQL code + + + + + Un/comment block + + + + + Comment or uncomment current line or selected block of code + + + + + Comment or uncomment the selected lines or the current line, when there is no selection. All the block is toggled according to the first line. + + + + + Ctrl+/ + + + + + Stop SQL execution + + + + + Stop execution + + + + + Stop the currently running SQL script + + + + + + Edit Pragmas + This has to be equal to the tab title in all the main tabs + Редагувати прагму + + + + Warning: this pragma is not readable and this value has been inferred. Writing the pragma might overwrite a redefined LIKE provided by an SQLite extension. + + + + + SQL &Log + &Журнал SQL + + + + Show S&QL submitted by + По&казати SQL, Ñкий виконано + + + + &Plot + &Графік + + + + This is the structure of the opened database. +You can drag multiple object names from the Name column and drop them into the SQL editor and you can adjust the properties of the dropped names using the context menu. This would help you in composing SQL statements. +You can drag SQL statements from the Schema column and drop them into the SQL editor or into other applications. + + + + + + + Project Toolbar + + + + + Extra DB toolbar + + + + + + + Close the current database file + + + + + Ctrl+F4 + + + + + &Revert Changes + &СкаÑувати зміни + + + + &Write Changes + &ЗапиÑати зміни + + + + &Database from SQL file... + &База даних з файлу SQL... + + + + &Table from CSV file... + &Таблиці з файлу CSV... + + + + &Database to SQL file... + Базу &даних в файл SQL... + + + + &Create Table... + &Створити таблицю... + + + + &Delete Table... + &Видалити таблицю... + + + + &Modify Table... + &Змінити таблицю... + + + + Create &Index... + Створити Ñ–&ндекÑ... + + + + W&hat's This? + Що &це таке? + + + + &About + + + + + This button opens a new tab for the SQL editor + + + + + &Execute SQL + Ви&конати код SQL + + + + + + Save SQL file + Зберегти файл SQL + + + + &Load Extension... + + + + + Ctrl+E + + + + + Export as CSV file + ЕкÑпортувати у файл CSV + + + + Export table as comma separated values file + ЕкÑпортувати таблицю Ñк CSV файл + + + + + Save the current session to a file + Зберегти поточний Ñтан у файл + + + + Open &Project... + + + + + + Load a working session from a file + Завантажити робочий Ñтан із файлу + + + + Copy Create statement + Копіювати CREATE вираз + + + + Copy the CREATE statement of the item to the clipboard + Копіювати CREATE вираз елемента в буффер обміну + + + + Ctrl+Return + + + + + Ctrl+L + + + + + + Ctrl+P + + + + + Ctrl+D + + + + + Ctrl+I + + + + + Encrypted + Зашифрований + + + + Read only + Тільки Ð´Ð»Ñ Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ + + + + Database file is read only. Editing the database is disabled. + База даних тільки Ð´Ð»Ñ Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ. Ð ÐµÐ´Ð°Ð³ÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð°Ð±Ð¾Ñ€Ð¾Ð½ÐµÐ½Ðµ. + + + + Database encoding + ÐšÐ¾Ð´ÑƒÐ²Ð°Ð½Ð½Ñ Ð±Ð°Ð·Ð¸ даних + + + + Database is encrypted using SQLCipher + База даних зашифрована з викориÑтаннÑм SQLCipher + + + + + Choose a database file + Вибрати файл бази даних + + + + Could not open database file. +Reason: %1 + Ðеможливо відкрити файл бази даних. +Причина: %1 + + + + + + Choose a filename to save under + Вибрати ім'Ñ, під Ñким зберегти дані + + + + A new DB Browser for SQLite version is available (%1.%2.%3).<br/><br/>Please download at <a href='%4'>%4</a>. + Вийшла нова верÑÑ–Ñ Ð¾Ð³Ð»Ñдача Ð´Ð»Ñ SQLite (%1.%2.%3).<br/><br/>Вона доÑтупна Ð´Ð»Ñ ÑÐºÐ°Ñ‡ÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð° поÑиланнÑм <a href='%4'>%4</a>. + + + + DB Browser for SQLite project file (*.sqbpro) + Файл проекту оглÑдача Ð´Ð»Ñ SQLite (*.sqbpro) + + + + Are you sure you want to undo all changes made to the database file '%1' since the last save? + СкаÑувати вÑÑ– зміни, зроблені у файлі бази даних '%1' піÑÐ»Ñ Ð¾Ñтаннього збереженнÑ? + + + + Choose a file to import + Оберіть файл Ð´Ð»Ñ Ñ–Ð¼Ð¿Ð¾Ñ€Ñ‚Ñƒ + + + + Do you want to create a new database file to hold the imported data? +If you answer no we will attempt to import the data in the SQL file to the current database. + Створити новий файл бази даних Ð´Ð»Ñ Ð·Ð±ÐµÑ€ÐµÐ¶ÐµÐ½Ð½Ñ Ñ–Ð¼Ð¿Ð¾Ñ€Ñ‚Ð¾Ð²Ð°Ð½Ð¸Ñ… даних? +Якщо відповідь ÐÑ–, то здійÑнитьÑÑ Ñпроба імпортувати дані файлу SQL в поточну базу даних. + + + + File %1 already exists. Please choose a different name. + Файл %1 вже Ñ–Ñнує. Оберіть інше ім'Ñ. + + + + Error importing data: %1 + Помилка Ñ–Ð¼Ð¿Ð¾Ñ€Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ…: %1 + + + + Import completed. + Імпорт завершено. + + + + Delete View + Видалити переглÑд + + + + Delete Trigger + Видалити тригер + + + + Delete Index + Видалити Ñ–Ð½Ð´ÐµÐºÑ + + + + Reset Window Layout + + + + + Alt+0 + + + + + Simplify Window Layout + + + + + Shift+Alt+0 + + + + + Dock Windows at Bottom + + + + + Dock Windows at Left Side + + + + + Dock Windows at Top + + + + + The database is currenctly busy. + + + + + Click here to interrupt the currently running query. + + + + + In-Memory database + + + + + Do you want to save the changes made to the project file '%1'? + + + + + Are you sure you want to delete the table '%1'? +All data associated with the table will be lost. + + + + + Are you sure you want to delete the view '%1'? + + + + + Are you sure you want to delete the trigger '%1'? + + + + + Are you sure you want to delete the index '%1'? + + + + + Error: could not delete the table. + + + + + Error: could not delete the view. + + + + + Error: could not delete the trigger. + + + + + Error: could not delete the index. + + + + + Message from database engine: +%1 + + + + + Editing the table requires to save all pending changes now. +Are you sure you want to save the database? + + + + + Error checking foreign keys after table modification. The changes will be reverted. + + + + + This table did not pass a foreign-key check.<br/>You should run 'Tools | Foreign-Key Check' and fix the reported issues. + + + + + Edit View %1 + + + + + Edit Trigger %1 + + + + + You are already executing SQL statements. Do you want to stop them in order to execute the current statements instead? Note that this might leave the database in an inconsistent state. + + + + + -- EXECUTING SELECTION IN '%1' +-- + + + + + -- EXECUTING LINE IN '%1' +-- + + + + + -- EXECUTING ALL IN '%1' +-- + + + + + + At line %1: + + + + + Result: %1 + + + + + Result: %2 + + + + + Execution finished with errors. + + + + + Execution finished without errors. + + + + + Opened '%1' in read-only mode from recent file list + + + + + Opened '%1' from recent file list + + + + + &%1 %2%3 + &%1 %2%3 + + + + (read only) + + + + + Open Database or Project + + + + + Attach Database... + + + + + Import CSV file(s)... + + + + + Select the action to apply to the dropped file(s). <br/>Note: only 'Import' will process more than one file. + + + + + + + + + Do you want to save the changes made to SQL tabs in the project file '%1'? + + + + + Project saved to file '%1' + + + + + This action will open a new SQL tab with the following statements for you to edit and run: + + + + + Busy (%1) + + + + + Rename Tab + + + + + Duplicate Tab + + + + + Close Tab + + + + + Opening '%1'... + + + + + There was an error opening '%1'... + + + + + Value is not a valid URL or filename: %1 + + + + + %1 rows returned in %2ms + + + + + Window Layout + + + + + You are still executing SQL statements. Closing the database now will stop their execution, possibly leaving the database in an inconsistent state. Are you sure you want to close the database? + + + + + Import completed. Some foreign key constraints are violated. Please fix them before saving. + + + + + Do you want to save the changes made to SQL tabs in a new project file? + + + + + Do you want to save the changes made to the SQL file %1? + + + + + The statements in this tab are still executing. Closing the tab will stop the execution. This might leave the database in an inconsistent state. Are you sure you want to close the tab? + + + + + Could not find resource file: %1 + + + + + Choose a project file to open + + + + + This project file is using an old file format because it was created using DB Browser for SQLite version 3.10 or lower. Loading this file format is still fully supported but we advice you to convert all your project files to the new file format because support for older formats might be dropped at some point in the future. You can convert your files by simply opening and re-saving them. + + + + + Could not open project file for writing. +Reason: %1 + + + + + Collation needed! Proceed? + Потрібно виконати зіÑтавленнÑ! Продовжити? + + + + A table in this database requires a special collation function '%1' that this application can't provide without further knowledge. +If you choose to proceed, be aware bad things can happen to your database. +Create a backup! + Ð¢Ð°Ð±Ð»Ð¸Ñ†Ñ Ð² базі даних вимагає Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ñпеціальної функції зіÑÑ‚Ð°Ð²Ð»ÐµÐ½Ð½Ñ '%1'. +Якщо Ви продовжите, то можливе пÑÑƒÐ²Ð°Ð½Ð½Ñ Ð’Ð°ÑˆÐ¾Ñ— бази даних. +Створіть резервну копію! + + + + creating collation + + + + + Set a new name for the SQL tab. Use the '&&' character to allow using the following character as a keyboard shortcut. + + + + + Please specify the view name + Вкажіть ім'Ñ Ð²Ð¸Ð³Ð»Ñду + + + + There is already an object with that name. Please choose a different name. + Об'єкт із зазначеним ім'Ñм уже Ñ–Ñнує. Виберіть інше ім'Ñ. + + + + View successfully created. + ВиглÑд уÑпішно Ñтворений. + + + + Error creating view: %1 + Помилка ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð²Ð¸Ð³Ð»Ñду: %1 + + + + This action will open a new SQL tab for running: + + + + + Press Help for opening the corresponding SQLite reference page. + + + + + + Delete Table + Видалити таблицю + + + + Setting PRAGMA values will commit your current transaction. +Are you sure? + Ð’ÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð·Ð½Ð°Ñ‡ÐµÐ½ÑŒ PRAGMA завершить поточну транзакцію. Ð’Ñтановити значеннÑ? + + + + Setting PRAGMA values or vacuuming will commit your current transaction. +Are you sure? + + + + + Choose text files + Оберіть текÑтові файли + + + + Error while saving the database file. This means that not all changes to the database were saved. You need to resolve the following error first. + +%1 + Помилка під Ñ‡Ð°Ñ Ð·Ð±ÐµÑ€ÐµÐ¶ÐµÐ½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñƒ бази даних. Це означає, що не вÑÑ– зміни в базу даних було збережено. Спочатку Вам необхідно розв'Ñзати таку помилку. + +%1 + + + + Text files(*.sql *.txt);;All files(*) + ТекÑтові файли(*.sql *.txt);;Ð’ÑÑ– файли(*) + + + + Modify View + Змінити вид + + + + Modify Trigger + Змінити тригер + + + + Modify Index + Змінити Ñ–Ð½Ð´ÐµÐºÑ + + + + Modify Table + Змінити таблицю + + + + Select SQL file to open + Обрати файл SQL Ð´Ð»Ñ Ð²Ñ–Ð´ÐºÑ€Ð¸Ð²Ð°Ð½Ð½Ñ + + + + Select file name + Обрати ім'Ñ Ñ„Ð°Ð¹Ð»Ñƒ + + + + Select extension file + Обрати Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñƒ + + + + Extension successfully loaded. + Ð Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ ÑƒÑпішно завантажено. + + + + Error loading extension: %1 + Помилка Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ: %1 + + + + + Don't show again + Ðе показувати наÑтупного разу + + + + New version available. + ДоÑтупна нова верÑÑ–Ñ. + + + + NullLineEdit + + + Set to NULL + Ð’Ñтановити в NULL + + + + Alt+Del + + + + + PlotDock + + + Plot + Графік + + + + <html><head/><body><p>This pane shows the list of columns of the currently browsed table or the just executed query. You can select the columns that you want to be used as X or Y axis for the plot pane below. The table shows detected axis type that will affect the resulting plot. For the Y axis you can only select numeric columns, but for the X axis you will be able to select:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Date/Time</span>: strings with format &quot;yyyy-MM-dd hh:mm:ss&quot; or &quot;yyyy-MM-ddThh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Date</span>: strings with format &quot;yyyy-MM-dd&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Time</span>: strings with format &quot;hh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Label</span>: other string formats. Selecting this column as X axis will produce a Bars plot with the column values as labels for the bars</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Numeric</span>: integer or real values</li></ul><p>Double-clicking the Y cells you can change the used color for that graph.</p></body></html> + + + + + Columns + Стовпці + + + + X + X + + + + Y1 + + + + + Y2 + + + + + Axis Type + + + + + Here is a plot drawn when you select the x and y values above. + +Click on points to select them in the plot and in the table. Ctrl+Click for selecting a range of points. + +Use mouse-wheel for zooming and mouse drag for changing the axis range. + +Select the axes or axes labels to drag and zoom only in that orientation. + + + + + Line type: + Тип лінії: + + + + + None + ÐÑ– + + + + Line + Звичайна + + + + StepLeft + Ступенева, зліва + + + + StepRight + Ступенева, Ñправа + + + + StepCenter + Ступенева, по центру + + + + Impulse + Ð†Ð¼Ð¿ÑƒÐ»ÑŒÑ + + + + Point shape: + Форма точок: + + + + Cross + ХреÑÑ‚ + + + + Plus + ÐŸÐ»ÑŽÑ + + + + Circle + Коло + + + + Disc + ДиÑк + + + + Square + Квадрат + + + + Diamond + Ромб + + + + Star + Зірка + + + + Triangle + Трикутник + + + + TriangleInverted + Трикутник перевернутий + + + + CrossSquare + ХреÑÑ‚ у квадраті + + + + PlusSquare + ÐŸÐ»ÑŽÑ Ñƒ квадраті + + + + CrossCircle + ХреÑÑ‚ у колі + + + + PlusCircle + ÐŸÐ»ÑŽÑ Ñƒ колі + + + + Peace + Світ + + + + <html><head/><body><p>Save current plot...</p><p>File format chosen by extension (png, jpg, pdf, bmp)</p></body></html> + <html><head/><body><p>Зберегти поточний графік...</p><p>Формат файлу вибираєтьÑÑ Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñм (png, jpg, pdf, bmp)</p></body></html> + + + + Save current plot... + Зберегти поточний графік... + + + + + Load all data and redraw plot + + + + + + + Row # + РÑдок # + + + + Copy + Копіювати + + + + Print... + + + + + Show legend + + + + + Stacked bars + + + + + Date/Time + + + + + Date + + + + + Time + + + + + + Numeric + + + + + Label + + + + + Invalid + + + + + Load all data and redraw plot. +Warning: not all data has been fetched from the table yet due to the partial fetch mechanism. + + + + + Choose an axis color + + + + + Choose a filename to save under + Вибрати ім'Ñ, під Ñким зберегти дані + + + + PNG(*.png);;JPG(*.jpg);;PDF(*.pdf);;BMP(*.bmp);;All Files(*) + PNG(*.png);;JPG(*.jpg);;PDF(*.pdf);;BMP(*.bmp);;Ð’ÑÑ– файли(*) + + + + There are curves in this plot and the selected line style can only be applied to graphs sorted by X. Either sort the table or query by X to remove curves or select one of the styles supported by curves: None or Line. + + + + + Loading all remaining data for this table took %1ms. + + + + + PreferencesDialog + + + Preferences + ÐÐ°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ + + + + &Database + &База даних + + + + Database &encoding + &ÐšÐ¾Ð´ÑƒÐ²Ð°Ð½Ð½Ñ Ð±Ð°Ð·Ð¸ даних + + + + Open databases with foreign keys enabled. + Відкривати бази даних з увімкненими зовнішніми ключами. + + + + &Foreign keys + &Зовнішні ключі + + + + + + + + + + + + enabled + увімкнені + + + + Default &location + &Ð Ð¾Ð·Ñ‚Ð°ÑˆÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð° замовчуваннÑм + + + + + + ... + ... + + + + &General + &Загальні + + + + Remember last location + Запам'Ñтовувати оÑтанню директорію + + + + Always use this location + Завжди відкривати це Ñ€Ð¾Ð·Ñ‚Ð°ÑˆÑƒÐ²Ð°Ð½Ð½Ñ + + + + Remember last location for session only + Запам'Ñтовувати оÑтанню директорію тільки Ð´Ð»Ñ ÑеÑÑ–Ñ— + + + + Lan&guage + &Мова + + + + Toolbar style + + + + + + + + + Only display the icon + + + + + + + + + Only display the text + + + + + + + + + The text appears beside the icon + + + + + + + + + The text appears under the icon + + + + + + + + + Follow the style + + + + + Automatic &updates + &Стежити за оновленнÑми + + + + DB file extensions + + + + + Manage + + + + + SQ&L to execute after opening database + SQ&L,Ñкий треба Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ð¿Ñ–ÑÐ»Ñ Ð²Ñ–Ð´ÐºÑ€Ð¸Ð²Ð°Ð½Ð½Ñ Ð±Ð°Ð·Ð¸ даних + + + + Data &Browser + ОглÑдач &даних + + + + Remove line breaks in schema &view + Видалити розрив Ñ€Ñдка в &Ñхемі даних + + + + Show remote options + Показати віддалені опції + + + + Prefetch block si&ze + Розмір блоку &вибірки + + + + Default field type + Тип даних за замовчуваннÑм + + + + Font + Шрифт + + + + &Font + &Шрифт + + + + Content + ВміÑÑ‚ + + + + Symbol limit in cell + КількіÑть Ñимволів у оÑередку + + + + NULL + NULL + + + + Regular + Звичайні + + + + Binary + Двійкові дані + + + + Background + Фон + + + + Filters + Фільтри + + + + Threshold for completion and calculation on selection + + + + + Show images in cell + + + + + Enable this option to show a preview of BLOBs containing image data in the cells. This can affect the performance of the data browser, however. + + + + + Escape character + Символ ÐµÐºÑ€Ð°Ð½ÑƒÐ²Ð°Ð½Ð½Ñ + + + + Delay time (&ms) + Ð§Ð°Ñ Ð·Ð°Ñ‚Ñ€Ð¸Ð¼ÐºÐ¸ (&мÑ) + + + + Set the waiting time before a new filter value is applied. Can be set to 0 for disabling waiting. + Ð§Ð°Ñ Ð·Ð°Ñ‚Ñ€Ð¸Ð¼ÐºÐ¸ перед заÑтоÑуваннÑм нового фільтра. Ðульове Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð¿Ñ€Ð¸Ð¿Ð¸Ð½ÑÑ” очікуваннÑ. + + + + &SQL + Р&едактор SQL + + + + Settings name + Ім'Ñ Ð½Ð°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½ÑŒ + + + + Context + КонтекÑÑ‚ + + + + Colour + Колір + + + + Bold + Жирний + + + + Italic + КурÑив + + + + Underline + ПідкреÑÐ»ÐµÐ½Ð½Ñ + + + + Keyword + Ключове Ñлово + + + + Function + Ð¤ÑƒÐ½ÐºÑ†Ñ–Ñ + + + + Table + Ð¢Ð°Ð±Ð»Ð¸Ñ†Ñ + + + + Comment + Коментар + + + + Identifier + Ідентифікатор + + + + String + РÑдок + + + + Current line + Поточна Ñ€Ñдок + + + + SQL &editor font size + Розмір шрифту в &редакторі SQL + + + + Tab size + Розмір табулÑції + + + + SQL editor &font + &Шрифт у редакторі SQL + + + + Error indicators + Індикатори помилок + + + + Hori&zontal tiling + Гори&зонтальний розподіл + + + + If enabled the SQL code editor and the result table view are shown side by side instead of one over the other. + Якщо Ñ†Ñ Ð¾Ð¿Ñ†Ñ–Ñ ÑƒÐ²Ñ–Ð¼ÐºÐ½ÐµÐ½Ð°, то SQL редактор Ñ– результат запиту будуть розташовані поруч по горизонталі. + + + + Code co&mpletion + Ðвто&Ð´Ð¾Ð¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ ÐºÐ¾Ð´Ñƒ + + + + Main Window + + + + + Database Structure + Структура БД + + + + Browse Data + ПереглÑнути дані + + + + Execute SQL + Виконати SQL + + + + Edit Database Cell + Ð ÐµÐ´Ð°Ð³ÑƒÐ²Ð°Ð½Ð½Ñ ÐºÐ¾Ð¼Ñ–Ñ€ÐºÐ¸ БД + + + + When this value is changed, all the other color preferences are also set to matching colors. + + + + + Follow the desktop style + + + + + Dark style + + + + + Application style + + + + + This sets the font size for all UI elements which do not have their own font size option. + + + + + Font size + + + + + When enabled, the line breaks in the Schema column of the DB Structure tab, dock and printed output are removed. + + + + + Database structure font size + + + + + Font si&ze + + + + + This is the maximum number of items allowed for some computationally expensive functionalities to be enabled: +Maximum number of rows in a table for enabling the value completion based on current values in the column. +Maximum number of indexes in a selection for calculating sum and average. +Can be set to 0 for disabling the functionalities. + + + + + This is the maximum number of rows in a table for enabling the value completion based on current values in the column. +Can be set to 0 for disabling completion. + + + + + Field display + + + + + Displayed &text + + + + + + + + + + Click to set this color + + + + + Text color + + + + + Background color + + + + + Preview only (N/A) + + + + + Foreground + + + + + SQL &results font size + + + + + &Wrap lines + + + + + Never + + + + + At word boundaries + + + + + At character boundaries + + + + + At whitespace boundaries + + + + + &Quotes for identifiers + + + + + Choose the quoting mechanism used by the application for identifiers in SQL code. + + + + + "Double quotes" - Standard SQL (recommended) + + + + + `Grave accents` - Traditional MySQL quotes + + + + + [Square brackets] - Traditional MS SQL Server quotes + + + + + Keywords in &UPPER CASE + + + + + When set, the SQL keywords are completed in UPPER CASE letters. + + + + + When set, the SQL code lines that caused errors during the last execution are highlighted and the results frame indicates the error in the background + + + + + Close button on tabs + + + + + If enabled, SQL editor tabs will have a close button. In any case, you can use the contextual menu or the keyboard shortcut to close them. + + + + + &Extensions + Р&Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ + + + + Select extensions to load for every database: + Оберіть розширеннÑ, щоб завантажувати Ñ—Ñ… Ð´Ð»Ñ ÐºÐ¾Ð¶Ð½Ð¾Ñ— бази даних: + + + + Add extension + Додати Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ + + + + Remove extension + Видалити Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ + + + + <html><head/><body><p>While supporting the REGEXP operator SQLite doesn't implement any regular expression<br/>algorithm but calls back the running application. DB Browser for SQLite implements this<br/>algorithm for you to let you use REGEXP out of the box. However, as there are multiple possible<br/>implementations of this and you might want to use another one, you're free to disable the<br/>application's implementation and load your own by using an extension. Requires restart of the application.</p></body></html> + <html><head/><body><p>ОглÑдач Ð´Ð»Ñ SQLite дає змогу викориÑтовувати оператор REGEXP 'з коробки'. Ðле попри<br/>це, можливі кілька різних варіантів реалізацій цього оператора й Ви вільні<br/>у виборі, Ñкий Ñаме викориÑтовувати. Можна відімкнути нашу реалізацію та викориÑтовувати іншу -<br/>шлÑхом Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð²Ñ–Ð´Ð¿Ð¾Ð²Ñ–Ð´Ð½Ð¾Ð³Ð¾ розширеннÑ. Ð’ цьому випадку потрібно перезавантажити програму.</p></body></html> + + + + <html><head/><body><p>SQLite provides an SQL function for loading extensions from a shared library file. Activate this if you want to use the <span style=" font-style:italic;">load_extension()</span> function from SQL code.</p><p>For security reasons, extension loading is turned off by default and must be enabled through this setting. You can always load extensions through the GUI, even though this option is disabled.</p></body></html> + + + + + Allow loading extensions from SQL code + + + + + Clone databases into + Клонувати бази даних до + + + + Proxy + + + + + Configure + + + + + Disable Regular Expression extension + Відімкнути Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ Ð ÐµÐ³ÑƒÐ»Ñрних Виразів + + + + Remote + Віддалений Ñервер + + + + CA certificates + СÐ-Ñертифікати + + + + + Subject CN + Об'єкт CN + + + + Common Name + Звичайне ім'Ñ + + + + Subject O + Об'єкт O + + + + Organization + ÐžÑ€Ð³Ð°Ð½Ñ–Ð·Ð°Ñ†Ñ–Ñ + + + + + Valid from + ДійÑний з + + + + + Valid to + ДійÑний до + + + + + Serial number + Серійний номер + + + + Your certificates + Ваш Ñертифікат + + + + File + Файл + + + + Subject Common Name + Звичайне ім'Ñ Ð¾Ð±'єкта + + + + Issuer CN + РозповÑюдник CN + + + + Issuer Common Name + Звичайне ім'Ñ Ñ€Ð¾Ð·Ð¿Ð¾Ð²Ñюдника + + + + + Choose a directory + Оберіть каталог + + + + The language will change after you restart the application. + Мова змінитьÑÑ Ð¿Ñ–ÑÐ»Ñ Ð¿ÐµÑ€ÐµÐ·Ð°Ð¿ÑƒÑку програми. + + + + Select extension file + Обираємо файл Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ + + + + Extensions(*.so *.dylib *.dll);;All files(*) + + + + + Import certificate file + Імпортувати файл Ñертифіката + + + + No certificates found in this file. + Ð”Ð»Ñ Ñ†ÑŒÐ¾Ð³Ð¾ файлу не знайдено Ñертифікатів. + + + + Are you sure you want do remove this certificate? All certificate data will be deleted from the application settings! + Ви впевнені, що хочете видалити цей Ñертифікат? Ð’ÑÑ– дані Ñертифіката видалÑтьÑÑ Ð· налаштувань програми! + + + + Are you sure you want to clear all the saved settings? +All your preferences will be lost and default values will be used. + + + + + ProxyDialog + + + Proxy Configuration + + + + + Pro&xy Type + + + + + Host Na&me + + + + + Port + + + + + Authentication Re&quired + + + + + &User Name + + + + + Password + + + + + None + ÐÑ– + + + + System settings + + + + + HTTP + + + + + Socks v5 + + + + + QObject + + + Error importing data + Помилка Ñ–Ð¼Ð¿Ð¾Ñ€Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ… + + + + from record number %1 + з запиÑу номер %1 + + + + . +%1 + . +%1 + + + + Importing CSV file... + + + + + Cancel + СкаÑувати + + + + All files (*) + + + + + SQLite database files (*.db *.sqlite *.sqlite3 *.db3) + + + + + Left + + + + + Right + + + + + Center + + + + + Justify + + + + + SQLite Database Files (*.db *.sqlite *.sqlite3 *.db3) + + + + + DB Browser for SQLite Project Files (*.sqbpro) + + + + + SQL Files (*.sql) + + + + + All Files (*) + + + + + Text Files (*.txt) + + + + + Comma-Separated Values Files (*.csv) + + + + + Tab-Separated Values Files (*.tsv) + + + + + Delimiter-Separated Values Files (*.dsv) + + + + + Concordance DAT files (*.dat) + + + + + JSON Files (*.json *.js) + + + + + XML Files (*.xml) + + + + + Binary Files (*.bin *.dat) + + + + + SVG Files (*.svg) + + + + + Hex Dump Files (*.dat *.bin) + + + + + Extensions (*.so *.dylib *.dll) + + + + + RemoteCommitsModel + + + Commit ID + + + + + Message + + + + + Date + + + + + Author + + + + + Size + Розмір + + + + Authored and committed by %1 + + + + + Authored by %1, committed by %2 + + + + + RemoteDatabase + + + Error opening local databases list. +%1 + Помилка Ð²Ñ–Ð´ÐºÑ€Ð¸Ð²Ð°Ð½Ð½Ñ ÑпиÑку локальних баз даних. +%1 + + + + Error creating local databases list. +%1 + Помилка ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ ÑпиÑку локальних баз даних. +%1 + + + + RemoteDock + + + Remote + Віддалений + + + + Local + Локальний + + + + Identity + Ідентичний + + + + Push currently opened database to server + + + + + DBHub.io + + + + + <html><head/><body><p>In this pane, remote databases from dbhub.io website can be added to DB Browser for SQLite. First you need an identity:</p><ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Login to the dbhub.io website (use your GitHub credentials or whatever you want)</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Click the button to &quot;Generate client certificate&quot; (that's your identity). That'll give you a certificate file (save it to your local disk).</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Go to the Remote tab in DB Browser for SQLite Preferences. Click the button to add a new certificate to DB Browser for SQLite and choose the just downloaded certificate file.</li></ol><p>Now the Remote panel shows your identity and you can add remote databases.</p></body></html> + + + + + Current Database + + + + + Clone + + + + + User + КориÑтувачем + + + + Database + + + + + Branch + + + + + Commits + + + + + Commits for + + + + + <html><head/><body><p>You are currently using a built-in, read-only identity. For uploading your database, you need to configure and use your DBHub.io account.</p><p>No DBHub.io account yet? <a href="https://dbhub.io/"><span style=" text-decoration: underline; color:#007af4;">Create one now</span></a> and import your certificate <a href="#preferences"><span style=" text-decoration: underline; color:#007af4;">here</span></a> to share your databases.</p><p>For online help visit <a href="https://dbhub.io/about"><span style=" text-decoration: underline; color:#007af4;">here</span></a>.</p></body></html> + + + + + Back + + + + + Delete Database + + + + + Delete the local clone of this database + + + + + Open in Web Browser + + + + + Open the web page for the current database in your browser + + + + + Clone from Link + + + + + Use this to download a remote database for local editing using a URL as provided on the web page of the database. + + + + + Refresh + Оновити + + + + Reload all data and update the views + + + + + F5 + + + + + Clone Database + + + + + Open Database + + + + + Open the local copy of this database + + + + + Check out Commit + + + + + Download and open this specific commit + + + + + Check out Latest Commit + + + + + Check out the latest commit of the current branch + + + + + Save Revision to File + + + + + Saves the selected revision of the database to another file + + + + + Upload Database + + + + + Upload this database as a new commit + + + + + Select an identity to connect + + + + + Public + + + + + This downloads a database from a remote server for local editing. +Please enter the URL to clone from. You can generate this URL by +clicking the 'Clone Database in DB4S' button on the web page +of the database. + + + + + Invalid URL: The host name does not match the host name of the current identity. + + + + + Invalid URL: No branch name specified. + + + + + Invalid URL: No commit ID specified. + + + + + You have modified the local clone of the database. Fetching this commit overrides these local changes. +Are you sure you want to proceed? + + + + + The database has unsaved changes. Are you sure you want to push it before saving? + + + + + The database you are trying to delete is currently opened. Please close it before deleting. + + + + + This deletes the local version of this database with all the changes you have not committed yet. Are you sure you want to delete this database? + + + + + RemoteLocalFilesModel + + + Name + Ім'Ñ + + + + Branch + + + + + Last modified + ВоÑтаннє змінений + + + + Size + Розмір + + + + Commit + + + + + File + + + + + RemoteModel + + + Name + Ім'Ñ + + + + Last modified + ВоÑтаннє змінений + + + + Size + Розмір + + + + Commit + + + + + Size: + + + + + Last Modified: + + + + + Licence: + + + + + Default Branch: + + + + + RemoteNetwork + + + Choose a location to save the file + + + + + Error opening remote file at %1. +%2 + Помилка під Ñ‡Ð°Ñ Ð²Ñ–Ð´ÐºÑ€Ð¸Ð²Ð°Ð½Ð½Ñ Ð²Ñ–Ð´Ð´Ð°Ð»ÐµÐ½Ð¾Ð³Ð¾ файлу %1. +%2 + + + + Error: Invalid client certificate specified. + Помилка: Вказано неправильний Ñертифікат клієнта. + + + + Please enter the passphrase for this client certificate in order to authenticate. + Будь лаÑка, введіть парольну фразу Ð´Ð»Ñ Ñ†ÑŒÐ¾Ð³Ð¾ Ñертифіката клієнта, Ð´Ð»Ñ Ð°Ð²Ñ‚ÐµÐ½Ñ‚Ð¸Ñ„Ñ–ÐºÐ°Ñ†Ñ–Ñ— + + + + Cancel + + + + + Uploading remote database to +%1 + Ð’Ð¸Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð²Ñ–Ð´Ð´Ð°Ð»ÐµÐ½Ð¾Ñ— бази даних до +%1. {1?} + + + + Downloading remote database from +%1 + Ð—Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð²Ñ–Ð´Ð´Ð°Ð»ÐµÐ½Ð¾Ñ— бази даних із +%1. {1?} + + + + + Error: The network is not accessible. + Помилка: Мережа не доÑтупна. + + + + Error: Cannot open the file for sending. + Помилка: Ðеможливо відкрити файл Ð´Ð»Ñ Ð²Ñ–Ð´Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ. + + + + RemotePushDialog + + + Push database + + + + + Database na&me to push to + + + + + Commit message + + + + + Database licence + + + + + Public + + + + + Branch + + + + + Force push + + + + + Username + + + + + Database will be public. Everyone has read access to it. + + + + + Database will be private. Only you have access to it. + + + + + Use with care. This can cause remote commits to be deleted. + + + + + RunSql + + + Execution aborted by user + Ð’Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ ÑкаÑовано кориÑтувачем + + + + , %1 rows affected + , %1 Ñ€Ñдків поÑтраждало + + + + query executed successfully. Took %1ms%2 + + + + + executing query + + + + + SelectItemsPopup + + + A&vailable + + + + + Sele&cted + + + + + SqlExecutionArea + + + Form + Форма + + + + Find previous match [Shift+F3] + + + + + Find previous match with wrapping + + + + + Shift+F3 + + + + + The found pattern must be a whole word + + + + + Whole Words + + + + + Text pattern to find considering the checks in this frame + + + + + Find in editor + + + + + The found pattern must match in letter case + + + + + Case Sensitive + + + + + Find next match [Enter, F3] + + + + + Find next match with wrapping + + + + + F3 + + + + + Interpret search pattern as a regular expression + + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + + + + + Regular Expression + + + + + + Close Find Bar + + + + + <html><head/><body><p>Results of the last executed statements.</p><p>You may want to collapse this panel and use the <span style=" font-style:italic;">SQL Log</span> dock with <span style=" font-style:italic;">User</span> selection instead.</p></body></html> + + + + + Results of the last executed statements + Результати оÑтанніх виконаних операторів + + + + This field shows the results and status codes of the last executed statements. + Це поле показує результати та коди ÑтатуÑів оÑтанніх виконаних операторів. + + + + Couldn't read file: %1. + Ðеможливо прочитати файл: %1. + + + + + Couldn't save file: %1. + Ðеможливо зберегти файл: %1. + + + + Your changes will be lost when reloading it! + + + + + The file "%1" was modified by another program. Do you want to reload it?%2 + + + + + SqlTextEdit + + + Ctrl+/ + + + + + SqlUiLexer + + + (X) The abs(X) function returns the absolute value of the numeric argument X. + (X) Ð¤ÑƒÐ½ÐºÑ†Ñ–Ñ abs(X) повертає модуль чиÑла аргументу X. + + + + () The changes() function returns the number of database rows that were changed or inserted or deleted by the most recently completed INSERT, DELETE, or UPDATE statement. + () Ð¤ÑƒÐ½ÐºÑ†Ñ–Ñ changes() повертає кількіÑть Ñ€Ñдків у базі даних, Ñкі було змінено, вÑтавлено або видалено піÑÐ»Ñ Ð²Ð´Ð°Ð»Ð¾Ð³Ð¾ Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ INSERT, DELETE або UPDATE. + + + + (X,Y,...) The coalesce() function returns a copy of its first non-NULL argument, or NULL if all arguments are NULL + (X,Y,...) Ð¤ÑƒÐ½ÐºÑ†Ñ–Ñ coalesce() повертає копію першого аргументу не-NULL, Ñкщо такого немає, то повертає NULL + + + + (X,Y) The ifnull() function returns a copy of its first non-NULL argument, or NULL if both arguments are NULL. + (X,Y) Ð¤ÑƒÐ½ÐºÑ†Ñ–Ñ ifnull() повертає копію першого аргументу не-NULL, або Ñкщо обидва аргумента NULL, то повертає NULL. + + + + (X,Y) The instr(X,Y) function finds the first occurrence of string Y within string X and returns the number of prior characters plus 1, or 0 if Y is nowhere found within X. + (X,Y) Ð¤ÑƒÐ½ÐºÑ†Ñ–Ñ instr(X,Y) повертає кількіÑть Ñимволів, починаючи з Ñкого в Ñ€Ñдку X знайдено підрÑдок Y, або 0, Ñкщо такого не знайдено. + + + + (X) The hex() function interprets its argument as a BLOB and returns a string which is the upper-case hexadecimal rendering of the content of that blob. + (X) Ð¤ÑƒÐ½ÐºÑ†Ñ–Ñ hex() інтерпретує аргумент Ñк BLOB Ñ– повертає Ñ€Ñдок в 16-ричній ÑиÑтемі чиÑÐ»ÐµÐ½Ð½Ñ Ñ–Ð· вміÑтом аргументу. + + + + () The last_insert_rowid() function returns the ROWID of the last row insert from the database connection which invoked the function. + () Ð¤ÑƒÐ½ÐºÑ†Ñ–Ñ last_insert_rowid() повертає ROWID оÑтаннього вÑтавленого Ñ€Ñдка. + + + + (X) For a string value X, the length(X) function returns the number of characters (not bytes) in X prior to the first NUL character. + (X) Ð”Ð»Ñ Ñтрокового Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ X, Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ length(X) повертає кількіÑть Ñимволів (ÐЕ байтів) від початку Ñ€Ñдка до першого Ñимволу '\0'. + + + + (X,Y) The like() function is used to implement the "Y LIKE X" expression. + (X,Y) Ñ„ÑƒÐºÐ½Ñ†Ñ–Ñ like() еквівалентна виразу "Y LIKE X". + + + + (X,Y,Z) The like() function is used to implement the "Y LIKE X ESCAPE Z" expression. + (X,Y,Z) Ð¤ÑƒÐ½ÐºÑ†Ñ–Ñ like() еквівалент Ð²Ð¸Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ "Y LIKE X ESCAPE Z". + + + + (X) The lower(X) function returns a copy of string X with all ASCII characters converted to lower case. + (X) Ð¤ÑƒÐ½ÐºÑ†Ñ–Ñ lower(X) повертає копію Ñ€Ñдка X, в Ñкій уÑÑ– ACSII Ñимволи переведені в нижній регіÑтр. + + + + (X) ltrim(X) removes spaces from the left side of X. + (X) ltrim(X) видалÑÑ” Ñимволи пробілів зліва Ð´Ð»Ñ Ñ€Ñдка X. + + + + (X1,X2,...) The char(X1,X2,...,XN) function returns a string composed of characters having the unicode code point values of integers X1 through XN, respectively. + (X1,X2,...) Ð¤ÑƒÐ½ÐºÑ†Ñ–Ñ char(X1,X2,...,XN) повертає Ñ€Ñдок, Ñкладений із Ñимволів, переданих Ñк аргументи. + + + + (X,Y) The glob(X,Y) function is equivalent to the expression "Y GLOB X". + (X,Y) Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ glob(X,Y) еквівалент Ð²Ð¸Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ "Y GLOB X". + + + + (X) The load_extension(X) function loads SQLite extensions out of the shared library file named X. +Use of this function must be authorized from Preferences. + + + + + (X,Y) The load_extension(X) function loads SQLite extensions out of the shared library file named X using the entry point Y. +Use of this function must be authorized from Preferences. + + + + + (X,Y) The ltrim(X,Y) function returns a string formed by removing any and all characters that appear in Y from the left side of X. + (X,Y) Ð¤ÑƒÐ½ÐºÑ†Ñ–Ñ ltrim (X,Y) повертає новий Ñ€Ñдок шлÑхом Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ð· Ñ€Ñдка X зліва будь-Ñкого Ñимволу з Y. + + + + (X,Y,...) The multi-argument max() function returns the argument with the maximum value, or return NULL if any argument is NULL. + (X,Y,...) Ð¤ÑƒÐ½ÐºÑ†Ñ–Ñ max() повертає аргумент з макÑимальним значеннÑм, або NULL, Ñкщо хоча б один аргумент дорівнює NULL. + + + + (X,Y,...) The multi-argument min() function returns the argument with the minimum value. + (X,Y,...) Ð¤ÑƒÐ½ÐºÑ†Ñ–Ñ min() повертає аргумент з мінімальним значеннÑм. + + + + (X,Y) The nullif(X,Y) function returns its first argument if the arguments are different and NULL if the arguments are the same. + (X,Y) Ð¤ÑƒÐ½ÐºÑ†Ñ–Ñ nullif(X,Y) повертає перший аргумент, Ñкщо аргументи різні, або NULL, Ñкщо вони однакові. + + + + (FORMAT,...) The printf(FORMAT,...) SQL function works like the sqlite3_mprintf() C-language function and the printf() function from the standard C library. + (FORMAT,...) Ð¤ÑƒÐ½ÐºÑ†Ñ–Ñ printf(FORMAT,...) працює так Ñамо, Ñк printf() зі Ñтандартної бібліотеки мови Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ Ð¡Ñ–. + + + + (X) The quote(X) function returns the text of an SQL literal which is the value of its argument suitable for inclusion into an SQL statement. + (X) Ð¤ÑƒÐ½ÐºÑ†Ñ–Ñ quote(X) повертає змінений Ñ€Ñдок X, Ñкий можна викориÑтовувати в SQL виразах. + + + + () The random() function returns a pseudo-random integer between -9223372036854775808 and +9223372036854775807. + () Ð¤ÑƒÐ½ÐºÑ†Ñ–Ñ random() повертає пÑевдовипадкове цілочиÑельне Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð· діапозона від -9223372036854775808 до +9223372036854775807. + + + + (N) The randomblob(N) function return an N-byte blob containing pseudo-random bytes. + (N) Ð¤ÑƒÐ½ÐºÑ†Ñ–Ñ randomblob(N) повертає N-байтний BLOB, що міÑтить пÑевдовипадкові байти. + + + + (X,Y,Z) The replace(X,Y,Z) function returns a string formed by substituting string Z for every occurrence of string Y in string X. + (X,Y,Z) Ð¤ÑƒÐ½ÐºÑ†Ñ–Ñ replace(X,Y,Z) повертає новий Ñ€Ñдок на оÑнові Ñ€Ñдка X, заміною вÑÑ–Ñ… підрÑдків Y на Z. + + + + (X) The round(X) function returns a floating-point value X rounded to zero digits to the right of the decimal point. + (X) Ð¤ÑƒÐ½ÐºÑ†Ñ–Ñ round(X) округлює X до цілого значеннÑ. + + + + (X,Y) The round(X,Y) function returns a floating-point value X rounded to Y digits to the right of the decimal point. + (X,Y) Ð¤ÑƒÐ½ÐºÑ†Ñ–Ñ round(X,Y) округлює X до Y чиÑел піÑÐ»Ñ ÐºÐ¾Ð¼Ð¸ праворуч. + + + + (X) rtrim(X) removes spaces from the right side of X. + (X) rtrim(X) видалÑÑ” Ñимволи пробілу праворуч від Ñ€Ñдка X. + + + + (X,Y) The rtrim(X,Y) function returns a string formed by removing any and all characters that appear in Y from the right side of X. + (X,Y) Ð¤ÑƒÐ½ÐºÑ†Ñ–Ñ rtrim(X,Y) повертає новий Ñ€Ñдок шлÑхом Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ð· Ñ€Ñдка X праворуч будь-Ñкого Ñимволу з Ñ€Ñдка Y. + + + + + + + (timestring,modifier,modifier,...) + (timestring,modifier,modifier,...) + + + + (format,timestring,modifier,modifier,...) + (format,timestring,modifier,modifier,...) + + + + () The number of the row within the current partition. Rows are numbered starting from 1 in the order defined by the ORDER BY clause in the window definition, or in arbitrary order otherwise. + + + + + () The row_number() of the first peer in each group - the rank of the current row with gaps. If there is no ORDER BY clause, then all rows are considered peers and this function always returns 1. + + + + + () The number of the current row's peer group within its partition - the rank of the current row without gaps. Partitions are numbered starting from 1 in the order defined by the ORDER BY clause in the window definition. If there is no ORDER BY clause, then all rows are considered peers and this function always returns 1. + + + + + () Despite the name, this function always returns a value between 0.0 and 1.0 equal to (rank - 1)/(partition-rows - 1), where rank is the value returned by built-in window function rank() and partition-rows is the total number of rows in the partition. If the partition contains only one row, this function returns 0.0. + + + + + () The cumulative distribution. Calculated as row-number/partition-rows, where row-number is the value returned by row_number() for the last peer in the group and partition-rows the number of rows in the partition. + + + + + (N) Argument N is handled as an integer. This function divides the partition into N groups as evenly as possible and assigns an integer between 1 and N to each group, in the order defined by the ORDER BY clause, or in arbitrary order otherwise. If necessary, larger groups occur first. This function returns the integer value assigned to the group that the current row is a part of. + + + + + (expr) Returns the result of evaluating expression expr against the previous row in the partition. Or, if there is no previous row (because the current row is the first), NULL. + + + + + (expr,offset) If the offset argument is provided, then it must be a non-negative integer. In this case the value returned is the result of evaluating expr against the row offset rows before the current row within the partition. If offset is 0, then expr is evaluated against the current row. If there is no row offset rows before the current row, NULL is returned. + + + + + + (expr,offset,default) If default is also provided, then it is returned instead of NULL if the row identified by offset does not exist. + + + + + (expr) Returns the result of evaluating expression expr against the next row in the partition. Or, if there is no next row (because the current row is the last), NULL. + + + + + (expr,offset) If the offset argument is provided, then it must be a non-negative integer. In this case the value returned is the result of evaluating expr against the row offset rows after the current row within the partition. If offset is 0, then expr is evaluated against the current row. If there is no row offset rows after the current row, NULL is returned. + + + + + (expr) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the first row in the window frame for each row. + + + + + (expr) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the last row in the window frame for each row. + + + + + (expr,N) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the row N of the window frame. Rows are numbered within the window frame starting from 1 in the order defined by the ORDER BY clause if one is present, or in arbitrary order otherwise. If there is no Nth row in the partition, then NULL is returned. + + + + + (X) The soundex(X) function returns a string that is the soundex encoding of the string X. + (X) Ð¤ÑƒÐ½ÐºÑ†Ñ–Ñ soundex(X) повертає копію Ñ€Ñдка X, кодовану в форматі soundex. + + + + (X,Y) substr(X,Y) returns all characters through the end of the string X beginning with the Y-th. + (X,Y) substr(X,Y) повертає підрÑдок з Ñ€Ñдка X, починаючи з Y-го Ñимволу. + + + + (X,Y,Z) The substr(X,Y,Z) function returns a substring of input string X that begins with the Y-th character and which is Z characters long. + (X,Y,Z) Ð¤ÑƒÐ½ÐºÑ†Ñ–Ñ substr(X,Y,Z) повертає підрÑдок з Ñ€Ñдка X, починаючи з Y-го Ñимволу, завдовжки Z-Ñимволів. + + + + () The total_changes() function returns the number of row changes caused by INSERT, UPDATE or DELETE statements since the current database connection was opened. + () Ð¤ÑƒÐ½ÐºÑ†Ñ–Ñ total_changes() повертає кількіÑть Ñ€Ñдків, змінених за допомогою INSERT, UPDATE або DELETE, починаючи з того моменту, коли під'Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð´Ð¾ бази даних було відкрито. + + + + (X) trim(X) removes spaces from both ends of X. + (X) trim(X) видалÑÑ” пробіли з обох Ñторін Ñ€Ñдка X. + + + + (X,Y) The trim(X,Y) function returns a string formed by removing any and all characters that appear in Y from both ends of X. + (X,Y) Ð¤ÑƒÐ½ÐºÑ†Ñ–Ñ trim(X,Y) Ñтворює новий Ñ€Ñдок з X шлÑхом Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ð· обох кінців Ñимволів, Ñкі приÑутні в Ñ€Ñдку Y. + + + + (X) The typeof(X) function returns a string that indicates the datatype of the expression X. + (X) Ð¤ÑƒÐ½ÐºÑ†Ñ–Ñ typeof(X) повертає Ñ€Ñдок із типом даних Ð²Ð¸Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ X. + + + + (X) The unicode(X) function returns the numeric unicode code point corresponding to the first character of the string X. + (X) Ð¤ÑƒÐ½ÐºÑ†Ñ–Ñ unicode(X) повертає чиÑлове Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ UNICODE коду Ñимволу. + + + + (X) The upper(X) function returns a copy of input string X in which all lower-case ASCII characters are converted to their upper-case equivalent. + (X) Ð¤ÑƒÐ½ÐºÑ†Ñ–Ñ upper(X) повертає копію Ñ€Ñдка X, в Ñкій Ð´Ð»Ñ ÐºÐ¾Ð¶Ð½Ð¾Ð³Ð¾ ASCII Ñимволу регіÑтр буде перетворений з нижнього у верхній. + + + + (N) The zeroblob(N) function returns a BLOB consisting of N bytes of 0x00. + (N) Ð¤ÑƒÐ½ÐºÑ†Ñ–Ñ zeroblob(N) повертає BLOB розміром N байт зі значеннÑми 0x00. + + + + (X) The avg() function returns the average value of all non-NULL X within a group. + (X) Ð¤ÑƒÐ½ÐºÑ†Ñ–Ñ avg() повертає Ñереднє Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð´Ð»Ñ Ð²ÑÑ–Ñ… не-NULL значень групи. + + + + (X) The count(X) function returns a count of the number of times that X is not NULL in a group. + (X) Ð¤ÑƒÐ½ÐºÑ†Ñ–Ñ count(X) повертає кількіÑть Ñ€Ñдків, у Ñких X не-NULL у групі. + + + + (X) The group_concat() function returns a string which is the concatenation of all non-NULL values of X. + (X) Ð¤ÑƒÐ½ÐºÑ†Ñ–Ñ group_concat() повертає Ñ€Ñдок з уÑÑ–Ñ… значень X не-NULL. + + + + (X,Y) The group_concat() function returns a string which is the concatenation of all non-NULL values of X. If parameter Y is present then it is used as the separator between instances of X. + (X,Y) Ð¤ÑƒÐ½ÐºÑ†Ñ–Ñ group_concat() повертає Ñ€Ñдок з уÑÑ–Ñ… значень X не-NULL. Y - роздільник між значеннÑми X. + + + + (X) The max() aggregate function returns the maximum value of all values in the group. + (X) Ðгрегатна Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ max() повертає макÑимальне Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð´Ð»Ñ X. + + + + (X) The min() aggregate function returns the minimum non-NULL value of all values in the group. + (X) Ðгрегатна Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ min() повертає мінімальне не-NULL Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð´Ð»Ñ X. + + + + + (X) The sum() and total() aggregate functions return sum of all non-NULL values in the group. + (X) Ðгрегатні функції sum() Ñ– total() повертають Ñуму вÑÑ–Ñ… не-NULL значень Ð´Ð»Ñ X. + + + + SqliteTableModel + + + reading rows + + + + + loading... + + + + + References %1(%2) +Hold %3Shift and click to jump there + + + + + Error changing data: +%1 + Помилка зміни даних: +%1 + + + + retrieving list of columns + + + + + Fetching data... + + + + + + Cancel + + + + + TableBrowser + + + Browse Data + ПереглÑнути дані + + + + &Table: + &ТаблицÑ: + + + + Select a table to browse data + Оберіть таблицю Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐ³Ð»Ñду даних + + + + Use this list to select a table to be displayed in the database view + ВикориÑтовуйте цей ÑпиÑок, щоб вибрати таблицю, Ñку буде показано в переглÑдачі баз даних + + + + This is the database table view. You can do the following actions: + - Start writing for editing inline the value. + - Double-click any record to edit its contents in the cell editor window. + - Alt+Del for deleting the cell content to NULL. + - Ctrl+" for duplicating the current record. + - Ctrl+' for copying the value from the cell above. + - Standard selection and copy/paste operations. + + + + + Text pattern to find considering the checks in this frame + + + + + Find in table + + + + + Find previous match [Shift+F3] + + + + + Find previous match with wrapping + + + + + Shift+F3 + + + + + Find next match [Enter, F3] + + + + + Find next match with wrapping + + + + + F3 + + + + + The found pattern must match in letter case + + + + + Case Sensitive + + + + + The found pattern must be a whole word + + + + + Whole Cell + + + + + Interpret search pattern as a regular expression + + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + + + + + Regular Expression + + + + + + Close Find Bar + + + + + Text to replace with + + + + + Replace with + + + + + Replace next match + + + + + + Replace + + + + + Replace all matches + + + + + Replace all + + + + + <html><head/><body><p>Scroll to the beginning</p></body></html> + <html><head/><body><p>Прокрутити на початок</p></body></html> + + + + <html><head/><body><p>Clicking this button navigates to the beginning in the table view above.</p></body></html> + <html><head/><body><p>ÐатиÑÐºÐ°Ð½Ð½Ñ Ñ†Ñ–Ñ”Ñ— кнопки переміщує до початку таблиці.</p></body></html> + + + + |< + |< + + + + Scroll one page upwards + + + + + <html><head/><body><p>Clicking this button navigates one page of records upwards in the table view above.</p></body></html> + + + + + < + < + + + + 0 - 0 of 0 + 0 - 0 з 0 + + + + Scroll one page downwards + + + + + <html><head/><body><p>Clicking this button navigates one page of records downwards in the table view above.</p></body></html> + + + + + > + > + + + + Scroll to the end + Прокрутити до ÐºÑ–Ð½Ñ†Ñ + + + + <html><head/><body><p>Clicking this button navigates up to the end in the table view above.</p></body></html> + + + + + >| + >| + + + + <html><head/><body><p>Click here to jump to the specified record</p></body></html> + <html><head/><body><p>ÐатиÑніть тут, щоб перейти до зазначеного запиÑу</p></body></html> + + + + <html><head/><body><p>This button is used to navigate to the record number specified in the Go to area.</p></body></html> + <html><head/><body><p>Ð¦Ñ ÐºÐ½Ð¾Ð¿ÐºÐ° викориÑтовуєтьÑÑ, щоб переміÑтитиÑÑ Ð´Ð¾ запиÑу, номер Ñкого зазначений в зоні Перейти до </p></body></html> + + + + Go to: + Перейти до: + + + + Enter record number to browse + Введіть номер запиÑу Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐ³Ð»Ñду + + + + Type a record number in this area and click the Go to: button to display the record in the database view + Ðадрукуйте номер запиÑу в цій зоні й натиÑніть кнопку Перейти до:, щоб показати Ð·Ð°Ð¿Ð¸Ñ Ñƒ базі даних + + + + 1 + 1 + + + + Show rowid column + Показати Ñтовпець rowid + + + + Toggle the visibility of the rowid column + Змінити видиміÑть ÑÑ‚Ð¾Ð²Ð¿Ñ†Ñ rowid + + + + Unlock view editing + Розблокувати Ñ€ÐµÐ´Ð°Ð³ÑƒÐ²Ð°Ð½Ð½Ñ Ð²Ð¸Ð³Ð»Ñду + + + + This unlocks the current view for editing. However, you will need appropriate triggers for editing. + Це розблоковує поточний виглÑд Ð´Ð»Ñ Ñ€ÐµÐ´Ð°Ð³ÑƒÐ²Ð°Ð½Ð½Ñ. Проте вам необхідно виділити тригери Ð´Ð»Ñ Ñ€ÐµÐ´Ð°Ð³ÑƒÐ²Ð°Ð½Ð½Ñ + + + + Edit display format + Формат показу + + + + Edit the display format of the data in this column + Ð ÐµÐ´Ð°Ð³ÑƒÐ²Ð°Ð½Ð½Ñ Ñ„Ð¾Ñ€Ð¼Ð°Ñ‚Ñƒ показу Ð´Ð»Ñ Ð´Ð°Ð½Ð¸Ñ… у цьому Ñтовпці + + + + + New Record + Додати Ð·Ð°Ð¿Ð¸Ñ + + + + + Insert a new record in the current table + Додати новий Ð·Ð°Ð¿Ð¸Ñ Ñƒ поточну таблицю + + + + <html><head/><body><p>This button creates a new record in the database. Hold the mouse button to open a pop-up menu of different options:</p><ul><li><span style=" font-weight:600;">New Record</span>: insert a new record with default values in the database.</li><li><span style=" font-weight:600;">Insert Values...</span>: open a dialog for entering values before they are inserted in the database. This allows to enter values acomplishing the different constraints. This dialog is also open if the <span style=" font-weight:600;">New Record</span> option fails due to these constraints.</li></ul></body></html> + + + + + + Delete Record + Видалити Ð·Ð°Ð¿Ð¸Ñ + + + + Delete the current record + Видалити поточний Ð·Ð°Ð¿Ð¸Ñ + + + + + This button deletes the record or records currently selected in the table + + + + + + Insert new record using default values in browsed table + + + + + Insert Values... + + + + + + Open a dialog for inserting values in a new record + + + + + Export to &CSV + ЕкÑпортувати в &CSV + + + + + Export the filtered data to CSV + + + + + This button exports the data of the browsed table as currently displayed (after filters, display formats and order column) as a CSV file. + + + + + Save as &view + Зберегти Ñк &виглÑд + + + + + Save the current filter, sort column and display formats as a view + + + + + This button saves the current setting of the browsed table (filters, display formats and order column) as an SQL view that you can later browse or use in SQL statements. + + + + + Save Table As... + + + + + + Save the table as currently displayed + + + + + <html><head/><body><p>This popup menu provides the following options applying to the currently browsed and filtered table:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Export to CSV: this option exports the data of the browsed table as currently displayed (after filters, display formats and order column) to a CSV file.</li><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Save as view: this option saves the current setting of the browsed table (filters, display formats and order column) as an SQL view that you can later browse or use in SQL statements.</li></ul></body></html> + + + + + Hide column(s) + + + + + Hide selected column(s) + + + + + Show all columns + + + + + Show all columns that were hidden + + + + + + Set encoding + ÐšÐ¾Ð´ÑƒÐ²Ð°Ð½Ð½Ñ + + + + Change the encoding of the text in the table cells + Змінити ÐºÐ¾Ð´ÑƒÐ²Ð°Ð½Ð½Ñ Ñ‚ÐµÐºÑту в цій комірці таблиці + + + + Set encoding for all tables + Ð’Ñтановити ÐºÐ¾Ð´ÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð»Ñ Ð²ÑÑ–Ñ… таблиць + + + + Change the default encoding assumed for all tables in the database + Змінити ÐºÐ¾Ð´ÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð° замовчуваннÑм Ð´Ð»Ñ Ð²ÑÑ–Ñ… таблиць у базі даних + + + + Clear Filters + + + + + Clear all filters + ОчиÑтити вÑÑ– фільтри + + + + + This button clears all the filters set in the header input fields for the currently browsed table. + + + + + Clear Sorting + + + + + Reset the order of rows to the default + + + + + + This button clears the sorting columns specified for the currently browsed table and returns to the default order. + + + + + Print + + + + + Print currently browsed table data + + + + + Print currently browsed table data. Print selection if more than one cell is selected. + + + + + Ctrl+P + + + + + Refresh + Оновити + + + + Refresh the data in the selected table + + + + + This button refreshes the data in the currently selected table. + Ð¦Ñ ÐºÐ½Ð¾Ð¿ÐºÐ° оновлює дані обраної на цей момент таблиці. + + + + F5 + + + + + Find in cells + + + + + Open the find tool bar which allows you to search for values in the table view below. + + + + + + Bold + Жирний + + + + Ctrl+B + + + + + + Italic + КурÑив + + + + + Underline + ПідкреÑÐ»ÐµÐ½Ð½Ñ + + + + Ctrl+U + + + + + + Align Right + + + + + + Align Left + + + + + + Center Horizontally + + + + + + Justify + + + + + + Edit Conditional Formats... + + + + + Edit conditional formats for the current column + + + + + Clear Format + + + + + Clear All Formats + + + + + + Clear all cell formatting from selected cells and all conditional formats from selected columns + + + + + + Font Color + + + + + + Background Color + + + + + Toggle Format Toolbar + + + + + Show/hide format toolbar + + + + + + This button shows or hides the formatting toolbar of the Data Browser + + + + + Select column + + + + + Ctrl+Space + + + + + Replace text in cells + + + + + Filter in any column + + + + + Ctrl+R + + + + + %n row(s) + + + + + + + + + , %n column(s) + + + + + + + + + . Sum: %1; Average: %2; Min: %3; Max: %4 + + + + + Conditional formats for "%1" + + + + + determining row count... + + + + + %1 - %2 of >= %3 + + + + + %1 - %2 of %3 + %1 - %2 з %3 + + + + Please enter a pseudo-primary key in order to enable editing on this view. This should be the name of a unique column in the view. + Будь лаÑка, введіть пÑевдо-первинний ключ Ð´Ð»Ñ Ð¼Ð¾Ð¶Ð»Ð¸Ð²Ð¾Ñті Ñ€ÐµÐ´Ð°Ð³ÑƒÐ²Ð°Ð½Ð½Ñ Ñƒ цьому виді. Це має бути Ñ–'Ð¼Ñ ÑƒÐ½Ñ–ÐºÐ°Ð»ÑŒÐ½Ð¾Ð³Ð¾ ÑÑ‚Ð¾Ð²Ð¿Ñ†Ñ Ñƒ виді + + + + Delete Records + + + + + Duplicate records + + + + + Duplicate record + Дублікат запиÑу + + + + Ctrl+" + + + + + Adjust rows to contents + + + + + Error deleting record: +%1 + Помилка Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ð·Ð°Ð¿Ð¸Ñу: +%1 + + + + Please select a record first + Будь лаÑка, Ñпочатку оберіть Ð·Ð°Ð¿Ð¸Ñ + + + + There is no filter set for this table. View will not be created. + + + + + Please choose a new encoding for all tables. + Оберіть нову ÑиÑтему ÐºÐ¾Ð´ÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð»Ñ Ð²ÑÑ–Ñ… таблиць. + + + + Please choose a new encoding for this table. + Оберіть нову ÑиÑтему ÐºÐ¾Ð´ÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð»Ñ Ñ†Ñ–Ñ”Ñ— таблиці. + + + + %1 +Leave the field empty for using the database encoding. + %1 +Залиште це поле порожнім Ñкщо хочете, щоб викориÑтовувалоÑÑ ÐºÐ¾Ð´ÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð° замовчуваннÑм. + + + + This encoding is either not valid or not supported. + ÐšÐ¾Ð´ÑƒÐ²Ð°Ð½Ð½Ñ Ð½ÐµÐ²Ñ–Ñ€Ð½Ðµ або не підтримуєтьÑÑ. + + + + %1 replacement(s) made. + + + + + VacuumDialog + + + Compact Database + Ð£Ñ‰Ñ–Ð»ÑŒÐ½ÐµÐ½Ð½Ñ Ð‘Ð” + Ð£Ñ‰Ñ–Ð»ÑŒÐ½ÐµÐ½Ð½Ñ Ð±Ð°Ð·Ð¸ даних + + + + Warning: Compacting the database will commit all of your changes. + + + + + Please select the databases to co&mpact: + + + + diff --git a/ConfigFiles/translations/sqlb_zh.qm b/ConfigFiles/translations/sqlb_zh.qm new file mode 100644 index 0000000000000000000000000000000000000000..2cbe4ece3dec6b936e84c82863688c7946a7f520 GIT binary patch literal 146200 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 literal 0 HcmV?d00001 diff --git a/ConfigFiles/translations/sqlb_zh.ts b/ConfigFiles/translations/sqlb_zh.ts new file mode 100644 index 0000000..8ac3fc0 --- /dev/null +++ b/ConfigFiles/translations/sqlb_zh.ts @@ -0,0 +1,7008 @@ + + + + + AboutDialog + + + About DB Browser for SQLite + 关于 DB Browser for SQLite + + + + Version + 版本 + + + + <html><head/><body><p>DB Browser for SQLite is an open source, freeware visual tool used to create, design and edit SQLite database files.</p><p>It is bi-licensed under the Mozilla Public License Version 2, as well as the GNU General Public License Version 3 or later. You can modify or redistribute it under the conditions of these licenses.</p><p>See <a href="http://www.gnu.org/licenses/gpl.html">http://www.gnu.org/licenses/gpl.html</a> and <a href="https://www.mozilla.org/MPL/2.0/index.txt">https://www.mozilla.org/MPL/2.0/index.txt</a> for details.</p><p>For more information on this program please visit our website at: <a href="http://sqlitebrowser.org">http://sqlitebrowser.org</a></p><p><span style=" font-size:small;">This software uses the GPL/LGPL Qt Toolkit from </span><a href="http://qt-project.org/"><span style=" font-size:small;">http://qt-project.org/</span></a><span style=" font-size:small;"><br/>See </span><a href="http://qt-project.org/doc/qt-5/licensing.html"><span style=" font-size:small;">http://qt-project.org/doc/qt-5/licensing.html</span></a><span style=" font-size:small;"> for licensing terms and information.</span></p><p><span style=" font-size:small;">It also uses the Silk icon set by Mark James licensed under a Creative Commons Attribution 2.5 and 3.0 license.<br/>See </span><a href="http://www.famfamfam.com/lab/icons/silk/"><span style=" font-size:small;">http://www.famfamfam.com/lab/icons/silk/</span></a><span style=" font-size:small;"> for details.</span></p></body></html> + <html><head/><body><p>DB Browser for SQLite 是一个开æºå…费的å¯è§†åŒ–工具,用于创建ã€è®¾è®¡å’Œç¼–辑 SQLite æ•°æ®åº“文件。</p><p>它以第 2 版 Mozilla 公共许å¯ï¼Œä»¥åŠç¬¬ 3 版åŠä¹‹åŽç‰ˆæœ¬çš„ GNU é€šç”¨è®¸å¯æ–¹å¼æŽˆæƒã€‚ä½ å¯ä»¥åœ¨éµå¾ªè¿™äº›è®¸å¯çš„æ¡ä»¶ä¸‹ä¿®æ”¹æˆ–é‡æ–°å‘布它。</p><p>å‚阅 <a href="http://www.gnu.org/licenses/gpl.html">http://www.gnu.org/licenses/gpl.html</a> and <a href="https://www.mozilla.org/MPL/2.0/index.txt">https://www.mozilla.org/MPL/2.0/index.txt</a> 了解细节。</p><p>è¦èŽ·å¾—æœ¬ç¨‹åºçš„æ›´å¤šä¿¡æ¯ï¼Œè¯·è®¿é—®æˆ‘们的网站: <a href="http://sqlitebrowser.org">http://sqlitebrowser.org</a></p><p><span style=" font-size:small;">这个软件使用了æ¥è‡ªäºŽ </span><a href="http://qt-project.org/"><span style=" font-size:small;">http://qt-project.org/</span></a> <span style=" font-size:small;">çš„ GPL/LGPL Qt Toolkit。<br/>å‚阅 </span><a href="http://qt-project.org/doc/qt-5/licensing.html"><span style=" font-size:small;">http://qt-project.org/doc/qt-5/licensing.html</span></a><span style=" font-size:small;"> äº†è§£è®¸å¯æ¡æ¬¾å’Œå…¶ä»–ä¿¡æ¯ã€‚</span></p><p><span style=" font-size:small;">它还使用了 Mark James çš„ Silk 图标集,以第 2.5 å’Œ 3.0 版知识共享署å(CCA)è®¸å¯æ–¹å¼æŽˆæƒã€‚<br/>å‚阅 </span><a href="http://www.famfamfam.com/lab/icons/silk/"><span style=" font-size:small;">http://www.famfamfam.com/lab/icons/silk/</span></a><span style=" font-size:small;"> 了解细节。</span></p></body></html> + + + + AddRecordDialog + + + Add New Record + 新增记录 + + + + Enter values for the new record considering constraints. Fields in bold are mandatory. + 为新增的记录填写满足约æŸçš„值。加粗的字段必须填写。 + + + + In the Value column you can specify the value for the field identified in the Name column. The Type column indicates the type of the field. Default values are displayed in the same style as NULL values. + 在值列,你å¯ä»¥é€‰æ‹©ç»™å¯¹åº”å字列的值。类型列显示了字段的类型。默认值的显示样å¼å’Œ NULL 值一样。 + + + + Name + åç§° + + + + Type + 类型 + + + + Value + 值 + + + + Values to insert. Pre-filled default values are inserted automatically unless they are changed. + è¦æ’入的值。如果没有修改,就会æ’入事先填好的默认值。 + + + + When you edit the values in the upper frame, the SQL query for inserting this new record is shown here. You can edit manually the query before saving. + 当你在上é¢ç¼–辑值时,这里会显示æ’入新记录所用的 SQL 语å¥ã€‚ä½ å¯ä»¥åœ¨ä¿å­˜å‰æ‰‹åŠ¨ä¿®æ”¹è¿™äº›è¯­å¥ã€‚ + + + + <html><head/><body><p><span style=" font-weight:600;">Save</span> will submit the shown SQL statement to the database for inserting the new record.</p><p><span style=" font-weight:600;">Restore Defaults</span> will restore the initial values in the <span style=" font-weight:600;">Value</span> column.</p><p><span style=" font-weight:600;">Cancel</span> will close this dialog without executing the query.</p></body></html> + <html><head/><body><p><span style=" font-weight:600;">ä¿å­˜</span> 将会把显示的 SQL è¯­å¥æäº¤åˆ°æ•°æ®åº“以æ’入新记录。</p><p><span style=" font-weight:600;">æ¢å¤é»˜è®¤</span> 将会把 <span style=" font-weight:600;">值</span> æ¢å¤æˆé»˜è®¤å€¼ã€‚</p><p><span style=" font-weight:600;">å–æ¶ˆ</span> 将会关闭此界é¢ï¼Œä¸æ‰§è¡Œ SQL 语å¥ã€‚</p></body></html> + + + + Auto-increment + + 自增 + + + + + Unique constraint + + å”¯ä¸€çº¦æŸ + + + + + Check constraint: %1 + + 检查约æŸ: %1 + + + + + Foreign key: %1 + + 外键: %1 + + + + + Default value: %1 + + 默认值: %1 + + + + + Error adding record. Message from database engine: + +%1 + 添加记录失败。æ¥è‡ªæ•°æ®åº“引擎的消æ¯: + +%1 + + + + Are you sure you want to restore all the entered values to their defaults? + ä½ ç¡®å®šè¦æŠŠè¾“å…¥çš„æ‰€æœ‰å€¼éƒ½æ¢å¤æˆé»˜è®¤å€¼å—? + + + + Application + + + Possible command line arguments: + å¯ç”¨å‘½ä»¤è¡Œå‚æ•°: + + + + The -o/--option and -O/--save-option options require an argument in the form group/setting=value + -o/--option å’Œ -O/--save-option é€‰é¡¹éœ€è¦ group/setting=value æ ¼å¼çš„傿•° + + + + Usage: %1 [options] [<database>|<project>] + + 用法: %1 [选项] [<æ•°æ®åº“>|<项目>] + + + + + -h, --help Show command line options + -h, --help 显示命令行选项 + + + + -q, --quit Exit application after running scripts + -q, --quit 在è¿è¡Œè„šæœ¬åŽé€€å‡ºåº”ç”¨ç¨‹åº + + + + -s, --sql <file> Execute this SQL file after opening the DB + -s, --sql <文件> 在打开数æ®åº“åŽæ‰§è¡Œæ­¤ SQL 文件 + + + + -t, --table <table> Browse this table after opening the DB + -t, --table <表> 在打开数æ®åº“åŽæµè§ˆæ­¤è¡¨ + + + + -R, --read-only Open database in read-only mode + -R, --read-only 用åªè¯»æ¨¡å¼æ‰“开数æ®åº“ + + + + -o, --option <group>/<setting>=<value> + -o, --option <分组/设置=值> + + + + Run application with this setting temporarily set to value + 临时以此设置è¿è¡Œç¨‹åº + + + + -O, --save-option <group>/<setting>=<value> + -O, --save-option <分组/设置=值> + + + + Run application saving this value for this setting + 以此设置è¿è¡Œç¨‹åºå¹¶ä¿å­˜è®¾ç½® + + + + -v, --version Display the current version + -v, --version 显示当å‰ç‰ˆæœ¬ + + + + <database> Open this SQLite database + <文件> 打开这个 SQLite æ•°æ®åº“ + + + + <project> Open this project file (*.sqbpro) + <项目> 打开这个项目文件 (*.sqbpro) + + + + The -s/--sql option requires an argument + -s/--sql 选项需è¦ä¸€ä¸ªå‚æ•° + + + + The file %1 does not exist + 文件 %1 ä¸å­˜åœ¨ + + + + The -t/--table option requires an argument + -t/--table 选项需è¦ä¸€ä¸ªå‚æ•° + + + + Invalid option/non-existant file: %1 + 无效选项/ä¸å­˜åœ¨çš„æ–‡ä»¶: %1 + + + + SQLite Version + SQLite 版本 + + + + SQLCipher Version %1 (based on SQLite %2) + SQLCipher 版本 %1 (基于 SQLite %2) + + + + DB Browser for SQLite Version %1. + DB Browser for SQLite 版本 %1. + + + + Built for %1, running on %2 + 为 %1 构建,è¿è¡ŒäºŽ %2 + + + + Qt Version %1 + Qt 版本 %1 + + + + CipherDialog + + + SQLCipher encryption + SQLCipher 加密 + + + + &Password + 密ç (&P) + + + + &Reenter password + 确认密ç (&R) + + + + Encr&yption settings + 加密设置(&Y) + + + + SQLCipher &3 defaults + SQLCipher &3 默认 + + + + SQLCipher &4 defaults + SQLCipher &4 默认 + + + + Custo&m + 自定义(&M) + + + + Page si&ze + 页大å°(&Z) + + + + &KDF iterations + KDF迭代(&K) + + + + HMAC algorithm + HMAC算法 + + + + KDF algorithm + KDF算法 + + + + Plaintext Header Size + çº¯æ–‡æœ¬æ–‡ä»¶å¤´å¤§å° + + + + Passphrase + å£ä»¤ + + + + Raw key + 原始密钥 + + + + Please set a key to encrypt the database. +Note that if you change any of the other, optional, settings you'll need to re-enter them as well every time you open the database file. +Leave the password fields empty to disable the encryption. +The encryption process might take some time and you should have a backup copy of your database! Unsaved changes are applied before modifying the encryption. + 请设置密ç ä»¥åŠ å¯†æ•°æ®åº“。 +注æ„å¦‚æžœä¿®æ”¹äº†ä»»ä½•å…¶ä»–é€‰é¡¹è®¾ç½®ï¼Œä»¥åŠæ¯æ¬¡æ‰“开数æ®åº“时,您都需è¦é‡æ–°è¾“入此密ç ã€‚ +ä¸å¡«å¯†ç è¡¨ç¤ºç¦ç”¨åŠ å¯†ã€‚ +加密过程将花费一些时间,您应该在加密之å‰å¤‡ä»½æ•°æ®åº“ï¼ä¿®æ”¹åР坆å‰ï¼Œæœªä¿å­˜çš„æ›´æ”¹å°†ä¼šè¢«åº”用。 + + + + Please enter the key used to encrypt the database. +If any of the other settings were altered for this database file you need to provide this information as well. + 请输入加密数æ®åº“的密ç ã€‚ +如果此数æ®åº“的任何其他设置å‘生å˜åŒ–ï¼Œæ‚¨ä¹Ÿéœ€è¦æä¾›æ­¤ä¿¡æ¯ã€‚ + + + + ColumnDisplayFormatDialog + + + Choose display format + é€‰æ‹©æ˜¾ç¤ºæ ¼å¼ + + + + Display format + æ˜¾ç¤ºæ ¼å¼ + + + + Choose a display format for the column '%1' which is applied to each value prior to showing it. + 为列 '%1' 选择显示格å¼ï¼Œå°†åœ¨æ˜¾ç¤ºä¹‹å‰åº”用到值。 + + + + Default + 默认 + + + + Decimal number + å进制数 + + + + Exponent notation + 指数 + + + + Hex blob + å六进制大型对象 + + + + Hex number + å六进制数 + + + + Apple NSDate to date + 苹果 NSDate 到日期 + + + + Java epoch (milliseconds) to date + Java 时间戳(毫秒)到日期 + + + + .NET DateTime.Ticks to date + .NET 日期时间(Ticks到日期) + + + + Julian day to date + 儒略日 (Julian day) 到日期 + + + + Unix epoch to local time + Unix 时间戳到本地时间 + + + + Date as dd/mm/yyyy + 日期,格å¼ä¸º dd/mm/yyyy + + + + Lower case + å°å†™ + + + + Custom display format must contain a function call applied to %1 + 自定义显示格å¼å¿…须包å«å¤„ç† %1 的函数 + + + + Error in custom display format. Message from database engine: + +%1 + è‡ªå®šä¹‰æ˜¾ç¤ºæ ¼å¼æœ‰è¯¯ã€‚æ•°æ®åº“引擎æä¾›çš„错误信æ¯ä¸ºï¼š\n\n%1 + + + + Custom display format must return only one column but it returned %1. + 自定义显示格å¼å¿…é¡»åªè¿”回1列,但目å‰è¿”回 %1 。 + + + + Octal number + 八进制数 + + + + Round number + å–æ•´æ•° + + + + Unix epoch to date + Unix 时间到日期 + + + + Upper case + 大写 + + + + Windows DATE to date + Windows 日期到日期 + + + + Custom + 自定义 + + + + CondFormatManager + + + Conditional Format Manager + æ¡ä»¶æ ¼å¼ç®¡ç†å™¨ + + + + This dialog allows creating and editing conditional formats. Each cell style will be selected by the first accomplished condition for that cell data. Conditional formats can be moved up and down, where those at higher rows take precedence over those at lower. Syntax for conditions is the same as for filters and an empty condition applies to all values. + æ­¤å¯¹è¯æ¡†ç”¨äºŽåˆ›å»ºå’Œç¼–辑æ¡ä»¶æ ¼å¼ã€‚æ¯ä¸ªå•元格的样å¼å°†è¢«è®¾ç½®ä¸ºé¦–ä¸ªåŒ¹é…æ¡ä»¶çš„æ ¼å¼ã€‚æ¡ä»¶æ ¼å¼å¯ä»¥ä¸Šä¸‹ç§»åŠ¨ï¼Œé å‰çš„行优先生效。æ¡ä»¶çš„语法与过滤器相åŒã€‚空æ¡ä»¶å°†é€‚用于所有值。 + + + + Add new conditional format + 创建新的æ¡ä»¶æ ¼å¼ + + + + &Add + 添加(&A) + + + + Remove selected conditional format + 删除选中的æ¡ä»¶æ ¼å¼ + + + + &Remove + 删除(&R) + + + + Move selected conditional format up + 上移选中的æ¡ä»¶æ ¼å¼ + + + + Move &up + 上移(&U) + + + + Move selected conditional format down + 下移选中的æ¡ä»¶æ ¼å¼ + + + + Move &down + 下移(&D) + + + + Foreground + 剿™¯ + + + + Text color + 文本颜色 + + + + Background + 背景 + + + + Background color + 背景颜色 + + + + Font + 字体 + + + + Size + å¤§å° + + + + Bold + 粗体 + + + + Italic + 斜体 + + + + Underline + 下划线 + + + + Alignment + å¯¹é½ + + + + Condition + æ¡ä»¶ + + + + + Click to select color + 点击选择颜色 + + + + Are you sure you want to clear all the conditional formats of this field? + ç¡®å®žè¦æ¸…除全部æ¡ä»¶æ ¼å¼å—? + + + + DBBrowserDB + + + Please specify the database name under which you want to access the attached database + 请指明想è¦é™„加的数æ®åº“å + + + + Invalid file format + æ— æ•ˆçš„æ–‡ä»¶æ ¼å¼ + + + + Do you want to save the changes made to the database file %1? + æ‚¨æ˜¯å¦æƒ³ä¿å­˜å¯¹æ•°æ®åº“文件 %1 åšå‡ºçš„æ›´æ”¹? + + + + Exporting database to SQL file... + 正在导出数æ®åº“到 SQL 文件... + + + + + Cancel + å–æ¶ˆ + + + + Executing SQL... + 正在执行 SQL... + + + + Action cancelled. + æ“ä½œå·²å–æ¶ˆã€‚ + + + + This database has already been attached. Its schema name is '%1'. + 此数æ®åº“å·²è¢«é™„åŠ ã€‚å®ƒçš„æž¶æž„åæ˜¯ '%1'. + + + + Do you really want to close this temporary database? All data will be lost. + 你确定è¦å…³é—­æ­¤ä¸´æ—¶æ•°æ®åº“å—?所有数æ®éƒ½ä¼šä¸¢å¤±ã€‚ + + + + Database didn't close correctly, probably still busy + æ•°æ®åº“未正确关闭,å¯èƒ½æ­£å¿™ + + + + The database is currently busy: + æ•°æ®åº“正忙: + + + + Do you want to abort that other operation? + ç¡®å®šè¦æ”¾å¼ƒæ“作å—? + + + + + No database file opened + 没有打开数æ®åº“文件 + + + + + Error in statement #%1: %2. +Aborting execution%3. + é”™è¯¯åœ¨è¯­å¥ #%1: %2. +正在放弃执行%3. + + + + + and rolling back + 并回滚 + + + + didn't receive any output from %1 + 未收到æ¥è‡ª %1 的任何输出 + + + + could not execute command: %1 + 未能执行命令: %1 + + + + Cannot delete this object + 无法删除此对象 + + + + Cannot set data on this object + ä¸èƒ½ä¸ºæ­¤æ•°æ®è®¾ç½®å¯¹è±¡ + + + + + A table with the name '%1' already exists in schema '%2'. + 一个与 '%1' åŒå的表已ç»å­˜åœ¨äºŽæž¶æž„ '%2' 中。 + + + + No table with name '%1' exists in schema '%2'. + æž¶æž„ '%2' 中ä¸å­˜åœ¨è¡¨ '%1' 。 + + + + + Cannot find column %1. + 找ä¸åˆ°åˆ— %1 。 + + + + Creating savepoint failed. DB says: %1 + 创建ä¿å­˜ç‚¹å¤±è´¥ã€‚æ•°æ®åº“显示:%1 + + + + Renaming the column failed. DB says: +%1 + é‡å‘½å列失败。数æ®åº“显示:\n%1 + + + + + Releasing savepoint failed. DB says: %1 + 释放ä¿å­˜ç‚¹å¤±è´¥ã€‚æ•°æ®åº“显示:%1 + + + + Creating new table failed. DB says: %1 + 建立新表失败。数æ®åº“显示:%1 + + + + Copying data to new table failed. DB says: +%1 + å¤åˆ¶æ•°æ®åˆ°æ–°è¡¨å¤±è´¥ã€‚æ•°æ®åº“显示:\n%1 + + + + Deleting old table failed. DB says: %1 + 删除旧表失败。数æ®åº“显示:%1 + + + + Error renaming table '%1' to '%2'. +Message from database engine: +%3 + 将表 '%1' é‡å‘½å为 '%2' 时出错。\næ•°æ®åº“引擎的错误信æ¯ï¼š\n%1 + + + + could not get list of db objects: %1 + æœªèƒ½èŽ·å–æ•°æ®åº“对象列表:%1 + + + + Restoring some of the objects associated with this table failed. This is most likely because some column names changed. Here's the SQL statement which you might want to fix and execute manually: + + + 还原æŸäº›å’Œè¿™ä¸ªè¡¨å…³è”的对象失败。这个最å¯èƒ½æ˜¯å› ä¸ºæŸäº›åˆ—çš„å称更改了。这里是您å¯èƒ½éœ€è¦æ‰‹åŠ¨ä¿®å¤å’Œæ‰§è¡Œçš„ SQL 语å¥: + + + + + + could not get list of databases: %1 + æ— æ³•èŽ·å–æ•°æ®åº“列表: %1 + + + + Error loading extension: %1 + 加载扩展时出错: %1 + + + + could not get column information + 无法获å–åˆ—ä¿¡æ¯ + + + + Error setting pragma %1 to %2: %3 + è®¾ç½®æ‚æ³¨ %1 为 %2 时出错: %3 + + + + File not found. + 文件找ä¸åˆ°ã€‚ + + + + DbStructureModel + + + Name + åç§° + + + + Object + 对象 + + + + Type + 类型 + + + + Schema + æž¶æž„ + + + + Database + æ•°æ®åº“ + + + + Browsables + 坿µè§ˆçš„ + + + + All + 所有 + + + + Temporary + 临时的 + + + + Tables (%1) + 表 (%1) + + + + Indices (%1) + 索引 (%1) + + + + Views (%1) + 视图 (%1) + + + + Triggers (%1) + 触å‘器 (%1) + + + + EditDialog + + + Edit database cell + 编辑数æ®åº“å•元格 + + + + Mode: + 模å¼: + + + + + Image + å›¾åƒ + + + + Set as &NULL + 设为&空 + + + + Apply data to cell + 将数æ®åº”用到å•元格 + + + + This button saves the changes performed in the cell editor to the database cell. + 此按钮把å•元格编辑器中的修改应用到数æ®åº“å•元格中。 + + + + Apply + 应用 + + + + Text + 文本 + + + + This is the list of supported modes for the cell editor. Choose a mode for viewing or editing the data of the current cell. + 这是å•元格编辑器支æŒçš„æ¨¡å¼åˆ—è¡¨ã€‚é€‰æ‹©ä¸€ç§æ¨¡å¼ä»¥æŸ¥çœ‹æˆ–编辑当å‰å•元格的数æ®ã€‚ + + + + RTL Text + å³åˆ°å·¦æ–‡æœ¬ + + + + Binary + 二进制 + + + + JSON + JSON + + + + XML + XML + + + + + Automatically adjust the editor mode to the loaded data type + 自动调整编辑器模å¼ä¸ºåŠ è½½çš„æ•°æ®çš„类型 + + + + This checkable button enables or disables the automatic switching of the editor mode. When a new cell is selected or new data is imported and the automatic switching is enabled, the mode adjusts to the detected data type. You can then change the editor mode manually. If you want to keep this manually switched mode while moving through the cells, switch the button off. + æ­¤å¤é€‰æŒ‰é’®å¯å¯ç”¨æˆ–ç¦ç”¨ç¼–辑器模å¼çš„自动切æ¢ã€‚当新å•元格被选中或新数æ®è¢«å¯¼å…¥æ—¶ï¼Œå¦‚æžœå¯ç”¨äº†è‡ªåŠ¨åˆ‡æ¢ï¼Œæ¨¡å¼ä¼šè°ƒæ•´ä¸ºæ£€æµ‹åˆ°çš„æ•°æ®ç±»åž‹ã€‚之åŽä½ ä¹Ÿæ‰‹åŠ¨åˆ‡æ¢ç¼–辑器的模å¼ã€‚如果你希望æµè§ˆå„å•å…ƒæ ¼çš„æ—¶å€™éƒ½ä¿æŒæ‰‹åŠ¨é€‰æ‹©çš„æ¨¡å¼ï¼Œè¯·æŠŠæ­¤æŒ‰é’®åˆ‡åˆ°å…³é—­çжæ€ã€‚ + + + + Auto-switch + è‡ªåŠ¨åˆ‡æ¢ + + + + The text editor modes let you edit plain text, as well as JSON or XML data with syntax highlighting, automatic formatting and validation before saving. + +Errors are indicated with a red squiggle underline. + 此文本编辑器å…许你编辑纯文本。还支æŒJSON或XMLæ ¼å¼çš„代ç é«˜äº®ï¼Œè‡ªåŠ¨æ ¼å¼åŒ–和验è¯ã€‚\n\næ ¼å¼é”™è¯¯ç”¨çº¢è‰²æ³¢æµªçº¿è¡¨ç¤ºã€‚ + + + + This Qt editor is used for right-to-left scripts, which are not supported by the default Text editor. The presence of right-to-left characters is detected and this editor mode is automatically selected. + æ­¤Qt编辑器用于å³åˆ°å·¦çš„æ–‡æœ¬ï¼ˆé»˜è®¤æ–‡æœ¬ç¼–è¾‘å™¨ä¸æ”¯æŒè¿™ç§æ ¼å¼ï¼‰ã€‚当检测到å³åˆ°å·¦å­—符时,会自动选择这ç§ç¼–辑器模å¼ã€‚ + + + + Open preview dialog for printing the data currently stored in the cell + 打å°é¢„览此å•å…ƒæ ¼ä¸­çš„æ•°æ® + + + + Auto-format: pretty print on loading, compact on saving. + 自动格å¼: è¯»å–æ—¶æ ¼å¼åŒ–,存储时紧凑化。 + + + + When enabled, the auto-format feature formats the data on loading, breaking the text in lines and indenting it for maximum readability. On data saving, the auto-format feature compacts the data removing end of lines, and unnecessary whitespace. + 当å¯ç”¨æ—¶ï¼Œè‡ªåŠ¨æ ¼å¼ç‰¹æ€§å°†åœ¨æ•°æ®åŠ è½½æ—¶æ ¼å¼åŒ–æ•°æ®ï¼Œå¢žåŠ æ¢è¡Œå¹¶ç¼©è¿›ä»¥æé«˜å¯è¯»æ€§ã€‚在ä¿å­˜æ•°æ®æ—¶ï¼Œè‡ªåŠ¨æ ¼å¼ç‰¹æ€§ä¼šé€šè¿‡åˆ é™¤æ¢è¡Œã€ä¸å¿…è¦çš„ç©ºç™½å­—ç¬¦çš„æ–¹å¼æ¥ç´§å‡‘化数æ®ã€‚ + + + + Word Wrap + 自动æ¢è¡Œ + + + + Wrap lines on word boundaries + 在å•è¯è¾¹ç•Œè‡ªåЍæ¢è¡Œ + + + + + Open in default application or browser + ç”¨é»˜è®¤ç¨‹åºæˆ–æµè§ˆå™¨æ‰“å¼€ + + + + Open in application + ç”¨å¤–éƒ¨ç¨‹åºæ‰“å¼€ + + + + The value is interpreted as a file or URL and opened in the default application or web browser. + å°†å•元格的值视为文件路径或URLï¼Œåœ¨é»˜è®¤ç¨‹åºæˆ–æµè§ˆå™¨ä¸­æ‰“开。 + + + + Save file reference... + ä¿ç•™æ–‡ä»¶å¼•用... + + + + Save reference to file + I'm not sure + 将引用ä¿å­˜åˆ°æ–‡ä»¶ + + + + + Open in external application + 在外部程åºä¸­ç¼–辑 + + + + Autoformat + è‡ªåŠ¨æ ¼å¼ + + + + &Export... + 导出(&E) + + + + + &Import... + 导入(&I) + + + + + Import from file + 从文件导入 + + + + + Opens a file dialog used to import any kind of data to this database cell. + æ‰“å¼€æ–‡ä»¶é€‰æ‹©å¯¹è¯æ¡†ï¼Œå¯¼å…¥ä»»ä½•类型的数æ®åˆ°æ­¤æ•°æ®åº“å•元格。 + + + + Export to file + 导出到文件 + + + + Opens a file dialog used to export the contents of this database cell to a file. + æ‰“å¼€æ–‡ä»¶é€‰æ‹©å¯¹è¯æ¡†ï¼Œå¯¼å‡ºæ­¤æ•°æ®åº“å•元格的内容到一个文件里。 + + + + Erases the contents of the cell + 删除å•元格的内容 + + + + This area displays information about the data present in this database cell + 这个区域显示存在于这个数æ®åº“å•元格中的数æ®çš„ç›¸å…³ä¿¡æ¯ + + + + Type of data currently in cell + 当å‰åœ¨å•元格中的数æ®çš„类型 + + + + Size of data currently in table + 当å‰åœ¨è¡¨ä¸­çš„æ•°æ®çš„å¤§å° + + + + + Print... + 打å°... + + + + Open preview dialog for printing displayed image + 打开打å°é¢„è§ˆå¯¹è¯æ¡†ï¼Œé¢„è§ˆå›¾åƒ + + + + + Ctrl+P + + + + + Open preview dialog for printing displayed text + 打开打å°é¢„è§ˆå¯¹è¯æ¡†ï¼Œé¢„览文本 + + + + Copy Hex and ASCII + æ‹·è´å六进制和 ASCII + + + + Copy selected hexadecimal and ASCII columns to the clipboard + æ‹·è´é€‰ä¸­çš„å六进制和 ASCII 列到剪贴æ¿ä¸­ + + + + Ctrl+Shift+C + + + + + Choose a filename to export data + 选择一个导出数æ®çš„æ–‡ä»¶å + + + + Type of data currently in cell: %1 Image + 当å‰åœ¨å•元格中的数æ®çš„类型: %1 å›¾åƒ + + + + %1x%2 pixel(s) + %1x%2 åƒç´  + + + + Type of data currently in cell: NULL + 当å‰åœ¨å•元格中的数æ®çš„类型: 空 + + + + + Type of data currently in cell: Text / Numeric + 当å‰åœ¨å•元格中的数æ®çš„类型: 文本/ 数值 + + + + + Image data can't be viewed in this mode. + 此模å¼ä¸‹æ— æ³•æŸ¥çœ‹å›¾åƒæ•°æ®ã€‚ + + + + + Try switching to Image or Binary mode. + å°è¯•切æ¢åˆ°å›¾åƒæˆ–二进制模å¼ã€‚ + + + + + Binary data can't be viewed in this mode. + 此模å¼ä¸‹æ— æ³•查看二进制数æ®ã€‚ + + + + + Try switching to Binary mode. + å°è¯•切æ¢åˆ°äºŒè¿›åˆ¶æ¨¡å¼ã€‚ + + + + Couldn't save file: %1. + + + + + The data has been saved to a temporary file and has been opened with the default application. You can now edit the file and, when you are ready, apply the saved new data to the cell editor or cancel any changes. + å•元格内数æ®å·²è¢«ä¿å­˜åˆ°ä¸´æ—¶æ–‡ä»¶å¹¶ç”¨é»˜è®¤ç¨‹åºæ‰“开。你å¯ä»¥ç¼–辑文件并ä¿å­˜ï¼Œç„¶åŽå°†æ›´æ”¹åº”用到å•元格。 + + + + + Image files (%1) + å›¾åƒæ–‡ä»¶ (%1) + + + + Binary files (*.bin) + 二进制文件 (*.bin) + + + + Choose a file to import + 选择一个è¦å¯¼å…¥çš„æ–‡ä»¶ + + + + %1 Image + %1 å›¾åƒ + + + + Invalid data for this mode + æ•°æ®å¯¹æ­¤æ¨¡å¼éžæ³• + + + + The cell contains invalid %1 data. Reason: %2. Do you really want to apply it to the cell? + å•元格中包å«éžæ³•çš„ %1 æ•°æ®ã€‚原因: %2. 你确实想把它应用到å•元格中å—? + + + + + + %n character(s) + + %n 个字符 + + + + + Type of data currently in cell: Valid JSON + 当å‰åœ¨å•元格中的数æ®çš„类型: åˆæ³•çš„JSON + + + + Type of data currently in cell: Binary + 当å‰åœ¨å•元格中的数æ®çš„类型: 二进制 + + + + + %n byte(s) + + %n 字节 + + + + + EditIndexDialog + + + &Name + åç§°(&N) + + + + Order + é¡ºåº + + + + &Table + 表(&T) + + + + Edit Index Schema + 编辑索引架构 + + + + &Unique + 唯一(&U) + + + + For restricting the index to only a part of the table you can specify a WHERE clause here that selects the part of the table that should be indexed + 为了将索引范围é™åˆ¶åˆ°è¡¨ä¸­çš„一部分,您å¯ä»¥åœ¨æ­¤æŒ‡å®š WHERE å­å¥æ¥åœ¨è¡¨ä¸­é€‰æ‹©éœ€è¦ç´¢å¼•的部分 + + + + Partial inde&x clause + 部分索引å­å¥(&x) + + + + Colu&mns + 列(&m) + + + + Table column + 表中的列 + + + + Type + 类型 + + + + Add a new expression column to the index. Expression columns contain SQL expression rather than column names. + å‘索引中添加一个新的表达å¼åˆ—。表达å¼åˆ—åŒ…å« SQL 表达å¼è€Œä¸æ˜¯åˆ—å。 + + + + Index column + 索引列 + + + + Deleting the old index failed: +%1 + 删除旧索引失败: +%1 + + + + Creating the index failed: +%1 + 创建索引时失败: +%1 + + + + EditTableDialog + + + Edit table definition + 编辑表定义 + + + + Table + 表 + + + + Advanced + 高级 + + + + Make this a 'WITHOUT rowid' table. Setting this flag requires a field of type INTEGER with the primary key flag set and the auto increment flag unset. + 让表'没有 rowid'ã€‚è®¾ç½®æ­¤æ ‡å¿—éœ€è¦æœ‰ä¸€ä¸ª INTEGER 类型并被设为主键ã€éžè‡ªå¢žçš„字段。 + + + + Without Rowid + æ—  Rowid + + + + Fields + 字段 + + + + Database sche&ma + æ•°æ®åº“æž¶æž„(&M) + + + + Add + 增加 + + + + Remove + 删除 + + + + Move to top + 移到最上 + + + + Move up + 上移 + + + + Move down + 下移 + + + + Move to bottom + 移到最下 + + + + + Name + åç§° + + + + + Type + 类型 + + + + NN + éžç©º + + + + Not null + éžNULL + + + + PK + 主键 + + + + Primary key + 主键 + + + + AI + 自增 + + + + Autoincrement + 自动增值 + + + + U + 唯一 + + + + + + Unique + 唯一 + + + + Default + 默认 + + + + Default value + 默认值 + + + + + + Check + 检查 + + + + Check constraint + æ£€æŸ¥çº¦æŸæ¡ä»¶ + + + + Collation + 排åºè§„则 + + + + + + Foreign Key + 外键 + + + + Constraints + çº¦æŸ + + + + Add constraint + å¢žåŠ çº¦æŸ + + + + Remove constraint + åˆ é™¤çº¦æŸ + + + + Columns + 列 + + + + SQL + SQL + + + + <html><head/><body><p><span style=" font-weight:600; color:#ff0000;">Warning: </span>There is something with this table definition that our parser doesn't fully understand. Modifying and saving this table might result in problems.</p></body></html> + <html><head/><body><p><span style=" font-weight:600; color:#ff0000;">警告: </span>表中有一些无法解æžçš„定义。编辑并ä¿å­˜è¡¨å¯èƒ½ä¼šå¸¦æ¥é—®é¢˜ã€‚</p></body></html> + + + + + Primary Key + 主键 + + + + Add a primary key constraint + å¢žåŠ ä¸»é”®çº¦æŸ + + + + Add a foreign key constraint + å¢žåŠ å¤–é”®çº¦æŸ + + + + Add a unique constraint + å¢žåŠ å”¯ä¸€æ€§çº¦æŸ + + + + Add a check constraint + å¢žåŠ æ£€æŸ¥çº¦æŸ + + + + Error creating table. Message from database engine: +%1 + 创建表时出错。æ¥è‡ªæ•°æ®åº“引擎的消æ¯: +%1 + + + + There already is a field with that name. Please rename it first or choose a different name for this field. + 已存在åŒå字段。请先é‡å‘½å已有字段,或为此字段选一个ä¸åŒçš„å字。 + + + + + There can only be one primary key for each table. Please modify the existing primary key instead. + æ¯ä¸ªè¡¨åªèƒ½æœ‰ä¸€ä¸ªä¸»é”®ã€‚请修改已有的主键。 + + + + This column is referenced in a foreign key in table %1 and thus its name cannot be changed. + 此列是表 %1 的外键,因此它的åå­—ä¸èƒ½æ”¹å˜ã€‚ + + + + There is at least one row with this field set to NULL. This makes it impossible to set this flag. Please change the table data first. + 至少有一行带本字段的记录被设为空。这使得它ä¸å¯èƒ½è®¾ç½®è¿™ä¸ªæ ‡å¿—。请首先更改表数æ®ã€‚ + + + + There is at least one row with a non-integer value in this field. This makes it impossible to set the AI flag. Please change the table data first. + åœ¨è¿™ä¸ªå­—æ®µä¸­è‡³å°‘æœ‰ä¸€è¡Œå¸¦æœ‰ä¸€ä¸ªéžæ•´æ•°çš„值。这使得它ä¸å¯èƒ½è®¾ç½®è‡ªå¢žæ ‡å¿—。请首先更改表数æ®ã€‚ + + + + Column '%1' has duplicate data. + + 列 '%1' 有é‡å¤æ•°æ®ã€‚ + + + + This makes it impossible to enable the 'Unique' flag. Please remove the duplicate data, which will allow the 'Unique' flag to then be enabled. + 所以无法å¯ç”¨â€œå”¯ä¸€â€æ ‡è®°ã€‚请删除é‡å¤æ•°æ®æ‰èƒ½å¯ç”¨ã€‚ + + + + Are you sure you want to delete the field '%1'? +All data currently stored in this field will be lost. + 您是å¦ç¡®è®¤æ‚¨æƒ³åˆ é™¤å­—段 '%1'? +当å‰å­˜å‚¨åœ¨è¿™ä¸ªå­—段中的所有数æ®å°†ä¼šä¸¢å¤±ã€‚ + + + + Please add a field which meets the following criteria before setting the without rowid flag: + - Primary key flag set + - Auto increment disabled + 在设置为无 rowid å‰ï¼Œè¯·å…ˆæ·»åŠ ä¸€ä¸ªæ»¡è¶³ä»¥ä¸‹å‡†åˆ™çš„å­—æ®µ: + - 设置为主键 + - ç¦æ­¢è‡ªå¢ž + + + + ExportDataDialog + + + Export data as CSV + 导出数æ®ä¸º CSV + + + + Tab&le(s) + 表(&l) + + + + Colu&mn names in first line + 第一行列å(&m) + + + + Fie&ld separator + 字段分隔符(&l) + + + + , + , + + + + ; + ; + + + + Tab + Tab + + + + | + | + + + + + + Other + 其它 + + + + &Quote character + 引å·(&Q) + + + + " + " + + + + ' + ' + + + + New line characters + æ¢è¡Œç¬¦ + + + + Windows: CR+LF (\r\n) + Windows: 回车+æ¢è¡Œ (\r\n) + + + + Unix: LF (\n) + Unix: æ¢è¡Œ (\n) + + + + Pretty print + 美化输出 + + + + + Could not open output file: %1 + 打ä¸å¼€è¾“出文件: %1 + + + + + Choose a filename to export data + 选择导出数æ®çš„æ–‡ä»¶å + + + + Export data as JSON + 导出为 JSON + + + + exporting CSV + 导出 CSV + + + + exporting JSON + 导出 JSON + + + + Please select at least 1 table. + 请至少选1个表 + + + + Choose a directory + 选择一个目录 + + + + Export completed. + 导出完æˆã€‚ + + + + ExportSqlDialog + + + Export SQL... + 导出 SQL... + + + + Tab&le(s) + 表(&L) + + + + Select All + 全选 + + + + Deselect All + å…¨ä¸é€‰ + + + + &Options + 选项(&O) + + + + Keep column names in INSERT INTO + 在 INSERT INTO 语å¥ä¸­ä¿ç•™åˆ—å + + + + Multiple rows (VALUES) per INSERT statement + æ¯æ¡ INSERT 语å¥ä¸­åŒ…å«å¤šè¡Œ (VALUES) + + + + Export everything + 导出所有 + + + + Export schema only + 仅导出架构 + + + + Export data only + ä»…å¯¼å‡ºæ•°æ® + + + + Keep old schema (CREATE TABLE IF NOT EXISTS) + ä¿æŒæ—§æž¶æž„ (CREATE TABLE IF NOT EXISTS) + + + + Overwrite old schema (DROP TABLE, then CREATE TABLE) + 覆盖旧架构 (DROP TABLE, ç„¶åŽ CREATE TABLE) + + + + Please select at least one table. + 请至少选一个表。 + + + + Choose a filename to export + 选择è¦å¯¼å‡ºçš„æ–‡ä»¶å + + + + Export completed. + 导出完æˆã€‚ + + + + Export cancelled or failed. + å¯¼å‡ºè¢«å–æ¶ˆæˆ–失败。 + + + + ExtendedScintilla + + + + Ctrl+H + + + + + Ctrl+F + + + + + + Ctrl+P + + + + + Find... + 查找... + + + + Find and Replace... + 查找并替æ¢... + + + + Print... + 打å°... + + + + ExtendedTableWidget + + + Use as Exact Filter + 用于精确过滤 + + + + Containing + åŒ…å« + + + + Not containing + ä¸åŒ…å« + + + + Not equal to + ä¸ç­‰äºŽ + + + + Greater than + 大于 + + + + Less than + å°äºŽ + + + + Greater or equal + 大于等于 + + + + Less or equal + å°äºŽç­‰äºŽ + + + + Between this and... + 在此值和...之间 + + + + Regular expression + æ­£åˆ™è¡¨è¾¾å¼ + + + + Edit Conditional Formats... + 编辑æ¡ä»¶æ ¼å¼... + + + + Set to NULL + 设置为 NULL + + + + Copy + å¤åˆ¶ + + + + Copy with Headers + å¸¦è¡¨å¤´ä¸€èµ·æ‹·è´ + + + + Copy as SQL + æ‹·è´ä¸º SQL + + + + Paste + 粘贴 + + + + Print... + 打å°... + + + + Use in Filter Expression + 在过滤器表达å¼ä¸­ä½¿ç”¨ + + + + Alt+Del + + + + + Ctrl+Shift+C + + + + + Ctrl+Alt+C + + + + + The content of the clipboard is bigger than the range selected. +Do you want to insert it anyway? + 剪贴æ¿ä¸­çš„æ•°æ®èŒƒå›´è¶…过了选择的范围。 +是å¦ä»è¦æ’入? + + + + <p>Not all data has been loaded. <b>Do you want to load all data before selecting all the rows?</b><p><p>Answering <b>No</b> means that no more data will be loaded and the selection will not be performed.<br/>Answering <b>Yes</b> might take some time while the data is loaded but the selection will be complete.</p>Warning: Loading all the data might require a great amount of memory for big tables. + <p>éƒ¨åˆ†æ•°æ®æ²¡æœ‰è¢«åŠ è½½ã€‚<b>åœ¨é€‰æ‹©æ‰€æœ‰è¡Œä¹‹å‰æ˜¯å¦è¦åŠ è½½æ‰€æœ‰æ•°æ®ï¼Ÿ</b><p><p>选择<b>å¦</b>表示ä¸åŠ è½½æ•°æ®å¹¶æ”¾å¼ƒå…¨é€‰ã€‚<br/>选择<b>是</b>表示加载所有数æ®ï¼ˆå¯èƒ½èŠ±è´¹ä¸€äº›æ—¶é—´ï¼‰å¹¶è¿›è¡Œå…¨é€‰ã€‚</p>警告:加载所有数æ®å¯¹äºŽå¤§è¡¨æ ¼å¯èƒ½å ç”¨å¤§é‡å†…存。 + + + + Cannot set selection to NULL. Column %1 has a NOT NULL constraint. + ä¸èƒ½å°†å½“å‰å•元格设置为 NULL。列 %1 有 NOT NULL 约æŸã€‚ + + + + FileExtensionManager + + + File Extension Manager + 文件扩展å管ç†å™¨ + + + + &Up + 上(&U) + + + + &Down + 下(&D) + + + + &Add + 添加(&A) + + + + &Remove + 删除(&R) + + + + + Description + æè¿° + + + + Extensions + 扩展å + + + + *.extension + *.扩展å + + + + FilterLineEdit + + + Filter + 过滤 + + + + These input fields allow you to perform quick filters in the currently selected table. +By default, the rows containing the input text are filtered out. +The following operators are also supported: +% Wildcard +> Greater than +< Less than +>= Equal to or greater +<= Equal to or less += Equal to: exact match +<> Unequal: exact inverse match +x~y Range: values between x and y +/regexp/ Values matching the regular expression + è¿™äº›è¾“å…¥æ¡†èƒ½è®©ä½ å¿«é€Ÿåœ¨å½“å‰æ‰€é€‰è¡¨ä¸­è¿›è¡Œè¿‡æ»¤ã€‚ +默认情况下,包å«è¾“入文本的行会被过滤出æ¥ã€‚ +以下æ“作也支æŒ: +% 通é…符 +> 大于 +< å°äºŽ +>= 大于等于 +<= å°äºŽç­‰äºŽ += 等于: ç²¾ç¡®åŒ¹é… +<> ä¸ç­‰äºŽ: 精确åå‘åŒ¹é… +x~y 范围: 值在 x å’Œ y 之间 +/regexp/ å€¼ç¬¦åˆæ­£åˆ™è¡¨è¾¾å¼ + + + + Clear All Conditional Formats + 清除所有æ¡ä»¶æ ¼å¼ + + + + Use for Conditional Format + 用于æ¡ä»¶æ ¼å¼ + + + + Edit Conditional Formats... + 编辑æ¡ä»¶æ ¼å¼... + + + + Set Filter Expression + è®¾ç½®è¿‡æ»¤è¡¨è¾¾å¼ + + + + What's This? + 这是什么? + + + + Is NULL + 为 NULL + + + + Is not NULL + éž NULL + + + + Is empty + 为空 + + + + Is not empty + éžç©º + + + + Not containing... + ä¸åŒ…å«... + + + + Equal to... + 等于... + + + + Not equal to... + ä¸ç­‰äºŽ... + + + + Greater than... + 大于... + + + + Less than... + å°äºŽ... + + + + Greater or equal... + 大于等于... + + + + Less or equal... + å°äºŽç­‰äºŽ... + + + + In range... + 在范围内... + + + + Regular expression... + 正则表达å¼... + + + + FindReplaceDialog + + + Find and Replace + æŸ¥æ‰¾å¹¶æ›¿æ¢ + + + + Fi&nd text: + 查找文本(&N): + + + + Re&place with: + 替æ¢ä¸º(&P): + + + + Match &exact case + 精确匹é…(&E) + + + + Match &only whole words + 全字匹é…(&O) + + + + When enabled, the search continues from the other end when it reaches one end of the page + å¯ç”¨æ—¶ï¼Œæœç´¢åˆ°é¡µç»“尾时,æœç´¢ä¼šç»§ç»­ä»Žå¦ä¸€è¾¹å¼€å§‹ã€‚ + + + + &Wrap around + 循环查找(&W) + + + + When set, the search goes backwards from cursor position, otherwise it goes forward + 设置时,æœç´¢ä»Žå½“å‰ä½ç½®å¾€å›žè¿›è¡Œã€‚å¦åˆ™å‘剿œç´¢ã€‚ + + + + Search &backwards + å呿Ÿ¥æ‰¾(&B) + + + + <html><head/><body><p>When checked, the pattern to find is searched only in the current selection.</p></body></html> + <html><head/><body><p>选中时,åªåœ¨å½“å‰é€‰æ‹©çš„内容中进行æœç´¢ã€‚</p></body></html> + + + + &Selection only + 在所选内容中查找(&S) + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + <html><head/><body><p>é€‰ä¸­æ—¶ï¼Œè¦æŸ¥æ‰¾çš„æ¨¡å¼è¢«è§£é‡Šä¸º UNIX 正则表达å¼ã€‚å‚阅 <a href="https://en.wikibooks.org/wiki/Regular_Expressions"> Wikibooks 中的正则表达å¼</a>.</p></body></html> + + + + Use regular e&xpressions + 使用正则表达å¼(&X) + + + + Find the next occurrence from the cursor position and in the direction set by "Search backwards" + 从当å‰ä½ç½®æŸ¥æ‰¾ä¸‹ä¸€å‡ºçŽ°çš„ä½ç½®ï¼ŒæŒ‰ "å呿Ÿ¥æ‰¾" 处所选的方å‘进行查找。 + + + + &Find Next + 查找下一个(&F) + + + + F3 + + + + + &Replace + 替æ¢(&R) + + + + Highlight all the occurrences of the text in the page + 高亮本页中所有出现的文本 + + + + F&ind All + 全部高亮(&I) + + + + Replace all the occurrences of the text in the page + æ›¿æ¢æœ¬é¡µä¸­æ‰€æœ‰å‡ºçŽ°çš„æ–‡æœ¬ + + + + Replace &All + 全部替æ¢(&A) + + + + The searched text was not found + æ— æ³•æ‰¾åˆ°è¦æŸ¥æ‰¾çš„æ–‡æœ¬ + + + + The searched text was not found. + æ— æ³•æ‰¾åˆ°è¦æŸ¥æ‰¾çš„æ–‡æœ¬ã€‚ + + + + The searched text was found one time. + 查找的文本被找到了 1 次。 + + + + The searched text was found %1 times. + 查找的文本被找到了 %1 次。 + + + + The searched text was replaced one time. + 查找的文本被替æ¢äº† 1 次。 + + + + The searched text was replaced %1 times. + 查找的文本被替æ¢äº† %1 次。 + + + + ForeignKeyEditor + + + &Reset + é‡ç½®(&R) + + + + Foreign key clauses (ON UPDATE, ON DELETE etc.) + 外键å­å¥ (ON UPDATE, ON DELETE 等等) + + + + ImportCsvDialog + + + Import CSV file + 导入 CSV 文件 + + + + Table na&me + 表åç§°(&M) + + + + &Column names in first line + 列å在首行(&C) + + + + Field &separator + 字段分隔符(&S) + + + + , + , + + + + ; + ; + + + + + Tab + Tab + + + + | + ; + + + + Other + 其它 + + + + &Quote character + 引å·(&Q) + + + + + Other (printable) + å…¶ä»–(坿‰“å°) + + + + + Other (code) + å…¶ä»–(代ç ) + + + + " + " + + + + ' + ' + + + + &Encoding + ç¼–ç (&E) + + + + UTF-8 + UTF-8 + + + + UTF-16 + UTF-16 + + + + ISO-8859-1 + ISO-8859-1 + + + + Trim fields? + 删除字段头尾空白? + + + + Separate tables + 分离表 + + + + Advanced + 高级 + + + + When importing an empty value from the CSV file into an existing table with a default value for this column, that default value is inserted. Activate this option to insert an empty value instead. + 当从 CSV 文件导入空值到已有表中,并且该列有默认值时,默认值会被æ’å…¥ã€‚é€‰ä¸­æ­¤é¡¹ä»¥åœ¨è¿™ç§æƒ…况下æ’入空值。 + + + + Ignore default &values + 忽略默认值(&V) + + + + Activate this option to stop the import when trying to import an empty value into a NOT NULL column without a default value. + é€‰ä¸­æ­¤é¡¹ä»¥åœ¨å¾€æ²¡æœ‰é»˜è®¤å€¼çš„éž NULL 列导入空值时终止导入。 + + + + Fail on missing values + 缺值时失败 + + + + Disable data type detection + ç¦ç”¨ç±»åž‹æ£€æµ‹ + + + + Disable the automatic data type detection when creating a new table. + ç¦æ­¢åœ¨åˆ›å»ºæ–°è¡¨æ—¶è‡ªåŠ¨æ£€æµ‹æ•°æ®ç±»åž‹ã€‚ + + + + When importing into an existing table with a primary key, unique constraints or a unique index there is a chance for a conflict. This option allows you to select a strategy for that case: By default the import is aborted and rolled back but you can also choose to ignore and not import conflicting rows or to replace the existing row in the table. + 当呿œ‰ä¸»é”®çš„è¡¨ä¸­å¯¼å…¥æ•°æ®æ—¶ï¼Œå¯èƒ½ä¼šäº§ç”Ÿå”¯ä¸€æ€§çº¦æŸæˆ–索引的冲çªã€‚此选项å…许你选择处ç†å†²çªçš„ç­–ç•¥ï¼šé»˜è®¤æƒ…å†µä¸‹ä¼šå–æ¶ˆå¯¼å…¥å¹¶å·å›žï¼Œä¹Ÿå¯ä»¥é€‰æ‹©å¿½ç•¥å¹¶è·³è¿‡å†²çªçš„行,或替æ¢è¡¨ä¸­çŽ°æœ‰çš„è¡Œã€‚ + + + + Abort import + å–æ¶ˆå¯¼å…¥ + + + + Ignore row + 忽略冲çªçš„行 + + + + Replace existing row + 替æ¢çŽ°æœ‰çš„è¡Œ + + + + Conflict strategy + 冲çªç­–ç•¥ + + + + + Deselect All + å…¨ä¸é€‰ + + + + Match Similar + 匹é…相似 + + + + Select All + 全选 + + + + There is already a table named '%1' and an import into an existing table is only possible if the number of columns match. + å·²ç»æœ‰ä¸€å¼ å«åš '%1' çš„è¡¨ã€‚åªæœ‰åˆ—æ•°åŒ¹é…æ—¶ï¼Œæ‰èƒ½å¯¼å…¥åˆ°å·²ç»å­˜åœ¨çš„表中。 + + + + There is already a table named '%1'. Do you want to import the data into it? + å·²ç»æœ‰ä¸€å¼ å«åš '%1' 的表。你想把数æ®å¯¼å…¥åˆ°æ­¤è¡¨ä¸­å—? + + + + Creating restore point failed: %1 + 创建还原点失败: %1 + + + + Creating the table failed: %1 + 创建表失败: %1 + + + + importing CSV + 导入 CSV + + + + Importing the file '%1' took %2ms. Of this %3ms were spent in the row function. + 导入文件 '%1' 用时 %2ms. 其中 %3ms 用在行方程上。 + + + + Inserting row failed: %1 + æ’入行失败: %1 + + + + MainWindow + + + DB Browser for SQLite + DB Browser for SQLite + + + + toolBar1 + 工具æ 1 + + + + &Wiki + 百科(&W) + + + + Bug &Report... + Bug 上报(&R)... + + + + Feature Re&quest... + 特性请求(&Q)... + + + + Web&site + 网站(&S) + + + + &Donate on Patreon... + 在 Patreon 上æèµ (&D)... + + + + Open &Project... + 打开工程(&P)... + + + + &Attach Database... + 附加数æ®åº“(&A)... + + + + + Add another database file to the current database connection + 添加å¦ä¸€ä¸ªæ•°æ®åº“到当å‰çš„æ•°æ®åº“连接中 + + + + This button lets you add another database file to the current database connection + 此按钮能添加å¦ä¸€ä¸ªæ•°æ®åº“到当å‰çš„æ•°æ®åº“连接中 + + + + &Set Encryption... + 设置加密(&S)... + + + + This button saves the content of the current SQL editor tab to a file + æ­¤æŒ‰é’®æŠŠå½“å‰ SQL 编辑器页的内容ä¿å­˜åˆ°ä¸€ä¸ªæ–‡ä»¶ + + + + SQLCipher &FAQ + SQLCipher 常è§é—®é¢˜(&F)... + + + + Table(&s) to JSON... + 表到 JSON (&S)... + + + + Export one or more table(s) to a JSON file + 导出一个或多个表到 JSON 文件 + + + + Un/comment block of SQL code + 注释/å–æ¶ˆæ³¨é‡ŠSQLä»£ç  + + + + Un/comment block + 注释/å–æ¶ˆæ³¨é‡Š + + + + Comment or uncomment current line or selected block of code + æ³¨é‡Šæˆ–å–æ¶ˆæ³¨é‡Šå½“å‰è¡Œæˆ–é€‰ä¸­çš„ä»£ç æ®µ + + + + Comment or uncomment the selected lines or the current line, when there is no selection. All the block is toggled according to the first line. + æ³¨é‡Šæˆ–å–æ¶ˆæ³¨é‡Šå½“å‰é€‰ä¸­çš„ä»£ç æ®µã€‚当没有选中时为当å‰è¡Œã€‚ä»£ç æ®µçš„æ³¨é‡Šçжæ€ç”±ç¬¬ä¸€è¡Œå†³å®šã€‚ + + + + Ctrl+/ + + + + + Stop SQL execution + åœæ­¢æ‰§è¡ŒSQL + + + + Stop execution + åœæ­¢æ‰§è¡Œ + + + + Stop the currently running SQL script + åœæ­¢å½“å‰è¿è¡Œçš„SQL脚本 + + + + &File + 文件(&F) + + + + &Import + 导入(&I) + + + + &Export + 导出(&E) + + + + &Edit + 编辑(&E) + + + + &View + 查看(&V) + + + + &Help + 帮助(&H) + + + + &Remote + 远程(&R) + + + + Execute all/selected SQL + 执行所有/选中的 SQL + + + + This button executes the currently selected SQL statements. If no text is selected, all SQL statements are executed. + 此按钮执行当å‰é€‰ä¸­çš„ SQL 语å¥ã€‚如果没有选中文本,就执行所有的 SQL 语å¥ã€‚ + + + + &Load Extension... + 加载扩展(&L)... + + + + This button executes the SQL statement present in the current editor line + 此按钮执行编辑器当å‰è¡Œä¸­çš„ SQL è¯­å¥ + + + + Shift+F5 + + + + + Sa&ve Project + ä¿å­˜å·¥ç¨‹(&V) + + + + + Save SQL file as + SQL 文件å¦å­˜ä¸º + + + + &Browse Table + æµè§ˆè¡¨ + + + + Copy Create statement + å¤åˆ¶ Create è¯­å¥ + + + + Copy the CREATE statement of the item to the clipboard + å¤åˆ¶é€‰ä¸­é¡¹çš„ CREATE 语å¥åˆ°å‰ªè´´æ¿ + + + + Open an existing database file in read only mode + 用åªè¯»æ–¹å¼æ‰“开一个已有的数æ®åº“文件 + + + + Opens the SQLCipher FAQ in a browser window + 用æµè§ˆå™¨çª—壿‰“å¼€ SQLCipher 常è§é—®é¢˜ + + + + User + 用户 + + + + Application + åº”ç”¨ç¨‹åº + + + + &Clear + 清除(&C) + + + + DB Sche&ma + æ•°æ®åº“æž¶æž„(&M) + + + + &New Database... + 新建数æ®åº“(&N)... + + + + + Create a new database file + 创建一个新的数æ®åº“文件 + + + + This option is used to create a new database file. + 这个选项用于创建一个新的数æ®åº“文件。 + + + + Ctrl+N + + + + + + &Open Database... + 打开数æ®åº“(&O)... + + + + + + + + Open an existing database file + 打开一个现有的数æ®åº“文件 + + + + + + This option is used to open an existing database file. + 这个选项用于打开一个现有的数æ®åº“文件。 + + + + Ctrl+O + + + + + &Close Database + 关闭数æ®åº“(&C) + + + + + Ctrl+W + + + + + + Revert database to last saved state + 把数æ®åº“会退到先å‰ä¿å­˜çš„çŠ¶æ€ + + + + This option is used to revert the current database file to its last saved state. All changes made since the last save operation are lost. + 这个选项用于倒退当å‰çš„æ•°æ®åº“文件为它最åŽçš„ä¿å­˜çжæ€ã€‚从最åŽä¿å­˜æ“作开始åšå‡ºçš„æ‰€æœ‰æ›´æ”¹å°†ä¼šä¸¢å¤±ã€‚ + + + + + Write changes to the database file + 把更改写入到数æ®åº“文件 + + + + This option is used to save changes to the database file. + 这个选项用于ä¿å­˜æ›´æ”¹åˆ°æ•°æ®åº“文件。 + + + + Ctrl+S + + + + + Compact &Database... + 压缩数æ®åº“(&D)... + + + + Compact the database file, removing space wasted by deleted records + 压缩数æ®åº“文件,通过删除记录去掉浪费的空间 + + + + + Compact the database file, removing space wasted by deleted records. + 压缩数æ®åº“文件,通过删除记录去掉浪费的空间。 + + + + E&xit + 退出(&X) + + + + Ctrl+Q + + + + + Import data from an .sql dump text file into a new or existing database. + 从一个 .sql 转储文本文件中导入数æ®åˆ°ä¸€ä¸ªæ–°çš„æˆ–已有的数æ®åº“。 + + + + This option lets you import data from an .sql dump text file into a new or existing database. SQL dump files can be created on most database engines, including MySQL and PostgreSQL. + 这个选项让你从一个 .sql 转储文本文件中导入数æ®åˆ°ä¸€ä¸ªæ–°çš„æˆ–现有的数æ®åº“。SQL 转储文件å¯ä»¥åœ¨å¤§å¤šæ•°æ•°æ®åº“引擎上创建,包括 MySQL å’Œ PostgreSQL。 + + + + Open a wizard that lets you import data from a comma separated text file into a database table. + 打开一个å‘导让您从一个逗å·é—´éš”的文本文件导入数æ®åˆ°ä¸€ä¸ªæ•°æ®åº“表中。 + + + + Open a wizard that lets you import data from a comma separated text file into a database table. CSV files can be created on most database and spreadsheet applications. + 打开一个å‘导让您从一个逗å·é—´éš”的文本文件导入数æ®åˆ°ä¸€ä¸ªæ•°æ®åº“表中。CSV 文件å¯ä»¥åœ¨å¤§å¤šæ•°æ•°æ®åº“和电å­è¡¨æ ¼åº”用程åºä¸Šåˆ›å»ºã€‚ + + + + Export a database to a .sql dump text file. + 导出一个数æ®åº“导一个 .sql 转储文本文件。 + + + + This option lets you export a database to a .sql dump text file. SQL dump files contain all data necessary to recreate the database on most database engines, including MySQL and PostgreSQL. + 这个选项让你导出一个数æ®åº“导一个 .sql 转储文本文件。SQL 转储文件包å«åœ¨å¤§å¤šæ•°æ•°æ®åº“引擎上(包括 MySQL å’Œ PostgreSQL)釿–°åˆ›å»ºæ•°æ®åº“所需的所有数æ®ã€‚ + + + + Export a database table as a comma separated text file. + 导出一个数æ®åº“表为逗å·é—´éš”的文本文件。 + + + + Export a database table as a comma separated text file, ready to be imported into other database or spreadsheet applications. + 导出一个数æ®åº“表为逗å·é—´éš”的文本文件,准备好被导入到其他数æ®åº“或电å­è¡¨æ ¼åº”用程åºã€‚ + + + + Open the Create Table wizard, where it is possible to define the name and fields for a new table in the database + 打开“创建表â€å‘导,在那里å¯ä»¥å®šä¹‰åœ¨æ•°æ®åº“中的一个新表的å称和字段 + + + + Open the Delete Table wizard, where you can select a database table to be dropped. + 打开“删除表â€å‘导,在那里你å¯ä»¥é€‰æ‹©è¦ä¸¢å¼ƒçš„一个数æ®åº“表。 + + + + Open the Modify Table wizard, where it is possible to rename an existing table. It is also possible to add or delete fields form a table, as well as modify field names and types. + 打开“修改表â€å‘导,在其中å¯ä»¥é‡å‘½å一个现有的表。也å¯ä»¥ä»Žä¸€ä¸ªè¡¨ä¸­æ·»åŠ æˆ–åˆ é™¤å­—æ®µï¼Œä»¥åŠä¿®æ”¹å­—段å称和类型。 + + + + Open the Create Index wizard, where it is possible to define a new index on an existing database table. + 打开“创建索引â€å‘导,在那里å¯ä»¥åœ¨ä¸€ä¸ªçŽ°æœ‰çš„æ•°æ®åº“表上定义一个新索引。 + + + + &Preferences... + 首选项(&P)... + + + + + Open the preferences window. + 打开首选项窗å£ã€‚ + + + + &DB Toolbar + æ•°æ®åº“工具æ (&D) + + + + Shows or hides the Database toolbar. + 显示或éšè—æ•°æ®åº“工具æ ã€‚ + + + + Shift+F1 + + + + + &Recently opened + 最近打开(&R) + + + + Open &tab + 打开标签页(&T) + + + + Ctrl+T + + + + + + Database Structure + This has to be equal to the tab title in all the main tabs + æ•°æ®åº“结构 + + + + This is the structure of the opened database. +You can drag SQL statements from an object row and drop them into other applications or into another instance of 'DB Browser for SQLite'. + + 这是打开的数æ®åº“的结构。 +ä½ å¯ä»¥ä»Žä¸€ä¸ªå¯¹è±¡è¡Œä¸­æ‹–动 SQL 语å¥ï¼Œç„¶åŽæ‹–到其他应用中,或者拖到其他 'DB Browser for SQLite' 的实例中。 + + + + + + Browse Data + This has to be equal to the tab title in all the main tabs + æµè§ˆæ•°æ® + + + + + Edit Pragmas + This has to be equal to the tab title in all the main tabs + ç¼–è¾‘æ‚æ³¨ + + + + Warning: this pragma is not readable and this value has been inferred. Writing the pragma might overwrite a redefined LIKE provided by an SQLite extension. + 警告: æ­¤æ‚æ³¨æ— æ³•读å–ï¼Œæ­¤å€¼ä¸ºæŽ¨æ–­å¾—åˆ°ã€‚ç¼–è¾‘æ‚æ³¨å¯èƒ½ä¼šè¦†ç›–ç”± SQLite 扩展é‡å®šä¹‰çš„ LIKE。 + + + + + Execute SQL + This has to be equal to the tab title in all the main tabs + 执行 SQL + + + + &Tools + 工具(&T) + + + + DB Toolbar + æ•°æ®åº“å·¥å…·æ  + + + + Edit Database &Cell + 编辑数æ®åº“å•元格(&C) + + + + SQL &Log + SQL 日志(&L) + + + + Show S&QL submitted by + 显示 SQL æäº¤è‡ª(&Q) + + + + Error Log + 错误记录 + + + + This button clears the contents of the SQL logs + 此按钮清除 SQL 日志的内容 + + + + This panel lets you examine a log of all SQL commands issued by the application or by yourself + æ­¤é¢æ¿å¯ä»¥è®©ä½ è‡ªè¡Œæ£€æŸ¥æœ¬åº”ç”¨ç¨‹åºæ‰§è¡Œçš„æ‰€æœ‰ SQL 命令的日志。 + + + + &Plot + 图表(&P) + + + + This is the structure of the opened database. +You can drag multiple object names from the Name column and drop them into the SQL editor and you can adjust the properties of the dropped names using the context menu. This would help you in composing SQL statements. +You can drag SQL statements from the Schema column and drop them into the SQL editor or into other applications. + + è¿™æ˜¯å½“å‰æ‰“开的数æ®åº“的结构。 +ä½ å¯ä»¥ä»Žå字列拖拽多个对象å字到 SQL 编辑器中,å¯ä»¥ç”¨èœå•调节拖拽å字的属性。这å¯ä»¥å¸®åŠ©ä½ æž„å»º SQL 语å¥ã€‚ +ä½ å¯ä»¥ä»Žæž¶æž„列拖拽 SQL 语å¥åˆ° SQL 编辑器或其他应用中。 + + + + + Project Toolbar + å·¥ç¨‹å·¥å…·æ  + + + + Extra DB toolbar + å…¶ä»–æ•°æ®åº“å·¥å…·æ  + + + + + + Close the current database file + 关闭当剿•°æ®åº“文件 + + + + This button closes the connection to the currently open database file + æ­¤æŒ‰é’®å…³é—­åˆ°å½“å‰æ‰“开的数æ®åº“文件的连接 + + + + Ctrl+F4 + + + + + &Revert Changes + 倒退更改(&R) + + + + &Write Changes + 写入更改(&W) + + + + Open SQL file(s) + 打开 SQL 文件 + + + + This button opens files containing SQL statements and loads them in new editor tabs + æ­¤æŒ‰é’®æ‰“å¼€åŒ…å« SQL 语å¥çš„æ–‡ä»¶ï¼Œå°†å…¶è½½å…¥åˆ°æ–°æ ‡ç­¾é¡µ + + + + Execute line + 执行行 + + + + F1 + + + + + This button lets you save all the settings associated to the open DB to a DB Browser for SQLite project file + 此按钮让你将所有关于打开的数æ®åº“的设置ä¿å­˜åˆ°ä¸€ä¸ª DB Browser for SQLite 工程文件。 + + + + This button lets you open a DB Browser for SQLite project file + 此按钮让你打开一个 DB Browser for SQLite 工程文件。 + + + + Open Data&base Read Only... + åªè¯»æ‰“开数æ®åº“(&B)... + + + + Ctrl+Shift+O + + + + + Save results + ä¿å­˜ç»“æžœ + + + + Save the results view + ä¿å­˜ç»“果视图 + + + + This button lets you save the results of the last executed query + 此按钮让你ä¿å­˜ä¸Šæ¬¡æ‰§è¡Œçš„æŸ¥è¯¢çš„结果 + + + + + Find text in SQL editor + 在 SQL 编辑器中查找文本 + + + + Find + 查找 + + + + This button opens the search bar of the editor + æ­¤æŒ‰é’®æ‰“å¼€ç¼–è¾‘å™¨çš„æŸ¥æ‰¾æ  + + + + Ctrl+F + + + + + + Find or replace text in SQL editor + 在 SQL ç¼–è¾‘å™¨ä¸­æŸ¥æ‰¾æˆ–æ›¿æ¢æ–‡æœ¬ + + + + Find or replace + æŸ¥æ‰¾æˆ–æ›¿æ¢ + + + + This button opens the find/replace dialog for the current editor tab + 此按钮为当å‰çš„编辑器标签页打开查找/替æ¢å¯¹è¯æ¡† + + + + Ctrl+H + + + + + Export to &CSV + 导出到 &CSV + + + + Save as &view + ä¿å­˜ä¸ºè§†å›¾(&V) + + + + Save as view + ä¿å­˜ä¸ºè§†å›¾ + + + + Browse Table + æµè§ˆè¡¨ + + + + Shows or hides the Project toolbar. + 显示或éšè—å·¥ç¨‹å·¥å…·æ  + + + + Extra DB Toolbar + å…¶ä»–æ•°æ®åº“å·¥å…·æ  + + + + New In-&Memory Database + 新建内存数æ®åº“(&M) + + + + Drag && Drop Qualified Names + 拖拽é™å®šåç§° + + + + + Use qualified names (e.g. "Table"."Field") when dragging the objects and dropping them into the editor + 当拖拽对象到编辑器中时,使用é™å®šåç§° (例如 "Table"."Field") + + + + Drag && Drop Enquoted Names + 拖拽引用åå­— + + + + + Use escaped identifiers (e.g. "Table1") when dragging the objects and dropping them into the editor + 当拖拽对象到编辑器中时,使用转移标识符 (例如 "Table1") + + + + &Integrity Check + 完全性检查(&I) + + + + Runs the integrity_check pragma over the opened database and returns the results in the Execute SQL tab. This pragma does an integrity check of the entire database. + 对打开的数æ®åº“è¿è¡Œ integrity_check æ‚æ³¨å¹¶åœ¨æ‰§è¡Œ SQL æ ‡ç­¾é¡µè¿”å›žç»“æžœã€‚æ­¤æ‚æ³¨å¯¹æ•´ä¸ªæ•°æ®åº“进行完全性检查。 + + + + &Foreign-Key Check + 外键检查(&F) + + + + Runs the foreign_key_check pragma over the opened database and returns the results in the Execute SQL tab + 对打开的数æ®åº“è¿è¡Œ foreign_key_check æ‚æ³¨å¹¶åœ¨æ‰§è¡Œ SQL 标签页返回结果。 + + + + &Quick Integrity Check + 快速完全性检查(&Q) + + + + Run a quick integrity check over the open DB + 对打开的数æ®åº“执行快速完全性检查 + + + + Runs the quick_check pragma over the opened database and returns the results in the Execute SQL tab. This command does most of the checking of PRAGMA integrity_check but runs much faster. + 对打开的数æ®åº“è¿è¡Œ quick_check æ‚æ³¨å¹¶åœ¨æ‰§è¡Œ SQL 标签页返回结果。此命令会执行 integrity_check 的多数检查,但是è¦å¿«å¾—多。 + + + + &Optimize + 优化(&O) + + + + Attempt to optimize the database + å°è¯•优化数æ®åº“ + + + + Runs the optimize pragma over the opened database. This pragma might perform optimizations that will improve the performance of future queries. + 对打开的数æ®åº“è¿è¡Œ optimize æ‚æ³¨ã€‚å¯èƒ½ä¼šæ‰§è¡Œå¯¹æœªæ¥æŸ¥è¯¢æ€§èƒ½æœ‰å¸®åŠ©çš„ä¼˜åŒ–ã€‚ + + + + + Print + æ‰“å° + + + + Print text from current SQL editor tab + 从当å‰çš„ SQL ç¼–è¾‘å™¨æ ‡ç­¾é¡µæ‰“å°æ–‡æœ¬ + + + + Open a dialog for printing the text in the current SQL editor tab + æ‰“å¼€å¯¹è¯æ¡†ä»¥ä»Žå½“å‰çš„ SQL ç¼–è¾‘å™¨æ ‡ç­¾é¡µæ‰“å°æ–‡ + + + + Print the structure of the opened database + 打å°å½“剿‰“开的数æ®åº“的结构 + + + + Open a dialog for printing the structure of the opened database + æ‰“å¼€å¯¹è¯æ¡†ä»¥æ‰“å°å½“剿‰“开的数æ®åº“的结构 + + + + &Save Project As... + å¦å­˜ä¸ºå·¥ç¨‹(&S)... + + + + + + Save the project in a file selected in a dialog + 将工程ä¿å­˜ä¸ºæ–‡ä»¶ + + + + Save A&ll + 全部ä¿å­˜(&L) + + + + + + Save DB file, project file and opened SQL files + ä¿å­˜æ•°æ®åº“文件,工程文件,打开的SQL文件 + + + + Ctrl+Shift+S + + + + + &Database from SQL file... + 从 SQL 文件导入数æ®åº“(&D)... + + + + &Table from CSV file... + 从 CSV 文件导入表(&T)... + + + + &Database to SQL file... + 导出数æ®åº“到 SQL 文件(&D)... + + + + &Table(s) as CSV file... + 导出表到 CSV 文件(&T)... + + + + &Create Table... + 创建表(&C)... + + + + &Delete Table... + 删除表(&D)... + + + + &Modify Table... + 修改表(&M)... + + + + Create &Index... + 创建索引(&I)... + + + + W&hat's This? + 这是什么(&W)? + + + + &About + 关于(&A) + + + + This button opens a new tab for the SQL editor + 此按钮打开一个 SQL 编辑器的新标签页 + + + + &Execute SQL + 执行 SQL(&E) + + + + + Save the current session to a file + ä¿å­˜å½“å‰ä¼šè¯åˆ°ä¸€ä¸ªæ–‡ä»¶ + + + + + Load a working session from a file + ä»Žä¸€ä¸ªæ–‡ä»¶åŠ è½½å·¥ä½œä¼šè¯ + + + + + + Save SQL file + ä¿å­˜ SQL 文件 + + + + + Execute current line + 执行当å‰è¡Œ + + + + Ctrl+E + + + + + Export as CSV file + 导出为 CSV 文件 + + + + Export table as comma separated values file + 导出表为逗å·é—´éš”值文件 + + + + Ctrl+L + + + + + + Ctrl+P + + + + + Database encoding + æ•°æ®åº“ç¼–ç  + + + + + Choose a database file + 选择一个数æ®åº“文件 + + + + Ctrl+Return + Ctrl+回车 + + + + Ctrl+D + + + + + Ctrl+I + + + + + Encrypted + 加密的 + + + + Database is encrypted using SQLCipher + æ•°æ®åº“使用 SQLCipher 进行了加密 + + + + Read only + åªè¯» + + + + Database file is read only. Editing the database is disabled. + æ•°æ®åº“是åªè¯»çš„ã€‚ç¼–è¾‘è¢«ç¦æ­¢ã€‚ + + + + Could not open database file. +Reason: %1 + 无法打开数æ®åº“文件。 +原因: %1 + + + + + + Choose a filename to save under + 选择一个文件åä¿å­˜ + + + + Setting PRAGMA values or vacuuming will commit your current transaction. +Are you sure? + è®¾ç½®æˆ–æ¸…é™¤æ‚æ³¨å€¼ä¼šæäº¤ä½ çš„当å‰äº‹åŠ¡ã€‚ +你确定å—? + + + + Error while saving the database file. This means that not all changes to the database were saved. You need to resolve the following error first. + +%1 + ä¿å­˜æ•°æ®åº“æ–‡ä»¶æ—¶å‡ºé”™ã€‚è¿™è¡¨æ˜Žä¸æ˜¯æ‰€æœ‰å¯¹æ•°æ®åº“的更改都被ä¿å­˜äº†ã€‚你需è¦å…ˆè§£å†³ä»¥ä¸‹é”™è¯¯ã€‚ + +%1 + + + + A new DB Browser for SQLite version is available (%1.%2.%3).<br/><br/>Please download at <a href='%4'>%4</a>. + 有新版本的 DB Browser for SQLite (%1.%2.%3)å¯ç”¨ã€‚<br/><br/>请从 <a href='%4'>%4</a> 下载。 + + + + DB Browser for SQLite project file (*.sqbpro) + DB Browser for SQLite 工程文件 (*.sqbpro) + + + + Reset Window Layout + é‡ç½®çª—å£å¸ƒå±€ + + + + Alt+0 + + + + + The database is currenctly busy. + æ•°æ®åº“正忙。 + + + + Click here to interrupt the currently running query. + 点击此处中断当å‰è¿è¡Œçš„æŸ¥è¯¢ã€‚ + + + + You are still executing SQL statements. Closing the database now will stop their execution, possibly leaving the database in an inconsistent state. Are you sure you want to close the database? + 你正在执行SQL语å¥ã€‚关闭数æ®åº“ä¼šåœæ­¢æ‰§è¡Œï¼Œå¯èƒ½ä½¿æ•°æ®åº“处于ä¸å‡†ç¡®çš„状æ€ã€‚确实è¦å…³é—­æ•°æ®åº“å—? + + + + Do you want to save the changes made to the project file '%1'? + 是å¦è¦ä¿å­˜å¯¹å·¥ç¨‹æ–‡ä»¶ '%1' 的修改? + + + + Error checking foreign keys after table modification. The changes will be reverted. + 修改表格åŽçš„外键检查错误。修改会被回退。 + + + + This table did not pass a foreign-key check.<br/>You should run 'Tools | Foreign-Key Check' and fix the reported issues. + 此表格没有通过外键检查。<br/>ä½ éœ€è¦æ‰§è¡Œ '工具 | 外键检查' å¹¶ä¿®å¤å‘现的问题。 + + + + Edit View %1 + 编辑视图 %1 + + + + Edit Trigger %1 + 编辑触å‘器 %1 + + + + + At line %1: + 在行 %1: + + + + Result: %1 + 结果: %1 + + + + Result: %2 + 结果: %2 + + + + Execution finished with errors. + 执行已完æˆï¼Œä½†æœ‰é”™è¯¯ã€‚ + + + + Execution finished without errors. + 执行完æˆã€‚ + + + + Opened '%1' in read-only mode from recent file list + 从最近的文件列表中用åªè¯»æ–¹å¼æ‰“å¼€ %1 + + + + Opened '%1' from recent file list + 从最近的文件列表中打开 %1 + + + + &%1 %2%3 + &%1 %2%3 + + + + (read only) + (åªè¯») + + + + Open Database or Project + 打开数æ®åº“或工程 + + + + Attach Database... + 附加数æ®åº“... + + + + Import CSV file(s)... + 导入CSV文件... + + + + Select the action to apply to the dropped file(s). <br/>Note: only 'Import' will process more than one file. + + 选择è¦åº”用到拖放的文件的æ“作。<br/>注æ„ï¼šåªæœ‰â€œå¯¼å…¥â€ä¼šå¤„ç†å¤šä¸ªæ–‡ä»¶ã€‚ + + + + + Do you want to save the changes made to SQL tabs in a new project file? + 是å¦è¦æŠŠå¯¹SQL的修改ä¿å­˜ä¸ºå·¥ç¨‹æ–‡ä»¶ï¼Ÿ + + + + This action will open a new SQL tab with the following statements for you to edit and run: + 此动作会打开包å«ä¸‹åˆ—语å¥çš„æ–°çš„ SQL 标签页以编辑并è¿è¡Œ: + + + + Rename Tab + é‡å‘½å标签 + + + + Duplicate Tab + å¤åˆ¶æ ‡ç­¾ + + + + Close Tab + 关闭标签 + + + + Opening '%1'... + 正在打开 '%1'... + + + + There was an error opening '%1'... + 打开 '%1' 时出错... + + + + Value is not a valid URL or filename: %1 + 䏿˜¯æ­£ç¡®çš„URL或文件å:%1 + + + + Do you want to save the changes made to the SQL file %1? + 是å¦è¦ä¿å­˜å¯¹SQL文件 %1 的修改? + + + + The statements in this tab are still executing. Closing the tab will stop the execution. This might leave the database in an inconsistent state. Are you sure you want to close the tab? + 此标签内的SQLè¯­å¥æ­£åœ¨è¢«æ‰§è¡Œã€‚å…³é—­æ ‡ç­¾ä¼šåœæ­¢æ‰§è¡Œï¼Œå¯èƒ½ä½¿æ•°æ®åº“处于ä¸å‡†ç¡®çš„状æ€ã€‚确实è¦å…³é—­æ ‡ç­¾å—? + + + + Could not find resource file: %1 + ä¸èƒ½æ‰¾åˆ°èµ„æºæ–‡ä»¶ï¼š%1 + + + + Choose a project file to open + é€‰æ‹©ä¸€ä¸ªè¦æ‰“开的工程文件 + + + + This project file is using an old file format because it was created using DB Browser for SQLite version 3.10 or lower. Loading this file format is still fully supported but we advice you to convert all your project files to the new file format because support for older formats might be dropped at some point in the future. You can convert your files by simply opening and re-saving them. + 此工程文件使用了旧的文件格å¼ï¼Œå› ä¸ºå®ƒæ˜¯ç”± DB Browser for SQLite version 3.10 或更低版本创建的。加载此文件格å¼ä¾ç„¶å®Œå…¨æ”¯æŒï¼Œä½†æˆ‘们建议你把工程转æ¢åˆ°æ–°çš„æ ¼å¼ï¼Œå› ä¸ºæ—§æ ¼å¼æ”¯æŒå°†æ¥å¯èƒ½ä¼šå¤±æ•ˆã€‚ä½ å¯ä»¥é€šè¿‡æ‰“开并釿–°ä¿å­˜çš„æ–¹å¼æ¥è½¬æ¢ã€‚ + + + + Could not open project file for writing. +Reason: %1 + 未能写入工程文件。 +原因:%1 + + + + Busy (%1) + 正忙 (%1) + + + + Are you sure you want to undo all changes made to the database file '%1' since the last save? + 您是å¦ç¡®è®¤æ‚¨æƒ³æ’¤é”€ä»Žä¸Šæ¬¡ä¿å­˜ä»¥æ¥å¯¹æ•°æ®åº“文件‘%1’åšå‡ºçš„æ‰€æœ‰æ›´æ”¹ã€‚? + + + + Choose a file to import + 选择è¦å¯¼å…¥çš„一个文件 + + + + Text files(*.sql *.txt);;All files(*) + 文本文件(*.sql *.txt);;所有文件(*) + + + + Do you want to create a new database file to hold the imported data? +If you answer no we will attempt to import the data in the SQL file to the current database. + 您是å¦ç¡®è®¤æ‚¨æƒ³åˆ›å»ºä¸€ä¸ªæ–°çš„æ•°æ®åº“文件用æ¥å­˜æ”¾å¯¼å…¥çš„æ•°æ®? +如果您会到“å¦â€çš„è¯ï¼Œæˆ‘们将å°è¯•导入 SQL 文件中的数æ®åˆ°å½“剿•°æ®åº“。 + + + + Window Layout + 窗å£å¸ƒå±€ + + + + Simplify Window Layout + 精简窗å£å¸ƒå±€ + + + + Shift+Alt+0 + + + + + Dock Windows at Bottom + åœé çª—å£åˆ°åº•部 + + + + Dock Windows at Left Side + åœé çª—å£åˆ°å·¦ä¾§ + + + + Dock Windows at Top + åœé çª—å£åˆ°é¡¶éƒ¨ + + + + File %1 already exists. Please choose a different name. + 文件 %1 已存在。请选择一个ä¸åŒçš„å称。 + + + + Error importing data: %1 + å¯¼å…¥æ•°æ®æ—¶å‡ºé”™: %1 + + + + Import completed. + 导入完æˆã€‚ + + + + Delete View + 删除视图 + + + + Modify View + 修改视图 + + + + Delete Trigger + 删除触å‘器 + + + + Modify Trigger + 修改触å‘器 + + + + Delete Index + 删除索引 + + + + + Delete Table + 删除表 + + + + Setting PRAGMA values will commit your current transaction. +Are you sure? + 设置 PRAGMA 值将会æäº¤æ‚¨çš„当å‰äº‹åŠ¡ã€‚ +您确定å—? + + + + In-Memory database + 内存数æ®åº“ + + + + Are you sure you want to delete the table '%1'? +All data associated with the table will be lost. + 你确定è¦åˆ é™¤è¡¨ '%1' å—? +所有关è”的数æ®éƒ½ä¼šä¸¢å¤±ã€‚ + + + + Are you sure you want to delete the view '%1'? + 你确定è¦åˆ é™¤è§†å›¾ '%1' å—? + + + + Are you sure you want to delete the trigger '%1'? + 你确定è¦åˆ é™¤è§¦å‘器 '%1' å—? + + + + Are you sure you want to delete the index '%1'? + 你确定è¦åˆ é™¤ç´¢å¼• '%1' å—? + + + + Error: could not delete the table. + 错误: 无法删除表。 + + + + Error: could not delete the view. + 错误: 无法删除视图。 + + + + Error: could not delete the trigger. + 错误: 无法删除触å‘器。 + + + + Error: could not delete the index. + 错误: 无法删除索引。 + + + + Message from database engine: +%1 + æ¥è‡ªæ•°æ®åº“引擎的消æ¯: +%1 + + + + Editing the table requires to save all pending changes now. +Are you sure you want to save the database? + 编辑表格之å‰éœ€è¦ç«‹åˆ»ä¿å­˜æ‰€æœ‰ä¿®æ”¹ã€‚ +你确定è¦ä¿å­˜æ•°æ®åº“å—? + + + + You are already executing SQL statements. Do you want to stop them in order to execute the current statements instead? Note that this might leave the database in an inconsistent state. + ä½ å·²ç»åœ¨æ‰§è¡ŒSQL语å¥ã€‚是å¦è¦åœæ­¢æ‰§è¡Œå¹¶æ”¹ä¸ºæ‰§è¡Œå½“å‰è¯­å¥ï¼Ÿæ³¨æ„,这å¯èƒ½ä½¿æ•°æ®åº“处于ä¸å‡†ç¡®çš„状æ€ã€‚ + + + + -- EXECUTING SELECTION IN '%1' +-- + -- 执行 '%1' 中所选 +-- + + + + -- EXECUTING LINE IN '%1' +-- + -- 执行 '%1' 中的行 +-- + + + + -- EXECUTING ALL IN '%1' +-- + -- 执行 '%1' 中所有 +-- + + + + %1 rows returned in %2ms + %1 行返回,耗时 %2ms + + + + Choose text files + 选择文本文件 + + + + Import completed. Some foreign key constraints are violated. Please fix them before saving. + 导入完æˆã€‚一些外键约æŸè¢«è¿å了。请在ä¿å­˜ä¹‹å‰ä¿®å¤ã€‚ + + + + Modify Index + 修改索引 + + + + Modify Table + 修改表 + + + + Do you want to save the changes made to SQL tabs in the project file '%1'? + 是å¦è¦æŠŠå¯¹SQL的修改ä¿å­˜åˆ°å·¥ç¨‹æ–‡ä»¶ '%1' ? + + + + Select SQL file to open + é€‰æ‹©è¦æ‰“开的 SQL 文件 + + + + Select file name + 选择文件å + + + + Select extension file + 选择扩展文件 + + + + Extension successfully loaded. + 扩展æˆåŠŸåŠ è½½ã€‚ + + + + Error loading extension: %1 + 加载扩展时出错: %1 + + + + + Don't show again + ä¸å†æ˜¾ç¤º + + + + New version available. + 新版本å¯ç”¨ã€‚ + + + + Project saved to file '%1' + 工程已ä¿å­˜åˆ°æ–‡ä»¶ '%1' + + + + Collation needed! Proceed? + éœ€è¦æ•´ç†! ç»§ç»­? + + + + A table in this database requires a special collation function '%1' that this application can't provide without further knowledge. +If you choose to proceed, be aware bad things can happen to your database. +Create a backup! + æ•°æ®åº“中的一个表需è¦ç‰¹å®šçš„æ•´ç†æ–¹æ³• '%1' 但本应用程åºä¸äº†è§£æ•…无法æä¾›ã€‚ +如果您选择继续,å°å¿ƒå¯èƒ½ä¼šæœ‰ä¸å¥½çš„事情å‘生。 +记得备份! + + + + creating collation + åˆ›å»ºæ•´ç† + + + + Set a new name for the SQL tab. Use the '&&' character to allow using the following character as a keyboard shortcut. + 为 SQL 标签页设置新å称。使用 '&&' 字符æ¥å…许它作为键盘快æ·é”®ã€‚ + + + + Please specify the view name + 请指定视图åç§° + + + + There is already an object with that name. Please choose a different name. + 已有åŒå的对象。请选择一个ä¸åŒçš„å称。 + + + + View successfully created. + 视图æˆåŠŸåˆ›å»ºã€‚ + + + + Error creating view: %1 + 创建视图时出错: %1 + + + + This action will open a new SQL tab for running: + 此动作会打开新的 SQL 标签页以è¿è¡Œ: + + + + Press Help for opening the corresponding SQLite reference page. + 按下帮助以打开对应的 SQLite å‚考页。 + + + + NullLineEdit + + + Set to NULL + 设置为 NULL + + + + Alt+Del + + + + + PlotDock + + + Plot + 绘图 + + + + <html><head/><body><p>This pane shows the list of columns of the currently browsed table or the just executed query. You can select the columns that you want to be used as X or Y axis for the plot pane below. The table shows detected axis type that will affect the resulting plot. For the Y axis you can only select numeric columns, but for the X axis you will be able to select:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Date/Time</span>: strings with format &quot;yyyy-MM-dd hh:mm:ss&quot; or &quot;yyyy-MM-ddThh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Date</span>: strings with format &quot;yyyy-MM-dd&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Time</span>: strings with format &quot;hh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Label</span>: other string formats. Selecting this column as X axis will produce a Bars plot with the column values as labels for the bars</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Numeric</span>: integer or real values</li></ul><p>Double-clicking the Y cells you can change the used color for that graph.</p></body></html> + <html><head/><body><p>æ­¤é¢æ¿æ˜¾ç¤ºå½“å‰è¡¨æˆ–者刚刚执行的查询的列。你å¯ä»¥é€‰æ‹©åˆ—用åšåœ¨ä¸‹é¢ç”»å›¾æ—¶çš„ X è½´å’Œ Y 轴。表中显示检测到的会影å“绘图结果的轴类型。Y è½´åªå…许选择数值类型,但 X è½´å¯ä»¥é€‰æ‹©:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">日期/æ—¶é—´</span>: æ ¼å¼åŒ–的字符串 &quot;yyyy-MM-dd hh:mm:ss&quot; 或 &quot;yyyy-MM-ddThh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">日期</span>: æ ¼å¼åŒ–的字符串 &quot;yyyy-MM-dd&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">æ—¶é—´</span>: æ ¼å¼åŒ–的字符串 &quot;hh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">标签</span>: å…¶ä»–æ ¼å¼çš„字符串。选这项作为x轴,会绘制æ¡å½¢å›¾ï¼Œå¹¶ç”¨å€¼ä½œä¸ºæ¡å½¢çš„æ ‡ç­¾</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">数值</span>: 整数或实数值</li></ul><p>åŒå‡» Y å•元格å¯ä»¥æ”¹å˜å›¾ä¸­æ‰€ç”¨çš„颜色。</p></body></html> + + + + Columns + 列 + + + + X + X + + + + Y1 + Y1 + + + + Y2 + Y2 + + + + Axis Type + 轴类型 + + + + Here is a plot drawn when you select the x and y values above. + +Click on points to select them in the plot and in the table. Ctrl+Click for selecting a range of points. + +Use mouse-wheel for zooming and mouse drag for changing the axis range. + +Select the axes or axes labels to drag and zoom only in that orientation. + 这是在你在上é¢é€‰æ‹© x å’Œ y 值åŽç»˜åˆ¶å‡ºçš„图。 + +点击点å¯ä»¥åœ¨å›¾å’Œè¡¨æ ¼ä¸­é€‰ä¸­å®ƒä»¬ã€‚Ctrl+点击以选中一批点。 + +使用鼠标滚轮å¯ä»¥ç¼©æ”¾ï¼Œé¼ æ ‡æ‹–拽å¯ä»¥æ”¹å˜å标轴的范围。 + +选择轴或者轴上的标签并拖拽å¯ä»¥ç¼©æ”¾æ­¤æ–¹å‘。 + + + + Line type: + 线形: + + + + + None + æ—  + + + + Line + 折线 + + + + StepLeft + 左阶梯 + + + + StepRight + å³é˜¶æ¢¯ + + + + StepCenter + 中阶梯 + + + + Impulse + 脉冲 + + + + Point shape: + 点形: + + + + Cross + å‰ + + + + Plus + 加 + + + + Circle + 圈 + + + + Disc + 实心点 + + + + Square + 方形 + + + + Diamond + è±å½¢ + + + + Star + 星 + + + + Triangle + 三角 + + + + TriangleInverted + 倒三角 + + + + CrossSquare + å‰ä¸Žæ–¹å½¢ + + + + PlusSquare + 加与方形 + + + + CrossCircle + å‰ä¸Žåœˆ + + + + PlusCircle + 加与圈 + + + + Peace + å’Œå¹³ç¬¦å· + + + + <html><head/><body><p>Save current plot...</p><p>File format chosen by extension (png, jpg, pdf, bmp)</p></body></html> + <html><head/><body><p>ä¿å­˜å½“å‰å›¾è¡¨...</p><p>æ–‡ä»¶æ ¼å¼æŒ‰æ‰©å±•å选择(png, jpg, pdf, bmp)</p></body></html> + + + + Save current plot... + ä¿å­˜å½“å‰å›¾è¡¨... + + + + + Load all data and redraw plot + 载入所有数æ®å¹¶é‡æ–°ç»˜å›¾ + + + + + + Row # + 行 # + + + + Copy + å¤åˆ¶ + + + + Print... + 打å°... + + + + Show legend + 显示图例 + + + + Stacked bars + å †å çš„æ¡å½¢ + + + + Date/Time + 日期/æ—¶é—´ + + + + Date + 日期 + + + + Time + æ—¶é—´ + + + + + Numeric + 数值 + + + + Label + 标签 + + + + Invalid + 无效的 + + + + Load all data and redraw plot. +Warning: not all data has been fetched from the table yet due to the partial fetch mechanism. + 载入所有数æ®å¹¶é‡æ–°ç»˜å›¾ã€‚ +警告:由于部分加载机制,现在并没有加载所有的数æ®ã€‚ + + + + Choose an axis color + é€‰ä¸€ä¸ªåæ ‡è½´é¢œè‰² + + + + Choose a filename to save under + 选择一个文件åä¿å­˜ + + + + PNG(*.png);;JPG(*.jpg);;PDF(*.pdf);;BMP(*.bmp);;All Files(*) + PNG(*.png);;JPG(*.jpg);;PDF(*.pdf);;BMP(*.bmp);;所有文件(*) + + + + There are curves in this plot and the selected line style can only be applied to graphs sorted by X. Either sort the table or query by X to remove curves or select one of the styles supported by curves: None or Line. + 图中有曲线,选择的线形åªèƒ½ç”¨åˆ°æŒ‰ X 排列的图中。è¦ä¹ˆå¯¹è¡¨æŽ’åºæˆ–者用 X 查询,è¦ä¹ˆé€‰ä¸€ç§æ›²çº¿æ”¯æŒçš„线形:无或者折线。 + + + + Loading all remaining data for this table took %1ms. + 加载表中全部剩余数æ®èŠ±è´¹äº†%1毫秒。 + + + + PreferencesDialog + + + Preferences + 首选项 + + + + &General + 通用(&G) + + + + Remember last location + è®°ä½ä¸Šæ¬¡çš„ä½ç½® + + + + Always use this location + 总是使用此ä½ç½® + + + + Remember last location for session only + 仅在会è¯ä¸­è®°ä½ä¸Šæ¬¡çš„ä½ç½® + + + + Lan&guage + 语言(&G) + + + + Automatic &updates + 自动更新(&A) + + + + &Database + æ•°æ®åº“(&D) + + + + Database &encoding + æ•°æ®åº“ç¼–ç (&E) + + + + Open databases with foreign keys enabled. + 打开å¯ç”¨äº†å¤–键的数æ®åº“。 + + + + &Foreign keys + 外键(&F) + + + + + + + + + + + + enabled + å¯ç”¨ + + + + Default &location + 默认ä½ç½®(&L) + + + + + + ... + ... + + + + Remove line breaks in schema &view + 删除架构视图中的æ¢è¡Œ(&V) + + + + Show remote options + 显示远程选项 + + + + Prefetch block si&ze + 预å–å—尺寸(&Z) + + + + SQ&L to execute after opening database + 打开数æ®åº“åŽæ‰§è¡Œçš„ SQL(&L) + + + + Default field type + 默认字段类型 + + + + Data &Browser + æ•°æ®æµè§ˆå™¨(&B) + + + + Font + 字体 + + + + &Font + 字体(&F) + + + + Content + 内容 + + + + Symbol limit in cell + å•元格字符数é™åˆ¶ + + + + NULL + 空 + + + + Regular + 常规 + + + + Binary + 二进制 + + + + Background + 背景 + + + + Filters + 过滤 + + + + Threshold for completion and calculation on selection + 自动完æˆä¸Žæ±‡æ€»é™åˆ¶ + + + + Show images in cell + 显示å•元格中图片 + + + + Enable this option to show a preview of BLOBs containing image data in the cells. This can affect the performance of the data browser, however. + å¯ç”¨æ­¤é€‰é¡¹å¯ä»¥é¢„览å•元格BOLB中包å«çš„å›¾ç‰‡ã€‚ä½†è¿™ä¼šå½±å“æµè§ˆæ•°æ®çš„æ€§èƒ½ã€‚ + + + + Escape character + 转义字符 + + + + Delay time (&ms) + å»¶æ—¶(毫秒)(&M) + + + + Set the waiting time before a new filter value is applied. Can be set to 0 for disabling waiting. + 设置应用新过滤值å‰çš„等待时间。设为0以ç¦ç”¨ç­‰å¾…。 + + + + &SQL + &SQL + + + + Settings name + 设置åç§° + + + + Context + 上下文 + + + + Colour + 颜色 + + + + Bold + 粗体 + + + + Italic + 斜体 + + + + Underline + 下划线 + + + + Keyword + 关键字 + + + + Function + 函数 + + + + Table + 表 + + + + Comment + 注释 + + + + Identifier + 识别符 + + + + String + 字符串 + + + + Current line + 当å‰è¡Œ + + + + SQL &editor font size + SQL 编辑器字体大å°(&E) + + + + Tab size + Tab 长度 + + + + SQL editor &font + SQL 编辑器字体(&F) + + + + Error indicators + 显示代ç é”™è¯¯ + + + + Hori&zontal tiling + 水平平铺(&Z) + + + + If enabled the SQL code editor and the result table view are shown side by side instead of one over the other. + 如果å¯ç”¨ï¼ŒSQL ç¼–è¾‘å™¨å’Œç»“æžœè¡¨è§†å›¾å°†å¹¶æŽ’æ˜¾ç¤ºï¼Œè€Œä¸æ˜¯ä¸Šä¸‹æ˜¾ç¤ºã€‚ + + + + Code co&mpletion + 自动补全(&M) + + + + Toolbar style + 工具æ é£Žæ ¼ + + + + + + + + Only display the icon + 仅显示图标 + + + + + + + + Only display the text + 仅显示文本 + + + + + + + + The text appears beside the icon + æ–‡æœ¬åœ¨å›¾æ ‡æ— + + + + + + + + The text appears under the icon + 文本在图标下 + + + + + + + + Follow the style + éµå¾ªé£Žæ ¼ + + + + DB file extensions + æ•°æ®åº“文件扩展 + + + + Manage + ç®¡ç† + + + + Main Window + ä¸»çª—å£ + + + + Database Structure + æ•°æ®åº“结构 + + + + Browse Data + æµè§ˆæ•°æ® + + + + Execute SQL + 执行 SQL + + + + Edit Database Cell + 编辑数æ®åº“å•元格 + + + + When this value is changed, all the other color preferences are also set to matching colors. + 改å˜è¿™ä¸ªé€‰é¡¹ä¹Ÿä¼šæ”¹å˜å…¶ä»–的颜色风格。 + + + + Follow the desktop style + è·Ÿéšæ¡Œé¢é£Žæ ¼ + + + + Dark style + 黑暗风格 + + + + Application style + 界é¢é£Žæ ¼ + + + + This sets the font size for all UI elements which do not have their own font size option. + 此选项为所有组件设置字体大å°ï¼Œæœ‰å•独的字体大å°é€‰é¡¹çš„组件除外。 + + + + Font size + å­—ä½“å¤§å° + + + + When enabled, the line breaks in the Schema column of the DB Structure tab, dock and printed output are removed. + 当å¯ç”¨æ—¶ï¼Œæ•°æ®åº“结构标签页中的架构列里的æ¢è¡Œï¼Œæ˜¾ç¤ºã€æ‰“å°æ—¶è¢«ç§»é™¤ã€‚ + + + + Database structure font size + æ•°æ®åº“ç»“æž„å­—ä½“å¤§å° + + + + Font si&ze + 字体大å°(&Z) + + + + This is the maximum number of items allowed for some computationally expensive functionalities to be enabled: +Maximum number of rows in a table for enabling the value completion based on current values in the column. +Maximum number of indexes in a selection for calculating sum and average. +Can be set to 0 for disabling the functionalities. + å¯ç”¨ä¸€äº›è€—费资æºçš„计算的最大行数,包括: +å¯ç”¨è‡ªåŠ¨å®Œæˆçš„表中最大行数。 +自动进行求和与平å‡å€¼çš„æœ€å¤§é€‰æ‹©å•元格数é‡ã€‚ +å¯ä»¥è®¾ç½®ä¸º0以ç¦ç”¨è¿™äº›åŠŸèƒ½ã€‚ + + + + This is the maximum number of rows in a table for enabling the value completion based on current values in the column. +Can be set to 0 for disabling completion. + 这是表å¯ç”¨æ ¹æ®å½“å‰å€¼çš„自动补完的最大的列数é‡ã€‚ +设置æˆ0以ç¦ç”¨è¡¥å®Œã€‚ + + + + Field display + 字段显示 + + + + Displayed &text + 显示的文本(&T) + + + + + + + + + Click to set this color + 点击设置颜色 + + + + Text color + 文本颜色 + + + + Background color + 背景颜色 + + + + Preview only (N/A) + 仅预览 (N/A) + + + + Foreground + 剿™¯ + + + + SQL &results font size + SQL 结果的字体大å°(&R) + + + + &Wrap lines + æ¢è¡Œ(&W) + + + + Never + æ°¸ä¸ + + + + At word boundaries + 按照è¯è¾¹ç•Œ + + + + At character boundaries + 按照字æ¯è¾¹ç•Œ + + + + At whitespace boundaries + 按照空白字符边界 + + + + &Quotes for identifiers + 标识转义(&Q) + + + + Choose the quoting mechanism used by the application for identifiers in SQL code. + 选择 SQL 代ç ä¸­æ ‡è¯†çš„转义方å¼ã€‚ + + + + "Double quotes" - Standard SQL (recommended) + "åŒå¼•å·" - 标准 SQL (推è) + + + + `Grave accents` - Traditional MySQL quotes + `é‡éŸ³ç¬¦` - ç»å…¸çš„ MySQL 转义 + + + + [Square brackets] - Traditional MS SQL Server quotes + [方括å·] - ç»å…¸çš„ MS SQL Server 转义 + + + + Keywords in &UPPER CASE + 关键字大写(&U) + + + + When set, the SQL keywords are completed in UPPER CASE letters. + 设置时,SQL 关键字被自动补全为大写字æ¯ã€‚ + + + + When set, the SQL code lines that caused errors during the last execution are highlighted and the results frame indicates the error in the background + 设置时,导致上次执行出错的 SQL 代ç è¡Œä¼šè¢«é«˜äº®ã€‚ + + + + Close button on tabs + 标签显示关闭按钮 + + + + If enabled, SQL editor tabs will have a close button. In any case, you can use the contextual menu or the keyboard shortcut to close them. + 如果å¯ç”¨ï¼ŒSQL 编辑器标签页上将显示关闭按钮。无论是å¦å¯ç”¨ï¼Œä½ éƒ½å¯ä»¥é€šè¿‡å³é”®èœå•或者键盘快æ·é”®æ¥å…³é—­æ ‡ç­¾ã€‚ + + + + &Extensions + 扩展(&E) + + + + Select extensions to load for every database: + 选择æ¯ä¸ªæ•°æ®åº“è¦åŠ è½½çš„æ‰©å±•: + + + + Add extension + 添加扩展 + + + + Remove extension + 删除扩展 + + + + <html><head/><body><p>While supporting the REGEXP operator SQLite doesn't implement any regular expression<br/>algorithm but calls back the running application. DB Browser for SQLite implements this<br/>algorithm for you to let you use REGEXP out of the box. However, as there are multiple possible<br/>implementations of this and you might want to use another one, you're free to disable the<br/>application's implementation and load your own by using an extension. Requires restart of the application.</p></body></html> + <html><head/><body><p>è™½ç„¶æ”¯æŒ REGEXP è¿ç®—符,但是 SQLite 并没有实现任何正则表达å¼ç®—法,<br/>而是回调应用程åºã€‚DB Browser for SQLite 为您实现了算法,以便您å¯ä»¥<br/>打破常规使用 REGEXP。由于算法有多ç§å¯èƒ½çš„实现,您å¯èƒ½æƒ³ç”¨å…¶ä»–的,<br/>所以您å¯ä»¥ç¦ç”¨ç®—法实现并通过扩展加载您的实现。需è¦é‡å¯åº”用程åºã€‚</p></body></html> + + + + Disable Regular Expression extension + ç¦ç”¨æ­£åˆ™è¡¨è¾¾å¼æ‰©å±• + + + + <html><head/><body><p>SQLite provides an SQL function for loading extensions from a shared library file. Activate this if you want to use the <span style=" font-style:italic;">load_extension()</span> function from SQL code.</p><p>For security reasons, extension loading is turned off by default and must be enabled through this setting. You can always load extensions through the GUI, even though this option is disabled.</p></body></html> + <html><head/><body><p>SQLite æä¾›äº† SQL 函数用于从共享库中加载扩展。å¯ç”¨è¿™ä¸ªé€‰é¡¹ä»¥åœ¨SQL代ç ä¸­ä½¿ç”¨ <span style=" font-style:italic;">load_extension()</span> 函数。</p><p>因安全原因,加载扩展功能默认被关闭,须在此处手动å¯ç”¨ã€‚但å³ä½¿æ­¤é€‰é¡¹æœªå¯ç”¨ï¼Œä»èƒ½é€šè¿‡ä¸Šæ–¹çš„界é¢åŠ è½½æ‰©å±•ã€‚</p></body></html> + + + + Allow loading extensions from SQL code + å…许在SQL代ç é‡ŒåŠ è½½æ‰©å±• + + + + Remote + 远程 + + + + CA certificates + CA è¯ä¹¦ + + + + Proxy + ä»£ç†æœåС噍 + + + + Configure + é…ç½® + + + + + Subject CN + 主题 CN (Subject CN) + + + + Common Name + 公用åç§° (Common Name) + + + + Subject O + 主题 O (Subject O) + + + + Organization + 组织 (Organization) + + + + + Valid from + 有效期从 + + + + + Valid to + 有效期到 + + + + + Serial number + åºåˆ—å· + + + + Your certificates + 您的è¯ä¹¦ + + + + File + 文件 + + + + Subject Common Name + 主题公用åç§° (Subject Common Name) + + + + Issuer CN + ç­¾å‘人 CN (Issuer CN) + + + + Issuer Common Name + ç­¾å‘人公用åç§° (Issuer Common Name) + + + + Clone databases into + 克隆数æ®åº“ä¿¡æ¯ + + + + + Choose a directory + 选择一个目录 + + + + The language will change after you restart the application. + 语言将在é‡å¯åº”用程åºåŽæ”¹å˜ã€‚ + + + + Select extension file + 选择扩展文件 + + + + Extensions(*.so *.dylib *.dll);;All files(*) + 扩展(*.so *.dylib *.dll);;所有文件(*) + + + + Import certificate file + 导入è¯ä¹¦æ–‡ä»¶ + + + + No certificates found in this file. + 在文件中找ä¸åˆ°è¯ä¹¦ã€‚ + + + + Are you sure you want do remove this certificate? All certificate data will be deleted from the application settings! + 您确定è¦åˆ é™¤æ­¤è¯ä¹¦å—?所有的è¯ä¹¦æ•°æ®éƒ½ä¼šè¢«ä»Žåº”ç”¨è®¾ç½®ä¸­åˆ é™¤ï¼ + + + + Are you sure you want to clear all the saved settings? +All your preferences will be lost and default values will be used. + ä½ ç¡®å®šè¦æ¸…除所有ä¿å­˜çš„设置å—? +所有你åšçš„设置都会丢失,并使用默认值。 + + + + ProxyDialog + + + Proxy Configuration + ä»£ç†æœåС噍é…ç½® + + + + Pro&xy Type + ä»£ç†æœåŠ¡å™¨ç±»åž‹ + + + + Host Na&me + 主机å + + + + Port + ç«¯å£ + + + + Authentication Re&quired + è¦æ±‚éªŒè¯ + + + + &User Name + 用户å + + + + Password + å¯†ç  + + + + None + æ—  + + + + System settings + è·Ÿéšç³»ç»Ÿè®¾ç½® + + + + HTTP + HTTP + + + + Socks v5 + Socks v5 + + + + QObject + + + Error importing data + å¯¼å…¥æ•°æ®æ—¶å‡ºé”™ + + + + from record number %1 + è‡ªè®°å½•ç¼–å· %1 + + + + . +%1 + . +%1 + + + + Importing CSV file... + 导入CSV文件... + + + + Cancel + å–æ¶ˆ + + + + All files (*) + 所有文件 (*) + + + + SQLite database files (*.db *.sqlite *.sqlite3 *.db3) + SQLite æ•°æ®åº“文件 (*.db *.sqlite *.sqlite3 *.db3) + + + + Left + å·¦ + + + + Right + 有 + + + + Center + 居中 + + + + Justify + 两段 + + + + SQLite Database Files (*.db *.sqlite *.sqlite3 *.db3) + SQLite æ•°æ®åº“文件 (*.db *.sqlite *.sqlite3 *.db3) + + + + DB Browser for SQLite Project Files (*.sqbpro) + DB Browser for SQLite 工程文件 (*.sqbpro) + + + + SQL Files (*.sql) + SQL 文件 (*.sql) + + + + All Files (*) + 所有文件 (*) + + + + Text Files (*.txt) + 纯文本文件 (*.txt) + + + + Comma-Separated Values Files (*.csv) + CSV (逗å·åˆ†éš”)(*.csv) + + + + Tab-Separated Values Files (*.tsv) + TSV (制表符分隔)(*.tsv) + + + + Delimiter-Separated Values Files (*.dsv) + DSV (分隔符分隔)(*.dsv) + + + + Concordance DAT files (*.dat) + Concordance DAT 文件 (*.dat) + + + + JSON Files (*.json *.js) + JSON 文件 (*.json *.js) + + + + XML Files (*.xml) + XML 文件 (*.xml) + + + + Binary Files (*.bin *.dat) + 二进制文件 (*.bin *.dat) + + + + SVG Files (*.svg) + SVG 文件 (*.svg) + + + + Hex Dump Files (*.dat *.bin) + å六进制转储文件 (*.dat *.bin) + + + + Extensions (*.so *.dylib *.dll) + 扩展 (*.so *.dylib *.dll) + + + + RemoteCommitsModel + + + Commit ID + æäº¤ID + + + + Message + 说明 + + + + Date + 日期 + + + + Author + 作者 + + + + Size + å¤§å° + + + + Authored and committed by %1 + ç”± %1 为作者并æäº¤ + + + + Authored by %1, committed by %2 + ç”± %1 为作者,由 %2 æäº¤ + + + + RemoteDatabase + + + Error opening local databases list. +%1 + 打开本地数æ®åº“列表时出错。 +%1 + + + + Error creating local databases list. +%1 + 创建本地数æ®åº“列表时出错。 +%1 + + + + RemoteDock + + + Remote + 远程 + + + + Local + 本地 + + + + Identity + 身份 + + + + Push currently opened database to server + 推é€å½“剿‰“开的数æ®åº“到æœåС噍 + + + + DBHub.io + DBHub.io + + + + <html><head/><body><p>In this pane, remote databases from dbhub.io website can be added to DB Browser for SQLite. First you need an identity:</p><ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Login to the dbhub.io website (use your GitHub credentials or whatever you want)</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Click the button to &quot;Generate client certificate&quot; (that's your identity). That'll give you a certificate file (save it to your local disk).</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Go to the Remote tab in DB Browser for SQLite Preferences. Click the button to add a new certificate to DB Browser for SQLite and choose the just downloaded certificate file.</li></ol><p>Now the Remote panel shows your identity and you can add remote databases.</p></body></html> + <html><head/><body><p>åœ¨æ­¤é¢æ¿ï¼Œæ¥è‡ª dbhub.io 网站的远程数æ®åº“å¯ä»¥è¢«æ·»åŠ åˆ° DB4S。首先你需è¦ä¸€ä¸ªèº«ä»½:</p><ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">登录 dbhub.io 网站 (使用你的 GitHub è®¤è¯æˆ–其他什么)</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">点击按钮创建 DB4S è¯ä¹¦ (那是你的身份)。 这会给你一个è¯ä¹¦æ–‡ä»¶ (ä¿å­˜åˆ°ä½ çš„æœ¬åœ°ç¡¬ç›˜é‡Œ)。</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">å‰å¾€ DB4S 的设置中的远程选项å¡ã€‚点击添加è¯ä¹¦ï¼Œé€‰æ‹©åˆšæ‰ä¸‹è½½çš„æ–‡ä»¶ã€‚</li></ol><p>è¿™æ ·ï¼Œè¿œç¨‹é¢æ¿å°±ä¼šæ˜¾ç¤ºä½ çš„身份,之åŽå¯ä»¥æ·»åŠ è¿œç¨‹æ•°æ®åº“。</p></body></html> + + + + Current Database + 当剿•°æ®åº“ + + + + Clone + 克隆 + + + + User + 用户 + + + + Database + æ•°æ®åº“ + + + + Branch + 分支 + + + + Commits + æäº¤è®°å½• + + + + Commits for + æäº¤äºŽ + + + + Delete Database + 删除数æ®åº“ + + + + Delete the local clone of this database + 删除此数æ®åº“的本地克隆 + + + + Open in Web Browser + 在æµè§ˆå™¨ä¸­æ‰“å¼€ + + + + Open the web page for the current database in your browser + 在你的æµè§ˆå™¨ä¸­æ‰“开当剿•°æ®åº“的网页版 + + + + Clone from Link + 从链接克隆 + + + + Use this to download a remote database for local editing using a URL as provided on the web page of the database. + 使用数æ®åº“é¡µé¢æä¾›çš„é“¾æŽ¥ï¼Œå°†æ•°æ®åº“下载到本地以供编辑。 + + + + Refresh + 刷新 + + + + Reload all data and update the views + 釿–°è½½å…¥æ‰€æœ‰æ•°æ®å¹¶æ›´æ–°è§†å›¾ + + + + F5 + + + + + Clone Database + 克隆数æ®åº“ + + + + Open Database + 打开数æ®åº“ + + + + Open the local copy of this database + 打开此数æ®åº“çš„æœ¬åœ°æ‹·è´ + + + + Check out Commit + 签出æŸä¸ªæäº¤ + + + + Download and open this specific commit + 下载并打开特定的æäº¤ç‰ˆæœ¬ + + + + Check out Latest Commit + 签出最新æäº¤ + + + + Check out the latest commit of the current branch + 从当å‰åˆ†æ”¯ç­¾å‡ºæœ€è¿‘一次的æäº¤ç‰ˆæœ¬ + + + + Save Revision to File + 将版本å¦å­˜ä¸ºæ–‡ä»¶ + + + + Saves the selected revision of the database to another file + 将选择的版本的数æ®åº“ä¿å­˜åˆ°å¦ä¸€ä¸ªæ–‡ä»¶ + + + + Upload Database + 上传数æ®åº“ + + + + Upload this database as a new commit + 将当剿•°æ®åº“作为新的æäº¤ä¸Šä¼  + + + + <html><head/><body><p>You are currently using a built-in, read-only identity. For uploading your database, you need to configure and use your DBHub.io account.</p><p>No DBHub.io account yet? <a href="https://dbhub.io/"><span style=" text-decoration: underline; color:#007af4;">Create one now</span></a> and import your certificate <a href="#preferences"><span style=" text-decoration: underline; color:#007af4;">here</span></a> to share your databases.</p><p>For online help visit <a href="https://dbhub.io/about"><span style=" text-decoration: underline; color:#007af4;">here</span></a>.</p></body></html> + <html><head/><body><p>你正在使用内置的,åªè¯»çš„凭æ®ã€‚è¦ä¸Šä¼ ä½ çš„æ•°æ®åº“,你需è¦é…置使用你的 DBHub.io è´¦å·ã€‚</p><p>还没有 DBHub.io è´¦å·ï¼Ÿ<a href="https://dbhub.io/"><span style=" text-decoration: underline; color:#007af4;">注册一个</span></a> 并在 <a href="#preferences"><span style=" text-decoration: underline; color:#007af4;">此处</span></a> 导入你的è¯ä¹¦ã€‚</p><p>è¦èŽ·å¾—åœ¨çº¿å¸®åŠ©ï¼Œç‚¹å‡»<a href="https://dbhub.io/about"><span style=" text-decoration: underline; color:#007af4;">这里</span></a>。</p></body></html> + + + + Back + 返回 + + + + Select an identity to connect + 选择è¦ç”¨äºŽè¿žæŽ¥çš„å‡­æ® + + + + Public + 公用è¯ä¹¦ + + + + This downloads a database from a remote server for local editing. +Please enter the URL to clone from. You can generate this URL by +clicking the 'Clone Database in DB4S' button on the web page +of the database. + 将远程æœåŠ¡å™¨ä¸Šçš„æ•°æ®åº“下载到本地以编辑。 +请输入用于克隆的URL。å¯é€šè¿‡åœ¨ç½‘页上点击 +“Clone Database in DB4Sâ€èŽ·å¾—æ•°æ®åº“çš„URL。 + + + + Invalid URL: The host name does not match the host name of the current identity. + 无效的URL:主机å与凭æ®çš„主机åä¸ç¬¦ã€‚ + + + + Invalid URL: No branch name specified. + 无效的URL:未指定分支å。 + + + + Invalid URL: No commit ID specified. + 无效的URL:未指定æäº¤ID。 + + + + You have modified the local clone of the database. Fetching this commit overrides these local changes. +Are you sure you want to proceed? + ä½ å·²ç»ä¿®æ”¹äº†æœ¬åœ°çš„æ•°æ®åº“。此时获å–远程æäº¤å°†è¦†ç›–本地的更改。 +确实è¦ç»§ç»­å—? + + + + The database has unsaved changes. Are you sure you want to push it before saving? + æ•°æ®åº“有未ä¿å­˜çš„æ›´æ”¹ï¼Œç¡®å®žè¦åœ¨ä¿å­˜å‰æŽ¨é€å—? + + + + The database you are trying to delete is currently opened. Please close it before deleting. + å°è¯•删除的数æ®åº“当å‰å·²è¢«æ‰“开,请先将之关闭。 + + + + This deletes the local version of this database with all the changes you have not committed yet. Are you sure you want to delete this database? + 将删除本地的数æ®åº“,包括你未æäº¤çš„修改。 +确实è¦åˆ é™¤æ­¤æ•°æ®åº“å—? + + + + RemoteLocalFilesModel + + + Name + åç§° + + + + Branch + 分支 + + + + Last modified + 上次修改 + + + + Size + å¤§å° + + + + Commit + æäº¤ + + + + File + 文件 + + + + RemoteModel + + + Name + åç§° + + + + Last modified + 上次修改 + + + + Size + å¤§å° + + + + Commit + æäº¤ + + + + Size: + 大å°ï¼š + + + + Last Modified: + 上次修改: + + + + Licence: + 授æƒï¼š + + + + Default Branch: + 默认分支: + + + + RemoteNetwork + + + Choose a location to save the file + 选择ä¿å­˜ä½ç½® + + + + Error opening remote file at %1. +%2 + 打开远程文件 %1 时出错. +%2 + + + + Error: Invalid client certificate specified. + 错误: 指定了错误的客户端è¯ä¹¦ã€‚ + + + + Please enter the passphrase for this client certificate in order to authenticate. + 请输入客户端è¯ä¹¦çš„å£ä»¤ä»¥è¿›è¡Œèº«ä»½è®¤è¯ã€‚ + + + + Cancel + å–æ¶ˆ + + + + Uploading remote database to +%1 + 正在上传远程数æ®åº“到 +%1. {1?} + + + + Downloading remote database from +%1 + 正在下载远程数æ®åº“于 +%1. {1?} + + + + + Error: The network is not accessible. + 错误: 网络无法访问。 + + + + Error: Cannot open the file for sending. + 错误: 无法打开文件用于å‘é€ã€‚ + + + + RemotePushDialog + + + Push database + æŽ¨é€æ•°æ®åº“ + + + + Database na&me to push to + 推é€çš„æ•°æ®åº“å(&m) + + + + Commit message + æäº¤ä¿¡æ¯ + + + + Database licence + æ•°æ®åº“许å¯åè®® + + + + Public + 公开 + + + + Branch + 分支 + + + + Force push + å¼ºåˆ¶æŽ¨é€ + + + + Username + 用户å + + + + Database will be public. Everyone has read access to it. + æ•°æ®åº“将是公有的。所有人都å¯ä»¥è¯»å–它。 + + + + Database will be private. Only you have access to it. + æ•°æ®åº“å°†æ˜¯ç§æœ‰çš„ã€‚åªæœ‰æ‚¨å¯ä»¥è®¿é—®å®ƒã€‚ + + + + Use with care. This can cause remote commits to be deleted. + å°å¿ƒä½¿ç”¨ã€‚è¿™å¯èƒ½ä¼šå¯¼è‡´è¿œç¨‹æäº¤è¢«åˆ é™¤ã€‚ + + + + RunSql + + + Execution aborted by user + æ“作被用户终止 + + + + , %1 rows affected + ,%1 行数æ®å—å½±å“ + + + + query executed successfully. Took %1ms%2 + 查询执行æˆåŠŸã€‚è€—æ—¶ %1ms%2 + + + + executing query + 执行查询 + + + + SelectItemsPopup + + + A&vailable + å¯ç”¨(&V) + + + + Sele&cted + 已选(&C) + + + + SqlExecutionArea + + + Form + è¡¨å• + + + + Find previous match [Shift+F3] + 查找上一个 [Shift+F3] + + + + Find previous match with wrapping + æŒ‰é¡ºåºæŸ¥æ‰¾ä¸Šä¸€é¡¹ + + + + Shift+F3 + + + + + The found pattern must be a whole word + æ‰¾åˆ°çš„å¿…é¡»æ˜¯ä¸€ä¸ªå®Œæ•´çš„è¯ + + + + Whole Words + å…¨å­—åŒ¹é… + + + + Text pattern to find considering the checks in this frame + 符åˆè¿™é‡Œçš„é€‰æ‹©è¦æŸ¥æ‰¾çš„æ–‡æœ¬ + + + + Find in editor + 在编辑器中查找 + + + + The found pattern must match in letter case + æœç´¢å¿…须大å°å†™åŒ¹é… + + + + Case Sensitive + 大å°å†™æ•感 + + + + Find next match [Enter, F3] + 查找下一个 [Enter, F3] + + + + Find next match with wrapping + 循环查找下一个 + + + + F3 + + + + + Interpret search pattern as a regular expression + è§£æžæŸ¥æ‰¾ç›®æ ‡ä¸ºæ­£åˆ™è¡¨è¾¾å¼ + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + <html><head/><body><p>é€‰ä¸­æ—¶ï¼Œè¦æŸ¥æ‰¾çš„æ¨¡å¼è¢«è§£é‡Šä¸º UNIX 正则表达å¼ã€‚å‚阅 <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Wikibooks 中的正则表达å¼</a>.</p></body></html> + + + + Regular Expression + æ­£åˆ™è¡¨è¾¾å¼ + + + + + Close Find Bar + å…³é—­æŸ¥æ‰¾æ  + + + + <html><head/><body><p>Results of the last executed statements.</p><p>You may want to collapse this panel and use the <span style=" font-style:italic;">SQL Log</span> dock with <span style=" font-style:italic;">User</span> selection instead.</p></body></html> + <html><head/><body><p>上次执行的语å¥çš„结果。</p><p>ä½ å¯èƒ½å¸Œæœ›æŠ˜å è¿™ä¸ªçª—格并使用 <span style=" font-style:italic;">SQL 日志</span> 区域查看æäº¤è‡ª <span style=" font-style:italic;">用户</span> 的结果。</p></body></html> + + + + Results of the last executed statements + 上次执行语å¥çš„结果 + + + + This field shows the results and status codes of the last executed statements. + è¿™ä¸ªå­—æ®µæ˜¾ç¤ºæœ€åŽæ‰§è¡Œçš„语å¥çš„结果和状æ€ç ã€‚ + + + + Couldn't read file: %1. + æ— æ³•è¯»å–æ–‡ä»¶: %1。 + + + + + Couldn't save file: %1. + 无法ä¿å­˜æ–‡ä»¶: %1。 + + + + Your changes will be lost when reloading it! + 釿–°åŠ è½½æ—¶ï¼Œä½ çš„æ›´æ”¹å°†ä¼šä¸¢å¤±ï¼ + + + + The file "%1" was modified by another program. Do you want to reload it?%2 + 文件 "%1" 已被其他程åºä¿®æ”¹ã€‚是å¦è¦é‡æ–°åŠ è½½ï¼Ÿ%2 + + + + SqlTextEdit + + + Ctrl+/ + + + + + SqlUiLexer + + + (X) The abs(X) function returns the absolute value of the numeric argument X. + + + + + () The changes() function returns the number of database rows that were changed or inserted or deleted by the most recently completed INSERT, DELETE, or UPDATE statement. + + + + + (X1,X2,...) The char(X1,X2,...,XN) function returns a string composed of characters having the unicode code point values of integers X1 through XN, respectively. + + + + + (X,Y,...) The coalesce() function returns a copy of its first non-NULL argument, or NULL if all arguments are NULL + + + + + (X,Y) The glob(X,Y) function is equivalent to the expression "Y GLOB X". + + + + + (X,Y) The ifnull() function returns a copy of its first non-NULL argument, or NULL if both arguments are NULL. + + + + + (X,Y) The instr(X,Y) function finds the first occurrence of string Y within string X and returns the number of prior characters plus 1, or 0 if Y is nowhere found within X. + + + + + (X) The hex() function interprets its argument as a BLOB and returns a string which is the upper-case hexadecimal rendering of the content of that blob. + + + + + () The last_insert_rowid() function returns the ROWID of the last row insert from the database connection which invoked the function. + + + + + (X) For a string value X, the length(X) function returns the number of characters (not bytes) in X prior to the first NUL character. + + + + + (X,Y) The like() function is used to implement the "Y LIKE X" expression. + + + + + (X,Y,Z) The like() function is used to implement the "Y LIKE X ESCAPE Z" expression. + + + + + (X) The load_extension(X) function loads SQLite extensions out of the shared library file named X. +Use of this function must be authorized from Preferences. + + + + + (X,Y) The load_extension(X) function loads SQLite extensions out of the shared library file named X using the entry point Y. +Use of this function must be authorized from Preferences. + + + + + (X) The lower(X) function returns a copy of string X with all ASCII characters converted to lower case. + + + + + (X) ltrim(X) removes spaces from the left side of X. + + + + + (X,Y) The ltrim(X,Y) function returns a string formed by removing any and all characters that appear in Y from the left side of X. + + + + + (X,Y,...) The multi-argument max() function returns the argument with the maximum value, or return NULL if any argument is NULL. + + + + + (X,Y,...) The multi-argument min() function returns the argument with the minimum value. + + + + + (X,Y) The nullif(X,Y) function returns its first argument if the arguments are different and NULL if the arguments are the same. + + + + + (FORMAT,...) The printf(FORMAT,...) SQL function works like the sqlite3_mprintf() C-language function and the printf() function from the standard C library. + + + + + (X) The quote(X) function returns the text of an SQL literal which is the value of its argument suitable for inclusion into an SQL statement. + + + + + () The random() function returns a pseudo-random integer between -9223372036854775808 and +9223372036854775807. + + + + + (N) The randomblob(N) function return an N-byte blob containing pseudo-random bytes. + + + + + (X,Y,Z) The replace(X,Y,Z) function returns a string formed by substituting string Z for every occurrence of string Y in string X. + + + + + (X) The round(X) function returns a floating-point value X rounded to zero digits to the right of the decimal point. + + + + + (X,Y) The round(X,Y) function returns a floating-point value X rounded to Y digits to the right of the decimal point. + + + + + (X) rtrim(X) removes spaces from the right side of X. + + + + + (X,Y) The rtrim(X,Y) function returns a string formed by removing any and all characters that appear in Y from the right side of X. + + + + + (X) The soundex(X) function returns a string that is the soundex encoding of the string X. + + + + + (X,Y) substr(X,Y) returns all characters through the end of the string X beginning with the Y-th. + + + + + (X,Y,Z) The substr(X,Y,Z) function returns a substring of input string X that begins with the Y-th character and which is Z characters long. + + + + + () The total_changes() function returns the number of row changes caused by INSERT, UPDATE or DELETE statements since the current database connection was opened. + + + + + (X) trim(X) removes spaces from both ends of X. + + + + + (X,Y) The trim(X,Y) function returns a string formed by removing any and all characters that appear in Y from both ends of X. + + + + + (X) The typeof(X) function returns a string that indicates the datatype of the expression X. + + + + + (X) The unicode(X) function returns the numeric unicode code point corresponding to the first character of the string X. + + + + + (X) The upper(X) function returns a copy of input string X in which all lower-case ASCII characters are converted to their upper-case equivalent. + + + + + (N) The zeroblob(N) function returns a BLOB consisting of N bytes of 0x00. + + + + + + + + (timestring,modifier,modifier,...) + + + + + (format,timestring,modifier,modifier,...) + + + + + (X) The avg() function returns the average value of all non-NULL X within a group. + + + + + (X) The count(X) function returns a count of the number of times that X is not NULL in a group. + + + + + (X) The group_concat() function returns a string which is the concatenation of all non-NULL values of X. + + + + + (X,Y) The group_concat() function returns a string which is the concatenation of all non-NULL values of X. If parameter Y is present then it is used as the separator between instances of X. + + + + + (X) The max() aggregate function returns the maximum value of all values in the group. + + + + + (X) The min() aggregate function returns the minimum non-NULL value of all values in the group. + + + + + + (X) The sum() and total() aggregate functions return sum of all non-NULL values in the group. + + + + + () The number of the row within the current partition. Rows are numbered starting from 1 in the order defined by the ORDER BY clause in the window definition, or in arbitrary order otherwise. + + + + + () The row_number() of the first peer in each group - the rank of the current row with gaps. If there is no ORDER BY clause, then all rows are considered peers and this function always returns 1. + + + + + () The number of the current row's peer group within its partition - the rank of the current row without gaps. Partitions are numbered starting from 1 in the order defined by the ORDER BY clause in the window definition. If there is no ORDER BY clause, then all rows are considered peers and this function always returns 1. + + + + + () Despite the name, this function always returns a value between 0.0 and 1.0 equal to (rank - 1)/(partition-rows - 1), where rank is the value returned by built-in window function rank() and partition-rows is the total number of rows in the partition. If the partition contains only one row, this function returns 0.0. + + + + + () The cumulative distribution. Calculated as row-number/partition-rows, where row-number is the value returned by row_number() for the last peer in the group and partition-rows the number of rows in the partition. + + + + + (N) Argument N is handled as an integer. This function divides the partition into N groups as evenly as possible and assigns an integer between 1 and N to each group, in the order defined by the ORDER BY clause, or in arbitrary order otherwise. If necessary, larger groups occur first. This function returns the integer value assigned to the group that the current row is a part of. + + + + + (expr) Returns the result of evaluating expression expr against the previous row in the partition. Or, if there is no previous row (because the current row is the first), NULL. + + + + + (expr,offset) If the offset argument is provided, then it must be a non-negative integer. In this case the value returned is the result of evaluating expr against the row offset rows before the current row within the partition. If offset is 0, then expr is evaluated against the current row. If there is no row offset rows before the current row, NULL is returned. + + + + + + (expr,offset,default) If default is also provided, then it is returned instead of NULL if the row identified by offset does not exist. + + + + + (expr) Returns the result of evaluating expression expr against the next row in the partition. Or, if there is no next row (because the current row is the last), NULL. + + + + + (expr,offset) If the offset argument is provided, then it must be a non-negative integer. In this case the value returned is the result of evaluating expr against the row offset rows after the current row within the partition. If offset is 0, then expr is evaluated against the current row. If there is no row offset rows after the current row, NULL is returned. + + + + + (expr) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the first row in the window frame for each row. + + + + + (expr) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the last row in the window frame for each row. + + + + + (expr,N) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the row N of the window frame. Rows are numbered within the window frame starting from 1 in the order defined by the ORDER BY clause if one is present, or in arbitrary order otherwise. If there is no Nth row in the partition, then NULL is returned. + + + + + SqliteTableModel + + + reading rows + 读å–行 + + + + loading... + 正在加载... + + + + References %1(%2) +Hold %3Shift and click to jump there + 引用 %1(%2) +æŒ‰ä½ %3Shift 并点击以跳转 + + + + Error changing data: +%1 + 更改数æ®åº“时出错: +%1 + + + + retrieving list of columns + 正在检索列的列表 + + + + Fetching data... + æ­£åœ¨æ‹‰å–æ•°æ®... + + + + + Cancel + å–æ¶ˆ + + + + TableBrowser + + + Browse Data + æµè§ˆæ•°æ® + + + + &Table: + 表(&T): + + + + Select a table to browse data + 选择一个表以æµè§ˆæ•°æ® + + + + Use this list to select a table to be displayed in the database view + ä½¿ç”¨è¿™ä¸ªåˆ—è¡¨é€‰æ‹©ä¸€ä¸ªè¦æ˜¾ç¤ºåœ¨æ•°æ®åº“视图中的表 + + + + This is the database table view. You can do the following actions: + - Start writing for editing inline the value. + - Double-click any record to edit its contents in the cell editor window. + - Alt+Del for deleting the cell content to NULL. + - Ctrl+" for duplicating the current record. + - Ctrl+' for copying the value from the cell above. + - Standard selection and copy/paste operations. + 这是数æ®åº“表视图。你å¯ä»¥è¿›è¡Œä»¥ä¸‹æ“作: + - 直接打字以在这里直接编辑。 + - åŒå‡»è®°å½•以打开å•元格编辑窗å£ã€‚ + - Alt+Del 删除å•å…ƒæ ¼å†…å®¹ï¼Œå˜æˆNULL。 + - Ctrl+" é‡å¤ä¸€ä»½å½“å‰è®°å½•。 + - Ctrl+' 从上é¢çš„å•元格拷è´ã€‚ + - 标准的å¤åˆ¶/粘贴æ“作。 + + + + Text pattern to find considering the checks in this frame + 符åˆè¿™é‡Œçš„é€‰æ‹©è¦æŸ¥æ‰¾çš„æ–‡æœ¬ + + + + Find in table + 在表中查找 + + + + Find previous match [Shift+F3] + 查找上一个 [Shift+F3] + + + + Find previous match with wrapping + æŒ‰é¡ºåºæŸ¥æ‰¾ä¸Šä¸€é¡¹ + + + + Shift+F3 + + + + + Find next match [Enter, F3] + 查找下一个 [Enter, F3] + + + + Find next match with wrapping + 循环查找下一个 + + + + F3 + + + + + The found pattern must match in letter case + æœç´¢å¿…须大å°å†™åŒ¹é… + + + + Case Sensitive + 大å°å†™æ•感 + + + + The found pattern must be a whole word + æ‰¾åˆ°çš„å¿…é¡»æ˜¯ä¸€ä¸ªå®Œæ•´çš„è¯ + + + + Whole Cell + å•å…ƒæ ¼åŒ¹é… + + + + Interpret search pattern as a regular expression + è§£æžæŸ¥æ‰¾ç›®æ ‡ä¸ºæ­£åˆ™è¡¨è¾¾å¼ + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + <html><head/><body><p>选中时,æœç´¢å…³é”®è¯è¢«è§†ä¸ºUNIX正则表达å¼ã€‚å‚阅<a href="https://en.wikibooks.org/wiki/Regular_Expressions">Wikibooks 上对正则表达å¼çš„介ç»</a>。</p></body></html> + + + + Regular Expression + æ­£åˆ™è¡¨è¾¾å¼ + + + + + Close Find Bar + å…³é—­æŸ¥æ‰¾æ  + + + + Text to replace with + è¦æ›¿æ¢çš„æ–‡æœ¬ + + + + Replace with + æ›¿æ¢ + + + + Replace next match + 替æ¢ä¸‹ä¸ªåŒ¹é…的文本 + + + + + Replace + æ›¿æ¢ + + + + Replace all matches + æ›¿æ¢æ‰€æœ‰åŒ¹é… + + + + Replace all + å…¨éƒ¨æ›¿æ¢ + + + + <html><head/><body><p>Scroll to the beginning</p></body></html> + <html><head/><body><p>滚动到开始</p></body></html> + + + + <html><head/><body><p>Clicking this button navigates to the beginning in the table view above.</p></body></html> + <html><head/><body><p>点击这个按钮在上é¢çš„表视图中导航到最å‰ã€‚</p></body></html> + + + + |< + |< + + + + Scroll one page upwards + 上翻一页 + + + + <html><head/><body><p>Clicking this button navigates one page of records upwards in the table view above.</p></body></html> + <html><head/><body><p>点击按钮将表中显示的记录å‘上翻一页。</p></body></html> + + + + < + < + + + + 0 - 0 of 0 + 0 - 0 / 0 + + + + Scroll one page downwards + 下翻一页 + + + + <html><head/><body><p>Clicking this button navigates one page of records downwards in the table view above.</p></body></html> + <html><head/><body><p>点击按钮将表中显示的记录å‘下翻一页。</p></body></html> + + + + > + > + + + + Scroll to the end + æ»šåŠ¨åˆ°ç»“æŸ + + + + <html><head/><body><p>Clicking this button navigates up to the end in the table view above.</p></body></html> + <html><head/><body><p>点击这个按钮在上é¢çš„表视图中导航到最åŽã€‚</p></body></html> + + + + >| + >| + + + + <html><head/><body><p>Click here to jump to the specified record</p></body></html> + <html><head/><body><p>点击这里跳到指定的记录</p></body></html> + + + + <html><head/><body><p>This button is used to navigate to the record number specified in the Go to area.</p></body></html> + <html><head/><body><p>这个按钮用于导航到在“转到â€åŒºåŸŸä¸­æŒ‡å®šçš„记录å·ã€‚</p></body></html> + + + + Go to: + 转到: + + + + Enter record number to browse + è¾“å…¥è¦æµè§ˆçš„è®°å½•å· + + + + Type a record number in this area and click the Go to: button to display the record in the database view + 在这个区域中输入一个记录å·ï¼Œå¹¶ç‚¹å‡»â€œè½¬åˆ°:â€æŒ‰é’®ä»¥åœ¨æ•°æ®åº“视图中显示记录 + + + + 1 + 1 + + + + Show rowid column + 显示 rowid 列 + + + + Toggle the visibility of the rowid column + åˆ‡æ¢ rowid 列的å¯è§æ€§ + + + + Unlock view editing + è§£é”视图编辑 + + + + This unlocks the current view for editing. However, you will need appropriate triggers for editing. + è§£é”当å‰è§†å›¾ä»¥ç¼–辑。然而,你需è¦åˆé€‚的触å‘器æ¥ç¼–辑。 + + + + Edit display format + ç¼–è¾‘æ˜¾ç¤ºæ ¼å¼ + + + + Edit the display format of the data in this column + 编辑列中数æ®çš„æ˜¾ç¤ºæ ¼å¼ + + + + + New Record + 新建记录 + + + + + Insert a new record in the current table + 在当å‰è¡¨ä¸­æ’å…¥ä¸€æ¡æ–°è®°å½• + + + + <html><head/><body><p>This button creates a new record in the database. Hold the mouse button to open a pop-up menu of different options:</p><ul><li><span style=" font-weight:600;">New Record</span>: insert a new record with default values in the database.</li><li><span style=" font-weight:600;">Insert Values...</span>: open a dialog for entering values before they are inserted in the database. This allows to enter values acomplishing the different constraints. This dialog is also open if the <span style=" font-weight:600;">New Record</span> option fails due to these constraints.</li></ul></body></html> + <html><head/><body><p>此按钮在数æ®åº“中创建新记录。按ä½é¼ æ ‡æŒ‰é’®ä»¥æ‰“å¼€èœå•选择ä¸åŒé€‰é¡¹ï¼š</p><ul><li><span style=" font-weight:600;">新记录</span>: 用默认值æ’å…¥ä¸€æ¡æ–°è®°å½•到数æ®åº“中。</li><li><span style=" font-weight:600;">æ’入值...</span>: æ‰“å¼€å¯¹è¯æ¡†ç¼–è¾‘è¦æ’入的值。å¯ä»¥è¾“入满足约æŸçš„值。如果 <span style=" font-weight:600;">新记录</span> é€‰é¡¹å¤±è´¥ï¼Œå¯¹è¯æ¡†ä¹Ÿä¼šæ‰“开。</li></ul></body></html> + + + + + Delete Record + 删除记录 + + + + Delete the current record + 删除当å‰è®°å½• + + + + + This button deletes the record or records currently selected in the table + 此按钮删除表里当å‰é€‰ä¸­çš„记录 + + + + + Insert new record using default values in browsed table + 用默认值æ’å…¥ä¸€æ¡æ–°è®°å½•åˆ°å½“å‰æµè§ˆçš„表中 + + + + Insert Values... + æ’入值... + + + + + Open a dialog for inserting values in a new record + æ‰“å¼€å¯¹è¯æ¡†ä»¥æ’入值到新记录中 + + + + Export to &CSV + 导出到 &CSV + + + + + Export the filtered data to CSV + å¯¼å‡ºå½“å‰æ•°æ®åˆ° CSV + + + + This button exports the data of the browsed table as currently displayed (after filters, display formats and order column) as a CSV file. + æ­¤æŒ‰é’®å¯¼å‡ºå½“å‰æµè§ˆã€è¿‡æ»¤çš„è¡¨çš„æ•°æ® (过滤åŽï¼Œæ˜¾ç¤ºæ ¼å¼å’Œåˆ—的顺åº) 到一个CSV文件。 + + + + Save as &view + ä¿å­˜ä¸ºè§†å›¾(&V) + + + + + Save the current filter, sort column and display formats as a view + ä¿å­˜å½“å‰è¿‡æ»¤ï¼Œåˆ—排åºå’Œæ˜¾ç¤ºæ ¼å¼ä¸ºè§†å›¾ + + + + This button saves the current setting of the browsed table (filters, display formats and order column) as an SQL view that you can later browse or use in SQL statements. + 此按钮ä¿å­˜å½“剿µè§ˆè¡¨æ ¼çš„设置 (过滤,显示格å¼å’Œåˆ—的顺åº) 为SQL视图,之åŽå¯ä»¥å†ç”¨SQLè¯­å¥æµè§ˆã€‚ + + + + Save Table As... + 表å¦å­˜ä¸º... + + + + + Save the table as currently displayed + æŒ‰å½“å‰æ˜¾ç¤ºçš„æ ·å­ä¿å­˜è¡¨ + + + + <html><head/><body><p>This popup menu provides the following options applying to the currently browsed and filtered table:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Export to CSV: this option exports the data of the browsed table as currently displayed (after filters, display formats and order column) to a CSV file.</li><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Save as view: this option saves the current setting of the browsed table (filters, display formats and order column) as an SQL view that you can later browse or use in SQL statements.</li></ul></body></html> + <html><head/><body><p>æ­¤èœå•æä¾›ä»¥ä¸‹å¯åº”ç”¨åˆ°å½“å‰æµè§ˆã€è¿‡æ»¤çš„表的选项:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">导出到CSV: å¯¼å‡ºå½“å‰æµè§ˆã€è¿‡æ»¤çš„è¡¨çš„æ•°æ® (过滤åŽï¼Œæ˜¾ç¤ºæ ¼å¼å’Œåˆ—的顺åº) 到一个CSV文件。</li><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">ä¿å­˜ä¸ºè§†å›¾: 此选项ä¿å­˜å½“剿µè§ˆè¡¨æ ¼çš„设置 (过滤,显示格å¼å’Œåˆ—的顺åº) 为SQL视图,之åŽå¯ä»¥å†ç”¨SQLè¯­å¥æµè§ˆã€‚</li></ul></body></html> + + + + Hide column(s) + éšè—列 + + + + Hide selected column(s) + éšè—选中的列 + + + + Show all columns + 显示所有列 + + + + Show all columns that were hidden + 显示所有被éšè—的列 + + + + + Set encoding + è®¾ç½®ç¼–ç  + + + + Change the encoding of the text in the table cells + 更改表å•å…ƒæ ¼ä¸­æ–‡æœ¬çš„ç¼–ç  + + + + Set encoding for all tables + è®¾ç½®æ‰€æœ‰è¡¨çš„ç¼–ç  + + + + Change the default encoding assumed for all tables in the database + 修改数æ®åº“ä¸­æ‰€æœ‰è¡¨çš„é»˜è®¤ç¼–ç  + + + + Clear Filters + 清除过滤 + + + + Clear all filters + 清除所有过滤 + + + + + This button clears all the filters set in the header input fields for the currently browsed table. + æ­¤æŒ‰é’®å°†æ¸…é™¤å½“å‰æµè§ˆè¡¨çš„æ‰€æœ‰åœ¨å¤´éƒ¨è¾“入区的过滤器。 + + + + Clear Sorting + æ¸…é™¤æŽ’åº + + + + Reset the order of rows to the default + 将行的顺åºé‡ç½®ä¸ºé»˜è®¤ + + + + + This button clears the sorting columns specified for the currently browsed table and returns to the default order. + æ­¤æŒ‰é’®æ¸…é™¤å½“å‰æµè§ˆçš„表的列排åºï¼Œé‡ç½®ä¸ºé»˜è®¤å€¼ã€‚ + + + + Print + æ‰“å° + + + + Print currently browsed table data + 打å°å½“剿µè§ˆè¡¨ä¸­çš„æ•°æ® + + + + Print currently browsed table data. Print selection if more than one cell is selected. + 打å°å½“剿­£åœ¨æµè§ˆçš„表中的数æ®ã€‚如果选中了多于一个的å•元格,就打å°é€‰ä¸­åŒºåŸŸã€‚ + + + + Ctrl+P + + + + + Refresh + 刷新 + + + + Refresh the data in the selected table + åˆ·æ–°é€‰ä¸­è¡¨ä¸­çš„æ•°æ® + + + + This button refreshes the data in the currently selected table. + 这个按钮刷新在当å‰é€‰æ‹©çš„表中的数æ®ã€‚ + + + + F5 + + + + + Find in cells + 在å•元格中查找 + + + + Open the find tool bar which allows you to search for values in the table view below. + 打开查找æ ï¼Œå¯ä»¥åœ¨å…¶ä¸­æœç´¢è¡¨å†…æ•°æ®ã€‚ + + + + + Bold + 粗体 + + + + Ctrl+B + + + + + + Italic + 斜体 + + + + + Underline + 下划线 + + + + Ctrl+U + + + + + + Align Right + å³å¯¹é½ + + + + + Align Left + å·¦å¯¹é½ + + + + + Center Horizontally + 垂直居中 + + + + + Justify + ä¸¤ç«¯å¯¹é½ + + + + + Edit Conditional Formats... + 编辑æ¡ä»¶æ ¼å¼... + + + + Edit conditional formats for the current column + 为当å‰åˆ—设置æ¡ä»¶æ ¼å¼ + + + + Clear Format + æ¸…é™¤æ ¼å¼ + + + + Clear All Formats + æ¸…é™¤å…¨éƒ¨æ ¼å¼ + + + + + Clear all cell formatting from selected cells and all conditional formats from selected columns + 清除当å‰é€‰æ‹©çš„å•元格的格å¼å’Œå½“å‰é€‰æ‹©çš„列的æ¡ä»¶æ ¼å¼ + + + + + Font Color + 字体颜色 + + + + + Background Color + 背景颜色 + + + + Toggle Format Toolbar + åˆ‡æ¢æ ¼å¼å·¥å…·æ  + + + + Show/hide format toolbar + 显示或éšè—æ ¼å¼å·¥å…·æ  + + + + + This button shows or hides the formatting toolbar of the Data Browser + 此按钮显示或éšè—æµè§ˆæ•°æ®çª—å£çš„æ ¼å¼å·¥å…·æ  + + + + Select column + 选择列 + + + + Ctrl+Space + + + + + Replace text in cells + 在å•å…ƒæ ¼ä¸­æ›¿æ¢ + + + + Filter in any column + 在所有列中过滤 + + + + Ctrl+R + + + + + %n row(s) + + %n 行 + + + + + , %n column(s) + + , %n 列 + + + + + . Sum: %1; Average: %2; Min: %3; Max: %4 + . 求和: %1; å¹³å‡å€¼: %2; 最å°å€¼: %3; 最大值: %4 + . Sum: %1; Average: %2; Min: %3; Max: %4 + + + + Conditional formats for "%1" + "%1" çš„æ¡ä»¶æ ¼å¼ + + + + determining row count... + 正在决定行数... + + + + %1 - %2 of >= %3 + %1 - %2 / 超过 %3 + + + + %1 - %2 of %3 + %1 - %2 / %3 + + + + Please enter a pseudo-primary key in order to enable editing on this view. This should be the name of a unique column in the view. + 请输入一个伪主键以在当å‰è§†å›¾å¯ç”¨ç¼–è¾‘ã€‚è¿™éœ€è¦æ˜¯è§†å›¾ä¸­çš„一个满足唯一性的列的å字。 + + + + Delete Records + 删除记录 + + + + Duplicate records + é‡å¤è®°å½• + + + + Duplicate record + é‡å¤çš„记录 + + + + Ctrl+" + + + + + Adjust rows to contents + 按内容调整行高 + + + + Error deleting record: +%1 + 删除记录时出错: +%1 + + + + Please select a record first + 请首先选择一æ¡è®°å½• + + + + There is no filter set for this table. View will not be created. + 此表没有过滤。视图ä¸ä¼šè¢«åˆ›å»ºã€‚ + + + + Please choose a new encoding for all tables. + 请为所有表选择新的编ç ã€‚ + + + + Please choose a new encoding for this table. + 请为此表选择新的编ç ã€‚ + + + + %1 +Leave the field empty for using the database encoding. + %1 +留空此字段以使用数æ®åº“默认编ç ã€‚ + + + + This encoding is either not valid or not supported. + è¿™ç§ç¼–ç éžæ³•æˆ–è€…ä¸æ”¯æŒã€‚ + + + + %1 replacement(s) made. + 进行了 %1 次替æ¢ã€‚ + + + + VacuumDialog + + + Compact Database + 压缩数æ®åº“ + + + + Warning: Compacting the database will commit all of your changes. + 警告: 压缩数æ®åº“会æäº¤ä½ çš„æ‰€æœ‰ä¿®æ”¹ã€‚ + + + + Please select the databases to co&mpact: + 请选择è¦åŽ‹ç¼©çš„æ•°æ®åº“(&M) + + + diff --git a/ConfigFiles/translations/sqlb_zh_TW.qm b/ConfigFiles/translations/sqlb_zh_TW.qm new file mode 100644 index 0000000000000000000000000000000000000000..191011b6a2f5b19f1e9e444349ce0e081bf7fd56 GIT binary patch literal 25059 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 CjLbs- literal 0 HcmV?d00001 diff --git a/ConfigFiles/translations/sqlb_zh_TW.ts b/ConfigFiles/translations/sqlb_zh_TW.ts new file mode 100644 index 0000000..51afd52 --- /dev/null +++ b/ConfigFiles/translations/sqlb_zh_TW.ts @@ -0,0 +1,6931 @@ + + + + + AboutDialog + + + About DB Browser for SQLite + + + + + Version + 版本 + + + + <html><head/><body><p>DB Browser for SQLite is an open source, freeware visual tool used to create, design and edit SQLite database files.</p><p>It is bi-licensed under the Mozilla Public License Version 2, as well as the GNU General Public License Version 3 or later. You can modify or redistribute it under the conditions of these licenses.</p><p>See <a href="http://www.gnu.org/licenses/gpl.html">http://www.gnu.org/licenses/gpl.html</a> and <a href="https://www.mozilla.org/MPL/2.0/index.txt">https://www.mozilla.org/MPL/2.0/index.txt</a> for details.</p><p>For more information on this program please visit our website at: <a href="http://sqlitebrowser.org">http://sqlitebrowser.org</a></p><p><span style=" font-size:small;">This software uses the GPL/LGPL Qt Toolkit from </span><a href="http://qt-project.org/"><span style=" font-size:small;">http://qt-project.org/</span></a><span style=" font-size:small;"><br/>See </span><a href="http://qt-project.org/doc/qt-5/licensing.html"><span style=" font-size:small;">http://qt-project.org/doc/qt-5/licensing.html</span></a><span style=" font-size:small;"> for licensing terms and information.</span></p><p><span style=" font-size:small;">It also uses the Silk icon set by Mark James licensed under a Creative Commons Attribution 2.5 and 3.0 license.<br/>See </span><a href="http://www.famfamfam.com/lab/icons/silk/"><span style=" font-size:small;">http://www.famfamfam.com/lab/icons/silk/</span></a><span style=" font-size:small;"> for details.</span></p></body></html> + + + + + AddRecordDialog + + + Add New Record + + + + + Enter values for the new record considering constraints. Fields in bold are mandatory. + + + + + In the Value column you can specify the value for the field identified in the Name column. The Type column indicates the type of the field. Default values are displayed in the same style as NULL values. + + + + + Name + å稱 + + + + Type + 類型 + + + + Value + + + + + Values to insert. Pre-filled default values are inserted automatically unless they are changed. + + + + + When you edit the values in the upper frame, the SQL query for inserting this new record is shown here. You can edit manually the query before saving. + + + + + <html><head/><body><p><span style=" font-weight:600;">Save</span> will submit the shown SQL statement to the database for inserting the new record.</p><p><span style=" font-weight:600;">Restore Defaults</span> will restore the initial values in the <span style=" font-weight:600;">Value</span> column.</p><p><span style=" font-weight:600;">Cancel</span> will close this dialog without executing the query.</p></body></html> + + + + + Auto-increment + + + + + + Unique constraint + + + + + + Check constraint: %1 + + + + + + Foreign key: %1 + + + + + + Default value: %1 + + + + + + Error adding record. Message from database engine: + +%1 + + + + + Are you sure you want to restore all the entered values to their defaults? + + + + + Application + + + Possible command line arguments: + å¯ç”¨å‘½ä»¤åˆ—åƒæ•¸: + + + + Usage: %1 [options] [<database>|<project>] + + + + + + -h, --help Show command line options + + + + + -q, --quit Exit application after running scripts + + + + + -s, --sql <file> Execute this SQL file after opening the DB + + + + + -t, --table <table> Browse this table after opening the DB + + + + + -R, --read-only Open database in read-only mode + + + + + -o, --option <group>/<setting>=<value> + + + + + Run application with this setting temporarily set to value + + + + + -O, --save-option <group>/<setting>=<value> + + + + + Run application saving this value for this setting + + + + + -v, --version Display the current version + + + + + <database> Open this SQLite database + + + + + <project> Open this project file (*.sqbpro) + + + + + The -s/--sql option requires an argument + -s/--sql é¸é …需è¦ä¸€å€‹åƒæ•¸ + + + + The file %1 does not exist + 檔案 %1 ä¸å­˜åœ¨ + + + + The -t/--table option requires an argument + + + + + The -o/--option and -O/--save-option options require an argument in the form group/setting=value + + + + + Invalid option/non-existant file: %1 + 無效é¸é …/ä¸å­˜åœ¨çš„æª”案: %1 + + + + SQLite Version + + + + + SQLCipher Version %1 (based on SQLite %2) + + + + + DB Browser for SQLite Version %1. + + + + + Built for %1, running on %2 + + + + + Qt Version %1 + + + + + CipherDialog + + + SQLCipher encryption + + + + + &Password + + + + + &Reenter password + + + + + Encr&yption settings + + + + + SQLCipher &3 defaults + + + + + SQLCipher &4 defaults + + + + + Custo&m + + + + + Page si&ze + + + + + &KDF iterations + + + + + HMAC algorithm + + + + + KDF algorithm + + + + + Plaintext Header Size + + + + + Passphrase + + + + + Raw key + + + + + Please set a key to encrypt the database. +Note that if you change any of the other, optional, settings you'll need to re-enter them as well every time you open the database file. +Leave the password fields empty to disable the encryption. +The encryption process might take some time and you should have a backup copy of your database! Unsaved changes are applied before modifying the encryption. + + + + + Please enter the key used to encrypt the database. +If any of the other settings were altered for this database file you need to provide this information as well. + + + + + ColumnDisplayFormatDialog + + + Choose display format + + + + + Display format + + + + + Choose a display format for the column '%1' which is applied to each value prior to showing it. + + + + + Default + é è¨­ + + + + Decimal number + + + + + Exponent notation + + + + + Hex blob + + + + + Hex number + + + + + Apple NSDate to date + + + + + Java epoch (milliseconds) to date + + + + + .NET DateTime.Ticks to date + + + + + Julian day to date + + + + + Unix epoch to local time + + + + + Date as dd/mm/yyyy + + + + + Lower case + + + + + Custom display format must contain a function call applied to %1 + + + + + Error in custom display format. Message from database engine: + +%1 + + + + + Custom display format must return only one column but it returned %1. + + + + + Octal number + + + + + Round number + + + + + Unix epoch to date + + + + + Upper case + + + + + Windows DATE to date + + + + + Custom + + + + + CondFormatManager + + + Conditional Format Manager + + + + + This dialog allows creating and editing conditional formats. Each cell style will be selected by the first accomplished condition for that cell data. Conditional formats can be moved up and down, where those at higher rows take precedence over those at lower. Syntax for conditions is the same as for filters and an empty condition applies to all values. + + + + + Add new conditional format + + + + + &Add + + + + + Remove selected conditional format + + + + + &Remove + + + + + Move selected conditional format up + + + + + Move &up + + + + + Move selected conditional format down + + + + + Move &down + + + + + Foreground + + + + + Text color + + + + + Background + + + + + Background color + + + + + Font + + + + + Size + + + + + Bold + ç²—é«” + + + + Italic + 斜體 + + + + Underline + 底線 + + + + Alignment + + + + + Condition + + + + + + Click to select color + + + + + Are you sure you want to clear all the conditional formats of this field? + + + + + DBBrowserDB + + + Please specify the database name under which you want to access the attached database + + + + + Invalid file format + + + + + Do you want to save the changes made to the database file %1? + æ‚¨æ˜¯å¦æƒ³å„²å­˜å°è³‡æ–™åº«æª”案 %1 åšå‡ºçš„修改? + + + + Exporting database to SQL file... + 正在匯出資料庫到 SQL 檔案... + + + + + Cancel + å–æ¶ˆ + + + + Executing SQL... + 正在執行 SQL... + + + + Action cancelled. + æ“ä½œå·²å–æ¶ˆã€‚ + + + + This database has already been attached. Its schema name is '%1'. + + + + + Do you really want to close this temporary database? All data will be lost. + + + + + Database didn't close correctly, probably still busy + + + + + The database is currently busy: + + + + + Do you want to abort that other operation? + + + + + + No database file opened + + + + + + Error in statement #%1: %2. +Aborting execution%3. + + + + + + and rolling back + + + + + didn't receive any output from %1 + + + + + could not execute command: %1 + + + + + Cannot delete this object + + + + + Cannot set data on this object + + + + + + A table with the name '%1' already exists in schema '%2'. + + + + + No table with name '%1' exists in schema '%2'. + + + + + + Cannot find column %1. + + + + + Creating savepoint failed. DB says: %1 + + + + + Renaming the column failed. DB says: +%1 + + + + + + Releasing savepoint failed. DB says: %1 + + + + + Creating new table failed. DB says: %1 + + + + + Copying data to new table failed. DB says: +%1 + + + + + Deleting old table failed. DB says: %1 + + + + + Error renaming table '%1' to '%2'. +Message from database engine: +%3 + + + + + could not get list of db objects: %1 + + + + + Restoring some of the objects associated with this table failed. This is most likely because some column names changed. Here's the SQL statement which you might want to fix and execute manually: + + + 還原æŸäº›å’Œé€™å€‹è³‡æ–™è¡¨é—œè¯çš„物件失敗。這個最å¯èƒ½æ˜¯å› ç‚ºæŸäº›åˆ—çš„å稱修改了。這裡是您å¯èƒ½éœ€è¦æ‰‹å‹•修復和執行的 SQL 語å¥: + + + + + + could not get list of databases: %1 + + + + + Error loading extension: %1 + 載入擴充套件時出ç¾éŒ¯èª¤: %1 + + + + could not get column information + + + + + Error setting pragma %1 to %2: %3 + 設定雜注 %1 為 %2 時出ç¾éŒ¯èª¤: %3 + + + + File not found. + 找ä¸åˆ°æª”案。 + + + + DbStructureModel + + + Name + å稱 + + + + Object + å°è±¡ + + + + Type + 類型 + + + + Schema + æž¶æ§‹ + + + + Database + + + + + Browsables + + + + + All + + + + + Temporary + + + + + Tables (%1) + 資料表 (%1) + + + + Indices (%1) + 索引 (%1) + + + + Views (%1) + 視圖 (%1) + + + + Triggers (%1) + 觸發器 (%1) + + + + EditDialog + + + Edit database cell + 編輯資料庫儲存格 + + + + Mode: + + + + + This is the list of supported modes for the cell editor. Choose a mode for viewing or editing the data of the current cell. + + + + + RTL Text + + + + + + Image + + + + + JSON + + + + + XML + + + + + + Automatically adjust the editor mode to the loaded data type + + + + + This checkable button enables or disables the automatic switching of the editor mode. When a new cell is selected or new data is imported and the automatic switching is enabled, the mode adjusts to the detected data type. You can then change the editor mode manually. If you want to keep this manually switched mode while moving through the cells, switch the button off. + + + + + Auto-switch + + + + + The text editor modes let you edit plain text, as well as JSON or XML data with syntax highlighting, automatic formatting and validation before saving. + +Errors are indicated with a red squiggle underline. + + + + + This Qt editor is used for right-to-left scripts, which are not supported by the default Text editor. The presence of right-to-left characters is detected and this editor mode is automatically selected. + + + + + Open preview dialog for printing the data currently stored in the cell + + + + + Auto-format: pretty print on loading, compact on saving. + + + + + When enabled, the auto-format feature formats the data on loading, breaking the text in lines and indenting it for maximum readability. On data saving, the auto-format feature compacts the data removing end of lines, and unnecessary whitespace. + + + + + Word Wrap + + + + + Wrap lines on word boundaries + + + + + + Open in default application or browser + + + + + Open in application + + + + + The value is interpreted as a file or URL and opened in the default application or web browser. + + + + + Save file reference... + + + + + Save reference to file + + + + + + Open in external application + + + + + Autoformat + + + + + &Export... + + + + + + &Import... + + + + + + Import from file + + + + + + Opens a file dialog used to import any kind of data to this database cell. + + + + + Export to file + + + + + Opens a file dialog used to export the contents of this database cell to a file. + + + + + + Print... + + + + + Open preview dialog for printing displayed image + + + + + + Ctrl+P + + + + + Open preview dialog for printing displayed text + + + + + Copy Hex and ASCII + + + + + Copy selected hexadecimal and ASCII columns to the clipboard + + + + + Ctrl+Shift+C + + + + + Set as &NULL + + + + + Apply data to cell + + + + + This button saves the changes performed in the cell editor to the database cell. + + + + + Apply + + + + + Text + 純文字檔案 + + + + Binary + äºŒé€²ä½ + + + + Erases the contents of the cell + 刪除儲存格的內容 + + + + This area displays information about the data present in this database cell + 這個å€åŸŸé¡¯ç¤ºå­˜åœ¨æ–¼é€™å€‹è³‡æ–™åº«å„²å­˜æ ¼ä¸­çš„資料的相關資訊 + + + + Type of data currently in cell + ç›®å‰åœ¨å„²å­˜æ ¼ä¸­çš„資料的類型 + + + + Size of data currently in table + ç›®å‰åœ¨è³‡æ–™è¡¨ä¸­çš„è³‡æ–™çš„å¤§å° + + + + Choose a filename to export data + 鏿“‡ä¸€å€‹åŒ¯å‡ºè³‡æ–™çš„æª”案å稱 + + + + Type of data currently in cell: %1 Image + + + + + %1x%2 pixel(s) + + + + + Type of data currently in cell: NULL + + + + + + Type of data currently in cell: Text / Numeric + ç›®å‰åœ¨å„²å­˜æ ¼ä¸­çš„資料的類型: Text 純文字檔案/ Numeric 數值 + + + + + Image data can't be viewed in this mode. + + + + + + Try switching to Image or Binary mode. + + + + + + Binary data can't be viewed in this mode. + + + + + + Try switching to Binary mode. + + + + + + Image files (%1) + + + + + Binary files (*.bin) + + + + + Choose a file to import + 鏿“‡è¦åŒ¯å…¥çš„一個檔案 + + + + %1 Image + + + + + Invalid data for this mode + + + + + The cell contains invalid %1 data. Reason: %2. Do you really want to apply it to the cell? + + + + + + + %n character(s) + + %n 個字元 + + + + + Type of data currently in cell: Valid JSON + + + + + Couldn't save file: %1. + + + + + The data has been saved to a temporary file and has been opened with the default application. You can now edit the file and, when you are ready, apply the saved new data to the cell editor or cancel any changes. + + + + + Type of data currently in cell: Binary + ç›®å‰åœ¨å„²å­˜æ ¼ä¸­çš„資料的類型: Binary äºŒé€²ä½ + + + + + %n byte(s) + + %n ä½å…ƒçµ„ + + + + + EditIndexDialog + + + &Name + å稱(&N) + + + + Order + é †åº + + + + &Table + 資料表(&T) + + + + Edit Index Schema + + + + + &Unique + 唯一(&U) + + + + For restricting the index to only a part of the table you can specify a WHERE clause here that selects the part of the table that should be indexed + + + + + Partial inde&x clause + + + + + Colu&mns + + + + + Table column + + + + + Type + 類型 + + + + Add a new expression column to the index. Expression columns contain SQL expression rather than column names. + + + + + Index column + + + + + Deleting the old index failed: +%1 + + + + + Creating the index failed: +%1 + 建立索引時失敗: +%1 + + + + EditTableDialog + + + Edit table definition + 編輯資料表定義 + + + + Table + 資料表 + + + + Advanced + + + + + Make this a 'WITHOUT rowid' table. Setting this flag requires a field of type INTEGER with the primary key flag set and the auto increment flag unset. + + + + + Without Rowid + + + + + Database sche&ma + + + + + Fields + æ¬„ä½ + + + + Add + + + + + Remove + + + + + Move to top + + + + + Move up + + + + + Move down + + + + + Move to bottom + + + + + + Name + å稱 + + + + + Type + 類型 + + + + NN + + + + + Not null + éžç©º + + + + PK + PK + + + + Primary key + ä¸»éµ + + + + AI + AI + + + + Autoincrement + 自動增值 + + + + U + + + + + + + Unique + + + + + Default + é è¨­ + + + + Default value + é è¨­å€¼ + + + + + + Check + 檢查 + + + + Check constraint + æª¢æŸ¥ç´„æŸæ¢ä»¶ + + + + Collation + + + + + + + Foreign Key + + + + + Constraints + + + + + Add constraint + + + + + Remove constraint + + + + + Columns + 列列 + + + + SQL + + + + + <html><head/><body><p><span style=" font-weight:600; color:#ff0000;">Warning: </span>There is something with this table definition that our parser doesn't fully understand. Modifying and saving this table might result in problems.</p></body></html> + + + + + + Primary Key + + + + + Add a primary key constraint + + + + + Add a foreign key constraint + + + + + Add a unique constraint + + + + + Add a check constraint + + + + + Error creating table. Message from database engine: +%1 + 建立資料表時出ç¾éŒ¯èª¤ã€‚來自資料庫引擎的消æ¯: +%1 + + + + There already is a field with that name. Please rename it first or choose a different name for this field. + + + + + There is at least one row with this field set to NULL. This makes it impossible to set this flag. Please change the table data first. + 至少有一行帶本欄ä½çš„記錄被設為空。這使得它ä¸å¯èƒ½è¨­å®šé€™å€‹æ¨™èªŒã€‚請首先修改資料表資料。 + + + + There is at least one row with a non-integer value in this field. This makes it impossible to set the AI flag. Please change the table data first. + 在這個欄ä½ä¸­è‡³å°‘æœ‰ä¸€è¡Œå¸¶æœ‰ä¸€å€‹éžæ•´æ•¸çš„值。這使得它ä¸å¯èƒ½è¨­å®š AI 標誌。請首先修改資料表資料。 + + + + Column '%1' has duplicate data. + + + + + + This makes it impossible to enable the 'Unique' flag. Please remove the duplicate data, which will allow the 'Unique' flag to then be enabled. + + + + + This column is referenced in a foreign key in table %1 and thus its name cannot be changed. + + + + + + There can only be one primary key for each table. Please modify the existing primary key instead. + + + + + Are you sure you want to delete the field '%1'? +All data currently stored in this field will be lost. + 您是å¦ç¢ºèªæ‚¨æƒ³åˆªé™¤æ¬„ä½ '%1'? +ç›®å‰å­˜å„²åœ¨é€™å€‹æ¬„ä½ä¸­çš„æ‰€æœ‰è³‡æ–™å°‡æœƒéºå¤±ã€‚ + + + + Please add a field which meets the following criteria before setting the without rowid flag: + - Primary key flag set + - Auto increment disabled + + + + + ExportDataDialog + + + Export data as CSV + 匯出資料為 CSV + + + + Tab&le(s) + + + + + Colu&mn names in first line + + + + + Fie&ld separator + + + + + , + , + + + + ; + ; + + + + Tab + Tab + + + + | + | + + + + + + Other + 其它 + + + + &Quote character + 引號(&Q) + + + + " + " + + + + ' + ' + + + + New line characters + + + + + Windows: CR+LF (\r\n) + + + + + Unix: LF (\n) + + + + + Pretty print + + + + + + Could not open output file: %1 + + + + + + Choose a filename to export data + 鏿“‡åŒ¯å‡ºè³‡æ–™çš„æª”案å稱 + + + + Export data as JSON + + + + + exporting CSV + + + + + exporting JSON + + + + + Please select at least 1 table. + + + + + Choose a directory + 鏿“‡ä¸€å€‹ç›®éŒ„ + + + + Export completed. + 匯出完æˆã€‚ + + + + ExportSqlDialog + + + Export SQL... + + + + + Tab&le(s) + + + + + Select All + + + + + Deselect All + + + + + &Options + + + + + Keep column names in INSERT INTO + + + + + Multiple rows (VALUES) per INSERT statement + + + + + Export everything + + + + + Export schema only + + + + + Export data only + + + + + Keep old schema (CREATE TABLE IF NOT EXISTS) + + + + + Overwrite old schema (DROP TABLE, then CREATE TABLE) + + + + + Please select at least one table. + + + + + Choose a filename to export + 鏿“‡è¦åŒ¯å‡ºçš„æª”案å稱 + + + + Export completed. + 匯出完æˆã€‚ + + + + Export cancelled or failed. + åŒ¯å‡ºå–æ¶ˆæˆ–失敗。 + + + + ExtendedScintilla + + + + Ctrl+H + + + + + Ctrl+F + + + + + + Ctrl+P + + + + + Find... + + + + + Find and Replace... + + + + + Print... + + + + + ExtendedTableWidget + + + Use as Exact Filter + + + + + Containing + + + + + Not containing + + + + + Not equal to + + + + + Greater than + + + + + Less than + + + + + Greater or equal + + + + + Less or equal + + + + + Between this and... + + + + + Regular expression + + + + + Edit Conditional Formats... + + + + + Set to NULL + + + + + Copy + + + + + Copy with Headers + + + + + Copy as SQL + + + + + Paste + + + + + Print... + + + + + Use in Filter Expression + + + + + Alt+Del + + + + + Ctrl+Shift+C + + + + + Ctrl+Alt+C + + + + + The content of the clipboard is bigger than the range selected. +Do you want to insert it anyway? + + + + + <p>Not all data has been loaded. <b>Do you want to load all data before selecting all the rows?</b><p><p>Answering <b>No</b> means that no more data will be loaded and the selection will not be performed.<br/>Answering <b>Yes</b> might take some time while the data is loaded but the selection will be complete.</p>Warning: Loading all the data might require a great amount of memory for big tables. + + + + + Cannot set selection to NULL. Column %1 has a NOT NULL constraint. + + + + + FileExtensionManager + + + File Extension Manager + + + + + &Up + + + + + &Down + + + + + &Add + + + + + &Remove + + + + + + Description + + + + + Extensions + + + + + *.extension + + + + + FilterLineEdit + + + Filter + éŽæ¿¾ + + + + These input fields allow you to perform quick filters in the currently selected table. +By default, the rows containing the input text are filtered out. +The following operators are also supported: +% Wildcard +> Greater than +< Less than +>= Equal to or greater +<= Equal to or less += Equal to: exact match +<> Unequal: exact inverse match +x~y Range: values between x and y +/regexp/ Values matching the regular expression + + + + + Clear All Conditional Formats + + + + + Use for Conditional Format + + + + + Edit Conditional Formats... + + + + + Set Filter Expression + + + + + What's This? + 這是什麼? + + + + Is NULL + + + + + Is not NULL + + + + + Is empty + + + + + Is not empty + + + + + Not containing... + + + + + Equal to... + + + + + Not equal to... + + + + + Greater than... + + + + + Less than... + + + + + Greater or equal... + + + + + Less or equal... + + + + + In range... + + + + + Regular expression... + + + + + FindReplaceDialog + + + Find and Replace + + + + + Fi&nd text: + + + + + Re&place with: + + + + + Match &exact case + + + + + Match &only whole words + + + + + When enabled, the search continues from the other end when it reaches one end of the page + + + + + &Wrap around + + + + + When set, the search goes backwards from cursor position, otherwise it goes forward + + + + + Search &backwards + + + + + <html><head/><body><p>When checked, the pattern to find is searched only in the current selection.</p></body></html> + + + + + &Selection only + + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + + + + + Use regular e&xpressions + + + + + Find the next occurrence from the cursor position and in the direction set by "Search backwards" + + + + + &Find Next + + + + + F3 + + + + + &Replace + + + + + Highlight all the occurrences of the text in the page + + + + + F&ind All + + + + + Replace all the occurrences of the text in the page + + + + + Replace &All + + + + + The searched text was not found + + + + + The searched text was not found. + + + + + The searched text was found one time. + + + + + The searched text was found %1 times. + + + + + The searched text was replaced one time. + + + + + The searched text was replaced %1 times. + + + + + ForeignKeyEditor + + + &Reset + + + + + Foreign key clauses (ON UPDATE, ON DELETE etc.) + + + + + ImportCsvDialog + + + Import CSV file + 匯入 CSV 檔案 + + + + Table na&me + + + + + &Column names in first line + 列å在首行(&C) + + + + Field &separator + 欄ä½åˆ†éš”符號(&S) + + + + , + , + + + + ; + ; + + + + + Tab + Tab + + + + | + ; + + + + Other + 其它 + + + + &Quote character + 引號(&Q) + + + + + Other (printable) + + + + + + Other (code) + + + + + " + ; + + + + ' + ' + + + + &Encoding + + + + + UTF-8 + + + + + UTF-16 + + + + + ISO-8859-1 + + + + + Trim fields? + + + + + Separate tables + + + + + Advanced + + + + + When importing an empty value from the CSV file into an existing table with a default value for this column, that default value is inserted. Activate this option to insert an empty value instead. + + + + + Ignore default &values + + + + + Activate this option to stop the import when trying to import an empty value into a NOT NULL column without a default value. + + + + + Fail on missing values + + + + + Disable data type detection + + + + + Disable the automatic data type detection when creating a new table. + + + + + When importing into an existing table with a primary key, unique constraints or a unique index there is a chance for a conflict. This option allows you to select a strategy for that case: By default the import is aborted and rolled back but you can also choose to ignore and not import conflicting rows or to replace the existing row in the table. + + + + + Abort import + + + + + Ignore row + + + + + Replace existing row + + + + + Conflict strategy + + + + + + Deselect All + + + + + Match Similar + + + + + Select All + + + + + There is already a table named '%1' and an import into an existing table is only possible if the number of columns match. + + + + + There is already a table named '%1'. Do you want to import the data into it? + + + + + Creating restore point failed: %1 + + + + + Creating the table failed: %1 + + + + + importing CSV + + + + + Importing the file '%1' took %2ms. Of this %3ms were spent in the row function. + + + + + Inserting row failed: %1 + + + + + MainWindow + + + toolBar1 + + + + + Opens the SQLCipher FAQ in a browser window + + + + + Export one or more table(s) to a JSON file + + + + + DB Browser for SQLite + + + + + Open an existing database file in read only mode + + + + + &File + 檔案(&F) + + + + &Import + 匯入(&I) + + + + &Export + 匯出(&E) + + + + &Edit + 編輯(&E) + + + + &View + 查看(&V) + + + + &Help + 幫助(&H) + + + + Edit Database &Cell + + + + + DB Sche&ma + + + + + &Remote + + + + + + Execute current line + 執行目å‰è¡Œ + + + + This button executes the SQL statement present in the current editor line + + + + + Shift+F5 + + + + + Sa&ve Project + + + + + + Save SQL file as + + + + + This button saves the content of the current SQL editor tab to a file + + + + + &Browse Table + + + + + Copy Create statement + + + + + Copy the CREATE statement of the item to the clipboard + + + + + User + 用戶 + + + + Application + æ‡‰ç”¨ç¨‹å¼ + + + + &Clear + 清除(&C) + + + + &New Database... + 新建資料庫(&N)... + + + + + Create a new database file + 建立一個新的資料庫檔 + + + + This option is used to create a new database file. + 這個é¸é …用於建立一個新的資料庫檔案。 + + + + Ctrl+N + + + + + + &Open Database... + 打開資料庫(&O)... + + + + + + + + Open an existing database file + æ‰“é–‹ä¸€å€‹ç¾æœ‰çš„資料庫檔 + + + + + + This option is used to open an existing database file. + 這個é¸é …ç”¨æ–¼æ‰“é–‹ä¸€å€‹ç¾æœ‰çš„資料庫檔案。 + + + + Ctrl+O + + + + + &Close Database + 關閉資料庫(&C) + + + + + Ctrl+W + + + + + + Revert database to last saved state + 把資料庫退回到先å‰å„²å­˜çš„狀態 + + + + This option is used to revert the current database file to its last saved state. All changes made since the last save operation are lost. + 這個é¸é …用於倒退目å‰çš„資料庫檔為它最後的儲存狀態。從最後儲存æ“作開始åšå‡ºçš„æ‰€æœ‰ä¿®æ”¹å°‡æœƒéºå¤±ã€‚ + + + + + Write changes to the database file + 把修改寫入到資料庫檔 + + + + This option is used to save changes to the database file. + 這個é¸é …用於儲存修改到資料庫檔案。 + + + + Ctrl+S + + + + + Compact the database file, removing space wasted by deleted records + 壓縮資料庫檔,通éŽåˆªé™¤è¨˜éŒ„去掉浪費的空間 + + + + + Compact the database file, removing space wasted by deleted records. + 壓縮資料庫檔,通éŽåˆªé™¤è¨˜éŒ„去掉浪費的空間。 + + + + E&xit + 退出(&X) + + + + Ctrl+Q + + + + + Import data from an .sql dump text file into a new or existing database. + 從一個 .sql 轉儲文字檔中匯入資料到一個新的或已有的資料庫。 + + + + This option lets you import data from an .sql dump text file into a new or existing database. SQL dump files can be created on most database engines, including MySQL and PostgreSQL. + 這個é¸é …讓你從一個 .sql è½‰å„²æ–‡å­—æª”ä¸­åŒ¯å…¥è³‡æ–™åˆ°ä¸€å€‹æ–°çš„æˆ–ç¾æœ‰çš„資料庫。SQL 轉儲檔å¯ä»¥åœ¨å¤§å¤šæ•¸è³‡æ–™åº«å¼•擎上建立,包括 MySQL å’Œ PostgreSQL。 + + + + Open a wizard that lets you import data from a comma separated text file into a database table. + 打開一個引導精éˆè®“您從一個逗號間隔的文字檔匯入資料到一個資料庫資料表中。 + + + + Open a wizard that lets you import data from a comma separated text file into a database table. CSV files can be created on most database and spreadsheet applications. + 打開一個引導精éˆè®“您從一個逗號間隔的文字檔匯入資料到一個資料庫資料表中。CSV 檔å¯ä»¥åœ¨å¤§å¤šæ•¸è³‡æ–™åº«å’Œè©¦ç®—資料表應用程å¼ä¸Šå»ºç«‹ã€‚ + + + + Export a database to a .sql dump text file. + 匯出一個資料庫導一個 .sql 轉儲文字檔案。 + + + + This option lets you export a database to a .sql dump text file. SQL dump files contain all data necessary to recreate the database on most database engines, including MySQL and PostgreSQL. + 這個é¸é …讓你匯出一個資料庫導一個 .sql 轉儲文字檔案。SQL 轉儲檔包å«åœ¨å¤§å¤šæ•¸è³‡æ–™åº«å¼•擎上(包括 MySQL å’Œ PostgreSQL)釿–°å»ºç«‹è³‡æ–™åº«æ‰€éœ€çš„æ‰€æœ‰è³‡æ–™ã€‚ + + + + Export a database table as a comma separated text file. + 匯出一個資料庫資料表為逗號間隔的文字檔案。 + + + + Export a database table as a comma separated text file, ready to be imported into other database or spreadsheet applications. + 匯出一個資料庫資料表為逗號間隔的文字檔,準備好被匯入到其他資料庫或試算資料表應用程å¼ã€‚ + + + + Open the Create Table wizard, where it is possible to define the name and fields for a new table in the database + 打開“建立資料表â€å¼•å°Žç²¾éˆï¼Œåœ¨é‚£è£¡å¯ä»¥å®šç¾©åœ¨è³‡æ–™åº«ä¸­çš„一個新資料表的åç¨±å’Œæ¬„ä½ + + + + Open the Delete Table wizard, where you can select a database table to be dropped. + 打開“刪除資料表â€å¼•å°Žç²¾éˆï¼Œåœ¨é‚£è£¡ä½ å¯ä»¥é¸æ“‡è¦ä¸Ÿæ£„的一個資料庫資料表。 + + + + Open the Modify Table wizard, where it is possible to rename an existing table. It is also possible to add or delete fields form a table, as well as modify field names and types. + 打開“修改資料表â€å¼•å°Žç²¾éˆï¼Œåœ¨å…¶ä¸­å¯ä»¥é‡å‘½åä¸€å€‹ç¾æœ‰çš„資料表。也å¯ä»¥å¾žä¸€å€‹è³‡æ–™è¡¨ä¸­åŠ å…¥æˆ–åˆªé™¤æ¬„ä½ï¼Œä»¥åŠä¿®æ”¹æ¬„ä½å稱和類型。 + + + + Open the Create Index wizard, where it is possible to define a new index on an existing database table. + 打開“建立索引â€å¼•å°Žç²¾éˆï¼Œåœ¨é‚£è£¡å¯ä»¥åœ¨ä¸€å€‹ç¾æœ‰çš„資料庫資料表上定義一個新索引。 + + + + &Preferences... + å好é¸é …(&P)... + + + + + Open the preferences window. + 打開首é¸é …視窗。 + + + + &DB Toolbar + 資料庫工具列(&D) + + + + Shows or hides the Database toolbar. + 顯示或隱è—資料庫工具列。 + + + + Shift+F1 + + + + + &Recently opened + 最近打開(&R) + + + + Open &tab + 打開標籤é (&T) + + + + Ctrl+T + + + + + + Database Structure + This has to be equal to the tab title in all the main tabs + + + + + This is the structure of the opened database. +You can drag SQL statements from an object row and drop them into other applications or into another instance of 'DB Browser for SQLite'. + + + + + + + Browse Data + This has to be equal to the tab title in all the main tabs + + + + + Un/comment block of SQL code + + + + + Un/comment block + + + + + Comment or uncomment current line or selected block of code + + + + + Comment or uncomment the selected lines or the current line, when there is no selection. All the block is toggled according to the first line. + + + + + Ctrl+/ + + + + + Stop SQL execution + + + + + Stop execution + + + + + Stop the currently running SQL script + + + + + + Edit Pragmas + This has to be equal to the tab title in all the main tabs + + + + + Warning: this pragma is not readable and this value has been inferred. Writing the pragma might overwrite a redefined LIKE provided by an SQLite extension. + + + + + + Execute SQL + This has to be equal to the tab title in all the main tabs + 執行 SQL + + + + &Tools + + + + + DB Toolbar + + + + + SQL &Log + + + + + Show S&QL submitted by + + + + + Error Log + + + + + This button clears the contents of the SQL logs + + + + + This panel lets you examine a log of all SQL commands issued by the application or by yourself + + + + + &Plot + + + + + This is the structure of the opened database. +You can drag multiple object names from the Name column and drop them into the SQL editor and you can adjust the properties of the dropped names using the context menu. This would help you in composing SQL statements. +You can drag SQL statements from the Schema column and drop them into the SQL editor or into other applications. + + + + + + + Project Toolbar + + + + + Extra DB toolbar + + + + + + + Close the current database file + + + + + This button closes the connection to the currently open database file + + + + + Ctrl+F4 + + + + + &Revert Changes + + + + + &Write Changes + + + + + Compact &Database... + + + + + Execute all/selected SQL + + + + + This button executes the currently selected SQL statements. If no text is selected, all SQL statements are executed. + + + + + &Load Extension... + + + + + Execute line + + + + + &Wiki + + + + + F1 + + + + + Bug &Report... + + + + + Feature Re&quest... + + + + + Web&site + + + + + &Donate on Patreon... + + + + + Open &Project... + + + + + &Attach Database... + + + + + + Add another database file to the current database connection + + + + + This button lets you add another database file to the current database connection + + + + + &Set Encryption... + + + + + SQLCipher &FAQ + + + + + Table(&s) to JSON... + + + + + Open Data&base Read Only... + + + + + Ctrl+Shift+O + + + + + Save results + + + + + Save the results view + + + + + This button lets you save the results of the last executed query + + + + + + Find text in SQL editor + + + + + Find + + + + + This button opens the search bar of the editor + + + + + Ctrl+F + + + + + + Find or replace text in SQL editor + + + + + Find or replace + + + + + This button opens the find/replace dialog for the current editor tab + + + + + Ctrl+H + + + + + Export to &CSV + 匯出到 &CSV + + + + Save as &view + 儲存為視圖(&V) + + + + Save as view + 儲存為視圖 + + + + Browse Table + + + + + Shows or hides the Project toolbar. + + + + + Open SQL file(s) + + + + + This button opens files containing SQL statements and loads them in new editor tabs + + + + + This button lets you save all the settings associated to the open DB to a DB Browser for SQLite project file + + + + + This button lets you open a DB Browser for SQLite project file + + + + + Extra DB Toolbar + + + + + New In-&Memory Database + + + + + Drag && Drop Qualified Names + + + + + + Use qualified names (e.g. "Table"."Field") when dragging the objects and dropping them into the editor + + + + + Drag && Drop Enquoted Names + + + + + + Use escaped identifiers (e.g. "Table1") when dragging the objects and dropping them into the editor + + + + + &Integrity Check + + + + + Runs the integrity_check pragma over the opened database and returns the results in the Execute SQL tab. This pragma does an integrity check of the entire database. + + + + + &Foreign-Key Check + + + + + Runs the foreign_key_check pragma over the opened database and returns the results in the Execute SQL tab + + + + + &Quick Integrity Check + + + + + Run a quick integrity check over the open DB + + + + + Runs the quick_check pragma over the opened database and returns the results in the Execute SQL tab. This command does most of the checking of PRAGMA integrity_check but runs much faster. + + + + + &Optimize + + + + + Attempt to optimize the database + + + + + Runs the optimize pragma over the opened database. This pragma might perform optimizations that will improve the performance of future queries. + + + + + + Print + + + + + Print text from current SQL editor tab + + + + + Open a dialog for printing the text in the current SQL editor tab + + + + + Print the structure of the opened database + + + + + Open a dialog for printing the structure of the opened database + + + + + &Save Project As... + + + + + + + Save the project in a file selected in a dialog + + + + + Save A&ll + + + + + + + Save DB file, project file and opened SQL files + + + + + Ctrl+Shift+S + + + + + &Database from SQL file... + + + + + &Table from CSV file... + + + + + &Database to SQL file... + + + + + &Table(s) as CSV file... + + + + + &Create Table... + + + + + &Delete Table... + + + + + &Modify Table... + + + + + Create &Index... + + + + + W&hat's This? + + + + + &About + + + + + This button opens a new tab for the SQL editor + + + + + &Execute SQL + 執行 SQL(&E) + + + + + Save the current session to a file + å„²å­˜ç›®å‰æœƒè©±åˆ°ä¸€å€‹æª”案 + + + + + Load a working session from a file + 從一個檔載入工作會話 + + + + + + Save SQL file + 儲存 SQL 檔案 + + + + Ctrl+E + + + + + Export as CSV file + 匯出為 CSV 檔案 + + + + Export table as comma separated values file + 匯出資料表為逗號間隔值檔案 + + + + Ctrl+L + + + + + + Ctrl+P + + + + + Database encoding + 資料庫編碼 + + + + + Choose a database file + 鏿“‡ä¸€å€‹è³‡æ–™åº«æª”案 + + + + Ctrl+Return + + + + + Ctrl+D + + + + + Ctrl+I + + + + + Reset Window Layout + + + + + Alt+0 + + + + + The database is currenctly busy. + + + + + Click here to interrupt the currently running query. + + + + + Encrypted + + + + + Database is encrypted using SQLCipher + + + + + Read only + + + + + Database file is read only. Editing the database is disabled. + + + + + Could not open database file. +Reason: %1 + + + + + + + Choose a filename to save under + 鏿“‡ä¸€å€‹æª”案å稱儲存 + + + + Error while saving the database file. This means that not all changes to the database were saved. You need to resolve the following error first. + +%1 + + + + + Do you want to save the changes made to SQL tabs in the project file '%1'? + + + + + A new DB Browser for SQLite version is available (%1.%2.%3).<br/><br/>Please download at <a href='%4'>%4</a>. + + + + + DB Browser for SQLite project file (*.sqbpro) + + + + + Error checking foreign keys after table modification. The changes will be reverted. + + + + + This table did not pass a foreign-key check.<br/>You should run 'Tools | Foreign-Key Check' and fix the reported issues. + + + + + Execution finished with errors. + + + + + Execution finished without errors. + + + + + Are you sure you want to undo all changes made to the database file '%1' since the last save? + 您是å¦ç¢ºèªæ‚¨æƒ³æ’¤éŠ·å¾žä¸Šæ¬¡å„²å­˜ä»¥ä¾†å°è³‡æ–™åº«æª”‘%1’åšå‡ºçš„æ‰€æœ‰ä¿®æ”¹ã€‚? + + + + Choose a file to import + 鏿“‡è¦åŒ¯å…¥çš„一個檔案 + + + + Text files(*.sql *.txt);;All files(*) + 文字檔案(*.sql *.txt);;所有擋檔案(*) + + + + Do you want to create a new database file to hold the imported data? +If you answer no we will attempt to import the data in the SQL file to the current database. + 您是å¦ç¢ºèªæ‚¨æƒ³å»ºç«‹ä¸€å€‹æ–°çš„資料庫檔用來存放匯入的資料? +如果您會到“å¦â€çš„話,我們將嘗試匯入 SQL 檔中的資料到目å‰è³‡æ–™åº«ã€‚ + + + + File %1 already exists. Please choose a different name. + 檔案 %1 å·²å­˜åœ¨ã€‚è«‹é¸æ“‡ä¸€å€‹ä¸åŒçš„å稱。 + + + + Error importing data: %1 + 匯入資料時出ç¾éŒ¯èª¤: %1 + + + + Import completed. + 匯入完æˆã€‚ + + + + Delete View + 刪除視圖 + + + + Delete Trigger + 刪除觸發器 + + + + Delete Index + 刪除索引 + + + + + Delete Table + 刪除資料表 + + + + Setting PRAGMA values will commit your current transaction. +Are you sure? + 設定 PRAGMA 值將會æäº¤æ‚¨çš„ç›®å‰äº‹å‹™ã€‚. +您確èªå—Ž? + + + + In-Memory database + + + + + Window Layout + + + + + Simplify Window Layout + + + + + Shift+Alt+0 + + + + + Dock Windows at Bottom + + + + + Dock Windows at Left Side + + + + + Dock Windows at Top + + + + + Are you sure you want to delete the table '%1'? +All data associated with the table will be lost. + + + + + Are you sure you want to delete the view '%1'? + + + + + Are you sure you want to delete the trigger '%1'? + + + + + Are you sure you want to delete the index '%1'? + + + + + Error: could not delete the table. + + + + + Error: could not delete the view. + + + + + Error: could not delete the trigger. + + + + + Error: could not delete the index. + + + + + Message from database engine: +%1 + + + + + Editing the table requires to save all pending changes now. +Are you sure you want to save the database? + + + + + Edit View %1 + + + + + Edit Trigger %1 + + + + + You are already executing SQL statements. Do you want to stop them in order to execute the current statements instead? Note that this might leave the database in an inconsistent state. + + + + + -- EXECUTING SELECTION IN '%1' +-- + + + + + -- EXECUTING LINE IN '%1' +-- + + + + + -- EXECUTING ALL IN '%1' +-- + + + + + + At line %1: + + + + + Result: %1 + + + + + Result: %2 + + + + + Setting PRAGMA values or vacuuming will commit your current transaction. +Are you sure? + + + + + Opened '%1' in read-only mode from recent file list + + + + + Opened '%1' from recent file list + + + + + Project saved to file '%1' + + + + + This action will open a new SQL tab with the following statements for you to edit and run: + + + + + Rename Tab + + + + + Duplicate Tab + + + + + Close Tab + + + + + Opening '%1'... + + + + + There was an error opening '%1'... + + + + + Value is not a valid URL or filename: %1 + + + + + %1 rows returned in %2ms + + + + + You are still executing SQL statements. Closing the database now will stop their execution, possibly leaving the database in an inconsistent state. Are you sure you want to close the database? + + + + + Do you want to save the changes made to the project file '%1'? + + + + + Choose text files + + + + + Import completed. Some foreign key constraints are violated. Please fix them before saving. + + + + + Modify View + + + + + Modify Trigger + + + + + Modify Index + + + + + Modify Table + + + + + &%1 %2%3 + &%1 %2%3 + + + + (read only) + + + + + Open Database or Project + + + + + Attach Database... + + + + + Import CSV file(s)... + + + + + Select the action to apply to the dropped file(s). <br/>Note: only 'Import' will process more than one file. + + + + + + + Do you want to save the changes made to SQL tabs in a new project file? + + + + + Do you want to save the changes made to the SQL file %1? + + + + + The statements in this tab are still executing. Closing the tab will stop the execution. This might leave the database in an inconsistent state. Are you sure you want to close the tab? + + + + + Select SQL file to open + 鏿“‡è¦æ‰“é–‹çš„ SQL 檔案 + + + + Select file name + 鏿“‡æª”案å稱 + + + + Select extension file + 鏿“‡æ“´å……套件檔 + + + + Extension successfully loaded. + 擴充套件æˆåŠŸè¼‰å…¥ã€‚ + + + + Error loading extension: %1 + 載入擴充套件時出ç¾éŒ¯èª¤: %1 + + + + Could not find resource file: %1 + + + + + + Don't show again + ä¸å†é¡¯ç¤º + + + + New version available. + 新版本å¯ç”¨ã€‚ + + + + Choose a project file to open + + + + + This project file is using an old file format because it was created using DB Browser for SQLite version 3.10 or lower. Loading this file format is still fully supported but we advice you to convert all your project files to the new file format because support for older formats might be dropped at some point in the future. You can convert your files by simply opening and re-saving them. + + + + + Could not open project file for writing. +Reason: %1 + + + + + Collation needed! Proceed? + + + + + A table in this database requires a special collation function '%1' that this application can't provide without further knowledge. +If you choose to proceed, be aware bad things can happen to your database. +Create a backup! + + + + + creating collation + + + + + Set a new name for the SQL tab. Use the '&&' character to allow using the following character as a keyboard shortcut. + + + + + Please specify the view name + 請指定視圖å稱 + + + + There is already an object with that name. Please choose a different name. + 已有相åŒå稱的å°è±¡ã€‚è«‹é¸æ“‡ä¸€å€‹ä¸åŒçš„å稱。 + + + + View successfully created. + æˆåŠŸå»ºç«‹è¦–åœ–ã€‚ + + + + Error creating view: %1 + 建立視圖時出ç¾éŒ¯èª¤: %1 + + + + This action will open a new SQL tab for running: + + + + + Press Help for opening the corresponding SQLite reference page. + + + + + Busy (%1) + + + + + NullLineEdit + + + Set to NULL + + + + + Alt+Del + + + + + PlotDock + + + Plot + 圖表 + + + + <html><head/><body><p>This pane shows the list of columns of the currently browsed table or the just executed query. You can select the columns that you want to be used as X or Y axis for the plot pane below. The table shows detected axis type that will affect the resulting plot. For the Y axis you can only select numeric columns, but for the X axis you will be able to select:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Date/Time</span>: strings with format &quot;yyyy-MM-dd hh:mm:ss&quot; or &quot;yyyy-MM-ddThh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Date</span>: strings with format &quot;yyyy-MM-dd&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Time</span>: strings with format &quot;hh:mm:ss&quot;</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Label</span>: other string formats. Selecting this column as X axis will produce a Bars plot with the column values as labels for the bars</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Numeric</span>: integer or real values</li></ul><p>Double-clicking the Y cells you can change the used color for that graph.</p></body></html> + + + + + Columns + 列列 + + + + X + X + + + + Y1 + + + + + Y2 + + + + + Axis Type + + + + + Here is a plot drawn when you select the x and y values above. + +Click on points to select them in the plot and in the table. Ctrl+Click for selecting a range of points. + +Use mouse-wheel for zooming and mouse drag for changing the axis range. + +Select the axes or axes labels to drag and zoom only in that orientation. + + + + + Line type: + + + + + + None + ç„¡ + + + + Line + + + + + StepLeft + + + + + StepRight + + + + + StepCenter + + + + + Impulse + + + + + Point shape: + + + + + Cross + + + + + Plus + + + + + Circle + + + + + Disc + + + + + Square + + + + + Diamond + + + + + Star + + + + + Triangle + + + + + TriangleInverted + + + + + CrossSquare + + + + + PlusSquare + + + + + CrossCircle + + + + + PlusCircle + + + + + Peace + + + + + <html><head/><body><p>Save current plot...</p><p>File format chosen by extension (png, jpg, pdf, bmp)</p></body></html> + <html><head/><body><p>儲存目å‰åœ–表...</p><p>æª”æ¡ˆæ ¼å¼æŒ‰å‰¯æª”å鏿“‡(png, jpg, pdf, bmp)</p></body></html> + + + + Save current plot... + 儲存目å‰åœ–表... + + + + + Load all data and redraw plot + + + + + + + Row # + + + + + Copy + + + + + Print... + + + + + Show legend + + + + + Stacked bars + + + + + Date/Time + + + + + Date + + + + + Time + + + + + + Numeric + + + + + Label + + + + + Invalid + + + + + Load all data and redraw plot. +Warning: not all data has been fetched from the table yet due to the partial fetch mechanism. + + + + + Choose an axis color + + + + + Choose a filename to save under + 鏿“‡ä¸€å€‹æª”案å稱儲存 + + + + PNG(*.png);;JPG(*.jpg);;PDF(*.pdf);;BMP(*.bmp);;All Files(*) + PNG(*.png);;JPG(*.jpg);;PDF(*.pdf);;BMP(*.bmp);;所有擋檔案(*) + + + + There are curves in this plot and the selected line style can only be applied to graphs sorted by X. Either sort the table or query by X to remove curves or select one of the styles supported by curves: None or Line. + + + + + Loading all remaining data for this table took %1ms. + + + + + PreferencesDialog + + + Preferences + 首é¸é … + + + + &General + + + + + Remember last location + + + + + Always use this location + + + + + Remember last location for session only + + + + + Lan&guage + + + + + Show remote options + + + + + Automatic &updates + + + + + &Database + 資料庫(&D) + + + + Database &encoding + 資料庫編碼(&E) + + + + Open databases with foreign keys enabled. + 打開啟用了外éµçš„資料庫。 + + + + &Foreign keys + 外éµ(&F) + + + + + + + + + + + + enabled + 啟用 + + + + Default &location + é è¨­ä½ç½®(&L) + + + + + + ... + ... + + + + Remove line breaks in schema &view + + + + + Prefetch block si&ze + + + + + SQ&L to execute after opening database + + + + + Default field type + + + + + Data &Browser + + + + + Font + + + + + &Font + + + + + Content + + + + + Symbol limit in cell + + + + + Threshold for completion and calculation on selection + + + + + Show images in cell + + + + + Enable this option to show a preview of BLOBs containing image data in the cells. This can affect the performance of the data browser, however. + + + + + NULL + + + + + Regular + + + + + Binary + äºŒé€²ä½ + + + + Background + + + + + Filters + + + + + Escape character + + + + + Delay time (&ms) + + + + + Set the waiting time before a new filter value is applied. Can be set to 0 for disabling waiting. + + + + + &SQL + &SQL + + + + Settings name + 設定å稱 + + + + Context + 上下文 + + + + Colour + é¡è‰² + + + + Bold + ç²—é«” + + + + Italic + 斜體 + + + + Underline + 底線 + + + + Keyword + é—œéµå­— + + + + Function + 函數 + + + + Table + 資料表 + + + + Comment + 注釋 + + + + Identifier + 識別符 + + + + String + 字串 + + + + Current line + ç›®å‰è¡Œ + + + + SQL &editor font size + SQL 編輯器字體大å°(&E) + + + + Tab size + + + + + SQL editor &font + + + + + Error indicators + + + + + Hori&zontal tiling + + + + + If enabled the SQL code editor and the result table view are shown side by side instead of one over the other. + + + + + Code co&mpletion + + + + + Toolbar style + + + + + + + + + Only display the icon + + + + + + + + + Only display the text + + + + + + + + + The text appears beside the icon + + + + + + + + + The text appears under the icon + + + + + + + + + Follow the style + + + + + DB file extensions + + + + + Manage + + + + + Main Window + + + + + Database Structure + + + + + Browse Data + + + + + Execute SQL + 執行 SQL + + + + Edit Database Cell + + + + + When this value is changed, all the other color preferences are also set to matching colors. + + + + + Follow the desktop style + + + + + Dark style + + + + + Application style + + + + + This sets the font size for all UI elements which do not have their own font size option. + + + + + Font size + + + + + When enabled, the line breaks in the Schema column of the DB Structure tab, dock and printed output are removed. + + + + + Database structure font size + + + + + Font si&ze + + + + + This is the maximum number of items allowed for some computationally expensive functionalities to be enabled: +Maximum number of rows in a table for enabling the value completion based on current values in the column. +Maximum number of indexes in a selection for calculating sum and average. +Can be set to 0 for disabling the functionalities. + + + + + This is the maximum number of rows in a table for enabling the value completion based on current values in the column. +Can be set to 0 for disabling completion. + + + + + Field display + + + + + Displayed &text + + + + + + + + + + Click to set this color + + + + + Text color + + + + + Background color + + + + + Preview only (N/A) + + + + + Foreground + + + + + SQL &results font size + + + + + &Wrap lines + + + + + Never + + + + + At word boundaries + + + + + At character boundaries + + + + + At whitespace boundaries + + + + + &Quotes for identifiers + + + + + Choose the quoting mechanism used by the application for identifiers in SQL code. + + + + + "Double quotes" - Standard SQL (recommended) + + + + + `Grave accents` - Traditional MySQL quotes + + + + + [Square brackets] - Traditional MS SQL Server quotes + + + + + Keywords in &UPPER CASE + + + + + When set, the SQL keywords are completed in UPPER CASE letters. + + + + + When set, the SQL code lines that caused errors during the last execution are highlighted and the results frame indicates the error in the background + + + + + Close button on tabs + + + + + If enabled, SQL editor tabs will have a close button. In any case, you can use the contextual menu or the keyboard shortcut to close them. + + + + + &Extensions + 擴充套件(&E) + + + + Select extensions to load for every database: + 鏿“‡æ¯å€‹è³‡æ–™åº«è¦è¼‰å…¥çš„æ“´å……套件: + + + + Add extension + 加入擴充套件 + + + + Remove extension + 刪除擴充套件 + + + + <html><head/><body><p>While supporting the REGEXP operator SQLite doesn't implement any regular expression<br/>algorithm but calls back the running application. DB Browser for SQLite implements this<br/>algorithm for you to let you use REGEXP out of the box. However, as there are multiple possible<br/>implementations of this and you might want to use another one, you're free to disable the<br/>application's implementation and load your own by using an extension. Requires restart of the application.</p></body></html> + + + + + Disable Regular Expression extension + + + + + <html><head/><body><p>SQLite provides an SQL function for loading extensions from a shared library file. Activate this if you want to use the <span style=" font-style:italic;">load_extension()</span> function from SQL code.</p><p>For security reasons, extension loading is turned off by default and must be enabled through this setting. You can always load extensions through the GUI, even though this option is disabled.</p></body></html> + + + + + Allow loading extensions from SQL code + + + + + Remote + + + + + CA certificates + + + + + Proxy + + + + + Configure + + + + + + Subject CN + + + + + Common Name + + + + + Subject O + + + + + Organization + + + + + + Valid from + + + + + + Valid to + + + + + + Serial number + + + + + Your certificates + + + + + File + 檔案 + + + + Subject Common Name + + + + + Issuer CN + + + + + Issuer Common Name + + + + + Clone databases into + + + + + + Choose a directory + 鏿“‡ä¸€å€‹ç›®éŒ„ + + + + The language will change after you restart the application. + + + + + Select extension file + 鏿“‡æ“´å……套件檔 + + + + Extensions(*.so *.dylib *.dll);;All files(*) + + + + + Import certificate file + + + + + No certificates found in this file. + + + + + Are you sure you want do remove this certificate? All certificate data will be deleted from the application settings! + + + + + Are you sure you want to clear all the saved settings? +All your preferences will be lost and default values will be used. + + + + + ProxyDialog + + + Proxy Configuration + + + + + Pro&xy Type + + + + + Host Na&me + + + + + Port + + + + + Authentication Re&quired + + + + + &User Name + + + + + Password + + + + + None + ç„¡ + + + + System settings + + + + + HTTP + + + + + Socks v5 + + + + + QObject + + + Error importing data + + + + + from record number %1 + + + + + . +%1 + + + + + Importing CSV file... + + + + + Cancel + å–æ¶ˆ + + + + All files (*) + + + + + SQLite database files (*.db *.sqlite *.sqlite3 *.db3) + + + + + Left + + + + + Right + + + + + Center + + + + + Justify + + + + + SQLite Database Files (*.db *.sqlite *.sqlite3 *.db3) + + + + + DB Browser for SQLite Project Files (*.sqbpro) + + + + + SQL Files (*.sql) + + + + + All Files (*) + + + + + Text Files (*.txt) + + + + + Comma-Separated Values Files (*.csv) + + + + + Tab-Separated Values Files (*.tsv) + + + + + Delimiter-Separated Values Files (*.dsv) + + + + + Concordance DAT files (*.dat) + + + + + JSON Files (*.json *.js) + + + + + XML Files (*.xml) + + + + + Binary Files (*.bin *.dat) + + + + + SVG Files (*.svg) + + + + + Hex Dump Files (*.dat *.bin) + + + + + Extensions (*.so *.dylib *.dll) + + + + + RemoteCommitsModel + + + Commit ID + + + + + Message + + + + + Date + + + + + Author + + + + + Size + + + + + Authored and committed by %1 + + + + + Authored by %1, committed by %2 + + + + + RemoteDatabase + + + Error opening local databases list. +%1 + + + + + Error creating local databases list. +%1 + + + + + RemoteDock + + + Remote + + + + + Identity + + + + + Push currently opened database to server + + + + + DBHub.io + + + + + <html><head/><body><p>In this pane, remote databases from dbhub.io website can be added to DB Browser for SQLite. First you need an identity:</p><ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Login to the dbhub.io website (use your GitHub credentials or whatever you want)</li><li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Click the button to &quot;Generate client certificate&quot; (that's your identity). That'll give you a certificate file (save it to your local disk).</li><li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Go to the Remote tab in DB Browser for SQLite Preferences. Click the button to add a new certificate to DB Browser for SQLite and choose the just downloaded certificate file.</li></ol><p>Now the Remote panel shows your identity and you can add remote databases.</p></body></html> + + + + + Local + + + + + Current Database + + + + + Clone + + + + + User + 用戶 + + + + Database + + + + + Branch + + + + + Commits + + + + + Commits for + + + + + <html><head/><body><p>You are currently using a built-in, read-only identity. For uploading your database, you need to configure and use your DBHub.io account.</p><p>No DBHub.io account yet? <a href="https://dbhub.io/"><span style=" text-decoration: underline; color:#007af4;">Create one now</span></a> and import your certificate <a href="#preferences"><span style=" text-decoration: underline; color:#007af4;">here</span></a> to share your databases.</p><p>For online help visit <a href="https://dbhub.io/about"><span style=" text-decoration: underline; color:#007af4;">here</span></a>.</p></body></html> + + + + + Back + + + + + Delete Database + + + + + Delete the local clone of this database + + + + + Open in Web Browser + + + + + Open the web page for the current database in your browser + + + + + Clone from Link + + + + + Use this to download a remote database for local editing using a URL as provided on the web page of the database. + + + + + Refresh + + + + + Reload all data and update the views + + + + + F5 + + + + + Clone Database + + + + + Open Database + + + + + Open the local copy of this database + + + + + Check out Commit + + + + + Download and open this specific commit + + + + + Check out Latest Commit + + + + + Check out the latest commit of the current branch + + + + + Save Revision to File + + + + + Saves the selected revision of the database to another file + + + + + Upload Database + + + + + Upload this database as a new commit + + + + + Select an identity to connect + + + + + Public + + + + + This downloads a database from a remote server for local editing. +Please enter the URL to clone from. You can generate this URL by +clicking the 'Clone Database in DB4S' button on the web page +of the database. + + + + + Invalid URL: The host name does not match the host name of the current identity. + + + + + Invalid URL: No branch name specified. + + + + + Invalid URL: No commit ID specified. + + + + + You have modified the local clone of the database. Fetching this commit overrides these local changes. +Are you sure you want to proceed? + + + + + The database has unsaved changes. Are you sure you want to push it before saving? + + + + + The database you are trying to delete is currently opened. Please close it before deleting. + + + + + This deletes the local version of this database with all the changes you have not committed yet. Are you sure you want to delete this database? + + + + + RemoteLocalFilesModel + + + Name + å稱 + + + + Branch + + + + + Last modified + + + + + Size + + + + + Commit + + + + + File + 檔案 + + + + RemoteModel + + + Name + å稱 + + + + Commit + + + + + Last modified + + + + + Size + + + + + Size: + + + + + Last Modified: + + + + + Licence: + + + + + Default Branch: + + + + + RemoteNetwork + + + Choose a location to save the file + + + + + Error opening remote file at %1. +%2 + + + + + Error: Invalid client certificate specified. + + + + + Please enter the passphrase for this client certificate in order to authenticate. + + + + + Cancel + å–æ¶ˆ + + + + Uploading remote database to +%1 + + + + + Downloading remote database from +%1 + + + + + + Error: The network is not accessible. + + + + + Error: Cannot open the file for sending. + + + + + RemotePushDialog + + + Push database + + + + + Database na&me to push to + + + + + Commit message + + + + + Database licence + + + + + Public + + + + + Branch + + + + + Force push + + + + + Username + + + + + Database will be public. Everyone has read access to it. + + + + + Database will be private. Only you have access to it. + + + + + Use with care. This can cause remote commits to be deleted. + + + + + RunSql + + + Execution aborted by user + + + + + , %1 rows affected + + + + + query executed successfully. Took %1ms%2 + + + + + executing query + + + + + SelectItemsPopup + + + A&vailable + + + + + Sele&cted + + + + + SqlExecutionArea + + + Form + 表單 + + + + Find previous match [Shift+F3] + + + + + Find previous match with wrapping + + + + + Shift+F3 + + + + + The found pattern must be a whole word + + + + + Whole Words + + + + + Text pattern to find considering the checks in this frame + + + + + Find in editor + + + + + The found pattern must match in letter case + + + + + Case Sensitive + + + + + Find next match [Enter, F3] + + + + + Find next match with wrapping + + + + + F3 + + + + + Interpret search pattern as a regular expression + + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + + + + + Regular Expression + + + + + + Close Find Bar + + + + + <html><head/><body><p>Results of the last executed statements.</p><p>You may want to collapse this panel and use the <span style=" font-style:italic;">SQL Log</span> dock with <span style=" font-style:italic;">User</span> selection instead.</p></body></html> + + + + + Results of the last executed statements + 最後執行語å¥çš„çµæžœ + + + + This field shows the results and status codes of the last executed statements. + 這個欄ä½é¡¯ç¤ºæœ€å¾ŒåŸ·è¡Œçš„語å¥çš„çµæžœå’Œç‹€æ…‹ç¢¼ã€‚ + + + + Couldn't read file: %1. + + + + + + Couldn't save file: %1. + + + + + Your changes will be lost when reloading it! + + + + + The file "%1" was modified by another program. Do you want to reload it?%2 + + + + + SqlTextEdit + + + Ctrl+/ + + + + + SqlUiLexer + + + (X) The abs(X) function returns the absolute value of the numeric argument X. + + + + + () The changes() function returns the number of database rows that were changed or inserted or deleted by the most recently completed INSERT, DELETE, or UPDATE statement. + + + + + (X1,X2,...) The char(X1,X2,...,XN) function returns a string composed of characters having the unicode code point values of integers X1 through XN, respectively. + + + + + (X,Y,...) The coalesce() function returns a copy of its first non-NULL argument, or NULL if all arguments are NULL + + + + + (X,Y) The glob(X,Y) function is equivalent to the expression "Y GLOB X". + + + + + (X,Y) The ifnull() function returns a copy of its first non-NULL argument, or NULL if both arguments are NULL. + + + + + (X,Y) The instr(X,Y) function finds the first occurrence of string Y within string X and returns the number of prior characters plus 1, or 0 if Y is nowhere found within X. + + + + + (X) The hex() function interprets its argument as a BLOB and returns a string which is the upper-case hexadecimal rendering of the content of that blob. + + + + + () The last_insert_rowid() function returns the ROWID of the last row insert from the database connection which invoked the function. + + + + + (X) For a string value X, the length(X) function returns the number of characters (not bytes) in X prior to the first NUL character. + + + + + (X,Y) The like() function is used to implement the "Y LIKE X" expression. + + + + + (X,Y,Z) The like() function is used to implement the "Y LIKE X ESCAPE Z" expression. + + + + + (X) The load_extension(X) function loads SQLite extensions out of the shared library file named X. +Use of this function must be authorized from Preferences. + + + + + (X,Y) The load_extension(X) function loads SQLite extensions out of the shared library file named X using the entry point Y. +Use of this function must be authorized from Preferences. + + + + + (X) The lower(X) function returns a copy of string X with all ASCII characters converted to lower case. + + + + + (X) ltrim(X) removes spaces from the left side of X. + + + + + (X,Y) The ltrim(X,Y) function returns a string formed by removing any and all characters that appear in Y from the left side of X. + + + + + (X,Y,...) The multi-argument max() function returns the argument with the maximum value, or return NULL if any argument is NULL. + + + + + (X,Y,...) The multi-argument min() function returns the argument with the minimum value. + + + + + (X,Y) The nullif(X,Y) function returns its first argument if the arguments are different and NULL if the arguments are the same. + + + + + (FORMAT,...) The printf(FORMAT,...) SQL function works like the sqlite3_mprintf() C-language function and the printf() function from the standard C library. + + + + + (X) The quote(X) function returns the text of an SQL literal which is the value of its argument suitable for inclusion into an SQL statement. + + + + + () The random() function returns a pseudo-random integer between -9223372036854775808 and +9223372036854775807. + + + + + (N) The randomblob(N) function return an N-byte blob containing pseudo-random bytes. + + + + + (X,Y,Z) The replace(X,Y,Z) function returns a string formed by substituting string Z for every occurrence of string Y in string X. + + + + + (X) The round(X) function returns a floating-point value X rounded to zero digits to the right of the decimal point. + + + + + (X,Y) The round(X,Y) function returns a floating-point value X rounded to Y digits to the right of the decimal point. + + + + + (X) rtrim(X) removes spaces from the right side of X. + + + + + (X,Y) The rtrim(X,Y) function returns a string formed by removing any and all characters that appear in Y from the right side of X. + + + + + (X) The soundex(X) function returns a string that is the soundex encoding of the string X. + + + + + (X,Y) substr(X,Y) returns all characters through the end of the string X beginning with the Y-th. + + + + + (X,Y,Z) The substr(X,Y,Z) function returns a substring of input string X that begins with the Y-th character and which is Z characters long. + + + + + () The total_changes() function returns the number of row changes caused by INSERT, UPDATE or DELETE statements since the current database connection was opened. + + + + + (X) trim(X) removes spaces from both ends of X. + + + + + (X,Y) The trim(X,Y) function returns a string formed by removing any and all characters that appear in Y from both ends of X. + + + + + (X) The typeof(X) function returns a string that indicates the datatype of the expression X. + + + + + (X) The unicode(X) function returns the numeric unicode code point corresponding to the first character of the string X. + + + + + (X) The upper(X) function returns a copy of input string X in which all lower-case ASCII characters are converted to their upper-case equivalent. + + + + + (N) The zeroblob(N) function returns a BLOB consisting of N bytes of 0x00. + + + + + + + + (timestring,modifier,modifier,...) + + + + + (format,timestring,modifier,modifier,...) + + + + + (X) The avg() function returns the average value of all non-NULL X within a group. + + + + + (X) The count(X) function returns a count of the number of times that X is not NULL in a group. + + + + + (X) The group_concat() function returns a string which is the concatenation of all non-NULL values of X. + + + + + (X,Y) The group_concat() function returns a string which is the concatenation of all non-NULL values of X. If parameter Y is present then it is used as the separator between instances of X. + + + + + (X) The max() aggregate function returns the maximum value of all values in the group. + + + + + (X) The min() aggregate function returns the minimum non-NULL value of all values in the group. + + + + + + (X) The sum() and total() aggregate functions return sum of all non-NULL values in the group. + + + + + () The number of the row within the current partition. Rows are numbered starting from 1 in the order defined by the ORDER BY clause in the window definition, or in arbitrary order otherwise. + + + + + () The row_number() of the first peer in each group - the rank of the current row with gaps. If there is no ORDER BY clause, then all rows are considered peers and this function always returns 1. + + + + + () The number of the current row's peer group within its partition - the rank of the current row without gaps. Partitions are numbered starting from 1 in the order defined by the ORDER BY clause in the window definition. If there is no ORDER BY clause, then all rows are considered peers and this function always returns 1. + + + + + () Despite the name, this function always returns a value between 0.0 and 1.0 equal to (rank - 1)/(partition-rows - 1), where rank is the value returned by built-in window function rank() and partition-rows is the total number of rows in the partition. If the partition contains only one row, this function returns 0.0. + + + + + () The cumulative distribution. Calculated as row-number/partition-rows, where row-number is the value returned by row_number() for the last peer in the group and partition-rows the number of rows in the partition. + + + + + (N) Argument N is handled as an integer. This function divides the partition into N groups as evenly as possible and assigns an integer between 1 and N to each group, in the order defined by the ORDER BY clause, or in arbitrary order otherwise. If necessary, larger groups occur first. This function returns the integer value assigned to the group that the current row is a part of. + + + + + (expr) Returns the result of evaluating expression expr against the previous row in the partition. Or, if there is no previous row (because the current row is the first), NULL. + + + + + (expr,offset) If the offset argument is provided, then it must be a non-negative integer. In this case the value returned is the result of evaluating expr against the row offset rows before the current row within the partition. If offset is 0, then expr is evaluated against the current row. If there is no row offset rows before the current row, NULL is returned. + + + + + + (expr,offset,default) If default is also provided, then it is returned instead of NULL if the row identified by offset does not exist. + + + + + (expr) Returns the result of evaluating expression expr against the next row in the partition. Or, if there is no next row (because the current row is the last), NULL. + + + + + (expr,offset) If the offset argument is provided, then it must be a non-negative integer. In this case the value returned is the result of evaluating expr against the row offset rows after the current row within the partition. If offset is 0, then expr is evaluated against the current row. If there is no row offset rows after the current row, NULL is returned. + + + + + (expr) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the first row in the window frame for each row. + + + + + (expr) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the last row in the window frame for each row. + + + + + (expr,N) This built-in window function calculates the window frame for each row in the same way as an aggregate window function. It returns the value of expr evaluated against the row N of the window frame. Rows are numbered within the window frame starting from 1 in the order defined by the ORDER BY clause if one is present, or in arbitrary order otherwise. If there is no Nth row in the partition, then NULL is returned. + + + + + SqliteTableModel + + + reading rows + + + + + loading... + + + + + References %1(%2) +Hold %3Shift and click to jump there + + + + + Error changing data: +%1 + 修改資料庫時出ç¾éŒ¯èª¤: +%1 + + + + retrieving list of columns + + + + + Fetching data... + + + + + + Cancel + å–æ¶ˆ + + + + TableBrowser + + + Browse Data + + + + + &Table: + + + + + Select a table to browse data + 鏿“‡ä¸€å€‹è³‡æ–™è¡¨ä»¥ç€è¦½è³‡æ–™ + + + + Use this list to select a table to be displayed in the database view + ä½¿ç”¨é€™å€‹æ¸…å–®é¸æ“‡ä¸€å€‹è¦é¡¯ç¤ºåœ¨è³‡æ–™åº«è¦–圖中的資料表 + + + + This is the database table view. You can do the following actions: + - Start writing for editing inline the value. + - Double-click any record to edit its contents in the cell editor window. + - Alt+Del for deleting the cell content to NULL. + - Ctrl+" for duplicating the current record. + - Ctrl+' for copying the value from the cell above. + - Standard selection and copy/paste operations. + + + + + Text pattern to find considering the checks in this frame + + + + + Find in table + + + + + Find previous match [Shift+F3] + + + + + Find previous match with wrapping + + + + + Shift+F3 + + + + + Find next match [Enter, F3] + + + + + Find next match with wrapping + + + + + F3 + + + + + The found pattern must match in letter case + + + + + Case Sensitive + + + + + The found pattern must be a whole word + + + + + Whole Cell + + + + + Interpret search pattern as a regular expression + + + + + <html><head/><body><p>When checked, the pattern to find is interpreted as a UNIX regular expression. See <a href="https://en.wikibooks.org/wiki/Regular_Expressions">Regular Expression in Wikibooks</a>.</p></body></html> + + + + + Regular Expression + + + + + + Close Find Bar + + + + + Text to replace with + + + + + Replace with + + + + + Replace next match + + + + + + Replace + + + + + Replace all matches + + + + + Replace all + + + + + <html><head/><body><p>Scroll to the beginning</p></body></html> + + + + + <html><head/><body><p>Clicking this button navigates to the beginning in the table view above.</p></body></html> + + + + + |< + + + + + Scroll one page upwards + + + + + <html><head/><body><p>Clicking this button navigates one page of records upwards in the table view above.</p></body></html> + + + + + < + < + + + + 0 - 0 of 0 + 0 - 0 / 0 + + + + Scroll one page downwards + + + + + <html><head/><body><p>Clicking this button navigates one page of records downwards in the table view above.</p></body></html> + + + + + > + > + + + + Scroll to the end + + + + + <html><head/><body><p>Clicking this button navigates up to the end in the table view above.</p></body></html> + + + + + >| + + + + + <html><head/><body><p>Click here to jump to the specified record</p></body></html> + <html><head/><body><p>點擊這裡跳到指定的記錄</p></body></html> + + + + <html><head/><body><p>This button is used to navigate to the record number specified in the Go to area.</p></body></html> + <html><head/><body><p>這個按鈕用於導航到在“轉到â€å€åŸŸä¸­æŒ‡å®šçš„記錄編號。</p></body></html> + + + + Go to: + 轉到: + + + + Enter record number to browse + 輸入è¦ç€è¦½çš„記錄編號 + + + + Type a record number in this area and click the Go to: button to display the record in the database view + 在這個å€åŸŸä¸­è¼¸å…¥ä¸€å€‹è¨˜éŒ„編號,並點擊“轉到:â€æŒ‰éˆ•以在資料庫視圖中顯示記錄 + + + + 1 + 1 + + + + Show rowid column + + + + + Toggle the visibility of the rowid column + + + + + Unlock view editing + + + + + This unlocks the current view for editing. However, you will need appropriate triggers for editing. + + + + + Edit display format + + + + + Edit the display format of the data in this column + + + + + + New Record + 新建記錄 + + + + + Insert a new record in the current table + 在目å‰è³‡æ–™è¡¨ä¸­æ’å…¥ä¸€æ¢æ–°è¨˜éŒ„ + + + + <html><head/><body><p>This button creates a new record in the database. Hold the mouse button to open a pop-up menu of different options:</p><ul><li><span style=" font-weight:600;">New Record</span>: insert a new record with default values in the database.</li><li><span style=" font-weight:600;">Insert Values...</span>: open a dialog for entering values before they are inserted in the database. This allows to enter values acomplishing the different constraints. This dialog is also open if the <span style=" font-weight:600;">New Record</span> option fails due to these constraints.</li></ul></body></html> + + + + + + Delete Record + 刪除記錄 + + + + Delete the current record + 刪除目å‰è¨˜éŒ„ + + + + + This button deletes the record or records currently selected in the table + + + + + + Insert new record using default values in browsed table + + + + + Insert Values... + + + + + + Open a dialog for inserting values in a new record + + + + + Export to &CSV + 匯出到 &CSV + + + + + Export the filtered data to CSV + + + + + This button exports the data of the browsed table as currently displayed (after filters, display formats and order column) as a CSV file. + + + + + Save as &view + 儲存為視圖(&V) + + + + + Save the current filter, sort column and display formats as a view + + + + + This button saves the current setting of the browsed table (filters, display formats and order column) as an SQL view that you can later browse or use in SQL statements. + + + + + Save Table As... + + + + + + Save the table as currently displayed + + + + + <html><head/><body><p>This popup menu provides the following options applying to the currently browsed and filtered table:</p><ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Export to CSV: this option exports the data of the browsed table as currently displayed (after filters, display formats and order column) to a CSV file.</li><li style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Save as view: this option saves the current setting of the browsed table (filters, display formats and order column) as an SQL view that you can later browse or use in SQL statements.</li></ul></body></html> + + + + + Hide column(s) + + + + + Hide selected column(s) + + + + + Show all columns + + + + + Show all columns that were hidden + + + + + + Set encoding + + + + + Change the encoding of the text in the table cells + + + + + Set encoding for all tables + + + + + Change the default encoding assumed for all tables in the database + + + + + Clear Filters + + + + + Clear all filters + + + + + + This button clears all the filters set in the header input fields for the currently browsed table. + + + + + Clear Sorting + + + + + Reset the order of rows to the default + + + + + + This button clears the sorting columns specified for the currently browsed table and returns to the default order. + + + + + Print + + + + + Print currently browsed table data + + + + + Print currently browsed table data. Print selection if more than one cell is selected. + + + + + Ctrl+P + + + + + Refresh + + + + + Refresh the data in the selected table + + + + + This button refreshes the data in the currently selected table. + 這個按鈕更新在目å‰é¸æ“‡çš„資料表中的資料。 + + + + F5 + + + + + Find in cells + + + + + Open the find tool bar which allows you to search for values in the table view below. + + + + + + Bold + ç²—é«” + + + + Ctrl+B + + + + + + Italic + 斜體 + + + + + Underline + 底線 + + + + Ctrl+U + + + + + + Align Right + + + + + + Align Left + + + + + + Center Horizontally + + + + + + Justify + + + + + + Edit Conditional Formats... + + + + + Edit conditional formats for the current column + + + + + Clear Format + + + + + Clear All Formats + + + + + + Clear all cell formatting from selected cells and all conditional formats from selected columns + + + + + + Font Color + + + + + + Background Color + + + + + Toggle Format Toolbar + + + + + Show/hide format toolbar + + + + + + This button shows or hides the formatting toolbar of the Data Browser + + + + + Select column + + + + + Ctrl+Space + + + + + Replace text in cells + + + + + Filter in any column + + + + + Ctrl+R + + + + + %n row(s) + + + + + + + , %n column(s) + + + + + + + . Sum: %1; Average: %2; Min: %3; Max: %4 + + + + + Conditional formats for "%1" + + + + + determining row count... + + + + + %1 - %2 of >= %3 + + + + + %1 - %2 of %3 + %1 - %2 / %3 + + + + Please enter a pseudo-primary key in order to enable editing on this view. This should be the name of a unique column in the view. + + + + + Delete Records + + + + + Duplicate records + + + + + Duplicate record + + + + + Ctrl+" + + + + + Adjust rows to contents + + + + + Error deleting record: +%1 + 刪除記錄時出ç¾éŒ¯èª¤: +%1 + + + + Please select a record first + è«‹é¦–å…ˆé¸æ“‡ä¸€æ¢è¨˜éŒ„ + + + + There is no filter set for this table. View will not be created. + + + + + Please choose a new encoding for all tables. + + + + + Please choose a new encoding for this table. + + + + + %1 +Leave the field empty for using the database encoding. + + + + + This encoding is either not valid or not supported. + + + + + %1 replacement(s) made. + + + + + VacuumDialog + + + Compact Database + 壓縮資料庫 + + + + Warning: Compacting the database will commit all of your changes. + + + + + Please select the databases to co&mpact: + + + + diff --git a/ConfigFiles/translations/translations.qrc b/ConfigFiles/translations/translations.qrc new file mode 100644 index 0000000..9dc8486 --- /dev/null +++ b/ConfigFiles/translations/translations.qrc @@ -0,0 +1,21 @@ + + + sqlb_ar_SA.qm + sqlb_cs.qm + sqlb_ru.qm + sqlb_de.qm + sqlb_fr.qm + sqlb_zh.qm + sqlb_zh_TW.qm + sqlb_pl.qm + sqlb_pt_BR.qm + sqlb_en_GB.qm + sqlb_es_ES.qm + sqlb_ko_KR.qm + sqlb_tr.qm + sqlb_uk_UA.qm + sqlb_it.qm + sqlb_ja.qm + sqlb_nl.qm + + diff --git a/README.md b/README.md index 201d536..a65c8d8 100644 --- a/README.md +++ b/README.md @@ -6,25 +6,25 @@ - cmake: cmake相关的脚本 - doc: ç”Ÿæˆæ–‡æ¡£éœ€è¦çš„æ¨¡æ¿åŠé…置文件 - extlib: 第三方ä¾èµ–库(è§ä¸‹æ–‡extlibèŽ·å–æ–¹å¼ï¼‰ -- src: FastCAEæºç  +- src: LAMPCAEæºç  - test: 包å«å•元测试代ç ï¼ˆå¾…æ•´ç†ï¼‰ ## 构建编译 -### FastCAE相关的cmake构建选项说明 -- `FASTCAE_AUTO_DOWNLOAD`:如果æºç ç›®å½•ä¸å­˜åœ¨extlib目录时是å¦ä¼šè‡ªåŠ¨ä»Žgitee克隆ä¾èµ–包。 -- `FASTCAE_DOXYGEN_DOC`:是å¦éœ€è¦æž„建目标Doxygenï¼ˆéœ€è¦æœ¬åœ°å®‰è£…Doxygen软件) -- `FASTCAE_ENABLE_DEV`:是å¦åœ¨æž„å»ºå®Œæˆæ—¶è‡ªåŠ¨æ‹·è´ä¾èµ–文件到调试目录。(å¼€å¯è¯¥é€‰é¡¹ä¼šåœ¨æ¯æ¬¡ç¼–译完拷è´ç¬¬ä¸‰æ–¹ä¾èµ–库文件到构建目录,会增加构建时间) -- `FASTCAE_ENABLE_MPI`:是å¦å¼€å¯MPI支æŒï¼ˆç›®å‰æ— æ•ˆï¼‰ã€‚ -- `FASTCAE_ENABLE_OPENMP`:是å¦å¼€å¯OpenMP。 -- `FASTCAE_ENABLE_TEST`ï¼šæ˜¯å¦æž„建å•元测试模å—ï¼ˆç›®å‰æ— æ•ˆï¼‰ã€‚ -- `FASTCAE_INSTALLATION_PACKAGE`ï¼šæ˜¯å¦æž„建安装包制作PACKAGE。 +### LAMPCAE相关的cmake构建选项说明 +- `LAMPCAE_AUTO_DOWNLOAD`:如果æºç ç›®å½•ä¸å­˜åœ¨extlib目录时是å¦ä¼šè‡ªåŠ¨ä»Žgitee克隆ä¾èµ–包。 +- `LAMPCAE_DOXYGEN_DOC`:是å¦éœ€è¦æž„建目标Doxygenï¼ˆéœ€è¦æœ¬åœ°å®‰è£…Doxygen软件) +- `LAMPCAE_ENABLE_DEV`:是å¦åœ¨æž„å»ºå®Œæˆæ—¶è‡ªåŠ¨æ‹·è´ä¾èµ–文件到调试目录。(å¼€å¯è¯¥é€‰é¡¹ä¼šåœ¨æ¯æ¬¡ç¼–译完拷è´ç¬¬ä¸‰æ–¹ä¾èµ–库文件到构建目录,会增加构建时间) +- `LAMPCAE_ENABLE_MPI`:是å¦å¼€å¯MPI支æŒï¼ˆç›®å‰æ— æ•ˆï¼‰ã€‚ +- `LAMPCAE_ENABLE_OPENMP`:是å¦å¼€å¯OpenMP。 +- `LAMPCAE_ENABLE_TEST`ï¼šæ˜¯å¦æž„建å•元测试模å—ï¼ˆç›®å‰æ— æ•ˆï¼‰ã€‚ +- `LAMPCAE_INSTALLATION_PACKAGE`ï¼šæ˜¯å¦æž„建安装包制作PACKAGE。 ### cmake预定义目标说明: - ALL_BUILDï¼šç”Ÿæˆæ‰€æœ‰é¡¹ç›®ã€‚ -- INSTALL:安装FastCAE到CMAKE_INSTALL_PREFIX定义的目录。 -- PACKAGE或者package: 在Visual Studio中该目标为大写,在其它构建系统中该目标为å°å†™ï¼Œç”¨äºŽå°†FastCAE打包æˆå®‰è£…包(exeã€debã€rpm)。 -- DOXYGEN: 生æˆFastCAEçš„Doxygenæ ¼å¼æ–‡æ¡£ï¼ˆhtml)。 +- INSTALL:安装LAMPCAE到CMAKE_INSTALL_PREFIX定义的目录。 +- PACKAGE或者package: 在Visual Studio中该目标为大写,在其它构建系统中该目标为å°å†™ï¼Œç”¨äºŽå°†LAMPCAE打包æˆå®‰è£…包(exeã€debã€rpm)。 +- DOXYGEN: 生æˆLAMPCAEçš„Doxygenæ ¼å¼æ–‡æ¡£ï¼ˆhtml)。 ### 编译视频教程 @@ -73,13 +73,13 @@ ### Linux系统 ```bash - git clone https://gitee.com/DISOGitee/FastCAELinuxExtlib.git extlib + git clone https://gitee.com/DISOGitee/LAMPCAELinuxExtlib.git extlib ``` ### windows系统 ```bash - git clone https://gitee.com/DISOGitee/FastCAEWinExtlib.git extlib + git clone https://gitee.com/DISOGitee/LAMPCAEWinExtlib.git extlib ``` @@ -156,8 +156,8 @@ cmake --build build --target package ## 相关链接 -- 帮助文档:http://www.fastcae.com/index.php?mod=document -- 社区论å›ï¼šhttp://disc.fastcae.com/ +- 帮助文档:http://www.LAMPCAE.com/index.php?mod=document +- 社区论å›ï¼šhttp://disc.LAMPCAE.com/ ## 感谢开æºè´¡çŒ®è€… @@ -172,4 +172,4 @@ cmake --build build --target package 技术交æµQQ群:671925863 -官方微信å·ï¼šFastCAE-DISO +官方微信å·ï¼šLAMPCAE-DISO diff --git a/cmake/CMakePack.cmake b/cmake/CMakePack.cmake index c00b5e5..ed628cf 100644 --- a/cmake/CMakePack.cmake +++ b/cmake/CMakePack.cmake @@ -11,7 +11,7 @@ set(CPACK_RESOURCE_FILE_LICENSE "${PROJECT_SOURCE_DIR}/LICENSE") # site set(CPACK_SITE "${PROJECT_HOMEPAGE_URL}") # 从å‘布包中安装时,文件将放在/opt/${PROJECT_NAME}目录下 -#[[if(FASTCAE_WIN) +#[[if(LAMPCAE_WIN) set(CPACK_PACKAGING_INSTALL_PREFIX "C:\\Program Files\\${PROJECT_NAME}") else() set(CPACK_PACKAGING_INSTALL_PREFIX "/opt/${PROJECT_NAME}") @@ -73,15 +73,15 @@ if(WIN32 OR MINGW) #set(CPACK_NSIS_MUI_HEADERIMAGE "${CMAKE_SOURCE_DIR}/src/qrc/QUI/HEADERIMAGE.bmp") set(CPACK_NSIS_MODIFY_PATH ON) set(CPACK_NSIS_MUI_FINISHPAGE_RUN ON) - set(CPACK_NSIS_HELP_LINK "http://www.fastcae.com/index.php?mod=document") - set(CPACK_NSIS_URL_INFO_ABOUT "http://www.fastcae.com/index.php?mod=product") - set(CPACK_NSIS_MENU_LINKS "http://www.fastcae.com/" "FastCAE网站") + set(CPACK_NSIS_HELP_LINK "http://www.LAMPCAE.com/index.php?mod=document") + set(CPACK_NSIS_URL_INFO_ABOUT "http://www.LAMPCAE.com/index.php?mod=product") + set(CPACK_NSIS_MENU_LINKS "http://www.LAMPCAE.com/" "LAMPCAE网站") set(CPACK_NSIS_ENABLE_UNINSTALL_BEFORE_INSTALL ON) elseif(WIX_EXECUTABLE) list(APPEND CPACK_GENERATOR "WIX") set(CPACK_WIX_PROPERTY_ARPCOMMENTS ${CPACK_PACKAGE_DESCRIPTION_SUMMARY}) - set(CPACK_WIX_PROPERTY_ARPURLINFOABOUT "http://www.fastcae.com/index.php?mod=product") - set(CPACK_WIX_PROPERTY_ARPHELPLINK "http://www.fastcae.com/") + set(CPACK_WIX_PROPERTY_ARPURLINFOABOUT "http://www.LAMPCAE.com/index.php?mod=product") + set(CPACK_WIX_PROPERTY_ARPHELPLINK "http://www.LAMPCAE.com/") endif () endif() diff --git a/cmake/FindCGNS.cmake b/cmake/FindCGNS.cmake index 0f6a74c..c5bb959 100644 --- a/cmake/FindCGNS.cmake +++ b/cmake/FindCGNS.cmake @@ -1,7 +1,7 @@ # FindCGNS # -------- # -# Find the CGNS libraries(Only for CGNS provided by FastCAE) +# Find the CGNS libraries(Only for CGNS provided by LAMPCAE) # # Result Variables # ^^^^^^^^^^^^^^^^ @@ -28,18 +28,18 @@ # # 防止é‡å¤å¼•å…¥ -if(FASTCAE_CGNS_ALREADY_INCLUDED) +if(LAMPCAE_CGNS_ALREADY_INCLUDED) return() endif() -set(FASTCAE_CGNS_ALREADY_INCLUDED 1) +set(LAMPCAE_CGNS_ALREADY_INCLUDED 1) # find_path æœç´¢åŒ…嫿Ÿä¸ªæ–‡ä»¶çš„路径 # 如果在æŸä¸ªè·¯å¾„下å‘现了该文件,该结果会被存储到该å˜é‡ä¸­ï¼›å¦‚果没有找到,存储的结果将会是-NOTFOUND find_path(CGNS_DIRS NAMES include/cgnslib.h - PATHS - ${CMAKE_SOURCE_DIR}/extlib/CGNS + PATHS + D:/vcpkg/installed/x64-windows NO_SYSTEM_ENVIRONMENT_PATH NO_CMAKE_SYSTEM_PATH ) @@ -64,20 +64,20 @@ find_path(CGNS_LIBRARY_DIRS ${CGNS_DIRS}/lib ) -set(CGNS_LIBRARIES FASTCAE::CGNS) +set(CGNS_LIBRARIES LAMPCAE::CGNS) -add_library(FASTCAE::CGNS SHARED IMPORTED) -set_property(TARGET FASTCAE::CGNS PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${CGNS_INCLUDE_DIRS}) -set_property(TARGET FASTCAE::CGNS APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) -set_property(TARGET FASTCAE::CGNS PROPERTY INTERFACE_LINK_LIBRARIES FASTCAE::HDF5) +add_library(LAMPCAE::CGNS SHARED IMPORTED) +set_property(TARGET LAMPCAE::CGNS PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${CGNS_INCLUDE_DIRS}) +set_property(TARGET LAMPCAE::CGNS APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) +set_property(TARGET LAMPCAE::CGNS PROPERTY INTERFACE_LINK_LIBRARIES LAMPCAE::HDF5) if(CMAKE_SYSTEM_NAME STREQUAL "Linux") - set_target_properties(FASTCAE::CGNS PROPERTIES + set_target_properties(LAMPCAE::CGNS PROPERTIES IMPORTED_LOCATION_RELEASE "${CGNS_LIBRARY_DIRS}/libcgns.so.${CGNS_VERSION_MAJOR}.${CGNS_VERSION_MINOR}" IMPORTED_SONAME_RELEASE "libcgns.so" ) elseif(CMAKE_SYSTEM_NAME STREQUAL "Windows") - set_target_properties(FASTCAE::CGNS PROPERTIES + set_target_properties(LAMPCAE::CGNS PROPERTIES IMPORTED_IMPLIB_RELEASE "${CGNS_LIBRARY_DIRS}/cgnsdll.lib" IMPORTED_LOCATION_RELEASE "${CGNS_DIRS}/bin/cgnsdll.dll" ) diff --git a/cmake/FindGmsh.cmake b/cmake/FindGmsh.cmake index 681e7e1..b1dc677 100644 --- a/cmake/FindGmsh.cmake +++ b/cmake/FindGmsh.cmake @@ -1,7 +1,7 @@ # FindGmsh # -------- # -# Find the Gmsh exe (Only for Gmsh provided by FastCAE) +# Find the Gmsh exe (Only for Gmsh provided by LAMPCAE) # # Result Variables # ^^^^^^^^^^^^^^^^ diff --git a/cmake/FindHDF5.cmake b/cmake/FindHDF5.cmake index 4816b80..a4fbc3c 100644 --- a/cmake/FindHDF5.cmake +++ b/cmake/FindHDF5.cmake @@ -1,7 +1,7 @@ # FindHDF5 # -------- # -# Find the HDF5 libraries(Only for HDF5 provided by FastCAE) +# Find the HDF5 libraries(Only for HDF5 provided by LAMPCAE) # # Result Variables # ^^^^^^^^^^^^^^^^ @@ -28,10 +28,10 @@ # # 防止é‡å¤å¼•å…¥ -if(FASTCAE_HDF5_ALREADY_INCLUDED) +if(LAMPCAE_HDF5_ALREADY_INCLUDED) return() endif() -set(FASTCAE_HDF5_ALREADY_INCLUDED 1) +set(LAMPCAE_HDF5_ALREADY_INCLUDED 1) # find_path æœç´¢åŒ…嫿Ÿä¸ªæ–‡ä»¶çš„路径 # 如果在æŸä¸ªè·¯å¾„下å‘现了该文件,该结果会被存储到该å˜é‡ä¸­ï¼›å¦‚果没有找到,存储的结果将会是-NOTFOUND @@ -64,77 +64,77 @@ find_path(HDF5_LIBRARY_DIRS ${HDF5_DIRS}/lib ) -set(HDF5_LIBRARIES FASTCAE::HDF5;FASTCAE::HDF5CPP;FASTCAE::HDF5HL;FASTCAE::HDF5HLCPP;FASTCAE::HDF5TOOLS) +set(HDF5_LIBRARIES LAMPCAE::HDF5;LAMPCAE::HDF5CPP;LAMPCAE::HDF5HL;LAMPCAE::HDF5HLCPP;LAMPCAE::HDF5TOOLS) -add_library(FASTCAE::HDF5 SHARED IMPORTED) -add_library(FASTCAE::HDF5CPP SHARED IMPORTED) -add_library(FASTCAE::HDF5HL SHARED IMPORTED) -add_library(FASTCAE::HDF5HLCPP SHARED IMPORTED) -add_library(FASTCAE::HDF5TOOLS SHARED IMPORTED) +add_library(LAMPCAE::HDF5 SHARED IMPORTED) +add_library(LAMPCAE::HDF5CPP SHARED IMPORTED) +add_library(LAMPCAE::HDF5HL SHARED IMPORTED) +add_library(LAMPCAE::HDF5HLCPP SHARED IMPORTED) +add_library(LAMPCAE::HDF5TOOLS SHARED IMPORTED) -set_property(TARGET FASTCAE::HDF5 PROPERTY INTERFACE_COMPILE_DEFINITIONS "H5_BUILT_AS_DYNAMIC_LIB") -set_property(TARGET FASTCAE::HDF5 PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${HDF5_INCLUDE_DIRS}) -set_property(TARGET FASTCAE::HDF5 APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) +set_property(TARGET LAMPCAE::HDF5 PROPERTY INTERFACE_COMPILE_DEFINITIONS "H5_BUILT_AS_DYNAMIC_LIB") +set_property(TARGET LAMPCAE::HDF5 PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${HDF5_INCLUDE_DIRS}) +set_property(TARGET LAMPCAE::HDF5 APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) -set_property(TARGET FASTCAE::HDF5CPP PROPERTY INTERFACE_COMPILE_DEFINITIONS "H5_BUILT_AS_DYNAMIC_LIB") -set_property(TARGET FASTCAE::HDF5CPP PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${HDF5_INCLUDE_DIRS}) -set_property(TARGET FASTCAE::HDF5CPP APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) -set_property(TARGET FASTCAE::HDF5CPP PROPERTY INTERFACE_LINK_LIBRARIES FASTCAE::HDF5) +set_property(TARGET LAMPCAE::HDF5CPP PROPERTY INTERFACE_COMPILE_DEFINITIONS "H5_BUILT_AS_DYNAMIC_LIB") +set_property(TARGET LAMPCAE::HDF5CPP PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${HDF5_INCLUDE_DIRS}) +set_property(TARGET LAMPCAE::HDF5CPP APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) +set_property(TARGET LAMPCAE::HDF5CPP PROPERTY INTERFACE_LINK_LIBRARIES LAMPCAE::HDF5) -set_property(TARGET FASTCAE::HDF5HL PROPERTY INTERFACE_COMPILE_DEFINITIONS "H5_BUILT_AS_DYNAMIC_LIB") -set_property(TARGET FASTCAE::HDF5HL PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${HDF5_INCLUDE_DIRS}) -set_property(TARGET FASTCAE::HDF5HL APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) -set_property(TARGET FASTCAE::HDF5HL PROPERTY INTERFACE_LINK_LIBRARIES FASTCAE::HDF5) +set_property(TARGET LAMPCAE::HDF5HL PROPERTY INTERFACE_COMPILE_DEFINITIONS "H5_BUILT_AS_DYNAMIC_LIB") +set_property(TARGET LAMPCAE::HDF5HL PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${HDF5_INCLUDE_DIRS}) +set_property(TARGET LAMPCAE::HDF5HL APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) +set_property(TARGET LAMPCAE::HDF5HL PROPERTY INTERFACE_LINK_LIBRARIES LAMPCAE::HDF5) -set_property(TARGET FASTCAE::HDF5HLCPP PROPERTY INTERFACE_COMPILE_DEFINITIONS "H5_BUILT_AS_DYNAMIC_LIB") -set_property(TARGET FASTCAE::HDF5HLCPP PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${HDF5_INCLUDE_DIRS}) -set_property(TARGET FASTCAE::HDF5HLCPP APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) -set_property(TARGET FASTCAE::HDF5HLCPP PROPERTY INTERFACE_LINK_LIBRARIES FASTCAE::HDF5HL) +set_property(TARGET LAMPCAE::HDF5HLCPP PROPERTY INTERFACE_COMPILE_DEFINITIONS "H5_BUILT_AS_DYNAMIC_LIB") +set_property(TARGET LAMPCAE::HDF5HLCPP PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${HDF5_INCLUDE_DIRS}) +set_property(TARGET LAMPCAE::HDF5HLCPP APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) +set_property(TARGET LAMPCAE::HDF5HLCPP PROPERTY INTERFACE_LINK_LIBRARIES LAMPCAE::HDF5HL) -set_property(TARGET FASTCAE::HDF5TOOLS PROPERTY INTERFACE_COMPILE_DEFINITIONS "H5_BUILT_AS_DYNAMIC_LIB") -set_property(TARGET FASTCAE::HDF5TOOLS PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${HDF5_INCLUDE_DIRS}) -set_property(TARGET FASTCAE::HDF5TOOLS APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) -set_property(TARGET FASTCAE::HDF5TOOLS PROPERTY INTERFACE_LINK_LIBRARIES FASTCAE::HDF5) +set_property(TARGET LAMPCAE::HDF5TOOLS PROPERTY INTERFACE_COMPILE_DEFINITIONS "H5_BUILT_AS_DYNAMIC_LIB") +set_property(TARGET LAMPCAE::HDF5TOOLS PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${HDF5_INCLUDE_DIRS}) +set_property(TARGET LAMPCAE::HDF5TOOLS APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) +set_property(TARGET LAMPCAE::HDF5TOOLS PROPERTY INTERFACE_LINK_LIBRARIES LAMPCAE::HDF5) if(CMAKE_SYSTEM_NAME STREQUAL "Linux") - set_target_properties(FASTCAE::HDF5 PROPERTIES + set_target_properties(LAMPCAE::HDF5 PROPERTIES IMPORTED_LOCATION_RELEASE "${HDF5_LIBRARY_DIRS}/libhdf5.so.300.1.0" IMPORTED_SONAME_RELEASE "libhdf5.so.300" ) - set_target_properties(FASTCAE::HDF5CPP PROPERTIES + set_target_properties(LAMPCAE::HDF5CPP PROPERTIES IMPORTED_LOCATION_RELEASE "${HDF5_LIBRARY_DIRS}/libhdf5_cpp.so.300.0.1" IMPORTED_SONAME_RELEASE "libhdf5_cpp.so.300" ) - set_target_properties(FASTCAE::HDF5HL PROPERTIES + set_target_properties(LAMPCAE::HDF5HL PROPERTIES IMPORTED_LOCATION_RELEASE "${HDF5_LIBRARY_DIRS}/libhdf5_hl.so.300.0.1" IMPORTED_SONAME_RELEASE "libhdf5_hl.so.300" ) - set_target_properties(FASTCAE::HDF5HLCPP PROPERTIES + set_target_properties(LAMPCAE::HDF5HLCPP PROPERTIES IMPORTED_LOCATION_RELEASE "${HDF5_LIBRARY_DIRS}/libhdf5_hl_cpp.so.300.0.1" IMPORTED_SONAME_RELEASE "libhdf5_hl_cpp.so.300" ) - set_target_properties(FASTCAE::HDF5TOOLS PROPERTIES + set_target_properties(LAMPCAE::HDF5TOOLS PROPERTIES IMPORTED_LOCATION_RELEASE "${HDF5_LIBRARY_DIRS}/libhdf5_tools.so.300.0.1" IMPORTED_SONAME_RELEASE "libhdf5_tools.so.300" ) elseif(CMAKE_SYSTEM_NAME STREQUAL "Windows") - set_target_properties(FASTCAE::HDF5 PROPERTIES + set_target_properties(LAMPCAE::HDF5 PROPERTIES IMPORTED_IMPLIB_RELEASE "${HDF5_LIBRARY_DIRS}/hdf5.lib" IMPORTED_LOCATION_RELEASE "${HDF5_DIRS}/bin/hdf5.dll" ) - set_target_properties(FASTCAE::HDF5CPP PROPERTIES + set_target_properties(LAMPCAE::HDF5CPP PROPERTIES IMPORTED_IMPLIB_RELEASE "${HDF5_LIBRARY_DIRS}/hdf5_cpp.lib" IMPORTED_LOCATION_RELEASE "${HDF5_DIRS}/bin/hdf5_cpp.dll" ) - set_target_properties(FASTCAE::HDF5HL PROPERTIES + set_target_properties(LAMPCAE::HDF5HL PROPERTIES IMPORTED_IMPLIB_RELEASE "${HDF5_LIBRARY_DIRS}/hdf5_hl.lib" IMPORTED_LOCATION_RELEASE "${HDF5_DIRS}/bin/hdf5_hl.dll" ) - set_target_properties(FASTCAE::HDF5HLCPP PROPERTIES + set_target_properties(LAMPCAE::HDF5HLCPP PROPERTIES IMPORTED_IMPLIB_RELEASE "${HDF5_LIBRARY_DIRS}/hdf5_hl_cpp.lib" IMPORTED_LOCATION_RELEASE "${HDF5_DIRS}/bin/hdf5_hl_cpp.dll" ) - set_target_properties(FASTCAE::HDF5TOOLS PROPERTIES + set_target_properties(LAMPCAE::HDF5TOOLS PROPERTIES IMPORTED_IMPLIB_RELEASE "${HDF5_LIBRARY_DIRS}/hdf5_tools.lib" IMPORTED_LOCATION_RELEASE "${HDF5_DIRS}/bin/hdf5_tools.dll" ) diff --git a/cmake/FindOpenCASCADE.cmake b/cmake/FindOpenCASCADE.cmake index df6ec20..177ccaf 100644 --- a/cmake/FindOpenCASCADE.cmake +++ b/cmake/FindOpenCASCADE.cmake @@ -1,7 +1,7 @@ # FindOpenCASCADE # -------- # -# Find the OpenCASCADE libraries(Only for OpenCASCADE provided by FastCAE) +# Find the OpenCASCADE libraries(Only for OpenCASCADE provided by LAMPCAE) # # Result Variables # ^^^^^^^^^^^^^^^^ @@ -30,12 +30,12 @@ # # 防止é‡å¤å¼•å…¥ -if(FASTCAE_OpenCASCADE_ALREADY_INCLUDED) +if(LAMPCAE_OpenCASCADE_ALREADY_INCLUDED) return() endif() -set(FASTCAE_OpenCASCADE_ALREADY_INCLUDED 1) +set(LAMPCAE_OpenCASCADE_ALREADY_INCLUDED 1) -set(OpenCASCADE_DIRS "${CMAKE_SOURCE_DIR}/extlib/OpenCASCADE") +set(OpenCASCADE_DIRS "C:/OCCT") set(OpenCASCADE_VERSION_MAJOR 7) set(OpenCASCADE_VERSION_MINOR 6) @@ -45,6 +45,9 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Windows") set(OpenCASCADE_INCLUDE_DIRS "${OpenCASCADE_DIRS}/inc") set(OpenCASCADE_LIBRARY_DIRS "${OpenCASCADE_DIRS}/win64/vc14/lib") set(OpenCASCADE_BINARY_DIRS "${OpenCASCADE_DIRS}/win64/vc14/bin") +# set(OpenCASCADE_INCLUDE_DIRS "${OpenCASCADE_DIRS}/include/opencascade") +# set(OpenCASCADE_LIBRARY_DIRS "${OpenCASCADE_DIRS}/lib") +# set(OpenCASCADE_BINARY_DIRS "${OpenCASCADE_DIRS}/bin") elseif(CMAKE_SYSTEM_NAME STREQUAL "Linux") set(OpenCASCADE_INCLUDE_DIRS "${OpenCASCADE_DIRS}/include/opencascade") set(OpenCASCADE_LIBRARY_DIRS "${OpenCASCADE_DIRS}/lib") @@ -98,10 +101,10 @@ elseif(CMAKE_SYSTEM_NAME STREQUAL "Windows") set_property(TARGET OpenCASCADE::Tcl86 APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG) set_property(TARGET OpenCASCADE::Tk86 APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG) set_target_properties(OpenCASCADE::Freetype PROPERTIES - IMPORTED_IMPLIB_RELEASE "${OpenCASCADE_LIBRARY_DIRS}/freetype.lib" - IMPORTED_LOCATION_RELEASE "${OpenCASCADE_BINARY_DIRS}/freetype.dll" - IMPORTED_IMPLIB_DEBUG "${OpenCASCADE_LIBRARY_DIRS}d/freetype.lib" - IMPORTED_LOCATION_DEBUG "${OpenCASCADE_BINARY_DIRS}d/freetype.dll" + IMPORTED_IMPLIB_RELEASE "D:/vcpkg/installed/x64-windows/lib/freetype.lib" + IMPORTED_LOCATION_RELEASE "D:/vcpkg/installed/x64-windows/bin/freetype.dll" + IMPORTED_IMPLIB_DEBUG "D:/vcpkg/installed/x64-windows/debug/lib/freetype.lib" + IMPORTED_LOCATION_DEBUG "D:/vcpkg/installed/x64-windows/debug/bin/freetype.dll" ) set_target_properties(OpenCASCADE::Tcl86 PROPERTIES IMPORTED_IMPLIB_RELEASE "${OpenCASCADE_LIBRARY_DIRS}/tcl86.lib" diff --git a/cmake/FindPython.cmake b/cmake/FindPython.cmake index ad4fbdc..7f5f5a9 100644 --- a/cmake/FindPython.cmake +++ b/cmake/FindPython.cmake @@ -1,7 +1,7 @@ # FindPython # -------- # -# Find the Python libraries(Only for Python provided by FastCAE) +# Find the Python libraries(Only for Python provided by LAMPCAE) # # Result Variables # ^^^^^^^^^^^^^^^^ @@ -30,10 +30,10 @@ # # 防止é‡å¤å¼•å…¥ -if(FASTCAE_Python_ALREADY_INCLUDED) +if(LAMPCAE_Python_ALREADY_INCLUDED) return() endif() -set(FASTCAE_Python_ALREADY_INCLUDED 1) +set(LAMPCAE_Python_ALREADY_INCLUDED 1) set(Python_VERSION_MAJOR 3) set(Python_VERSION_MINOR 7) @@ -108,28 +108,28 @@ find_path(Python_LIBRARY_DIRS ${Python_DIRS}/libs ${Python_DIRS}/lib ) -set(Python_LIBRARIES FASTCAE::PYTHON) +set(Python_LIBRARIES LAMPCAE::PYTHON) -add_library(FASTCAE::PYTHON SHARED IMPORTED) +add_library(LAMPCAE::PYTHON SHARED IMPORTED) -set_property(TARGET FASTCAE::PYTHON PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${Python_INCLUDE_DIRS}) -set_property(TARGET FASTCAE::PYTHON APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) +set_property(TARGET LAMPCAE::PYTHON PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${Python_INCLUDE_DIRS}) +set_property(TARGET LAMPCAE::PYTHON APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) if(CMAKE_SYSTEM_NAME STREQUAL "Linux") - add_library(FASTCAE::FFI SHARED IMPORTED) - set_property(TARGET FASTCAE::FFI APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) - set_target_properties(FASTCAE::FFI PROPERTIES + add_library(LAMPCAE::FFI SHARED IMPORTED) + set_property(TARGET LAMPCAE::FFI APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) + set_target_properties(LAMPCAE::FFI PROPERTIES IMPORTED_LOCATION_RELEASE "${Python_LIBRARY_DIRS}/libffi.so.8.1.0" IMPORTED_SONAME_RELEASE "libffi.so.8" ) - set_target_properties(FASTCAE::PYTHON PROPERTIES + set_target_properties(LAMPCAE::PYTHON PROPERTIES IMPORTED_LOCATION_RELEASE "${Python_LIBRARY_DIRS}/libpython${Python_VERSION_MAJOR}.${Python_VERSION_MINOR}m.so.1.0" IMPORTED_SONAME_RELEASE "libpython${Python_VERSION_MAJOR}.${Python_VERSION_MINOR}m.so" ) elseif(CMAKE_SYSTEM_NAME STREQUAL "Windows") - set_target_properties(FASTCAE::PYTHON PROPERTIES + set_target_properties(LAMPCAE::PYTHON PROPERTIES IMPORTED_IMPLIB_RELEASE "${Python_LIBRARY_DIRS}/python${Python_VERSION_MAJOR}${Python_VERSION_MINOR}.lib" IMPORTED_LOCATION_RELEASE "${Python_DIRS}/python${Python_VERSION_MAJOR}${Python_VERSION_MINOR}.dll" ) diff --git a/cmake/FindQuaZIP.cmake b/cmake/FindQuaZIP.cmake index 8fd4d99..4f86965 100644 --- a/cmake/FindQuaZIP.cmake +++ b/cmake/FindQuaZIP.cmake @@ -1,7 +1,7 @@ # FindQuaZIP # -------- # -# Find the QuaZIP libraries(Only for QuaZIP provided by FastCAE) +# Find the QuaZIP libraries(Only for QuaZIP provided by LAMPCAE) # # Result Variables # ^^^^^^^^^^^^^^^^ @@ -30,10 +30,10 @@ # # 防止é‡å¤å¼•å…¥ -if(FASTCAE_QuaZIP_ALREADY_INCLUDED) +if(LAMPCAE_QuaZIP_ALREADY_INCLUDED) return() endif() -set(FASTCAE_QuaZIP_ALREADY_INCLUDED 1) +set(LAMPCAE_QuaZIP_ALREADY_INCLUDED 1) # find_path æœç´¢åŒ…嫿Ÿä¸ªæ–‡ä»¶çš„路径 # 如果在æŸä¸ªè·¯å¾„下å‘现了该文件,该结果会被存储到该å˜é‡ä¸­ï¼›å¦‚果没有找到,存储的结果将会是-NOTFOUND @@ -73,19 +73,19 @@ find_path(QuaZIP_BINARY_DIRS ${QuaZIP_DIRS}/lib ) -set(QuaZIP_LIBRARIES FASTCAE::QUAZIP) +set(QuaZIP_LIBRARIES LAMPCAE::QUAZIP) -add_library(FASTCAE::QUAZIP SHARED IMPORTED) -set_property(TARGET FASTCAE::QUAZIP PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${QuaZIP_INCLUDE_DIRS}) -set_property(TARGET FASTCAE::QUAZIP APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) +add_library(LAMPCAE::QUAZIP SHARED IMPORTED) +set_property(TARGET LAMPCAE::QUAZIP PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${QuaZIP_INCLUDE_DIRS}) +set_property(TARGET LAMPCAE::QUAZIP APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) if(CMAKE_SYSTEM_NAME STREQUAL "Linux") - set_target_properties(FASTCAE::QUAZIP PROPERTIES + set_target_properties(LAMPCAE::QUAZIP PROPERTIES IMPORTED_LOCATION_RELEASE "${QuaZIP_LIBRARY_DIRS}/libquazip5.so.1.0.0" IMPORTED_SONAME_RELEASE "libquazip5.so.1" ) elseif(CMAKE_SYSTEM_NAME STREQUAL "Windows") - set_property(TARGET FASTCAE::QUAZIP APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG) - set_target_properties(FASTCAE::QUAZIP PROPERTIES + set_property(TARGET LAMPCAE::QUAZIP APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG) + set_target_properties(LAMPCAE::QUAZIP PROPERTIES IMPORTED_IMPLIB_RELEASE "${QuaZIP_LIBRARY_DIRS}/quazip5.lib" IMPORTED_LOCATION_RELEASE "${QuaZIP_BINARY_DIRS}/quazip5.dll" IMPORTED_IMPLIB_DEBUG "${QuaZIP_LIBRARY_DIRS}/quazip5d.lib" diff --git a/cmake/FindQwt.cmake b/cmake/FindQwt.cmake index 5a8dc3b..9e91bcd 100644 --- a/cmake/FindQwt.cmake +++ b/cmake/FindQwt.cmake @@ -1,7 +1,7 @@ # FindQwt # -------- # -# Find the Qwt libraries(Only for Qwt provided by FastCAE) +# Find the Qwt libraries(Only for Qwt provided by LAMPCAE) # # Result Variables # ^^^^^^^^^^^^^^^^ @@ -38,90 +38,96 @@ # # 防止é‡å¤å¼•å…¥ -if(FASTCAE_Qwt_ALREADY_INCLUDED) +if(LAMPCAE_Qwt_ALREADY_INCLUDED) return() endif() -set(FASTCAE_Qwt_ALREADY_INCLUDED 1) +set(LAMPCAE_Qwt_ALREADY_INCLUDED 1) # find_path æœç´¢åŒ…嫿Ÿä¸ªæ–‡ä»¶çš„路径 # 如果在æŸä¸ªè·¯å¾„下å‘现了该文件,该结果会被存储到该å˜é‡ä¸­ï¼›å¦‚果没有找到,存储的结果将会是-NOTFOUND +set(Qwt_DIRS C:/Qwt) # 设置qwt 路径 find_path(Qwt_DIRS - NAMES - include/qwt.h - PATHS - ${CMAKE_SOURCE_DIR}/extlib/Qwt + NAMES + qwt.h + PATHS + C:/Qwt NO_SYSTEM_ENVIRONMENT_PATH NO_CMAKE_SYSTEM_PATH ) set(Qwt_VERSION_MAJOR 6) -set(Qwt_VERSION_MINOR 1) -set(Qwt_VERSION_PATCH 6) -set(QwtPolar_VERSION_MAJOR 1) -set(QwtPolar_VERSION_MINOR 1) -set(QwtPolar_VERSION_PATCH 1) +set(Qwt_VERSION_MINOR 2) +set(Qwt_VERSION_PATCH 0) +#set(QwtPolar_VERSION_MAJOR 1) +#set(QwtPolar_VERSION_MINOR 1) +#set(QwtPolar_VERSION_PATCH 1) set(Qwt_VERSION "${Qwt_VERSION_MAJOR}.${Qwt_VERSION_MINOR}.${Qwt_VERSION_PATCH}") -set(QwtPolar_VERSION "${QwtPolar_VERSION_MAJOR}.${QwtPolar_VERSION_MINOR}.${QwtPolar_VERSION_PATCH}") +#set(QwtPolar_VERSION "${QwtPolar_VERSION_MAJOR}.${QwtPolar_VERSION_MINOR}.${QwtPolar_VERSION_PATCH}") find_path(Qwt_INCLUDE_DIRS NAMES qwt.h HINTS - ${Qwt_DIRS}/include + C:/Qwt/include ) find_path(Qwt_LIBRARY_DIRS NAMES qwt.lib libqwt.so HINTS - ${Qwt_DIRS}/lib + C:/Qwt/lib ) find_path(Qwt_BINARY_DIRS NAMES qwt.dll libqwt.so HINTS - ${Qwt_DIRS}/lib + C:/Qwt/lib ) -set(Qwt_LIBRARIES FASTCAE::QWT;FASTCAE::QWTPOLAR) +set(Qwt_LIBRARIES LAMPCAE::QWT;LAMPCAE::QWTPOLAR) -add_library(FASTCAE::QWT SHARED IMPORTED) -add_library(FASTCAE::QWTPOLAR SHARED IMPORTED) -set_property(TARGET FASTCAE::QWT PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${Qwt_INCLUDE_DIRS}) -set_property(TARGET FASTCAE::QWT APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) -set_property(TARGET FASTCAE::QWT PROPERTY INTERFACE_LINK_LIBRARIES Qt5::Svg Qt5::OpenGL) -set_property(TARGET FASTCAE::QWT PROPERTY INTERFACE_COMPILE_DEFINITIONS "QWT_DLL") +add_library(LAMPCAE::QWT SHARED IMPORTED) +add_library(LAMPCAE::QWTPOLAR SHARED IMPORTED) +set_property(TARGET LAMPCAE::QWT PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${Qwt_INCLUDE_DIRS}) +set_property(TARGET LAMPCAE::QWT APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) +set_property(TARGET LAMPCAE::QWT PROPERTY INTERFACE_LINK_LIBRARIES Qt5::Svg Qt5::OpenGL) +set_property(TARGET LAMPCAE::QWT PROPERTY INTERFACE_COMPILE_DEFINITIONS "QWT_DLL") -set_property(TARGET FASTCAE::QWTPOLAR PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${Qwt_INCLUDE_DIRS}) -set_property(TARGET FASTCAE::QWTPOLAR APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) -set_property(TARGET FASTCAE::QWTPOLAR PROPERTY INTERFACE_LINK_LIBRARIES FASTCAE::QWT Qt5::PrintSupport) +set_property(TARGET LAMPCAE::QWTPOLAR PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${Qwt_INCLUDE_DIRS}) +set_property(TARGET LAMPCAE::QWTPOLAR APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) +set_property(TARGET LAMPCAE::QWTPOLAR PROPERTY INTERFACE_LINK_LIBRARIES LAMPCAE::QWT Qt5::PrintSupport) if(CMAKE_SYSTEM_NAME STREQUAL "Linux") - set_target_properties(FASTCAE::QWT PROPERTIES + set_target_properties(LAMPCAE::QWT PROPERTIES IMPORTED_LOCATION_RELEASE "${Qwt_LIBRARY_DIRS}/libqwt.so.${Qwt_VERSION_MAJOR}.${Qwt_VERSION_MINOR}.${Qwt_VERSION_PATCH}" IMPORTED_SONAME_RELEASE "libqwt.so.${Qwt_VERSION_MAJOR}" ) - set_target_properties(FASTCAE::QWTPOLAR PROPERTIES - IMPORTED_LOCATION_RELEASE "${Qwt_LIBRARY_DIRS}/libqwtpolar.so.${QwtPolar_VERSION_MAJOR}.${QwtPolar_VERSION_MINOR}.${QwtPolar_VERSION_PATCH}" - IMPORTED_SONAME_RELEASE "libqwtpolar.so.${QwtPolar_VERSION_MAJOR}" - ) +# set_target_properties(LAMPCAE::QWTPOLAR PROPERTIES +# IMPORTED_LOCATION_RELEASE "${Qwt_LIBRARY_DIRS}/libqwtpolar.so.${QwtPolar_VERSION_MAJOR}.${QwtPolar_VERSION_MINOR}.${QwtPolar_VERSION_PATCH}" +# IMPORTED_SONAME_RELEASE "libqwtpolar.so.${QwtPolar_VERSION_MAJOR}" +# ) elseif(CMAKE_SYSTEM_NAME STREQUAL "Windows") - set_property(TARGET FASTCAE::QWT APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG) - set_property(TARGET FASTCAE::QWTPOLAR APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG) - set_target_properties(FASTCAE::QWT PROPERTIES + set_property(TARGET LAMPCAE::QWT APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG) + set_property(TARGET LAMPCAE::QWTPOLAR APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG) + set_target_properties(LAMPCAE::QWT PROPERTIES IMPORTED_IMPLIB_RELEASE "${Qwt_LIBRARY_DIRS}/qwt.lib" IMPORTED_LOCATION_RELEASE "${Qwt_BINARY_DIRS}/qwt.dll" IMPORTED_IMPLIB_DEBUG "${Qwt_LIBRARY_DIRS}/qwtd.lib" IMPORTED_LOCATION_DEBUG "${Qwt_BINARY_DIRS}/qwtd.dll" ) - set_target_properties(FASTCAE::QWTPOLAR PROPERTIES - IMPORTED_IMPLIB_RELEASE "${Qwt_LIBRARY_DIRS}/qwtpolar.lib" - IMPORTED_LOCATION_RELEASE "${Qwt_BINARY_DIRS}/qwtpolar.dll" - IMPORTED_IMPLIB_DEBUG "${Qwt_LIBRARY_DIRS}/qwtpolard.lib" - IMPORTED_LOCATION_DEBUG "${Qwt_BINARY_DIRS}/qwtpolard.dll" + set_target_properties(LAMPCAE::QWTPOLAR PROPERTIES + IMPORTED_IMPLIB_RELEASE "${Qwt_LIBRARY_DIRS}/qwt.lib" + IMPORTED_LOCATION_RELEASE "${Qwt_BINARY_DIRS}/qwt.dll" + IMPORTED_IMPLIB_DEBUG "${Qwt_LIBRARY_DIRS}/qwtd.lib" + IMPORTED_LOCATION_DEBUG "${Qwt_BINARY_DIRS}/qwtd.dll" + # qwtploar 集æˆè¿› qwt6.2.0 中 +# IMPORTED_IMPLIB_RELEASE "${Qwt_LIBRARY_DIRS}/qwtpolar.lib" +# IMPORTED_LOCATION_RELEASE "${Qwt_BINARY_DIRS}/qwtpolar.dll" +# IMPORTED_IMPLIB_DEBUG "${Qwt_LIBRARY_DIRS}/qwtpolard.lib" +# IMPORTED_LOCATION_DEBUG "${Qwt_BINARY_DIRS}/qwtpolard.dll" ) endif() diff --git a/cmake/FindTecIO.cmake b/cmake/FindTecIO.cmake index 739a38d..acf3eed 100644 --- a/cmake/FindTecIO.cmake +++ b/cmake/FindTecIO.cmake @@ -1,7 +1,7 @@ # FindTecIO # -------- # -# Find the TecIO libraries(Only for TecIO provided by FastCAE) +# Find the TecIO libraries(Only for TecIO provided by LAMPCAE) # # Result Variables # ^^^^^^^^^^^^^^^^ @@ -28,10 +28,10 @@ # # 防止é‡å¤å¼•å…¥ -if(FASTCAE_TecIO_ALREADY_INCLUDED) +if(LAMPCAE_TecIO_ALREADY_INCLUDED) return() endif() -set(FASTCAE_TecIO_ALREADY_INCLUDED 1) +set(LAMPCAE_TecIO_ALREADY_INCLUDED 1) # find_path æœç´¢åŒ…嫿Ÿä¸ªæ–‡ä»¶çš„路径 # 如果在æŸä¸ªè·¯å¾„下å‘现了该文件,该结果会被存储到该å˜é‡ä¸­ï¼›å¦‚果没有找到,存储的结果将会是-NOTFOUND @@ -64,19 +64,19 @@ find_path(TecIO_LIBRARY_DIRS ${TecIO_DIRS}/lib ) -set(TecIO_LIBRARIES FASTCAE::TECIO) +set(TecIO_LIBRARIES LAMPCAE::TECIO) -add_library(FASTCAE::TECIO SHARED IMPORTED) -set_property(TARGET FASTCAE::TECIO PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${TecIO_INCLUDE_DIRS}) -set_property(TARGET FASTCAE::TECIO APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) +add_library(LAMPCAE::TECIO SHARED IMPORTED) +set_property(TARGET LAMPCAE::TECIO PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${TecIO_INCLUDE_DIRS}) +set_property(TARGET LAMPCAE::TECIO APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) if(CMAKE_SYSTEM_NAME STREQUAL "Linux") - set_target_properties(FASTCAE::TECIO PROPERTIES + set_target_properties(LAMPCAE::TECIO PROPERTIES IMPORTED_LOCATION_RELEASE "${TecIO_LIBRARY_DIRS}/libtecio.so" #IMPORTED_SONAME_RELEASE "${TecIO_LIBRARY_DIRS}/libtecio.so" ) elseif(CMAKE_SYSTEM_NAME STREQUAL "Windows") - set_target_properties(FASTCAE::TECIO PROPERTIES + set_target_properties(LAMPCAE::TECIO PROPERTIES IMPORTED_IMPLIB_RELEASE "${TecIO_LIBRARY_DIRS}/tecio.lib" IMPORTED_LOCATION_RELEASE "${TecIO_DIRS}/bin/tecio.dll" ) diff --git a/cmake/FindVTK.cmake b/cmake/FindVTK.cmake index 7dc0dd5..3644a27 100644 --- a/cmake/FindVTK.cmake +++ b/cmake/FindVTK.cmake @@ -1,7 +1,7 @@ # FindVTK # -------- # -# Find the VTK libraries(Only for VTK provided by FastCAE) +# Find the VTK libraries(Only for VTK provided by LAMPCAE) # # Result Variables # ^^^^^^^^^^^^^^^^ @@ -30,12 +30,13 @@ # # 防止é‡å¤å¼•å…¥ -if(FASTCAE_VTK_ALREADY_INCLUDED) +if(LAMPCAE_VTK_ALREADY_INCLUDED) return() endif() -set(FASTCAE_VTK_ALREADY_INCLUDED 1) +set(LAMPCAE_VTK_ALREADY_INCLUDED 1) -set(VTK_DIRS "C:/PCL/3rdParty/VTK") +#set(VTK_DIRS "${CMAKE_SOURCE_DIR}/extlib/VTK") +set(VTK_DIRS "C:/VTK") set(VTK_VERSION_MAJOR 9) set(VTK_VERSION_MINOR 3) @@ -196,6 +197,7 @@ _populate_target_properties(VTK::ViewsCore VTK::CommonCore VTK::CommonExecutionM _populate_target_properties(VTK::ViewsInfovis VTK::CommonCore VTK::CommonDataModel VTK::CommonExecutionModel VTK::InteractionStyle VTK::RenderingContext2D VTK::ViewsCore VTK::ChartsCore VTK::CommonColor VTK::CommonTransforms VTK::FiltersCore VTK::FiltersExtraction VTK::FiltersGeneral VTK::FiltersGeometry VTK::FiltersImaging VTK::FiltersModeling VTK::FiltersSources VTK::FiltersStatistics VTK::ImagingGeneral VTK::InfovisCore VTK::InfovisLayout VTK::InteractionWidgets VTK::RenderingAnnotation VTK::RenderingCore VTK::RenderingLabel) _populate_target_properties(VTK::ViewsQt VTK::CommonCore VTK::GUISupportQt VTK::ViewsCore VTK::ViewsInfovis VTK::CommonDataModel VTK::CommonExecutionModel VTK::FiltersExtraction VTK::FiltersGeneral VTK::InfovisCore) _populate_target_properties(VTK::WrappingTools) +_populate_target_properties(VTK::IOChemistry VTK::CommonCore VTK::CommonDataModel VTK::CommonExecutionModel VTK::IOCore) # 增加IOChemistry include(FindPackageHandleStandardArgs) diff --git a/cmake/InitRuntime.cmake b/cmake/InitRuntime.cmake index 980b8c8..cafcb60 100644 --- a/cmake/InitRuntime.cmake +++ b/cmake/InitRuntime.cmake @@ -1,11 +1,11 @@ -if(FASTCAE_ENABLE_DEV) +if(LAMPCAE_ENABLE_DEV) - if(FASTCAE_WIN) - if(NOT EXISTS "$/FastCAE.ini") + if(LAMPCAE_WIN) + if(NOT EXISTS "$/LAMPCAE.ini") get_target_property(_qmake_executable Qt5::qmake IMPORTED_LOCATION) get_filename_component(_qt_bin_dir "${_qmake_executable}" DIRECTORY) - foreach(_lib ${FastCAE_Runtimes_Libraries}) + foreach(_lib ${LAMPCAE_Runtimes_Libraries}) add_custom_command(TARGET ${PROJECT_NAME} POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy $ @@ -47,11 +47,11 @@ ) endif() else() - if(NOT EXISTS "$/FastCAE.ini") + if(NOT EXISTS "$/LAMPCAE.ini") get_target_property(_qmake_executable Qt5::qmake IMPORTED_LOCATION) get_filename_component(_qt_bin_dir "${_qmake_executable}" DIRECTORY) - foreach(_lib ${FastCAE_Runtimes_Libraries}) + foreach(_lib ${LAMPCAE_Runtimes_Libraries}) add_custom_command(TARGET ${PROJECT_NAME} POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy $ @@ -109,10 +109,10 @@ endif() endif() - # FastCAEçš„é…置文件,python脚本,有å¯èƒ½ä¼šä¿®æ”¹ï¼Œæ¯æ¬¡æž„å»ºéƒ½ä¼šæ‹·è´ + # LAMPCAEçš„é…置文件,python脚本,有å¯èƒ½ä¼šä¿®æ”¹ï¼Œæ¯æ¬¡æž„å»ºéƒ½ä¼šæ‹·è´ add_custom_command(TARGET ${PROJECT_NAME} POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy_if_different - ${CMAKE_SOURCE_DIR}/src/PythonModule/py/FastCAE.ini + ${CMAKE_SOURCE_DIR}/src/PythonModule/py/LAMPCAE.ini ${CMAKE_SOURCE_DIR}/src/PythonModule/py/CAD.py ${CMAKE_SOURCE_DIR}/src/PythonModule/py/Case.py ${CMAKE_SOURCE_DIR}/src/PythonModule/py/ControlPanel.py diff --git a/docs/Doxyfile b/docs/Doxyfile index f663ff5..8b75463 100644 --- a/docs/Doxyfile +++ b/docs/Doxyfile @@ -42,7 +42,7 @@ DOXYFILE_ENCODING = UTF-8 # title of most generated pages and in a few other places. # The default value is: My Project. -PROJECT_NAME = fastcae +PROJECT_NAME = LAMPCAE # The PROJECT_NUMBER tag can be used to enter a project or revision number. This # could be handy for archiving the generated documentation or if some version @@ -74,7 +74,7 @@ PROJECT_ICON = # entered, it will be relative to the location where doxygen was started. If # left blank the current directory will be used. -OUTPUT_DIRECTORY = D:/WBFZCPP/project/FastCAEdoc +OUTPUT_DIRECTORY = D:/WBFZCPP/project/LAMPCAEdoc # If the CREATE_SUBDIRS tag is set to YES then doxygen will create up to 4096 # sub-directories (in 2 levels) under the output directory of each output format @@ -949,7 +949,7 @@ WARN_LOGFILE = # spaces. See also FILE_PATTERNS and EXTENSION_MAPPING # Note: If this tag is empty the current directory is searched. -INPUT = D:/WBFZCPP/source/FastCAE/src +INPUT = D:/WBFZCPP/source/LAMPCAE/src # This tag can be used to specify the character encoding of the source files # that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses diff --git a/docs/Doxyfile.in b/docs/Doxyfile.in index cf43e5e..1a5d700 100644 --- a/docs/Doxyfile.in +++ b/docs/Doxyfile.in @@ -51,7 +51,7 @@ PROJECT_BRIEF = @PROJECT_DESCRIPTION@ # pixels and the maximum width should not exceed 200 pixels. Doxygen will copy # the logo to the output directory. -PROJECT_LOGO = http://www.fastcae.com/static/images/logo.png +PROJECT_LOGO = http://www.LAMPCAE.com/static/images/logo.png # The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) path # into which the generated documentation will be written. If a relative path is diff --git a/docs/code-reference/mainwindow.rst b/docs/code-reference/mainwindow.rst index 6320113..d4bdd3d 100644 --- a/docs/code-reference/mainwindow.rst +++ b/docs/code-reference/mainwindow.rst @@ -4,7 +4,7 @@ MainWindow ---------- .. doxygenclass:: GUI::MainWindow - :project: FastCAE + :project: LAMPCAE :members: :protected-members: :private-members: \ No newline at end of file diff --git a/docs/conf.py.in b/docs/conf.py.in index b667165..f8c0db5 100644 --- a/docs/conf.py.in +++ b/docs/conf.py.in @@ -46,8 +46,8 @@ master_doc = 'index' # General information about the project. project = '@PROJECT_NAME@' -copyright = 'Since 2018, fastcae.com' -author = 'FastCAE团队' +copyright = 'Since 2018, LAMPCAE.com' +author = 'LAMPCAE团队' # The version info for the project you're documenting, acts as replacement for # |version| and |release|, also used in various other places throughout the diff --git a/docs/index.rst b/docs/index.rst index f90d461..bf009b5 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -3,7 +3,7 @@ You can adapt this file completely to your liking, but it should at least contain the root `toctree` directive. -Welcome to FastCAE's documentation! +Welcome to LAMPCAE's documentation! ===================================== .. toctree:: diff --git a/out/build/.cmake/api/v1/query/client-MicrosoftVS/query.json b/out/build/.cmake/api/v1/query/client-MicrosoftVS/query.json new file mode 100644 index 0000000..7d776af --- /dev/null +++ b/out/build/.cmake/api/v1/query/client-MicrosoftVS/query.json @@ -0,0 +1 @@ +{"requests":[{"kind":"cache","version":2},{"kind":"cmakeFiles","version":1},{"kind":"codemodel","version":2},{"kind":"toolchains","version":1}]} \ No newline at end of file diff --git a/out/build/.cmake/api/v1/reply/cache-v2-261c2d679b8e4328aa57.json b/out/build/.cmake/api/v1/reply/cache-v2-261c2d679b8e4328aa57.json new file mode 100644 index 0000000..fa1aba9 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/cache-v2-261c2d679b8e4328aa57.json @@ -0,0 +1,2091 @@ +{ + "entries" : + [ + { + "name" : "CGNS_DIRS", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Path to a file." + } + ], + "type" : "PATH", + "value" : "D:/vcpkg/installed/x64-windows" + }, + { + "name" : "CGNS_INCLUDE_DIRS", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Path to a file." + } + ], + "type" : "PATH", + "value" : "D:/vcpkg/installed/x64-windows/include" + }, + { + "name" : "CGNS_LIBRARY_DIRS", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Path to a file." + } + ], + "type" : "PATH", + "value" : "D:/vcpkg/installed/x64-windows/lib" + }, + { + "name" : "CMAKE_AR", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Path to a program." + } + ], + "type" : "FILEPATH", + "value" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/VC/Tools/MSVC/14.39.33519/bin/Hostx64/x64/lib.exe" + }, + { + "name" : "CMAKE_BUILD_TYPE", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "No help, variable specified on the command line." + } + ], + "type" : "STRING", + "value" : "Debug" + }, + { + "name" : "CMAKE_CACHEFILE_DIR", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "This is the directory where this CMakeCache.txt was created" + } + ], + "type" : "INTERNAL", + "value" : "d:/WBFZCPP/source/FastCAE/out/build" + }, + { + "name" : "CMAKE_CACHE_MAJOR_VERSION", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Major version of cmake used to create the current loaded cache" + } + ], + "type" : "INTERNAL", + "value" : "3" + }, + { + "name" : "CMAKE_CACHE_MINOR_VERSION", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Minor version of cmake used to create the current loaded cache" + } + ], + "type" : "INTERNAL", + "value" : "28" + }, + { + "name" : "CMAKE_CACHE_PATCH_VERSION", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Patch version of cmake used to create the current loaded cache" + } + ], + "type" : "INTERNAL", + "value" : "0" + }, + { + "name" : "CMAKE_COMMAND", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Path to CMake executable." + } + ], + "type" : "INTERNAL", + "value" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/bin/cmake.exe" + }, + { + "name" : "CMAKE_CPACK_COMMAND", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Path to cpack program executable." + } + ], + "type" : "INTERNAL", + "value" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/bin/cpack.exe" + }, + { + "name" : "CMAKE_CTEST_COMMAND", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Path to ctest program executable." + } + ], + "type" : "INTERNAL", + "value" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/bin/ctest.exe" + }, + { + "name" : "CMAKE_CXX_COMPILER", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "CXX compiler" + } + ], + "type" : "FILEPATH", + "value" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/VC/Tools/MSVC/14.39.33519/bin/Hostx64/x64/cl.exe" + }, + { + "name" : "CMAKE_CXX_FLAGS", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "No help, variable specified on the command line." + } + ], + "type" : "STRING", + "value" : "-DQT_QML_DEBUG" + }, + { + "name" : "CMAKE_CXX_FLAGS_DEBUG", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the CXX compiler during DEBUG builds." + } + ], + "type" : "STRING", + "value" : "/Zi /Ob0 /Od /RTC1" + }, + { + "name" : "CMAKE_CXX_FLAGS_MINSIZEREL", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the CXX compiler during MINSIZEREL builds." + } + ], + "type" : "STRING", + "value" : "/O1 /Ob1 /DNDEBUG" + }, + { + "name" : "CMAKE_CXX_FLAGS_RELEASE", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the CXX compiler during RELEASE builds." + } + ], + "type" : "STRING", + "value" : "/O2 /Ob2 /DNDEBUG" + }, + { + "name" : "CMAKE_CXX_FLAGS_RELWITHDEBINFO", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the CXX compiler during RELWITHDEBINFO builds." + } + ], + "type" : "STRING", + "value" : "/Zi /O2 /Ob1 /DNDEBUG" + }, + { + "name" : "CMAKE_CXX_STANDARD_LIBRARIES", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Libraries linked by default with all C++ applications." + } + ], + "type" : "STRING", + "value" : "kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib" + }, + { + "name" : "CMAKE_EXECUTABLE_FORMAT", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Executable file format" + } + ], + "type" : "INTERNAL", + "value" : "Unknown" + }, + { + "name" : "CMAKE_EXE_LINKER_FLAGS", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the linker during all build types." + } + ], + "type" : "STRING", + "value" : "/machine:x64" + }, + { + "name" : "CMAKE_EXE_LINKER_FLAGS_DEBUG", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the linker during DEBUG builds." + } + ], + "type" : "STRING", + "value" : "/debug /INCREMENTAL" + }, + { + "name" : "CMAKE_EXE_LINKER_FLAGS_MINSIZEREL", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the linker during MINSIZEREL builds." + } + ], + "type" : "STRING", + "value" : "/INCREMENTAL:NO" + }, + { + "name" : "CMAKE_EXE_LINKER_FLAGS_RELEASE", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the linker during RELEASE builds." + } + ], + "type" : "STRING", + "value" : "/INCREMENTAL:NO" + }, + { + "name" : "CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the linker during RELWITHDEBINFO builds." + } + ], + "type" : "STRING", + "value" : "/debug /INCREMENTAL" + }, + { + "name" : "CMAKE_EXPORT_COMPILE_COMMANDS", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Enable/Disable output of compile commands during generation." + } + ], + "type" : "BOOL", + "value" : "" + }, + { + "name" : "CMAKE_EXTRA_GENERATOR", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Name of external makefile project generator." + } + ], + "type" : "INTERNAL", + "value" : "" + }, + { + "name" : "CMAKE_FIND_PACKAGE_REDIRECTS_DIR", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Value Computed by CMake." + } + ], + "type" : "STATIC", + "value" : "D:/WBFZCPP/source/FastCAE/out/build/CMakeFiles/pkgRedirects" + }, + { + "name" : "CMAKE_GENERATOR", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Name of generator." + } + ], + "type" : "INTERNAL", + "value" : "Ninja" + }, + { + "name" : "CMAKE_GENERATOR_INSTANCE", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Generator instance identifier." + } + ], + "type" : "INTERNAL", + "value" : "" + }, + { + "name" : "CMAKE_GENERATOR_PLATFORM", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Name of generator platform." + } + ], + "type" : "INTERNAL", + "value" : "" + }, + { + "name" : "CMAKE_GENERATOR_TOOLSET", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Name of generator toolset." + } + ], + "type" : "INTERNAL", + "value" : "" + }, + { + "name" : "CMAKE_HOME_DIRECTORY", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Source directory with the top level CMakeLists.txt file for this project" + } + ], + "type" : "INTERNAL", + "value" : "D:/WBFZCPP/source/FastCAE" + }, + { + "name" : "CMAKE_INSTALL_BINDIR", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "User executables (bin)" + } + ], + "type" : "PATH", + "value" : "bin" + }, + { + "name" : "CMAKE_INSTALL_DATADIR", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Read-only architecture-independent data (DATAROOTDIR)" + } + ], + "type" : "PATH", + "value" : "" + }, + { + "name" : "CMAKE_INSTALL_DATAROOTDIR", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Read-only architecture-independent data root (share)" + } + ], + "type" : "PATH", + "value" : "share" + }, + { + "name" : "CMAKE_INSTALL_DOCDIR", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Documentation root (DATAROOTDIR/doc/PROJECT_NAME)" + } + ], + "type" : "PATH", + "value" : "" + }, + { + "name" : "CMAKE_INSTALL_INCLUDEDIR", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "C header files (include)" + } + ], + "type" : "PATH", + "value" : "include" + }, + { + "name" : "CMAKE_INSTALL_INFODIR", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Info documentation (DATAROOTDIR/info)" + } + ], + "type" : "PATH", + "value" : "" + }, + { + "name" : "CMAKE_INSTALL_LIBDIR", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Object code libraries (lib)" + } + ], + "type" : "PATH", + "value" : "lib" + }, + { + "name" : "CMAKE_INSTALL_LIBEXECDIR", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Program executables (libexec)" + } + ], + "type" : "PATH", + "value" : "libexec" + }, + { + "name" : "CMAKE_INSTALL_LOCALEDIR", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Locale-dependent data (DATAROOTDIR/locale)" + } + ], + "type" : "PATH", + "value" : "" + }, + { + "name" : "CMAKE_INSTALL_LOCALSTATEDIR", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Modifiable single-machine data (var)" + } + ], + "type" : "PATH", + "value" : "var" + }, + { + "name" : "CMAKE_INSTALL_MANDIR", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Man documentation (DATAROOTDIR/man)" + } + ], + "type" : "PATH", + "value" : "" + }, + { + "name" : "CMAKE_INSTALL_OLDINCLUDEDIR", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "C header files for non-gcc (/usr/include)" + } + ], + "type" : "PATH", + "value" : "/usr/include" + }, + { + "name" : "CMAKE_INSTALL_PREFIX", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "LAMPCAE\u7684\u5b89\u88c5\u8def\u5f84" + } + ], + "type" : "PATH", + "value" : "c:/Program Files/LAMPCAE" + }, + { + "name" : "CMAKE_INSTALL_RUNSTATEDIR", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Run-time variable data (LOCALSTATEDIR/run)" + } + ], + "type" : "PATH", + "value" : "" + }, + { + "name" : "CMAKE_INSTALL_SBINDIR", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "System admin executables (sbin)" + } + ], + "type" : "PATH", + "value" : "sbin" + }, + { + "name" : "CMAKE_INSTALL_SHAREDSTATEDIR", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Modifiable architecture-independent data (com)" + } + ], + "type" : "PATH", + "value" : "com" + }, + { + "name" : "CMAKE_INSTALL_SYSCONFDIR", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Read-only single-machine data (etc)" + } + ], + "type" : "PATH", + "value" : "etc" + }, + { + "name" : "CMAKE_LINKER", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Path to a program." + } + ], + "type" : "FILEPATH", + "value" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/VC/Tools/MSVC/14.39.33519/bin/Hostx64/x64/link.exe" + }, + { + "name" : "CMAKE_MAKE_PROGRAM", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "make program" + } + ], + "type" : "FILEPATH", + "value" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/Ninja/ninja.exe" + }, + { + "name" : "CMAKE_MODULE_LINKER_FLAGS", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the linker during the creation of modules during all build types." + } + ], + "type" : "STRING", + "value" : "/machine:x64" + }, + { + "name" : "CMAKE_MODULE_LINKER_FLAGS_DEBUG", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the linker during the creation of modules during DEBUG builds." + } + ], + "type" : "STRING", + "value" : "/debug /INCREMENTAL" + }, + { + "name" : "CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the linker during the creation of modules during MINSIZEREL builds." + } + ], + "type" : "STRING", + "value" : "/INCREMENTAL:NO" + }, + { + "name" : "CMAKE_MODULE_LINKER_FLAGS_RELEASE", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the linker during the creation of modules during RELEASE builds." + } + ], + "type" : "STRING", + "value" : "/INCREMENTAL:NO" + }, + { + "name" : "CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the linker during the creation of modules during RELWITHDEBINFO builds." + } + ], + "type" : "STRING", + "value" : "/debug /INCREMENTAL" + }, + { + "name" : "CMAKE_MT", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Path to a program." + } + ], + "type" : "FILEPATH", + "value" : "C:/Program Files (x86)/Windows Kits/10/bin/10.0.22621.0/x64/mt.exe" + }, + { + "name" : "CMAKE_NUMBER_OF_MAKEFILES", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "number of local generators" + } + ], + "type" : "INTERNAL", + "value" : "37" + }, + { + "name" : "CMAKE_PLATFORM_INFO_INITIALIZED", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Platform information initialized" + } + ], + "type" : "INTERNAL", + "value" : "1" + }, + { + "name" : "CMAKE_PREFIX_PATH", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "No help, variable specified on the command line." + } + ], + "type" : "STRING", + "value" : "C:/QT/5.15.2/MSVC2019_64" + }, + { + "name" : "CMAKE_PROJECT_DESCRIPTION", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Value Computed by CMake" + } + ], + "type" : "STATIC", + "value" : "LAMPCAE ,\u57fa\u4e8e FastCAE\uff0c\u4e00\u6b3e\u514d\u8d39\u7684CAE\u4eff\u771f\u8f6f\u4ef6\u7814\u53d1\u652f\u6491\u5e73\u53f0\u3002" + }, + { + "name" : "CMAKE_PROJECT_HOMEPAGE_URL", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Value Computed by CMake" + } + ], + "type" : "STATIC", + "value" : "http://www.LAMPCAE.com/" + }, + { + "name" : "CMAKE_PROJECT_NAME", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Value Computed by CMake" + } + ], + "type" : "STATIC", + "value" : "LAMPCAE" + }, + { + "name" : "CMAKE_PROJECT_VERSION", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Value Computed by CMake" + } + ], + "type" : "STATIC", + "value" : "2.5.0" + }, + { + "name" : "CMAKE_PROJECT_VERSION_MAJOR", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Value Computed by CMake" + } + ], + "type" : "STATIC", + "value" : "2" + }, + { + "name" : "CMAKE_PROJECT_VERSION_MINOR", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Value Computed by CMake" + } + ], + "type" : "STATIC", + "value" : "5" + }, + { + "name" : "CMAKE_PROJECT_VERSION_PATCH", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Value Computed by CMake" + } + ], + "type" : "STATIC", + "value" : "0" + }, + { + "name" : "CMAKE_PROJECT_VERSION_TWEAK", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Value Computed by CMake" + } + ], + "type" : "STATIC", + "value" : "" + }, + { + "name" : "CMAKE_RANLIB", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "noop for ranlib" + } + ], + "type" : "INTERNAL", + "value" : ":" + }, + { + "name" : "CMAKE_RC_COMPILER", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "RC compiler" + } + ], + "type" : "FILEPATH", + "value" : "C:/Program Files (x86)/Windows Kits/10/bin/10.0.22621.0/x64/rc.exe" + }, + { + "name" : "CMAKE_RC_COMPILER_WORKS", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "" + } + ], + "type" : "INTERNAL", + "value" : "1" + }, + { + "name" : "CMAKE_RC_FLAGS", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags for Windows Resource Compiler during all build types." + } + ], + "type" : "STRING", + "value" : "-DWIN32" + }, + { + "name" : "CMAKE_RC_FLAGS_DEBUG", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags for Windows Resource Compiler during DEBUG builds." + } + ], + "type" : "STRING", + "value" : "-D_DEBUG" + }, + { + "name" : "CMAKE_RC_FLAGS_MINSIZEREL", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags for Windows Resource Compiler during MINSIZEREL builds." + } + ], + "type" : "STRING", + "value" : "" + }, + { + "name" : "CMAKE_RC_FLAGS_RELEASE", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags for Windows Resource Compiler during RELEASE builds." + } + ], + "type" : "STRING", + "value" : "" + }, + { + "name" : "CMAKE_RC_FLAGS_RELWITHDEBINFO", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags for Windows Resource Compiler during RELWITHDEBINFO builds." + } + ], + "type" : "STRING", + "value" : "" + }, + { + "name" : "CMAKE_ROOT", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Path to CMake installation." + } + ], + "type" : "INTERNAL", + "value" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28" + }, + { + "name" : "CMAKE_SHARED_LINKER_FLAGS", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the linker during the creation of shared libraries during all build types." + } + ], + "type" : "STRING", + "value" : "/machine:x64" + }, + { + "name" : "CMAKE_SHARED_LINKER_FLAGS_DEBUG", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the linker during the creation of shared libraries during DEBUG builds." + } + ], + "type" : "STRING", + "value" : "/debug /INCREMENTAL" + }, + { + "name" : "CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the linker during the creation of shared libraries during MINSIZEREL builds." + } + ], + "type" : "STRING", + "value" : "/INCREMENTAL:NO" + }, + { + "name" : "CMAKE_SHARED_LINKER_FLAGS_RELEASE", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the linker during the creation of shared libraries during RELEASE builds." + } + ], + "type" : "STRING", + "value" : "/INCREMENTAL:NO" + }, + { + "name" : "CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the linker during the creation of shared libraries during RELWITHDEBINFO builds." + } + ], + "type" : "STRING", + "value" : "/debug /INCREMENTAL" + }, + { + "name" : "CMAKE_SKIP_INSTALL_RPATH", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "If set, runtime paths are not added when installing shared libraries, but are added when building." + } + ], + "type" : "BOOL", + "value" : "NO" + }, + { + "name" : "CMAKE_SKIP_RPATH", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "If set, runtime paths are not added when using shared libraries." + } + ], + "type" : "BOOL", + "value" : "NO" + }, + { + "name" : "CMAKE_STATIC_LINKER_FLAGS", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the linker during the creation of static libraries during all build types." + } + ], + "type" : "STRING", + "value" : "/machine:x64" + }, + { + "name" : "CMAKE_STATIC_LINKER_FLAGS_DEBUG", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the linker during the creation of static libraries during DEBUG builds." + } + ], + "type" : "STRING", + "value" : "" + }, + { + "name" : "CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the linker during the creation of static libraries during MINSIZEREL builds." + } + ], + "type" : "STRING", + "value" : "" + }, + { + "name" : "CMAKE_STATIC_LINKER_FLAGS_RELEASE", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the linker during the creation of static libraries during RELEASE builds." + } + ], + "type" : "STRING", + "value" : "" + }, + { + "name" : "CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the linker during the creation of static libraries during RELWITHDEBINFO builds." + } + ], + "type" : "STRING", + "value" : "" + }, + { + "name" : "CMAKE_VERBOSE_MAKEFILE", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "If this value is on, makefiles will be generated without the .SILENT directive, and all commands will be echoed to the console during the make. This is useful for debugging only. With Visual Studio IDE projects all commands are done without /nologo." + } + ], + "type" : "BOOL", + "value" : "FALSE" + }, + { + "name" : "CPACK_BINARY_7Z", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Enable to build 7-Zip packages" + } + ], + "type" : "BOOL", + "value" : "OFF" + }, + { + "name" : "CPACK_BINARY_IFW", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Enable to build IFW packages" + } + ], + "type" : "BOOL", + "value" : "OFF" + }, + { + "name" : "CPACK_BINARY_INNOSETUP", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Enable to build Inno Setup packages" + } + ], + "type" : "BOOL", + "value" : "OFF" + }, + { + "name" : "CPACK_BINARY_NSIS", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Enable to build NSIS packages" + } + ], + "type" : "BOOL", + "value" : "ON" + }, + { + "name" : "CPACK_BINARY_NUGET", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Enable to build NuGet packages" + } + ], + "type" : "BOOL", + "value" : "OFF" + }, + { + "name" : "CPACK_BINARY_WIX", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Enable to build WiX packages" + } + ], + "type" : "BOOL", + "value" : "OFF" + }, + { + "name" : "CPACK_BINARY_ZIP", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Enable to build ZIP packages" + } + ], + "type" : "BOOL", + "value" : "OFF" + }, + { + "name" : "CPACK_SOURCE_7Z", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Enable to build 7-Zip source packages" + } + ], + "type" : "BOOL", + "value" : "ON" + }, + { + "name" : "CPACK_SOURCE_ZIP", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Enable to build ZIP source packages" + } + ], + "type" : "BOOL", + "value" : "ON" + }, + { + "name" : "DOXYGEN_DOT_EXECUTABLE", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Dot tool for use with Doxygen" + } + ], + "type" : "FILEPATH", + "value" : "DOXYGEN_DOT_EXECUTABLE-NOTFOUND" + }, + { + "name" : "DOXYGEN_EXECUTABLE", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Doxygen documentation generation tool (https://www.doxygen.nl)" + } + ], + "type" : "FILEPATH", + "value" : "C:/doxygen/bin/doxygen.exe" + }, + { + "name" : "FIND_PACKAGE_MESSAGE_DETAILS_CGNS", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Details about finding CGNS" + } + ], + "type" : "INTERNAL", + "value" : "[D:/vcpkg/installed/x64-windows][D:/vcpkg/installed/x64-windows/include][D:/vcpkg/installed/x64-windows/lib][LAMPCAE::CGNS][v4.3.0()]" + }, + { + "name" : "FIND_PACKAGE_MESSAGE_DETAILS_Doxygen", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Details about finding Doxygen" + } + ], + "type" : "INTERNAL", + "value" : "[C:/doxygen/bin/doxygen.exe][cfound components: doxygen missing components: dot][v1.10.0()]" + }, + { + "name" : "FIND_PACKAGE_MESSAGE_DETAILS_Gmsh", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Details about finding Gmsh" + } + ], + "type" : "INTERNAL", + "value" : "[D:/WBFZCPP/source/FastCAE/extlib/Gmsh][D:/WBFZCPP/source/FastCAE/extlib/Gmsh/gmsh.exe][v4.8.0()]" + }, + { + "name" : "FIND_PACKAGE_MESSAGE_DETAILS_HDF5", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Details about finding HDF5" + } + ], + "type" : "INTERNAL", + "value" : "[D:/WBFZCPP/source/FastCAE/extlib/HDF5][D:/WBFZCPP/source/FastCAE/extlib/HDF5/include][D:/WBFZCPP/source/FastCAE/extlib/HDF5/lib][LAMPCAE::HDF5;LAMPCAE::HDF5CPP;LAMPCAE::HDF5HL;LAMPCAE::HDF5HLCPP;LAMPCAE::HDF5TOOLS][v1.13.1()]" + }, + { + "name" : "FIND_PACKAGE_MESSAGE_DETAILS_OpenCASCADE", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Details about finding OpenCASCADE" + } + ], + "type" : "INTERNAL", + "value" : "[C:/OCCT][C:/OCCT/inc][C:/OCCT/win64/vc14/lib][OpenCASCADE::Freetype;OpenCASCADE::Tcl86;OpenCASCADE::Tk86;OpenCASCADE::TKernel;OpenCASCADE::TKMath;OpenCASCADE::TKG2d;OpenCASCADE::TKG3d;OpenCASCADE::TKGeomBase;OpenCASCADE::TKBRep;OpenCASCADE::TKGeomAlgo;OpenCASCADE::TKTopAlgo;OpenCASCADE::TKPrim;OpenCASCADE::TKBO;OpenCASCADE::TKShHealing;OpenCASCADE::TKBool;OpenCASCADE::TKHLR;OpenCASCADE::TKFillet;OpenCASCADE::TKOffset;OpenCASCADE::TKFeat;OpenCASCADE::TKMesh;OpenCASCADE::TKXMesh;OpenCASCADE::TKService;OpenCASCADE::TKV3d;OpenCASCADE::TKOpenGl;OpenCASCADE::TKMeshVS;OpenCASCADE::TKIVtk;OpenCASCADE::TKCDF;OpenCASCADE::TKLCAF;OpenCASCADE::TKCAF;OpenCASCADE::TKBinL;OpenCASCADE::TKXmlL;OpenCASCADE::TKBin;OpenCASCADE::TKXml;OpenCASCADE::TKStdL;OpenCASCADE::TKStd;OpenCASCADE::TKTObj;OpenCASCADE::TKBinTObj;OpenCASCADE::TKXmlTObj;OpenCASCADE::TKVCAF;OpenCASCADE::TKXSBase;OpenCASCADE::TKSTEPBase;OpenCASCADE::TKSTEPAttr;OpenCASCADE::TKSTEP209;OpenCASCADE::TKSTEP;OpenCASCADE::TKIGES;OpenCASCADE::TKXCAF;OpenCASCADE::TKXDEIGES;OpenCASCADE::TKXDESTEP;OpenCASCADE::TKSTL;OpenCASCADE::TKVRML;OpenCASCADE::TKXmlXCAF;OpenCASCADE::TKBinXCAF;OpenCASCADE::TKRWMesh;OpenCASCADE::TKDraw;OpenCASCADE::TKTopTest;OpenCASCADE::TKOpenGlTest;OpenCASCADE::TKViewerTest;OpenCASCADE::TKXSDRAW;OpenCASCADE::TKDCAF;OpenCASCADE::TKXDEDRAW;OpenCASCADE::TKTObjDRAW;OpenCASCADE::TKQADraw;OpenCASCADE::TKIVtkDraw][C:/OCCT/win64/vc14/bin][v7.6.0()]" + }, + { + "name" : "FIND_PACKAGE_MESSAGE_DETAILS_Python", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Details about finding Python" + } + ], + "type" : "INTERNAL", + "value" : "[D:/WBFZCPP/source/FastCAE/extlib/Python][D:/WBFZCPP/source/FastCAE/extlib/Python/include][D:/WBFZCPP/source/FastCAE/extlib/Python/libs][LAMPCAE::PYTHON][D:/WBFZCPP/source/FastCAE/extlib/Python/python.exe][v3.7.0()]" + }, + { + "name" : "FIND_PACKAGE_MESSAGE_DETAILS_QuaZIP", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Details about finding QuaZIP" + } + ], + "type" : "INTERNAL", + "value" : "[D:/WBFZCPP/source/FastCAE/extlib/QuaZIP][D:/WBFZCPP/source/FastCAE/extlib/QuaZIP/include/quazip5][D:/WBFZCPP/source/FastCAE/extlib/QuaZIP/lib][LAMPCAE::QUAZIP][D:/WBFZCPP/source/FastCAE/extlib/QuaZIP/lib][v0.7.3()]" + }, + { + "name" : "FIND_PACKAGE_MESSAGE_DETAILS_Qwt", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Details about finding Qwt" + } + ], + "type" : "INTERNAL", + "value" : "[C:/Qwt][C:/Qwt/include][C:/Qwt/lib][LAMPCAE::QWT;LAMPCAE::QWTPOLAR][C:/Qwt/lib][v6.2.0()]" + }, + { + "name" : "FIND_PACKAGE_MESSAGE_DETAILS_TecIO", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Details about finding TecIO" + } + ], + "type" : "INTERNAL", + "value" : "[D:/WBFZCPP/source/FastCAE/extlib/TecIO][D:/WBFZCPP/source/FastCAE/extlib/TecIO/include][D:/WBFZCPP/source/FastCAE/extlib/TecIO/lib][LAMPCAE::TECIO][v1.4.2()]" + }, + { + "name" : "FIND_PACKAGE_MESSAGE_DETAILS_VTK", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Details about finding VTK" + } + ], + "type" : "INTERNAL", + "value" : "[C:/VTK][C:/VTK/include/vtk-9.3][C:/VTK/lib][VTK::ChartsCore;VTK::CommonColor;VTK::CommonComputationalGeometry;VTK::CommonCore;VTK::CommonDataModel;VTK::CommonExecutionModel;VTK::CommonMath;VTK::CommonMisc;VTK::CommonSystem;VTK::CommonTransforms;VTK::DomainsChemistry;VTK::FiltersAMR;VTK::FiltersCore;VTK::FiltersExtraction;VTK::FiltersFlowPaths;VTK::FiltersGeneral;VTK::FiltersGeneric;VTK::FiltersGeometry;VTK::FiltersHybrid;VTK::FiltersHyperTree;VTK::FiltersImaging;VTK::FiltersModeling;VTK::FiltersParallel;VTK::FiltersParallelImaging;VTK::FiltersPoints;VTK::FiltersProgrammable;VTK::FiltersSelection;VTK::FiltersSMP;VTK::FiltersSources;VTK::FiltersStatistics;VTK::FiltersTexture;VTK::FiltersTopology;VTK::FiltersVerdict;VTK::GeovisCore;VTK::GUISupportQt;VTK::GUISupportQtSQL;VTK::ImagingColor;VTK::ImagingCore;VTK::ImagingFourier;VTK::ImagingGeneral;VTK::ImagingHybrid;VTK::ImagingMath;VTK::ImagingMorphological;VTK::ImagingSources;VTK::ImagingStatistics;VTK::ImagingStencil;VTK::InfovisCore;VTK::InfovisLayout;VTK::InteractionImage;VTK::InteractionStyle;VTK::InteractionWidgets;VTK::IOAsynchronous;VTK::IOCityGML;VTK::IOCore;VTK::IOEnSight;VTK::IOExport;VTK::IOExportGL2PS;VTK::IOExportPDF;VTK::IOGeometry;VTK::IOImage;VTK::IOImport;VTK::IOInfovis;VTK::IOLegacy;VTK::IOLSDyna;VTK::IOMotionFX;VTK::IOMovie;VTK::IOOggTheora;VTK::IOParallel;VTK::IOParallelXML;VTK::IOPLY;VTK::IOSegY;VTK::IOSQL;VTK::IOTecplotTable;VTK::IOVideo;VTK::IOXML;VTK::IOXMLParser;VTK::ParallelCore;VTK::ParallelDIY;VTK::RenderingAnnotation;VTK::RenderingContext2D;VTK::RenderingCore;VTK::RenderingFreeType;VTK::RenderingGL2PSOpenGL2;VTK::RenderingImage;VTK::RenderingLabel;VTK::RenderingLOD;VTK::RenderingOpenGL2;VTK::RenderingQt;VTK::RenderingSceneGraph;VTK::RenderingUI;VTK::RenderingVolume;VTK::RenderingVolumeOpenGL2;VTK::RenderingVtkJS;VTK::TestingRendering;VTK::doubleconversion;VTK::expat;VTK::freetype;VTK::gl2ps;VTK::glew;VTK::jpeg;VTK::jsoncpp;VTK::libharu;VTK::libproj;VTK::libxml2;VTK::loguru;VTK::lz4;VTK::lzma;VTK::ogg;VTK::png;VTK::pugixml;VTK::sqlite;VTK::theora;VTK::tiff;VTK::verdict;VTK::zlib;VTK::DICOMParser;VTK::sys;VTK::metaio;VTK::ViewsContext2D;VTK::ViewsCore;VTK::ViewsInfovis;VTK::ViewsQt;VTK::WrappingTools][C:/VTK/bin][v9.3.0()]" + }, + { + "name" : "Gmsh_DIRS", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Path to a file." + } + ], + "type" : "PATH", + "value" : "D:/WBFZCPP/source/FastCAE/extlib/Gmsh" + }, + { + "name" : "HDF5_DIRS", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Path to a file." + } + ], + "type" : "PATH", + "value" : "D:/WBFZCPP/source/FastCAE/extlib/HDF5" + }, + { + "name" : "HDF5_INCLUDE_DIRS", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Path to a file." + } + ], + "type" : "PATH", + "value" : "D:/WBFZCPP/source/FastCAE/extlib/HDF5/include" + }, + { + "name" : "HDF5_LIBRARY_DIRS", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Path to a file." + } + ], + "type" : "PATH", + "value" : "D:/WBFZCPP/source/FastCAE/extlib/HDF5/lib" + }, + { + "name" : "LAMPCAE_AUTO_DOWNLOAD", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "\u5982\u679cextlib\u4e0d\u5b58\u5728\uff0c\u5219\u81ea\u52a8\u4e0b\u8f7d(git)\u4f9d\u8d56\u5e93" + } + ], + "type" : "BOOL", + "value" : "ON" + }, + { + "name" : "LAMPCAE_BINARY_DIR", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Value Computed by CMake" + } + ], + "type" : "STATIC", + "value" : "D:/WBFZCPP/source/FastCAE/out/build" + }, + { + "name" : "LAMPCAE_DEBUG_INFO", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "\u8f93\u51fa\u8c03\u8bd5\u4fe1\u606f" + } + ], + "type" : "BOOL", + "value" : "ON" + }, + { + "name" : "LAMPCAE_DOXYGEN_DOC", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "\u751f\u6210Doxygen\u6587\u6863" + } + ], + "type" : "BOOL", + "value" : "ON" + }, + { + "name" : "LAMPCAE_ENABLE_DEV", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "ON:\u5f00\u542f\u4ee3\u7801\u8c03\u8bd5\uff0cOFF:\u4ec5\u5b89\u88c5\u7a0b\u5e8f" + } + ], + "type" : "BOOL", + "value" : "ON" + }, + { + "name" : "LAMPCAE_ENABLE_MPI", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "\u4f7f\u7528MPI" + } + ], + "type" : "BOOL", + "value" : "OFF" + }, + { + "name" : "LAMPCAE_ENABLE_OPENMP", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "\u4f7f\u7528OpenMP" + } + ], + "type" : "BOOL", + "value" : "OFF" + }, + { + "name" : "LAMPCAE_ENABLE_TEST", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "\u5f00\u542f\u5355\u5143\u6d4b\u8bd5\uff08\u5c1a\u672a\u5f00\u53d1\u5b8c\u6210\uff09" + } + ], + "type" : "BOOL", + "value" : "OFF" + }, + { + "name" : "LAMPCAE_INSTALLATION_PACKAGE", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "\u751f\u6210LAMPCAE\u5b89\u88c5\u5305" + } + ], + "type" : "BOOL", + "value" : "ON" + }, + { + "name" : "LAMPCAE_IS_TOP_LEVEL", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Value Computed by CMake" + } + ], + "type" : "STATIC", + "value" : "ON" + }, + { + "name" : "LAMPCAE_SOURCE_DIR", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Value Computed by CMake" + } + ], + "type" : "STATIC", + "value" : "D:/WBFZCPP/source/FastCAE" + }, + { + "name" : "NSIS_EXECUTABLE", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Path to a program." + } + ], + "type" : "FILEPATH", + "value" : "NSIS_EXECUTABLE-NOTFOUND" + }, + { + "name" : "Python_DIRS", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Path to a file." + } + ], + "type" : "PATH", + "value" : "D:/WBFZCPP/source/FastCAE/extlib/Python" + }, + { + "name" : "Python_INCLUDE_DIRS", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Path to a file." + } + ], + "type" : "PATH", + "value" : "D:/WBFZCPP/source/FastCAE/extlib/Python/include" + }, + { + "name" : "Python_LIBRARY_DIRS", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Path to a file." + } + ], + "type" : "PATH", + "value" : "D:/WBFZCPP/source/FastCAE/extlib/Python/libs" + }, + { + "name" : "Qt5Core_DIR", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "The directory containing a CMake configuration file for Qt5Core." + } + ], + "type" : "PATH", + "value" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Core" + }, + { + "name" : "Qt5DBus_DIR", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "The directory containing a CMake configuration file for Qt5DBus." + } + ], + "type" : "PATH", + "value" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5DBus" + }, + { + "name" : "Qt5Gui_DIR", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "The directory containing a CMake configuration file for Qt5Gui." + } + ], + "type" : "PATH", + "value" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Gui" + }, + { + "name" : "Qt5OpenGL_DIR", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "The directory containing a CMake configuration file for Qt5OpenGL." + } + ], + "type" : "PATH", + "value" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5OpenGL" + }, + { + "name" : "Qt5PrintSupport_DIR", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "The directory containing a CMake configuration file for Qt5PrintSupport." + } + ], + "type" : "PATH", + "value" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5PrintSupport" + }, + { + "name" : "Qt5Svg_DIR", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "The directory containing a CMake configuration file for Qt5Svg." + } + ], + "type" : "PATH", + "value" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Svg" + }, + { + "name" : "Qt5Widgets_DIR", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "The directory containing a CMake configuration file for Qt5Widgets." + } + ], + "type" : "PATH", + "value" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Widgets" + }, + { + "name" : "Qt5Xml_DIR", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "The directory containing a CMake configuration file for Qt5Xml." + } + ], + "type" : "PATH", + "value" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Xml" + }, + { + "name" : "Qt5_DIR", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Qt5Config.cmake\u6240\u5728\u76ee\u5f55" + } + ], + "type" : "PATH", + "value" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5" + }, + { + "name" : "QuaZIP_BINARY_DIRS", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Path to a file." + } + ], + "type" : "PATH", + "value" : "D:/WBFZCPP/source/FastCAE/extlib/QuaZIP/lib" + }, + { + "name" : "QuaZIP_DIRS", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Path to a file." + } + ], + "type" : "PATH", + "value" : "D:/WBFZCPP/source/FastCAE/extlib/QuaZIP" + }, + { + "name" : "QuaZIP_INCLUDE_DIRS", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Path to a file." + } + ], + "type" : "PATH", + "value" : "D:/WBFZCPP/source/FastCAE/extlib/QuaZIP/include/quazip5" + }, + { + "name" : "QuaZIP_LIBRARY_DIRS", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Path to a file." + } + ], + "type" : "PATH", + "value" : "D:/WBFZCPP/source/FastCAE/extlib/QuaZIP/lib" + }, + { + "name" : "Qwt_BINARY_DIRS", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Path to a file." + } + ], + "type" : "PATH", + "value" : "C:/Qwt/lib" + }, + { + "name" : "Qwt_INCLUDE_DIRS", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Path to a file." + } + ], + "type" : "PATH", + "value" : "C:/Qwt/include" + }, + { + "name" : "Qwt_LIBRARY_DIRS", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Path to a file." + } + ], + "type" : "PATH", + "value" : "C:/Qwt/lib" + }, + { + "name" : "TecIO_DIRS", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Path to a file." + } + ], + "type" : "PATH", + "value" : "D:/WBFZCPP/source/FastCAE/extlib/TecIO" + }, + { + "name" : "TecIO_INCLUDE_DIRS", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Path to a file." + } + ], + "type" : "PATH", + "value" : "D:/WBFZCPP/source/FastCAE/extlib/TecIO/include" + }, + { + "name" : "TecIO_LIBRARY_DIRS", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Path to a file." + } + ], + "type" : "PATH", + "value" : "D:/WBFZCPP/source/FastCAE/extlib/TecIO/lib" + }, + { + "name" : "_GNUInstallDirs_LAST_CMAKE_INSTALL_PREFIX", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "CMAKE_INSTALL_PREFIX during last run" + } + ], + "type" : "INTERNAL", + "value" : "D:/WBFZCPP/source/FastCAE/install" + } + ], + "kind" : "cache", + "version" : + { + "major" : 2, + "minor" : 0 + } +} diff --git a/out/build/.cmake/api/v1/reply/cmakeFiles-v1-bc0bc38fca065813c476.json b/out/build/.cmake/api/v1/reply/cmakeFiles-v1-bc0bc38fca065813c476.json new file mode 100644 index 0000000..f802ed1 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/cmakeFiles-v1-bc0bc38fca065813c476.json @@ -0,0 +1,1024 @@ +{ + "inputs" : + [ + { + "path" : "CMakeLists.txt" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/CMakeDetermineSystem.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/CMakeSystem.cmake.in" + }, + { + "isGenerated" : true, + "path" : "out/build/CMakeFiles/3.28.0-msvc1/CMakeSystem.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/CMakeSystemSpecificInitialize.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Platform/Windows-Initialize.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/CMakeDetermineCXXCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/CMakeDetermineCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Platform/Windows-Determine-CXX.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/CMakeDetermineCompilerId.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/CMakeCompilerIdDetection.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/ADSP-DetermineCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/ARMCC-DetermineCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/ARMClang-DetermineCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/AppleClang-DetermineCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/Clang-DetermineCompilerInternal.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/Borland-DetermineCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/Clang-DetermineCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/Clang-DetermineCompilerInternal.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/Comeau-CXX-DetermineCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/Compaq-CXX-DetermineCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/Cray-DetermineCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/CrayClang-DetermineCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/Embarcadero-DetermineCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/Fujitsu-DetermineCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/FujitsuClang-DetermineCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/GHS-DetermineCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/GNU-CXX-DetermineCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/HP-CXX-DetermineCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/IAR-DetermineCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/IBMClang-CXX-DetermineCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/Intel-DetermineCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/IntelLLVM-DetermineCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/LCC-CXX-DetermineCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/MSVC-DetermineCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/NVHPC-DetermineCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/NVIDIA-DetermineCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/OpenWatcom-DetermineCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/OrangeC-DetermineCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/PGI-DetermineCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/PathScale-DetermineCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/SCO-DetermineCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/SunPro-CXX-DetermineCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/TI-DetermineCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/Tasking-DetermineCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/VisualAge-CXX-DetermineCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/IBMCPP-CXX-DetermineVersionInternal.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/Watcom-DetermineCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/XL-CXX-DetermineCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/IBMCPP-CXX-DetermineVersionInternal.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/XLClang-CXX-DetermineCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/zOS-CXX-DetermineCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/IBMCPP-CXX-DetermineVersionInternal.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/CMakeFindBinUtils.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/CMakeCXXCompiler.cmake.in" + }, + { + "isGenerated" : true, + "path" : "out/build/CMakeFiles/3.28.0-msvc1/CMakeCXXCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/CMakeSystemSpecificInformation.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/CMakeGenericSystem.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/CMakeInitializeConfigs.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Platform/Windows.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Platform/WindowsPaths.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/CMakeCXXInformation.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/CMakeLanguageInformation.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/MSVC-CXX.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/MSVC.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Compiler/CMakeCommonCompilerMacros.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Platform/Windows-MSVC-CXX.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Platform/Windows-MSVC.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/CMakeDetermineRCCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/CMakeRCCompiler.cmake.in" + }, + { + "isGenerated" : true, + "path" : "out/build/CMakeFiles/3.28.0-msvc1/CMakeRCCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/CMakeRCInformation.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/CMakeTestRCCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/CMakeCommonLanguageInclude.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/CMakeTestCXXCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/CMakeTestCompilerCommon.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/CMakeDetermineCompilerABI.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/CMakeParseImplicitIncludeInfo.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/CMakeParseImplicitLinkInfo.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/CMakeParseLibraryArchitecture.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/CMakeTestCompilerCommon.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/CMakeCXXCompilerABI.cpp" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/CMakeDetermineCompileFeatures.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/Internal/FeatureTesting.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/CMakeCXXCompiler.cmake.in" + }, + { + "isGenerated" : true, + "path" : "out/build/CMakeFiles/3.28.0-msvc1/CMakeCXXCompiler.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5/Qt5ConfigVersion.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5/Qt5Config.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5/Qt5ModuleLocation.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Core/Qt5CoreConfigVersion.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Core/Qt5CoreConfig.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Core/Qt5CoreConfigExtras.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Core/Qt5CoreConfigExtrasMkspecDir.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Core/Qt5CoreMacros.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/CMakeParseArguments.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Widgets/Qt5WidgetsConfigVersion.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Widgets/Qt5WidgetsConfig.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Gui/Qt5GuiConfigVersion.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Gui/Qt5GuiConfig.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Gui/Qt5Gui_QGifPlugin.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Gui/Qt5Gui_QICNSPlugin.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Gui/Qt5Gui_QICOPlugin.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Gui/Qt5Gui_QJpegPlugin.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Gui/Qt5Gui_QMinimalIntegrationPlugin.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Gui/Qt5Gui_QOffscreenIntegrationPlugin.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Gui/Qt5Gui_QSvgIconPlugin.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Gui/Qt5Gui_QSvgPlugin.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Gui/Qt5Gui_QTgaPlugin.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Gui/Qt5Gui_QTiffPlugin.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Gui/Qt5Gui_QTuioTouchPlugin.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Gui/Qt5Gui_QVirtualKeyboardPlugin.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Gui/Qt5Gui_QWbmpPlugin.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Gui/Qt5Gui_QWebGLIntegrationPlugin.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Gui/Qt5Gui_QWebpPlugin.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Gui/Qt5Gui_QWindowsDirect2DIntegrationPlugin.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Gui/Qt5Gui_QWindowsIntegrationPlugin.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Gui/Qt5Gui_QXdgDesktopPortalThemePlugin.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Gui/Qt5GuiConfigExtras.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Widgets/Qt5Widgets_QWindowsVistaStylePlugin.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Widgets/Qt5WidgetsConfigExtras.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Widgets/Qt5WidgetsMacros.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/CMakeParseArguments.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Gui/Qt5GuiConfigVersion.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Gui/Qt5GuiConfig.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Xml/Qt5XmlConfigVersion.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Xml/Qt5XmlConfig.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Svg/Qt5SvgConfigVersion.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Svg/Qt5SvgConfig.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5OpenGL/Qt5OpenGLConfigVersion.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5OpenGL/Qt5OpenGLConfig.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5PrintSupport/Qt5PrintSupportConfigVersion.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5PrintSupport/Qt5PrintSupportConfig.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5PrintSupport/Qt5PrintSupport_QWindowsPrinterSupportPlugin.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5DBus/Qt5DBusConfigVersion.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5DBus/Qt5DBusConfig.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5DBus/Qt5DBusConfigExtras.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5DBus/Qt5DBusMacros.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/MacroAddFileDependencies.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/CMakeParseArguments.cmake" + }, + { + "path" : "cmake/FindVTK.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/FindPackageHandleStandardArgs.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/FindPackageMessage.cmake" + }, + { + "path" : "cmake/FindOpenCASCADE.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/FindPackageHandleStandardArgs.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/FindPackageMessage.cmake" + }, + { + "path" : "cmake/FindQwt.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/FindPackageHandleStandardArgs.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/FindPackageMessage.cmake" + }, + { + "path" : "cmake/FindHDF5.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/FindPackageHandleStandardArgs.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/FindPackageMessage.cmake" + }, + { + "path" : "cmake/FindCGNS.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/FindPackageHandleStandardArgs.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/FindPackageMessage.cmake" + }, + { + "path" : "cmake/FindTecIO.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/FindPackageHandleStandardArgs.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/FindPackageMessage.cmake" + }, + { + "path" : "cmake/FindQuaZIP.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/FindPackageHandleStandardArgs.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/FindPackageMessage.cmake" + }, + { + "path" : "cmake/FindGmsh.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/FindPackageHandleStandardArgs.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/FindPackageMessage.cmake" + }, + { + "path" : "cmake/FindPython.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/FindPackageHandleStandardArgs.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/FindPackageMessage.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/GNUInstallDirs.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/FindDoxygen.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/FindPackageHandleStandardArgs.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/FindPackageMessage.cmake" + }, + { + "path" : "cmake/UseDoxygen.cmake" + }, + { + "path" : "docs/Doxyfile.in" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/CPack.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Modules/CPackComponent.cmake" + }, + { + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Templates/CPackConfig.cmake.in" + }, + { + "isExternal" : true, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Templates/CPackConfig.cmake.in" + }, + { + "path" : "src/CMakeLists.txt" + }, + { + "path" : "src/Common/CMakeLists.txt" + }, + { + "path" : "src/PythonModule/CMakeLists.txt" + }, + { + "path" : "src/SARibbonBar/CMakeLists.txt" + }, + { + "path" : "src/SARibbonBar/resource.qrc" + }, + { + "path" : "src/Settings/CMakeLists.txt" + }, + { + "path" : "src/DataProperty/CMakeLists.txt" + }, + { + "path" : "src/MeshData/CMakeLists.txt" + }, + { + "path" : "src/SelfDefObject/CMakeLists.txt" + }, + { + "path" : "src/qrc/qianfan.qrc" + }, + { + "path" : "src/qrc/translations.qrc" + }, + { + "path" : "src/Material/CMakeLists.txt" + }, + { + "path" : "src/qrc/qianfan.qrc" + }, + { + "path" : "src/Geometry/CMakeLists.txt" + }, + { + "path" : "src/BCBase/CMakeLists.txt" + }, + { + "path" : "src/ConfigOptions/CMakeLists.txt" + }, + { + "path" : "src/ParaClassFactory/CMakeLists.txt" + }, + { + "path" : "src/ModelData/CMakeLists.txt" + }, + { + "path" : "src/ModuleBase/CMakeLists.txt" + }, + { + "path" : "src/qrc/qianfan.qrc" + }, + { + "path" : "src/qrc/translations.qrc" + }, + { + "path" : "src/PostAlgorithm/CMakeLists.txt" + }, + { + "path" : "src/PostRenderData/CMakeLists.txt" + }, + { + "path" : "src/PostInterface/CMakeLists.txt" + }, + { + "path" : "src/qrc/qianfan.qrc" + }, + { + "path" : "src/qrc/translations.qrc" + }, + { + "path" : "src/PostCurveDataManager/CMakeLists.txt" + }, + { + "path" : "src/PostPlotWidget/CMakeLists.txt" + }, + { + "path" : "src/PostWidgets/CMakeLists.txt" + }, + { + "path" : "src/qrc/qianfan.qrc" + }, + { + "path" : "src/qrc/translations.qrc" + }, + { + "path" : "src/GeometryDataExchange/CMakeLists.txt" + }, + { + "path" : "src/ProjectTree/CMakeLists.txt" + }, + { + "path" : "src/qrc/qianfan.qrc" + }, + { + "path" : "src/qrc/translations.qrc" + }, + { + "path" : "src/ProjectTreeExtend/CMakeLists.txt" + }, + { + "path" : "src/qrc/qianfan.qrc" + }, + { + "path" : "src/qrc/translations.qrc" + }, + { + "path" : "src/GeometryCommand/CMakeLists.txt" + }, + { + "path" : "src/qrc/qianfan.qrc" + }, + { + "path" : "src/qrc/translations.qrc" + }, + { + "path" : "src/GeometryWidgets/CMakeLists.txt" + }, + { + "path" : "src/qrc/qianfan.qrc" + }, + { + "path" : "src/qrc/translations.qrc" + }, + { + "path" : "src/PluginManager/CMakeLists.txt" + }, + { + "path" : "src/GmshModule/CMakeLists.txt" + }, + { + "path" : "src/qrc/qianfan.qrc" + }, + { + "path" : "src/qrc/translations.qrc" + }, + { + "path" : "src/IO/CMakeLists.txt" + }, + { + "path" : "src/SolverControl/CMakeLists.txt" + }, + { + "path" : "src/qrc/qianfan.qrc" + }, + { + "path" : "src/qrc/translations.qrc" + }, + { + "path" : "src/MainWidgets/CMakeLists.txt" + }, + { + "path" : "src/qrc/qianfan.qrc" + }, + { + "path" : "src/qrc/translations.qrc" + }, + { + "path" : "src/UserGuidence/CMakeLists.txt" + }, + { + "path" : "src/qrc/qianfan.qrc" + }, + { + "path" : "src/qrc/translations.qrc" + }, + { + "path" : "src/MainWindow/CMakeLists.txt" + }, + { + "path" : "src/qrc/qianfan.qrc" + }, + { + "path" : "src/qrc/translations.qrc" + }, + { + "path" : "src/LAMPCAE/CMakeLists.txt" + }, + { + "path" : "cmake/InitRuntime.cmake" + }, + { + "path" : "src/PluginCustomizer/CMakeLists.txt" + }, + { + "path" : "src/qrc/qianfan.qrc" + }, + { + "path" : "src/PluginCustomizer/resource/customizer.qrc" + }, + { + "path" : "src/PluginMeshDataExchange/CMakeLists.txt" + }, + { + "path" : "src/qrc/qianfan.qrc" + }, + { + "path" : "src/qrc/translations.qrc" + } + ], + "kind" : "cmakeFiles", + "paths" : + { + "build" : "D:/WBFZCPP/source/FastCAE/out/build", + "source" : "D:/WBFZCPP/source/FastCAE" + }, + "version" : + { + "major" : 1, + "minor" : 0 + } +} diff --git a/out/build/.cmake/api/v1/reply/codemodel-v2-9e6acc76e9c260e6d44f.json b/out/build/.cmake/api/v1/reply/codemodel-v2-9e6acc76e9c260e6d44f.json new file mode 100644 index 0000000..f34d9a9 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/codemodel-v2-9e6acc76e9c260e6d44f.json @@ -0,0 +1,1589 @@ +{ + "configurations" : + [ + { + "directories" : + [ + { + "build" : ".", + "childIndexes" : + [ + 1 + ], + "hasInstallRule" : true, + "jsonFile" : "directory-.-Debug-d0094a50bb2071803777.json", + "minimumCMakeVersion" : + { + "string" : "3.21" + }, + "projectIndex" : 0, + "source" : ".", + "targetIndexes" : + [ + 12 + ] + }, + { + "build" : "src", + "childIndexes" : + [ + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36 + ], + "hasInstallRule" : true, + "jsonFile" : "directory-src-Debug-f4eac5f7c5c995a2fc37.json", + "minimumCMakeVersion" : + { + "string" : "3.21" + }, + "parentIndex" : 0, + "projectIndex" : 0, + "source" : "src" + }, + { + "build" : "src/Common", + "jsonFile" : "directory-src.Common-Debug-555e2cf014f3c4041037.json", + "minimumCMakeVersion" : + { + "string" : "3.21" + }, + "parentIndex" : 1, + "projectIndex" : 0, + "source" : "src/Common", + "targetIndexes" : + [ + 3, + 4, + 5 + ] + }, + { + "build" : "src/PythonModule", + "hasInstallRule" : true, + "jsonFile" : "directory-src.PythonModule-Debug-a63564c7b90f34c53d76.json", + "minimumCMakeVersion" : + { + "string" : "3.21" + }, + "parentIndex" : 1, + "projectIndex" : 0, + "source" : "src/PythonModule", + "targetIndexes" : + [ + 88, + 89, + 90 + ] + }, + { + "build" : "src/SARibbonBar", + "jsonFile" : "directory-src.SARibbonBar-Debug-3c18d945d19d7e5f631e.json", + "minimumCMakeVersion" : + { + "string" : "3.21" + }, + "parentIndex" : 1, + "projectIndex" : 0, + "source" : "src/SARibbonBar", + "targetIndexes" : + [ + 91, + 92, + 93 + ] + }, + { + "build" : "src/Settings", + "jsonFile" : "directory-src.Settings-Debug-1a0da85cc8cd9667558f.json", + "minimumCMakeVersion" : + { + "string" : "3.21" + }, + "parentIndex" : 1, + "projectIndex" : 0, + "source" : "src/Settings", + "targetIndexes" : + [ + 97, + 98, + 99 + ] + }, + { + "build" : "src/DataProperty", + "jsonFile" : "directory-src.DataProperty-Debug-e62b5094254465b8eae0.json", + "minimumCMakeVersion" : + { + "string" : "3.21" + }, + "parentIndex" : 1, + "projectIndex" : 0, + "source" : "src/DataProperty", + "targetIndexes" : + [ + 9, + 10, + 11 + ] + }, + { + "build" : "src/MeshData", + "jsonFile" : "directory-src.MeshData-Debug-5535fb953f5df19194dd.json", + "minimumCMakeVersion" : + { + "string" : "3.21" + }, + "parentIndex" : 1, + "projectIndex" : 0, + "source" : "src/MeshData", + "targetIndexes" : + [ + 43, + 44, + 45 + ] + }, + { + "build" : "src/SelfDefObject", + "jsonFile" : "directory-src.SelfDefObject-Debug-3ea6c96be3c50bb4a22e.json", + "minimumCMakeVersion" : + { + "string" : "3.21" + }, + "parentIndex" : 1, + "projectIndex" : 0, + "source" : "src/SelfDefObject", + "targetIndexes" : + [ + 94, + 95, + 96 + ] + }, + { + "build" : "src/Material", + "jsonFile" : "directory-src.Material-Debug-8403bf3d1dcab886c6f5.json", + "minimumCMakeVersion" : + { + "string" : "3.21" + }, + "parentIndex" : 1, + "projectIndex" : 0, + "source" : "src/Material", + "targetIndexes" : + [ + 40, + 41, + 42 + ] + }, + { + "build" : "src/Geometry", + "jsonFile" : "directory-src.Geometry-Debug-47abd9c13e3c83a6a38d.json", + "minimumCMakeVersion" : + { + "string" : "3.21" + }, + "parentIndex" : 1, + "projectIndex" : 0, + "source" : "src/Geometry", + "targetIndexes" : + [ + 13, + 23, + 24 + ] + }, + { + "build" : "src/BCBase", + "jsonFile" : "directory-src.BCBase-Debug-9e77281d0fa0abb8338d.json", + "minimumCMakeVersion" : + { + "string" : "3.21" + }, + "parentIndex" : 1, + "projectIndex" : 0, + "source" : "src/BCBase", + "targetIndexes" : + [ + 0, + 1, + 2 + ] + }, + { + "build" : "src/ConfigOptions", + "jsonFile" : "directory-src.ConfigOptions-Debug-b71c617a15753e1feef7.json", + "minimumCMakeVersion" : + { + "string" : "3.21" + }, + "parentIndex" : 1, + "projectIndex" : 0, + "source" : "src/ConfigOptions", + "targetIndexes" : + [ + 6, + 7, + 8 + ] + }, + { + "build" : "src/ParaClassFactory", + "jsonFile" : "directory-src.ParaClassFactory-Debug-aa4d601bf85090c49228.json", + "minimumCMakeVersion" : + { + "string" : "3.21" + }, + "parentIndex" : 1, + "projectIndex" : 0, + "source" : "src/ParaClassFactory", + "targetIndexes" : + [ + 52, + 53, + 54 + ] + }, + { + "build" : "src/ModelData", + "jsonFile" : "directory-src.ModelData-Debug-198cd6aedd7ee7546ca1.json", + "minimumCMakeVersion" : + { + "string" : "3.21" + }, + "parentIndex" : 1, + "projectIndex" : 0, + "source" : "src/ModelData", + "targetIndexes" : + [ + 46, + 47, + 48 + ] + }, + { + "build" : "src/ModuleBase", + "jsonFile" : "directory-src.ModuleBase-Debug-9091614ce4dba507c4ca.json", + "minimumCMakeVersion" : + { + "string" : "3.21" + }, + "parentIndex" : 1, + "projectIndex" : 0, + "source" : "src/ModuleBase", + "targetIndexes" : + [ + 49, + 50, + 51 + ] + }, + { + "build" : "src/PostAlgorithm", + "jsonFile" : "directory-src.PostAlgorithm-Debug-a68438d69bbbcbf3df12.json", + "minimumCMakeVersion" : + { + "string" : "3.21" + }, + "parentIndex" : 1, + "projectIndex" : 0, + "source" : "src/PostAlgorithm", + "targetIndexes" : + [ + 64, + 65, + 66 + ] + }, + { + "build" : "src/PostRenderData", + "jsonFile" : "directory-src.PostRenderData-Debug-318d6865b7db010473b6.json", + "minimumCMakeVersion" : + { + "string" : "3.21" + }, + "parentIndex" : 1, + "projectIndex" : 0, + "source" : "src/PostRenderData", + "targetIndexes" : + [ + 76, + 77, + 78 + ] + }, + { + "build" : "src/PostInterface", + "jsonFile" : "directory-src.PostInterface-Debug-75f006e7614e11057388.json", + "minimumCMakeVersion" : + { + "string" : "3.21" + }, + "parentIndex" : 1, + "projectIndex" : 0, + "source" : "src/PostInterface", + "targetIndexes" : + [ + 70, + 71, + 72 + ] + }, + { + "build" : "src/PostCurveDataManager", + "jsonFile" : "directory-src.PostCurveDataManager-Debug-c74dde3dadceba73281b.json", + "minimumCMakeVersion" : + { + "string" : "3.21" + }, + "parentIndex" : 1, + "projectIndex" : 0, + "source" : "src/PostCurveDataManager", + "targetIndexes" : + [ + 67, + 68, + 69 + ] + }, + { + "build" : "src/PostPlotWidget", + "jsonFile" : "directory-src.PostPlotWidget-Debug-f99e9e350f45afa9f71f.json", + "minimumCMakeVersion" : + { + "string" : "3.21" + }, + "parentIndex" : 1, + "projectIndex" : 0, + "source" : "src/PostPlotWidget", + "targetIndexes" : + [ + 73, + 74, + 75 + ] + }, + { + "build" : "src/PostWidgets", + "jsonFile" : "directory-src.PostWidgets-Debug-0b40937599cd5da845cb.json", + "minimumCMakeVersion" : + { + "string" : "3.21" + }, + "parentIndex" : 1, + "projectIndex" : 0, + "source" : "src/PostWidgets", + "targetIndexes" : + [ + 79, + 80, + 81 + ] + }, + { + "build" : "src/GeometryDataExchange", + "jsonFile" : "directory-src.GeometryDataExchange-Debug-16b712f9a4a5206a84d4.json", + "minimumCMakeVersion" : + { + "string" : "3.21" + }, + "parentIndex" : 1, + "projectIndex" : 0, + "source" : "src/GeometryDataExchange", + "targetIndexes" : + [ + 17, + 18, + 19 + ] + }, + { + "build" : "src/ProjectTree", + "jsonFile" : "directory-src.ProjectTree-Debug-816dac64c9e8f726dac2.json", + "minimumCMakeVersion" : + { + "string" : "3.21" + }, + "parentIndex" : 1, + "projectIndex" : 0, + "source" : "src/ProjectTree", + "targetIndexes" : + [ + 82, + 86, + 87 + ] + }, + { + "build" : "src/ProjectTreeExtend", + "jsonFile" : "directory-src.ProjectTreeExtend-Debug-b5fcdcc747efd1df86d8.json", + "minimumCMakeVersion" : + { + "string" : "3.21" + }, + "parentIndex" : 1, + "projectIndex" : 0, + "source" : "src/ProjectTreeExtend", + "targetIndexes" : + [ + 83, + 84, + 85 + ] + }, + { + "build" : "src/GeometryCommand", + "jsonFile" : "directory-src.GeometryCommand-Debug-b092980e631bf26eb184.json", + "minimumCMakeVersion" : + { + "string" : "3.21" + }, + "parentIndex" : 1, + "projectIndex" : 0, + "source" : "src/GeometryCommand", + "targetIndexes" : + [ + 14, + 15, + 16 + ] + }, + { + "build" : "src/GeometryWidgets", + "jsonFile" : "directory-src.GeometryWidgets-Debug-922ebaeb3b27204f3e4a.json", + "minimumCMakeVersion" : + { + "string" : "3.21" + }, + "parentIndex" : 1, + "projectIndex" : 0, + "source" : "src/GeometryWidgets", + "targetIndexes" : + [ + 20, + 21, + 22 + ] + }, + { + "build" : "src/PluginManager", + "jsonFile" : "directory-src.PluginManager-Debug-f052b377cd9a513b9f97.json", + "minimumCMakeVersion" : + { + "string" : "3.21" + }, + "parentIndex" : 1, + "projectIndex" : 0, + "source" : "src/PluginManager", + "targetIndexes" : + [ + 58, + 59, + 60 + ] + }, + { + "build" : "src/GmshModule", + "hasInstallRule" : true, + "jsonFile" : "directory-src.GmshModule-Debug-71bc511684637510f759.json", + "minimumCMakeVersion" : + { + "string" : "3.21" + }, + "parentIndex" : 1, + "projectIndex" : 0, + "source" : "src/GmshModule", + "targetIndexes" : + [ + 25, + 26, + 27 + ] + }, + { + "build" : "src/IO", + "jsonFile" : "directory-src.IO-Debug-876fd3c12fc7fb021ca1.json", + "minimumCMakeVersion" : + { + "string" : "3.21" + }, + "parentIndex" : 1, + "projectIndex" : 0, + "source" : "src/IO", + "targetIndexes" : + [ + 28, + 29, + 30 + ] + }, + { + "build" : "src/SolverControl", + "jsonFile" : "directory-src.SolverControl-Debug-b56b6244051353fee572.json", + "minimumCMakeVersion" : + { + "string" : "3.21" + }, + "parentIndex" : 1, + "projectIndex" : 0, + "source" : "src/SolverControl", + "targetIndexes" : + [ + 100, + 101, + 102 + ] + }, + { + "build" : "src/MainWidgets", + "jsonFile" : "directory-src.MainWidgets-Debug-5da52c7e437fcddc0ffe.json", + "minimumCMakeVersion" : + { + "string" : "3.21" + }, + "parentIndex" : 1, + "projectIndex" : 0, + "source" : "src/MainWidgets", + "targetIndexes" : + [ + 34, + 35, + 36 + ] + }, + { + "build" : "src/UserGuidence", + "jsonFile" : "directory-src.UserGuidence-Debug-57335dbdcf929945098b.json", + "minimumCMakeVersion" : + { + "string" : "3.21" + }, + "parentIndex" : 1, + "projectIndex" : 0, + "source" : "src/UserGuidence", + "targetIndexes" : + [ + 103, + 104, + 105 + ] + }, + { + "build" : "src/MainWindow", + "jsonFile" : "directory-src.MainWindow-Debug-25a31dc44f25cea869e8.json", + "minimumCMakeVersion" : + { + "string" : "3.21" + }, + "parentIndex" : 1, + "projectIndex" : 0, + "source" : "src/MainWindow", + "targetIndexes" : + [ + 37, + 38, + 39 + ] + }, + { + "build" : "src/LAMPCAE", + "hasInstallRule" : true, + "jsonFile" : "directory-src.LAMPCAE-Debug-d4b5f01aaa164ad1f37b.json", + "minimumCMakeVersion" : + { + "string" : "3.21" + }, + "parentIndex" : 1, + "projectIndex" : 0, + "source" : "src/LAMPCAE", + "targetIndexes" : + [ + 31, + 32, + 33 + ] + }, + { + "build" : "src/PluginCustomizer", + "jsonFile" : "directory-src.PluginCustomizer-Debug-db1a160e57b0782567a9.json", + "minimumCMakeVersion" : + { + "string" : "3.21" + }, + "parentIndex" : 1, + "projectIndex" : 0, + "source" : "src/PluginCustomizer", + "targetIndexes" : + [ + 55, + 56, + 57 + ] + }, + { + "build" : "src/PluginMeshDataExchange", + "jsonFile" : "directory-src.PluginMeshDataExchange-Debug-be0db16a6f3c69ccc587.json", + "minimumCMakeVersion" : + { + "string" : "3.21" + }, + "parentIndex" : 1, + "projectIndex" : 0, + "source" : "src/PluginMeshDataExchange", + "targetIndexes" : + [ + 61, + 62, + 63 + ] + } + ], + "name" : "Debug", + "projects" : + [ + { + "directoryIndexes" : + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36 + ], + "name" : "LAMPCAE", + "targetIndexes" : + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105 + ] + } + ], + "targets" : + [ + { + "directoryIndex" : 11, + "id" : "BCBase::@baf13bdd6bef809f2182", + "jsonFile" : "target-BCBase-Debug-144852a9834429374bb4.json", + "name" : "BCBase", + "projectIndex" : 0 + }, + { + "directoryIndex" : 11, + "id" : "BCBase_autogen::@baf13bdd6bef809f2182", + "jsonFile" : "target-BCBase_autogen-Debug-f649e1b27d49b1d9297d.json", + "name" : "BCBase_autogen", + "projectIndex" : 0 + }, + { + "directoryIndex" : 11, + "id" : "BCBase_autogen_timestamp_deps::@baf13bdd6bef809f2182", + "jsonFile" : "target-BCBase_autogen_timestamp_deps-Debug-9e43c69b5fb9d56c4fea.json", + "name" : "BCBase_autogen_timestamp_deps", + "projectIndex" : 0 + }, + { + "directoryIndex" : 2, + "id" : "Common::@29aabc9fbfb9b5406d55", + "jsonFile" : "target-Common-Debug-2ad5fb95abe7e90e9794.json", + "name" : "Common", + "projectIndex" : 0 + }, + { + "directoryIndex" : 2, + "id" : "Common_autogen::@29aabc9fbfb9b5406d55", + "jsonFile" : "target-Common_autogen-Debug-7a9c97fb94c1a75c4478.json", + "name" : "Common_autogen", + "projectIndex" : 0 + }, + { + "directoryIndex" : 2, + "id" : "Common_autogen_timestamp_deps::@29aabc9fbfb9b5406d55", + "jsonFile" : "target-Common_autogen_timestamp_deps-Debug-c800ba80b03ae3ff837c.json", + "name" : "Common_autogen_timestamp_deps", + "projectIndex" : 0 + }, + { + "directoryIndex" : 12, + "id" : "ConfigOptions::@1c9d458e4038aca43955", + "jsonFile" : "target-ConfigOptions-Debug-ff8a87d6a0b432232f7b.json", + "name" : "ConfigOptions", + "projectIndex" : 0 + }, + { + "directoryIndex" : 12, + "id" : "ConfigOptions_autogen::@1c9d458e4038aca43955", + "jsonFile" : "target-ConfigOptions_autogen-Debug-0f028f409eab5bd73a58.json", + "name" : "ConfigOptions_autogen", + "projectIndex" : 0 + }, + { + "directoryIndex" : 12, + "id" : "ConfigOptions_autogen_timestamp_deps::@1c9d458e4038aca43955", + "jsonFile" : "target-ConfigOptions_autogen_timestamp_deps-Debug-53ed4ccb992a5e4cbc43.json", + "name" : "ConfigOptions_autogen_timestamp_deps", + "projectIndex" : 0 + }, + { + "directoryIndex" : 6, + "id" : "DataProperty::@ec84555ffa827036bc26", + "jsonFile" : "target-DataProperty-Debug-190bd1cfd1a97cd01ae2.json", + "name" : "DataProperty", + "projectIndex" : 0 + }, + { + "directoryIndex" : 6, + "id" : "DataProperty_autogen::@ec84555ffa827036bc26", + "jsonFile" : "target-DataProperty_autogen-Debug-4638356d3a0e008ba910.json", + "name" : "DataProperty_autogen", + "projectIndex" : 0 + }, + { + "directoryIndex" : 6, + "id" : "DataProperty_autogen_timestamp_deps::@ec84555ffa827036bc26", + "jsonFile" : "target-DataProperty_autogen_timestamp_deps-Debug-132f8d8c02350e7e52e1.json", + "name" : "DataProperty_autogen_timestamp_deps", + "projectIndex" : 0 + }, + { + "directoryIndex" : 0, + "id" : "Doxygen::@6890427a1f51a3e7e1df", + "jsonFile" : "target-Doxygen-Debug-7c3db3ebfd982f23d512.json", + "name" : "Doxygen", + "projectIndex" : 0 + }, + { + "directoryIndex" : 10, + "id" : "Geometry::@b7b2e4191bc961e9afba", + "jsonFile" : "target-Geometry-Debug-db1a1175d1a0b7a8f351.json", + "name" : "Geometry", + "projectIndex" : 0 + }, + { + "directoryIndex" : 25, + "id" : "GeometryCommand::@d82e5b79e04a3b196df4", + "jsonFile" : "target-GeometryCommand-Debug-e7665f9611eab3eb73e1.json", + "name" : "GeometryCommand", + "projectIndex" : 0 + }, + { + "directoryIndex" : 25, + "id" : "GeometryCommand_autogen::@d82e5b79e04a3b196df4", + "jsonFile" : "target-GeometryCommand_autogen-Debug-56d273cbf7900b09f3d3.json", + "name" : "GeometryCommand_autogen", + "projectIndex" : 0 + }, + { + "directoryIndex" : 25, + "id" : "GeometryCommand_autogen_timestamp_deps::@d82e5b79e04a3b196df4", + "jsonFile" : "target-GeometryCommand_autogen_timestamp_deps-Debug-e53ab7fdc37f75042932.json", + "name" : "GeometryCommand_autogen_timestamp_deps", + "projectIndex" : 0 + }, + { + "directoryIndex" : 22, + "id" : "GeometryDataExchange::@d0ecc93579f777564da6", + "jsonFile" : "target-GeometryDataExchange-Debug-5d6ea264b5937e2f23f0.json", + "name" : "GeometryDataExchange", + "projectIndex" : 0 + }, + { + "directoryIndex" : 22, + "id" : "GeometryDataExchange_autogen::@d0ecc93579f777564da6", + "jsonFile" : "target-GeometryDataExchange_autogen-Debug-6c7fe286560717d76526.json", + "name" : "GeometryDataExchange_autogen", + "projectIndex" : 0 + }, + { + "directoryIndex" : 22, + "id" : "GeometryDataExchange_autogen_timestamp_deps::@d0ecc93579f777564da6", + "jsonFile" : "target-GeometryDataExchange_autogen_timestamp_deps-Debug-855d220c825b8f9cfc35.json", + "name" : "GeometryDataExchange_autogen_timestamp_deps", + "projectIndex" : 0 + }, + { + "directoryIndex" : 26, + "id" : "GeometryWidgets::@1fb7ae1802a587d65603", + "jsonFile" : "target-GeometryWidgets-Debug-6c94b9a64d9f27143666.json", + "name" : "GeometryWidgets", + "projectIndex" : 0 + }, + { + "directoryIndex" : 26, + "id" : "GeometryWidgets_autogen::@1fb7ae1802a587d65603", + "jsonFile" : "target-GeometryWidgets_autogen-Debug-393a3fe609df268019d7.json", + "name" : "GeometryWidgets_autogen", + "projectIndex" : 0 + }, + { + "directoryIndex" : 26, + "id" : "GeometryWidgets_autogen_timestamp_deps::@1fb7ae1802a587d65603", + "jsonFile" : "target-GeometryWidgets_autogen_timestamp_deps-Debug-241de3747242e8545ef0.json", + "name" : "GeometryWidgets_autogen_timestamp_deps", + "projectIndex" : 0 + }, + { + "directoryIndex" : 10, + "id" : "Geometry_autogen::@b7b2e4191bc961e9afba", + "jsonFile" : "target-Geometry_autogen-Debug-9c4188e39387e0abef81.json", + "name" : "Geometry_autogen", + "projectIndex" : 0 + }, + { + "directoryIndex" : 10, + "id" : "Geometry_autogen_timestamp_deps::@b7b2e4191bc961e9afba", + "jsonFile" : "target-Geometry_autogen_timestamp_deps-Debug-99c4d4fa63338ef30171.json", + "name" : "Geometry_autogen_timestamp_deps", + "projectIndex" : 0 + }, + { + "directoryIndex" : 28, + "id" : "GmshModule::@044d5c74ec3efe84c474", + "jsonFile" : "target-GmshModule-Debug-5e78905b6525182a5524.json", + "name" : "GmshModule", + "projectIndex" : 0 + }, + { + "directoryIndex" : 28, + "id" : "GmshModule_autogen::@044d5c74ec3efe84c474", + "jsonFile" : "target-GmshModule_autogen-Debug-509ee9ef7a5ae4da2083.json", + "name" : "GmshModule_autogen", + "projectIndex" : 0 + }, + { + "directoryIndex" : 28, + "id" : "GmshModule_autogen_timestamp_deps::@044d5c74ec3efe84c474", + "jsonFile" : "target-GmshModule_autogen_timestamp_deps-Debug-6afa7032252f83243033.json", + "name" : "GmshModule_autogen_timestamp_deps", + "projectIndex" : 0 + }, + { + "directoryIndex" : 29, + "id" : "IO::@484b42e69e32e953bc79", + "jsonFile" : "target-IO-Debug-f80106a685279877c218.json", + "name" : "IO", + "projectIndex" : 0 + }, + { + "directoryIndex" : 29, + "id" : "IO_autogen::@484b42e69e32e953bc79", + "jsonFile" : "target-IO_autogen-Debug-22c115c696c207a789e7.json", + "name" : "IO_autogen", + "projectIndex" : 0 + }, + { + "directoryIndex" : 29, + "id" : "IO_autogen_timestamp_deps::@484b42e69e32e953bc79", + "jsonFile" : "target-IO_autogen_timestamp_deps-Debug-d6711c1a2e45884b1c54.json", + "name" : "IO_autogen_timestamp_deps", + "projectIndex" : 0 + }, + { + "directoryIndex" : 34, + "id" : "LAMPCAE::@1d4d21e91c20b8980f28", + "jsonFile" : "target-LAMPCAE-Debug-928c22974a3b8f666c79.json", + "name" : "LAMPCAE", + "projectIndex" : 0 + }, + { + "directoryIndex" : 34, + "id" : "LAMPCAE_autogen::@1d4d21e91c20b8980f28", + "jsonFile" : "target-LAMPCAE_autogen-Debug-0d0b1d60871bafd8bc8e.json", + "name" : "LAMPCAE_autogen", + "projectIndex" : 0 + }, + { + "directoryIndex" : 34, + "id" : "LAMPCAE_autogen_timestamp_deps::@1d4d21e91c20b8980f28", + "jsonFile" : "target-LAMPCAE_autogen_timestamp_deps-Debug-dfa2f593c461c633ffef.json", + "name" : "LAMPCAE_autogen_timestamp_deps", + "projectIndex" : 0 + }, + { + "directoryIndex" : 31, + "id" : "MainWidgets::@d0895ea365458bd7f948", + "jsonFile" : "target-MainWidgets-Debug-f8e8121f47f37f333d97.json", + "name" : "MainWidgets", + "projectIndex" : 0 + }, + { + "directoryIndex" : 31, + "id" : "MainWidgets_autogen::@d0895ea365458bd7f948", + "jsonFile" : "target-MainWidgets_autogen-Debug-592aaa8f401193823229.json", + "name" : "MainWidgets_autogen", + "projectIndex" : 0 + }, + { + "directoryIndex" : 31, + "id" : "MainWidgets_autogen_timestamp_deps::@d0895ea365458bd7f948", + "jsonFile" : "target-MainWidgets_autogen_timestamp_deps-Debug-e7abf9d8f80a28535921.json", + "name" : "MainWidgets_autogen_timestamp_deps", + "projectIndex" : 0 + }, + { + "directoryIndex" : 33, + "id" : "MainWindow::@c380e645ecc921453605", + "jsonFile" : "target-MainWindow-Debug-44755f896a47b1dbc6f9.json", + "name" : "MainWindow", + "projectIndex" : 0 + }, + { + "directoryIndex" : 33, + "id" : "MainWindow_autogen::@c380e645ecc921453605", + "jsonFile" : "target-MainWindow_autogen-Debug-d639ea465a87551a348e.json", + "name" : "MainWindow_autogen", + "projectIndex" : 0 + }, + { + "directoryIndex" : 33, + "id" : "MainWindow_autogen_timestamp_deps::@c380e645ecc921453605", + "jsonFile" : "target-MainWindow_autogen_timestamp_deps-Debug-c0405d9ecaf5d33d7de1.json", + "name" : "MainWindow_autogen_timestamp_deps", + "projectIndex" : 0 + }, + { + "directoryIndex" : 9, + "id" : "Material::@05d68cd248c3246409d7", + "jsonFile" : "target-Material-Debug-5eb547a9a882c93cd5b5.json", + "name" : "Material", + "projectIndex" : 0 + }, + { + "directoryIndex" : 9, + "id" : "Material_autogen::@05d68cd248c3246409d7", + "jsonFile" : "target-Material_autogen-Debug-3a16fd19d6edcf795fc2.json", + "name" : "Material_autogen", + "projectIndex" : 0 + }, + { + "directoryIndex" : 9, + "id" : "Material_autogen_timestamp_deps::@05d68cd248c3246409d7", + "jsonFile" : "target-Material_autogen_timestamp_deps-Debug-0a3c394b1d68fcc91773.json", + "name" : "Material_autogen_timestamp_deps", + "projectIndex" : 0 + }, + { + "directoryIndex" : 7, + "id" : "MeshData::@2f0f676dafab302b2d20", + "jsonFile" : "target-MeshData-Debug-88542b4f910e26b63a07.json", + "name" : "MeshData", + "projectIndex" : 0 + }, + { + "directoryIndex" : 7, + "id" : "MeshData_autogen::@2f0f676dafab302b2d20", + "jsonFile" : "target-MeshData_autogen-Debug-22ffdb3b77f8b12d1947.json", + "name" : "MeshData_autogen", + "projectIndex" : 0 + }, + { + "directoryIndex" : 7, + "id" : "MeshData_autogen_timestamp_deps::@2f0f676dafab302b2d20", + "jsonFile" : "target-MeshData_autogen_timestamp_deps-Debug-ad6eb797f824e0a838c7.json", + "name" : "MeshData_autogen_timestamp_deps", + "projectIndex" : 0 + }, + { + "directoryIndex" : 14, + "id" : "ModelData::@8a6b2d9535e8b6cb6800", + "jsonFile" : "target-ModelData-Debug-b7303bcf30f6288fb65c.json", + "name" : "ModelData", + "projectIndex" : 0 + }, + { + "directoryIndex" : 14, + "id" : "ModelData_autogen::@8a6b2d9535e8b6cb6800", + "jsonFile" : "target-ModelData_autogen-Debug-ca819f71b5a06fcc789a.json", + "name" : "ModelData_autogen", + "projectIndex" : 0 + }, + { + "directoryIndex" : 14, + "id" : "ModelData_autogen_timestamp_deps::@8a6b2d9535e8b6cb6800", + "jsonFile" : "target-ModelData_autogen_timestamp_deps-Debug-8dd7d80923bbd845d8b2.json", + "name" : "ModelData_autogen_timestamp_deps", + "projectIndex" : 0 + }, + { + "directoryIndex" : 15, + "id" : "ModuleBase::@53e1b14bc3636b2ea9de", + "jsonFile" : "target-ModuleBase-Debug-7833b55ca88869f4c47f.json", + "name" : "ModuleBase", + "projectIndex" : 0 + }, + { + "directoryIndex" : 15, + "id" : "ModuleBase_autogen::@53e1b14bc3636b2ea9de", + "jsonFile" : "target-ModuleBase_autogen-Debug-8042b02a7063075a047f.json", + "name" : "ModuleBase_autogen", + "projectIndex" : 0 + }, + { + "directoryIndex" : 15, + "id" : "ModuleBase_autogen_timestamp_deps::@53e1b14bc3636b2ea9de", + "jsonFile" : "target-ModuleBase_autogen_timestamp_deps-Debug-4a476fbc7e9396f79643.json", + "name" : "ModuleBase_autogen_timestamp_deps", + "projectIndex" : 0 + }, + { + "directoryIndex" : 13, + "id" : "ParaClassFactory::@d0ebb167002da5b45d84", + "jsonFile" : "target-ParaClassFactory-Debug-dfe56ff80bdc85aeee0c.json", + "name" : "ParaClassFactory", + "projectIndex" : 0 + }, + { + "directoryIndex" : 13, + "id" : "ParaClassFactory_autogen::@d0ebb167002da5b45d84", + "jsonFile" : "target-ParaClassFactory_autogen-Debug-69b7aca5849f82b0b0aa.json", + "name" : "ParaClassFactory_autogen", + "projectIndex" : 0 + }, + { + "directoryIndex" : 13, + "id" : "ParaClassFactory_autogen_timestamp_deps::@d0ebb167002da5b45d84", + "jsonFile" : "target-ParaClassFactory_autogen_timestamp_deps-Debug-46030b22a5aa0b5a1381.json", + "name" : "ParaClassFactory_autogen_timestamp_deps", + "projectIndex" : 0 + }, + { + "directoryIndex" : 35, + "id" : "PluginCustomizer::@5fa4d6e31c64d49d269b", + "jsonFile" : "target-PluginCustomizer-Debug-0f948f4908d1c9eab8b8.json", + "name" : "PluginCustomizer", + "projectIndex" : 0 + }, + { + "directoryIndex" : 35, + "id" : "PluginCustomizer_autogen::@5fa4d6e31c64d49d269b", + "jsonFile" : "target-PluginCustomizer_autogen-Debug-2812c6c3f3d05883a603.json", + "name" : "PluginCustomizer_autogen", + "projectIndex" : 0 + }, + { + "directoryIndex" : 35, + "id" : "PluginCustomizer_autogen_timestamp_deps::@5fa4d6e31c64d49d269b", + "jsonFile" : "target-PluginCustomizer_autogen_timestamp_deps-Debug-60973f2e3d995049838b.json", + "name" : "PluginCustomizer_autogen_timestamp_deps", + "projectIndex" : 0 + }, + { + "directoryIndex" : 27, + "id" : "PluginManager::@d6a357cdda12b0c888b1", + "jsonFile" : "target-PluginManager-Debug-755ce2dd42422dcee2f8.json", + "name" : "PluginManager", + "projectIndex" : 0 + }, + { + "directoryIndex" : 27, + "id" : "PluginManager_autogen::@d6a357cdda12b0c888b1", + "jsonFile" : "target-PluginManager_autogen-Debug-ee1b7178c11752bbf1c0.json", + "name" : "PluginManager_autogen", + "projectIndex" : 0 + }, + { + "directoryIndex" : 27, + "id" : "PluginManager_autogen_timestamp_deps::@d6a357cdda12b0c888b1", + "jsonFile" : "target-PluginManager_autogen_timestamp_deps-Debug-d0381371d1aa76811c59.json", + "name" : "PluginManager_autogen_timestamp_deps", + "projectIndex" : 0 + }, + { + "directoryIndex" : 36, + "id" : "PluginMeshDataExchange::@b3cc41d3de9d0b479d36", + "jsonFile" : "target-PluginMeshDataExchange-Debug-0c4480496742435080da.json", + "name" : "PluginMeshDataExchange", + "projectIndex" : 0 + }, + { + "directoryIndex" : 36, + "id" : "PluginMeshDataExchange_autogen::@b3cc41d3de9d0b479d36", + "jsonFile" : "target-PluginMeshDataExchange_autogen-Debug-3ccfe21a7a9c5c090bf0.json", + "name" : "PluginMeshDataExchange_autogen", + "projectIndex" : 0 + }, + { + "directoryIndex" : 36, + "id" : "PluginMeshDataExchange_autogen_timestamp_deps::@b3cc41d3de9d0b479d36", + "jsonFile" : "target-PluginMeshDataExchange_autogen_timestamp_deps-Debug-d5be7669b02c7bdfa374.json", + "name" : "PluginMeshDataExchange_autogen_timestamp_deps", + "projectIndex" : 0 + }, + { + "directoryIndex" : 16, + "id" : "PostAlgorithm::@d527967401306b818905", + "jsonFile" : "target-PostAlgorithm-Debug-ec3da06ebd5001e51f61.json", + "name" : "PostAlgorithm", + "projectIndex" : 0 + }, + { + "directoryIndex" : 16, + "id" : "PostAlgorithm_autogen::@d527967401306b818905", + "jsonFile" : "target-PostAlgorithm_autogen-Debug-0861aa8a82e0acf36e01.json", + "name" : "PostAlgorithm_autogen", + "projectIndex" : 0 + }, + { + "directoryIndex" : 16, + "id" : "PostAlgorithm_autogen_timestamp_deps::@d527967401306b818905", + "jsonFile" : "target-PostAlgorithm_autogen_timestamp_deps-Debug-6945a732d8452980c390.json", + "name" : "PostAlgorithm_autogen_timestamp_deps", + "projectIndex" : 0 + }, + { + "directoryIndex" : 19, + "id" : "PostCurveDataManager::@1562c6ae2d37fb33544b", + "jsonFile" : "target-PostCurveDataManager-Debug-b7ed0d2c648b1281cac4.json", + "name" : "PostCurveDataManager", + "projectIndex" : 0 + }, + { + "directoryIndex" : 19, + "id" : "PostCurveDataManager_autogen::@1562c6ae2d37fb33544b", + "jsonFile" : "target-PostCurveDataManager_autogen-Debug-727985a535e65b59ad2e.json", + "name" : "PostCurveDataManager_autogen", + "projectIndex" : 0 + }, + { + "directoryIndex" : 19, + "id" : "PostCurveDataManager_autogen_timestamp_deps::@1562c6ae2d37fb33544b", + "jsonFile" : "target-PostCurveDataManager_autogen_timestamp_deps-Debug-8d9d8030c97419083413.json", + "name" : "PostCurveDataManager_autogen_timestamp_deps", + "projectIndex" : 0 + }, + { + "directoryIndex" : 18, + "id" : "PostInterface::@38fb729d68510c1489c9", + "jsonFile" : "target-PostInterface-Debug-322491428ba469c003e2.json", + "name" : "PostInterface", + "projectIndex" : 0 + }, + { + "directoryIndex" : 18, + "id" : "PostInterface_autogen::@38fb729d68510c1489c9", + "jsonFile" : "target-PostInterface_autogen-Debug-1d65f102a2d63a3c451a.json", + "name" : "PostInterface_autogen", + "projectIndex" : 0 + }, + { + "directoryIndex" : 18, + "id" : "PostInterface_autogen_timestamp_deps::@38fb729d68510c1489c9", + "jsonFile" : "target-PostInterface_autogen_timestamp_deps-Debug-4fe15b4d2497d788318d.json", + "name" : "PostInterface_autogen_timestamp_deps", + "projectIndex" : 0 + }, + { + "directoryIndex" : 20, + "id" : "PostPlotWidget::@d1bc8a76442dff50f241", + "jsonFile" : "target-PostPlotWidget-Debug-48dff7a72d1b23e5c9d9.json", + "name" : "PostPlotWidget", + "projectIndex" : 0 + }, + { + "directoryIndex" : 20, + "id" : "PostPlotWidget_autogen::@d1bc8a76442dff50f241", + "jsonFile" : "target-PostPlotWidget_autogen-Debug-647111ef80ab4cde3314.json", + "name" : "PostPlotWidget_autogen", + "projectIndex" : 0 + }, + { + "directoryIndex" : 20, + "id" : "PostPlotWidget_autogen_timestamp_deps::@d1bc8a76442dff50f241", + "jsonFile" : "target-PostPlotWidget_autogen_timestamp_deps-Debug-02e10c43fac702728a9a.json", + "name" : "PostPlotWidget_autogen_timestamp_deps", + "projectIndex" : 0 + }, + { + "directoryIndex" : 17, + "id" : "PostRenderData::@ce9c2f9a6cca9038fdeb", + "jsonFile" : "target-PostRenderData-Debug-9bc3e88ef91e18f61eca.json", + "name" : "PostRenderData", + "projectIndex" : 0 + }, + { + "directoryIndex" : 17, + "id" : "PostRenderData_autogen::@ce9c2f9a6cca9038fdeb", + "jsonFile" : "target-PostRenderData_autogen-Debug-5667dc414f67aff32c20.json", + "name" : "PostRenderData_autogen", + "projectIndex" : 0 + }, + { + "directoryIndex" : 17, + "id" : "PostRenderData_autogen_timestamp_deps::@ce9c2f9a6cca9038fdeb", + "jsonFile" : "target-PostRenderData_autogen_timestamp_deps-Debug-9674524f44927d617d04.json", + "name" : "PostRenderData_autogen_timestamp_deps", + "projectIndex" : 0 + }, + { + "directoryIndex" : 21, + "id" : "PostWidgets::@93a5592897f957e6fa57", + "jsonFile" : "target-PostWidgets-Debug-06d84294f779838e50f9.json", + "name" : "PostWidgets", + "projectIndex" : 0 + }, + { + "directoryIndex" : 21, + "id" : "PostWidgets_autogen::@93a5592897f957e6fa57", + "jsonFile" : "target-PostWidgets_autogen-Debug-df90bd2e74782b99833d.json", + "name" : "PostWidgets_autogen", + "projectIndex" : 0 + }, + { + "directoryIndex" : 21, + "id" : "PostWidgets_autogen_timestamp_deps::@93a5592897f957e6fa57", + "jsonFile" : "target-PostWidgets_autogen_timestamp_deps-Debug-fae109ac3554477c847b.json", + "name" : "PostWidgets_autogen_timestamp_deps", + "projectIndex" : 0 + }, + { + "directoryIndex" : 23, + "id" : "ProjectTree::@43c6c7ebae2b88a99cdb", + "jsonFile" : "target-ProjectTree-Debug-ae655f9358b07b0db3a5.json", + "name" : "ProjectTree", + "projectIndex" : 0 + }, + { + "directoryIndex" : 24, + "id" : "ProjectTreeExtend::@f2791e4784919f40d89d", + "jsonFile" : "target-ProjectTreeExtend-Debug-c97d2c16aa8719582815.json", + "name" : "ProjectTreeExtend", + "projectIndex" : 0 + }, + { + "directoryIndex" : 24, + "id" : "ProjectTreeExtend_autogen::@f2791e4784919f40d89d", + "jsonFile" : "target-ProjectTreeExtend_autogen-Debug-1f90c671bc251ce5a28b.json", + "name" : "ProjectTreeExtend_autogen", + "projectIndex" : 0 + }, + { + "directoryIndex" : 24, + "id" : "ProjectTreeExtend_autogen_timestamp_deps::@f2791e4784919f40d89d", + "jsonFile" : "target-ProjectTreeExtend_autogen_timestamp_deps-Debug-9cf59e40cdacd18dfb49.json", + "name" : "ProjectTreeExtend_autogen_timestamp_deps", + "projectIndex" : 0 + }, + { + "directoryIndex" : 23, + "id" : "ProjectTree_autogen::@43c6c7ebae2b88a99cdb", + "jsonFile" : "target-ProjectTree_autogen-Debug-aacc1fa8f685d0a8a59c.json", + "name" : "ProjectTree_autogen", + "projectIndex" : 0 + }, + { + "directoryIndex" : 23, + "id" : "ProjectTree_autogen_timestamp_deps::@43c6c7ebae2b88a99cdb", + "jsonFile" : "target-ProjectTree_autogen_timestamp_deps-Debug-90b72032cac148ad9743.json", + "name" : "ProjectTree_autogen_timestamp_deps", + "projectIndex" : 0 + }, + { + "directoryIndex" : 3, + "id" : "PythonModule::@c600c49a22fbbbfcb8ff", + "jsonFile" : "target-PythonModule-Debug-fd698a7d66a6c747bf3a.json", + "name" : "PythonModule", + "projectIndex" : 0 + }, + { + "directoryIndex" : 3, + "id" : "PythonModule_autogen::@c600c49a22fbbbfcb8ff", + "jsonFile" : "target-PythonModule_autogen-Debug-eea898c2e7cd943098a2.json", + "name" : "PythonModule_autogen", + "projectIndex" : 0 + }, + { + "directoryIndex" : 3, + "id" : "PythonModule_autogen_timestamp_deps::@c600c49a22fbbbfcb8ff", + "jsonFile" : "target-PythonModule_autogen_timestamp_deps-Debug-962356fa62c85c36765e.json", + "name" : "PythonModule_autogen_timestamp_deps", + "projectIndex" : 0 + }, + { + "directoryIndex" : 4, + "id" : "SARibbonBar::@f61b241723ced025d0ef", + "jsonFile" : "target-SARibbonBar-Debug-c665fea387b990826aed.json", + "name" : "SARibbonBar", + "projectIndex" : 0 + }, + { + "directoryIndex" : 4, + "id" : "SARibbonBar_autogen::@f61b241723ced025d0ef", + "jsonFile" : "target-SARibbonBar_autogen-Debug-814fabc12a6d548fd856.json", + "name" : "SARibbonBar_autogen", + "projectIndex" : 0 + }, + { + "directoryIndex" : 4, + "id" : "SARibbonBar_autogen_timestamp_deps::@f61b241723ced025d0ef", + "jsonFile" : "target-SARibbonBar_autogen_timestamp_deps-Debug-844ac52f6fa9689c11e1.json", + "name" : "SARibbonBar_autogen_timestamp_deps", + "projectIndex" : 0 + }, + { + "directoryIndex" : 8, + "id" : "SelfDefObject::@17d93127ede5f3b478ed", + "jsonFile" : "target-SelfDefObject-Debug-0a0a430956354cae4d00.json", + "name" : "SelfDefObject", + "projectIndex" : 0 + }, + { + "directoryIndex" : 8, + "id" : "SelfDefObject_autogen::@17d93127ede5f3b478ed", + "jsonFile" : "target-SelfDefObject_autogen-Debug-136452b2a8a8b2d57369.json", + "name" : "SelfDefObject_autogen", + "projectIndex" : 0 + }, + { + "directoryIndex" : 8, + "id" : "SelfDefObject_autogen_timestamp_deps::@17d93127ede5f3b478ed", + "jsonFile" : "target-SelfDefObject_autogen_timestamp_deps-Debug-0f063a5e80f0f7312065.json", + "name" : "SelfDefObject_autogen_timestamp_deps", + "projectIndex" : 0 + }, + { + "directoryIndex" : 5, + "id" : "Settings::@733e6871ef4a824e534d", + "jsonFile" : "target-Settings-Debug-679ee3a5d5a360adc2ed.json", + "name" : "Settings", + "projectIndex" : 0 + }, + { + "directoryIndex" : 5, + "id" : "Settings_autogen::@733e6871ef4a824e534d", + "jsonFile" : "target-Settings_autogen-Debug-82a028e5e8bab467dc02.json", + "name" : "Settings_autogen", + "projectIndex" : 0 + }, + { + "directoryIndex" : 5, + "id" : "Settings_autogen_timestamp_deps::@733e6871ef4a824e534d", + "jsonFile" : "target-Settings_autogen_timestamp_deps-Debug-10760dfb04a7ccf0a99b.json", + "name" : "Settings_autogen_timestamp_deps", + "projectIndex" : 0 + }, + { + "directoryIndex" : 30, + "id" : "SolverControl::@4a18b637ce8bf6991ec0", + "jsonFile" : "target-SolverControl-Debug-0a504d50d19bbd8d63a5.json", + "name" : "SolverControl", + "projectIndex" : 0 + }, + { + "directoryIndex" : 30, + "id" : "SolverControl_autogen::@4a18b637ce8bf6991ec0", + "jsonFile" : "target-SolverControl_autogen-Debug-fd4fed30b702707b5aa3.json", + "name" : "SolverControl_autogen", + "projectIndex" : 0 + }, + { + "directoryIndex" : 30, + "id" : "SolverControl_autogen_timestamp_deps::@4a18b637ce8bf6991ec0", + "jsonFile" : "target-SolverControl_autogen_timestamp_deps-Debug-9f9b8da9be97a5cf17ab.json", + "name" : "SolverControl_autogen_timestamp_deps", + "projectIndex" : 0 + }, + { + "directoryIndex" : 32, + "id" : "UserGuidence::@40175f0e8ac13e21fe7c", + "jsonFile" : "target-UserGuidence-Debug-b2ad728d7cda2c217487.json", + "name" : "UserGuidence", + "projectIndex" : 0 + }, + { + "directoryIndex" : 32, + "id" : "UserGuidence_autogen::@40175f0e8ac13e21fe7c", + "jsonFile" : "target-UserGuidence_autogen-Debug-f95f6abacacf44ef7ec9.json", + "name" : "UserGuidence_autogen", + "projectIndex" : 0 + }, + { + "directoryIndex" : 32, + "id" : "UserGuidence_autogen_timestamp_deps::@40175f0e8ac13e21fe7c", + "jsonFile" : "target-UserGuidence_autogen_timestamp_deps-Debug-6bd0d217bb37b698b434.json", + "name" : "UserGuidence_autogen_timestamp_deps", + "projectIndex" : 0 + } + ] + } + ], + "kind" : "codemodel", + "paths" : + { + "build" : "D:/WBFZCPP/source/FastCAE/out/build", + "source" : "D:/WBFZCPP/source/FastCAE" + }, + "version" : + { + "major" : 2, + "minor" : 6 + } +} diff --git a/out/build/.cmake/api/v1/reply/directory-.-Debug-d0094a50bb2071803777.json b/out/build/.cmake/api/v1/reply/directory-.-Debug-d0094a50bb2071803777.json new file mode 100644 index 0000000..3a67af9 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/directory-.-Debug-d0094a50bb2071803777.json @@ -0,0 +1,14 @@ +{ + "backtraceGraph" : + { + "commands" : [], + "files" : [], + "nodes" : [] + }, + "installers" : [], + "paths" : + { + "build" : ".", + "source" : "." + } +} diff --git a/out/build/.cmake/api/v1/reply/directory-src-Debug-f4eac5f7c5c995a2fc37.json b/out/build/.cmake/api/v1/reply/directory-src-Debug-f4eac5f7c5c995a2fc37.json new file mode 100644 index 0000000..870642d --- /dev/null +++ b/out/build/.cmake/api/v1/reply/directory-src-Debug-f4eac5f7c5c995a2fc37.json @@ -0,0 +1,1173 @@ +{ + "backtraceGraph" : + { + "commands" : + [ + "install" + ], + "files" : + [ + "src/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 58, + "parent" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 78, + "parent" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 87, + "parent" : 0 + } + ] + }, + "installers" : + [ + { + "backtrace" : 1, + "component" : "bin", + "destination" : "bin", + "paths" : + [ + "Debug/Common.dll" + ], + "targetId" : "Common::@29aabc9fbfb9b5406d55", + "targetIndex" : 3, + "type" : "target" + }, + { + "backtrace" : 1, + "component" : "bin", + "destination" : "bin", + "paths" : + [ + "Debug/PythonModule.dll" + ], + "targetId" : "PythonModule::@c600c49a22fbbbfcb8ff", + "targetIndex" : 88, + "type" : "target" + }, + { + "backtrace" : 1, + "component" : "bin", + "destination" : "bin", + "paths" : + [ + "Debug/SARibbonBar.dll" + ], + "targetId" : "SARibbonBar::@f61b241723ced025d0ef", + "targetIndex" : 91, + "type" : "target" + }, + { + "backtrace" : 1, + "component" : "bin", + "destination" : "bin", + "paths" : + [ + "Debug/Settings.dll" + ], + "targetId" : "Settings::@733e6871ef4a824e534d", + "targetIndex" : 97, + "type" : "target" + }, + { + "backtrace" : 1, + "component" : "bin", + "destination" : "bin", + "paths" : + [ + "Debug/DataProperty.dll" + ], + "targetId" : "DataProperty::@ec84555ffa827036bc26", + "targetIndex" : 9, + "type" : "target" + }, + { + "backtrace" : 1, + "component" : "bin", + "destination" : "bin", + "paths" : + [ + "Debug/MeshData.dll" + ], + "targetId" : "MeshData::@2f0f676dafab302b2d20", + "targetIndex" : 43, + "type" : "target" + }, + { + "backtrace" : 1, + "component" : "bin", + "destination" : "bin", + "paths" : + [ + "Debug/SelfDefObject.dll" + ], + "targetId" : "SelfDefObject::@17d93127ede5f3b478ed", + "targetIndex" : 94, + "type" : "target" + }, + { + "backtrace" : 1, + "component" : "bin", + "destination" : "bin", + "paths" : + [ + "Debug/Material.dll" + ], + "targetId" : "Material::@05d68cd248c3246409d7", + "targetIndex" : 40, + "type" : "target" + }, + { + "backtrace" : 1, + "component" : "bin", + "destination" : "bin", + "paths" : + [ + "Debug/Geometry.dll" + ], + "targetId" : "Geometry::@b7b2e4191bc961e9afba", + "targetIndex" : 13, + "type" : "target" + }, + { + "backtrace" : 1, + "component" : "bin", + "destination" : "bin", + "paths" : + [ + "Debug/BCBase.dll" + ], + "targetId" : "BCBase::@baf13bdd6bef809f2182", + "targetIndex" : 0, + "type" : "target" + }, + { + "backtrace" : 1, + "component" : "bin", + "destination" : "bin", + "paths" : + [ + "Debug/ConfigOptions.dll" + ], + "targetId" : "ConfigOptions::@1c9d458e4038aca43955", + "targetIndex" : 6, + "type" : "target" + }, + { + "backtrace" : 1, + "component" : "bin", + "destination" : "bin", + "paths" : + [ + "Debug/ParaClassFactory.dll" + ], + "targetId" : "ParaClassFactory::@d0ebb167002da5b45d84", + "targetIndex" : 52, + "type" : "target" + }, + { + "backtrace" : 1, + "component" : "bin", + "destination" : "bin", + "paths" : + [ + "Debug/ModelData.dll" + ], + "targetId" : "ModelData::@8a6b2d9535e8b6cb6800", + "targetIndex" : 46, + "type" : "target" + }, + { + "backtrace" : 1, + "component" : "bin", + "destination" : "bin", + "paths" : + [ + "Debug/ModuleBase.dll" + ], + "targetId" : "ModuleBase::@53e1b14bc3636b2ea9de", + "targetIndex" : 49, + "type" : "target" + }, + { + "backtrace" : 1, + "component" : "bin", + "destination" : "bin", + "paths" : + [ + "Debug/PostAlgorithm.dll" + ], + "targetId" : "PostAlgorithm::@d527967401306b818905", + "targetIndex" : 64, + "type" : "target" + }, + { + "backtrace" : 1, + "component" : "bin", + "destination" : "bin", + "paths" : + [ + "Debug/PostRenderData.dll" + ], + "targetId" : "PostRenderData::@ce9c2f9a6cca9038fdeb", + "targetIndex" : 76, + "type" : "target" + }, + { + "backtrace" : 1, + "component" : "bin", + "destination" : "bin", + "paths" : + [ + "Debug/PostInterface.dll" + ], + "targetId" : "PostInterface::@38fb729d68510c1489c9", + "targetIndex" : 70, + "type" : "target" + }, + { + "backtrace" : 1, + "component" : "bin", + "destination" : "bin", + "paths" : + [ + "Debug/PostCurveDataManager.dll" + ], + "targetId" : "PostCurveDataManager::@1562c6ae2d37fb33544b", + "targetIndex" : 67, + "type" : "target" + }, + { + "backtrace" : 1, + "component" : "bin", + "destination" : "bin", + "paths" : + [ + "Debug/PostPlotWidget.dll" + ], + "targetId" : "PostPlotWidget::@d1bc8a76442dff50f241", + "targetIndex" : 73, + "type" : "target" + }, + { + "backtrace" : 1, + "component" : "bin", + "destination" : "bin", + "paths" : + [ + "Debug/PostWidgets.dll" + ], + "targetId" : "PostWidgets::@93a5592897f957e6fa57", + "targetIndex" : 79, + "type" : "target" + }, + { + "backtrace" : 1, + "component" : "bin", + "destination" : "bin", + "paths" : + [ + "Debug/GeometryDataExchange.dll" + ], + "targetId" : "GeometryDataExchange::@d0ecc93579f777564da6", + "targetIndex" : 17, + "type" : "target" + }, + { + "backtrace" : 1, + "component" : "bin", + "destination" : "bin", + "paths" : + [ + "Debug/ProjectTree.dll" + ], + "targetId" : "ProjectTree::@43c6c7ebae2b88a99cdb", + "targetIndex" : 82, + "type" : "target" + }, + { + "backtrace" : 1, + "component" : "bin", + "destination" : "bin", + "paths" : + [ + "Debug/ProjectTreeExtend.dll" + ], + "targetId" : "ProjectTreeExtend::@f2791e4784919f40d89d", + "targetIndex" : 83, + "type" : "target" + }, + { + "backtrace" : 1, + "component" : "bin", + "destination" : "bin", + "paths" : + [ + "Debug/GeometryCommand.dll" + ], + "targetId" : "GeometryCommand::@d82e5b79e04a3b196df4", + "targetIndex" : 14, + "type" : "target" + }, + { + "backtrace" : 1, + "component" : "bin", + "destination" : "bin", + "paths" : + [ + "Debug/GeometryWidgets.dll" + ], + "targetId" : "GeometryWidgets::@1fb7ae1802a587d65603", + "targetIndex" : 20, + "type" : "target" + }, + { + "backtrace" : 1, + "component" : "bin", + "destination" : "bin", + "paths" : + [ + "Debug/PluginManager.dll" + ], + "targetId" : "PluginManager::@d6a357cdda12b0c888b1", + "targetIndex" : 58, + "type" : "target" + }, + { + "backtrace" : 1, + "component" : "bin", + "destination" : "bin", + "paths" : + [ + "Debug/GmshModule.dll" + ], + "targetId" : "GmshModule::@044d5c74ec3efe84c474", + "targetIndex" : 25, + "type" : "target" + }, + { + "backtrace" : 1, + "component" : "bin", + "destination" : "bin", + "paths" : + [ + "Debug/IO.dll" + ], + "targetId" : "IO::@484b42e69e32e953bc79", + "targetIndex" : 28, + "type" : "target" + }, + { + "backtrace" : 1, + "component" : "bin", + "destination" : "bin", + "paths" : + [ + "Debug/SolverControl.dll" + ], + "targetId" : "SolverControl::@4a18b637ce8bf6991ec0", + "targetIndex" : 100, + "type" : "target" + }, + { + "backtrace" : 1, + "component" : "bin", + "destination" : "bin", + "paths" : + [ + "Debug/MainWidgets.dll" + ], + "targetId" : "MainWidgets::@d0895ea365458bd7f948", + "targetIndex" : 34, + "type" : "target" + }, + { + "backtrace" : 1, + "component" : "bin", + "destination" : "bin", + "paths" : + [ + "Debug/UserGuidence.dll" + ], + "targetId" : "UserGuidence::@40175f0e8ac13e21fe7c", + "targetIndex" : 103, + "type" : "target" + }, + { + "backtrace" : 1, + "component" : "bin", + "destination" : "bin", + "paths" : + [ + "Debug/MainWindow.dll" + ], + "targetId" : "MainWindow::@c380e645ecc921453605", + "targetIndex" : 37, + "type" : "target" + }, + { + "backtrace" : 1, + "component" : "bin", + "destination" : "bin", + "paths" : + [ + "Debug/LAMPCAE.exe" + ], + "targetId" : "LAMPCAE::@1d4d21e91c20b8980f28", + "targetIndex" : 31, + "type" : "target" + }, + { + "backtrace" : 1, + "component" : "bin", + "destination" : "bin", + "paths" : + [ + "Debug/LAMPCAE.exe" + ], + "targetId" : "LAMPCAE::@1d4d21e91c20b8980f28", + "targetIndex" : 31, + "type" : "target" + }, + { + "backtrace" : 2, + "component" : "Unspecified", + "destination" : "bin/plugins", + "paths" : + [ + "Debug/plugins/PluginCustomizer.dll" + ], + "targetId" : "PluginCustomizer::@5fa4d6e31c64d49d269b", + "targetIndex" : 55, + "type" : "target" + }, + { + "backtrace" : 2, + "component" : "Unspecified", + "destination" : "bin/plugins", + "paths" : + [ + "Debug/plugins/PluginMeshDataExchange.dll" + ], + "targetId" : "PluginMeshDataExchange::@b3cc41d3de9d0b479d36", + "targetIndex" : 61, + "type" : "target" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + }, + { + "backtrace" : 3, + "component" : "lib", + "destination" : "bin", + "type" : "importedRuntimeArtifacts" + } + ], + "paths" : + { + "build" : "src", + "source" : "src" + } +} diff --git a/out/build/.cmake/api/v1/reply/directory-src.BCBase-Debug-9e77281d0fa0abb8338d.json b/out/build/.cmake/api/v1/reply/directory-src.BCBase-Debug-9e77281d0fa0abb8338d.json new file mode 100644 index 0000000..29cef9d --- /dev/null +++ b/out/build/.cmake/api/v1/reply/directory-src.BCBase-Debug-9e77281d0fa0abb8338d.json @@ -0,0 +1,14 @@ +{ + "backtraceGraph" : + { + "commands" : [], + "files" : [], + "nodes" : [] + }, + "installers" : [], + "paths" : + { + "build" : "src/BCBase", + "source" : "src/BCBase" + } +} diff --git a/out/build/.cmake/api/v1/reply/directory-src.Common-Debug-555e2cf014f3c4041037.json b/out/build/.cmake/api/v1/reply/directory-src.Common-Debug-555e2cf014f3c4041037.json new file mode 100644 index 0000000..e208cbc --- /dev/null +++ b/out/build/.cmake/api/v1/reply/directory-src.Common-Debug-555e2cf014f3c4041037.json @@ -0,0 +1,14 @@ +{ + "backtraceGraph" : + { + "commands" : [], + "files" : [], + "nodes" : [] + }, + "installers" : [], + "paths" : + { + "build" : "src/Common", + "source" : "src/Common" + } +} diff --git a/out/build/.cmake/api/v1/reply/directory-src.ConfigOptions-Debug-b71c617a15753e1feef7.json b/out/build/.cmake/api/v1/reply/directory-src.ConfigOptions-Debug-b71c617a15753e1feef7.json new file mode 100644 index 0000000..3276820 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/directory-src.ConfigOptions-Debug-b71c617a15753e1feef7.json @@ -0,0 +1,14 @@ +{ + "backtraceGraph" : + { + "commands" : [], + "files" : [], + "nodes" : [] + }, + "installers" : [], + "paths" : + { + "build" : "src/ConfigOptions", + "source" : "src/ConfigOptions" + } +} diff --git a/out/build/.cmake/api/v1/reply/directory-src.DataProperty-Debug-e62b5094254465b8eae0.json b/out/build/.cmake/api/v1/reply/directory-src.DataProperty-Debug-e62b5094254465b8eae0.json new file mode 100644 index 0000000..5878691 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/directory-src.DataProperty-Debug-e62b5094254465b8eae0.json @@ -0,0 +1,14 @@ +{ + "backtraceGraph" : + { + "commands" : [], + "files" : [], + "nodes" : [] + }, + "installers" : [], + "paths" : + { + "build" : "src/DataProperty", + "source" : "src/DataProperty" + } +} diff --git a/out/build/.cmake/api/v1/reply/directory-src.Geometry-Debug-47abd9c13e3c83a6a38d.json b/out/build/.cmake/api/v1/reply/directory-src.Geometry-Debug-47abd9c13e3c83a6a38d.json new file mode 100644 index 0000000..6a18335 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/directory-src.Geometry-Debug-47abd9c13e3c83a6a38d.json @@ -0,0 +1,14 @@ +{ + "backtraceGraph" : + { + "commands" : [], + "files" : [], + "nodes" : [] + }, + "installers" : [], + "paths" : + { + "build" : "src/Geometry", + "source" : "src/Geometry" + } +} diff --git a/out/build/.cmake/api/v1/reply/directory-src.GeometryCommand-Debug-b092980e631bf26eb184.json b/out/build/.cmake/api/v1/reply/directory-src.GeometryCommand-Debug-b092980e631bf26eb184.json new file mode 100644 index 0000000..7693157 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/directory-src.GeometryCommand-Debug-b092980e631bf26eb184.json @@ -0,0 +1,14 @@ +{ + "backtraceGraph" : + { + "commands" : [], + "files" : [], + "nodes" : [] + }, + "installers" : [], + "paths" : + { + "build" : "src/GeometryCommand", + "source" : "src/GeometryCommand" + } +} diff --git a/out/build/.cmake/api/v1/reply/directory-src.GeometryDataExchange-Debug-16b712f9a4a5206a84d4.json b/out/build/.cmake/api/v1/reply/directory-src.GeometryDataExchange-Debug-16b712f9a4a5206a84d4.json new file mode 100644 index 0000000..dff0c5d --- /dev/null +++ b/out/build/.cmake/api/v1/reply/directory-src.GeometryDataExchange-Debug-16b712f9a4a5206a84d4.json @@ -0,0 +1,14 @@ +{ + "backtraceGraph" : + { + "commands" : [], + "files" : [], + "nodes" : [] + }, + "installers" : [], + "paths" : + { + "build" : "src/GeometryDataExchange", + "source" : "src/GeometryDataExchange" + } +} diff --git a/out/build/.cmake/api/v1/reply/directory-src.GeometryWidgets-Debug-922ebaeb3b27204f3e4a.json b/out/build/.cmake/api/v1/reply/directory-src.GeometryWidgets-Debug-922ebaeb3b27204f3e4a.json new file mode 100644 index 0000000..5494f3b --- /dev/null +++ b/out/build/.cmake/api/v1/reply/directory-src.GeometryWidgets-Debug-922ebaeb3b27204f3e4a.json @@ -0,0 +1,14 @@ +{ + "backtraceGraph" : + { + "commands" : [], + "files" : [], + "nodes" : [] + }, + "installers" : [], + "paths" : + { + "build" : "src/GeometryWidgets", + "source" : "src/GeometryWidgets" + } +} diff --git a/out/build/.cmake/api/v1/reply/directory-src.GmshModule-Debug-71bc511684637510f759.json b/out/build/.cmake/api/v1/reply/directory-src.GmshModule-Debug-71bc511684637510f759.json new file mode 100644 index 0000000..3b92fa0 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/directory-src.GmshModule-Debug-71bc511684637510f759.json @@ -0,0 +1,43 @@ +{ + "backtraceGraph" : + { + "commands" : + [ + "install" + ], + "files" : + [ + "src/GmshModule/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 67, + "parent" : 0 + } + ] + }, + "installers" : + [ + { + "backtrace" : 1, + "component" : "Unspecified", + "destination" : "bin", + "paths" : + [ + "extlib/Gmsh/gmsh.exe" + ], + "type" : "file" + } + ], + "paths" : + { + "build" : "src/GmshModule", + "source" : "src/GmshModule" + } +} diff --git a/out/build/.cmake/api/v1/reply/directory-src.IO-Debug-876fd3c12fc7fb021ca1.json b/out/build/.cmake/api/v1/reply/directory-src.IO-Debug-876fd3c12fc7fb021ca1.json new file mode 100644 index 0000000..2b1520f --- /dev/null +++ b/out/build/.cmake/api/v1/reply/directory-src.IO-Debug-876fd3c12fc7fb021ca1.json @@ -0,0 +1,14 @@ +{ + "backtraceGraph" : + { + "commands" : [], + "files" : [], + "nodes" : [] + }, + "installers" : [], + "paths" : + { + "build" : "src/IO", + "source" : "src/IO" + } +} diff --git a/out/build/.cmake/api/v1/reply/directory-src.LAMPCAE-Debug-d4b5f01aaa164ad1f37b.json b/out/build/.cmake/api/v1/reply/directory-src.LAMPCAE-Debug-d4b5f01aaa164ad1f37b.json new file mode 100644 index 0000000..ad63bb8 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/directory-src.LAMPCAE-Debug-d4b5f01aaa164ad1f37b.json @@ -0,0 +1,44 @@ +{ + "backtraceGraph" : + { + "commands" : + [ + "install" + ], + "files" : + [ + "src/LAMPCAE/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 136, + "parent" : 0 + } + ] + }, + "installers" : + [ + { + "backtrace" : 1, + "component" : "Unspecified", + "destination" : "bin", + "paths" : + [ + "C:/Qt/5.15.2/msvc2019_64/bin/../plugins/imageformats", + "C:/Qt/5.15.2/msvc2019_64/bin/../plugins/platforms" + ], + "type" : "directory" + } + ], + "paths" : + { + "build" : "src/LAMPCAE", + "source" : "src/LAMPCAE" + } +} diff --git a/out/build/.cmake/api/v1/reply/directory-src.MainWidgets-Debug-5da52c7e437fcddc0ffe.json b/out/build/.cmake/api/v1/reply/directory-src.MainWidgets-Debug-5da52c7e437fcddc0ffe.json new file mode 100644 index 0000000..07fba40 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/directory-src.MainWidgets-Debug-5da52c7e437fcddc0ffe.json @@ -0,0 +1,14 @@ +{ + "backtraceGraph" : + { + "commands" : [], + "files" : [], + "nodes" : [] + }, + "installers" : [], + "paths" : + { + "build" : "src/MainWidgets", + "source" : "src/MainWidgets" + } +} diff --git a/out/build/.cmake/api/v1/reply/directory-src.MainWindow-Debug-25a31dc44f25cea869e8.json b/out/build/.cmake/api/v1/reply/directory-src.MainWindow-Debug-25a31dc44f25cea869e8.json new file mode 100644 index 0000000..9496df8 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/directory-src.MainWindow-Debug-25a31dc44f25cea869e8.json @@ -0,0 +1,14 @@ +{ + "backtraceGraph" : + { + "commands" : [], + "files" : [], + "nodes" : [] + }, + "installers" : [], + "paths" : + { + "build" : "src/MainWindow", + "source" : "src/MainWindow" + } +} diff --git a/out/build/.cmake/api/v1/reply/directory-src.Material-Debug-8403bf3d1dcab886c6f5.json b/out/build/.cmake/api/v1/reply/directory-src.Material-Debug-8403bf3d1dcab886c6f5.json new file mode 100644 index 0000000..50c0bab --- /dev/null +++ b/out/build/.cmake/api/v1/reply/directory-src.Material-Debug-8403bf3d1dcab886c6f5.json @@ -0,0 +1,14 @@ +{ + "backtraceGraph" : + { + "commands" : [], + "files" : [], + "nodes" : [] + }, + "installers" : [], + "paths" : + { + "build" : "src/Material", + "source" : "src/Material" + } +} diff --git a/out/build/.cmake/api/v1/reply/directory-src.MeshData-Debug-5535fb953f5df19194dd.json b/out/build/.cmake/api/v1/reply/directory-src.MeshData-Debug-5535fb953f5df19194dd.json new file mode 100644 index 0000000..43e80d5 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/directory-src.MeshData-Debug-5535fb953f5df19194dd.json @@ -0,0 +1,14 @@ +{ + "backtraceGraph" : + { + "commands" : [], + "files" : [], + "nodes" : [] + }, + "installers" : [], + "paths" : + { + "build" : "src/MeshData", + "source" : "src/MeshData" + } +} diff --git a/out/build/.cmake/api/v1/reply/directory-src.ModelData-Debug-198cd6aedd7ee7546ca1.json b/out/build/.cmake/api/v1/reply/directory-src.ModelData-Debug-198cd6aedd7ee7546ca1.json new file mode 100644 index 0000000..9f59222 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/directory-src.ModelData-Debug-198cd6aedd7ee7546ca1.json @@ -0,0 +1,14 @@ +{ + "backtraceGraph" : + { + "commands" : [], + "files" : [], + "nodes" : [] + }, + "installers" : [], + "paths" : + { + "build" : "src/ModelData", + "source" : "src/ModelData" + } +} diff --git a/out/build/.cmake/api/v1/reply/directory-src.ModuleBase-Debug-9091614ce4dba507c4ca.json b/out/build/.cmake/api/v1/reply/directory-src.ModuleBase-Debug-9091614ce4dba507c4ca.json new file mode 100644 index 0000000..2e2325f --- /dev/null +++ b/out/build/.cmake/api/v1/reply/directory-src.ModuleBase-Debug-9091614ce4dba507c4ca.json @@ -0,0 +1,14 @@ +{ + "backtraceGraph" : + { + "commands" : [], + "files" : [], + "nodes" : [] + }, + "installers" : [], + "paths" : + { + "build" : "src/ModuleBase", + "source" : "src/ModuleBase" + } +} diff --git a/out/build/.cmake/api/v1/reply/directory-src.ParaClassFactory-Debug-aa4d601bf85090c49228.json b/out/build/.cmake/api/v1/reply/directory-src.ParaClassFactory-Debug-aa4d601bf85090c49228.json new file mode 100644 index 0000000..5f06a7d --- /dev/null +++ b/out/build/.cmake/api/v1/reply/directory-src.ParaClassFactory-Debug-aa4d601bf85090c49228.json @@ -0,0 +1,14 @@ +{ + "backtraceGraph" : + { + "commands" : [], + "files" : [], + "nodes" : [] + }, + "installers" : [], + "paths" : + { + "build" : "src/ParaClassFactory", + "source" : "src/ParaClassFactory" + } +} diff --git a/out/build/.cmake/api/v1/reply/directory-src.PluginCustomizer-Debug-db1a160e57b0782567a9.json b/out/build/.cmake/api/v1/reply/directory-src.PluginCustomizer-Debug-db1a160e57b0782567a9.json new file mode 100644 index 0000000..640880b --- /dev/null +++ b/out/build/.cmake/api/v1/reply/directory-src.PluginCustomizer-Debug-db1a160e57b0782567a9.json @@ -0,0 +1,14 @@ +{ + "backtraceGraph" : + { + "commands" : [], + "files" : [], + "nodes" : [] + }, + "installers" : [], + "paths" : + { + "build" : "src/PluginCustomizer", + "source" : "src/PluginCustomizer" + } +} diff --git a/out/build/.cmake/api/v1/reply/directory-src.PluginManager-Debug-f052b377cd9a513b9f97.json b/out/build/.cmake/api/v1/reply/directory-src.PluginManager-Debug-f052b377cd9a513b9f97.json new file mode 100644 index 0000000..3fbf81a --- /dev/null +++ b/out/build/.cmake/api/v1/reply/directory-src.PluginManager-Debug-f052b377cd9a513b9f97.json @@ -0,0 +1,14 @@ +{ + "backtraceGraph" : + { + "commands" : [], + "files" : [], + "nodes" : [] + }, + "installers" : [], + "paths" : + { + "build" : "src/PluginManager", + "source" : "src/PluginManager" + } +} diff --git a/out/build/.cmake/api/v1/reply/directory-src.PluginMeshDataExchange-Debug-be0db16a6f3c69ccc587.json b/out/build/.cmake/api/v1/reply/directory-src.PluginMeshDataExchange-Debug-be0db16a6f3c69ccc587.json new file mode 100644 index 0000000..a0e0b0e --- /dev/null +++ b/out/build/.cmake/api/v1/reply/directory-src.PluginMeshDataExchange-Debug-be0db16a6f3c69ccc587.json @@ -0,0 +1,14 @@ +{ + "backtraceGraph" : + { + "commands" : [], + "files" : [], + "nodes" : [] + }, + "installers" : [], + "paths" : + { + "build" : "src/PluginMeshDataExchange", + "source" : "src/PluginMeshDataExchange" + } +} diff --git a/out/build/.cmake/api/v1/reply/directory-src.PostAlgorithm-Debug-a68438d69bbbcbf3df12.json b/out/build/.cmake/api/v1/reply/directory-src.PostAlgorithm-Debug-a68438d69bbbcbf3df12.json new file mode 100644 index 0000000..6db000e --- /dev/null +++ b/out/build/.cmake/api/v1/reply/directory-src.PostAlgorithm-Debug-a68438d69bbbcbf3df12.json @@ -0,0 +1,14 @@ +{ + "backtraceGraph" : + { + "commands" : [], + "files" : [], + "nodes" : [] + }, + "installers" : [], + "paths" : + { + "build" : "src/PostAlgorithm", + "source" : "src/PostAlgorithm" + } +} diff --git a/out/build/.cmake/api/v1/reply/directory-src.PostCurveDataManager-Debug-c74dde3dadceba73281b.json b/out/build/.cmake/api/v1/reply/directory-src.PostCurveDataManager-Debug-c74dde3dadceba73281b.json new file mode 100644 index 0000000..2843d28 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/directory-src.PostCurveDataManager-Debug-c74dde3dadceba73281b.json @@ -0,0 +1,14 @@ +{ + "backtraceGraph" : + { + "commands" : [], + "files" : [], + "nodes" : [] + }, + "installers" : [], + "paths" : + { + "build" : "src/PostCurveDataManager", + "source" : "src/PostCurveDataManager" + } +} diff --git a/out/build/.cmake/api/v1/reply/directory-src.PostInterface-Debug-75f006e7614e11057388.json b/out/build/.cmake/api/v1/reply/directory-src.PostInterface-Debug-75f006e7614e11057388.json new file mode 100644 index 0000000..83cd792 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/directory-src.PostInterface-Debug-75f006e7614e11057388.json @@ -0,0 +1,14 @@ +{ + "backtraceGraph" : + { + "commands" : [], + "files" : [], + "nodes" : [] + }, + "installers" : [], + "paths" : + { + "build" : "src/PostInterface", + "source" : "src/PostInterface" + } +} diff --git a/out/build/.cmake/api/v1/reply/directory-src.PostPlotWidget-Debug-f99e9e350f45afa9f71f.json b/out/build/.cmake/api/v1/reply/directory-src.PostPlotWidget-Debug-f99e9e350f45afa9f71f.json new file mode 100644 index 0000000..476ae17 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/directory-src.PostPlotWidget-Debug-f99e9e350f45afa9f71f.json @@ -0,0 +1,14 @@ +{ + "backtraceGraph" : + { + "commands" : [], + "files" : [], + "nodes" : [] + }, + "installers" : [], + "paths" : + { + "build" : "src/PostPlotWidget", + "source" : "src/PostPlotWidget" + } +} diff --git a/out/build/.cmake/api/v1/reply/directory-src.PostRenderData-Debug-318d6865b7db010473b6.json b/out/build/.cmake/api/v1/reply/directory-src.PostRenderData-Debug-318d6865b7db010473b6.json new file mode 100644 index 0000000..85b4344 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/directory-src.PostRenderData-Debug-318d6865b7db010473b6.json @@ -0,0 +1,14 @@ +{ + "backtraceGraph" : + { + "commands" : [], + "files" : [], + "nodes" : [] + }, + "installers" : [], + "paths" : + { + "build" : "src/PostRenderData", + "source" : "src/PostRenderData" + } +} diff --git a/out/build/.cmake/api/v1/reply/directory-src.PostWidgets-Debug-0b40937599cd5da845cb.json b/out/build/.cmake/api/v1/reply/directory-src.PostWidgets-Debug-0b40937599cd5da845cb.json new file mode 100644 index 0000000..6a69133 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/directory-src.PostWidgets-Debug-0b40937599cd5da845cb.json @@ -0,0 +1,14 @@ +{ + "backtraceGraph" : + { + "commands" : [], + "files" : [], + "nodes" : [] + }, + "installers" : [], + "paths" : + { + "build" : "src/PostWidgets", + "source" : "src/PostWidgets" + } +} diff --git a/out/build/.cmake/api/v1/reply/directory-src.ProjectTree-Debug-816dac64c9e8f726dac2.json b/out/build/.cmake/api/v1/reply/directory-src.ProjectTree-Debug-816dac64c9e8f726dac2.json new file mode 100644 index 0000000..49e5022 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/directory-src.ProjectTree-Debug-816dac64c9e8f726dac2.json @@ -0,0 +1,14 @@ +{ + "backtraceGraph" : + { + "commands" : [], + "files" : [], + "nodes" : [] + }, + "installers" : [], + "paths" : + { + "build" : "src/ProjectTree", + "source" : "src/ProjectTree" + } +} diff --git a/out/build/.cmake/api/v1/reply/directory-src.ProjectTreeExtend-Debug-b5fcdcc747efd1df86d8.json b/out/build/.cmake/api/v1/reply/directory-src.ProjectTreeExtend-Debug-b5fcdcc747efd1df86d8.json new file mode 100644 index 0000000..17e69a1 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/directory-src.ProjectTreeExtend-Debug-b5fcdcc747efd1df86d8.json @@ -0,0 +1,14 @@ +{ + "backtraceGraph" : + { + "commands" : [], + "files" : [], + "nodes" : [] + }, + "installers" : [], + "paths" : + { + "build" : "src/ProjectTreeExtend", + "source" : "src/ProjectTreeExtend" + } +} diff --git a/out/build/.cmake/api/v1/reply/directory-src.PythonModule-Debug-a63564c7b90f34c53d76.json b/out/build/.cmake/api/v1/reply/directory-src.PythonModule-Debug-a63564c7b90f34c53d76.json new file mode 100644 index 0000000..110d2b3 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/directory-src.PythonModule-Debug-a63564c7b90f34c53d76.json @@ -0,0 +1,85 @@ +{ + "backtraceGraph" : + { + "commands" : + [ + "install" + ], + "files" : + [ + "src/PythonModule/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 60, + "parent" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 65, + "parent" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 78, + "parent" : 0 + } + ] + }, + "installers" : + [ + { + "backtrace" : 1, + "component" : "Unspecified", + "destination" : "bin", + "paths" : + [ + "extlib/Python/Lib" + ], + "type" : "directory" + }, + { + "backtrace" : 2, + "component" : "Unspecified", + "destination" : "bin", + "paths" : + [ + "extlib/Python/DLLs" + ], + "type" : "directory" + }, + { + "backtrace" : 3, + "component" : "Unspecified", + "destination" : "bin", + "paths" : + [ + "src/PythonModule/py/LAMPCAE.ini", + "src/PythonModule/py/CAD.py", + "src/PythonModule/py/Case.py", + "src/PythonModule/py/ControlPanel.py", + "src/PythonModule/py/Geometry.py", + "src/PythonModule/py/MainWindow.py", + "src/PythonModule/py/Material.py", + "src/PythonModule/py/Mesh.py", + "src/PythonModule/py/Mesher.py", + "src/PythonModule/py/Post.py", + "src/PythonModule/py/PostProcess.py" + ], + "type" : "file" + } + ], + "paths" : + { + "build" : "src/PythonModule", + "source" : "src/PythonModule" + } +} diff --git a/out/build/.cmake/api/v1/reply/directory-src.SARibbonBar-Debug-3c18d945d19d7e5f631e.json b/out/build/.cmake/api/v1/reply/directory-src.SARibbonBar-Debug-3c18d945d19d7e5f631e.json new file mode 100644 index 0000000..6b19dd6 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/directory-src.SARibbonBar-Debug-3c18d945d19d7e5f631e.json @@ -0,0 +1,14 @@ +{ + "backtraceGraph" : + { + "commands" : [], + "files" : [], + "nodes" : [] + }, + "installers" : [], + "paths" : + { + "build" : "src/SARibbonBar", + "source" : "src/SARibbonBar" + } +} diff --git a/out/build/.cmake/api/v1/reply/directory-src.SelfDefObject-Debug-3ea6c96be3c50bb4a22e.json b/out/build/.cmake/api/v1/reply/directory-src.SelfDefObject-Debug-3ea6c96be3c50bb4a22e.json new file mode 100644 index 0000000..ba31dac --- /dev/null +++ b/out/build/.cmake/api/v1/reply/directory-src.SelfDefObject-Debug-3ea6c96be3c50bb4a22e.json @@ -0,0 +1,14 @@ +{ + "backtraceGraph" : + { + "commands" : [], + "files" : [], + "nodes" : [] + }, + "installers" : [], + "paths" : + { + "build" : "src/SelfDefObject", + "source" : "src/SelfDefObject" + } +} diff --git a/out/build/.cmake/api/v1/reply/directory-src.Settings-Debug-1a0da85cc8cd9667558f.json b/out/build/.cmake/api/v1/reply/directory-src.Settings-Debug-1a0da85cc8cd9667558f.json new file mode 100644 index 0000000..2fd4413 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/directory-src.Settings-Debug-1a0da85cc8cd9667558f.json @@ -0,0 +1,14 @@ +{ + "backtraceGraph" : + { + "commands" : [], + "files" : [], + "nodes" : [] + }, + "installers" : [], + "paths" : + { + "build" : "src/Settings", + "source" : "src/Settings" + } +} diff --git a/out/build/.cmake/api/v1/reply/directory-src.SolverControl-Debug-b56b6244051353fee572.json b/out/build/.cmake/api/v1/reply/directory-src.SolverControl-Debug-b56b6244051353fee572.json new file mode 100644 index 0000000..8c7ff95 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/directory-src.SolverControl-Debug-b56b6244051353fee572.json @@ -0,0 +1,14 @@ +{ + "backtraceGraph" : + { + "commands" : [], + "files" : [], + "nodes" : [] + }, + "installers" : [], + "paths" : + { + "build" : "src/SolverControl", + "source" : "src/SolverControl" + } +} diff --git a/out/build/.cmake/api/v1/reply/directory-src.UserGuidence-Debug-57335dbdcf929945098b.json b/out/build/.cmake/api/v1/reply/directory-src.UserGuidence-Debug-57335dbdcf929945098b.json new file mode 100644 index 0000000..62fe1d3 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/directory-src.UserGuidence-Debug-57335dbdcf929945098b.json @@ -0,0 +1,14 @@ +{ + "backtraceGraph" : + { + "commands" : [], + "files" : [], + "nodes" : [] + }, + "installers" : [], + "paths" : + { + "build" : "src/UserGuidence", + "source" : "src/UserGuidence" + } +} diff --git a/out/build/.cmake/api/v1/reply/index-2024-03-20T07-28-18-0317.json b/out/build/.cmake/api/v1/reply/index-2024-03-20T07-28-18-0317.json new file mode 100644 index 0000000..6f9928a --- /dev/null +++ b/out/build/.cmake/api/v1/reply/index-2024-03-20T07-28-18-0317.json @@ -0,0 +1,132 @@ +{ + "cmake" : + { + "generator" : + { + "multiConfig" : false, + "name" : "Ninja" + }, + "paths" : + { + "cmake" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/bin/cmake.exe", + "cpack" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/bin/cpack.exe", + "ctest" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/bin/ctest.exe", + "root" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28" + }, + "version" : + { + "isDirty" : false, + "major" : 3, + "minor" : 28, + "patch" : 0, + "string" : "3.28.0-msvc1", + "suffix" : "msvc1" + } + }, + "objects" : + [ + { + "jsonFile" : "codemodel-v2-9e6acc76e9c260e6d44f.json", + "kind" : "codemodel", + "version" : + { + "major" : 2, + "minor" : 6 + } + }, + { + "jsonFile" : "cache-v2-261c2d679b8e4328aa57.json", + "kind" : "cache", + "version" : + { + "major" : 2, + "minor" : 0 + } + }, + { + "jsonFile" : "cmakeFiles-v1-bc0bc38fca065813c476.json", + "kind" : "cmakeFiles", + "version" : + { + "major" : 1, + "minor" : 0 + } + }, + { + "jsonFile" : "toolchains-v1-2d3eac1e199c73b65707.json", + "kind" : "toolchains", + "version" : + { + "major" : 1, + "minor" : 0 + } + } + ], + "reply" : + { + "client-MicrosoftVS" : + { + "query.json" : + { + "requests" : + [ + { + "kind" : "cache", + "version" : 2 + }, + { + "kind" : "cmakeFiles", + "version" : 1 + }, + { + "kind" : "codemodel", + "version" : 2 + }, + { + "kind" : "toolchains", + "version" : 1 + } + ], + "responses" : + [ + { + "jsonFile" : "cache-v2-261c2d679b8e4328aa57.json", + "kind" : "cache", + "version" : + { + "major" : 2, + "minor" : 0 + } + }, + { + "jsonFile" : "cmakeFiles-v1-bc0bc38fca065813c476.json", + "kind" : "cmakeFiles", + "version" : + { + "major" : 1, + "minor" : 0 + } + }, + { + "jsonFile" : "codemodel-v2-9e6acc76e9c260e6d44f.json", + "kind" : "codemodel", + "version" : + { + "major" : 2, + "minor" : 6 + } + }, + { + "jsonFile" : "toolchains-v1-2d3eac1e199c73b65707.json", + "kind" : "toolchains", + "version" : + { + "major" : 1, + "minor" : 0 + } + } + ] + } + } + } +} diff --git a/out/build/.cmake/api/v1/reply/target-BCBase-Debug-144852a9834429374bb4.json b/out/build/.cmake/api/v1/reply/target-BCBase-Debug-144852a9834429374bb4.json new file mode 100644 index 0000000..e275ae5 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-BCBase-Debug-144852a9834429374bb4.json @@ -0,0 +1,559 @@ +{ + "artifacts" : + [ + { + "path" : "Debug/BCBase.dll" + }, + { + "path" : "Debug/BCBase.lib" + }, + { + "path" : "Debug/BCBase.pdb" + } + ], + "backtrace" : 1, + "backtraceGraph" : + { + "commands" : + [ + "add_library", + "install", + "target_link_libraries", + "set_property", + "_populate_Widgets_target_properties", + "find_package", + "_populate_Xml_target_properties", + "add_dependencies", + "add_compile_options", + "target_compile_definitions", + "add_definitions", + "include_directories" + ], + "files" : + [ + "src/BCBase/CMakeLists.txt", + "src/CMakeLists.txt", + "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Widgets/Qt5WidgetsConfig.cmake", + "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5/Qt5Config.cmake", + "CMakeLists.txt", + "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Xml/Qt5XmlConfig.cmake" + ], + "nodes" : + [ + { + "file" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 20, + "parent" : 0 + }, + { + "file" : 1 + }, + { + "command" : 1, + "file" : 1, + "line" : 58, + "parent" : 2 + }, + { + "command" : 2, + "file" : 0, + "line" : 39, + "parent" : 0 + }, + { + "file" : 4 + }, + { + "command" : 5, + "file" : 4, + "line" : 142, + "parent" : 5 + }, + { + "file" : 3, + "parent" : 6 + }, + { + "command" : 5, + "file" : 3, + "line" : 28, + "parent" : 7 + }, + { + "file" : 2, + "parent" : 8 + }, + { + "command" : 4, + "file" : 2, + "line" : 207, + "parent" : 9 + }, + { + "command" : 3, + "file" : 2, + "line" : 44, + "parent" : 10 + }, + { + "command" : 5, + "file" : 3, + "line" : 28, + "parent" : 7 + }, + { + "file" : 5, + "parent" : 12 + }, + { + "command" : 6, + "file" : 5, + "line" : 207, + "parent" : 13 + }, + { + "command" : 3, + "file" : 5, + "line" : 44, + "parent" : 14 + }, + { + "command" : 7, + "file" : 0, + "line" : 52, + "parent" : 0 + }, + { + "command" : 8, + "file" : 4, + "line" : 85, + "parent" : 5 + }, + { + "command" : 8, + "file" : 4, + "line" : 86, + "parent" : 5 + }, + { + "command" : 9, + "file" : 0, + "line" : 28, + "parent" : 0 + }, + { + "command" : 10, + "file" : 4, + "line" : 118, + "parent" : 5 + }, + { + "command" : 10, + "file" : 4, + "line" : 83, + "parent" : 5 + }, + { + "command" : 11, + "file" : 0, + "line" : 4, + "parent" : 0 + } + ] + }, + "compileGroups" : + [ + { + "compileCommandFragments" : + [ + { + "fragment" : "-DQT_QML_DEBUG /Zi /Ob0 /Od /RTC1 -MDd" + }, + { + "backtrace" : 17, + "fragment" : "/utf-8" + }, + { + "backtrace" : 18, + "fragment" : "/MDd" + } + ], + "defines" : + [ + { + "backtrace" : 19, + "define" : "BCBASE_API" + }, + { + "define" : "BCBase_EXPORTS" + }, + { + "backtrace" : 20, + "define" : "OUTPUT_DEBUG_INFO" + }, + { + "backtrace" : 4, + "define" : "QT_CORE_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_GUI_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_WIDGETS_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_XML_LIB" + }, + { + "backtrace" : 21, + "define" : "UNICODE" + }, + { + "backtrace" : 21, + "define" : "_UNICODE" + } + ], + "includes" : + [ + { + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/BCBase" + }, + { + "path" : "D:/WBFZCPP/source/FastCAE/src/BCBase" + }, + { + "backtrace" : 0, + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/BCBase/BCBase_autogen/include" + }, + { + "backtrace" : 22, + "path" : "D:/WBFZCPP/source/FastCAE/src/BCBase/.." + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtXml" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtCore" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/./mkspecs/win32-msvc" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtWidgets" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtGui" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtANGLE" + } + ], + "language" : "CXX", + "languageStandard" : + { + "backtraces" : + [ + 4 + ], + "standard" : "11" + }, + "sourceIndexes" : + [ + 0, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17 + ] + } + ], + "dependencies" : + [ + { + "backtrace" : 16, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "backtrace" : 16, + "id" : "MeshData::@2f0f676dafab302b2d20" + }, + { + "backtrace" : 16, + "id" : "Geometry::@b7b2e4191bc961e9afba" + }, + { + "backtrace" : 0, + "id" : "BCBase_autogen::@baf13bdd6bef809f2182" + }, + { + "id" : "BCBase_autogen_timestamp_deps::@baf13bdd6bef809f2182" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "BCBase::@baf13bdd6bef809f2182", + "install" : + { + "destinations" : + [ + { + "backtrace" : 3, + "path" : "bin" + } + ], + "prefix" : + { + "path" : "D:/WBFZCPP/source/FastCAE/install" + } + }, + "link" : + { + "commandFragments" : + [ + { + "fragment" : "/machine:x64 /debug /INCREMENTAL", + "role" : "flags" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\MeshData.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Geometry.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\DataProperty.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Xmld.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Widgetsd.lib", + "role" : "libraries" + }, + { + "backtrace" : 11, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Guid.lib", + "role" : "libraries" + }, + { + "backtrace" : 15, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Cored.lib", + "role" : "libraries" + }, + { + "fragment" : "kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib", + "role" : "libraries" + } + ], + "language" : "CXX" + }, + "name" : "BCBase", + "nameOnDisk" : "BCBase.dll", + "paths" : + { + "build" : "src/BCBase", + "source" : "src/BCBase" + }, + "sourceGroups" : + [ + { + "name" : "Source Files", + "sourceIndexes" : + [ + 0, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17 + ] + }, + { + "name" : "Header Files", + "sourceIndexes" : + [ + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9 + ] + }, + { + "name" : "", + "sourceIndexes" : + [ + 18 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 19 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/BCBase/BCBase_autogen/mocs_compilation.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "path" : "src/BCBase/BCBase.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/BCBase/BCBaseAPI.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/BCBase/BCDisplacement.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/BCBase/BCPressure.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/BCBase/BCScalarBase.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/BCBase/BCTemperature.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/BCBase/BCType.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/BCBase/BCUserDef.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/BCBase/BCVectorBase.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/BCBase/BCBase.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/BCBase/BCDisplacement.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/BCBase/BCPressure.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/BCBase/BCScalarBase.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/BCBase/BCTemperature.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/BCBase/BCType.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/BCBase/BCUserDef.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/BCBase/BCVectorBase.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/BCBase/BCBase_autogen/timestamp", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/BCBase/BCBase_autogen/timestamp.rule", + "sourceGroupIndex" : 3 + } + ], + "type" : "SHARED_LIBRARY" +} diff --git a/out/build/.cmake/api/v1/reply/target-BCBase_autogen-Debug-f649e1b27d49b1d9297d.json b/out/build/.cmake/api/v1/reply/target-BCBase_autogen-Debug-f649e1b27d49b1d9297d.json new file mode 100644 index 0000000..9287736 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-BCBase_autogen-Debug-f649e1b27d49b1d9297d.json @@ -0,0 +1,87 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/BCBase/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "backtrace" : 0, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "backtrace" : 0, + "id" : "MeshData::@2f0f676dafab302b2d20" + }, + { + "backtrace" : 0, + "id" : "Geometry::@b7b2e4191bc961e9afba" + }, + { + "id" : "BCBase_autogen_timestamp_deps::@baf13bdd6bef809f2182" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "BCBase_autogen::@baf13bdd6bef809f2182", + "isGeneratorProvided" : true, + "name" : "BCBase_autogen", + "paths" : + { + "build" : "src/BCBase", + "source" : "src/BCBase" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1, + 2 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/BCBase/CMakeFiles/BCBase_autogen", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/BCBase/CMakeFiles/BCBase_autogen.rule", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/BCBase/BCBase_autogen/timestamp.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-BCBase_autogen_timestamp_deps-Debug-9e43c69b5fb9d56c4fea.json b/out/build/.cmake/api/v1/reply/target-BCBase_autogen_timestamp_deps-Debug-9e43c69b5fb9d56c4fea.json new file mode 100644 index 0000000..7cb434d --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-BCBase_autogen_timestamp_deps-Debug-9e43c69b5fb9d56c4fea.json @@ -0,0 +1,74 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/BCBase/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "id" : "MeshData::@2f0f676dafab302b2d20" + }, + { + "id" : "Geometry::@b7b2e4191bc961e9afba" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "BCBase_autogen_timestamp_deps::@baf13bdd6bef809f2182", + "isGeneratorProvided" : true, + "name" : "BCBase_autogen_timestamp_deps", + "paths" : + { + "build" : "src/BCBase", + "source" : "src/BCBase" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/BCBase/CMakeFiles/BCBase_autogen_timestamp_deps", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/BCBase/CMakeFiles/BCBase_autogen_timestamp_deps.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-Common-Debug-2ad5fb95abe7e90e9794.json b/out/build/.cmake/api/v1/reply/target-Common-Debug-2ad5fb95abe7e90e9794.json new file mode 100644 index 0000000..d5af4a3 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-Common-Debug-2ad5fb95abe7e90e9794.json @@ -0,0 +1,334 @@ +{ + "artifacts" : + [ + { + "path" : "Debug/Common.dll" + }, + { + "path" : "Debug/Common.lib" + }, + { + "path" : "Debug/Common.pdb" + } + ], + "backtrace" : 1, + "backtraceGraph" : + { + "commands" : + [ + "add_library", + "install", + "target_link_libraries", + "add_compile_options", + "target_compile_definitions", + "add_definitions" + ], + "files" : + [ + "src/Common/CMakeLists.txt", + "src/CMakeLists.txt", + "CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 15, + "parent" : 0 + }, + { + "file" : 1 + }, + { + "command" : 1, + "file" : 1, + "line" : 58, + "parent" : 2 + }, + { + "command" : 2, + "file" : 0, + "line" : 32, + "parent" : 0 + }, + { + "file" : 2 + }, + { + "command" : 3, + "file" : 2, + "line" : 85, + "parent" : 5 + }, + { + "command" : 3, + "file" : 2, + "line" : 86, + "parent" : 5 + }, + { + "command" : 4, + "file" : 0, + "line" : 23, + "parent" : 0 + }, + { + "command" : 5, + "file" : 2, + "line" : 118, + "parent" : 5 + }, + { + "command" : 5, + "file" : 2, + "line" : 83, + "parent" : 5 + } + ] + }, + "compileGroups" : + [ + { + "compileCommandFragments" : + [ + { + "fragment" : "-DQT_QML_DEBUG /Zi /Ob0 /Od /RTC1 -MDd" + }, + { + "backtrace" : 6, + "fragment" : "/utf-8" + }, + { + "backtrace" : 7, + "fragment" : "/MDd" + } + ], + "defines" : + [ + { + "backtrace" : 8, + "define" : "COMMON_API" + }, + { + "define" : "Common_EXPORTS" + }, + { + "backtrace" : 9, + "define" : "OUTPUT_DEBUG_INFO" + }, + { + "backtrace" : 4, + "define" : "QT_CORE_LIB" + }, + { + "backtrace" : 10, + "define" : "UNICODE" + }, + { + "backtrace" : 10, + "define" : "_UNICODE" + } + ], + "includes" : + [ + { + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/Common" + }, + { + "path" : "D:/WBFZCPP/source/FastCAE/src/Common" + }, + { + "backtrace" : 0, + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/Common/Common_autogen/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtCore" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/./mkspecs/win32-msvc" + } + ], + "language" : "CXX", + "languageStandard" : + { + "backtraces" : + [ + 4 + ], + "standard" : "11" + }, + "sourceIndexes" : + [ + 0, + 6, + 7 + ] + } + ], + "dependencies" : + [ + { + "backtrace" : 0, + "id" : "Common_autogen::@29aabc9fbfb9b5406d55" + }, + { + "id" : "Common_autogen_timestamp_deps::@29aabc9fbfb9b5406d55" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "Common::@29aabc9fbfb9b5406d55", + "install" : + { + "destinations" : + [ + { + "backtrace" : 3, + "path" : "bin" + } + ], + "prefix" : + { + "path" : "D:/WBFZCPP/source/FastCAE/install" + } + }, + "link" : + { + "commandFragments" : + [ + { + "fragment" : "/machine:x64 /debug /INCREMENTAL", + "role" : "flags" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Cored.lib", + "role" : "libraries" + }, + { + "fragment" : "kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib", + "role" : "libraries" + } + ], + "language" : "CXX" + }, + "name" : "Common", + "nameOnDisk" : "Common.dll", + "paths" : + { + "build" : "src/Common", + "source" : "src/Common" + }, + "sourceGroups" : + [ + { + "name" : "Source Files", + "sourceIndexes" : + [ + 0, + 6, + 7 + ] + }, + { + "name" : "Header Files", + "sourceIndexes" : + [ + 1, + 2, + 3, + 4, + 5 + ] + }, + { + "name" : "", + "sourceIndexes" : + [ + 8 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 9 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/Common/Common_autogen/mocs_compilation.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "path" : "src/Common/CommonAPI.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Common/DebugLogger.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Common/FakeClass.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Common/Singleton.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Common/Types.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Common/DebugLogger.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Common/FakeClass.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/Common/Common_autogen/timestamp", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/Common/Common_autogen/timestamp.rule", + "sourceGroupIndex" : 3 + } + ], + "type" : "SHARED_LIBRARY" +} diff --git a/out/build/.cmake/api/v1/reply/target-Common_autogen-Debug-7a9c97fb94c1a75c4478.json b/out/build/.cmake/api/v1/reply/target-Common_autogen-Debug-7a9c97fb94c1a75c4478.json new file mode 100644 index 0000000..82dad3d --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-Common_autogen-Debug-7a9c97fb94c1a75c4478.json @@ -0,0 +1,75 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/Common/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "id" : "Common_autogen_timestamp_deps::@29aabc9fbfb9b5406d55" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "Common_autogen::@29aabc9fbfb9b5406d55", + "isGeneratorProvided" : true, + "name" : "Common_autogen", + "paths" : + { + "build" : "src/Common", + "source" : "src/Common" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1, + 2 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/Common/CMakeFiles/Common_autogen", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/Common/CMakeFiles/Common_autogen.rule", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/Common/Common_autogen/timestamp.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-Common_autogen_timestamp_deps-Debug-c800ba80b03ae3ff837c.json b/out/build/.cmake/api/v1/reply/target-Common_autogen_timestamp_deps-Debug-c800ba80b03ae3ff837c.json new file mode 100644 index 0000000..67ab909 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-Common_autogen_timestamp_deps-Debug-c800ba80b03ae3ff837c.json @@ -0,0 +1,62 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/Common/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "folder" : + { + "name" : "Modules" + }, + "id" : "Common_autogen_timestamp_deps::@29aabc9fbfb9b5406d55", + "isGeneratorProvided" : true, + "name" : "Common_autogen_timestamp_deps", + "paths" : + { + "build" : "src/Common", + "source" : "src/Common" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/Common/CMakeFiles/Common_autogen_timestamp_deps", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/Common/CMakeFiles/Common_autogen_timestamp_deps.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-ConfigOptions-Debug-ff8a87d6a0b432232f7b.json b/out/build/.cmake/api/v1/reply/target-ConfigOptions-Debug-ff8a87d6a0b432232f7b.json new file mode 100644 index 0000000..f8372a3 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-ConfigOptions-Debug-ff8a87d6a0b432232f7b.json @@ -0,0 +1,834 @@ +{ + "artifacts" : + [ + { + "path" : "Debug/ConfigOptions.dll" + }, + { + "path" : "Debug/ConfigOptions.lib" + }, + { + "path" : "Debug/ConfigOptions.pdb" + } + ], + "backtrace" : 1, + "backtraceGraph" : + { + "commands" : + [ + "add_library", + "install", + "target_link_libraries", + "set_property", + "_populate_Widgets_target_properties", + "find_package", + "add_dependencies", + "add_compile_options", + "target_compile_definitions", + "add_definitions", + "include_directories" + ], + "files" : + [ + "src/ConfigOptions/CMakeLists.txt", + "src/CMakeLists.txt", + "src/PythonModule/CMakeLists.txt", + "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Widgets/Qt5WidgetsConfig.cmake", + "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5/Qt5Config.cmake", + "CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 20, + "parent" : 0 + }, + { + "file" : 1 + }, + { + "command" : 1, + "file" : 1, + "line" : 58, + "parent" : 2 + }, + { + "command" : 2, + "file" : 0, + "line" : 39, + "parent" : 0 + }, + { + "file" : 2 + }, + { + "command" : 2, + "file" : 2, + "line" : 44, + "parent" : 5 + }, + { + "file" : 5 + }, + { + "command" : 5, + "file" : 5, + "line" : 142, + "parent" : 7 + }, + { + "file" : 4, + "parent" : 8 + }, + { + "command" : 5, + "file" : 4, + "line" : 28, + "parent" : 9 + }, + { + "file" : 3, + "parent" : 10 + }, + { + "command" : 4, + "file" : 3, + "line" : 207, + "parent" : 11 + }, + { + "command" : 3, + "file" : 3, + "line" : 44, + "parent" : 12 + }, + { + "command" : 6, + "file" : 0, + "line" : 47, + "parent" : 0 + }, + { + "command" : 7, + "file" : 5, + "line" : 85, + "parent" : 7 + }, + { + "command" : 7, + "file" : 5, + "line" : 86, + "parent" : 7 + }, + { + "command" : 8, + "file" : 0, + "line" : 28, + "parent" : 0 + }, + { + "command" : 9, + "file" : 5, + "line" : 118, + "parent" : 7 + }, + { + "command" : 9, + "file" : 5, + "line" : 83, + "parent" : 7 + }, + { + "command" : 10, + "file" : 0, + "line" : 4, + "parent" : 0 + } + ] + }, + "compileGroups" : + [ + { + "compileCommandFragments" : + [ + { + "fragment" : "-DQT_QML_DEBUG /Zi /Ob0 /Od /RTC1 -MDd" + }, + { + "backtrace" : 15, + "fragment" : "/utf-8" + }, + { + "backtrace" : 16, + "fragment" : "/MDd" + } + ], + "defines" : + [ + { + "backtrace" : 17, + "define" : "CONFIGOPTIONS_API" + }, + { + "define" : "ConfigOptions_EXPORTS" + }, + { + "backtrace" : 18, + "define" : "OUTPUT_DEBUG_INFO" + }, + { + "backtrace" : 4, + "define" : "QT_CORE_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_GUI_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_WIDGETS_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_XML_LIB" + }, + { + "backtrace" : 19, + "define" : "UNICODE" + }, + { + "backtrace" : 19, + "define" : "_UNICODE" + } + ], + "includes" : + [ + { + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/ConfigOptions" + }, + { + "path" : "D:/WBFZCPP/source/FastCAE/src/ConfigOptions" + }, + { + "backtrace" : 0, + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/ConfigOptions/ConfigOptions_autogen/include" + }, + { + "backtrace" : 20, + "path" : "D:/WBFZCPP/source/FastCAE/src/ConfigOptions/.." + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtCore" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/./mkspecs/win32-msvc" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtXml" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtWidgets" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtGui" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtANGLE" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "D:/WBFZCPP/source/FastCAE/extlib/Python/include" + } + ], + "language" : "CXX", + "languageStandard" : + { + "backtraces" : + [ + 4 + ], + "standard" : "11" + }, + "sourceIndexes" : + [ + 0, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53 + ] + } + ], + "dependencies" : + [ + { + "backtrace" : 4, + "id" : "Common::@29aabc9fbfb9b5406d55" + }, + { + "backtrace" : 14, + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "backtrace" : 14, + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "backtrace" : 14, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "backtrace" : 14, + "id" : "Material::@05d68cd248c3246409d7" + }, + { + "backtrace" : 14, + "id" : "BCBase::@baf13bdd6bef809f2182" + }, + { + "backtrace" : 0, + "id" : "ConfigOptions_autogen::@1c9d458e4038aca43955" + }, + { + "id" : "ConfigOptions_autogen_timestamp_deps::@1c9d458e4038aca43955" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "ConfigOptions::@1c9d458e4038aca43955", + "install" : + { + "destinations" : + [ + { + "backtrace" : 3, + "path" : "bin" + } + ], + "prefix" : + { + "path" : "D:/WBFZCPP/source/FastCAE/install" + } + }, + "link" : + { + "commandFragments" : + [ + { + "fragment" : "/machine:x64 /debug /INCREMENTAL", + "role" : "flags" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Material.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\BCBase.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Settings.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\DataProperty.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Xmld.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\PythonModule.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Widgetsd.lib", + "role" : "libraries" + }, + { + "backtrace" : 6, + "fragment" : "D:\\WBFZCPP\\source\\FastCAE\\extlib\\Python\\libs\\python37.lib", + "role" : "libraries" + }, + { + "backtrace" : 6, + "fragment" : "Debug\\Common.lib", + "role" : "libraries" + }, + { + "backtrace" : 13, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Guid.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Cored.lib", + "role" : "libraries" + }, + { + "fragment" : "kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib", + "role" : "libraries" + } + ], + "language" : "CXX" + }, + "name" : "ConfigOptions", + "nameOnDisk" : "ConfigOptions.dll", + "paths" : + { + "build" : "src/ConfigOptions", + "source" : "src/ConfigOptions" + }, + "sourceGroups" : + [ + { + "name" : "Source Files", + "sourceIndexes" : + [ + 0, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53 + ] + }, + { + "name" : "Header Files", + "sourceIndexes" : + [ + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27 + ] + }, + { + "name" : "", + "sourceIndexes" : + [ + 54 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 55 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/ConfigOptions/ConfigOptions_autogen/mocs_compilation.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "path" : "src/ConfigOptions/BCConfig.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ConfigOptions/BCConfigReader.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ConfigOptions/ConfigDataBase.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ConfigOptions/ConfigDataReader.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ConfigOptions/ConfigOptions.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ConfigOptions/ConfigOptionsAPI.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ConfigOptions/DataConfig.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ConfigOptions/DataConfigReader.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ConfigOptions/GeometryConfig.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ConfigOptions/GlobalConfig.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ConfigOptions/GlobalConfigReader.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ConfigOptions/MaterialConfig.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ConfigOptions/MeshConfig.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ConfigOptions/MesherInfo.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ConfigOptions/MesherPy.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ConfigOptions/ObserverConfig.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ConfigOptions/ObserverConfigReader.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ConfigOptions/ParameterObserver.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ConfigOptions/PostConfig.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ConfigOptions/PostConfigInfo.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ConfigOptions/PostCurve.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ConfigOptions/ProjectTreeConfig.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ConfigOptions/ProjectTreeInfo.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ConfigOptions/SolverConfig.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ConfigOptions/SolverInfo.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ConfigOptions/TreeConfigReader.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ConfigOptions/TreeItemData.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ConfigOptions/BCConfig.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ConfigOptions/BCConfigReader.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ConfigOptions/ConfigDataBase.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ConfigOptions/ConfigDataReader.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ConfigOptions/ConfigOptions.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ConfigOptions/DataConfig.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ConfigOptions/DataConfigReader.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ConfigOptions/GeometryConfig.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ConfigOptions/GlobalConfig.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ConfigOptions/GlobalConfigReader.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ConfigOptions/MaterialConfig.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ConfigOptions/MeshConfig.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ConfigOptions/MesherInfo.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ConfigOptions/MesherPy.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ConfigOptions/ObserverConfig.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ConfigOptions/ObserverConfigReader.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ConfigOptions/ParameterObserver.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ConfigOptions/PostConfig.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ConfigOptions/PostConfigInfo.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ConfigOptions/PostCurve.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ConfigOptions/ProjectTreeConfig.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ConfigOptions/ProjectTreeInfo.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ConfigOptions/SolverConfig.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ConfigOptions/SolverInfo.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ConfigOptions/TreeConfigReader.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ConfigOptions/TreeItemData.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/ConfigOptions/ConfigOptions_autogen/timestamp", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/ConfigOptions/ConfigOptions_autogen/timestamp.rule", + "sourceGroupIndex" : 3 + } + ], + "type" : "SHARED_LIBRARY" +} diff --git a/out/build/.cmake/api/v1/reply/target-ConfigOptions_autogen-Debug-0f028f409eab5bd73a58.json b/out/build/.cmake/api/v1/reply/target-ConfigOptions_autogen-Debug-0f028f409eab5bd73a58.json new file mode 100644 index 0000000..798a9e8 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-ConfigOptions_autogen-Debug-0f028f409eab5bd73a58.json @@ -0,0 +1,95 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/ConfigOptions/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "backtrace" : 0, + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "backtrace" : 0, + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "backtrace" : 0, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "backtrace" : 0, + "id" : "Material::@05d68cd248c3246409d7" + }, + { + "backtrace" : 0, + "id" : "BCBase::@baf13bdd6bef809f2182" + }, + { + "id" : "ConfigOptions_autogen_timestamp_deps::@1c9d458e4038aca43955" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "ConfigOptions_autogen::@1c9d458e4038aca43955", + "isGeneratorProvided" : true, + "name" : "ConfigOptions_autogen", + "paths" : + { + "build" : "src/ConfigOptions", + "source" : "src/ConfigOptions" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1, + 2 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/ConfigOptions/CMakeFiles/ConfigOptions_autogen", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/ConfigOptions/CMakeFiles/ConfigOptions_autogen.rule", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/ConfigOptions/ConfigOptions_autogen/timestamp.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-ConfigOptions_autogen_timestamp_deps-Debug-53ed4ccb992a5e4cbc43.json b/out/build/.cmake/api/v1/reply/target-ConfigOptions_autogen_timestamp_deps-Debug-53ed4ccb992a5e4cbc43.json new file mode 100644 index 0000000..07631a6 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-ConfigOptions_autogen_timestamp_deps-Debug-53ed4ccb992a5e4cbc43.json @@ -0,0 +1,80 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/ConfigOptions/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "id" : "Material::@05d68cd248c3246409d7" + }, + { + "id" : "BCBase::@baf13bdd6bef809f2182" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "ConfigOptions_autogen_timestamp_deps::@1c9d458e4038aca43955", + "isGeneratorProvided" : true, + "name" : "ConfigOptions_autogen_timestamp_deps", + "paths" : + { + "build" : "src/ConfigOptions", + "source" : "src/ConfigOptions" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/ConfigOptions/CMakeFiles/ConfigOptions_autogen_timestamp_deps", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/ConfigOptions/CMakeFiles/ConfigOptions_autogen_timestamp_deps.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-DataProperty-Debug-190bd1cfd1a97cd01ae2.json b/out/build/.cmake/api/v1/reply/target-DataProperty-Debug-190bd1cfd1a97cd01ae2.json new file mode 100644 index 0000000..ac4c310 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-DataProperty-Debug-190bd1cfd1a97cd01ae2.json @@ -0,0 +1,719 @@ +{ + "artifacts" : + [ + { + "path" : "Debug/DataProperty.dll" + }, + { + "path" : "Debug/DataProperty.lib" + }, + { + "path" : "Debug/DataProperty.pdb" + } + ], + "backtrace" : 1, + "backtraceGraph" : + { + "commands" : + [ + "add_library", + "install", + "target_link_libraries", + "add_dependencies", + "add_compile_options", + "target_compile_definitions", + "add_definitions", + "include_directories" + ], + "files" : + [ + "src/DataProperty/CMakeLists.txt", + "src/CMakeLists.txt", + "src/PythonModule/CMakeLists.txt", + "CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 20, + "parent" : 0 + }, + { + "file" : 1 + }, + { + "command" : 1, + "file" : 1, + "line" : 58, + "parent" : 2 + }, + { + "command" : 2, + "file" : 0, + "line" : 37, + "parent" : 0 + }, + { + "file" : 2 + }, + { + "command" : 2, + "file" : 2, + "line" : 44, + "parent" : 5 + }, + { + "command" : 3, + "file" : 0, + "line" : 46, + "parent" : 0 + }, + { + "file" : 3 + }, + { + "command" : 4, + "file" : 3, + "line" : 85, + "parent" : 8 + }, + { + "command" : 4, + "file" : 3, + "line" : 86, + "parent" : 8 + }, + { + "command" : 5, + "file" : 0, + "line" : 28, + "parent" : 0 + }, + { + "command" : 6, + "file" : 3, + "line" : 118, + "parent" : 8 + }, + { + "command" : 6, + "file" : 3, + "line" : 83, + "parent" : 8 + }, + { + "command" : 7, + "file" : 0, + "line" : 4, + "parent" : 0 + } + ] + }, + "compileGroups" : + [ + { + "compileCommandFragments" : + [ + { + "fragment" : "-DQT_QML_DEBUG /Zi /Ob0 /Od /RTC1 -MDd" + }, + { + "backtrace" : 9, + "fragment" : "/utf-8" + }, + { + "backtrace" : 10, + "fragment" : "/MDd" + } + ], + "defines" : + [ + { + "backtrace" : 11, + "define" : "DATAPROPERTY_API" + }, + { + "define" : "DataProperty_EXPORTS" + }, + { + "backtrace" : 12, + "define" : "OUTPUT_DEBUG_INFO" + }, + { + "backtrace" : 4, + "define" : "QT_CORE_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_GUI_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_WIDGETS_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_XML_LIB" + }, + { + "backtrace" : 13, + "define" : "UNICODE" + }, + { + "backtrace" : 13, + "define" : "_UNICODE" + } + ], + "includes" : + [ + { + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/DataProperty" + }, + { + "path" : "D:/WBFZCPP/source/FastCAE/src/DataProperty" + }, + { + "backtrace" : 0, + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/DataProperty/DataProperty_autogen/include" + }, + { + "backtrace" : 14, + "path" : "D:/WBFZCPP/source/FastCAE/src/DataProperty/.." + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtCore" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/./mkspecs/win32-msvc" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtGui" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtANGLE" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtWidgets" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtXml" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "D:/WBFZCPP/source/FastCAE/extlib/Python/include" + } + ], + "language" : "CXX", + "languageStandard" : + { + "backtraces" : + [ + 4 + ], + "standard" : "11" + }, + "sourceIndexes" : + [ + 0, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47 + ] + } + ], + "dependencies" : + [ + { + "backtrace" : 4, + "id" : "Common::@29aabc9fbfb9b5406d55" + }, + { + "backtrace" : 7, + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "id" : "DataProperty_autogen_timestamp_deps::@ec84555ffa827036bc26" + }, + { + "backtrace" : 0, + "id" : "DataProperty_autogen::@ec84555ffa827036bc26" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "DataProperty::@ec84555ffa827036bc26", + "install" : + { + "destinations" : + [ + { + "backtrace" : 3, + "path" : "bin" + } + ], + "prefix" : + { + "path" : "D:/WBFZCPP/source/FastCAE/install" + } + }, + "link" : + { + "commandFragments" : + [ + { + "fragment" : "/machine:x64 /debug /INCREMENTAL", + "role" : "flags" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Xmld.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\PythonModule.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Widgetsd.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Guid.lib", + "role" : "libraries" + }, + { + "backtrace" : 6, + "fragment" : "D:\\WBFZCPP\\source\\FastCAE\\extlib\\Python\\libs\\python37.lib", + "role" : "libraries" + }, + { + "backtrace" : 6, + "fragment" : "Debug\\Common.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Cored.lib", + "role" : "libraries" + }, + { + "fragment" : "kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib", + "role" : "libraries" + } + ], + "language" : "CXX" + }, + "name" : "DataProperty", + "nameOnDisk" : "DataProperty.dll", + "paths" : + { + "build" : "src/DataProperty", + "source" : "src/DataProperty" + }, + "sourceGroups" : + [ + { + "name" : "Source Files", + "sourceIndexes" : + [ + 0, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47 + ] + }, + { + "name" : "Header Files", + "sourceIndexes" : + [ + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24 + ] + }, + { + "name" : "", + "sourceIndexes" : + [ + 48 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 49 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/DataProperty/DataProperty_autogen/mocs_compilation.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "path" : "src/DataProperty/ComponentBase.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/DataProperty/DataBase.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/DataProperty/DataPropertyAPI.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/DataProperty/ParameterBase.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/DataProperty/ParameterBool.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/DataProperty/ParameterColor.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/DataProperty/ParameterDouble.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/DataProperty/ParameterGroup.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/DataProperty/ParameterInt.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/DataProperty/ParameterList.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/DataProperty/ParameterPath.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/DataProperty/ParameterSelectable.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/DataProperty/ParameterString.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/DataProperty/ParameterTable.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/DataProperty/PropertyBase.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/DataProperty/PropertyBool.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/DataProperty/PropertyColor.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/DataProperty/PropertyDouble.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/DataProperty/PropertyIDList.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/DataProperty/PropertyInt.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/DataProperty/PropertyList.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/DataProperty/PropertyPoint.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/DataProperty/PropertyString.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/DataProperty/modelTreeItemType.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/DataProperty/ComponentBase.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/DataProperty/DataBase.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/DataProperty/ParameterBase.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/DataProperty/ParameterBool.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/DataProperty/ParameterColor.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/DataProperty/ParameterDouble.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/DataProperty/ParameterGroup.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/DataProperty/ParameterInt.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/DataProperty/ParameterList.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/DataProperty/ParameterPath.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/DataProperty/ParameterSelectable.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/DataProperty/ParameterString.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/DataProperty/ParameterTable.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/DataProperty/PropertyBase.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/DataProperty/PropertyBool.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/DataProperty/PropertyColor.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/DataProperty/PropertyDouble.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/DataProperty/PropertyIDList.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/DataProperty/PropertyInt.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/DataProperty/PropertyList.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/DataProperty/PropertyPoint.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/DataProperty/PropertyString.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/DataProperty/modelTreeItemType.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/DataProperty/DataProperty_autogen/timestamp", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/DataProperty/DataProperty_autogen/timestamp.rule", + "sourceGroupIndex" : 3 + } + ], + "type" : "SHARED_LIBRARY" +} diff --git a/out/build/.cmake/api/v1/reply/target-DataProperty_autogen-Debug-4638356d3a0e008ba910.json b/out/build/.cmake/api/v1/reply/target-DataProperty_autogen-Debug-4638356d3a0e008ba910.json new file mode 100644 index 0000000..c2cb2db --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-DataProperty_autogen-Debug-4638356d3a0e008ba910.json @@ -0,0 +1,79 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/DataProperty/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "backtrace" : 0, + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "id" : "DataProperty_autogen_timestamp_deps::@ec84555ffa827036bc26" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "DataProperty_autogen::@ec84555ffa827036bc26", + "isGeneratorProvided" : true, + "name" : "DataProperty_autogen", + "paths" : + { + "build" : "src/DataProperty", + "source" : "src/DataProperty" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1, + 2 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/DataProperty/CMakeFiles/DataProperty_autogen", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/DataProperty/CMakeFiles/DataProperty_autogen.rule", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/DataProperty/DataProperty_autogen/timestamp.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-DataProperty_autogen_timestamp_deps-Debug-132f8d8c02350e7e52e1.json b/out/build/.cmake/api/v1/reply/target-DataProperty_autogen_timestamp_deps-Debug-132f8d8c02350e7e52e1.json new file mode 100644 index 0000000..92e75b9 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-DataProperty_autogen_timestamp_deps-Debug-132f8d8c02350e7e52e1.json @@ -0,0 +1,68 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/DataProperty/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "DataProperty_autogen_timestamp_deps::@ec84555ffa827036bc26", + "isGeneratorProvided" : true, + "name" : "DataProperty_autogen_timestamp_deps", + "paths" : + { + "build" : "src/DataProperty", + "source" : "src/DataProperty" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/DataProperty/CMakeFiles/DataProperty_autogen_timestamp_deps", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/DataProperty/CMakeFiles/DataProperty_autogen_timestamp_deps.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-Doxygen-Debug-7c3db3ebfd982f23d512.json b/out/build/.cmake/api/v1/reply/target-Doxygen-Debug-7c3db3ebfd982f23d512.json new file mode 100644 index 0000000..43eb238 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-Doxygen-Debug-7c3db3ebfd982f23d512.json @@ -0,0 +1,89 @@ +{ + "backtrace" : 4, + "backtraceGraph" : + { + "commands" : + [ + "add_custom_target", + "buildDoxygenDoc", + "include" + ], + "files" : + [ + "cmake/UseDoxygen.cmake", + "CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 1 + }, + { + "command" : 2, + "file" : 1, + "line" : 291, + "parent" : 0 + }, + { + "file" : 0, + "parent" : 1 + }, + { + "command" : 1, + "file" : 0, + "line" : 29, + "parent" : 2 + }, + { + "command" : 0, + "file" : 0, + "line" : 15, + "parent" : 3 + } + ] + }, + "folder" : + { + "name" : "Documentation" + }, + "id" : "Doxygen::@6890427a1f51a3e7e1df", + "name" : "Doxygen", + "paths" : + { + "build" : ".", + "source" : "." + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1 + ] + } + ], + "sources" : + [ + { + "backtrace" : 4, + "isGenerated" : true, + "path" : "out/build/CMakeFiles/Doxygen", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/CMakeFiles/Doxygen.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-Geometry-Debug-db1a1175d1a0b7a8f351.json b/out/build/.cmake/api/v1/reply/target-Geometry-Debug-db1a1175d1a0b7a8f351.json new file mode 100644 index 0000000..328b45a --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-Geometry-Debug-db1a1175d1a0b7a8f351.json @@ -0,0 +1,1208 @@ +{ + "artifacts" : + [ + { + "path" : "Debug/Geometry.dll" + }, + { + "path" : "Debug/Geometry.lib" + }, + { + "path" : "Debug/Geometry.pdb" + } + ], + "backtrace" : 1, + "backtraceGraph" : + { + "commands" : + [ + "add_library", + "install", + "target_link_libraries", + "set_property", + "_populate_Widgets_target_properties", + "find_package", + "add_dependencies", + "add_compile_options", + "target_compile_definitions", + "add_definitions", + "include_directories" + ], + "files" : + [ + "src/Geometry/CMakeLists.txt", + "src/CMakeLists.txt", + "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Widgets/Qt5WidgetsConfig.cmake", + "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5/Qt5Config.cmake", + "CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 20, + "parent" : 0 + }, + { + "file" : 1 + }, + { + "command" : 1, + "file" : 1, + "line" : 58, + "parent" : 2 + }, + { + "command" : 2, + "file" : 0, + "line" : 37, + "parent" : 0 + }, + { + "file" : 4 + }, + { + "command" : 5, + "file" : 4, + "line" : 142, + "parent" : 5 + }, + { + "file" : 3, + "parent" : 6 + }, + { + "command" : 5, + "file" : 3, + "line" : 28, + "parent" : 7 + }, + { + "file" : 2, + "parent" : 8 + }, + { + "command" : 4, + "file" : 2, + "line" : 207, + "parent" : 9 + }, + { + "command" : 3, + "file" : 2, + "line" : 44, + "parent" : 10 + }, + { + "command" : 6, + "file" : 0, + "line" : 50, + "parent" : 0 + }, + { + "command" : 7, + "file" : 4, + "line" : 85, + "parent" : 5 + }, + { + "command" : 7, + "file" : 4, + "line" : 86, + "parent" : 5 + }, + { + "command" : 8, + "file" : 0, + "line" : 28, + "parent" : 0 + }, + { + "command" : 9, + "file" : 4, + "line" : 118, + "parent" : 5 + }, + { + "command" : 9, + "file" : 4, + "line" : 83, + "parent" : 5 + }, + { + "command" : 10, + "file" : 0, + "line" : 4, + "parent" : 0 + } + ] + }, + "compileGroups" : + [ + { + "compileCommandFragments" : + [ + { + "fragment" : "-DQT_QML_DEBUG /Zi /Ob0 /Od /RTC1 -MDd" + }, + { + "backtrace" : 13, + "fragment" : "/utf-8" + }, + { + "backtrace" : 14, + "fragment" : "/MDd" + } + ], + "defines" : + [ + { + "backtrace" : 15, + "define" : "GEOMETRY_API" + }, + { + "define" : "Geometry_EXPORTS" + }, + { + "backtrace" : 16, + "define" : "OUTPUT_DEBUG_INFO" + }, + { + "backtrace" : 4, + "define" : "QT_CORE_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_GUI_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_WIDGETS_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_XML_LIB" + }, + { + "backtrace" : 17, + "define" : "UNICODE" + }, + { + "backtrace" : 17, + "define" : "_UNICODE" + } + ], + "includes" : + [ + { + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/Geometry" + }, + { + "path" : "D:/WBFZCPP/source/FastCAE/src/Geometry" + }, + { + "backtrace" : 0, + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/Geometry/Geometry_autogen/include" + }, + { + "backtrace" : 18, + "path" : "D:/WBFZCPP/source/FastCAE/src/Geometry/.." + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/OCCT/inc" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtWidgets" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtGui" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtANGLE" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtCore" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/./mkspecs/win32-msvc" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtXml" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/VTK/include/vtk-9.3" + } + ], + "language" : "CXX", + "languageStandard" : + { + "backtraces" : + [ + 4 + ], + "standard" : "11" + }, + "sourceIndexes" : + [ + 0, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + } + ], + "dependencies" : + [ + { + "backtrace" : 12, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "id" : "Geometry_autogen_timestamp_deps::@b7b2e4191bc961e9afba" + }, + { + "backtrace" : 0, + "id" : "Geometry_autogen::@b7b2e4191bc961e9afba" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "Geometry::@b7b2e4191bc961e9afba", + "install" : + { + "destinations" : + [ + { + "backtrace" : 3, + "path" : "bin" + } + ], + "prefix" : + { + "path" : "D:/WBFZCPP/source/FastCAE/install" + } + }, + "link" : + { + "commandFragments" : + [ + { + "fragment" : "/machine:x64 /debug /INCREMENTAL", + "role" : "flags" + }, + { + "backtrace" : 4, + "fragment" : "D:\\vcpkg\\installed\\x64-windows\\debug\\lib\\freetype.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKBO.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKBRep.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKBool.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKCAF.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKCDF.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKG2d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKG3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKGeomAlgo.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKGeomBase.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKHLR.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKIGES.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKLCAF.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKMath.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKMesh.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKPrim.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKSTEP.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKSTEP209.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKSTEPAttr.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKSTEPBase.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKService.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKShHealing.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKTopAlgo.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKV3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKVCAF.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKXCAF.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKXDEIGES.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKXSBase.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKernel.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonColor-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonComputationalGeometry-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonDataModel-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonExecutionModel-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonMath-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonMisc-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonSystem-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonTransforms-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersExtraction-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersGeneral-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersGeometry-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersSources-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersStatistics-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOLegacy-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOXML-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOXMLParser-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingFourier-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingMath-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkInteractionStyle-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkParallelCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkParallelDIY-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingFreeType-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingOpenGL2-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingUI-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingVolume-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingVolumeOpenGL2-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkdoubleconversion-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkexpat-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkfreetype-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkglew-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtklz4-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtklzma-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtksys-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkzlib-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOGeometry-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\DataProperty.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Xmld.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Widgetsd.lib", + "role" : "libraries" + }, + { + "backtrace" : 11, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Guid.lib", + "role" : "libraries" + }, + { + "backtrace" : 11, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Cored.lib", + "role" : "libraries" + }, + { + "fragment" : "kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib", + "role" : "libraries" + } + ], + "language" : "CXX" + }, + "name" : "Geometry", + "nameOnDisk" : "Geometry.dll", + "paths" : + { + "build" : "src/Geometry", + "source" : "src/Geometry" + }, + "sourceGroups" : + [ + { + "name" : "Source Files", + "sourceIndexes" : + [ + 0, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + }, + { + "name" : "Header Files", + "sourceIndexes" : + [ + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33 + ] + }, + { + "name" : "", + "sourceIndexes" : + [ + 66 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 67 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/Geometry/Geometry_autogen/mocs_compilation.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "path" : "src/Geometry/GeoCommon.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Geometry/GeoComponent.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Geometry/GeometryPy.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Geometry/geometryAPI.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Geometry/geometryData.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Geometry/geometryDatum.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Geometry/geometryExporter.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Geometry/geometryModelParaBase.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Geometry/geometryParaBoolOperation.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Geometry/geometryParaBox.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Geometry/geometryParaChamfer.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Geometry/geometryParaCone.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Geometry/geometryParaCylinder.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Geometry/geometryParaExtrusion.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Geometry/geometryParaFace.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Geometry/geometryParaFillet.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Geometry/geometryParaGeoSplitter.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Geometry/geometryParaLine.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Geometry/geometryParaLoft.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Geometry/geometryParaMakeFillGap.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Geometry/geometryParaMakeFillHole.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Geometry/geometryParaMakeMatrix.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Geometry/geometryParaMakeMirror.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Geometry/geometryParaMakeMove.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Geometry/geometryParaMakeRemoveSurface.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Geometry/geometryParaPoint.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Geometry/geometryParaRevol.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Geometry/geometryParaRotateFeature.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Geometry/geometryParaSphere.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Geometry/geometryParaSweep.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Geometry/geometryParaVariableFillet.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Geometry/geometrySet.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Geometry/geometrySketch.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Geometry/GeoCommon.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Geometry/GeoComponent.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Geometry/GeometryPy.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Geometry/geometryData.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Geometry/geometryDatum.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Geometry/geometryExporter.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Geometry/geometryModelParaBase.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Geometry/geometryParaBoolOperation.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Geometry/geometryParaBox.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Geometry/geometryParaChamfer.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Geometry/geometryParaCone.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Geometry/geometryParaCylinder.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Geometry/geometryParaExtrusion.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Geometry/geometryParaFace.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Geometry/geometryParaFillet.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Geometry/geometryParaGeoSplitter.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Geometry/geometryParaLine.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Geometry/geometryParaLoft.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Geometry/geometryParaMakeFillGap.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Geometry/geometryParaMakeFillHole.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Geometry/geometryParaMakeMatrix.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Geometry/geometryParaMakeMirror.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Geometry/geometryParaMakeMove.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Geometry/geometryParaMakeRemoveSurface.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Geometry/geometryParaPoint.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Geometry/geometryParaRevol.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Geometry/geometryParaRotateFeature.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Geometry/geometryParaSphere.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Geometry/geometryParaSweep.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Geometry/geometryParaVariableFillet.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Geometry/geometrySet.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Geometry/geometrySketch.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/Geometry/Geometry_autogen/timestamp", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/Geometry/Geometry_autogen/timestamp.rule", + "sourceGroupIndex" : 3 + } + ], + "type" : "SHARED_LIBRARY" +} diff --git a/out/build/.cmake/api/v1/reply/target-GeometryCommand-Debug-e7665f9611eab3eb73e1.json b/out/build/.cmake/api/v1/reply/target-GeometryCommand-Debug-e7665f9611eab3eb73e1.json new file mode 100644 index 0000000..b75cb8e --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-GeometryCommand-Debug-e7665f9611eab3eb73e1.json @@ -0,0 +1,1337 @@ +{ + "artifacts" : + [ + { + "path" : "Debug/GeometryCommand.dll" + }, + { + "path" : "Debug/GeometryCommand.lib" + }, + { + "path" : "Debug/GeometryCommand.pdb" + } + ], + "backtrace" : 1, + "backtraceGraph" : + { + "commands" : + [ + "add_library", + "install", + "target_link_libraries", + "add_dependencies", + "add_compile_options", + "target_compile_definitions", + "add_definitions", + "include_directories" + ], + "files" : + [ + "src/GeometryCommand/CMakeLists.txt", + "src/CMakeLists.txt", + "CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 29, + "parent" : 0 + }, + { + "file" : 1 + }, + { + "command" : 1, + "file" : 1, + "line" : 58, + "parent" : 2 + }, + { + "command" : 2, + "file" : 0, + "line" : 50, + "parent" : 0 + }, + { + "command" : 3, + "file" : 0, + "line" : 63, + "parent" : 0 + }, + { + "file" : 2 + }, + { + "command" : 4, + "file" : 2, + "line" : 85, + "parent" : 6 + }, + { + "command" : 4, + "file" : 2, + "line" : 86, + "parent" : 6 + }, + { + "command" : 5, + "file" : 0, + "line" : 39, + "parent" : 0 + }, + { + "command" : 6, + "file" : 2, + "line" : 118, + "parent" : 6 + }, + { + "command" : 6, + "file" : 2, + "line" : 83, + "parent" : 6 + }, + { + "command" : 7, + "file" : 0, + "line" : 4, + "parent" : 0 + } + ] + }, + "compileGroups" : + [ + { + "compileCommandFragments" : + [ + { + "fragment" : "-DQT_QML_DEBUG /Zi /Ob0 /Od /RTC1 -MDd" + }, + { + "backtrace" : 7, + "fragment" : "/utf-8" + }, + { + "backtrace" : 8, + "fragment" : "/MDd" + } + ], + "defines" : + [ + { + "backtrace" : 9, + "define" : "GEOMETRYCOMMAND_API" + }, + { + "define" : "GeometryCommand_EXPORTS" + }, + { + "backtrace" : 10, + "define" : "OUTPUT_DEBUG_INFO" + }, + { + "backtrace" : 4, + "define" : "QT_CORE_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_GUI_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_WIDGETS_LIB" + }, + { + "backtrace" : 11, + "define" : "UNICODE" + }, + { + "backtrace" : 11, + "define" : "_UNICODE" + } + ], + "includes" : + [ + { + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/GeometryCommand" + }, + { + "path" : "D:/WBFZCPP/source/FastCAE/src/GeometryCommand" + }, + { + "backtrace" : 0, + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/GeometryCommand/GeometryCommand_autogen/include" + }, + { + "backtrace" : 12, + "path" : "D:/WBFZCPP/source/FastCAE/src/GeometryCommand/.." + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/OCCT/inc" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtCore" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/./mkspecs/win32-msvc" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtGui" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtANGLE" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtWidgets" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/VTK/include/vtk-9.3" + } + ], + "language" : "CXX", + "languageStandard" : + { + "backtraces" : + [ + 4 + ], + "standard" : "11" + }, + "sourceIndexes" : + [ + 0, + 1, + 2, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91 + ] + } + ], + "dependencies" : + [ + { + "backtrace" : 5, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "backtrace" : 5, + "id" : "Geometry::@b7b2e4191bc961e9afba" + }, + { + "backtrace" : 5, + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + }, + { + "backtrace" : 5, + "id" : "GeometryDataExchange::@d0ecc93579f777564da6" + }, + { + "id" : "GeometryCommand_autogen_timestamp_deps::@d82e5b79e04a3b196df4" + }, + { + "backtrace" : 0, + "id" : "GeometryCommand_autogen::@d82e5b79e04a3b196df4" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "GeometryCommand::@d82e5b79e04a3b196df4", + "install" : + { + "destinations" : + [ + { + "backtrace" : 3, + "path" : "bin" + } + ], + "prefix" : + { + "path" : "D:/WBFZCPP/source/FastCAE/install" + } + }, + "link" : + { + "commandFragments" : + [ + { + "fragment" : "/machine:x64 /debug /INCREMENTAL", + "role" : "flags" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKFillet.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKIVtk.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKOffset.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingGL2PSOpenGL2-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\GeometryDataExchange.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ModuleBase.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Geometry.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "D:\\vcpkg\\installed\\x64-windows\\debug\\lib\\freetype.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKBO.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKBRep.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKBool.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKG2d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKG3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKGeomAlgo.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKGeomBase.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKHLR.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKMath.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKMesh.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKPrim.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKService.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKShHealing.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKTopAlgo.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKV3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKernel.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonColor-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersGeometry-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersSources-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingMath-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkInteractionStyle-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingFreeType-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingOpenGL2-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingUI-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingVolume-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingVolumeOpenGL2-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkfreetype-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkglew-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonComputationalGeometry-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonDataModel-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonExecutionModel-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonMath-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonMisc-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonSystem-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonTransforms-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersExtraction-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersGeneral-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersStatistics-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOLegacy-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOXML-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOXMLParser-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingFourier-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkParallelCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkParallelDIY-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkdoubleconversion-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkexpat-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtklz4-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtklzma-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtksys-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkzlib-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\DataProperty.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Widgetsd.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Guid.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Cored.lib", + "role" : "libraries" + }, + { + "fragment" : "kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib", + "role" : "libraries" + } + ], + "language" : "CXX" + }, + "name" : "GeometryCommand", + "nameOnDisk" : "GeometryCommand.dll", + "paths" : + { + "build" : "src/GeometryCommand", + "source" : "src/GeometryCommand" + }, + "sourceGroups" : + [ + { + "name" : "Source Files", + "sourceIndexes" : + [ + 0, + 1, + 2, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91 + ] + }, + { + "name" : "Header Files", + "sourceIndexes" : + [ + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47 + ] + }, + { + "name" : "", + "sourceIndexes" : + [ + 92, + 93, + 94 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 95 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/GeometryCommand/GeometryCommand_autogen/mocs_compilation.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/GeometryCommand/qrc_qianfan.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/GeometryCommand/qrc_translations.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/GeoCommandBase.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/GeoCommandBool.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/GeoCommandCommon.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/GeoCommandCreateBox.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/GeoCommandCreateBoxComplex.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/GeoCommandCreateChamfer.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/GeoCommandCreateComponent.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/GeoCommandCreateCone.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/GeoCommandCreateCylinder.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/GeoCommandCreateCylindricalComplex.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/GeoCommandCreateDatumplane.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/GeoCommandCreateFace.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/GeoCommandCreateFillet.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/GeoCommandCreateLine.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/GeoCommandCreatePoint.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/GeoCommandCreateSphere.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/GeoCommandCreateVariableFillet.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/GeoCommandFillGap.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/GeoCommandGeoSplitter.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/GeoCommandImport.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/GeoCommandList.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/GeoCommandMakeExtrusion.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/GeoCommandMakeFillHole.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/GeoCommandMakeLoft.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/GeoCommandMakeMatrix.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/GeoCommandMakeRemoveSurface.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/GeoCommandMakeRevol.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/GeoCommandMakeSweep.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/GeoCommandMirrorFeature.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/GeoCommandMoveFeature.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/GeoCommandPy.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/GeoCommandRemove.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/GeoCommandRemoveDatum.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/GeoCommandRotateFeature.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/GeoCommandSketchArc.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/GeoCommandSketchBase.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/GeoCommandSketchCircle.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/GeoCommandSketchComplete.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/GeoCommandSketchLine.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/GeoCommandSketchPolyline.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/GeoCommandSketchRect.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/GeoCommandSketchSpline.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/GeoSketchCreater.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/ModelRefine.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryCommand/geometryCommandAPI.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryCommand/GeoCommandBase.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryCommand/GeoCommandBool.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryCommand/GeoCommandCommon.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryCommand/GeoCommandCreateBox.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryCommand/GeoCommandCreateBoxComplex.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryCommand/GeoCommandCreateChamfer.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryCommand/GeoCommandCreateComponent.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryCommand/GeoCommandCreateCone.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryCommand/GeoCommandCreateCylinder.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryCommand/GeoCommandCreateCylindricalComplex.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryCommand/GeoCommandCreateDatumplane.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryCommand/GeoCommandCreateFace.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryCommand/GeoCommandCreateFillet.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryCommand/GeoCommandCreateLine.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryCommand/GeoCommandCreatePoint.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryCommand/GeoCommandCreateSphere.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryCommand/GeoCommandCreateVariableFillet.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryCommand/GeoCommandFillGap.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryCommand/GeoCommandGeoSplitter.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryCommand/GeoCommandImport.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryCommand/GeoCommandList.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryCommand/GeoCommandMakeExtrusion.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryCommand/GeoCommandMakeFillHole.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryCommand/GeoCommandMakeLoft.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryCommand/GeoCommandMakeMatrix.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryCommand/GeoCommandMakeRemoveSurface.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryCommand/GeoCommandMakeRevol.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryCommand/GeoCommandMakeSweep.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryCommand/GeoCommandMirrorFeature.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryCommand/GeoCommandMoveFeature.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryCommand/GeoCommandPy.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryCommand/GeoCommandRemove.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryCommand/GeoCommandRemoveDatum.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryCommand/GeoCommandRotateFeature.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryCommand/GeoCommandSketchArc.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryCommand/GeoCommandSketchBase.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryCommand/GeoCommandSketchCircle.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryCommand/GeoCommandSketchComplete.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryCommand/GeoCommandSketchLine.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryCommand/GeoCommandSketchPolyline.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryCommand/GeoCommandSketchRect.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryCommand/GeoCommandSketchSpline.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryCommand/GeoSketchCreater.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryCommand/ModelRefine.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/GeometryCommand/GeometryCommand_autogen/timestamp", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/qrc/qianfan.qrc", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/qrc/translations.qrc", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/GeometryCommand/GeometryCommand_autogen/timestamp.rule", + "sourceGroupIndex" : 3 + } + ], + "type" : "SHARED_LIBRARY" +} diff --git a/out/build/.cmake/api/v1/reply/target-GeometryCommand_autogen-Debug-56d273cbf7900b09f3d3.json b/out/build/.cmake/api/v1/reply/target-GeometryCommand_autogen-Debug-56d273cbf7900b09f3d3.json new file mode 100644 index 0000000..4808ed0 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-GeometryCommand_autogen-Debug-56d273cbf7900b09f3d3.json @@ -0,0 +1,91 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/GeometryCommand/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "backtrace" : 0, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "backtrace" : 0, + "id" : "Geometry::@b7b2e4191bc961e9afba" + }, + { + "backtrace" : 0, + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + }, + { + "backtrace" : 0, + "id" : "GeometryDataExchange::@d0ecc93579f777564da6" + }, + { + "id" : "GeometryCommand_autogen_timestamp_deps::@d82e5b79e04a3b196df4" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "GeometryCommand_autogen::@d82e5b79e04a3b196df4", + "isGeneratorProvided" : true, + "name" : "GeometryCommand_autogen", + "paths" : + { + "build" : "src/GeometryCommand", + "source" : "src/GeometryCommand" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1, + 2 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/GeometryCommand/CMakeFiles/GeometryCommand_autogen", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/GeometryCommand/CMakeFiles/GeometryCommand_autogen.rule", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/GeometryCommand/GeometryCommand_autogen/timestamp.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-GeometryCommand_autogen_timestamp_deps-Debug-e53ab7fdc37f75042932.json b/out/build/.cmake/api/v1/reply/target-GeometryCommand_autogen_timestamp_deps-Debug-e53ab7fdc37f75042932.json new file mode 100644 index 0000000..4e11993 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-GeometryCommand_autogen_timestamp_deps-Debug-e53ab7fdc37f75042932.json @@ -0,0 +1,77 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/GeometryCommand/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "id" : "Geometry::@b7b2e4191bc961e9afba" + }, + { + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + }, + { + "id" : "GeometryDataExchange::@d0ecc93579f777564da6" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "GeometryCommand_autogen_timestamp_deps::@d82e5b79e04a3b196df4", + "isGeneratorProvided" : true, + "name" : "GeometryCommand_autogen_timestamp_deps", + "paths" : + { + "build" : "src/GeometryCommand", + "source" : "src/GeometryCommand" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/GeometryCommand/CMakeFiles/GeometryCommand_autogen_timestamp_deps", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/GeometryCommand/CMakeFiles/GeometryCommand_autogen_timestamp_deps.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-GeometryDataExchange-Debug-5d6ea264b5937e2f23f0.json b/out/build/.cmake/api/v1/reply/target-GeometryDataExchange-Debug-5d6ea264b5937e2f23f0.json new file mode 100644 index 0000000..81a66e1 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-GeometryDataExchange-Debug-5d6ea264b5937e2f23f0.json @@ -0,0 +1,817 @@ +{ + "artifacts" : + [ + { + "path" : "Debug/GeometryDataExchange.dll" + }, + { + "path" : "Debug/GeometryDataExchange.lib" + }, + { + "path" : "Debug/GeometryDataExchange.pdb" + } + ], + "backtrace" : 1, + "backtraceGraph" : + { + "commands" : + [ + "add_library", + "install", + "target_link_libraries", + "set_property", + "_populate_Widgets_target_properties", + "find_package", + "add_dependencies", + "add_compile_options", + "target_compile_definitions", + "add_definitions", + "include_directories" + ], + "files" : + [ + "src/GeometryDataExchange/CMakeLists.txt", + "src/CMakeLists.txt", + "src/PythonModule/CMakeLists.txt", + "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Widgets/Qt5WidgetsConfig.cmake", + "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5/Qt5Config.cmake", + "CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 20, + "parent" : 0 + }, + { + "file" : 1 + }, + { + "command" : 1, + "file" : 1, + "line" : 58, + "parent" : 2 + }, + { + "command" : 2, + "file" : 0, + "line" : 39, + "parent" : 0 + }, + { + "file" : 2 + }, + { + "command" : 2, + "file" : 2, + "line" : 44, + "parent" : 5 + }, + { + "file" : 5 + }, + { + "command" : 5, + "file" : 5, + "line" : 142, + "parent" : 7 + }, + { + "file" : 4, + "parent" : 8 + }, + { + "command" : 5, + "file" : 4, + "line" : 28, + "parent" : 9 + }, + { + "file" : 3, + "parent" : 10 + }, + { + "command" : 4, + "file" : 3, + "line" : 207, + "parent" : 11 + }, + { + "command" : 3, + "file" : 3, + "line" : 44, + "parent" : 12 + }, + { + "command" : 6, + "file" : 0, + "line" : 47, + "parent" : 0 + }, + { + "command" : 7, + "file" : 5, + "line" : 85, + "parent" : 7 + }, + { + "command" : 7, + "file" : 5, + "line" : 86, + "parent" : 7 + }, + { + "command" : 8, + "file" : 0, + "line" : 28, + "parent" : 0 + }, + { + "command" : 9, + "file" : 5, + "line" : 118, + "parent" : 7 + }, + { + "command" : 9, + "file" : 5, + "line" : 83, + "parent" : 7 + }, + { + "command" : 10, + "file" : 0, + "line" : 4, + "parent" : 0 + } + ] + }, + "compileGroups" : + [ + { + "compileCommandFragments" : + [ + { + "fragment" : "-DQT_QML_DEBUG /Zi /Ob0 /Od /RTC1 -MDd" + }, + { + "backtrace" : 15, + "fragment" : "/utf-8" + }, + { + "backtrace" : 16, + "fragment" : "/MDd" + } + ], + "defines" : + [ + { + "backtrace" : 17, + "define" : "GEOMETRYDATAEXCHANGE_API" + }, + { + "define" : "GeometryDataExchange_EXPORTS" + }, + { + "backtrace" : 18, + "define" : "OUTPUT_DEBUG_INFO" + }, + { + "backtrace" : 4, + "define" : "QT_CORE_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_GUI_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_WIDGETS_LIB" + }, + { + "backtrace" : 19, + "define" : "UNICODE" + }, + { + "backtrace" : 19, + "define" : "_UNICODE" + } + ], + "includes" : + [ + { + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/GeometryDataExchange" + }, + { + "path" : "D:/WBFZCPP/source/FastCAE/src/GeometryDataExchange" + }, + { + "backtrace" : 0, + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/GeometryDataExchange/GeometryDataExchange_autogen/include" + }, + { + "backtrace" : 20, + "path" : "D:/WBFZCPP/source/FastCAE/src/GeometryDataExchange/.." + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/OCCT/inc" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/VTK/include/vtk-9.3" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtWidgets" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtGui" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtANGLE" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtCore" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/./mkspecs/win32-msvc" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "D:/WBFZCPP/source/FastCAE/extlib/Python/include" + } + ], + "language" : "CXX", + "languageStandard" : + { + "backtraces" : + [ + 4 + ], + "standard" : "11" + }, + "sourceIndexes" : + [ + 0, + 7, + 8, + 9, + 10, + 11 + ] + } + ], + "dependencies" : + [ + { + "backtrace" : 14, + "id" : "Common::@29aabc9fbfb9b5406d55" + }, + { + "backtrace" : 14, + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "backtrace" : 14, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "backtrace" : 14, + "id" : "Geometry::@b7b2e4191bc961e9afba" + }, + { + "backtrace" : 14, + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + }, + { + "id" : "GeometryDataExchange_autogen_timestamp_deps::@d0ecc93579f777564da6" + }, + { + "backtrace" : 0, + "id" : "GeometryDataExchange_autogen::@d0ecc93579f777564da6" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "GeometryDataExchange::@d0ecc93579f777564da6", + "install" : + { + "destinations" : + [ + { + "backtrace" : 3, + "path" : "bin" + } + ], + "prefix" : + { + "path" : "D:/WBFZCPP/source/FastCAE/install" + } + }, + "link" : + { + "commandFragments" : + [ + { + "fragment" : "/machine:x64 /debug /INCREMENTAL", + "role" : "flags" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ModuleBase.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Geometry.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKBO.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKBRep.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKBool.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKG2d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKG3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKGeomAlgo.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKGeomBase.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKIGES.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKMath.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKPrim.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKSTEP.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKSTEP209.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKSTEPAttr.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKSTEPBase.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKShHealing.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKTopAlgo.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKXSBase.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKernel.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonColor-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersGeometry-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersSources-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOGeometry-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingMath-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkInteractionStyle-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingFreeType-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingOpenGL2-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingUI-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingVolume-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingVolumeOpenGL2-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkfreetype-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkglew-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonComputationalGeometry-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonDataModel-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonExecutionModel-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonMath-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonMisc-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonSystem-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonTransforms-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersExtraction-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersGeneral-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersStatistics-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOLegacy-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOXML-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOXMLParser-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingFourier-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkParallelCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkParallelDIY-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkdoubleconversion-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkexpat-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtklz4-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtklzma-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtksys-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkzlib-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\DataProperty.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\PythonModule.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Common.lib", + "role" : "libraries" + }, + { + "backtrace" : 6, + "fragment" : "D:\\WBFZCPP\\source\\FastCAE\\extlib\\Python\\libs\\python37.lib", + "role" : "libraries" + }, + { + "backtrace" : 6, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Widgetsd.lib", + "role" : "libraries" + }, + { + "backtrace" : 13, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Guid.lib", + "role" : "libraries" + }, + { + "backtrace" : 13, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Cored.lib", + "role" : "libraries" + }, + { + "fragment" : "kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib", + "role" : "libraries" + } + ], + "language" : "CXX" + }, + "name" : "GeometryDataExchange", + "nameOnDisk" : "GeometryDataExchange.dll", + "paths" : + { + "build" : "src/GeometryDataExchange", + "source" : "src/GeometryDataExchange" + }, + "sourceGroups" : + [ + { + "name" : "Source Files", + "sourceIndexes" : + [ + 0, + 7, + 8, + 9, + 10, + 11 + ] + }, + { + "name" : "Header Files", + "sourceIndexes" : + [ + 1, + 2, + 3, + 4, + 5, + 6 + ] + }, + { + "name" : "", + "sourceIndexes" : + [ + 12 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 13 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/GeometryDataExchange/GeometryDataExchange_autogen/mocs_compilation.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "path" : "src/GeometryDataExchange/BREPdataExchange.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryDataExchange/GeometryDataExchangeAPI.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryDataExchange/GeometryThreadBase.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryDataExchange/IGESdataExchange.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryDataExchange/STEPdataExchange.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryDataExchange/STLdataExchange.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryDataExchange/BREPdataExchange.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryDataExchange/GeometryThreadBase.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryDataExchange/IGESdataExchange.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryDataExchange/STEPdataExchange.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryDataExchange/STLdataExchange.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/GeometryDataExchange/GeometryDataExchange_autogen/timestamp", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/GeometryDataExchange/GeometryDataExchange_autogen/timestamp.rule", + "sourceGroupIndex" : 3 + } + ], + "type" : "SHARED_LIBRARY" +} diff --git a/out/build/.cmake/api/v1/reply/target-GeometryDataExchange_autogen-Debug-6c7fe286560717d76526.json b/out/build/.cmake/api/v1/reply/target-GeometryDataExchange_autogen-Debug-6c7fe286560717d76526.json new file mode 100644 index 0000000..28146c7 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-GeometryDataExchange_autogen-Debug-6c7fe286560717d76526.json @@ -0,0 +1,95 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/GeometryDataExchange/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "backtrace" : 0, + "id" : "Common::@29aabc9fbfb9b5406d55" + }, + { + "backtrace" : 0, + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "backtrace" : 0, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "backtrace" : 0, + "id" : "Geometry::@b7b2e4191bc961e9afba" + }, + { + "backtrace" : 0, + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + }, + { + "id" : "GeometryDataExchange_autogen_timestamp_deps::@d0ecc93579f777564da6" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "GeometryDataExchange_autogen::@d0ecc93579f777564da6", + "isGeneratorProvided" : true, + "name" : "GeometryDataExchange_autogen", + "paths" : + { + "build" : "src/GeometryDataExchange", + "source" : "src/GeometryDataExchange" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1, + 2 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/GeometryDataExchange/CMakeFiles/GeometryDataExchange_autogen", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/GeometryDataExchange/CMakeFiles/GeometryDataExchange_autogen.rule", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/GeometryDataExchange/GeometryDataExchange_autogen/timestamp.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-GeometryDataExchange_autogen_timestamp_deps-Debug-855d220c825b8f9cfc35.json b/out/build/.cmake/api/v1/reply/target-GeometryDataExchange_autogen_timestamp_deps-Debug-855d220c825b8f9cfc35.json new file mode 100644 index 0000000..a9aaade --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-GeometryDataExchange_autogen_timestamp_deps-Debug-855d220c825b8f9cfc35.json @@ -0,0 +1,80 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/GeometryDataExchange/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "id" : "Common::@29aabc9fbfb9b5406d55" + }, + { + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "id" : "Geometry::@b7b2e4191bc961e9afba" + }, + { + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "GeometryDataExchange_autogen_timestamp_deps::@d0ecc93579f777564da6", + "isGeneratorProvided" : true, + "name" : "GeometryDataExchange_autogen_timestamp_deps", + "paths" : + { + "build" : "src/GeometryDataExchange", + "source" : "src/GeometryDataExchange" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/GeometryDataExchange/CMakeFiles/GeometryDataExchange_autogen_timestamp_deps", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/GeometryDataExchange/CMakeFiles/GeometryDataExchange_autogen_timestamp_deps.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-GeometryWidgets-Debug-6c94b9a64d9f27143666.json b/out/build/.cmake/api/v1/reply/target-GeometryWidgets-Debug-6c94b9a64d9f27143666.json new file mode 100644 index 0000000..09d4b4b --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-GeometryWidgets-Debug-6c94b9a64d9f27143666.json @@ -0,0 +1,1565 @@ +{ + "artifacts" : + [ + { + "path" : "Debug/GeometryWidgets.dll" + }, + { + "path" : "Debug/GeometryWidgets.lib" + }, + { + "path" : "Debug/GeometryWidgets.pdb" + } + ], + "backtrace" : 1, + "backtraceGraph" : + { + "commands" : + [ + "add_library", + "install", + "target_link_libraries", + "add_dependencies", + "add_compile_options", + "target_compile_definitions", + "add_definitions", + "include_directories" + ], + "files" : + [ + "src/GeometryWidgets/CMakeLists.txt", + "src/CMakeLists.txt", + "src/PythonModule/CMakeLists.txt", + "CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 29, + "parent" : 0 + }, + { + "file" : 1 + }, + { + "command" : 1, + "file" : 1, + "line" : 58, + "parent" : 2 + }, + { + "command" : 2, + "file" : 0, + "line" : 50, + "parent" : 0 + }, + { + "file" : 2 + }, + { + "command" : 2, + "file" : 2, + "line" : 44, + "parent" : 5 + }, + { + "command" : 3, + "file" : 0, + "line" : 58, + "parent" : 0 + }, + { + "file" : 3 + }, + { + "command" : 4, + "file" : 3, + "line" : 85, + "parent" : 8 + }, + { + "command" : 4, + "file" : 3, + "line" : 86, + "parent" : 8 + }, + { + "command" : 5, + "file" : 0, + "line" : 39, + "parent" : 0 + }, + { + "command" : 6, + "file" : 3, + "line" : 118, + "parent" : 8 + }, + { + "command" : 6, + "file" : 3, + "line" : 83, + "parent" : 8 + }, + { + "command" : 7, + "file" : 0, + "line" : 4, + "parent" : 0 + } + ] + }, + "compileGroups" : + [ + { + "compileCommandFragments" : + [ + { + "fragment" : "-DQT_QML_DEBUG /Zi /Ob0 /Od /RTC1 -MDd" + }, + { + "backtrace" : 9, + "fragment" : "/utf-8" + }, + { + "backtrace" : 10, + "fragment" : "/MDd" + } + ], + "defines" : + [ + { + "backtrace" : 11, + "define" : "GEOMETRYWIDGETS_API" + }, + { + "define" : "GeometryWidgets_EXPORTS" + }, + { + "backtrace" : 12, + "define" : "OUTPUT_DEBUG_INFO" + }, + { + "backtrace" : 4, + "define" : "QT_CORE_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_GUI_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_WIDGETS_LIB" + }, + { + "backtrace" : 13, + "define" : "UNICODE" + }, + { + "backtrace" : 13, + "define" : "_UNICODE" + } + ], + "includes" : + [ + { + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/GeometryWidgets" + }, + { + "path" : "D:/WBFZCPP/source/FastCAE/src/GeometryWidgets" + }, + { + "backtrace" : 0, + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/GeometryWidgets/GeometryWidgets_autogen/include" + }, + { + "backtrace" : 14, + "path" : "D:/WBFZCPP/source/FastCAE/src/GeometryWidgets/.." + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/OCCT/inc" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtCore" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/./mkspecs/win32-msvc" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtGui" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtANGLE" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtWidgets" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/VTK/include/vtk-9.3" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "D:/WBFZCPP/source/FastCAE/extlib/Python/include" + } + ], + "language" : "CXX", + "languageStandard" : + { + "backtraces" : + [ + 4 + ], + "standard" : "11" + }, + "sourceIndexes" : + [ + 0, + 1, + 2, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97 + ] + } + ], + "dependencies" : + [ + { + "backtrace" : 4, + "id" : "Common::@29aabc9fbfb9b5406d55" + }, + { + "backtrace" : 7, + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "backtrace" : 7, + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "backtrace" : 7, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "backtrace" : 7, + "id" : "SelfDefObject::@17d93127ede5f3b478ed" + }, + { + "backtrace" : 7, + "id" : "Geometry::@b7b2e4191bc961e9afba" + }, + { + "backtrace" : 7, + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + }, + { + "backtrace" : 7, + "id" : "GeometryCommand::@d82e5b79e04a3b196df4" + }, + { + "id" : "GeometryWidgets_autogen_timestamp_deps::@1fb7ae1802a587d65603" + }, + { + "backtrace" : 0, + "id" : "GeometryWidgets_autogen::@1fb7ae1802a587d65603" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "GeometryWidgets::@1fb7ae1802a587d65603", + "install" : + { + "destinations" : + [ + { + "backtrace" : 3, + "path" : "bin" + } + ], + "prefix" : + { + "path" : "D:/WBFZCPP/source/FastCAE/install" + } + }, + "link" : + { + "commandFragments" : + [ + { + "fragment" : "/machine:x64 /debug /INCREMENTAL", + "role" : "flags" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\GeometryCommand.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ModuleBase.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Geometry.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKBO.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKBRep.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKG2d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKG3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKGeomAlgo.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKGeomBase.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKMath.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKPrim.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKShHealing.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKTopAlgo.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKernel.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonColor-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersGeometry-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersSources-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingMath-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkInteractionStyle-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingFreeType-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingOpenGL2-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingUI-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingVolume-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingVolumeOpenGL2-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkfreetype-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkglew-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonComputationalGeometry-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonDataModel-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonExecutionModel-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonMath-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonMisc-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonSystem-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonTransforms-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersExtraction-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersGeneral-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersStatistics-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOLegacy-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOXML-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOXMLParser-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingFourier-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkParallelCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkParallelDIY-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkdoubleconversion-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkexpat-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtklz4-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtklzma-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtksys-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkzlib-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\SelfDefObject.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Settings.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\DataProperty.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\PythonModule.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Widgetsd.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Guid.lib", + "role" : "libraries" + }, + { + "backtrace" : 6, + "fragment" : "D:\\WBFZCPP\\source\\FastCAE\\extlib\\Python\\libs\\python37.lib", + "role" : "libraries" + }, + { + "backtrace" : 6, + "fragment" : "Debug\\Common.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Cored.lib", + "role" : "libraries" + }, + { + "fragment" : "kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib", + "role" : "libraries" + } + ], + "language" : "CXX" + }, + "name" : "GeometryWidgets", + "nameOnDisk" : "GeometryWidgets.dll", + "paths" : + { + "build" : "src/GeometryWidgets", + "source" : "src/GeometryWidgets" + }, + "sourceGroups" : + [ + { + "name" : "Source Files", + "sourceIndexes" : + [ + 0, + 1, + 2, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97 + ] + }, + { + "name" : "Header Files", + "sourceIndexes" : + [ + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + }, + { + "name" : "", + "sourceIndexes" : + [ + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 131 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/GeometryWidgets/GeometryWidgets_autogen/mocs_compilation.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/GeometryWidgets/qrc_qianfan.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/GeometryWidgets/qrc_translations.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/GeometryWidgets/ui_SketchPointWidget.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/GeometryWidgets/ui_dialogBoolOperation.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/GeometryWidgets/ui_dialogCreateBox.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/GeometryWidgets/ui_dialogCreateBoxComplex.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/GeometryWidgets/ui_dialogCreateCone.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/GeometryWidgets/ui_dialogCreateCylinder.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/GeometryWidgets/ui_dialogCreateCylindricalComplex.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/GeometryWidgets/ui_dialogCreateDatumplane.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/GeometryWidgets/ui_dialogCreateFace.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/GeometryWidgets/ui_dialogCreateLine.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/GeometryWidgets/ui_dialogCreatePoint.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/GeometryWidgets/ui_dialogCreateSphere.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/GeometryWidgets/ui_dialogGeoSplitter.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/GeometryWidgets/ui_dialogMakeChamfer.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/GeometryWidgets/ui_dialogMakeExtrusion.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/GeometryWidgets/ui_dialogMakeFillGap.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/GeometryWidgets/ui_dialogMakeFillHole.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/GeometryWidgets/ui_dialogMakeFillet.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/GeometryWidgets/ui_dialogMakeLoft.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/GeometryWidgets/ui_dialogMakeMatrix.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/GeometryWidgets/ui_dialogMakeRemoveSurface.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/GeometryWidgets/ui_dialogMakeRevol.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/GeometryWidgets/ui_dialogMakeSweep.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/GeometryWidgets/ui_dialogMeasureDistance.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/GeometryWidgets/ui_dialogMirrorFeature.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/GeometryWidgets/ui_dialogMoveFeature.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/GeometryWidgets/ui_dialogRotateFeature.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/GeometryWidgets/ui_dialogSketchPlane.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/GeometryWidgets/ui_dialogVariableFillet.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/GeometryWidgets/ui_geoPointWidget.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryWidgets/SketchPointWidget.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryWidgets/dialogBoolOperation.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryWidgets/dialogCreateBox.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryWidgets/dialogCreateBoxComplex.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryWidgets/dialogCreateCone.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryWidgets/dialogCreateCylinder.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryWidgets/dialogCreateCylindricalComplex.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryWidgets/dialogCreateDatumplane.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryWidgets/dialogCreateFace.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryWidgets/dialogCreateLine.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryWidgets/dialogCreatePoint.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryWidgets/dialogCreateSphere.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryWidgets/dialogGeoSplitter.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryWidgets/dialogMakeChamfer.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryWidgets/dialogMakeExtrusion.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryWidgets/dialogMakeFillGap.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryWidgets/dialogMakeFillHole.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryWidgets/dialogMakeFillet.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryWidgets/dialogMakeLoft.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryWidgets/dialogMakeMatrix.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryWidgets/dialogMakeRemoveSurface.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryWidgets/dialogMakeRevol.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryWidgets/dialogMakeSweep.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryWidgets/dialogMeasureDistance.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryWidgets/dialogMirrorFeature.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryWidgets/dialogMoveFeature.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryWidgets/dialogRotateFeature.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryWidgets/dialogSketchPlane.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryWidgets/dialogVariableFillet.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryWidgets/geoDialogBase.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryWidgets/geoPointWidget.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryWidgets/geometryDialogFactory.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GeometryWidgets/geometryWidgetsAPI.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryWidgets/SketchPointWidget.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryWidgets/dialogBoolOperation.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryWidgets/dialogCreateBox.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryWidgets/dialogCreateBoxComplex.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryWidgets/dialogCreateCone.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryWidgets/dialogCreateCylinder.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryWidgets/dialogCreateCylindricalComplex.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryWidgets/dialogCreateDatumplane.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryWidgets/dialogCreateFace.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryWidgets/dialogCreateLine.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryWidgets/dialogCreatePoint.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryWidgets/dialogCreateSphere.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryWidgets/dialogGeoSplitter.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryWidgets/dialogMakeChamfer.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryWidgets/dialogMakeExtrusion.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryWidgets/dialogMakeFillGap.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryWidgets/dialogMakeFillHole.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryWidgets/dialogMakeFillet.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryWidgets/dialogMakeLoft.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryWidgets/dialogMakeMatrix.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryWidgets/dialogMakeRemoveSurface.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryWidgets/dialogMakeRevol.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryWidgets/dialogMakeSweep.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryWidgets/dialogMeasureDistance.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryWidgets/dialogMirrorFeature.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryWidgets/dialogMoveFeature.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryWidgets/dialogRotateFeature.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryWidgets/dialogSketchPlane.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryWidgets/dialogVariableFillet.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryWidgets/geoDialogBase.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryWidgets/geoPointWidget.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GeometryWidgets/geometryDialogFactory.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/GeometryWidgets/GeometryWidgets_autogen/timestamp", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/qrc/qianfan.qrc", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/qrc/translations.qrc", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/GeometryWidgets/SketchPointWidget.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/GeometryWidgets/dialogBoolOperation.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/GeometryWidgets/dialogCreateBox.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/GeometryWidgets/dialogCreateBoxComplex.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/GeometryWidgets/dialogCreateCone.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/GeometryWidgets/dialogCreateCylinder.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/GeometryWidgets/dialogCreateCylindricalComplex.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/GeometryWidgets/dialogCreateDatumplane.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/GeometryWidgets/dialogCreateFace.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/GeometryWidgets/dialogCreateLine.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/GeometryWidgets/dialogCreatePoint.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/GeometryWidgets/dialogCreateSphere.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/GeometryWidgets/dialogGeoSplitter.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/GeometryWidgets/dialogMakeChamfer.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/GeometryWidgets/dialogMakeExtrusion.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/GeometryWidgets/dialogMakeFillGap.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/GeometryWidgets/dialogMakeFillHole.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/GeometryWidgets/dialogMakeFillet.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/GeometryWidgets/dialogMakeLoft.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/GeometryWidgets/dialogMakeMatrix.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/GeometryWidgets/dialogMakeRemoveSurface.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/GeometryWidgets/dialogMakeRevol.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/GeometryWidgets/dialogMakeSweep.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/GeometryWidgets/dialogMeasureDistance.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/GeometryWidgets/dialogMirrorFeature.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/GeometryWidgets/dialogMoveFeature.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/GeometryWidgets/dialogRotateFeature.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/GeometryWidgets/dialogSketchPlane.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/GeometryWidgets/dialogVariableFillet.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/GeometryWidgets/geoPointWidget.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/GeometryWidgets/GeometryWidgets_autogen/timestamp.rule", + "sourceGroupIndex" : 3 + } + ], + "type" : "SHARED_LIBRARY" +} diff --git a/out/build/.cmake/api/v1/reply/target-GeometryWidgets_autogen-Debug-393a3fe609df268019d7.json b/out/build/.cmake/api/v1/reply/target-GeometryWidgets_autogen-Debug-393a3fe609df268019d7.json new file mode 100644 index 0000000..5803218 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-GeometryWidgets_autogen-Debug-393a3fe609df268019d7.json @@ -0,0 +1,103 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/GeometryWidgets/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "backtrace" : 0, + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "backtrace" : 0, + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "backtrace" : 0, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "backtrace" : 0, + "id" : "SelfDefObject::@17d93127ede5f3b478ed" + }, + { + "backtrace" : 0, + "id" : "Geometry::@b7b2e4191bc961e9afba" + }, + { + "backtrace" : 0, + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + }, + { + "backtrace" : 0, + "id" : "GeometryCommand::@d82e5b79e04a3b196df4" + }, + { + "id" : "GeometryWidgets_autogen_timestamp_deps::@1fb7ae1802a587d65603" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "GeometryWidgets_autogen::@1fb7ae1802a587d65603", + "isGeneratorProvided" : true, + "name" : "GeometryWidgets_autogen", + "paths" : + { + "build" : "src/GeometryWidgets", + "source" : "src/GeometryWidgets" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1, + 2 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/GeometryWidgets/CMakeFiles/GeometryWidgets_autogen", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/GeometryWidgets/CMakeFiles/GeometryWidgets_autogen.rule", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/GeometryWidgets/GeometryWidgets_autogen/timestamp.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-GeometryWidgets_autogen_timestamp_deps-Debug-241de3747242e8545ef0.json b/out/build/.cmake/api/v1/reply/target-GeometryWidgets_autogen_timestamp_deps-Debug-241de3747242e8545ef0.json new file mode 100644 index 0000000..294fc18 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-GeometryWidgets_autogen_timestamp_deps-Debug-241de3747242e8545ef0.json @@ -0,0 +1,86 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/GeometryWidgets/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "id" : "SelfDefObject::@17d93127ede5f3b478ed" + }, + { + "id" : "Geometry::@b7b2e4191bc961e9afba" + }, + { + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + }, + { + "id" : "GeometryCommand::@d82e5b79e04a3b196df4" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "GeometryWidgets_autogen_timestamp_deps::@1fb7ae1802a587d65603", + "isGeneratorProvided" : true, + "name" : "GeometryWidgets_autogen_timestamp_deps", + "paths" : + { + "build" : "src/GeometryWidgets", + "source" : "src/GeometryWidgets" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/GeometryWidgets/CMakeFiles/GeometryWidgets_autogen_timestamp_deps", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/GeometryWidgets/CMakeFiles/GeometryWidgets_autogen_timestamp_deps.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-Geometry_autogen-Debug-9c4188e39387e0abef81.json b/out/build/.cmake/api/v1/reply/target-Geometry_autogen-Debug-9c4188e39387e0abef81.json new file mode 100644 index 0000000..4d5a6f0 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-Geometry_autogen-Debug-9c4188e39387e0abef81.json @@ -0,0 +1,79 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/Geometry/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "backtrace" : 0, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "id" : "Geometry_autogen_timestamp_deps::@b7b2e4191bc961e9afba" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "Geometry_autogen::@b7b2e4191bc961e9afba", + "isGeneratorProvided" : true, + "name" : "Geometry_autogen", + "paths" : + { + "build" : "src/Geometry", + "source" : "src/Geometry" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1, + 2 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/Geometry/CMakeFiles/Geometry_autogen", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/Geometry/CMakeFiles/Geometry_autogen.rule", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/Geometry/Geometry_autogen/timestamp.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-Geometry_autogen_timestamp_deps-Debug-99c4d4fa63338ef30171.json b/out/build/.cmake/api/v1/reply/target-Geometry_autogen_timestamp_deps-Debug-99c4d4fa63338ef30171.json new file mode 100644 index 0000000..eb5d347 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-Geometry_autogen_timestamp_deps-Debug-99c4d4fa63338ef30171.json @@ -0,0 +1,68 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/Geometry/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "id" : "DataProperty::@ec84555ffa827036bc26" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "Geometry_autogen_timestamp_deps::@b7b2e4191bc961e9afba", + "isGeneratorProvided" : true, + "name" : "Geometry_autogen_timestamp_deps", + "paths" : + { + "build" : "src/Geometry", + "source" : "src/Geometry" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/Geometry/CMakeFiles/Geometry_autogen_timestamp_deps", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/Geometry/CMakeFiles/Geometry_autogen_timestamp_deps.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-GmshModule-Debug-5e78905b6525182a5524.json b/out/build/.cmake/api/v1/reply/target-GmshModule-Debug-5e78905b6525182a5524.json new file mode 100644 index 0000000..145de0f --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-GmshModule-Debug-5e78905b6525182a5524.json @@ -0,0 +1,998 @@ +{ + "artifacts" : + [ + { + "path" : "Debug/GmshModule.dll" + }, + { + "path" : "Debug/GmshModule.lib" + }, + { + "path" : "Debug/GmshModule.pdb" + } + ], + "backtrace" : 1, + "backtraceGraph" : + { + "commands" : + [ + "add_library", + "install", + "target_link_libraries", + "add_dependencies", + "add_compile_options", + "target_compile_definitions", + "add_definitions", + "include_directories" + ], + "files" : + [ + "src/GmshModule/CMakeLists.txt", + "src/CMakeLists.txt", + "src/PythonModule/CMakeLists.txt", + "CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 29, + "parent" : 0 + }, + { + "file" : 1 + }, + { + "command" : 1, + "file" : 1, + "line" : 58, + "parent" : 2 + }, + { + "command" : 2, + "file" : 0, + "line" : 49, + "parent" : 0 + }, + { + "file" : 2 + }, + { + "command" : 2, + "file" : 2, + "line" : 44, + "parent" : 5 + }, + { + "command" : 3, + "file" : 0, + "line" : 57, + "parent" : 0 + }, + { + "file" : 3 + }, + { + "command" : 4, + "file" : 3, + "line" : 85, + "parent" : 8 + }, + { + "command" : 4, + "file" : 3, + "line" : 86, + "parent" : 8 + }, + { + "command" : 5, + "file" : 0, + "line" : 39, + "parent" : 0 + }, + { + "command" : 6, + "file" : 3, + "line" : 118, + "parent" : 8 + }, + { + "command" : 6, + "file" : 3, + "line" : 83, + "parent" : 8 + }, + { + "command" : 7, + "file" : 0, + "line" : 4, + "parent" : 0 + } + ] + }, + "compileGroups" : + [ + { + "compileCommandFragments" : + [ + { + "fragment" : "-DQT_QML_DEBUG /Zi /Ob0 /Od /RTC1 -MDd" + }, + { + "backtrace" : 9, + "fragment" : "/utf-8" + }, + { + "backtrace" : 10, + "fragment" : "/MDd" + } + ], + "defines" : + [ + { + "backtrace" : 11, + "define" : "GMSH_API" + }, + { + "define" : "GmshModule_EXPORTS" + }, + { + "backtrace" : 12, + "define" : "OUTPUT_DEBUG_INFO" + }, + { + "backtrace" : 4, + "define" : "QT_CORE_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_GUI_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_WIDGETS_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_XML_LIB" + }, + { + "backtrace" : 13, + "define" : "UNICODE" + }, + { + "backtrace" : 13, + "define" : "_UNICODE" + } + ], + "includes" : + [ + { + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/GmshModule" + }, + { + "path" : "D:/WBFZCPP/source/FastCAE/src/GmshModule" + }, + { + "backtrace" : 0, + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/GmshModule/GmshModule_autogen/include" + }, + { + "backtrace" : 14, + "path" : "D:/WBFZCPP/source/FastCAE/src/GmshModule/.." + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/OCCT/inc" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtCore" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/./mkspecs/win32-msvc" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtGui" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtANGLE" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtWidgets" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtXml" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/VTK/include/vtk-9.3" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "D:/WBFZCPP/source/FastCAE/extlib/Python/include" + } + ], + "language" : "CXX", + "languageStandard" : + { + "backtraces" : + [ + 4 + ], + "standard" : "11" + }, + "sourceIndexes" : + [ + 0, + 1, + 2, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35 + ] + } + ], + "dependencies" : + [ + { + "backtrace" : 7, + "id" : "Common::@29aabc9fbfb9b5406d55" + }, + { + "backtrace" : 7, + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "backtrace" : 7, + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "backtrace" : 7, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "backtrace" : 7, + "id" : "MeshData::@2f0f676dafab302b2d20" + }, + { + "backtrace" : 7, + "id" : "SelfDefObject::@17d93127ede5f3b478ed" + }, + { + "backtrace" : 7, + "id" : "Geometry::@b7b2e4191bc961e9afba" + }, + { + "backtrace" : 7, + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + }, + { + "backtrace" : 7, + "id" : "GeometryWidgets::@1fb7ae1802a587d65603" + }, + { + "id" : "GmshModule_autogen_timestamp_deps::@044d5c74ec3efe84c474" + }, + { + "backtrace" : 0, + "id" : "GmshModule_autogen::@044d5c74ec3efe84c474" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "GmshModule::@044d5c74ec3efe84c474", + "install" : + { + "destinations" : + [ + { + "backtrace" : 3, + "path" : "bin" + } + ], + "prefix" : + { + "path" : "D:/WBFZCPP/source/FastCAE/install" + } + }, + "link" : + { + "commandFragments" : + [ + { + "fragment" : "/machine:x64 /debug /INCREMENTAL", + "role" : "flags" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\GeometryWidgets.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ModuleBase.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Geometry.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKBO.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKBRep.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKG2d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKG3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKGeomAlgo.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKGeomBase.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKMath.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKPrim.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKShHealing.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKTopAlgo.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKernel.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonColor-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersGeometry-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersSources-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingMath-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkInteractionStyle-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingFreeType-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingOpenGL2-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingUI-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingVolume-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingVolumeOpenGL2-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkfreetype-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkglew-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\MeshData.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonComputationalGeometry-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonDataModel-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonExecutionModel-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonMath-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonMisc-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonSystem-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonTransforms-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersExtraction-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersGeneral-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersStatistics-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOLegacy-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOXML-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOXMLParser-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingFourier-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkParallelCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkParallelDIY-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkdoubleconversion-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkexpat-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtklz4-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtklzma-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtksys-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkzlib-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\SelfDefObject.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Settings.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\DataProperty.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Xmld.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\PythonModule.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Widgetsd.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Guid.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Common.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Cored.lib", + "role" : "libraries" + }, + { + "backtrace" : 6, + "fragment" : "D:\\WBFZCPP\\source\\FastCAE\\extlib\\Python\\libs\\python37.lib", + "role" : "libraries" + }, + { + "fragment" : "kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib", + "role" : "libraries" + } + ], + "language" : "CXX" + }, + "name" : "GmshModule", + "nameOnDisk" : "GmshModule.dll", + "paths" : + { + "build" : "src/GmshModule", + "source" : "src/GmshModule" + }, + "sourceGroups" : + [ + { + "name" : "Source Files", + "sourceIndexes" : + [ + 0, + 1, + 2, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35 + ] + }, + { + "name" : "Header Files", + "sourceIndexes" : + [ + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21 + ] + }, + { + "name" : "", + "sourceIndexes" : + [ + 36, + 37, + 38, + 39, + 40, + 41, + 42 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 43 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/GmshModule/GmshModule_autogen/mocs_compilation.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/GmshModule/qrc_qianfan.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/GmshModule/qrc_translations.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/GmshModule/ui_DialogFluidMesh.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/GmshModule/ui_DialogLocalSetting.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/GmshModule/ui_DialogSolidMesh.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/GmshModule/ui_DialogSurfaceMesh.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GmshModule/DialogFluidMesh.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GmshModule/DialogLocalSetting.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GmshModule/DialogSolidMesh.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GmshModule/DialogSurfaceMesh.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GmshModule/FluidMeshPreProcess.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GmshModule/GmshDialogBase.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GmshModule/GmshModule.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GmshModule/GmshModuleAPI.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GmshModule/GmshPy.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GmshModule/GmshScriptWriter.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GmshModule/GmshSettingData.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GmshModule/GmshThread.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GmshModule/GmshThreadManager.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GmshModule/LocalField.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/GmshModule/MeshReader.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GmshModule/DialogFluidMesh.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GmshModule/DialogLocalSetting.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GmshModule/DialogSolidMesh.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GmshModule/DialogSurfaceMesh.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GmshModule/FluidMeshPreProcess.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GmshModule/GmshDialogBase.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GmshModule/GmshModule.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GmshModule/GmshPy.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GmshModule/GmshScriptWriter.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GmshModule/GmshSettingData.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GmshModule/GmshThread.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GmshModule/GmshThreadManager.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GmshModule/LocalField.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/GmshModule/MeshReader.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/GmshModule/GmshModule_autogen/timestamp", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/qrc/qianfan.qrc", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/qrc/translations.qrc", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/GmshModule/DialogFluidMesh.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/GmshModule/DialogLocalSetting.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/GmshModule/DialogSolidMesh.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/GmshModule/DialogSurfaceMesh.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/GmshModule/GmshModule_autogen/timestamp.rule", + "sourceGroupIndex" : 3 + } + ], + "type" : "SHARED_LIBRARY" +} diff --git a/out/build/.cmake/api/v1/reply/target-GmshModule_autogen-Debug-509ee9ef7a5ae4da2083.json b/out/build/.cmake/api/v1/reply/target-GmshModule_autogen-Debug-509ee9ef7a5ae4da2083.json new file mode 100644 index 0000000..2476fa4 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-GmshModule_autogen-Debug-509ee9ef7a5ae4da2083.json @@ -0,0 +1,111 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/GmshModule/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "backtrace" : 0, + "id" : "Common::@29aabc9fbfb9b5406d55" + }, + { + "backtrace" : 0, + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "backtrace" : 0, + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "backtrace" : 0, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "backtrace" : 0, + "id" : "MeshData::@2f0f676dafab302b2d20" + }, + { + "backtrace" : 0, + "id" : "SelfDefObject::@17d93127ede5f3b478ed" + }, + { + "backtrace" : 0, + "id" : "Geometry::@b7b2e4191bc961e9afba" + }, + { + "backtrace" : 0, + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + }, + { + "backtrace" : 0, + "id" : "GeometryWidgets::@1fb7ae1802a587d65603" + }, + { + "id" : "GmshModule_autogen_timestamp_deps::@044d5c74ec3efe84c474" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "GmshModule_autogen::@044d5c74ec3efe84c474", + "isGeneratorProvided" : true, + "name" : "GmshModule_autogen", + "paths" : + { + "build" : "src/GmshModule", + "source" : "src/GmshModule" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1, + 2 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/GmshModule/CMakeFiles/GmshModule_autogen", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/GmshModule/CMakeFiles/GmshModule_autogen.rule", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/GmshModule/GmshModule_autogen/timestamp.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-GmshModule_autogen_timestamp_deps-Debug-6afa7032252f83243033.json b/out/build/.cmake/api/v1/reply/target-GmshModule_autogen_timestamp_deps-Debug-6afa7032252f83243033.json new file mode 100644 index 0000000..b230684 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-GmshModule_autogen_timestamp_deps-Debug-6afa7032252f83243033.json @@ -0,0 +1,92 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/GmshModule/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "id" : "Common::@29aabc9fbfb9b5406d55" + }, + { + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "id" : "MeshData::@2f0f676dafab302b2d20" + }, + { + "id" : "SelfDefObject::@17d93127ede5f3b478ed" + }, + { + "id" : "Geometry::@b7b2e4191bc961e9afba" + }, + { + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + }, + { + "id" : "GeometryWidgets::@1fb7ae1802a587d65603" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "GmshModule_autogen_timestamp_deps::@044d5c74ec3efe84c474", + "isGeneratorProvided" : true, + "name" : "GmshModule_autogen_timestamp_deps", + "paths" : + { + "build" : "src/GmshModule", + "source" : "src/GmshModule" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/GmshModule/CMakeFiles/GmshModule_autogen_timestamp_deps", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/GmshModule/CMakeFiles/GmshModule_autogen_timestamp_deps.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-IO-Debug-f80106a685279877c218.json b/out/build/.cmake/api/v1/reply/target-IO-Debug-f80106a685279877c218.json new file mode 100644 index 0000000..dc3eab7 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-IO-Debug-f80106a685279877c218.json @@ -0,0 +1,788 @@ +{ + "artifacts" : + [ + { + "path" : "Debug/IO.dll" + }, + { + "path" : "Debug/IO.lib" + }, + { + "path" : "Debug/IO.pdb" + } + ], + "backtrace" : 1, + "backtraceGraph" : + { + "commands" : + [ + "add_library", + "install", + "target_link_libraries", + "set_property", + "_populate_Widgets_target_properties", + "find_package", + "add_dependencies", + "add_compile_options", + "target_compile_definitions", + "add_definitions", + "include_directories" + ], + "files" : + [ + "src/IO/CMakeLists.txt", + "src/CMakeLists.txt", + "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Widgets/Qt5WidgetsConfig.cmake", + "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5/Qt5Config.cmake", + "CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 20, + "parent" : 0 + }, + { + "file" : 1 + }, + { + "command" : 1, + "file" : 1, + "line" : 58, + "parent" : 2 + }, + { + "command" : 2, + "file" : 0, + "line" : 39, + "parent" : 0 + }, + { + "file" : 4 + }, + { + "command" : 5, + "file" : 4, + "line" : 142, + "parent" : 5 + }, + { + "file" : 3, + "parent" : 6 + }, + { + "command" : 5, + "file" : 3, + "line" : 28, + "parent" : 7 + }, + { + "file" : 2, + "parent" : 8 + }, + { + "command" : 4, + "file" : 2, + "line" : 207, + "parent" : 9 + }, + { + "command" : 3, + "file" : 2, + "line" : 44, + "parent" : 10 + }, + { + "command" : 6, + "file" : 0, + "line" : 47, + "parent" : 0 + }, + { + "command" : 7, + "file" : 4, + "line" : 85, + "parent" : 5 + }, + { + "command" : 7, + "file" : 4, + "line" : 86, + "parent" : 5 + }, + { + "command" : 8, + "file" : 0, + "line" : 28, + "parent" : 0 + }, + { + "command" : 9, + "file" : 4, + "line" : 118, + "parent" : 5 + }, + { + "command" : 9, + "file" : 4, + "line" : 83, + "parent" : 5 + }, + { + "command" : 10, + "file" : 0, + "line" : 4, + "parent" : 0 + } + ] + }, + "compileGroups" : + [ + { + "compileCommandFragments" : + [ + { + "fragment" : "-DQT_QML_DEBUG /Zi /Ob0 /Od /RTC1 -MDd" + }, + { + "backtrace" : 13, + "fragment" : "/utf-8" + }, + { + "backtrace" : 14, + "fragment" : "/MDd" + } + ], + "defines" : + [ + { + "backtrace" : 15, + "define" : "IO_API" + }, + { + "define" : "IO_EXPORTS" + }, + { + "backtrace" : 16, + "define" : "OUTPUT_DEBUG_INFO" + }, + { + "backtrace" : 4, + "define" : "QT_CORE_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_GUI_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_WIDGETS_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_XML_LIB" + }, + { + "backtrace" : 17, + "define" : "UNICODE" + }, + { + "backtrace" : 17, + "define" : "_UNICODE" + } + ], + "includes" : + [ + { + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/IO" + }, + { + "path" : "D:/WBFZCPP/source/FastCAE/src/IO" + }, + { + "backtrace" : 0, + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/IO/IO_autogen/include" + }, + { + "backtrace" : 18, + "path" : "D:/WBFZCPP/source/FastCAE/src/IO/.." + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "D:/WBFZCPP/source/FastCAE/extlib/QuaZIP/include/quazip5" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/OCCT/inc" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtCore" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/./mkspecs/win32-msvc" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtWidgets" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtGui" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtANGLE" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtXml" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/VTK/include/vtk-9.3" + } + ], + "language" : "CXX", + "languageStandard" : + { + "backtraces" : + [ + 4 + ], + "standard" : "11" + }, + "sourceIndexes" : + [ + 0, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19 + ] + } + ], + "dependencies" : + [ + { + "backtrace" : 12, + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "backtrace" : 12, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "backtrace" : 12, + "id" : "MeshData::@2f0f676dafab302b2d20" + }, + { + "backtrace" : 12, + "id" : "Material::@05d68cd248c3246409d7" + }, + { + "backtrace" : 12, + "id" : "Geometry::@b7b2e4191bc961e9afba" + }, + { + "backtrace" : 12, + "id" : "ModelData::@8a6b2d9535e8b6cb6800" + }, + { + "backtrace" : 12, + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + }, + { + "backtrace" : 12, + "id" : "GmshModule::@044d5c74ec3efe84c474" + }, + { + "backtrace" : 12, + "id" : "PluginManager::@d6a357cdda12b0c888b1" + }, + { + "backtrace" : 0, + "id" : "IO_autogen::@484b42e69e32e953bc79" + }, + { + "id" : "IO_autogen_timestamp_deps::@484b42e69e32e953bc79" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "IO::@484b42e69e32e953bc79", + "install" : + { + "destinations" : + [ + { + "backtrace" : 3, + "path" : "bin" + } + ], + "prefix" : + { + "path" : "D:/WBFZCPP/source/FastCAE/install" + } + }, + "link" : + { + "commandFragments" : + [ + { + "fragment" : "/machine:x64 /debug /INCREMENTAL", + "role" : "flags" + }, + { + "backtrace" : 4, + "fragment" : "D:\\WBFZCPP\\source\\FastCAE\\extlib\\QuaZIP\\lib\\quazip5d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\PluginManager.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\GmshModule.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ModuleBase.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ModelData.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Material.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Geometry.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKBRep.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKG2d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKG3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKGeomBase.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKMath.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKernel.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersGeometry-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\MeshData.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonComputationalGeometry-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonDataModel-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonExecutionModel-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonMath-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonMisc-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonSystem-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonTransforms-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersExtraction-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersGeneral-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersStatistics-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOLegacy-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOXML-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOXMLParser-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingFourier-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkParallelCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkParallelDIY-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkdoubleconversion-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkexpat-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtklz4-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtklzma-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtksys-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkzlib-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Settings.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\DataProperty.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Xmld.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Widgetsd.lib", + "role" : "libraries" + }, + { + "backtrace" : 11, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Guid.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Cored.lib", + "role" : "libraries" + }, + { + "fragment" : "kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib", + "role" : "libraries" + } + ], + "language" : "CXX" + }, + "name" : "IO", + "nameOnDisk" : "IO.dll", + "paths" : + { + "build" : "src/IO", + "source" : "src/IO" + }, + "sourceGroups" : + [ + { + "name" : "Source Files", + "sourceIndexes" : + [ + 0, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19 + ] + }, + { + "name" : "Header Files", + "sourceIndexes" : + [ + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10 + ] + }, + { + "name" : "", + "sourceIndexes" : + [ + 20 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 21 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/IO/IO_autogen/mocs_compilation.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "path" : "src/IO/GenerateMesh.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/IO/IOAPI.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/IO/IOConfig.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/IO/ProjectFileIO.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/IO/ProjectTemplete.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/IO/SolverIO.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/IO/SolverInfoWriter.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/IO/TemplateReplacer.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/IO/TemplateWriter.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/IO/vtkDataRelated.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/IO/GenerateMesh.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/IO/IOConfig.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/IO/ProjectFileIO.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/IO/ProjectTemplete.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/IO/SolverIO.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/IO/SolverInfoWriter.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/IO/TemplateReplacer.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/IO/TemplateWriter.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/IO/vtkDataRelated.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/IO/IO_autogen/timestamp", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/IO/IO_autogen/timestamp.rule", + "sourceGroupIndex" : 3 + } + ], + "type" : "SHARED_LIBRARY" +} diff --git a/out/build/.cmake/api/v1/reply/target-IO_autogen-Debug-22c115c696c207a789e7.json b/out/build/.cmake/api/v1/reply/target-IO_autogen-Debug-22c115c696c207a789e7.json new file mode 100644 index 0000000..c763b31 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-IO_autogen-Debug-22c115c696c207a789e7.json @@ -0,0 +1,111 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/IO/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "backtrace" : 0, + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "backtrace" : 0, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "backtrace" : 0, + "id" : "MeshData::@2f0f676dafab302b2d20" + }, + { + "backtrace" : 0, + "id" : "Material::@05d68cd248c3246409d7" + }, + { + "backtrace" : 0, + "id" : "Geometry::@b7b2e4191bc961e9afba" + }, + { + "backtrace" : 0, + "id" : "ModelData::@8a6b2d9535e8b6cb6800" + }, + { + "backtrace" : 0, + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + }, + { + "backtrace" : 0, + "id" : "GmshModule::@044d5c74ec3efe84c474" + }, + { + "backtrace" : 0, + "id" : "PluginManager::@d6a357cdda12b0c888b1" + }, + { + "id" : "IO_autogen_timestamp_deps::@484b42e69e32e953bc79" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "IO_autogen::@484b42e69e32e953bc79", + "isGeneratorProvided" : true, + "name" : "IO_autogen", + "paths" : + { + "build" : "src/IO", + "source" : "src/IO" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1, + 2 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/IO/CMakeFiles/IO_autogen", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/IO/CMakeFiles/IO_autogen.rule", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/IO/IO_autogen/timestamp.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-IO_autogen_timestamp_deps-Debug-d6711c1a2e45884b1c54.json b/out/build/.cmake/api/v1/reply/target-IO_autogen_timestamp_deps-Debug-d6711c1a2e45884b1c54.json new file mode 100644 index 0000000..eeb792d --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-IO_autogen_timestamp_deps-Debug-d6711c1a2e45884b1c54.json @@ -0,0 +1,92 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/IO/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "id" : "MeshData::@2f0f676dafab302b2d20" + }, + { + "id" : "Material::@05d68cd248c3246409d7" + }, + { + "id" : "Geometry::@b7b2e4191bc961e9afba" + }, + { + "id" : "ModelData::@8a6b2d9535e8b6cb6800" + }, + { + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + }, + { + "id" : "GmshModule::@044d5c74ec3efe84c474" + }, + { + "id" : "PluginManager::@d6a357cdda12b0c888b1" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "IO_autogen_timestamp_deps::@484b42e69e32e953bc79", + "isGeneratorProvided" : true, + "name" : "IO_autogen_timestamp_deps", + "paths" : + { + "build" : "src/IO", + "source" : "src/IO" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/IO/CMakeFiles/IO_autogen_timestamp_deps", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/IO/CMakeFiles/IO_autogen_timestamp_deps.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-LAMPCAE-Debug-928c22974a3b8f666c79.json b/out/build/.cmake/api/v1/reply/target-LAMPCAE-Debug-928c22974a3b8f666c79.json new file mode 100644 index 0000000..3133601 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-LAMPCAE-Debug-928c22974a3b8f666c79.json @@ -0,0 +1,735 @@ +{ + "artifacts" : + [ + { + "path" : "Debug/LAMPCAE.exe" + }, + { + "path" : "Debug/LAMPCAE.pdb" + } + ], + "backtrace" : 1, + "backtraceGraph" : + { + "commands" : + [ + "add_executable", + "install", + "target_link_libraries", + "add_dependencies", + "add_compile_options", + "add_definitions", + "include_directories" + ], + "files" : + [ + "src/LAMPCAE/CMakeLists.txt", + "src/CMakeLists.txt", + "src/PythonModule/CMakeLists.txt", + "CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 20, + "parent" : 0 + }, + { + "file" : 1 + }, + { + "command" : 1, + "file" : 1, + "line" : 58, + "parent" : 2 + }, + { + "command" : 2, + "file" : 0, + "line" : 46, + "parent" : 0 + }, + { + "file" : 2 + }, + { + "command" : 2, + "file" : 2, + "line" : 44, + "parent" : 5 + }, + { + "command" : 3, + "file" : 0, + "line" : 54, + "parent" : 0 + }, + { + "file" : 3 + }, + { + "command" : 4, + "file" : 3, + "line" : 85, + "parent" : 8 + }, + { + "command" : 4, + "file" : 3, + "line" : 86, + "parent" : 8 + }, + { + "command" : 5, + "file" : 3, + "line" : 118, + "parent" : 8 + }, + { + "command" : 5, + "file" : 3, + "line" : 83, + "parent" : 8 + }, + { + "command" : 6, + "file" : 0, + "line" : 4, + "parent" : 0 + } + ] + }, + "compileGroups" : + [ + { + "compileCommandFragments" : + [ + { + "fragment" : "-DQT_QML_DEBUG /Zi /Ob0 /Od /RTC1 -MDd" + }, + { + "backtrace" : 9, + "fragment" : "/utf-8" + }, + { + "backtrace" : 10, + "fragment" : "/MDd" + } + ], + "defines" : + [ + { + "backtrace" : 4, + "define" : "H5_BUILT_AS_DYNAMIC_LIB" + }, + { + "backtrace" : 11, + "define" : "OUTPUT_DEBUG_INFO" + }, + { + "backtrace" : 4, + "define" : "QT_CORE_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_GUI_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_WIDGETS_LIB" + }, + { + "backtrace" : 12, + "define" : "UNICODE" + }, + { + "backtrace" : 12, + "define" : "_UNICODE" + } + ], + "includes" : + [ + { + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/LAMPCAE" + }, + { + "path" : "D:/WBFZCPP/source/FastCAE/src/LAMPCAE" + }, + { + "backtrace" : 0, + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/LAMPCAE/LAMPCAE_autogen/include" + }, + { + "backtrace" : 13, + "path" : "D:/WBFZCPP/source/FastCAE/src/LAMPCAE/.." + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtCore" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/./mkspecs/win32-msvc" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtGui" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtANGLE" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtWidgets" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "D:/WBFZCPP/source/FastCAE/extlib/HDF5/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "D:/WBFZCPP/source/FastCAE/extlib/Python/include" + } + ], + "language" : "CXX", + "languageStandard" : + { + "backtraces" : + [ + 4 + ], + "standard" : "11" + }, + "sourceIndexes" : + [ + 0, + 4, + 5, + 6 + ] + }, + { + "compileCommandFragments" : + [ + { + "fragment" : "-DWIN32 -D_DEBUG" + } + ], + "defines" : + [ + { + "backtrace" : 4, + "define" : "H5_BUILT_AS_DYNAMIC_LIB" + }, + { + "backtrace" : 11, + "define" : "OUTPUT_DEBUG_INFO" + }, + { + "backtrace" : 4, + "define" : "QT_CORE_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_GUI_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_WIDGETS_LIB" + }, + { + "backtrace" : 12, + "define" : "UNICODE" + }, + { + "backtrace" : 12, + "define" : "_UNICODE" + } + ], + "includes" : + [ + { + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/LAMPCAE" + }, + { + "path" : "D:/WBFZCPP/source/FastCAE/src/LAMPCAE" + }, + { + "backtrace" : 0, + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/LAMPCAE/LAMPCAE_autogen/include" + }, + { + "backtrace" : 13, + "path" : "D:/WBFZCPP/source/FastCAE/src/LAMPCAE/.." + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtCore" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/./mkspecs/win32-msvc" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtGui" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtANGLE" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtWidgets" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "D:/WBFZCPP/source/FastCAE/extlib/HDF5/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "D:/WBFZCPP/source/FastCAE/extlib/Python/include" + } + ], + "language" : "RC", + "sourceIndexes" : + [ + 7 + ] + } + ], + "dependencies" : + [ + { + "backtrace" : 7, + "id" : "Common::@29aabc9fbfb9b5406d55" + }, + { + "backtrace" : 7, + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "backtrace" : 7, + "id" : "SARibbonBar::@f61b241723ced025d0ef" + }, + { + "backtrace" : 7, + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "backtrace" : 7, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "backtrace" : 7, + "id" : "MeshData::@2f0f676dafab302b2d20" + }, + { + "backtrace" : 7, + "id" : "SelfDefObject::@17d93127ede5f3b478ed" + }, + { + "backtrace" : 7, + "id" : "Material::@05d68cd248c3246409d7" + }, + { + "backtrace" : 7, + "id" : "ConfigOptions::@1c9d458e4038aca43955" + }, + { + "backtrace" : 7, + "id" : "Geometry::@b7b2e4191bc961e9afba" + }, + { + "backtrace" : 7, + "id" : "ModelData::@8a6b2d9535e8b6cb6800" + }, + { + "backtrace" : 7, + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + }, + { + "backtrace" : 7, + "id" : "PostWidgets::@93a5592897f957e6fa57" + }, + { + "backtrace" : 7, + "id" : "PostInterface::@38fb729d68510c1489c9" + }, + { + "backtrace" : 7, + "id" : "GeometryCommand::@d82e5b79e04a3b196df4" + }, + { + "backtrace" : 7, + "id" : "ProjectTree::@43c6c7ebae2b88a99cdb" + }, + { + "backtrace" : 7, + "id" : "SolverControl::@4a18b637ce8bf6991ec0" + }, + { + "backtrace" : 7, + "id" : "MainWidgets::@d0895ea365458bd7f948" + }, + { + "backtrace" : 7, + "id" : "UserGuidence::@40175f0e8ac13e21fe7c" + }, + { + "backtrace" : 7, + "id" : "IO::@484b42e69e32e953bc79" + }, + { + "backtrace" : 7, + "id" : "MainWindow::@c380e645ecc921453605" + }, + { + "backtrace" : 7, + "id" : "GmshModule::@044d5c74ec3efe84c474" + }, + { + "backtrace" : 7, + "id" : "PluginManager::@d6a357cdda12b0c888b1" + }, + { + "backtrace" : 7, + "id" : "GeometryWidgets::@1fb7ae1802a587d65603" + }, + { + "id" : "LAMPCAE_autogen_timestamp_deps::@1d4d21e91c20b8980f28" + }, + { + "backtrace" : 0, + "id" : "LAMPCAE_autogen::@1d4d21e91c20b8980f28" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "LAMPCAE::@1d4d21e91c20b8980f28", + "install" : + { + "destinations" : + [ + { + "backtrace" : 3, + "path" : "bin" + }, + { + "backtrace" : 3, + "path" : "bin" + } + ], + "prefix" : + { + "path" : "D:/WBFZCPP/source/FastCAE/install" + } + }, + "link" : + { + "commandFragments" : + [ + { + "fragment" : "-DQT_QML_DEBUG /Zi /Ob0 /Od /RTC1 -MDd", + "role" : "flags" + }, + { + "fragment" : "/machine:x64 /debug /INCREMENTAL /subsystem:console", + "role" : "flags" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\MainWindow.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\SARibbonBar.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\MainWidgets.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\SolverControl.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\IO.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\PluginManager.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\GmshModule.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\GeometryWidgets.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\GeometryCommand.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ProjectTree.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\PostWidgets.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ModuleBase.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ModelData.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\PostInterface.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ConfigOptions.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Material.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\SelfDefObject.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\MeshData.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Geometry.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\DataProperty.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\UserGuidence.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\PythonModule.lib", + "role" : "libraries" + }, + { + "backtrace" : 6, + "fragment" : "D:\\WBFZCPP\\source\\FastCAE\\extlib\\Python\\libs\\python37.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Settings.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Widgetsd.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Guid.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "D:\\WBFZCPP\\source\\FastCAE\\extlib\\HDF5\\lib\\hdf5_cpp.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Common.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Cored.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "D:\\WBFZCPP\\source\\FastCAE\\extlib\\HDF5\\lib\\hdf5.lib", + "role" : "libraries" + }, + { + "fragment" : "kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib", + "role" : "libraries" + } + ], + "language" : "CXX" + }, + "name" : "LAMPCAE", + "nameOnDisk" : "LAMPCAE.exe", + "paths" : + { + "build" : "src/LAMPCAE", + "source" : "src/LAMPCAE" + }, + "sourceGroups" : + [ + { + "name" : "Source Files", + "sourceIndexes" : + [ + 0, + 4, + 5, + 6, + 7 + ] + }, + { + "name" : "Header Files", + "sourceIndexes" : + [ + 1, + 2, + 3 + ] + }, + { + "name" : "", + "sourceIndexes" : + [ + 8 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 9 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/LAMPCAE/LAMPCAE_autogen/mocs_compilation.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "path" : "src/LAMPCAE/CommandLine.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/LAMPCAE/LAMPCAEVersionMacros.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/LAMPCAE/XBeautyUI.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/LAMPCAE/CommandLine.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/LAMPCAE/XBeautyUI.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/LAMPCAE/main.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 1, + "path" : "src/qrc/qianfan.rc", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/LAMPCAE/LAMPCAE_autogen/timestamp", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/LAMPCAE/LAMPCAE_autogen/timestamp.rule", + "sourceGroupIndex" : 3 + } + ], + "type" : "EXECUTABLE" +} diff --git a/out/build/.cmake/api/v1/reply/target-LAMPCAE_autogen-Debug-0d0b1d60871bafd8bc8e.json b/out/build/.cmake/api/v1/reply/target-LAMPCAE_autogen-Debug-0d0b1d60871bafd8bc8e.json new file mode 100644 index 0000000..e9f2c6c --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-LAMPCAE_autogen-Debug-0d0b1d60871bafd8bc8e.json @@ -0,0 +1,171 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/LAMPCAE/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "backtrace" : 0, + "id" : "Common::@29aabc9fbfb9b5406d55" + }, + { + "backtrace" : 0, + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "backtrace" : 0, + "id" : "SARibbonBar::@f61b241723ced025d0ef" + }, + { + "backtrace" : 0, + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "backtrace" : 0, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "backtrace" : 0, + "id" : "MeshData::@2f0f676dafab302b2d20" + }, + { + "backtrace" : 0, + "id" : "SelfDefObject::@17d93127ede5f3b478ed" + }, + { + "backtrace" : 0, + "id" : "Material::@05d68cd248c3246409d7" + }, + { + "backtrace" : 0, + "id" : "ConfigOptions::@1c9d458e4038aca43955" + }, + { + "backtrace" : 0, + "id" : "Geometry::@b7b2e4191bc961e9afba" + }, + { + "backtrace" : 0, + "id" : "ModelData::@8a6b2d9535e8b6cb6800" + }, + { + "backtrace" : 0, + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + }, + { + "backtrace" : 0, + "id" : "PostWidgets::@93a5592897f957e6fa57" + }, + { + "backtrace" : 0, + "id" : "PostInterface::@38fb729d68510c1489c9" + }, + { + "backtrace" : 0, + "id" : "GeometryCommand::@d82e5b79e04a3b196df4" + }, + { + "backtrace" : 0, + "id" : "ProjectTree::@43c6c7ebae2b88a99cdb" + }, + { + "backtrace" : 0, + "id" : "SolverControl::@4a18b637ce8bf6991ec0" + }, + { + "backtrace" : 0, + "id" : "MainWidgets::@d0895ea365458bd7f948" + }, + { + "backtrace" : 0, + "id" : "UserGuidence::@40175f0e8ac13e21fe7c" + }, + { + "backtrace" : 0, + "id" : "IO::@484b42e69e32e953bc79" + }, + { + "backtrace" : 0, + "id" : "MainWindow::@c380e645ecc921453605" + }, + { + "backtrace" : 0, + "id" : "GmshModule::@044d5c74ec3efe84c474" + }, + { + "backtrace" : 0, + "id" : "PluginManager::@d6a357cdda12b0c888b1" + }, + { + "backtrace" : 0, + "id" : "GeometryWidgets::@1fb7ae1802a587d65603" + }, + { + "id" : "LAMPCAE_autogen_timestamp_deps::@1d4d21e91c20b8980f28" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "LAMPCAE_autogen::@1d4d21e91c20b8980f28", + "isGeneratorProvided" : true, + "name" : "LAMPCAE_autogen", + "paths" : + { + "build" : "src/LAMPCAE", + "source" : "src/LAMPCAE" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1, + 2 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/LAMPCAE/CMakeFiles/LAMPCAE_autogen", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/LAMPCAE/CMakeFiles/LAMPCAE_autogen.rule", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/LAMPCAE/LAMPCAE_autogen/timestamp.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-LAMPCAE_autogen_timestamp_deps-Debug-dfa2f593c461c633ffef.json b/out/build/.cmake/api/v1/reply/target-LAMPCAE_autogen_timestamp_deps-Debug-dfa2f593c461c633ffef.json new file mode 100644 index 0000000..e770539 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-LAMPCAE_autogen_timestamp_deps-Debug-dfa2f593c461c633ffef.json @@ -0,0 +1,137 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/LAMPCAE/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "id" : "Common::@29aabc9fbfb9b5406d55" + }, + { + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "id" : "SARibbonBar::@f61b241723ced025d0ef" + }, + { + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "id" : "MeshData::@2f0f676dafab302b2d20" + }, + { + "id" : "SelfDefObject::@17d93127ede5f3b478ed" + }, + { + "id" : "Material::@05d68cd248c3246409d7" + }, + { + "id" : "ConfigOptions::@1c9d458e4038aca43955" + }, + { + "id" : "Geometry::@b7b2e4191bc961e9afba" + }, + { + "id" : "ModelData::@8a6b2d9535e8b6cb6800" + }, + { + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + }, + { + "id" : "PostWidgets::@93a5592897f957e6fa57" + }, + { + "id" : "PostInterface::@38fb729d68510c1489c9" + }, + { + "id" : "GeometryCommand::@d82e5b79e04a3b196df4" + }, + { + "id" : "ProjectTree::@43c6c7ebae2b88a99cdb" + }, + { + "id" : "SolverControl::@4a18b637ce8bf6991ec0" + }, + { + "id" : "MainWidgets::@d0895ea365458bd7f948" + }, + { + "id" : "UserGuidence::@40175f0e8ac13e21fe7c" + }, + { + "id" : "IO::@484b42e69e32e953bc79" + }, + { + "id" : "MainWindow::@c380e645ecc921453605" + }, + { + "id" : "GmshModule::@044d5c74ec3efe84c474" + }, + { + "id" : "PluginManager::@d6a357cdda12b0c888b1" + }, + { + "id" : "GeometryWidgets::@1fb7ae1802a587d65603" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "LAMPCAE_autogen_timestamp_deps::@1d4d21e91c20b8980f28", + "isGeneratorProvided" : true, + "name" : "LAMPCAE_autogen_timestamp_deps", + "paths" : + { + "build" : "src/LAMPCAE", + "source" : "src/LAMPCAE" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/LAMPCAE/CMakeFiles/LAMPCAE_autogen_timestamp_deps", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/LAMPCAE/CMakeFiles/LAMPCAE_autogen_timestamp_deps.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-MainWidgets-Debug-f8e8121f47f37f333d97.json b/out/build/.cmake/api/v1/reply/target-MainWidgets-Debug-f8e8121f47f37f333d97.json new file mode 100644 index 0000000..5dc885c --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-MainWidgets-Debug-f8e8121f47f37f333d97.json @@ -0,0 +1,1575 @@ +{ + "artifacts" : + [ + { + "path" : "Debug/MainWidgets.dll" + }, + { + "path" : "Debug/MainWidgets.lib" + }, + { + "path" : "Debug/MainWidgets.pdb" + } + ], + "backtrace" : 1, + "backtraceGraph" : + { + "commands" : + [ + "add_library", + "install", + "target_link_libraries", + "add_dependencies", + "add_compile_options", + "target_compile_definitions", + "add_definitions", + "include_directories" + ], + "files" : + [ + "src/MainWidgets/CMakeLists.txt", + "src/CMakeLists.txt", + "src/PythonModule/CMakeLists.txt", + "CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 29, + "parent" : 0 + }, + { + "file" : 1 + }, + { + "command" : 1, + "file" : 1, + "line" : 58, + "parent" : 2 + }, + { + "command" : 2, + "file" : 0, + "line" : 54, + "parent" : 0 + }, + { + "file" : 2 + }, + { + "command" : 2, + "file" : 2, + "line" : 44, + "parent" : 5 + }, + { + "command" : 3, + "file" : 0, + "line" : 62, + "parent" : 0 + }, + { + "file" : 3 + }, + { + "command" : 4, + "file" : 3, + "line" : 85, + "parent" : 8 + }, + { + "command" : 4, + "file" : 3, + "line" : 86, + "parent" : 8 + }, + { + "command" : 5, + "file" : 0, + "line" : 39, + "parent" : 0 + }, + { + "command" : 6, + "file" : 3, + "line" : 118, + "parent" : 8 + }, + { + "command" : 6, + "file" : 3, + "line" : 83, + "parent" : 8 + }, + { + "command" : 7, + "file" : 0, + "line" : 4, + "parent" : 0 + } + ] + }, + "compileGroups" : + [ + { + "compileCommandFragments" : + [ + { + "fragment" : "-DQT_QML_DEBUG /Zi /Ob0 /Od /RTC1 -MDd" + }, + { + "backtrace" : 9, + "fragment" : "/utf-8" + }, + { + "backtrace" : 10, + "fragment" : "/MDd" + } + ], + "defines" : + [ + { + "backtrace" : 11, + "define" : "MAINWIDGETS_API" + }, + { + "define" : "MainWidgets_EXPORTS" + }, + { + "backtrace" : 12, + "define" : "OUTPUT_DEBUG_INFO" + }, + { + "backtrace" : 4, + "define" : "QT_CORE_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_GUI_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_WIDGETS_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_XML_LIB" + }, + { + "backtrace" : 13, + "define" : "UNICODE" + }, + { + "backtrace" : 13, + "define" : "_UNICODE" + } + ], + "includes" : + [ + { + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/MainWidgets" + }, + { + "path" : "D:/WBFZCPP/source/FastCAE/src/MainWidgets" + }, + { + "backtrace" : 0, + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/MainWidgets/MainWidgets_autogen/include" + }, + { + "backtrace" : 14, + "path" : "D:/WBFZCPP/source/FastCAE/src/MainWidgets/.." + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/OCCT/inc" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtCore" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/./mkspecs/win32-msvc" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtGui" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtANGLE" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtWidgets" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtXml" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/VTK/include/vtk-9.3" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "D:/WBFZCPP/source/FastCAE/extlib/Python/include" + } + ], + "language" : "CXX", + "languageStandard" : + { + "backtraces" : + [ + 4 + ], + "standard" : "11" + }, + "sourceIndexes" : + [ + 0, + 1, + 2, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87 + ] + } + ], + "dependencies" : + [ + { + "backtrace" : 7, + "id" : "Common::@29aabc9fbfb9b5406d55" + }, + { + "backtrace" : 7, + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "backtrace" : 7, + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "backtrace" : 7, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "backtrace" : 7, + "id" : "MeshData::@2f0f676dafab302b2d20" + }, + { + "backtrace" : 7, + "id" : "SelfDefObject::@17d93127ede5f3b478ed" + }, + { + "backtrace" : 7, + "id" : "Material::@05d68cd248c3246409d7" + }, + { + "backtrace" : 7, + "id" : "ConfigOptions::@1c9d458e4038aca43955" + }, + { + "backtrace" : 7, + "id" : "Geometry::@b7b2e4191bc961e9afba" + }, + { + "backtrace" : 7, + "id" : "ModelData::@8a6b2d9535e8b6cb6800" + }, + { + "backtrace" : 7, + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + }, + { + "backtrace" : 7, + "id" : "PostWidgets::@93a5592897f957e6fa57" + }, + { + "backtrace" : 7, + "id" : "PostInterface::@38fb729d68510c1489c9" + }, + { + "backtrace" : 7, + "id" : "PostPlotWidget::@d1bc8a76442dff50f241" + }, + { + "backtrace" : 7, + "id" : "ProjectTreeExtend::@f2791e4784919f40d89d" + }, + { + "backtrace" : 7, + "id" : "GeometryCommand::@d82e5b79e04a3b196df4" + }, + { + "backtrace" : 7, + "id" : "ProjectTree::@43c6c7ebae2b88a99cdb" + }, + { + "backtrace" : 7, + "id" : "SolverControl::@4a18b637ce8bf6991ec0" + }, + { + "backtrace" : 7, + "id" : "IO::@484b42e69e32e953bc79" + }, + { + "backtrace" : 7, + "id" : "GeometryWidgets::@1fb7ae1802a587d65603" + }, + { + "id" : "MainWidgets_autogen_timestamp_deps::@d0895ea365458bd7f948" + }, + { + "backtrace" : 0, + "id" : "MainWidgets_autogen::@d0895ea365458bd7f948" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "MainWidgets::@d0895ea365458bd7f948", + "install" : + { + "destinations" : + [ + { + "backtrace" : 3, + "path" : "bin" + } + ], + "prefix" : + { + "path" : "D:/WBFZCPP/source/FastCAE/install" + } + }, + "link" : + { + "commandFragments" : + [ + { + "fragment" : "/machine:x64 /debug /INCREMENTAL", + "role" : "flags" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ProjectTreeExtend.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\SolverControl.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ProjectTree.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\PostWidgets.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\PostInterface.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\PostPlotWidget.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\IO.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\GeometryWidgets.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\GeometryCommand.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKIVtk.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingGL2PSOpenGL2-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ModuleBase.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersModeling-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ModelData.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ConfigOptions.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Material.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\SelfDefObject.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Settings.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\MeshData.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Geometry.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "D:\\vcpkg\\installed\\x64-windows\\debug\\lib\\freetype.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKBRep.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKG2d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKG3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKGeomAlgo.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKGeomBase.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKHLR.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKMath.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKMesh.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKService.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKShHealing.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKTopAlgo.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKV3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\OCCT\\win64\\vc14\\libd\\TKernel.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonColor-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonComputationalGeometry-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonDataModel-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonExecutionModel-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonMath-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonMisc-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonSystem-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonTransforms-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersExtraction-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersGeneral-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersGeometry-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersSources-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersStatistics-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOLegacy-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOXML-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOXMLParser-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingFourier-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingMath-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkInteractionStyle-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkParallelCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkParallelDIY-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingFreeType-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingOpenGL2-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingUI-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingVolume-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingVolumeOpenGL2-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkdoubleconversion-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkexpat-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkfreetype-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkglew-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtklz4-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtklzma-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtksys-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkzlib-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\DataProperty.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Xmld.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\PythonModule.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Widgetsd.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Guid.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Common.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Cored.lib", + "role" : "libraries" + }, + { + "backtrace" : 6, + "fragment" : "D:\\WBFZCPP\\source\\FastCAE\\extlib\\Python\\libs\\python37.lib", + "role" : "libraries" + }, + { + "fragment" : "kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib", + "role" : "libraries" + } + ], + "language" : "CXX" + }, + "name" : "MainWidgets", + "nameOnDisk" : "MainWidgets.dll", + "paths" : + { + "build" : "src/MainWidgets", + "source" : "src/MainWidgets" + }, + "sourceGroups" : + [ + { + "name" : "Source Files", + "sourceIndexes" : + [ + 0, + 1, + 2, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87 + ] + }, + { + "name" : "Header Files", + "sourceIndexes" : + [ + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54 + ] + }, + { + "name" : "", + "sourceIndexes" : + [ + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 109 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/MainWidgets/MainWidgets_autogen/mocs_compilation.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/MainWidgets/qrc_qianfan.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/MainWidgets/qrc_translations.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/MainWidgets/ui_ControlPanel.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/MainWidgets/ui_DialogCreateGeoComponent.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/MainWidgets/ui_DialogCreateMaterial.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/MainWidgets/ui_DialogCreatePhysicsModel.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/MainWidgets/ui_DialogCreateSet.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/MainWidgets/ui_DialogFilterMesh.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/MainWidgets/ui_DialogGeoMeshRotate.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/MainWidgets/ui_DialogGeometryRename.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/MainWidgets/ui_DialogMeshChecking.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/MainWidgets/ui_DialogMeshSetMerge.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/MainWidgets/ui_DialogSavePicture.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/MainWidgets/ui_DialogSelectComponents.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/MainWidgets/ui_DialogSelectMesher.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/MainWidgets/ui_DialogVTKTransform.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/MainWidgets/ui_ParameterGroupLabel.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/MainWidgets/ui_PropertyTable.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/MainWidgets/ui_ReportProcessingDialog.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/MainWidgets/ui_projectSolveDialog.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MainWidgets/ControlPanel.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MainWidgets/DialogCreateGeoComponent.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MainWidgets/DialogCreateMaterial.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MainWidgets/DialogCreatePhysicsModel.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MainWidgets/DialogCreateSet.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MainWidgets/DialogFilterMesh.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MainWidgets/DialogGeoMeshRotate.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MainWidgets/DialogGeometryRename.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MainWidgets/DialogMeshChecking.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MainWidgets/DialogMeshRename.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MainWidgets/DialogMeshSetMerge.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MainWidgets/DialogSavePicture.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MainWidgets/DialogSelectMesher.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MainWidgets/DialogVTKTransform.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MainWidgets/GeometryWidget.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MainWidgets/MainWidgetsPy.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MainWidgets/MeshWidget.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MainWidgets/ParameterGroupLabel.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MainWidgets/PhysicsWidget.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MainWidgets/ProcessWindow.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MainWidgets/ProjectTreeFactory.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MainWidgets/PropertyTable.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MainWidgets/ReportProcessingDialog.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MainWidgets/geometrySetViewData.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MainWidgets/geometryViewData.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MainWidgets/geometryViewObject.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MainWidgets/geometryViewProvider.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MainWidgets/mainWidgetsAPI.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MainWidgets/meshKernalViewObject.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MainWidgets/meshViewProvider.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MainWidgets/messageWindow.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MainWidgets/preWindow.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MainWidgets/projectSolveDialog.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MainWidgets/sketchViewProvider.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MainWidgets/ControlPanel.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MainWidgets/DialogCreateGeoComponent.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MainWidgets/DialogCreateMaterial.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MainWidgets/DialogCreatePhysicsModel.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MainWidgets/DialogCreateSet.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MainWidgets/DialogFilterMesh.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MainWidgets/DialogGeoMeshRotate.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MainWidgets/DialogGeometryRename.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MainWidgets/DialogMeshChecking.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MainWidgets/DialogMeshRename.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MainWidgets/DialogMeshSetMerge.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MainWidgets/DialogSavePicture.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MainWidgets/DialogSelectMesher.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MainWidgets/DialogVTKTransform.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MainWidgets/GeometryWidget.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MainWidgets/MainWidgetsPy.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MainWidgets/MeshWidget.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MainWidgets/ParameterGroupLabel.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MainWidgets/PhysicsWidget.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MainWidgets/ProcessWindow.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MainWidgets/ProjectTreeFactory.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MainWidgets/PropertyTable.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MainWidgets/ReportProcessingDialog.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MainWidgets/geometrySetViewData.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MainWidgets/geometryViewData.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MainWidgets/geometryViewObject.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MainWidgets/geometryViewProvider.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MainWidgets/meshKernalViewObject.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MainWidgets/meshViewProvider.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MainWidgets/messageWindow.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MainWidgets/preWindow.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MainWidgets/projectSolveDialog.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MainWidgets/sketchViewProvider.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/MainWidgets/MainWidgets_autogen/timestamp", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/qrc/qianfan.qrc", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/qrc/translations.qrc", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/MainWidgets/ControlPanel.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/MainWidgets/DialogCreateGeoComponent.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/MainWidgets/DialogCreateMaterial.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/MainWidgets/DialogCreatePhysicsModel.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/MainWidgets/DialogCreateSet.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/MainWidgets/DialogFilterMesh.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/MainWidgets/DialogGeoMeshRotate.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/MainWidgets/DialogGeometryRename.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/MainWidgets/DialogMeshChecking.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/MainWidgets/DialogMeshSetMerge.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/MainWidgets/DialogSavePicture.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/MainWidgets/DialogSelectComponents.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/MainWidgets/DialogSelectMesher.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/MainWidgets/DialogVTKTransform.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/MainWidgets/ParameterGroupLabel.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/MainWidgets/PropertyTable.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/MainWidgets/ReportProcessingDialog.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/MainWidgets/projectSolveDialog.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/MainWidgets/MainWidgets_autogen/timestamp.rule", + "sourceGroupIndex" : 3 + } + ], + "type" : "SHARED_LIBRARY" +} diff --git a/out/build/.cmake/api/v1/reply/target-MainWidgets_autogen-Debug-592aaa8f401193823229.json b/out/build/.cmake/api/v1/reply/target-MainWidgets_autogen-Debug-592aaa8f401193823229.json new file mode 100644 index 0000000..65d04ea --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-MainWidgets_autogen-Debug-592aaa8f401193823229.json @@ -0,0 +1,155 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/MainWidgets/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "backtrace" : 0, + "id" : "Common::@29aabc9fbfb9b5406d55" + }, + { + "backtrace" : 0, + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "backtrace" : 0, + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "backtrace" : 0, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "backtrace" : 0, + "id" : "MeshData::@2f0f676dafab302b2d20" + }, + { + "backtrace" : 0, + "id" : "SelfDefObject::@17d93127ede5f3b478ed" + }, + { + "backtrace" : 0, + "id" : "Material::@05d68cd248c3246409d7" + }, + { + "backtrace" : 0, + "id" : "ConfigOptions::@1c9d458e4038aca43955" + }, + { + "backtrace" : 0, + "id" : "Geometry::@b7b2e4191bc961e9afba" + }, + { + "backtrace" : 0, + "id" : "ModelData::@8a6b2d9535e8b6cb6800" + }, + { + "backtrace" : 0, + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + }, + { + "backtrace" : 0, + "id" : "PostWidgets::@93a5592897f957e6fa57" + }, + { + "backtrace" : 0, + "id" : "PostInterface::@38fb729d68510c1489c9" + }, + { + "backtrace" : 0, + "id" : "PostPlotWidget::@d1bc8a76442dff50f241" + }, + { + "backtrace" : 0, + "id" : "ProjectTreeExtend::@f2791e4784919f40d89d" + }, + { + "backtrace" : 0, + "id" : "GeometryCommand::@d82e5b79e04a3b196df4" + }, + { + "backtrace" : 0, + "id" : "ProjectTree::@43c6c7ebae2b88a99cdb" + }, + { + "backtrace" : 0, + "id" : "SolverControl::@4a18b637ce8bf6991ec0" + }, + { + "backtrace" : 0, + "id" : "IO::@484b42e69e32e953bc79" + }, + { + "backtrace" : 0, + "id" : "GeometryWidgets::@1fb7ae1802a587d65603" + }, + { + "id" : "MainWidgets_autogen_timestamp_deps::@d0895ea365458bd7f948" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "MainWidgets_autogen::@d0895ea365458bd7f948", + "isGeneratorProvided" : true, + "name" : "MainWidgets_autogen", + "paths" : + { + "build" : "src/MainWidgets", + "source" : "src/MainWidgets" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1, + 2 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/MainWidgets/CMakeFiles/MainWidgets_autogen", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/MainWidgets/CMakeFiles/MainWidgets_autogen.rule", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/MainWidgets/MainWidgets_autogen/timestamp.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-MainWidgets_autogen_timestamp_deps-Debug-e7abf9d8f80a28535921.json b/out/build/.cmake/api/v1/reply/target-MainWidgets_autogen_timestamp_deps-Debug-e7abf9d8f80a28535921.json new file mode 100644 index 0000000..7463880 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-MainWidgets_autogen_timestamp_deps-Debug-e7abf9d8f80a28535921.json @@ -0,0 +1,125 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/MainWidgets/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "id" : "Common::@29aabc9fbfb9b5406d55" + }, + { + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "id" : "MeshData::@2f0f676dafab302b2d20" + }, + { + "id" : "SelfDefObject::@17d93127ede5f3b478ed" + }, + { + "id" : "Material::@05d68cd248c3246409d7" + }, + { + "id" : "ConfigOptions::@1c9d458e4038aca43955" + }, + { + "id" : "Geometry::@b7b2e4191bc961e9afba" + }, + { + "id" : "ModelData::@8a6b2d9535e8b6cb6800" + }, + { + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + }, + { + "id" : "PostWidgets::@93a5592897f957e6fa57" + }, + { + "id" : "PostInterface::@38fb729d68510c1489c9" + }, + { + "id" : "PostPlotWidget::@d1bc8a76442dff50f241" + }, + { + "id" : "ProjectTreeExtend::@f2791e4784919f40d89d" + }, + { + "id" : "GeometryCommand::@d82e5b79e04a3b196df4" + }, + { + "id" : "ProjectTree::@43c6c7ebae2b88a99cdb" + }, + { + "id" : "SolverControl::@4a18b637ce8bf6991ec0" + }, + { + "id" : "IO::@484b42e69e32e953bc79" + }, + { + "id" : "GeometryWidgets::@1fb7ae1802a587d65603" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "MainWidgets_autogen_timestamp_deps::@d0895ea365458bd7f948", + "isGeneratorProvided" : true, + "name" : "MainWidgets_autogen_timestamp_deps", + "paths" : + { + "build" : "src/MainWidgets", + "source" : "src/MainWidgets" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/MainWidgets/CMakeFiles/MainWidgets_autogen_timestamp_deps", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/MainWidgets/CMakeFiles/MainWidgets_autogen_timestamp_deps.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-MainWindow-Debug-44755f896a47b1dbc6f9.json b/out/build/.cmake/api/v1/reply/target-MainWindow-Debug-44755f896a47b1dbc6f9.json new file mode 100644 index 0000000..3457dab --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-MainWindow-Debug-44755f896a47b1dbc6f9.json @@ -0,0 +1,974 @@ +{ + "artifacts" : + [ + { + "path" : "Debug/MainWindow.dll" + }, + { + "path" : "Debug/MainWindow.lib" + }, + { + "path" : "Debug/MainWindow.pdb" + } + ], + "backtrace" : 1, + "backtraceGraph" : + { + "commands" : + [ + "add_library", + "install", + "target_link_libraries", + "add_dependencies", + "add_compile_options", + "target_compile_definitions", + "add_definitions", + "include_directories", + "target_include_directories" + ], + "files" : + [ + "src/MainWindow/CMakeLists.txt", + "src/CMakeLists.txt", + "src/PythonModule/CMakeLists.txt", + "CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 29, + "parent" : 0 + }, + { + "file" : 1 + }, + { + "command" : 1, + "file" : 1, + "line" : 58, + "parent" : 2 + }, + { + "command" : 2, + "file" : 0, + "line" : 55, + "parent" : 0 + }, + { + "file" : 2 + }, + { + "command" : 2, + "file" : 2, + "line" : 44, + "parent" : 5 + }, + { + "command" : 3, + "file" : 0, + "line" : 63, + "parent" : 0 + }, + { + "file" : 3 + }, + { + "command" : 4, + "file" : 3, + "line" : 85, + "parent" : 8 + }, + { + "command" : 4, + "file" : 3, + "line" : 86, + "parent" : 8 + }, + { + "command" : 5, + "file" : 0, + "line" : 39, + "parent" : 0 + }, + { + "command" : 6, + "file" : 3, + "line" : 118, + "parent" : 8 + }, + { + "command" : 6, + "file" : 3, + "line" : 83, + "parent" : 8 + }, + { + "command" : 7, + "file" : 0, + "line" : 4, + "parent" : 0 + }, + { + "command" : 8, + "file" : 0, + "line" : 50, + "parent" : 0 + } + ] + }, + "compileGroups" : + [ + { + "compileCommandFragments" : + [ + { + "fragment" : "-DQT_QML_DEBUG /Zi /Ob0 /Od /RTC1 -MDd" + }, + { + "backtrace" : 9, + "fragment" : "/utf-8" + }, + { + "backtrace" : 10, + "fragment" : "/MDd" + } + ], + "defines" : + [ + { + "backtrace" : 11, + "define" : "MAINWINDOW_API" + }, + { + "define" : "MainWindow_EXPORTS" + }, + { + "backtrace" : 12, + "define" : "OUTPUT_DEBUG_INFO" + }, + { + "backtrace" : 4, + "define" : "QT_CORE_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_GUI_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_WIDGETS_LIB" + }, + { + "backtrace" : 13, + "define" : "UNICODE" + }, + { + "backtrace" : 13, + "define" : "_UNICODE" + } + ], + "includes" : + [ + { + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/MainWindow" + }, + { + "path" : "D:/WBFZCPP/source/FastCAE/src/MainWindow" + }, + { + "backtrace" : 0, + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/MainWindow/MainWindow_autogen/include" + }, + { + "backtrace" : 14, + "path" : "D:/WBFZCPP/source/FastCAE/src/MainWindow/.." + }, + { + "backtrace" : 15, + "path" : "C:/Qwt/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtCore" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/./mkspecs/win32-msvc" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtGui" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtANGLE" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtWidgets" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/VTK/include/vtk-9.3" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "D:/WBFZCPP/source/FastCAE/extlib/Python/include" + } + ], + "language" : "CXX", + "languageStandard" : + { + "backtraces" : + [ + 4 + ], + "standard" : "11" + }, + "sourceIndexes" : + [ + 0, + 1, + 2, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23 + ] + } + ], + "dependencies" : + [ + { + "backtrace" : 7, + "id" : "Common::@29aabc9fbfb9b5406d55" + }, + { + "backtrace" : 7, + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "backtrace" : 7, + "id" : "SARibbonBar::@f61b241723ced025d0ef" + }, + { + "backtrace" : 7, + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "backtrace" : 7, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "backtrace" : 7, + "id" : "MeshData::@2f0f676dafab302b2d20" + }, + { + "backtrace" : 7, + "id" : "SelfDefObject::@17d93127ede5f3b478ed" + }, + { + "backtrace" : 7, + "id" : "Material::@05d68cd248c3246409d7" + }, + { + "backtrace" : 7, + "id" : "ConfigOptions::@1c9d458e4038aca43955" + }, + { + "backtrace" : 7, + "id" : "Geometry::@b7b2e4191bc961e9afba" + }, + { + "backtrace" : 7, + "id" : "ModelData::@8a6b2d9535e8b6cb6800" + }, + { + "backtrace" : 7, + "id" : "PostRenderData::@ce9c2f9a6cca9038fdeb" + }, + { + "backtrace" : 7, + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + }, + { + "backtrace" : 7, + "id" : "PostWidgets::@93a5592897f957e6fa57" + }, + { + "backtrace" : 7, + "id" : "PostInterface::@38fb729d68510c1489c9" + }, + { + "backtrace" : 7, + "id" : "GeometryCommand::@d82e5b79e04a3b196df4" + }, + { + "backtrace" : 7, + "id" : "ProjectTree::@43c6c7ebae2b88a99cdb" + }, + { + "backtrace" : 7, + "id" : "SolverControl::@4a18b637ce8bf6991ec0" + }, + { + "backtrace" : 7, + "id" : "MainWidgets::@d0895ea365458bd7f948" + }, + { + "backtrace" : 7, + "id" : "UserGuidence::@40175f0e8ac13e21fe7c" + }, + { + "backtrace" : 7, + "id" : "IO::@484b42e69e32e953bc79" + }, + { + "backtrace" : 7, + "id" : "GmshModule::@044d5c74ec3efe84c474" + }, + { + "backtrace" : 7, + "id" : "PluginManager::@d6a357cdda12b0c888b1" + }, + { + "backtrace" : 7, + "id" : "GeometryWidgets::@1fb7ae1802a587d65603" + }, + { + "backtrace" : 0, + "id" : "MainWindow_autogen::@c380e645ecc921453605" + }, + { + "id" : "MainWindow_autogen_timestamp_deps::@c380e645ecc921453605" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "MainWindow::@c380e645ecc921453605", + "install" : + { + "destinations" : + [ + { + "backtrace" : 3, + "path" : "bin" + } + ], + "prefix" : + { + "path" : "D:/WBFZCPP/source/FastCAE/install" + } + }, + "link" : + { + "commandFragments" : + [ + { + "fragment" : "/machine:x64 /debug /INCREMENTAL", + "role" : "flags" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\SARibbonBar.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\MainWidgets.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\UserGuidence.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\SolverControl.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\IO.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\PluginManager.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\GmshModule.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\GeometryWidgets.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\GeometryCommand.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ProjectTree.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\PostWidgets.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ModuleBase.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ModelData.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\PostInterface.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\PostRenderData.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ConfigOptions.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Material.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\SelfDefObject.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\MeshData.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Geometry.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonColor-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonComputationalGeometry-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonDataModel-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonExecutionModel-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonMath-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonMisc-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonSystem-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonTransforms-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersExtraction-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersGeneral-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersGeometry-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersSources-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersStatistics-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOLegacy-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOXML-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOXMLParser-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingFourier-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingMath-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkInteractionStyle-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkParallelCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkParallelDIY-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingFreeType-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingOpenGL2-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingUI-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingVolume-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingVolumeOpenGL2-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkdoubleconversion-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkexpat-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkfreetype-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkglew-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtklz4-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtklzma-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtksys-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkzlib-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\DataProperty.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\PythonModule.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Common.lib", + "role" : "libraries" + }, + { + "backtrace" : 6, + "fragment" : "D:\\WBFZCPP\\source\\FastCAE\\extlib\\Python\\libs\\python37.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Settings.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Widgetsd.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Guid.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Cored.lib", + "role" : "libraries" + }, + { + "fragment" : "kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib", + "role" : "libraries" + } + ], + "language" : "CXX" + }, + "name" : "MainWindow", + "nameOnDisk" : "MainWindow.dll", + "paths" : + { + "build" : "src/MainWindow", + "source" : "src/MainWindow" + }, + "sourceGroups" : + [ + { + "name" : "Source Files", + "sourceIndexes" : + [ + 0, + 1, + 2, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23 + ] + }, + { + "name" : "Header Files", + "sourceIndexes" : + [ + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14 + ] + }, + { + "name" : "", + "sourceIndexes" : + [ + 24, + 25, + 26, + 27, + 28 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 29 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/MainWindow/MainWindow_autogen/mocs_compilation.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/MainWindow/qrc_qianfan.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/MainWindow/qrc_translations.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/MainWindow/ui_DialogAbout.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/MainWindow/ui_MainWindow.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MainWindow/CustomizerHelper.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MainWindow/DialogAbout.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MainWindow/MainWindow.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MainWindow/MainWindowAPI.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MainWindow/MainWindowPy.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MainWindow/SARibbonMWUi.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MainWindow/SignalHandler.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MainWindow/SolveProcessManager.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MainWindow/SubWindowManager.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MainWindow/Translator.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MainWindow/CustomizerHelper.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MainWindow/DialogAbout.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MainWindow/MainWindow.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MainWindow/MainWindowPy.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MainWindow/SARibbonMWUi.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MainWindow/SignalHandler.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MainWindow/SolveProcessManager.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MainWindow/SubWindowManager.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MainWindow/Translator.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/MainWindow/MainWindow_autogen/timestamp", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/qrc/qianfan.qrc", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/qrc/translations.qrc", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/MainWindow/DialogAbout.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/MainWindow/MainWindow.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/MainWindow/MainWindow_autogen/timestamp.rule", + "sourceGroupIndex" : 3 + } + ], + "type" : "SHARED_LIBRARY" +} diff --git a/out/build/.cmake/api/v1/reply/target-MainWindow_autogen-Debug-d639ea465a87551a348e.json b/out/build/.cmake/api/v1/reply/target-MainWindow_autogen-Debug-d639ea465a87551a348e.json new file mode 100644 index 0000000..e413789 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-MainWindow_autogen-Debug-d639ea465a87551a348e.json @@ -0,0 +1,171 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/MainWindow/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "backtrace" : 0, + "id" : "Common::@29aabc9fbfb9b5406d55" + }, + { + "backtrace" : 0, + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "backtrace" : 0, + "id" : "SARibbonBar::@f61b241723ced025d0ef" + }, + { + "backtrace" : 0, + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "backtrace" : 0, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "backtrace" : 0, + "id" : "MeshData::@2f0f676dafab302b2d20" + }, + { + "backtrace" : 0, + "id" : "SelfDefObject::@17d93127ede5f3b478ed" + }, + { + "backtrace" : 0, + "id" : "Material::@05d68cd248c3246409d7" + }, + { + "backtrace" : 0, + "id" : "ConfigOptions::@1c9d458e4038aca43955" + }, + { + "backtrace" : 0, + "id" : "Geometry::@b7b2e4191bc961e9afba" + }, + { + "backtrace" : 0, + "id" : "ModelData::@8a6b2d9535e8b6cb6800" + }, + { + "backtrace" : 0, + "id" : "PostRenderData::@ce9c2f9a6cca9038fdeb" + }, + { + "backtrace" : 0, + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + }, + { + "backtrace" : 0, + "id" : "PostWidgets::@93a5592897f957e6fa57" + }, + { + "backtrace" : 0, + "id" : "PostInterface::@38fb729d68510c1489c9" + }, + { + "backtrace" : 0, + "id" : "GeometryCommand::@d82e5b79e04a3b196df4" + }, + { + "backtrace" : 0, + "id" : "ProjectTree::@43c6c7ebae2b88a99cdb" + }, + { + "backtrace" : 0, + "id" : "SolverControl::@4a18b637ce8bf6991ec0" + }, + { + "backtrace" : 0, + "id" : "MainWidgets::@d0895ea365458bd7f948" + }, + { + "backtrace" : 0, + "id" : "UserGuidence::@40175f0e8ac13e21fe7c" + }, + { + "backtrace" : 0, + "id" : "IO::@484b42e69e32e953bc79" + }, + { + "backtrace" : 0, + "id" : "GmshModule::@044d5c74ec3efe84c474" + }, + { + "backtrace" : 0, + "id" : "PluginManager::@d6a357cdda12b0c888b1" + }, + { + "backtrace" : 0, + "id" : "GeometryWidgets::@1fb7ae1802a587d65603" + }, + { + "id" : "MainWindow_autogen_timestamp_deps::@c380e645ecc921453605" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "MainWindow_autogen::@c380e645ecc921453605", + "isGeneratorProvided" : true, + "name" : "MainWindow_autogen", + "paths" : + { + "build" : "src/MainWindow", + "source" : "src/MainWindow" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1, + 2 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/MainWindow/CMakeFiles/MainWindow_autogen", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/MainWindow/CMakeFiles/MainWindow_autogen.rule", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/MainWindow/MainWindow_autogen/timestamp.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-MainWindow_autogen_timestamp_deps-Debug-c0405d9ecaf5d33d7de1.json b/out/build/.cmake/api/v1/reply/target-MainWindow_autogen_timestamp_deps-Debug-c0405d9ecaf5d33d7de1.json new file mode 100644 index 0000000..1893f25 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-MainWindow_autogen_timestamp_deps-Debug-c0405d9ecaf5d33d7de1.json @@ -0,0 +1,134 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/MainWindow/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "id" : "SARibbonBar::@f61b241723ced025d0ef" + }, + { + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "id" : "MeshData::@2f0f676dafab302b2d20" + }, + { + "id" : "SelfDefObject::@17d93127ede5f3b478ed" + }, + { + "id" : "Material::@05d68cd248c3246409d7" + }, + { + "id" : "ConfigOptions::@1c9d458e4038aca43955" + }, + { + "id" : "Geometry::@b7b2e4191bc961e9afba" + }, + { + "id" : "ModelData::@8a6b2d9535e8b6cb6800" + }, + { + "id" : "PostRenderData::@ce9c2f9a6cca9038fdeb" + }, + { + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + }, + { + "id" : "PostWidgets::@93a5592897f957e6fa57" + }, + { + "id" : "PostInterface::@38fb729d68510c1489c9" + }, + { + "id" : "GeometryCommand::@d82e5b79e04a3b196df4" + }, + { + "id" : "ProjectTree::@43c6c7ebae2b88a99cdb" + }, + { + "id" : "SolverControl::@4a18b637ce8bf6991ec0" + }, + { + "id" : "MainWidgets::@d0895ea365458bd7f948" + }, + { + "id" : "UserGuidence::@40175f0e8ac13e21fe7c" + }, + { + "id" : "IO::@484b42e69e32e953bc79" + }, + { + "id" : "GmshModule::@044d5c74ec3efe84c474" + }, + { + "id" : "PluginManager::@d6a357cdda12b0c888b1" + }, + { + "id" : "GeometryWidgets::@1fb7ae1802a587d65603" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "MainWindow_autogen_timestamp_deps::@c380e645ecc921453605", + "isGeneratorProvided" : true, + "name" : "MainWindow_autogen_timestamp_deps", + "paths" : + { + "build" : "src/MainWindow", + "source" : "src/MainWindow" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/MainWindow/CMakeFiles/MainWindow_autogen_timestamp_deps", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/MainWindow/CMakeFiles/MainWindow_autogen_timestamp_deps.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-Material-Debug-5eb547a9a882c93cd5b5.json b/out/build/.cmake/api/v1/reply/target-Material-Debug-5eb547a9a882c93cd5b5.json new file mode 100644 index 0000000..e17e0f7 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-Material-Debug-5eb547a9a882c93cd5b5.json @@ -0,0 +1,534 @@ +{ + "artifacts" : + [ + { + "path" : "Debug/Material.dll" + }, + { + "path" : "Debug/Material.lib" + }, + { + "path" : "Debug/Material.pdb" + } + ], + "backtrace" : 1, + "backtraceGraph" : + { + "commands" : + [ + "add_library", + "install", + "target_link_libraries", + "add_dependencies", + "add_compile_options", + "target_compile_definitions", + "add_definitions", + "include_directories" + ], + "files" : + [ + "src/Material/CMakeLists.txt", + "src/CMakeLists.txt", + "src/PythonModule/CMakeLists.txt", + "CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 28, + "parent" : 0 + }, + { + "file" : 1 + }, + { + "command" : 1, + "file" : 1, + "line" : 58, + "parent" : 2 + }, + { + "command" : 2, + "file" : 0, + "line" : 49, + "parent" : 0 + }, + { + "file" : 2 + }, + { + "command" : 2, + "file" : 2, + "line" : 44, + "parent" : 5 + }, + { + "command" : 3, + "file" : 0, + "line" : 57, + "parent" : 0 + }, + { + "file" : 3 + }, + { + "command" : 4, + "file" : 3, + "line" : 85, + "parent" : 8 + }, + { + "command" : 4, + "file" : 3, + "line" : 86, + "parent" : 8 + }, + { + "command" : 5, + "file" : 0, + "line" : 38, + "parent" : 0 + }, + { + "command" : 6, + "file" : 3, + "line" : 118, + "parent" : 8 + }, + { + "command" : 6, + "file" : 3, + "line" : 83, + "parent" : 8 + }, + { + "command" : 7, + "file" : 0, + "line" : 4, + "parent" : 0 + } + ] + }, + "compileGroups" : + [ + { + "compileCommandFragments" : + [ + { + "fragment" : "-DQT_QML_DEBUG /Zi /Ob0 /Od /RTC1 -MDd" + }, + { + "backtrace" : 9, + "fragment" : "/utf-8" + }, + { + "backtrace" : 10, + "fragment" : "/MDd" + } + ], + "defines" : + [ + { + "backtrace" : 11, + "define" : "MATERIAL_API" + }, + { + "define" : "Material_EXPORTS" + }, + { + "backtrace" : 12, + "define" : "OUTPUT_DEBUG_INFO" + }, + { + "backtrace" : 4, + "define" : "QT_CORE_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_GUI_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_WIDGETS_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_XML_LIB" + }, + { + "backtrace" : 13, + "define" : "UNICODE" + }, + { + "backtrace" : 13, + "define" : "_UNICODE" + } + ], + "includes" : + [ + { + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/Material" + }, + { + "path" : "D:/WBFZCPP/source/FastCAE/src/Material" + }, + { + "backtrace" : 0, + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/Material/Material_autogen/include" + }, + { + "backtrace" : 14, + "path" : "D:/WBFZCPP/source/FastCAE/src/Material/.." + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtWidgets" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtGui" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtANGLE" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtCore" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/./mkspecs/win32-msvc" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtXml" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "D:/WBFZCPP/source/FastCAE/extlib/Python/include" + } + ], + "language" : "CXX", + "languageStandard" : + { + "backtraces" : + [ + 4 + ], + "standard" : "11" + }, + "sourceIndexes" : + [ + 0, + 10, + 11, + 12, + 13, + 14, + 15 + ] + } + ], + "dependencies" : + [ + { + "backtrace" : 4, + "id" : "Common::@29aabc9fbfb9b5406d55" + }, + { + "backtrace" : 7, + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "backtrace" : 7, + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "backtrace" : 7, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "backtrace" : 7, + "id" : "SelfDefObject::@17d93127ede5f3b478ed" + }, + { + "backtrace" : 0, + "id" : "Material_autogen::@05d68cd248c3246409d7" + }, + { + "id" : "Material_autogen_timestamp_deps::@05d68cd248c3246409d7" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "Material::@05d68cd248c3246409d7", + "install" : + { + "destinations" : + [ + { + "backtrace" : 3, + "path" : "bin" + } + ], + "prefix" : + { + "path" : "D:/WBFZCPP/source/FastCAE/install" + } + }, + "link" : + { + "commandFragments" : + [ + { + "fragment" : "/machine:x64 /debug /INCREMENTAL", + "role" : "flags" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\SelfDefObject.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Settings.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\DataProperty.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Xmld.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\PythonModule.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Widgetsd.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Guid.lib", + "role" : "libraries" + }, + { + "backtrace" : 6, + "fragment" : "D:\\WBFZCPP\\source\\FastCAE\\extlib\\Python\\libs\\python37.lib", + "role" : "libraries" + }, + { + "backtrace" : 6, + "fragment" : "Debug\\Common.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Cored.lib", + "role" : "libraries" + }, + { + "fragment" : "kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib", + "role" : "libraries" + } + ], + "language" : "CXX" + }, + "name" : "Material", + "nameOnDisk" : "Material.dll", + "paths" : + { + "build" : "src/Material", + "source" : "src/Material" + }, + "sourceGroups" : + [ + { + "name" : "Source Files", + "sourceIndexes" : + [ + 0, + 10, + 11, + 12, + 13, + 14, + 15 + ] + }, + { + "name" : "Header Files", + "sourceIndexes" : + [ + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9 + ] + }, + { + "name" : "", + "sourceIndexes" : + [ + 16, + 17, + 18 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 19 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/Material/Material_autogen/mocs_compilation.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/Material/ui_DialogLoadMaterial.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/Material/ui_DialogRemoveMaterial.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Material/DialogLoadMaterial.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Material/DialogRemoveMaterial.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Material/Material.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Material/MaterialAPI.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Material/MaterialFactory.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Material/MaterialPy.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Material/MaterialSingletion.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Material/DialogLoadMaterial.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Material/DialogRemoveMaterial.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Material/Material.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Material/MaterialFactory.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Material/MaterialPy.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Material/MaterialSingletion.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/Material/Material_autogen/timestamp", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/Material/DialogLoadMaterial.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/Material/DialogRemoveMaterial.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/Material/Material_autogen/timestamp.rule", + "sourceGroupIndex" : 3 + } + ], + "type" : "SHARED_LIBRARY" +} diff --git a/out/build/.cmake/api/v1/reply/target-Material_autogen-Debug-3a16fd19d6edcf795fc2.json b/out/build/.cmake/api/v1/reply/target-Material_autogen-Debug-3a16fd19d6edcf795fc2.json new file mode 100644 index 0000000..647e8de --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-Material_autogen-Debug-3a16fd19d6edcf795fc2.json @@ -0,0 +1,91 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/Material/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "backtrace" : 0, + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "backtrace" : 0, + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "backtrace" : 0, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "backtrace" : 0, + "id" : "SelfDefObject::@17d93127ede5f3b478ed" + }, + { + "id" : "Material_autogen_timestamp_deps::@05d68cd248c3246409d7" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "Material_autogen::@05d68cd248c3246409d7", + "isGeneratorProvided" : true, + "name" : "Material_autogen", + "paths" : + { + "build" : "src/Material", + "source" : "src/Material" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1, + 2 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/Material/CMakeFiles/Material_autogen", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/Material/CMakeFiles/Material_autogen.rule", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/Material/Material_autogen/timestamp.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-Material_autogen_timestamp_deps-Debug-0a3c394b1d68fcc91773.json b/out/build/.cmake/api/v1/reply/target-Material_autogen_timestamp_deps-Debug-0a3c394b1d68fcc91773.json new file mode 100644 index 0000000..d78ef39 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-Material_autogen_timestamp_deps-Debug-0a3c394b1d68fcc91773.json @@ -0,0 +1,77 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/Material/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "id" : "SelfDefObject::@17d93127ede5f3b478ed" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "Material_autogen_timestamp_deps::@05d68cd248c3246409d7", + "isGeneratorProvided" : true, + "name" : "Material_autogen_timestamp_deps", + "paths" : + { + "build" : "src/Material", + "source" : "src/Material" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/Material/CMakeFiles/Material_autogen_timestamp_deps", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/Material/CMakeFiles/Material_autogen_timestamp_deps.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-MeshData-Debug-88542b4f910e26b63a07.json b/out/build/.cmake/api/v1/reply/target-MeshData-Debug-88542b4f910e26b63a07.json new file mode 100644 index 0000000..2fddb5d --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-MeshData-Debug-88542b4f910e26b63a07.json @@ -0,0 +1,704 @@ +{ + "artifacts" : + [ + { + "path" : "Debug/MeshData.dll" + }, + { + "path" : "Debug/MeshData.lib" + }, + { + "path" : "Debug/MeshData.pdb" + } + ], + "backtrace" : 1, + "backtraceGraph" : + { + "commands" : + [ + "add_library", + "install", + "target_link_libraries", + "set_property", + "_populate_Widgets_target_properties", + "find_package", + "add_dependencies", + "add_compile_options", + "target_compile_definitions", + "add_definitions", + "include_directories" + ], + "files" : + [ + "src/MeshData/CMakeLists.txt", + "src/CMakeLists.txt", + "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Widgets/Qt5WidgetsConfig.cmake", + "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5/Qt5Config.cmake", + "CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 20, + "parent" : 0 + }, + { + "file" : 1 + }, + { + "command" : 1, + "file" : 1, + "line" : 58, + "parent" : 2 + }, + { + "command" : 2, + "file" : 0, + "line" : 37, + "parent" : 0 + }, + { + "file" : 4 + }, + { + "command" : 5, + "file" : 4, + "line" : 142, + "parent" : 5 + }, + { + "file" : 3, + "parent" : 6 + }, + { + "command" : 5, + "file" : 3, + "line" : 28, + "parent" : 7 + }, + { + "file" : 2, + "parent" : 8 + }, + { + "command" : 4, + "file" : 2, + "line" : 207, + "parent" : 9 + }, + { + "command" : 3, + "file" : 2, + "line" : 44, + "parent" : 10 + }, + { + "command" : 6, + "file" : 0, + "line" : 45, + "parent" : 0 + }, + { + "command" : 7, + "file" : 4, + "line" : 85, + "parent" : 5 + }, + { + "command" : 7, + "file" : 4, + "line" : 86, + "parent" : 5 + }, + { + "command" : 8, + "file" : 0, + "line" : 28, + "parent" : 0 + }, + { + "command" : 9, + "file" : 4, + "line" : 118, + "parent" : 5 + }, + { + "command" : 9, + "file" : 4, + "line" : 83, + "parent" : 5 + }, + { + "command" : 10, + "file" : 0, + "line" : 4, + "parent" : 0 + } + ] + }, + "compileGroups" : + [ + { + "compileCommandFragments" : + [ + { + "fragment" : "-DQT_QML_DEBUG /Zi /Ob0 /Od /RTC1 -MDd" + }, + { + "backtrace" : 13, + "fragment" : "/utf-8" + }, + { + "backtrace" : 14, + "fragment" : "/MDd" + } + ], + "defines" : + [ + { + "backtrace" : 15, + "define" : "MESHDATA_API" + }, + { + "define" : "MeshData_EXPORTS" + }, + { + "backtrace" : 16, + "define" : "OUTPUT_DEBUG_INFO" + }, + { + "backtrace" : 4, + "define" : "QT_CORE_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_GUI_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_WIDGETS_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_XML_LIB" + }, + { + "backtrace" : 17, + "define" : "UNICODE" + }, + { + "backtrace" : 17, + "define" : "_UNICODE" + } + ], + "includes" : + [ + { + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/MeshData" + }, + { + "path" : "D:/WBFZCPP/source/FastCAE/src/MeshData" + }, + { + "backtrace" : 0, + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/MeshData/MeshData_autogen/include" + }, + { + "backtrace" : 18, + "path" : "D:/WBFZCPP/source/FastCAE/src/MeshData/.." + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtWidgets" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtGui" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtANGLE" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtCore" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/./mkspecs/win32-msvc" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtXml" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/VTK/include/vtk-9.3" + } + ], + "language" : "CXX", + "languageStandard" : + { + "backtraces" : + [ + 4 + ], + "standard" : "11" + }, + "sourceIndexes" : + [ + 0, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23 + ] + } + ], + "dependencies" : + [ + { + "backtrace" : 12, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "backtrace" : 0, + "id" : "MeshData_autogen::@2f0f676dafab302b2d20" + }, + { + "id" : "MeshData_autogen_timestamp_deps::@2f0f676dafab302b2d20" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "MeshData::@2f0f676dafab302b2d20", + "install" : + { + "destinations" : + [ + { + "backtrace" : 3, + "path" : "bin" + } + ], + "prefix" : + { + "path" : "D:/WBFZCPP/source/FastCAE/install" + } + }, + "link" : + { + "commandFragments" : + [ + { + "fragment" : "/machine:x64 /debug /INCREMENTAL", + "role" : "flags" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonComputationalGeometry-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonDataModel-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonExecutionModel-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonMath-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonMisc-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonSystem-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonTransforms-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersExtraction-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersGeneral-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersStatistics-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersVerdict-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOLegacy-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOXML-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOXMLParser-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingFourier-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkParallelCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkParallelDIY-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkdoubleconversion-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkexpat-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtklz4-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtklzma-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtksys-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkverdict-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkzlib-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\DataProperty.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Xmld.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Widgetsd.lib", + "role" : "libraries" + }, + { + "backtrace" : 11, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Guid.lib", + "role" : "libraries" + }, + { + "backtrace" : 11, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Cored.lib", + "role" : "libraries" + }, + { + "fragment" : "kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib", + "role" : "libraries" + } + ], + "language" : "CXX" + }, + "name" : "MeshData", + "nameOnDisk" : "MeshData.dll", + "paths" : + { + "build" : "src/MeshData", + "source" : "src/MeshData" + }, + "sourceGroups" : + [ + { + "name" : "Source Files", + "sourceIndexes" : + [ + 0, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23 + ] + }, + { + "name" : "Header Files", + "sourceIndexes" : + [ + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12 + ] + }, + { + "name" : "", + "sourceIndexes" : + [ + 24 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 25 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/MeshData/MeshData_autogen/mocs_compilation.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "path" : "src/MeshData/CgnsBCZone.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MeshData/CgnsFamily.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MeshData/ElementType.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MeshData/MeshFactory.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MeshData/MeshPy.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MeshData/meshChecker.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MeshData/meshCommon.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MeshData/meshDataAPI.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MeshData/meshKernal.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MeshData/meshSet.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MeshData/meshSingleton.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/MeshData/setMember.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MeshData/CgnsBCZone.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MeshData/CgnsFamily.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MeshData/ElementType.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MeshData/MeshFactory.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MeshData/MeshPy.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MeshData/meshChecker.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MeshData/meshCommon.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MeshData/meshKernal.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MeshData/meshSet.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MeshData/meshSingleton.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/MeshData/setMember.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/MeshData/MeshData_autogen/timestamp", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/MeshData/MeshData_autogen/timestamp.rule", + "sourceGroupIndex" : 3 + } + ], + "type" : "SHARED_LIBRARY" +} diff --git a/out/build/.cmake/api/v1/reply/target-MeshData_autogen-Debug-22ffdb3b77f8b12d1947.json b/out/build/.cmake/api/v1/reply/target-MeshData_autogen-Debug-22ffdb3b77f8b12d1947.json new file mode 100644 index 0000000..1091f79 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-MeshData_autogen-Debug-22ffdb3b77f8b12d1947.json @@ -0,0 +1,79 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/MeshData/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "backtrace" : 0, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "id" : "MeshData_autogen_timestamp_deps::@2f0f676dafab302b2d20" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "MeshData_autogen::@2f0f676dafab302b2d20", + "isGeneratorProvided" : true, + "name" : "MeshData_autogen", + "paths" : + { + "build" : "src/MeshData", + "source" : "src/MeshData" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1, + 2 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/MeshData/CMakeFiles/MeshData_autogen", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/MeshData/CMakeFiles/MeshData_autogen.rule", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/MeshData/MeshData_autogen/timestamp.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-MeshData_autogen_timestamp_deps-Debug-ad6eb797f824e0a838c7.json b/out/build/.cmake/api/v1/reply/target-MeshData_autogen_timestamp_deps-Debug-ad6eb797f824e0a838c7.json new file mode 100644 index 0000000..51be68f --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-MeshData_autogen_timestamp_deps-Debug-ad6eb797f824e0a838c7.json @@ -0,0 +1,68 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/MeshData/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "id" : "DataProperty::@ec84555ffa827036bc26" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "MeshData_autogen_timestamp_deps::@2f0f676dafab302b2d20", + "isGeneratorProvided" : true, + "name" : "MeshData_autogen_timestamp_deps", + "paths" : + { + "build" : "src/MeshData", + "source" : "src/MeshData" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/MeshData/CMakeFiles/MeshData_autogen_timestamp_deps", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/MeshData/CMakeFiles/MeshData_autogen_timestamp_deps.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-ModelData-Debug-b7303bcf30f6288fb65c.json b/out/build/.cmake/api/v1/reply/target-ModelData-Debug-b7303bcf30f6288fb65c.json new file mode 100644 index 0000000..7618b83 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-ModelData-Debug-b7303bcf30f6288fb65c.json @@ -0,0 +1,558 @@ +{ + "artifacts" : + [ + { + "path" : "Debug/ModelData.dll" + }, + { + "path" : "Debug/ModelData.lib" + }, + { + "path" : "Debug/ModelData.pdb" + } + ], + "backtrace" : 1, + "backtraceGraph" : + { + "commands" : + [ + "add_library", + "install", + "target_link_libraries", + "add_dependencies", + "add_compile_options", + "target_compile_definitions", + "add_definitions", + "include_directories" + ], + "files" : + [ + "src/ModelData/CMakeLists.txt", + "src/CMakeLists.txt", + "src/PythonModule/CMakeLists.txt", + "CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 20, + "parent" : 0 + }, + { + "file" : 1 + }, + { + "command" : 1, + "file" : 1, + "line" : 58, + "parent" : 2 + }, + { + "command" : 2, + "file" : 0, + "line" : 39, + "parent" : 0 + }, + { + "file" : 2 + }, + { + "command" : 2, + "file" : 2, + "line" : 44, + "parent" : 5 + }, + { + "command" : 3, + "file" : 0, + "line" : 47, + "parent" : 0 + }, + { + "file" : 3 + }, + { + "command" : 4, + "file" : 3, + "line" : 85, + "parent" : 8 + }, + { + "command" : 4, + "file" : 3, + "line" : 86, + "parent" : 8 + }, + { + "command" : 5, + "file" : 0, + "line" : 28, + "parent" : 0 + }, + { + "command" : 6, + "file" : 3, + "line" : 118, + "parent" : 8 + }, + { + "command" : 6, + "file" : 3, + "line" : 83, + "parent" : 8 + }, + { + "command" : 7, + "file" : 0, + "line" : 4, + "parent" : 0 + } + ] + }, + "compileGroups" : + [ + { + "compileCommandFragments" : + [ + { + "fragment" : "-DQT_QML_DEBUG /Zi /Ob0 /Od /RTC1 -MDd" + }, + { + "backtrace" : 9, + "fragment" : "/utf-8" + }, + { + "backtrace" : 10, + "fragment" : "/MDd" + } + ], + "defines" : + [ + { + "backtrace" : 11, + "define" : "MODELDATA_API" + }, + { + "define" : "ModelData_EXPORTS" + }, + { + "backtrace" : 12, + "define" : "OUTPUT_DEBUG_INFO" + }, + { + "backtrace" : 4, + "define" : "QT_CORE_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_GUI_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_WIDGETS_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_XML_LIB" + }, + { + "backtrace" : 13, + "define" : "UNICODE" + }, + { + "backtrace" : 13, + "define" : "_UNICODE" + } + ], + "includes" : + [ + { + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/ModelData" + }, + { + "path" : "D:/WBFZCPP/source/FastCAE/src/ModelData" + }, + { + "backtrace" : 0, + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/ModelData/ModelData_autogen/include" + }, + { + "backtrace" : 14, + "path" : "D:/WBFZCPP/source/FastCAE/src/ModelData/.." + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtCore" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/./mkspecs/win32-msvc" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtGui" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtANGLE" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtXml" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtWidgets" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "D:/WBFZCPP/source/FastCAE/extlib/Python/include" + } + ], + "language" : "CXX", + "languageStandard" : + { + "backtraces" : + [ + 4 + ], + "standard" : "11" + }, + "sourceIndexes" : + [ + 0, + 9, + 10, + 11, + 12, + 13, + 14, + 15 + ] + } + ], + "dependencies" : + [ + { + "backtrace" : 4, + "id" : "Common::@29aabc9fbfb9b5406d55" + }, + { + "backtrace" : 7, + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "backtrace" : 7, + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "backtrace" : 7, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "backtrace" : 7, + "id" : "MeshData::@2f0f676dafab302b2d20" + }, + { + "backtrace" : 7, + "id" : "ConfigOptions::@1c9d458e4038aca43955" + }, + { + "backtrace" : 7, + "id" : "BCBase::@baf13bdd6bef809f2182" + }, + { + "backtrace" : 7, + "id" : "Geometry::@b7b2e4191bc961e9afba" + }, + { + "backtrace" : 7, + "id" : "ParaClassFactory::@d0ebb167002da5b45d84" + }, + { + "backtrace" : 0, + "id" : "ModelData_autogen::@8a6b2d9535e8b6cb6800" + }, + { + "id" : "ModelData_autogen_timestamp_deps::@8a6b2d9535e8b6cb6800" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "ModelData::@8a6b2d9535e8b6cb6800", + "install" : + { + "destinations" : + [ + { + "backtrace" : 3, + "path" : "bin" + } + ], + "prefix" : + { + "path" : "D:/WBFZCPP/source/FastCAE/install" + } + }, + "link" : + { + "commandFragments" : + [ + { + "fragment" : "/machine:x64 /debug /INCREMENTAL", + "role" : "flags" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ParaClassFactory.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ConfigOptions.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\BCBase.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\MeshData.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Geometry.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Settings.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\DataProperty.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Xmld.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\PythonModule.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Widgetsd.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Guid.lib", + "role" : "libraries" + }, + { + "backtrace" : 6, + "fragment" : "D:\\WBFZCPP\\source\\FastCAE\\extlib\\Python\\libs\\python37.lib", + "role" : "libraries" + }, + { + "backtrace" : 6, + "fragment" : "Debug\\Common.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Cored.lib", + "role" : "libraries" + }, + { + "fragment" : "kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib", + "role" : "libraries" + } + ], + "language" : "CXX" + }, + "name" : "ModelData", + "nameOnDisk" : "ModelData.dll", + "paths" : + { + "build" : "src/ModelData", + "source" : "src/ModelData" + }, + "sourceGroups" : + [ + { + "name" : "Source Files", + "sourceIndexes" : + [ + 0, + 9, + 10, + 11, + 12, + 13, + 14, + 15 + ] + }, + { + "name" : "Header Files", + "sourceIndexes" : + [ + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8 + ] + }, + { + "name" : "", + "sourceIndexes" : + [ + 16 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 17 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/ModelData/ModelData_autogen/mocs_compilation.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "path" : "src/ModelData/modelDataAPI.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ModelData/modelDataBase.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ModelData/modelDataBaseExtend.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ModelData/modelDataFactory.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ModelData/modelDataPy.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ModelData/modelDataSingleton.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ModelData/simulationSettingBase.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ModelData/solverSettingBase.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ModelData/modelDataBase.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ModelData/modelDataBaseExtend.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ModelData/modelDataFactory.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ModelData/modelDataPy.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ModelData/modelDataSingleton.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ModelData/simulationSettingBase.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ModelData/solverSettingBase.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/ModelData/ModelData_autogen/timestamp", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/ModelData/ModelData_autogen/timestamp.rule", + "sourceGroupIndex" : 3 + } + ], + "type" : "SHARED_LIBRARY" +} diff --git a/out/build/.cmake/api/v1/reply/target-ModelData_autogen-Debug-ca819f71b5a06fcc789a.json b/out/build/.cmake/api/v1/reply/target-ModelData_autogen-Debug-ca819f71b5a06fcc789a.json new file mode 100644 index 0000000..92df38f --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-ModelData_autogen-Debug-ca819f71b5a06fcc789a.json @@ -0,0 +1,107 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/ModelData/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "backtrace" : 0, + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "backtrace" : 0, + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "backtrace" : 0, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "backtrace" : 0, + "id" : "MeshData::@2f0f676dafab302b2d20" + }, + { + "backtrace" : 0, + "id" : "ConfigOptions::@1c9d458e4038aca43955" + }, + { + "backtrace" : 0, + "id" : "BCBase::@baf13bdd6bef809f2182" + }, + { + "backtrace" : 0, + "id" : "Geometry::@b7b2e4191bc961e9afba" + }, + { + "backtrace" : 0, + "id" : "ParaClassFactory::@d0ebb167002da5b45d84" + }, + { + "id" : "ModelData_autogen_timestamp_deps::@8a6b2d9535e8b6cb6800" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "ModelData_autogen::@8a6b2d9535e8b6cb6800", + "isGeneratorProvided" : true, + "name" : "ModelData_autogen", + "paths" : + { + "build" : "src/ModelData", + "source" : "src/ModelData" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1, + 2 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/ModelData/CMakeFiles/ModelData_autogen", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/ModelData/CMakeFiles/ModelData_autogen.rule", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/ModelData/ModelData_autogen/timestamp.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-ModelData_autogen_timestamp_deps-Debug-8dd7d80923bbd845d8b2.json b/out/build/.cmake/api/v1/reply/target-ModelData_autogen_timestamp_deps-Debug-8dd7d80923bbd845d8b2.json new file mode 100644 index 0000000..7a68341 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-ModelData_autogen_timestamp_deps-Debug-8dd7d80923bbd845d8b2.json @@ -0,0 +1,89 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/ModelData/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "id" : "MeshData::@2f0f676dafab302b2d20" + }, + { + "id" : "ConfigOptions::@1c9d458e4038aca43955" + }, + { + "id" : "BCBase::@baf13bdd6bef809f2182" + }, + { + "id" : "Geometry::@b7b2e4191bc961e9afba" + }, + { + "id" : "ParaClassFactory::@d0ebb167002da5b45d84" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "ModelData_autogen_timestamp_deps::@8a6b2d9535e8b6cb6800", + "isGeneratorProvided" : true, + "name" : "ModelData_autogen_timestamp_deps", + "paths" : + { + "build" : "src/ModelData", + "source" : "src/ModelData" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/ModelData/CMakeFiles/ModelData_autogen_timestamp_deps", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/ModelData/CMakeFiles/ModelData_autogen_timestamp_deps.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-ModuleBase-Debug-7833b55ca88869f4c47f.json b/out/build/.cmake/api/v1/reply/target-ModuleBase-Debug-7833b55ca88869f4c47f.json new file mode 100644 index 0000000..7795a0b --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-ModuleBase-Debug-7833b55ca88869f4c47f.json @@ -0,0 +1,1159 @@ +{ + "artifacts" : + [ + { + "path" : "Debug/ModuleBase.dll" + }, + { + "path" : "Debug/ModuleBase.lib" + }, + { + "path" : "Debug/ModuleBase.pdb" + } + ], + "backtrace" : 1, + "backtraceGraph" : + { + "commands" : + [ + "add_library", + "install", + "target_link_libraries", + "add_dependencies", + "add_compile_options", + "target_compile_definitions", + "add_definitions", + "include_directories" + ], + "files" : + [ + "src/ModuleBase/CMakeLists.txt", + "src/CMakeLists.txt", + "src/PythonModule/CMakeLists.txt", + "CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 29, + "parent" : 0 + }, + { + "file" : 1 + }, + { + "command" : 1, + "file" : 1, + "line" : 58, + "parent" : 2 + }, + { + "command" : 2, + "file" : 0, + "line" : 49, + "parent" : 0 + }, + { + "file" : 2 + }, + { + "command" : 2, + "file" : 2, + "line" : 44, + "parent" : 5 + }, + { + "command" : 3, + "file" : 0, + "line" : 57, + "parent" : 0 + }, + { + "file" : 3 + }, + { + "command" : 4, + "file" : 3, + "line" : 85, + "parent" : 8 + }, + { + "command" : 4, + "file" : 3, + "line" : 86, + "parent" : 8 + }, + { + "command" : 5, + "file" : 0, + "line" : 39, + "parent" : 0 + }, + { + "command" : 6, + "file" : 3, + "line" : 118, + "parent" : 8 + }, + { + "command" : 6, + "file" : 3, + "line" : 83, + "parent" : 8 + }, + { + "command" : 7, + "file" : 0, + "line" : 4, + "parent" : 0 + } + ] + }, + "compileGroups" : + [ + { + "compileCommandFragments" : + [ + { + "fragment" : "-DQT_QML_DEBUG /Zi /Ob0 /Od /RTC1 -MDd" + }, + { + "backtrace" : 9, + "fragment" : "/utf-8" + }, + { + "backtrace" : 10, + "fragment" : "/MDd" + } + ], + "defines" : + [ + { + "backtrace" : 11, + "define" : "MODULEBASE_API" + }, + { + "define" : "ModuleBase_EXPORTS" + }, + { + "backtrace" : 12, + "define" : "OUTPUT_DEBUG_INFO" + }, + { + "backtrace" : 4, + "define" : "QT_CORE_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_GUI_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_WIDGETS_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_XML_LIB" + }, + { + "backtrace" : 13, + "define" : "UNICODE" + }, + { + "backtrace" : 13, + "define" : "_UNICODE" + } + ], + "includes" : + [ + { + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/ModuleBase" + }, + { + "path" : "D:/WBFZCPP/source/FastCAE/src/ModuleBase" + }, + { + "backtrace" : 0, + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/ModuleBase/ModuleBase_autogen/include" + }, + { + "backtrace" : 14, + "path" : "D:/WBFZCPP/source/FastCAE/src/ModuleBase/.." + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtCore" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/./mkspecs/win32-msvc" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtGui" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtANGLE" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtWidgets" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtXml" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/VTK/include/vtk-9.3" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "D:/WBFZCPP/source/FastCAE/extlib/Python/include" + } + ], + "language" : "CXX", + "languageStandard" : + { + "backtraces" : + [ + 4 + ], + "standard" : "11" + }, + "sourceIndexes" : + [ + 0, + 1, + 2, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55 + ] + } + ], + "dependencies" : + [ + { + "backtrace" : 7, + "id" : "Common::@29aabc9fbfb9b5406d55" + }, + { + "backtrace" : 7, + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "backtrace" : 7, + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "backtrace" : 7, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "backtrace" : 7, + "id" : "MeshData::@2f0f676dafab302b2d20" + }, + { + "backtrace" : 7, + "id" : "SelfDefObject::@17d93127ede5f3b478ed" + }, + { + "backtrace" : 7, + "id" : "Geometry::@b7b2e4191bc961e9afba" + }, + { + "backtrace" : 7, + "id" : "ModelData::@8a6b2d9535e8b6cb6800" + }, + { + "backtrace" : 0, + "id" : "ModuleBase_autogen::@53e1b14bc3636b2ea9de" + }, + { + "id" : "ModuleBase_autogen_timestamp_deps::@53e1b14bc3636b2ea9de" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "ModuleBase::@53e1b14bc3636b2ea9de", + "install" : + { + "destinations" : + [ + { + "backtrace" : 3, + "path" : "bin" + } + ], + "prefix" : + { + "path" : "D:/WBFZCPP/source/FastCAE/install" + } + }, + "link" : + { + "commandFragments" : + [ + { + "fragment" : "/machine:x64 /debug /INCREMENTAL", + "role" : "flags" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkDICOMParser-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersHybrid-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersModeling-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkGUISupportQt-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOImage-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingColor-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingGeneral-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingHybrid-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingSources-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkInteractionWidgets-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingAnnotation-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkjpeg-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkmetaio-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkpng-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkpugixml-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtktiff-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ModelData.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\MeshData.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Geometry.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonColor-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonComputationalGeometry-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonDataModel-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonExecutionModel-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonMath-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonMisc-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonSystem-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonTransforms-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersExtraction-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersGeneral-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersGeometry-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersSources-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersStatistics-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOLegacy-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOXML-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOXMLParser-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingFourier-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingMath-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkInteractionStyle-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkParallelCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkParallelDIY-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingFreeType-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingOpenGL2-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingUI-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingVolume-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingVolumeOpenGL2-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkdoubleconversion-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkexpat-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkfreetype-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkglew-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtklz4-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtklzma-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtksys-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkzlib-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\SelfDefObject.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Settings.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\DataProperty.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Xmld.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\PythonModule.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Widgetsd.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Guid.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Common.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Cored.lib", + "role" : "libraries" + }, + { + "backtrace" : 6, + "fragment" : "D:\\WBFZCPP\\source\\FastCAE\\extlib\\Python\\libs\\python37.lib", + "role" : "libraries" + }, + { + "fragment" : "kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib", + "role" : "libraries" + } + ], + "language" : "CXX" + }, + "name" : "ModuleBase", + "nameOnDisk" : "ModuleBase.dll", + "paths" : + { + "build" : "src/ModuleBase", + "source" : "src/ModuleBase" + }, + "sourceGroups" : + [ + { + "name" : "Source Files", + "sourceIndexes" : + [ + 0, + 1, + 2, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55 + ] + }, + { + "name" : "Header Files", + "sourceIndexes" : + [ + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33 + ] + }, + { + "name" : "", + "sourceIndexes" : + [ + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 65 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/ModuleBase/ModuleBase_autogen/mocs_compilation.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/ModuleBase/qrc_qianfan.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/ModuleBase/qrc_translations.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/ModuleBase/ui_ProcessWindowBase.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/ModuleBase/ui_RandomWidget.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/ModuleBase/ui_componentDialogBase.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/ModuleBase/ui_graph3DWindow.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/ModuleBase/ui_messageWindowBase.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/ModuleBase/ui_processBar.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ModuleBase/Frameless/CursorPosCalculator.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ModuleBase/Frameless/FramelessHelper.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ModuleBase/Frameless/FramelessHelperPrivate.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ModuleBase/Frameless/WidgetData.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ModuleBase/CommonFunctions.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ModuleBase/DialogBase.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ModuleBase/IOBase.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ModuleBase/ModuleBase.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ModuleBase/ModuleType.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ModuleBase/PreWindowInteractorStyle.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ModuleBase/ProcessWindowBase.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ModuleBase/Random.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ModuleBase/ThreadControl.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ModuleBase/ThreadTask.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ModuleBase/ThreadTaskManager.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ModuleBase/XDockTitleBarWidget.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ModuleBase/XRandom.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ModuleBase/XRandomWidget.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ModuleBase/componentDialogBase.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ModuleBase/dockWidgetBase.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ModuleBase/graph3DWindow.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ModuleBase/graphWindowBase.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ModuleBase/messageWindowBase.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ModuleBase/moduleBaseAPI.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ModuleBase/processBar.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ModuleBase/Frameless/CursorPosCalculator.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ModuleBase/Frameless/FramelessHelper.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ModuleBase/Frameless/WidgetData.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ModuleBase/CommonFunctions.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ModuleBase/DialogBase.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ModuleBase/IOBase.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ModuleBase/ModuleBase.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ModuleBase/PreWindowInteractorStyle.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ModuleBase/ProcessWindowBase.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ModuleBase/Random.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ModuleBase/ThreadControl.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ModuleBase/ThreadTask.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ModuleBase/ThreadTaskManager.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ModuleBase/XDockTitleBarWidget.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ModuleBase/XRandom.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ModuleBase/XRandomWidget.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ModuleBase/componentDialogBase.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ModuleBase/dockWidgetBase.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ModuleBase/graph3DWindow.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ModuleBase/graphWindowBase.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ModuleBase/messageWindowBase.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ModuleBase/processBar.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/ModuleBase/ModuleBase_autogen/timestamp", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/qrc/qianfan.qrc", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/qrc/translations.qrc", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/ModuleBase/ProcessWindowBase.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/ModuleBase/RandomWidget.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/ModuleBase/componentDialogBase.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/ModuleBase/graph3DWindow.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/ModuleBase/messageWindowBase.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/ModuleBase/processBar.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/ModuleBase/ModuleBase_autogen/timestamp.rule", + "sourceGroupIndex" : 3 + } + ], + "type" : "SHARED_LIBRARY" +} diff --git a/out/build/.cmake/api/v1/reply/target-ModuleBase_autogen-Debug-8042b02a7063075a047f.json b/out/build/.cmake/api/v1/reply/target-ModuleBase_autogen-Debug-8042b02a7063075a047f.json new file mode 100644 index 0000000..c4a6139 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-ModuleBase_autogen-Debug-8042b02a7063075a047f.json @@ -0,0 +1,107 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/ModuleBase/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "backtrace" : 0, + "id" : "Common::@29aabc9fbfb9b5406d55" + }, + { + "backtrace" : 0, + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "backtrace" : 0, + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "backtrace" : 0, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "backtrace" : 0, + "id" : "MeshData::@2f0f676dafab302b2d20" + }, + { + "backtrace" : 0, + "id" : "SelfDefObject::@17d93127ede5f3b478ed" + }, + { + "backtrace" : 0, + "id" : "Geometry::@b7b2e4191bc961e9afba" + }, + { + "backtrace" : 0, + "id" : "ModelData::@8a6b2d9535e8b6cb6800" + }, + { + "id" : "ModuleBase_autogen_timestamp_deps::@53e1b14bc3636b2ea9de" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "ModuleBase_autogen::@53e1b14bc3636b2ea9de", + "isGeneratorProvided" : true, + "name" : "ModuleBase_autogen", + "paths" : + { + "build" : "src/ModuleBase", + "source" : "src/ModuleBase" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1, + 2 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/ModuleBase/CMakeFiles/ModuleBase_autogen", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/ModuleBase/CMakeFiles/ModuleBase_autogen.rule", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/ModuleBase/ModuleBase_autogen/timestamp.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-ModuleBase_autogen_timestamp_deps-Debug-4a476fbc7e9396f79643.json b/out/build/.cmake/api/v1/reply/target-ModuleBase_autogen_timestamp_deps-Debug-4a476fbc7e9396f79643.json new file mode 100644 index 0000000..2378ad0 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-ModuleBase_autogen_timestamp_deps-Debug-4a476fbc7e9396f79643.json @@ -0,0 +1,89 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/ModuleBase/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "id" : "Common::@29aabc9fbfb9b5406d55" + }, + { + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "id" : "MeshData::@2f0f676dafab302b2d20" + }, + { + "id" : "SelfDefObject::@17d93127ede5f3b478ed" + }, + { + "id" : "Geometry::@b7b2e4191bc961e9afba" + }, + { + "id" : "ModelData::@8a6b2d9535e8b6cb6800" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "ModuleBase_autogen_timestamp_deps::@53e1b14bc3636b2ea9de", + "isGeneratorProvided" : true, + "name" : "ModuleBase_autogen_timestamp_deps", + "paths" : + { + "build" : "src/ModuleBase", + "source" : "src/ModuleBase" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/ModuleBase/CMakeFiles/ModuleBase_autogen_timestamp_deps", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/ModuleBase/CMakeFiles/ModuleBase_autogen_timestamp_deps.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-ParaClassFactory-Debug-dfe56ff80bdc85aeee0c.json b/out/build/.cmake/api/v1/reply/target-ParaClassFactory-Debug-dfe56ff80bdc85aeee0c.json new file mode 100644 index 0000000..4b62669 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-ParaClassFactory-Debug-dfe56ff80bdc85aeee0c.json @@ -0,0 +1,423 @@ +{ + "artifacts" : + [ + { + "path" : "Debug/ParaClassFactory.dll" + }, + { + "path" : "Debug/ParaClassFactory.lib" + }, + { + "path" : "Debug/ParaClassFactory.pdb" + } + ], + "backtrace" : 1, + "backtraceGraph" : + { + "commands" : + [ + "add_library", + "install", + "target_link_libraries", + "set_property", + "_populate_Widgets_target_properties", + "find_package", + "add_dependencies", + "add_compile_options", + "add_definitions", + "target_compile_definitions", + "include_directories" + ], + "files" : + [ + "src/ParaClassFactory/CMakeLists.txt", + "src/CMakeLists.txt", + "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Widgets/Qt5WidgetsConfig.cmake", + "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5/Qt5Config.cmake", + "CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 20, + "parent" : 0 + }, + { + "file" : 1 + }, + { + "command" : 1, + "file" : 1, + "line" : 58, + "parent" : 2 + }, + { + "command" : 2, + "file" : 0, + "line" : 39, + "parent" : 0 + }, + { + "file" : 4 + }, + { + "command" : 5, + "file" : 4, + "line" : 142, + "parent" : 5 + }, + { + "file" : 3, + "parent" : 6 + }, + { + "command" : 5, + "file" : 3, + "line" : 28, + "parent" : 7 + }, + { + "file" : 2, + "parent" : 8 + }, + { + "command" : 4, + "file" : 2, + "line" : 207, + "parent" : 9 + }, + { + "command" : 3, + "file" : 2, + "line" : 44, + "parent" : 10 + }, + { + "command" : 6, + "file" : 0, + "line" : 47, + "parent" : 0 + }, + { + "command" : 7, + "file" : 4, + "line" : 85, + "parent" : 5 + }, + { + "command" : 7, + "file" : 4, + "line" : 86, + "parent" : 5 + }, + { + "command" : 8, + "file" : 4, + "line" : 118, + "parent" : 5 + }, + { + "command" : 9, + "file" : 0, + "line" : 28, + "parent" : 0 + }, + { + "command" : 8, + "file" : 4, + "line" : 83, + "parent" : 5 + }, + { + "command" : 10, + "file" : 0, + "line" : 4, + "parent" : 0 + } + ] + }, + "compileGroups" : + [ + { + "compileCommandFragments" : + [ + { + "fragment" : "-DQT_QML_DEBUG /Zi /Ob0 /Od /RTC1 -MDd" + }, + { + "backtrace" : 13, + "fragment" : "/utf-8" + }, + { + "backtrace" : 14, + "fragment" : "/MDd" + } + ], + "defines" : + [ + { + "backtrace" : 15, + "define" : "OUTPUT_DEBUG_INFO" + }, + { + "backtrace" : 16, + "define" : "PARACLASSFACTORY_API" + }, + { + "define" : "ParaClassFactory_EXPORTS" + }, + { + "backtrace" : 4, + "define" : "QT_CORE_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_GUI_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_WIDGETS_LIB" + }, + { + "backtrace" : 17, + "define" : "UNICODE" + }, + { + "backtrace" : 17, + "define" : "_UNICODE" + } + ], + "includes" : + [ + { + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/ParaClassFactory" + }, + { + "path" : "D:/WBFZCPP/source/FastCAE/src/ParaClassFactory" + }, + { + "backtrace" : 0, + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/ParaClassFactory/ParaClassFactory_autogen/include" + }, + { + "backtrace" : 18, + "path" : "D:/WBFZCPP/source/FastCAE/src/ParaClassFactory/.." + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtWidgets" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtGui" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtANGLE" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtCore" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/./mkspecs/win32-msvc" + } + ], + "language" : "CXX", + "languageStandard" : + { + "backtraces" : + [ + 4 + ], + "standard" : "11" + }, + "sourceIndexes" : + [ + 0, + 3 + ] + } + ], + "dependencies" : + [ + { + "backtrace" : 12, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "backtrace" : 12, + "id" : "ConfigOptions::@1c9d458e4038aca43955" + }, + { + "backtrace" : 12, + "id" : "BCBase::@baf13bdd6bef809f2182" + }, + { + "backtrace" : 0, + "id" : "ParaClassFactory_autogen::@d0ebb167002da5b45d84" + }, + { + "id" : "ParaClassFactory_autogen_timestamp_deps::@d0ebb167002da5b45d84" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "ParaClassFactory::@d0ebb167002da5b45d84", + "install" : + { + "destinations" : + [ + { + "backtrace" : 3, + "path" : "bin" + } + ], + "prefix" : + { + "path" : "D:/WBFZCPP/source/FastCAE/install" + } + }, + "link" : + { + "commandFragments" : + [ + { + "fragment" : "/machine:x64 /debug /INCREMENTAL", + "role" : "flags" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ConfigOptions.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\BCBase.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\DataProperty.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Widgetsd.lib", + "role" : "libraries" + }, + { + "backtrace" : 11, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Guid.lib", + "role" : "libraries" + }, + { + "backtrace" : 11, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Cored.lib", + "role" : "libraries" + }, + { + "fragment" : "kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib", + "role" : "libraries" + } + ], + "language" : "CXX" + }, + "name" : "ParaClassFactory", + "nameOnDisk" : "ParaClassFactory.dll", + "paths" : + { + "build" : "src/ParaClassFactory", + "source" : "src/ParaClassFactory" + }, + "sourceGroups" : + [ + { + "name" : "Source Files", + "sourceIndexes" : + [ + 0, + 3 + ] + }, + { + "name" : "Header Files", + "sourceIndexes" : + [ + 1, + 2 + ] + }, + { + "name" : "", + "sourceIndexes" : + [ + 4 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 5 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/ParaClassFactory/ParaClassFactory_autogen/mocs_compilation.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "path" : "src/ParaClassFactory/BCFactory.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ParaClassFactory/ParaClassFactoryAPI.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ParaClassFactory/BCFactory.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/ParaClassFactory/ParaClassFactory_autogen/timestamp", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/ParaClassFactory/ParaClassFactory_autogen/timestamp.rule", + "sourceGroupIndex" : 3 + } + ], + "type" : "SHARED_LIBRARY" +} diff --git a/out/build/.cmake/api/v1/reply/target-ParaClassFactory_autogen-Debug-69b7aca5849f82b0b0aa.json b/out/build/.cmake/api/v1/reply/target-ParaClassFactory_autogen-Debug-69b7aca5849f82b0b0aa.json new file mode 100644 index 0000000..4803833 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-ParaClassFactory_autogen-Debug-69b7aca5849f82b0b0aa.json @@ -0,0 +1,87 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/ParaClassFactory/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "backtrace" : 0, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "backtrace" : 0, + "id" : "ConfigOptions::@1c9d458e4038aca43955" + }, + { + "backtrace" : 0, + "id" : "BCBase::@baf13bdd6bef809f2182" + }, + { + "id" : "ParaClassFactory_autogen_timestamp_deps::@d0ebb167002da5b45d84" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "ParaClassFactory_autogen::@d0ebb167002da5b45d84", + "isGeneratorProvided" : true, + "name" : "ParaClassFactory_autogen", + "paths" : + { + "build" : "src/ParaClassFactory", + "source" : "src/ParaClassFactory" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1, + 2 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/ParaClassFactory/CMakeFiles/ParaClassFactory_autogen", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/ParaClassFactory/CMakeFiles/ParaClassFactory_autogen.rule", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/ParaClassFactory/ParaClassFactory_autogen/timestamp.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-ParaClassFactory_autogen_timestamp_deps-Debug-46030b22a5aa0b5a1381.json b/out/build/.cmake/api/v1/reply/target-ParaClassFactory_autogen_timestamp_deps-Debug-46030b22a5aa0b5a1381.json new file mode 100644 index 0000000..bad6571 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-ParaClassFactory_autogen_timestamp_deps-Debug-46030b22a5aa0b5a1381.json @@ -0,0 +1,74 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/ParaClassFactory/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "id" : "ConfigOptions::@1c9d458e4038aca43955" + }, + { + "id" : "BCBase::@baf13bdd6bef809f2182" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "ParaClassFactory_autogen_timestamp_deps::@d0ebb167002da5b45d84", + "isGeneratorProvided" : true, + "name" : "ParaClassFactory_autogen_timestamp_deps", + "paths" : + { + "build" : "src/ParaClassFactory", + "source" : "src/ParaClassFactory" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/ParaClassFactory/CMakeFiles/ParaClassFactory_autogen_timestamp_deps", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/ParaClassFactory/CMakeFiles/ParaClassFactory_autogen_timestamp_deps.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-PluginCustomizer-Debug-0f948f4908d1c9eab8b8.json b/out/build/.cmake/api/v1/reply/target-PluginCustomizer-Debug-0f948f4908d1c9eab8b8.json new file mode 100644 index 0000000..022ff5f --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-PluginCustomizer-Debug-0f948f4908d1c9eab8b8.json @@ -0,0 +1,1757 @@ +{ + "artifacts" : + [ + { + "path" : "Debug/plugins/PluginCustomizer.dll" + }, + { + "path" : "Debug/plugins/PluginCustomizer.lib" + }, + { + "path" : "Debug/plugins/PluginCustomizer.pdb" + } + ], + "backtrace" : 1, + "backtraceGraph" : + { + "commands" : + [ + "add_library", + "install", + "target_link_libraries", + "add_dependencies", + "add_compile_options", + "target_compile_definitions", + "add_definitions", + "include_directories" + ], + "files" : + [ + "src/PluginCustomizer/CMakeLists.txt", + "src/CMakeLists.txt", + "src/PythonModule/CMakeLists.txt", + "CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 29, + "parent" : 0 + }, + { + "file" : 1 + }, + { + "command" : 1, + "file" : 1, + "line" : 78, + "parent" : 2 + }, + { + "command" : 2, + "file" : 0, + "line" : 50, + "parent" : 0 + }, + { + "file" : 2 + }, + { + "command" : 2, + "file" : 2, + "line" : 44, + "parent" : 5 + }, + { + "command" : 3, + "file" : 0, + "line" : 58, + "parent" : 0 + }, + { + "file" : 3 + }, + { + "command" : 4, + "file" : 3, + "line" : 85, + "parent" : 8 + }, + { + "command" : 4, + "file" : 3, + "line" : 86, + "parent" : 8 + }, + { + "command" : 5, + "file" : 0, + "line" : 39, + "parent" : 0 + }, + { + "command" : 6, + "file" : 3, + "line" : 118, + "parent" : 8 + }, + { + "command" : 6, + "file" : 3, + "line" : 83, + "parent" : 8 + }, + { + "command" : 7, + "file" : 0, + "line" : 4, + "parent" : 0 + } + ] + }, + "compileGroups" : + [ + { + "compileCommandFragments" : + [ + { + "fragment" : "-DQT_QML_DEBUG /Zi /Ob0 /Od /RTC1 -MDd" + }, + { + "backtrace" : 9, + "fragment" : "/utf-8" + }, + { + "backtrace" : 10, + "fragment" : "/MDd" + } + ], + "defines" : + [ + { + "backtrace" : 11, + "define" : "CUSTOMIZERPLUGIN_API" + }, + { + "backtrace" : 12, + "define" : "OUTPUT_DEBUG_INFO" + }, + { + "define" : "PluginCustomizer_EXPORTS" + }, + { + "backtrace" : 4, + "define" : "QT_CORE_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_GUI_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_WIDGETS_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_XML_LIB" + }, + { + "backtrace" : 13, + "define" : "UNICODE" + }, + { + "backtrace" : 13, + "define" : "_UNICODE" + } + ], + "includes" : + [ + { + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/PluginCustomizer" + }, + { + "path" : "D:/WBFZCPP/source/FastCAE/src/PluginCustomizer" + }, + { + "backtrace" : 0, + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/PluginCustomizer/PluginCustomizer_autogen/include" + }, + { + "backtrace" : 14, + "path" : "D:/WBFZCPP/source/FastCAE/src/PluginCustomizer/.." + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtCore" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/./mkspecs/win32-msvc" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtGui" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtANGLE" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtWidgets" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtXml" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "D:/WBFZCPP/source/FastCAE/extlib/Python/include" + } + ], + "language" : "CXX", + "languageStandard" : + { + "backtraces" : + [ + 4 + ], + "standard" : "11" + }, + "sourceIndexes" : + [ + 0, + 1, + 2, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143 + ] + } + ], + "dependencies" : + [ + { + "backtrace" : 4, + "id" : "Common::@29aabc9fbfb9b5406d55" + }, + { + "backtrace" : 7, + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "backtrace" : 7, + "id" : "SARibbonBar::@f61b241723ced025d0ef" + }, + { + "backtrace" : 7, + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "backtrace" : 7, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "backtrace" : 7, + "id" : "MeshData::@2f0f676dafab302b2d20" + }, + { + "backtrace" : 7, + "id" : "SelfDefObject::@17d93127ede5f3b478ed" + }, + { + "backtrace" : 7, + "id" : "Material::@05d68cd248c3246409d7" + }, + { + "backtrace" : 7, + "id" : "ConfigOptions::@1c9d458e4038aca43955" + }, + { + "backtrace" : 7, + "id" : "BCBase::@baf13bdd6bef809f2182" + }, + { + "backtrace" : 7, + "id" : "Geometry::@b7b2e4191bc961e9afba" + }, + { + "backtrace" : 7, + "id" : "ModelData::@8a6b2d9535e8b6cb6800" + }, + { + "backtrace" : 7, + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + }, + { + "backtrace" : 7, + "id" : "PostWidgets::@93a5592897f957e6fa57" + }, + { + "backtrace" : 7, + "id" : "ProjectTreeExtend::@f2791e4784919f40d89d" + }, + { + "backtrace" : 7, + "id" : "GeometryCommand::@d82e5b79e04a3b196df4" + }, + { + "backtrace" : 7, + "id" : "ProjectTree::@43c6c7ebae2b88a99cdb" + }, + { + "backtrace" : 7, + "id" : "SolverControl::@4a18b637ce8bf6991ec0" + }, + { + "backtrace" : 7, + "id" : "MainWidgets::@d0895ea365458bd7f948" + }, + { + "backtrace" : 7, + "id" : "IO::@484b42e69e32e953bc79" + }, + { + "backtrace" : 7, + "id" : "MainWindow::@c380e645ecc921453605" + }, + { + "backtrace" : 7, + "id" : "PluginManager::@d6a357cdda12b0c888b1" + }, + { + "backtrace" : 7, + "id" : "GeometryWidgets::@1fb7ae1802a587d65603" + }, + { + "id" : "PluginCustomizer_autogen_timestamp_deps::@5fa4d6e31c64d49d269b" + }, + { + "backtrace" : 0, + "id" : "PluginCustomizer_autogen::@5fa4d6e31c64d49d269b" + } + ], + "folder" : + { + "name" : "Plugins" + }, + "id" : "PluginCustomizer::@5fa4d6e31c64d49d269b", + "install" : + { + "destinations" : + [ + { + "backtrace" : 3, + "path" : "bin/plugins" + } + ], + "prefix" : + { + "path" : "D:/WBFZCPP/source/FastCAE/install" + } + }, + "link" : + { + "commandFragments" : + [ + { + "fragment" : "/machine:x64 /debug /INCREMENTAL", + "role" : "flags" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\MainWindow.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\SARibbonBar.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\MainWidgets.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ProjectTreeExtend.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ProjectTree.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\SolverControl.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\PostWidgets.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\IO.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\PluginManager.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\GeometryWidgets.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\GeometryCommand.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ModuleBase.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ModelData.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ConfigOptions.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Material.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\SelfDefObject.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\BCBase.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\MeshData.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Geometry.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\DataProperty.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Xmld.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\PythonModule.lib", + "role" : "libraries" + }, + { + "backtrace" : 6, + "fragment" : "D:\\WBFZCPP\\source\\FastCAE\\extlib\\Python\\libs\\python37.lib", + "role" : "libraries" + }, + { + "backtrace" : 6, + "fragment" : "Debug\\Common.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Settings.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Widgetsd.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Guid.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Cored.lib", + "role" : "libraries" + }, + { + "fragment" : "kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib", + "role" : "libraries" + } + ], + "language" : "CXX" + }, + "name" : "PluginCustomizer", + "nameOnDisk" : "PluginCustomizer.dll", + "paths" : + { + "build" : "src/PluginCustomizer", + "source" : "src/PluginCustomizer" + }, + "sourceGroups" : + [ + { + "name" : "Source Files", + "sourceIndexes" : + [ + 0, + 1, + 2, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143 + ] + }, + { + "name" : "Header Files", + "sourceIndexes" : + [ + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87 + ] + }, + { + "name" : "", + "sourceIndexes" : + [ + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 174 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/PluginCustomizer/PluginCustomizer_autogen/mocs_compilation.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/PluginCustomizer/qrc_qianfan.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/PluginCustomizer/qrc_customizer.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PluginCustomizer/ui_Editor3DFileValue.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PluginCustomizer/ui_EditorBoolValue.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PluginCustomizer/ui_EditorBoundaryModel.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PluginCustomizer/ui_EditorCurveInfo.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PluginCustomizer/ui_EditorCurveModel.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PluginCustomizer/ui_EditorDependencyFiles.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PluginCustomizer/ui_EditorDescripttionSetup.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PluginCustomizer/ui_EditorDoubleValue.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PluginCustomizer/ui_EditorEnumListValue.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PluginCustomizer/ui_EditorEnumValue.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PluginCustomizer/ui_EditorIntValue.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PluginCustomizer/ui_EditorNameValue.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PluginCustomizer/ui_EditorPathValue.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PluginCustomizer/ui_EditorSolverManager.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PluginCustomizer/ui_EditorSolverValue.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PluginCustomizer/ui_EditorStringValue.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PluginCustomizer/ui_EditorTableValue.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PluginCustomizer/ui_FunctionTreeSetup.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PluginCustomizer/ui_Generateinstallationpackage.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PluginCustomizer/ui_ParaBasicSetup.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PluginCustomizer/ui_ParaExportMeshSetup.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PluginCustomizer/ui_ParaImportGeometrySetup.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PluginCustomizer/ui_ParaImportMeshSetup.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PluginCustomizer/ui_ParaLinkageManager.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PluginCustomizer/ui_ParaUserManualSetup.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PluginCustomizer/ui_ParametersLinkage.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PluginCustomizer/ui_TreeInformation.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/BoundaryModel.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/Common.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/CreateChildModelFactory.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/CurveModel.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/CustomParameterModel.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/DataManager.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/Editor3DFileValue.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/EditorBoolValue.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/EditorBoundaryModel.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/EditorCurveInfo.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/EditorCurveModel.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/EditorDependencyFiles.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/EditorDescripttionSetup.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/EditorDoubleValue.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/EditorEnumListValue.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/EditorEnumValue.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/EditorIntValue.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/EditorNameValue.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/EditorPathValue.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/EditorSolverManager.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/EditorSolverValue.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/EditorStringValue.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/EditorTableValue.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/FileHelper.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/FunctionTreeSetup.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/Generateinstallationpackage.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/GetModelItemIconFactory.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/IOXml.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/InputValidator.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/MeshModel.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/ModelBase.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/MonitorModel.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/ParaBasicSetup.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/ParaExportMeshSetup.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/ParaImportGeometrySetup.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/ParaImportMeshSetup.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/ParaLinkageData.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/ParaLinkageManager.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/ParaManagerData.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/ParametersLinkage.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/Post2DCurveModel.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/Post3DFileModel.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/PostModel.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/QFWidgetAction.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/SimulationModel.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/SolverModel.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/TreeInformation.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/ValidatorName.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/VectorModel.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/WriteTreeConfig.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/WriterBCConfig.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/WriterBase.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/WriterDataConfig.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/WriterGlobalConfig.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/customizerActionManager.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/pluginCustomizer.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/pluginCustomizerAPI.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginCustomizer/writerMaterialConfig.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/BoundaryModel.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/CreateChildModelFactory.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/CurveModel.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/CustomParameterModel.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/DataManager.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/Editor3DFileValue.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/EditorBoolValue.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/EditorBoundaryModel.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/EditorCurveInfo.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/EditorCurveModel.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/EditorDependencyFiles.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/EditorDescripttionSetup.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/EditorDoubleValue.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/EditorEnumListValue.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/EditorEnumValue.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/EditorIntValue.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/EditorNameValue.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/EditorPathValue.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/EditorSolverManager.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/EditorSolverValue.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/EditorStringValue.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/EditorTableValue.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/FileHelper.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/FunctionTreeSetup.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/Generateinstallationpackage.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/GetModelItemIconFactory.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/IOXml.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/InputValidator.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/MeshModel.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/ModelBase.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/MonitorModel.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/ParaBasicSetup.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/ParaExportMeshSetup.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/ParaImportGeometrySetup.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/ParaImportMeshSetup.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/ParaLinkageData.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/ParaLinkageManager.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/ParaManagerData.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/ParametersLinkage.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/Post2DCurveModel.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/Post3DFileModel.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/PostModel.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/QFWidgetAction.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/SimulationModel.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/SolverModel.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/TreeInformation.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/ValidatorName.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/VectorModel.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/WriteTreeConfig.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/WriterBCConfig.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/WriterBase.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/WriterDataConfig.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/WriterGlobalConfig.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/customizerActionManager.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/pluginCustomizer.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginCustomizer/writerMaterialConfig.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PluginCustomizer/PluginCustomizer_autogen/timestamp", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/qrc/qianfan.qrc", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PluginCustomizer/resource/customizer.qrc", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PluginCustomizer/Editor3DFileValue.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PluginCustomizer/EditorBoolValue.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PluginCustomizer/EditorBoundaryModel.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PluginCustomizer/EditorCurveInfo.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PluginCustomizer/EditorCurveModel.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PluginCustomizer/EditorDependencyFiles.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PluginCustomizer/EditorDescripttionSetup.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PluginCustomizer/EditorDoubleValue.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PluginCustomizer/EditorEnumListValue.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PluginCustomizer/EditorEnumValue.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PluginCustomizer/EditorIntValue.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PluginCustomizer/EditorNameValue.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PluginCustomizer/EditorPathValue.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PluginCustomizer/EditorSolverManager.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PluginCustomizer/EditorSolverValue.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PluginCustomizer/EditorStringValue.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PluginCustomizer/EditorTableValue.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PluginCustomizer/FunctionTreeSetup.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PluginCustomizer/Generateinstallationpackage.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PluginCustomizer/ParaBasicSetup.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PluginCustomizer/ParaExportMeshSetup.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PluginCustomizer/ParaImportGeometrySetup.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PluginCustomizer/ParaImportMeshSetup.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PluginCustomizer/ParaLinkageManager.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PluginCustomizer/ParaUserManualSetup.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PluginCustomizer/ParametersLinkage.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PluginCustomizer/TreeInformation.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PluginCustomizer/PluginCustomizer_autogen/timestamp.rule", + "sourceGroupIndex" : 3 + } + ], + "type" : "SHARED_LIBRARY" +} diff --git a/out/build/.cmake/api/v1/reply/target-PluginCustomizer_autogen-Debug-2812c6c3f3d05883a603.json b/out/build/.cmake/api/v1/reply/target-PluginCustomizer_autogen-Debug-2812c6c3f3d05883a603.json new file mode 100644 index 0000000..a056309 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-PluginCustomizer_autogen-Debug-2812c6c3f3d05883a603.json @@ -0,0 +1,163 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/PluginCustomizer/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "backtrace" : 0, + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "backtrace" : 0, + "id" : "SARibbonBar::@f61b241723ced025d0ef" + }, + { + "backtrace" : 0, + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "backtrace" : 0, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "backtrace" : 0, + "id" : "MeshData::@2f0f676dafab302b2d20" + }, + { + "backtrace" : 0, + "id" : "SelfDefObject::@17d93127ede5f3b478ed" + }, + { + "backtrace" : 0, + "id" : "Material::@05d68cd248c3246409d7" + }, + { + "backtrace" : 0, + "id" : "ConfigOptions::@1c9d458e4038aca43955" + }, + { + "backtrace" : 0, + "id" : "BCBase::@baf13bdd6bef809f2182" + }, + { + "backtrace" : 0, + "id" : "Geometry::@b7b2e4191bc961e9afba" + }, + { + "backtrace" : 0, + "id" : "ModelData::@8a6b2d9535e8b6cb6800" + }, + { + "backtrace" : 0, + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + }, + { + "backtrace" : 0, + "id" : "PostWidgets::@93a5592897f957e6fa57" + }, + { + "backtrace" : 0, + "id" : "ProjectTreeExtend::@f2791e4784919f40d89d" + }, + { + "backtrace" : 0, + "id" : "GeometryCommand::@d82e5b79e04a3b196df4" + }, + { + "backtrace" : 0, + "id" : "ProjectTree::@43c6c7ebae2b88a99cdb" + }, + { + "backtrace" : 0, + "id" : "SolverControl::@4a18b637ce8bf6991ec0" + }, + { + "backtrace" : 0, + "id" : "MainWidgets::@d0895ea365458bd7f948" + }, + { + "backtrace" : 0, + "id" : "IO::@484b42e69e32e953bc79" + }, + { + "backtrace" : 0, + "id" : "MainWindow::@c380e645ecc921453605" + }, + { + "backtrace" : 0, + "id" : "PluginManager::@d6a357cdda12b0c888b1" + }, + { + "backtrace" : 0, + "id" : "GeometryWidgets::@1fb7ae1802a587d65603" + }, + { + "id" : "PluginCustomizer_autogen_timestamp_deps::@5fa4d6e31c64d49d269b" + } + ], + "folder" : + { + "name" : "Plugins" + }, + "id" : "PluginCustomizer_autogen::@5fa4d6e31c64d49d269b", + "isGeneratorProvided" : true, + "name" : "PluginCustomizer_autogen", + "paths" : + { + "build" : "src/PluginCustomizer", + "source" : "src/PluginCustomizer" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1, + 2 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PluginCustomizer/CMakeFiles/PluginCustomizer_autogen", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PluginCustomizer/CMakeFiles/PluginCustomizer_autogen.rule", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PluginCustomizer/PluginCustomizer_autogen/timestamp.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-PluginCustomizer_autogen_timestamp_deps-Debug-60973f2e3d995049838b.json b/out/build/.cmake/api/v1/reply/target-PluginCustomizer_autogen_timestamp_deps-Debug-60973f2e3d995049838b.json new file mode 100644 index 0000000..e409b56 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-PluginCustomizer_autogen_timestamp_deps-Debug-60973f2e3d995049838b.json @@ -0,0 +1,131 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/PluginCustomizer/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "id" : "SARibbonBar::@f61b241723ced025d0ef" + }, + { + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "id" : "MeshData::@2f0f676dafab302b2d20" + }, + { + "id" : "SelfDefObject::@17d93127ede5f3b478ed" + }, + { + "id" : "Material::@05d68cd248c3246409d7" + }, + { + "id" : "ConfigOptions::@1c9d458e4038aca43955" + }, + { + "id" : "BCBase::@baf13bdd6bef809f2182" + }, + { + "id" : "Geometry::@b7b2e4191bc961e9afba" + }, + { + "id" : "ModelData::@8a6b2d9535e8b6cb6800" + }, + { + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + }, + { + "id" : "PostWidgets::@93a5592897f957e6fa57" + }, + { + "id" : "ProjectTreeExtend::@f2791e4784919f40d89d" + }, + { + "id" : "GeometryCommand::@d82e5b79e04a3b196df4" + }, + { + "id" : "ProjectTree::@43c6c7ebae2b88a99cdb" + }, + { + "id" : "SolverControl::@4a18b637ce8bf6991ec0" + }, + { + "id" : "MainWidgets::@d0895ea365458bd7f948" + }, + { + "id" : "IO::@484b42e69e32e953bc79" + }, + { + "id" : "MainWindow::@c380e645ecc921453605" + }, + { + "id" : "PluginManager::@d6a357cdda12b0c888b1" + }, + { + "id" : "GeometryWidgets::@1fb7ae1802a587d65603" + } + ], + "folder" : + { + "name" : "Plugins" + }, + "id" : "PluginCustomizer_autogen_timestamp_deps::@5fa4d6e31c64d49d269b", + "isGeneratorProvided" : true, + "name" : "PluginCustomizer_autogen_timestamp_deps", + "paths" : + { + "build" : "src/PluginCustomizer", + "source" : "src/PluginCustomizer" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PluginCustomizer/CMakeFiles/PluginCustomizer_autogen_timestamp_deps", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PluginCustomizer/CMakeFiles/PluginCustomizer_autogen_timestamp_deps.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-PluginManager-Debug-755ce2dd42422dcee2f8.json b/out/build/.cmake/api/v1/reply/target-PluginManager-Debug-755ce2dd42422dcee2f8.json new file mode 100644 index 0000000..7e62991 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-PluginManager-Debug-755ce2dd42422dcee2f8.json @@ -0,0 +1,441 @@ +{ + "artifacts" : + [ + { + "path" : "Debug/PluginManager.dll" + }, + { + "path" : "Debug/PluginManager.lib" + }, + { + "path" : "Debug/PluginManager.pdb" + } + ], + "backtrace" : 1, + "backtraceGraph" : + { + "commands" : + [ + "add_library", + "install", + "target_link_libraries", + "add_dependencies", + "add_compile_options", + "add_definitions", + "target_compile_definitions", + "include_directories" + ], + "files" : + [ + "src/PluginManager/CMakeLists.txt", + "src/CMakeLists.txt", + "CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 22, + "parent" : 0 + }, + { + "file" : 1 + }, + { + "command" : 1, + "file" : 1, + "line" : 58, + "parent" : 2 + }, + { + "command" : 2, + "file" : 0, + "line" : 42, + "parent" : 0 + }, + { + "command" : 3, + "file" : 0, + "line" : 50, + "parent" : 0 + }, + { + "file" : 2 + }, + { + "command" : 4, + "file" : 2, + "line" : 85, + "parent" : 6 + }, + { + "command" : 4, + "file" : 2, + "line" : 86, + "parent" : 6 + }, + { + "command" : 5, + "file" : 2, + "line" : 118, + "parent" : 6 + }, + { + "command" : 6, + "file" : 0, + "line" : 31, + "parent" : 0 + }, + { + "command" : 5, + "file" : 2, + "line" : 83, + "parent" : 6 + }, + { + "command" : 7, + "file" : 0, + "line" : 4, + "parent" : 0 + } + ] + }, + "compileGroups" : + [ + { + "compileCommandFragments" : + [ + { + "fragment" : "-DQT_QML_DEBUG /Zi /Ob0 /Od /RTC1 -MDd" + }, + { + "backtrace" : 7, + "fragment" : "/utf-8" + }, + { + "backtrace" : 8, + "fragment" : "/MDd" + } + ], + "defines" : + [ + { + "backtrace" : 9, + "define" : "OUTPUT_DEBUG_INFO" + }, + { + "backtrace" : 10, + "define" : "PLUGINMANAGER_API" + }, + { + "define" : "PluginManager_EXPORTS" + }, + { + "backtrace" : 4, + "define" : "QT_CORE_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_GUI_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_WIDGETS_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_XML_LIB" + }, + { + "backtrace" : 11, + "define" : "UNICODE" + }, + { + "backtrace" : 11, + "define" : "_UNICODE" + } + ], + "includes" : + [ + { + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/PluginManager" + }, + { + "path" : "D:/WBFZCPP/source/FastCAE/src/PluginManager" + }, + { + "backtrace" : 0, + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/PluginManager/PluginManager_autogen/include" + }, + { + "backtrace" : 12, + "path" : "D:/WBFZCPP/source/FastCAE/src/PluginManager/.." + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtCore" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/./mkspecs/win32-msvc" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtGui" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtANGLE" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtWidgets" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtXml" + } + ], + "language" : "CXX", + "languageStandard" : + { + "backtraces" : + [ + 4 + ], + "standard" : "11" + }, + "sourceIndexes" : + [ + 0, + 6, + 7, + 8 + ] + } + ], + "dependencies" : + [ + { + "backtrace" : 5, + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "backtrace" : 5, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "backtrace" : 5, + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + }, + { + "id" : "PluginManager_autogen_timestamp_deps::@d6a357cdda12b0c888b1" + }, + { + "backtrace" : 0, + "id" : "PluginManager_autogen::@d6a357cdda12b0c888b1" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "PluginManager::@d6a357cdda12b0c888b1", + "install" : + { + "destinations" : + [ + { + "backtrace" : 3, + "path" : "bin" + } + ], + "prefix" : + { + "path" : "D:/WBFZCPP/source/FastCAE/install" + } + }, + "link" : + { + "commandFragments" : + [ + { + "fragment" : "/machine:x64 /debug /INCREMENTAL", + "role" : "flags" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ModuleBase.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Settings.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\DataProperty.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Xmld.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Widgetsd.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Guid.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Cored.lib", + "role" : "libraries" + }, + { + "fragment" : "kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib", + "role" : "libraries" + } + ], + "language" : "CXX" + }, + "name" : "PluginManager", + "nameOnDisk" : "PluginManager.dll", + "paths" : + { + "build" : "src/PluginManager", + "source" : "src/PluginManager" + }, + "sourceGroups" : + [ + { + "name" : "Source Files", + "sourceIndexes" : + [ + 0, + 6, + 7, + 8 + ] + }, + { + "name" : "Header Files", + "sourceIndexes" : + [ + 1, + 2, + 3, + 4, + 5 + ] + }, + { + "name" : "", + "sourceIndexes" : + [ + 9, + 10 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 11 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/PluginManager/PluginManager_autogen/mocs_compilation.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PluginManager/ui_PluginManageDialog.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginManager/PluginManageDialog.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginManager/PluginManager.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginManager/PluginManagerAPI.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginManager/pluginBase.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginManager/PluginManageDialog.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginManager/PluginManager.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginManager/pluginBase.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PluginManager/PluginManager_autogen/timestamp", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PluginManager/PluginManageDialog.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PluginManager/PluginManager_autogen/timestamp.rule", + "sourceGroupIndex" : 3 + } + ], + "type" : "SHARED_LIBRARY" +} diff --git a/out/build/.cmake/api/v1/reply/target-PluginManager_autogen-Debug-ee1b7178c11752bbf1c0.json b/out/build/.cmake/api/v1/reply/target-PluginManager_autogen-Debug-ee1b7178c11752bbf1c0.json new file mode 100644 index 0000000..f7bee3c --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-PluginManager_autogen-Debug-ee1b7178c11752bbf1c0.json @@ -0,0 +1,87 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/PluginManager/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "backtrace" : 0, + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "backtrace" : 0, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "backtrace" : 0, + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + }, + { + "id" : "PluginManager_autogen_timestamp_deps::@d6a357cdda12b0c888b1" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "PluginManager_autogen::@d6a357cdda12b0c888b1", + "isGeneratorProvided" : true, + "name" : "PluginManager_autogen", + "paths" : + { + "build" : "src/PluginManager", + "source" : "src/PluginManager" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1, + 2 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PluginManager/CMakeFiles/PluginManager_autogen", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PluginManager/CMakeFiles/PluginManager_autogen.rule", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PluginManager/PluginManager_autogen/timestamp.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-PluginManager_autogen_timestamp_deps-Debug-d0381371d1aa76811c59.json b/out/build/.cmake/api/v1/reply/target-PluginManager_autogen_timestamp_deps-Debug-d0381371d1aa76811c59.json new file mode 100644 index 0000000..eecf1e9 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-PluginManager_autogen_timestamp_deps-Debug-d0381371d1aa76811c59.json @@ -0,0 +1,74 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/PluginManager/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "PluginManager_autogen_timestamp_deps::@d6a357cdda12b0c888b1", + "isGeneratorProvided" : true, + "name" : "PluginManager_autogen_timestamp_deps", + "paths" : + { + "build" : "src/PluginManager", + "source" : "src/PluginManager" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PluginManager/CMakeFiles/PluginManager_autogen_timestamp_deps", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PluginManager/CMakeFiles/PluginManager_autogen_timestamp_deps.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-PluginMeshDataExchange-Debug-0c4480496742435080da.json b/out/build/.cmake/api/v1/reply/target-PluginMeshDataExchange-Debug-0c4480496742435080da.json new file mode 100644 index 0000000..f02cf10 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-PluginMeshDataExchange-Debug-0c4480496742435080da.json @@ -0,0 +1,1000 @@ +{ + "artifacts" : + [ + { + "path" : "Debug/plugins/PluginMeshDataExchange.dll" + }, + { + "path" : "Debug/plugins/PluginMeshDataExchange.lib" + }, + { + "path" : "Debug/plugins/PluginMeshDataExchange.pdb" + } + ], + "backtrace" : 1, + "backtraceGraph" : + { + "commands" : + [ + "add_library", + "install", + "target_link_libraries", + "set_property", + "find_package", + "add_dependencies", + "add_compile_options", + "target_compile_definitions", + "add_definitions", + "include_directories" + ], + "files" : + [ + "src/PluginMeshDataExchange/CMakeLists.txt", + "src/CMakeLists.txt", + "cmake/FindCGNS.cmake", + "CMakeLists.txt", + "src/PythonModule/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 29, + "parent" : 0 + }, + { + "file" : 1 + }, + { + "command" : 1, + "file" : 1, + "line" : 78, + "parent" : 2 + }, + { + "command" : 2, + "file" : 0, + "line" : 55, + "parent" : 0 + }, + { + "file" : 3 + }, + { + "command" : 4, + "file" : 3, + "line" : 195, + "parent" : 5 + }, + { + "file" : 2, + "parent" : 6 + }, + { + "command" : 3, + "file" : 2, + "line" : 72, + "parent" : 7 + }, + { + "file" : 4 + }, + { + "command" : 2, + "file" : 4, + "line" : 44, + "parent" : 9 + }, + { + "command" : 5, + "file" : 0, + "line" : 63, + "parent" : 0 + }, + { + "command" : 6, + "file" : 3, + "line" : 85, + "parent" : 5 + }, + { + "command" : 6, + "file" : 3, + "line" : 86, + "parent" : 5 + }, + { + "command" : 7, + "file" : 0, + "line" : 39, + "parent" : 0 + }, + { + "command" : 8, + "file" : 3, + "line" : 118, + "parent" : 5 + }, + { + "command" : 8, + "file" : 3, + "line" : 83, + "parent" : 5 + }, + { + "command" : 9, + "file" : 0, + "line" : 4, + "parent" : 0 + } + ] + }, + "compileGroups" : + [ + { + "compileCommandFragments" : + [ + { + "fragment" : "-DQT_QML_DEBUG /Zi /Ob0 /Od /RTC1 -MDd" + }, + { + "backtrace" : 12, + "fragment" : "/utf-8" + }, + { + "backtrace" : 13, + "fragment" : "/MDd" + } + ], + "defines" : + [ + { + "backtrace" : 4, + "define" : "H5_BUILT_AS_DYNAMIC_LIB" + }, + { + "backtrace" : 14, + "define" : "MESHDATAEXCHANGEPLUGIN_API" + }, + { + "backtrace" : 15, + "define" : "OUTPUT_DEBUG_INFO" + }, + { + "define" : "PluginMeshDataExchange_EXPORTS" + }, + { + "backtrace" : 4, + "define" : "QT_CORE_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_GUI_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_WIDGETS_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_XML_LIB" + }, + { + "backtrace" : 16, + "define" : "UNICODE" + }, + { + "backtrace" : 16, + "define" : "_UNICODE" + } + ], + "includes" : + [ + { + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/PluginMeshDataExchange" + }, + { + "path" : "D:/WBFZCPP/source/FastCAE/src/PluginMeshDataExchange" + }, + { + "backtrace" : 0, + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/PluginMeshDataExchange/PluginMeshDataExchange_autogen/include" + }, + { + "backtrace" : 17, + "path" : "D:/WBFZCPP/source/FastCAE/src/PluginMeshDataExchange/.." + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "D:/vcpkg/installed/x64-windows/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "D:/WBFZCPP/source/FastCAE/extlib/HDF5/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtCore" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/./mkspecs/win32-msvc" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtGui" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtANGLE" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtWidgets" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtXml" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/VTK/include/vtk-9.3" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "D:/WBFZCPP/source/FastCAE/extlib/Python/include" + } + ], + "language" : "CXX", + "languageStandard" : + { + "backtraces" : + [ + 4 + ], + "standard" : "11" + }, + "sourceIndexes" : + [ + 0, + 1, + 2, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33 + ] + } + ], + "dependencies" : + [ + { + "backtrace" : 4, + "id" : "Common::@29aabc9fbfb9b5406d55" + }, + { + "backtrace" : 11, + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "backtrace" : 11, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "backtrace" : 11, + "id" : "MeshData::@2f0f676dafab302b2d20" + }, + { + "backtrace" : 11, + "id" : "SelfDefObject::@17d93127ede5f3b478ed" + }, + { + "backtrace" : 11, + "id" : "Material::@05d68cd248c3246409d7" + }, + { + "backtrace" : 11, + "id" : "ConfigOptions::@1c9d458e4038aca43955" + }, + { + "backtrace" : 11, + "id" : "BCBase::@baf13bdd6bef809f2182" + }, + { + "backtrace" : 11, + "id" : "Geometry::@b7b2e4191bc961e9afba" + }, + { + "backtrace" : 11, + "id" : "ModelData::@8a6b2d9535e8b6cb6800" + }, + { + "backtrace" : 11, + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + }, + { + "backtrace" : 11, + "id" : "GeometryCommand::@d82e5b79e04a3b196df4" + }, + { + "backtrace" : 11, + "id" : "MainWidgets::@d0895ea365458bd7f948" + }, + { + "backtrace" : 11, + "id" : "IO::@484b42e69e32e953bc79" + }, + { + "backtrace" : 11, + "id" : "MainWindow::@c380e645ecc921453605" + }, + { + "backtrace" : 11, + "id" : "PluginManager::@d6a357cdda12b0c888b1" + }, + { + "backtrace" : 11, + "id" : "GeometryWidgets::@1fb7ae1802a587d65603" + }, + { + "id" : "PluginMeshDataExchange_autogen_timestamp_deps::@b3cc41d3de9d0b479d36" + }, + { + "backtrace" : 0, + "id" : "PluginMeshDataExchange_autogen::@b3cc41d3de9d0b479d36" + } + ], + "folder" : + { + "name" : "Plugins" + }, + "id" : "PluginMeshDataExchange::@b3cc41d3de9d0b479d36", + "install" : + { + "destinations" : + [ + { + "backtrace" : 3, + "path" : "bin/plugins" + } + ], + "prefix" : + { + "path" : "D:/WBFZCPP/source/FastCAE/install" + } + }, + "link" : + { + "commandFragments" : + [ + { + "fragment" : "/machine:x64 /debug /INCREMENTAL", + "role" : "flags" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOChemistry-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingLOD-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\MainWindow.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\MainWidgets.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\IO.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\PluginManager.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\GeometryWidgets.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\GeometryCommand.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ModuleBase.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ModelData.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ConfigOptions.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Material.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\SelfDefObject.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\BCBase.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\MeshData.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Geometry.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\DataProperty.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Xmld.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "D:\\vcpkg\\installed\\x64-windows\\lib\\cgnsdll.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonColor-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonComputationalGeometry-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonDataModel-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonExecutionModel-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonMath-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonMisc-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonSystem-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonTransforms-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkDICOMParser-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersGeneral-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersGeometry-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersHybrid-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersModeling-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersSources-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOGeometry-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOImage-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOLegacy-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingSources-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkdoubleconversion-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkjpeg-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkjsoncpp-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtklz4-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtklzma-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkmetaio-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkpng-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkpugixml-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtksys-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtktiff-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkzlib-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 8, + "fragment" : "D:\\WBFZCPP\\source\\FastCAE\\extlib\\HDF5\\lib\\hdf5.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\PythonModule.lib", + "role" : "libraries" + }, + { + "backtrace" : 10, + "fragment" : "D:\\WBFZCPP\\source\\FastCAE\\extlib\\Python\\libs\\python37.lib", + "role" : "libraries" + }, + { + "backtrace" : 10, + "fragment" : "Debug\\Common.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Widgetsd.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Guid.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Cored.lib", + "role" : "libraries" + }, + { + "fragment" : "kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib", + "role" : "libraries" + } + ], + "language" : "CXX" + }, + "name" : "PluginMeshDataExchange", + "nameOnDisk" : "PluginMeshDataExchange.dll", + "paths" : + { + "build" : "src/PluginMeshDataExchange", + "source" : "src/PluginMeshDataExchange" + }, + "sourceGroups" : + [ + { + "name" : "Source Files", + "sourceIndexes" : + [ + 0, + 1, + 2, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33 + ] + }, + { + "name" : "Header Files", + "sourceIndexes" : + [ + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18 + ] + }, + { + "name" : "", + "sourceIndexes" : + [ + 34, + 35, + 36 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 37 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/PluginMeshDataExchange/PluginMeshDataExchange_autogen/mocs_compilation.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/PluginMeshDataExchange/qrc_qianfan.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/PluginMeshDataExchange/qrc_translations.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "path" : "src/PluginMeshDataExchange/BDFdataExchange.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginMeshDataExchange/CDBdataExchange.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginMeshDataExchange/CGNSdataExchange.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginMeshDataExchange/CNTMdataExchange.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginMeshDataExchange/FEMdataExchange.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginMeshDataExchange/FoamDataExchange.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginMeshDataExchange/INPdataExchange.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginMeshDataExchange/KEYdataExchange.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginMeshDataExchange/MSHdataExchange.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginMeshDataExchange/MeshThreadBase.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginMeshDataExchange/NEUdataExchange.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginMeshDataExchange/PDBdataExchange.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginMeshDataExchange/SU2dataExchange.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginMeshDataExchange/VTKdataExchange.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginMeshDataExchange/meshDataExchangePlugin.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PluginMeshDataExchange/meshDataExchangePluginAPI.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginMeshDataExchange/BDFdataExchange.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginMeshDataExchange/CDBdataExchange.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginMeshDataExchange/CGNSdataExchange.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginMeshDataExchange/CNTMdataExchange.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginMeshDataExchange/FEMdataExchange.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginMeshDataExchange/FoamDataExchange.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginMeshDataExchange/INPdataExchange.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginMeshDataExchange/KEYdataExchange.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginMeshDataExchange/MSHdataExchange.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginMeshDataExchange/MeshThreadBase.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginMeshDataExchange/NEUdataExchange.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginMeshDataExchange/PDBdataExchange.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginMeshDataExchange/SU2dataExchange.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginMeshDataExchange/VTKdataExchange.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PluginMeshDataExchange/meshDataExchangePlugin.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PluginMeshDataExchange/PluginMeshDataExchange_autogen/timestamp", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/qrc/qianfan.qrc", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/qrc/translations.qrc", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PluginMeshDataExchange/PluginMeshDataExchange_autogen/timestamp.rule", + "sourceGroupIndex" : 3 + } + ], + "type" : "SHARED_LIBRARY" +} diff --git a/out/build/.cmake/api/v1/reply/target-PluginMeshDataExchange_autogen-Debug-3ccfe21a7a9c5c090bf0.json b/out/build/.cmake/api/v1/reply/target-PluginMeshDataExchange_autogen-Debug-3ccfe21a7a9c5c090bf0.json new file mode 100644 index 0000000..4fe1718 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-PluginMeshDataExchange_autogen-Debug-3ccfe21a7a9c5c090bf0.json @@ -0,0 +1,139 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/PluginMeshDataExchange/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "backtrace" : 0, + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "backtrace" : 0, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "backtrace" : 0, + "id" : "MeshData::@2f0f676dafab302b2d20" + }, + { + "backtrace" : 0, + "id" : "SelfDefObject::@17d93127ede5f3b478ed" + }, + { + "backtrace" : 0, + "id" : "Material::@05d68cd248c3246409d7" + }, + { + "backtrace" : 0, + "id" : "ConfigOptions::@1c9d458e4038aca43955" + }, + { + "backtrace" : 0, + "id" : "BCBase::@baf13bdd6bef809f2182" + }, + { + "backtrace" : 0, + "id" : "Geometry::@b7b2e4191bc961e9afba" + }, + { + "backtrace" : 0, + "id" : "ModelData::@8a6b2d9535e8b6cb6800" + }, + { + "backtrace" : 0, + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + }, + { + "backtrace" : 0, + "id" : "GeometryCommand::@d82e5b79e04a3b196df4" + }, + { + "backtrace" : 0, + "id" : "MainWidgets::@d0895ea365458bd7f948" + }, + { + "backtrace" : 0, + "id" : "IO::@484b42e69e32e953bc79" + }, + { + "backtrace" : 0, + "id" : "MainWindow::@c380e645ecc921453605" + }, + { + "backtrace" : 0, + "id" : "PluginManager::@d6a357cdda12b0c888b1" + }, + { + "backtrace" : 0, + "id" : "GeometryWidgets::@1fb7ae1802a587d65603" + }, + { + "id" : "PluginMeshDataExchange_autogen_timestamp_deps::@b3cc41d3de9d0b479d36" + } + ], + "folder" : + { + "name" : "Plugins" + }, + "id" : "PluginMeshDataExchange_autogen::@b3cc41d3de9d0b479d36", + "isGeneratorProvided" : true, + "name" : "PluginMeshDataExchange_autogen", + "paths" : + { + "build" : "src/PluginMeshDataExchange", + "source" : "src/PluginMeshDataExchange" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1, + 2 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PluginMeshDataExchange/CMakeFiles/PluginMeshDataExchange_autogen", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PluginMeshDataExchange/CMakeFiles/PluginMeshDataExchange_autogen.rule", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PluginMeshDataExchange/PluginMeshDataExchange_autogen/timestamp.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-PluginMeshDataExchange_autogen_timestamp_deps-Debug-d5be7669b02c7bdfa374.json b/out/build/.cmake/api/v1/reply/target-PluginMeshDataExchange_autogen_timestamp_deps-Debug-d5be7669b02c7bdfa374.json new file mode 100644 index 0000000..e6777c5 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-PluginMeshDataExchange_autogen_timestamp_deps-Debug-d5be7669b02c7bdfa374.json @@ -0,0 +1,113 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/PluginMeshDataExchange/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "id" : "MeshData::@2f0f676dafab302b2d20" + }, + { + "id" : "SelfDefObject::@17d93127ede5f3b478ed" + }, + { + "id" : "Material::@05d68cd248c3246409d7" + }, + { + "id" : "ConfigOptions::@1c9d458e4038aca43955" + }, + { + "id" : "BCBase::@baf13bdd6bef809f2182" + }, + { + "id" : "Geometry::@b7b2e4191bc961e9afba" + }, + { + "id" : "ModelData::@8a6b2d9535e8b6cb6800" + }, + { + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + }, + { + "id" : "GeometryCommand::@d82e5b79e04a3b196df4" + }, + { + "id" : "MainWidgets::@d0895ea365458bd7f948" + }, + { + "id" : "IO::@484b42e69e32e953bc79" + }, + { + "id" : "MainWindow::@c380e645ecc921453605" + }, + { + "id" : "PluginManager::@d6a357cdda12b0c888b1" + }, + { + "id" : "GeometryWidgets::@1fb7ae1802a587d65603" + } + ], + "folder" : + { + "name" : "Plugins" + }, + "id" : "PluginMeshDataExchange_autogen_timestamp_deps::@b3cc41d3de9d0b479d36", + "isGeneratorProvided" : true, + "name" : "PluginMeshDataExchange_autogen_timestamp_deps", + "paths" : + { + "build" : "src/PluginMeshDataExchange", + "source" : "src/PluginMeshDataExchange" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PluginMeshDataExchange/CMakeFiles/PluginMeshDataExchange_autogen_timestamp_deps", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PluginMeshDataExchange/CMakeFiles/PluginMeshDataExchange_autogen_timestamp_deps.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-PostAlgorithm-Debug-ec3da06ebd5001e51f61.json b/out/build/.cmake/api/v1/reply/target-PostAlgorithm-Debug-ec3da06ebd5001e51f61.json new file mode 100644 index 0000000..f4fa2ba --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-PostAlgorithm-Debug-ec3da06ebd5001e51f61.json @@ -0,0 +1,744 @@ +{ + "artifacts" : + [ + { + "path" : "Debug/PostAlgorithm.dll" + }, + { + "path" : "Debug/PostAlgorithm.lib" + }, + { + "path" : "Debug/PostAlgorithm.pdb" + } + ], + "backtrace" : 1, + "backtraceGraph" : + { + "commands" : + [ + "add_library", + "install", + "target_link_libraries", + "add_dependencies", + "add_compile_options", + "add_definitions", + "target_compile_definitions", + "include_directories" + ], + "files" : + [ + "src/PostAlgorithm/CMakeLists.txt", + "src/CMakeLists.txt", + "CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 20, + "parent" : 0 + }, + { + "file" : 1 + }, + { + "command" : 1, + "file" : 1, + "line" : 58, + "parent" : 2 + }, + { + "command" : 2, + "file" : 0, + "line" : 40, + "parent" : 0 + }, + { + "command" : 3, + "file" : 0, + "line" : 48, + "parent" : 0 + }, + { + "file" : 2 + }, + { + "command" : 4, + "file" : 2, + "line" : 85, + "parent" : 6 + }, + { + "command" : 4, + "file" : 2, + "line" : 86, + "parent" : 6 + }, + { + "command" : 5, + "file" : 2, + "line" : 118, + "parent" : 6 + }, + { + "command" : 6, + "file" : 0, + "line" : 28, + "parent" : 0 + }, + { + "command" : 5, + "file" : 2, + "line" : 83, + "parent" : 6 + }, + { + "command" : 7, + "file" : 0, + "line" : 4, + "parent" : 0 + } + ] + }, + "compileGroups" : + [ + { + "compileCommandFragments" : + [ + { + "fragment" : "-DQT_QML_DEBUG /Zi /Ob0 /Od /RTC1 -MDd" + }, + { + "backtrace" : 7, + "fragment" : "/utf-8" + }, + { + "backtrace" : 8, + "fragment" : "/MDd" + } + ], + "defines" : + [ + { + "backtrace" : 4, + "define" : "H5_BUILT_AS_DYNAMIC_LIB" + }, + { + "backtrace" : 9, + "define" : "OUTPUT_DEBUG_INFO" + }, + { + "backtrace" : 10, + "define" : "POSTALGORITHM_API" + }, + { + "define" : "PostAlgorithm_EXPORTS" + }, + { + "backtrace" : 4, + "define" : "QT_CORE_LIB" + }, + { + "backtrace" : 11, + "define" : "UNICODE" + }, + { + "backtrace" : 11, + "define" : "_UNICODE" + } + ], + "includes" : + [ + { + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/PostAlgorithm" + }, + { + "path" : "D:/WBFZCPP/source/FastCAE/src/PostAlgorithm" + }, + { + "backtrace" : 0, + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/PostAlgorithm/PostAlgorithm_autogen/include" + }, + { + "backtrace" : 12, + "path" : "D:/WBFZCPP/source/FastCAE/src/PostAlgorithm/.." + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "D:/vcpkg/installed/x64-windows/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "D:/WBFZCPP/source/FastCAE/extlib/HDF5/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "D:/WBFZCPP/source/FastCAE/extlib/TecIO/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtCore" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/./mkspecs/win32-msvc" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/VTK/include/vtk-9.3" + } + ], + "language" : "CXX", + "languageStandard" : + { + "backtraces" : + [ + 4 + ], + "standard" : "11" + }, + "sourceIndexes" : + [ + 0, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23 + ] + } + ], + "dependencies" : + [ + { + "backtrace" : 5, + "id" : "Common::@29aabc9fbfb9b5406d55" + }, + { + "id" : "PostAlgorithm_autogen_timestamp_deps::@d527967401306b818905" + }, + { + "backtrace" : 0, + "id" : "PostAlgorithm_autogen::@d527967401306b818905" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "PostAlgorithm::@d527967401306b818905", + "install" : + { + "destinations" : + [ + { + "backtrace" : 3, + "path" : "bin" + } + ], + "prefix" : + { + "path" : "D:/WBFZCPP/source/FastCAE/install" + } + }, + "link" : + { + "commandFragments" : + [ + { + "fragment" : "/machine:x64 /debug /INCREMENTAL", + "role" : "flags" + }, + { + "backtrace" : 4, + "fragment" : "D:\\vcpkg\\installed\\x64-windows\\lib\\cgnsdll.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "D:\\WBFZCPP\\source\\FastCAE\\extlib\\HDF5\\lib\\hdf5_cpp.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "D:\\WBFZCPP\\source\\FastCAE\\extlib\\TecIO\\lib\\tecio.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonColor-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonComputationalGeometry-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonDataModel-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonExecutionModel-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonMath-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonMisc-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonSystem-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonTransforms-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkDICOMParser-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersExtraction-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersGeneral-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersGeometry-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersHybrid-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersModeling-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersParallel-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersSources-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersStatistics-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersTexture-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOGeometry-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOImage-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOLegacy-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOParallel-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOXML-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOXMLParser-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingFourier-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingSources-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkParallelCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkParallelDIY-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkdoubleconversion-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkexpat-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkjpeg-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkjsoncpp-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtklz4-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtklzma-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkmetaio-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkpng-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkpugixml-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtksys-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtktiff-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkzlib-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Common.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "D:\\WBFZCPP\\source\\FastCAE\\extlib\\HDF5\\lib\\hdf5.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Cored.lib", + "role" : "libraries" + }, + { + "fragment" : "kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib", + "role" : "libraries" + } + ], + "language" : "CXX" + }, + "name" : "PostAlgorithm", + "nameOnDisk" : "PostAlgorithm.dll", + "paths" : + { + "build" : "src/PostAlgorithm", + "source" : "src/PostAlgorithm" + }, + "sourceGroups" : + [ + { + "name" : "Source Files", + "sourceIndexes" : + [ + 0, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23 + ] + }, + { + "name" : "Header Files", + "sourceIndexes" : + [ + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12 + ] + }, + { + "name" : "", + "sourceIndexes" : + [ + 24 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 25 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostAlgorithm/PostAlgorithm_autogen/mocs_compilation.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "path" : "src/PostAlgorithm/CGNSReaderAlgorithm.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostAlgorithm/DataSetIntegrationAlgorithm.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostAlgorithm/FCGNSGridReaderBase.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostAlgorithm/FCGNSReader.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostAlgorithm/FCGNSStructureZoneReader.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostAlgorithm/FCGNSUnStructureZoneReader.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostAlgorithm/GlyphingAlgorithm.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostAlgorithm/Plot3DReaderAlgorithm.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostAlgorithm/PostAlgorithmAPI.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostAlgorithm/SimplifyAlgorithm.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostAlgorithm/SzpltReader.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostAlgorithm/TecSzpltReaderAlgorithm.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostAlgorithm/CGNSReaderAlgorithm.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostAlgorithm/DataSetIntegrationAlgorithm.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostAlgorithm/FCGNSGridReaderBase.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostAlgorithm/FCGNSReader.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostAlgorithm/FCGNSStructureZoneReader.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostAlgorithm/FCGNSUnStructureZoneReader.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostAlgorithm/GlyphingAlgorithm.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostAlgorithm/Plot3DReaderAlgorithm.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostAlgorithm/SimplifyAlgorithm.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostAlgorithm/SzpltReader.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostAlgorithm/TecSzpltReaderAlgorithm.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostAlgorithm/PostAlgorithm_autogen/timestamp", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostAlgorithm/PostAlgorithm_autogen/timestamp.rule", + "sourceGroupIndex" : 3 + } + ], + "type" : "SHARED_LIBRARY" +} diff --git a/out/build/.cmake/api/v1/reply/target-PostAlgorithm_autogen-Debug-0861aa8a82e0acf36e01.json b/out/build/.cmake/api/v1/reply/target-PostAlgorithm_autogen-Debug-0861aa8a82e0acf36e01.json new file mode 100644 index 0000000..1dca4ae --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-PostAlgorithm_autogen-Debug-0861aa8a82e0acf36e01.json @@ -0,0 +1,79 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/PostAlgorithm/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "backtrace" : 0, + "id" : "Common::@29aabc9fbfb9b5406d55" + }, + { + "id" : "PostAlgorithm_autogen_timestamp_deps::@d527967401306b818905" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "PostAlgorithm_autogen::@d527967401306b818905", + "isGeneratorProvided" : true, + "name" : "PostAlgorithm_autogen", + "paths" : + { + "build" : "src/PostAlgorithm", + "source" : "src/PostAlgorithm" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1, + 2 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostAlgorithm/CMakeFiles/PostAlgorithm_autogen", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostAlgorithm/CMakeFiles/PostAlgorithm_autogen.rule", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostAlgorithm/PostAlgorithm_autogen/timestamp.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-PostAlgorithm_autogen_timestamp_deps-Debug-6945a732d8452980c390.json b/out/build/.cmake/api/v1/reply/target-PostAlgorithm_autogen_timestamp_deps-Debug-6945a732d8452980c390.json new file mode 100644 index 0000000..1bc55cc --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-PostAlgorithm_autogen_timestamp_deps-Debug-6945a732d8452980c390.json @@ -0,0 +1,68 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/PostAlgorithm/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "id" : "Common::@29aabc9fbfb9b5406d55" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "PostAlgorithm_autogen_timestamp_deps::@d527967401306b818905", + "isGeneratorProvided" : true, + "name" : "PostAlgorithm_autogen_timestamp_deps", + "paths" : + { + "build" : "src/PostAlgorithm", + "source" : "src/PostAlgorithm" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostAlgorithm/CMakeFiles/PostAlgorithm_autogen_timestamp_deps", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostAlgorithm/CMakeFiles/PostAlgorithm_autogen_timestamp_deps.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-PostCurveDataManager-Debug-b7ed0d2c648b1281cac4.json b/out/build/.cmake/api/v1/reply/target-PostCurveDataManager-Debug-b7ed0d2c648b1281cac4.json new file mode 100644 index 0000000..488bfaa --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-PostCurveDataManager-Debug-b7ed0d2c648b1281cac4.json @@ -0,0 +1,361 @@ +{ + "artifacts" : + [ + { + "path" : "Debug/PostCurveDataManager.dll" + }, + { + "path" : "Debug/PostCurveDataManager.lib" + }, + { + "path" : "Debug/PostCurveDataManager.pdb" + } + ], + "backtrace" : 1, + "backtraceGraph" : + { + "commands" : + [ + "add_library", + "install", + "target_link_libraries", + "add_compile_options", + "add_definitions", + "target_compile_definitions", + "include_directories" + ], + "files" : + [ + "src/PostCurveDataManager/CMakeLists.txt", + "src/CMakeLists.txt", + "CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 20, + "parent" : 0 + }, + { + "file" : 1 + }, + { + "command" : 1, + "file" : 1, + "line" : 58, + "parent" : 2 + }, + { + "command" : 2, + "file" : 0, + "line" : 37, + "parent" : 0 + }, + { + "file" : 2 + }, + { + "command" : 3, + "file" : 2, + "line" : 85, + "parent" : 5 + }, + { + "command" : 3, + "file" : 2, + "line" : 86, + "parent" : 5 + }, + { + "command" : 4, + "file" : 2, + "line" : 118, + "parent" : 5 + }, + { + "command" : 5, + "file" : 0, + "line" : 28, + "parent" : 0 + }, + { + "command" : 4, + "file" : 2, + "line" : 83, + "parent" : 5 + }, + { + "command" : 6, + "file" : 0, + "line" : 4, + "parent" : 0 + } + ] + }, + "compileGroups" : + [ + { + "compileCommandFragments" : + [ + { + "fragment" : "-DQT_QML_DEBUG /Zi /Ob0 /Od /RTC1 -MDd" + }, + { + "backtrace" : 6, + "fragment" : "/utf-8" + }, + { + "backtrace" : 7, + "fragment" : "/MDd" + } + ], + "defines" : + [ + { + "backtrace" : 8, + "define" : "OUTPUT_DEBUG_INFO" + }, + { + "backtrace" : 9, + "define" : "POSTCURVEDATAMANAGER_API" + }, + { + "define" : "PostCurveDataManager_EXPORTS" + }, + { + "backtrace" : 4, + "define" : "QT_CORE_LIB" + }, + { + "backtrace" : 10, + "define" : "UNICODE" + }, + { + "backtrace" : 10, + "define" : "_UNICODE" + } + ], + "includes" : + [ + { + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/PostCurveDataManager" + }, + { + "path" : "D:/WBFZCPP/source/FastCAE/src/PostCurveDataManager" + }, + { + "backtrace" : 0, + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/PostCurveDataManager/PostCurveDataManager_autogen/include" + }, + { + "backtrace" : 11, + "path" : "D:/WBFZCPP/source/FastCAE/src/PostCurveDataManager/.." + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtCore" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/./mkspecs/win32-msvc" + } + ], + "language" : "CXX", + "languageStandard" : + { + "backtraces" : + [ + 4 + ], + "standard" : "11" + }, + "sourceIndexes" : + [ + 0, + 6, + 7, + 8, + 9 + ] + } + ], + "dependencies" : + [ + { + "id" : "PostCurveDataManager_autogen_timestamp_deps::@1562c6ae2d37fb33544b" + }, + { + "backtrace" : 0, + "id" : "PostCurveDataManager_autogen::@1562c6ae2d37fb33544b" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "PostCurveDataManager::@1562c6ae2d37fb33544b", + "install" : + { + "destinations" : + [ + { + "backtrace" : 3, + "path" : "bin" + } + ], + "prefix" : + { + "path" : "D:/WBFZCPP/source/FastCAE/install" + } + }, + "link" : + { + "commandFragments" : + [ + { + "fragment" : "/machine:x64 /debug /INCREMENTAL", + "role" : "flags" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Cored.lib", + "role" : "libraries" + }, + { + "fragment" : "kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib", + "role" : "libraries" + } + ], + "language" : "CXX" + }, + "name" : "PostCurveDataManager", + "nameOnDisk" : "PostCurveDataManager.dll", + "paths" : + { + "build" : "src/PostCurveDataManager", + "source" : "src/PostCurveDataManager" + }, + "sourceGroups" : + [ + { + "name" : "Source Files", + "sourceIndexes" : + [ + 0, + 6, + 7, + 8, + 9 + ] + }, + { + "name" : "Header Files", + "sourceIndexes" : + [ + 1, + 2, + 3, + 4, + 5 + ] + }, + { + "name" : "", + "sourceIndexes" : + [ + 10 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 11 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostCurveDataManager/PostCurveDataManager_autogen/mocs_compilation.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "path" : "src/PostCurveDataManager/CurveDataReader.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostCurveDataManager/PostCurveData.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostCurveDataManager/PostCurveDataManagerAPI.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostCurveDataManager/PostData.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostCurveDataManager/PostDataPart.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostCurveDataManager/CurveDataReader.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostCurveDataManager/PostCurveData.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostCurveDataManager/PostData.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostCurveDataManager/PostDataPart.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostCurveDataManager/PostCurveDataManager_autogen/timestamp", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostCurveDataManager/PostCurveDataManager_autogen/timestamp.rule", + "sourceGroupIndex" : 3 + } + ], + "type" : "SHARED_LIBRARY" +} diff --git a/out/build/.cmake/api/v1/reply/target-PostCurveDataManager_autogen-Debug-727985a535e65b59ad2e.json b/out/build/.cmake/api/v1/reply/target-PostCurveDataManager_autogen-Debug-727985a535e65b59ad2e.json new file mode 100644 index 0000000..e972b85 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-PostCurveDataManager_autogen-Debug-727985a535e65b59ad2e.json @@ -0,0 +1,75 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/PostCurveDataManager/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "id" : "PostCurveDataManager_autogen_timestamp_deps::@1562c6ae2d37fb33544b" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "PostCurveDataManager_autogen::@1562c6ae2d37fb33544b", + "isGeneratorProvided" : true, + "name" : "PostCurveDataManager_autogen", + "paths" : + { + "build" : "src/PostCurveDataManager", + "source" : "src/PostCurveDataManager" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1, + 2 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostCurveDataManager/CMakeFiles/PostCurveDataManager_autogen", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostCurveDataManager/CMakeFiles/PostCurveDataManager_autogen.rule", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostCurveDataManager/PostCurveDataManager_autogen/timestamp.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-PostCurveDataManager_autogen_timestamp_deps-Debug-8d9d8030c97419083413.json b/out/build/.cmake/api/v1/reply/target-PostCurveDataManager_autogen_timestamp_deps-Debug-8d9d8030c97419083413.json new file mode 100644 index 0000000..bca5940 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-PostCurveDataManager_autogen_timestamp_deps-Debug-8d9d8030c97419083413.json @@ -0,0 +1,62 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/PostCurveDataManager/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "folder" : + { + "name" : "Modules" + }, + "id" : "PostCurveDataManager_autogen_timestamp_deps::@1562c6ae2d37fb33544b", + "isGeneratorProvided" : true, + "name" : "PostCurveDataManager_autogen_timestamp_deps", + "paths" : + { + "build" : "src/PostCurveDataManager", + "source" : "src/PostCurveDataManager" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostCurveDataManager/CMakeFiles/PostCurveDataManager_autogen_timestamp_deps", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostCurveDataManager/CMakeFiles/PostCurveDataManager_autogen_timestamp_deps.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-PostInterface-Debug-322491428ba469c003e2.json b/out/build/.cmake/api/v1/reply/target-PostInterface-Debug-322491428ba469c003e2.json new file mode 100644 index 0000000..fa9e988 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-PostInterface-Debug-322491428ba469c003e2.json @@ -0,0 +1,1257 @@ +{ + "artifacts" : + [ + { + "path" : "Debug/PostInterface.dll" + }, + { + "path" : "Debug/PostInterface.lib" + }, + { + "path" : "Debug/PostInterface.pdb" + } + ], + "backtrace" : 1, + "backtraceGraph" : + { + "commands" : + [ + "add_library", + "install", + "target_link_libraries", + "add_dependencies", + "add_compile_options", + "add_definitions", + "target_compile_definitions", + "include_directories" + ], + "files" : + [ + "src/PostInterface/CMakeLists.txt", + "src/CMakeLists.txt", + "src/PythonModule/CMakeLists.txt", + "CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 29, + "parent" : 0 + }, + { + "file" : 1 + }, + { + "command" : 1, + "file" : 1, + "line" : 58, + "parent" : 2 + }, + { + "command" : 2, + "file" : 0, + "line" : 50, + "parent" : 0 + }, + { + "file" : 2 + }, + { + "command" : 2, + "file" : 2, + "line" : 44, + "parent" : 5 + }, + { + "command" : 3, + "file" : 0, + "line" : 58, + "parent" : 0 + }, + { + "file" : 3 + }, + { + "command" : 4, + "file" : 3, + "line" : 85, + "parent" : 8 + }, + { + "command" : 4, + "file" : 3, + "line" : 86, + "parent" : 8 + }, + { + "command" : 5, + "file" : 3, + "line" : 118, + "parent" : 8 + }, + { + "command" : 6, + "file" : 0, + "line" : 39, + "parent" : 0 + }, + { + "command" : 5, + "file" : 3, + "line" : 83, + "parent" : 8 + }, + { + "command" : 7, + "file" : 0, + "line" : 4, + "parent" : 0 + } + ] + }, + "compileGroups" : + [ + { + "compileCommandFragments" : + [ + { + "fragment" : "-DQT_QML_DEBUG /Zi /Ob0 /Od /RTC1 -MDd" + }, + { + "backtrace" : 9, + "fragment" : "/utf-8" + }, + { + "backtrace" : 10, + "fragment" : "/MDd" + } + ], + "defines" : + [ + { + "backtrace" : 11, + "define" : "OUTPUT_DEBUG_INFO" + }, + { + "backtrace" : 12, + "define" : "POSTINTERFACE_API" + }, + { + "define" : "PostInterface_EXPORTS" + }, + { + "backtrace" : 4, + "define" : "QT_CORE_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_GUI_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_WIDGETS_LIB" + }, + { + "backtrace" : 13, + "define" : "UNICODE" + }, + { + "backtrace" : 13, + "define" : "_UNICODE" + } + ], + "includes" : + [ + { + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/PostInterface" + }, + { + "path" : "D:/WBFZCPP/source/FastCAE/src/PostInterface" + }, + { + "backtrace" : 0, + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/PostInterface/PostInterface_autogen/include" + }, + { + "backtrace" : 14, + "path" : "D:/WBFZCPP/source/FastCAE/src/PostInterface/.." + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtCore" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/./mkspecs/win32-msvc" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtGui" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtANGLE" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtWidgets" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/VTK/include/vtk-9.3" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "D:/WBFZCPP/source/FastCAE/extlib/Python/include" + } + ], + "language" : "CXX", + "languageStandard" : + { + "backtraces" : + [ + 4 + ], + "standard" : "11" + }, + "sourceIndexes" : + [ + 0, + 1, + 2, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71 + ] + } + ], + "dependencies" : + [ + { + "backtrace" : 4, + "id" : "Common::@29aabc9fbfb9b5406d55" + }, + { + "backtrace" : 7, + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "backtrace" : 7, + "id" : "PostRenderData::@ce9c2f9a6cca9038fdeb" + }, + { + "id" : "PostInterface_autogen_timestamp_deps::@38fb729d68510c1489c9" + }, + { + "backtrace" : 0, + "id" : "PostInterface_autogen::@38fb729d68510c1489c9" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "PostInterface::@38fb729d68510c1489c9", + "install" : + { + "destinations" : + [ + { + "backtrace" : 3, + "path" : "bin" + } + ], + "prefix" : + { + "path" : "D:/WBFZCPP/source/FastCAE/install" + } + }, + "link" : + { + "commandFragments" : + [ + { + "fragment" : "/machine:x64 /debug /INCREMENTAL", + "role" : "flags" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkGUISupportQt-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOMovie-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingOpenGL2-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingUI-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkglew-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\PythonModule.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\PostRenderData.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Widgetsd.lib", + "role" : "libraries" + }, + { + "backtrace" : 6, + "fragment" : "D:\\WBFZCPP\\source\\FastCAE\\extlib\\Python\\libs\\python37.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Guid.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingColor-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingGeneral-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingHybrid-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkInteractionStyle-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkInteractionWidgets-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingAnnotation-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingFreeType-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingVolume-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkfreetype-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonColor-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonComputationalGeometry-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonDataModel-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonExecutionModel-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonMath-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonMisc-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonSystem-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonTransforms-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkDICOMParser-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersExtraction-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersGeneral-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersGeometry-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersHybrid-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersModeling-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersSources-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersStatistics-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOImage-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOLegacy-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOXML-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOXMLParser-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingFourier-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingSources-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkParallelCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkParallelDIY-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkdoubleconversion-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkexpat-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkjpeg-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtklz4-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtklzma-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkmetaio-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkpng-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkpugixml-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtksys-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtktiff-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkzlib-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 6, + "fragment" : "Debug\\Common.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Cored.lib", + "role" : "libraries" + }, + { + "fragment" : "kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib", + "role" : "libraries" + } + ], + "language" : "CXX" + }, + "name" : "PostInterface", + "nameOnDisk" : "PostInterface.dll", + "paths" : + { + "build" : "src/PostInterface", + "source" : "src/PostInterface" + }, + "sourceGroups" : + [ + { + "name" : "Source Files", + "sourceIndexes" : + [ + 0, + 1, + 2, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71 + ] + }, + { + "name" : "Header Files", + "sourceIndexes" : + [ + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + }, + { + "name" : "", + "sourceIndexes" : + [ + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 89 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostInterface/PostInterface_autogen/mocs_compilation.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostInterface/qrc_qianfan.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostInterface/qrc_translations.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PostInterface/ui_DialogCreateCalculate.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PostInterface/ui_DialogCreateClip.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PostInterface/ui_DialogCreateISO.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PostInterface/ui_DialogCreateReflection.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PostInterface/ui_DialogCreateStreamLine.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PostInterface/ui_DialogCreateVector.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PostInterface/ui_DialogFileDirectory.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PostInterface/ui_DialogLightSetting.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PostInterface/ui_DialogRenderSetting.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PostInterface/ui_DialogRenderTitle.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PostInterface/ui_DialogSaveAnimation.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PostInterface/ui_DialogSetBackgroundColor.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PostInterface/ui_GraphWidget.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PostInterface/ui_PostInfoWidget.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostInterface/AniGlobalVar.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostInterface/AniThread.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostInterface/AnimationToolBar.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostInterface/DialogCreateCalculate.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostInterface/DialogCreateClip.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostInterface/DialogCreateISO.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostInterface/DialogCreateReflection.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostInterface/DialogCreateStreamLine.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostInterface/DialogCreateVector.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostInterface/DialogFileDirectory.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostInterface/DialogLightSetting.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostInterface/DialogRenderSetting.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostInterface/DialogRenderTitle.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostInterface/DialogSaveAnimation.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostInterface/DialogSetBackgroundColor.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostInterface/FLineCallback.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostInterface/FuncCallback.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostInterface/GenerateAnimation.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostInterface/GraphWidget.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostInterface/LineWidget.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostInterface/PostFunctionDialogBase.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostInterface/PostInfoWidget.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostInterface/PostInterfaceAPI.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostInterface/PostProcessPy.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostInterface/PostTreeWidget.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostInterface/RenderDirector.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostInterface/RenderWindowManager.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostInterface/ShearPlaneWidget.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostInterface/AniGlobalVar.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostInterface/AniThread.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostInterface/AnimationToolBar.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostInterface/DialogCreateCalculate.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostInterface/DialogCreateClip.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostInterface/DialogCreateISO.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostInterface/DialogCreateReflection.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostInterface/DialogCreateStreamLine.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostInterface/DialogCreateVector.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostInterface/DialogFileDirectory.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostInterface/DialogLightSetting.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostInterface/DialogRenderSetting.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostInterface/DialogRenderTitle.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostInterface/DialogSaveAnimation.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostInterface/DialogSetBackgroundColor.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostInterface/FLineCallback.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostInterface/FuncCallback.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostInterface/GenerateAnimation.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostInterface/GraphWidget.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostInterface/LineWidget.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostInterface/PostFunctionDialogBase.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostInterface/PostInfoWidget.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostInterface/PostProcessPy.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostInterface/PostTreeWidget.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostInterface/RenderDirector.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostInterface/RenderWindowManager.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostInterface/ShearPlaneWidget.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostInterface/PostInterface_autogen/timestamp", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/qrc/qianfan.qrc", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/qrc/translations.qrc", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PostInterface/DialogCreateCalculate.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PostInterface/DialogCreateClip.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PostInterface/DialogCreateISO.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PostInterface/DialogCreateReflection.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PostInterface/DialogCreateStreamLine.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PostInterface/DialogCreateVector.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PostInterface/DialogFileDirectory.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PostInterface/DialogLightSetting.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PostInterface/DialogRenderSetting.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PostInterface/DialogRenderTitle.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PostInterface/DialogSaveAnimation.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PostInterface/DialogSetBackgroundColor.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PostInterface/GraphWidget.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PostInterface/PostInfoWidget.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostInterface/PostInterface_autogen/timestamp.rule", + "sourceGroupIndex" : 3 + } + ], + "type" : "SHARED_LIBRARY" +} diff --git a/out/build/.cmake/api/v1/reply/target-PostInterface_autogen-Debug-1d65f102a2d63a3c451a.json b/out/build/.cmake/api/v1/reply/target-PostInterface_autogen-Debug-1d65f102a2d63a3c451a.json new file mode 100644 index 0000000..6370e32 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-PostInterface_autogen-Debug-1d65f102a2d63a3c451a.json @@ -0,0 +1,83 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/PostInterface/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "backtrace" : 0, + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "backtrace" : 0, + "id" : "PostRenderData::@ce9c2f9a6cca9038fdeb" + }, + { + "id" : "PostInterface_autogen_timestamp_deps::@38fb729d68510c1489c9" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "PostInterface_autogen::@38fb729d68510c1489c9", + "isGeneratorProvided" : true, + "name" : "PostInterface_autogen", + "paths" : + { + "build" : "src/PostInterface", + "source" : "src/PostInterface" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1, + 2 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostInterface/CMakeFiles/PostInterface_autogen", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostInterface/CMakeFiles/PostInterface_autogen.rule", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostInterface/PostInterface_autogen/timestamp.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-PostInterface_autogen_timestamp_deps-Debug-4fe15b4d2497d788318d.json b/out/build/.cmake/api/v1/reply/target-PostInterface_autogen_timestamp_deps-Debug-4fe15b4d2497d788318d.json new file mode 100644 index 0000000..f98bb84 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-PostInterface_autogen_timestamp_deps-Debug-4fe15b4d2497d788318d.json @@ -0,0 +1,71 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/PostInterface/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "id" : "PostRenderData::@ce9c2f9a6cca9038fdeb" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "PostInterface_autogen_timestamp_deps::@38fb729d68510c1489c9", + "isGeneratorProvided" : true, + "name" : "PostInterface_autogen_timestamp_deps", + "paths" : + { + "build" : "src/PostInterface", + "source" : "src/PostInterface" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostInterface/CMakeFiles/PostInterface_autogen_timestamp_deps", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostInterface/CMakeFiles/PostInterface_autogen_timestamp_deps.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-PostPlotWidget-Debug-48dff7a72d1b23e5c9d9.json b/out/build/.cmake/api/v1/reply/target-PostPlotWidget-Debug-48dff7a72d1b23e5c9d9.json new file mode 100644 index 0000000..f8beedb --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-PostPlotWidget-Debug-48dff7a72d1b23e5c9d9.json @@ -0,0 +1,497 @@ +{ + "artifacts" : + [ + { + "path" : "Debug/PostPlotWidget.dll" + }, + { + "path" : "Debug/PostPlotWidget.lib" + }, + { + "path" : "Debug/PostPlotWidget.pdb" + } + ], + "backtrace" : 1, + "backtraceGraph" : + { + "commands" : + [ + "add_library", + "install", + "target_link_libraries", + "add_dependencies", + "add_compile_options", + "add_definitions", + "target_compile_definitions", + "include_directories" + ], + "files" : + [ + "src/PostPlotWidget/CMakeLists.txt", + "src/CMakeLists.txt", + "CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 22, + "parent" : 0 + }, + { + "file" : 1 + }, + { + "command" : 1, + "file" : 1, + "line" : 58, + "parent" : 2 + }, + { + "command" : 2, + "file" : 0, + "line" : 41, + "parent" : 0 + }, + { + "command" : 3, + "file" : 0, + "line" : 49, + "parent" : 0 + }, + { + "file" : 2 + }, + { + "command" : 4, + "file" : 2, + "line" : 85, + "parent" : 6 + }, + { + "command" : 4, + "file" : 2, + "line" : 86, + "parent" : 6 + }, + { + "command" : 5, + "file" : 2, + "line" : 118, + "parent" : 6 + }, + { + "command" : 6, + "file" : 0, + "line" : 31, + "parent" : 0 + }, + { + "command" : 5, + "file" : 2, + "line" : 83, + "parent" : 6 + }, + { + "command" : 7, + "file" : 0, + "line" : 4, + "parent" : 0 + } + ] + }, + "compileGroups" : + [ + { + "compileCommandFragments" : + [ + { + "fragment" : "-DQT_QML_DEBUG /Zi /Ob0 /Od /RTC1 -MDd" + }, + { + "backtrace" : 7, + "fragment" : "/utf-8" + }, + { + "backtrace" : 8, + "fragment" : "/MDd" + } + ], + "defines" : + [ + { + "backtrace" : 9, + "define" : "OUTPUT_DEBUG_INFO" + }, + { + "backtrace" : 10, + "define" : "POSTPLOTWIDGET_API" + }, + { + "define" : "PostPlotWidget_EXPORTS" + }, + { + "backtrace" : 4, + "define" : "QT_CORE_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_GUI_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_OPENGL_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_PRINTSUPPORT_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_SVG_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_WIDGETS_LIB" + }, + { + "backtrace" : 4, + "define" : "QWT_DLL" + }, + { + "backtrace" : 11, + "define" : "UNICODE" + }, + { + "backtrace" : 11, + "define" : "_UNICODE" + } + ], + "includes" : + [ + { + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/PostPlotWidget" + }, + { + "path" : "D:/WBFZCPP/source/FastCAE/src/PostPlotWidget" + }, + { + "backtrace" : 0, + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/PostPlotWidget/PostPlotWidget_autogen/include" + }, + { + "backtrace" : 12, + "path" : "D:/WBFZCPP/source/FastCAE/src/PostPlotWidget/.." + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtCore" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/./mkspecs/win32-msvc" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtGui" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtANGLE" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtWidgets" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtOpenGL" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtSvg" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtPrintSupport" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qwt/include" + } + ], + "language" : "CXX", + "languageStandard" : + { + "backtraces" : + [ + 4 + ], + "standard" : "11" + }, + "sourceIndexes" : + [ + 0, + 8, + 9, + 10, + 11 + ] + } + ], + "dependencies" : + [ + { + "backtrace" : 5, + "id" : "PostCurveDataManager::@1562c6ae2d37fb33544b" + }, + { + "id" : "PostPlotWidget_autogen_timestamp_deps::@d1bc8a76442dff50f241" + }, + { + "backtrace" : 0, + "id" : "PostPlotWidget_autogen::@d1bc8a76442dff50f241" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "PostPlotWidget::@d1bc8a76442dff50f241", + "install" : + { + "destinations" : + [ + { + "backtrace" : 3, + "path" : "bin" + } + ], + "prefix" : + { + "path" : "D:/WBFZCPP/source/FastCAE/install" + } + }, + "link" : + { + "commandFragments" : + [ + { + "fragment" : "/machine:x64 /debug /INCREMENTAL", + "role" : "flags" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qwt\\lib\\qwtd.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\PostCurveDataManager.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5PrintSupportd.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qwt\\lib\\qwtd.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5OpenGLd.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Svgd.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Widgetsd.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Guid.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Cored.lib", + "role" : "libraries" + }, + { + "fragment" : "kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib", + "role" : "libraries" + } + ], + "language" : "CXX" + }, + "name" : "PostPlotWidget", + "nameOnDisk" : "PostPlotWidget.dll", + "paths" : + { + "build" : "src/PostPlotWidget", + "source" : "src/PostPlotWidget" + }, + "sourceGroups" : + [ + { + "name" : "Source Files", + "sourceIndexes" : + [ + 0, + 8, + 9, + 10, + 11 + ] + }, + { + "name" : "Header Files", + "sourceIndexes" : + [ + 1, + 2, + 3, + 4, + 5, + 6, + 7 + ] + }, + { + "name" : "", + "sourceIndexes" : + [ + 12, + 13, + 14 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 15 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostPlotWidget/PostPlotWidget_autogen/mocs_compilation.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PostPlotWidget/ui_PlotMainWidget.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PostPlotWidget/ui_PropertyWidget.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostPlotWidget/PlotMainWidget.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostPlotWidget/PlotTreeWidget.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostPlotWidget/PlotWidget.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostPlotWidget/PostPlotWidgetAPI.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostPlotWidget/PropertyWidget.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostPlotWidget/PlotMainWidget.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostPlotWidget/PlotTreeWidget.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostPlotWidget/PlotWidget.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostPlotWidget/PropertyWidget.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostPlotWidget/PostPlotWidget_autogen/timestamp", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PostPlotWidget/PlotMainWidget.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PostPlotWidget/PropertyWidget.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostPlotWidget/PostPlotWidget_autogen/timestamp.rule", + "sourceGroupIndex" : 3 + } + ], + "type" : "SHARED_LIBRARY" +} diff --git a/out/build/.cmake/api/v1/reply/target-PostPlotWidget_autogen-Debug-647111ef80ab4cde3314.json b/out/build/.cmake/api/v1/reply/target-PostPlotWidget_autogen-Debug-647111ef80ab4cde3314.json new file mode 100644 index 0000000..c56cd01 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-PostPlotWidget_autogen-Debug-647111ef80ab4cde3314.json @@ -0,0 +1,79 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/PostPlotWidget/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "backtrace" : 0, + "id" : "PostCurveDataManager::@1562c6ae2d37fb33544b" + }, + { + "id" : "PostPlotWidget_autogen_timestamp_deps::@d1bc8a76442dff50f241" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "PostPlotWidget_autogen::@d1bc8a76442dff50f241", + "isGeneratorProvided" : true, + "name" : "PostPlotWidget_autogen", + "paths" : + { + "build" : "src/PostPlotWidget", + "source" : "src/PostPlotWidget" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1, + 2 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostPlotWidget/CMakeFiles/PostPlotWidget_autogen", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostPlotWidget/CMakeFiles/PostPlotWidget_autogen.rule", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostPlotWidget/PostPlotWidget_autogen/timestamp.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-PostPlotWidget_autogen_timestamp_deps-Debug-02e10c43fac702728a9a.json b/out/build/.cmake/api/v1/reply/target-PostPlotWidget_autogen_timestamp_deps-Debug-02e10c43fac702728a9a.json new file mode 100644 index 0000000..cd7f825 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-PostPlotWidget_autogen_timestamp_deps-Debug-02e10c43fac702728a9a.json @@ -0,0 +1,68 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/PostPlotWidget/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "id" : "PostCurveDataManager::@1562c6ae2d37fb33544b" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "PostPlotWidget_autogen_timestamp_deps::@d1bc8a76442dff50f241", + "isGeneratorProvided" : true, + "name" : "PostPlotWidget_autogen_timestamp_deps", + "paths" : + { + "build" : "src/PostPlotWidget", + "source" : "src/PostPlotWidget" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostPlotWidget/CMakeFiles/PostPlotWidget_autogen_timestamp_deps", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostPlotWidget/CMakeFiles/PostPlotWidget_autogen_timestamp_deps.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-PostRenderData-Debug-9bc3e88ef91e18f61eca.json b/out/build/.cmake/api/v1/reply/target-PostRenderData-Debug-9bc3e88ef91e18f61eca.json new file mode 100644 index 0000000..875bdb5 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-PostRenderData-Debug-9bc3e88ef91e18f61eca.json @@ -0,0 +1,830 @@ +{ + "artifacts" : + [ + { + "path" : "Debug/PostRenderData.dll" + }, + { + "path" : "Debug/PostRenderData.lib" + }, + { + "path" : "Debug/PostRenderData.pdb" + } + ], + "backtrace" : 1, + "backtraceGraph" : + { + "commands" : + [ + "add_library", + "install", + "target_link_libraries", + "add_dependencies", + "add_compile_options", + "add_definitions", + "target_compile_definitions", + "include_directories" + ], + "files" : + [ + "src/PostRenderData/CMakeLists.txt", + "src/CMakeLists.txt", + "CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 20, + "parent" : 0 + }, + { + "file" : 1 + }, + { + "command" : 1, + "file" : 1, + "line" : 58, + "parent" : 2 + }, + { + "command" : 2, + "file" : 0, + "line" : 37, + "parent" : 0 + }, + { + "command" : 3, + "file" : 0, + "line" : 45, + "parent" : 0 + }, + { + "file" : 2 + }, + { + "command" : 4, + "file" : 2, + "line" : 85, + "parent" : 6 + }, + { + "command" : 4, + "file" : 2, + "line" : 86, + "parent" : 6 + }, + { + "command" : 5, + "file" : 2, + "line" : 118, + "parent" : 6 + }, + { + "command" : 6, + "file" : 0, + "line" : 28, + "parent" : 0 + }, + { + "command" : 5, + "file" : 2, + "line" : 83, + "parent" : 6 + }, + { + "command" : 7, + "file" : 0, + "line" : 4, + "parent" : 0 + } + ] + }, + "compileGroups" : + [ + { + "compileCommandFragments" : + [ + { + "fragment" : "-DQT_QML_DEBUG /Zi /Ob0 /Od /RTC1 -MDd" + }, + { + "backtrace" : 7, + "fragment" : "/utf-8" + }, + { + "backtrace" : 8, + "fragment" : "/MDd" + } + ], + "defines" : + [ + { + "backtrace" : 9, + "define" : "OUTPUT_DEBUG_INFO" + }, + { + "backtrace" : 10, + "define" : "POSTRENDERDATA_API" + }, + { + "define" : "PostRenderData_EXPORTS" + }, + { + "backtrace" : 4, + "define" : "QT_CORE_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_GUI_LIB" + }, + { + "backtrace" : 11, + "define" : "UNICODE" + }, + { + "backtrace" : 11, + "define" : "_UNICODE" + } + ], + "includes" : + [ + { + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/PostRenderData" + }, + { + "path" : "D:/WBFZCPP/source/FastCAE/src/PostRenderData" + }, + { + "backtrace" : 0, + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/PostRenderData/PostRenderData_autogen/include" + }, + { + "backtrace" : 12, + "path" : "D:/WBFZCPP/source/FastCAE/src/PostRenderData/.." + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtCore" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/./mkspecs/win32-msvc" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtGui" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtANGLE" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/VTK/include/vtk-9.3" + } + ], + "language" : "CXX", + "languageStandard" : + { + "backtraces" : + [ + 4 + ], + "standard" : "11" + }, + "sourceIndexes" : + [ + 0, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31 + ] + } + ], + "dependencies" : + [ + { + "backtrace" : 5, + "id" : "PostAlgorithm::@d527967401306b818905" + }, + { + "id" : "PostRenderData_autogen_timestamp_deps::@ce9c2f9a6cca9038fdeb" + }, + { + "backtrace" : 0, + "id" : "PostRenderData_autogen::@ce9c2f9a6cca9038fdeb" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "PostRenderData::@ce9c2f9a6cca9038fdeb", + "install" : + { + "destinations" : + [ + { + "backtrace" : 3, + "path" : "bin" + } + ], + "prefix" : + { + "path" : "D:/WBFZCPP/source/FastCAE/install" + } + }, + "link" : + { + "commandFragments" : + [ + { + "fragment" : "/machine:x64 /debug /INCREMENTAL", + "role" : "flags" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Guid.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersFlowPaths-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingColor-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingGeneral-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingHybrid-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkInteractionStyle-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkInteractionWidgets-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingAnnotation-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingFreeType-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingVolume-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkfreetype-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\PostAlgorithm.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonColor-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonComputationalGeometry-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonDataModel-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonExecutionModel-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonMath-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonMisc-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonSystem-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonTransforms-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkDICOMParser-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersExtraction-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersGeneral-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersGeometry-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersHybrid-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersModeling-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersParallel-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersSources-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersStatistics-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkFiltersTexture-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOGeometry-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOImage-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOLegacy-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOParallel-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOXML-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkIOXMLParser-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingFourier-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkImagingSources-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkParallelCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkParallelDIY-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkRenderingCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkdoubleconversion-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkexpat-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkjpeg-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkjsoncpp-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtklz4-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtklzma-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkmetaio-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkpng-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkpugixml-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtksys-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtktiff-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkzlib-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Cored.lib", + "role" : "libraries" + }, + { + "fragment" : "kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib", + "role" : "libraries" + } + ], + "language" : "CXX" + }, + "name" : "PostRenderData", + "nameOnDisk" : "PostRenderData.dll", + "paths" : + { + "build" : "src/PostRenderData", + "source" : "src/PostRenderData" + }, + "sourceGroups" : + [ + { + "name" : "Source Files", + "sourceIndexes" : + [ + 0, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31 + ] + }, + { + "name" : "Header Files", + "sourceIndexes" : + [ + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16 + ] + }, + { + "name" : "", + "sourceIndexes" : + [ + 32 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 33 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostRenderData/PostRenderData_autogen/mocs_compilation.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "path" : "src/PostRenderData/CalculateRenderDataAlg.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostRenderData/ClipRenderDataAlg.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostRenderData/GlyphingRenderDataAlg.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostRenderData/ISOCurveRenderDataAlg.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostRenderData/ISORenderDataAlg.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostRenderData/PostRenderDataAPI.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostRenderData/ReflectionRenderDataAlg.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostRenderData/RenderDataAlgorithm.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostRenderData/RenderDataImportSteady.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostRenderData/RenderDataImportUnSteady.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostRenderData/RenderDataManager.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostRenderData/RenderDataObject.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostRenderData/RenderProperty.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostRenderData/SimplifyRenderDataAlg.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostRenderData/SliceRenderDataAlg.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostRenderData/StreamLineRenderDataAlg.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostRenderData/CalculateRenderDataAlg.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostRenderData/ClipRenderDataAlg.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostRenderData/GlyphingRenderDataAlg.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostRenderData/ISOCurveRenderDataAlg.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostRenderData/ISORenderDataAlg.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostRenderData/ReflectionRenderDataAlg.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostRenderData/RenderDataAlgorithm.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostRenderData/RenderDataImportSteady.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostRenderData/RenderDataImportUnSteady.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostRenderData/RenderDataManager.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostRenderData/RenderDataObject.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostRenderData/RenderProperty.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostRenderData/SimplifyRenderDataAlg.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostRenderData/SliceRenderDataAlg.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostRenderData/StreamLineRenderDataAlg.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostRenderData/PostRenderData_autogen/timestamp", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostRenderData/PostRenderData_autogen/timestamp.rule", + "sourceGroupIndex" : 3 + } + ], + "type" : "SHARED_LIBRARY" +} diff --git a/out/build/.cmake/api/v1/reply/target-PostRenderData_autogen-Debug-5667dc414f67aff32c20.json b/out/build/.cmake/api/v1/reply/target-PostRenderData_autogen-Debug-5667dc414f67aff32c20.json new file mode 100644 index 0000000..2919f7a --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-PostRenderData_autogen-Debug-5667dc414f67aff32c20.json @@ -0,0 +1,79 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/PostRenderData/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "backtrace" : 0, + "id" : "PostAlgorithm::@d527967401306b818905" + }, + { + "id" : "PostRenderData_autogen_timestamp_deps::@ce9c2f9a6cca9038fdeb" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "PostRenderData_autogen::@ce9c2f9a6cca9038fdeb", + "isGeneratorProvided" : true, + "name" : "PostRenderData_autogen", + "paths" : + { + "build" : "src/PostRenderData", + "source" : "src/PostRenderData" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1, + 2 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostRenderData/CMakeFiles/PostRenderData_autogen", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostRenderData/CMakeFiles/PostRenderData_autogen.rule", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostRenderData/PostRenderData_autogen/timestamp.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-PostRenderData_autogen_timestamp_deps-Debug-9674524f44927d617d04.json b/out/build/.cmake/api/v1/reply/target-PostRenderData_autogen_timestamp_deps-Debug-9674524f44927d617d04.json new file mode 100644 index 0000000..024da88 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-PostRenderData_autogen_timestamp_deps-Debug-9674524f44927d617d04.json @@ -0,0 +1,68 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/PostRenderData/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "id" : "PostAlgorithm::@d527967401306b818905" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "PostRenderData_autogen_timestamp_deps::@ce9c2f9a6cca9038fdeb", + "isGeneratorProvided" : true, + "name" : "PostRenderData_autogen_timestamp_deps", + "paths" : + { + "build" : "src/PostRenderData", + "source" : "src/PostRenderData" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostRenderData/CMakeFiles/PostRenderData_autogen_timestamp_deps", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostRenderData/CMakeFiles/PostRenderData_autogen_timestamp_deps.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-PostWidgets-Debug-06d84294f779838e50f9.json b/out/build/.cmake/api/v1/reply/target-PostWidgets-Debug-06d84294f779838e50f9.json new file mode 100644 index 0000000..b01e5ea --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-PostWidgets-Debug-06d84294f779838e50f9.json @@ -0,0 +1,763 @@ +{ + "artifacts" : + [ + { + "path" : "Debug/PostWidgets.dll" + }, + { + "path" : "Debug/PostWidgets.lib" + }, + { + "path" : "Debug/PostWidgets.pdb" + } + ], + "backtrace" : 1, + "backtraceGraph" : + { + "commands" : + [ + "add_library", + "install", + "target_link_libraries", + "set_property", + "find_package", + "add_dependencies", + "add_compile_options", + "add_definitions", + "target_compile_definitions", + "include_directories" + ], + "files" : + [ + "src/PostWidgets/CMakeLists.txt", + "src/CMakeLists.txt", + "src/PythonModule/CMakeLists.txt", + "cmake/FindQwt.cmake", + "CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 29, + "parent" : 0 + }, + { + "file" : 1 + }, + { + "command" : 1, + "file" : 1, + "line" : 58, + "parent" : 2 + }, + { + "command" : 2, + "file" : 0, + "line" : 52, + "parent" : 0 + }, + { + "file" : 2 + }, + { + "command" : 2, + "file" : 2, + "line" : 44, + "parent" : 5 + }, + { + "file" : 4 + }, + { + "command" : 4, + "file" : 4, + "line" : 189, + "parent" : 7 + }, + { + "file" : 3, + "parent" : 8 + }, + { + "command" : 3, + "file" : 3, + "line" : 100, + "parent" : 9 + }, + { + "command" : 3, + "file" : 3, + "line" : 95, + "parent" : 9 + }, + { + "command" : 5, + "file" : 0, + "line" : 60, + "parent" : 0 + }, + { + "command" : 6, + "file" : 4, + "line" : 85, + "parent" : 7 + }, + { + "command" : 6, + "file" : 4, + "line" : 86, + "parent" : 7 + }, + { + "command" : 7, + "file" : 4, + "line" : 118, + "parent" : 7 + }, + { + "command" : 8, + "file" : 0, + "line" : 39, + "parent" : 0 + }, + { + "command" : 7, + "file" : 4, + "line" : 83, + "parent" : 7 + }, + { + "command" : 9, + "file" : 0, + "line" : 4, + "parent" : 0 + } + ] + }, + "compileGroups" : + [ + { + "compileCommandFragments" : + [ + { + "fragment" : "-DQT_QML_DEBUG /Zi /Ob0 /Od /RTC1 -MDd" + }, + { + "backtrace" : 13, + "fragment" : "/utf-8" + }, + { + "backtrace" : 14, + "fragment" : "/MDd" + } + ], + "defines" : + [ + { + "backtrace" : 15, + "define" : "OUTPUT_DEBUG_INFO" + }, + { + "backtrace" : 16, + "define" : "POSTWIDGETS_API" + }, + { + "define" : "PostWidgets_EXPORTS" + }, + { + "backtrace" : 4, + "define" : "QT_CORE_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_GUI_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_OPENGL_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_PRINTSUPPORT_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_SVG_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_WIDGETS_LIB" + }, + { + "backtrace" : 4, + "define" : "QWT_DLL" + }, + { + "backtrace" : 17, + "define" : "UNICODE" + }, + { + "backtrace" : 17, + "define" : "_UNICODE" + } + ], + "includes" : + [ + { + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/PostWidgets" + }, + { + "path" : "D:/WBFZCPP/source/FastCAE/src/PostWidgets" + }, + { + "backtrace" : 0, + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/PostWidgets/PostWidgets_autogen/include" + }, + { + "backtrace" : 18, + "path" : "D:/WBFZCPP/source/FastCAE/src/PostWidgets/.." + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtCore" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/./mkspecs/win32-msvc" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtGui" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtANGLE" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtWidgets" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/VTK/include/vtk-9.3" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qwt/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtSvg" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtOpenGL" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtPrintSupport" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "D:/WBFZCPP/source/FastCAE/extlib/Python/include" + } + ], + "language" : "CXX", + "languageStandard" : + { + "backtraces" : + [ + 4 + ], + "standard" : "11" + }, + "sourceIndexes" : + [ + 0, + 1, + 2, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24 + ] + } + ], + "dependencies" : + [ + { + "backtrace" : 4, + "id" : "Common::@29aabc9fbfb9b5406d55" + }, + { + "backtrace" : 12, + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "backtrace" : 12, + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "backtrace" : 12, + "id" : "ConfigOptions::@1c9d458e4038aca43955" + }, + { + "backtrace" : 12, + "id" : "ModelData::@8a6b2d9535e8b6cb6800" + }, + { + "backtrace" : 12, + "id" : "PostRenderData::@ce9c2f9a6cca9038fdeb" + }, + { + "backtrace" : 12, + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + }, + { + "backtrace" : 12, + "id" : "PostCurveDataManager::@1562c6ae2d37fb33544b" + }, + { + "backtrace" : 12, + "id" : "PostInterface::@38fb729d68510c1489c9" + }, + { + "backtrace" : 12, + "id" : "PostPlotWidget::@d1bc8a76442dff50f241" + }, + { + "id" : "PostWidgets_autogen_timestamp_deps::@93a5592897f957e6fa57" + }, + { + "backtrace" : 0, + "id" : "PostWidgets_autogen::@93a5592897f957e6fa57" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "PostWidgets::@93a5592897f957e6fa57", + "install" : + { + "destinations" : + [ + { + "backtrace" : 3, + "path" : "bin" + } + ], + "prefix" : + { + "path" : "D:/WBFZCPP/source/FastCAE/install" + } + }, + "link" : + { + "commandFragments" : + [ + { + "fragment" : "/machine:x64 /debug /INCREMENTAL", + "role" : "flags" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ModuleBase.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\PostInterface.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\PostPlotWidget.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\PostCurveDataManager.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ModelData.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ConfigOptions.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Settings.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\PythonModule.lib", + "role" : "libraries" + }, + { + "backtrace" : 6, + "fragment" : "D:\\WBFZCPP\\source\\FastCAE\\extlib\\Python\\libs\\python37.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\PostRenderData.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtkCommonCore-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\VTK\\lib\\vtksys-9.3d.lib", + "role" : "libraries" + }, + { + "backtrace" : 6, + "fragment" : "Debug\\Common.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qwt\\lib\\qwtd.lib", + "role" : "libraries" + }, + { + "backtrace" : 10, + "fragment" : "C:\\Qwt\\lib\\qwtd.lib", + "role" : "libraries" + }, + { + "backtrace" : 10, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5PrintSupportd.lib", + "role" : "libraries" + }, + { + "backtrace" : 11, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Svgd.lib", + "role" : "libraries" + }, + { + "backtrace" : 11, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5OpenGLd.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Widgetsd.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Guid.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Cored.lib", + "role" : "libraries" + }, + { + "fragment" : "kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib", + "role" : "libraries" + } + ], + "language" : "CXX" + }, + "name" : "PostWidgets", + "nameOnDisk" : "PostWidgets.dll", + "paths" : + { + "build" : "src/PostWidgets", + "source" : "src/PostWidgets" + }, + "sourceGroups" : + [ + { + "name" : "Source Files", + "sourceIndexes" : + [ + 0, + 1, + 2, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24 + ] + }, + { + "name" : "Header Files", + "sourceIndexes" : + [ + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16 + ] + }, + { + "name" : "", + "sourceIndexes" : + [ + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 33 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostWidgets/PostWidgets_autogen/mocs_compilation.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostWidgets/qrc_qianfan.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostWidgets/qrc_translations.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PostWidgets/ui_Post2DInterface.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PostWidgets/ui_Post2DWidget.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PostWidgets/ui_Post3DInterface.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PostWidgets/ui_Post3DWidget.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/PostWidgets/ui_RealTimeWindowBase.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostWidgets/Post2DInterface.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostWidgets/Post2DWidget.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostWidgets/Post3DInterface.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostWidgets/Post3DWidget.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostWidgets/PostCustomPlot.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostWidgets/PostWidgetsAPI.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostWidgets/PostWindowBase.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostWidgets/RealTimeMonitor.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PostWidgets/RealTimeWindowBase.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostWidgets/Post2DInterface.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostWidgets/Post2DWidget.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostWidgets/Post3DInterface.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostWidgets/Post3DWidget.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostWidgets/PostCustomPlot.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostWidgets/PostWindowBase.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostWidgets/RealTimeMonitor.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PostWidgets/RealTimeWindowBase.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostWidgets/PostWidgets_autogen/timestamp", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/qrc/qianfan.qrc", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/qrc/translations.qrc", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PostWidgets/Post2DInterface.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PostWidgets/Post2DWidget.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PostWidgets/Post3DInterface.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PostWidgets/Post3DWidget.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/PostWidgets/RealTimeWindowBase.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostWidgets/PostWidgets_autogen/timestamp.rule", + "sourceGroupIndex" : 3 + } + ], + "type" : "SHARED_LIBRARY" +} diff --git a/out/build/.cmake/api/v1/reply/target-PostWidgets_autogen-Debug-df90bd2e74782b99833d.json b/out/build/.cmake/api/v1/reply/target-PostWidgets_autogen-Debug-df90bd2e74782b99833d.json new file mode 100644 index 0000000..f8e80c8 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-PostWidgets_autogen-Debug-df90bd2e74782b99833d.json @@ -0,0 +1,111 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/PostWidgets/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "backtrace" : 0, + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "backtrace" : 0, + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "backtrace" : 0, + "id" : "ConfigOptions::@1c9d458e4038aca43955" + }, + { + "backtrace" : 0, + "id" : "ModelData::@8a6b2d9535e8b6cb6800" + }, + { + "backtrace" : 0, + "id" : "PostRenderData::@ce9c2f9a6cca9038fdeb" + }, + { + "backtrace" : 0, + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + }, + { + "backtrace" : 0, + "id" : "PostCurveDataManager::@1562c6ae2d37fb33544b" + }, + { + "backtrace" : 0, + "id" : "PostInterface::@38fb729d68510c1489c9" + }, + { + "backtrace" : 0, + "id" : "PostPlotWidget::@d1bc8a76442dff50f241" + }, + { + "id" : "PostWidgets_autogen_timestamp_deps::@93a5592897f957e6fa57" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "PostWidgets_autogen::@93a5592897f957e6fa57", + "isGeneratorProvided" : true, + "name" : "PostWidgets_autogen", + "paths" : + { + "build" : "src/PostWidgets", + "source" : "src/PostWidgets" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1, + 2 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostWidgets/CMakeFiles/PostWidgets_autogen", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostWidgets/CMakeFiles/PostWidgets_autogen.rule", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostWidgets/PostWidgets_autogen/timestamp.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-PostWidgets_autogen_timestamp_deps-Debug-fae109ac3554477c847b.json b/out/build/.cmake/api/v1/reply/target-PostWidgets_autogen_timestamp_deps-Debug-fae109ac3554477c847b.json new file mode 100644 index 0000000..953a417 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-PostWidgets_autogen_timestamp_deps-Debug-fae109ac3554477c847b.json @@ -0,0 +1,92 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/PostWidgets/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "id" : "ConfigOptions::@1c9d458e4038aca43955" + }, + { + "id" : "ModelData::@8a6b2d9535e8b6cb6800" + }, + { + "id" : "PostRenderData::@ce9c2f9a6cca9038fdeb" + }, + { + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + }, + { + "id" : "PostCurveDataManager::@1562c6ae2d37fb33544b" + }, + { + "id" : "PostInterface::@38fb729d68510c1489c9" + }, + { + "id" : "PostPlotWidget::@d1bc8a76442dff50f241" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "PostWidgets_autogen_timestamp_deps::@93a5592897f957e6fa57", + "isGeneratorProvided" : true, + "name" : "PostWidgets_autogen_timestamp_deps", + "paths" : + { + "build" : "src/PostWidgets", + "source" : "src/PostWidgets" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostWidgets/CMakeFiles/PostWidgets_autogen_timestamp_deps", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PostWidgets/CMakeFiles/PostWidgets_autogen_timestamp_deps.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-ProjectTree-Debug-ae655f9358b07b0db3a5.json b/out/build/.cmake/api/v1/reply/target-ProjectTree-Debug-ae655f9358b07b0db3a5.json new file mode 100644 index 0000000..e1d758f --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-ProjectTree-Debug-ae655f9358b07b0db3a5.json @@ -0,0 +1,717 @@ +{ + "artifacts" : + [ + { + "path" : "Debug/ProjectTree.dll" + }, + { + "path" : "Debug/ProjectTree.lib" + }, + { + "path" : "Debug/ProjectTree.pdb" + } + ], + "backtrace" : 1, + "backtraceGraph" : + { + "commands" : + [ + "add_library", + "install", + "target_link_libraries", + "set_property", + "find_package", + "add_dependencies", + "add_compile_options", + "add_definitions", + "target_compile_definitions", + "include_directories" + ], + "files" : + [ + "src/ProjectTree/CMakeLists.txt", + "src/CMakeLists.txt", + "src/PythonModule/CMakeLists.txt", + "cmake/FindQwt.cmake", + "CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 29, + "parent" : 0 + }, + { + "file" : 1 + }, + { + "command" : 1, + "file" : 1, + "line" : 58, + "parent" : 2 + }, + { + "command" : 2, + "file" : 0, + "line" : 51, + "parent" : 0 + }, + { + "file" : 2 + }, + { + "command" : 2, + "file" : 2, + "line" : 44, + "parent" : 5 + }, + { + "file" : 4 + }, + { + "command" : 4, + "file" : 4, + "line" : 189, + "parent" : 7 + }, + { + "file" : 3, + "parent" : 8 + }, + { + "command" : 3, + "file" : 3, + "line" : 100, + "parent" : 9 + }, + { + "command" : 3, + "file" : 3, + "line" : 95, + "parent" : 9 + }, + { + "command" : 5, + "file" : 0, + "line" : 59, + "parent" : 0 + }, + { + "command" : 6, + "file" : 4, + "line" : 85, + "parent" : 7 + }, + { + "command" : 6, + "file" : 4, + "line" : 86, + "parent" : 7 + }, + { + "command" : 7, + "file" : 4, + "line" : 118, + "parent" : 7 + }, + { + "command" : 8, + "file" : 0, + "line" : 39, + "parent" : 0 + }, + { + "command" : 7, + "file" : 4, + "line" : 83, + "parent" : 7 + }, + { + "command" : 9, + "file" : 0, + "line" : 4, + "parent" : 0 + } + ] + }, + "compileGroups" : + [ + { + "compileCommandFragments" : + [ + { + "fragment" : "-DQT_QML_DEBUG /Zi /Ob0 /Od /RTC1 -MDd" + }, + { + "backtrace" : 13, + "fragment" : "/utf-8" + }, + { + "backtrace" : 14, + "fragment" : "/MDd" + } + ], + "defines" : + [ + { + "backtrace" : 15, + "define" : "OUTPUT_DEBUG_INFO" + }, + { + "backtrace" : 16, + "define" : "PROJECTTREE_API" + }, + { + "define" : "ProjectTree_EXPORTS" + }, + { + "backtrace" : 4, + "define" : "QT_CORE_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_GUI_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_OPENGL_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_PRINTSUPPORT_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_SVG_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_WIDGETS_LIB" + }, + { + "backtrace" : 4, + "define" : "QWT_DLL" + }, + { + "backtrace" : 17, + "define" : "UNICODE" + }, + { + "backtrace" : 17, + "define" : "_UNICODE" + } + ], + "includes" : + [ + { + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/ProjectTree" + }, + { + "path" : "D:/WBFZCPP/source/FastCAE/src/ProjectTree" + }, + { + "backtrace" : 0, + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/ProjectTree/ProjectTree_autogen/include" + }, + { + "backtrace" : 18, + "path" : "D:/WBFZCPP/source/FastCAE/src/ProjectTree/.." + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtCore" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/./mkspecs/win32-msvc" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtGui" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtANGLE" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtWidgets" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qwt/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtSvg" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtOpenGL" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtPrintSupport" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "D:/WBFZCPP/source/FastCAE/extlib/Python/include" + } + ], + "language" : "CXX", + "languageStandard" : + { + "backtraces" : + [ + 4 + ], + "standard" : "11" + }, + "sourceIndexes" : + [ + 0, + 1, + 2, + 12, + 13, + 14, + 15, + 16, + 17 + ] + } + ], + "dependencies" : + [ + { + "backtrace" : 4, + "id" : "Common::@29aabc9fbfb9b5406d55" + }, + { + "backtrace" : 12, + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "backtrace" : 12, + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "backtrace" : 12, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "backtrace" : 12, + "id" : "MeshData::@2f0f676dafab302b2d20" + }, + { + "backtrace" : 12, + "id" : "SelfDefObject::@17d93127ede5f3b478ed" + }, + { + "backtrace" : 12, + "id" : "Material::@05d68cd248c3246409d7" + }, + { + "backtrace" : 12, + "id" : "ConfigOptions::@1c9d458e4038aca43955" + }, + { + "backtrace" : 12, + "id" : "BCBase::@baf13bdd6bef809f2182" + }, + { + "backtrace" : 12, + "id" : "Geometry::@b7b2e4191bc961e9afba" + }, + { + "backtrace" : 12, + "id" : "ModelData::@8a6b2d9535e8b6cb6800" + }, + { + "backtrace" : 12, + "id" : "ParaClassFactory::@d0ebb167002da5b45d84" + }, + { + "backtrace" : 12, + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + }, + { + "backtrace" : 12, + "id" : "PostWidgets::@93a5592897f957e6fa57" + }, + { + "id" : "ProjectTree_autogen_timestamp_deps::@43c6c7ebae2b88a99cdb" + }, + { + "backtrace" : 0, + "id" : "ProjectTree_autogen::@43c6c7ebae2b88a99cdb" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "ProjectTree::@43c6c7ebae2b88a99cdb", + "install" : + { + "destinations" : + [ + { + "backtrace" : 3, + "path" : "bin" + } + ], + "prefix" : + { + "path" : "D:/WBFZCPP/source/FastCAE/install" + } + }, + "link" : + { + "commandFragments" : + [ + { + "fragment" : "/machine:x64 /debug /INCREMENTAL", + "role" : "flags" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\PostWidgets.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ModuleBase.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ModelData.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ParaClassFactory.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ConfigOptions.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\BCBase.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Geometry.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\MeshData.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Material.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\SelfDefObject.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Settings.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\DataProperty.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\PythonModule.lib", + "role" : "libraries" + }, + { + "backtrace" : 6, + "fragment" : "D:\\WBFZCPP\\source\\FastCAE\\extlib\\Python\\libs\\python37.lib", + "role" : "libraries" + }, + { + "backtrace" : 6, + "fragment" : "Debug\\Common.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qwt\\lib\\qwtd.lib", + "role" : "libraries" + }, + { + "backtrace" : 10, + "fragment" : "C:\\Qwt\\lib\\qwtd.lib", + "role" : "libraries" + }, + { + "backtrace" : 10, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5PrintSupportd.lib", + "role" : "libraries" + }, + { + "backtrace" : 11, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Svgd.lib", + "role" : "libraries" + }, + { + "backtrace" : 11, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5OpenGLd.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Widgetsd.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Guid.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Cored.lib", + "role" : "libraries" + }, + { + "fragment" : "kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib", + "role" : "libraries" + } + ], + "language" : "CXX" + }, + "name" : "ProjectTree", + "nameOnDisk" : "ProjectTree.dll", + "paths" : + { + "build" : "src/ProjectTree", + "source" : "src/ProjectTree" + }, + "sourceGroups" : + [ + { + "name" : "Source Files", + "sourceIndexes" : + [ + 0, + 1, + 2, + 12, + 13, + 14, + 15, + 16, + 17 + ] + }, + { + "name" : "Header Files", + "sourceIndexes" : + [ + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11 + ] + }, + { + "name" : "", + "sourceIndexes" : + [ + 18, + 19, + 20, + 21, + 22 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 23 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/ProjectTree/ProjectTree_autogen/mocs_compilation.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/ProjectTree/qrc_qianfan.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/ProjectTree/qrc_translations.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/ProjectTree/ui_DialogAddBC.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/ProjectTree/ui_DialogRemoveReport.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ProjectTree/DialogAddBC.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ProjectTree/DialogAssignMaterial.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ProjectTree/DialogImport.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ProjectTree/DialogRemoveReport.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ProjectTree/ProjectTreeAPI.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ProjectTree/ProjectTreeWithBasicNode.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ProjectTree/projectTreeBase.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ProjectTree/DialogAddBC.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ProjectTree/DialogAssignMaterial.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ProjectTree/DialogImport.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ProjectTree/DialogRemoveReport.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ProjectTree/ProjectTreeWithBasicNode.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ProjectTree/projectTreeBase.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/ProjectTree/ProjectTree_autogen/timestamp", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/qrc/qianfan.qrc", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/qrc/translations.qrc", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/ProjectTree/DialogAddBC.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/ProjectTree/DialogRemoveReport.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/ProjectTree/ProjectTree_autogen/timestamp.rule", + "sourceGroupIndex" : 3 + } + ], + "type" : "SHARED_LIBRARY" +} diff --git a/out/build/.cmake/api/v1/reply/target-ProjectTreeExtend-Debug-c97d2c16aa8719582815.json b/out/build/.cmake/api/v1/reply/target-ProjectTreeExtend-Debug-c97d2c16aa8719582815.json new file mode 100644 index 0000000..e91e8b9 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-ProjectTreeExtend-Debug-c97d2c16aa8719582815.json @@ -0,0 +1,611 @@ +{ + "artifacts" : + [ + { + "path" : "Debug/ProjectTreeExtend.dll" + }, + { + "path" : "Debug/ProjectTreeExtend.lib" + }, + { + "path" : "Debug/ProjectTreeExtend.pdb" + } + ], + "backtrace" : 1, + "backtraceGraph" : + { + "commands" : + [ + "add_library", + "install", + "target_link_libraries", + "set_property", + "find_package", + "add_dependencies", + "add_compile_options", + "add_definitions", + "target_compile_definitions", + "include_directories" + ], + "files" : + [ + "src/ProjectTreeExtend/CMakeLists.txt", + "src/CMakeLists.txt", + "cmake/FindQwt.cmake", + "CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 27, + "parent" : 0 + }, + { + "file" : 1 + }, + { + "command" : 1, + "file" : 1, + "line" : 58, + "parent" : 2 + }, + { + "command" : 2, + "file" : 0, + "line" : 49, + "parent" : 0 + }, + { + "file" : 3 + }, + { + "command" : 4, + "file" : 3, + "line" : 189, + "parent" : 5 + }, + { + "file" : 2, + "parent" : 6 + }, + { + "command" : 3, + "file" : 2, + "line" : 100, + "parent" : 7 + }, + { + "command" : 3, + "file" : 2, + "line" : 95, + "parent" : 7 + }, + { + "command" : 5, + "file" : 0, + "line" : 57, + "parent" : 0 + }, + { + "command" : 6, + "file" : 3, + "line" : 85, + "parent" : 5 + }, + { + "command" : 6, + "file" : 3, + "line" : 86, + "parent" : 5 + }, + { + "command" : 7, + "file" : 3, + "line" : 118, + "parent" : 5 + }, + { + "command" : 8, + "file" : 0, + "line" : 37, + "parent" : 0 + }, + { + "command" : 7, + "file" : 3, + "line" : 83, + "parent" : 5 + }, + { + "command" : 9, + "file" : 0, + "line" : 4, + "parent" : 0 + } + ] + }, + "compileGroups" : + [ + { + "compileCommandFragments" : + [ + { + "fragment" : "-DQT_QML_DEBUG /Zi /Ob0 /Od /RTC1 -MDd" + }, + { + "backtrace" : 11, + "fragment" : "/utf-8" + }, + { + "backtrace" : 12, + "fragment" : "/MDd" + } + ], + "defines" : + [ + { + "backtrace" : 13, + "define" : "OUTPUT_DEBUG_INFO" + }, + { + "backtrace" : 14, + "define" : "PROJECTTREEEXTEND_API" + }, + { + "define" : "ProjectTreeExtend_EXPORTS" + }, + { + "backtrace" : 4, + "define" : "QT_CORE_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_GUI_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_OPENGL_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_PRINTSUPPORT_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_SVG_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_WIDGETS_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_XML_LIB" + }, + { + "backtrace" : 4, + "define" : "QWT_DLL" + }, + { + "backtrace" : 15, + "define" : "UNICODE" + }, + { + "backtrace" : 15, + "define" : "_UNICODE" + } + ], + "includes" : + [ + { + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/ProjectTreeExtend" + }, + { + "path" : "D:/WBFZCPP/source/FastCAE/src/ProjectTreeExtend" + }, + { + "backtrace" : 0, + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/ProjectTreeExtend/ProjectTreeExtend_autogen/include" + }, + { + "backtrace" : 16, + "path" : "D:/WBFZCPP/source/FastCAE/src/ProjectTreeExtend/.." + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtCore" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/./mkspecs/win32-msvc" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtGui" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtANGLE" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtWidgets" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtXml" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qwt/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtSvg" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtOpenGL" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtPrintSupport" + } + ], + "language" : "CXX", + "languageStandard" : + { + "backtraces" : + [ + 4 + ], + "standard" : "11" + }, + "sourceIndexes" : + [ + 0, + 1, + 2, + 6, + 7 + ] + } + ], + "dependencies" : + [ + { + "backtrace" : 10, + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "backtrace" : 10, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "backtrace" : 10, + "id" : "MeshData::@2f0f676dafab302b2d20" + }, + { + "backtrace" : 10, + "id" : "SelfDefObject::@17d93127ede5f3b478ed" + }, + { + "backtrace" : 10, + "id" : "Material::@05d68cd248c3246409d7" + }, + { + "backtrace" : 10, + "id" : "ConfigOptions::@1c9d458e4038aca43955" + }, + { + "backtrace" : 10, + "id" : "BCBase::@baf13bdd6bef809f2182" + }, + { + "backtrace" : 10, + "id" : "ModelData::@8a6b2d9535e8b6cb6800" + }, + { + "backtrace" : 10, + "id" : "ParaClassFactory::@d0ebb167002da5b45d84" + }, + { + "backtrace" : 10, + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + }, + { + "backtrace" : 10, + "id" : "PostWidgets::@93a5592897f957e6fa57" + }, + { + "backtrace" : 10, + "id" : "ProjectTree::@43c6c7ebae2b88a99cdb" + }, + { + "backtrace" : 0, + "id" : "ProjectTreeExtend_autogen::@f2791e4784919f40d89d" + }, + { + "id" : "ProjectTreeExtend_autogen_timestamp_deps::@f2791e4784919f40d89d" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "ProjectTreeExtend::@f2791e4784919f40d89d", + "install" : + { + "destinations" : + [ + { + "backtrace" : 3, + "path" : "bin" + } + ], + "prefix" : + { + "path" : "D:/WBFZCPP/source/FastCAE/install" + } + }, + "link" : + { + "commandFragments" : + [ + { + "fragment" : "/machine:x64 /debug /INCREMENTAL", + "role" : "flags" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ProjectTree.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\PostWidgets.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ModuleBase.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ModelData.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qwt\\lib\\qwtd.lib", + "role" : "libraries" + }, + { + "backtrace" : 8, + "fragment" : "C:\\Qwt\\lib\\qwtd.lib", + "role" : "libraries" + }, + { + "backtrace" : 8, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5PrintSupportd.lib", + "role" : "libraries" + }, + { + "backtrace" : 9, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Svgd.lib", + "role" : "libraries" + }, + { + "backtrace" : 9, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5OpenGLd.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ParaClassFactory.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ConfigOptions.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\BCBase.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\MeshData.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Material.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\SelfDefObject.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Settings.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\DataProperty.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Xmld.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Widgetsd.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Guid.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Cored.lib", + "role" : "libraries" + }, + { + "fragment" : "kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib", + "role" : "libraries" + } + ], + "language" : "CXX" + }, + "name" : "ProjectTreeExtend", + "nameOnDisk" : "ProjectTreeExtend.dll", + "paths" : + { + "build" : "src/ProjectTreeExtend", + "source" : "src/ProjectTreeExtend" + }, + "sourceGroups" : + [ + { + "name" : "Source Files", + "sourceIndexes" : + [ + 0, + 1, + 2, + 6, + 7 + ] + }, + { + "name" : "Header Files", + "sourceIndexes" : + [ + 3, + 4, + 5 + ] + }, + { + "name" : "", + "sourceIndexes" : + [ + 8, + 9, + 10 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 11 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/ProjectTreeExtend/ProjectTreeExtend_autogen/mocs_compilation.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/ProjectTreeExtend/qrc_qianfan.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/ProjectTreeExtend/qrc_translations.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "path" : "src/ProjectTreeExtend/ProjectTreeConfig.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ProjectTreeExtend/ProjectTreeExtend.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/ProjectTreeExtend/ProjectTreeExtendAPI.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ProjectTreeExtend/ProjectTreeConfig.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ProjectTreeExtend/ProjectTreeExtend.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/ProjectTreeExtend/ProjectTreeExtend_autogen/timestamp", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/qrc/qianfan.qrc", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/qrc/translations.qrc", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/ProjectTreeExtend/ProjectTreeExtend_autogen/timestamp.rule", + "sourceGroupIndex" : 3 + } + ], + "type" : "SHARED_LIBRARY" +} diff --git a/out/build/.cmake/api/v1/reply/target-ProjectTreeExtend_autogen-Debug-1f90c671bc251ce5a28b.json b/out/build/.cmake/api/v1/reply/target-ProjectTreeExtend_autogen-Debug-1f90c671bc251ce5a28b.json new file mode 100644 index 0000000..2475617 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-ProjectTreeExtend_autogen-Debug-1f90c671bc251ce5a28b.json @@ -0,0 +1,123 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/ProjectTreeExtend/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "backtrace" : 0, + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "backtrace" : 0, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "backtrace" : 0, + "id" : "MeshData::@2f0f676dafab302b2d20" + }, + { + "backtrace" : 0, + "id" : "SelfDefObject::@17d93127ede5f3b478ed" + }, + { + "backtrace" : 0, + "id" : "Material::@05d68cd248c3246409d7" + }, + { + "backtrace" : 0, + "id" : "ConfigOptions::@1c9d458e4038aca43955" + }, + { + "backtrace" : 0, + "id" : "BCBase::@baf13bdd6bef809f2182" + }, + { + "backtrace" : 0, + "id" : "ModelData::@8a6b2d9535e8b6cb6800" + }, + { + "backtrace" : 0, + "id" : "ParaClassFactory::@d0ebb167002da5b45d84" + }, + { + "backtrace" : 0, + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + }, + { + "backtrace" : 0, + "id" : "PostWidgets::@93a5592897f957e6fa57" + }, + { + "backtrace" : 0, + "id" : "ProjectTree::@43c6c7ebae2b88a99cdb" + }, + { + "id" : "ProjectTreeExtend_autogen_timestamp_deps::@f2791e4784919f40d89d" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "ProjectTreeExtend_autogen::@f2791e4784919f40d89d", + "isGeneratorProvided" : true, + "name" : "ProjectTreeExtend_autogen", + "paths" : + { + "build" : "src/ProjectTreeExtend", + "source" : "src/ProjectTreeExtend" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1, + 2 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/ProjectTreeExtend/CMakeFiles/ProjectTreeExtend_autogen", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/ProjectTreeExtend/CMakeFiles/ProjectTreeExtend_autogen.rule", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/ProjectTreeExtend/ProjectTreeExtend_autogen/timestamp.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-ProjectTreeExtend_autogen_timestamp_deps-Debug-9cf59e40cdacd18dfb49.json b/out/build/.cmake/api/v1/reply/target-ProjectTreeExtend_autogen_timestamp_deps-Debug-9cf59e40cdacd18dfb49.json new file mode 100644 index 0000000..83d9a96 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-ProjectTreeExtend_autogen_timestamp_deps-Debug-9cf59e40cdacd18dfb49.json @@ -0,0 +1,101 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/ProjectTreeExtend/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "id" : "MeshData::@2f0f676dafab302b2d20" + }, + { + "id" : "SelfDefObject::@17d93127ede5f3b478ed" + }, + { + "id" : "Material::@05d68cd248c3246409d7" + }, + { + "id" : "ConfigOptions::@1c9d458e4038aca43955" + }, + { + "id" : "BCBase::@baf13bdd6bef809f2182" + }, + { + "id" : "ModelData::@8a6b2d9535e8b6cb6800" + }, + { + "id" : "ParaClassFactory::@d0ebb167002da5b45d84" + }, + { + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + }, + { + "id" : "PostWidgets::@93a5592897f957e6fa57" + }, + { + "id" : "ProjectTree::@43c6c7ebae2b88a99cdb" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "ProjectTreeExtend_autogen_timestamp_deps::@f2791e4784919f40d89d", + "isGeneratorProvided" : true, + "name" : "ProjectTreeExtend_autogen_timestamp_deps", + "paths" : + { + "build" : "src/ProjectTreeExtend", + "source" : "src/ProjectTreeExtend" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/ProjectTreeExtend/CMakeFiles/ProjectTreeExtend_autogen_timestamp_deps", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/ProjectTreeExtend/CMakeFiles/ProjectTreeExtend_autogen_timestamp_deps.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-ProjectTree_autogen-Debug-aacc1fa8f685d0a8a59c.json b/out/build/.cmake/api/v1/reply/target-ProjectTree_autogen-Debug-aacc1fa8f685d0a8a59c.json new file mode 100644 index 0000000..3388894 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-ProjectTree_autogen-Debug-aacc1fa8f685d0a8a59c.json @@ -0,0 +1,127 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/ProjectTree/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "backtrace" : 0, + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "backtrace" : 0, + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "backtrace" : 0, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "backtrace" : 0, + "id" : "MeshData::@2f0f676dafab302b2d20" + }, + { + "backtrace" : 0, + "id" : "SelfDefObject::@17d93127ede5f3b478ed" + }, + { + "backtrace" : 0, + "id" : "Material::@05d68cd248c3246409d7" + }, + { + "backtrace" : 0, + "id" : "ConfigOptions::@1c9d458e4038aca43955" + }, + { + "backtrace" : 0, + "id" : "BCBase::@baf13bdd6bef809f2182" + }, + { + "backtrace" : 0, + "id" : "Geometry::@b7b2e4191bc961e9afba" + }, + { + "backtrace" : 0, + "id" : "ModelData::@8a6b2d9535e8b6cb6800" + }, + { + "backtrace" : 0, + "id" : "ParaClassFactory::@d0ebb167002da5b45d84" + }, + { + "backtrace" : 0, + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + }, + { + "backtrace" : 0, + "id" : "PostWidgets::@93a5592897f957e6fa57" + }, + { + "id" : "ProjectTree_autogen_timestamp_deps::@43c6c7ebae2b88a99cdb" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "ProjectTree_autogen::@43c6c7ebae2b88a99cdb", + "isGeneratorProvided" : true, + "name" : "ProjectTree_autogen", + "paths" : + { + "build" : "src/ProjectTree", + "source" : "src/ProjectTree" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1, + 2 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/ProjectTree/CMakeFiles/ProjectTree_autogen", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/ProjectTree/CMakeFiles/ProjectTree_autogen.rule", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/ProjectTree/ProjectTree_autogen/timestamp.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-ProjectTree_autogen_timestamp_deps-Debug-90b72032cac148ad9743.json b/out/build/.cmake/api/v1/reply/target-ProjectTree_autogen_timestamp_deps-Debug-90b72032cac148ad9743.json new file mode 100644 index 0000000..1f185a7 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-ProjectTree_autogen_timestamp_deps-Debug-90b72032cac148ad9743.json @@ -0,0 +1,104 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/ProjectTree/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "id" : "MeshData::@2f0f676dafab302b2d20" + }, + { + "id" : "SelfDefObject::@17d93127ede5f3b478ed" + }, + { + "id" : "Material::@05d68cd248c3246409d7" + }, + { + "id" : "ConfigOptions::@1c9d458e4038aca43955" + }, + { + "id" : "BCBase::@baf13bdd6bef809f2182" + }, + { + "id" : "Geometry::@b7b2e4191bc961e9afba" + }, + { + "id" : "ModelData::@8a6b2d9535e8b6cb6800" + }, + { + "id" : "ParaClassFactory::@d0ebb167002da5b45d84" + }, + { + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + }, + { + "id" : "PostWidgets::@93a5592897f957e6fa57" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "ProjectTree_autogen_timestamp_deps::@43c6c7ebae2b88a99cdb", + "isGeneratorProvided" : true, + "name" : "ProjectTree_autogen_timestamp_deps", + "paths" : + { + "build" : "src/ProjectTree", + "source" : "src/ProjectTree" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/ProjectTree/CMakeFiles/ProjectTree_autogen_timestamp_deps", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/ProjectTree/CMakeFiles/ProjectTree_autogen_timestamp_deps.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-PythonModule-Debug-fd698a7d66a6c747bf3a.json b/out/build/.cmake/api/v1/reply/target-PythonModule-Debug-fd698a7d66a6c747bf3a.json new file mode 100644 index 0000000..97ce7c3 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-PythonModule-Debug-fd698a7d66a6c747bf3a.json @@ -0,0 +1,457 @@ +{ + "artifacts" : + [ + { + "path" : "Debug/PythonModule.dll" + }, + { + "path" : "Debug/PythonModule.lib" + }, + { + "path" : "Debug/PythonModule.pdb" + } + ], + "backtrace" : 1, + "backtraceGraph" : + { + "commands" : + [ + "add_library", + "install", + "target_link_libraries", + "set_property", + "_populate_Widgets_target_properties", + "find_package", + "add_dependencies", + "add_compile_options", + "add_definitions", + "target_compile_definitions", + "include_directories" + ], + "files" : + [ + "src/PythonModule/CMakeLists.txt", + "src/CMakeLists.txt", + "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Widgets/Qt5WidgetsConfig.cmake", + "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5/Qt5Config.cmake", + "CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 20, + "parent" : 0 + }, + { + "file" : 1 + }, + { + "command" : 1, + "file" : 1, + "line" : 58, + "parent" : 2 + }, + { + "command" : 2, + "file" : 0, + "line" : 44, + "parent" : 0 + }, + { + "file" : 4 + }, + { + "command" : 5, + "file" : 4, + "line" : 142, + "parent" : 5 + }, + { + "file" : 3, + "parent" : 6 + }, + { + "command" : 5, + "file" : 3, + "line" : 28, + "parent" : 7 + }, + { + "file" : 2, + "parent" : 8 + }, + { + "command" : 4, + "file" : 2, + "line" : 207, + "parent" : 9 + }, + { + "command" : 3, + "file" : 2, + "line" : 44, + "parent" : 10 + }, + { + "command" : 6, + "file" : 0, + "line" : 51, + "parent" : 0 + }, + { + "command" : 7, + "file" : 4, + "line" : 85, + "parent" : 5 + }, + { + "command" : 7, + "file" : 4, + "line" : 86, + "parent" : 5 + }, + { + "command" : 8, + "file" : 4, + "line" : 118, + "parent" : 5 + }, + { + "command" : 9, + "file" : 0, + "line" : 28, + "parent" : 0 + }, + { + "command" : 8, + "file" : 4, + "line" : 83, + "parent" : 5 + }, + { + "command" : 10, + "file" : 0, + "line" : 4, + "parent" : 0 + } + ] + }, + "compileGroups" : + [ + { + "compileCommandFragments" : + [ + { + "fragment" : "-DQT_QML_DEBUG /Zi /Ob0 /Od /RTC1 -MDd" + }, + { + "backtrace" : 13, + "fragment" : "/utf-8" + }, + { + "backtrace" : 14, + "fragment" : "/MDd" + } + ], + "defines" : + [ + { + "backtrace" : 15, + "define" : "OUTPUT_DEBUG_INFO" + }, + { + "backtrace" : 16, + "define" : "PYTHONMODULE_API" + }, + { + "define" : "PythonModule_EXPORTS" + }, + { + "backtrace" : 4, + "define" : "QT_CORE_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_GUI_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_WIDGETS_LIB" + }, + { + "backtrace" : 17, + "define" : "UNICODE" + }, + { + "backtrace" : 17, + "define" : "_UNICODE" + } + ], + "includes" : + [ + { + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/PythonModule" + }, + { + "path" : "D:/WBFZCPP/source/FastCAE/src/PythonModule" + }, + { + "backtrace" : 0, + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/PythonModule/PythonModule_autogen/include" + }, + { + "backtrace" : 18, + "path" : "D:/WBFZCPP/source/FastCAE/src/PythonModule/.." + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtWidgets" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtGui" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtANGLE" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtCore" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/./mkspecs/win32-msvc" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "D:/WBFZCPP/source/FastCAE/extlib/Python/include" + } + ], + "language" : "CXX", + "languageStandard" : + { + "backtraces" : + [ + 4 + ], + "standard" : "11" + }, + "sourceIndexes" : + [ + 0, + 6, + 7, + 8, + 9 + ] + } + ], + "dependencies" : + [ + { + "backtrace" : 12, + "id" : "Common::@29aabc9fbfb9b5406d55" + }, + { + "backtrace" : 0, + "id" : "PythonModule_autogen::@c600c49a22fbbbfcb8ff" + }, + { + "id" : "PythonModule_autogen_timestamp_deps::@c600c49a22fbbbfcb8ff" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "PythonModule::@c600c49a22fbbbfcb8ff", + "install" : + { + "destinations" : + [ + { + "backtrace" : 3, + "path" : "bin" + } + ], + "prefix" : + { + "path" : "D:/WBFZCPP/source/FastCAE/install" + } + }, + "link" : + { + "commandFragments" : + [ + { + "fragment" : "/machine:x64 /debug /INCREMENTAL", + "role" : "flags" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Widgetsd.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "D:\\WBFZCPP\\source\\FastCAE\\extlib\\Python\\libs\\python37.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Common.lib", + "role" : "libraries" + }, + { + "backtrace" : 11, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Guid.lib", + "role" : "libraries" + }, + { + "backtrace" : 11, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Cored.lib", + "role" : "libraries" + }, + { + "fragment" : "kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib", + "role" : "libraries" + } + ], + "language" : "CXX" + }, + "name" : "PythonModule", + "nameOnDisk" : "PythonModule.dll", + "paths" : + { + "build" : "src/PythonModule", + "source" : "src/PythonModule" + }, + "sourceGroups" : + [ + { + "name" : "Source Files", + "sourceIndexes" : + [ + 0, + 6, + 7, + 8, + 9 + ] + }, + { + "name" : "Header Files", + "sourceIndexes" : + [ + 1, + 2, + 3, + 4, + 5 + ] + }, + { + "name" : "", + "sourceIndexes" : + [ + 10 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 11 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/PythonModule/PythonModule_autogen/mocs_compilation.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "path" : "src/PythonModule/PyAgent.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PythonModule/PyInterpreter.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PythonModule/PythonModuleAPI.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PythonModule/RecordScript.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/PythonModule/ScriptReader.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PythonModule/PyAgent.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PythonModule/PyInterpreter.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PythonModule/RecordScript.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/PythonModule/ScriptReader.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PythonModule/PythonModule_autogen/timestamp", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PythonModule/PythonModule_autogen/timestamp.rule", + "sourceGroupIndex" : 3 + } + ], + "type" : "SHARED_LIBRARY" +} diff --git a/out/build/.cmake/api/v1/reply/target-PythonModule_autogen-Debug-eea898c2e7cd943098a2.json b/out/build/.cmake/api/v1/reply/target-PythonModule_autogen-Debug-eea898c2e7cd943098a2.json new file mode 100644 index 0000000..aa9971e --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-PythonModule_autogen-Debug-eea898c2e7cd943098a2.json @@ -0,0 +1,79 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/PythonModule/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "backtrace" : 0, + "id" : "Common::@29aabc9fbfb9b5406d55" + }, + { + "id" : "PythonModule_autogen_timestamp_deps::@c600c49a22fbbbfcb8ff" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "PythonModule_autogen::@c600c49a22fbbbfcb8ff", + "isGeneratorProvided" : true, + "name" : "PythonModule_autogen", + "paths" : + { + "build" : "src/PythonModule", + "source" : "src/PythonModule" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1, + 2 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PythonModule/CMakeFiles/PythonModule_autogen", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PythonModule/CMakeFiles/PythonModule_autogen.rule", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PythonModule/PythonModule_autogen/timestamp.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-PythonModule_autogen_timestamp_deps-Debug-962356fa62c85c36765e.json b/out/build/.cmake/api/v1/reply/target-PythonModule_autogen_timestamp_deps-Debug-962356fa62c85c36765e.json new file mode 100644 index 0000000..e0fd7e7 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-PythonModule_autogen_timestamp_deps-Debug-962356fa62c85c36765e.json @@ -0,0 +1,68 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/PythonModule/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "id" : "Common::@29aabc9fbfb9b5406d55" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "PythonModule_autogen_timestamp_deps::@c600c49a22fbbbfcb8ff", + "isGeneratorProvided" : true, + "name" : "PythonModule_autogen_timestamp_deps", + "paths" : + { + "build" : "src/PythonModule", + "source" : "src/PythonModule" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PythonModule/CMakeFiles/PythonModule_autogen_timestamp_deps", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/PythonModule/CMakeFiles/PythonModule_autogen_timestamp_deps.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-SARibbonBar-Debug-c665fea387b990826aed.json b/out/build/.cmake/api/v1/reply/target-SARibbonBar-Debug-c665fea387b990826aed.json new file mode 100644 index 0000000..642fe79 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-SARibbonBar-Debug-c665fea387b990826aed.json @@ -0,0 +1,869 @@ +{ + "artifacts" : + [ + { + "path" : "Debug/SARibbonBar.dll" + }, + { + "path" : "Debug/SARibbonBar.lib" + }, + { + "path" : "Debug/SARibbonBar.pdb" + } + ], + "backtrace" : 1, + "backtraceGraph" : + { + "commands" : + [ + "add_library", + "install", + "target_link_libraries", + "set_property", + "_populate_Widgets_target_properties", + "find_package", + "add_compile_options", + "add_definitions", + "target_compile_definitions" + ], + "files" : + [ + "src/SARibbonBar/CMakeLists.txt", + "src/CMakeLists.txt", + "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Widgets/Qt5WidgetsConfig.cmake", + "C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5/Qt5Config.cmake", + "CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 21, + "parent" : 0 + }, + { + "file" : 1 + }, + { + "command" : 1, + "file" : 1, + "line" : 58, + "parent" : 2 + }, + { + "command" : 2, + "file" : 0, + "line" : 39, + "parent" : 0 + }, + { + "file" : 4 + }, + { + "command" : 5, + "file" : 4, + "line" : 142, + "parent" : 5 + }, + { + "file" : 3, + "parent" : 6 + }, + { + "command" : 5, + "file" : 3, + "line" : 28, + "parent" : 7 + }, + { + "file" : 2, + "parent" : 8 + }, + { + "command" : 4, + "file" : 2, + "line" : 207, + "parent" : 9 + }, + { + "command" : 3, + "file" : 2, + "line" : 44, + "parent" : 10 + }, + { + "command" : 6, + "file" : 4, + "line" : 85, + "parent" : 5 + }, + { + "command" : 6, + "file" : 4, + "line" : 86, + "parent" : 5 + }, + { + "command" : 7, + "file" : 4, + "line" : 118, + "parent" : 5 + }, + { + "command" : 8, + "file" : 0, + "line" : 30, + "parent" : 0 + }, + { + "command" : 7, + "file" : 4, + "line" : 83, + "parent" : 5 + } + ] + }, + "compileGroups" : + [ + { + "compileCommandFragments" : + [ + { + "fragment" : "-DQT_QML_DEBUG /Zi /Ob0 /Od /RTC1 -MDd" + }, + { + "backtrace" : 12, + "fragment" : "/utf-8" + }, + { + "backtrace" : 13, + "fragment" : "/MDd" + } + ], + "defines" : + [ + { + "backtrace" : 14, + "define" : "OUTPUT_DEBUG_INFO" + }, + { + "backtrace" : 4, + "define" : "QT_CORE_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_GUI_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_WIDGETS_LIB" + }, + { + "define" : "SARibbonBar_EXPORTS" + }, + { + "backtrace" : 15, + "define" : "SA_RIBBON_BAR_MAKE_LIB" + }, + { + "backtrace" : 16, + "define" : "UNICODE" + }, + { + "backtrace" : 16, + "define" : "_UNICODE" + } + ], + "includes" : + [ + { + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/SARibbonBar" + }, + { + "path" : "D:/WBFZCPP/source/FastCAE/src/SARibbonBar" + }, + { + "backtrace" : 0, + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/SARibbonBar/SARibbonBar_autogen/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtWidgets" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtGui" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtANGLE" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtCore" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/./mkspecs/win32-msvc" + } + ], + "language" : "CXX", + "languageStandard" : + { + "backtraces" : + [ + 4 + ], + "standard" : "11" + }, + "sourceIndexes" : + [ + 0, + 1, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72 + ] + } + ], + "dependencies" : + [ + { + "backtrace" : 0, + "id" : "SARibbonBar_autogen::@f61b241723ced025d0ef" + }, + { + "id" : "SARibbonBar_autogen_timestamp_deps::@f61b241723ced025d0ef" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "SARibbonBar::@f61b241723ced025d0ef", + "install" : + { + "destinations" : + [ + { + "backtrace" : 3, + "path" : "bin" + } + ], + "prefix" : + { + "path" : "D:/WBFZCPP/source/FastCAE/install" + } + }, + "link" : + { + "commandFragments" : + [ + { + "fragment" : "/machine:x64 /debug /INCREMENTAL", + "role" : "flags" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Widgetsd.lib", + "role" : "libraries" + }, + { + "backtrace" : 11, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Guid.lib", + "role" : "libraries" + }, + { + "backtrace" : 11, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Cored.lib", + "role" : "libraries" + }, + { + "fragment" : "kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib", + "role" : "libraries" + } + ], + "language" : "CXX" + }, + "name" : "SARibbonBar", + "nameOnDisk" : "SARibbonBar.dll", + "paths" : + { + "build" : "src/SARibbonBar", + "source" : "src/SARibbonBar" + }, + "sourceGroups" : + [ + { + "name" : "Source Files", + "sourceIndexes" : + [ + 0, + 1, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72 + ] + }, + { + "name" : "Header Files", + "sourceIndexes" : + [ + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37 + ] + }, + { + "name" : "", + "sourceIndexes" : + [ + 73, + 74 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 75 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/SARibbonBar/SARibbonBar_autogen/mocs_compilation.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/SARibbonBar/qrc_resource.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "path" : "src/SARibbonBar/SAFramelessHelper.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SARibbonBar/SARibbonActionsManager.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SARibbonBar/SARibbonApplicationButton.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SARibbonBar/SARibbonBar.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SARibbonBar/SARibbonButtonGroupWidget.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SARibbonBar/SARibbonCategory.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SARibbonBar/SARibbonCategoryLayout.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SARibbonBar/SARibbonCheckBox.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SARibbonBar/SARibbonComboBox.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SARibbonBar/SARibbonContextCategory.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SARibbonBar/SARibbonControlButton.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SARibbonBar/SARibbonCtrlContainer.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SARibbonBar/SARibbonCustomizeData.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SARibbonBar/SARibbonCustomizeDialog.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SARibbonBar/SARibbonCustomizeWidget.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SARibbonBar/SARibbonDrawHelper.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SARibbonBar/SARibbonElementCreateDelegate.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SARibbonBar/SARibbonElementManager.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SARibbonBar/SARibbonGallery.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SARibbonBar/SARibbonGalleryGroup.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SARibbonBar/SARibbonGalleryItem.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SARibbonBar/SARibbonGlobal.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SARibbonBar/SARibbonLineEdit.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SARibbonBar/SARibbonLineWidgetContainer.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SARibbonBar/SARibbonMainWindow.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SARibbonBar/SARibbonMenu.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SARibbonBar/SARibbonPannel.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SARibbonBar/SARibbonPannelItem.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SARibbonBar/SARibbonPannelLayout.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SARibbonBar/SARibbonPannelOptionButton.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SARibbonBar/SARibbonQuickAccessBar.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SARibbonBar/SARibbonSeparatorWidget.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SARibbonBar/SARibbonStackedWidget.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SARibbonBar/SARibbonTabBar.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SARibbonBar/SARibbonToolButton.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SARibbonBar/SAWindowButtonGroup.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SARibbonBar/SAFramelessHelper.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SARibbonBar/SARibbonActionsManager.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SARibbonBar/SARibbonApplicationButton.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SARibbonBar/SARibbonBar.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SARibbonBar/SARibbonButtonGroupWidget.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SARibbonBar/SARibbonCategory.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SARibbonBar/SARibbonCategoryLayout.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SARibbonBar/SARibbonCheckBox.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SARibbonBar/SARibbonComboBox.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SARibbonBar/SARibbonContextCategory.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SARibbonBar/SARibbonControlButton.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SARibbonBar/SARibbonCtrlContainer.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SARibbonBar/SARibbonCustomizeData.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SARibbonBar/SARibbonCustomizeDialog.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SARibbonBar/SARibbonCustomizeWidget.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SARibbonBar/SARibbonDrawHelper.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SARibbonBar/SARibbonElementCreateDelegate.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SARibbonBar/SARibbonElementManager.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SARibbonBar/SARibbonGallery.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SARibbonBar/SARibbonGalleryGroup.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SARibbonBar/SARibbonGalleryItem.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SARibbonBar/SARibbonLineEdit.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SARibbonBar/SARibbonLineWidgetContainer.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SARibbonBar/SARibbonMainWindow.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SARibbonBar/SARibbonMenu.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SARibbonBar/SARibbonPannel.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SARibbonBar/SARibbonPannelItem.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SARibbonBar/SARibbonPannelLayout.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SARibbonBar/SARibbonPannelOptionButton.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SARibbonBar/SARibbonQuickAccessBar.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SARibbonBar/SARibbonSeparatorWidget.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SARibbonBar/SARibbonStackedWidget.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SARibbonBar/SARibbonTabBar.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SARibbonBar/SARibbonToolButton.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SARibbonBar/SAWindowButtonGroup.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/SARibbonBar/SARibbonBar_autogen/timestamp", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/SARibbonBar/resource.qrc", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/SARibbonBar/SARibbonBar_autogen/timestamp.rule", + "sourceGroupIndex" : 3 + } + ], + "type" : "SHARED_LIBRARY" +} diff --git a/out/build/.cmake/api/v1/reply/target-SARibbonBar_autogen-Debug-814fabc12a6d548fd856.json b/out/build/.cmake/api/v1/reply/target-SARibbonBar_autogen-Debug-814fabc12a6d548fd856.json new file mode 100644 index 0000000..9482928 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-SARibbonBar_autogen-Debug-814fabc12a6d548fd856.json @@ -0,0 +1,75 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/SARibbonBar/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "id" : "SARibbonBar_autogen_timestamp_deps::@f61b241723ced025d0ef" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "SARibbonBar_autogen::@f61b241723ced025d0ef", + "isGeneratorProvided" : true, + "name" : "SARibbonBar_autogen", + "paths" : + { + "build" : "src/SARibbonBar", + "source" : "src/SARibbonBar" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1, + 2 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/SARibbonBar/CMakeFiles/SARibbonBar_autogen", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/SARibbonBar/CMakeFiles/SARibbonBar_autogen.rule", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/SARibbonBar/SARibbonBar_autogen/timestamp.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-SARibbonBar_autogen_timestamp_deps-Debug-844ac52f6fa9689c11e1.json b/out/build/.cmake/api/v1/reply/target-SARibbonBar_autogen_timestamp_deps-Debug-844ac52f6fa9689c11e1.json new file mode 100644 index 0000000..c67fd61 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-SARibbonBar_autogen_timestamp_deps-Debug-844ac52f6fa9689c11e1.json @@ -0,0 +1,62 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/SARibbonBar/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "folder" : + { + "name" : "Modules" + }, + "id" : "SARibbonBar_autogen_timestamp_deps::@f61b241723ced025d0ef", + "isGeneratorProvided" : true, + "name" : "SARibbonBar_autogen_timestamp_deps", + "paths" : + { + "build" : "src/SARibbonBar", + "source" : "src/SARibbonBar" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/SARibbonBar/CMakeFiles/SARibbonBar_autogen_timestamp_deps", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/SARibbonBar/CMakeFiles/SARibbonBar_autogen_timestamp_deps.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-SelfDefObject-Debug-0a0a430956354cae4d00.json b/out/build/.cmake/api/v1/reply/target-SelfDefObject-Debug-0a0a430956354cae4d00.json new file mode 100644 index 0000000..8dff8de --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-SelfDefObject-Debug-0a0a430956354cae4d00.json @@ -0,0 +1,719 @@ +{ + "artifacts" : + [ + { + "path" : "Debug/SelfDefObject.dll" + }, + { + "path" : "Debug/SelfDefObject.lib" + }, + { + "path" : "Debug/SelfDefObject.pdb" + } + ], + "backtrace" : 1, + "backtraceGraph" : + { + "commands" : + [ + "add_library", + "install", + "target_link_libraries", + "add_dependencies", + "add_compile_options", + "add_definitions", + "target_compile_definitions", + "include_directories" + ], + "files" : + [ + "src/SelfDefObject/CMakeLists.txt", + "src/CMakeLists.txt", + "src/PythonModule/CMakeLists.txt", + "CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 29, + "parent" : 0 + }, + { + "file" : 1 + }, + { + "command" : 1, + "file" : 1, + "line" : 58, + "parent" : 2 + }, + { + "command" : 2, + "file" : 0, + "line" : 50, + "parent" : 0 + }, + { + "file" : 2 + }, + { + "command" : 2, + "file" : 2, + "line" : 44, + "parent" : 5 + }, + { + "command" : 3, + "file" : 0, + "line" : 58, + "parent" : 0 + }, + { + "file" : 3 + }, + { + "command" : 4, + "file" : 3, + "line" : 85, + "parent" : 8 + }, + { + "command" : 4, + "file" : 3, + "line" : 86, + "parent" : 8 + }, + { + "command" : 5, + "file" : 3, + "line" : 118, + "parent" : 8 + }, + { + "command" : 6, + "file" : 0, + "line" : 39, + "parent" : 0 + }, + { + "command" : 5, + "file" : 3, + "line" : 83, + "parent" : 8 + }, + { + "command" : 7, + "file" : 0, + "line" : 4, + "parent" : 0 + } + ] + }, + "compileGroups" : + [ + { + "compileCommandFragments" : + [ + { + "fragment" : "-DQT_QML_DEBUG /Zi /Ob0 /Od /RTC1 -MDd" + }, + { + "backtrace" : 9, + "fragment" : "/utf-8" + }, + { + "backtrace" : 10, + "fragment" : "/MDd" + } + ], + "defines" : + [ + { + "backtrace" : 11, + "define" : "OUTPUT_DEBUG_INFO" + }, + { + "backtrace" : 4, + "define" : "QT_CORE_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_GUI_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_WIDGETS_LIB" + }, + { + "backtrace" : 12, + "define" : "SELFDEFINEOBJ_API" + }, + { + "define" : "SelfDefObject_EXPORTS" + }, + { + "backtrace" : 13, + "define" : "UNICODE" + }, + { + "backtrace" : 13, + "define" : "_UNICODE" + } + ], + "includes" : + [ + { + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/SelfDefObject" + }, + { + "path" : "D:/WBFZCPP/source/FastCAE/src/SelfDefObject" + }, + { + "backtrace" : 0, + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/SelfDefObject/SelfDefObject_autogen/include" + }, + { + "backtrace" : 14, + "path" : "D:/WBFZCPP/source/FastCAE/src/SelfDefObject/.." + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtWidgets" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtGui" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtANGLE" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtCore" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/./mkspecs/win32-msvc" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "D:/WBFZCPP/source/FastCAE/extlib/Python/include" + } + ], + "language" : "CXX", + "languageStandard" : + { + "backtraces" : + [ + 4 + ], + "standard" : "11" + }, + "sourceIndexes" : + [ + 0, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43 + ] + } + ], + "dependencies" : + [ + { + "backtrace" : 4, + "id" : "Common::@29aabc9fbfb9b5406d55" + }, + { + "backtrace" : 7, + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "backtrace" : 7, + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "backtrace" : 7, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "id" : "SelfDefObject_autogen_timestamp_deps::@17d93127ede5f3b478ed" + }, + { + "backtrace" : 0, + "id" : "SelfDefObject_autogen::@17d93127ede5f3b478ed" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "SelfDefObject::@17d93127ede5f3b478ed", + "install" : + { + "destinations" : + [ + { + "backtrace" : 3, + "path" : "bin" + } + ], + "prefix" : + { + "path" : "D:/WBFZCPP/source/FastCAE/install" + } + }, + "link" : + { + "commandFragments" : + [ + { + "fragment" : "/machine:x64 /debug /INCREMENTAL", + "role" : "flags" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Settings.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\DataProperty.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\PythonModule.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Widgetsd.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Guid.lib", + "role" : "libraries" + }, + { + "backtrace" : 6, + "fragment" : "D:\\WBFZCPP\\source\\FastCAE\\extlib\\Python\\libs\\python37.lib", + "role" : "libraries" + }, + { + "backtrace" : 6, + "fragment" : "Debug\\Common.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Cored.lib", + "role" : "libraries" + }, + { + "fragment" : "kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib", + "role" : "libraries" + } + ], + "language" : "CXX" + }, + "name" : "SelfDefObject", + "nameOnDisk" : "SelfDefObject.dll", + "paths" : + { + "build" : "src/SelfDefObject", + "source" : "src/SelfDefObject" + }, + "sourceGroups" : + [ + { + "name" : "Source Files", + "sourceIndexes" : + [ + 0, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43 + ] + }, + { + "name" : "Header Files", + "sourceIndexes" : + [ + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24 + ] + }, + { + "name" : "", + "sourceIndexes" : + [ + 44, + 45, + 46, + 47, + 48 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 49 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/SelfDefObject/SelfDefObject_autogen/mocs_compilation.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/SelfDefObject/ui_LineEditDialog.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/SelfDefObject/ui_ParaMore.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/SelfDefObject/ui_ParaTabViewer.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/SelfDefObject/ui_selfdeflineedit.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SelfDefObject/LineEditDialog.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SelfDefObject/ParaCheck.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SelfDefObject/ParaColorButton.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SelfDefObject/ParaCombox.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SelfDefObject/ParaDoubleSpin.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SelfDefObject/ParaLineEdit.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SelfDefObject/ParaMore.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SelfDefObject/ParaPath.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SelfDefObject/ParaSpin.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SelfDefObject/ParaTabViewer.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SelfDefObject/ParaTable.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SelfDefObject/ParaTableWidget.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SelfDefObject/ParaWidgetBase.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SelfDefObject/ParaWidgetFactory.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SelfDefObject/QFDialog.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SelfDefObject/SelfDefObjectAPI.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SelfDefObject/SelfDefObjectBase.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SelfDefObject/SelfDefParaWidgetBase.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SelfDefObject/SelfDefWidget.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SelfDefObject/selfdeflineedit.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SelfDefObject/LineEditDialog.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SelfDefObject/ParaCheck.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SelfDefObject/ParaColorButton.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SelfDefObject/ParaCombox.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SelfDefObject/ParaDoubleSpin.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SelfDefObject/ParaLineEdit.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SelfDefObject/ParaMore.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SelfDefObject/ParaPath.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SelfDefObject/ParaSpin.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SelfDefObject/ParaTabViewer.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SelfDefObject/ParaTable.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SelfDefObject/ParaTableWidget.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SelfDefObject/ParaWidgetBase.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SelfDefObject/ParaWidgetFactory.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SelfDefObject/QFDialog.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SelfDefObject/SelfDefObjectBase.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SelfDefObject/SelfDefParaWidgetBase.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SelfDefObject/SelfDefWidget.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SelfDefObject/selfdeflineedit.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/SelfDefObject/SelfDefObject_autogen/timestamp", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/SelfDefObject/LineEditDialog.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/SelfDefObject/ParaMore.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/SelfDefObject/ParaTabViewer.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/SelfDefObject/selfdeflineedit.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/SelfDefObject/SelfDefObject_autogen/timestamp.rule", + "sourceGroupIndex" : 3 + } + ], + "type" : "SHARED_LIBRARY" +} diff --git a/out/build/.cmake/api/v1/reply/target-SelfDefObject_autogen-Debug-136452b2a8a8b2d57369.json b/out/build/.cmake/api/v1/reply/target-SelfDefObject_autogen-Debug-136452b2a8a8b2d57369.json new file mode 100644 index 0000000..e19ee36 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-SelfDefObject_autogen-Debug-136452b2a8a8b2d57369.json @@ -0,0 +1,87 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/SelfDefObject/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "backtrace" : 0, + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "backtrace" : 0, + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "backtrace" : 0, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "id" : "SelfDefObject_autogen_timestamp_deps::@17d93127ede5f3b478ed" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "SelfDefObject_autogen::@17d93127ede5f3b478ed", + "isGeneratorProvided" : true, + "name" : "SelfDefObject_autogen", + "paths" : + { + "build" : "src/SelfDefObject", + "source" : "src/SelfDefObject" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1, + 2 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/SelfDefObject/CMakeFiles/SelfDefObject_autogen", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/SelfDefObject/CMakeFiles/SelfDefObject_autogen.rule", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/SelfDefObject/SelfDefObject_autogen/timestamp.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-SelfDefObject_autogen_timestamp_deps-Debug-0f063a5e80f0f7312065.json b/out/build/.cmake/api/v1/reply/target-SelfDefObject_autogen_timestamp_deps-Debug-0f063a5e80f0f7312065.json new file mode 100644 index 0000000..b60a2db --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-SelfDefObject_autogen_timestamp_deps-Debug-0f063a5e80f0f7312065.json @@ -0,0 +1,74 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/SelfDefObject/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "id" : "DataProperty::@ec84555ffa827036bc26" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "SelfDefObject_autogen_timestamp_deps::@17d93127ede5f3b478ed", + "isGeneratorProvided" : true, + "name" : "SelfDefObject_autogen_timestamp_deps", + "paths" : + { + "build" : "src/SelfDefObject", + "source" : "src/SelfDefObject" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/SelfDefObject/CMakeFiles/SelfDefObject_autogen_timestamp_deps", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/SelfDefObject/CMakeFiles/SelfDefObject_autogen_timestamp_deps.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-Settings-Debug-679ee3a5d5a360adc2ed.json b/out/build/.cmake/api/v1/reply/target-Settings-Debug-679ee3a5d5a360adc2ed.json new file mode 100644 index 0000000..12b7718 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-Settings-Debug-679ee3a5d5a360adc2ed.json @@ -0,0 +1,476 @@ +{ + "artifacts" : + [ + { + "path" : "Debug/Settings.dll" + }, + { + "path" : "Debug/Settings.lib" + }, + { + "path" : "Debug/Settings.pdb" + } + ], + "backtrace" : 1, + "backtraceGraph" : + { + "commands" : + [ + "add_library", + "install", + "target_link_libraries", + "add_compile_options", + "add_definitions", + "target_compile_definitions", + "include_directories" + ], + "files" : + [ + "src/Settings/CMakeLists.txt", + "src/CMakeLists.txt", + "CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 22, + "parent" : 0 + }, + { + "file" : 1 + }, + { + "command" : 1, + "file" : 1, + "line" : 58, + "parent" : 2 + }, + { + "command" : 2, + "file" : 0, + "line" : 40, + "parent" : 0 + }, + { + "file" : 2 + }, + { + "command" : 3, + "file" : 2, + "line" : 85, + "parent" : 5 + }, + { + "command" : 3, + "file" : 2, + "line" : 86, + "parent" : 5 + }, + { + "command" : 4, + "file" : 2, + "line" : 118, + "parent" : 5 + }, + { + "command" : 5, + "file" : 0, + "line" : 31, + "parent" : 0 + }, + { + "command" : 4, + "file" : 2, + "line" : 83, + "parent" : 5 + }, + { + "command" : 6, + "file" : 0, + "line" : 4, + "parent" : 0 + } + ] + }, + "compileGroups" : + [ + { + "compileCommandFragments" : + [ + { + "fragment" : "-DQT_QML_DEBUG /Zi /Ob0 /Od /RTC1 -MDd" + }, + { + "backtrace" : 6, + "fragment" : "/utf-8" + }, + { + "backtrace" : 7, + "fragment" : "/MDd" + } + ], + "defines" : + [ + { + "backtrace" : 8, + "define" : "OUTPUT_DEBUG_INFO" + }, + { + "backtrace" : 4, + "define" : "QT_CORE_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_GUI_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_WIDGETS_LIB" + }, + { + "backtrace" : 9, + "define" : "SETTING_API" + }, + { + "define" : "Settings_EXPORTS" + }, + { + "backtrace" : 10, + "define" : "UNICODE" + }, + { + "backtrace" : 10, + "define" : "_UNICODE" + } + ], + "includes" : + [ + { + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/Settings" + }, + { + "path" : "D:/WBFZCPP/source/FastCAE/src/Settings" + }, + { + "backtrace" : 0, + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/Settings/Settings_autogen/include" + }, + { + "backtrace" : 11, + "path" : "D:/WBFZCPP/source/FastCAE/src/Settings/.." + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtCore" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/./mkspecs/win32-msvc" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtGui" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtANGLE" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtWidgets" + } + ], + "language" : "CXX", + "languageStandard" : + { + "backtraces" : + [ + 4 + ], + "standard" : "11" + }, + "sourceIndexes" : + [ + 0, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19 + ] + } + ], + "dependencies" : + [ + { + "id" : "Settings_autogen_timestamp_deps::@733e6871ef4a824e534d" + }, + { + "backtrace" : 0, + "id" : "Settings_autogen::@733e6871ef4a824e534d" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "Settings::@733e6871ef4a824e534d", + "install" : + { + "destinations" : + [ + { + "backtrace" : 3, + "path" : "bin" + } + ], + "prefix" : + { + "path" : "D:/WBFZCPP/source/FastCAE/install" + } + }, + "link" : + { + "commandFragments" : + [ + { + "fragment" : "/machine:x64 /debug /INCREMENTAL", + "role" : "flags" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Widgetsd.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Guid.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Cored.lib", + "role" : "libraries" + }, + { + "fragment" : "kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib", + "role" : "libraries" + } + ], + "language" : "CXX" + }, + "name" : "Settings", + "nameOnDisk" : "Settings.dll", + "paths" : + { + "build" : "src/Settings", + "source" : "src/Settings" + }, + "sourceGroups" : + [ + { + "name" : "Source Files", + "sourceIndexes" : + [ + 0, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19 + ] + }, + { + "name" : "Header Files", + "sourceIndexes" : + [ + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11 + ] + }, + { + "name" : "", + "sourceIndexes" : + [ + 20, + 21, + 22 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 23 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/Settings/Settings_autogen/mocs_compilation.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/Settings/ui_DialogGraphOption.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/Settings/ui_DialogWorkingDir.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Settings/BusAPI.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Settings/ColorCombobox.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Settings/DialogGraphOption.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Settings/DialogWorkingDir.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Settings/Ecolorcombobox.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Settings/GraphOption.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Settings/MainSetting.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Settings/MessageSetting.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/Settings/SettingAPI.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Settings/BusAPI.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Settings/ColorCombobox.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Settings/DialogGraphOption.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Settings/DialogWorkingDir.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Settings/Ecolorcombobox.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Settings/GraphOption.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Settings/MainSetting.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/Settings/MessageSetting.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/Settings/Settings_autogen/timestamp", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/Settings/DialogGraphOption.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/Settings/DialogWorkingDir.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/Settings/Settings_autogen/timestamp.rule", + "sourceGroupIndex" : 3 + } + ], + "type" : "SHARED_LIBRARY" +} diff --git a/out/build/.cmake/api/v1/reply/target-Settings_autogen-Debug-82a028e5e8bab467dc02.json b/out/build/.cmake/api/v1/reply/target-Settings_autogen-Debug-82a028e5e8bab467dc02.json new file mode 100644 index 0000000..e504131 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-Settings_autogen-Debug-82a028e5e8bab467dc02.json @@ -0,0 +1,75 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/Settings/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "id" : "Settings_autogen_timestamp_deps::@733e6871ef4a824e534d" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "Settings_autogen::@733e6871ef4a824e534d", + "isGeneratorProvided" : true, + "name" : "Settings_autogen", + "paths" : + { + "build" : "src/Settings", + "source" : "src/Settings" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1, + 2 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/Settings/CMakeFiles/Settings_autogen", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/Settings/CMakeFiles/Settings_autogen.rule", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/Settings/Settings_autogen/timestamp.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-Settings_autogen_timestamp_deps-Debug-10760dfb04a7ccf0a99b.json b/out/build/.cmake/api/v1/reply/target-Settings_autogen_timestamp_deps-Debug-10760dfb04a7ccf0a99b.json new file mode 100644 index 0000000..2bb149e --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-Settings_autogen_timestamp_deps-Debug-10760dfb04a7ccf0a99b.json @@ -0,0 +1,62 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/Settings/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "folder" : + { + "name" : "Modules" + }, + "id" : "Settings_autogen_timestamp_deps::@733e6871ef4a824e534d", + "isGeneratorProvided" : true, + "name" : "Settings_autogen_timestamp_deps", + "paths" : + { + "build" : "src/Settings", + "source" : "src/Settings" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/Settings/CMakeFiles/Settings_autogen_timestamp_deps", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/Settings/CMakeFiles/Settings_autogen_timestamp_deps.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-SolverControl-Debug-0a504d50d19bbd8d63a5.json b/out/build/.cmake/api/v1/reply/target-SolverControl-Debug-0a504d50d19bbd8d63a5.json new file mode 100644 index 0000000..c0feef0 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-SolverControl-Debug-0a504d50d19bbd8d63a5.json @@ -0,0 +1,567 @@ +{ + "artifacts" : + [ + { + "path" : "Debug/SolverControl.dll" + }, + { + "path" : "Debug/SolverControl.lib" + }, + { + "path" : "Debug/SolverControl.pdb" + } + ], + "backtrace" : 1, + "backtraceGraph" : + { + "commands" : + [ + "add_library", + "install", + "target_link_libraries", + "add_dependencies", + "add_compile_options", + "add_definitions", + "target_compile_definitions", + "include_directories" + ], + "files" : + [ + "src/SolverControl/CMakeLists.txt", + "src/CMakeLists.txt", + "src/PythonModule/CMakeLists.txt", + "CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 29, + "parent" : 0 + }, + { + "file" : 1 + }, + { + "command" : 1, + "file" : 1, + "line" : 58, + "parent" : 2 + }, + { + "command" : 2, + "file" : 0, + "line" : 50, + "parent" : 0 + }, + { + "file" : 2 + }, + { + "command" : 2, + "file" : 2, + "line" : 44, + "parent" : 5 + }, + { + "command" : 3, + "file" : 0, + "line" : 58, + "parent" : 0 + }, + { + "file" : 3 + }, + { + "command" : 4, + "file" : 3, + "line" : 85, + "parent" : 8 + }, + { + "command" : 4, + "file" : 3, + "line" : 86, + "parent" : 8 + }, + { + "command" : 5, + "file" : 3, + "line" : 118, + "parent" : 8 + }, + { + "command" : 6, + "file" : 0, + "line" : 39, + "parent" : 0 + }, + { + "command" : 5, + "file" : 3, + "line" : 83, + "parent" : 8 + }, + { + "command" : 7, + "file" : 0, + "line" : 4, + "parent" : 0 + } + ] + }, + "compileGroups" : + [ + { + "compileCommandFragments" : + [ + { + "fragment" : "-DQT_QML_DEBUG /Zi /Ob0 /Od /RTC1 -MDd" + }, + { + "backtrace" : 9, + "fragment" : "/utf-8" + }, + { + "backtrace" : 10, + "fragment" : "/MDd" + } + ], + "defines" : + [ + { + "backtrace" : 11, + "define" : "OUTPUT_DEBUG_INFO" + }, + { + "backtrace" : 4, + "define" : "QT_CORE_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_GUI_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_WIDGETS_LIB" + }, + { + "backtrace" : 12, + "define" : "SOLVERCONTROL_API" + }, + { + "define" : "SolverControl_EXPORTS" + }, + { + "backtrace" : 13, + "define" : "UNICODE" + }, + { + "backtrace" : 13, + "define" : "_UNICODE" + } + ], + "includes" : + [ + { + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/SolverControl" + }, + { + "path" : "D:/WBFZCPP/source/FastCAE/src/SolverControl" + }, + { + "backtrace" : 0, + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/SolverControl/SolverControl_autogen/include" + }, + { + "backtrace" : 14, + "path" : "D:/WBFZCPP/source/FastCAE/src/SolverControl/.." + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtCore" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/./mkspecs/win32-msvc" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtGui" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtANGLE" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtWidgets" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "D:/WBFZCPP/source/FastCAE/extlib/Python/include" + } + ], + "language" : "CXX", + "languageStandard" : + { + "backtraces" : + [ + 4 + ], + "standard" : "11" + }, + "sourceIndexes" : + [ + 0, + 1, + 2, + 10, + 11, + 12, + 13 + ] + } + ], + "dependencies" : + [ + { + "backtrace" : 4, + "id" : "Common::@29aabc9fbfb9b5406d55" + }, + { + "backtrace" : 7, + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "backtrace" : 7, + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "backtrace" : 7, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "backtrace" : 7, + "id" : "SelfDefObject::@17d93127ede5f3b478ed" + }, + { + "backtrace" : 7, + "id" : "ConfigOptions::@1c9d458e4038aca43955" + }, + { + "backtrace" : 7, + "id" : "ModelData::@8a6b2d9535e8b6cb6800" + }, + { + "backtrace" : 7, + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + }, + { + "backtrace" : 7, + "id" : "PostWidgets::@93a5592897f957e6fa57" + }, + { + "backtrace" : 7, + "id" : "IO::@484b42e69e32e953bc79" + }, + { + "id" : "SolverControl_autogen_timestamp_deps::@4a18b637ce8bf6991ec0" + }, + { + "backtrace" : 0, + "id" : "SolverControl_autogen::@4a18b637ce8bf6991ec0" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "SolverControl::@4a18b637ce8bf6991ec0", + "install" : + { + "destinations" : + [ + { + "backtrace" : 3, + "path" : "bin" + } + ], + "prefix" : + { + "path" : "D:/WBFZCPP/source/FastCAE/install" + } + }, + "link" : + { + "commandFragments" : + [ + { + "fragment" : "/machine:x64 /debug /INCREMENTAL", + "role" : "flags" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\PostWidgets.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\IO.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ModuleBase.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ModelData.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\ConfigOptions.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\SelfDefObject.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Settings.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\DataProperty.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\PythonModule.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Widgetsd.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Guid.lib", + "role" : "libraries" + }, + { + "backtrace" : 6, + "fragment" : "D:\\WBFZCPP\\source\\FastCAE\\extlib\\Python\\libs\\python37.lib", + "role" : "libraries" + }, + { + "backtrace" : 6, + "fragment" : "Debug\\Common.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Cored.lib", + "role" : "libraries" + }, + { + "fragment" : "kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib", + "role" : "libraries" + } + ], + "language" : "CXX" + }, + "name" : "SolverControl", + "nameOnDisk" : "SolverControl.dll", + "paths" : + { + "build" : "src/SolverControl", + "source" : "src/SolverControl" + }, + "sourceGroups" : + [ + { + "name" : "Source Files", + "sourceIndexes" : + [ + 0, + 1, + 2, + 10, + 11, + 12, + 13 + ] + }, + { + "name" : "Header Files", + "sourceIndexes" : + [ + 3, + 4, + 5, + 6, + 7, + 8, + 9 + ] + }, + { + "name" : "", + "sourceIndexes" : + [ + 14, + 15, + 16, + 17, + 18 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 19 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/SolverControl/SolverControl_autogen/mocs_compilation.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/SolverControl/qrc_qianfan.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/SolverControl/qrc_translations.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/SolverControl/ui_DialogAddSolver.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/SolverControl/ui_DialogSolverManager.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SolverControl/DialogAddSolver.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SolverControl/DialogSolverManager.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SolverControl/MesherControlerBase.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SolverControl/SolverControlerBase.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/SolverControl/solverControlAPI.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SolverControl/DialogAddSolver.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SolverControl/DialogSolverManager.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SolverControl/MesherControlerBase.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/SolverControl/SolverControlerBase.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/SolverControl/SolverControl_autogen/timestamp", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/qrc/qianfan.qrc", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/qrc/translations.qrc", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/SolverControl/DialogAddSolver.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/SolverControl/DialogSolverManager.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/SolverControl/SolverControl_autogen/timestamp.rule", + "sourceGroupIndex" : 3 + } + ], + "type" : "SHARED_LIBRARY" +} diff --git a/out/build/.cmake/api/v1/reply/target-SolverControl_autogen-Debug-fd4fed30b702707b5aa3.json b/out/build/.cmake/api/v1/reply/target-SolverControl_autogen-Debug-fd4fed30b702707b5aa3.json new file mode 100644 index 0000000..c3747fd --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-SolverControl_autogen-Debug-fd4fed30b702707b5aa3.json @@ -0,0 +1,111 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/SolverControl/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "backtrace" : 0, + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "backtrace" : 0, + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "backtrace" : 0, + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "backtrace" : 0, + "id" : "SelfDefObject::@17d93127ede5f3b478ed" + }, + { + "backtrace" : 0, + "id" : "ConfigOptions::@1c9d458e4038aca43955" + }, + { + "backtrace" : 0, + "id" : "ModelData::@8a6b2d9535e8b6cb6800" + }, + { + "backtrace" : 0, + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + }, + { + "backtrace" : 0, + "id" : "PostWidgets::@93a5592897f957e6fa57" + }, + { + "backtrace" : 0, + "id" : "IO::@484b42e69e32e953bc79" + }, + { + "id" : "SolverControl_autogen_timestamp_deps::@4a18b637ce8bf6991ec0" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "SolverControl_autogen::@4a18b637ce8bf6991ec0", + "isGeneratorProvided" : true, + "name" : "SolverControl_autogen", + "paths" : + { + "build" : "src/SolverControl", + "source" : "src/SolverControl" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1, + 2 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/SolverControl/CMakeFiles/SolverControl_autogen", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/SolverControl/CMakeFiles/SolverControl_autogen.rule", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/SolverControl/SolverControl_autogen/timestamp.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-SolverControl_autogen_timestamp_deps-Debug-9f9b8da9be97a5cf17ab.json b/out/build/.cmake/api/v1/reply/target-SolverControl_autogen_timestamp_deps-Debug-9f9b8da9be97a5cf17ab.json new file mode 100644 index 0000000..90a2f7a --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-SolverControl_autogen_timestamp_deps-Debug-9f9b8da9be97a5cf17ab.json @@ -0,0 +1,92 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/SolverControl/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "id" : "DataProperty::@ec84555ffa827036bc26" + }, + { + "id" : "SelfDefObject::@17d93127ede5f3b478ed" + }, + { + "id" : "ConfigOptions::@1c9d458e4038aca43955" + }, + { + "id" : "ModelData::@8a6b2d9535e8b6cb6800" + }, + { + "id" : "ModuleBase::@53e1b14bc3636b2ea9de" + }, + { + "id" : "PostWidgets::@93a5592897f957e6fa57" + }, + { + "id" : "IO::@484b42e69e32e953bc79" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "SolverControl_autogen_timestamp_deps::@4a18b637ce8bf6991ec0", + "isGeneratorProvided" : true, + "name" : "SolverControl_autogen_timestamp_deps", + "paths" : + { + "build" : "src/SolverControl", + "source" : "src/SolverControl" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/SolverControl/CMakeFiles/SolverControl_autogen_timestamp_deps", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/SolverControl/CMakeFiles/SolverControl_autogen_timestamp_deps.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-UserGuidence-Debug-b2ad728d7cda2c217487.json b/out/build/.cmake/api/v1/reply/target-UserGuidence-Debug-b2ad728d7cda2c217487.json new file mode 100644 index 0000000..3d9e799 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-UserGuidence-Debug-b2ad728d7cda2c217487.json @@ -0,0 +1,476 @@ +{ + "artifacts" : + [ + { + "path" : "Debug/UserGuidence.dll" + }, + { + "path" : "Debug/UserGuidence.lib" + }, + { + "path" : "Debug/UserGuidence.pdb" + } + ], + "backtrace" : 1, + "backtraceGraph" : + { + "commands" : + [ + "add_library", + "install", + "target_link_libraries", + "add_dependencies", + "add_compile_options", + "add_definitions", + "target_compile_definitions", + "include_directories" + ], + "files" : + [ + "src/UserGuidence/CMakeLists.txt", + "src/CMakeLists.txt", + "src/PythonModule/CMakeLists.txt", + "CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 29, + "parent" : 0 + }, + { + "file" : 1 + }, + { + "command" : 1, + "file" : 1, + "line" : 58, + "parent" : 2 + }, + { + "command" : 2, + "file" : 0, + "line" : 46, + "parent" : 0 + }, + { + "file" : 2 + }, + { + "command" : 2, + "file" : 2, + "line" : 44, + "parent" : 5 + }, + { + "command" : 3, + "file" : 0, + "line" : 54, + "parent" : 0 + }, + { + "file" : 3 + }, + { + "command" : 4, + "file" : 3, + "line" : 85, + "parent" : 8 + }, + { + "command" : 4, + "file" : 3, + "line" : 86, + "parent" : 8 + }, + { + "command" : 5, + "file" : 3, + "line" : 118, + "parent" : 8 + }, + { + "command" : 5, + "file" : 3, + "line" : 83, + "parent" : 8 + }, + { + "command" : 6, + "file" : 0, + "line" : 36, + "parent" : 0 + }, + { + "command" : 7, + "file" : 0, + "line" : 4, + "parent" : 0 + } + ] + }, + "compileGroups" : + [ + { + "compileCommandFragments" : + [ + { + "fragment" : "-DQT_QML_DEBUG /Zi /Ob0 /Od /RTC1 -MDd" + }, + { + "backtrace" : 9, + "fragment" : "/utf-8" + }, + { + "backtrace" : 10, + "fragment" : "/MDd" + } + ], + "defines" : + [ + { + "backtrace" : 11, + "define" : "OUTPUT_DEBUG_INFO" + }, + { + "backtrace" : 4, + "define" : "QT_CORE_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_GUI_LIB" + }, + { + "backtrace" : 4, + "define" : "QT_WIDGETS_LIB" + }, + { + "backtrace" : 12, + "define" : "UNICODE" + }, + { + "backtrace" : 13, + "define" : "USERGUIDENCE_API" + }, + { + "define" : "UserGuidence_EXPORTS" + }, + { + "backtrace" : 12, + "define" : "_UNICODE" + } + ], + "includes" : + [ + { + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/UserGuidence" + }, + { + "path" : "D:/WBFZCPP/source/FastCAE/src/UserGuidence" + }, + { + "backtrace" : 0, + "path" : "D:/WBFZCPP/source/FastCAE/out/build/src/UserGuidence/UserGuidence_autogen/include" + }, + { + "backtrace" : 14, + "path" : "D:/WBFZCPP/source/FastCAE/src/UserGuidence/.." + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtCore" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/./mkspecs/win32-msvc" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtGui" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtANGLE" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "C:/Qt/5.15.2/msvc2019_64/include/QtWidgets" + }, + { + "backtrace" : 4, + "isSystem" : true, + "path" : "D:/WBFZCPP/source/FastCAE/extlib/Python/include" + } + ], + "language" : "CXX", + "languageStandard" : + { + "backtraces" : + [ + 4 + ], + "standard" : "11" + }, + "sourceIndexes" : + [ + 0, + 1, + 2, + 8, + 9 + ] + } + ], + "dependencies" : + [ + { + "backtrace" : 4, + "id" : "Common::@29aabc9fbfb9b5406d55" + }, + { + "backtrace" : 7, + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "backtrace" : 7, + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "backtrace" : 0, + "id" : "UserGuidence_autogen::@40175f0e8ac13e21fe7c" + }, + { + "id" : "UserGuidence_autogen_timestamp_deps::@40175f0e8ac13e21fe7c" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "UserGuidence::@40175f0e8ac13e21fe7c", + "install" : + { + "destinations" : + [ + { + "backtrace" : 3, + "path" : "bin" + } + ], + "prefix" : + { + "path" : "D:/WBFZCPP/source/FastCAE/install" + } + }, + "link" : + { + "commandFragments" : + [ + { + "fragment" : "/machine:x64 /debug /INCREMENTAL", + "role" : "flags" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\Settings.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "Debug\\PythonModule.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Widgetsd.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Guid.lib", + "role" : "libraries" + }, + { + "backtrace" : 6, + "fragment" : "D:\\WBFZCPP\\source\\FastCAE\\extlib\\Python\\libs\\python37.lib", + "role" : "libraries" + }, + { + "backtrace" : 6, + "fragment" : "Debug\\Common.lib", + "role" : "libraries" + }, + { + "backtrace" : 4, + "fragment" : "C:\\Qt\\5.15.2\\msvc2019_64\\lib\\Qt5Cored.lib", + "role" : "libraries" + }, + { + "fragment" : "kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib", + "role" : "libraries" + } + ], + "language" : "CXX" + }, + "name" : "UserGuidence", + "nameOnDisk" : "UserGuidence.dll", + "paths" : + { + "build" : "src/UserGuidence", + "source" : "src/UserGuidence" + }, + "sourceGroups" : + [ + { + "name" : "Source Files", + "sourceIndexes" : + [ + 0, + 1, + 2, + 8, + 9 + ] + }, + { + "name" : "Header Files", + "sourceIndexes" : + [ + 3, + 4, + 5, + 6, + 7 + ] + }, + { + "name" : "", + "sourceIndexes" : + [ + 10, + 11, + 12, + 13, + 14 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 15 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/UserGuidence/UserGuidence_autogen/mocs_compilation.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/UserGuidence/qrc_qianfan.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "isGenerated" : true, + "path" : "out/build/src/UserGuidence/qrc_translations.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/UserGuidence/ui_DialogUserGuidence.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "isGenerated" : true, + "path" : "out/build/src/UserGuidence/ui_ExampleWidget.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/UserGuidence/DialogUserGuidence.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/UserGuidence/ExampleWidget.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "src/UserGuidence/UserGuidenceAPI.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/UserGuidence/DialogUserGuidence.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/UserGuidence/ExampleWidget.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/UserGuidence/UserGuidence_autogen/timestamp", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/qrc/qianfan.qrc", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/qrc/translations.qrc", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/UserGuidence/DialogUserGuidence.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "path" : "src/UserGuidence/ExampleWidget.ui", + "sourceGroupIndex" : 2 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/UserGuidence/UserGuidence_autogen/timestamp.rule", + "sourceGroupIndex" : 3 + } + ], + "type" : "SHARED_LIBRARY" +} diff --git a/out/build/.cmake/api/v1/reply/target-UserGuidence_autogen-Debug-f95f6abacacf44ef7ec9.json b/out/build/.cmake/api/v1/reply/target-UserGuidence_autogen-Debug-f95f6abacacf44ef7ec9.json new file mode 100644 index 0000000..ff00a7e --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-UserGuidence_autogen-Debug-f95f6abacacf44ef7ec9.json @@ -0,0 +1,83 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/UserGuidence/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "backtrace" : 0, + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "backtrace" : 0, + "id" : "Settings::@733e6871ef4a824e534d" + }, + { + "id" : "UserGuidence_autogen_timestamp_deps::@40175f0e8ac13e21fe7c" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "UserGuidence_autogen::@40175f0e8ac13e21fe7c", + "isGeneratorProvided" : true, + "name" : "UserGuidence_autogen", + "paths" : + { + "build" : "src/UserGuidence", + "source" : "src/UserGuidence" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1, + 2 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/UserGuidence/CMakeFiles/UserGuidence_autogen", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/UserGuidence/CMakeFiles/UserGuidence_autogen.rule", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/UserGuidence/UserGuidence_autogen/timestamp.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/target-UserGuidence_autogen_timestamp_deps-Debug-6bd0d217bb37b698b434.json b/out/build/.cmake/api/v1/reply/target-UserGuidence_autogen_timestamp_deps-Debug-6bd0d217bb37b698b434.json new file mode 100644 index 0000000..5813cb4 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/target-UserGuidence_autogen_timestamp_deps-Debug-6bd0d217bb37b698b434.json @@ -0,0 +1,71 @@ +{ + "backtrace" : 0, + "backtraceGraph" : + { + "commands" : [], + "files" : + [ + "src/UserGuidence/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + } + ] + }, + "dependencies" : + [ + { + "id" : "PythonModule::@c600c49a22fbbbfcb8ff" + }, + { + "id" : "Settings::@733e6871ef4a824e534d" + } + ], + "folder" : + { + "name" : "Modules" + }, + "id" : "UserGuidence_autogen_timestamp_deps::@40175f0e8ac13e21fe7c", + "isGeneratorProvided" : true, + "name" : "UserGuidence_autogen_timestamp_deps", + "paths" : + { + "build" : "src/UserGuidence", + "source" : "src/UserGuidence" + }, + "sourceGroups" : + [ + { + "name" : "", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "CMake Rules", + "sourceIndexes" : + [ + 1 + ] + } + ], + "sources" : + [ + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/UserGuidence/CMakeFiles/UserGuidence_autogen_timestamp_deps", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 0, + "isGenerated" : true, + "path" : "out/build/src/UserGuidence/CMakeFiles/UserGuidence_autogen_timestamp_deps.rule", + "sourceGroupIndex" : 1 + } + ], + "type" : "UTILITY" +} diff --git a/out/build/.cmake/api/v1/reply/toolchains-v1-2d3eac1e199c73b65707.json b/out/build/.cmake/api/v1/reply/toolchains-v1-2d3eac1e199c73b65707.json new file mode 100644 index 0000000..89cc398 --- /dev/null +++ b/out/build/.cmake/api/v1/reply/toolchains-v1-2d3eac1e199c73b65707.json @@ -0,0 +1,58 @@ +{ + "kind" : "toolchains", + "toolchains" : + [ + { + "compiler" : + { + "id" : "MSVC", + "implicit" : + { + "includeDirectories" : [], + "linkDirectories" : [], + "linkFrameworkDirectories" : [], + "linkLibraries" : [] + }, + "path" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/VC/Tools/MSVC/14.39.33519/bin/Hostx64/x64/cl.exe", + "version" : "19.39.33522.0" + }, + "language" : "CXX", + "sourceFileExtensions" : + [ + "C", + "M", + "c++", + "cc", + "cpp", + "cxx", + "m", + "mm", + "mpp", + "CPP", + "ixx", + "cppm", + "ccm", + "cxxm", + "c++m" + ] + }, + { + "compiler" : + { + "implicit" : {}, + "path" : "C:/Program Files (x86)/Windows Kits/10/bin/10.0.22621.0/x64/rc.exe" + }, + "language" : "RC", + "sourceFileExtensions" : + [ + "rc", + "RC" + ] + } + ], + "version" : + { + "major" : 1, + "minor" : 0 + } +} diff --git a/out/build/CMakeCache.txt b/out/build/CMakeCache.txt new file mode 100644 index 0000000..d1676e4 --- /dev/null +++ b/out/build/CMakeCache.txt @@ -0,0 +1,598 @@ +# This is the CMakeCache file. +# For build in directory: d:/WBFZCPP/source/FastCAE/out/build +# It was generated by CMake: C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/bin/cmake.exe +# You can edit this file to change values found and used by cmake. +# If you do not want to change any of the values, simply exit the editor. +# If you do want to change a value, simply edit, save, and exit the editor. +# The syntax for the file is as follows: +# KEY:TYPE=VALUE +# KEY is the name of a variable in the cache. +# TYPE is a hint to GUIs for the type of VALUE, DO NOT EDIT TYPE!. +# VALUE is the current value for the KEY. + +######################## +# EXTERNAL cache entries +######################## + +//Path to a file. +CGNS_DIRS:PATH=D:/vcpkg/installed/x64-windows + +//Path to a file. +CGNS_INCLUDE_DIRS:PATH=D:/vcpkg/installed/x64-windows/include + +//Path to a file. +CGNS_LIBRARY_DIRS:PATH=D:/vcpkg/installed/x64-windows/lib + +//Path to a program. +CMAKE_AR:FILEPATH=C:/Program Files/Microsoft Visual Studio/2022/Enterprise/VC/Tools/MSVC/14.39.33519/bin/Hostx64/x64/lib.exe + +//No help, variable specified on the command line. +CMAKE_BUILD_TYPE:STRING=Debug + +//CXX compiler +CMAKE_CXX_COMPILER:FILEPATH=C:/Program Files/Microsoft Visual Studio/2022/Enterprise/VC/Tools/MSVC/14.39.33519/bin/Hostx64/x64/cl.exe + +//No help, variable specified on the command line. +CMAKE_CXX_FLAGS:STRING=-DQT_QML_DEBUG + +//Flags used by the CXX compiler during DEBUG builds. +CMAKE_CXX_FLAGS_DEBUG:STRING=/Zi /Ob0 /Od /RTC1 + +//Flags used by the CXX compiler during MINSIZEREL builds. +CMAKE_CXX_FLAGS_MINSIZEREL:STRING=/O1 /Ob1 /DNDEBUG + +//Flags used by the CXX compiler during RELEASE builds. +CMAKE_CXX_FLAGS_RELEASE:STRING=/O2 /Ob2 /DNDEBUG + +//Flags used by the CXX compiler during RELWITHDEBINFO builds. +CMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING=/Zi /O2 /Ob1 /DNDEBUG + +//Libraries linked by default with all C++ applications. +CMAKE_CXX_STANDARD_LIBRARIES:STRING=kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib + +//Flags used by the linker during all build types. +CMAKE_EXE_LINKER_FLAGS:STRING=/machine:x64 + +//Flags used by the linker during DEBUG builds. +CMAKE_EXE_LINKER_FLAGS_DEBUG:STRING=/debug /INCREMENTAL + +//Flags used by the linker during MINSIZEREL builds. +CMAKE_EXE_LINKER_FLAGS_MINSIZEREL:STRING=/INCREMENTAL:NO + +//Flags used by the linker during RELEASE builds. +CMAKE_EXE_LINKER_FLAGS_RELEASE:STRING=/INCREMENTAL:NO + +//Flags used by the linker during RELWITHDEBINFO builds. +CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO:STRING=/debug /INCREMENTAL + +//Enable/Disable output of compile commands during generation. +CMAKE_EXPORT_COMPILE_COMMANDS:BOOL= + +//Value Computed by CMake. +CMAKE_FIND_PACKAGE_REDIRECTS_DIR:STATIC=D:/WBFZCPP/source/FastCAE/out/build/CMakeFiles/pkgRedirects + +//User executables (bin) +CMAKE_INSTALL_BINDIR:PATH=bin + +//Read-only architecture-independent data (DATAROOTDIR) +CMAKE_INSTALL_DATADIR:PATH= + +//Read-only architecture-independent data root (share) +CMAKE_INSTALL_DATAROOTDIR:PATH=share + +//Documentation root (DATAROOTDIR/doc/PROJECT_NAME) +CMAKE_INSTALL_DOCDIR:PATH= + +//C header files (include) +CMAKE_INSTALL_INCLUDEDIR:PATH=include + +//Info documentation (DATAROOTDIR/info) +CMAKE_INSTALL_INFODIR:PATH= + +//Object code libraries (lib) +CMAKE_INSTALL_LIBDIR:PATH=lib + +//Program executables (libexec) +CMAKE_INSTALL_LIBEXECDIR:PATH=libexec + +//Locale-dependent data (DATAROOTDIR/locale) +CMAKE_INSTALL_LOCALEDIR:PATH= + +//Modifiable single-machine data (var) +CMAKE_INSTALL_LOCALSTATEDIR:PATH=var + +//Man documentation (DATAROOTDIR/man) +CMAKE_INSTALL_MANDIR:PATH= + +//C header files for non-gcc (/usr/include) +CMAKE_INSTALL_OLDINCLUDEDIR:PATH=/usr/include + +//LAMPCAE的安装路径 +CMAKE_INSTALL_PREFIX:PATH=c:/Program Files/LAMPCAE + +//Run-time variable data (LOCALSTATEDIR/run) +CMAKE_INSTALL_RUNSTATEDIR:PATH= + +//System admin executables (sbin) +CMAKE_INSTALL_SBINDIR:PATH=sbin + +//Modifiable architecture-independent data (com) +CMAKE_INSTALL_SHAREDSTATEDIR:PATH=com + +//Read-only single-machine data (etc) +CMAKE_INSTALL_SYSCONFDIR:PATH=etc + +//Path to a program. +CMAKE_LINKER:FILEPATH=C:/Program Files/Microsoft Visual Studio/2022/Enterprise/VC/Tools/MSVC/14.39.33519/bin/Hostx64/x64/link.exe + +//make program +CMAKE_MAKE_PROGRAM:FILEPATH=C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/Ninja/ninja.exe + +//Flags used by the linker during the creation of modules during +// all build types. +CMAKE_MODULE_LINKER_FLAGS:STRING=/machine:x64 + +//Flags used by the linker during the creation of modules during +// DEBUG builds. +CMAKE_MODULE_LINKER_FLAGS_DEBUG:STRING=/debug /INCREMENTAL + +//Flags used by the linker during the creation of modules during +// MINSIZEREL builds. +CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL:STRING=/INCREMENTAL:NO + +//Flags used by the linker during the creation of modules during +// RELEASE builds. +CMAKE_MODULE_LINKER_FLAGS_RELEASE:STRING=/INCREMENTAL:NO + +//Flags used by the linker during the creation of modules during +// RELWITHDEBINFO builds. +CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO:STRING=/debug /INCREMENTAL + +//Path to a program. +CMAKE_MT:FILEPATH=C:/Program Files (x86)/Windows Kits/10/bin/10.0.22621.0/x64/mt.exe + +//No help, variable specified on the command line. +CMAKE_PREFIX_PATH:STRING=C:/QT/5.15.2/MSVC2019_64 + +//Value Computed by CMake +CMAKE_PROJECT_DESCRIPTION:STATIC=LAMPCAE ,基于 FastCAE,一款å…费的CAEä»¿çœŸè½¯ä»¶ç ”å‘æ”¯æ’‘å¹³å°ã€‚ + +//Value Computed by CMake +CMAKE_PROJECT_HOMEPAGE_URL:STATIC=http://www.LAMPCAE.com/ + +//Value Computed by CMake +CMAKE_PROJECT_NAME:STATIC=LAMPCAE + +//Value Computed by CMake +CMAKE_PROJECT_VERSION:STATIC=2.5.0 + +//Value Computed by CMake +CMAKE_PROJECT_VERSION_MAJOR:STATIC=2 + +//Value Computed by CMake +CMAKE_PROJECT_VERSION_MINOR:STATIC=5 + +//Value Computed by CMake +CMAKE_PROJECT_VERSION_PATCH:STATIC=0 + +//Value Computed by CMake +CMAKE_PROJECT_VERSION_TWEAK:STATIC= + +//RC compiler +CMAKE_RC_COMPILER:FILEPATH=C:/Program Files (x86)/Windows Kits/10/bin/10.0.22621.0/x64/rc.exe + +//Flags for Windows Resource Compiler during all build types. +CMAKE_RC_FLAGS:STRING=-DWIN32 + +//Flags for Windows Resource Compiler during DEBUG builds. +CMAKE_RC_FLAGS_DEBUG:STRING=-D_DEBUG + +//Flags for Windows Resource Compiler during MINSIZEREL builds. +CMAKE_RC_FLAGS_MINSIZEREL:STRING= + +//Flags for Windows Resource Compiler during RELEASE builds. +CMAKE_RC_FLAGS_RELEASE:STRING= + +//Flags for Windows Resource Compiler during RELWITHDEBINFO builds. +CMAKE_RC_FLAGS_RELWITHDEBINFO:STRING= + +//Flags used by the linker during the creation of shared libraries +// during all build types. +CMAKE_SHARED_LINKER_FLAGS:STRING=/machine:x64 + +//Flags used by the linker during the creation of shared libraries +// during DEBUG builds. +CMAKE_SHARED_LINKER_FLAGS_DEBUG:STRING=/debug /INCREMENTAL + +//Flags used by the linker during the creation of shared libraries +// during MINSIZEREL builds. +CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL:STRING=/INCREMENTAL:NO + +//Flags used by the linker during the creation of shared libraries +// during RELEASE builds. +CMAKE_SHARED_LINKER_FLAGS_RELEASE:STRING=/INCREMENTAL:NO + +//Flags used by the linker during the creation of shared libraries +// during RELWITHDEBINFO builds. +CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO:STRING=/debug /INCREMENTAL + +//If set, runtime paths are not added when installing shared libraries, +// but are added when building. +CMAKE_SKIP_INSTALL_RPATH:BOOL=NO + +//If set, runtime paths are not added when using shared libraries. +CMAKE_SKIP_RPATH:BOOL=NO + +//Flags used by the linker during the creation of static libraries +// during all build types. +CMAKE_STATIC_LINKER_FLAGS:STRING=/machine:x64 + +//Flags used by the linker during the creation of static libraries +// during DEBUG builds. +CMAKE_STATIC_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during the creation of static libraries +// during MINSIZEREL builds. +CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during the creation of static libraries +// during RELEASE builds. +CMAKE_STATIC_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during the creation of static libraries +// during RELWITHDEBINFO builds. +CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//If this value is on, makefiles will be generated without the +// .SILENT directive, and all commands will be echoed to the console +// during the make. This is useful for debugging only. With Visual +// Studio IDE projects all commands are done without /nologo. +CMAKE_VERBOSE_MAKEFILE:BOOL=FALSE + +//Enable to build 7-Zip packages +CPACK_BINARY_7Z:BOOL=OFF + +//Enable to build IFW packages +CPACK_BINARY_IFW:BOOL=OFF + +//Enable to build Inno Setup packages +CPACK_BINARY_INNOSETUP:BOOL=OFF + +//Enable to build NSIS packages +CPACK_BINARY_NSIS:BOOL=ON + +//Enable to build NuGet packages +CPACK_BINARY_NUGET:BOOL=OFF + +//Enable to build WiX packages +CPACK_BINARY_WIX:BOOL=OFF + +//Enable to build ZIP packages +CPACK_BINARY_ZIP:BOOL=OFF + +//Enable to build 7-Zip source packages +CPACK_SOURCE_7Z:BOOL=ON + +//Enable to build ZIP source packages +CPACK_SOURCE_ZIP:BOOL=ON + +//Dot tool for use with Doxygen +DOXYGEN_DOT_EXECUTABLE:FILEPATH=DOXYGEN_DOT_EXECUTABLE-NOTFOUND + +//Doxygen documentation generation tool (https://www.doxygen.nl) +DOXYGEN_EXECUTABLE:FILEPATH=C:/doxygen/bin/doxygen.exe + +//Path to a file. +Gmsh_DIRS:PATH=D:/WBFZCPP/source/FastCAE/extlib/Gmsh + +//Path to a file. +HDF5_DIRS:PATH=D:/WBFZCPP/source/FastCAE/extlib/HDF5 + +//Path to a file. +HDF5_INCLUDE_DIRS:PATH=D:/WBFZCPP/source/FastCAE/extlib/HDF5/include + +//Path to a file. +HDF5_LIBRARY_DIRS:PATH=D:/WBFZCPP/source/FastCAE/extlib/HDF5/lib + +//如果extlibä¸å­˜åœ¨ï¼Œåˆ™è‡ªåŠ¨ä¸‹è½½(git)ä¾èµ–库 +LAMPCAE_AUTO_DOWNLOAD:BOOL=ON + +//Value Computed by CMake +LAMPCAE_BINARY_DIR:STATIC=D:/WBFZCPP/source/FastCAE/out/build + +//è¾“å‡ºè°ƒè¯•ä¿¡æ¯ +LAMPCAE_DEBUG_INFO:BOOL=ON + +//生æˆDoxygen文档 +LAMPCAE_DOXYGEN_DOC:BOOL=ON + +//ON:å¼€å¯ä»£ç è°ƒè¯•,OFF:ä»…å®‰è£…ç¨‹åº +LAMPCAE_ENABLE_DEV:BOOL=ON + +//使用MPI +LAMPCAE_ENABLE_MPI:BOOL=OFF + +//使用OpenMP +LAMPCAE_ENABLE_OPENMP:BOOL=OFF + +//å¼€å¯å•元测试(尚未开å‘完æˆï¼‰ +LAMPCAE_ENABLE_TEST:BOOL=OFF + +//生æˆLAMPCAE安装包 +LAMPCAE_INSTALLATION_PACKAGE:BOOL=ON + +//Value Computed by CMake +LAMPCAE_IS_TOP_LEVEL:STATIC=ON + +//Value Computed by CMake +LAMPCAE_SOURCE_DIR:STATIC=D:/WBFZCPP/source/FastCAE + +//Path to a program. +NSIS_EXECUTABLE:FILEPATH=NSIS_EXECUTABLE-NOTFOUND + +//Path to a file. +Python_DIRS:PATH=D:/WBFZCPP/source/FastCAE/extlib/Python + +//Path to a file. +Python_INCLUDE_DIRS:PATH=D:/WBFZCPP/source/FastCAE/extlib/Python/include + +//Path to a file. +Python_LIBRARY_DIRS:PATH=D:/WBFZCPP/source/FastCAE/extlib/Python/libs + +//The directory containing a CMake configuration file for Qt5Core. +Qt5Core_DIR:PATH=C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Core + +//The directory containing a CMake configuration file for Qt5DBus. +Qt5DBus_DIR:PATH=C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5DBus + +//The directory containing a CMake configuration file for Qt5Gui. +Qt5Gui_DIR:PATH=C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Gui + +//The directory containing a CMake configuration file for Qt5OpenGL. +Qt5OpenGL_DIR:PATH=C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5OpenGL + +//The directory containing a CMake configuration file for Qt5PrintSupport. +Qt5PrintSupport_DIR:PATH=C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5PrintSupport + +//The directory containing a CMake configuration file for Qt5Svg. +Qt5Svg_DIR:PATH=C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Svg + +//The directory containing a CMake configuration file for Qt5Widgets. +Qt5Widgets_DIR:PATH=C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Widgets + +//The directory containing a CMake configuration file for Qt5Xml. +Qt5Xml_DIR:PATH=C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5Xml + +//Qt5Config.cmake所在目录 +Qt5_DIR:PATH=C:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5 + +//Path to a file. +QuaZIP_BINARY_DIRS:PATH=D:/WBFZCPP/source/FastCAE/extlib/QuaZIP/lib + +//Path to a file. +QuaZIP_DIRS:PATH=D:/WBFZCPP/source/FastCAE/extlib/QuaZIP + +//Path to a file. +QuaZIP_INCLUDE_DIRS:PATH=D:/WBFZCPP/source/FastCAE/extlib/QuaZIP/include/quazip5 + +//Path to a file. +QuaZIP_LIBRARY_DIRS:PATH=D:/WBFZCPP/source/FastCAE/extlib/QuaZIP/lib + +//Path to a file. +Qwt_BINARY_DIRS:PATH=C:/Qwt/lib + +//Path to a file. +Qwt_INCLUDE_DIRS:PATH=C:/Qwt/include + +//Path to a file. +Qwt_LIBRARY_DIRS:PATH=C:/Qwt/lib + +//Path to a file. +TecIO_DIRS:PATH=D:/WBFZCPP/source/FastCAE/extlib/TecIO + +//Path to a file. +TecIO_INCLUDE_DIRS:PATH=D:/WBFZCPP/source/FastCAE/extlib/TecIO/include + +//Path to a file. +TecIO_LIBRARY_DIRS:PATH=D:/WBFZCPP/source/FastCAE/extlib/TecIO/lib + + +######################## +# INTERNAL cache entries +######################## + +//ADVANCED property for variable: CMAKE_AR +CMAKE_AR-ADVANCED:INTERNAL=1 +//This is the directory where this CMakeCache.txt was created +CMAKE_CACHEFILE_DIR:INTERNAL=d:/WBFZCPP/source/FastCAE/out/build +//Major version of cmake used to create the current loaded cache +CMAKE_CACHE_MAJOR_VERSION:INTERNAL=3 +//Minor version of cmake used to create the current loaded cache +CMAKE_CACHE_MINOR_VERSION:INTERNAL=28 +//Patch version of cmake used to create the current loaded cache +CMAKE_CACHE_PATCH_VERSION:INTERNAL=0 +//Path to CMake executable. +CMAKE_COMMAND:INTERNAL=C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/bin/cmake.exe +//Path to cpack program executable. +CMAKE_CPACK_COMMAND:INTERNAL=C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/bin/cpack.exe +//Path to ctest program executable. +CMAKE_CTEST_COMMAND:INTERNAL=C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/bin/ctest.exe +//ADVANCED property for variable: CMAKE_CXX_COMPILER +CMAKE_CXX_COMPILER-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS +CMAKE_CXX_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_DEBUG +CMAKE_CXX_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_MINSIZEREL +CMAKE_CXX_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELEASE +CMAKE_CXX_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELWITHDEBINFO +CMAKE_CXX_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_STANDARD_LIBRARIES +CMAKE_CXX_STANDARD_LIBRARIES-ADVANCED:INTERNAL=1 +//Executable file format +CMAKE_EXECUTABLE_FORMAT:INTERNAL=Unknown +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS +CMAKE_EXE_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_DEBUG +CMAKE_EXE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_MINSIZEREL +CMAKE_EXE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELEASE +CMAKE_EXE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXPORT_COMPILE_COMMANDS +CMAKE_EXPORT_COMPILE_COMMANDS-ADVANCED:INTERNAL=1 +//Name of external makefile project generator. +CMAKE_EXTRA_GENERATOR:INTERNAL= +//Name of generator. +CMAKE_GENERATOR:INTERNAL=Ninja +//Generator instance identifier. +CMAKE_GENERATOR_INSTANCE:INTERNAL= +//Name of generator platform. +CMAKE_GENERATOR_PLATFORM:INTERNAL= +//Name of generator toolset. +CMAKE_GENERATOR_TOOLSET:INTERNAL= +//Source directory with the top level CMakeLists.txt file for this +// project +CMAKE_HOME_DIRECTORY:INTERNAL=D:/WBFZCPP/source/FastCAE +//ADVANCED property for variable: CMAKE_INSTALL_BINDIR +CMAKE_INSTALL_BINDIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_DATADIR +CMAKE_INSTALL_DATADIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_DATAROOTDIR +CMAKE_INSTALL_DATAROOTDIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_DOCDIR +CMAKE_INSTALL_DOCDIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_INCLUDEDIR +CMAKE_INSTALL_INCLUDEDIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_INFODIR +CMAKE_INSTALL_INFODIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_LIBDIR +CMAKE_INSTALL_LIBDIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_LIBEXECDIR +CMAKE_INSTALL_LIBEXECDIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_LOCALEDIR +CMAKE_INSTALL_LOCALEDIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_LOCALSTATEDIR +CMAKE_INSTALL_LOCALSTATEDIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_MANDIR +CMAKE_INSTALL_MANDIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_OLDINCLUDEDIR +CMAKE_INSTALL_OLDINCLUDEDIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_RUNSTATEDIR +CMAKE_INSTALL_RUNSTATEDIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_SBINDIR +CMAKE_INSTALL_SBINDIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_SHAREDSTATEDIR +CMAKE_INSTALL_SHAREDSTATEDIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_SYSCONFDIR +CMAKE_INSTALL_SYSCONFDIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_LINKER +CMAKE_LINKER-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS +CMAKE_MODULE_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_DEBUG +CMAKE_MODULE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL +CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELEASE +CMAKE_MODULE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MT +CMAKE_MT-ADVANCED:INTERNAL=1 +//number of local generators +CMAKE_NUMBER_OF_MAKEFILES:INTERNAL=37 +//Platform information initialized +CMAKE_PLATFORM_INFO_INITIALIZED:INTERNAL=1 +//noop for ranlib +CMAKE_RANLIB:INTERNAL=: +//ADVANCED property for variable: CMAKE_RC_COMPILER +CMAKE_RC_COMPILER-ADVANCED:INTERNAL=1 +CMAKE_RC_COMPILER_WORKS:INTERNAL=1 +//ADVANCED property for variable: CMAKE_RC_FLAGS +CMAKE_RC_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_RC_FLAGS_DEBUG +CMAKE_RC_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_RC_FLAGS_MINSIZEREL +CMAKE_RC_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_RC_FLAGS_RELEASE +CMAKE_RC_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_RC_FLAGS_RELWITHDEBINFO +CMAKE_RC_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//Path to CMake installation. +CMAKE_ROOT:INTERNAL=C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS +CMAKE_SHARED_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_DEBUG +CMAKE_SHARED_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL +CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELEASE +CMAKE_SHARED_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SKIP_INSTALL_RPATH +CMAKE_SKIP_INSTALL_RPATH-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SKIP_RPATH +CMAKE_SKIP_RPATH-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS +CMAKE_STATIC_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_DEBUG +CMAKE_STATIC_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL +CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELEASE +CMAKE_STATIC_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_VERBOSE_MAKEFILE +CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CPACK_BINARY_7Z +CPACK_BINARY_7Z-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CPACK_BINARY_IFW +CPACK_BINARY_IFW-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CPACK_BINARY_INNOSETUP +CPACK_BINARY_INNOSETUP-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CPACK_BINARY_NSIS +CPACK_BINARY_NSIS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CPACK_BINARY_NUGET +CPACK_BINARY_NUGET-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CPACK_BINARY_WIX +CPACK_BINARY_WIX-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CPACK_BINARY_ZIP +CPACK_BINARY_ZIP-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CPACK_SOURCE_7Z +CPACK_SOURCE_7Z-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CPACK_SOURCE_ZIP +CPACK_SOURCE_ZIP-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: DOXYGEN_DOT_EXECUTABLE +DOXYGEN_DOT_EXECUTABLE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: DOXYGEN_EXECUTABLE +DOXYGEN_EXECUTABLE-ADVANCED:INTERNAL=1 +//Details about finding CGNS +FIND_PACKAGE_MESSAGE_DETAILS_CGNS:INTERNAL=[D:/vcpkg/installed/x64-windows][D:/vcpkg/installed/x64-windows/include][D:/vcpkg/installed/x64-windows/lib][LAMPCAE::CGNS][v4.3.0()] +//Details about finding Doxygen +FIND_PACKAGE_MESSAGE_DETAILS_Doxygen:INTERNAL=[C:/doxygen/bin/doxygen.exe][cfound components: doxygen missing components: dot][v1.10.0()] +//Details about finding Gmsh +FIND_PACKAGE_MESSAGE_DETAILS_Gmsh:INTERNAL=[D:/WBFZCPP/source/FastCAE/extlib/Gmsh][D:/WBFZCPP/source/FastCAE/extlib/Gmsh/gmsh.exe][v4.8.0()] +//Details about finding HDF5 +FIND_PACKAGE_MESSAGE_DETAILS_HDF5:INTERNAL=[D:/WBFZCPP/source/FastCAE/extlib/HDF5][D:/WBFZCPP/source/FastCAE/extlib/HDF5/include][D:/WBFZCPP/source/FastCAE/extlib/HDF5/lib][LAMPCAE::HDF5;LAMPCAE::HDF5CPP;LAMPCAE::HDF5HL;LAMPCAE::HDF5HLCPP;LAMPCAE::HDF5TOOLS][v1.13.1()] +//Details about finding OpenCASCADE +FIND_PACKAGE_MESSAGE_DETAILS_OpenCASCADE:INTERNAL=[C:/OCCT][C:/OCCT/inc][C:/OCCT/win64/vc14/lib][OpenCASCADE::Freetype;OpenCASCADE::Tcl86;OpenCASCADE::Tk86;OpenCASCADE::TKernel;OpenCASCADE::TKMath;OpenCASCADE::TKG2d;OpenCASCADE::TKG3d;OpenCASCADE::TKGeomBase;OpenCASCADE::TKBRep;OpenCASCADE::TKGeomAlgo;OpenCASCADE::TKTopAlgo;OpenCASCADE::TKPrim;OpenCASCADE::TKBO;OpenCASCADE::TKShHealing;OpenCASCADE::TKBool;OpenCASCADE::TKHLR;OpenCASCADE::TKFillet;OpenCASCADE::TKOffset;OpenCASCADE::TKFeat;OpenCASCADE::TKMesh;OpenCASCADE::TKXMesh;OpenCASCADE::TKService;OpenCASCADE::TKV3d;OpenCASCADE::TKOpenGl;OpenCASCADE::TKMeshVS;OpenCASCADE::TKIVtk;OpenCASCADE::TKCDF;OpenCASCADE::TKLCAF;OpenCASCADE::TKCAF;OpenCASCADE::TKBinL;OpenCASCADE::TKXmlL;OpenCASCADE::TKBin;OpenCASCADE::TKXml;OpenCASCADE::TKStdL;OpenCASCADE::TKStd;OpenCASCADE::TKTObj;OpenCASCADE::TKBinTObj;OpenCASCADE::TKXmlTObj;OpenCASCADE::TKVCAF;OpenCASCADE::TKXSBase;OpenCASCADE::TKSTEPBase;OpenCASCADE::TKSTEPAttr;OpenCASCADE::TKSTEP209;OpenCASCADE::TKSTEP;OpenCASCADE::TKIGES;OpenCASCADE::TKXCAF;OpenCASCADE::TKXDEIGES;OpenCASCADE::TKXDESTEP;OpenCASCADE::TKSTL;OpenCASCADE::TKVRML;OpenCASCADE::TKXmlXCAF;OpenCASCADE::TKBinXCAF;OpenCASCADE::TKRWMesh;OpenCASCADE::TKDraw;OpenCASCADE::TKTopTest;OpenCASCADE::TKOpenGlTest;OpenCASCADE::TKViewerTest;OpenCASCADE::TKXSDRAW;OpenCASCADE::TKDCAF;OpenCASCADE::TKXDEDRAW;OpenCASCADE::TKTObjDRAW;OpenCASCADE::TKQADraw;OpenCASCADE::TKIVtkDraw][C:/OCCT/win64/vc14/bin][v7.6.0()] +//Details about finding Python +FIND_PACKAGE_MESSAGE_DETAILS_Python:INTERNAL=[D:/WBFZCPP/source/FastCAE/extlib/Python][D:/WBFZCPP/source/FastCAE/extlib/Python/include][D:/WBFZCPP/source/FastCAE/extlib/Python/libs][LAMPCAE::PYTHON][D:/WBFZCPP/source/FastCAE/extlib/Python/python.exe][v3.7.0()] +//Details about finding QuaZIP +FIND_PACKAGE_MESSAGE_DETAILS_QuaZIP:INTERNAL=[D:/WBFZCPP/source/FastCAE/extlib/QuaZIP][D:/WBFZCPP/source/FastCAE/extlib/QuaZIP/include/quazip5][D:/WBFZCPP/source/FastCAE/extlib/QuaZIP/lib][LAMPCAE::QUAZIP][D:/WBFZCPP/source/FastCAE/extlib/QuaZIP/lib][v0.7.3()] +//Details about finding Qwt +FIND_PACKAGE_MESSAGE_DETAILS_Qwt:INTERNAL=[C:/Qwt][C:/Qwt/include][C:/Qwt/lib][LAMPCAE::QWT;LAMPCAE::QWTPOLAR][C:/Qwt/lib][v6.2.0()] +//Details about finding TecIO +FIND_PACKAGE_MESSAGE_DETAILS_TecIO:INTERNAL=[D:/WBFZCPP/source/FastCAE/extlib/TecIO][D:/WBFZCPP/source/FastCAE/extlib/TecIO/include][D:/WBFZCPP/source/FastCAE/extlib/TecIO/lib][LAMPCAE::TECIO][v1.4.2()] +//Details about finding VTK +FIND_PACKAGE_MESSAGE_DETAILS_VTK:INTERNAL=[C:/VTK][C:/VTK/include/vtk-9.3][C:/VTK/lib][VTK::ChartsCore;VTK::CommonColor;VTK::CommonComputationalGeometry;VTK::CommonCore;VTK::CommonDataModel;VTK::CommonExecutionModel;VTK::CommonMath;VTK::CommonMisc;VTK::CommonSystem;VTK::CommonTransforms;VTK::DomainsChemistry;VTK::FiltersAMR;VTK::FiltersCore;VTK::FiltersExtraction;VTK::FiltersFlowPaths;VTK::FiltersGeneral;VTK::FiltersGeneric;VTK::FiltersGeometry;VTK::FiltersHybrid;VTK::FiltersHyperTree;VTK::FiltersImaging;VTK::FiltersModeling;VTK::FiltersParallel;VTK::FiltersParallelImaging;VTK::FiltersPoints;VTK::FiltersProgrammable;VTK::FiltersSelection;VTK::FiltersSMP;VTK::FiltersSources;VTK::FiltersStatistics;VTK::FiltersTexture;VTK::FiltersTopology;VTK::FiltersVerdict;VTK::GeovisCore;VTK::GUISupportQt;VTK::GUISupportQtSQL;VTK::ImagingColor;VTK::ImagingCore;VTK::ImagingFourier;VTK::ImagingGeneral;VTK::ImagingHybrid;VTK::ImagingMath;VTK::ImagingMorphological;VTK::ImagingSources;VTK::ImagingStatistics;VTK::ImagingStencil;VTK::InfovisCore;VTK::InfovisLayout;VTK::InteractionImage;VTK::InteractionStyle;VTK::InteractionWidgets;VTK::IOAsynchronous;VTK::IOCityGML;VTK::IOCore;VTK::IOEnSight;VTK::IOExport;VTK::IOExportGL2PS;VTK::IOExportPDF;VTK::IOGeometry;VTK::IOImage;VTK::IOImport;VTK::IOInfovis;VTK::IOLegacy;VTK::IOLSDyna;VTK::IOMotionFX;VTK::IOMovie;VTK::IOOggTheora;VTK::IOParallel;VTK::IOParallelXML;VTK::IOPLY;VTK::IOSegY;VTK::IOSQL;VTK::IOTecplotTable;VTK::IOVideo;VTK::IOXML;VTK::IOXMLParser;VTK::ParallelCore;VTK::ParallelDIY;VTK::RenderingAnnotation;VTK::RenderingContext2D;VTK::RenderingCore;VTK::RenderingFreeType;VTK::RenderingGL2PSOpenGL2;VTK::RenderingImage;VTK::RenderingLabel;VTK::RenderingLOD;VTK::RenderingOpenGL2;VTK::RenderingQt;VTK::RenderingSceneGraph;VTK::RenderingUI;VTK::RenderingVolume;VTK::RenderingVolumeOpenGL2;VTK::RenderingVtkJS;VTK::TestingRendering;VTK::doubleconversion;VTK::expat;VTK::freetype;VTK::gl2ps;VTK::glew;VTK::jpeg;VTK::jsoncpp;VTK::libharu;VTK::libproj;VTK::libxml2;VTK::loguru;VTK::lz4;VTK::lzma;VTK::ogg;VTK::png;VTK::pugixml;VTK::sqlite;VTK::theora;VTK::tiff;VTK::verdict;VTK::zlib;VTK::DICOMParser;VTK::sys;VTK::metaio;VTK::ViewsContext2D;VTK::ViewsCore;VTK::ViewsInfovis;VTK::ViewsQt;VTK::WrappingTools][C:/VTK/bin][v9.3.0()] +//CMAKE_INSTALL_PREFIX during last run +_GNUInstallDirs_LAST_CMAKE_INSTALL_PREFIX:INTERNAL=D:/WBFZCPP/source/FastCAE/install + diff --git a/out/build/CMakeDoxyfile.in b/out/build/CMakeDoxyfile.in new file mode 100644 index 0000000..02db1b0 --- /dev/null +++ b/out/build/CMakeDoxyfile.in @@ -0,0 +1,301 @@ +# +# DO NOT EDIT! THIS FILE WAS GENERATED BY CMAKE! +# + +DOXYFILE_ENCODING = @DOXYGEN_DOXYFILE_ENCODING@ +PROJECT_NAME = @DOXYGEN_PROJECT_NAME@ +PROJECT_NUMBER = @DOXYGEN_PROJECT_NUMBER@ +PROJECT_BRIEF = @DOXYGEN_PROJECT_BRIEF@ +PROJECT_LOGO = @DOXYGEN_PROJECT_LOGO@ +PROJECT_ICON = @DOXYGEN_PROJECT_ICON@ +OUTPUT_DIRECTORY = @DOXYGEN_OUTPUT_DIRECTORY@ +CREATE_SUBDIRS = @DOXYGEN_CREATE_SUBDIRS@ +CREATE_SUBDIRS_LEVEL = @DOXYGEN_CREATE_SUBDIRS_LEVEL@ +ALLOW_UNICODE_NAMES = @DOXYGEN_ALLOW_UNICODE_NAMES@ +OUTPUT_LANGUAGE = @DOXYGEN_OUTPUT_LANGUAGE@ +BRIEF_MEMBER_DESC = @DOXYGEN_BRIEF_MEMBER_DESC@ +REPEAT_BRIEF = @DOXYGEN_REPEAT_BRIEF@ +ABBREVIATE_BRIEF = @DOXYGEN_ABBREVIATE_BRIEF@ +ALWAYS_DETAILED_SEC = @DOXYGEN_ALWAYS_DETAILED_SEC@ +INLINE_INHERITED_MEMB = @DOXYGEN_INLINE_INHERITED_MEMB@ +FULL_PATH_NAMES = @DOXYGEN_FULL_PATH_NAMES@ +STRIP_FROM_PATH = @DOXYGEN_STRIP_FROM_PATH@ +STRIP_FROM_INC_PATH = @DOXYGEN_STRIP_FROM_INC_PATH@ +SHORT_NAMES = @DOXYGEN_SHORT_NAMES@ +JAVADOC_AUTOBRIEF = @DOXYGEN_JAVADOC_AUTOBRIEF@ +JAVADOC_BANNER = @DOXYGEN_JAVADOC_BANNER@ +QT_AUTOBRIEF = @DOXYGEN_QT_AUTOBRIEF@ +MULTILINE_CPP_IS_BRIEF = @DOXYGEN_MULTILINE_CPP_IS_BRIEF@ +PYTHON_DOCSTRING = @DOXYGEN_PYTHON_DOCSTRING@ +INHERIT_DOCS = @DOXYGEN_INHERIT_DOCS@ +SEPARATE_MEMBER_PAGES = @DOXYGEN_SEPARATE_MEMBER_PAGES@ +TAB_SIZE = @DOXYGEN_TAB_SIZE@ +ALIASES = @DOXYGEN_ALIASES@ +OPTIMIZE_OUTPUT_FOR_C = @DOXYGEN_OPTIMIZE_OUTPUT_FOR_C@ +OPTIMIZE_OUTPUT_JAVA = @DOXYGEN_OPTIMIZE_OUTPUT_JAVA@ +OPTIMIZE_FOR_FORTRAN = @DOXYGEN_OPTIMIZE_FOR_FORTRAN@ +OPTIMIZE_OUTPUT_VHDL = @DOXYGEN_OPTIMIZE_OUTPUT_VHDL@ +OPTIMIZE_OUTPUT_SLICE = @DOXYGEN_OPTIMIZE_OUTPUT_SLICE@ +EXTENSION_MAPPING = @DOXYGEN_EXTENSION_MAPPING@ +MARKDOWN_SUPPORT = @DOXYGEN_MARKDOWN_SUPPORT@ +TOC_INCLUDE_HEADINGS = @DOXYGEN_TOC_INCLUDE_HEADINGS@ +MARKDOWN_ID_STYLE = @DOXYGEN_MARKDOWN_ID_STYLE@ +AUTOLINK_SUPPORT = @DOXYGEN_AUTOLINK_SUPPORT@ +BUILTIN_STL_SUPPORT = @DOXYGEN_BUILTIN_STL_SUPPORT@ +CPP_CLI_SUPPORT = @DOXYGEN_CPP_CLI_SUPPORT@ +SIP_SUPPORT = @DOXYGEN_SIP_SUPPORT@ +IDL_PROPERTY_SUPPORT = @DOXYGEN_IDL_PROPERTY_SUPPORT@ +DISTRIBUTE_GROUP_DOC = @DOXYGEN_DISTRIBUTE_GROUP_DOC@ +GROUP_NESTED_COMPOUNDS = @DOXYGEN_GROUP_NESTED_COMPOUNDS@ +SUBGROUPING = @DOXYGEN_SUBGROUPING@ +INLINE_GROUPED_CLASSES = @DOXYGEN_INLINE_GROUPED_CLASSES@ +INLINE_SIMPLE_STRUCTS = @DOXYGEN_INLINE_SIMPLE_STRUCTS@ +TYPEDEF_HIDES_STRUCT = @DOXYGEN_TYPEDEF_HIDES_STRUCT@ +LOOKUP_CACHE_SIZE = @DOXYGEN_LOOKUP_CACHE_SIZE@ +NUM_PROC_THREADS = @DOXYGEN_NUM_PROC_THREADS@ +TIMESTAMP = @DOXYGEN_TIMESTAMP@ +EXTRACT_ALL = @DOXYGEN_EXTRACT_ALL@ +EXTRACT_PRIVATE = @DOXYGEN_EXTRACT_PRIVATE@ +EXTRACT_PRIV_VIRTUAL = @DOXYGEN_EXTRACT_PRIV_VIRTUAL@ +EXTRACT_PACKAGE = @DOXYGEN_EXTRACT_PACKAGE@ +EXTRACT_STATIC = @DOXYGEN_EXTRACT_STATIC@ +EXTRACT_LOCAL_CLASSES = @DOXYGEN_EXTRACT_LOCAL_CLASSES@ +EXTRACT_LOCAL_METHODS = @DOXYGEN_EXTRACT_LOCAL_METHODS@ +EXTRACT_ANON_NSPACES = @DOXYGEN_EXTRACT_ANON_NSPACES@ +RESOLVE_UNNAMED_PARAMS = @DOXYGEN_RESOLVE_UNNAMED_PARAMS@ +HIDE_UNDOC_MEMBERS = @DOXYGEN_HIDE_UNDOC_MEMBERS@ +HIDE_UNDOC_CLASSES = @DOXYGEN_HIDE_UNDOC_CLASSES@ +HIDE_FRIEND_COMPOUNDS = @DOXYGEN_HIDE_FRIEND_COMPOUNDS@ +HIDE_IN_BODY_DOCS = @DOXYGEN_HIDE_IN_BODY_DOCS@ +INTERNAL_DOCS = @DOXYGEN_INTERNAL_DOCS@ +CASE_SENSE_NAMES = @DOXYGEN_CASE_SENSE_NAMES@ +HIDE_SCOPE_NAMES = @DOXYGEN_HIDE_SCOPE_NAMES@ +HIDE_COMPOUND_REFERENCE= @DOXYGEN_HIDE_COMPOUND_REFERENCE@ +SHOW_HEADERFILE = @DOXYGEN_SHOW_HEADERFILE@ +SHOW_INCLUDE_FILES = @DOXYGEN_SHOW_INCLUDE_FILES@ +SHOW_GROUPED_MEMB_INC = @DOXYGEN_SHOW_GROUPED_MEMB_INC@ +FORCE_LOCAL_INCLUDES = @DOXYGEN_FORCE_LOCAL_INCLUDES@ +INLINE_INFO = @DOXYGEN_INLINE_INFO@ +SORT_MEMBER_DOCS = @DOXYGEN_SORT_MEMBER_DOCS@ +SORT_BRIEF_DOCS = @DOXYGEN_SORT_BRIEF_DOCS@ +SORT_MEMBERS_CTORS_1ST = @DOXYGEN_SORT_MEMBERS_CTORS_1ST@ +SORT_GROUP_NAMES = @DOXYGEN_SORT_GROUP_NAMES@ +SORT_BY_SCOPE_NAME = @DOXYGEN_SORT_BY_SCOPE_NAME@ +STRICT_PROTO_MATCHING = @DOXYGEN_STRICT_PROTO_MATCHING@ +GENERATE_TODOLIST = @DOXYGEN_GENERATE_TODOLIST@ +GENERATE_TESTLIST = @DOXYGEN_GENERATE_TESTLIST@ +GENERATE_BUGLIST = @DOXYGEN_GENERATE_BUGLIST@ +GENERATE_DEPRECATEDLIST= @DOXYGEN_GENERATE_DEPRECATEDLIST@ +ENABLED_SECTIONS = @DOXYGEN_ENABLED_SECTIONS@ +MAX_INITIALIZER_LINES = @DOXYGEN_MAX_INITIALIZER_LINES@ +SHOW_USED_FILES = @DOXYGEN_SHOW_USED_FILES@ +SHOW_FILES = @DOXYGEN_SHOW_FILES@ +SHOW_NAMESPACES = @DOXYGEN_SHOW_NAMESPACES@ +FILE_VERSION_FILTER = @DOXYGEN_FILE_VERSION_FILTER@ +LAYOUT_FILE = @DOXYGEN_LAYOUT_FILE@ +CITE_BIB_FILES = @DOXYGEN_CITE_BIB_FILES@ +QUIET = @DOXYGEN_QUIET@ +WARNINGS = @DOXYGEN_WARNINGS@ +WARN_IF_UNDOCUMENTED = @DOXYGEN_WARN_IF_UNDOCUMENTED@ +WARN_IF_DOC_ERROR = @DOXYGEN_WARN_IF_DOC_ERROR@ +WARN_IF_INCOMPLETE_DOC = @DOXYGEN_WARN_IF_INCOMPLETE_DOC@ +WARN_NO_PARAMDOC = @DOXYGEN_WARN_NO_PARAMDOC@ +WARN_IF_UNDOC_ENUM_VAL = @DOXYGEN_WARN_IF_UNDOC_ENUM_VAL@ +WARN_AS_ERROR = @DOXYGEN_WARN_AS_ERROR@ +WARN_FORMAT = @DOXYGEN_WARN_FORMAT@ +WARN_LINE_FORMAT = @DOXYGEN_WARN_LINE_FORMAT@ +WARN_LOGFILE = @DOXYGEN_WARN_LOGFILE@ +INPUT = @DOXYGEN_INPUT@ +INPUT_ENCODING = @DOXYGEN_INPUT_ENCODING@ +INPUT_FILE_ENCODING = @DOXYGEN_INPUT_FILE_ENCODING@ +FILE_PATTERNS = @DOXYGEN_FILE_PATTERNS@ +RECURSIVE = @DOXYGEN_RECURSIVE@ +EXCLUDE = @DOXYGEN_EXCLUDE@ +EXCLUDE_SYMLINKS = @DOXYGEN_EXCLUDE_SYMLINKS@ +EXCLUDE_PATTERNS = @DOXYGEN_EXCLUDE_PATTERNS@ +EXCLUDE_SYMBOLS = @DOXYGEN_EXCLUDE_SYMBOLS@ +EXAMPLE_PATH = @DOXYGEN_EXAMPLE_PATH@ +EXAMPLE_PATTERNS = @DOXYGEN_EXAMPLE_PATTERNS@ +EXAMPLE_RECURSIVE = @DOXYGEN_EXAMPLE_RECURSIVE@ +IMAGE_PATH = @DOXYGEN_IMAGE_PATH@ +INPUT_FILTER = @DOXYGEN_INPUT_FILTER@ +FILTER_PATTERNS = @DOXYGEN_FILTER_PATTERNS@ +FILTER_SOURCE_FILES = @DOXYGEN_FILTER_SOURCE_FILES@ +FILTER_SOURCE_PATTERNS = @DOXYGEN_FILTER_SOURCE_PATTERNS@ +USE_MDFILE_AS_MAINPAGE = @DOXYGEN_USE_MDFILE_AS_MAINPAGE@ +FORTRAN_COMMENT_AFTER = @DOXYGEN_FORTRAN_COMMENT_AFTER@ +SOURCE_BROWSER = @DOXYGEN_SOURCE_BROWSER@ +INLINE_SOURCES = @DOXYGEN_INLINE_SOURCES@ +STRIP_CODE_COMMENTS = @DOXYGEN_STRIP_CODE_COMMENTS@ +REFERENCED_BY_RELATION = @DOXYGEN_REFERENCED_BY_RELATION@ +REFERENCES_RELATION = @DOXYGEN_REFERENCES_RELATION@ +REFERENCES_LINK_SOURCE = @DOXYGEN_REFERENCES_LINK_SOURCE@ +SOURCE_TOOLTIPS = @DOXYGEN_SOURCE_TOOLTIPS@ +USE_HTAGS = @DOXYGEN_USE_HTAGS@ +VERBATIM_HEADERS = @DOXYGEN_VERBATIM_HEADERS@ +CLANG_ASSISTED_PARSING = @DOXYGEN_CLANG_ASSISTED_PARSING@ +CLANG_ADD_INC_PATHS = @DOXYGEN_CLANG_ADD_INC_PATHS@ +CLANG_OPTIONS = @DOXYGEN_CLANG_OPTIONS@ +CLANG_DATABASE_PATH = @DOXYGEN_CLANG_DATABASE_PATH@ +ALPHABETICAL_INDEX = @DOXYGEN_ALPHABETICAL_INDEX@ +IGNORE_PREFIX = @DOXYGEN_IGNORE_PREFIX@ +GENERATE_HTML = @DOXYGEN_GENERATE_HTML@ +HTML_OUTPUT = @DOXYGEN_HTML_OUTPUT@ +HTML_FILE_EXTENSION = @DOXYGEN_HTML_FILE_EXTENSION@ +HTML_HEADER = @DOXYGEN_HTML_HEADER@ +HTML_FOOTER = @DOXYGEN_HTML_FOOTER@ +HTML_STYLESHEET = @DOXYGEN_HTML_STYLESHEET@ +HTML_EXTRA_STYLESHEET = @DOXYGEN_HTML_EXTRA_STYLESHEET@ +HTML_EXTRA_FILES = @DOXYGEN_HTML_EXTRA_FILES@ +HTML_COLORSTYLE = @DOXYGEN_HTML_COLORSTYLE@ +HTML_COLORSTYLE_HUE = @DOXYGEN_HTML_COLORSTYLE_HUE@ +HTML_COLORSTYLE_SAT = @DOXYGEN_HTML_COLORSTYLE_SAT@ +HTML_COLORSTYLE_GAMMA = @DOXYGEN_HTML_COLORSTYLE_GAMMA@ +HTML_DYNAMIC_MENUS = @DOXYGEN_HTML_DYNAMIC_MENUS@ +HTML_DYNAMIC_SECTIONS = @DOXYGEN_HTML_DYNAMIC_SECTIONS@ +HTML_CODE_FOLDING = @DOXYGEN_HTML_CODE_FOLDING@ +HTML_COPY_CLIPBOARD = @DOXYGEN_HTML_COPY_CLIPBOARD@ +HTML_PROJECT_COOKIE = @DOXYGEN_HTML_PROJECT_COOKIE@ +HTML_INDEX_NUM_ENTRIES = @DOXYGEN_HTML_INDEX_NUM_ENTRIES@ +GENERATE_DOCSET = @DOXYGEN_GENERATE_DOCSET@ +DOCSET_FEEDNAME = @DOXYGEN_DOCSET_FEEDNAME@ +DOCSET_FEEDURL = @DOXYGEN_DOCSET_FEEDURL@ +DOCSET_BUNDLE_ID = @DOXYGEN_DOCSET_BUNDLE_ID@ +DOCSET_PUBLISHER_ID = @DOXYGEN_DOCSET_PUBLISHER_ID@ +DOCSET_PUBLISHER_NAME = @DOXYGEN_DOCSET_PUBLISHER_NAME@ +GENERATE_HTMLHELP = @DOXYGEN_GENERATE_HTMLHELP@ +CHM_FILE = @DOXYGEN_CHM_FILE@ +HHC_LOCATION = @DOXYGEN_HHC_LOCATION@ +GENERATE_CHI = @DOXYGEN_GENERATE_CHI@ +CHM_INDEX_ENCODING = @DOXYGEN_CHM_INDEX_ENCODING@ +BINARY_TOC = @DOXYGEN_BINARY_TOC@ +TOC_EXPAND = @DOXYGEN_TOC_EXPAND@ +SITEMAP_URL = @DOXYGEN_SITEMAP_URL@ +GENERATE_QHP = @DOXYGEN_GENERATE_QHP@ +QCH_FILE = @DOXYGEN_QCH_FILE@ +QHP_NAMESPACE = @DOXYGEN_QHP_NAMESPACE@ +QHP_VIRTUAL_FOLDER = @DOXYGEN_QHP_VIRTUAL_FOLDER@ +QHP_CUST_FILTER_NAME = @DOXYGEN_QHP_CUST_FILTER_NAME@ +QHP_CUST_FILTER_ATTRS = @DOXYGEN_QHP_CUST_FILTER_ATTRS@ +QHP_SECT_FILTER_ATTRS = @DOXYGEN_QHP_SECT_FILTER_ATTRS@ +QHG_LOCATION = @DOXYGEN_QHG_LOCATION@ +GENERATE_ECLIPSEHELP = @DOXYGEN_GENERATE_ECLIPSEHELP@ +ECLIPSE_DOC_ID = @DOXYGEN_ECLIPSE_DOC_ID@ +DISABLE_INDEX = @DOXYGEN_DISABLE_INDEX@ +GENERATE_TREEVIEW = @DOXYGEN_GENERATE_TREEVIEW@ +FULL_SIDEBAR = @DOXYGEN_FULL_SIDEBAR@ +ENUM_VALUES_PER_LINE = @DOXYGEN_ENUM_VALUES_PER_LINE@ +TREEVIEW_WIDTH = @DOXYGEN_TREEVIEW_WIDTH@ +EXT_LINKS_IN_WINDOW = @DOXYGEN_EXT_LINKS_IN_WINDOW@ +OBFUSCATE_EMAILS = @DOXYGEN_OBFUSCATE_EMAILS@ +HTML_FORMULA_FORMAT = @DOXYGEN_HTML_FORMULA_FORMAT@ +FORMULA_FONTSIZE = @DOXYGEN_FORMULA_FONTSIZE@ +FORMULA_MACROFILE = @DOXYGEN_FORMULA_MACROFILE@ +USE_MATHJAX = @DOXYGEN_USE_MATHJAX@ +MATHJAX_VERSION = @DOXYGEN_MATHJAX_VERSION@ +MATHJAX_FORMAT = @DOXYGEN_MATHJAX_FORMAT@ +MATHJAX_RELPATH = @DOXYGEN_MATHJAX_RELPATH@ +MATHJAX_EXTENSIONS = @DOXYGEN_MATHJAX_EXTENSIONS@ +MATHJAX_CODEFILE = @DOXYGEN_MATHJAX_CODEFILE@ +SEARCHENGINE = @DOXYGEN_SEARCHENGINE@ +SERVER_BASED_SEARCH = @DOXYGEN_SERVER_BASED_SEARCH@ +EXTERNAL_SEARCH = @DOXYGEN_EXTERNAL_SEARCH@ +SEARCHENGINE_URL = @DOXYGEN_SEARCHENGINE_URL@ +SEARCHDATA_FILE = @DOXYGEN_SEARCHDATA_FILE@ +EXTERNAL_SEARCH_ID = @DOXYGEN_EXTERNAL_SEARCH_ID@ +EXTRA_SEARCH_MAPPINGS = @DOXYGEN_EXTRA_SEARCH_MAPPINGS@ +GENERATE_LATEX = @DOXYGEN_GENERATE_LATEX@ +LATEX_OUTPUT = @DOXYGEN_LATEX_OUTPUT@ +LATEX_CMD_NAME = @DOXYGEN_LATEX_CMD_NAME@ +MAKEINDEX_CMD_NAME = @DOXYGEN_MAKEINDEX_CMD_NAME@ +LATEX_MAKEINDEX_CMD = @DOXYGEN_LATEX_MAKEINDEX_CMD@ +COMPACT_LATEX = @DOXYGEN_COMPACT_LATEX@ +PAPER_TYPE = @DOXYGEN_PAPER_TYPE@ +EXTRA_PACKAGES = @DOXYGEN_EXTRA_PACKAGES@ +LATEX_HEADER = @DOXYGEN_LATEX_HEADER@ +LATEX_FOOTER = @DOXYGEN_LATEX_FOOTER@ +LATEX_EXTRA_STYLESHEET = @DOXYGEN_LATEX_EXTRA_STYLESHEET@ +LATEX_EXTRA_FILES = @DOXYGEN_LATEX_EXTRA_FILES@ +PDF_HYPERLINKS = @DOXYGEN_PDF_HYPERLINKS@ +USE_PDFLATEX = @DOXYGEN_USE_PDFLATEX@ +LATEX_BATCHMODE = @DOXYGEN_LATEX_BATCHMODE@ +LATEX_HIDE_INDICES = @DOXYGEN_LATEX_HIDE_INDICES@ +LATEX_BIB_STYLE = @DOXYGEN_LATEX_BIB_STYLE@ +LATEX_EMOJI_DIRECTORY = @DOXYGEN_LATEX_EMOJI_DIRECTORY@ +GENERATE_RTF = @DOXYGEN_GENERATE_RTF@ +RTF_OUTPUT = @DOXYGEN_RTF_OUTPUT@ +COMPACT_RTF = @DOXYGEN_COMPACT_RTF@ +RTF_HYPERLINKS = @DOXYGEN_RTF_HYPERLINKS@ +RTF_STYLESHEET_FILE = @DOXYGEN_RTF_STYLESHEET_FILE@ +RTF_EXTENSIONS_FILE = @DOXYGEN_RTF_EXTENSIONS_FILE@ +GENERATE_MAN = @DOXYGEN_GENERATE_MAN@ +MAN_OUTPUT = @DOXYGEN_MAN_OUTPUT@ +MAN_EXTENSION = @DOXYGEN_MAN_EXTENSION@ +MAN_SUBDIR = @DOXYGEN_MAN_SUBDIR@ +MAN_LINKS = @DOXYGEN_MAN_LINKS@ +GENERATE_XML = @DOXYGEN_GENERATE_XML@ +XML_OUTPUT = @DOXYGEN_XML_OUTPUT@ +XML_PROGRAMLISTING = @DOXYGEN_XML_PROGRAMLISTING@ +XML_NS_MEMB_FILE_SCOPE = @DOXYGEN_XML_NS_MEMB_FILE_SCOPE@ +GENERATE_DOCBOOK = @DOXYGEN_GENERATE_DOCBOOK@ +DOCBOOK_OUTPUT = @DOXYGEN_DOCBOOK_OUTPUT@ +GENERATE_AUTOGEN_DEF = @DOXYGEN_GENERATE_AUTOGEN_DEF@ +GENERATE_SQLITE3 = @DOXYGEN_GENERATE_SQLITE3@ +SQLITE3_OUTPUT = @DOXYGEN_SQLITE3_OUTPUT@ +SQLITE3_RECREATE_DB = @DOXYGEN_SQLITE3_RECREATE_DB@ +GENERATE_PERLMOD = @DOXYGEN_GENERATE_PERLMOD@ +PERLMOD_LATEX = @DOXYGEN_PERLMOD_LATEX@ +PERLMOD_PRETTY = @DOXYGEN_PERLMOD_PRETTY@ +PERLMOD_MAKEVAR_PREFIX = @DOXYGEN_PERLMOD_MAKEVAR_PREFIX@ +ENABLE_PREPROCESSING = @DOXYGEN_ENABLE_PREPROCESSING@ +MACRO_EXPANSION = @DOXYGEN_MACRO_EXPANSION@ +EXPAND_ONLY_PREDEF = @DOXYGEN_EXPAND_ONLY_PREDEF@ +SEARCH_INCLUDES = @DOXYGEN_SEARCH_INCLUDES@ +INCLUDE_PATH = @DOXYGEN_INCLUDE_PATH@ +INCLUDE_FILE_PATTERNS = @DOXYGEN_INCLUDE_FILE_PATTERNS@ +PREDEFINED = @DOXYGEN_PREDEFINED@ +EXPAND_AS_DEFINED = @DOXYGEN_EXPAND_AS_DEFINED@ +SKIP_FUNCTION_MACROS = @DOXYGEN_SKIP_FUNCTION_MACROS@ +TAGFILES = @DOXYGEN_TAGFILES@ +GENERATE_TAGFILE = @DOXYGEN_GENERATE_TAGFILE@ +ALLEXTERNALS = @DOXYGEN_ALLEXTERNALS@ +EXTERNAL_GROUPS = @DOXYGEN_EXTERNAL_GROUPS@ +EXTERNAL_PAGES = @DOXYGEN_EXTERNAL_PAGES@ +HIDE_UNDOC_RELATIONS = @DOXYGEN_HIDE_UNDOC_RELATIONS@ +HAVE_DOT = @DOXYGEN_HAVE_DOT@ +DOT_NUM_THREADS = @DOXYGEN_DOT_NUM_THREADS@ +DOT_COMMON_ATTR = @DOXYGEN_DOT_COMMON_ATTR@ +DOT_EDGE_ATTR = @DOXYGEN_DOT_EDGE_ATTR@ +DOT_NODE_ATTR = @DOXYGEN_DOT_NODE_ATTR@ +DOT_FONTPATH = @DOXYGEN_DOT_FONTPATH@ +CLASS_GRAPH = @DOXYGEN_CLASS_GRAPH@ +COLLABORATION_GRAPH = @DOXYGEN_COLLABORATION_GRAPH@ +GROUP_GRAPHS = @DOXYGEN_GROUP_GRAPHS@ +UML_LOOK = @DOXYGEN_UML_LOOK@ +UML_LIMIT_NUM_FIELDS = @DOXYGEN_UML_LIMIT_NUM_FIELDS@ +DOT_UML_DETAILS = @DOXYGEN_DOT_UML_DETAILS@ +DOT_WRAP_THRESHOLD = @DOXYGEN_DOT_WRAP_THRESHOLD@ +TEMPLATE_RELATIONS = @DOXYGEN_TEMPLATE_RELATIONS@ +INCLUDE_GRAPH = @DOXYGEN_INCLUDE_GRAPH@ +INCLUDED_BY_GRAPH = @DOXYGEN_INCLUDED_BY_GRAPH@ +CALL_GRAPH = @DOXYGEN_CALL_GRAPH@ +CALLER_GRAPH = @DOXYGEN_CALLER_GRAPH@ +GRAPHICAL_HIERARCHY = @DOXYGEN_GRAPHICAL_HIERARCHY@ +DIRECTORY_GRAPH = @DOXYGEN_DIRECTORY_GRAPH@ +DIR_GRAPH_MAX_DEPTH = @DOXYGEN_DIR_GRAPH_MAX_DEPTH@ +DOT_IMAGE_FORMAT = @DOXYGEN_DOT_IMAGE_FORMAT@ +INTERACTIVE_SVG = @DOXYGEN_INTERACTIVE_SVG@ +DOT_PATH = @DOXYGEN_DOT_PATH@ +DOTFILE_DIRS = @DOXYGEN_DOTFILE_DIRS@ +DIA_PATH = @DOXYGEN_DIA_PATH@ +DIAFILE_DIRS = @DOXYGEN_DIAFILE_DIRS@ +PLANTUML_JAR_PATH = @DOXYGEN_PLANTUML_JAR_PATH@ +PLANTUML_CFG_FILE = @DOXYGEN_PLANTUML_CFG_FILE@ +PLANTUML_INCLUDE_PATH = @DOXYGEN_PLANTUML_INCLUDE_PATH@ +DOT_GRAPH_MAX_NODES = @DOXYGEN_DOT_GRAPH_MAX_NODES@ +MAX_DOT_GRAPH_DEPTH = @DOXYGEN_MAX_DOT_GRAPH_DEPTH@ +DOT_MULTI_TARGETS = @DOXYGEN_DOT_MULTI_TARGETS@ +GENERATE_LEGEND = @DOXYGEN_GENERATE_LEGEND@ +DOT_CLEANUP = @DOXYGEN_DOT_CLEANUP@ +MSCGEN_TOOL = @DOXYGEN_MSCGEN_TOOL@ +MSCFILE_DIRS = @DOXYGEN_MSCFILE_DIRS@ diff --git a/out/build/CMakeDoxygenDefaults.cmake b/out/build/CMakeDoxygenDefaults.cmake new file mode 100644 index 0000000..bdaa5ff --- /dev/null +++ b/out/build/CMakeDoxygenDefaults.cmake @@ -0,0 +1,721 @@ +# +# DO NOT EDIT! THIS FILE WAS GENERATED BY CMAKE! +# + +if(NOT DEFINED DOXYGEN_DOXYFILE_ENCODING) + set(DOXYGEN_DOXYFILE_ENCODING UTF-8) +endif() +if(NOT DEFINED DOXYGEN_PROJECT_NAME) + set(DOXYGEN_PROJECT_NAME "My Project") +endif() +if(NOT DEFINED DOXYGEN_CREATE_SUBDIRS) + set(DOXYGEN_CREATE_SUBDIRS NO) +endif() +if(NOT DEFINED DOXYGEN_CREATE_SUBDIRS_LEVEL) + set(DOXYGEN_CREATE_SUBDIRS_LEVEL 8) +endif() +if(NOT DEFINED DOXYGEN_ALLOW_UNICODE_NAMES) + set(DOXYGEN_ALLOW_UNICODE_NAMES NO) +endif() +if(NOT DEFINED DOXYGEN_OUTPUT_LANGUAGE) + set(DOXYGEN_OUTPUT_LANGUAGE English) +endif() +if(NOT DEFINED DOXYGEN_BRIEF_MEMBER_DESC) + set(DOXYGEN_BRIEF_MEMBER_DESC YES) +endif() +if(NOT DEFINED DOXYGEN_REPEAT_BRIEF) + set(DOXYGEN_REPEAT_BRIEF YES) +endif() +if(NOT DEFINED DOXYGEN_ABBREVIATE_BRIEF) + set(DOXYGEN_ABBREVIATE_BRIEF "The $name class" + "The $name widget" + "The $name file" + is + provides + specifies + contains + represents + a + an + the) +endif() +if(NOT DEFINED DOXYGEN_ALWAYS_DETAILED_SEC) + set(DOXYGEN_ALWAYS_DETAILED_SEC NO) +endif() +if(NOT DEFINED DOXYGEN_INLINE_INHERITED_MEMB) + set(DOXYGEN_INLINE_INHERITED_MEMB NO) +endif() +if(NOT DEFINED DOXYGEN_FULL_PATH_NAMES) + set(DOXYGEN_FULL_PATH_NAMES YES) +endif() +if(NOT DEFINED DOXYGEN_SHORT_NAMES) + set(DOXYGEN_SHORT_NAMES NO) +endif() +if(NOT DEFINED DOXYGEN_JAVADOC_AUTOBRIEF) + set(DOXYGEN_JAVADOC_AUTOBRIEF NO) +endif() +if(NOT DEFINED DOXYGEN_JAVADOC_BANNER) + set(DOXYGEN_JAVADOC_BANNER NO) +endif() +if(NOT DEFINED DOXYGEN_QT_AUTOBRIEF) + set(DOXYGEN_QT_AUTOBRIEF NO) +endif() +if(NOT DEFINED DOXYGEN_MULTILINE_CPP_IS_BRIEF) + set(DOXYGEN_MULTILINE_CPP_IS_BRIEF NO) +endif() +if(NOT DEFINED DOXYGEN_PYTHON_DOCSTRING) + set(DOXYGEN_PYTHON_DOCSTRING YES) +endif() +if(NOT DEFINED DOXYGEN_INHERIT_DOCS) + set(DOXYGEN_INHERIT_DOCS YES) +endif() +if(NOT DEFINED DOXYGEN_SEPARATE_MEMBER_PAGES) + set(DOXYGEN_SEPARATE_MEMBER_PAGES NO) +endif() +if(NOT DEFINED DOXYGEN_TAB_SIZE) + set(DOXYGEN_TAB_SIZE 4) +endif() +if(NOT DEFINED DOXYGEN_OPTIMIZE_OUTPUT_FOR_C) + set(DOXYGEN_OPTIMIZE_OUTPUT_FOR_C NO) +endif() +if(NOT DEFINED DOXYGEN_OPTIMIZE_OUTPUT_JAVA) + set(DOXYGEN_OPTIMIZE_OUTPUT_JAVA NO) +endif() +if(NOT DEFINED DOXYGEN_OPTIMIZE_FOR_FORTRAN) + set(DOXYGEN_OPTIMIZE_FOR_FORTRAN NO) +endif() +if(NOT DEFINED DOXYGEN_OPTIMIZE_OUTPUT_VHDL) + set(DOXYGEN_OPTIMIZE_OUTPUT_VHDL NO) +endif() +if(NOT DEFINED DOXYGEN_OPTIMIZE_OUTPUT_SLICE) + set(DOXYGEN_OPTIMIZE_OUTPUT_SLICE NO) +endif() +if(NOT DEFINED DOXYGEN_MARKDOWN_SUPPORT) + set(DOXYGEN_MARKDOWN_SUPPORT YES) +endif() +if(NOT DEFINED DOXYGEN_TOC_INCLUDE_HEADINGS) + set(DOXYGEN_TOC_INCLUDE_HEADINGS 5) +endif() +if(NOT DEFINED DOXYGEN_MARKDOWN_ID_STYLE) + set(DOXYGEN_MARKDOWN_ID_STYLE DOXYGEN) +endif() +if(NOT DEFINED DOXYGEN_AUTOLINK_SUPPORT) + set(DOXYGEN_AUTOLINK_SUPPORT YES) +endif() +if(NOT DEFINED DOXYGEN_BUILTIN_STL_SUPPORT) + set(DOXYGEN_BUILTIN_STL_SUPPORT NO) +endif() +if(NOT DEFINED DOXYGEN_CPP_CLI_SUPPORT) + set(DOXYGEN_CPP_CLI_SUPPORT NO) +endif() +if(NOT DEFINED DOXYGEN_SIP_SUPPORT) + set(DOXYGEN_SIP_SUPPORT NO) +endif() +if(NOT DEFINED DOXYGEN_IDL_PROPERTY_SUPPORT) + set(DOXYGEN_IDL_PROPERTY_SUPPORT YES) +endif() +if(NOT DEFINED DOXYGEN_DISTRIBUTE_GROUP_DOC) + set(DOXYGEN_DISTRIBUTE_GROUP_DOC NO) +endif() +if(NOT DEFINED DOXYGEN_GROUP_NESTED_COMPOUNDS) + set(DOXYGEN_GROUP_NESTED_COMPOUNDS NO) +endif() +if(NOT DEFINED DOXYGEN_SUBGROUPING) + set(DOXYGEN_SUBGROUPING YES) +endif() +if(NOT DEFINED DOXYGEN_INLINE_GROUPED_CLASSES) + set(DOXYGEN_INLINE_GROUPED_CLASSES NO) +endif() +if(NOT DEFINED DOXYGEN_INLINE_SIMPLE_STRUCTS) + set(DOXYGEN_INLINE_SIMPLE_STRUCTS NO) +endif() +if(NOT DEFINED DOXYGEN_TYPEDEF_HIDES_STRUCT) + set(DOXYGEN_TYPEDEF_HIDES_STRUCT NO) +endif() +if(NOT DEFINED DOXYGEN_LOOKUP_CACHE_SIZE) + set(DOXYGEN_LOOKUP_CACHE_SIZE 0) +endif() +if(NOT DEFINED DOXYGEN_NUM_PROC_THREADS) + set(DOXYGEN_NUM_PROC_THREADS 1) +endif() +if(NOT DEFINED DOXYGEN_TIMESTAMP) + set(DOXYGEN_TIMESTAMP NO) +endif() +if(NOT DEFINED DOXYGEN_EXTRACT_ALL) + set(DOXYGEN_EXTRACT_ALL NO) +endif() +if(NOT DEFINED DOXYGEN_EXTRACT_PRIVATE) + set(DOXYGEN_EXTRACT_PRIVATE NO) +endif() +if(NOT DEFINED DOXYGEN_EXTRACT_PRIV_VIRTUAL) + set(DOXYGEN_EXTRACT_PRIV_VIRTUAL NO) +endif() +if(NOT DEFINED DOXYGEN_EXTRACT_PACKAGE) + set(DOXYGEN_EXTRACT_PACKAGE NO) +endif() +if(NOT DEFINED DOXYGEN_EXTRACT_STATIC) + set(DOXYGEN_EXTRACT_STATIC NO) +endif() +if(NOT DEFINED DOXYGEN_EXTRACT_LOCAL_CLASSES) + set(DOXYGEN_EXTRACT_LOCAL_CLASSES YES) +endif() +if(NOT DEFINED DOXYGEN_EXTRACT_LOCAL_METHODS) + set(DOXYGEN_EXTRACT_LOCAL_METHODS NO) +endif() +if(NOT DEFINED DOXYGEN_EXTRACT_ANON_NSPACES) + set(DOXYGEN_EXTRACT_ANON_NSPACES NO) +endif() +if(NOT DEFINED DOXYGEN_RESOLVE_UNNAMED_PARAMS) + set(DOXYGEN_RESOLVE_UNNAMED_PARAMS YES) +endif() +if(NOT DEFINED DOXYGEN_HIDE_UNDOC_MEMBERS) + set(DOXYGEN_HIDE_UNDOC_MEMBERS NO) +endif() +if(NOT DEFINED DOXYGEN_HIDE_UNDOC_CLASSES) + set(DOXYGEN_HIDE_UNDOC_CLASSES NO) +endif() +if(NOT DEFINED DOXYGEN_HIDE_FRIEND_COMPOUNDS) + set(DOXYGEN_HIDE_FRIEND_COMPOUNDS NO) +endif() +if(NOT DEFINED DOXYGEN_HIDE_IN_BODY_DOCS) + set(DOXYGEN_HIDE_IN_BODY_DOCS NO) +endif() +if(NOT DEFINED DOXYGEN_INTERNAL_DOCS) + set(DOXYGEN_INTERNAL_DOCS NO) +endif() +if(NOT DEFINED DOXYGEN_CASE_SENSE_NAMES) + set(DOXYGEN_CASE_SENSE_NAMES SYSTEM) +endif() +if(NOT DEFINED DOXYGEN_HIDE_SCOPE_NAMES) + set(DOXYGEN_HIDE_SCOPE_NAMES NO) +endif() +if(NOT DEFINED DOXYGEN_HIDE_COMPOUND_REFERENCE) + set(DOXYGEN_HIDE_COMPOUND_REFERENCE NO) +endif() +if(NOT DEFINED DOXYGEN_SHOW_HEADERFILE) + set(DOXYGEN_SHOW_HEADERFILE YES) +endif() +if(NOT DEFINED DOXYGEN_SHOW_INCLUDE_FILES) + set(DOXYGEN_SHOW_INCLUDE_FILES YES) +endif() +if(NOT DEFINED DOXYGEN_SHOW_GROUPED_MEMB_INC) + set(DOXYGEN_SHOW_GROUPED_MEMB_INC NO) +endif() +if(NOT DEFINED DOXYGEN_FORCE_LOCAL_INCLUDES) + set(DOXYGEN_FORCE_LOCAL_INCLUDES NO) +endif() +if(NOT DEFINED DOXYGEN_INLINE_INFO) + set(DOXYGEN_INLINE_INFO YES) +endif() +if(NOT DEFINED DOXYGEN_SORT_MEMBER_DOCS) + set(DOXYGEN_SORT_MEMBER_DOCS YES) +endif() +if(NOT DEFINED DOXYGEN_SORT_BRIEF_DOCS) + set(DOXYGEN_SORT_BRIEF_DOCS NO) +endif() +if(NOT DEFINED DOXYGEN_SORT_MEMBERS_CTORS_1ST) + set(DOXYGEN_SORT_MEMBERS_CTORS_1ST NO) +endif() +if(NOT DEFINED DOXYGEN_SORT_GROUP_NAMES) + set(DOXYGEN_SORT_GROUP_NAMES NO) +endif() +if(NOT DEFINED DOXYGEN_SORT_BY_SCOPE_NAME) + set(DOXYGEN_SORT_BY_SCOPE_NAME NO) +endif() +if(NOT DEFINED DOXYGEN_STRICT_PROTO_MATCHING) + set(DOXYGEN_STRICT_PROTO_MATCHING NO) +endif() +if(NOT DEFINED DOXYGEN_GENERATE_TODOLIST) + set(DOXYGEN_GENERATE_TODOLIST YES) +endif() +if(NOT DEFINED DOXYGEN_GENERATE_TESTLIST) + set(DOXYGEN_GENERATE_TESTLIST YES) +endif() +if(NOT DEFINED DOXYGEN_GENERATE_BUGLIST) + set(DOXYGEN_GENERATE_BUGLIST YES) +endif() +if(NOT DEFINED DOXYGEN_GENERATE_DEPRECATEDLIST) + set(DOXYGEN_GENERATE_DEPRECATEDLIST YES) +endif() +if(NOT DEFINED DOXYGEN_MAX_INITIALIZER_LINES) + set(DOXYGEN_MAX_INITIALIZER_LINES 30) +endif() +if(NOT DEFINED DOXYGEN_SHOW_USED_FILES) + set(DOXYGEN_SHOW_USED_FILES YES) +endif() +if(NOT DEFINED DOXYGEN_SHOW_FILES) + set(DOXYGEN_SHOW_FILES YES) +endif() +if(NOT DEFINED DOXYGEN_SHOW_NAMESPACES) + set(DOXYGEN_SHOW_NAMESPACES YES) +endif() +if(NOT DEFINED DOXYGEN_QUIET) + set(DOXYGEN_QUIET NO) +endif() +if(NOT DEFINED DOXYGEN_WARNINGS) + set(DOXYGEN_WARNINGS YES) +endif() +if(NOT DEFINED DOXYGEN_WARN_IF_UNDOCUMENTED) + set(DOXYGEN_WARN_IF_UNDOCUMENTED YES) +endif() +if(NOT DEFINED DOXYGEN_WARN_IF_DOC_ERROR) + set(DOXYGEN_WARN_IF_DOC_ERROR YES) +endif() +if(NOT DEFINED DOXYGEN_WARN_IF_INCOMPLETE_DOC) + set(DOXYGEN_WARN_IF_INCOMPLETE_DOC YES) +endif() +if(NOT DEFINED DOXYGEN_WARN_NO_PARAMDOC) + set(DOXYGEN_WARN_NO_PARAMDOC NO) +endif() +if(NOT DEFINED DOXYGEN_WARN_IF_UNDOC_ENUM_VAL) + set(DOXYGEN_WARN_IF_UNDOC_ENUM_VAL NO) +endif() +if(NOT DEFINED DOXYGEN_WARN_AS_ERROR) + set(DOXYGEN_WARN_AS_ERROR NO) +endif() +if(NOT DEFINED DOXYGEN_WARN_FORMAT) + set(DOXYGEN_WARN_FORMAT "$file:$line: $text") +endif() +if(NOT DEFINED DOXYGEN_WARN_LINE_FORMAT) + set(DOXYGEN_WARN_LINE_FORMAT "at line $line of file $file") +endif() +if(NOT DEFINED DOXYGEN_INPUT_ENCODING) + set(DOXYGEN_INPUT_ENCODING UTF-8) +endif() +if(NOT DEFINED DOXYGEN_FILE_PATTERNS) + set(DOXYGEN_FILE_PATTERNS *.c + *.cc + *.cxx + *.cxxm + *.cpp + *.cppm + *.ccm + *.c++ + *.c++m + *.java + *.ii + *.ixx + *.ipp + *.i++ + *.inl + *.idl + *.ddl + *.odl + *.h + *.hh + *.hxx + *.hpp + *.h++ + *.ixx + *.l + *.cs + *.d + *.php + *.php4 + *.php5 + *.phtml + *.inc + *.m + *.markdown + *.md + *.mm + *.dox + *.py + *.pyw + *.f90 + *.f95 + *.f03 + *.f08 + *.f18 + *.f + *.for + *.vhd + *.vhdl + *.ucf + *.qsf + *.ice) +endif() +if(NOT DEFINED DOXYGEN_RECURSIVE) + set(DOXYGEN_RECURSIVE NO) +endif() +if(NOT DEFINED DOXYGEN_EXCLUDE_SYMLINKS) + set(DOXYGEN_EXCLUDE_SYMLINKS NO) +endif() +if(NOT DEFINED DOXYGEN_EXAMPLE_PATTERNS) + set(DOXYGEN_EXAMPLE_PATTERNS *) +endif() +if(NOT DEFINED DOXYGEN_EXAMPLE_RECURSIVE) + set(DOXYGEN_EXAMPLE_RECURSIVE NO) +endif() +if(NOT DEFINED DOXYGEN_FILTER_SOURCE_FILES) + set(DOXYGEN_FILTER_SOURCE_FILES NO) +endif() +if(NOT DEFINED DOXYGEN_FORTRAN_COMMENT_AFTER) + set(DOXYGEN_FORTRAN_COMMENT_AFTER 72) +endif() +if(NOT DEFINED DOXYGEN_SOURCE_BROWSER) + set(DOXYGEN_SOURCE_BROWSER NO) +endif() +if(NOT DEFINED DOXYGEN_INLINE_SOURCES) + set(DOXYGEN_INLINE_SOURCES NO) +endif() +if(NOT DEFINED DOXYGEN_STRIP_CODE_COMMENTS) + set(DOXYGEN_STRIP_CODE_COMMENTS YES) +endif() +if(NOT DEFINED DOXYGEN_REFERENCED_BY_RELATION) + set(DOXYGEN_REFERENCED_BY_RELATION NO) +endif() +if(NOT DEFINED DOXYGEN_REFERENCES_RELATION) + set(DOXYGEN_REFERENCES_RELATION NO) +endif() +if(NOT DEFINED DOXYGEN_REFERENCES_LINK_SOURCE) + set(DOXYGEN_REFERENCES_LINK_SOURCE YES) +endif() +if(NOT DEFINED DOXYGEN_SOURCE_TOOLTIPS) + set(DOXYGEN_SOURCE_TOOLTIPS YES) +endif() +if(NOT DEFINED DOXYGEN_USE_HTAGS) + set(DOXYGEN_USE_HTAGS NO) +endif() +if(NOT DEFINED DOXYGEN_VERBATIM_HEADERS) + set(DOXYGEN_VERBATIM_HEADERS YES) +endif() +if(NOT DEFINED DOXYGEN_CLANG_ASSISTED_PARSING) + set(DOXYGEN_CLANG_ASSISTED_PARSING NO) +endif() +if(NOT DEFINED DOXYGEN_CLANG_ADD_INC_PATHS) + set(DOXYGEN_CLANG_ADD_INC_PATHS YES) +endif() +if(NOT DEFINED DOXYGEN_ALPHABETICAL_INDEX) + set(DOXYGEN_ALPHABETICAL_INDEX YES) +endif() +if(NOT DEFINED DOXYGEN_GENERATE_HTML) + set(DOXYGEN_GENERATE_HTML YES) +endif() +if(NOT DEFINED DOXYGEN_HTML_OUTPUT) + set(DOXYGEN_HTML_OUTPUT html) +endif() +if(NOT DEFINED DOXYGEN_HTML_FILE_EXTENSION) + set(DOXYGEN_HTML_FILE_EXTENSION .html) +endif() +if(NOT DEFINED DOXYGEN_HTML_COLORSTYLE) + set(DOXYGEN_HTML_COLORSTYLE AUTO_LIGHT) +endif() +if(NOT DEFINED DOXYGEN_HTML_COLORSTYLE_HUE) + set(DOXYGEN_HTML_COLORSTYLE_HUE 220) +endif() +if(NOT DEFINED DOXYGEN_HTML_COLORSTYLE_SAT) + set(DOXYGEN_HTML_COLORSTYLE_SAT 100) +endif() +if(NOT DEFINED DOXYGEN_HTML_COLORSTYLE_GAMMA) + set(DOXYGEN_HTML_COLORSTYLE_GAMMA 80) +endif() +if(NOT DEFINED DOXYGEN_HTML_DYNAMIC_MENUS) + set(DOXYGEN_HTML_DYNAMIC_MENUS YES) +endif() +if(NOT DEFINED DOXYGEN_HTML_DYNAMIC_SECTIONS) + set(DOXYGEN_HTML_DYNAMIC_SECTIONS NO) +endif() +if(NOT DEFINED DOXYGEN_HTML_CODE_FOLDING) + set(DOXYGEN_HTML_CODE_FOLDING YES) +endif() +if(NOT DEFINED DOXYGEN_HTML_COPY_CLIPBOARD) + set(DOXYGEN_HTML_COPY_CLIPBOARD YES) +endif() +if(NOT DEFINED DOXYGEN_HTML_INDEX_NUM_ENTRIES) + set(DOXYGEN_HTML_INDEX_NUM_ENTRIES 100) +endif() +if(NOT DEFINED DOXYGEN_GENERATE_DOCSET) + set(DOXYGEN_GENERATE_DOCSET NO) +endif() +if(NOT DEFINED DOXYGEN_DOCSET_FEEDNAME) + set(DOXYGEN_DOCSET_FEEDNAME "Doxygen generated docs") +endif() +if(NOT DEFINED DOXYGEN_DOCSET_BUNDLE_ID) + set(DOXYGEN_DOCSET_BUNDLE_ID org.doxygen.Project) +endif() +if(NOT DEFINED DOXYGEN_DOCSET_PUBLISHER_ID) + set(DOXYGEN_DOCSET_PUBLISHER_ID org.doxygen.Publisher) +endif() +if(NOT DEFINED DOXYGEN_DOCSET_PUBLISHER_NAME) + set(DOXYGEN_DOCSET_PUBLISHER_NAME Publisher) +endif() +if(NOT DEFINED DOXYGEN_GENERATE_HTMLHELP) + set(DOXYGEN_GENERATE_HTMLHELP NO) +endif() +if(NOT DEFINED DOXYGEN_GENERATE_CHI) + set(DOXYGEN_GENERATE_CHI NO) +endif() +if(NOT DEFINED DOXYGEN_BINARY_TOC) + set(DOXYGEN_BINARY_TOC NO) +endif() +if(NOT DEFINED DOXYGEN_TOC_EXPAND) + set(DOXYGEN_TOC_EXPAND NO) +endif() +if(NOT DEFINED DOXYGEN_GENERATE_QHP) + set(DOXYGEN_GENERATE_QHP NO) +endif() +if(NOT DEFINED DOXYGEN_QHP_NAMESPACE) + set(DOXYGEN_QHP_NAMESPACE org.doxygen.Project) +endif() +if(NOT DEFINED DOXYGEN_QHP_VIRTUAL_FOLDER) + set(DOXYGEN_QHP_VIRTUAL_FOLDER doc) +endif() +if(NOT DEFINED DOXYGEN_GENERATE_ECLIPSEHELP) + set(DOXYGEN_GENERATE_ECLIPSEHELP NO) +endif() +if(NOT DEFINED DOXYGEN_ECLIPSE_DOC_ID) + set(DOXYGEN_ECLIPSE_DOC_ID org.doxygen.Project) +endif() +if(NOT DEFINED DOXYGEN_DISABLE_INDEX) + set(DOXYGEN_DISABLE_INDEX NO) +endif() +if(NOT DEFINED DOXYGEN_GENERATE_TREEVIEW) + set(DOXYGEN_GENERATE_TREEVIEW NO) +endif() +if(NOT DEFINED DOXYGEN_FULL_SIDEBAR) + set(DOXYGEN_FULL_SIDEBAR NO) +endif() +if(NOT DEFINED DOXYGEN_ENUM_VALUES_PER_LINE) + set(DOXYGEN_ENUM_VALUES_PER_LINE 4) +endif() +if(NOT DEFINED DOXYGEN_TREEVIEW_WIDTH) + set(DOXYGEN_TREEVIEW_WIDTH 250) +endif() +if(NOT DEFINED DOXYGEN_EXT_LINKS_IN_WINDOW) + set(DOXYGEN_EXT_LINKS_IN_WINDOW NO) +endif() +if(NOT DEFINED DOXYGEN_OBFUSCATE_EMAILS) + set(DOXYGEN_OBFUSCATE_EMAILS YES) +endif() +if(NOT DEFINED DOXYGEN_HTML_FORMULA_FORMAT) + set(DOXYGEN_HTML_FORMULA_FORMAT png) +endif() +if(NOT DEFINED DOXYGEN_FORMULA_FONTSIZE) + set(DOXYGEN_FORMULA_FONTSIZE 10) +endif() +if(NOT DEFINED DOXYGEN_USE_MATHJAX) + set(DOXYGEN_USE_MATHJAX NO) +endif() +if(NOT DEFINED DOXYGEN_MATHJAX_VERSION) + set(DOXYGEN_MATHJAX_VERSION MathJax_2) +endif() +if(NOT DEFINED DOXYGEN_MATHJAX_FORMAT) + set(DOXYGEN_MATHJAX_FORMAT HTML-CSS) +endif() +if(NOT DEFINED DOXYGEN_SEARCHENGINE) + set(DOXYGEN_SEARCHENGINE YES) +endif() +if(NOT DEFINED DOXYGEN_SERVER_BASED_SEARCH) + set(DOXYGEN_SERVER_BASED_SEARCH NO) +endif() +if(NOT DEFINED DOXYGEN_EXTERNAL_SEARCH) + set(DOXYGEN_EXTERNAL_SEARCH NO) +endif() +if(NOT DEFINED DOXYGEN_SEARCHDATA_FILE) + set(DOXYGEN_SEARCHDATA_FILE searchdata.xml) +endif() +if(NOT DEFINED DOXYGEN_GENERATE_LATEX) + set(DOXYGEN_GENERATE_LATEX YES) +endif() +if(NOT DEFINED DOXYGEN_LATEX_OUTPUT) + set(DOXYGEN_LATEX_OUTPUT latex) +endif() +if(NOT DEFINED DOXYGEN_MAKEINDEX_CMD_NAME) + set(DOXYGEN_MAKEINDEX_CMD_NAME makeindex) +endif() +if(NOT DEFINED DOXYGEN_LATEX_MAKEINDEX_CMD) + set(DOXYGEN_LATEX_MAKEINDEX_CMD makeindex) +endif() +if(NOT DEFINED DOXYGEN_COMPACT_LATEX) + set(DOXYGEN_COMPACT_LATEX NO) +endif() +if(NOT DEFINED DOXYGEN_PAPER_TYPE) + set(DOXYGEN_PAPER_TYPE a4) +endif() +if(NOT DEFINED DOXYGEN_PDF_HYPERLINKS) + set(DOXYGEN_PDF_HYPERLINKS YES) +endif() +if(NOT DEFINED DOXYGEN_USE_PDFLATEX) + set(DOXYGEN_USE_PDFLATEX YES) +endif() +if(NOT DEFINED DOXYGEN_LATEX_BATCHMODE) + set(DOXYGEN_LATEX_BATCHMODE NO) +endif() +if(NOT DEFINED DOXYGEN_LATEX_HIDE_INDICES) + set(DOXYGEN_LATEX_HIDE_INDICES NO) +endif() +if(NOT DEFINED DOXYGEN_LATEX_BIB_STYLE) + set(DOXYGEN_LATEX_BIB_STYLE plain) +endif() +if(NOT DEFINED DOXYGEN_GENERATE_RTF) + set(DOXYGEN_GENERATE_RTF NO) +endif() +if(NOT DEFINED DOXYGEN_RTF_OUTPUT) + set(DOXYGEN_RTF_OUTPUT rtf) +endif() +if(NOT DEFINED DOXYGEN_COMPACT_RTF) + set(DOXYGEN_COMPACT_RTF NO) +endif() +if(NOT DEFINED DOXYGEN_RTF_HYPERLINKS) + set(DOXYGEN_RTF_HYPERLINKS NO) +endif() +if(NOT DEFINED DOXYGEN_GENERATE_MAN) + set(DOXYGEN_GENERATE_MAN NO) +endif() +if(NOT DEFINED DOXYGEN_MAN_OUTPUT) + set(DOXYGEN_MAN_OUTPUT man) +endif() +if(NOT DEFINED DOXYGEN_MAN_EXTENSION) + set(DOXYGEN_MAN_EXTENSION .3) +endif() +if(NOT DEFINED DOXYGEN_MAN_LINKS) + set(DOXYGEN_MAN_LINKS NO) +endif() +if(NOT DEFINED DOXYGEN_GENERATE_XML) + set(DOXYGEN_GENERATE_XML NO) +endif() +if(NOT DEFINED DOXYGEN_XML_OUTPUT) + set(DOXYGEN_XML_OUTPUT xml) +endif() +if(NOT DEFINED DOXYGEN_XML_PROGRAMLISTING) + set(DOXYGEN_XML_PROGRAMLISTING YES) +endif() +if(NOT DEFINED DOXYGEN_XML_NS_MEMB_FILE_SCOPE) + set(DOXYGEN_XML_NS_MEMB_FILE_SCOPE NO) +endif() +if(NOT DEFINED DOXYGEN_GENERATE_DOCBOOK) + set(DOXYGEN_GENERATE_DOCBOOK NO) +endif() +if(NOT DEFINED DOXYGEN_DOCBOOK_OUTPUT) + set(DOXYGEN_DOCBOOK_OUTPUT docbook) +endif() +if(NOT DEFINED DOXYGEN_GENERATE_AUTOGEN_DEF) + set(DOXYGEN_GENERATE_AUTOGEN_DEF NO) +endif() +if(NOT DEFINED DOXYGEN_GENERATE_SQLITE3) + set(DOXYGEN_GENERATE_SQLITE3 NO) +endif() +if(NOT DEFINED DOXYGEN_SQLITE3_OUTPUT) + set(DOXYGEN_SQLITE3_OUTPUT sqlite3) +endif() +if(NOT DEFINED DOXYGEN_SQLITE3_RECREATE_DB) + set(DOXYGEN_SQLITE3_RECREATE_DB YES) +endif() +if(NOT DEFINED DOXYGEN_GENERATE_PERLMOD) + set(DOXYGEN_GENERATE_PERLMOD NO) +endif() +if(NOT DEFINED DOXYGEN_PERLMOD_LATEX) + set(DOXYGEN_PERLMOD_LATEX NO) +endif() +if(NOT DEFINED DOXYGEN_PERLMOD_PRETTY) + set(DOXYGEN_PERLMOD_PRETTY YES) +endif() +if(NOT DEFINED DOXYGEN_ENABLE_PREPROCESSING) + set(DOXYGEN_ENABLE_PREPROCESSING YES) +endif() +if(NOT DEFINED DOXYGEN_MACRO_EXPANSION) + set(DOXYGEN_MACRO_EXPANSION NO) +endif() +if(NOT DEFINED DOXYGEN_EXPAND_ONLY_PREDEF) + set(DOXYGEN_EXPAND_ONLY_PREDEF NO) +endif() +if(NOT DEFINED DOXYGEN_SEARCH_INCLUDES) + set(DOXYGEN_SEARCH_INCLUDES YES) +endif() +if(NOT DEFINED DOXYGEN_SKIP_FUNCTION_MACROS) + set(DOXYGEN_SKIP_FUNCTION_MACROS YES) +endif() +if(NOT DEFINED DOXYGEN_ALLEXTERNALS) + set(DOXYGEN_ALLEXTERNALS NO) +endif() +if(NOT DEFINED DOXYGEN_EXTERNAL_GROUPS) + set(DOXYGEN_EXTERNAL_GROUPS YES) +endif() +if(NOT DEFINED DOXYGEN_EXTERNAL_PAGES) + set(DOXYGEN_EXTERNAL_PAGES YES) +endif() +if(NOT DEFINED DOXYGEN_HIDE_UNDOC_RELATIONS) + set(DOXYGEN_HIDE_UNDOC_RELATIONS YES) +endif() +if(NOT DEFINED DOXYGEN_HAVE_DOT) + set(DOXYGEN_HAVE_DOT NO) +endif() +if(NOT DEFINED DOXYGEN_DOT_NUM_THREADS) + set(DOXYGEN_DOT_NUM_THREADS 0) +endif() +if(NOT DEFINED DOXYGEN_DOT_COMMON_ATTR) + set(DOXYGEN_DOT_COMMON_ATTR "fontname=Helvetica,fontsize=10") +endif() +if(NOT DEFINED DOXYGEN_DOT_EDGE_ATTR) + set(DOXYGEN_DOT_EDGE_ATTR "labelfontname=Helvetica,labelfontsize=10") +endif() +if(NOT DEFINED DOXYGEN_DOT_NODE_ATTR) + set(DOXYGEN_DOT_NODE_ATTR "shape=box,height=0.2,width=0.4") +endif() +if(NOT DEFINED DOXYGEN_CLASS_GRAPH) + set(DOXYGEN_CLASS_GRAPH YES) +endif() +if(NOT DEFINED DOXYGEN_COLLABORATION_GRAPH) + set(DOXYGEN_COLLABORATION_GRAPH YES) +endif() +if(NOT DEFINED DOXYGEN_GROUP_GRAPHS) + set(DOXYGEN_GROUP_GRAPHS YES) +endif() +if(NOT DEFINED DOXYGEN_UML_LOOK) + set(DOXYGEN_UML_LOOK NO) +endif() +if(NOT DEFINED DOXYGEN_UML_LIMIT_NUM_FIELDS) + set(DOXYGEN_UML_LIMIT_NUM_FIELDS 10) +endif() +if(NOT DEFINED DOXYGEN_DOT_UML_DETAILS) + set(DOXYGEN_DOT_UML_DETAILS NO) +endif() +if(NOT DEFINED DOXYGEN_DOT_WRAP_THRESHOLD) + set(DOXYGEN_DOT_WRAP_THRESHOLD 17) +endif() +if(NOT DEFINED DOXYGEN_TEMPLATE_RELATIONS) + set(DOXYGEN_TEMPLATE_RELATIONS NO) +endif() +if(NOT DEFINED DOXYGEN_INCLUDE_GRAPH) + set(DOXYGEN_INCLUDE_GRAPH YES) +endif() +if(NOT DEFINED DOXYGEN_INCLUDED_BY_GRAPH) + set(DOXYGEN_INCLUDED_BY_GRAPH YES) +endif() +if(NOT DEFINED DOXYGEN_CALL_GRAPH) + set(DOXYGEN_CALL_GRAPH NO) +endif() +if(NOT DEFINED DOXYGEN_CALLER_GRAPH) + set(DOXYGEN_CALLER_GRAPH NO) +endif() +if(NOT DEFINED DOXYGEN_GRAPHICAL_HIERARCHY) + set(DOXYGEN_GRAPHICAL_HIERARCHY YES) +endif() +if(NOT DEFINED DOXYGEN_DIRECTORY_GRAPH) + set(DOXYGEN_DIRECTORY_GRAPH YES) +endif() +if(NOT DEFINED DOXYGEN_DIR_GRAPH_MAX_DEPTH) + set(DOXYGEN_DIR_GRAPH_MAX_DEPTH 1) +endif() +if(NOT DEFINED DOXYGEN_DOT_IMAGE_FORMAT) + set(DOXYGEN_DOT_IMAGE_FORMAT png) +endif() +if(NOT DEFINED DOXYGEN_INTERACTIVE_SVG) + set(DOXYGEN_INTERACTIVE_SVG NO) +endif() +if(NOT DEFINED DOXYGEN_DOT_GRAPH_MAX_NODES) + set(DOXYGEN_DOT_GRAPH_MAX_NODES 50) +endif() +if(NOT DEFINED DOXYGEN_MAX_DOT_GRAPH_DEPTH) + set(DOXYGEN_MAX_DOT_GRAPH_DEPTH 0) +endif() +if(NOT DEFINED DOXYGEN_DOT_MULTI_TARGETS) + set(DOXYGEN_DOT_MULTI_TARGETS NO) +endif() +if(NOT DEFINED DOXYGEN_GENERATE_LEGEND) + set(DOXYGEN_GENERATE_LEGEND YES) +endif() +if(NOT DEFINED DOXYGEN_DOT_CLEANUP) + set(DOXYGEN_DOT_CLEANUP YES) +endif() diff --git a/out/build/CMakeFiles/3.28.0-msvc1/CMakeCXXCompiler.cmake b/out/build/CMakeFiles/3.28.0-msvc1/CMakeCXXCompiler.cmake new file mode 100644 index 0000000..298bb61 --- /dev/null +++ b/out/build/CMakeFiles/3.28.0-msvc1/CMakeCXXCompiler.cmake @@ -0,0 +1,85 @@ +set(CMAKE_CXX_COMPILER "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/VC/Tools/MSVC/14.39.33519/bin/Hostx64/x64/cl.exe") +set(CMAKE_CXX_COMPILER_ARG1 "") +set(CMAKE_CXX_COMPILER_ID "MSVC") +set(CMAKE_CXX_COMPILER_VERSION "19.39.33522.0") +set(CMAKE_CXX_COMPILER_VERSION_INTERNAL "") +set(CMAKE_CXX_COMPILER_WRAPPER "") +set(CMAKE_CXX_STANDARD_COMPUTED_DEFAULT "14") +set(CMAKE_CXX_EXTENSIONS_COMPUTED_DEFAULT "OFF") +set(CMAKE_CXX_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters;cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates;cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates;cxx_std_17;cxx_std_20;cxx_std_23") +set(CMAKE_CXX98_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters") +set(CMAKE_CXX11_COMPILE_FEATURES "cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates") +set(CMAKE_CXX14_COMPILE_FEATURES "cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates") +set(CMAKE_CXX17_COMPILE_FEATURES "cxx_std_17") +set(CMAKE_CXX20_COMPILE_FEATURES "cxx_std_20") +set(CMAKE_CXX23_COMPILE_FEATURES "cxx_std_23") + +set(CMAKE_CXX_PLATFORM_ID "Windows") +set(CMAKE_CXX_SIMULATE_ID "") +set(CMAKE_CXX_COMPILER_FRONTEND_VARIANT "MSVC") +set(CMAKE_CXX_SIMULATE_VERSION "") +set(CMAKE_CXX_COMPILER_ARCHITECTURE_ID x64) + +set(MSVC_CXX_ARCHITECTURE_ID x64) + +set(CMAKE_AR "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/VC/Tools/MSVC/14.39.33519/bin/Hostx64/x64/lib.exe") +set(CMAKE_CXX_COMPILER_AR "") +set(CMAKE_RANLIB ":") +set(CMAKE_CXX_COMPILER_RANLIB "") +set(CMAKE_LINKER "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/VC/Tools/MSVC/14.39.33519/bin/Hostx64/x64/link.exe") +set(CMAKE_MT "C:/Program Files (x86)/Windows Kits/10/bin/10.0.22621.0/x64/mt.exe") +set(CMAKE_TAPI "") +set(CMAKE_COMPILER_IS_GNUCXX ) +set(CMAKE_CXX_COMPILER_LOADED 1) +set(CMAKE_CXX_COMPILER_WORKS TRUE) +set(CMAKE_CXX_ABI_COMPILED TRUE) + +set(CMAKE_CXX_COMPILER_ENV_VAR "CXX") + +set(CMAKE_CXX_COMPILER_ID_RUN 1) +set(CMAKE_CXX_SOURCE_FILE_EXTENSIONS C;M;c++;cc;cpp;cxx;m;mm;mpp;CPP;ixx;cppm;ccm;cxxm;c++m) +set(CMAKE_CXX_IGNORE_EXTENSIONS inl;h;hpp;HPP;H;o;O;obj;OBJ;def;DEF;rc;RC) + +foreach (lang C OBJC OBJCXX) + if (CMAKE_${lang}_COMPILER_ID_RUN) + foreach(extension IN LISTS CMAKE_${lang}_SOURCE_FILE_EXTENSIONS) + list(REMOVE_ITEM CMAKE_CXX_SOURCE_FILE_EXTENSIONS ${extension}) + endforeach() + endif() +endforeach() + +set(CMAKE_CXX_LINKER_PREFERENCE 30) +set(CMAKE_CXX_LINKER_PREFERENCE_PROPAGATES 1) +set(CMAKE_CXX_LINKER_DEPFILE_SUPPORTED ) + +# Save compiler ABI information. +set(CMAKE_CXX_SIZEOF_DATA_PTR "8") +set(CMAKE_CXX_COMPILER_ABI "") +set(CMAKE_CXX_BYTE_ORDER "LITTLE_ENDIAN") +set(CMAKE_CXX_LIBRARY_ARCHITECTURE "") + +if(CMAKE_CXX_SIZEOF_DATA_PTR) + set(CMAKE_SIZEOF_VOID_P "${CMAKE_CXX_SIZEOF_DATA_PTR}") +endif() + +if(CMAKE_CXX_COMPILER_ABI) + set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_CXX_COMPILER_ABI}") +endif() + +if(CMAKE_CXX_LIBRARY_ARCHITECTURE) + set(CMAKE_LIBRARY_ARCHITECTURE "") +endif() + +set(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX "注æ„: åŒ…å«æ–‡ä»¶: ") +if(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX) + set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_CXX_CL_SHOWINCLUDES_PREFIX}") +endif() + + + + + +set(CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES "") +set(CMAKE_CXX_IMPLICIT_LINK_LIBRARIES "") +set(CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES "") +set(CMAKE_CXX_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "") diff --git a/out/build/CMakeFiles/3.28.0-msvc1/CMakeDetermineCompilerABI_CXX.bin b/out/build/CMakeFiles/3.28.0-msvc1/CMakeDetermineCompilerABI_CXX.bin new file mode 100644 index 0000000000000000000000000000000000000000..f690a4648478379f7938c2bcb1d504da21f044ee GIT binary patch literal 52736 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 aq<%NZy34wSZd>24 & 0x00FF) +# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF) +# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__ & 0xFFFF) + +#elif defined(__BORLANDC__) +# define COMPILER_ID "Borland" + /* __BORLANDC__ = 0xVRR */ +# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8) +# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF) + +#elif defined(__WATCOMC__) && __WATCOMC__ < 1200 +# define COMPILER_ID "Watcom" + /* __WATCOMC__ = VVRR */ +# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100) +# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10) +# if (__WATCOMC__ % 10) > 0 +# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10) +# endif + +#elif defined(__WATCOMC__) +# define COMPILER_ID "OpenWatcom" + /* __WATCOMC__ = VVRP + 1100 */ +# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100) +# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10) +# if (__WATCOMC__ % 10) > 0 +# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10) +# endif + +#elif defined(__SUNPRO_CC) +# define COMPILER_ID "SunPro" +# if __SUNPRO_CC >= 0x5100 + /* __SUNPRO_CC = 0xVRRP */ +# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>12) +# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xFF) +# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF) +# else + /* __SUNPRO_CC = 0xVRP */ +# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>8) +# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xF) +# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF) +# endif + +#elif defined(__HP_aCC) +# define COMPILER_ID "HP" + /* __HP_aCC = VVRRPP */ +# define COMPILER_VERSION_MAJOR DEC(__HP_aCC/10000) +# define COMPILER_VERSION_MINOR DEC(__HP_aCC/100 % 100) +# define COMPILER_VERSION_PATCH DEC(__HP_aCC % 100) + +#elif defined(__DECCXX) +# define COMPILER_ID "Compaq" + /* __DECCXX_VER = VVRRTPPPP */ +# define COMPILER_VERSION_MAJOR DEC(__DECCXX_VER/10000000) +# define COMPILER_VERSION_MINOR DEC(__DECCXX_VER/100000 % 100) +# define COMPILER_VERSION_PATCH DEC(__DECCXX_VER % 10000) + +#elif defined(__IBMCPP__) && defined(__COMPILER_VER__) +# define COMPILER_ID "zOS" + /* __IBMCPP__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) + +#elif defined(__open_xl__) && defined(__clang__) +# define COMPILER_ID "IBMClang" +# define COMPILER_VERSION_MAJOR DEC(__open_xl_version__) +# define COMPILER_VERSION_MINOR DEC(__open_xl_release__) +# define COMPILER_VERSION_PATCH DEC(__open_xl_modification__) +# define COMPILER_VERSION_TWEAK DEC(__open_xl_ptf_fix_level__) + + +#elif defined(__ibmxl__) && defined(__clang__) +# define COMPILER_ID "XLClang" +# define COMPILER_VERSION_MAJOR DEC(__ibmxl_version__) +# define COMPILER_VERSION_MINOR DEC(__ibmxl_release__) +# define COMPILER_VERSION_PATCH DEC(__ibmxl_modification__) +# define COMPILER_VERSION_TWEAK DEC(__ibmxl_ptf_fix_level__) + + +#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ >= 800 +# define COMPILER_ID "XL" + /* __IBMCPP__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) + +#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ < 800 +# define COMPILER_ID "VisualAge" + /* __IBMCPP__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) + +#elif defined(__NVCOMPILER) +# define COMPILER_ID "NVHPC" +# define COMPILER_VERSION_MAJOR DEC(__NVCOMPILER_MAJOR__) +# define COMPILER_VERSION_MINOR DEC(__NVCOMPILER_MINOR__) +# if defined(__NVCOMPILER_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__NVCOMPILER_PATCHLEVEL__) +# endif + +#elif defined(__PGI) +# define COMPILER_ID "PGI" +# define COMPILER_VERSION_MAJOR DEC(__PGIC__) +# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__) +# if defined(__PGIC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__) +# endif + +#elif defined(__clang__) && defined(__cray__) +# define COMPILER_ID "CrayClang" +# define COMPILER_VERSION_MAJOR DEC(__cray_major__) +# define COMPILER_VERSION_MINOR DEC(__cray_minor__) +# define COMPILER_VERSION_PATCH DEC(__cray_patchlevel__) +# define COMPILER_VERSION_INTERNAL_STR __clang_version__ + + +#elif defined(_CRAYC) +# define COMPILER_ID "Cray" +# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR) +# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR) + +#elif defined(__TI_COMPILER_VERSION__) +# define COMPILER_ID "TI" + /* __TI_COMPILER_VERSION__ = VVVRRRPPP */ +# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000) +# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000 % 1000) +# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__ % 1000) + +#elif defined(__CLANG_FUJITSU) +# define COMPILER_ID "FujitsuClang" +# define COMPILER_VERSION_MAJOR DEC(__FCC_major__) +# define COMPILER_VERSION_MINOR DEC(__FCC_minor__) +# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__) +# define COMPILER_VERSION_INTERNAL_STR __clang_version__ + + +#elif defined(__FUJITSU) +# define COMPILER_ID "Fujitsu" +# if defined(__FCC_version__) +# define COMPILER_VERSION __FCC_version__ +# elif defined(__FCC_major__) +# define COMPILER_VERSION_MAJOR DEC(__FCC_major__) +# define COMPILER_VERSION_MINOR DEC(__FCC_minor__) +# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__) +# endif +# if defined(__fcc_version) +# define COMPILER_VERSION_INTERNAL DEC(__fcc_version) +# elif defined(__FCC_VERSION) +# define COMPILER_VERSION_INTERNAL DEC(__FCC_VERSION) +# endif + + +#elif defined(__ghs__) +# define COMPILER_ID "GHS" +/* __GHS_VERSION_NUMBER = VVVVRP */ +# ifdef __GHS_VERSION_NUMBER +# define COMPILER_VERSION_MAJOR DEC(__GHS_VERSION_NUMBER / 100) +# define COMPILER_VERSION_MINOR DEC(__GHS_VERSION_NUMBER / 10 % 10) +# define COMPILER_VERSION_PATCH DEC(__GHS_VERSION_NUMBER % 10) +# endif + +#elif defined(__TASKING__) +# define COMPILER_ID "Tasking" + # define COMPILER_VERSION_MAJOR DEC(__VERSION__/1000) + # define COMPILER_VERSION_MINOR DEC(__VERSION__ % 100) +# define COMPILER_VERSION_INTERNAL DEC(__VERSION__) + +#elif defined(__ORANGEC__) +# define COMPILER_ID "OrangeC" +# define COMPILER_VERSION_MAJOR DEC(__ORANGEC_MAJOR__) +# define COMPILER_VERSION_MINOR DEC(__ORANGEC_MINOR__) +# define COMPILER_VERSION_PATCH DEC(__ORANGEC_PATCHLEVEL__) + +#elif defined(__SCO_VERSION__) +# define COMPILER_ID "SCO" + +#elif defined(__ARMCC_VERSION) && !defined(__clang__) +# define COMPILER_ID "ARMCC" +#if __ARMCC_VERSION >= 1000000 + /* __ARMCC_VERSION = VRRPPPP */ + # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000) + # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100) + # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000) +#else + /* __ARMCC_VERSION = VRPPPP */ + # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000) + # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10) + # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000) +#endif + + +#elif defined(__clang__) && defined(__apple_build_version__) +# define COMPILER_ID "AppleClang" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# define COMPILER_VERSION_MAJOR DEC(__clang_major__) +# define COMPILER_VERSION_MINOR DEC(__clang_minor__) +# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif +# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__) + +#elif defined(__clang__) && defined(__ARMCOMPILER_VERSION) +# define COMPILER_ID "ARMClang" + # define COMPILER_VERSION_MAJOR DEC(__ARMCOMPILER_VERSION/1000000) + # define COMPILER_VERSION_MINOR DEC(__ARMCOMPILER_VERSION/10000 % 100) + # define COMPILER_VERSION_PATCH DEC(__ARMCOMPILER_VERSION/100 % 100) +# define COMPILER_VERSION_INTERNAL DEC(__ARMCOMPILER_VERSION) + +#elif defined(__clang__) +# define COMPILER_ID "Clang" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# define COMPILER_VERSION_MAJOR DEC(__clang_major__) +# define COMPILER_VERSION_MINOR DEC(__clang_minor__) +# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif + +#elif defined(__LCC__) && (defined(__GNUC__) || defined(__GNUG__) || defined(__MCST__)) +# define COMPILER_ID "LCC" +# define COMPILER_VERSION_MAJOR DEC(__LCC__ / 100) +# define COMPILER_VERSION_MINOR DEC(__LCC__ % 100) +# if defined(__LCC_MINOR__) +# define COMPILER_VERSION_PATCH DEC(__LCC_MINOR__) +# endif +# if defined(__GNUC__) && defined(__GNUC_MINOR__) +# define SIMULATE_ID "GNU" +# define SIMULATE_VERSION_MAJOR DEC(__GNUC__) +# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__) +# if defined(__GNUC_PATCHLEVEL__) +# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) +# endif +# endif + +#elif defined(__GNUC__) || defined(__GNUG__) +# define COMPILER_ID "GNU" +# if defined(__GNUC__) +# define COMPILER_VERSION_MAJOR DEC(__GNUC__) +# else +# define COMPILER_VERSION_MAJOR DEC(__GNUG__) +# endif +# if defined(__GNUC_MINOR__) +# define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__) +# endif +# if defined(__GNUC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) +# endif + +#elif defined(_MSC_VER) +# define COMPILER_ID "MSVC" + /* _MSC_VER = VVRR */ +# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100) +# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100) +# if defined(_MSC_FULL_VER) +# if _MSC_VER >= 1400 + /* _MSC_FULL_VER = VVRRPPPPP */ +# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000) +# else + /* _MSC_FULL_VER = VVRRPPPP */ +# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000) +# endif +# endif +# if defined(_MSC_BUILD) +# define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD) +# endif + +#elif defined(_ADI_COMPILER) +# define COMPILER_ID "ADSP" +#if defined(__VERSIONNUM__) + /* __VERSIONNUM__ = 0xVVRRPPTT */ +# define COMPILER_VERSION_MAJOR DEC(__VERSIONNUM__ >> 24 & 0xFF) +# define COMPILER_VERSION_MINOR DEC(__VERSIONNUM__ >> 16 & 0xFF) +# define COMPILER_VERSION_PATCH DEC(__VERSIONNUM__ >> 8 & 0xFF) +# define COMPILER_VERSION_TWEAK DEC(__VERSIONNUM__ & 0xFF) +#endif + +#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC) +# define COMPILER_ID "IAR" +# if defined(__VER__) && defined(__ICCARM__) +# define COMPILER_VERSION_MAJOR DEC((__VER__) / 1000000) +# define COMPILER_VERSION_MINOR DEC(((__VER__) / 1000) % 1000) +# define COMPILER_VERSION_PATCH DEC((__VER__) % 1000) +# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__) +# elif defined(__VER__) && (defined(__ICCAVR__) || defined(__ICCRX__) || defined(__ICCRH850__) || defined(__ICCRL78__) || defined(__ICC430__) || defined(__ICCRISCV__) || defined(__ICCV850__) || defined(__ICC8051__) || defined(__ICCSTM8__)) +# define COMPILER_VERSION_MAJOR DEC((__VER__) / 100) +# define COMPILER_VERSION_MINOR DEC((__VER__) - (((__VER__) / 100)*100)) +# define COMPILER_VERSION_PATCH DEC(__SUBVERSION__) +# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__) +# endif + + +/* These compilers are either not known or too old to define an + identification macro. Try to identify the platform and guess that + it is the native compiler. */ +#elif defined(__hpux) || defined(__hpua) +# define COMPILER_ID "HP" + +#else /* unknown compiler */ +# define COMPILER_ID "" +#endif + +/* Construct the string literal in pieces to prevent the source from + getting matched. Store it in a pointer rather than an array + because some compilers will just produce instructions to fill the + array rather than assigning a pointer to a static array. */ +char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]"; +#ifdef SIMULATE_ID +char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]"; +#endif + +#ifdef __QNXNTO__ +char const* qnxnto = "INFO" ":" "qnxnto[]"; +#endif + +#if defined(__CRAYXT_COMPUTE_LINUX_TARGET) +char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]"; +#endif + +#define STRINGIFY_HELPER(X) #X +#define STRINGIFY(X) STRINGIFY_HELPER(X) + +/* Identify known platforms by name. */ +#if defined(__linux) || defined(__linux__) || defined(linux) +# define PLATFORM_ID "Linux" + +#elif defined(__MSYS__) +# define PLATFORM_ID "MSYS" + +#elif defined(__CYGWIN__) +# define PLATFORM_ID "Cygwin" + +#elif defined(__MINGW32__) +# define PLATFORM_ID "MinGW" + +#elif defined(__APPLE__) +# define PLATFORM_ID "Darwin" + +#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32) +# define PLATFORM_ID "Windows" + +#elif defined(__FreeBSD__) || defined(__FreeBSD) +# define PLATFORM_ID "FreeBSD" + +#elif defined(__NetBSD__) || defined(__NetBSD) +# define PLATFORM_ID "NetBSD" + +#elif defined(__OpenBSD__) || defined(__OPENBSD) +# define PLATFORM_ID "OpenBSD" + +#elif defined(__sun) || defined(sun) +# define PLATFORM_ID "SunOS" + +#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__) +# define PLATFORM_ID "AIX" + +#elif defined(__hpux) || defined(__hpux__) +# define PLATFORM_ID "HP-UX" + +#elif defined(__HAIKU__) +# define PLATFORM_ID "Haiku" + +#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS) +# define PLATFORM_ID "BeOS" + +#elif defined(__QNX__) || defined(__QNXNTO__) +# define PLATFORM_ID "QNX" + +#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__) +# define PLATFORM_ID "Tru64" + +#elif defined(__riscos) || defined(__riscos__) +# define PLATFORM_ID "RISCos" + +#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__) +# define PLATFORM_ID "SINIX" + +#elif defined(__UNIX_SV__) +# define PLATFORM_ID "UNIX_SV" + +#elif defined(__bsdos__) +# define PLATFORM_ID "BSDOS" + +#elif defined(_MPRAS) || defined(MPRAS) +# define PLATFORM_ID "MP-RAS" + +#elif defined(__osf) || defined(__osf__) +# define PLATFORM_ID "OSF1" + +#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv) +# define PLATFORM_ID "SCO_SV" + +#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX) +# define PLATFORM_ID "ULTRIX" + +#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX) +# define PLATFORM_ID "Xenix" + +#elif defined(__WATCOMC__) +# if defined(__LINUX__) +# define PLATFORM_ID "Linux" + +# elif defined(__DOS__) +# define PLATFORM_ID "DOS" + +# elif defined(__OS2__) +# define PLATFORM_ID "OS2" + +# elif defined(__WINDOWS__) +# define PLATFORM_ID "Windows3x" + +# elif defined(__VXWORKS__) +# define PLATFORM_ID "VxWorks" + +# else /* unknown platform */ +# define PLATFORM_ID +# endif + +#elif defined(__INTEGRITY) +# if defined(INT_178B) +# define PLATFORM_ID "Integrity178" + +# else /* regular Integrity */ +# define PLATFORM_ID "Integrity" +# endif + +# elif defined(_ADI_COMPILER) +# define PLATFORM_ID "ADSP" + +#else /* unknown platform */ +# define PLATFORM_ID + +#endif + +/* For windows compilers MSVC and Intel we can determine + the architecture of the compiler being used. This is because + the compilers do not have flags that can change the architecture, + but rather depend on which compiler is being used +*/ +#if defined(_WIN32) && defined(_MSC_VER) +# if defined(_M_IA64) +# define ARCHITECTURE_ID "IA64" + +# elif defined(_M_ARM64EC) +# define ARCHITECTURE_ID "ARM64EC" + +# elif defined(_M_X64) || defined(_M_AMD64) +# define ARCHITECTURE_ID "x64" + +# elif defined(_M_IX86) +# define ARCHITECTURE_ID "X86" + +# elif defined(_M_ARM64) +# define ARCHITECTURE_ID "ARM64" + +# elif defined(_M_ARM) +# if _M_ARM == 4 +# define ARCHITECTURE_ID "ARMV4I" +# elif _M_ARM == 5 +# define ARCHITECTURE_ID "ARMV5I" +# else +# define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM) +# endif + +# elif defined(_M_MIPS) +# define ARCHITECTURE_ID "MIPS" + +# elif defined(_M_SH) +# define ARCHITECTURE_ID "SHx" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__WATCOMC__) +# if defined(_M_I86) +# define ARCHITECTURE_ID "I86" + +# elif defined(_M_IX86) +# define ARCHITECTURE_ID "X86" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC) +# if defined(__ICCARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__ICCRX__) +# define ARCHITECTURE_ID "RX" + +# elif defined(__ICCRH850__) +# define ARCHITECTURE_ID "RH850" + +# elif defined(__ICCRL78__) +# define ARCHITECTURE_ID "RL78" + +# elif defined(__ICCRISCV__) +# define ARCHITECTURE_ID "RISCV" + +# elif defined(__ICCAVR__) +# define ARCHITECTURE_ID "AVR" + +# elif defined(__ICC430__) +# define ARCHITECTURE_ID "MSP430" + +# elif defined(__ICCV850__) +# define ARCHITECTURE_ID "V850" + +# elif defined(__ICC8051__) +# define ARCHITECTURE_ID "8051" + +# elif defined(__ICCSTM8__) +# define ARCHITECTURE_ID "STM8" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__ghs__) +# if defined(__PPC64__) +# define ARCHITECTURE_ID "PPC64" + +# elif defined(__ppc__) +# define ARCHITECTURE_ID "PPC" + +# elif defined(__ARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__x86_64__) +# define ARCHITECTURE_ID "x64" + +# elif defined(__i386__) +# define ARCHITECTURE_ID "X86" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__TI_COMPILER_VERSION__) +# if defined(__TI_ARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__MSP430__) +# define ARCHITECTURE_ID "MSP430" + +# elif defined(__TMS320C28XX__) +# define ARCHITECTURE_ID "TMS320C28x" + +# elif defined(__TMS320C6X__) || defined(_TMS320C6X) +# define ARCHITECTURE_ID "TMS320C6x" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +# elif defined(__ADSPSHARC__) +# define ARCHITECTURE_ID "SHARC" + +# elif defined(__ADSPBLACKFIN__) +# define ARCHITECTURE_ID "Blackfin" + +#elif defined(__TASKING__) + +# if defined(__CTC__) || defined(__CPTC__) +# define ARCHITECTURE_ID "TriCore" + +# elif defined(__CMCS__) +# define ARCHITECTURE_ID "MCS" + +# elif defined(__CARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__CARC__) +# define ARCHITECTURE_ID "ARC" + +# elif defined(__C51__) +# define ARCHITECTURE_ID "8051" + +# elif defined(__CPCP__) +# define ARCHITECTURE_ID "PCP" + +# else +# define ARCHITECTURE_ID "" +# endif + +#else +# define ARCHITECTURE_ID +#endif + +/* Convert integer to decimal digit literals. */ +#define DEC(n) \ + ('0' + (((n) / 10000000)%10)), \ + ('0' + (((n) / 1000000)%10)), \ + ('0' + (((n) / 100000)%10)), \ + ('0' + (((n) / 10000)%10)), \ + ('0' + (((n) / 1000)%10)), \ + ('0' + (((n) / 100)%10)), \ + ('0' + (((n) / 10)%10)), \ + ('0' + ((n) % 10)) + +/* Convert integer to hex digit literals. */ +#define HEX(n) \ + ('0' + ((n)>>28 & 0xF)), \ + ('0' + ((n)>>24 & 0xF)), \ + ('0' + ((n)>>20 & 0xF)), \ + ('0' + ((n)>>16 & 0xF)), \ + ('0' + ((n)>>12 & 0xF)), \ + ('0' + ((n)>>8 & 0xF)), \ + ('0' + ((n)>>4 & 0xF)), \ + ('0' + ((n) & 0xF)) + +/* Construct a string literal encoding the version number. */ +#ifdef COMPILER_VERSION +char const* info_version = "INFO" ":" "compiler_version[" COMPILER_VERSION "]"; + +/* Construct a string literal encoding the version number components. */ +#elif defined(COMPILER_VERSION_MAJOR) +char const info_version[] = { + 'I', 'N', 'F', 'O', ':', + 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[', + COMPILER_VERSION_MAJOR, +# ifdef COMPILER_VERSION_MINOR + '.', COMPILER_VERSION_MINOR, +# ifdef COMPILER_VERSION_PATCH + '.', COMPILER_VERSION_PATCH, +# ifdef COMPILER_VERSION_TWEAK + '.', COMPILER_VERSION_TWEAK, +# endif +# endif +# endif + ']','\0'}; +#endif + +/* Construct a string literal encoding the internal version number. */ +#ifdef COMPILER_VERSION_INTERNAL +char const info_version_internal[] = { + 'I', 'N', 'F', 'O', ':', + 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','_', + 'i','n','t','e','r','n','a','l','[', + COMPILER_VERSION_INTERNAL,']','\0'}; +#elif defined(COMPILER_VERSION_INTERNAL_STR) +char const* info_version_internal = "INFO" ":" "compiler_version_internal[" COMPILER_VERSION_INTERNAL_STR "]"; +#endif + +/* Construct a string literal encoding the version number components. */ +#ifdef SIMULATE_VERSION_MAJOR +char const info_simulate_version[] = { + 'I', 'N', 'F', 'O', ':', + 's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[', + SIMULATE_VERSION_MAJOR, +# ifdef SIMULATE_VERSION_MINOR + '.', SIMULATE_VERSION_MINOR, +# ifdef SIMULATE_VERSION_PATCH + '.', SIMULATE_VERSION_PATCH, +# ifdef SIMULATE_VERSION_TWEAK + '.', SIMULATE_VERSION_TWEAK, +# endif +# endif +# endif + ']','\0'}; +#endif + +/* Construct the string literal in pieces to prevent the source from + getting matched. Store it in a pointer rather than an array + because some compilers will just produce instructions to fill the + array rather than assigning a pointer to a static array. */ +char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]"; +char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]"; + + + +#if defined(__INTEL_COMPILER) && defined(_MSVC_LANG) && _MSVC_LANG < 201403L +# if defined(__INTEL_CXX11_MODE__) +# if defined(__cpp_aggregate_nsdmi) +# define CXX_STD 201402L +# else +# define CXX_STD 201103L +# endif +# else +# define CXX_STD 199711L +# endif +#elif defined(_MSC_VER) && defined(_MSVC_LANG) +# define CXX_STD _MSVC_LANG +#else +# define CXX_STD __cplusplus +#endif + +const char* info_language_standard_default = "INFO" ":" "standard_default[" +#if CXX_STD > 202002L + "23" +#elif CXX_STD > 201703L + "20" +#elif CXX_STD >= 201703L + "17" +#elif CXX_STD >= 201402L + "14" +#elif CXX_STD >= 201103L + "11" +#else + "98" +#endif +"]"; + +const char* info_language_extensions_default = "INFO" ":" "extensions_default[" +#if (defined(__clang__) || defined(__GNUC__) || defined(__xlC__) || \ + defined(__TI_COMPILER_VERSION__)) && \ + !defined(__STRICT_ANSI__) + "ON" +#else + "OFF" +#endif +"]"; + +/*--------------------------------------------------------------------------*/ + +int main(int argc, char* argv[]) +{ + int require = 0; + require += info_compiler[argc]; + require += info_platform[argc]; + require += info_arch[argc]; +#ifdef COMPILER_VERSION_MAJOR + require += info_version[argc]; +#endif +#ifdef COMPILER_VERSION_INTERNAL + require += info_version_internal[argc]; +#endif +#ifdef SIMULATE_ID + require += info_simulate[argc]; +#endif +#ifdef SIMULATE_VERSION_MAJOR + require += info_simulate_version[argc]; +#endif +#if defined(__CRAYXT_COMPUTE_LINUX_TARGET) + require += info_cray[argc]; +#endif + require += info_language_standard_default[argc]; + require += info_language_extensions_default[argc]; + (void)argv; + return require; +} diff --git a/out/build/CMakeFiles/3.28.0-msvc1/CompilerIdCXX/CMakeCXXCompilerId.exe b/out/build/CMakeFiles/3.28.0-msvc1/CompilerIdCXX/CMakeCXXCompilerId.exe new file mode 100644 index 0000000000000000000000000000000000000000..01dd394537c50af7def81e554b6865066fe03cfa GIT binary patch literal 115200 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

    GIJb+s%4kafTUZCjY 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. + + +set(CPACK_BINARY_7Z "OFF") +set(CPACK_BINARY_IFW "OFF") +set(CPACK_BINARY_INNOSETUP "OFF") +set(CPACK_BINARY_NSIS "ON") +set(CPACK_BINARY_NUGET "OFF") +set(CPACK_BINARY_WIX "OFF") +set(CPACK_BINARY_ZIP "OFF") +set(CPACK_BUILD_SOURCE_DIRS "D:/WBFZCPP/source/FastCAE;D:/WBFZCPP/source/FastCAE/out/build") +set(CPACK_CMAKE_GENERATOR "Ninja") +set(CPACK_COMPONENTS_ALL "Unspecified;bin;lib") +set(CPACK_COMPONENT_UNSPECIFIED_HIDDEN "TRUE") +set(CPACK_COMPONENT_UNSPECIFIED_REQUIRED "TRUE") +set(CPACK_DEFAULT_PACKAGE_DESCRIPTION_FILE "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Templates/CPack.GenericDescription.txt") +set(CPACK_DEFAULT_PACKAGE_DESCRIPTION_SUMMARY "LAMPCAE built using CMake") +set(CPACK_GENERATOR "NSIS") +set(CPACK_INNOSETUP_ARCHITECTURE "x64") +set(CPACK_INSTALL_CMAKE_PROJECTS "D:/WBFZCPP/source/FastCAE/out/build;LAMPCAE;ALL;/") +set(CPACK_INSTALL_PREFIX "D:/WBFZCPP/source/FastCAE/install") +set(CPACK_MODULE_PATH "D:/WBFZCPP/source/FastCAE/cmake") +set(CPACK_NSIS_DISPLAY_NAME "LAMPCAE 2.5.0") +set(CPACK_NSIS_INSTALLER_ICON_CODE "") +set(CPACK_NSIS_INSTALLER_MUI_ICON_CODE "") +set(CPACK_NSIS_INSTALL_ROOT "$PROGRAMFILES64") +set(CPACK_NSIS_PACKAGE_NAME "LAMPCAE 2.5.0") +set(CPACK_NSIS_UNINSTALL_NAME "Uninstall") +set(CPACK_OUTPUT_CONFIG_FILE "D:/WBFZCPP/source/FastCAE/out/build/CPackConfig.cmake") +set(CPACK_PACKAGE_DEFAULT_LOCATION "/") +set(CPACK_PACKAGE_DESCRIPTION_FILE "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Templates/CPack.GenericDescription.txt") +set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "LAMPCAE ,基于 FastCAE,一款å…费的CAEä»¿çœŸè½¯ä»¶ç ”å‘æ”¯æ’‘å¹³å°ã€‚") +set(CPACK_PACKAGE_FILE_NAME "LAMPCAE-2.5.0-win64") +set(CPACK_PACKAGE_HOMEPAGE_URL "http://www.LAMPCAE.com/") +set(CPACK_PACKAGE_INSTALL_DIRECTORY "LAMPCAE 2.5.0") +set(CPACK_PACKAGE_INSTALL_REGISTRY_KEY "LAMPCAE 2.5.0") +set(CPACK_PACKAGE_NAME "LAMPCAE") +set(CPACK_PACKAGE_RELOCATABLE "true") +set(CPACK_PACKAGE_VENDOR "Humanity") +set(CPACK_PACKAGE_VERSION "2.5.0") +set(CPACK_PACKAGE_VERSION_MAJOR "2") +set(CPACK_PACKAGE_VERSION_MINOR "5") +set(CPACK_PACKAGE_VERSION_PATCH "0") +set(CPACK_RESOURCE_FILE_LICENSE "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Templates/CPack.GenericLicense.txt") +set(CPACK_RESOURCE_FILE_README "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Templates/CPack.GenericDescription.txt") +set(CPACK_RESOURCE_FILE_WELCOME "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Templates/CPack.GenericWelcome.txt") +set(CPACK_SET_DESTDIR "OFF") +set(CPACK_SOURCE_7Z "ON") +set(CPACK_SOURCE_GENERATOR "7Z;ZIP") +set(CPACK_SOURCE_OUTPUT_CONFIG_FILE "D:/WBFZCPP/source/FastCAE/out/build/CPackSourceConfig.cmake") +set(CPACK_SOURCE_ZIP "ON") +set(CPACK_SYSTEM_NAME "win64") +set(CPACK_THREADS "1") +set(CPACK_TOPLEVEL_TAG "win64") +set(CPACK_WIX_SIZEOF_VOID_P "8") + +if(NOT CPACK_PROPERTIES_FILE) + set(CPACK_PROPERTIES_FILE "D:/WBFZCPP/source/FastCAE/out/build/CPackProperties.cmake") +endif() + +if(EXISTS ${CPACK_PROPERTIES_FILE}) + include(${CPACK_PROPERTIES_FILE}) +endif() diff --git a/out/build/CPackSourceConfig.cmake b/out/build/CPackSourceConfig.cmake new file mode 100644 index 0000000..beb0a8e --- /dev/null +++ b/out/build/CPackSourceConfig.cmake @@ -0,0 +1,80 @@ +# This file will be configured to contain variables for CPack. These variables +# should be set in the CMake list file of the project before CPack module is +# included. The list of available CPACK_xxx variables and their associated +# documentation may be obtained using +# cpack --help-variable-list +# +# Some variables are common to all generators (e.g. CPACK_PACKAGE_NAME) +# and some are specific to a generator +# (e.g. CPACK_NSIS_EXTRA_INSTALL_COMMANDS). The generator specific variables +# usually begin with CPACK__xxxx. + + +set(CPACK_BINARY_7Z "OFF") +set(CPACK_BINARY_IFW "OFF") +set(CPACK_BINARY_INNOSETUP "OFF") +set(CPACK_BINARY_NSIS "ON") +set(CPACK_BINARY_NUGET "OFF") +set(CPACK_BINARY_WIX "OFF") +set(CPACK_BINARY_ZIP "OFF") +set(CPACK_BUILD_SOURCE_DIRS "D:/WBFZCPP/source/FastCAE;D:/WBFZCPP/source/FastCAE/out/build") +set(CPACK_CMAKE_GENERATOR "Ninja") +set(CPACK_COMPONENTS_ALL "Unspecified;bin;lib") +set(CPACK_COMPONENT_UNSPECIFIED_HIDDEN "TRUE") +set(CPACK_COMPONENT_UNSPECIFIED_REQUIRED "TRUE") +set(CPACK_DEFAULT_PACKAGE_DESCRIPTION_FILE "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Templates/CPack.GenericDescription.txt") +set(CPACK_DEFAULT_PACKAGE_DESCRIPTION_SUMMARY "LAMPCAE built using CMake") +set(CPACK_GENERATOR "7Z;ZIP") +set(CPACK_IGNORE_FILES "/CVS/;/\\.svn/;/\\.bzr/;/\\.hg/;/\\.git/;\\.swp\$;\\.#;/#") +set(CPACK_INNOSETUP_ARCHITECTURE "x64") +set(CPACK_INSTALLED_DIRECTORIES "D:/WBFZCPP/source/FastCAE;/") +set(CPACK_INSTALL_CMAKE_PROJECTS "") +set(CPACK_INSTALL_PREFIX "D:/WBFZCPP/source/FastCAE/install") +set(CPACK_MODULE_PATH "D:/WBFZCPP/source/FastCAE/cmake") +set(CPACK_NSIS_DISPLAY_NAME "LAMPCAE 2.5.0") +set(CPACK_NSIS_INSTALLER_ICON_CODE "") +set(CPACK_NSIS_INSTALLER_MUI_ICON_CODE "") +set(CPACK_NSIS_INSTALL_ROOT "$PROGRAMFILES64") +set(CPACK_NSIS_PACKAGE_NAME "LAMPCAE 2.5.0") +set(CPACK_NSIS_UNINSTALL_NAME "Uninstall") +set(CPACK_OUTPUT_CONFIG_FILE "D:/WBFZCPP/source/FastCAE/out/build/CPackConfig.cmake") +set(CPACK_PACKAGE_DEFAULT_LOCATION "/") +set(CPACK_PACKAGE_DESCRIPTION_FILE "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Templates/CPack.GenericDescription.txt") +set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "LAMPCAE ,基于 FastCAE,一款å…费的CAEä»¿çœŸè½¯ä»¶ç ”å‘æ”¯æ’‘å¹³å°ã€‚") +set(CPACK_PACKAGE_FILE_NAME "LAMPCAE-2.5.0-Source") +set(CPACK_PACKAGE_HOMEPAGE_URL "http://www.LAMPCAE.com/") +set(CPACK_PACKAGE_INSTALL_DIRECTORY "LAMPCAE 2.5.0") +set(CPACK_PACKAGE_INSTALL_REGISTRY_KEY "LAMPCAE 2.5.0") +set(CPACK_PACKAGE_NAME "LAMPCAE") +set(CPACK_PACKAGE_RELOCATABLE "true") +set(CPACK_PACKAGE_VENDOR "Humanity") +set(CPACK_PACKAGE_VERSION "2.5.0") +set(CPACK_PACKAGE_VERSION_MAJOR "2") +set(CPACK_PACKAGE_VERSION_MINOR "5") +set(CPACK_PACKAGE_VERSION_PATCH "0") +set(CPACK_RESOURCE_FILE_LICENSE "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Templates/CPack.GenericLicense.txt") +set(CPACK_RESOURCE_FILE_README "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Templates/CPack.GenericDescription.txt") +set(CPACK_RESOURCE_FILE_WELCOME "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28/Templates/CPack.GenericWelcome.txt") +set(CPACK_RPM_PACKAGE_SOURCES "ON") +set(CPACK_SET_DESTDIR "OFF") +set(CPACK_SOURCE_7Z "ON") +set(CPACK_SOURCE_GENERATOR "7Z;ZIP") +set(CPACK_SOURCE_IGNORE_FILES "/CVS/;/\\.svn/;/\\.bzr/;/\\.hg/;/\\.git/;\\.swp\$;\\.#;/#") +set(CPACK_SOURCE_INSTALLED_DIRECTORIES "D:/WBFZCPP/source/FastCAE;/") +set(CPACK_SOURCE_OUTPUT_CONFIG_FILE "D:/WBFZCPP/source/FastCAE/out/build/CPackSourceConfig.cmake") +set(CPACK_SOURCE_PACKAGE_FILE_NAME "LAMPCAE-2.5.0-Source") +set(CPACK_SOURCE_TOPLEVEL_TAG "win64-Source") +set(CPACK_SOURCE_ZIP "ON") +set(CPACK_STRIP_FILES "") +set(CPACK_SYSTEM_NAME "win64") +set(CPACK_THREADS "1") +set(CPACK_TOPLEVEL_TAG "win64-Source") +set(CPACK_WIX_SIZEOF_VOID_P "8") + +if(NOT CPACK_PROPERTIES_FILE) + set(CPACK_PROPERTIES_FILE "D:/WBFZCPP/source/FastCAE/out/build/CPackProperties.cmake") +endif() + +if(EXISTS ${CPACK_PROPERTIES_FILE}) + include(${CPACK_PROPERTIES_FILE}) +endif() diff --git a/out/build/Documentation/Doxygen/Doxyfile b/out/build/Documentation/Doxygen/Doxyfile new file mode 100644 index 0000000..15190a9 --- /dev/null +++ b/out/build/Documentation/Doxygen/Doxyfile @@ -0,0 +1,2533 @@ +# Doxyfile 1.9.1 + +# This file describes the settings to be used by the documentation system +# doxygen (www.doxygen.org) for a project. +# +# All text after a double hash (##) is considered a comment and is placed in +# front of the TAG it is preceding. +# +# All text after a single hash (#) is considered a comment and will be ignored. +# The format is: +# TAG = value [value, ...] +# For lists, items can also be appended using: +# TAG += value [value, ...] +# Values that contain spaces should be placed between quotes (\" \"). + +#--------------------------------------------------------------------------- +# Project related configuration options +#--------------------------------------------------------------------------- + +# This tag specifies the encoding used for all characters in the configuration +# file that follow. The default is UTF-8 which is also the encoding used for all +# text before the first occurrence of this tag. Doxygen uses libiconv (or the +# iconv built into libc) for the transcoding. See +# https://www.gnu.org/software/libiconv/ for the list of possible encodings. +# The default value is: UTF-8. + +DOXYFILE_ENCODING = UTF-8 + +# The PROJECT_NAME tag is a single word (or a sequence of words surrounded by +# double-quotes, unless you are using Doxywizard) that should identify the +# project for which the documentation is generated. This name is used in the +# title of most generated pages and in a few other places. +# The default value is: My Project. + +PROJECT_NAME = LAMPCAE + +# The PROJECT_NUMBER tag can be used to enter a project or revision number. This +# could be handy for archiving the generated documentation or if some version +# control system is used. + +PROJECT_NUMBER = 2.5.0 + +# Using the PROJECT_BRIEF tag one can provide an optional one line description +# for a project that appears at the top of each page and should give viewer a +# quick idea about the purpose of the project. Keep the description short. + +PROJECT_BRIEF = LAMPCAE ,基于 FastCAE,一款å…费的CAEä»¿çœŸè½¯ä»¶ç ”å‘æ”¯æ’‘å¹³å°ã€‚ + +# With the PROJECT_LOGO tag one can specify a logo or an icon that is included +# in the documentation. The maximum height of the logo should not exceed 55 +# pixels and the maximum width should not exceed 200 pixels. Doxygen will copy +# the logo to the output directory. + +PROJECT_LOGO = http://www.LAMPCAE.com/static/images/logo.png + +# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) path +# into which the generated documentation will be written. If a relative path is +# entered, it will be relative to the location where doxygen was started. If +# left blank the current directory will be used. + +OUTPUT_DIRECTORY = + +# If the CREATE_SUBDIRS tag is set to YES then doxygen will create 4096 sub- +# directories (in 2 levels) under the output directory of each output format and +# will distribute the generated files over these directories. Enabling this +# option can be useful when feeding doxygen a huge amount of source files, where +# putting all generated files in the same directory would otherwise causes +# performance problems for the file system. +# The default value is: NO. + +CREATE_SUBDIRS = NO + +# If the ALLOW_UNICODE_NAMES tag is set to YES, doxygen will allow non-ASCII +# characters to appear in the names of generated files. If set to NO, non-ASCII +# characters will be escaped, for example _xE3_x81_x84 will be used for Unicode +# U+3044. +# The default value is: NO. + +ALLOW_UNICODE_NAMES = NO + +# The OUTPUT_LANGUAGE tag is used to specify the language in which all +# documentation generated by doxygen is written. Doxygen will use this +# information to generate all constant output in the proper language. +# Possible values are: Afrikaans, Arabic, Armenian, Brazilian, Catalan, Chinese, +# Chinese-Traditional, Croatian, Czech, Danish, Dutch, English (United States), +# Esperanto, Farsi (Persian), Finnish, French, German, Greek, Hungarian, +# Indonesian, Italian, Japanese, Japanese-en (Japanese with English messages), +# Korean, Korean-en (Korean with English messages), Latvian, Lithuanian, +# Macedonian, Norwegian, Persian (Farsi), Polish, Portuguese, Romanian, Russian, +# Serbian, Serbian-Cyrillic, Slovak, Slovene, Spanish, Swedish, Turkish, +# Ukrainian and Vietnamese. +# The default value is: English. + +OUTPUT_LANGUAGE = Chinese + +# If the BRIEF_MEMBER_DESC tag is set to YES, doxygen will include brief member +# descriptions after the members that are listed in the file and class +# documentation (similar to Javadoc). Set to NO to disable this. +# The default value is: YES. + +BRIEF_MEMBER_DESC = YES + +# If the REPEAT_BRIEF tag is set to YES, doxygen will prepend the brief +# description of a member or function before the detailed description +# +# Note: If both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the +# brief descriptions will be completely suppressed. +# The default value is: YES. + +REPEAT_BRIEF = YES + +# This tag implements a quasi-intelligent brief description abbreviator that is +# used to form the text in various listings. Each string in this list, if found +# as the leading text of the brief description, will be stripped from the text +# and the result, after processing the whole list, is used as the annotated +# text. Otherwise, the brief description is used as-is. If left blank, the +# following values are used ($name is automatically replaced with the name of +# the entity):The $name class, The $name widget, The $name file, is, provides, +# specifies, contains, represents, a, an and the. + +ABBREVIATE_BRIEF = "The $name class" \ + "The $name widget" \ + "The $name file" \ + is \ + provides \ + specifies \ + contains \ + represents \ + a \ + an \ + the + +# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then +# doxygen will generate a detailed section even if there is only a brief +# description. +# The default value is: NO. + +ALWAYS_DETAILED_SEC = NO + +# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all +# inherited members of a class in the documentation of that class as if those +# members were ordinary class members. Constructors, destructors and assignment +# operators of the base classes will not be shown. +# The default value is: NO. + +INLINE_INHERITED_MEMB = NO + +# If the FULL_PATH_NAMES tag is set to YES, doxygen will prepend the full path +# before files name in the file list and in the header files. If set to NO the +# shortest path that makes the file name unique will be used +# The default value is: YES. + +FULL_PATH_NAMES = YES + +# The STRIP_FROM_PATH tag can be used to strip a user-defined part of the path. +# Stripping is only done if one of the specified strings matches the left-hand +# part of the path. The tag can be used to show relative paths in the file list. +# If left blank the directory from which doxygen is run is used as the path to +# strip. +# +# Note that you can specify absolute paths here, but also relative paths, which +# will be relative from the directory where doxygen is started. +# This tag requires that the tag FULL_PATH_NAMES is set to YES. + +STRIP_FROM_PATH = + +# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of the +# path mentioned in the documentation of a class, which tells the reader which +# header file to include in order to use a class. If left blank only the name of +# the header file containing the class definition is used. Otherwise one should +# specify the list of include paths that are normally passed to the compiler +# using the -I flag. + +STRIP_FROM_INC_PATH = + +# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter (but +# less readable) file names. This can be useful is your file systems doesn't +# support long names like on DOS, Mac, or CD-ROM. +# The default value is: NO. + +SHORT_NAMES = NO + +# If the JAVADOC_AUTOBRIEF tag is set to YES then doxygen will interpret the +# first line (until the first dot) of a Javadoc-style comment as the brief +# description. If set to NO, the Javadoc-style will behave just like regular Qt- +# style comments (thus requiring an explicit @brief command for a brief +# description.) +# The default value is: NO. + +JAVADOC_AUTOBRIEF = NO + +# If the JAVADOC_BANNER tag is set to YES then doxygen will interpret a line +# such as +# /*************** +# as being the beginning of a Javadoc-style comment "banner". If set to NO, the +# Javadoc-style will behave just like regular comments and it will not be +# interpreted by doxygen. +# The default value is: NO. + +JAVADOC_BANNER = NO + +# If the QT_AUTOBRIEF tag is set to YES then doxygen will interpret the first +# line (until the first dot) of a Qt-style comment as the brief description. If +# set to NO, the Qt-style will behave just like regular Qt-style comments (thus +# requiring an explicit \brief command for a brief description.) +# The default value is: NO. + +QT_AUTOBRIEF = NO + +# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make doxygen treat a +# multi-line C++ special comment block (i.e. a block of //! or /// comments) as +# a brief description. This used to be the default behavior. The new default is +# to treat a multi-line C++ comment block as a detailed description. Set this +# tag to YES if you prefer the old behavior instead. +# +# Note that setting this tag to YES also means that rational rose comments are +# not recognized any more. +# The default value is: NO. + +MULTILINE_CPP_IS_BRIEF = NO + +# By default Python docstrings are displayed as preformatted text and doxygen's +# special commands cannot be used. By setting PYTHON_DOCSTRING to NO the +# doxygen's special commands can be used and the contents of the docstring +# documentation blocks is shown as doxygen documentation. +# The default value is: YES. + +PYTHON_DOCSTRING = YES + +# If the INHERIT_DOCS tag is set to YES then an undocumented member inherits the +# documentation from any documented member that it re-implements. +# The default value is: YES. + +INHERIT_DOCS = YES + +# If the SEPARATE_MEMBER_PAGES tag is set to YES then doxygen will produce a new +# page for each member. If set to NO, the documentation of a member will be part +# of the file/class/namespace that contains it. +# The default value is: NO. + +SEPARATE_MEMBER_PAGES = NO + +# The TAB_SIZE tag can be used to set the number of spaces in a tab. Doxygen +# uses this value to replace tabs by spaces in code fragments. +# Minimum value: 1, maximum value: 16, default value: 4. + +TAB_SIZE = 4 + +# This tag can be used to specify a number of aliases that act as commands in +# the documentation. An alias has the form: +# name=value +# For example adding +# "sideeffect=@par Side Effects:\n" +# will allow you to put the command \sideeffect (or @sideeffect) in the +# documentation, which will result in a user-defined paragraph with heading +# "Side Effects:". You can put \n's in the value part of an alias to insert +# newlines (in the resulting output). You can put ^^ in the value part of an +# alias to insert a newline as if a physical newline was in the original file. +# When you need a literal { or } or , in the value part of an alias you have to +# escape them by means of a backslash (\), this can lead to conflicts with the +# commands \{ and \} for these it is advised to use the version @{ and @} or use +# a double escape (\\{ and \\}) + +ALIASES = + +# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources +# only. Doxygen will then generate output that is more tailored for C. For +# instance, some of the names that are used will be different. The list of all +# members will be omitted, etc. +# The default value is: NO. + +OPTIMIZE_OUTPUT_FOR_C = NO + +# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java or +# Python sources only. Doxygen will then generate output that is more tailored +# for that language. For instance, namespaces will be presented as packages, +# qualified scopes will look different, etc. +# The default value is: NO. + +OPTIMIZE_OUTPUT_JAVA = NO + +# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran +# sources. Doxygen will then generate output that is tailored for Fortran. +# The default value is: NO. + +OPTIMIZE_FOR_FORTRAN = NO + +# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL +# sources. Doxygen will then generate output that is tailored for VHDL. +# The default value is: NO. + +OPTIMIZE_OUTPUT_VHDL = NO + +# Set the OPTIMIZE_OUTPUT_SLICE tag to YES if your project consists of Slice +# sources only. Doxygen will then generate output that is more tailored for that +# language. For instance, namespaces will be presented as modules, types will be +# separated into more groups, etc. +# The default value is: NO. + +OPTIMIZE_OUTPUT_SLICE = NO + +# Doxygen selects the parser to use depending on the extension of the files it +# parses. With this tag you can assign which parser to use for a given +# extension. Doxygen has a built-in mapping, but you can override or extend it +# using this tag. The format is ext=language, where ext is a file extension, and +# language is one of the parsers supported by doxygen: IDL, Java, JavaScript, +# Csharp (C#), C, C++, D, PHP, md (Markdown), Objective-C, Python, Slice, VHDL, +# Fortran (fixed format Fortran: FortranFixed, free formatted Fortran: +# FortranFree, unknown formatted Fortran: Fortran. In the later case the parser +# tries to guess whether the code is fixed or free formatted code, this is the +# default for Fortran type files). For instance to make doxygen treat .inc files +# as Fortran files (default is PHP), and .f files as C (default is Fortran), +# use: inc=Fortran f=C. +# +# Note: For files without extension you can use no_extension as a placeholder. +# +# Note that for custom extensions you also need to set FILE_PATTERNS otherwise +# the files are not read by doxygen. When specifying no_extension you should add +# * to the FILE_PATTERNS. +# +# Note see also the list of default file extension mappings. + +EXTENSION_MAPPING = + +# If the MARKDOWN_SUPPORT tag is enabled then doxygen pre-processes all comments +# according to the Markdown format, which allows for more readable +# documentation. See https://daringfireball.net/projects/markdown/ for details. +# The output of markdown processing is further processed by doxygen, so you can +# mix doxygen, HTML, and XML commands with Markdown formatting. Disable only in +# case of backward compatibilities issues. +# The default value is: YES. + +MARKDOWN_SUPPORT = YES + +# When the TOC_INCLUDE_HEADINGS tag is set to a non-zero value, all headings up +# to that level are automatically included in the table of contents, even if +# they do not have an id attribute. +# Note: This feature currently applies only to Markdown headings. +# Minimum value: 0, maximum value: 99, default value: 5. +# This tag requires that the tag MARKDOWN_SUPPORT is set to YES. + +TOC_INCLUDE_HEADINGS = 5 + +# When enabled doxygen tries to link words that correspond to documented +# classes, or namespaces to their corresponding documentation. Such a link can +# be prevented in individual cases by putting a % sign in front of the word or +# globally by setting AUTOLINK_SUPPORT to NO. +# The default value is: YES. + +AUTOLINK_SUPPORT = YES + +# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want +# to include (a tag file for) the STL sources as input, then you should set this +# tag to YES in order to let doxygen match functions declarations and +# definitions whose arguments contain STL classes (e.g. func(std::string); +# versus func(std::string) {}). This also make the inheritance and collaboration +# diagrams that involve STL classes more complete and accurate. +# The default value is: NO. + +BUILTIN_STL_SUPPORT = NO + +# If you use Microsoft's C++/CLI language, you should set this option to YES to +# enable parsing support. +# The default value is: NO. + +CPP_CLI_SUPPORT = NO + +# Set the SIP_SUPPORT tag to YES if your project consists of sip (see: +# https://www.riverbankcomputing.com/software/sip/intro) sources only. Doxygen +# will parse them like normal C++ but will assume all classes use public instead +# of private inheritance when no explicit protection keyword is present. +# The default value is: NO. + +SIP_SUPPORT = NO + +# For Microsoft's IDL there are propget and propput attributes to indicate +# getter and setter methods for a property. Setting this option to YES will make +# doxygen to replace the get and set methods by a property in the documentation. +# This will only work if the methods are indeed getting or setting a simple +# type. If this is not the case, or you want to show the methods anyway, you +# should set this option to NO. +# The default value is: YES. + +IDL_PROPERTY_SUPPORT = YES + +# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC +# tag is set to YES then doxygen will reuse the documentation of the first +# member in the group (if any) for the other members of the group. By default +# all members of a group must be documented explicitly. +# The default value is: NO. + +DISTRIBUTE_GROUP_DOC = NO + +# If one adds a struct or class to a group and this option is enabled, then also +# any nested class or struct is added to the same group. By default this option +# is disabled and one has to add nested compounds explicitly via \ingroup. +# The default value is: NO. + +GROUP_NESTED_COMPOUNDS = NO + +# Set the SUBGROUPING tag to YES to allow class member groups of the same type +# (for instance a group of public functions) to be put as a subgroup of that +# type (e.g. under the Public Functions section). Set it to NO to prevent +# subgrouping. Alternatively, this can be done per class using the +# \nosubgrouping command. +# The default value is: YES. + +SUBGROUPING = YES + +# When the INLINE_GROUPED_CLASSES tag is set to YES, classes, structs and unions +# are shown inside the group in which they are included (e.g. using \ingroup) +# instead of on a separate page (for HTML and Man pages) or section (for LaTeX +# and RTF). +# +# Note that this feature does not work in combination with +# SEPARATE_MEMBER_PAGES. +# The default value is: NO. + +INLINE_GROUPED_CLASSES = NO + +# When the INLINE_SIMPLE_STRUCTS tag is set to YES, structs, classes, and unions +# with only public data fields or simple typedef fields will be shown inline in +# the documentation of the scope in which they are defined (i.e. file, +# namespace, or group documentation), provided this scope is documented. If set +# to NO, structs, classes, and unions are shown on a separate page (for HTML and +# Man pages) or section (for LaTeX and RTF). +# The default value is: NO. + +INLINE_SIMPLE_STRUCTS = NO + +# When TYPEDEF_HIDES_STRUCT tag is enabled, a typedef of a struct, union, or +# enum is documented as struct, union, or enum with the name of the typedef. So +# typedef struct TypeS {} TypeT, will appear in the documentation as a struct +# with name TypeT. When disabled the typedef will appear as a member of a file, +# namespace, or class. And the struct will be named TypeS. This can typically be +# useful for C code in case the coding convention dictates that all compound +# types are typedef'ed and only the typedef is referenced, never the tag name. +# The default value is: NO. + +TYPEDEF_HIDES_STRUCT = NO + +# The size of the symbol lookup cache can be set using LOOKUP_CACHE_SIZE. This +# cache is used to resolve symbols given their name and scope. Since this can be +# an expensive process and often the same symbol appears multiple times in the +# code, doxygen keeps a cache of pre-resolved symbols. If the cache is too small +# doxygen will become slower. If the cache is too large, memory is wasted. The +# cache size is given by this formula: 2^(16+LOOKUP_CACHE_SIZE). The valid range +# is 0..9, the default is 0, corresponding to a cache size of 2^16=65536 +# symbols. At the end of a run doxygen will report the cache usage and suggest +# the optimal cache size from a speed point of view. +# Minimum value: 0, maximum value: 9, default value: 0. + +LOOKUP_CACHE_SIZE = 0 + +# The NUM_PROC_THREADS specifies the number threads doxygen is allowed to use +# during processing. When set to 0 doxygen will based this on the number of +# cores available in the system. You can set it explicitly to a value larger +# than 0 to get more control over the balance between CPU load and processing +# speed. At this moment only the input processing can be done using multiple +# threads. Since this is still an experimental feature the default is set to 1, +# which efficively disables parallel processing. Please report any issues you +# encounter. Generating dot graphs in parallel is controlled by the +# DOT_NUM_THREADS setting. +# Minimum value: 0, maximum value: 32, default value: 1. + +NUM_PROC_THREADS = 1 + +#--------------------------------------------------------------------------- +# Build related configuration options +#--------------------------------------------------------------------------- + +# If the EXTRACT_ALL tag is set to YES, doxygen will assume all entities in +# documentation are documented, even if no documentation was available. Private +# class members and static file members will be hidden unless the +# EXTRACT_PRIVATE respectively EXTRACT_STATIC tags are set to YES. +# Note: This will also disable the warnings about undocumented members that are +# normally produced when WARNINGS is set to YES. +# The default value is: NO. + +EXTRACT_ALL = YES + +# If the EXTRACT_PRIVATE tag is set to YES, all private members of a class will +# be included in the documentation. +# The default value is: NO. + +EXTRACT_PRIVATE = YES + +# If the EXTRACT_PRIV_VIRTUAL tag is set to YES, documented private virtual +# methods of a class will be included in the documentation. +# The default value is: NO. + +EXTRACT_PRIV_VIRTUAL = YES + +# If the EXTRACT_PACKAGE tag is set to YES, all members with package or internal +# scope will be included in the documentation. +# The default value is: NO. + +EXTRACT_PACKAGE = YES + +# If the EXTRACT_STATIC tag is set to YES, all static members of a file will be +# included in the documentation. +# The default value is: NO. + +EXTRACT_STATIC = YES + +# If the EXTRACT_LOCAL_CLASSES tag is set to YES, classes (and structs) defined +# locally in source files will be included in the documentation. If set to NO, +# only classes defined in header files are included. Does not have any effect +# for Java sources. +# The default value is: YES. + +EXTRACT_LOCAL_CLASSES = YES + +# This flag is only useful for Objective-C code. If set to YES, local methods, +# which are defined in the implementation section but not in the interface are +# included in the documentation. If set to NO, only methods in the interface are +# included. +# The default value is: NO. + +EXTRACT_LOCAL_METHODS = YES + +# If this flag is set to YES, the members of anonymous namespaces will be +# extracted and appear in the documentation as a namespace called +# 'anonymous_namespace{file}', where file will be replaced with the base name of +# the file that contains the anonymous namespace. By default anonymous namespace +# are hidden. +# The default value is: NO. + +EXTRACT_ANON_NSPACES = YES + +# If this flag is set to YES, the name of an unnamed parameter in a declaration +# will be determined by the corresponding definition. By default unnamed +# parameters remain unnamed in the output. +# The default value is: YES. + +RESOLVE_UNNAMED_PARAMS = YES + +# If the HIDE_UNDOC_MEMBERS tag is set to YES, doxygen will hide all +# undocumented members inside documented classes or files. If set to NO these +# members will be included in the various overviews, but no documentation +# section is generated. This option has no effect if EXTRACT_ALL is enabled. +# The default value is: NO. + +HIDE_UNDOC_MEMBERS = NO + +# If the HIDE_UNDOC_CLASSES tag is set to YES, doxygen will hide all +# undocumented classes that are normally visible in the class hierarchy. If set +# to NO, these classes will be included in the various overviews. This option +# has no effect if EXTRACT_ALL is enabled. +# The default value is: NO. + +HIDE_UNDOC_CLASSES = NO + +# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, doxygen will hide all friend +# declarations. If set to NO, these declarations will be included in the +# documentation. +# The default value is: NO. + +HIDE_FRIEND_COMPOUNDS = NO + +# If the HIDE_IN_BODY_DOCS tag is set to YES, doxygen will hide any +# documentation blocks found inside the body of a function. If set to NO, these +# blocks will be appended to the function's detailed documentation block. +# The default value is: NO. + +HIDE_IN_BODY_DOCS = NO + +# The INTERNAL_DOCS tag determines if documentation that is typed after a +# \internal command is included. If the tag is set to NO then the documentation +# will be excluded. Set it to YES to include the internal documentation. +# The default value is: NO. + +INTERNAL_DOCS = NO + +# With the correct setting of option CASE_SENSE_NAMES doxygen will better be +# able to match the capabilities of the underlying filesystem. In case the +# filesystem is case sensitive (i.e. it supports files in the same directory +# whose names only differ in casing), the option must be set to YES to properly +# deal with such files in case they appear in the input. For filesystems that +# are not case sensitive the option should be be set to NO to properly deal with +# output files written for symbols that only differ in casing, such as for two +# classes, one named CLASS and the other named Class, and to also support +# references to files without having to specify the exact matching casing. On +# Windows (including Cygwin) and MacOS, users should typically set this option +# to NO, whereas on Linux or other Unix flavors it should typically be set to +# YES. +# The default value is: system dependent. + +CASE_SENSE_NAMES = YES + +# If the HIDE_SCOPE_NAMES tag is set to NO then doxygen will show members with +# their full class and namespace scopes in the documentation. If set to YES, the +# scope will be hidden. +# The default value is: NO. + +HIDE_SCOPE_NAMES = NO + +# If the HIDE_COMPOUND_REFERENCE tag is set to NO (default) then doxygen will +# append additional text to a page's title, such as Class Reference. If set to +# YES the compound reference will be hidden. +# The default value is: NO. + +HIDE_COMPOUND_REFERENCE= NO + +# If the SHOW_INCLUDE_FILES tag is set to YES then doxygen will put a list of +# the files that are included by a file in the documentation of that file. +# The default value is: YES. + +SHOW_INCLUDE_FILES = YES + +# If the SHOW_GROUPED_MEMB_INC tag is set to YES then Doxygen will add for each +# grouped member an include statement to the documentation, telling the reader +# which file to include in order to use the member. +# The default value is: NO. + +SHOW_GROUPED_MEMB_INC = NO + +# If the FORCE_LOCAL_INCLUDES tag is set to YES then doxygen will list include +# files with double quotes in the documentation rather than with sharp brackets. +# The default value is: NO. + +FORCE_LOCAL_INCLUDES = NO + +# If the INLINE_INFO tag is set to YES then a tag [inline] is inserted in the +# documentation for inline members. +# The default value is: YES. + +INLINE_INFO = YES + +# If the SORT_MEMBER_DOCS tag is set to YES then doxygen will sort the +# (detailed) documentation of file and class members alphabetically by member +# name. If set to NO, the members will appear in declaration order. +# The default value is: YES. + +SORT_MEMBER_DOCS = YES + +# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the brief +# descriptions of file, namespace and class members alphabetically by member +# name. If set to NO, the members will appear in declaration order. Note that +# this will also influence the order of the classes in the class list. +# The default value is: NO. + +SORT_BRIEF_DOCS = YES + +# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen will sort the +# (brief and detailed) documentation of class members so that constructors and +# destructors are listed first. If set to NO the constructors will appear in the +# respective orders defined by SORT_BRIEF_DOCS and SORT_MEMBER_DOCS. +# Note: If SORT_BRIEF_DOCS is set to NO this option is ignored for sorting brief +# member documentation. +# Note: If SORT_MEMBER_DOCS is set to NO this option is ignored for sorting +# detailed member documentation. +# The default value is: NO. + +SORT_MEMBERS_CTORS_1ST = YES + +# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the hierarchy +# of group names into alphabetical order. If set to NO the group names will +# appear in their defined order. +# The default value is: NO. + +SORT_GROUP_NAMES = YES + +# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be sorted by +# fully-qualified names, including namespaces. If set to NO, the class list will +# be sorted only by class name, not including the namespace part. +# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES. +# Note: This option applies only to the class list, not to the alphabetical +# list. +# The default value is: NO. + +SORT_BY_SCOPE_NAME = YES + +# If the STRICT_PROTO_MATCHING option is enabled and doxygen fails to do proper +# type resolution of all parameters of a function it will reject a match between +# the prototype and the implementation of a member function even if there is +# only one candidate or it is obvious which candidate to choose by doing a +# simple string match. By disabling STRICT_PROTO_MATCHING doxygen will still +# accept a match between prototype and implementation in such cases. +# The default value is: NO. + +STRICT_PROTO_MATCHING = NO + +# The GENERATE_TODOLIST tag can be used to enable (YES) or disable (NO) the todo +# list. This list is created by putting \todo commands in the documentation. +# The default value is: YES. + +GENERATE_TODOLIST = YES + +# The GENERATE_TESTLIST tag can be used to enable (YES) or disable (NO) the test +# list. This list is created by putting \test commands in the documentation. +# The default value is: YES. + +GENERATE_TESTLIST = YES + +# The GENERATE_BUGLIST tag can be used to enable (YES) or disable (NO) the bug +# list. This list is created by putting \bug commands in the documentation. +# The default value is: YES. + +GENERATE_BUGLIST = YES + +# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or disable (NO) +# the deprecated list. This list is created by putting \deprecated commands in +# the documentation. +# The default value is: YES. + +GENERATE_DEPRECATEDLIST= YES + +# The ENABLED_SECTIONS tag can be used to enable conditional documentation +# sections, marked by \if ... \endif and \cond +# ... \endcond blocks. + +ENABLED_SECTIONS = + +# The MAX_INITIALIZER_LINES tag determines the maximum number of lines that the +# initial value of a variable or macro / define can have for it to appear in the +# documentation. If the initializer consists of more lines than specified here +# it will be hidden. Use a value of 0 to hide initializers completely. The +# appearance of the value of individual variables and macros / defines can be +# controlled using \showinitializer or \hideinitializer command in the +# documentation regardless of this setting. +# Minimum value: 0, maximum value: 10000, default value: 30. + +MAX_INITIALIZER_LINES = 30 + +# Set the SHOW_USED_FILES tag to NO to disable the list of files generated at +# the bottom of the documentation of classes and structs. If set to YES, the +# list will mention the files that were used to generate the documentation. +# The default value is: YES. + +SHOW_USED_FILES = YES + +# Set the SHOW_FILES tag to NO to disable the generation of the Files page. This +# will remove the Files entry from the Quick Index and from the Folder Tree View +# (if specified). +# The default value is: YES. + +SHOW_FILES = YES + +# Set the SHOW_NAMESPACES tag to NO to disable the generation of the Namespaces +# page. This will remove the Namespaces entry from the Quick Index and from the +# Folder Tree View (if specified). +# The default value is: YES. + +SHOW_NAMESPACES = YES + +# The FILE_VERSION_FILTER tag can be used to specify a program or script that +# doxygen should invoke to get the current version for each file (typically from +# the version control system). Doxygen will invoke the program by executing (via +# popen()) the command command input-file, where command is the value of the +# FILE_VERSION_FILTER tag, and input-file is the name of an input file provided +# by doxygen. Whatever the program writes to standard output is used as the file +# version. For an example see the documentation. + +FILE_VERSION_FILTER = + +# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed +# by doxygen. The layout file controls the global structure of the generated +# output files in an output format independent way. To create the layout file +# that represents doxygen's defaults, run doxygen with the -l option. You can +# optionally specify a file name after the option, if omitted DoxygenLayout.xml +# will be used as the name of the layout file. +# +# Note that if you run doxygen from a directory containing a file called +# DoxygenLayout.xml, doxygen will parse it automatically even if the LAYOUT_FILE +# tag is left empty. + +LAYOUT_FILE = + +# The CITE_BIB_FILES tag can be used to specify one or more bib files containing +# the reference definitions. This must be a list of .bib files. The .bib +# extension is automatically appended if omitted. This requires the bibtex tool +# to be installed. See also https://en.wikipedia.org/wiki/BibTeX for more info. +# For LaTeX the style of the bibliography can be controlled using +# LATEX_BIB_STYLE. To use this feature you need bibtex and perl available in the +# search path. See also \cite for info how to create references. + +CITE_BIB_FILES = + +#--------------------------------------------------------------------------- +# Configuration options related to warning and progress messages +#--------------------------------------------------------------------------- + +# The QUIET tag can be used to turn on/off the messages that are generated to +# standard output by doxygen. If QUIET is set to YES this implies that the +# messages are off. +# The default value is: NO. + +QUIET = NO + +# The WARNINGS tag can be used to turn on/off the warning messages that are +# generated to standard error (stderr) by doxygen. If WARNINGS is set to YES +# this implies that the warnings are on. +# +# Tip: Turn warnings on while writing the documentation. +# The default value is: YES. + +WARNINGS = YES + +# If the WARN_IF_UNDOCUMENTED tag is set to YES then doxygen will generate +# warnings for undocumented members. If EXTRACT_ALL is set to YES then this flag +# will automatically be disabled. +# The default value is: YES. + +WARN_IF_UNDOCUMENTED = YES + +# If the WARN_IF_DOC_ERROR tag is set to YES, doxygen will generate warnings for +# potential errors in the documentation, such as not documenting some parameters +# in a documented function, or documenting parameters that don't exist or using +# markup commands wrongly. +# The default value is: YES. + +WARN_IF_DOC_ERROR = YES + +# This WARN_NO_PARAMDOC option can be enabled to get warnings for functions that +# are documented, but have no documentation for their parameters or return +# value. If set to NO, doxygen will only warn about wrong or incomplete +# parameter documentation, but not about the absence of documentation. If +# EXTRACT_ALL is set to YES then this flag will automatically be disabled. +# The default value is: NO. + +WARN_NO_PARAMDOC = NO + +# If the WARN_AS_ERROR tag is set to YES then doxygen will immediately stop when +# a warning is encountered. If the WARN_AS_ERROR tag is set to FAIL_ON_WARNINGS +# then doxygen will continue running as if WARN_AS_ERROR tag is set to NO, but +# at the end of the doxygen process doxygen will return with a non-zero status. +# Possible values are: NO, YES and FAIL_ON_WARNINGS. +# The default value is: NO. + +WARN_AS_ERROR = NO + +# The WARN_FORMAT tag determines the format of the warning messages that doxygen +# can produce. The string should contain the $file, $line, and $text tags, which +# will be replaced by the file and line number from which the warning originated +# and the warning text. Optionally the format may contain $version, which will +# be replaced by the version of the file (if it could be obtained via +# FILE_VERSION_FILTER) +# The default value is: $file:$line: $text. + +WARN_FORMAT = "$file:$line: $text" + +# The WARN_LOGFILE tag can be used to specify a file to which warning and error +# messages should be written. If left blank the output is written to standard +# error (stderr). + +WARN_LOGFILE = + +#--------------------------------------------------------------------------- +# Configuration options related to the input files +#--------------------------------------------------------------------------- + +# The INPUT tag is used to specify the files and/or directories that contain +# documented source files. You may enter file names like myfile.cpp or +# directories like /usr/src/myproject. Separate the files or directories with +# spaces. See also FILE_PATTERNS and EXTENSION_MAPPING +# Note: If this tag is empty the current directory is searched. + +INPUT = D:/WBFZCPP/source/FastCAE/src + +# This tag can be used to specify the character encoding of the source files +# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses +# libiconv (or the iconv built into libc) for the transcoding. See the libiconv +# documentation (see: +# https://www.gnu.org/software/libiconv/) for the list of possible encodings. +# The default value is: UTF-8. + +INPUT_ENCODING = UTF-8 + +# If the value of the INPUT tag contains directories, you can use the +# FILE_PATTERNS tag to specify one or more wildcard patterns (like *.cpp and +# *.h) to filter out the source-files in the directories. +# +# Note that for custom extensions or not directly supported extensions you also +# need to set EXTENSION_MAPPING for the extension otherwise the files are not +# read by doxygen. +# +# Note the list of default checked file patterns might differ from the list of +# default file extension mappings. +# +# If left blank the following patterns are tested:*.c, *.cc, *.cxx, *.cpp, +# *.c++, *.java, *.ii, *.ixx, *.ipp, *.i++, *.inl, *.idl, *.ddl, *.odl, *.h, +# *.hh, *.hxx, *.hpp, *.h++, *.cs, *.d, *.php, *.php4, *.php5, *.phtml, *.inc, +# *.m, *.markdown, *.md, *.mm, *.dox (to be provided as doxygen C comment), +# *.py, *.pyw, *.f90, *.f95, *.f03, *.f08, *.f18, *.f, *.for, *.vhd, *.vhdl, +# *.ucf, *.qsf and *.ice. + +FILE_PATTERNS = *.cpp \ + *.h \ + *.hxx \ + *.hpp + +# The RECURSIVE tag can be used to specify whether or not subdirectories should +# be searched for input files as well. +# The default value is: NO. + +RECURSIVE = YES + +# The EXCLUDE tag can be used to specify files and/or directories that should be +# excluded from the INPUT source files. This way you can easily exclude a +# subdirectory from a directory tree whose root is specified with the INPUT tag. +# +# Note that relative paths are relative to the directory from which doxygen is +# run. + +EXCLUDE = + +# The EXCLUDE_SYMLINKS tag can be used to select whether or not files or +# directories that are symbolic links (a Unix file system feature) are excluded +# from the input. +# The default value is: NO. + +EXCLUDE_SYMLINKS = NO + +# If the value of the INPUT tag contains directories, you can use the +# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude +# certain files from those directories. +# +# Note that the wildcards are matched against the file with absolute path, so to +# exclude all test directories for example use the pattern */test/* + +EXCLUDE_PATTERNS = */IO/rapidjson/* \ + */IO/rapidxml/* + +# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names +# (namespaces, classes, functions, etc.) that should be excluded from the +# output. The symbol name can be a fully qualified name, a word, or if the +# wildcard * is used, a substring. Examples: ANamespace, AClass, +# AClass::ANamespace, ANamespace::*Test +# +# Note that the wildcards are matched against the file with absolute path, so to +# exclude all test directories use the pattern */test/* + +EXCLUDE_SYMBOLS = + +# The EXAMPLE_PATH tag can be used to specify one or more files or directories +# that contain example code fragments that are included (see the \include +# command). + +EXAMPLE_PATH = + +# If the value of the EXAMPLE_PATH tag contains directories, you can use the +# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp and +# *.h) to filter out the source-files in the directories. If left blank all +# files are included. + +EXAMPLE_PATTERNS = * + +# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be +# searched for input files to be used with the \include or \dontinclude commands +# irrespective of the value of the RECURSIVE tag. +# The default value is: NO. + +EXAMPLE_RECURSIVE = NO + +# The IMAGE_PATH tag can be used to specify one or more files or directories +# that contain images that are to be included in the documentation (see the +# \image command). + +IMAGE_PATH = + +# The INPUT_FILTER tag can be used to specify a program that doxygen should +# invoke to filter for each input file. Doxygen will invoke the filter program +# by executing (via popen()) the command: +# +# +# +# where is the value of the INPUT_FILTER tag, and is the +# name of an input file. Doxygen will then use the output that the filter +# program writes to standard output. If FILTER_PATTERNS is specified, this tag +# will be ignored. +# +# Note that the filter must not add or remove lines; it is applied before the +# code is scanned, but not when the output code is generated. If lines are added +# or removed, the anchors will not be placed correctly. +# +# Note that for custom extensions or not directly supported extensions you also +# need to set EXTENSION_MAPPING for the extension otherwise the files are not +# properly processed by doxygen. + +INPUT_FILTER = + +# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern +# basis. Doxygen will compare the file name with each pattern and apply the +# filter if there is a match. The filters are a list of the form: pattern=filter +# (like *.cpp=my_cpp_filter). See INPUT_FILTER for further information on how +# filters are used. If the FILTER_PATTERNS tag is empty or if none of the +# patterns match the file name, INPUT_FILTER is applied. +# +# Note that for custom extensions or not directly supported extensions you also +# need to set EXTENSION_MAPPING for the extension otherwise the files are not +# properly processed by doxygen. + +FILTER_PATTERNS = + +# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using +# INPUT_FILTER) will also be used to filter the input files that are used for +# producing the source files to browse (i.e. when SOURCE_BROWSER is set to YES). +# The default value is: NO. + +FILTER_SOURCE_FILES = NO + +# The FILTER_SOURCE_PATTERNS tag can be used to specify source filters per file +# pattern. A pattern will override the setting for FILTER_PATTERN (if any) and +# it is also possible to disable source filtering for a specific pattern using +# *.ext= (so without naming a filter). +# This tag requires that the tag FILTER_SOURCE_FILES is set to YES. + +FILTER_SOURCE_PATTERNS = + +# If the USE_MDFILE_AS_MAINPAGE tag refers to the name of a markdown file that +# is part of the input, its contents will be placed on the main page +# (index.html). This can be useful if you have a project on for instance GitHub +# and want to reuse the introduction page also for the doxygen output. + +USE_MDFILE_AS_MAINPAGE = + +#--------------------------------------------------------------------------- +# Configuration options related to source browsing +#--------------------------------------------------------------------------- + +# If the SOURCE_BROWSER tag is set to YES then a list of source files will be +# generated. Documented entities will be cross-referenced with these sources. +# +# Note: To get rid of all source code in the generated output, make sure that +# also VERBATIM_HEADERS is set to NO. +# The default value is: NO. + +SOURCE_BROWSER = NO + +# Setting the INLINE_SOURCES tag to YES will include the body of functions, +# classes and enums directly into the documentation. +# The default value is: NO. + +INLINE_SOURCES = NO + +# Setting the STRIP_CODE_COMMENTS tag to YES will instruct doxygen to hide any +# special comment blocks from generated source code fragments. Normal C, C++ and +# Fortran comments will always remain visible. +# The default value is: YES. + +STRIP_CODE_COMMENTS = YES + +# If the REFERENCED_BY_RELATION tag is set to YES then for each documented +# entity all documented functions referencing it will be listed. +# The default value is: NO. + +REFERENCED_BY_RELATION = NO + +# If the REFERENCES_RELATION tag is set to YES then for each documented function +# all documented entities called/used by that function will be listed. +# The default value is: NO. + +REFERENCES_RELATION = NO + +# If the REFERENCES_LINK_SOURCE tag is set to YES and SOURCE_BROWSER tag is set +# to YES then the hyperlinks from functions in REFERENCES_RELATION and +# REFERENCED_BY_RELATION lists will link to the source code. Otherwise they will +# link to the documentation. +# The default value is: YES. + +REFERENCES_LINK_SOURCE = YES + +# If SOURCE_TOOLTIPS is enabled (the default) then hovering a hyperlink in the +# source code will show a tooltip with additional information such as prototype, +# brief description and links to the definition and documentation. Since this +# will make the HTML file larger and loading of large files a bit slower, you +# can opt to disable this feature. +# The default value is: YES. +# This tag requires that the tag SOURCE_BROWSER is set to YES. + +SOURCE_TOOLTIPS = YES + +# If the USE_HTAGS tag is set to YES then the references to source code will +# point to the HTML generated by the htags(1) tool instead of doxygen built-in +# source browser. The htags tool is part of GNU's global source tagging system +# (see https://www.gnu.org/software/global/global.html). You will need version +# 4.8.6 or higher. +# +# To use it do the following: +# - Install the latest version of global +# - Enable SOURCE_BROWSER and USE_HTAGS in the configuration file +# - Make sure the INPUT points to the root of the source tree +# - Run doxygen as normal +# +# Doxygen will invoke htags (and that will in turn invoke gtags), so these +# tools must be available from the command line (i.e. in the search path). +# +# The result: instead of the source browser generated by doxygen, the links to +# source code will now point to the output of htags. +# The default value is: NO. +# This tag requires that the tag SOURCE_BROWSER is set to YES. + +USE_HTAGS = NO + +# If the VERBATIM_HEADERS tag is set the YES then doxygen will generate a +# verbatim copy of the header file for each class for which an include is +# specified. Set to NO to disable this. +# See also: Section \class. +# The default value is: YES. + +VERBATIM_HEADERS = YES + +# If the CLANG_ASSISTED_PARSING tag is set to YES then doxygen will use the +# clang parser (see: +# http://clang.llvm.org/) for more accurate parsing at the cost of reduced +# performance. This can be particularly helpful with template rich C++ code for +# which doxygen's built-in parser lacks the necessary type information. +# Note: The availability of this option depends on whether or not doxygen was +# generated with the -Duse_libclang=ON option for CMake. +# The default value is: NO. + +CLANG_ASSISTED_PARSING = NO + +# If clang assisted parsing is enabled and the CLANG_ADD_INC_PATHS tag is set to +# YES then doxygen will add the directory of each input to the include path. +# The default value is: YES. + +CLANG_ADD_INC_PATHS = YES + +# If clang assisted parsing is enabled you can provide the compiler with command +# line options that you would normally use when invoking the compiler. Note that +# the include paths will already be set by doxygen for the files and directories +# specified with INPUT and INCLUDE_PATH. +# This tag requires that the tag CLANG_ASSISTED_PARSING is set to YES. + +CLANG_OPTIONS = + +# If clang assisted parsing is enabled you can provide the clang parser with the +# path to the directory containing a file called compile_commands.json. This +# file is the compilation database (see: +# http://clang.llvm.org/docs/HowToSetupToolingForLLVM.html) containing the +# options used when the source files were built. This is equivalent to +# specifying the -p option to a clang tool, such as clang-check. These options +# will then be passed to the parser. Any options specified with CLANG_OPTIONS +# will be added as well. +# Note: The availability of this option depends on whether or not doxygen was +# generated with the -Duse_libclang=ON option for CMake. + +CLANG_DATABASE_PATH = + +#--------------------------------------------------------------------------- +# Configuration options related to the alphabetical class index +#--------------------------------------------------------------------------- + +# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index of all +# compounds will be generated. Enable this if the project contains a lot of +# classes, structs, unions or interfaces. +# The default value is: YES. + +ALPHABETICAL_INDEX = YES + +# In case all classes in a project start with a common prefix, all classes will +# be put under the same header in the alphabetical index. The IGNORE_PREFIX tag +# can be used to specify a prefix (or a list of prefixes) that should be ignored +# while generating the index headers. +# This tag requires that the tag ALPHABETICAL_INDEX is set to YES. + +IGNORE_PREFIX = + +#--------------------------------------------------------------------------- +# Configuration options related to the HTML output +#--------------------------------------------------------------------------- + +# If the GENERATE_HTML tag is set to YES, doxygen will generate HTML output +# The default value is: YES. + +GENERATE_HTML = YES + +# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. If a +# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of +# it. +# The default directory is: html. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_OUTPUT = html + +# The HTML_FILE_EXTENSION tag can be used to specify the file extension for each +# generated HTML page (for example: .htm, .php, .asp). +# The default value is: .html. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_FILE_EXTENSION = .html + +# The HTML_HEADER tag can be used to specify a user-defined HTML header file for +# each generated HTML page. If the tag is left blank doxygen will generate a +# standard header. +# +# To get valid HTML the header file that includes any scripts and style sheets +# that doxygen needs, which is dependent on the configuration options used (e.g. +# the setting GENERATE_TREEVIEW). It is highly recommended to start with a +# default header using +# doxygen -w html new_header.html new_footer.html new_stylesheet.css +# YourConfigFile +# and then modify the file new_header.html. See also section "Doxygen usage" +# for information on how to generate the default header that doxygen normally +# uses. +# Note: The header is subject to change so you typically have to regenerate the +# default header when upgrading to a newer version of doxygen. For a description +# of the possible markers and block names see the documentation. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_HEADER = + +# The HTML_FOOTER tag can be used to specify a user-defined HTML footer for each +# generated HTML page. If the tag is left blank doxygen will generate a standard +# footer. See HTML_HEADER for more information on how to generate a default +# footer and what special commands can be used inside the footer. See also +# section "Doxygen usage" for information on how to generate the default footer +# that doxygen normally uses. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_FOOTER = + +# The HTML_STYLESHEET tag can be used to specify a user-defined cascading style +# sheet that is used by each HTML page. It can be used to fine-tune the look of +# the HTML output. If left blank doxygen will generate a default style sheet. +# See also section "Doxygen usage" for information on how to generate the style +# sheet that doxygen normally uses. +# Note: It is recommended to use HTML_EXTRA_STYLESHEET instead of this tag, as +# it is more robust and this tag (HTML_STYLESHEET) will in the future become +# obsolete. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_STYLESHEET = + +# The HTML_EXTRA_STYLESHEET tag can be used to specify additional user-defined +# cascading style sheets that are included after the standard style sheets +# created by doxygen. Using this option one can overrule certain style aspects. +# This is preferred over using HTML_STYLESHEET since it does not replace the +# standard style sheet and is therefore more robust against future updates. +# Doxygen will copy the style sheet files to the output directory. +# Note: The order of the extra style sheet files is of importance (e.g. the last +# style sheet in the list overrules the setting of the previous ones in the +# list). For an example see the documentation. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_EXTRA_STYLESHEET = + +# The HTML_EXTRA_FILES tag can be used to specify one or more extra images or +# other source files which should be copied to the HTML output directory. Note +# that these files will be copied to the base HTML output directory. Use the +# $relpath^ marker in the HTML_HEADER and/or HTML_FOOTER files to load these +# files. In the HTML_STYLESHEET file, use the file name only. Also note that the +# files will be copied as-is; there are no commands or markers available. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_EXTRA_FILES = + +# The HTML_COLORSTYLE_HUE tag controls the color of the HTML output. Doxygen +# will adjust the colors in the style sheet and background images according to +# this color. Hue is specified as an angle on a colorwheel, see +# https://en.wikipedia.org/wiki/Hue for more information. For instance the value +# 0 represents red, 60 is yellow, 120 is green, 180 is cyan, 240 is blue, 300 +# purple, and 360 is red again. +# Minimum value: 0, maximum value: 359, default value: 220. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_COLORSTYLE_HUE = 220 + +# The HTML_COLORSTYLE_SAT tag controls the purity (or saturation) of the colors +# in the HTML output. For a value of 0 the output will use grayscales only. A +# value of 255 will produce the most vivid colors. +# Minimum value: 0, maximum value: 255, default value: 100. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_COLORSTYLE_SAT = 100 + +# The HTML_COLORSTYLE_GAMMA tag controls the gamma correction applied to the +# luminance component of the colors in the HTML output. Values below 100 +# gradually make the output lighter, whereas values above 100 make the output +# darker. The value divided by 100 is the actual gamma applied, so 80 represents +# a gamma of 0.8, The value 220 represents a gamma of 2.2, and 100 does not +# change the gamma. +# Minimum value: 40, maximum value: 240, default value: 80. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_COLORSTYLE_GAMMA = 80 + +# If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML +# page will contain the date and time when the page was generated. Setting this +# to YES can help to show when doxygen was last run and thus if the +# documentation is up to date. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_TIMESTAMP = NO + +# If the HTML_DYNAMIC_MENUS tag is set to YES then the generated HTML +# documentation will contain a main index with vertical navigation menus that +# are dynamically created via JavaScript. If disabled, the navigation index will +# consists of multiple levels of tabs that are statically embedded in every HTML +# page. Disable this option to support browsers that do not have JavaScript, +# like the Qt help browser. +# The default value is: YES. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_DYNAMIC_MENUS = YES + +# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML +# documentation will contain sections that can be hidden and shown after the +# page has loaded. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_DYNAMIC_SECTIONS = NO + +# With HTML_INDEX_NUM_ENTRIES one can control the preferred number of entries +# shown in the various tree structured indices initially; the user can expand +# and collapse entries dynamically later on. Doxygen will expand the tree to +# such a level that at most the specified number of entries are visible (unless +# a fully collapsed tree already exceeds this amount). So setting the number of +# entries 1 will produce a full collapsed tree by default. 0 is a special value +# representing an infinite number of entries and will result in a full expanded +# tree by default. +# Minimum value: 0, maximum value: 9999, default value: 100. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_INDEX_NUM_ENTRIES = 100 + +# If the GENERATE_DOCSET tag is set to YES, additional index files will be +# generated that can be used as input for Apple's Xcode 3 integrated development +# environment (see: +# https://developer.apple.com/xcode/), introduced with OSX 10.5 (Leopard). To +# create a documentation set, doxygen will generate a Makefile in the HTML +# output directory. Running make will produce the docset in that directory and +# running make install will install the docset in +# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find it at +# startup. See https://developer.apple.com/library/archive/featuredarticles/Doxy +# genXcode/_index.html for more information. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +GENERATE_DOCSET = NO + +# This tag determines the name of the docset feed. A documentation feed provides +# an umbrella under which multiple documentation sets from a single provider +# (such as a company or product suite) can be grouped. +# The default value is: Doxygen generated docs. +# This tag requires that the tag GENERATE_DOCSET is set to YES. + +DOCSET_FEEDNAME = "Doxygen generated docs" + +# This tag specifies a string that should uniquely identify the documentation +# set bundle. This should be a reverse domain-name style string, e.g. +# com.mycompany.MyDocSet. Doxygen will append .docset to the name. +# The default value is: org.doxygen.Project. +# This tag requires that the tag GENERATE_DOCSET is set to YES. + +DOCSET_BUNDLE_ID = org.doxygen.Project + +# The DOCSET_PUBLISHER_ID tag specifies a string that should uniquely identify +# the documentation publisher. This should be a reverse domain-name style +# string, e.g. com.mycompany.MyDocSet.documentation. +# The default value is: org.doxygen.Publisher. +# This tag requires that the tag GENERATE_DOCSET is set to YES. + +DOCSET_PUBLISHER_ID = org.doxygen.Publisher + +# The DOCSET_PUBLISHER_NAME tag identifies the documentation publisher. +# The default value is: Publisher. +# This tag requires that the tag GENERATE_DOCSET is set to YES. + +DOCSET_PUBLISHER_NAME = Publisher + +# If the GENERATE_HTMLHELP tag is set to YES then doxygen generates three +# additional HTML index files: index.hhp, index.hhc, and index.hhk. The +# index.hhp is a project file that can be read by Microsoft's HTML Help Workshop +# (see: +# https://www.microsoft.com/en-us/download/details.aspx?id=21138) on Windows. +# +# The HTML Help Workshop contains a compiler that can convert all HTML output +# generated by doxygen into a single compiled HTML file (.chm). Compiled HTML +# files are now used as the Windows 98 help format, and will replace the old +# Windows help format (.hlp) on all Windows platforms in the future. Compressed +# HTML files also contain an index, a table of contents, and you can search for +# words in the documentation. The HTML workshop also contains a viewer for +# compressed HTML files. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +GENERATE_HTMLHELP = NO + +# The CHM_FILE tag can be used to specify the file name of the resulting .chm +# file. You can add a path in front of the file if the result should not be +# written to the html output directory. +# This tag requires that the tag GENERATE_HTMLHELP is set to YES. + +CHM_FILE = + +# The HHC_LOCATION tag can be used to specify the location (absolute path +# including file name) of the HTML help compiler (hhc.exe). If non-empty, +# doxygen will try to run the HTML help compiler on the generated index.hhp. +# The file has to be specified with full path. +# This tag requires that the tag GENERATE_HTMLHELP is set to YES. + +HHC_LOCATION = + +# The GENERATE_CHI flag controls if a separate .chi index file is generated +# (YES) or that it should be included in the main .chm file (NO). +# The default value is: NO. +# This tag requires that the tag GENERATE_HTMLHELP is set to YES. + +GENERATE_CHI = NO + +# The CHM_INDEX_ENCODING is used to encode HtmlHelp index (hhk), content (hhc) +# and project file content. +# This tag requires that the tag GENERATE_HTMLHELP is set to YES. + +CHM_INDEX_ENCODING = + +# The BINARY_TOC flag controls whether a binary table of contents is generated +# (YES) or a normal table of contents (NO) in the .chm file. Furthermore it +# enables the Previous and Next buttons. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTMLHELP is set to YES. + +BINARY_TOC = NO + +# The TOC_EXPAND flag can be set to YES to add extra items for group members to +# the table of contents of the HTML help documentation and to the tree view. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTMLHELP is set to YES. + +TOC_EXPAND = NO + +# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and +# QHP_VIRTUAL_FOLDER are set, an additional index file will be generated that +# can be used as input for Qt's qhelpgenerator to generate a Qt Compressed Help +# (.qch) of the generated HTML documentation. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +GENERATE_QHP = NO + +# If the QHG_LOCATION tag is specified, the QCH_FILE tag can be used to specify +# the file name of the resulting .qch file. The path specified is relative to +# the HTML output folder. +# This tag requires that the tag GENERATE_QHP is set to YES. + +QCH_FILE = + +# The QHP_NAMESPACE tag specifies the namespace to use when generating Qt Help +# Project output. For more information please see Qt Help Project / Namespace +# (see: +# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#namespace). +# The default value is: org.doxygen.Project. +# This tag requires that the tag GENERATE_QHP is set to YES. + +QHP_NAMESPACE = org.doxygen.Project + +# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating Qt +# Help Project output. For more information please see Qt Help Project / Virtual +# Folders (see: +# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#virtual-folders). +# The default value is: doc. +# This tag requires that the tag GENERATE_QHP is set to YES. + +QHP_VIRTUAL_FOLDER = doc + +# If the QHP_CUST_FILTER_NAME tag is set, it specifies the name of a custom +# filter to add. For more information please see Qt Help Project / Custom +# Filters (see: +# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#custom-filters). +# This tag requires that the tag GENERATE_QHP is set to YES. + +QHP_CUST_FILTER_NAME = + +# The QHP_CUST_FILTER_ATTRS tag specifies the list of the attributes of the +# custom filter to add. For more information please see Qt Help Project / Custom +# Filters (see: +# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#custom-filters). +# This tag requires that the tag GENERATE_QHP is set to YES. + +QHP_CUST_FILTER_ATTRS = + +# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this +# project's filter section matches. Qt Help Project / Filter Attributes (see: +# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#filter-attributes). +# This tag requires that the tag GENERATE_QHP is set to YES. + +QHP_SECT_FILTER_ATTRS = + +# The QHG_LOCATION tag can be used to specify the location (absolute path +# including file name) of Qt's qhelpgenerator. If non-empty doxygen will try to +# run qhelpgenerator on the generated .qhp file. +# This tag requires that the tag GENERATE_QHP is set to YES. + +QHG_LOCATION = + +# If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files will be +# generated, together with the HTML files, they form an Eclipse help plugin. To +# install this plugin and make it available under the help contents menu in +# Eclipse, the contents of the directory containing the HTML and XML files needs +# to be copied into the plugins directory of eclipse. The name of the directory +# within the plugins directory should be the same as the ECLIPSE_DOC_ID value. +# After copying Eclipse needs to be restarted before the help appears. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +GENERATE_ECLIPSEHELP = NO + +# A unique identifier for the Eclipse help plugin. When installing the plugin +# the directory name containing the HTML and XML files should also have this +# name. Each documentation set should have its own identifier. +# The default value is: org.doxygen.Project. +# This tag requires that the tag GENERATE_ECLIPSEHELP is set to YES. + +ECLIPSE_DOC_ID = org.doxygen.Project + +# If you want full control over the layout of the generated HTML pages it might +# be necessary to disable the index and replace it with your own. The +# DISABLE_INDEX tag can be used to turn on/off the condensed index (tabs) at top +# of each HTML page. A value of NO enables the index and the value YES disables +# it. Since the tabs in the index contain the same information as the navigation +# tree, you can set this option to YES if you also set GENERATE_TREEVIEW to YES. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +DISABLE_INDEX = NO + +# The GENERATE_TREEVIEW tag is used to specify whether a tree-like index +# structure should be generated to display hierarchical information. If the tag +# value is set to YES, a side panel will be generated containing a tree-like +# index structure (just like the one that is generated for HTML Help). For this +# to work a browser that supports JavaScript, DHTML, CSS and frames is required +# (i.e. any modern browser). Windows users are probably better off using the +# HTML help feature. Via custom style sheets (see HTML_EXTRA_STYLESHEET) one can +# further fine-tune the look of the index. As an example, the default style +# sheet generated by doxygen has an example that shows how to put an image at +# the root of the tree instead of the PROJECT_NAME. Since the tree basically has +# the same information as the tab index, you could consider setting +# DISABLE_INDEX to YES when enabling this option. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +GENERATE_TREEVIEW = NO + +# The ENUM_VALUES_PER_LINE tag can be used to set the number of enum values that +# doxygen will group on one line in the generated HTML documentation. +# +# Note that a value of 0 will completely suppress the enum values from appearing +# in the overview section. +# Minimum value: 0, maximum value: 20, default value: 4. +# This tag requires that the tag GENERATE_HTML is set to YES. + +ENUM_VALUES_PER_LINE = 4 + +# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be used +# to set the initial width (in pixels) of the frame in which the tree is shown. +# Minimum value: 0, maximum value: 1500, default value: 250. +# This tag requires that the tag GENERATE_HTML is set to YES. + +TREEVIEW_WIDTH = 250 + +# If the EXT_LINKS_IN_WINDOW option is set to YES, doxygen will open links to +# external symbols imported via tag files in a separate window. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +EXT_LINKS_IN_WINDOW = NO + +# If the HTML_FORMULA_FORMAT option is set to svg, doxygen will use the pdf2svg +# tool (see https://github.com/dawbarton/pdf2svg) or inkscape (see +# https://inkscape.org) to generate formulas as SVG images instead of PNGs for +# the HTML output. These images will generally look nicer at scaled resolutions. +# Possible values are: png (the default) and svg (looks nicer but requires the +# pdf2svg or inkscape tool). +# The default value is: png. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_FORMULA_FORMAT = png + +# Use this tag to change the font size of LaTeX formulas included as images in +# the HTML documentation. When you change the font size after a successful +# doxygen run you need to manually remove any form_*.png images from the HTML +# output directory to force them to be regenerated. +# Minimum value: 8, maximum value: 50, default value: 10. +# This tag requires that the tag GENERATE_HTML is set to YES. + +FORMULA_FONTSIZE = 10 + +# The FORMULA_MACROFILE can contain LaTeX \newcommand and \renewcommand commands +# to create new LaTeX commands to be used in formulas as building blocks. See +# the section "Including formulas" for details. + +FORMULA_MACROFILE = + +# Enable the USE_MATHJAX option to render LaTeX formulas using MathJax (see +# https://www.mathjax.org) which uses client side JavaScript for the rendering +# instead of using pre-rendered bitmaps. Use this if you do not have LaTeX +# installed or if you want to formulas look prettier in the HTML output. When +# enabled you may also need to install MathJax separately and configure the path +# to it using the MATHJAX_RELPATH option. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +USE_MATHJAX = YES + +# When MathJax is enabled you can set the default output format to be used for +# the MathJax output. See the MathJax site (see: +# http://docs.mathjax.org/en/v2.7-latest/output.html) for more details. +# Possible values are: HTML-CSS (which is slower, but has the best +# compatibility), NativeMML (i.e. MathML) and SVG. +# The default value is: HTML-CSS. +# This tag requires that the tag USE_MATHJAX is set to YES. + +MATHJAX_FORMAT = HTML-CSS + +# When MathJax is enabled you need to specify the location relative to the HTML +# output directory using the MATHJAX_RELPATH option. The destination directory +# should contain the MathJax.js script. For instance, if the mathjax directory +# is located at the same level as the HTML output directory, then +# MATHJAX_RELPATH should be ../mathjax. The default value points to the MathJax +# Content Delivery Network so you can quickly see the result without installing +# MathJax. However, it is strongly recommended to install a local copy of +# MathJax from https://www.mathjax.org before deployment. +# The default value is: https://cdn.jsdelivr.net/npm/mathjax@2. +# This tag requires that the tag USE_MATHJAX is set to YES. + +MATHJAX_RELPATH = https://cdn.jsdelivr.net/npm/mathjax@2 + +# The MATHJAX_EXTENSIONS tag can be used to specify one or more MathJax +# extension names that should be enabled during MathJax rendering. For example +# MATHJAX_EXTENSIONS = TeX/AMSmath TeX/AMSsymbols +# This tag requires that the tag USE_MATHJAX is set to YES. + +MATHJAX_EXTENSIONS = + +# The MATHJAX_CODEFILE tag can be used to specify a file with javascript pieces +# of code that will be used on startup of the MathJax code. See the MathJax site +# (see: +# http://docs.mathjax.org/en/v2.7-latest/output.html) for more details. For an +# example see the documentation. +# This tag requires that the tag USE_MATHJAX is set to YES. + +MATHJAX_CODEFILE = + +# When the SEARCHENGINE tag is enabled doxygen will generate a search box for +# the HTML output. The underlying search engine uses javascript and DHTML and +# should work on any modern browser. Note that when using HTML help +# (GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets (GENERATE_DOCSET) +# there is already a search function so this one should typically be disabled. +# For large projects the javascript based search engine can be slow, then +# enabling SERVER_BASED_SEARCH may provide a better solution. It is possible to +# search using the keyboard; to jump to the search box use + S +# (what the is depends on the OS and browser, but it is typically +# , /0GiS~urcW>DvEDE9XVHI`{o=-=a>fEt@&_u{%ttVM-en-9$7KSk^Xy?TWT}8K zM7RX+4c;dRAE9K3b4{dZCrvD2!QpL@x*5esZ8!vmQIrTUzCbN?#DyYhT1N$n#5DC#BqwWo-|Exs!3o2tOpge;OZV7)bXl>x5J3QV_gv;3}IHl>IU@& z#F0f~F+ReP;$?zG5ULnE#&`>YfW)N4x&`ZAU=s`s?L?>;Y`%F=GN!$?Cr?ok9*@D; z2E!wRc}$oU2%!mdfl{G@mW3Q3DkQaZFKKG>^a~YHDzy-*G6IGDBWPJZaBvWKp%Rqe za6;rYM~!Lngj%DdnH_iSBTW2a2%>G6E*lb3LC(DC|re4B%fCZP*BYsDO{yz=#Y?5ZEI zc2^&vsB*~(r?T;hU2Is_&*iUK!Jl98GZGnb&6h9cN56i8+i!msCyH2EM+lG5g`9XS z5{%dR&1GyZu(!9DsZ*ztCFxj7%}cLOrW~P*IP=sQES^6JXKSc}CrwjA5n*2br`Wju zfU1XVXA_sYz1J9y67tnI)1_(6OyDp_XvX>|eNN>9YbKygTm)=R^ z(f6R9`#vJJv^J|a5mJ0tlKbgrfD=v1glHrwDZv$Wy2ua?5($<7esd1i=i^u%jj zk3$}db`C;MhGO49ll=ojgu0EWE#l%cyT;-~1x{#GR$@Y-jyX_e*OonGL5MJtI1Ff} z;G>MhI)p4^L=%}fimE``a73z$G&_h5a;Bjd4IW+7$A;}G()KZM(h#SeaU{3gzZR`y zB4fxz8EdjU&Q{qxHa=}Ib80s`x2+`zLYhevL5vz3+n6x9gU+ynHQRR+lJh#8OR?5a zsg&sM?j}u>JorHBJZ0?=hX_k+Yb%vXnF9w7P|X}7k*rvH6elg4h&75pw%}}oNI38b zN=T#&uy}0d*}7vZI#e`8!t�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

    I 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®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 *r{QOUTCtGix<*MuV@S$rj;m2S9T=vD9uU~N+ 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/geometry/selectbody.png QUI/icon/Plugin_ava.png QUI/icon/Plugin_ins.png - QUI/icon/FastCAEFrame.png + QUI/icon/LAMPCAEFrame.png QUI/icon/ruler.png QUI/geometry/split.png QUI/geometry/select.png diff --git a/src/qrc/translations/MainWindow_zh_CN.ts b/src/qrc/translations/MainWindow_zh_CN.ts index 590027a..4ac2b65 100644 --- a/src/qrc/translations/MainWindow_zh_CN.ts +++ b/src/qrc/translations/MainWindow_zh_CN.ts @@ -375,7 +375,7 @@ - FastCAE + LAMPCAE

    u4)@KepK|EWf8*QuNu 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 literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/desMesh.png b/ConfigFiles/QUI/icon/desMesh.png new file mode 100644 index 0000000000000000000000000000000000000000..5ba8a1caf3c63ebabffe04ff76e8a96609d09f8c GIT binary patch literal 66867 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 Z{0{abQi{GAh{6B>002ovPDHLkV1n1i7=i!* literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/eleset.png b/ConfigFiles/QUI/icon/eleset.png new file mode 100644 index 0000000000000000000000000000000000000000..fbee0625db933fb40aac58a2ed0942f049b55e0b GIT binary patch literal 590 zcmV-U0Tl}%_9Q51#08OF37f2eK6v0958Yw>p>bXC-ag2lZE zN>N-0K^Z#5RZ*nqs)Iu+3hKg*MRC~{U5hTAHX(_NChdEZm!L_` z?wxz*%$a-N+-uCv&6iMN&=?dQt4T2#vPQ|OmE{FaI}iXzCAtl;Ydo^kfWnk3Hp05& zu;>xs25{SV#g#H=0b@YIcg0L7|NPLV&zEg8Hwar-?a$85%Lyhh4vYftfP6W$88`@h z1b&BnyxG^0Ja@PM>FKHDNP6UASC8V@3!Hu+2F&=b*e~&Cfjz*e?~1&v=mpM&19l?X z7s(8TzgjNEC!h!ndx7&nQ=#i#;3&jl`)lgX?iU01#L22;SvUf8X#_JmzRk=pjO}$`8+c&5^ZCd!{&qG*7krP|u3SaXF z`4_xh+KXuv*%irD#S~#LaI~G!@f~J9y;!ihwCy!9ajL$s?~1CK;RQ}f$4|t%f1K%j zuk!)4sCgB{v%L!~7k=`6IQ=cx`Mh#&s(BT}v%T4sqIJu6#dL*h+VSJmvBXlL-5ZZC zPs_Z;>f~=|&_7BYPk#8*H+l2wuZN*f$tbTTqt;cc2iwd=C$DAhYeMV7jX17@wbdlM cZOJnI3zC+e&P%k;>Hq)$07*qoM6N<$f+~j>K>z>% literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/english_language.png b/ConfigFiles/QUI/icon/english_language.png new file mode 100644 index 0000000000000000000000000000000000000000..ec28a361dfe32443e566ee6f9a0df8510d0c0b57 GIT binary patch literal 532 zcmV+v0_**WP)s(>+L)VHgJB>pOktlv2@<1~zF?C=sTHr9=*4g@llB zGQwOMYm92DC8D6F8lt5iq7oV+8yW(mUok-<1cQ{Oz={OzB<4A%;k-w_A$+#?z3=-!_6QRES|=xq_~hvU&LDU#f!f) zO?ZX3*pc8}nmXS8qW12a^{B&0NtEddcypYe%T(h6?uR-z1n?{5=Q16*h4JuLAMmQE z=JMDys=`MF&V*zW=){rGM4`0TO5+qS&aNEAfdE$GMi6hsW;7*AS&dD>!H@XwuT^&v z;{EuUAlITj@t(&XJjcCg&9QIgIk%u&sk{3E`7^d8#0!C2f!3&4EUG*-Q{J#4rQKdG zrqPyry6(%;Zf81j<=t*sMmUP>!cgTTiNk;uI~P+*-93t3N>lib_jrIu`H^_(s{R2! W&W(#EHr{t+TU4Gty|Bqk0@EF@f@ijEnIOM;L^ zgf2-sN>?qVwxQtI*sai|MLUQ?vN%=jAn0%;ku(UEYL+Xe2p1tx2=;YJrM+Czmh=+E z{@~;8d+*2lKHqoT`*D3DLNC?d)9QZ%z~KH#C=|K}ECOx|YHa~=RaM^{h>FOcp(u)$ z%jLuh<#IVu6h+%#Pehttfjbxs5>1r=ny#HF7z~2h&Kh>WlGX32k^ex=K_gHo6zX`j z$59i2s;ZV1Gh1BGKf_aie;eQ=`ooa`DteujwQa^1Hrx8f7dBa0+oqz|PX?e^u941a zBry-xPy57HTp+0m<9a-3=MR`fdQ zjK;0&=SYuTGxeCNlfx)7v)<~_u81s)NK8cBjS*86W!ZQbS#cWfipZ3R5SdwjU@T}H zRy3j)z;xsOWi(Zqil$0uTbZo@$Qb5Nfp^hV>1MY8-kZdRfltv?>3KH*TB#qn(hY#S zCNT|&WhVXi4+GfB=kuKcL=E#-z@5yb|FxOf*oYGGczh9XbpY@X_@b)nH1Iex>3`PF g+$X31hW|UjZ^0H(3iw?vlK=n!07*qoM6N<$f+qqc2LJ#7 literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/expandL1.png b/ConfigFiles/QUI/icon/expandL1.png new file mode 100644 index 0000000000000000000000000000000000000000..42edb875ef240a8a46ee79cac9229be9e148a61c GIT binary patch literal 208 zcmeAS@N?(olHy`uVBq!ia0vp^+(699!3HFsq+HVlaSA*liy0XBj({-ZRBb+KpkR}y zi(`ny)Yc2OT!$P4j()5c(>6{0(z9(+GK=?jmty{{lOG68`kSGYEY6gDCVzvwspC`<=6AiKD|mH=}3qg zb7}3F>2sxLsLg+Pc*paaEU}#92Xp`ZWZpB6pW!#N*#00Xn;))aK-VyMy85}Sb4q9e E0JyD8asU7T literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/exportGeometry.png b/ConfigFiles/QUI/icon/exportGeometry.png new file mode 100644 index 0000000000000000000000000000000000000000..e300d8929c29711f39377f1cccd4e4c5b2927ac5 GIT binary patch literal 753 zcmV#GZ*(C`Jv_sezPEppS zCMHsr%&4jqCSS6nJ+2J{RN0gHQCo`Su*B(^YxGDc^1jN~1ARakqE;^_@o%=A+(< zbY;Ge^M{M6+rF+!f__Ca%e(^I0!n~wPs3C9o9?}5a%RC3ge1Yy9UEvoxT$1Cp6`XC znTJy5+H8UFNle59TY(Xv3AhYMo+uI}fGfZyU6m6IZ2?a2Dx|$akAx#K@-|vrvLLrfkLZOiG`~8u4zmx}2ZjQv+x?+F}R;Z}FygZGU2kZHS6?8la z*R0Bc^oq|_SwD*Z1K56s8Bh@D1^R$tD^?0r0yWDCFbcE)Z9wt?_R_lAmkVGNP=PL| zB*QQgz%p3_EpFy^%G3%3SzLAi6wN#VGyv7QDo;5*n5h-$#oBX4GuHw)fimEkHTDD` zre~vG0s4OZu->>Dn6`sZG_%tU;Oe#Rk1TlWgofh>x+;h5AT0CaZU7gDKFmIB>lya~ zutYWxZAVR z`4#A@{4N?3M_8l>7z>BPsnTnJ)yYA-Jx|t>p3r8JdR>)U1A)LE7F)8y6se7dVO)2d j>~8>;TUq}*&N{$PVDd(F$_9iRo|67uT;o>J;I76547+$$sVTz2}gzVGKe&uane{kG^97?~fP z2PVVG=kr4zsh@%Q2545CbOB7yfOP;Hns0#rGhjo}PciUwX3dH-HvhFmWDtcyK`f{v zBF7?96p^fsqHgPGkAY|G3e2cCpaEO}pOL;N9hbmi5-ad3B75O?O&hijVFS3HrO?I} z+|gTh0Lt~?0H^|`cFlR8RBU4fI_Nzw*Mk+{4A=x7be=fCWB)>LUY)pXo0#-*A+W^=a(^mzS#uY~ay1wt50&D}z(Z*4G z9#uv{cSF~8cj;YB)(jy|lv1aLHNyaDDE0q=)B(N$YL`9(9Z_Ed00000NkvXXu0mjf DVwu7j literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/face.png b/ConfigFiles/QUI/icon/face.png new file mode 100644 index 0000000000000000000000000000000000000000..c90c71b50bc07fcba1e3d00bf73423bfba2b24f7 GIT binary patch literal 572 zcmV-C0>k}@P)B#7!mnXuh+--+G2&l6C(1~ah$D9W)*0)T1F`~YPZ{ydxZ;#h$SL#N~Mw+ zjYe|`bh}+++qUU+I@{JK1uQex36)X@+7@fI8mUxj+nQ1et+lmzA2bjUsu22JXz%V%h#MeXHR=H zkW5;!IYs%tPd=Y#Fc=um^9p+s`0@Q4j~5?sFIU_*d@_YXfquU~@_qj%u(Yed+S)Ik zJ}PqU#x1T~y*@X**Xs>|H1KY+9uQbxAL3NXoIbO_?K^kpg6DEMwAMr55)k@751fKm zFP?GaXp;NIhjYOJwAR0Yi#x%A|2q)@mx1>oV&MW&B=SZSxxin69Jpgz<#(n40000< KMNUMnLSTY9Y5ax& literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/faceWithEdge.png b/ConfigFiles/QUI/icon/faceWithEdge.png new file mode 100644 index 0000000000000000000000000000000000000000..5e57c880bd568e7e0ef8b159e6c92175a42cf670 GIT binary patch literal 582 zcmV-M0=fN(P)))uLREEJK! zZd}=wiy$cY1G<_Y&^GNNZd|z2MRlka!6F94g;bFgE<`Zeq&1>K)YMdxX0DqSY-aK~ zLb{l?dty-w*0^khr9Ps@o=8`cHI8~PbaH4IGGQU}p zzUZw$(?nB3^hug{GPec{{+m_Y0!vE@gSDr`bE_F=oww-dnbX%9z)?e(hgh^PsNUGO1t1zZ7Fz!hk@K&^p;@*D!qh{4gaOlFM~=T3IvbRwEDQi#-g5eNb=%X5psW=Rr#oaUI{htr8@a_$p})qD{+ z3%s%GvAhNM7C*Ds>%r+n1dv$G{{e<7!NFz)UMGG6SSF$-D+s);)}XjQr>z$F3(|I= UorA2li~s-t07*qoM6N<$g6m5L+W-In literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/family.png b/ConfigFiles/QUI/icon/family.png new file mode 100644 index 0000000000000000000000000000000000000000..04ec12bd23e07e3621ddbdc5953c8d6dc5087177 GIT binary patch literal 948 zcmV;l155mgP)L{wT4(K|_9D0Q($cST4PMO1WQP`0d)?8Qi}bm+v+&@jTweY^=qRGGw-51(xC>9KdUs zRRVn*`!Tn8`}Oz$g|bB%ZEbh}3y{Z7ycfrP*o%*_Yi!mJ3+r#+KP$7nE2u8?WK;Wg z&Z}Kk2K>(=`*z%uEIMBoH6@Q%er~L9%MK2$uN^2Xo82*3eQVZk<*8{!k*man<*~*C&R<=WqruV`HqjsVPLPc$VXZ-inI3`|9fI+G}bIq*5UK zGAp*UUm^@$cKo=;-d;aVooaDM$KJ{ycoLh71jCWt5AhkUt;y%>esR9O-id;)YC%`E z;apPCRV{xaV|%<&%XycWf3#a)EIt3t%}X|qz>zeL4RvNleJ69Fp!1)xJR#!~ldL+k z%|o|t868`EuD~WEwj}6IgLp2K=nBM-1(JO+L488dkc^6j%5356yJ&LG&gpXOz`aO8 z;t=Uw1?kqDa4_LiV~xT3YRRL+Du2z39f=G2(uImxK(r8Fh*tS5)76-a$3?Ry)jcGa z$;eMi6N^Q2fkH#Iicy9T9ue4Fg)_M68m*6YZfh-zJJ3NGup1Ksu(;R zhOyNRnUgK$VvEn=SaVa;Ry1IpXjO;D1V*(CQsIQ;&?w&+(8VIHEyQu7NXj0@Z&+C- z(S+nsId{ogumS6FU1_AgDS|&H8jCjE<=i4Z4R4_npJE<18ndQELVQCJ{88*K1D-81 zYQ-^JC=#Tg6fho>68ICv3w9U%Yed>RRivS7acXSxxVvApuZ!mvyd?Tp-6Sf{xb`=< WKq96IVf@Yj0000FRSI3LDE9F*U( zq9gSneD&bq9F~%5t(juGy!AKTREYP4JCZ422PkZk@@AaOWK7la? zHzB%O{Wl2kE)s;0eE?SgLf=rY4d94UdOKwpV{?}zNvbT%%nF{nLw0ff$ez1HOYh6F z%p^%tXY27kK`0)Nn=Yk4(2y&&aR1OnuGB(*pqa*edhVipx*4E zaHC?Z*>}`Z4_JXm6mXu7I0;>X>n`~F0tg}Q3Ro3}0-SWU-8{Mi`U4I5vhpPY@?}ML zPH=7b@-{-Q)SCKyRopc?czqio!?7+`K(W&17T0Sy9#1KqyRSEUC|26m1e_#8==8=* zA{LW=7U%Jch;6UoBpE{Ka-Qe*KyclQ?BNa)(ST`UD@a5G$R6$>xW2qz-BIlKi8xDz zzeK=UDh!V(aGx34P%p?XjPm^ML1YD18t_{MtP0l!IQk(OYYh3ag1bg%$|a%!!*17u zqaE;w0!|OM5Zhh@Fc~tZ2V0I@!xPZ1R;#9gexHa;I)c634P??0_L)V*sIQ544EXE%!x8(YN`1`8#ig$Oo&7FsESrAokP zr5NHrkVOpQ2M7iuq!J57R8S#}7A}}BqJ_04VrOGvXTYq*+(Ra_v%8~tVHx(^JHL77 zyys4>-EIr*JoZTswR0^DE)U#~ z0qn+H1CMY8zX}@u)_>ui{yH zwL#p+1eVk0vfp-`R|qRYd5JIhfNiN(>*7p;oW-BwLO48uH<-c29-zFI3;!qc4juY`z!{PvWgCSg700009a7bBm000ie z000ie0hKEb8vpR5*?8lfO&UVI0R_U+;U@5_AyUdGb6#n-JkD=^qfZ=<1;O zKoJSz5H%Ep^n+{DprPe6I7Ca(piK_Kaf4_CEiMJ&^O4JRsB@7o>9@h}_d4=>aSqbr zdwZ7m=kH8DQFq?w^GGJn#;vS<%@{`k3|YXQi#^OQ9bav7)|Hp?9VXOj^-u z2)qG4R;u5sKn1u3ECS2PfCU1E$`8KpM4S1SKVBC@@5~gi0&G~(L+?xpxB*N6V?Zt? zuUOH&lpdJv0F?*ki5c8}T&hK13)g^4KtHg=(VM)oqIIAQOa{e)RjlYDumRlj&ivC& zD>|OsYBZ(y&Kz3Nzv)}$74J+VbKe=ZSkZI9L*RNAy?3Ubt_9$jEy;jmwg6q*5&|t- zfN?8249vCD$G?L0#@*hngJ!M{i~t>NA=x)j?V-&UE81?$6Yq=w#UP9y_02V&UKnjQ z3zwr1xC30_&krvpg)1DH(z2z`iZ)Yv?@XpGRx}UH$5AlYxZhhl_?gSJ1*lumGg~_6 h%$EOeOIPXEmfuZ;F@H=#5_$jt002ovPDHLkV1j1K_|pIY literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/geometry.png b/ConfigFiles/QUI/icon/geometry.png new file mode 100644 index 0000000000000000000000000000000000000000..7d1b757cbe55bd534fc356be150fe06728106cbb GIT binary patch literal 538 zcmV+#0_FXQP)b)je<1P!z`T|G6)|an+#%V#^533=HrESokIgIF3j-TS6o|xBwKB9c&I?Iw=U#@SZPLV5i0N4@on!y}=<3LpYmE<- z)P*eTzEnz|15x8%fB>LDA`uJ-;~s#3SP}ir%oAJ9-ODywd19@*B%)UYkwZ9)5G9C4 z5Js~wLXjft``_D*D^qZ~pNLZWhK*JqTk9@rW5$V&OC~Ny6A?lP^gAt|G``q=JLL#& zCcmt<(cQ?oTh_TXrS-IUN(Jxf9vrZ{^+^r00l)}u@1^H$RNIVVcilMaL>4v~<^^ez zkZgUP>YMh@_Ej6Z*Vfs(jS2j7e*&*@B1tY zU_znlz)~mx!})C!3f%?VvTi8K;9QlwbHOTueW4a#fjMye8n?9xo*nDg)e#=|245PaVE0*wDaQ5^XgmCJ4PXXkZ#_52w?KGRtfg4 zfS5S*rgs0&o7;~L`=&^j{!9QAzN55?;(NV!>l>2;Q?y(U7y$ksK*i`k_mRQc+y49Y cXD4s?3tb$w%FjudD*ylh07*qoM6N<$f}&yeDgXcg literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/graphOption.png b/ConfigFiles/QUI/icon/graphOption.png new file mode 100644 index 0000000000000000000000000000000000000000..550ceed0ff73601c10d78b5f4cc838e15c88ee4e GIT binary patch literal 1085 zcmV-D1j74?P)W!W_!-!gQtI*MO^VlqLWpFb%3`tnmXni1RaF&22y8YRnVFfG&1OQO5I&y| zkH^Ep!U8Ur3$NEpFc_=_TvE!TgaCvPsb;hJd0}B8cDtSG>gsq8bf&4PDMm&{@OV6g zLLsY^^7)kjgb=T%q@?WE)z#76-HpX!0YG{J+kDfe> z8$Z?Z^0KO^s8E`wrG@7+CO4OsmMVwCacHDq zivivZ_Zi=WAHAdmPPSA3gDp%+C-;dc96m2E58zfTfVT?@3eJ9ro9W#D{1%BQ5`1cE zDuDHz(a?nRYiny!o5<_+D!<>Ka1(B9Y$#3B{tC}&tiX5Uwdwb6U!C;Vyi3t`L z7xDZ3Bqt|hv)O2DY$QKF|4LPvpPvW#Jv?Rv7;`$E_p-9GC@Lz#=kqZ;JImbM9Km4l z6W|}fGCMn4osp5z-O|!>AxX4XGJwnFf|D<0WB@7U3n4`M*w|QGW@hF$fj|IV*KY&P z(@(1q!fY~`el_ltQ=N7{K>vfSvmWw#y(}#)0sI-O0!S$jfNzBmKLGnu$`=O98|mrk zWM^kb1UQv(>yD0&5(osokW%i&1PBB1MH#ZDrKMrDS|bid>i*T$RVF7V0lqi-FMT2k zlTu1?e0&^n(71I2fdKve{p{`SwMr@dMt>q_!tLGNUADKk;~I5cr>Ccfm6esRrIhz0 zd9Dl~r99Miz0K`*$MkJ&ZPD4;$;`|Qz?ac{iJpobE|-hx>FEmtx~?-mK91dPXKrqe z+3k3PNt@&*xA|P=;+7>tV=0lCP*0I zCB%C`8}I?J0{jU41o)(s!OP6?p8)<3UHd0>}<5Pvj4HS zvvL&^AfP+&V{c^$c{V}_ip&s`vEU|?@W_4l-Q>Q6VI?B?#E#eLi-G@OVBIgY)|g1;J#^^)4Hy$dVmT@j4@9Dh)8#oQrk35#TI2*N*u>h6oqw9nx>+Z+O{)? z2CRiz9A7^>_k7JkMEvi7cLVEb3Y^@$e0%qJbvT>nY+y>nmDh*&2)rAZjNqqS!F~tE zxYh<-a$R;{4t|YbEK_jXfieE10oP2I9q?k{;qu^54OCf{ISE8jt zB*_NYvk^1KbkACATMw_mc~|vsL@q}u^)a~Ryep-gb*w(eBe>OCUjVy64cyHUS;_Ki cwixh?Pcz4Z8@?w)U;qFB07*qoM6N<$f|wPixBvhE literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/icon.png b/ConfigFiles/QUI/icon/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..f6b48a98befccff8891bd1ed981a8ec26f830773 GIT binary patch literal 11584 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 as`?KXlBO648;}D40000x&Y literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/iso.png b/ConfigFiles/QUI/icon/iso.png new file mode 100644 index 0000000000000000000000000000000000000000..faf355158986bad20be3d87c07fa479f0fb079f1 GIT binary patch literal 654 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 literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/meshFilter.png b/ConfigFiles/QUI/icon/meshFilter.png new file mode 100644 index 0000000000000000000000000000000000000000..c84698b782775ae7be022e57b160c4dd5d5d0b74 GIT binary patch literal 756 zcmV*_f%U8Qfh6%{%H+bv}xDzkTxWnooqA< z5&R%9^XA?8o}HcfW&%nn>KTXXn*Cn@X!J5jDK7xefTKE3Lvt(kkI&WSd}CRbQRpe9 zTz{SYvj`zNLZQ%lCX-RRc)PT%t|jKx>Q+wcv29!R^z>RyQcFMyTJoifd{6#Et9(_eVA^# z1>BAd%w>wjU^GeW{`*4z>fLt=SPMpzC6HwRkpX?taPe%AfAfsqT{+4Cyo!vY5RC(4 zML^Zw?+S-et&8w!QTrs2)fs`^{r}Gti?ss0E^4m<9l*TCy8}dlMLz+S9Q{?`95Cw8 z_kc@)=^UU|fYUCT4P0?(jc&>P0MMV=RYt7<7a_lMsyU($ynX_70udLz4fw|X1*cM! z)d4A`XI7amG>-$ffKNas7)>7Ni{uyGDETwtSXBTex7EK0M-_bzTm~Lj0&u;S`v?JW m3it@_Rn~WaKaILy$$kU$GcPmxnd|TX0000w@iyn9`;3HWV84&}kMnbc0(6g(U1@4@)QT~;ywNd^v$(8!??dNejRwz0Oh=4sW}G6O;gQ`dD%#chb)z*4U_Hgo;$ zU-5dqZDVYwKnSs+>-q<+g6k=-6HAgbGchs2ohLXVZz%u>2qEb8#u_4WihOLI4~@_W z@P3^*7z_e%=R__1BLUfLwm*?b%-p*d>IZHD2m=5&Fbo8Shlkyxqoc(0g9L-JV^T)~ z`uh5qpP$F$@dR#cUJShXTLJ({lKAfTE8PC@6(mUlAfC7WVolS?WHK!Uv~@v!E~C*X z(P)%#INT7@3UhOF?Ck8Yu&~gwUq{!0a=A<@l>)9XH8tg^5N$J{s_Lo8RaIqiaS@lx z1vqzst$?kqt+pZxg+il`%jF`SPB)z36t)7==``Kl-7GCFHOLBu0-B})Fg-m@GMQv( zXb9lc#C5cFfngYIZ$dJe1nR{%$m;50F<%hf0Zf24Q;&^S5=ybIj28>7qWP%4Blv)L?( zM1o4C!uI(f%aeZqM~h87Kgdfze9pkY0JXhfB&W!RKTGWRk3-DP^k>3EWHnm^QDY6^*){la*Ax`6!}@LtvS0d0^}6=Pp1N|WipwsoQNouN&q9{gJliq zx?UAR1TvY-&HerTYrK4wgM$NldU~i-DgdmnuanQ`DV0jQz>mNSz%#4yTEVsmbzQIe zBgK!ljnG{PExu>)7H|P513P!&Ti|P5*S|k4sUrb!bOuDx9{>;j4M{6lt^@xko{xXS aR`?4z*_}HPS&(o50000a<$` literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/meshmodeling.png b/ConfigFiles/QUI/icon/meshmodeling.png new file mode 100644 index 0000000000000000000000000000000000000000..f9b894c1c4a6f19a42231ec22bbaea2481231956 GIT binary patch literal 886 zcmV-+1Bv{JP)^Q5eU6lO|RV6{VqVMi3D}5a+OEk4ruDw7XCd zK{o=ymmnpGB7JbfG?pIHdELSmvB>|L6Pu-{pKWno^31lt~ln{a+xEn+_nQTmf7IraEDArp&_l`u2xHJ zcnf|4L?RKK>JDbtZ#|v9>x01{9*>8H+c8H>(lyj|eO#lyK#bO^C25^YDe-tbX>k)i zh$e)9FYvo0f0aO2-}fY4+EJV>xp=3a^SAoQ$)6sl&t?XCfn&f%U?DIWSU5bQHUh^Y zk3RGs+`a(g+hE+GY-OMwXaHL6%AUa=&+9_3p95#=wk^=|av(WbAH+3X9a)`l&nASLLfNyFJ|PU&gTJV`5omRU^Y+%>;x_+ z+DamjZpb7IqKm#jY&4=-z!hMzwLb)02QC0bz-hn(+_&4yvmWrUbmLRZD!<`V+9mMxp^&3+%J@EtvBlPLi5XN}1NH z438}ffE~bFm%lj*yu-|d!0eA{zzF6LI+Ds(%CF+TDgWme(LY7t7hI+0g2`RabpQYW M07*qoM6N<$f~g&fc>n+a literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/monitor.png b/ConfigFiles/QUI/icon/monitor.png new file mode 100644 index 0000000000000000000000000000000000000000..618977a90e98eddc680ad97a1ad24f49e893aca2 GIT binary patch literal 614 zcmV-s0-61ZP)b)jMbvK@kK257pX8#{pc*sr`V(d6J^iPeMIrSQ(Y{VF8ZeS+r+ZhR-vR zz7R?z!y9Zyzi=Q`Y>M^_TktARQr!M69KqeVK8>5Tk&f;---w$yp3CXQ)tQvu!91a` zMe^gq34g)mxUNV4Va$(trAnuTntOsNT#p2Gf1?{GuuY){G`gm5V_-dg;F@qnKM04? zjzd@!x3>f)WE+_*z$A(Uul;T69(hFDinM*t_R8p|4^Fs!Xg^<+0xhy zN!IyWw@)m`4WaJl%$W5jz6%%R;Oj?i?;%;$`7(13cdnnR?A-W6OLHP=Vs1-{R3eck zkdh)v!YDQMGci2Y?EYxWLsT--fBr}%|Ks8N1$=#rdb#TQF#rGn07*qoM6N<$f^6y@ A0RR91 literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/near.png b/ConfigFiles/QUI/icon/near.png new file mode 100644 index 0000000000000000000000000000000000000000..633ff6a7fd9727a46fffb02f60e21310cbdedec6 GIT binary patch literal 503 zcmV8oA`YXZn8-n$hP#oUdmSD32q^aWQVJq(<2Y!C&tm5@Q=}fjd+ys zt(b_I!Db0ZaRz<3gO=d$;T_)NesC?gi{6MCEt53%@CMp(8Phlwm5hXaGv;s|M{p@( z7Ex2&S|jQh!WW#6W9RsaYhkOSKjgQB%OS%Q7DBH?4Z9k+i`a>qxPbLI8@AiQt;I=< z;c8WdL%4zmIITG5TqF^C9=7)Iossl0z2&2dW>4U_qDOE5pF<7?SI03tjhMx;`J2I> z#Bfx04*RN{vvMCM%OS63q tiXL?-2E4>naOF$s!RjlrL}`9LEW5uro`~IK9sPk=furXqaK9zxukms{4za zb2N!hjYgja0WoAG`&0fD7P=-rl_{ zpen_tat!PMhroW$)$MkHiW)GLS>OtI%z}>$Q#r|kZ_~@d8~9t`02e3eU*H$;ZH(AC z*DkOX3SJiABLQA=BA;~7FcnwslsHK*2Pv&=!#GLH{XT3B)NWTl1JMMkeQ2(J7i1@4 zXr;9>P;*Y93mU%*{tIYaK=3y7k5yCYzmItx7r0;wGEhf=%M?$-Jig&-JOdx?h+H-g z7|jvQnaZ=NtO3!GjtGj5=)qL}n95f|hQw4{79@8>9pF1~UT3+bYWKN*0H1+P;07RQ zNU{kndLHhyZtxIHc>zK{$@N!2Lr5 literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/nodeset.png b/ConfigFiles/QUI/icon/nodeset.png new file mode 100644 index 0000000000000000000000000000000000000000..81885e5a946c02f7d346d2b3da4a9a49fb14d20e GIT binary patch literal 782 zcmV+p1M&QcP)bm2F5C^P7fIjByE@!Md;&5m=u-l-UniLFU1LbC~>>1r~TML|F{CLu! zo2vK~(8tZJ#i&zo%R(G*26zUXxI1QBb->cow9GK>l|*GkBZ#8=A?Di;CThV27BXZ01Iv-+h5v;e5{eOp=a!dcbaK9UnUJaiSF>~mg# ztDo{R-E!_AU;@^-W#O(GR+;oL#g+6Rd;05G8&D&O%2fEF5qG?P@w+ad9Y_XhfyOX@ z84v{1Ac@M4xv~j?FAwEYXX!q^DR!Vs5|v)JEMx+ulBnEMZ?JX_3 z8^c?1xY8Q6gfr%IR`&wEEwWG*O{b6MoR9rCux8}}>@z<~w|4gI2fSKO4#3*knguw@ z5_crRia&ylMe)zGzWWXJuO^pYs+WcE?2JIBTNYx^rll0yOoOh{gg*1cUx3#y()oXW z@f#ERCsOS|Y?wbDZ~~+K6R9?vX>gWPt5<9S*4Dm0C`h8>-w13(3D=Y}U8Qef4JC4( z9jKLpx`?0WmW3Rk5@?h}#UCXj^&SV{0uDz+yx05~(=DI8Wl4VWlP?)HlBoQg3u5hT z%>jyQEDlS{(6$+96>wBt+IoW3Q)lTW-T3L~u@xS#Br20p0(1bUE6iR2$PGfpuznHQ z=v#*Jqz+k-w5U513OOQ#s=N?5G*=VS1!vwuj3%{(B33t(1sSHl0hn*;y2L_nSO5S3 M07*qoM6N<$f~+8IK>z>% literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/normalL1.png b/ConfigFiles/QUI/icon/normalL1.png new file mode 100644 index 0000000000000000000000000000000000000000..082a9f26e4fb160360b5083116b54ff3205f0d47 GIT binary patch literal 240 zcmeAS@N?(olHy`uVBq!ia0vp^+(699!3HFsq+HVlaSA*liy0XBj({-ZRBb+Kpx`1; z7sn8ZsjU+Zay11Axb`oSKHah4*RgF6<1=(Wcc(oy%Zh&M#N|6buP5{B=>;FwrRg1h zXwcX3ra|D*dk8>L$%rvA?M2aC_T~V?0$Af0z2#oPVwHOQxga z9lyKosY}0dAN^RqnSBA*vdjY6>rSgyu_^Ez-&XA6qJCMDVc-8$)&m+G5qi&3BHP%P l^gsId{k-{uB0I(<`r0*hTMzLudH`L^;OXk;vd$@?2>>SiT~Po4 literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/open.png b/ConfigFiles/QUI/icon/open.png new file mode 100644 index 0000000000000000000000000000000000000000..012ef1fd1a140eeeceb9db028536e965540bb1a2 GIT binary patch literal 625 zcmV-%0*?KOP)wIktp!<2*>{n+0wIsjfL+fs2-9J>3@qAp}AQR8=k8wk^74 z+qO_uwcMU3`|4~#DxFUE0R9{6UKMEyJp-Ww#0F1kNz=44duv5-h&w{q6Tr57-xtkh zbJu#128DR26^KUn-l;($4m|^*14PXndGKk!ycZ2!nGVc=X**n+ zO)+QuBGeT&V*O0|8zvx|}+eBz{nCOtJ-+ zEnhq`bj95jKmgBdm(0wVRC9p&ybExv{oEH|`E!kE1dbn$OEoWksj>EBqiE>L%Rqqn zyhCP2ZtwuiyaOF?-xuI_!{_b0b9|KYXU`0^IB#-vO{vs`JMeoR~;RHD4{&`S`7|3SYabXIa=p}LsAK#G&XtR`ty62uLc5yrO-Ddp#%H{sSJQ#eT$ID00000 LNkvXXu0mjfAP^I| literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/outlet.png b/ConfigFiles/QUI/icon/outlet.png new file mode 100644 index 0000000000000000000000000000000000000000..b4b9f9ddf5b2a044efa5ff23e4b3e6ae9178eac4 GIT binary patch literal 584 zcmV-O0=NB%P)b)J;egQ4|O8-?J(DG6{RHqN0r{1wn)f(kjtSR7eY> zRZx+eY-25I5q%Lt)T)IDM$xKGkx-k0+SSI8pf3m{l!}=kqaw%&Tg@b>K40 zJ?H+<|9{TCCs*G(xC~dZ7fVcU-*E?B7<= zRrr9Tc!{5QipOCTHx}~2$Rr*exPTT6L$1Dca00n7itF$QXA1eCzl?(QlG)H)&Y#9? zMn{(EP4wVe7{xuN{GV>pRlI1xti9$dr_s?jWY>K`#b3%VOCQWr?rs3i;qh8EI>=9NP=|pf|Ih4cmhKS*F)!q^M|Yj8=@X`hFh$};VgOz}~Pr0LdsEXI*aS$_k^ WEujX7WaY&G0000%tT literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/physics.png b/ConfigFiles/QUI/icon/physics.png new file mode 100644 index 0000000000000000000000000000000000000000..8f73bdb1838f094db914d159e06529c62726c360 GIT binary patch literal 265 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz&H|6fVg?4jBOuH;Rhv&5D7f3x z#W5tJ_3gB?f(`}(t>wK&ArE%7UYIaBC}hEen61L%Ge2%lbD4JhgWns+eV+HK58bPF z(rRA!kJ*M%A)epmh_ImbbFt5>WY65WWv<%({P|ml2^~83x_9jseXywHWSi-I~4^=nV!> LS3j3^P6x-OOEn!7@R#Z8+O7gw7=YSAEyjK#f8CY#-4vb(Yteqq>|H{ZAO zoq7A-?3A^ZDluK@>i>d(8DFB-`T_79Xo+bEbc`{*LJF+4UQH?Wrq}D)7^Bh1Dy0U# z{#orjA*k1CHTOgS8ijUGMhLXl-Y?GL8e@jJ1Zb^SwbrdPataq$+26ol!G8gj3-GRlIWUkc8FE_1Ov!>(rId|Z5CnxX;;f2!R{3od6=1EklG>?j z6t09R=mVR;7O*3>`&r~dl`w%Xz-u5h#(ay7Q4|4u^cDcLy4`M`#oNF;fG`X(#&|hS z*~BlI*4p|yJ9r7aT3Xo#xBy%Nz5@F)e;v3A`~ZG#wCjhC=Sst7vw3VRC)Ec+G0g(+ zft$bw;F{RifJeX{@EADAB>=z}GcVov7Tg5ln9l%rfE&P^Jes)UJacFXDi zVsaue#=vK1+!szU0SW9l{fML8j)8l?L$M=sk;6|7LFbe->^QqW!MpYJ?L`m4$2cdl zpa_;$wy!X$107*qoM6N<$ Eg8GpfD*ylh literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/post.png b/ConfigFiles/QUI/icon/post.png new file mode 100644 index 0000000000000000000000000000000000000000..c17d718a11959d11c36cb9da4d5d5a26d0fd28f9 GIT binary patch literal 1506 zcmV<81s(c{P)1Y z44s5+outHw&bS1sIK{GpIzY=~uk+Ir-xY1EUz2Z)t)iyz3JbNXNsZiI;Dv3?&FS0Wn(?{C&R_4FBc=H3 z*+^B*+ehn(SuQBZ!i?;+Lw#0=%ek4n=UU)-K%V<~WoG2j-TQvKuI0x+`tPQ!l)<&vmOUZXi@S z&~hnKwIY>vP*c~_2{hbW7wH664~+#`zPxW5{L7wxZWtccjh``{S*sDi)YXnep~DD_ zrhW$e56!?O(O>-n6DU%*LS)s|)ncJQM=m zht{CL>VpOQfC36Kfl$o#~#q(p2zvB-l-f4;*tIKN(jQOd9PgF2Z;7EzzHBBc0&WeQ!+^)6vOYI zAg7Ao6_3OpwOksyYND$)T3HT})t8cg;gWeR`?)>LXy9}hC;@`NM+uD>P`-GW^0KS= zTrqN9dDYdjwW(SZ^`T5 zs3`0WqXRlHaep_L*B}33C3N}nZDHATBW07u(`g8kfl*;FvSF0^@(8j15{BQdjsPf% zrFL11`U&JAGlB9er2uP=?RaHj5FjL={Quypza6cx)il4R>i`a9|m$)!! zV^28gzPOl^%KW2SzW3Z1fa0FI>Fz7Fedmrf{n4CsryBw3P9_dMacIAB&&A_x?0E@* z&_pD7e6kvA!iC%P;L{vP3H<|LO}MZoT)dkK*N0y02}1r?d~$np8hFgs?Qcp&N_R4G zu;I;DjhU$-C;;*btf;#!7WH98-HZ?n#}Gu*iZcmNmRfJ=!|G9#W%nGp|}5f7Vcg9rgf-p^9&^K)}QpWm7B?Q0K; z6cU{&t6~V+ckgil&#GB_Th(C1JwI`d66aMGMI%I$zFQOX*00>m4=KFZk>L-=tUK6* zUST0`fpO%O7C`%!J$@}~eG9?EwxTcH@z&<@jBVTra<_>64?~MgfQABa{{R3007*qo IM6N<$f}*_QcmMzZ literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/press.png b/ConfigFiles/QUI/icon/press.png new file mode 100644 index 0000000000000000000000000000000000000000..7e26909fd79e10724cbed820c200162b34814de3 GIT binary patch literal 335 zcmV-V0kHmwP)Llrd@pF%U(cjM`v~Z{S00l_nTmxJsQerE$z2K;<65 z*p(ZXIe;Ms2SOmF?qFXbq)R}cG!mIzYfZfRAehhBXFeJ+%6m^&Xh}{_4^7&!&RH`1&Ukq^K&)LURLw6EwR9J@{GuWuSf$;aS?+l7AJE;IQcXDc2e7kp~69Y$hg0=5_aD5}$IY`rbUxEM1#NMa-c8E^Sp&_gX4@)A~RA}UPI43gNk zK-#NbQp`KeaHSJANMc(8cBy(%kYh32q{du?Q=5^Ht;2&03D}BBjk*85y8CYc+Y1f? z^CIHb^4VgmrdXN5vd+b^h`3u?fwULQC1(oku(Yuw4k9P_Qzsk%E7fR=)mWQe0ox1D zgMQo$?*dOZzwayJ)}8F{eWX7Wm}@1(ydLEz7dEv5wqHG)fY&T(B(K^|L2viEYIZ3& zm4vIB15ti*0bp!cc&1c2qbf0M6|tu8<#PcL*u@H1);SUDcr8EPw(NGPdII4>9E(_Q zMo#W}91pbuX+L~l#rian8bi%g9K@%*mLI>=R#y&>B64v(BZq7G@t>1@2A%=iTRsWq z%Vzj5@BrA|jEj+zb9>hL)wfakK8_XMtvk8zI{R(70=5^tmw?~L64#{0T-G0)LfTt? zqetDrBwU2!z2LCH8AzAHqo7}}4>MQRE$>k=za{2%b{IG$ z&Oq7^rc}9__;=SzX&Kh8nO&@)snmmdK6@oOfL#h+QOwQOWK_;ad$XSm1Bd1o*j~5~ zbfL%p8pgO$Ve*e&#Th?%S(Os-2!O&|-N~I977id8ulkxIH(Qx_x!3o7RZ+L@Oq7#_ z>2mO*7(C$7wVBB0H7EPQX5au8Vwuil$G%_ggxgDhy?|jch67)11rE(E$oOGFRhL@X z=Hau8m6@n8Ig>1StXO&8Se6ew-W=ka$jP4A3cMw-kwmg{+Pm|d(C~pL){5nF&B-2P z8?Egf=#qe$$jQwDWXdZO#;leFo&-SoA=;ZevK@GrKtG9w;H4BFcxtUm=A(S}P-pE( z1o}w)13Uwu$hEqYogM|euRtFOfE$sMo9bCGYJqME`89H~`$q{Ms%8AJVEf_X;GSD+ Z{{tV<+v*pNlpp{A002ovPDHLkV1l4n_ICgP literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/save.png b/ConfigFiles/QUI/icon/save.png new file mode 100644 index 0000000000000000000000000000000000000000..c50a714acad2ad3aeafde92544a2e33371f30e70 GIT binary patch literal 421 zcmV;W0b2fvP)2 zJ-v>u_U7jEIUL8qdcD5WTECPj!rJ~o%3`q)%d&*zLpEO{eW2g(BM1T@Iodlk)`$$l z0D#NZ1d3=~Ah#7~`K$Vi$U7C41j+{cNm=REx1bZ~1Ui9EAWz^kilW*R#c>P(Uu6V* z&-2m+wXj?+;kqsW_}OoJS26%lN{x|R9?olWct`SHcq%2(Bu80<|4ZN-)MHy)B55+e P00000NkvXXu0mjfLw&RN literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/saveAnimate.png b/ConfigFiles/QUI/icon/saveAnimate.png new file mode 100644 index 0000000000000000000000000000000000000000..3675dd8e809438ca79425dfa871704cf1437b2c0 GIT binary patch literal 823 zcmV-71IYY|P)k5a@xTDPT3S+m=xKjH2M@K< zd#jKB9jgF1@?<=zR|YVmA^=%ojciFlL}00CNeK`!Cu$Ar@oXx|0D43MKofrJFs%&X zXErUs2%DzZX88R+2JhWY844^c{O}9$Y+8W+i>dAS$+V%Ej3n9QfRJfYG@Y~k_lb(> z*VPcr*{|32c=itf8GxSh%^A%+rs4e65K8Y!=-^+-1O(;(4}Z{a<=V6DOri9?-Eh(ECBX74`0;mnkn1TcC!PYlJQt4e#SoUNr0+r?3A89kF~5a zUi;x`6#=4tCF8L|_QuzIv83EQN=|i>yS)J*=BbkbH2=>{K3e`1QP3HkD@8LBZ?pgi z{NeYJ_+UoNJy=lUm6EJkPP89OnSb=ajd$8cLC}{_*XF!<`YsV18wJ3t+5kpGz_lg+ z16sg>7O)VAsLcC<-0ZuW6tK3;jw`1qp%xl?*3)F`*XX$}I+9{^by#E}x5^AOKfxF;lj@w?MCWX7JR601ZtWhupPAE>tOk zs>oO@N>YF%Nqh?|;fYYotL0_98@xkQ)6fKwFV<{cEiYqaS?L>KPlv-15`?-a0M6En zmB28tqVYg8)+}pMfT~)#ef?Uh244fWfS%Y>@g4h-OIUH=6|w*T002ovPDHLkV1m!T Bcl-bV literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/saveAs.png b/ConfigFiles/QUI/icon/saveAs.png new file mode 100644 index 0000000000000000000000000000000000000000..6604ce79b652c83fdfc4d05fc4c518d6725f28e1 GIT binary patch literal 585 zcmV-P0=E5$P)d>L!ccD{uU25E1GgUf- zY*{27lHw>)kw8Zs1mjZa)}c$L!Z`-gb`jAAFCk8aK+WfHcaU6O+PmY-E&ape9pAh6 zzTbWKz3<&+RFyQ9P1XA~0B|E{uq+Fp25bR$Bd#|9TDEO(hn}ITGfhNl<#Jga$I+-7 zjYe83l~hDt2iINHOaQ;)IQKOkkF{E@s))Q7ky~*9VmtRWnM}0VY^sQ~L}YF00KVGo zw&wGB6_Jfp08~{wosJd?1r?D^6F^1-mC&**wQbv&u*F9A(uCftts3pUUXMzpg5x+Z zZQFiz)h1kFzKY0?pueRRqFgQquoASVUJ0)O=FS3>uF8Ic&Vl{C+Ug;21e|*I z`>_CE@fI`a0N5=yx?c=q-(mxV)F)sE2pzH{bKoGVb4V@%=eS{?ab9e6Ge8db4NO*^ zeVm(^R0Q?`(>u=so51Zw6O#fsTwwp}0ek>%nr=wy6&!i}#*|Hg3*3i%f(!W=`13yi z{C)oQl6%%Yh)2`LWmm$ppuq%iHW&<|F6>vhhg0nVa1Z$DjqL(Y!vM7E^*Y1hFbcrB z*Pl$aQ{X#p9=ru!c-J#BeGvg{PS;1~`WKl0FBpY^8o2rw;HB Xl~3)G>u8;900000NkvXXu0mjf;SvN+ literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/saveImage.png b/ConfigFiles/QUI/icon/saveImage.png new file mode 100644 index 0000000000000000000000000000000000000000..839f0afb9077915b4a28e407a6f3f5ba5ed0a930 GIT binary patch literal 736 zcmV<60w4W}P)DsD@&Zvz18jSDuLtr%zn3^B+z1)Os@9DTo5BuQF# zS*=#l>2yl5kkjdutX8YIHlN%pFy!Rq#NgrKhwr+|{(E~MQY{B0?hni`I5G81E97;`Vu&^d`9fF?eUx{54xJ5;NNDuL>v462JV!tzs8f&N!s>K;u{Q=GxQ zOBN38PNuPQQnnJ|Dl7nhK%%8rq<82u^_5xVS&{)LFGxqN5@;Woi5-Av&d-hZ4=nnE zG*p=}rfF7h7NE8?lcCXhUc8x$KEUho1!~*gb7b#Mu9TWc(EJ{*O;B;I%tUM7G~*wa zq6g6Z(nI58HnM(gT+KK^{I2-TT7=u$LIosQ*-Sd8y(AuAVXR z)b)j-vH8CTh(x+1HP_2bH1~*z9^d8z09cHPR2L_gP6vVDR(7z}OV@gENTDHtZTB8zm--*{ z(jQ0hta#b*Ztx~}@#49??Bu}Pb_i*p%0N(iFx?_TDinku?=C8uWL1fw8}iPkC!=}~l-3t&HL;$^uOP06V9R0o^layGiX33{wmC|2!v~ zl2|BCQOGCyLWcretB_An$R}`IkH(KP^t#Pz=`9n9mw{Zz_0a1!A7;kUYtx}Qp^9=E z7C-MrJ`E#n!}`i>l-Gg(eGm-+;sEG0o6T5^EXxA;<&XR4K&4zRZvv?p7*2qiKR6-%2o@f{=D0*ytjNv+%_3ErNw0R_=cg zNI-*yAC;)s1W7B}SSV^E7z7a!>{PT^wGzQ0Z2 z>u~1YJ5!4>+DvTQ)YG>J{0js|2AR}sHfy+wbDd77(x@F&ffG1W^p#>=0?lS~6f={P zlQ2`*e~$pB(=;8Qn3&LNwZ<`BB>^$UzAc0>mL$oyZnqm_jIrD8#w1Cy5W?76>;9yz zr@+N_yS=ksuY-EMuHA0$z~v2BAcW9J({w4zve=6(%VL_QOCf|t6$-4ChO_hY^CPWR zt88opvp71e0JZ=AF&d~6_QUZj?+@c9=5QY$@ulDVhZh>Z`G!^CL(!kc3p~Ol9Ko(Z zHW*3)e8yu;6?RgzMZ7_$AoUcb!8WV{%Xn7eAH^YgmMru;yb1#F67Nd<*RdDR*IGO* zf$jJtmwPo1V)uF*RF#HL)n+#6vov0fC0000T)jvp9Q5eVZ&%Ihv4Ov7(_7A0?Ar)*1!j=Z1`Ay1# zwk(=lYH^Atv$2MTz^FlohW-!@5;B4NeNZeZ7Spa1HnKall19DcLU~`y6ItPCL{W>IF2; z^m;UYis6zS>m@?LNjiGo7a6wv>X8DH_T0GDm~Lwkx3V@&^XKkOg#DHomD%6K=VT1M zxdE_KumxRMka;CDEVI4jHx)yh=>qNuNZr6eJVZ_Ed&##ehF-0J?ahO?;!0yS^-F3- zYDN$$;uMAI|7$k*Cb5W7e2P~3F@ocm6#OWinQp3%R2wn@U!*#407H0$Nj$(j$SmhR zMfI1^U1VCNqcST}&+$6{e@3K!Hi>ESO;aR|%AUnt%%Ltb*aX@LF9O$;naAgRbqo^{ z^?dVtGSf1h6}&w$v{u^clwe5aEsj||0neo7(1#EBh@B_AbdfTV!dFx>P)_^C9h)&S&)@dUW3?J z5H^aGBxQ$K3|3NJfFvu;Vl)|xd#9!`|J<4BZtkycr*nGlbH4q~^PH0^7K`FkSFF1y z00{uP8wI4(>1u6~%4V}|0f^m!1R!>RhDC@}CjnB)TM#!uGd1u>a~sc7*ue>o@QROG z@uzD;HFHIE;3XWFaDy|fV;X(`NfgNeyyG01a6TS>c|0H+LS3S6l}B};fU7F&y_m!d za*Z}`1psdGRAqe&gSc)cNmPIyyb0{C)CBsQP1I@|UI@-ThkJqLV>rfWCjq|806y`E zS!{;u1317)rvOU&65InTf_q>=Py+;Yu-^zGY8#eoRd5U?&4*(K!`Q0_(T=M)Uoro| xBDTZ%VZEQ*;XpMNu#8>Y)eB6X;{+gffL~xlLOtZAk+%Q<002ovPDHLkV1f&@q0j&T literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/selectOff.png b/ConfigFiles/QUI/icon/selectOff.png new file mode 100644 index 0000000000000000000000000000000000000000..318406ab10c57eb852d76a7aa1fe78fe447c4f3f GIT binary patch literal 999 zcmVLl3z&OWf;dl@B99avqezTkxSemC);dG?BC3}4nw!G zF@mCWNf$x1+6W4}$dRy%kfG^vkVzK_UCoP13R=amKge$^P4-W5^Uqm26UL-%bvQe} z-|u+drwfm!$HgxEUOn&g=fm?n@1u^lv}{ybk2uD#63wPkh_%HIP+eHKfz8E_tq3@B zW$tYi0P26Bvw!Z>yqs3E3u8l;V-M=t0fOw{tq|OoFoD$zO zif;~&R&5&+-&pZYOnkFSd^0mzwN1n~XT>*B@l7Ft$q~=E^Bia4j(p=Hs)y&t!>E~$5x0q=xd;B}w@7*FS%K6dW#NuU+Zi%k{Qd;rH1nM$$J9RDgp-X0W7+k^I!QY Vtf3$HYtR4y002ovPDHLkV1he3&#(Xh literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/setting.png b/ConfigFiles/QUI/icon/setting.png new file mode 100644 index 0000000000000000000000000000000000000000..9137485a24a4ef9cdd10bcefbe9f099c7e70677c GIT binary patch literal 583 zcmV-N0=WH&P)``4eJeAtY#PVI^lRA9*f`|-@$V*+rs>`eYikOe~ zfr#`ASOk`UE64Uz*H>UVb_OEQiHN*+PgZRiV?w$lGO!4&YF#`BT7XO7T)X)tyeWbYlg=0*=76={*%hd4L>Fp*g*GDK#;vOg09jDx?*o|w_zR0M VwYbuwQZfJl002ovPDHLkV1m;w0_^|* literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/sketchArc.png b/ConfigFiles/QUI/icon/sketchArc.png new file mode 100644 index 0000000000000000000000000000000000000000..1a8bbc2bf83289bb57542c7036579e13b1b06d74 GIT binary patch literal 399 zcmV;A0dW3_P)L(mhLCVHn2o-$@fwL=hYWJLn+dlqlAoWB$`~-(1gizdTQ{yto+R zmj+#UwYoPVEm>62AIB%D9bz)g!DYRzcXe-M3v=j6YxD-kIBw5hXRwVAac&(0NsV%` zcmUZ_p|XNW4B{L=Ft4$Oe-cDdWN7s8In6M>eVRCUo6qM#y$~Ve1CpSk{vy!8$U6F{kvq+(VDryXMDx$R*Ya1 zXP9c$2o^N{SLVe=r9uUE5Mr!UsJy(RQlS!I10PB8{7(=T#}8_M!%RD-TiH=H2%@fB tHq4>giqQjtD2h^F`m(eHH#m(`eYg0`QyzdI;yeHV002ovPDHLkV1gTZruP5< literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/sketchCircle.png b/ConfigFiles/QUI/icon/sketchCircle.png new file mode 100644 index 0000000000000000000000000000000000000000..0f8c35e99f89df23ac3a6fad2512d835a56a1900 GIT binary patch literal 471 zcmV;|0Vw{7P)D)W2#}Q4j|3-(D_m0_Fw8jgTsNgRqT%f>*J!&{&!+ zcJ1sH6tVCDY{b2YM6}UH(j^NCA^w3tDhpFtXb>MDV%BCY&e@`DZc#JFfRe9tGKHy#|g(1;2-lC1yDZ?Rt?(TY4mizzFce^%IY}MjRJ={Nv zB!P#xh-QX4oW`U7BoTd1VJ^cwo@4JAM0;4od@e}5kg{qQYlD>36)a;hM?>h512|0T z3cjI{p+908hhadF|GUt=2ck+yox&t`a%`f&yQ)QZ`CO_dRb0aR46o3_*a%Klj0t1( zGQ$dXaQ7HQcZAaPa-mo)e8eZb8Ij~VZlj4o77w>^6(t^E{0M^aXj4X?&-^?6>zEa~ zyoIM&71qcJoDnv}t(eYi3_z7=7+F&o#A|{O4g3}wZ$sD+J+Xg=_ydD+XQ%go+@Jse N002ovPDHLkV1i`S&5Hm4 literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/sketchLine.png b/ConfigFiles/QUI/icon/sketchLine.png new file mode 100644 index 0000000000000000000000000000000000000000..26224f211bac1abd86582670f5efcb5150b0e477 GIT binary patch literal 344 zcmV-e0jK_nP)5)4fYVQ5?qc&ow8Jf~JtbXmb!6Y;+yjD59j4M=X=iiMR6Pp(M`9zus`@p{7w-X zt(Ua{?dG4Ipqlt`A!z#?Z4~hEbkd1M`*=@UC5q!X2mv(=(Qh{gXN%6zfD)b&p@G@( z@dy+HPk)O89AlOq2np!m92a<79$a^cHQeDIy;T$P0!rv(jH|3kc?g-@ApyDEX{|z7 z%bnKNcDbxx9jRAGUOx^?7?>AJ3*T7_FHiUIA0dc4t%7-ZPBBfs=(RQ6%K;PYChfD` q9P~mLlkp0Re;yi8F)vMt-$=i&cSBtX7;WMJ0000T)3HmNK^VvJPbBan_8k-#H*x46Pzpr^QFMsVP3U5W zQmBo(wxb}nj^f}DF}T&ip&eWzIOtMnq3td%o!Y4`iP&_=>yRjK^r9)rcY5#M<9olm z=ebOhBsyhdeLaby2vn<8*^Z5P5XWB4&x7Ljww`WCZ<2X9{k>z!!pw0J$1y0E%iWRU zF*Y%Ja`>og$6rF>YH+Ji`P@-cCASVHGxrDwF^<KhFH<3;{gtv`USNz0t?BgpAQvdSU3T)Pt^c}u6Ql=?k4Z9d_%=N0@=Uzyf4fJJb z-KzREe8d=@;geJwHA&m-%NpkLxuZW(6kVhOtOTX4ECJ5ieHht5Uv^BkP@1^!ZC}%F ZfJ>lua+%&ve_j9p002ovPDHLkV1i?C!v_EW literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/sketchRectangle.png b/ConfigFiles/QUI/icon/sketchRectangle.png new file mode 100644 index 0000000000000000000000000000000000000000..ee19de65da759f0136a6a7024dbaf2719ebdcb9b GIT binary patch literal 231 zcmeAS@N?(olHy`uVBq!ia0vp^!a&T&!3HGHN~m`NDb50q$YP+_5fEmas?8@26rAbl z;uvDl`*yM+*C7W1*ZZdqnLT654C0vQyy24qTffMrioPv!3gH_%TGcy_PDsji;^<~H zzWprR`0$4xJoRTj-dS|@?I(_NmJBW|*5}wCY!%yf-e_GaXT$o}oZr~^xQY|+-B`M| z{>#hiclZ3aO6FfE7 b3_q9(gmuzqe!L_PbR>hPtDnm{r-UW|X)#xq literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/sketchSpline.png b/ConfigFiles/QUI/icon/sketchSpline.png new file mode 100644 index 0000000000000000000000000000000000000000..032266c0b412d1a7f52c580dac5904b6a988dec9 GIT binary patch literal 445 zcmV;u0Yd(XP)L)W2(!Q544UPhw~wZLNw!Q6n9s{+Of$N3nwMH6 zU~uby;OY`HOQQdP;Hu(~P8x6!=~4x;om7xgm4px--VS*U>GfWb_`rqx9?tW9&$%2< zA7|A(+`{>~#uKX)JR@pr);~Zx2 z6e~G=pZdL?NA33bUI^aoI663wK^|-3C7winJck{W@kg6=qZS7fu?^Jz(%CpSgx$pB zAodw260pPQ$6!nNfp39fCpX1(1iLZV1*5kKHN-*!b_`!)urqicG4ydT0XvDU6zoI9 z&_g8wTgJN>tcp(&!!8abU^Tpr!4~l~V)$h=0<%H9g0pxPgB``sLMeI#G?r9?eA$C3NAv3mu!mS~~+`0%!=ASgpD5|CDb(nE=*BM9I zB?Eu(cyE65o!{>}zd!FipHhn5lzqGE{eK`(;{}jXo&p{L2i-9Kx(3W2pSSDtrC}Js z;*(O!akLFgB7`{J($exNm&++Pc{BZ8U5LL^^D6~cjA@#xySrNnA!dXSYNH=l0zwE) zO8Fs^$#^=Sc>m26qm)vySWF2aR{Q(=RXG8lQx`}n>w%|QIC*lradnfhHqOw{P@%K4 zvo;cmAf?1G44-QXgb=kth_P5KR`H(?4-YFTrI|{lin=XRAcXJqj4RHLJ#s%>D>l|XqH`~k>jvjl@d+{9nkz@@w1RUePX357xoKF_;i zHnpK)7+V_Eqj}PO0Z->rN+T#D@~X`S4%#sRs_a?K_CrQr)c3MdNe-;Oab?9UT)HB zYkXb6nQ9Xl1A6snKIibR6)P&7zwx#s-52NuVjBS^XMvPbY2oBfoG$_q>_2yqS)kEg z&jCkgQWtf@FpBt15%Ah%$~K}AJ(_oOehAoDacc)q3BJ-IeCVP-2fPNJ01LoJpu-7R zX$`!v=e1n>fLA~OxCT7%GEgajX?sqvp6k>0`s;QKRGNZg4mv-exqVPx z^H{k~0*`^)z+o=~l@d5>&l#++Yglc0!q!jPL}u;LT5SSt>AryOpkD&610k&HZ?s3E z9Jr|nrIemtWvaM50(1d$S~%&n6Xt@P)_y7hhQ&|U+Mor}tEJ>mF0>K2Wv{%>Sl5lsqgbTTI5%R;bJG0BqzcaJL7)mL0 zVo9s@1py%A7laT6pax`9u+;}_Ddj^ztCSiI%d&dC52fOc(&dYai*~!MEX(To?J1?k zLXgJG0WeK7@_y|(Fc*QQlh;e2eC6sTkOclWfkh4^0qr5kgcaGek6z2Lrgj! zC5K`78xkRel2Xp}g8paxv&DUZl+y6)v?t+M2ogjWr~@rv=vMJp1R8(?Jcsm;;e%=9 zKm$0fRNZ%A4S2$9MoPdJ1QR&v9Oweh!1xND`%Rz#+(zAzbRnu&s;&#Hur|>^FCagyY*MVc(wrjvz0@fMf+FjhoxBvhE07*qoM6N<$f(Db(6951J literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/solve.png b/ConfigFiles/QUI/icon/solve.png new file mode 100644 index 0000000000000000000000000000000000000000..f54051e74b6d4723cc6b419e71ea6ed95158757a GIT binary patch literal 319 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz&H|6fVg?4jBOuH;Rhv&5DEQIS z#W5tJ^=-H#Uz34=Oi%v={R*Y0qH$jYP5&M0-q-A2@kw+^!3BAae@S~8A~z^>>a@0a zdd%{?H8Zb0@0FlnOw!YkS}wM0zDhiYWg9pe^cPHLzECK0U%Ra%YkrWH@v#XkJ%&rB zoZ2z(Eyo`P4i+toQPm6z;HF{qgM{+4~NfXL_e>D9ru*-{^vxiHmEU)C3Ld z_Rj+64m;f6&?z~=C7t8vxzmRHPX+cbTq|C4_u=o;$s6hd*4)3z?dGb_JgNMkjg~^^ zQfa-r7b-c_GZp+Nxwz=~1~XI?pPSaW_?i{d2Eh*>mL&jLrV)CLQz!7EU31g#A;+7Th1KobiS zD^0XguVBF@YOmB#z!kWGYvF8M2`lTr!o=6iyq%fvzM0H#q9jTDv??&&+lDGGu!Bhf zuX=iu4-I<2D(GwjrU(n|&N|GeqJ|u`T;~)CG?UxpQ{ign*e-s*h(l1mr z+1>hbA{O7(Y|<+3uwKyT>Q`z%3+>_B`&!TStx>m)#+XhDs5OU&n9ZMQ;o5JFx(z&{ zIUdyGT60+S`XqL~e5GzTj-L>Fd%b#?jtBMgO8&A!I>MmV9JbLGjv||M1+yiPS(ulm zjYHbAG-VcA#tAN$K(E5Q@?6?%tAx$)w`UwIf%XG14(p5u^%(s$CA=ic|u zC8fkk>vJ^wKLFrqyiip&1{?!ni{j^jgb*UrQX!@MT8g4PYnmplGELK@qA1UeIn2x4 zf^ak%wdmoY9;7l6K>ppA+VJpCWp+Y3+BQ-TZ9b((8>3Rs$S9vm`)R8t4^szZR%--3Ost05IArx$OX*nC-{$&1Pq zO;hK(;Lo2M?*DcDuJ8T7es?0**k({9@DQeB9X8`{yoN8a2R()n<>#$iFbS)$12@Dy zXYoobJRf^6w?HCxa6cwT)w}W6h4$h_Jc+3&3Ef>XlIi*-3-AHnK^q>#(>Q~Dco}^- zj`jF3cF}?cBylQ=ycty(jYYVv9FGayzsKj!MRdJ@sLKGNNAVF3VBG=f~g12H@PSmB|sK^wSRX6-BedS@$b!@ETyKmK79K9l!?_M6exibnV z;M-VmFrw!NBhs(DqUzMf@r!qeDN}1qMMg)us5oh|qn$rEG;l8et3V==AYGP}O;#FHk#WM7d>R&}Y?Q+r0v>uM?~lzMdZ7C}dEQK8i1Xubwo&-rGU9jxqFS39r1;jq2s z1&~b^6iPjI>_6y_-zLJ!;dGEp*DqO%BRH5Ymi8B=Qb%@IQX>|2Dv`XZO_UVcJqOZ)1pmbP5FtcN-)JH+~UHP@*hNNuoEBS1-y@1 z!Sj>I;5xxkR|&?q2;C9UTpWwb)je<1P!z`T|G6)|an+#%V#^533=HrESokIgIF3j-TS6o|xBwKB9c&I?Iw=U#@SZPLV5i0N4@on!y}=<3LpYmE<- z)P*eTzEnz|15x8%fB>LDA`uJ-;~s#3SP}ir%oAJ9-ODywd19@*B%)UYkwZ9)5G9C4 z5Js~wLXjft``_D*D^qZ~pNLZWhK*JqTk9@rW5$V&OC~Ny6A?lP^gAt|G``q=JLL#& zCcmt<(cQ?oTh_TXrS-IUN(Jxf9vrZ{^+^r00l)}u@1^H$RNIVVcilMaL>4v~<^^ez zkZgUP>YMh@_Ej6Z*Vfs(jS2j7e*&*@B1tY zU_znlz)~mx!})C!3f%?VvTi8K;9QlwbHOTueW4a#fjMye8n?9xo*nDg)e#=|245PaVE0*wDaQ5^XgmCJ4PXXkZ#_52w?KGRtfg4 zfS5S*rgs0&o7;~L`=&^j{!9QAzN55?;(NV!>l>2;Q?y(U7y$ksK*i`k_mRQc+y49Y cXD4s?3tb$w%FjudD*ylh07*qoM6N<$f}&yeDgXcg literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/surfaceMesh.png b/ConfigFiles/QUI/icon/surfaceMesh.png new file mode 100644 index 0000000000000000000000000000000000000000..d7fab50e966b046ba766ba7264b0a6dcf196107d GIT binary patch literal 1487 zcmV;=1u*)FP)`s(|2s?p{D1 z9El<{4ta>0d)KP~Y7GWM>Zk;A^6LOFmgP+oMe*p49Xof$t$?vCPb&z*&)c_eSC0(tbV+=3ywx4l zL6@x`O_UN%q=+U`$^0o{Xd(yx2Z}NZ3JPd3NAxXNvN8T_`InwG^0fX?Zu zMjN;9_A@y?h-u@4nW_n5swRlgAUOb~rKJ=W?smPq?S1jP`cM+01HF8C5YXv#0t=FNVyQpg3~TpAC+-5w_m#vZOT+bI9FoyL|PBEl4?nLvzNP2Dg>G=y?$-3 z-0H#5*o~<0F7F_&ntDm{QvtsO?0qguD$TsLR6~Q&# zTJ1g;;HU%+*R(T58^o-{5MD};rlivBW%EmY7o9dIo0i03?ds=`8~40ynk>C&qm+mN z0!FL-;Rv*K_Hpb&2QO#E0PtjriY}Xzi`VW4=yOVxR9aY@9fKGkV^xNlk`oq2c9k1u zJCou9IdZOp_w-H3162X_sulJ=skr*jJ8hq=O~l#T=@HAT5!Kza(QwPg8_&mi$Y)Os z;c$(dQ-5_bdr~N+XRUm+dcvT(Qh=R#nbGB6SD5&?)QC1$PfmW_Rp2Uc;NX_&IbwjY z3CQwWf#C5A*n8YeUS>2(g?Dk*WX14pwFP~Zg|r#rBt$C#DuJyz`E}*n^i8z1JBANg z4730(%M0oqz*e{Y5IoL;#c!8OV#H*xz@wlIcnv7`qi+EQOKAe)jb(W`27_V9-eU@^ z=e}UZvLZfMl`xo{2b?a6^*bAJ^h*?NnoN)=JCc)M=P!6TFnq-gHVO}Wk2<^T-Kd;f@cGlfKz}OXa-*OW#~20Pd_$}ewRe$#XBDI zPMedmns(M?#qdgYEGI7Bp~+&u;8qXLwF#&I_5vH+@>oFYmLravI647AfY+akLtkZ~ zyT>^s*H@W&X3jX&Dg}{Y0W5zailQG)O>T8D19Ketf ze5m_fZ|&vM^?SUqAaclN$-D@MfdYqMkc>`*gEkd_?oWs{N+@|63v zf`KW}GO#VDyXBYNL|WX>;)f;xFmFm2T{b6KvsL&xY?toXFe%4}+zM<2G8kC>aqg#h zq@k}n;n2GvSD;jNk97=W p?gZA4RQkM@|Cbo^Z^JPs@HhLiL;VCKb&UW3002ovPDHLkV1ko=#nb=* literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/surfaceWithEdge.png b/ConfigFiles/QUI/icon/surfaceWithEdge.png new file mode 100644 index 0000000000000000000000000000000000000000..b351f43fe8e5016004f3cc1cb72e6b57a8a09ef0 GIT binary patch literal 609 zcmV-n0-pVeP)bl)Y+!aVtVyq?Kx75|jIJ&g+n-ABm(%)ZcXB$9e8^ zUS5uzo&P|0jxKE%8cP#v#Aeo%6hs9T?erolAg24As;X~zIJ_9&j9(WY6|cMT+yyoCXYMB1Zc%+= zg4(Gyl9QVhSLad-Ft%8qOy1^~b<19xyz2_)m>$OJT%G1di~7@mpXWZ3P5l7Z?yMZq zd-1cveT*C*n|DF-Nf^Xby^_=uTJH_j^Q*Y=#x4}VYE2%7mz)zLLHcE|tAmn#6Vk7i zO8Ff=7axEESb+4(_rdPIKc6GAN{kC)$a-rFpqWWJ-vh@PPkH#XmPD6YxOV7d-ro#SLKWM>5{oioV7pZH1uzKg?Ji?NM|Y z8_fZn-WkR4#wOFAbu;9(w0XG(JopP^Mf{$zA+M$Fa>cml7O*n%R%qtIgEk?MyiV83 zRnhQvkc2DHd4#I@p~2F~uqjAArzKaeBH@BfqnDlD0%X-(G%Pr13Zb)1Cs!+oy%YNA v#s1y`%xr88_p5)m>=KaU93-*ZDi!j0tNr$<>NPh>!~_g+wlvw%oW- zlc!R_sn5;VrJ93&)Tso%A`BI=eS!J7fX-sjxNzhuVhp_=S zFfJEbUDCB3z17je!CTVWrEQBh3_Qj&Y(^tma2<7onD!x72pH8R?u>L)Esr<$m#at- zG2B|SB+H~1C-F1G+mqW-qoMWRS4Ojj8K3$ahT7!k^!u`Gvn0--0{bEy!ckP_gC^Uj z{sksuMs7|@`Wfpf;KMJ>i_j{RRUMWU@;KF9A^k1tOg*Y>OZUdt7dhOQIC`*E=XX`N2;{ZdWBn?oI479BY<{JuL!+ciA!R7g}{bc48tb6Z>a~ZyH$PNAyI9T`8@} zO;kb{b6;^arZBBasRl1&>2%(qp5506uoT-cpzxq> z6b5@^(P@*>5i|&W{u~Q()*EmlvsRD0V}TOxsN)%LKcNllFilA6Rbk$~V)PwVN*$R! gokAivV{NX{Z-B>`W3%v6I{*Lx07*qoM6N<$f+&0~7XSbN literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/tempure.png b/ConfigFiles/QUI/icon/tempure.png new file mode 100644 index 0000000000000000000000000000000000000000..a5f8b0b7e084c6e0339f7f26c3d65dadf7f9aca3 GIT binary patch literal 489 zcmV-VuQ51&ZXR|X|6{8Em7!)Hyj45IeyEH*!ECsQ# zQ7gex0*Yv1tBHlIUHTOMfLPdwSfn?x5k!cHLQo>h8qIFD$ZRY!8^@VR^uWNq=bra` z_q&`a42;i-V<#qY2~9l3&FWBjRVq3X>w7qaL7YHe+$0l)gi;OtsK)zle5?+Y%UEyM zLy%}tP5|Qd-ehq*lF){+%EAL!z1BaGNUtYrGEl1-9L=+_Efh7v9A;}z8_-H;9<;sE z+OHBQ<|}OhE$2f2P+HyrN^$e}F+Q8=-Tmb*UQ7MK0iIx_t5loqD%Eb|R(v*w*%*49hF}8ca2=20 f+#B4%^R&(1`nh*!5U+S@00000NkvXXu0mjf_}Jg+ literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/userguidance.png b/ConfigFiles/QUI/icon/userguidance.png new file mode 100644 index 0000000000000000000000000000000000000000..a93ad63033263da26630619bbc69e55aa547e1c3 GIT binary patch literal 470 zcmV;{0V)28P)lIcN|Ns9-!G29w|5FS6{Qd9$ zvIDRFhqPV$@7Hv-0^P3v|Nqn00Wk3D!>|8cYaajiYq~lO-9Eac0a1QdhSFde1_mrq zi;)Xx0p5T4!!U36O9lo=dZ3>J{`~#Vu<_(uhE<2(F#P!SuWndUnC{h|ZOb`rc%Z3EOXh}#7fDr}60%K!i1_lO((I^=D4j?-XPzwxr2n@Ib020Gl8@j5mrT_o{ M07*qoM6N<$f{S9#H2?qr literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/vector.png b/ConfigFiles/QUI/icon/vector.png new file mode 100644 index 0000000000000000000000000000000000000000..4ec040bd7c66528fd7ebdd977d1a8a8af7222243 GIT binary patch literal 1047 zcmV+y1nB#TP)(R5*>Dm2YU(RT#%V=XcI=xFu9%!fbBS!lYVLU(B_wgdj^u zszo`FYW_)lGi6>jEjB`uvTZhnsJYB2rDd(caNvtx_@@m+St?Q*nzAV@A^%|a?*7iX z=k&tg=63I0MbDe(cb@NaKIg}C&U23N-t%8= z+tc)~Rv$Z`=WVdt+n{!|=4~x4<91YOJp>FHYf6j?(AJ@q&S)58jUS_*1g2SIre&06 zU-@*ps|rS9XMr-Uw8%wX(@L*S2LouOUypPFEC7B3=&mXlWo0|(yMW>7I}f;-4G#PT z+!1{zfKSsC6foKtku3+hq6uRG={9!Z$v`dKYP1mx>SHmXv=&XhwMTje%U=cV2aXzR ze4Nys#+r_7WMj>aNcX@|VAkP#ieLM1=Dc2|wWyE9#O>3PRQvlb%$WWut;^v`d@)RN&=|KO{RF^$N;&?6u=tb zBjDS}uSwHu+9sDJypc6NlzTGZEzj;8a7p>OOR9DNt(3USiejyl12zJ810wPpwNft9 z1%MA#y9?!K>;61GkO2p9p=@%YoZYa0MROFo0PF=e15={dlxVy+(%CY+u-S!jwoA(9 zvAm31QCB3V3gr$6ojMh0w|>jhyEJgj8k0XZPidY1_T^`c$Vs&YI#nXHd+PFrl5w|U z#yK}X=3H^1tn{I}=92PkL(lSt?|xa(2)7z!U-@(Z-um_VhSab=>k{g^8&(zR;H+=} z+czoRTHUeMg>s$?1KIqEP)L)O~2xRUF6h*IjchG?pFGEX#tJ6+**GtSD9+#8y!Q z7nnu#fFwb1D0+|{2ARR4PS9T!^h7Np1tTkR#V8r1wH_(xj~+}csSYwNYi;fJ$NgP* znY)Sg`SYCfeV_07e81mQYV90RM^|D~z0E_ZafY>{@tDPbb?f}?HBIG>#RU_Xhh?}5 zUH&Y6X{=$;{?e!N5#Jh`eY=U$ZY*t>20ah&;7#58PS#ZJ$5M>o1zd=2QdouKHJ8_E z`Fp+v6Mb^yc1y;t#XT4=6;?Fj0W5dpo<&+F_u+LsA%!gF63#^rmg6K$9!O_!PP5U5 zJ$BA&Lm8VJu^7+d4P5G(xszf(4%c8r%$x8sK9<7v8LWE*^KnA~1*O)`k@5_O4@Vm; z9ABw-Z^YerUkbCT#Vh?sXc?>Y?oBuwORyg=9o!W$AB7H_f*&v_g+J<|V}4krz+F-p ztu8mz9GD~Ke*B1A3-C?&TFkeIxp5k>8hbIiF)rpIF>j^X$1%^vR(ymrq_DdNa3Ai0#e5f*Nnu4D59_Hc<`!(hD^f^k!3R~3yRfFlw_{a) zvJ>zVhNbXJ9rzI5tATF7{nfvsQ~*!IIu+mE#ZHx;Z7(bt!gpvwyA*oFe4P|ttbwk_ z(9|@=yc%oKhwG&8OKbAGWA!i#?^-j kt?D4?RL1{LmrRGkKV#kcl}3(zga7~l07*qoM6N<$f+{&{IsgCw literal 0 HcmV?d00001 diff --git a/ConfigFiles/QUI/icon/water_drop.gif b/ConfigFiles/QUI/icon/water_drop.gif new file mode 100644 index 0000000000000000000000000000000000000000..67753a91a33bfea41c5a78fedd99452ee1577025 GIT binary patch literal 90736 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%0D4osJ^iXA8rDZpi{ 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