diff --git a/.gitignore b/.gitignore
index 767c89c4..5bfa3546 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,29 +1,49 @@
-/*.scad
*.dmg
*~
*.tar*
+*.new
Makefile
objects
.gdbinit
-/*.stl
-/*.dxf
-/lexer_lex.cpp
-/parser_yacc.cpp
+.qmake.stash
parser_yacc.h
-/tmp
-/OpenSCAD.app
-*/#*#
-/locale/*/*/*.mo
-/locale/POTFILES
-/nbproject
-/openscad.pro.user
-/openscad
-/tests/openscad_nogui
+**/#*#
testdata/scad/features/import_dxf-tests.scad
testdata/scad/features/import_stl-tests.scad
testdata/scad/misc/include-tests.scad
testdata/scad/misc/use-tests.scad
-/mingw32
-/mingw64
**/project.xcworkspace
**/xcuserdata
+/*.scad
+/*.stl
+/*.dxf
+/*.off
+/*.amf
+/*.png
+/*.csg
+/*.nef3
+/*.blend
+/*.obj
+/*.rcad
+/*.xml
+/*.dat
+/*.gcode
+/*.py
+/*.svg
+/*.h
+/*.dump
+/*.pl
+/lexer_lex.cpp
+/parser_yacc.cpp
+/OpenSCAD.app
+/openscad.pro.user
+/openscad
+/locale/*/*/*.mo
+/locale/POTFILES
+/tmp
+/nbproject
+/mingw32
+/mingw64
+src/*.org
+src/*.old
+src/*.debug
\ No newline at end of file
diff --git a/Arrowhead-Right-32.png b/Arrowhead-Right-32.png
deleted file mode 100644
index 42dd282b..00000000
Binary files a/Arrowhead-Right-32.png and /dev/null differ
diff --git a/Document-New-128.png b/Document-New-128.png
deleted file mode 100644
index 7225b928..00000000
Binary files a/Document-New-128.png and /dev/null differ
diff --git a/Open-128.png b/Open-128.png
deleted file mode 100644
index c552c697..00000000
Binary files a/Open-128.png and /dev/null differ
diff --git a/README.md b/README.md
index 97d6c9e7..11ec3b3e 100644
--- a/README.md
+++ b/README.md
@@ -88,24 +88,23 @@ libraries from aptitude. If you're using Mac, or an older Linux/BSD, there
are build scripts that download and compile the libraries from source.
Follow the instructions for the platform you're compiling on below.
-* [Qt4 (4.4 - 5.3)](http://www.qt.nokia.com/)
-* [QScintilla2 (2.7)](http://www.riverbankcomputing.co.uk/software/qscintilla/)
-* [CGAL (3.6 - 4.4)](http://www.cgal.org/)
+* [Qt4 (4.4 - 5.4)](http://www.qt.nokia.com/)
+* [QScintilla2 (2.7 - 2.8)](http://www.riverbankcomputing.co.uk/software/qscintilla/)
+* [CGAL (3.6 - 4.5)](http://www.cgal.org/)
* [GMP (5.x)](http://www.gmplib.org/)
* [MPFR (3.x)](http://www.mpfr.org/)
-* [cmake (2.8, required by CGAL and the test framework)](http://www.cmake.org/)
-* [boost (1.35 - 1.55)](http://www.boost.org/)
+* [cmake (2.8 - 3.0, required by CGAL and the test framework)](http://www.cmake.org/)
+* [boost (1.35 - 1.57)](http://www.boost.org/)
* [OpenCSG (1.3.2 ->)](http://www.opencsg.org/)
* [GLEW (1.5.4 ->)](http://glew.sourceforge.net/)
* [Eigen (3.x)](http://eigen.tuxfamily.org/)
* [glib2 (2.x)](https://developer.gnome.org/glib/)
-* [fontconfig (2.10)](http://fontconfig.org/)
-* [freetype2 (2.4)](http://freetype.org/)
-* [harfbuzz (0.9.19)](http://harfbuzz.org/)
-* [GCC C++ Compiler (4.2 ->)](http://gcc.gnu.org/)
-* [Bison (2.4)](http://www.gnu.org/software/bison/)
-* [Flex (2.5.35)](http://flex.sourceforge.net/)
-* [pkg-config (0.26)](http://www.freedesktop.org/wiki/Software/pkg-config/)
+* [fontconfig (2.10 -> )](http://fontconfig.org/)
+* [freetype2 (2.4 -> )](http://freetype.org/)
+* [harfbuzz (0.9.19 -> )](http://harfbuzz.org/)
+* [Bison (2.4 -> )](http://www.gnu.org/software/bison/)
+* [Flex (2.5.35 -> )](http://flex.sourceforge.net/)
+* [pkg-config (0.26 -> )](http://www.freedesktop.org/wiki/Software/pkg-config/)
### Getting the source code
@@ -123,29 +122,41 @@ To pull the MCAD library (http://reprap.org/wiki/MCAD), do the following:
### Building for Mac OS X
Prerequisites:
-* XCode, including XCode command-line tools (install from XCode Preferences).
-Prerequisites that can be installed through MacPorts/homebrew:
-* [CMake](http://cmake.org/)
-* [automake](http://www.gnu.org/software/automake/)
-* [pkg-config](http://www.freedesktop.org/wiki/Software/pkg-config/)
-* [libtool](https://www.gnu.org/software/libtool/)
+* XCode, including XCode command-line tools.
-Then after you've cloned this git repository, run the script that sets up the
-environment variables.
+Install Dependencies:
- source setenv_mac-qt5.sh
+Run the script that sets up the environment variables:
+ ```source setenv_mac-qt5.sh```
-Then run the script to compile all the prerequisite libraries above:
+Then run the script to compile all the dependencies:
+ ```./scripts/macosx-build-dependencies.sh```
- ./scripts/macosx-build-dependencies.sh
-You can also install the prerequisites using
-[MacPorts](http://www.macports.org). Unfortunately,
-[brew](http://mxcl.github.com/homebrew/) doesn't yet support CGAL and
-OpenCSG.
+After building dependencies, follow the instructions in the *Compilation* section.
+
+For the adventurous, it might be possible to build OpenSCAD using _MacPorts_ or _Homebrew_. The main challenge is that both these systems have partially broken libraries, but that tends to change from time to time.
+
+1. **MacPorts** (assumes [MacPorts](http://macports.org) is already installed)
+
+ NB! MacPorts currently doesn't support Qt5 very well, so using Qt4
+ is the only working option at the moment. However, MacPorts' Qt4
+ has a broken ```moc``` command, causing OpenSCAD compilation to
+ break. This may be fixed in MacPorts by the time you read this.
+
+ ```sudo port install opencsg qscintilla boost cgal pkgconfig eigen3 harfbuzz fontconfig```
+
+1. **Homebrew** (assumes [Homebrew](http://brew.sh)) is already installed)
+
+ NB! Homebrew's ```qscintilla2``` component doesn't support Qt5, so using Qt4 is currently necessary.
+ However, Homebrew's Qt4 has a broken ```moc``` command, causing OpenSCAD compilation to
+ break. This may be fixed in Homebrew by the time you read this.
+ NB! Homebrew's ```harfbuzz``` package requires X11, so you may have to install an X11 server.
+ NB! Homebrew doesnt have an OpenCSG package
+
+ ```brew install cgal qscintilla2 eigen harfbuzz```
-After that, follow the Compilation instructions below.
### Building for Linux/BSD
@@ -220,9 +231,9 @@ For a 64-bit Windows cross-build, replace 32 with 64 in the above instructions.
### Compilation
-First, run 'qmake openscad.pro' from Qt4 to generate a Makefile. On some systems
-you need to run 'qmake4', 'qmake-qt4' or something alike to run the qt4 version
-of the tool.
+First, run 'qmake openscad.pro' from Qt4 to generate a Makefile.
+
+On some systems, depending on which version(s) of Qt you have installed, you may need to specify which version you want to use, e.g. by running 'qmake4', 'qmake-qt4' or something alike.
Then run make. Finally you might run 'make install' as root or simply copy the
'openscad' binary (OpenSCAD.app on Mac OS X) to the bin directory of your choice.
diff --git a/Save-128.png b/Save-128.png
deleted file mode 100644
index f56c70b1..00000000
Binary files a/Save-128.png and /dev/null differ
diff --git a/appcast-snapshots.xml.in b/appcast-snapshots.xml.in
index bf167139..fa076e20 100644
--- a/appcast-snapshots.xml.in
+++ b/appcast-snapshots.xml.in
@@ -7,9 +7,9 @@
-
OpenSCAD @VERSION@
@VERSIONDATE@
- https://raw.github.com/openscad/openscad/master/RELEASE_NOTES
+ https://raw.github.com/openscad/openscad/master/releases/2014.QX.md
10.7.0
-
+#include
+#include
+#include
+#include
+#include
+
+#include "cgalutils.h"
+#include "export.h"
+#include "polyset.h"
+#include "CGAL_Nef_polyhedron.h"
+#include "boosty.h"
+
+#include
+
+using namespace CGALUtils;
+
+#define STL_FACET_NUMBYTES 4*3*4+2
+// as there is no 'float32_t' standard, we assume the systems 'float'
+// is a 'binary32' aka 'single' standard IEEE 32-bit floating point type
+union stl_facet {
+ uint8_t data8[ STL_FACET_NUMBYTES ];
+ uint32_t data32[4*3];
+ struct facet_data {
+ float i, j, k;
+ float x1, y1, z1;
+ float x2, y2, z2;
+ float x3, y3, z3;
+ uint16_t attribute_byte_count;
+ } data;
+};
+
+void uint32_byte_swap( uint32_t &x )
+{
+#if __GNUC__ >= 4 && __GNUC_MINOR__ >= 3
+ x = __builtin_bswap32( x );
+#elif defined(__clang__)
+ x = __builtin_bswap32( x );
+#elif defined(_MSC_VER)
+ x = _byteswap_ulong( x );
+#else
+ uint32_t b1 = ( 0x000000FF & x ) << 24;
+ uint32_t b2 = ( 0x0000FF00 & x ) << 8;
+ uint32_t b3 = ( 0x00FF0000 & x ) >> 8;
+ uint32_t b4 = ( 0xFF000000 & x ) >> 24;
+ x = b1 | b2 | b3 | b4;
+#endif
+}
+
+void read_stl_facet( std::ifstream &f, stl_facet &facet )
+{
+ f.read( (char*)facet.data8, STL_FACET_NUMBYTES );
+#ifdef BOOST_BIG_ENDIAN
+ for ( int i = 0; i < 12; i++ ) {
+ uint32_byte_swap( facet.data32[ i ] );
+ }
+ // we ignore attribute byte count
+#endif
+}
+
+PolySet *import_stl(const std::string &filename)
+{
+ PolySet *p = new PolySet(3);
+
+ // Open file and position at the end
+ std::ifstream f(filename.c_str(), std::ios::in | std::ios::binary | std::ios::ate);
+ if (!f.good()) {
+ PRINTB("WARNING: Can't open import file '%s'.", filename);
+ return NULL;
+ }
+
+ boost::regex ex_sfe("solid|facet|endloop");
+ boost::regex ex_outer("outer loop");
+ boost::regex ex_vertex("vertex");
+ boost::regex ex_vertices("\\s*vertex\\s+([^\\s]+)\\s+([^\\s]+)\\s+([^\\s]+)");
+
+ bool binary = false;
+ std::streampos file_size = f.tellg();
+ f.seekg(80);
+ if (f.good() && !f.eof()) {
+ uint32_t facenum = 0;
+ f.read((char *)&facenum, sizeof(uint32_t));
+#ifdef BOOST_BIG_ENDIAN
+ uint32_byte_swap( facenum );
+#endif
+ if (file_size == static_cast(80 + 4 + 50*facenum)) {
+ binary = true;
+ }
+ }
+ f.seekg(0);
+
+ char data[5];
+ f.read(data, 5);
+ if (!binary && !f.eof() && f.good() && !memcmp(data, "solid", 5)) {
+ int i = 0;
+ double vdata[3][3];
+ std::string line;
+ std::getline(f, line);
+ while (!f.eof()) {
+ std::getline(f, line);
+ boost::trim(line);
+ if (boost::regex_search(line, ex_sfe)) {
+ continue;
+ }
+ if (boost::regex_search(line, ex_outer)) {
+ i = 0;
+ continue;
+ }
+ boost::smatch results;
+ if (boost::regex_search(line, results, ex_vertices)) {
+ try {
+ for (int v=0;v<3;v++) {
+ vdata[i][v] = boost::lexical_cast(results[v+1]);
+ }
+ }
+ catch (const boost::bad_lexical_cast &blc) {
+ PRINTB("WARNING: Can't parse vertex line '%s'.", line);
+ i = 10;
+ continue;
+ }
+ if (++i == 3) {
+ p->append_poly();
+ p->append_vertex(vdata[0][0], vdata[0][1], vdata[0][2]);
+ p->append_vertex(vdata[1][0], vdata[1][1], vdata[1][2]);
+ p->append_vertex(vdata[2][0], vdata[2][1], vdata[2][2]);
+ }
+ }
+ }
+ }
+ else if (binary && !f.eof() && f.good())
+ {
+ f.ignore(80-5+4);
+ while (1) {
+ stl_facet facet;
+ read_stl_facet( f, facet );
+ if (f.eof()) break;
+ p->append_poly();
+ p->append_vertex(facet.data.x1, facet.data.y1, facet.data.z1);
+ p->append_vertex(facet.data.x2, facet.data.y2, facet.data.z2);
+ p->append_vertex(facet.data.x3, facet.data.y3, facet.data.z3);
+ }
+ }
+ return p;
+}
+
+int main(int argc, char *argv[])
+{
+
+ OpenSCAD::debug = "export_nef";
+ CGAL_Nef_polyhedron *N = NULL;
+
+ PolySet *ps = NULL;
+ if (argc == 2) {
+ std::string filename(argv[1]);
+ std::string suffix = boosty::extension_str(filename);
+ boost::algorithm::to_lower(suffix);
+ if (suffix == ".stl") {
+ if (!(ps = import_stl(filename))) {
+ std::cerr << "Error importing STL " << argv[1] << std::endl;
+ exit(1);
+ }
+ std::cerr << "Imported " << ps->numPolygons() << " polygons" << std::endl;
+ }
+ else if (suffix == ".nef3") {
+ N = new CGAL_Nef_polyhedron(new CGAL_Nef_polyhedron3);
+ std::ifstream stream(filename.c_str());
+ stream >> *N->p3;
+ std::cerr << "Imported Nef polyhedron" << std::endl;
+ }
+ }
+ else {
+ std::cerr << "Usage: " << argv[0] << " " << std::endl;
+ exit(1);
+ }
+
+ if (ps && !N) N = createNefPolyhedronFromGeometry(*ps);
+
+ export_stl(N, std::cout);
+ std::cerr << "Done." << std::endl;
+}
diff --git a/cgal/export_nef.pro b/cgal/export_nef.pro
new file mode 100644
index 00000000..6f6becbb
--- /dev/null
+++ b/cgal/export_nef.pro
@@ -0,0 +1,109 @@
+CONFIG += debug
+CONFIG -= qt
+debug: DEFINES += DEBUG
+
+TEMPLATE = app
+
+INCLUDEPATH += ../src
+DEPENDPATH += ../src
+
+# Handle custom library location.
+# Used when manually installing 3rd party libraries
+isEmpty(OPENSCAD_LIBDIR) OPENSCAD_LIBDIR = $$(OPENSCAD_LIBRARIES)
+macx:isEmpty(OPENSCAD_LIBDIR) {
+ exists(/opt/local):exists(/usr/local/Cellar) {
+ error("It seems you might have libraries in both /opt/local and /usr/local. Please specify which one to use with qmake OPENSCAD_LIBDIR=")
+ } else {
+ exists(/opt/local) {
+ #Default to MacPorts on Mac OS X
+ message("Automatically searching for libraries in /opt/local. To override, use qmake OPENSCAD_LIBDIR=")
+ OPENSCAD_LIBDIR = /opt/local
+ } else:exists(/usr/local/Cellar) {
+ message("Automatically searching for libraries in /usr/local. To override, use qmake OPENSCAD_LIBDIR=")
+ OPENSCAD_LIBDIR = /usr/local
+ }
+ }
+}
+!isEmpty(OPENSCAD_LIBDIR) {
+ QMAKE_INCDIR = $$OPENSCAD_LIBDIR/include
+ QMAKE_LIBDIR = $$OPENSCAD_LIBDIR/lib
+}
+
+TARGET = export_nef
+mac {
+ CONFIG -= app_bundle
+}
+
+macx {
+ # Mac needs special care to link against the correct C++ library
+ # We attempt to auto-detect it by inspecting Boost
+ dirs = $${BOOSTDIR} $${QMAKE_LIBDIR}
+ for(dir, dirs) {
+ system(grep -q __112basic_string $${dir}/libboost_thread* >& /dev/null) {
+ message("Detected libc++-linked boost in $${dir}")
+ CONFIG += libc++
+ }
+ }
+
+ libc++ {
+ QMAKE_CXXFLAGS += -stdlib=libc++
+ QMAKE_LFLAGS += -stdlib=libc++
+ QMAKE_OBJECTIVE_CFLAGS += -stdlib=libc++
+ # libc++ on requires Mac OS X 10.7+
+ QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.7
+ }
+}
+
+# See Dec 2011 OpenSCAD mailing list, re: CGAL/GCC bugs.
+*g++* {
+ QMAKE_CXXFLAGS *= -fno-strict-aliasing
+ QMAKE_CXXFLAGS_WARN_ON += -Wno-unused-local-typedefs # ignored before 4.8
+}
+
+*clang* {
+ # http://llvm.org/bugs/show_bug.cgi?id=9182
+ QMAKE_CXXFLAGS_WARN_ON += -Wno-overloaded-virtual
+ # disable enormous amount of warnings about CGAL / boost / etc
+ QMAKE_CXXFLAGS_WARN_ON += -Wno-unused-parameter
+ QMAKE_CXXFLAGS_WARN_ON += -Wno-unused-variable
+ QMAKE_CXXFLAGS_WARN_ON += -Wno-unused-function
+ QMAKE_CXXFLAGS_WARN_ON += -Wno-c++11-extensions
+ # might want to actually turn this on once in a while
+ QMAKE_CXXFLAGS_WARN_ON += -Wno-sign-compare
+}
+
+# Application configuration
+CONFIG += cgal
+CONFIG += boost
+CONFIG += eigen
+CONFIG += gettext
+
+mac: {
+ LIBS += -framework OpenGL
+}
+
+include(../common.pri)
+
+HEADERS += ../src/cgal.h \
+ ../src/cgalutils.h \
+ ../src/linalg.h \
+ ../src/polyset.h \
+ ../src/polyset-utils.h \
+ ../src/printutils.h
+
+SOURCES += export_nef.cpp \
+ ../src/polygon2d.cc \
+ ../src/polygon2d-CGAL.cc \
+ ../src/CGAL_Nef_polyhedron.cc \
+ ../src/CGAL_Nef_polyhedron_DxfData.cc \
+ ../src/cgalutils.cc \
+ ../src/cgalutils-tess.cc \
+ ../src/cgalutils-polyhedron.cc \
+ ../src/polyset.cc \
+ ../src/svg.cc \
+ ../src/node.cc \
+ ../src/export.cc \
+ ../src/polyset-utils.cc \
+ ../src/progress.cc \
+ ../src/printutils.cc \
+ ../src/grid.cc
diff --git a/cgal/polyhole-tessellator-libtess2.cpp b/cgal/polyhole-tessellator-libtess2.cpp
new file mode 100644
index 00000000..f0ef286b
--- /dev/null
+++ b/cgal/polyhole-tessellator-libtess2.cpp
@@ -0,0 +1,159 @@
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+
+#include "GeometryUtils.h"
+#include "Reindexer.h"
+#include "linalg.h"
+#include "grid.h"
+#include "printutils.h"
+
+static void export_stl(const IndexedTriangleMesh &trimesh, std::ostream &output)
+{
+ setlocale(LC_NUMERIC, "C"); // Ensure radix is . (not ,) in output
+ output << "solid OpenSCAD_Model\n";
+ const Vector3f *verts = &trimesh.vertices.front();
+ BOOST_FOREACH(const IndexedTriangle &t, trimesh.triangles) {
+ assert(t[0] < trimesh.vertices.size());
+ assert(t[1] < trimesh.vertices.size());
+ assert(t[2] < trimesh.vertices.size());
+
+ Vector3f p[3];
+ p[0] = verts[t[0]];
+ p[1] = verts[t[1]];
+ p[2] = verts[t[2]];
+ std::stringstream stream;
+ stream << p[0][0] << " " << p[0][1] << " " << p[0][2];
+ std::string vs1 = stream.str();
+ stream.str("");
+ stream << p[1][0] << " " << p[1][1] << " " << p[1][2];
+ std::string vs2 = stream.str();
+ stream.str("");
+ stream << p[2][0] << " " << p[2][1] << " " << p[2][2];
+ std::string vs3 = stream.str();
+ // if (vs1 != vs2 && vs1 != vs3 && vs2 != vs3) {
+ // The above condition ensures that there are 3 distinct vertices, but
+ // they may be collinear. If they are, the unit normal is meaningless
+ // so the default value of "1 0 0" can be used. If the vertices are not
+ // collinear then the unit normal must be calculated from the
+ // components.
+ Vector3f normal = (p[1] - p[0]).cross(p[2] - p[0]);
+ normal.normalize();
+ output << " facet normal " << normal[0] << " " << normal[1] << " " << normal[2] << "\n";
+ output << " outer loop\n";
+
+ for (int i=0;i<3;i++) {
+ output << " vertex " << p[i][0] << " " << p[i][1] << " " << p[i][2] << "\n";
+ }
+ output << " endloop\n";
+ output << " endfacet\n";
+ // }
+ }
+ output << "endsolid OpenSCAD_Model\n";
+ setlocale(LC_NUMERIC, ""); // Set default locale
+}
+
+
+/*!
+ file format:
+ 1. polygon coordinates (x,y,z) are comma separated (+/- spaces) and
+ each coordinate is on a separate line
+ 2. each polygon is separated by one or more blank lines
+*/
+bool import_polygon(IndexedPolygons &polyhole, const std::string &filename)
+{
+ Reindexer uniqueVertices;
+ std::ifstream ifs(filename.c_str());
+ if (!ifs) return false;
+
+ std::string line;
+ IndexedFace polygon;
+ while (std::getline(ifs, line)) {
+ std::stringstream ss(line);
+ double X = 0.0, Y = 0.0, Z = 0.0;
+ if (!(ss >> X)) {
+ //ie blank lines => flag start of next polygon
+ if (polygon.size() > 0) polyhole.faces.push_back(polygon);
+ polygon.clear();
+ continue;
+ }
+ char c = ss.peek();
+ while (c == ' ') {ss.read(&c, 1); c = ss.peek();} //gobble spaces before comma
+ if (c == ',') {ss.read(&c, 1); c = ss.peek();} //gobble comma
+ while (c == ' ') {ss.read(&c, 1); c = ss.peek();} //gobble spaces after comma
+ if (!(ss >> Y)) {
+ std::cerr << "Y error\n";
+ return false;
+ }
+ c = ss.peek();
+ while (c == ' ') {ss.read(&c, 1); c = ss.peek();} //gobble spaces before comma
+ if (c == ',') {ss.read(&c, 1); c = ss.peek();} //gobble comma
+ while (c == ' ') {ss.read(&c, 1); c = ss.peek();} //gobble spaces after comma
+ if (!(ss >> Z)) {
+ std::cerr << "Z error\n";
+ return false;
+ }
+ polygon.push_back(uniqueVertices.lookup(Vector3f(X, Y, Z)));
+ }
+ if (polygon.size() > 0) polyhole.faces.push_back(polygon);
+ ifs.close();
+ uniqueVertices.copy(std::back_inserter(polyhole.vertices));
+ return true;
+}
+
+int main(int argc, char *argv[])
+{
+ OpenSCAD::debug = "GeometryUtils";
+
+ IndexedPolygons polyhole;
+ Vector3f *normal = NULL;
+ if (argc >= 2) {
+ if (!import_polygon(polyhole, argv[1])) {
+ std::cerr << "Error importing polygon" << std::endl;
+ exit(1);
+ }
+ std::cerr << "Imported " << polyhole.faces.size() << " polygons" << std::endl;
+
+ if (argc == 3) {
+ std::vector strs;
+ std::vector normalvec;
+ std::string arg(argv[2]);
+ boost::split(strs, arg, boost::is_any_of(","));
+ assert(strs.size() == 3);
+ BOOST_FOREACH(const std::string &s, strs) normalvec.push_back(boost::lexical_cast(s));
+ normal = new Vector3f(normalvec[0], normalvec[1], normalvec[2]);
+
+ }
+ }
+ else {
+ //construct two non-intersecting nested polygons
+ Reindexer uniqueVertices;
+ IndexedFace polygon1;
+ polygon1.push_back(uniqueVertices.lookup(Vector3f(0,0,0)));
+ polygon1.push_back(uniqueVertices.lookup(Vector3f(2,0,0)));
+ polygon1.push_back(uniqueVertices.lookup(Vector3f(2,2,0)));
+ polygon1.push_back(uniqueVertices.lookup(Vector3f(0,2,0)));
+ IndexedFace polygon2;
+ polygon2.push_back(uniqueVertices.lookup(Vector3f(0.5,0.5,0)));
+ polygon2.push_back(uniqueVertices.lookup(Vector3f(1.5,0.5,0)));
+ polygon2.push_back(uniqueVertices.lookup(Vector3f(1.5,1.5,0)));
+ polygon2.push_back(uniqueVertices.lookup(Vector3f(0.5,1.5,0)));
+ polyhole.faces.push_back(polygon1);
+ polyhole.faces.push_back(polygon2);
+ uniqueVertices.copy(std::back_inserter(polyhole.vertices));
+ }
+
+ std::vector triangles;
+ bool ok = GeometryUtils::tessellatePolygonWithHoles(polyhole, triangles, normal);
+ std::cerr << "Tessellated into " << triangles.size() << " triangles" << std::endl;
+
+ IndexedTriangleMesh trimesh;
+ trimesh.vertices = polyhole.vertices;
+ trimesh.triangles = triangles;
+
+ export_stl(trimesh, std::cout);
+}
diff --git a/cgal/polyhole-tessellator-libtess2.pro b/cgal/polyhole-tessellator-libtess2.pro
new file mode 100644
index 00000000..98c9964f
--- /dev/null
+++ b/cgal/polyhole-tessellator-libtess2.pro
@@ -0,0 +1,106 @@
+debug: DEFINES += DEBUG
+
+TEMPLATE = app
+
+INCLUDEPATH += ../src ../src/libtess2/Include
+DEPENDPATH += ../src
+
+# Handle custom library location.
+# Used when manually installing 3rd party libraries
+isEmpty(OPENSCAD_LIBDIR) OPENSCAD_LIBDIR = $$(OPENSCAD_LIBRARIES)
+macx:isEmpty(OPENSCAD_LIBDIR) {
+ exists(/opt/local):exists(/usr/local/Cellar) {
+ error("It seems you might have libraries in both /opt/local and /usr/local. Please specify which one to use with qmake OPENSCAD_LIBDIR=")
+ } else {
+ exists(/opt/local) {
+ #Default to MacPorts on Mac OS X
+ message("Automatically searching for libraries in /opt/local. To override, use qmake OPENSCAD_LIBDIR=")
+ OPENSCAD_LIBDIR = /opt/local
+ } else:exists(/usr/local/Cellar) {
+ message("Automatically searching for libraries in /usr/local. To override, use qmake OPENSCAD_LIBDIR=")
+ OPENSCAD_LIBDIR = /usr/local
+ }
+ }
+}
+!isEmpty(OPENSCAD_LIBDIR) {
+ QMAKE_INCDIR = $$OPENSCAD_LIBDIR/include
+ QMAKE_LIBDIR = $$OPENSCAD_LIBDIR/lib
+}
+
+TARGET = polyhole-tessellator-libtess2
+mac {
+ CONFIG -= app_bundle
+}
+
+macx {
+ # Mac needs special care to link against the correct C++ library
+ # We attempt to auto-detect it by inspecting Boost
+ dirs = $${BOOSTDIR} $${QMAKE_LIBDIR}
+ for(dir, dirs) {
+ system(grep -q __112basic_string $${dir}/libboost_thread* >& /dev/null) {
+ message("Detected libc++-linked boost in $${dir}")
+ CONFIG += libc++
+ }
+ }
+
+ libc++ {
+ QMAKE_CXXFLAGS += -stdlib=libc++
+ QMAKE_LFLAGS += -stdlib=libc++
+ QMAKE_OBJECTIVE_CFLAGS += -stdlib=libc++
+ # libc++ on requires Mac OS X 10.7+
+ QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.7
+ }
+}
+
+# See Dec 2011 OpenSCAD mailing list, re: CGAL/GCC bugs.
+*g++* {
+ QMAKE_CXXFLAGS *= -fno-strict-aliasing
+ QMAKE_CXXFLAGS_WARN_ON += -Wno-unused-local-typedefs # ignored before 4.8
+}
+
+*clang* {
+ # http://llvm.org/bugs/show_bug.cgi?id=9182
+ QMAKE_CXXFLAGS_WARN_ON += -Wno-overloaded-virtual
+ # disable enormous amount of warnings about CGAL / boost / etc
+ QMAKE_CXXFLAGS_WARN_ON += -Wno-unused-parameter
+ QMAKE_CXXFLAGS_WARN_ON += -Wno-unused-variable
+ QMAKE_CXXFLAGS_WARN_ON += -Wno-unused-function
+ QMAKE_CXXFLAGS_WARN_ON += -Wno-c++11-extensions
+ # might want to actually turn this on once in a while
+ QMAKE_CXXFLAGS_WARN_ON += -Wno-format-security
+}
+
+
+
+# Application configuration
+CONFIG += cgal
+CONFIG += boost
+CONFIG += eigen
+CONFIG += gettext
+
+include(../common.pri)
+
+HEADERS += ../src/GeometryUtils.cc \
+ ../src/linalg.h \
+ ../src/printutils.h \
+ ../src/grid.h \
+ ../src/libtess2/Include/tesselator.h \
+ ../src/libtess2/Source/bucketalloc.h \
+ ../src/libtess2/Source/dict.h \
+ ../src/libtess2/Source/geom.h \
+ ../src/libtess2/Source/mesh.h \
+ ../src/libtess2/Source/priorityq.h \
+ ../src/libtess2/Source/sweep.h \
+ ../src/libtess2/Source/tess.h
+
+SOURCES += polyhole-tessellator-libtess2.cpp \
+ ../src/GeometryUtils.cc \
+ ../src/printutils.cc \
+ ../src/grid.cc \
+ ../src/libtess2/Source/bucketalloc.c \
+ ../src/libtess2/Source/dict.c \
+ ../src/libtess2/Source/geom.c \
+ ../src/libtess2/Source/mesh.c \
+ ../src/libtess2/Source/priorityq.c \
+ ../src/libtess2/Source/sweep.c \
+ ../src/libtess2/Source/tess.c
diff --git a/doc/openscad.1 b/doc/openscad.1
index d8853eac..26c38be0 100644
--- a/doc/openscad.1
+++ b/doc/openscad.1
@@ -1,4 +1,4 @@
-.TH OPENSCAD 1 "2014.03"
+.TH OPENSCAD 1 "2015.02"
.\" Please adjust this date whenever revising the manpage.
.SH NAME
openscad \- script file based graphical CAD environment
@@ -19,7 +19,7 @@ the OpenSCAD user manual at http://en.wikibooks.org/wiki/OpenSCAD_User_Manual.
.TP
\fB-o\fP \fIoutputfile\fP
-Export the given file to \fIoutputfile\fP in STL, OFF, DXF, or PNG
+Export the given file to \fIoutputfile\fP in STL, OFF, AMF, DXF, SVG, or PNG
format, depending on file extension of \fIoutputfile\fP. If this
option is given, the GUI will not be started.
@@ -49,10 +49,10 @@ strings, care has to be taken that the shell does not consume quotation marks.
More than one \fB-D\fP option can be given.
.TP
.B \-\-render
-If exporting an image, use a full CGAL render. (Default is an OpenCSG compile)
+If exporting an image, render the model fully. (Default is preview)
.TP
.B \-\-preview[=throwntogether]
-If exporting an image, use an OpenCSG previce (optionally in throwntogether mode for quicker rendering).
+If exporting an image, use an OpenCSG preview (optionally in throwntogether mode for quicker rendering).
.TP
.B \-\-csglimit=limit
If exporting an image as an OpenCSG preview, stop rendering after encountering \fIlimit\fP elements to avoid runaway resource usage.
@@ -69,6 +69,12 @@ The first three are for the Eye position, while the next three are for
the Center (or target) that the camera will look at. The 'up' vector is
not currently supported.
.TP
+.B \-\-viewall
+If exporting an image, adjust camera distance to fit the whole design in the frame
+.TP
+.B \-\-autocenter
+If exporting an image, center the design in the frame
+.TP
.B \-\-imgsize=width,height
If exporting an image, specify the pixel width and height
.TP
@@ -76,6 +82,9 @@ If exporting an image, specify the pixel width and height
If exporting an image, specify whether to use orthographic or perspective
projection
.TP
+.B \-\-colorscheme=[Cornfield|Sunset|Metallic|Starnight|BeforeDawn|Nature|DeepOcean]
+If exporting an image, use the specified color scheme for the rendering.
+.TP
.B \-v, \-\-version
Show version of program.
.TP
diff --git a/doc/release-checklist.txt b/doc/release-checklist.txt
index 118c9f03..95a977e0 100644
--- a/doc/release-checklist.txt
+++ b/doc/release-checklist.txt
@@ -70,6 +70,8 @@ o Notify package managers
- OpenSUSE: Pavol Rusnak
- MacPorts: Frank Schima
- Arch Linux: Kyle Keen
+o Update dev version to release version in documentation
+ - https://en.wikibooks.org/wiki/OpenSCAD_User_Manual
Build and Upload Release Binaries
---------------------------------
diff --git a/down.png b/down.png
deleted file mode 100644
index 149ccb5e..00000000
Binary files a/down.png and /dev/null differ
diff --git a/examples/Advanced/advance_intersection.scad b/examples/Advanced/advance_intersection.scad
index 5b415211..11ea6337 100644
--- a/examples/Advanced/advance_intersection.scad
+++ b/examples/Advanced/advance_intersection.scad
@@ -11,3 +11,15 @@ intersection()
linear_extrude(height = 100, center = true, convexity= 3)
import(file = "advance_intersection.dxf");
}
+
+// Written by Clifford Wolf and Marius
+// Kintel
+//
+// To the extent possible under law, the author(s) have dedicated all
+// copyright and related and neighboring rights to this software to the
+// public domain worldwide. This software is distributed without any
+// warranty.
+//
+// You should have received a copy of the CC0 Public Domain
+// Dedication along with this software.
+// If not, see .
diff --git a/examples/Advanced/demo_cut.scad b/examples/Advanced/demo_cut.scad
index 0b42c612..a63a76ed 100644
--- a/examples/Advanced/demo_cut.scad
+++ b/examples/Advanced/demo_cut.scad
@@ -31,3 +31,15 @@ module demo_cut()
translate([ -30, 0, 0 ]) demo_proj();
translate([ +30, 0, 0 ]) demo_cut();
+
+// Written by Clifford Wolf and Marius
+// Kintel
+//
+// To the extent possible under law, the author(s) have dedicated all
+// copyright and related and neighboring rights to this software to the
+// public domain worldwide. This software is distributed without any
+// warranty.
+//
+// You should have received a copy of the CC0 Public Domain
+// Dedication along with this software.
+// If not, see .
diff --git a/examples/Advanced/difference.scad b/examples/Advanced/difference.scad
index 790f25db..5cf6da7f 100644
--- a/examples/Advanced/difference.scad
+++ b/examples/Advanced/difference.scad
@@ -75,3 +75,15 @@ translate([ 30, 0, 0 ])
nut();
spring();
+
+// Written by Clifford Wolf and Marius
+// Kintel
+//
+// To the extent possible under law, the author(s) have dedicated all
+// copyright and related and neighboring rights to this software to the
+// public domain worldwide. This software is distributed without any
+// warranty.
+//
+// You should have received a copy of the CC0 Public Domain
+// Dedication along with this software.
+// If not, see .
diff --git a/examples/Advanced/fractal.scad b/examples/Advanced/fractal.scad
index 871222a4..bab5eb15 100644
--- a/examples/Advanced/fractal.scad
+++ b/examples/Advanced/fractal.scad
@@ -1,6 +1,4 @@
// Menger Sponge
-// By Nathan Hellweg, Emmett Lalish and Marius Kintel May 13, 2013
-// CC-BY-SA license
// Size of edge of sponge
D=100;
@@ -32,3 +30,14 @@ difference() {
rotate([45, atan(1/sqrt(2)), 0]) menger();
translate([0,0,-D]) cube(2*D, center=true);
}
+
+// Written by Nathan Hellweg, Emmett Lalish and Marius Kintel May 13, 2013
+//
+// To the extent possible under law, the author(s) have dedicated all
+// copyright and related and neighboring rights to this software to the
+// public domain worldwide. This software is distributed without any
+// warranty.
+//
+// You should have received a copy of the CC0 Public Domain
+// Dedication along with this software.
+// If not, see .
diff --git a/examples/Advanced/intersecting.scad b/examples/Advanced/intersecting.scad
index 9cf62689..36537723 100644
--- a/examples/Advanced/intersecting.scad
+++ b/examples/Advanced/intersecting.scad
@@ -8,3 +8,14 @@ intersection_for(i = [
])
rotate(i) cube([100, 20, 20], center = true);
+// Written by Clifford Wolf and Marius
+// Kintel
+//
+// To the extent possible under law, the author(s) have dedicated all
+// copyright and related and neighboring rights to this software to the
+// public domain worldwide. This software is distributed without any
+// warranty.
+//
+// You should have received a copy of the CC0 Public Domain
+// Dedication along with this software.
+// If not, see .
diff --git a/examples/Advanced/iteration.scad b/examples/Advanced/iteration.scad
index 25c51735..3895ffe7 100644
--- a/examples/Advanced/iteration.scad
+++ b/examples/Advanced/iteration.scad
@@ -43,3 +43,14 @@ module example006()
example006();
+// Written by Clifford Wolf and Marius
+// Kintel
+//
+// To the extent possible under law, the author(s) have dedicated all
+// copyright and related and neighboring rights to this software to the
+// public domain worldwide. This software is distributed without any
+// warranty.
+//
+// You should have received a copy of the CC0 Public Domain
+// Dedication along with this software.
+// If not, see .
diff --git a/examples/Advanced/offset.scad b/examples/Advanced/offset.scad
index 18cc2e4b..5f1ebdfa 100644
--- a/examples/Advanced/offset.scad
+++ b/examples/Advanced/offset.scad
@@ -1,6 +1,4 @@
-// Example for offset() usage
-// (c) 2014 Torsten Paul
-// CC-BY-SA 4.0
+// offset.scad - Example for offset() usage in OpenSCAD
$fn = 40;
@@ -31,3 +29,16 @@ translate([0, 0, foot_height]) {
%cylinder(r = 14, h = 100);
%translate([0, 0, 100]) sphere(r = 30);
+
+
+
+// Written in 2014 by Torsten Paul
+//
+// To the extent possible under law, the author(s) have dedicated all
+// copyright and related and neighboring rights to this software to the
+// public domain worldwide. This software is distributed without any
+// warranty.
+//
+// You should have received a copy of the CC0 Public Domain
+// Dedication along with this software.
+// If not, see .
diff --git a/examples/Advanced/search.scad b/examples/Advanced/search.scad
index b4f44f03..dff02254 100644
--- a/examples/Advanced/search.scad
+++ b/examples/Advanced/search.scad
@@ -20,3 +20,15 @@ module clock_hour_words(word_offset=20.0,word_height=2.0) {
}
clock_hour_words(word_offset=16.0,word_height=5.0);
+
+// Written by Clifford Wolf and Marius
+// Kintel
+//
+// To the extent possible under law, the author(s) have dedicated all
+// copyright and related and neighboring rights to this software to the
+// public domain worldwide. This software is distributed without any
+// warranty.
+//
+// You should have received a copy of the CC0 Public Domain
+// Dedication along with this software.
+// If not, see .
diff --git a/examples/Advanced/translation.scad b/examples/Advanced/translation.scad
index 417557a1..aaecd2ff 100644
--- a/examples/Advanced/translation.scad
+++ b/examples/Advanced/translation.scad
@@ -22,3 +22,15 @@ for (i = [1:4])
}
}
}
+
+// Written by Clifford Wolf and Marius
+// Kintel
+//
+// To the extent possible under law, the author(s) have dedicated all
+// copyright and related and neighboring rights to this software to the
+// public domain worldwide. This software is distributed without any
+// warranty.
+//
+// You should have received a copy of the CC0 Public Domain
+// Dedication along with this software.
+// If not, see .
diff --git a/examples/Basics/LetterBlock.scad b/examples/Basics/LetterBlock.scad
new file mode 100644
index 00000000..7eee768d
--- /dev/null
+++ b/examples/Basics/LetterBlock.scad
@@ -0,0 +1,28 @@
+echo(version=version());
+
+module LetterBlock(letter, size=30) {
+ difference() {
+ translate([0,0,size/4])
+ cube([size,size,size/2], center=true);
+ translate([0,0,size/6])
+ linear_extrude(height=size, convexity=3)
+ text(letter,
+ size=size*22/30,
+ font="Tahoma",
+ halign="center",
+ valign="center");
+ }
+}
+
+LetterBlock("M");
+
+// Written by Marius Kintel
+//
+// To the extent possible under law, the author(s) have dedicated all
+// copyright and related and neighboring rights to this software to the
+// public domain worldwide. This software is distributed without any
+// warranty.
+//
+// You should have received a copy of the CC0 Public Domain
+// Dedication along with this software.
+// If not, see .
diff --git a/examples/Basics/difference_cube.scad b/examples/Basics/difference_cube.scad
index c8127844..c4b210ec 100644
--- a/examples/Basics/difference_cube.scad
+++ b/examples/Basics/difference_cube.scad
@@ -1,3 +1,5 @@
+// difference_cube.scad - Example for difference() usage in OpenSCAD
+
echo(version=version());
module difference_cube()
@@ -10,3 +12,16 @@ module difference_cube()
difference_cube();
+
+
+// Written by Clifford Wolf and Marius
+// Kintel
+//
+// To the extent possible under law, the author(s) have dedicated all
+// copyright and related and neighboring rights to this software to the
+// public domain worldwide. This software is distributed without any
+// warranty.
+//
+// You should have received a copy of the CC0 Public Domain
+// Dedication along with this software.
+// If not, see .
diff --git a/examples/Basics/difference_sphere.scad b/examples/Basics/difference_sphere.scad
index 3d80d626..67d6dee9 100644
--- a/examples/Basics/difference_sphere.scad
+++ b/examples/Basics/difference_sphere.scad
@@ -1,3 +1,5 @@
+// difference_sphere.scad - Example for difference() usage in OpenSCAD
+
echo(version=version());
module difference_sphere()
@@ -25,3 +27,16 @@ module difference_sphere()
difference_sphere();
+
+
+// Written by Clifford Wolf and Marius
+// Kintel
+//
+// To the extent possible under law, the author(s) have dedicated all
+// copyright and related and neighboring rights to this software to the
+// public domain worldwide. This software is distributed without any
+// warranty.
+//
+// You should have received a copy of the CC0 Public Domain
+// Dedication along with this software.
+// If not, see .
diff --git a/examples/Basics/intersection.scad b/examples/Basics/intersection.scad
index 082b72e7..ac2046bb 100644
--- a/examples/Basics/intersection.scad
+++ b/examples/Basics/intersection.scad
@@ -1,3 +1,5 @@
+// intersection.scad - Example for intersection() usage in OpenSCAD
+
echo(version=version());
module example_intersection()
@@ -22,3 +24,16 @@ module example_intersection()
example_intersection();
+
+
+// Written by Clifford Wolf and Marius
+// Kintel
+//
+// To the extent possible under law, the author(s) have dedicated all
+// copyright and related and neighboring rights to this software to the
+// public domain worldwide. This software is distributed without any
+// warranty.
+//
+// You should have received a copy of the CC0 Public Domain
+// Dedication along with this software.
+// If not, see .
diff --git a/examples/Basics/logo_and_text.scad b/examples/Basics/logo_and_text.scad
index 140ff248..bddaa336 100644
--- a/examples/Basics/logo_and_text.scad
+++ b/examples/Basics/logo_and_text.scad
@@ -1,6 +1,4 @@
-// Example for text() usage
-// (c) 2014 Torsten Paul
-// CC-BY-SA 4.0
+// logo_and_text.scad - Example for text() usage in OpenSCAD
echo(version=version());
@@ -46,3 +44,15 @@ translate([110, 0, 80]) {
translate([160, 0, -40]) black() t("Solid 3D CAD Modeller");
}
+
+
+// Written in 2014 by Torsten Paul
+//
+// To the extent possible under law, the author(s) have dedicated all
+// copyright and related and neighboring rights to this software to the
+// public domain worldwide. This software is distributed without any
+// warranty.
+//
+// You should have received a copy of the CC0 Public Domain
+// Dedication along with this software.
+// If not, see .
diff --git a/examples/Basics/surface.scad b/examples/Basics/surface.scad
index dbf93485..e49605e2 100644
--- a/examples/Basics/surface.scad
+++ b/examples/Basics/surface.scad
@@ -1,3 +1,5 @@
+// surface.scad - Example for surface() usage in OpenSCAD
+//
// surface.dat generated using octave:
// d = (sin(1:0.2:10)' * cos(1:0.2:10)) * 10;
// save("surface.dat", "d");
@@ -13,3 +15,17 @@ intersection()
surface(file = "surface.dat",
center = true, convexity = 5);
}
+
+
+
+// Written by Clifford Wolf and Marius
+// Kintel
+//
+// To the extent possible under law, the author(s) have dedicated all
+// copyright and related and neighboring rights to this software to the
+// public domain worldwide. This software is distributed without any
+// warranty.
+//
+// You should have received a copy of the CC0 Public Domain
+// Dedication along with this software.
+// If not, see .
diff --git a/examples/Basics/text_on_cube.scad b/examples/Basics/text_on_cube.scad
index 046be735..35647cf1 100644
--- a/examples/Basics/text_on_cube.scad
+++ b/examples/Basics/text_on_cube.scad
@@ -1,6 +1,4 @@
-// Example for text() usage
-// (c) 2014 Torsten Paul
-// CC-BY-SA 4.0
+// text_on_cube.scad - Example for text() usage in OpenSCAD
echo(version=version());
@@ -38,3 +36,16 @@ difference() {
translate([0, 0, o]) letter("\u263A");
translate([0, 0, -o - letter_height]) letter("\u263C");
}
+
+
+
+// Written in 2014 by Torsten Paul
+//
+// To the extent possible under law, the author(s) have dedicated all
+// copyright and related and neighboring rights to this software to the
+// public domain worldwide. This software is distributed without any
+// warranty.
+//
+// You should have received a copy of the CC0 Public Domain
+// Dedication along with this software.
+// If not, see .
diff --git a/examples/Basics/translate.scad b/examples/Basics/translate.scad
index 1aaa674c..a7c8fe9e 100644
--- a/examples/Basics/translate.scad
+++ b/examples/Basics/translate.scad
@@ -1,3 +1,5 @@
+// translate.scad - Example for translate() usage in OpenSCAD
+
echo(version=version());
module example_translate()
@@ -19,3 +21,17 @@ module example_translate()
}
example_translate();
+
+
+
+// Written by Clifford Wolf and Marius
+// Kintel
+//
+// To the extent possible under law, the author(s) have dedicated all
+// copyright and related and neighboring rights to this software to the
+// public domain worldwide. This software is distributed without any
+// warranty.
+//
+// You should have received a copy of the CC0 Public Domain
+// Dedication along with this software.
+// If not, see .
diff --git a/examples/Basics/union.scad b/examples/Basics/union.scad
index 1b410e2c..681c5823 100644
--- a/examples/Basics/union.scad
+++ b/examples/Basics/union.scad
@@ -1,3 +1,5 @@
+// union.scad - Example for union() usage in OpenSCAD
+
echo(version=version());
module example_union()
@@ -19,3 +21,16 @@ module example_union()
example_union();
+
+
+// Written by Clifford Wolf and Marius
+// Kintel
+//
+// To the extent possible under law, the author(s) have dedicated all
+// copyright and related and neighboring rights to this software to the
+// public domain worldwide. This software is distributed without any
+// warranty.
+//
+// You should have received a copy of the CC0 Public Domain
+// Dedication along with this software.
+// If not, see .
diff --git a/examples/COPYING-CC0.txt b/examples/COPYING-CC0.txt
new file mode 100644
index 00000000..0e259d42
--- /dev/null
+++ b/examples/COPYING-CC0.txt
@@ -0,0 +1,121 @@
+Creative Commons Legal Code
+
+CC0 1.0 Universal
+
+ CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE
+ LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN
+ ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS
+ INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES
+ REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS
+ PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM
+ THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED
+ HEREUNDER.
+
+Statement of Purpose
+
+The laws of most jurisdictions throughout the world automatically confer
+exclusive Copyright and Related Rights (defined below) upon the creator
+and subsequent owner(s) (each and all, an "owner") of an original work of
+authorship and/or a database (each, a "Work").
+
+Certain owners wish to permanently relinquish those rights to a Work for
+the purpose of contributing to a commons of creative, cultural and
+scientific works ("Commons") that the public can reliably and without fear
+of later claims of infringement build upon, modify, incorporate in other
+works, reuse and redistribute as freely as possible in any form whatsoever
+and for any purposes, including without limitation commercial purposes.
+These owners may contribute to the Commons to promote the ideal of a free
+culture and the further production of creative, cultural and scientific
+works, or to gain reputation or greater distribution for their Work in
+part through the use and efforts of others.
+
+For these and/or other purposes and motivations, and without any
+expectation of additional consideration or compensation, the person
+associating CC0 with a Work (the "Affirmer"), to the extent that he or she
+is an owner of Copyright and Related Rights in the Work, voluntarily
+elects to apply CC0 to the Work and publicly distribute the Work under its
+terms, with knowledge of his or her Copyright and Related Rights in the
+Work and the meaning and intended legal effect of CC0 on those rights.
+
+1. Copyright and Related Rights. A Work made available under CC0 may be
+protected by copyright and related or neighboring rights ("Copyright and
+Related Rights"). Copyright and Related Rights include, but are not
+limited to, the following:
+
+ i. the right to reproduce, adapt, distribute, perform, display,
+ communicate, and translate a Work;
+ ii. moral rights retained by the original author(s) and/or performer(s);
+iii. publicity and privacy rights pertaining to a person's image or
+ likeness depicted in a Work;
+ iv. rights protecting against unfair competition in regards to a Work,
+ subject to the limitations in paragraph 4(a), below;
+ v. rights protecting the extraction, dissemination, use and reuse of data
+ in a Work;
+ vi. database rights (such as those arising under Directive 96/9/EC of the
+ European Parliament and of the Council of 11 March 1996 on the legal
+ protection of databases, and under any national implementation
+ thereof, including any amended or successor version of such
+ directive); and
+vii. other similar, equivalent or corresponding rights throughout the
+ world based on applicable law or treaty, and any national
+ implementations thereof.
+
+2. Waiver. To the greatest extent permitted by, but not in contravention
+of, applicable law, Affirmer hereby overtly, fully, permanently,
+irrevocably and unconditionally waives, abandons, and surrenders all of
+Affirmer's Copyright and Related Rights and associated claims and causes
+of action, whether now known or unknown (including existing as well as
+future claims and causes of action), in the Work (i) in all territories
+worldwide, (ii) for the maximum duration provided by applicable law or
+treaty (including future time extensions), (iii) in any current or future
+medium and for any number of copies, and (iv) for any purpose whatsoever,
+including without limitation commercial, advertising or promotional
+purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each
+member of the public at large and to the detriment of Affirmer's heirs and
+successors, fully intending that such Waiver shall not be subject to
+revocation, rescission, cancellation, termination, or any other legal or
+equitable action to disrupt the quiet enjoyment of the Work by the public
+as contemplated by Affirmer's express Statement of Purpose.
+
+3. Public License Fallback. Should any part of the Waiver for any reason
+be judged legally invalid or ineffective under applicable law, then the
+Waiver shall be preserved to the maximum extent permitted taking into
+account Affirmer's express Statement of Purpose. In addition, to the
+extent the Waiver is so judged Affirmer hereby grants to each affected
+person a royalty-free, non transferable, non sublicensable, non exclusive,
+irrevocable and unconditional license to exercise Affirmer's Copyright and
+Related Rights in the Work (i) in all territories worldwide, (ii) for the
+maximum duration provided by applicable law or treaty (including future
+time extensions), (iii) in any current or future medium and for any number
+of copies, and (iv) for any purpose whatsoever, including without
+limitation commercial, advertising or promotional purposes (the
+"License"). The License shall be deemed effective as of the date CC0 was
+applied by Affirmer to the Work. Should any part of the License for any
+reason be judged legally invalid or ineffective under applicable law, such
+partial invalidity or ineffectiveness shall not invalidate the remainder
+of the License, and in such case Affirmer hereby affirms that he or she
+will not (i) exercise any of his or her remaining Copyright and Related
+Rights in the Work or (ii) assert any associated claims and causes of
+action with respect to the Work, in either case contrary to Affirmer's
+express Statement of Purpose.
+
+4. Limitations and Disclaimers.
+
+ a. No trademark or patent rights held by Affirmer are waived, abandoned,
+ surrendered, licensed or otherwise affected by this document.
+ b. Affirmer offers the Work as-is and makes no representations or
+ warranties of any kind concerning the Work, express, implied,
+ statutory or otherwise, including without limitation warranties of
+ title, merchantability, fitness for a particular purpose, non
+ infringement, or the absence of latent or other defects, accuracy, or
+ the present or absence of errors, whether or not discoverable, all to
+ the greatest extent permissible under applicable law.
+ c. Affirmer disclaims responsibility for clearing rights of other persons
+ that may apply to the Work or any use thereof, including without
+ limitation any person's Copyright and Related Rights in the Work.
+ Further, Affirmer disclaims responsibility for obtaining any necessary
+ consents, permissions or other rights required for any use of the
+ Work.
+ d. Affirmer understands and acknowledges that Creative Commons is not a
+ party to this document and has no duty or obligation with respect to
+ this CC0 or use of the Work.
diff --git a/examples/Extrusion/cut_view.scad b/examples/Extrusion/cut_view.scad
index 7d11b917..07a558b0 100644
--- a/examples/Extrusion/cut_view.scad
+++ b/examples/Extrusion/cut_view.scad
@@ -64,3 +64,14 @@ translate([0, 0, -10])
// cutview();
+// Written by Clifford Wolf and Marius
+// Kintel
+//
+// To the extent possible under law, the author(s) have dedicated all
+// copyright and related and neighboring rights to this software to the
+// public domain worldwide. This software is distributed without any
+// warranty.
+//
+// You should have received a copy of the CC0 Public Domain
+// Dedication along with this software.
+// If not, see .
diff --git a/examples/Extrusion/fan_view.scad b/examples/Extrusion/fan_view.scad
index 5ea81811..37bcb1d5 100644
--- a/examples/Extrusion/fan_view.scad
+++ b/examples/Extrusion/fan_view.scad
@@ -29,3 +29,14 @@ intersection()
import(file = "fan_view.dxf", layer = "fan_side", origin = fan_side_center);
}
+// Written by Clifford Wolf and Marius
+// Kintel
+//
+// To the extent possible under law, the author(s) have dedicated all
+// copyright and related and neighboring rights to this software to the
+// public domain worldwide. This software is distributed without any
+// warranty.
+//
+// You should have received a copy of the CC0 Public Domain
+// Dedication along with this software.
+// If not, see .
diff --git a/examples/Extrusion/text.scad b/examples/Extrusion/text.scad
index 891cc0f0..838f70d7 100644
--- a/examples/Extrusion/text.scad
+++ b/examples/Extrusion/text.scad
@@ -31,3 +31,15 @@ difference()
import(file = "text.dxf", layer = "X");
}
}
+
+// Written by Clifford Wolf and Marius
+// Kintel
+//
+// To the extent possible under law, the author(s) have dedicated all
+// copyright and related and neighboring rights to this software to the
+// public domain worldwide. This software is distributed without any
+// warranty.
+//
+// You should have received a copy of the CC0 Public Domain
+// Dedication along with this software.
+// If not, see .
diff --git a/examples/Shapes/M.stl b/examples/Shapes/M.stl
new file mode 100644
index 00000000..699a7e0c
--- /dev/null
+++ b/examples/Shapes/M.stl
@@ -0,0 +1,450 @@
+solid OpenSCAD_Model
+ facet normal -1 0 0
+ outer loop
+ vertex -15 15 0
+ vertex -15 -15 0
+ vertex -15 -15 15
+ endloop
+ endfacet
+ facet normal -1 -0 -0
+ outer loop
+ vertex -15 15 15
+ vertex -15 15 0
+ vertex -15 -15 15
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 6.88264 -10.8438 15
+ vertex -6.49335 -10.8438 15
+ vertex 15 -15 15
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -9.24535 11.3642 15
+ vertex -15 15 15
+ vertex -9.24535 -10.8438 15
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 5.72964 11.3642 15
+ vertex -5.22034 11.3642 15
+ vertex 0.351639 -0.977737 15
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -15 15 15
+ vertex -15 -15 15
+ vertex -9.24535 -10.8438 15
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -5.22034 11.3642 15
+ vertex -15 15 15
+ vertex -9.24535 11.3642 15
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 15 15 15
+ vertex -15 15 15
+ vertex -5.22034 11.3642 15
+ endloop
+ endfacet
+ facet normal 0 -0 1
+ outer loop
+ vertex 9.82664 11.3642 15
+ vertex 15 15 15
+ vertex 5.72964 11.3642 15
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 15 15 15
+ vertex -5.22034 11.3642 15
+ vertex 5.72964 11.3642 15
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 9.82664 -10.8438 15
+ vertex 15 15 15
+ vertex 9.82664 11.3642 15
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 15 -15 15
+ vertex 9.82664 -10.8438 15
+ vertex 6.88264 -10.8438 15
+ endloop
+ endfacet
+ facet normal 0 -0 1
+ outer loop
+ vertex 15 -15 15
+ vertex 15 15 15
+ vertex 9.82664 -10.8438 15
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -15 -15 15
+ vertex 15 -15 15
+ vertex -6.49335 -10.8438 15
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -6.49335 -10.8438 15
+ vertex 1.07065 -4.69974 15
+ vertex -0.726349 -4.69974 15
+ endloop
+ endfacet
+ facet normal 0 -0 1
+ outer loop
+ vertex 6.88264 -10.8438 15
+ vertex 6.88264 8.29724 15
+ vertex 1.07065 -4.69974 15
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -15 -15 15
+ vertex -6.49335 -10.8438 15
+ vertex -9.24535 -10.8438 15
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 6.88264 -10.8438 15
+ vertex 1.07065 -4.69974 15
+ vertex -6.49335 -10.8438 15
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -6.49335 8.29724 15
+ vertex -6.49335 -10.8438 15
+ vertex -0.726349 -4.69974 15
+ endloop
+ endfacet
+ facet normal 1 0 0
+ outer loop
+ vertex 15 -15 15
+ vertex 15 -15 0
+ vertex 15 15 0
+ endloop
+ endfacet
+ facet normal 1 0 0
+ outer loop
+ vertex 15 15 15
+ vertex 15 -15 15
+ vertex 15 15 0
+ endloop
+ endfacet
+ facet normal 0 1 0
+ outer loop
+ vertex 15 15 0
+ vertex -15 15 0
+ vertex -15 15 15
+ endloop
+ endfacet
+ facet normal 0 1 0
+ outer loop
+ vertex 15 15 15
+ vertex 15 15 0
+ vertex -15 15 15
+ endloop
+ endfacet
+ facet normal 0 0 -1
+ outer loop
+ vertex 15 -15 0
+ vertex -15 -15 0
+ vertex -15 15 0
+ endloop
+ endfacet
+ facet normal -0 -0 -1
+ outer loop
+ vertex 15 15 0
+ vertex 15 -15 0
+ vertex -15 15 0
+ endloop
+ endfacet
+ facet normal 0 -1 0
+ outer loop
+ vertex -15 -15 15
+ vertex -15 -15 0
+ vertex 15 -15 0
+ endloop
+ endfacet
+ facet normal -0 -1 -0
+ outer loop
+ vertex 15 -15 15
+ vertex -15 -15 15
+ vertex 15 -15 0
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -6.49335 8.29724 5
+ vertex -9.24535 -10.8438 5
+ vertex -6.49335 -10.8438 5
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -6.49335 8.29724 5
+ vertex -9.24535 11.3642 5
+ vertex -9.24535 -10.8438 5
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 1.07065 -4.69974 5
+ vertex 0.351639 -0.977737 5
+ vertex -0.726349 -4.69974 5
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 0.351639 -0.977737 5
+ vertex -6.49335 8.29724 5
+ vertex -0.726349 -4.69974 5
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex -5.22034 11.3642 5
+ vertex -9.24535 11.3642 5
+ vertex -6.49335 8.29724 5
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 9.82664 -10.8438 5
+ vertex 6.88264 8.29724 5
+ vertex 6.88264 -10.8438 5
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 9.82664 11.3642 5
+ vertex 6.88264 8.29724 5
+ vertex 9.82664 -10.8438 5
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 9.82664 11.3642 5
+ vertex 5.72964 11.3642 5
+ vertex 6.88264 8.29724 5
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 6.88264 8.29724 5
+ vertex 0.351639 -0.977737 5
+ vertex 1.07065 -4.69974 5
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 5.72964 11.3642 5
+ vertex 0.351639 -0.977737 5
+ vertex 6.88264 8.29724 5
+ endloop
+ endfacet
+ facet normal 0 0 1
+ outer loop
+ vertex 0.351639 -0.977737 5
+ vertex -5.22034 11.3642 5
+ vertex -6.49335 8.29724 5
+ endloop
+ endfacet
+ facet normal 0.914058 0.405584 0
+ outer loop
+ vertex -0.726349 -4.69974 5
+ vertex -6.49335 8.29724 5
+ vertex -6.49335 8.29724 15
+ endloop
+ endfacet
+ facet normal 0.914058 0.405584 0
+ outer loop
+ vertex -0.726349 -4.69974 15
+ vertex -0.726349 -4.69974 5
+ vertex -6.49335 8.29724 15
+ endloop
+ endfacet
+ facet normal 0 1 0
+ outer loop
+ vertex 1.07065 -4.69974 5
+ vertex -0.726349 -4.69974 5
+ vertex -0.726349 -4.69974 15
+ endloop
+ endfacet
+ facet normal 0 1 0
+ outer loop
+ vertex 1.07065 -4.69974 15
+ vertex 1.07065 -4.69974 5
+ vertex -0.726349 -4.69974 15
+ endloop
+ endfacet
+ facet normal -0.912882 0.408223 0
+ outer loop
+ vertex 6.88264 8.29724 5
+ vertex 1.07065 -4.69974 5
+ vertex 1.07065 -4.69974 15
+ endloop
+ endfacet
+ facet normal -0.912882 0.408223 0
+ outer loop
+ vertex 6.88264 8.29724 15
+ vertex 6.88264 8.29724 5
+ vertex 1.07065 -4.69974 15
+ endloop
+ endfacet
+ facet normal 1 0 0
+ outer loop
+ vertex 6.88264 -10.8438 15
+ vertex 6.88264 -10.8438 5
+ vertex 6.88264 8.29724 5
+ endloop
+ endfacet
+ facet normal 1 0 0
+ outer loop
+ vertex 6.88264 8.29724 15
+ vertex 6.88264 -10.8438 15
+ vertex 6.88264 8.29724 5
+ endloop
+ endfacet
+ facet normal 0 1 0
+ outer loop
+ vertex 9.82664 -10.8438 5
+ vertex 6.88264 -10.8438 5
+ vertex 6.88264 -10.8438 15
+ endloop
+ endfacet
+ facet normal 0 1 0
+ outer loop
+ vertex 9.82664 -10.8438 15
+ vertex 9.82664 -10.8438 5
+ vertex 6.88264 -10.8438 15
+ endloop
+ endfacet
+ facet normal -1 0 0
+ outer loop
+ vertex 9.82664 11.3642 5
+ vertex 9.82664 -10.8438 5
+ vertex 9.82664 -10.8438 15
+ endloop
+ endfacet
+ facet normal -1 -0 -0
+ outer loop
+ vertex 9.82664 11.3642 15
+ vertex 9.82664 11.3642 5
+ vertex 9.82664 -10.8438 15
+ endloop
+ endfacet
+ facet normal 0 -1 0
+ outer loop
+ vertex 5.72964 11.3642 15
+ vertex 5.72964 11.3642 5
+ vertex 9.82664 11.3642 5
+ endloop
+ endfacet
+ facet normal -0 -1 -0
+ outer loop
+ vertex 9.82664 11.3642 15
+ vertex 5.72964 11.3642 15
+ vertex 9.82664 11.3642 5
+ endloop
+ endfacet
+ facet normal 0.916746 -0.399471 0
+ outer loop
+ vertex 0.351639 -0.977737 15
+ vertex 0.351639 -0.977737 5
+ vertex 5.72964 11.3642 5
+ endloop
+ endfacet
+ facet normal 0.916746 -0.399471 0
+ outer loop
+ vertex 5.72964 11.3642 15
+ vertex 0.351639 -0.977737 15
+ vertex 5.72964 11.3642 5
+ endloop
+ endfacet
+ facet normal -0.911421 -0.411475 -0
+ outer loop
+ vertex -5.22034 11.3642 15
+ vertex -5.22034 11.3642 5
+ vertex 0.351639 -0.977737 5
+ endloop
+ endfacet
+ facet normal -0.911421 -0.411475 -0
+ outer loop
+ vertex 0.351639 -0.977737 15
+ vertex -5.22034 11.3642 15
+ vertex 0.351639 -0.977737 5
+ endloop
+ endfacet
+ facet normal 0 -1 0
+ outer loop
+ vertex -9.24535 11.3642 15
+ vertex -9.24535 11.3642 5
+ vertex -5.22034 11.3642 5
+ endloop
+ endfacet
+ facet normal -0 -1 -0
+ outer loop
+ vertex -5.22034 11.3642 15
+ vertex -9.24535 11.3642 15
+ vertex -5.22034 11.3642 5
+ endloop
+ endfacet
+ facet normal 1 0 0
+ outer loop
+ vertex -9.24535 -10.8438 15
+ vertex -9.24535 -10.8438 5
+ vertex -9.24535 11.3642 5
+ endloop
+ endfacet
+ facet normal 1 0 0
+ outer loop
+ vertex -9.24535 11.3642 15
+ vertex -9.24535 -10.8438 15
+ vertex -9.24535 11.3642 5
+ endloop
+ endfacet
+ facet normal 0 1 0
+ outer loop
+ vertex -6.49335 -10.8438 5
+ vertex -9.24535 -10.8438 5
+ vertex -9.24535 -10.8438 15
+ endloop
+ endfacet
+ facet normal 0 1 0
+ outer loop
+ vertex -6.49335 -10.8438 15
+ vertex -6.49335 -10.8438 5
+ vertex -9.24535 -10.8438 15
+ endloop
+ endfacet
+ facet normal -1 0 0
+ outer loop
+ vertex -6.49335 8.29724 5
+ vertex -6.49335 -10.8438 5
+ vertex -6.49335 -10.8438 15
+ endloop
+ endfacet
+ facet normal -1 -0 -0
+ outer loop
+ vertex -6.49335 8.29724 15
+ vertex -6.49335 8.29724 5
+ vertex -6.49335 -10.8438 15
+ endloop
+ endfacet
+endsolid OpenSCAD_Model
diff --git a/examples/Shapes/chopped_blocks.scad b/examples/Shapes/chopped_blocks.scad
index ea5e27ac..30e24bc4 100644
--- a/examples/Shapes/chopped_blocks.scad
+++ b/examples/Shapes/chopped_blocks.scad
@@ -1,10 +1,5 @@
-// chopped_blocks.stl is derived from Mblock.stl
-// (c) 2009 Will Langford licensed under
-// the Creative Commons - GNU GPL license.
-// http://www.thingiverse.com/thing:753
-//
-// Jonas Pfeil converted the file to binary
-// STL and duplicated its content.
+// chopped_blocks.stl is derived from Basics/LetterBlock.scad
+// The exported STL was converted to binary using MeshLab
echo(version=version());
@@ -21,7 +16,7 @@ module blk2() {
}
module chop() {
- translate([ -14, 0, 0 ])
+ translate([ -18, 0, 0 ])
import(file = "chopped_blocks.stl", convexity = 12);
}
@@ -36,3 +31,14 @@ difference() {
}
}
+// Written by Clifford Wolf and Marius
+// Kintel
+//
+// To the extent possible under law, the author(s) have dedicated all
+// copyright and related and neighboring rights to this software to the
+// public domain worldwide. This software is distributed without any
+// warranty.
+//
+// You should have received a copy of the CC0 Public Domain
+// Dedication along with this software.
+// If not, see .
diff --git a/examples/Shapes/chopped_blocks.stl b/examples/Shapes/chopped_blocks.stl
index c24cdf77..0291b9fe 100644
Binary files a/examples/Shapes/chopped_blocks.stl and b/examples/Shapes/chopped_blocks.stl differ
diff --git a/examples/Shapes/fence.scad b/examples/Shapes/fence.scad
index 514cc697..015f3933 100644
--- a/examples/Shapes/fence.scad
+++ b/examples/Shapes/fence.scad
@@ -13,3 +13,14 @@ for (i = [-100:5:+100]) {
translate([ i, 0, -30 ]) cylinder(r1 = 6, r2 = 2, h = get_cylinder_h(i)*3);
}
+// Written by Clifford Wolf and Marius
+// Kintel
+//
+// To the extent possible under law, the author(s) have dedicated all
+// copyright and related and neighboring rights to this software to the
+// public domain worldwide. This software is distributed without any
+// warranty.
+//
+// You should have received a copy of the CC0 Public Domain
+// Dedication along with this software.
+// If not, see .
diff --git a/examples/Shapes/flat_body.scad b/examples/Shapes/flat_body.scad
index a18a94a7..135d8fbc 100644
--- a/examples/Shapes/flat_body.scad
+++ b/examples/Shapes/flat_body.scad
@@ -27,3 +27,14 @@ module shape()
// linear_extrude(convexity = 10, center = true)
shape();
+// Written by Clifford Wolf and Marius
+// Kintel
+//
+// To the extent possible under law, the author(s) have dedicated all
+// copyright and related and neighboring rights to this software to the
+// public domain worldwide. This software is distributed without any
+// warranty.
+//
+// You should have received a copy of the CC0 Public Domain
+// Dedication along with this software.
+// If not, see .
diff --git a/examples/Shapes/polyhedron.scad b/examples/Shapes/polyhedron.scad
index 6aa44357..c0947f98 100644
--- a/examples/Shapes/polyhedron.scad
+++ b/examples/Shapes/polyhedron.scad
@@ -16,3 +16,15 @@ polyhedron(
[4, 0, 3]
]
);
+
+// Written by Clifford Wolf and Marius
+// Kintel
+//
+// To the extent possible under law, the author(s) have dedicated all
+// copyright and related and neighboring rights to this software to the
+// public domain worldwide. This software is distributed without any
+// warranty.
+//
+// You should have received a copy of the CC0 Public Domain
+// Dedication along with this software.
+// If not, see .
diff --git a/examples/Shapes/rounded_box.scad b/examples/Shapes/rounded_box.scad
index aac5fd2f..48b1e5f6 100644
--- a/examples/Shapes/rounded_box.scad
+++ b/examples/Shapes/rounded_box.scad
@@ -36,3 +36,14 @@ module roundedBox(size, radius, sidesonly)
translate([-15,0,0])roundedBox([20,30,40], 5, true);
translate([15,0,0]) roundedBox([20,30,40], 5, false);
+// Written by Clifford Wolf and Marius
+// Kintel
+//
+// To the extent possible under law, the author(s) have dedicated all
+// copyright and related and neighboring rights to this software to the
+// public domain worldwide. This software is distributed without any
+// warranty.
+//
+// You should have received a copy of the CC0 Public Domain
+// Dedication along with this software.
+// If not, see .
diff --git a/examples/Shapes/sphere.scad b/examples/Shapes/sphere.scad
index 6e808acd..37cf3d4a 100644
--- a/examples/Shapes/sphere.scad
+++ b/examples/Shapes/sphere.scad
@@ -1,6 +1,4 @@
-// example012.stl is Mblock.stl, (c) 2009 Will Langford
-// licensed under the Creative Commons - GNU GPL license.
-// http://www.thingiverse.com/thing:753
+// M.stl is generated from Basics/LetterBlock.scad
echo(version=version());
@@ -8,6 +6,18 @@ difference()
{
sphere(20);
- translate([ -2.92, 0.5, +20 ]) rotate([180, 0, 180])
- import("sphere.stl", convexity = 5);
+ translate([ 0, 0.5, +20 ]) rotate([180, 0, 180])
+ import("M.stl", convexity = 5);
}
+
+// Written by Clifford Wolf and Marius
+// Kintel
+//
+// To the extent possible under law, the author(s) have dedicated all
+// copyright and related and neighboring rights to this software to the
+// public domain worldwide. This software is distributed without any
+// warranty.
+//
+// You should have received a copy of the CC0 Public Domain
+// Dedication along with this software.
+// If not, see .
diff --git a/examples/Shapes/tripod.scad b/examples/Shapes/tripod.scad
index c46d2cc4..bedc0f57 100644
--- a/examples/Shapes/tripod.scad
+++ b/examples/Shapes/tripod.scad
@@ -156,3 +156,14 @@ if (mode == "exploded")
if (mode == "assembled")
assembled();
+// Written by Clifford Wolf and Marius
+// Kintel
+//
+// To the extent possible under law, the author(s) have dedicated all
+// copyright and related and neighboring rights to this software to the
+// public domain worldwide. This software is distributed without any
+// warranty.
+//
+// You should have received a copy of the CC0 Public Domain
+// Dedication along with this software.
+// If not, see .
diff --git a/front.png b/front.png
deleted file mode 100644
index 5e791c04..00000000
Binary files a/front.png and /dev/null differ
diff --git a/gettext.pri b/gettext.pri
index 84fffa55..26a562a4 100644
--- a/gettext.pri
+++ b/gettext.pri
@@ -19,8 +19,9 @@ macx: {
GETTEXT_LIBPATH = $$OPENSCAD_LIBRARIES_DIR/lib
}
}
- GETTEXT_CXXFLAGS=-I$$GETTEXT_INCLUDEPATH
- GETTEXT_LIBS=-L$$GETTEXT_LIBPATH -lintl -liconv
+ !isEmpty(GETTEXT_INCLUDEPATH): GETTEXT_CXXFLAGS = -I$$GETTEXT_INCLUDEPATH
+ !isEmpty(GETTEXT_LIBPATH): GETTEXT_LIBS = -L$$GETTEXT_LIBPATH
+ GETTEXT_LIBS += -lintl -liconv
}
QMAKE_CXXFLAGS += $$GETTEXT_CXXFLAGS
diff --git a/grid.png b/grid.png
deleted file mode 100644
index 1b300627..00000000
Binary files a/grid.png and /dev/null differ
diff --git a/icons/background.png b/icons/background.png
index c0c304c1..db3b1134 100644
Binary files a/icons/background.png and b/icons/background.png differ
diff --git a/icons/close.png b/icons/close.png
new file mode 100644
index 00000000..9782e419
Binary files /dev/null and b/icons/close.png differ
diff --git a/icons/information-icons-error.png b/icons/information-icons-error.png
new file mode 100644
index 00000000..1d963f91
Binary files /dev/null and b/icons/information-icons-error.png differ
diff --git a/icons/information-icons-info.png b/icons/information-icons-info.png
new file mode 100644
index 00000000..73e5f3f1
Binary files /dev/null and b/icons/information-icons-info.png differ
diff --git a/icons/information-icons-question.png b/icons/information-icons-question.png
new file mode 100644
index 00000000..75bb0fe2
Binary files /dev/null and b/icons/information-icons-question.png differ
diff --git a/icons/information-icons-warning.png b/icons/information-icons-warning.png
new file mode 100644
index 00000000..6d439cba
Binary files /dev/null and b/icons/information-icons-warning.png differ
diff --git a/icons/license.txt b/icons/license.txt
index 97e6931b..f73b0891 100644
--- a/icons/license.txt
+++ b/icons/license.txt
@@ -1,3 +1,14 @@
Taken from http://tango.freedesktop.org/Tango_Icon_Library, version 0.8.90 / public domain:
- prefsFeatures.png (converted from preferences-system.svg)
+
+https://openclipart.org/detail/2281/information-icons-set-by-kuba / public domain:
+
+- information-icons-error.png
+- information-icons-question.png
+- information-icons-info.png
+- information-icons-warning.png
+
+https://openclipart.org/detail/171382/cross-icon-by-zawertun-171382 / public domain:
+
+- close.png
diff --git a/icons/openscad_doc.ico b/icons/openscad_doc.ico
new file mode 100644
index 00000000..8a57e8d8
Binary files /dev/null and b/icons/openscad_doc.ico differ
diff --git a/images/AMF-white.png b/images/AMF-white.png
new file mode 100644
index 00000000..e2b19922
Binary files /dev/null and b/images/AMF-white.png differ
diff --git a/images/AMF.png b/images/AMF.png
new file mode 100644
index 00000000..a140bad0
Binary files /dev/null and b/images/AMF.png differ
diff --git a/images/Arrowhead-Right-32.png b/images/Arrowhead-Right-32.png
deleted file mode 100644
index 42dd282b..00000000
Binary files a/images/Arrowhead-Right-32.png and /dev/null differ
diff --git a/images/CSG-white.png b/images/CSG-white.png
new file mode 100644
index 00000000..23077154
Binary files /dev/null and b/images/CSG-white.png differ
diff --git a/images/CSG.png b/images/CSG.png
new file mode 100644
index 00000000..1cad4440
Binary files /dev/null and b/images/CSG.png differ
diff --git a/images/Command-Redo-32-white.png b/images/Command-Redo-32-white.png
new file mode 100644
index 00000000..51a198ce
Binary files /dev/null and b/images/Command-Redo-32-white.png differ
diff --git a/images/blackRender.png b/images/Command-Redo-32.png
similarity index 53%
rename from images/blackRender.png
rename to images/Command-Redo-32.png
index da50aee5..f9c77c5e 100644
Binary files a/images/blackRender.png and b/images/Command-Redo-32.png differ
diff --git a/images/Command-Reset-32-white.png b/images/Command-Reset-32-white.png
new file mode 100644
index 00000000..71f79b0c
Binary files /dev/null and b/images/Command-Reset-32-white.png differ
diff --git a/images/Command-Reset-32.png b/images/Command-Reset-32.png
new file mode 100644
index 00000000..b24e419f
Binary files /dev/null and b/images/Command-Reset-32.png differ
diff --git a/images/Command-Undo-32-white.png b/images/Command-Undo-32-white.png
new file mode 100644
index 00000000..a4c39fa3
Binary files /dev/null and b/images/Command-Undo-32-white.png differ
diff --git a/images/Command-Undo-32.png b/images/Command-Undo-32.png
new file mode 100644
index 00000000..2deea680
Binary files /dev/null and b/images/Command-Undo-32.png differ
diff --git a/images/DXF-white.png b/images/DXF-white.png
new file mode 100644
index 00000000..0afe5f2f
Binary files /dev/null and b/images/DXF-white.png differ
diff --git a/images/DXF.png b/images/DXF.png
new file mode 100644
index 00000000..45ae376a
Binary files /dev/null and b/images/DXF.png differ
diff --git a/images/Decrease-Indent-32-white.png b/images/Decrease-Indent-32-white.png
new file mode 100644
index 00000000..b2756c2d
Binary files /dev/null and b/images/Decrease-Indent-32-white.png differ
diff --git a/images/Decrease-Indent-32.png b/images/Decrease-Indent-32.png
new file mode 100644
index 00000000..8697e9d0
Binary files /dev/null and b/images/Decrease-Indent-32.png differ
diff --git a/images/Increase-Indent-32-white.png b/images/Increase-Indent-32-white.png
new file mode 100644
index 00000000..8fc5049a
Binary files /dev/null and b/images/Increase-Indent-32-white.png differ
diff --git a/images/Increase-Indent-32.png b/images/Increase-Indent-32.png
new file mode 100644
index 00000000..3be843cd
Binary files /dev/null and b/images/Increase-Indent-32.png differ
diff --git a/images/OFF-white.png b/images/OFF-white.png
new file mode 100644
index 00000000..4f724b7f
Binary files /dev/null and b/images/OFF-white.png differ
diff --git a/images/OFF.png b/images/OFF.png
new file mode 100644
index 00000000..c26dbf74
Binary files /dev/null and b/images/OFF.png differ
diff --git a/images/PNG-white.png b/images/PNG-white.png
new file mode 100644
index 00000000..6f94e3f8
Binary files /dev/null and b/images/PNG-white.png differ
diff --git a/images/PNG.png b/images/PNG.png
new file mode 100644
index 00000000..75a64adb
Binary files /dev/null and b/images/PNG.png differ
diff --git a/images/Preview-32 (1).png b/images/Preview-32 (1).png
deleted file mode 100644
index 26f718c2..00000000
Binary files a/images/Preview-32 (1).png and /dev/null differ
diff --git a/images/Preview-32.png b/images/Preview-32.png
deleted file mode 100644
index 7da55318..00000000
Binary files a/images/Preview-32.png and /dev/null differ
diff --git a/images/STL-white.png b/images/STL-white.png
new file mode 100644
index 00000000..4392987d
Binary files /dev/null and b/images/STL-white.png differ
diff --git a/images/STL.png b/images/STL.png
new file mode 100644
index 00000000..50949001
Binary files /dev/null and b/images/STL.png differ
diff --git a/images/SVG-white.png b/images/SVG-white.png
new file mode 100644
index 00000000..8b361cd3
Binary files /dev/null and b/images/SVG-white.png differ
diff --git a/images/SVG.png b/images/SVG.png
new file mode 100644
index 00000000..d7c18281
Binary files /dev/null and b/images/SVG.png differ
diff --git a/images/export-white.png b/images/export-white.png
index 9aeeade8..f89a27b3 100644
Binary files a/images/export-white.png and b/images/export-white.png differ
diff --git a/images/export.png b/images/export.png
index b0b59a76..2cefcef7 100644
Binary files a/images/export.png and b/images/export.png differ
diff --git a/images/preview-32-white.png b/images/preview-32-white.png
new file mode 100644
index 00000000..7001b9cf
Binary files /dev/null and b/images/preview-32-white.png differ
diff --git a/images/preview-32.png b/images/preview-32.png
new file mode 100644
index 00000000..87be4bb3
Binary files /dev/null and b/images/preview-32.png differ
diff --git a/images/render-32-white.png b/images/render-32-white.png
new file mode 100644
index 00000000..6c17bb9f
Binary files /dev/null and b/images/render-32-white.png differ
diff --git a/images/render-32.png b/images/render-32.png
new file mode 100644
index 00000000..f40cfdbd
Binary files /dev/null and b/images/render-32.png differ
diff --git a/images/scalemarkers-white.png b/images/scalemarkers-white.png
new file mode 100644
index 00000000..1d6583c3
Binary files /dev/null and b/images/scalemarkers-white.png differ
diff --git a/images/scalemarkers.png b/images/scalemarkers.png
new file mode 100644
index 00000000..a6301354
Binary files /dev/null and b/images/scalemarkers.png differ
diff --git a/images/zoom-text-in-white.png b/images/zoom-text-in-white.png
new file mode 100644
index 00000000..2be2fafe
Binary files /dev/null and b/images/zoom-text-in-white.png differ
diff --git a/images/zoom-text-in.png b/images/zoom-text-in.png
new file mode 100644
index 00000000..54bbbb36
Binary files /dev/null and b/images/zoom-text-in.png differ
diff --git a/images/zoom-text-out-white.png b/images/zoom-text-out-white.png
new file mode 100644
index 00000000..40214346
Binary files /dev/null and b/images/zoom-text-out-white.png differ
diff --git a/images/zoom-text-out.png b/images/zoom-text-out.png
new file mode 100644
index 00000000..db745e9b
Binary files /dev/null and b/images/zoom-text-out.png differ
diff --git a/locale/LINGUAS b/locale/LINGUAS
index 9f82de46..ed46eb16 100644
--- a/locale/LINGUAS
+++ b/locale/LINGUAS
@@ -1,2 +1,2 @@
# available languages
-fr ru de cs
+fr ru de cs es
diff --git a/locale/cs.po b/locale/cs.po
index d9a8ed71..f7fc056c 100644
--- a/locale/cs.po
+++ b/locale/cs.po
@@ -7,39 +7,57 @@ msgid ""
msgstr ""
"Project-Id-Version: OpenSCAD 2013.02.24\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2014-12-22 23:28+0100\n"
-"PO-Revision-Date: 2014-12-23 12:24+0100\n"
+"POT-Creation-Date: 2015-02-01 18:03+0100\n"
+"PO-Revision-Date: 2015-02-01 20:54+0100\n"
"Last-Translator: Miro Hrončok \n"
"Language-Team: Czech \n"
"Language: cs\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: Poedit 1.5.4\n"
-"Plural-Forms: nplurals=3; plural=n==1 ? 0 : n>=2 && n<=4 ? 1 : 2;\n"
+"X-Generator: Poedit 1.7.3\n"
+"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
"X-Poedit-SourceCharset: UTF-8\n"
-#: objects/ui_AboutDialog.h:51 src/AboutDialog.h:15
+#: objects/ui_AboutDialog.h:103 src/AboutDialog.h:13
msgid "About OpenSCAD"
msgstr "O OpenSCADu"
-#: objects/ui_FontListDialog.h:102
+#: objects/ui_AboutDialog.h:105 objects/ui_launchingscreen.h:305
+msgid ""
+"\n"
+"
OpenSCAD
\n"
+"The Programmers Solid 3D CAD Modeller
\n"
+"\n"
+"\n"
+"\n"
+msgstr ""
+
+#: objects/ui_AboutDialog.h:112
+msgid "OK"
+msgstr "OK"
+
+#: objects/ui_FontListDialog.h:105
msgid "OpenSCAD Font List"
msgstr "Seznam OpenSCAD písem"
-#: objects/ui_FontListDialog.h:103 objects/ui_LibraryInfoDialog.h:77
+#: objects/ui_FontListDialog.h:106 objects/ui_LibraryInfoDialog.h:77
msgid "&OK"
msgstr "&OK"
-#: objects/ui_FontListDialog.h:104
+#: objects/ui_FontListDialog.h:107
msgid "Copy to Clipboard"
msgstr "Kopírovat do schránky"
-#: objects/ui_FontListDialog.h:105
+#: objects/ui_FontListDialog.h:108
msgid "Filter:"
msgstr "Filtr:"
-#: objects/ui_FontListDialog.h:106
+#: objects/ui_FontListDialog.h:109
msgid ""
"This list shows the fonts currently registered with "
"OpenSCAD.
Example:
text(t = "OpenSCAD", font = "
""Liberation Sans:style=Italic");
"
-#: objects/ui_launchingscreen.h:276
+#: objects/ui_launchingscreen.h:294
msgid "Welcome to OpenSCAD"
msgstr "Vítá vás OpenSCAD"
-#: objects/ui_launchingscreen.h:277
+#: objects/ui_launchingscreen.h:295
msgid "New"
msgstr "Nový"
-#: objects/ui_launchingscreen.h:278
+#: objects/ui_launchingscreen.h:296
msgid "Open"
msgstr "Otevřít"
-#: objects/ui_launchingscreen.h:279
+#: objects/ui_launchingscreen.h:297
msgid "Help"
msgstr "Nápověda"
-#: objects/ui_launchingscreen.h:280
+#: objects/ui_launchingscreen.h:298
msgid "Recents"
msgstr "Nedávné"
-#: objects/ui_launchingscreen.h:281
+#: objects/ui_launchingscreen.h:299
msgid "Open Recent"
msgstr "Otevřít nedávný soubor"
-#: objects/ui_launchingscreen.h:282 objects/ui_launchingscreen.h:284
-#: objects/ui_MainWindow.h:855
+#: objects/ui_launchingscreen.h:300 objects/ui_launchingscreen.h:302
msgid "Examples"
msgstr "Příklady"
-#: objects/ui_launchingscreen.h:285
+#: objects/ui_launchingscreen.h:303
msgid "Open Example"
msgstr "Otevřít příklad"
-#: objects/ui_launchingscreen.h:287
-msgid ""
-"\n"
-"OpenSCAD
\n"
-"The Programmers Solid 3D CAD Modeller
\n"
-"\n"
-"\n"
-"\n"
-msgstr ""
-
-#: objects/ui_launchingscreen.h:294
+#: objects/ui_launchingscreen.h:312
msgid "Don't show again"
msgstr "Příště nezobrazovat"
+#: objects/ui_launchingscreen.h:313
+msgid "Version"
+msgstr "Verze"
+
#: objects/ui_LibraryInfoDialog.h:75
msgid "Lib & Build Info"
msgstr "Info o knihovnách a sestavení"
@@ -120,543 +127,567 @@ msgstr "Info o knihovnách a sestavení"
msgid "OpenSCAD Detailed Library and Build Information"
msgstr "Podrobné informace o tomto sestavení OpenSCADu a použitých knihovnách"
-#: objects/ui_MainWindow.h:731
+#: objects/ui_MainWindow.h:837
msgid "&New"
msgstr "&Nový"
-#: objects/ui_MainWindow.h:732
+#: objects/ui_MainWindow.h:838
msgid "Ctrl+N"
msgstr "Ctrl+N"
-#: objects/ui_MainWindow.h:733
+#: objects/ui_MainWindow.h:839
msgid "&Open..."
msgstr "&Otevřít..."
-#: objects/ui_MainWindow.h:734
+#: objects/ui_MainWindow.h:840
msgid "Ctrl+O"
msgstr "Ctrl+O"
-#: objects/ui_MainWindow.h:735
+#: objects/ui_MainWindow.h:841
msgid "&Save"
msgstr "&Uložit"
-#: objects/ui_MainWindow.h:736
+#: objects/ui_MainWindow.h:842
msgid "Ctrl+S"
msgstr "Ctrl+S"
-#: objects/ui_MainWindow.h:737
+#: objects/ui_MainWindow.h:843
msgid "Save &As..."
msgstr "Uložit &jako..."
-#: objects/ui_MainWindow.h:738
+#: objects/ui_MainWindow.h:844
msgid "Ctrl+Shift+S"
msgstr "Ctrl+Shift+S"
-#: objects/ui_MainWindow.h:739
+#: objects/ui_MainWindow.h:845
msgid "&Reload"
-msgstr "&Znovu načíst"
+msgstr "Zno&vu načíst"
-#: objects/ui_MainWindow.h:740
+#: objects/ui_MainWindow.h:846
msgid "Ctrl+R"
msgstr "Ctrl+R"
-#: objects/ui_MainWindow.h:741
+#: objects/ui_MainWindow.h:847
msgid "&Quit"
msgstr "U&končit"
-#: objects/ui_MainWindow.h:742
+#: objects/ui_MainWindow.h:848
msgid "Ctrl+Q"
msgstr "Ctrl+Q"
-#: objects/ui_MainWindow.h:743
+#: objects/ui_MainWindow.h:849
msgid "&Undo"
msgstr "&Zpět"
-#: objects/ui_MainWindow.h:744
+#: objects/ui_MainWindow.h:850
msgid "Ctrl+Z"
msgstr "Ctrl+Z"
-#: objects/ui_MainWindow.h:745
+#: objects/ui_MainWindow.h:851
msgid "&Redo"
-msgstr "Zn&ovu"
+msgstr "Znov&u"
-#: objects/ui_MainWindow.h:746
+#: objects/ui_MainWindow.h:852
msgid "Ctrl+Shift+Z"
msgstr "Ctrl+Shift+Z"
-#: objects/ui_MainWindow.h:747
+#: objects/ui_MainWindow.h:853
msgid "Cu&t"
-msgstr "&Vyjmout"
+msgstr "Vy&jmout"
-#: objects/ui_MainWindow.h:748
+#: objects/ui_MainWindow.h:854
msgid "Ctrl+X"
msgstr "Ctrl+X"
-#: objects/ui_MainWindow.h:749
+#: objects/ui_MainWindow.h:855
msgid "&Copy"
msgstr "&Kopírovat"
-#: objects/ui_MainWindow.h:750
+#: objects/ui_MainWindow.h:856
msgid "Ctrl+C"
msgstr "Ctrl+C"
-#: objects/ui_MainWindow.h:751
+#: objects/ui_MainWindow.h:857
msgid "&Paste"
msgstr "V&ložit"
-#: objects/ui_MainWindow.h:752
+#: objects/ui_MainWindow.h:858
msgid "Ctrl+V"
msgstr "Ctrl+V"
-#: objects/ui_MainWindow.h:753
+#: objects/ui_MainWindow.h:859
msgid "&Indent"
msgstr "Odsad&it"
-#: objects/ui_MainWindow.h:754
+#: objects/ui_MainWindow.h:860
msgid "Ctrl+I"
msgstr "Ctrl+I"
-#: objects/ui_MainWindow.h:755
-msgid "U&nindent"
-msgstr "Z&rušit odsazení"
-
-#: objects/ui_MainWindow.h:756
-msgid "Ctrl+Shift+I"
-msgstr "Ctrl+Shift+I"
-
-#: objects/ui_MainWindow.h:757
+#: objects/ui_MainWindow.h:861
msgid "C&omment"
-msgstr "&Zakomentovat"
+msgstr "Zakomen&tovat"
-#: objects/ui_MainWindow.h:758
+#: objects/ui_MainWindow.h:862
msgid "Ctrl+D"
msgstr "Ctrl+D"
-#: objects/ui_MainWindow.h:759
+#: objects/ui_MainWindow.h:863
msgid "Unco&mment"
msgstr "&Odkomentovat"
-#: objects/ui_MainWindow.h:760
+#: objects/ui_MainWindow.h:864
msgid "Ctrl+Shift+D"
msgstr "Ctrl+Shift+D"
-#: objects/ui_MainWindow.h:761
-msgid "Paste viewport translation"
-msgstr "Vložit posun pohledu"
+#: objects/ui_MainWindow.h:865
+msgid "P&aste viewport translation"
+msgstr "Vložit posun pohl&edu"
-#: objects/ui_MainWindow.h:762
+#: objects/ui_MainWindow.h:866
msgid "Ctrl+T"
msgstr "Ctrl+T"
-#: objects/ui_MainWindow.h:763
-msgid "Paste viewport rotation"
-msgstr "Vložit rotaci pohledu"
+#: objects/ui_MainWindow.h:867
+msgid "Past&e viewport rotation"
+msgstr "Vlo&žit rotaci pohledu"
-#: objects/ui_MainWindow.h:764 objects/ui_MainWindow.h:842
-msgid "Zoom In"
-msgstr "Přiblížit"
+#: objects/ui_MainWindow.h:868
+msgid "Increase Font &Size"
+msgstr "Zv&ětšit písmo"
-#: objects/ui_MainWindow.h:765
+#: objects/ui_MainWindow.h:869
msgid "Ctrl++"
msgstr "Ctrl++"
-#: objects/ui_MainWindow.h:766 objects/ui_MainWindow.h:844
-msgid "Zoom Out"
-msgstr "Oddálit"
+#: objects/ui_MainWindow.h:870
+msgid "Decrease Font Si&ze"
+msgstr "Z&menšit písmo"
-#: objects/ui_MainWindow.h:767
+#: objects/ui_MainWindow.h:871
msgid "Ctrl+-"
msgstr "Ctrl+-"
-#: objects/ui_MainWindow.h:768
-msgid "Hide editor"
-msgstr "Skrýt editor"
+#: objects/ui_MainWindow.h:872
+msgid "H&ide editor"
+msgstr "Skrýt &editor"
-#: objects/ui_MainWindow.h:769
+#: objects/ui_MainWindow.h:873
msgid "&Reload and Preview"
msgstr "Znovu &načíst a zobrazit"
-#: objects/ui_MainWindow.h:770
+#: objects/ui_MainWindow.h:874
msgid "F4"
msgstr "F4"
-#: objects/ui_MainWindow.h:771
+#: objects/ui_MainWindow.h:875
msgid "&Preview"
msgstr "&Zobrazit"
-#: objects/ui_MainWindow.h:772
+#: objects/ui_MainWindow.h:876
msgid "F5"
msgstr "F5"
-#: objects/ui_MainWindow.h:773
-msgid "&Render"
+#: objects/ui_MainWindow.h:877
+msgid "R&ender"
msgstr "Vy&renderovat"
-#: objects/ui_MainWindow.h:774
+#: objects/ui_MainWindow.h:878
msgid "F6"
msgstr "F6"
-#: objects/ui_MainWindow.h:775
-msgid "Check Validity"
-msgstr "Zkontrolovat správnost"
+#: objects/ui_MainWindow.h:879
+msgid "&Check Validity"
+msgstr "Zkontrolovat &správnost"
-#: objects/ui_MainWindow.h:776
-msgid "Display &AST..."
-msgstr "Ukázat &ATS..."
+#: objects/ui_MainWindow.h:880
+msgid "Display A&ST..."
+msgstr "&Ukázat ATS..."
-#: objects/ui_MainWindow.h:777
+#: objects/ui_MainWindow.h:881
msgid "Display CSG &Tree..."
msgstr "Ukázat CSG s&trom..."
-#: objects/ui_MainWindow.h:778
-msgid "Display CSG &Products..."
+#: objects/ui_MainWindow.h:882
+msgid "Display CSG Pr&oducts..."
msgstr "Ukázat CSG &produkty..."
-#: objects/ui_MainWindow.h:779
+#: objects/ui_MainWindow.h:883
msgid "Export as &STL..."
msgstr "Exportovat jako &STL..."
-#: objects/ui_MainWindow.h:780
+#: objects/ui_MainWindow.h:884
msgid "Export as &OFF..."
msgstr "Exportovat jako &OFF..."
-#: objects/ui_MainWindow.h:781
+#: objects/ui_MainWindow.h:885
msgid "Preview"
msgstr "Náhled"
-#: objects/ui_MainWindow.h:782
+#: objects/ui_MainWindow.h:886
msgid "F9"
msgstr "F9"
-#: objects/ui_MainWindow.h:783
+#: objects/ui_MainWindow.h:887
msgid "Surfaces"
msgstr "Povrchy"
-#: objects/ui_MainWindow.h:784
+#: objects/ui_MainWindow.h:888
msgid "F10"
msgstr "F10"
-#: objects/ui_MainWindow.h:785
+#: objects/ui_MainWindow.h:889
msgid "Wireframe"
msgstr "Drátové zobrazení"
-#: objects/ui_MainWindow.h:786
+#: objects/ui_MainWindow.h:890
msgid "F11"
msgstr "F11"
-#: objects/ui_MainWindow.h:787
+#: objects/ui_MainWindow.h:891
msgid "Thrown Together"
msgstr "Vše společně"
-#: objects/ui_MainWindow.h:788
+#: objects/ui_MainWindow.h:892
msgid "F12"
msgstr "F12"
-#: objects/ui_MainWindow.h:789
+#: objects/ui_MainWindow.h:893
msgid "Show Edges"
msgstr "Zobrazit hrany"
-#: objects/ui_MainWindow.h:790
+#: objects/ui_MainWindow.h:894
msgid "Ctrl+1"
msgstr "Ctrl+1"
-#: objects/ui_MainWindow.h:791
+#: objects/ui_MainWindow.h:895
msgid "Show Axes"
msgstr "Zobrazit osy"
-#: objects/ui_MainWindow.h:792
+#: objects/ui_MainWindow.h:896
msgid "Ctrl+2"
msgstr "Ctrl+2"
-#: objects/ui_MainWindow.h:793
+#: objects/ui_MainWindow.h:897
msgid "Show Crosshairs"
msgstr "Zobrazit zaměřovač"
-#: objects/ui_MainWindow.h:794
+#: objects/ui_MainWindow.h:898
msgid "Ctrl+3"
msgstr "Ctrl+3"
-#: objects/ui_MainWindow.h:795
+#: objects/ui_MainWindow.h:899
+msgid "Show Scale Markers"
+msgstr "Zobrazit pravítko"
+
+#: objects/ui_MainWindow.h:900
msgid "Animate"
msgstr "Animovat"
-#: objects/ui_MainWindow.h:796
-msgid "Top"
-msgstr "Shora"
+#: objects/ui_MainWindow.h:901
+msgid "&Top"
+msgstr "Ses&hora"
-#: objects/ui_MainWindow.h:797
+#: objects/ui_MainWindow.h:902
msgid "Ctrl+4"
msgstr "Ctrl+4"
-#: objects/ui_MainWindow.h:798
-msgid "Bottom"
-msgstr "Zespoda"
+#: objects/ui_MainWindow.h:903
+msgid "&Bottom"
+msgstr "Ze&spoda"
-#: objects/ui_MainWindow.h:799
+#: objects/ui_MainWindow.h:904
msgid "Ctrl+5"
msgstr "Ctrl+5"
-#: objects/ui_MainWindow.h:800
-msgid "Left"
-msgstr "Zleva"
+#: objects/ui_MainWindow.h:905
+msgid "&Left"
+msgstr "Z&leva"
-#: objects/ui_MainWindow.h:801
+#: objects/ui_MainWindow.h:906
msgid "Ctrl+6"
msgstr "Ctrl+6"
-#: objects/ui_MainWindow.h:802
-msgid "Right"
-msgstr "Zprava"
+#: objects/ui_MainWindow.h:907
+msgid "&Right"
+msgstr "Z&prava"
-#: objects/ui_MainWindow.h:803
+#: objects/ui_MainWindow.h:908
msgid "Ctrl+7"
msgstr "Ctrl+7"
-#: objects/ui_MainWindow.h:804
-msgid "Front"
-msgstr "Zepředu"
+#: objects/ui_MainWindow.h:909
+msgid "&Front"
+msgstr "Zepře&du"
-#: objects/ui_MainWindow.h:805
+#: objects/ui_MainWindow.h:910
msgid "Ctrl+8"
msgstr "Ctrl+8"
-#: objects/ui_MainWindow.h:806
-msgid "Back"
-msgstr "Zezadu"
+#: objects/ui_MainWindow.h:911
+msgid "Bac&k"
+msgstr "Ze&zadu"
-#: objects/ui_MainWindow.h:807
+#: objects/ui_MainWindow.h:912
msgid "Ctrl+9"
msgstr "Ctrl+9"
-#: objects/ui_MainWindow.h:808
-msgid "Diagonal"
-msgstr "Diagonálně"
+#: objects/ui_MainWindow.h:913
+msgid "&Diagonal"
+msgstr "Dia&gonálně"
-#: objects/ui_MainWindow.h:809
+#: objects/ui_MainWindow.h:914
msgid "Ctrl+0"
msgstr "Ctrl+0"
-#: objects/ui_MainWindow.h:810
-msgid "Center"
-msgstr "Vycentrovat"
+#: objects/ui_MainWindow.h:915
+msgid "Ce&nter"
+msgstr "Vy¢rovat"
-#: objects/ui_MainWindow.h:811
-msgid "Perspective"
-msgstr "Perspektivně"
+#: objects/ui_MainWindow.h:916
+msgid "&Perspective"
+msgstr "Pe&rspektivně"
-#: objects/ui_MainWindow.h:812
-msgid "Orthogonal"
-msgstr "Ortogonálně"
+#: objects/ui_MainWindow.h:917
+msgid "&Orthogonal"
+msgstr "&Ortogonálně"
-#: objects/ui_MainWindow.h:813
-msgid "Hide console"
-msgstr "Skrýt terminál"
+#: objects/ui_MainWindow.h:918
+msgid "H&ide console"
+msgstr "Skrýt &terminál"
-#: objects/ui_MainWindow.h:814
-msgid "About"
-msgstr "O aplikaci"
+#: objects/ui_MainWindow.h:919
+msgid "&About"
+msgstr "&O aplikaci"
-#: objects/ui_MainWindow.h:815
-msgid "Documentation"
-msgstr "Dokumentace"
+#: objects/ui_MainWindow.h:920
+msgid "&Documentation"
+msgstr "&Dokumentace"
-#: objects/ui_MainWindow.h:816
+#: objects/ui_MainWindow.h:921
msgid "Clear Recent"
msgstr "Zapomenout nedávné"
-#: objects/ui_MainWindow.h:817
-msgid "Export as DXF..."
-msgstr "Exportovat jako &DXF"
+#: objects/ui_MainWindow.h:922
+msgid "Export as &DXF..."
+msgstr "Exportovat jako &DXF..."
-#: objects/ui_MainWindow.h:818 objects/ui_OpenCSGWarningDialog.h:94
-msgid "Close"
-msgstr "Zavřít"
+#: objects/ui_MainWindow.h:923
+msgid "&Close"
+msgstr "&Zavřít"
-#: objects/ui_MainWindow.h:819
+#: objects/ui_MainWindow.h:924
msgid "Ctrl+W"
msgstr "Ctrl+W"
-#: objects/ui_MainWindow.h:820 objects/ui_Preferences.h:608
-msgid "Preferences"
-msgstr "Předvolby"
+#: objects/ui_MainWindow.h:925
+msgid "&Preferences"
+msgstr "Předvolb&y"
-#: objects/ui_MainWindow.h:821
-msgid "Find..."
-msgstr "Najít..."
+#: objects/ui_MainWindow.h:926
+msgid "&Find..."
+msgstr "&Najít..."
-#: objects/ui_MainWindow.h:822
+#: objects/ui_MainWindow.h:927
msgid "Ctrl+F"
msgstr "Ctrl+F"
-#: objects/ui_MainWindow.h:823
-msgid "Find and Replace..."
-msgstr "Najít a nahradit..."
+#: objects/ui_MainWindow.h:928
+msgid "Fin&d and Replace..."
+msgstr "Najít a na&hradit..."
-#: objects/ui_MainWindow.h:824
+#: objects/ui_MainWindow.h:929
msgid "Ctrl+Alt+F"
msgstr "Ctrl+Alt+F"
-#: objects/ui_MainWindow.h:825
-msgid "Find Next"
-msgstr "Najít další"
+#: objects/ui_MainWindow.h:930
+msgid "Find Ne&xt"
+msgstr "Najít &další"
-#: objects/ui_MainWindow.h:826
+#: objects/ui_MainWindow.h:931
msgid "Ctrl+G"
msgstr "Ctrl+G"
-#: objects/ui_MainWindow.h:827
-msgid "Find Previous"
-msgstr "Najít předchozí"
+#: objects/ui_MainWindow.h:932
+msgid "Find Pre&vious"
+msgstr "Najít &předchozí"
-#: objects/ui_MainWindow.h:828
+#: objects/ui_MainWindow.h:933
msgid "Ctrl+Shift+G"
msgstr "Ctrl+Shift+G"
-#: objects/ui_MainWindow.h:829
-msgid "Use Selection for Find"
-msgstr "Hledat vybraný řetězec"
+#: objects/ui_MainWindow.h:934
+msgid "Use Se&lection for Find"
+msgstr "Hledat vybraný řetěze&c"
-#: objects/ui_MainWindow.h:830
+#: objects/ui_MainWindow.h:935
msgid "Ctrl+E"
msgstr "Ctrl+E"
-#: objects/ui_MainWindow.h:831
-msgid "Flush Caches"
-msgstr "Vyprázdnit mezipaměť"
+#: objects/ui_MainWindow.h:936
+msgid "&Flush Caches"
+msgstr "&Vyprázdnit mezipaměť"
-#: objects/ui_MainWindow.h:832
-msgid "OpenSCAD Homepage"
-msgstr "Domovská stránka OpenSCADu"
+#: objects/ui_MainWindow.h:937
+msgid "&OpenSCAD Homepage"
+msgstr "Domovská &stránka OpenSCADu"
-#: objects/ui_MainWindow.h:833
-msgid "Automatic Reload and Preview"
-msgstr "Automaticky načítat a zobrazovat"
+#: objects/ui_MainWindow.h:938
+msgid "&Automatic Reload and Preview"
+msgstr "&Automaticky načítat a zobrazovat"
-#: objects/ui_MainWindow.h:834
-msgid "Export as Image..."
-msgstr "Exportovat jako obrázek..."
+#: objects/ui_MainWindow.h:939
+msgid "Export as &Image..."
+msgstr "Exportovat jako &obrázek..."
-#: objects/ui_MainWindow.h:835
-msgid "Export as CSG..."
-msgstr "Exportovat jako CSG..."
+#: objects/ui_MainWindow.h:940
+msgid "Export as &CSG..."
+msgstr "Exportovat jako &CSG..."
-#: objects/ui_MainWindow.h:836
-msgid "Library info"
-msgstr "Informace o knihovnách"
+#: objects/ui_MainWindow.h:941
+msgid "&Library info"
+msgstr "&Informace o knihovnách"
-#: objects/ui_MainWindow.h:837
-msgid "Show Library Folder..."
-msgstr "Adresář s knihovnami..."
+#: objects/ui_MainWindow.h:942
+msgid "Show &Library Folder..."
+msgstr "&Adresář s knihovnami..."
-#: objects/ui_MainWindow.h:838
+#: objects/ui_MainWindow.h:943
msgid "Reset View"
msgstr "Výchozí pohled"
-#: objects/ui_MainWindow.h:839
-msgid "Font List"
-msgstr "Seznam písem"
+#: objects/ui_MainWindow.h:944
+msgid "&Font List"
+msgstr "Seznam &písem"
-#: objects/ui_MainWindow.h:840
-msgid "Export as SVG..."
-msgstr "Exportovat jako SVG..."
+#: objects/ui_MainWindow.h:945
+msgid "Export as S&VG..."
+msgstr "Exportovat jako S&VG..."
-#: objects/ui_MainWindow.h:841
-msgid "Export as AMF..."
-msgstr "Exportovat jako AMF..."
+#: objects/ui_MainWindow.h:946
+msgid "Export as &AMF..."
+msgstr "Exportovat jako &AMF..."
-#: objects/ui_MainWindow.h:843
+#: objects/ui_MainWindow.h:947
+msgid "Zoom In"
+msgstr "Přiblížit"
+
+#: objects/ui_MainWindow.h:948
msgid "Ctrl+]"
msgstr "Ctrl+]"
-#: objects/ui_MainWindow.h:845
+#: objects/ui_MainWindow.h:949
+msgid "Zoom Out"
+msgstr "Oddálit"
+
+#: objects/ui_MainWindow.h:950
msgid "Ctrl+["
msgstr "Ctrl+["
-#: objects/ui_MainWindow.h:846
+#: objects/ui_MainWindow.h:951
msgid "View All"
msgstr "Zobrazit vše"
-#: objects/ui_MainWindow.h:847
-msgid "Convert Tabs to Spaces"
-msgstr "Převést tabulátory na mezery"
+#: objects/ui_MainWindow.h:952
+msgid "Conv&ert Tabs to Spaces"
+msgstr "Pře&vést tabulátory na mezery"
-#: objects/ui_MainWindow.h:848
+#: objects/ui_MainWindow.h:953
msgid "Hide toolbars"
msgstr "Skrýt nástrojové lišty"
-#: objects/ui_MainWindow.h:849
+#: objects/ui_MainWindow.h:954
+msgid "U&nindent"
+msgstr "Z&rušit odsazení"
+
+#: objects/ui_MainWindow.h:955
+msgid "Ctrl+Shift+I"
+msgstr "Ctrl+Shift+I"
+
+#: objects/ui_MainWindow.h:956
+msgid "&Cheat Sheet"
+msgstr "&Tahák"
+
+#: objects/ui_MainWindow.h:957
+msgid "Message"
+msgstr "Zpráva"
+
+#: objects/ui_MainWindow.h:960
msgid "Time:"
msgstr "Čas:"
-#: objects/ui_MainWindow.h:850
+#: objects/ui_MainWindow.h:961
msgid "FPS:"
msgstr "FPS:"
-#: objects/ui_MainWindow.h:851
+#: objects/ui_MainWindow.h:962
msgid "Steps:"
msgstr "Kroky:"
-#: objects/ui_MainWindow.h:852
+#: objects/ui_MainWindow.h:963
msgid "Dump Pictures"
msgstr "Ukládat obrázky"
-#: objects/ui_MainWindow.h:853
+#: objects/ui_MainWindow.h:964
msgid "&File"
msgstr "&Soubor"
-#: objects/ui_MainWindow.h:854
-msgid "Recent Files"
-msgstr "Nedávné soubory"
+#: objects/ui_MainWindow.h:965
+msgid "Recen&t Files"
+msgstr "Nedávné &soubory"
-#: objects/ui_MainWindow.h:856
-msgid "Export"
-msgstr "Exportovat"
+#: objects/ui_MainWindow.h:966
+msgid "&Examples"
+msgstr "&Příklady"
-#: objects/ui_MainWindow.h:857
+#: objects/ui_MainWindow.h:967
+msgid "E&xport"
+msgstr "&Exportovat"
+
+#: objects/ui_MainWindow.h:968
msgid "&Edit"
msgstr "&Upravit"
-#: objects/ui_MainWindow.h:858
+#: objects/ui_MainWindow.h:969
msgid "&Design"
msgstr "&Design"
-#: objects/ui_MainWindow.h:859
+#: objects/ui_MainWindow.h:970
msgid "&View"
msgstr "&Zobrazit"
-#: objects/ui_MainWindow.h:860
+#: objects/ui_MainWindow.h:971
msgid "&Help"
msgstr "&Nápověda"
-#: objects/ui_MainWindow.h:863
+#: objects/ui_MainWindow.h:974
msgid "Find"
msgstr "Najít"
-#: objects/ui_MainWindow.h:864 objects/ui_MainWindow.h:871
+#: objects/ui_MainWindow.h:975 objects/ui_MainWindow.h:982
msgid "Replace"
msgstr "Nahradit"
-#: objects/ui_MainWindow.h:866
+#: objects/ui_MainWindow.h:977
msgid "Search string"
msgstr "Hledaný řetězec"
-#: objects/ui_MainWindow.h:867
+#: objects/ui_MainWindow.h:978
msgid "<"
msgstr "<"
-#: objects/ui_MainWindow.h:868
+#: objects/ui_MainWindow.h:979
msgid ">"
msgstr ">"
-#: objects/ui_MainWindow.h:869
+#: objects/ui_MainWindow.h:980
msgid "Done"
msgstr "Hotovo"
-#: objects/ui_MainWindow.h:870
+#: objects/ui_MainWindow.h:981
msgid "Replacement string"
msgstr "Nahradit za"
-#: objects/ui_MainWindow.h:872
+#: objects/ui_MainWindow.h:983
msgid "All"
msgstr "Vše"
@@ -686,163 +717,329 @@ msgstr "Povolit OpenCSG"
msgid "Show this message again"
msgstr "Zobrazit tuto zprávu znovu"
-#: objects/ui_Preferences.h:609
+#: objects/ui_OpenCSGWarningDialog.h:94
+msgid "Close"
+msgstr "Zavřít"
+
+#: objects/ui_Preferences.h:1061
+msgid "Preferences"
+msgstr "Předvolby"
+
+#: objects/ui_Preferences.h:1062
msgid "3D View"
msgstr "3D zobrazení"
-#: objects/ui_Preferences.h:610 src/UIUtils.cc:85
+#: objects/ui_Preferences.h:1063 src/UIUtils.cc:86
msgid "Advanced"
msgstr "Pokročilé"
-#: objects/ui_Preferences.h:611 src/mainwin.cc:2315
+#: objects/ui_Preferences.h:1064 src/mainwin.cc:2418
msgid "Editor"
msgstr "Editor"
-#: objects/ui_Preferences.h:612
+#: objects/ui_Preferences.h:1065
msgid "Update"
msgstr "Aktualizace"
-#: objects/ui_Preferences.h:613 objects/ui_Preferences.h:633
+#: objects/ui_Preferences.h:1066 objects/ui_Preferences.h:1147
msgid "Features"
msgstr "Funkce"
-#: objects/ui_Preferences.h:615
+#: objects/ui_Preferences.h:1068
msgid "Enable/Disable experimental features"
msgstr "Povolit/Zakázat experimentální funkce"
-#: objects/ui_Preferences.h:617
+#: objects/ui_Preferences.h:1070
msgid "Color scheme:"
msgstr "Barevné téma:"
-#: objects/ui_Preferences.h:618
+#: objects/ui_Preferences.h:1071
+msgid "Show Warnings and Errors in 3D View"
+msgstr "Zobrazovat varování a chyby v 3D okně"
+
+#: objects/ui_Preferences.h:1072
msgid "Editor Type"
msgstr "Varianta editoru"
-#: objects/ui_Preferences.h:621
+#: objects/ui_Preferences.h:1075
msgid "Simple Editor"
msgstr "Jednoduchý editor"
-#: objects/ui_Preferences.h:622
+#: objects/ui_Preferences.h:1076
msgid "QScintilla Editor"
msgstr "Editor QScintilla"
-#: objects/ui_Preferences.h:624
+#: objects/ui_Preferences.h:1078
msgid "(requires restart)"
msgstr "(vyžaduje restart aplikace)"
-#: objects/ui_Preferences.h:625
+#: objects/ui_Preferences.h:1079
msgid "Font"
msgstr "Písmo"
-#: objects/ui_Preferences.h:626
+#: objects/ui_Preferences.h:1080
msgid "Color syntax highlighting"
msgstr "Barva zvýrazňování syntaxe"
-#: objects/ui_Preferences.h:627
-msgid "Use Ctrl/Cmd-Mouse-wheel to zoom text"
-msgstr "Použít Ctrl/Cmd a kolečko myši k změně velikosti písma"
+#: objects/ui_Preferences.h:1081
+msgid "Ctrl/Cmd-Mouse-wheel zooms text"
+msgstr "Ctrl/Cmd a kolečko myši mění velikost písma"
-#: objects/ui_Preferences.h:629
+#: objects/ui_Preferences.h:1082
+msgid "Indentation"
+msgstr "Odsazování"
+
+#: objects/ui_Preferences.h:1083
+msgid "Auto Indent"
+msgstr "Automatické odsazování"
+
+#: objects/ui_Preferences.h:1084
+msgid "Indent using"
+msgstr "Odsazovat pomocí"
+
+#: objects/ui_Preferences.h:1087 src/settings.cc:135
+msgid "Spaces"
+msgstr "mezer"
+
+#: objects/ui_Preferences.h:1088 src/settings.cc:135
+msgid "Tabs"
+msgstr "tabulátorů"
+
+#: objects/ui_Preferences.h:1090
+msgid "Indentation width"
+msgstr "Velikost odsazení"
+
+#: objects/ui_Preferences.h:1091
+msgid "Tab width"
+msgstr "Šířka tabulátoru"
+
+#: objects/ui_Preferences.h:1092
+msgid "Tab key function"
+msgstr "Funkce klávesy tabulátor"
+
+#: objects/ui_Preferences.h:1095 objects/ui_Preferences.h:1125
+#: src/settings.cc:136
+msgid "Indent"
+msgstr "odsadí"
+
+#: objects/ui_Preferences.h:1096 src/settings.cc:136
+msgid "Insert Tab"
+msgstr "vloží znak tabulátoru"
+
+#: objects/ui_Preferences.h:1098
+msgid "Show whitespace"
+msgstr "Zobrazovat mazery"
+
+#: objects/ui_Preferences.h:1101 src/settings.cc:132
+msgid "Never"
+msgstr "nikdy"
+
+#: objects/ui_Preferences.h:1102 src/settings.cc:132
+msgid "Always"
+msgstr "vždy"
+
+#: objects/ui_Preferences.h:1103
+msgid "Only after indentation"
+msgstr "pouze za odsazením"
+
+#: objects/ui_Preferences.h:1105
+msgid "Size"
+msgstr "Velikost"
+
+#: objects/ui_Preferences.h:1106
+msgid "Display"
+msgstr "Vzhled"
+
+#: objects/ui_Preferences.h:1107
+msgid "Enable brace matching"
+msgstr "Zvýrazňovat párové závorky"
+
+#: objects/ui_Preferences.h:1108
+msgid "Highlight current line"
+msgstr "Zvýrazňovat aktuální řádek"
+
+#: objects/ui_Preferences.h:1109 objects/ui_Preferences.h:1142
+msgid "Line wrap"
+msgstr "Zalamování řádek"
+
+#: objects/ui_Preferences.h:1112 objects/ui_Preferences.h:1129
+#: objects/ui_Preferences.h:1137 src/settings.cc:127 src/settings.cc:130
+#: src/settings.cc:131
+msgid "None"
+msgstr "vypnout"
+
+#: objects/ui_Preferences.h:1113 src/settings.cc:127
+msgid "Wrap at character boundaries"
+msgstr "zalamovat na úrovni znaků"
+
+#: objects/ui_Preferences.h:1114 src/settings.cc:127
+msgid "Wrap at word boundaries"
+msgstr "zalamovat na úrovni slov"
+
+#: objects/ui_Preferences.h:1116
+msgid "Line wrap indentation"
+msgstr "Odsazení zalomených řádek"
+
+#: objects/ui_Preferences.h:1117
+msgid "Line wrap visualization"
+msgstr "Pozice symbolu zalomení"
+
+#: objects/ui_Preferences.h:1118
+msgid "Style"
+msgstr "Styl"
+
+#: objects/ui_Preferences.h:1121 src/settings.cc:128
+msgid "Fixed"
+msgstr "vždy stejný"
+
+#: objects/ui_Preferences.h:1122 src/settings.cc:128
+msgid "Same"
+msgstr "jako počátek"
+
+#: objects/ui_Preferences.h:1123 src/settings.cc:128
+msgid "Indented"
+msgstr "odsazený"
+
+#: objects/ui_Preferences.h:1126
+msgid "Start"
+msgstr "Začátek"
+
+#: objects/ui_Preferences.h:1130 objects/ui_Preferences.h:1138
+#: src/settings.cc:130 src/settings.cc:131
+msgid "Text"
+msgstr "za textem"
+
+#: objects/ui_Preferences.h:1131 objects/ui_Preferences.h:1139
+#: src/settings.cc:130 src/settings.cc:131
+msgid "Border"
+msgstr "konec řádky"
+
+#: objects/ui_Preferences.h:1132 objects/ui_Preferences.h:1140
+#: src/settings.cc:130 src/settings.cc:131
+msgid "Margin"
+msgstr "levý okraj"
+
+#: objects/ui_Preferences.h:1134
+msgid "End"
+msgstr "Konec"
+
+#: objects/ui_Preferences.h:1143
msgid "Automatically check for updates"
msgstr "Automaticky vyhledávat aktualizace"
-#: objects/ui_Preferences.h:630
+#: objects/ui_Preferences.h:1144
msgid "Include development snapshots"
msgstr "Včetně nestabilních verzí"
-#: objects/ui_Preferences.h:631
+#: objects/ui_Preferences.h:1145
msgid "Check Now"
msgstr "Zkontrolovat nyní"
-#: objects/ui_Preferences.h:632
+#: objects/ui_Preferences.h:1146
msgid "Last checked: "
msgstr "Poslední kontrola:"
-#: objects/ui_Preferences.h:634
+#: objects/ui_Preferences.h:1148
msgid "OpenCSG"
msgstr "OpenCSG"
-#: objects/ui_Preferences.h:635
+#: objects/ui_Preferences.h:1149
msgid "Show capability warning"
msgstr "Zobrazovat varování o vlastnostech"
-#: objects/ui_Preferences.h:636
+#: objects/ui_Preferences.h:1150
msgid "Enable for OpenGL 1.x"
msgstr "Povolit pro OpenGL 1.x"
-#: objects/ui_Preferences.h:637
+#: objects/ui_Preferences.h:1151
msgid "Turn off rendering at "
msgstr "Vypnout renderování při"
-#: objects/ui_Preferences.h:638
+#: objects/ui_Preferences.h:1152
msgid "elements"
msgstr "prvcích"
-#: objects/ui_Preferences.h:639
+#: objects/ui_Preferences.h:1153
msgid "Force Goldfeather"
msgstr "Vynutit zobrazení Goldfeather"
-#: objects/ui_Preferences.h:640
+#: objects/ui_Preferences.h:1154
msgid "CGAL Cache size"
msgstr "Velikost CGAL cache"
-#: objects/ui_Preferences.h:641 objects/ui_Preferences.h:643
+#: objects/ui_Preferences.h:1155 objects/ui_Preferences.h:1157
msgid "bytes"
msgstr "bytů"
-#: objects/ui_Preferences.h:642
+#: objects/ui_Preferences.h:1156
msgid "PolySet Cache size"
msgstr "Velikost PolySet cache"
-#: objects/ui_Preferences.h:644
+#: objects/ui_Preferences.h:1158
msgid "Allow to open multiple documents"
msgstr "Povolit současné otevření více dokumentů"
-#: objects/ui_Preferences.h:645
+#: objects/ui_Preferences.h:1159
msgid "Enable docking of Editor and Console in different places"
msgstr "Povolit zaparkování editoru a konzole na různá místa"
-#: objects/ui_Preferences.h:646
+#: objects/ui_Preferences.h:1160
msgid "Enable undocking of Editor and Console to separate windows"
msgstr "Povolit plovoucí editor a konzoli"
-#: objects/ui_Preferences.h:647
+#: objects/ui_Preferences.h:1161
msgid "Show Welcome Screen"
msgstr "Zobrazovat uvítací obrazovku"
-#: objects/ui_Preferences.h:648
+#: objects/ui_Preferences.h:1162
msgid "Enable user interface localization (requires restart of OpenSCAD)"
msgstr "Povolit lokalizaci rozhraní OpenSCADu (vyžaduje restart aplikace)"
-#: objects/ui_Preferences.h:649
-msgid "toolBar"
-msgstr ""
-
#: objects/ui_ProgressWidget.h:72
-msgid "Form"
-msgstr ""
-
-#: objects/ui_ProgressWidget.h:73
msgid "%v / %m"
msgstr "%v / %m"
-#: src/AboutDialog.h:15
-msgid "About OpenSCAD "
-msgstr "O OpenSCADu "
+#: src/Camera.cc:126
+#, c-format
+msgid ""
+"Viewport: translate = [ %.2f %.2f %.2f ], rotate = [ %.2f %.2f %.2f ], "
+"distance = %.2f"
+msgstr ""
+"Pohled: posun = [ %.2f %.2f %.2f ], rotace = [ %.2f %.2f %.2f ], vzdálenost "
+"= %.2f"
-#: src/mainwin.cc:773 src/mainwin.cc:1315
+#: src/mainwin.cc:778 src/mainwin.cc:1354
msgid "Untitled.scad"
msgstr "Bezejmenný.scad"
-#: src/mainwin.cc:1299
+#: src/mainwin.cc:971
+msgid "Compile error."
+msgstr "Chyba kompilace."
+
+#: src/mainwin.cc:974
+msgid "Error while compiling '%1'."
+msgstr "Chyba při kompilaci '%1'."
+
+#: src/mainwin.cc:978
+msgid "Compilation generated %1 warning."
+msgid_plural "Compilation generated %1 warnings."
+msgstr[0] "Kompilace vyvolala %1 varování."
+msgstr[1] "Kompilace vyvolala %1 varování."
+msgstr[2] "Kompilace vyvolala %1 varování."
+
+#: src/mainwin.cc:988
+msgid " For details see console window."
+msgstr "Pro podrobnosti nahlédněte do konzole."
+
+#: src/mainwin.cc:1353
msgid "Save File"
msgstr "Uložit soubor"
-#: src/mainwin.cc:1301
+#: src/mainwin.cc:1355
msgid "OpenSCAD Designs (*.scad)"
msgstr "OpenSCAD designy(*.scad)"
-#: src/mainwin.cc:1311
+#: src/mainwin.cc:1365
msgid ""
"%1 already exists.\n"
"Do you want to replace it?"
@@ -850,11 +1047,11 @@ msgstr ""
"%1 již existuje.\n"
"Chcete jej nahradit?"
-#: src/mainwin.cc:1630
+#: src/mainwin.cc:1684
msgid "Application"
msgstr "Aplikace"
-#: src/mainwin.cc:1631
+#: src/mainwin.cc:1685
msgid ""
"The document has been modified.\n"
"Do you really want to reload the file?"
@@ -862,65 +1059,63 @@ msgstr ""
"Dokument byl pozměněn.\n"
"Opravdu jej chcete znovu načíst?"
-#: src/mainwin.cc:1942 src/mainwin.cc:1999
+#: src/mainwin.cc:2038 src/mainwin.cc:2094
msgid "Export %1 File"
msgstr "Exportovat %s soubor(ů)"
-#: src/mainwin.cc:1943 src/mainwin.cc:2003
+#: src/mainwin.cc:2039 src/mainwin.cc:2098
msgid "%1 Files (*%2)"
msgstr "%1 Soubor(ů) (*%2)"
-#: src/mainwin.cc:1944
+#: src/mainwin.cc:2040
msgid "Untitled"
msgstr "Bezejmenný"
-#: src/mainwin.cc:2001
+#: src/mainwin.cc:2096
msgid "Untitled%1"
msgstr "Bezejmenný%1"
-#: src/mainwin.cc:2052
+#: src/mainwin.cc:2147
msgid "Export CSG File"
msgstr "Exportovat CSG soubor"
-#: src/mainwin.cc:2053
+#: src/mainwin.cc:2148
msgid "Untitled.csg"
msgstr "Bezejmenný.csg"
-#: src/mainwin.cc:2054
+#: src/mainwin.cc:2149
msgid "CSG Files (*.csg)"
msgstr "CSG soubory (*.csg)"
-#: src/mainwin.cc:2080
+#: src/mainwin.cc:2175
msgid "Export Image"
msgstr "Exportovat obrázek"
-#: src/mainwin.cc:2080
+#: src/mainwin.cc:2175
msgid "PNG Files (*.png)"
msgstr "PNG Soubory (*.png)"
-#: src/mainwin.cc:2320
+#: src/mainwin.cc:2423
msgid "Console"
msgstr "Konzole"
-#: src/mainwin.cc:2447
+#: src/mainwin.cc:2560
msgid "The document has been modified."
msgstr "Dokument byl pozměněn."
-#: src/mainwin.cc:2448
+#: src/mainwin.cc:2561
msgid "Do you want to save your changes?"
msgstr "Chcete uložit změny?"
-#: src/QGLView.cc:114
+#: src/openscad.cc:604
msgid ""
-"\n"
-"Using QGLWidget\n"
-"\n"
+"Fontconfig needs to update its font cache.\n"
+"This can take up to a couple of minutes."
msgstr ""
-"\n"
-"Používám QGLWidget\n"
-"\n"
+"Fontconfig potřebuje aktualizovat cache.\n"
+"To může trvat až několik minut."
-#: src/QGLView.cc:131
+#: src/QGLView.cc:129
msgid ""
"Warning: You may experience OpenCSG rendering errors.\n"
"\n"
@@ -928,7 +1123,7 @@ msgstr ""
"Varování: Můžete zaznamenat chyby zobrazení pomocí OpenCSG.\n"
"\n"
-#: src/QGLView.cc:134
+#: src/QGLView.cc:132
msgid ""
"Warning: Missing OpenGL capabilities for OpenCSG - OpenCSG has been "
"disabled.\n"
@@ -937,7 +1132,7 @@ msgstr ""
"Varování: Chybí OpenGL funkce pro OpenCSG - OpenCSG bylo vypnuto.\n"
"\n"
-#: src/QGLView.cc:137
+#: src/QGLView.cc:135
msgid ""
"It is highly recommended to use OpenSCAD on a system with OpenGL 2.0 or "
"later.\n"
@@ -946,7 +1141,7 @@ msgstr ""
"Vysoce doporučujeme používat OpenSCAD na systému s OpenGL 2.0 nebo novější.\n"
"Zde je informace o vašem vykreslovacím systému:\n"
-#: src/QGLView.cc:141
+#: src/QGLView.cc:139
#, c-format
msgid ""
"GLEW version %s\n"
@@ -957,27 +1152,40 @@ msgstr ""
"%s (%s)\n"
"OpenGL verze %s\n"
-#: src/QGLView.cc:171
-#, c-format
-msgid ""
-"Viewport: translate = [ %.2f %.2f %.2f ], rotate = [ %.2f %.2f %.2f ], "
-"distance = %.2f"
-msgstr ""
-"Pohled: posun = [ %.2f %.2f %.2f ], rotace = [ %.2f %.2f %.2f ], vzdálenost "
-"= %.2f"
+#: src/settings.cc:132
+msgid "After indentation"
+msgstr "za odsazením"
-#: src/UIUtils.cc:85
+#: src/UIUtils.cc:86
msgid "Basics"
msgstr "Základy"
-#: src/UIUtils.cc:85
+#: src/UIUtils.cc:86
msgid "Shapes"
msgstr "Tvary"
-#: src/UIUtils.cc:85
+#: src/UIUtils.cc:86
msgid "Extrusion"
msgstr "Vytažení"
+#~ msgid "Top"
+#~ msgstr "Shora"
+
+#~ msgid "Back"
+#~ msgstr "Zezadu"
+
+#~ msgid ""
+#~ "\n"
+#~ "Using QGLWidget\n"
+#~ "\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Používám QGLWidget\n"
+#~ "\n"
+
+#~ msgid "About OpenSCAD "
+#~ msgstr "O OpenSCADu "
+
#~ msgid "Paste font selector to Editor Window"
#~ msgstr "Vložit výběr písma do zdrojového kódu"
@@ -993,9 +1201,6 @@ msgstr "Vytažení"
#~ msgid "Sunset"
#~ msgstr "Západ slunce"
-#~ msgid "&Compile"
-#~ msgstr "Z&kompilovat"
-
#~ msgid "Compile and &Render (CGAL)"
#~ msgstr "Zkompilovat a vy&renderovat"
diff --git a/locale/de.po b/locale/de.po
index df48ce1c..1f017695 100644
--- a/locale/de.po
+++ b/locale/de.po
@@ -7,8 +7,8 @@ msgid ""
msgstr ""
"Project-Id-Version: OpenSCAD 2014.01.05\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2014-12-22 23:28+0100\n"
-"PO-Revision-Date: 2014-12-22 23:12+0100\n"
+"POT-Creation-Date: 2015-02-01 18:03+0100\n"
+"PO-Revision-Date: 2015-02-01 19:39+0100\n"
"Last-Translator: Torsten Paul \n"
"Language-Team: German\n"
"Language: de\n"
@@ -17,28 +17,57 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 1.6.10\n"
"X-Poedit-SourceCharset: UTF-8\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: objects/ui_AboutDialog.h:51 src/AboutDialog.h:15
+#: objects/ui_AboutDialog.h:103 src/AboutDialog.h:13
msgid "About OpenSCAD"
msgstr "Über OpenSCAD"
-#: objects/ui_FontListDialog.h:102
+#: objects/ui_AboutDialog.h:105 objects/ui_launchingscreen.h:305
+msgid ""
+"\n"
+"OpenSCAD
\n"
+"The Programmers Solid 3D CAD Modeller
\n"
+"\n"
+"\n"
+"\n"
+msgstr ""
+"\n"
+"OpenSCAD
\n"
+"The Programmers Solid 3D CAD Modeller
\n"
+"\n"
+"\n"
+"\n"
+
+#: objects/ui_AboutDialog.h:112
+msgid "OK"
+msgstr "OK"
+
+#: objects/ui_FontListDialog.h:105
msgid "OpenSCAD Font List"
msgstr "OpenSCAD Fontliste"
-#: objects/ui_FontListDialog.h:103 objects/ui_LibraryInfoDialog.h:77
+#: objects/ui_FontListDialog.h:106 objects/ui_LibraryInfoDialog.h:77
msgid "&OK"
msgstr "OK"
-#: objects/ui_FontListDialog.h:104
+#: objects/ui_FontListDialog.h:107
msgid "Copy to Clipboard"
msgstr "Kopieren"
-#: objects/ui_FontListDialog.h:105
+#: objects/ui_FontListDialog.h:108
msgid "Filter:"
msgstr "Filter:"
-#: objects/ui_FontListDialog.h:106
+#: objects/ui_FontListDialog.h:109
msgid ""
"This list shows the fonts currently registered with "
"OpenSCAD.
Example:
text(t = "OpenSCAD", font = "
""Liberation Sans:style=Italic");
"
-#: objects/ui_launchingscreen.h:276
+#: objects/ui_launchingscreen.h:294
msgid "Welcome to OpenSCAD"
msgstr "Willkommen zu OpenSCAD"
-#: objects/ui_launchingscreen.h:277
+#: objects/ui_launchingscreen.h:295
msgid "New"
msgstr "Neu"
-#: objects/ui_launchingscreen.h:278
+#: objects/ui_launchingscreen.h:296
msgid "Open"
msgstr "Öffnen"
-#: objects/ui_launchingscreen.h:279
+#: objects/ui_launchingscreen.h:297
msgid "Help"
msgstr "Hilfe"
-#: objects/ui_launchingscreen.h:280
+#: objects/ui_launchingscreen.h:298
msgid "Recents"
msgstr "Zuletzt benutze Dateien"
-#: objects/ui_launchingscreen.h:281
+#: objects/ui_launchingscreen.h:299
msgid "Open Recent"
msgstr "Datei öffnen"
-#: objects/ui_launchingscreen.h:282 objects/ui_launchingscreen.h:284
-#: objects/ui_MainWindow.h:855
+#: objects/ui_launchingscreen.h:300 objects/ui_launchingscreen.h:302
msgid "Examples"
msgstr "Beispiele"
-#: objects/ui_launchingscreen.h:285
+#: objects/ui_launchingscreen.h:303
msgid "Open Example"
msgstr "Beispiel öffnen"
-#: objects/ui_launchingscreen.h:287
-msgid ""
-"\n"
-"OpenSCAD
\n"
-"The Programmers Solid 3D CAD Modeller
\n"
-"\n"
-"\n"
-"\n"
-msgstr ""
-"\n"
-"OpenSCAD
\n"
-"The Programmers Solid 3D CAD Modeller
\n"
-"\n"
-"\n"
-"\n"
-
-#: objects/ui_launchingscreen.h:294
+#: objects/ui_launchingscreen.h:312
msgid "Don't show again"
msgstr "Dialog nicht wieder anzeigen"
+#: objects/ui_launchingscreen.h:313
+msgid "Version"
+msgstr "Version"
+
#: objects/ui_LibraryInfoDialog.h:75
msgid "Lib & Build Info"
msgstr "Versionsinformationen"
@@ -129,543 +137,567 @@ msgstr "Versionsinformationen"
msgid "OpenSCAD Detailed Library and Build Information"
msgstr "Detailierte Informationen über diese OpenSCAD Version"
-#: objects/ui_MainWindow.h:731
+#: objects/ui_MainWindow.h:837
msgid "&New"
msgstr "&Neu"
-#: objects/ui_MainWindow.h:732
+#: objects/ui_MainWindow.h:838
msgid "Ctrl+N"
msgstr "Ctrl+N"
-#: objects/ui_MainWindow.h:733
+#: objects/ui_MainWindow.h:839
msgid "&Open..."
-msgstr "Ö&ffnen"
+msgstr "Ö&ffnen..."
-#: objects/ui_MainWindow.h:734
+#: objects/ui_MainWindow.h:840
msgid "Ctrl+O"
msgstr "Ctrl+O"
-#: objects/ui_MainWindow.h:735
+#: objects/ui_MainWindow.h:841
msgid "&Save"
msgstr "&Speichern"
-#: objects/ui_MainWindow.h:736
+#: objects/ui_MainWindow.h:842
msgid "Ctrl+S"
msgstr "Ctrl+S"
-#: objects/ui_MainWindow.h:737
+#: objects/ui_MainWindow.h:843
msgid "Save &As..."
msgstr "Speichern &Unter..."
-#: objects/ui_MainWindow.h:738
+#: objects/ui_MainWindow.h:844
msgid "Ctrl+Shift+S"
msgstr "Ctrl+Shift+S"
-#: objects/ui_MainWindow.h:739
+#: objects/ui_MainWindow.h:845
msgid "&Reload"
msgstr "Neu &laden"
-#: objects/ui_MainWindow.h:740
+#: objects/ui_MainWindow.h:846
msgid "Ctrl+R"
msgstr "Ctrl+R"
-#: objects/ui_MainWindow.h:741
+#: objects/ui_MainWindow.h:847
msgid "&Quit"
-msgstr "&Beenden"
+msgstr "Beenden"
-#: objects/ui_MainWindow.h:742
+#: objects/ui_MainWindow.h:848
msgid "Ctrl+Q"
msgstr "Ctrl+Q"
-#: objects/ui_MainWindow.h:743
+#: objects/ui_MainWindow.h:849
msgid "&Undo"
msgstr "&Rückgängig"
-#: objects/ui_MainWindow.h:744
+#: objects/ui_MainWindow.h:850
msgid "Ctrl+Z"
msgstr "Ctrl+Z"
-#: objects/ui_MainWindow.h:745
+#: objects/ui_MainWindow.h:851
msgid "&Redo"
msgstr "&Wiederholen"
-#: objects/ui_MainWindow.h:746
+#: objects/ui_MainWindow.h:852
msgid "Ctrl+Shift+Z"
msgstr "Ctrl+Shift+Z"
-#: objects/ui_MainWindow.h:747
+#: objects/ui_MainWindow.h:853
msgid "Cu&t"
msgstr "Ausschneiden"
-#: objects/ui_MainWindow.h:748
+#: objects/ui_MainWindow.h:854
msgid "Ctrl+X"
msgstr "Ctrl+X"
-#: objects/ui_MainWindow.h:749
+#: objects/ui_MainWindow.h:855
msgid "&Copy"
msgstr "Kopieren"
-#: objects/ui_MainWindow.h:750
+#: objects/ui_MainWindow.h:856
msgid "Ctrl+C"
msgstr "Ctrl+C"
-#: objects/ui_MainWindow.h:751
+#: objects/ui_MainWindow.h:857
msgid "&Paste"
msgstr "Einfügen"
-#: objects/ui_MainWindow.h:752
+#: objects/ui_MainWindow.h:858
msgid "Ctrl+V"
msgstr "Ctrl+V"
-#: objects/ui_MainWindow.h:753
+#: objects/ui_MainWindow.h:859
msgid "&Indent"
-msgstr "Einzug erhöhen"
+msgstr "Einzug er&höhen"
-#: objects/ui_MainWindow.h:754
+#: objects/ui_MainWindow.h:860
msgid "Ctrl+I"
msgstr "Ctrl+I"
-#: objects/ui_MainWindow.h:755
-msgid "U&nindent"
-msgstr "Einzug vermindern"
-
-#: objects/ui_MainWindow.h:756
-msgid "Ctrl+Shift+I"
-msgstr "Ctrl+Shift+I"
-
-#: objects/ui_MainWindow.h:757
+#: objects/ui_MainWindow.h:861
msgid "C&omment"
msgstr "K&ommentieren"
-#: objects/ui_MainWindow.h:758
+#: objects/ui_MainWindow.h:862
msgid "Ctrl+D"
msgstr "Ctrl+D"
-#: objects/ui_MainWindow.h:759
+#: objects/ui_MainWindow.h:863
msgid "Unco&mment"
-msgstr "Kommentar entfernen"
+msgstr "Kommentar ent&fernen"
-#: objects/ui_MainWindow.h:760
+#: objects/ui_MainWindow.h:864
msgid "Ctrl+Shift+D"
msgstr "Ctrl+Shift+D"
-#: objects/ui_MainWindow.h:761
-msgid "Paste viewport translation"
-msgstr "Aktuelle Verschiebung einfügen"
+#: objects/ui_MainWindow.h:865
+msgid "P&aste viewport translation"
+msgstr "Aktuelle Versch&iebung einfügen"
-#: objects/ui_MainWindow.h:762
+#: objects/ui_MainWindow.h:866
msgid "Ctrl+T"
msgstr "Ctrl+T"
-#: objects/ui_MainWindow.h:763
-msgid "Paste viewport rotation"
-msgstr "Aktuelle Rotation einfügen"
+#: objects/ui_MainWindow.h:867
+msgid "Past&e viewport rotation"
+msgstr "Aktuelle Ro&tation einfügen"
-#: objects/ui_MainWindow.h:764 objects/ui_MainWindow.h:842
-msgid "Zoom In"
-msgstr "Vergrößern"
+#: objects/ui_MainWindow.h:868
+msgid "Increase Font &Size"
+msgstr "Font&größe erhöhen"
-#: objects/ui_MainWindow.h:765
+#: objects/ui_MainWindow.h:869
msgid "Ctrl++"
msgstr "Ctrl++"
-#: objects/ui_MainWindow.h:766 objects/ui_MainWindow.h:844
-msgid "Zoom Out"
-msgstr "Verkleinern"
+#: objects/ui_MainWindow.h:870
+msgid "Decrease Font Si&ze"
+msgstr "Fontgröße &verringern"
-#: objects/ui_MainWindow.h:767
+#: objects/ui_MainWindow.h:871
msgid "Ctrl+-"
msgstr "Ctrl+-"
-#: objects/ui_MainWindow.h:768
-msgid "Hide editor"
+#: objects/ui_MainWindow.h:872
+msgid "H&ide editor"
msgstr "Editor verstecken"
-#: objects/ui_MainWindow.h:769
+#: objects/ui_MainWindow.h:873
msgid "&Reload and Preview"
-msgstr "Neu laden und Vorschau"
+msgstr "Neu &laden und Vorschau"
-#: objects/ui_MainWindow.h:770
+#: objects/ui_MainWindow.h:874
msgid "F4"
msgstr "F4"
-#: objects/ui_MainWindow.h:771
+#: objects/ui_MainWindow.h:875
msgid "&Preview"
-msgstr "Vorschau"
+msgstr "&Vorschau"
-#: objects/ui_MainWindow.h:772
+#: objects/ui_MainWindow.h:876
msgid "F5"
msgstr "F5"
-#: objects/ui_MainWindow.h:773
-msgid "&Render"
-msgstr "Rendern"
+#: objects/ui_MainWindow.h:877
+msgid "R&ender"
+msgstr "&Rendern"
-#: objects/ui_MainWindow.h:774
+#: objects/ui_MainWindow.h:878
msgid "F6"
msgstr "F6"
-#: objects/ui_MainWindow.h:775
-msgid "Check Validity"
-msgstr "Design überprüfen"
+#: objects/ui_MainWindow.h:879
+msgid "&Check Validity"
+msgstr "&Design überprüfen"
-#: objects/ui_MainWindow.h:776
-msgid "Display &AST..."
-msgstr "&AST Baum anzeigen..."
+#: objects/ui_MainWindow.h:880
+msgid "Display A&ST..."
+msgstr "A&ST Baum anzeigen..."
-#: objects/ui_MainWindow.h:777
+#: objects/ui_MainWindow.h:881
msgid "Display CSG &Tree..."
-msgstr "CSG Baum anzeigen..."
+msgstr "CSG &Baum anzeigen..."
-#: objects/ui_MainWindow.h:778
-msgid "Display CSG &Products..."
-msgstr "CSG Gleichungen anzeigen..."
+#: objects/ui_MainWindow.h:882
+msgid "Display CSG Pr&oducts..."
+msgstr "CSG &Gleichungen anzeigen..."
-#: objects/ui_MainWindow.h:779
+#: objects/ui_MainWindow.h:883
msgid "Export as &STL..."
msgstr "&STL exportieren..."
-#: objects/ui_MainWindow.h:780
+#: objects/ui_MainWindow.h:884
msgid "Export as &OFF..."
msgstr "&OFF exportieren..."
-#: objects/ui_MainWindow.h:781
+#: objects/ui_MainWindow.h:885
msgid "Preview"
-msgstr "Vorschau"
+msgstr "&Vorschau"
-#: objects/ui_MainWindow.h:782
+#: objects/ui_MainWindow.h:886
msgid "F9"
msgstr "F9"
-#: objects/ui_MainWindow.h:783
+#: objects/ui_MainWindow.h:887
msgid "Surfaces"
-msgstr "Flächen anzeigen"
+msgstr "&Flächen anzeigen"
-#: objects/ui_MainWindow.h:784
+#: objects/ui_MainWindow.h:888
msgid "F10"
msgstr "F10"
-#: objects/ui_MainWindow.h:785
+#: objects/ui_MainWindow.h:889
msgid "Wireframe"
-msgstr "Gittermodell"
+msgstr "&Gittermodell"
-#: objects/ui_MainWindow.h:786
+#: objects/ui_MainWindow.h:890
msgid "F11"
msgstr "F11"
-#: objects/ui_MainWindow.h:787
+#: objects/ui_MainWindow.h:891
msgid "Thrown Together"
-msgstr "Kombinierte Anzeige"
+msgstr "Kom&binierte Anzeige"
-#: objects/ui_MainWindow.h:788
+#: objects/ui_MainWindow.h:892
msgid "F12"
msgstr "F12"
-#: objects/ui_MainWindow.h:789
+#: objects/ui_MainWindow.h:893
msgid "Show Edges"
-msgstr "Kanten anzeigen"
+msgstr "&Kanten anzeigen"
-#: objects/ui_MainWindow.h:790
+#: objects/ui_MainWindow.h:894
msgid "Ctrl+1"
msgstr "Ctrl+1"
-#: objects/ui_MainWindow.h:791
+#: objects/ui_MainWindow.h:895
msgid "Show Axes"
-msgstr "Koordinatenachsen anzeigen"
+msgstr "Koordinaten&achsen anzeigen"
-#: objects/ui_MainWindow.h:792
+#: objects/ui_MainWindow.h:896
msgid "Ctrl+2"
msgstr "Ctrl+2"
-#: objects/ui_MainWindow.h:793
+#: objects/ui_MainWindow.h:897
msgid "Show Crosshairs"
-msgstr "Rotationsmittelpunkt anzeigen"
+msgstr "Rotations&mittelpunkt anzeigen"
-#: objects/ui_MainWindow.h:794
+#: objects/ui_MainWindow.h:898
msgid "Ctrl+3"
msgstr "Ctrl+3"
-#: objects/ui_MainWindow.h:795
+#: objects/ui_MainWindow.h:899
+msgid "Show Scale Markers"
+msgstr "Axen&einteilung anzeigen"
+
+#: objects/ui_MainWindow.h:900
msgid "Animate"
msgstr "Animation"
-#: objects/ui_MainWindow.h:796
-msgid "Top"
-msgstr "Oben"
+#: objects/ui_MainWindow.h:901
+msgid "&Top"
+msgstr "&Oben"
-#: objects/ui_MainWindow.h:797
+#: objects/ui_MainWindow.h:902
msgid "Ctrl+4"
msgstr "Ctrl+4"
-#: objects/ui_MainWindow.h:798
-msgid "Bottom"
-msgstr "Unten"
+#: objects/ui_MainWindow.h:903
+msgid "&Bottom"
+msgstr "&Unten"
-#: objects/ui_MainWindow.h:799
+#: objects/ui_MainWindow.h:904
msgid "Ctrl+5"
msgstr "Ctrl+5"
-#: objects/ui_MainWindow.h:800
-msgid "Left"
-msgstr "Links"
+#: objects/ui_MainWindow.h:905
+msgid "&Left"
+msgstr "&Links"
-#: objects/ui_MainWindow.h:801
+#: objects/ui_MainWindow.h:906
msgid "Ctrl+6"
msgstr "Ctrl+6"
-#: objects/ui_MainWindow.h:802
-msgid "Right"
-msgstr "Rechts"
+#: objects/ui_MainWindow.h:907
+msgid "&Right"
+msgstr "&Rechts"
-#: objects/ui_MainWindow.h:803
+#: objects/ui_MainWindow.h:908
msgid "Ctrl+7"
msgstr "Ctrl+7"
-#: objects/ui_MainWindow.h:804
-msgid "Front"
-msgstr "Vorn"
+#: objects/ui_MainWindow.h:909
+msgid "&Front"
+msgstr "Vor&n"
-#: objects/ui_MainWindow.h:805
+#: objects/ui_MainWindow.h:910
msgid "Ctrl+8"
msgstr "Ctrl+8"
-#: objects/ui_MainWindow.h:806
-msgid "Back"
-msgstr "Hinten"
+#: objects/ui_MainWindow.h:911
+msgid "Bac&k"
+msgstr "&Hinten"
-#: objects/ui_MainWindow.h:807
+#: objects/ui_MainWindow.h:912
msgid "Ctrl+9"
msgstr "Ctrl+9"
-#: objects/ui_MainWindow.h:808
-msgid "Diagonal"
-msgstr "Diagonal"
+#: objects/ui_MainWindow.h:913
+msgid "&Diagonal"
+msgstr "&Diagonal"
-#: objects/ui_MainWindow.h:809
+#: objects/ui_MainWindow.h:914
msgid "Ctrl+0"
msgstr "Ctrl+0"
-#: objects/ui_MainWindow.h:810
-msgid "Center"
-msgstr "Zentriert"
+#: objects/ui_MainWindow.h:915
+msgid "Ce&nter"
+msgstr "&Zentriert"
-#: objects/ui_MainWindow.h:811
-msgid "Perspective"
-msgstr "Perspektivisch"
+#: objects/ui_MainWindow.h:916
+msgid "&Perspective"
+msgstr "&Perspektivisch"
-#: objects/ui_MainWindow.h:812
-msgid "Orthogonal"
-msgstr "Orthogonal"
+#: objects/ui_MainWindow.h:917
+msgid "&Orthogonal"
+msgstr "Or&thogonal"
-#: objects/ui_MainWindow.h:813
-msgid "Hide console"
+#: objects/ui_MainWindow.h:918
+msgid "H&ide console"
msgstr "Konsole verstecken"
-#: objects/ui_MainWindow.h:814
-msgid "About"
-msgstr "Über OpenSCAD"
+#: objects/ui_MainWindow.h:919
+msgid "&About"
+msgstr "Über &OpenSCAD"
-#: objects/ui_MainWindow.h:815
-msgid "Documentation"
-msgstr "Dokumentation"
+#: objects/ui_MainWindow.h:920
+msgid "&Documentation"
+msgstr "&Dokumentation"
-#: objects/ui_MainWindow.h:816
+#: objects/ui_MainWindow.h:921
msgid "Clear Recent"
msgstr "Zuletzt benutze Dateien löschen"
-#: objects/ui_MainWindow.h:817
-msgid "Export as DXF..."
+#: objects/ui_MainWindow.h:922
+msgid "Export as &DXF..."
msgstr "DXF exportieren..."
-#: objects/ui_MainWindow.h:818 objects/ui_OpenCSGWarningDialog.h:94
-msgid "Close"
+#: objects/ui_MainWindow.h:923
+msgid "&Close"
msgstr "Schließen"
-#: objects/ui_MainWindow.h:819
+#: objects/ui_MainWindow.h:924
msgid "Ctrl+W"
msgstr "Ctrl+W"
-#: objects/ui_MainWindow.h:820 objects/ui_Preferences.h:608
-msgid "Preferences"
-msgstr "Einstellungen"
+#: objects/ui_MainWindow.h:925
+msgid "&Preferences"
+msgstr "Ei&nstellungen"
-#: objects/ui_MainWindow.h:821
-msgid "Find..."
-msgstr "Suchen..."
+#: objects/ui_MainWindow.h:926
+msgid "&Find..."
+msgstr "&Suchen..."
-#: objects/ui_MainWindow.h:822
+#: objects/ui_MainWindow.h:927
msgid "Ctrl+F"
msgstr "Ctrl+F"
-#: objects/ui_MainWindow.h:823
-msgid "Find and Replace..."
-msgstr "Suchen und Ersetzen..."
+#: objects/ui_MainWindow.h:928
+msgid "Fin&d and Replace..."
+msgstr "Suchen und &Ersetzen..."
-#: objects/ui_MainWindow.h:824
+#: objects/ui_MainWindow.h:929
msgid "Ctrl+Alt+F"
msgstr "Ctrl+Alt+F"
-#: objects/ui_MainWindow.h:825
-msgid "Find Next"
-msgstr "Weiter suchen"
+#: objects/ui_MainWindow.h:930
+msgid "Find Ne&xt"
+msgstr "&Weiter suchen"
-#: objects/ui_MainWindow.h:826
+#: objects/ui_MainWindow.h:931
msgid "Ctrl+G"
msgstr "Ctrl+G"
-#: objects/ui_MainWindow.h:827
-msgid "Find Previous"
-msgstr "Rückwärts suchen"
+#: objects/ui_MainWindow.h:932
+msgid "Find Pre&vious"
+msgstr "Rüc&kwärts suchen"
-#: objects/ui_MainWindow.h:828
+#: objects/ui_MainWindow.h:933
msgid "Ctrl+Shift+G"
msgstr "Ctrl+Shift+G"
-#: objects/ui_MainWindow.h:829
-msgid "Use Selection for Find"
-msgstr "Auswahl suchen"
+#: objects/ui_MainWindow.h:934
+msgid "Use Se&lection for Find"
+msgstr "&Auswahl suchen"
-#: objects/ui_MainWindow.h:830
+#: objects/ui_MainWindow.h:935
msgid "Ctrl+E"
msgstr "Ctrl+E"
-#: objects/ui_MainWindow.h:831
-msgid "Flush Caches"
-msgstr "Cache leeren"
+#: objects/ui_MainWindow.h:936
+msgid "&Flush Caches"
+msgstr "&Cache leeren"
-#: objects/ui_MainWindow.h:832
-msgid "OpenSCAD Homepage"
-msgstr "OpenSCAD Homepage"
+#: objects/ui_MainWindow.h:937
+msgid "&OpenSCAD Homepage"
+msgstr "OpenSCAD &Homepage"
-#: objects/ui_MainWindow.h:833
-msgid "Automatic Reload and Preview"
-msgstr "Automatisch neu Laden und Vorschau"
+#: objects/ui_MainWindow.h:938
+msgid "&Automatic Reload and Preview"
+msgstr "&Automatisch neu Laden und Vorschau"
-#: objects/ui_MainWindow.h:834
-msgid "Export as Image..."
+#: objects/ui_MainWindow.h:939
+msgid "Export as &Image..."
msgstr "Image exportieren..."
-#: objects/ui_MainWindow.h:835
-msgid "Export as CSG..."
+#: objects/ui_MainWindow.h:940
+msgid "Export as &CSG..."
msgstr "CSG exportieren..."
-#: objects/ui_MainWindow.h:836
-msgid "Library info"
-msgstr "Versionsinformationen"
+#: objects/ui_MainWindow.h:941
+msgid "&Library info"
+msgstr "&Versionsinformationen"
-#: objects/ui_MainWindow.h:837
-msgid "Show Library Folder..."
-msgstr "Bibliotheken anzeigen..."
+#: objects/ui_MainWindow.h:942
+msgid "Show &Library Folder..."
+msgstr "Bibli&otheken anzeigen..."
-#: objects/ui_MainWindow.h:838
+#: objects/ui_MainWindow.h:943
msgid "Reset View"
-msgstr "Ansicht zurücksetzen"
+msgstr "Ans&icht zurücksetzen"
-#: objects/ui_MainWindow.h:839
-msgid "Font List"
-msgstr "Fontliste"
+#: objects/ui_MainWindow.h:944
+msgid "&Font List"
+msgstr "&Fontliste"
-#: objects/ui_MainWindow.h:840
-msgid "Export as SVG..."
+#: objects/ui_MainWindow.h:945
+msgid "Export as S&VG..."
msgstr "SVG exportieren..."
-#: objects/ui_MainWindow.h:841
-msgid "Export as AMF..."
+#: objects/ui_MainWindow.h:946
+msgid "Export as &AMF..."
msgstr "AMF exportieren..."
-#: objects/ui_MainWindow.h:843
+#: objects/ui_MainWindow.h:947
+msgid "Zoom In"
+msgstr "Vergrößern"
+
+#: objects/ui_MainWindow.h:948
msgid "Ctrl+]"
msgstr "Ctrl+]"
-#: objects/ui_MainWindow.h:845
+#: objects/ui_MainWindow.h:949
+msgid "Zoom Out"
+msgstr "Verkleinern"
+
+#: objects/ui_MainWindow.h:950
msgid "Ctrl+["
msgstr "Ctrl+["
-#: objects/ui_MainWindow.h:846
+#: objects/ui_MainWindow.h:951
msgid "View All"
-msgstr "Alles anzeigen"
+msgstr "Alle&s anzeigen"
-#: objects/ui_MainWindow.h:847
-msgid "Convert Tabs to Spaces"
-msgstr "Tabs in Leerzeichen umwandeln"
+#: objects/ui_MainWindow.h:952
+msgid "Conv&ert Tabs to Spaces"
+msgstr "Tabs in Leerzeichen &umwandeln"
-#: objects/ui_MainWindow.h:848
+#: objects/ui_MainWindow.h:953
msgid "Hide toolbars"
msgstr "Symbolleisten verstecken"
-#: objects/ui_MainWindow.h:849
+#: objects/ui_MainWindow.h:954
+msgid "U&nindent"
+msgstr "Einzug ver&mindern"
+
+#: objects/ui_MainWindow.h:955
+msgid "Ctrl+Shift+I"
+msgstr "Ctrl+Shift+I"
+
+#: objects/ui_MainWindow.h:956
+msgid "&Cheat Sheet"
+msgstr "&Befehlsübersicht"
+
+#: objects/ui_MainWindow.h:957
+msgid "Message"
+msgstr "Message"
+
+#: objects/ui_MainWindow.h:960
msgid "Time:"
msgstr "Zeit:"
-#: objects/ui_MainWindow.h:850
+#: objects/ui_MainWindow.h:961
msgid "FPS:"
msgstr "FPS:"
-#: objects/ui_MainWindow.h:851
+#: objects/ui_MainWindow.h:962
msgid "Steps:"
msgstr "Schritte:"
-#: objects/ui_MainWindow.h:852
+#: objects/ui_MainWindow.h:963
msgid "Dump Pictures"
msgstr "Bilder ausgeben"
-#: objects/ui_MainWindow.h:853
+#: objects/ui_MainWindow.h:964
msgid "&File"
msgstr "&Datei"
-#: objects/ui_MainWindow.h:854
-msgid "Recent Files"
-msgstr "Zuletzt benutze Dateien"
+#: objects/ui_MainWindow.h:965
+msgid "Recen&t Files"
+msgstr "Zuletzt benutze &Dateien"
-#: objects/ui_MainWindow.h:856
-msgid "Export"
-msgstr "Exportieren"
+#: objects/ui_MainWindow.h:966
+msgid "&Examples"
+msgstr "&Beispiele"
-#: objects/ui_MainWindow.h:857
+#: objects/ui_MainWindow.h:967
+msgid "E&xport"
+msgstr "&Exportieren"
+
+#: objects/ui_MainWindow.h:968
msgid "&Edit"
msgstr "&Bearbeiten"
-#: objects/ui_MainWindow.h:858
+#: objects/ui_MainWindow.h:969
msgid "&Design"
msgstr "D&esign"
-#: objects/ui_MainWindow.h:859
+#: objects/ui_MainWindow.h:970
msgid "&View"
msgstr "&Ansicht"
-#: objects/ui_MainWindow.h:860
+#: objects/ui_MainWindow.h:971
msgid "&Help"
msgstr "&Hilfe"
-#: objects/ui_MainWindow.h:863
+#: objects/ui_MainWindow.h:974
msgid "Find"
msgstr "Suchen"
-#: objects/ui_MainWindow.h:864 objects/ui_MainWindow.h:871
+#: objects/ui_MainWindow.h:975 objects/ui_MainWindow.h:982
msgid "Replace"
msgstr "Ersetzen"
-#: objects/ui_MainWindow.h:866
+#: objects/ui_MainWindow.h:977
msgid "Search string"
msgstr "Suchtext"
-#: objects/ui_MainWindow.h:867
+#: objects/ui_MainWindow.h:978
msgid "<"
msgstr "<"
-#: objects/ui_MainWindow.h:868
+#: objects/ui_MainWindow.h:979
msgid ">"
msgstr ">"
-#: objects/ui_MainWindow.h:869
+#: objects/ui_MainWindow.h:980
msgid "Done"
msgstr "Fertig"
-#: objects/ui_MainWindow.h:870
+#: objects/ui_MainWindow.h:981
msgid "Replacement string"
msgstr "Ersetzen mit"
-#: objects/ui_MainWindow.h:872
+#: objects/ui_MainWindow.h:983
msgid "All"
msgstr "Alles"
@@ -705,160 +737,328 @@ msgstr "OpenCSG benutzen"
msgid "Show this message again"
msgstr "Diesen Dialog wieder anzeigen"
-#: objects/ui_Preferences.h:609
+#: objects/ui_OpenCSGWarningDialog.h:94
+msgid "Close"
+msgstr "Schließen"
+
+#: objects/ui_Preferences.h:1061
+msgid "Preferences"
+msgstr "Einstellungen"
+
+#: objects/ui_Preferences.h:1062
msgid "3D View"
msgstr "3D Ansicht"
-#: objects/ui_Preferences.h:610 src/UIUtils.cc:85
+#: objects/ui_Preferences.h:1063 src/UIUtils.cc:86
msgid "Advanced"
msgstr "Erweitert"
-#: objects/ui_Preferences.h:611 src/mainwin.cc:2315
+#: objects/ui_Preferences.h:1064 src/mainwin.cc:2418
msgid "Editor"
msgstr "Editor"
-#: objects/ui_Preferences.h:612
+#: objects/ui_Preferences.h:1065
msgid "Update"
msgstr "Aktualisieren"
-#: objects/ui_Preferences.h:613 objects/ui_Preferences.h:633
+#: objects/ui_Preferences.h:1066 objects/ui_Preferences.h:1147
msgid "Features"
msgstr "Funktionen"
-#: objects/ui_Preferences.h:615
+#: objects/ui_Preferences.h:1068
msgid "Enable/Disable experimental features"
msgstr "Experimentelle Erweiterungen ein-/ausschalten"
-#: objects/ui_Preferences.h:617
+#: objects/ui_Preferences.h:1070
msgid "Color scheme:"
msgstr "Farbschema:"
-#: objects/ui_Preferences.h:618
+#: objects/ui_Preferences.h:1071
+msgid "Show Warnings and Errors in 3D View"
+msgstr "Fehler und Warnungen in der 3D Ansicht anzeigen"
+
+#: objects/ui_Preferences.h:1072
msgid "Editor Type"
msgstr "Editor"
-#: objects/ui_Preferences.h:621
+#: objects/ui_Preferences.h:1075
msgid "Simple Editor"
msgstr "Einfacher Editor"
-#: objects/ui_Preferences.h:622
+#: objects/ui_Preferences.h:1076
msgid "QScintilla Editor"
msgstr "QScintilla Editor"
-#: objects/ui_Preferences.h:624
+#: objects/ui_Preferences.h:1078
msgid "(requires restart)"
msgstr "(Neustart erforderlich)"
-#: objects/ui_Preferences.h:625
+#: objects/ui_Preferences.h:1079
msgid "Font"
msgstr "Font"
-#: objects/ui_Preferences.h:626
+#: objects/ui_Preferences.h:1080
msgid "Color syntax highlighting"
msgstr "Syntaxhervorhebung"
-#: objects/ui_Preferences.h:627
-msgid "Use Ctrl/Cmd-Mouse-wheel to zoom text"
+#: objects/ui_Preferences.h:1081
+msgid "Ctrl/Cmd-Mouse-wheel zooms text"
msgstr "Ctrl/Cmd+Mausrad zum Vergrößern des Textes benutzen"
-#: objects/ui_Preferences.h:629
+#: objects/ui_Preferences.h:1082
+msgid "Indentation"
+msgstr "Einrückung"
+
+#: objects/ui_Preferences.h:1083
+msgid "Auto Indent"
+msgstr "Automatisch einrücken"
+
+#: objects/ui_Preferences.h:1084
+msgid "Indent using"
+msgstr "Einrücken mit"
+
+#: objects/ui_Preferences.h:1087 src/settings.cc:135
+msgid "Spaces"
+msgstr "Leerzeichen"
+
+#: objects/ui_Preferences.h:1088 src/settings.cc:135
+msgid "Tabs"
+msgstr "Tabs"
+
+#: objects/ui_Preferences.h:1090
+msgid "Indentation width"
+msgstr "Einrückungstiefe"
+
+#: objects/ui_Preferences.h:1091
+msgid "Tab width"
+msgstr "Tabulatorschrittweite"
+
+#: objects/ui_Preferences.h:1092
+msgid "Tab key function"
+msgstr "Funktion der Tab-Taste"
+
+#: objects/ui_Preferences.h:1095 objects/ui_Preferences.h:1125
+#: src/settings.cc:136
+msgid "Indent"
+msgstr "Einrücken"
+
+#: objects/ui_Preferences.h:1096 src/settings.cc:136
+msgid "Insert Tab"
+msgstr "Tab einfügen"
+
+#: objects/ui_Preferences.h:1098
+msgid "Show whitespace"
+msgstr "Formatierungsymbole anzeigen"
+
+#: objects/ui_Preferences.h:1101 src/settings.cc:132
+msgid "Never"
+msgstr "nie"
+
+#: objects/ui_Preferences.h:1102 src/settings.cc:132
+msgid "Always"
+msgstr "immer"
+
+#: objects/ui_Preferences.h:1103
+msgid "Only after indentation"
+msgstr "nur nach Einrückung"
+
+#: objects/ui_Preferences.h:1105
+msgid "Size"
+msgstr "Größe"
+
+#: objects/ui_Preferences.h:1106
+msgid "Display"
+msgstr "Anzeige"
+
+#: objects/ui_Preferences.h:1107
+msgid "Enable brace matching"
+msgstr "zusammengehörige Klammern hervorheben"
+
+#: objects/ui_Preferences.h:1108
+msgid "Highlight current line"
+msgstr "Aktuelle Zeile hervorheben"
+
+#: objects/ui_Preferences.h:1109 objects/ui_Preferences.h:1142
+msgid "Line wrap"
+msgstr "Zeilenumbruch"
+
+#: objects/ui_Preferences.h:1112 objects/ui_Preferences.h:1129
+#: objects/ui_Preferences.h:1137 src/settings.cc:127 src/settings.cc:130
+#: src/settings.cc:131
+msgid "None"
+msgstr "nie"
+
+#: objects/ui_Preferences.h:1113 src/settings.cc:127
+msgid "Wrap at character boundaries"
+msgstr "an jedem Zeichen"
+
+#: objects/ui_Preferences.h:1114 src/settings.cc:127
+msgid "Wrap at word boundaries"
+msgstr "an Wörtern"
+
+#: objects/ui_Preferences.h:1116
+msgid "Line wrap indentation"
+msgstr "Einrückung nach Zeilenumbruch"
+
+#: objects/ui_Preferences.h:1117
+msgid "Line wrap visualization"
+msgstr "Zeilenumbruch anzeigen"
+
+#: objects/ui_Preferences.h:1118
+msgid "Style"
+msgstr "Stil"
+
+#: objects/ui_Preferences.h:1121 src/settings.cc:128
+msgid "Fixed"
+msgstr "Fest"
+
+#: objects/ui_Preferences.h:1122 src/settings.cc:128
+msgid "Same"
+msgstr "Wie vorherige Zeile"
+
+#: objects/ui_Preferences.h:1123 src/settings.cc:128
+msgid "Indented"
+msgstr "Eingerückt"
+
+#: objects/ui_Preferences.h:1126
+msgid "Start"
+msgstr "Anfang"
+
+#: objects/ui_Preferences.h:1130 objects/ui_Preferences.h:1138
+#: src/settings.cc:130 src/settings.cc:131
+msgid "Text"
+msgstr "Text"
+
+#: objects/ui_Preferences.h:1131 objects/ui_Preferences.h:1139
+#: src/settings.cc:130 src/settings.cc:131
+msgid "Border"
+msgstr "Rand"
+
+#: objects/ui_Preferences.h:1132 objects/ui_Preferences.h:1140
+#: src/settings.cc:130 src/settings.cc:131
+msgid "Margin"
+msgstr "Seitenrand"
+
+#: objects/ui_Preferences.h:1134
+msgid "End"
+msgstr "Ende"
+
+#: objects/ui_Preferences.h:1143
msgid "Automatically check for updates"
msgstr "Automatisch nach Aktualisierungen suchen"
-#: objects/ui_Preferences.h:630
+#: objects/ui_Preferences.h:1144
msgid "Include development snapshots"
msgstr "Entwickler-Versionen einschließen"
-#: objects/ui_Preferences.h:631
+#: objects/ui_Preferences.h:1145
msgid "Check Now"
msgstr "Jetzt suchen"
-#: objects/ui_Preferences.h:632
+#: objects/ui_Preferences.h:1146
msgid "Last checked: "
msgstr "Zuletzt gesucht: "
-#: objects/ui_Preferences.h:634
+#: objects/ui_Preferences.h:1148
msgid "OpenCSG"
msgstr "OpenCSG"
-#: objects/ui_Preferences.h:635
+#: objects/ui_Preferences.h:1149
msgid "Show capability warning"
msgstr "Kompatibilitätswarnung anzeigen"
-#: objects/ui_Preferences.h:636
+#: objects/ui_Preferences.h:1150
msgid "Enable for OpenGL 1.x"
msgstr "Aktivieren bei OpenGL 1.x"
-#: objects/ui_Preferences.h:637
+#: objects/ui_Preferences.h:1151
msgid "Turn off rendering at "
msgstr "Rendern abbrechen ab "
-#: objects/ui_Preferences.h:638
+#: objects/ui_Preferences.h:1152
msgid "elements"
msgstr "Elementen"
-#: objects/ui_Preferences.h:639
+#: objects/ui_Preferences.h:1153
msgid "Force Goldfeather"
msgstr "Goldfeather Algorithmus erzwingen"
-#: objects/ui_Preferences.h:640
+#: objects/ui_Preferences.h:1154
msgid "CGAL Cache size"
msgstr "CGAL Cache Größe"
-#: objects/ui_Preferences.h:641 objects/ui_Preferences.h:643
+#: objects/ui_Preferences.h:1155 objects/ui_Preferences.h:1157
msgid "bytes"
msgstr "Byte"
-#: objects/ui_Preferences.h:642
+#: objects/ui_Preferences.h:1156
msgid "PolySet Cache size"
msgstr "PolySet Cache Größe"
-#: objects/ui_Preferences.h:644
+#: objects/ui_Preferences.h:1158
msgid "Allow to open multiple documents"
msgstr "Öffnen von mehreren Dokumenten erlauben"
-#: objects/ui_Preferences.h:645
+#: objects/ui_Preferences.h:1159
msgid "Enable docking of Editor and Console in different places"
msgstr "Verschieben des Editor und Konsole Fensters erlauben"
-#: objects/ui_Preferences.h:646
+#: objects/ui_Preferences.h:1160
msgid "Enable undocking of Editor and Console to separate windows"
msgstr "Separate Editor und Konsole Fenster erlauben"
-#: objects/ui_Preferences.h:647
+#: objects/ui_Preferences.h:1161
msgid "Show Welcome Screen"
msgstr "Startbildschirm anzeigen"
-#: objects/ui_Preferences.h:648
+#: objects/ui_Preferences.h:1162
msgid "Enable user interface localization (requires restart of OpenSCAD)"
msgstr "Lokalisierung der GUI einschalten (benötigt Neustart von OpenSCAD)"
-# This should not be visible (window title of the ToolBar).
-#: objects/ui_Preferences.h:649
-msgid "toolBar"
-msgstr "toolBar"
-
#: objects/ui_ProgressWidget.h:72
-msgid "Form"
-msgstr "Form"
-
-#: objects/ui_ProgressWidget.h:73
msgid "%v / %m"
msgstr "%v / %m"
-#: src/mainwin.cc:768 src/mainwin.cc:1300
+#: src/Camera.cc:126
+#, c-format
+msgid ""
+"Viewport: translate = [ %.2f %.2f %.2f ], rotate = [ %.2f %.2f %.2f ], "
+"distance = %.2f"
+msgstr ""
+"Ansicht: Verschiebung = [ %.2f %.2f %.2f ], Rotation = [ %.2f %.2f %.2f ], "
+"Abstand = %.2f"
+
+#: src/mainwin.cc:778 src/mainwin.cc:1354
msgid "Untitled.scad"
msgstr "Unbenannt.scad"
-#: src/mainwin.cc:1299
+#: src/mainwin.cc:971
+msgid "Compile error."
+msgstr "Fehler"
+
+#: src/mainwin.cc:974
+msgid "Error while compiling '%1'."
+msgstr "Fehler beim Kompilieren von '%1'."
+
+#: src/mainwin.cc:978
+msgid "Compilation generated %1 warning."
+msgid_plural "Compilation generated %1 warnings."
+msgstr[0] "%1 Warnung beim kompilieren."
+msgstr[1] "%1 Warnungen beim kompilieren."
+
+#: src/mainwin.cc:988
+msgid " For details see console window."
+msgstr " Für Details das Konsole Fenster öffnen."
+
+#: src/mainwin.cc:1353
msgid "Save File"
msgstr "Datei speichern"
-#: src/mainwin.cc:1301
+#: src/mainwin.cc:1355
msgid "OpenSCAD Designs (*.scad)"
msgstr "OpenSCAD Designs (*.scad)"
-#: src/mainwin.cc:1311
+#: src/mainwin.cc:1365
msgid ""
"%1 already exists.\n"
"Do you want to replace it?"
@@ -866,11 +1066,11 @@ msgstr ""
"%1 existiert bereits.\n"
"Mochten Sie die Datei ersetzen?"
-#: src/mainwin.cc:1630
+#: src/mainwin.cc:1684
msgid "Application"
msgstr "Application"
-#: src/mainwin.cc:1631
+#: src/mainwin.cc:1685
msgid ""
"The document has been modified.\n"
"Do you really want to reload the file?"
@@ -878,65 +1078,63 @@ msgstr ""
"Das Dokument ist verändert.\n"
"Möchten Sie die Datei wirklich neu laden?"
-#: src/mainwin.cc:1942 src/mainwin.cc:1999
+#: src/mainwin.cc:2038 src/mainwin.cc:2094
msgid "Export %1 File"
msgstr "%1 Datei exportieren"
-#: src/mainwin.cc:1943 src/mainwin.cc:2003
+#: src/mainwin.cc:2039 src/mainwin.cc:2098
msgid "%1 Files (*%2)"
msgstr "%1 Dateien (*%2)"
-#: src/mainwin.cc:1944
+#: src/mainwin.cc:2040
msgid "Untitled"
msgstr "Unbenannt"
-#: src/mainwin.cc:2001
+#: src/mainwin.cc:2096
msgid "Untitled%1"
msgstr "Unbenannt%1"
-#: src/mainwin.cc:2052
+#: src/mainwin.cc:2147
msgid "Export CSG File"
msgstr "Export CSG File"
-#: src/mainwin.cc:2053
+#: src/mainwin.cc:2148
msgid "Untitled.csg"
msgstr "Unbenannt.csg"
-#: src/mainwin.cc:2054
+#: src/mainwin.cc:2149
msgid "CSG Files (*.csg)"
msgstr "CSG Dateien (*.csg)"
-#: src/mainwin.cc:2080
+#: src/mainwin.cc:2175
msgid "Export Image"
msgstr "Image exportieren"
-#: src/mainwin.cc:2080
+#: src/mainwin.cc:2175
msgid "PNG Files (*.png)"
msgstr "PNG Dateien (*.png)"
-#: src/mainwin.cc:2320
+#: src/mainwin.cc:2423
msgid "Console"
msgstr "Konsole"
-#: src/mainwin.cc:2447
+#: src/mainwin.cc:2560
msgid "The document has been modified."
msgstr "Das Dokument ist verändert."
-#: src/mainwin.cc:2448
+#: src/mainwin.cc:2561
msgid "Do you want to save your changes?"
msgstr "Möchten Sie die Änderungen speichern?"
-#: src/QGLView.cc:114
+#: src/openscad.cc:604
msgid ""
-"\n"
-"Using QGLWidget\n"
-"\n"
+"Fontconfig needs to update its font cache.\n"
+"This can take up to a couple of minutes."
msgstr ""
-"\n"
-"Benutze QGLWidget\n"
-"\n"
+"Fontconfig muss den Font-Cache aktualisieren.\n"
+"Dies kann einige Minuten dauern."
-#: src/QGLView.cc:131
+#: src/QGLView.cc:129
msgid ""
"Warning: You may experience OpenCSG rendering errors.\n"
"\n"
@@ -944,7 +1142,7 @@ msgstr ""
"Achtung: Es können Darstellungsfehler beim Anzeigen der Vorschau auftreten.\n"
"\n"
-#: src/QGLView.cc:134
+#: src/QGLView.cc:132
msgid ""
"Warning: Missing OpenGL capabilities for OpenCSG - OpenCSG has been "
"disabled.\n"
@@ -954,7 +1152,7 @@ msgstr ""
"nicht aus - OpenCSG wurde deaktiviert.\n"
"\n"
-#: src/QGLView.cc:137
+#: src/QGLView.cc:135
msgid ""
"It is highly recommended to use OpenSCAD on a system with OpenGL 2.0 or "
"later.\n"
@@ -964,7 +1162,7 @@ msgstr ""
"2.0.\n"
"Informationen zum OpenGL Treiber:\n"
-#: src/QGLView.cc:141
+#: src/QGLView.cc:139
#, c-format
msgid ""
"GLEW version %s\n"
@@ -975,27 +1173,44 @@ msgstr ""
"%s (%s)\n"
"OpenGL version %s\n"
-#: src/QGLView.cc:171
-#, c-format
-msgid ""
-"Viewport: translate = [ %.2f %.2f %.2f ], rotate = [ %.2f %.2f %.2f ], "
-"distance = %.2f"
-msgstr ""
-"Ansicht: Verschiebung = [ %.2f %.2f %.2f ], Rotation = [ %.2f %.2f %.2f ], "
-"Abstand = %.2f"
+#: src/settings.cc:132
+msgid "After indentation"
+msgstr "nach Einrückung"
-#: src/UIUtils.cc:85
+#: src/UIUtils.cc:86
msgid "Basics"
msgstr "Grundlagen"
-#: src/UIUtils.cc:85
+#: src/UIUtils.cc:86
msgid "Shapes"
msgstr "Formen"
-#: src/UIUtils.cc:85
+#: src/UIUtils.cc:86
msgid "Extrusion"
msgstr "Extrusion"
+#~ msgid "Top"
+#~ msgstr "Oben"
+
+#~ msgid "Back"
+#~ msgstr "Hinten"
+
+# This should not be visible (window title of the ToolBar).
+#~ msgid "toolBar"
+#~ msgstr "toolBar"
+
+#~ msgid "Form"
+#~ msgstr "Form"
+
+#~ msgid ""
+#~ "\n"
+#~ "Using QGLWidget\n"
+#~ "\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Benutze QGLWidget\n"
+#~ "\n"
+
#~ msgid "Paste font selector to Editor Window"
#~ msgstr "Font Selektor in Editor kopieren"
@@ -1014,9 +1229,6 @@ msgstr "Extrusion"
#~ msgid "Sunset"
#~ msgstr "Sunset"
-#~ msgid "Starnight"
-#~ msgstr "Starnight"
-
#~ msgid "BeforeDawn"
#~ msgstr "BeforeDawn"
@@ -1813,9 +2025,6 @@ msgstr "Extrusion"
#~ msgid "Allowed options"
#~ msgstr "Allowed options"
-#~ msgid "help message"
-#~ msgstr "help message"
-
#~ msgid "print the version"
#~ msgstr "print the version"
@@ -1988,9 +2197,6 @@ msgstr "Extrusion"
#~ "DEPRECATED: Using ranges of the form [begin:end] with begin value greater "
#~ "than the end value is deprecated."
-#~ msgid "&Compile"
-#~ msgstr "Übersetzen"
-
#~ msgid "Compile and &Render (CGAL)"
#~ msgstr "Übersetzen und Rendern (CGAL)"
diff --git a/locale/es.po b/locale/es.po
new file mode 100644
index 00000000..cdf29b7b
--- /dev/null
+++ b/locale/es.po
@@ -0,0 +1,1278 @@
+# Spanish translations for OpenSCAD package.
+# Copyright (C) 2015 THE OpenSCAD'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the OpenSCAD package.
+# bazza , 2015.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: OpenSCAD 2015.01.21\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2015-02-01 18:03+0100\n"
+"PO-Revision-Date: 2015-01-21 22:36-0300\n"
+"Last-Translator: Ernesto Bazzano \n"
+"Language-Team: Español\n"
+"Language: es\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+"X-Poedit-SourceCharset: UTF-8\n"
+"X-Generator: Poedit 1.5.4\n"
+
+#: objects/ui_AboutDialog.h:103 src/AboutDialog.h:13
+msgid "About OpenSCAD"
+msgstr "acerca de OpenSCAD"
+
+#: objects/ui_AboutDialog.h:105 objects/ui_launchingscreen.h:305
+msgid ""
+"\n"
+"OpenSCAD
\n"
+"The Programmers Solid 3D CAD Modeller
\n"
+"\n"
+"\n"
+"\n"
+msgstr ""
+"\n"
+"OpenSCAD
\n"
+"Le modeleur CAD 3D des programmeurs
\n"
+"\n"
+"\n"
+"\n"
+
+#: objects/ui_AboutDialog.h:112
+#, fuzzy
+msgid "OK"
+msgstr "&Aceptar"
+
+#: objects/ui_FontListDialog.h:105
+msgid "OpenSCAD Font List"
+msgstr "Lista de fuentes OpenSCAD"
+
+#: objects/ui_FontListDialog.h:106 objects/ui_LibraryInfoDialog.h:77
+msgid "&OK"
+msgstr "&Aceptar"
+
+#: objects/ui_FontListDialog.h:107
+msgid "Copy to Clipboard"
+msgstr "Copiar al portapapeles"
+
+#: objects/ui_FontListDialog.h:108
+msgid "Filter:"
+msgstr "Filtro:"
+
+#: objects/ui_FontListDialog.h:109
+msgid ""
+"This list shows the fonts currently registered with "
+"OpenSCAD.
Example:
text(t = "
+""OpenSCAD", font = "DejaVu Sans");
text(t = "OpenSCAD", font = "
+""Liberation Sans:style=Italic");
"
+msgstr ""
+"Esta lista muestra los tipos de letra registrados "
+"actualmente en OpenSCAD
Ejemplo:
"
+"text(t = "OpenSCAD", font = "DejaVu Sans");"
+"pre> text(t = "OpenSCAD", font = "
+""Liberation Sans:style=Italic");
"
+
+#: objects/ui_launchingscreen.h:294
+msgid "Welcome to OpenSCAD"
+msgstr "Bienvenido a OpenSCAD"
+
+#: objects/ui_launchingscreen.h:295
+msgid "New"
+msgstr "Nuevo"
+
+#: objects/ui_launchingscreen.h:296
+msgid "Open"
+msgstr "Abrir"
+
+#: objects/ui_launchingscreen.h:297
+msgid "Help"
+msgstr "Ayuda"
+
+#: objects/ui_launchingscreen.h:298
+msgid "Recents"
+msgstr "Recientes"
+
+#: objects/ui_launchingscreen.h:299
+msgid "Open Recent"
+msgstr "Abrir recientes"
+
+#: objects/ui_launchingscreen.h:300 objects/ui_launchingscreen.h:302
+msgid "Examples"
+msgstr "Ejemplos"
+
+#: objects/ui_launchingscreen.h:303
+msgid "Open Example"
+msgstr "Abrir ejemplos"
+
+#: objects/ui_launchingscreen.h:312
+msgid "Don't show again"
+msgstr "No mostrar de nuevo"
+
+#: objects/ui_launchingscreen.h:313
+#, fuzzy
+msgid "Version"
+msgstr "Extrusión"
+
+#: objects/ui_LibraryInfoDialog.h:75
+msgid "Lib & Build Info"
+msgstr "Informacion de las librerias y compilación"
+
+#: objects/ui_LibraryInfoDialog.h:76
+msgid "OpenSCAD Detailed Library and Build Information"
+msgstr "Informations detalles de las librerias y compilación"
+
+#: objects/ui_MainWindow.h:837
+msgid "&New"
+msgstr "&Nuevos"
+
+#: objects/ui_MainWindow.h:838
+msgid "Ctrl+N"
+msgstr "Ctrl+N"
+
+#: objects/ui_MainWindow.h:839
+msgid "&Open..."
+msgstr "&Abrir..."
+
+#: objects/ui_MainWindow.h:840
+msgid "Ctrl+O"
+msgstr "Ctrl+O"
+
+#: objects/ui_MainWindow.h:841
+msgid "&Save"
+msgstr "&Salvar"
+
+#: objects/ui_MainWindow.h:842
+msgid "Ctrl+S"
+msgstr "Ctrl+S"
+
+#: objects/ui_MainWindow.h:843
+msgid "Save &As..."
+msgstr "S&alvar como..."
+
+#: objects/ui_MainWindow.h:844
+msgid "Ctrl+Shift+S"
+msgstr "Ctrl+Shift+S"
+
+#: objects/ui_MainWindow.h:845
+msgid "&Reload"
+msgstr "&Recargar"
+
+#: objects/ui_MainWindow.h:846
+msgid "Ctrl+R"
+msgstr "Ctrl+R"
+
+#: objects/ui_MainWindow.h:847
+msgid "&Quit"
+msgstr "Salir"
+
+#: objects/ui_MainWindow.h:848
+msgid "Ctrl+Q"
+msgstr "Ctrl+Q"
+
+#: objects/ui_MainWindow.h:849
+msgid "&Undo"
+msgstr "An&ular"
+
+#: objects/ui_MainWindow.h:850
+msgid "Ctrl+Z"
+msgstr "Ctrl+Z"
+
+#: objects/ui_MainWindow.h:851
+msgid "&Redo"
+msgstr "&Repetir"
+
+#: objects/ui_MainWindow.h:852
+msgid "Ctrl+Shift+Z"
+msgstr "Ctrl+Shift+Z"
+
+#: objects/ui_MainWindow.h:853
+msgid "Cu&t"
+msgstr "Co&rtar"
+
+#: objects/ui_MainWindow.h:854
+msgid "Ctrl+X"
+msgstr "Ctrl+X"
+
+#: objects/ui_MainWindow.h:855
+msgid "&Copy"
+msgstr "&Copiar"
+
+#: objects/ui_MainWindow.h:856
+msgid "Ctrl+C"
+msgstr "Ctrl+C"
+
+#: objects/ui_MainWindow.h:857
+msgid "&Paste"
+msgstr "&Pegar"
+
+#: objects/ui_MainWindow.h:858
+msgid "Ctrl+V"
+msgstr "Ctrl+V"
+
+# no se que es
+#: objects/ui_MainWindow.h:859
+msgid "&Indent"
+msgstr "&Indenter"
+
+#: objects/ui_MainWindow.h:860
+msgid "Ctrl+I"
+msgstr "Ctrl+I"
+
+#: objects/ui_MainWindow.h:861
+msgid "C&omment"
+msgstr "C&omentar"
+
+#: objects/ui_MainWindow.h:862
+msgid "Ctrl+D"
+msgstr "Ctrl+D"
+
+#: objects/ui_MainWindow.h:863
+msgid "Unco&mment"
+msgstr "Desco&mentar"
+
+#: objects/ui_MainWindow.h:864
+msgid "Ctrl+Shift+D"
+msgstr "Ctrl+Shift+D"
+
+#: objects/ui_MainWindow.h:865
+#, fuzzy
+msgid "P&aste viewport translation"
+msgstr "Pegar posición de la marco"
+
+#: objects/ui_MainWindow.h:866
+msgid "Ctrl+T"
+msgstr "Ctrl+T"
+
+#: objects/ui_MainWindow.h:867
+#, fuzzy
+msgid "Past&e viewport rotation"
+msgstr "Pegar rotación de la ventana"
+
+#: objects/ui_MainWindow.h:868
+msgid "Increase Font &Size"
+msgstr ""
+
+#: objects/ui_MainWindow.h:869
+msgid "Ctrl++"
+msgstr "Ctrl++"
+
+#: objects/ui_MainWindow.h:870
+msgid "Decrease Font Si&ze"
+msgstr ""
+
+#: objects/ui_MainWindow.h:871
+msgid "Ctrl+-"
+msgstr "Ctrl+-"
+
+#: objects/ui_MainWindow.h:872
+#, fuzzy
+msgid "H&ide editor"
+msgstr "Ocultar editor"
+
+#: objects/ui_MainWindow.h:873
+msgid "&Reload and Preview"
+msgstr "&Recargar y previsualizar"
+
+#: objects/ui_MainWindow.h:874
+msgid "F4"
+msgstr "F4"
+
+#: objects/ui_MainWindow.h:875
+msgid "&Preview"
+msgstr "&Previsualizar"
+
+#: objects/ui_MainWindow.h:876
+msgid "F5"
+msgstr "F5"
+
+#: objects/ui_MainWindow.h:877
+#, fuzzy
+msgid "R&ender"
+msgstr "&Renderizar"
+
+#: objects/ui_MainWindow.h:878
+msgid "F6"
+msgstr "F6"
+
+#: objects/ui_MainWindow.h:879
+#, fuzzy
+msgid "&Check Validity"
+msgstr "Chequear validez"
+
+#: objects/ui_MainWindow.h:880
+#, fuzzy
+msgid "Display A&ST..."
+msgstr "Mostrar &AST..."
+
+#: objects/ui_MainWindow.h:881
+msgid "Display CSG &Tree..."
+msgstr "Mostrar CSG &Arbre"
+
+#: objects/ui_MainWindow.h:882
+#, fuzzy
+msgid "Display CSG Pr&oducts..."
+msgstr "Mostar CSG &Produits"
+
+#: objects/ui_MainWindow.h:883
+msgid "Export as &STL..."
+msgstr "Exportar como &STL..."
+
+#: objects/ui_MainWindow.h:884
+msgid "Export as &OFF..."
+msgstr "Exportar como &OFF..."
+
+#: objects/ui_MainWindow.h:885
+msgid "Preview"
+msgstr "Previsualizar"
+
+#: objects/ui_MainWindow.h:886
+msgid "F9"
+msgstr "F9"
+
+#: objects/ui_MainWindow.h:887
+msgid "Surfaces"
+msgstr "Superficie"
+
+#: objects/ui_MainWindow.h:888
+msgid "F10"
+msgstr "F10"
+
+#: objects/ui_MainWindow.h:889
+msgid "Wireframe"
+msgstr "Estructura"
+
+#: objects/ui_MainWindow.h:890
+msgid "F11"
+msgstr "F11"
+
+#: objects/ui_MainWindow.h:891
+msgid "Thrown Together"
+msgstr "Lanzar Juntos"
+
+#: objects/ui_MainWindow.h:892
+msgid "F12"
+msgstr "F12"
+
+#: objects/ui_MainWindow.h:893
+msgid "Show Edges"
+msgstr "Mostrar puntos"
+
+#: objects/ui_MainWindow.h:894
+msgid "Ctrl+1"
+msgstr "Ctrl+1"
+
+#: objects/ui_MainWindow.h:895
+msgid "Show Axes"
+msgstr "Mostrar ejes"
+
+#: objects/ui_MainWindow.h:896
+msgid "Ctrl+2"
+msgstr "Ctrl+2"
+
+#: objects/ui_MainWindow.h:897
+msgid "Show Crosshairs"
+msgstr "Mostrar punto de mira"
+
+#: objects/ui_MainWindow.h:898
+msgid "Ctrl+3"
+msgstr "Ctrl+3"
+
+#: objects/ui_MainWindow.h:899
+msgid "Show Scale Markers"
+msgstr ""
+
+#: objects/ui_MainWindow.h:900
+msgid "Animate"
+msgstr "Animar"
+
+#: objects/ui_MainWindow.h:901
+msgid "&Top"
+msgstr ""
+
+#: objects/ui_MainWindow.h:902
+msgid "Ctrl+4"
+msgstr "Ctrl+4"
+
+#: objects/ui_MainWindow.h:903
+#, fuzzy
+msgid "&Bottom"
+msgstr "Abajo"
+
+#: objects/ui_MainWindow.h:904
+msgid "Ctrl+5"
+msgstr "Ctrl+5"
+
+#: objects/ui_MainWindow.h:905
+#, fuzzy
+msgid "&Left"
+msgstr "Izquierda"
+
+#: objects/ui_MainWindow.h:906
+msgid "Ctrl+6"
+msgstr "Ctrl+6"
+
+#: objects/ui_MainWindow.h:907
+#, fuzzy
+msgid "&Right"
+msgstr "Derecha"
+
+#: objects/ui_MainWindow.h:908
+msgid "Ctrl+7"
+msgstr "Ctrl+7"
+
+#: objects/ui_MainWindow.h:909
+#, fuzzy
+msgid "&Front"
+msgstr "Frente"
+
+#: objects/ui_MainWindow.h:910
+msgid "Ctrl+8"
+msgstr "Ctrl+8"
+
+#: objects/ui_MainWindow.h:911
+msgid "Bac&k"
+msgstr ""
+
+#: objects/ui_MainWindow.h:912
+msgid "Ctrl+9"
+msgstr "Ctrl+9"
+
+#: objects/ui_MainWindow.h:913
+#, fuzzy
+msgid "&Diagonal"
+msgstr "Diagonal"
+
+#: objects/ui_MainWindow.h:914
+msgid "Ctrl+0"
+msgstr "Ctrl+0"
+
+#: objects/ui_MainWindow.h:915
+#, fuzzy
+msgid "Ce&nter"
+msgstr "Centro"
+
+#: objects/ui_MainWindow.h:916
+#, fuzzy
+msgid "&Perspective"
+msgstr "Perspectiva"
+
+#: objects/ui_MainWindow.h:917
+#, fuzzy
+msgid "&Orthogonal"
+msgstr "Orthogonal"
+
+#: objects/ui_MainWindow.h:918
+#, fuzzy
+msgid "H&ide console"
+msgstr "Ocultar consola"
+
+#: objects/ui_MainWindow.h:919
+#, fuzzy
+msgid "&About"
+msgstr "Acerca de"
+
+#: objects/ui_MainWindow.h:920
+#, fuzzy
+msgid "&Documentation"
+msgstr "Documentación"
+
+#: objects/ui_MainWindow.h:921
+msgid "Clear Recent"
+msgstr "Borrar recientes"
+
+#: objects/ui_MainWindow.h:922
+#, fuzzy
+msgid "Export as &DXF..."
+msgstr "Exportar a DXF..."
+
+#: objects/ui_MainWindow.h:923
+#, fuzzy
+msgid "&Close"
+msgstr "Cerrar"
+
+#: objects/ui_MainWindow.h:924
+msgid "Ctrl+W"
+msgstr "Ctrl+W"
+
+#: objects/ui_MainWindow.h:925
+#, fuzzy
+msgid "&Preferences"
+msgstr "Preferencias"
+
+#: objects/ui_MainWindow.h:926
+#, fuzzy
+msgid "&Find..."
+msgstr "Buscar..."
+
+#: objects/ui_MainWindow.h:927
+msgid "Ctrl+F"
+msgstr "Ctrl+F"
+
+#: objects/ui_MainWindow.h:928
+#, fuzzy
+msgid "Fin&d and Replace..."
+msgstr "Buscar y reemplazar..."
+
+#: objects/ui_MainWindow.h:929
+msgid "Ctrl+Alt+F"
+msgstr "Ctrl+Alt+F"
+
+#: objects/ui_MainWindow.h:930
+#, fuzzy
+msgid "Find Ne&xt"
+msgstr "Buscar próximo"
+
+#: objects/ui_MainWindow.h:931
+msgid "Ctrl+G"
+msgstr "Ctrl+G"
+
+#: objects/ui_MainWindow.h:932
+#, fuzzy
+msgid "Find Pre&vious"
+msgstr "Buscar previo"
+
+#: objects/ui_MainWindow.h:933
+msgid "Ctrl+Shift+G"
+msgstr "Ctrl+Shift+G"
+
+#: objects/ui_MainWindow.h:934
+#, fuzzy
+msgid "Use Se&lection for Find"
+msgstr "Buscar selección"
+
+#: objects/ui_MainWindow.h:935
+msgid "Ctrl+E"
+msgstr "Ctrl+E"
+
+#: objects/ui_MainWindow.h:936
+#, fuzzy
+msgid "&Flush Caches"
+msgstr "Borrar cache"
+
+#: objects/ui_MainWindow.h:937
+#, fuzzy
+msgid "&OpenSCAD Homepage"
+msgstr "Pagina de OpenSCAD"
+
+#: objects/ui_MainWindow.h:938
+#, fuzzy
+msgid "&Automatic Reload and Preview"
+msgstr "Recargar y previsualizar automáticamente"
+
+#: objects/ui_MainWindow.h:939
+#, fuzzy
+msgid "Export as &Image..."
+msgstr "Exportar imagen..."
+
+#: objects/ui_MainWindow.h:940
+#, fuzzy
+msgid "Export as &CSG..."
+msgstr "Exportar en CSG..."
+
+#: objects/ui_MainWindow.h:941
+#, fuzzy
+msgid "&Library info"
+msgstr "Información de librerías"
+
+#: objects/ui_MainWindow.h:942
+#, fuzzy
+msgid "Show &Library Folder..."
+msgstr "Mostrar carpeta de librerías"
+
+#: objects/ui_MainWindow.h:943
+msgid "Reset View"
+msgstr "Reiniciar vista"
+
+#: objects/ui_MainWindow.h:944
+#, fuzzy
+msgid "&Font List"
+msgstr "Lista de fuentes"
+
+#: objects/ui_MainWindow.h:945
+#, fuzzy
+msgid "Export as S&VG..."
+msgstr "Exportar en SVG..."
+
+#: objects/ui_MainWindow.h:946
+#, fuzzy
+msgid "Export as &AMF..."
+msgstr "Exportar en AMF..."
+
+#: objects/ui_MainWindow.h:947
+msgid "Zoom In"
+msgstr "Acercar"
+
+#: objects/ui_MainWindow.h:948
+msgid "Ctrl+]"
+msgstr "Ctrl+]"
+
+#: objects/ui_MainWindow.h:949
+msgid "Zoom Out"
+msgstr "Alejar"
+
+#: objects/ui_MainWindow.h:950
+msgid "Ctrl+["
+msgstr "Ctrl+["
+
+#: objects/ui_MainWindow.h:951
+msgid "View All"
+msgstr "Ver todo"
+
+#: objects/ui_MainWindow.h:952
+#, fuzzy
+msgid "Conv&ert Tabs to Spaces"
+msgstr "Convertir tabulado en espacios"
+
+#: objects/ui_MainWindow.h:953
+msgid "Hide toolbars"
+msgstr "Ocultar barra de herramientas"
+
+#: objects/ui_MainWindow.h:954
+msgid "U&nindent"
+msgstr "Dési&ndenter"
+
+#: objects/ui_MainWindow.h:955
+msgid "Ctrl+Shift+I"
+msgstr "Ctrl+Shift+I"
+
+#: objects/ui_MainWindow.h:956
+msgid "&Cheat Sheet"
+msgstr ""
+
+#: objects/ui_MainWindow.h:957
+msgid "Message"
+msgstr ""
+
+#: objects/ui_MainWindow.h:960
+msgid "Time:"
+msgstr "Tiempo:"
+
+#: objects/ui_MainWindow.h:961
+msgid "FPS:"
+msgstr "FPS:"
+
+#: objects/ui_MainWindow.h:962
+msgid "Steps:"
+msgstr "Pasos:"
+
+#: objects/ui_MainWindow.h:963
+msgid "Dump Pictures"
+msgstr "Grabar imágenes"
+
+#: objects/ui_MainWindow.h:964
+msgid "&File"
+msgstr "&Archivo"
+
+#: objects/ui_MainWindow.h:965
+#, fuzzy
+msgid "Recen&t Files"
+msgstr "Archivos recientes"
+
+#: objects/ui_MainWindow.h:966
+#, fuzzy
+msgid "&Examples"
+msgstr "Ejemplos"
+
+#: objects/ui_MainWindow.h:967
+#, fuzzy
+msgid "E&xport"
+msgstr "Exportar"
+
+#: objects/ui_MainWindow.h:968
+msgid "&Edit"
+msgstr "&Editar"
+
+#: objects/ui_MainWindow.h:969
+msgid "&Design"
+msgstr "&Diseñar"
+
+#: objects/ui_MainWindow.h:970
+msgid "&View"
+msgstr "&Ver"
+
+#: objects/ui_MainWindow.h:971
+msgid "&Help"
+msgstr "&Ayuda"
+
+#: objects/ui_MainWindow.h:974
+msgid "Find"
+msgstr "Buscar"
+
+#: objects/ui_MainWindow.h:975 objects/ui_MainWindow.h:982
+msgid "Replace"
+msgstr "Reemplazar"
+
+#: objects/ui_MainWindow.h:977
+msgid "Search string"
+msgstr "Buscar palabra"
+
+#: objects/ui_MainWindow.h:978
+msgid "<"
+msgstr "<"
+
+#: objects/ui_MainWindow.h:979
+msgid ">"
+msgstr ">"
+
+#: objects/ui_MainWindow.h:980
+msgid "Done"
+msgstr "Terminar"
+
+#: objects/ui_MainWindow.h:981
+msgid "Replacement string"
+msgstr "Remplazar palabra"
+
+#: objects/ui_MainWindow.h:983
+msgid "All"
+msgstr "Todo"
+
+#: objects/ui_OpenCSGWarningDialog.h:86
+msgid "OpenGL Warning"
+msgstr "Advertencia OpenGL"
+
+#: objects/ui_OpenCSGWarningDialog.h:87
+msgid ""
+"\n"
+"\n"
+""
+"p>"
+msgstr ""
+"\n"
+"
\n"
+""
+"p>"
+
+#: objects/ui_OpenCSGWarningDialog.h:92
+msgid "Enable OpenCSG"
+msgstr "Activar OpenCSG"
+
+#: objects/ui_OpenCSGWarningDialog.h:93
+msgid "Show this message again"
+msgstr "Mostrar el mensaje de nuevo"
+
+#: objects/ui_OpenCSGWarningDialog.h:94
+msgid "Close"
+msgstr "Cerrar"
+
+#: objects/ui_Preferences.h:1061
+msgid "Preferences"
+msgstr "Preferencias"
+
+#: objects/ui_Preferences.h:1062
+msgid "3D View"
+msgstr "Vista 3D"
+
+#: objects/ui_Preferences.h:1063 src/UIUtils.cc:86
+msgid "Advanced"
+msgstr "Advertencia"
+
+#: objects/ui_Preferences.h:1064 src/mainwin.cc:2418
+msgid "Editor"
+msgstr "Editar"
+
+#: objects/ui_Preferences.h:1065
+msgid "Update"
+msgstr "Actualizar"
+
+#: objects/ui_Preferences.h:1066 objects/ui_Preferences.h:1147
+msgid "Features"
+msgstr "Mejoras"
+
+#: objects/ui_Preferences.h:1068
+msgid "Enable/Disable experimental features"
+msgstr "Activar/Desactivar mejoras experimentales"
+
+#: objects/ui_Preferences.h:1070
+msgid "Color scheme:"
+msgstr "Paleta de colores:"
+
+#: objects/ui_Preferences.h:1071
+msgid "Show Warnings and Errors in 3D View"
+msgstr ""
+
+#: objects/ui_Preferences.h:1072
+msgid "Editor Type"
+msgstr "Editor de texto"
+
+#: objects/ui_Preferences.h:1075
+msgid "Simple Editor"
+msgstr "Editor simple"
+
+#: objects/ui_Preferences.h:1076
+msgid "QScintilla Editor"
+msgstr "Editor QScintilla"
+
+#: objects/ui_Preferences.h:1078
+msgid "(requires restart)"
+msgstr "(necesita reiniciar)"
+
+#: objects/ui_Preferences.h:1079
+msgid "Font"
+msgstr "Fuente"
+
+#: objects/ui_Preferences.h:1080
+msgid "Color syntax highlighting"
+msgstr "Colorear sintaxis"
+
+#: objects/ui_Preferences.h:1081
+#, fuzzy
+msgid "Ctrl/Cmd-Mouse-wheel zooms text"
+msgstr "Use ctrl/cmd + rueda del mouse para hacer zoom al texto"
+
+#: objects/ui_Preferences.h:1082
+#, fuzzy
+msgid "Indentation"
+msgstr "Documentación"
+
+# no se que es
+#: objects/ui_Preferences.h:1083
+#, fuzzy
+msgid "Auto Indent"
+msgstr "&Indenter"
+
+# no se que es
+#: objects/ui_Preferences.h:1084
+#, fuzzy
+msgid "Indent using"
+msgstr "&Indenter"
+
+#: objects/ui_Preferences.h:1087 src/settings.cc:135
+#, fuzzy
+msgid "Spaces"
+msgstr "Superficie"
+
+#: objects/ui_Preferences.h:1088 src/settings.cc:135
+msgid "Tabs"
+msgstr ""
+
+#: objects/ui_Preferences.h:1090
+msgid "Indentation width"
+msgstr ""
+
+#: objects/ui_Preferences.h:1091
+msgid "Tab width"
+msgstr ""
+
+#: objects/ui_Preferences.h:1092
+msgid "Tab key function"
+msgstr ""
+
+# no se que es
+#: objects/ui_Preferences.h:1095 objects/ui_Preferences.h:1125
+#: src/settings.cc:136
+#, fuzzy
+msgid "Indent"
+msgstr "&Indenter"
+
+#: objects/ui_Preferences.h:1096 src/settings.cc:136
+msgid "Insert Tab"
+msgstr ""
+
+#: objects/ui_Preferences.h:1098
+msgid "Show whitespace"
+msgstr ""
+
+#: objects/ui_Preferences.h:1101 src/settings.cc:132
+msgid "Never"
+msgstr ""
+
+#: objects/ui_Preferences.h:1102 src/settings.cc:132
+msgid "Always"
+msgstr ""
+
+#: objects/ui_Preferences.h:1103
+msgid "Only after indentation"
+msgstr ""
+
+#: objects/ui_Preferences.h:1105
+msgid "Size"
+msgstr ""
+
+#: objects/ui_Preferences.h:1106
+#, fuzzy
+msgid "Display"
+msgstr "Mostrar &AST..."
+
+#: objects/ui_Preferences.h:1107
+msgid "Enable brace matching"
+msgstr ""
+
+#: objects/ui_Preferences.h:1108
+msgid "Highlight current line"
+msgstr ""
+
+#: objects/ui_Preferences.h:1109 objects/ui_Preferences.h:1142
+msgid "Line wrap"
+msgstr ""
+
+#: objects/ui_Preferences.h:1112 objects/ui_Preferences.h:1129
+#: objects/ui_Preferences.h:1137 src/settings.cc:127 src/settings.cc:130
+#: src/settings.cc:131
+msgid "None"
+msgstr ""
+
+#: objects/ui_Preferences.h:1113 src/settings.cc:127
+msgid "Wrap at character boundaries"
+msgstr ""
+
+#: objects/ui_Preferences.h:1114 src/settings.cc:127
+msgid "Wrap at word boundaries"
+msgstr ""
+
+#: objects/ui_Preferences.h:1116
+msgid "Line wrap indentation"
+msgstr ""
+
+#: objects/ui_Preferences.h:1117
+msgid "Line wrap visualization"
+msgstr ""
+
+#: objects/ui_Preferences.h:1118
+msgid "Style"
+msgstr ""
+
+#: objects/ui_Preferences.h:1121 src/settings.cc:128
+msgid "Fixed"
+msgstr ""
+
+#: objects/ui_Preferences.h:1122 src/settings.cc:128
+msgid "Same"
+msgstr ""
+
+# no se que es
+#: objects/ui_Preferences.h:1123 src/settings.cc:128
+#, fuzzy
+msgid "Indented"
+msgstr "&Indenter"
+
+#: objects/ui_Preferences.h:1126
+msgid "Start"
+msgstr ""
+
+#: objects/ui_Preferences.h:1130 objects/ui_Preferences.h:1138
+#: src/settings.cc:130 src/settings.cc:131
+msgid "Text"
+msgstr ""
+
+#: objects/ui_Preferences.h:1131 objects/ui_Preferences.h:1139
+#: src/settings.cc:130 src/settings.cc:131
+msgid "Border"
+msgstr ""
+
+#: objects/ui_Preferences.h:1132 objects/ui_Preferences.h:1140
+#: src/settings.cc:130 src/settings.cc:131
+msgid "Margin"
+msgstr ""
+
+#: objects/ui_Preferences.h:1134
+msgid "End"
+msgstr ""
+
+#: objects/ui_Preferences.h:1143
+msgid "Automatically check for updates"
+msgstr "Comprobar actualización automáticamente"
+
+#: objects/ui_Preferences.h:1144
+msgid "Include development snapshots"
+msgstr "Incluir las versiones en desarrollo"
+
+#: objects/ui_Preferences.h:1145
+msgid "Check Now"
+msgstr "Chequear ahora"
+
+#: objects/ui_Preferences.h:1146
+msgid "Last checked: "
+msgstr "Último chequeo:"
+
+#: objects/ui_Preferences.h:1148
+msgid "OpenCSG"
+msgstr "OpenCSG"
+
+#: objects/ui_Preferences.h:1149
+msgid "Show capability warning"
+msgstr "Advertir incapacidad"
+
+#: objects/ui_Preferences.h:1150
+msgid "Enable for OpenGL 1.x"
+msgstr "Activar OpenGL 1.x"
+
+#: objects/ui_Preferences.h:1151
+msgid "Turn off rendering at "
+msgstr "Desactivar el render de"
+
+#: objects/ui_Preferences.h:1152
+msgid "elements"
+msgstr "elementos"
+
+#: objects/ui_Preferences.h:1153
+msgid "Force Goldfeather"
+msgstr "Forzar Goldfeather"
+
+#: objects/ui_Preferences.h:1154
+msgid "CGAL Cache size"
+msgstr "Tamaño de cache de CGAL"
+
+#: objects/ui_Preferences.h:1155 objects/ui_Preferences.h:1157
+msgid "bytes"
+msgstr "bytes"
+
+#: objects/ui_Preferences.h:1156
+msgid "PolySet Cache size"
+msgstr "Tamaño de cache de PolySet"
+
+#: objects/ui_Preferences.h:1158
+msgid "Allow to open multiple documents"
+msgstr "Permitir a abrir varios documentos"
+
+#: objects/ui_Preferences.h:1159
+msgid "Enable docking of Editor and Console in different places"
+msgstr "Habilitar soporte de editor y consola en diferentes lugares"
+
+#: objects/ui_Preferences.h:1160
+msgid "Enable undocking of Editor and Console to separate windows"
+msgstr ""
+"Habilitar el desacoplamiento de editor y consola para separar las ventanas"
+
+#: objects/ui_Preferences.h:1161
+msgid "Show Welcome Screen"
+msgstr "Pantalla de bienvenida"
+
+#: objects/ui_Preferences.h:1162
+msgid "Enable user interface localization (requires restart of OpenSCAD)"
+msgstr ""
+"Habilitar interfaz de usuario localización (requiere reiniciar OpenSCAD)"
+
+#: objects/ui_ProgressWidget.h:72
+msgid "%v / %m"
+msgstr "%v / %m"
+
+#: src/Camera.cc:126
+#, c-format
+msgid ""
+"Viewport: translate = [ %.2f %.2f %.2f ], rotate = [ %.2f %.2f %.2f ], "
+"distance = %.2f"
+msgstr ""
+"Marco: posición = [ %.2f %.2f %.2f ], rotación = [ %.2f %.2f %.2f ], "
+"distancia = %.2f"
+
+#: src/mainwin.cc:778 src/mainwin.cc:1354
+msgid "Untitled.scad"
+msgstr "Sintitulo.scad"
+
+#: src/mainwin.cc:971
+msgid "Compile error."
+msgstr ""
+
+#: src/mainwin.cc:974
+msgid "Error while compiling '%1'."
+msgstr ""
+
+#: src/mainwin.cc:978
+msgid "Compilation generated %1 warning."
+msgid_plural "Compilation generated %1 warnings."
+msgstr[0] ""
+msgstr[1] ""
+
+#: src/mainwin.cc:988
+msgid " For details see console window."
+msgstr ""
+
+#: src/mainwin.cc:1353
+msgid "Save File"
+msgstr "Salver archivo"
+
+#: src/mainwin.cc:1355
+msgid "OpenSCAD Designs (*.scad)"
+msgstr "Diseño OpenSCAD (*.scad)"
+
+#: src/mainwin.cc:1365
+msgid ""
+"%1 already exists.\n"
+"Do you want to replace it?"
+msgstr ""
+"%1 existe.\n"
+"Deseas reemplazarlo?"
+
+#: src/mainwin.cc:1684
+msgid "Application"
+msgstr "Aplicación"
+
+#: src/mainwin.cc:1685
+msgid ""
+"The document has been modified.\n"
+"Do you really want to reload the file?"
+msgstr ""
+"El documento ha sido modificado.\n"
+"¿Realmente desea volver a cargar el archivo ?"
+
+#: src/mainwin.cc:2038 src/mainwin.cc:2094
+msgid "Export %1 File"
+msgstr "Exportar %1 Archivo"
+
+#: src/mainwin.cc:2039 src/mainwin.cc:2098
+msgid "%1 Files (*%2)"
+msgstr "%1 Archivo (*%2)"
+
+#: src/mainwin.cc:2040
+msgid "Untitled"
+msgstr "Sin titulo"
+
+#: src/mainwin.cc:2096
+msgid "Untitled%1"
+msgstr "Sintitulo%1"
+
+#: src/mainwin.cc:2147
+msgid "Export CSG File"
+msgstr "Exportar archivo CSG"
+
+#: src/mainwin.cc:2148
+msgid "Untitled.csg"
+msgstr "Sintitulo.csg"
+
+#: src/mainwin.cc:2149
+msgid "CSG Files (*.csg)"
+msgstr "Archivo CSG (*.csg)"
+
+#: src/mainwin.cc:2175
+msgid "Export Image"
+msgstr "Exportar una imagen"
+
+#: src/mainwin.cc:2175
+msgid "PNG Files (*.png)"
+msgstr "Archivo PNG (*.png)"
+
+#: src/mainwin.cc:2423
+msgid "Console"
+msgstr "Consola"
+
+#: src/mainwin.cc:2560
+msgid "The document has been modified."
+msgstr "El documento ha sido modificado."
+
+#: src/mainwin.cc:2561
+msgid "Do you want to save your changes?"
+msgstr "¿Quieres guardar los cambios ?"
+
+#: src/openscad.cc:604
+msgid ""
+"Fontconfig needs to update its font cache.\n"
+"This can take up to a couple of minutes."
+msgstr ""
+
+#: src/QGLView.cc:129
+msgid ""
+"Warning: You may experience OpenCSG rendering errors.\n"
+"\n"
+msgstr ""
+"Advertencia: Usted puede experimentar OpenCSG errores de renderizado.\n"
+"\n"
+
+#: src/QGLView.cc:132
+msgid ""
+"Warning: Missing OpenGL capabilities for OpenCSG - OpenCSG has been "
+"disabled.\n"
+"\n"
+msgstr ""
+"Advertencia: Manquantes capacités OpenGL vierten OpenCSG - OpenCSG ha sido "
+"desactivada. .\n"
+"\n"
+
+#: src/QGLView.cc:135
+msgid ""
+"It is highly recommended to use OpenSCAD on a system with OpenGL 2.0 or "
+"later.\n"
+"Your renderer information is as follows:\n"
+msgstr ""
+"Es muy recomendable utilizar OpenSCAD en un sistema con OpenGL 2.0 o "
+"posterior.\n"
+"Su información renderer es como sigue:\n"
+
+#: src/QGLView.cc:139
+#, c-format
+msgid ""
+"GLEW version %s\n"
+"%s (%s)\n"
+"OpenGL version %s\n"
+msgstr ""
+"Versión GLEW %s\n"
+"%s (%s)\n"
+"Versión OpenGL %s\n"
+
+#: src/settings.cc:132
+msgid "After indentation"
+msgstr ""
+
+#: src/UIUtils.cc:86
+msgid "Basics"
+msgstr "Básico"
+
+#: src/UIUtils.cc:86
+msgid "Shapes"
+msgstr "Formas"
+
+#: src/UIUtils.cc:86
+msgid "Extrusion"
+msgstr "Extrusión"
+
+#~ msgid "Top"
+#~ msgstr "Arriba"
+
+#~ msgid "Back"
+#~ msgstr "Atrás"
+
+#~ msgid "toolBar"
+#~ msgstr "barra de herramientas"
+
+#~ msgid "Form"
+#~ msgstr "Formulario"
+
+#~ msgid ""
+#~ "\n"
+#~ "Using QGLWidget\n"
+#~ "\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Utilizar QGLWidget\n"
+#~ "\n"
+
+#~ msgid "Paste font selector to Editor Window"
+#~ msgstr "Coller le sélecteur de polices dans l'éditeur de fenêtres"
+
+#~ msgid "About OpenSCAD "
+#~ msgstr "À propos de OpenSCAD"
+
+#~ msgid "Check for Update.."
+#~ msgstr "Vérifier les mises à jours"
+
+#~ msgid "OpenGL Info"
+#~ msgstr "Information OpenGL"
diff --git a/locale/fr.po b/locale/fr.po
index b3b892a5..eaa37802 100644
--- a/locale/fr.po
+++ b/locale/fr.po
@@ -1,14 +1,14 @@
-# French translations for OpenSCAD package.
-# Copyright (C) 2013 THE OpenSCAD'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the OpenSCAD package.
-# don , 2013.
-#
+# French translations for OpenSCAD package.
+# Copyright (C) 2013 THE OpenSCAD'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the OpenSCAD package.
+# don , 2013.
+#
msgid ""
msgstr ""
"Project-Id-Version: OpenSCAD 2013.02.07\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2014-12-22 23:28+0100\n"
-"PO-Revision-Date: 2014-12-14 10:20-0500\n"
+"POT-Creation-Date: 2015-02-01 18:03+0100\n"
+"PO-Revision-Date: 2015-01-27 18:47-0500\n"
"Last-Translator: Keven Villeneuve \n"
"Language-Team: French\n"
"Language: fr\n"
@@ -17,84 +17,13 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"X-Poedit-SourceCharset: utf-8\n"
-"X-Generator: Poedit 1.7.1\n"
+"X-Generator: Poedit 1.7.4\n"
-#: objects/ui_AboutDialog.h:51 src/AboutDialog.h:15
+#: objects/ui_AboutDialog.h:103 src/AboutDialog.h:13
msgid "About OpenSCAD"
msgstr "À propos de OpenSCAD"
-#: objects/ui_FontListDialog.h:102
-msgid "OpenSCAD Font List"
-msgstr "Liste des polices OpenSCAD"
-
-#: objects/ui_FontListDialog.h:103 objects/ui_LibraryInfoDialog.h:77
-msgid "&OK"
-msgstr "&OK"
-
-#: objects/ui_FontListDialog.h:104
-msgid "Copy to Clipboard"
-msgstr "Coller dans le presse-papier"
-
-#: objects/ui_FontListDialog.h:105
-msgid "Filter:"
-msgstr "Filtre:"
-
-#: objects/ui_FontListDialog.h:106
-msgid ""
-"This list shows the fonts currently registered with "
-"OpenSCAD.
Example:
text(t = "
-""OpenSCAD", font = "DejaVu Sans");
text(t = "OpenSCAD", font = "
-""Liberation Sans:style=Italic");
"
-msgstr ""
-"Cette liste affiche les polices présentement chargées "
-"avec OpenSCAD
Example:
text(t = "
-""OpenSCAD", font = "DejaVu Sans");
text(t = "OpenSCAD", font = "
-""Liberation Sans:style=Italic");
"
-
-#: objects/ui_launchingscreen.h:276
-msgid "Welcome to OpenSCAD"
-msgstr "Bienvenue dans OpenSCAD"
-
-#: objects/ui_launchingscreen.h:277
-msgid "New"
-msgstr "Nouveau"
-
-#: objects/ui_launchingscreen.h:278
-msgid "Open"
-msgstr "Ouvrir..."
-
-#: objects/ui_launchingscreen.h:279
-msgid "Help"
-msgstr "Aide"
-
-#: objects/ui_launchingscreen.h:280
-msgid "Recents"
-msgstr "Récents"
-
-#: objects/ui_launchingscreen.h:281
-msgid "Open Recent"
-msgstr "Ouvrir un fichier récent"
-
-#: objects/ui_launchingscreen.h:282 objects/ui_launchingscreen.h:284
-#: objects/ui_MainWindow.h:855
-msgid "Examples"
-msgstr "Exemples"
-
-#: objects/ui_launchingscreen.h:285
-msgid "Open Example"
-msgstr "&Ouvrir un example"
-
-#: objects/ui_launchingscreen.h:287
+#: objects/ui_AboutDialog.h:105 objects/ui_launchingscreen.h:305
msgid ""
"
\n"
"
This list shows the fonts currently registered with "
+"OpenSCAD.
Example:
text(t = "
+""OpenSCAD", font = "DejaVu Sans");
text(t = "OpenSCAD", font = "
+""Liberation Sans:style=Italic");
"
+msgstr ""
+"Cette liste affiche les polices présentement chargées "
+"avec OpenSCAD
Example:
text(t = "
+""OpenSCAD", font = "DejaVu Sans");
text(t = "OpenSCAD", font = "
+""Liberation Sans:style=Italic");
"
+
#: objects/ui_launchingscreen.h:294
+msgid "Welcome to OpenSCAD"
+msgstr "Bienvenue dans OpenSCAD"
+
+#: objects/ui_launchingscreen.h:295
+msgid "New"
+msgstr "Nouveau"
+
+#: objects/ui_launchingscreen.h:296
+msgid "Open"
+msgstr "Ouvrir..."
+
+#: objects/ui_launchingscreen.h:297
+msgid "Help"
+msgstr "Aide"
+
+#: objects/ui_launchingscreen.h:298
+msgid "Recents"
+msgstr "Récents"
+
+#: objects/ui_launchingscreen.h:299
+msgid "Open Recent"
+msgstr "Ouvrir un fichier récent"
+
+#: objects/ui_launchingscreen.h:300 objects/ui_launchingscreen.h:302
+msgid "Examples"
+msgstr "Exemples"
+
+#: objects/ui_launchingscreen.h:303
+msgid "Open Example"
+msgstr "&Ouvrir un example"
+
+#: objects/ui_launchingscreen.h:312
msgid "Don't show again"
msgstr "Ne plus afficher"
+#: objects/ui_launchingscreen.h:313
+msgid "Version"
+msgstr "Version"
+
#: objects/ui_LibraryInfoDialog.h:75
msgid "Lib & Build Info"
msgstr "Bibliothèques et Infos de la version"
@@ -130,543 +137,610 @@ msgstr "Bibliothèques et Infos de la version"
msgid "OpenSCAD Detailed Library and Build Information"
msgstr "Informations détaillées des bibliothèques et de la version d'OpenSCAD"
-#: objects/ui_MainWindow.h:731
+#: objects/ui_MainWindow.h:837
msgid "&New"
msgstr "&Nouveau"
-#: objects/ui_MainWindow.h:732
+#: objects/ui_MainWindow.h:838
msgid "Ctrl+N"
msgstr "Ctrl+N"
-#: objects/ui_MainWindow.h:733
+#: objects/ui_MainWindow.h:839
msgid "&Open..."
msgstr "&Ouvrir..."
-#: objects/ui_MainWindow.h:734
+#: objects/ui_MainWindow.h:840
msgid "Ctrl+O"
msgstr "Ctrl+O"
-#: objects/ui_MainWindow.h:735
+#: objects/ui_MainWindow.h:841
msgid "&Save"
msgstr "Enregi&strer"
-#: objects/ui_MainWindow.h:736
+#: objects/ui_MainWindow.h:842
msgid "Ctrl+S"
msgstr "Ctrl+S"
-#: objects/ui_MainWindow.h:737
+#: objects/ui_MainWindow.h:843
msgid "Save &As..."
msgstr "Enregistrer &sous..."
-#: objects/ui_MainWindow.h:738
+#: objects/ui_MainWindow.h:844
msgid "Ctrl+Shift+S"
msgstr "Ctrl+Shift+S"
-#: objects/ui_MainWindow.h:739
+#: objects/ui_MainWindow.h:845
msgid "&Reload"
msgstr "&Recharger"
-#: objects/ui_MainWindow.h:740
+#: objects/ui_MainWindow.h:846
msgid "Ctrl+R"
msgstr "Ctrl+R"
-#: objects/ui_MainWindow.h:741
+#: objects/ui_MainWindow.h:847
msgid "&Quit"
msgstr "&Quitter"
-#: objects/ui_MainWindow.h:742
+#: objects/ui_MainWindow.h:848
msgid "Ctrl+Q"
msgstr "Ctrl+Q"
-#: objects/ui_MainWindow.h:743
+#: objects/ui_MainWindow.h:849
msgid "&Undo"
msgstr "Ann&uler"
-#: objects/ui_MainWindow.h:744
+#: objects/ui_MainWindow.h:850
msgid "Ctrl+Z"
msgstr "Ctrl+Z"
-#: objects/ui_MainWindow.h:745
+#: objects/ui_MainWindow.h:851
msgid "&Redo"
msgstr "&Répéter"
-#: objects/ui_MainWindow.h:746
+#: objects/ui_MainWindow.h:852
msgid "Ctrl+Shift+Z"
msgstr "Ctrl+Shift+Z"
-#: objects/ui_MainWindow.h:747
+#: objects/ui_MainWindow.h:853
msgid "Cu&t"
msgstr "Co&uper"
-#: objects/ui_MainWindow.h:748
+#: objects/ui_MainWindow.h:854
msgid "Ctrl+X"
msgstr "Ctrl+X"
-#: objects/ui_MainWindow.h:749
+#: objects/ui_MainWindow.h:855
msgid "&Copy"
msgstr "&Copier"
-#: objects/ui_MainWindow.h:750
+#: objects/ui_MainWindow.h:856
msgid "Ctrl+C"
msgstr "Ctrl+C"
-#: objects/ui_MainWindow.h:751
+#: objects/ui_MainWindow.h:857
msgid "&Paste"
msgstr "&Coller"
-#: objects/ui_MainWindow.h:752
+#: objects/ui_MainWindow.h:858
msgid "Ctrl+V"
msgstr "Ctrl+V"
-#: objects/ui_MainWindow.h:753
+#: objects/ui_MainWindow.h:859
msgid "&Indent"
msgstr "&Indenter"
-#: objects/ui_MainWindow.h:754
+#: objects/ui_MainWindow.h:860
msgid "Ctrl+I"
msgstr "Ctrl+I"
-#: objects/ui_MainWindow.h:755
-msgid "U&nindent"
-msgstr "Dési&ndenter"
-
-#: objects/ui_MainWindow.h:756
-msgid "Ctrl+Shift+I"
-msgstr "Ctrl+Shift+I"
-
-#: objects/ui_MainWindow.h:757
+#: objects/ui_MainWindow.h:861
msgid "C&omment"
msgstr "C&ommenter"
-#: objects/ui_MainWindow.h:758
+#: objects/ui_MainWindow.h:862
msgid "Ctrl+D"
msgstr "Ctrl+D"
-#: objects/ui_MainWindow.h:759
+#: objects/ui_MainWindow.h:863
msgid "Unco&mment"
msgstr "Déco&mmenter"
-#: objects/ui_MainWindow.h:760
+#: objects/ui_MainWindow.h:864
msgid "Ctrl+Shift+D"
msgstr "Ctrl+Shift+D"
-#: objects/ui_MainWindow.h:761
-msgid "Paste viewport translation"
+#: objects/ui_MainWindow.h:865
+#, fuzzy
+msgid "P&aste viewport translation"
msgstr "Coller la translation de la fenêtre de rendu"
-#: objects/ui_MainWindow.h:762
+#: objects/ui_MainWindow.h:866
msgid "Ctrl+T"
msgstr "Ctrl+T"
-#: objects/ui_MainWindow.h:763
-msgid "Paste viewport rotation"
+#: objects/ui_MainWindow.h:867
+#, fuzzy
+msgid "Past&e viewport rotation"
msgstr "Coller la rotation de la fenêtre de rendu"
-#: objects/ui_MainWindow.h:764 objects/ui_MainWindow.h:842
-msgid "Zoom In"
-msgstr "Zoom Avant"
+#: objects/ui_MainWindow.h:868
+#, fuzzy
+msgid "Increase Font &Size"
+msgstr "Agrandir la police"
-#: objects/ui_MainWindow.h:765
+#: objects/ui_MainWindow.h:869
msgid "Ctrl++"
msgstr "Ctrl++"
-#: objects/ui_MainWindow.h:766 objects/ui_MainWindow.h:844
-msgid "Zoom Out"
-msgstr "Zoom Arrière"
+#: objects/ui_MainWindow.h:870
+#, fuzzy
+msgid "Decrease Font Si&ze"
+msgstr "Réduire la police"
-#: objects/ui_MainWindow.h:767
+#: objects/ui_MainWindow.h:871
msgid "Ctrl+-"
msgstr "Ctrl+-"
-#: objects/ui_MainWindow.h:768
-msgid "Hide editor"
+#: objects/ui_MainWindow.h:872
+#, fuzzy
+msgid "H&ide editor"
msgstr "Cacher l'éditeur"
-#: objects/ui_MainWindow.h:769
+#: objects/ui_MainWindow.h:873
msgid "&Reload and Preview"
msgstr "&Recharger et Aperçu"
-#: objects/ui_MainWindow.h:770
+#: objects/ui_MainWindow.h:874
msgid "F4"
msgstr "F4"
-#: objects/ui_MainWindow.h:771
+#: objects/ui_MainWindow.h:875
msgid "&Preview"
msgstr "&Aperçu"
-#: objects/ui_MainWindow.h:772
+#: objects/ui_MainWindow.h:876
msgid "F5"
msgstr "F5"
-#: objects/ui_MainWindow.h:773
-msgid "&Render"
+#: objects/ui_MainWindow.h:877
+#, fuzzy
+msgid "R&ender"
msgstr "&Rendu"
-#: objects/ui_MainWindow.h:774
+#: objects/ui_MainWindow.h:878
msgid "F6"
msgstr "F6"
-#: objects/ui_MainWindow.h:775
-msgid "Check Validity"
+#: objects/ui_MainWindow.h:879
+#, fuzzy
+msgid "&Check Validity"
msgstr "Vérifier la Validité"
-#: objects/ui_MainWindow.h:776
-msgid "Display &AST..."
+#: objects/ui_MainWindow.h:880
+#, fuzzy
+msgid "Display A&ST..."
msgstr "Afficher &AST..."
-#: objects/ui_MainWindow.h:777
+#: objects/ui_MainWindow.h:881
msgid "Display CSG &Tree..."
msgstr "Afficher CSG &Arbre"
-#: objects/ui_MainWindow.h:778
-msgid "Display CSG &Products..."
+#: objects/ui_MainWindow.h:882
+#, fuzzy
+msgid "Display CSG Pr&oducts..."
msgstr "Afficher CSG &Produits"
-#: objects/ui_MainWindow.h:779
+#: objects/ui_MainWindow.h:883
msgid "Export as &STL..."
msgstr "Exporter comme &STL..."
-#: objects/ui_MainWindow.h:780
+#: objects/ui_MainWindow.h:884
msgid "Export as &OFF..."
msgstr "Exporter comme &OFF..."
-#: objects/ui_MainWindow.h:781
+#: objects/ui_MainWindow.h:885
msgid "Preview"
msgstr "Aperçu"
-#: objects/ui_MainWindow.h:782
+#: objects/ui_MainWindow.h:886
msgid "F9"
msgstr "F9"
-#: objects/ui_MainWindow.h:783
+#: objects/ui_MainWindow.h:887
msgid "Surfaces"
msgstr "Surfaces"
-#: objects/ui_MainWindow.h:784
+#: objects/ui_MainWindow.h:888
msgid "F10"
msgstr "F10"
-#: objects/ui_MainWindow.h:785
+#: objects/ui_MainWindow.h:889
msgid "Wireframe"
msgstr "Wireframe"
-#: objects/ui_MainWindow.h:786
+#: objects/ui_MainWindow.h:890
msgid "F11"
msgstr "F11"
-#: objects/ui_MainWindow.h:787
+#: objects/ui_MainWindow.h:891
msgid "Thrown Together"
msgstr "Jeté ensemble"
-#: objects/ui_MainWindow.h:788
+#: objects/ui_MainWindow.h:892
msgid "F12"
msgstr "F12"
-#: objects/ui_MainWindow.h:789
+#: objects/ui_MainWindow.h:893
msgid "Show Edges"
msgstr "Afficher les Arêtes"
-#: objects/ui_MainWindow.h:790
+#: objects/ui_MainWindow.h:894
msgid "Ctrl+1"
msgstr "Ctrl+1"
-#: objects/ui_MainWindow.h:791
+#: objects/ui_MainWindow.h:895
msgid "Show Axes"
msgstr "Afficher les Axes"
-#: objects/ui_MainWindow.h:792
+#: objects/ui_MainWindow.h:896
msgid "Ctrl+2"
msgstr "Ctrl+2"
-#: objects/ui_MainWindow.h:793
+#: objects/ui_MainWindow.h:897
msgid "Show Crosshairs"
msgstr "Afficher la Mire"
-#: objects/ui_MainWindow.h:794
+#: objects/ui_MainWindow.h:898
msgid "Ctrl+3"
msgstr "Ctrl+3"
-#: objects/ui_MainWindow.h:795
+#: objects/ui_MainWindow.h:899
+msgid "Show Scale Markers"
+msgstr "Afficher les Marqueurs d'Échelle"
+
+#: objects/ui_MainWindow.h:900
msgid "Animate"
msgstr "Animer"
-#: objects/ui_MainWindow.h:796
-msgid "Top"
-msgstr "Dessus"
+#: objects/ui_MainWindow.h:901
+msgid "&Top"
+msgstr ""
-#: objects/ui_MainWindow.h:797
+#: objects/ui_MainWindow.h:902
msgid "Ctrl+4"
msgstr "Ctrl+4"
-#: objects/ui_MainWindow.h:798
-msgid "Bottom"
+#: objects/ui_MainWindow.h:903
+#, fuzzy
+msgid "&Bottom"
msgstr "Dessous"
-#: objects/ui_MainWindow.h:799
+#: objects/ui_MainWindow.h:904
msgid "Ctrl+5"
msgstr "Ctrl+5"
-#: objects/ui_MainWindow.h:800
-msgid "Left"
+#: objects/ui_MainWindow.h:905
+#, fuzzy
+msgid "&Left"
msgstr "Gauche"
-#: objects/ui_MainWindow.h:801
+#: objects/ui_MainWindow.h:906
msgid "Ctrl+6"
msgstr "Ctrl+6"
-#: objects/ui_MainWindow.h:802
-msgid "Right"
+#: objects/ui_MainWindow.h:907
+#, fuzzy
+msgid "&Right"
msgstr "Droite"
-#: objects/ui_MainWindow.h:803
+#: objects/ui_MainWindow.h:908
msgid "Ctrl+7"
msgstr "Ctrl+7"
-#: objects/ui_MainWindow.h:804
-msgid "Front"
+#: objects/ui_MainWindow.h:909
+#, fuzzy
+msgid "&Front"
msgstr "Face"
-#: objects/ui_MainWindow.h:805
+#: objects/ui_MainWindow.h:910
msgid "Ctrl+8"
msgstr "Ctrl+8"
-#: objects/ui_MainWindow.h:806
-msgid "Back"
-msgstr "Arrière"
+#: objects/ui_MainWindow.h:911
+msgid "Bac&k"
+msgstr ""
-#: objects/ui_MainWindow.h:807
+#: objects/ui_MainWindow.h:912
msgid "Ctrl+9"
msgstr "Ctrl+9"
-#: objects/ui_MainWindow.h:808
-msgid "Diagonal"
+#: objects/ui_MainWindow.h:913
+#, fuzzy
+msgid "&Diagonal"
msgstr "Diagonale"
-#: objects/ui_MainWindow.h:809
+#: objects/ui_MainWindow.h:914
msgid "Ctrl+0"
msgstr "Ctrl+0"
-#: objects/ui_MainWindow.h:810
-msgid "Center"
+#: objects/ui_MainWindow.h:915
+#, fuzzy
+msgid "Ce&nter"
msgstr "Centre"
-#: objects/ui_MainWindow.h:811
-msgid "Perspective"
+#: objects/ui_MainWindow.h:916
+#, fuzzy
+msgid "&Perspective"
msgstr "Perspective"
-#: objects/ui_MainWindow.h:812
-msgid "Orthogonal"
+#: objects/ui_MainWindow.h:917
+#, fuzzy
+msgid "&Orthogonal"
msgstr "Orthogonale"
-#: objects/ui_MainWindow.h:813
-msgid "Hide console"
+#: objects/ui_MainWindow.h:918
+#, fuzzy
+msgid "H&ide console"
msgstr "Cache la console"
-#: objects/ui_MainWindow.h:814
-msgid "About"
+#: objects/ui_MainWindow.h:919
+#, fuzzy
+msgid "&About"
msgstr "À propos"
-#: objects/ui_MainWindow.h:815
-msgid "Documentation"
+#: objects/ui_MainWindow.h:920
+#, fuzzy
+msgid "&Documentation"
msgstr "Documentation"
-#: objects/ui_MainWindow.h:816
+#: objects/ui_MainWindow.h:921
msgid "Clear Recent"
msgstr "Effacer Récents"
-#: objects/ui_MainWindow.h:817
-msgid "Export as DXF..."
+#: objects/ui_MainWindow.h:922
+#, fuzzy
+msgid "Export as &DXF..."
msgstr "Exporter comme DXF..."
-#: objects/ui_MainWindow.h:818 objects/ui_OpenCSGWarningDialog.h:94
-msgid "Close"
+#: objects/ui_MainWindow.h:923
+#, fuzzy
+msgid "&Close"
msgstr "Fermer"
-#: objects/ui_MainWindow.h:819
+#: objects/ui_MainWindow.h:924
msgid "Ctrl+W"
msgstr "Ctrl+W"
-#: objects/ui_MainWindow.h:820 objects/ui_Preferences.h:608
-msgid "Preferences"
+#: objects/ui_MainWindow.h:925
+#, fuzzy
+msgid "&Preferences"
msgstr "Préférences"
-#: objects/ui_MainWindow.h:821
-msgid "Find..."
+#: objects/ui_MainWindow.h:926
+#, fuzzy
+msgid "&Find..."
msgstr "Rechercher..."
-#: objects/ui_MainWindow.h:822
+#: objects/ui_MainWindow.h:927
msgid "Ctrl+F"
msgstr "Ctrl+F"
-#: objects/ui_MainWindow.h:823
-msgid "Find and Replace..."
+#: objects/ui_MainWindow.h:928
+#, fuzzy
+msgid "Fin&d and Replace..."
msgstr "Rechercher et remplacer..."
-#: objects/ui_MainWindow.h:824
+#: objects/ui_MainWindow.h:929
msgid "Ctrl+Alt+F"
msgstr "Ctrl+Alt+F"
-#: objects/ui_MainWindow.h:825
-msgid "Find Next"
+#: objects/ui_MainWindow.h:930
+#, fuzzy
+msgid "Find Ne&xt"
msgstr "Rechercher Suivant"
-#: objects/ui_MainWindow.h:826
+#: objects/ui_MainWindow.h:931
msgid "Ctrl+G"
msgstr "Ctrl+G"
-#: objects/ui_MainWindow.h:827
-msgid "Find Previous"
+#: objects/ui_MainWindow.h:932
+#, fuzzy
+msgid "Find Pre&vious"
msgstr "Rechercher Précédent"
-#: objects/ui_MainWindow.h:828
+#: objects/ui_MainWindow.h:933
msgid "Ctrl+Shift+G"
msgstr "Ctrl+Shift+G"
-#: objects/ui_MainWindow.h:829
-msgid "Use Selection for Find"
+#: objects/ui_MainWindow.h:934
+#, fuzzy
+msgid "Use Se&lection for Find"
msgstr "Utiliser la sélection pour Rechercher"
-#: objects/ui_MainWindow.h:830
+#: objects/ui_MainWindow.h:935
msgid "Ctrl+E"
msgstr "Ctrl+E"
-#: objects/ui_MainWindow.h:831
-msgid "Flush Caches"
+#: objects/ui_MainWindow.h:936
+#, fuzzy
+msgid "&Flush Caches"
msgstr "Vider les caches"
-#: objects/ui_MainWindow.h:832
-msgid "OpenSCAD Homepage"
+#: objects/ui_MainWindow.h:937
+#, fuzzy
+msgid "&OpenSCAD Homepage"
msgstr "Page d'accueil OpenSCAD"
-#: objects/ui_MainWindow.h:833
-msgid "Automatic Reload and Preview"
+#: objects/ui_MainWindow.h:938
+#, fuzzy
+msgid "&Automatic Reload and Preview"
msgstr "Recharger et Aperçu Automatique"
-#: objects/ui_MainWindow.h:834
-msgid "Export as Image..."
+#: objects/ui_MainWindow.h:939
+#, fuzzy
+msgid "Export as &Image..."
msgstr "Exporter comme Image..."
-#: objects/ui_MainWindow.h:835
-msgid "Export as CSG..."
+#: objects/ui_MainWindow.h:940
+#, fuzzy
+msgid "Export as &CSG..."
msgstr "Exporter comme CSG..."
-#: objects/ui_MainWindow.h:836
-msgid "Library info"
+#: objects/ui_MainWindow.h:941
+#, fuzzy
+msgid "&Library info"
msgstr "Informations Bibliothèques"
-#: objects/ui_MainWindow.h:837
-msgid "Show Library Folder..."
+#: objects/ui_MainWindow.h:942
+#, fuzzy
+msgid "Show &Library Folder..."
msgstr "Afficher le dossier des bibliothèques"
-#: objects/ui_MainWindow.h:838
+#: objects/ui_MainWindow.h:943
msgid "Reset View"
msgstr "Réinitialiser la vue"
-#: objects/ui_MainWindow.h:839
-msgid "Font List"
+#: objects/ui_MainWindow.h:944
+#, fuzzy
+msgid "&Font List"
msgstr "Liste des polices"
-#: objects/ui_MainWindow.h:840
-msgid "Export as SVG..."
+#: objects/ui_MainWindow.h:945
+#, fuzzy
+msgid "Export as S&VG..."
msgstr "Exporter comme SVG..."
-#: objects/ui_MainWindow.h:841
-msgid "Export as AMF..."
+#: objects/ui_MainWindow.h:946
+#, fuzzy
+msgid "Export as &AMF..."
msgstr "Exporter comme AMF..."
-#: objects/ui_MainWindow.h:843
+#: objects/ui_MainWindow.h:947
+msgid "Zoom In"
+msgstr "Zoom Avant"
+
+#: objects/ui_MainWindow.h:948
msgid "Ctrl+]"
msgstr "Ctrl+]"
-#: objects/ui_MainWindow.h:845
+#: objects/ui_MainWindow.h:949
+msgid "Zoom Out"
+msgstr "Zoom Arrière"
+
+#: objects/ui_MainWindow.h:950
msgid "Ctrl+["
msgstr "Ctrl+["
-#: objects/ui_MainWindow.h:846
+#: objects/ui_MainWindow.h:951
msgid "View All"
msgstr "&Voir Tout"
-#: objects/ui_MainWindow.h:847
-msgid "Convert Tabs to Spaces"
+#: objects/ui_MainWindow.h:952
+#, fuzzy
+msgid "Conv&ert Tabs to Spaces"
msgstr "Convertir les tabulations par des espaces"
-#: objects/ui_MainWindow.h:848
+#: objects/ui_MainWindow.h:953
msgid "Hide toolbars"
msgstr "Cacher les boîtes à outils"
-#: objects/ui_MainWindow.h:849
+#: objects/ui_MainWindow.h:954
+msgid "U&nindent"
+msgstr "Dési&ndenter"
+
+#: objects/ui_MainWindow.h:955
+msgid "Ctrl+Shift+I"
+msgstr "Ctrl+Shift+I"
+
+#: objects/ui_MainWindow.h:956
+#, fuzzy
+msgid "&Cheat Sheet"
+msgstr "Aide-Mémoire"
+
+#: objects/ui_MainWindow.h:957
+msgid "Message"
+msgstr "Message"
+
+#: objects/ui_MainWindow.h:960
msgid "Time:"
msgstr "Temps:"
-#: objects/ui_MainWindow.h:850
+#: objects/ui_MainWindow.h:961
msgid "FPS:"
msgstr "FPS:"
-#: objects/ui_MainWindow.h:851
+#: objects/ui_MainWindow.h:962
msgid "Steps:"
msgstr "Étapes:"
-#: objects/ui_MainWindow.h:852
+#: objects/ui_MainWindow.h:963
msgid "Dump Pictures"
msgstr "Vider les photos"
-#: objects/ui_MainWindow.h:853
+#: objects/ui_MainWindow.h:964
msgid "&File"
msgstr "&Fichier"
-#: objects/ui_MainWindow.h:854
-msgid "Recent Files"
+#: objects/ui_MainWindow.h:965
+#, fuzzy
+msgid "Recen&t Files"
msgstr "Fichiers Récents"
-#: objects/ui_MainWindow.h:856
-msgid "Export"
+#: objects/ui_MainWindow.h:966
+#, fuzzy
+msgid "&Examples"
+msgstr "Exemples"
+
+#: objects/ui_MainWindow.h:967
+#, fuzzy
+msgid "E&xport"
msgstr "Exporter"
-#: objects/ui_MainWindow.h:857
+#: objects/ui_MainWindow.h:968
msgid "&Edit"
msgstr "&Édition"
-#: objects/ui_MainWindow.h:858
+#: objects/ui_MainWindow.h:969
msgid "&Design"
msgstr "Conception"
-#: objects/ui_MainWindow.h:859
+#: objects/ui_MainWindow.h:970
msgid "&View"
msgstr "&Vue"
-#: objects/ui_MainWindow.h:860
+#: objects/ui_MainWindow.h:971
msgid "&Help"
msgstr "&Aide"
-#: objects/ui_MainWindow.h:863
+#: objects/ui_MainWindow.h:974
msgid "Find"
msgstr "Rechercher"
-#: objects/ui_MainWindow.h:864 objects/ui_MainWindow.h:871
+#: objects/ui_MainWindow.h:975 objects/ui_MainWindow.h:982
msgid "Replace"
msgstr "Remplacer"
-#: objects/ui_MainWindow.h:866
+#: objects/ui_MainWindow.h:977
msgid "Search string"
msgstr "Rechercher une chaîne de caractères"
-#: objects/ui_MainWindow.h:867
+#: objects/ui_MainWindow.h:978
msgid "<"
msgstr "<"
-#: objects/ui_MainWindow.h:868
+#: objects/ui_MainWindow.h:979
msgid ">"
msgstr ">"
-#: objects/ui_MainWindow.h:869
+#: objects/ui_MainWindow.h:980
msgid "Done"
msgstr "Terminer"
-#: objects/ui_MainWindow.h:870
+#: objects/ui_MainWindow.h:981
msgid "Replacement string"
msgstr "Remplacer une chaîne de caractères"
-#: objects/ui_MainWindow.h:872
+#: objects/ui_MainWindow.h:983
msgid "All"
msgstr "Tout"
@@ -706,162 +780,331 @@ msgstr "Activer OpenCSG"
msgid "Show this message again"
msgstr "Affiche ce message à nouveau"
-#: objects/ui_Preferences.h:609
+#: objects/ui_OpenCSGWarningDialog.h:94
+msgid "Close"
+msgstr "Fermer"
+
+#: objects/ui_Preferences.h:1061
+msgid "Preferences"
+msgstr "Préférences"
+
+#: objects/ui_Preferences.h:1062
msgid "3D View"
msgstr "&Vue 3D"
-#: objects/ui_Preferences.h:610 src/UIUtils.cc:85
+#: objects/ui_Preferences.h:1063 src/UIUtils.cc:86
msgid "Advanced"
msgstr "Avancé"
-#: objects/ui_Preferences.h:611 src/mainwin.cc:2315
+#: objects/ui_Preferences.h:1064 src/mainwin.cc:2418
msgid "Editor"
msgstr "Éditeur"
-#: objects/ui_Preferences.h:612
+#: objects/ui_Preferences.h:1065
msgid "Update"
msgstr "Mettre à jour"
-#: objects/ui_Preferences.h:613 objects/ui_Preferences.h:633
+#: objects/ui_Preferences.h:1066 objects/ui_Preferences.h:1147
msgid "Features"
msgstr "Fonctionnalités"
-#: objects/ui_Preferences.h:615
+#: objects/ui_Preferences.h:1068
msgid "Enable/Disable experimental features"
msgstr "Activer/Désactiver les fonctionnalités expérimentales"
-#: objects/ui_Preferences.h:617
+#: objects/ui_Preferences.h:1070
msgid "Color scheme:"
msgstr "Palette de couleurs:"
-#: objects/ui_Preferences.h:618
+#: objects/ui_Preferences.h:1071
+msgid "Show Warnings and Errors in 3D View"
+msgstr "Afficher les Avertissements et les Erreurs dans la fenêtre de rendu"
+
+#: objects/ui_Preferences.h:1072
msgid "Editor Type"
msgstr "Type d'éditeur"
-#: objects/ui_Preferences.h:621
+#: objects/ui_Preferences.h:1075
msgid "Simple Editor"
msgstr "Éditeur Simple"
-#: objects/ui_Preferences.h:622
+#: objects/ui_Preferences.h:1076
msgid "QScintilla Editor"
msgstr "Éditeur QScintilla"
-#: objects/ui_Preferences.h:624
+#: objects/ui_Preferences.h:1078
msgid "(requires restart)"
msgstr "(nécessite un redémarrage)"
-#: objects/ui_Preferences.h:625
+#: objects/ui_Preferences.h:1079
msgid "Font"
msgstr "Police"
-#: objects/ui_Preferences.h:626
+#: objects/ui_Preferences.h:1080
msgid "Color syntax highlighting"
msgstr "Colorer la coloration syntaxique"
-#: objects/ui_Preferences.h:627
-msgid "Use Ctrl/Cmd-Mouse-wheel to zoom text"
-msgstr "Utiliser Ctrl/Cmd-Roulette-Souris pour agrandir le texte"
+#: objects/ui_Preferences.h:1081
+msgid "Ctrl/Cmd-Mouse-wheel zooms text"
+msgstr "Ctrl/Cmd-Roulette-Souris agrandit le texte"
-#: objects/ui_Preferences.h:629
+#: objects/ui_Preferences.h:1082
+msgid "Indentation"
+msgstr "Indentation"
+
+#: objects/ui_Preferences.h:1083
+msgid "Auto Indent"
+msgstr "Indentation Auto"
+
+#: objects/ui_Preferences.h:1084
+msgid "Indent using"
+msgstr "Indenter en utilisant"
+
+#: objects/ui_Preferences.h:1087 src/settings.cc:135
+msgid "Spaces"
+msgstr "Espaces"
+
+#: objects/ui_Preferences.h:1088 src/settings.cc:135
+msgid "Tabs"
+msgstr "Tabulations"
+
+#: objects/ui_Preferences.h:1090
+msgid "Indentation width"
+msgstr "Largeur d'Indentation"
+
+#: objects/ui_Preferences.h:1091
+msgid "Tab width"
+msgstr "Largeur des tabulations"
+
+#: objects/ui_Preferences.h:1092
+msgid "Tab key function"
+msgstr "Fonction de la touche Tab"
+
+#: objects/ui_Preferences.h:1095 objects/ui_Preferences.h:1125
+#: src/settings.cc:136
+msgid "Indent"
+msgstr "Indenter"
+
+#: objects/ui_Preferences.h:1096 src/settings.cc:136
+msgid "Insert Tab"
+msgstr "Insérer une Tabulation"
+
+#: objects/ui_Preferences.h:1098
+msgid "Show whitespace"
+msgstr "Afficher les espaces blancs"
+
+#: objects/ui_Preferences.h:1101 src/settings.cc:132
+msgid "Never"
+msgstr "Jamais"
+
+#: objects/ui_Preferences.h:1102 src/settings.cc:132
+msgid "Always"
+msgstr "Toujours"
+
+#: objects/ui_Preferences.h:1103
+msgid "Only after indentation"
+msgstr "Seulement après indentation"
+
+#: objects/ui_Preferences.h:1105
+msgid "Size"
+msgstr "Taille"
+
+#: objects/ui_Preferences.h:1106
+msgid "Display"
+msgstr "Afficher"
+
+#: objects/ui_Preferences.h:1107
+msgid "Enable brace matching"
+msgstr "Activer la correspondance d'accolades"
+
+#: objects/ui_Preferences.h:1108
+msgid "Highlight current line"
+msgstr "Surligner la ligne courante"
+
+#: objects/ui_Preferences.h:1109 objects/ui_Preferences.h:1142
+msgid "Line wrap"
+msgstr "Retour à la ligne"
+
+#: objects/ui_Preferences.h:1112 objects/ui_Preferences.h:1129
+#: objects/ui_Preferences.h:1137 src/settings.cc:127 src/settings.cc:130
+#: src/settings.cc:131
+msgid "None"
+msgstr "Aucun"
+
+#: objects/ui_Preferences.h:1113 src/settings.cc:127
+msgid "Wrap at character boundaries"
+msgstr "Enveloppez aux limites des caractères"
+
+#: objects/ui_Preferences.h:1114 src/settings.cc:127
+msgid "Wrap at word boundaries"
+msgstr "Enveloppez aux limites des mots"
+
+#: objects/ui_Preferences.h:1116
+msgid "Line wrap indentation"
+msgstr "Indentation des retours à la ligne"
+
+#: objects/ui_Preferences.h:1117
+msgid "Line wrap visualization"
+msgstr "Visualisation des retours à la ligne"
+
+#: objects/ui_Preferences.h:1118
+msgid "Style"
+msgstr "Style"
+
+#: objects/ui_Preferences.h:1121 src/settings.cc:128
+msgid "Fixed"
+msgstr "Fixé"
+
+#: objects/ui_Preferences.h:1122 src/settings.cc:128
+msgid "Same"
+msgstr "Identique"
+
+#: objects/ui_Preferences.h:1123 src/settings.cc:128
+msgid "Indented"
+msgstr "Indenté"
+
+#: objects/ui_Preferences.h:1126
+msgid "Start"
+msgstr "Début"
+
+#: objects/ui_Preferences.h:1130 objects/ui_Preferences.h:1138
+#: src/settings.cc:130 src/settings.cc:131
+msgid "Text"
+msgstr "Texte"
+
+#: objects/ui_Preferences.h:1131 objects/ui_Preferences.h:1139
+#: src/settings.cc:130 src/settings.cc:131
+msgid "Border"
+msgstr "Bordure"
+
+#: objects/ui_Preferences.h:1132 objects/ui_Preferences.h:1140
+#: src/settings.cc:130 src/settings.cc:131
+msgid "Margin"
+msgstr "Marge"
+
+#: objects/ui_Preferences.h:1134
+msgid "End"
+msgstr "Fin"
+
+#: objects/ui_Preferences.h:1143
msgid "Automatically check for updates"
msgstr "Vérifier les mises à jour automatiquement"
-#: objects/ui_Preferences.h:630
+#: objects/ui_Preferences.h:1144
msgid "Include development snapshots"
msgstr "Inclure les versions de développement"
-#: objects/ui_Preferences.h:631
+#: objects/ui_Preferences.h:1145
msgid "Check Now"
msgstr "Vérifier Maintenant"
-#: objects/ui_Preferences.h:632
+#: objects/ui_Preferences.h:1146
msgid "Last checked: "
msgstr "Dernière vérification:"
-#: objects/ui_Preferences.h:634
+#: objects/ui_Preferences.h:1148
msgid "OpenCSG"
msgstr "OpenCSG"
-#: objects/ui_Preferences.h:635
+#: objects/ui_Preferences.h:1149
msgid "Show capability warning"
msgstr "Afficher les avertissements de capacité"
-#: objects/ui_Preferences.h:636
+#: objects/ui_Preferences.h:1150
msgid "Enable for OpenGL 1.x"
msgstr "Activer pour OpenGL 1.x"
-#: objects/ui_Preferences.h:637
+#: objects/ui_Preferences.h:1151
msgid "Turn off rendering at "
msgstr "Désactiver le rendu à"
-#: objects/ui_Preferences.h:638
+#: objects/ui_Preferences.h:1152
msgid "elements"
msgstr "éléments"
-#: objects/ui_Preferences.h:639
+#: objects/ui_Preferences.h:1153
msgid "Force Goldfeather"
msgstr "Forcer Goldfeather"
-#: objects/ui_Preferences.h:640
+#: objects/ui_Preferences.h:1154
msgid "CGAL Cache size"
msgstr "Taille du Cache de CGAL"
-#: objects/ui_Preferences.h:641 objects/ui_Preferences.h:643
+#: objects/ui_Preferences.h:1155 objects/ui_Preferences.h:1157
msgid "bytes"
msgstr "octets"
-#: objects/ui_Preferences.h:642
+#: objects/ui_Preferences.h:1156
msgid "PolySet Cache size"
msgstr "Taille du Cache PolySet"
-#: objects/ui_Preferences.h:644
+#: objects/ui_Preferences.h:1158
msgid "Allow to open multiple documents"
msgstr "Autoriser l'ouverture de plusieurs documents"
-#: objects/ui_Preferences.h:645
+#: objects/ui_Preferences.h:1159
msgid "Enable docking of Editor and Console in different places"
msgstr "Activer l'ancrage de l'Éditeur et de la Console à différents endroits"
-#: objects/ui_Preferences.h:646
+#: objects/ui_Preferences.h:1160
msgid "Enable undocking of Editor and Console to separate windows"
msgstr ""
"Activer désancrage de l'Éditeur et de la Console dans des fenêtres séparés"
-#: objects/ui_Preferences.h:647
+#: objects/ui_Preferences.h:1161
msgid "Show Welcome Screen"
msgstr "Affiche l'écran d'accueil"
-#: objects/ui_Preferences.h:648
+#: objects/ui_Preferences.h:1162
msgid "Enable user interface localization (requires restart of OpenSCAD)"
msgstr ""
"Activer la localisation de l'interface utilisateur (Nécessite un redémarrage "
"d'OpenSCAD)"
-#: objects/ui_Preferences.h:649
-msgid "toolBar"
-msgstr "boîte à outils"
-
#: objects/ui_ProgressWidget.h:72
-msgid "Form"
-msgstr "Formulaire"
-
-#: objects/ui_ProgressWidget.h:73
msgid "%v / %m"
msgstr "%v / %m"
-#: src/mainwin.cc:768 src/mainwin.cc:1300
+#: src/Camera.cc:126
+#, c-format
+msgid ""
+"Viewport: translate = [ %.2f %.2f %.2f ], rotate = [ %.2f %.2f %.2f ], "
+"distance = %.2f"
+msgstr ""
+"Fenêtre de rendu: translation = [ %.2f %.2f %.2f ], rotation = [ %.2f %.2f "
+"%.2f ], distance = %.2f"
+
+#: src/mainwin.cc:778 src/mainwin.cc:1354
msgid "Untitled.scad"
msgstr "Untitled.scad"
-#: src/mainwin.cc:1299
+#: src/mainwin.cc:971
+msgid "Compile error."
+msgstr "Erreur de Compilation."
+
+#: src/mainwin.cc:974
+msgid "Error while compiling '%1'."
+msgstr "Erreur lors de la compilation de '%1'."
+
+#: src/mainwin.cc:978
+msgid "Compilation generated %1 warning."
+msgid_plural "Compilation generated %1 warnings."
+msgstr[0] "La compilation a généré %1 avertissement"
+msgstr[1] "La compilation a généré %1 avertissements"
+
+#: src/mainwin.cc:988
+msgid " For details see console window."
+msgstr " Pour détails voir Fenêtre de la Console."
+
+#: src/mainwin.cc:1353
msgid "Save File"
msgstr "Enregistrer le Fichier"
-#: src/mainwin.cc:1301
+#: src/mainwin.cc:1355
msgid "OpenSCAD Designs (*.scad)"
msgstr "OpenSCAD Designs (*.scad)"
-#: src/mainwin.cc:1311
+#: src/mainwin.cc:1365
msgid ""
"%1 already exists.\n"
"Do you want to replace it?"
@@ -869,11 +1112,11 @@ msgstr ""
"%1 existe déjà.\n"
"Voulez-vous le remplacer?"
-#: src/mainwin.cc:1630
+#: src/mainwin.cc:1684
msgid "Application"
msgstr "Application"
-#: src/mainwin.cc:1631
+#: src/mainwin.cc:1685
msgid ""
"The document has been modified.\n"
"Do you really want to reload the file?"
@@ -881,65 +1124,63 @@ msgstr ""
"Ce document a été modifié.\n"
"Voulez-vous vraiment recharger le fichier?"
-#: src/mainwin.cc:1942 src/mainwin.cc:1999
+#: src/mainwin.cc:2038 src/mainwin.cc:2094
msgid "Export %1 File"
msgstr "Exporter %1 Fichier"
-#: src/mainwin.cc:1943 src/mainwin.cc:2003
+#: src/mainwin.cc:2039 src/mainwin.cc:2098
msgid "%1 Files (*%2)"
msgstr "%1 Fichiers (*%2)"
-#: src/mainwin.cc:1944
+#: src/mainwin.cc:2040
msgid "Untitled"
msgstr "Sans Titre"
-#: src/mainwin.cc:2001
+#: src/mainwin.cc:2096
msgid "Untitled%1"
msgstr "Sans Titre%1"
-#: src/mainwin.cc:2052
+#: src/mainwin.cc:2147
msgid "Export CSG File"
msgstr "Exporter un fichier CSG"
-#: src/mainwin.cc:2053
+#: src/mainwin.cc:2148
msgid "Untitled.csg"
msgstr "SansTitre.csg"
-#: src/mainwin.cc:2054
+#: src/mainwin.cc:2149
msgid "CSG Files (*.csg)"
msgstr "Fichiers CSG (*.csg)"
-#: src/mainwin.cc:2080
+#: src/mainwin.cc:2175
msgid "Export Image"
msgstr "Exporter une Image"
-#: src/mainwin.cc:2080
+#: src/mainwin.cc:2175
msgid "PNG Files (*.png)"
msgstr "Fichiers PNG (*.png)"
-#: src/mainwin.cc:2320
+#: src/mainwin.cc:2423
msgid "Console"
msgstr "Console"
-#: src/mainwin.cc:2447
+#: src/mainwin.cc:2560
msgid "The document has been modified."
msgstr "Ce document a été modifié"
-#: src/mainwin.cc:2448
+#: src/mainwin.cc:2561
msgid "Do you want to save your changes?"
msgstr "Voulez-vous enregistrer vos changements?"
-#: src/QGLView.cc:114
+#: src/openscad.cc:604
msgid ""
-"\n"
-"Using QGLWidget\n"
-"\n"
+"Fontconfig needs to update its font cache.\n"
+"This can take up to a couple of minutes."
msgstr ""
-"\n"
-"Utilise QGLWidget\n"
-"\n"
+"Fontconfig a besoin de mettre à jour son cache de polices.\n"
+"Celà peut prendre quelques minutes."
-#: src/QGLView.cc:131
+#: src/QGLView.cc:129
msgid ""
"Warning: You may experience OpenCSG rendering errors.\n"
"\n"
@@ -947,7 +1188,7 @@ msgstr ""
"Avertissement: Vous pourriez avoir des erreurs de rendu OpenCSG\n"
"\n"
-#: src/QGLView.cc:134
+#: src/QGLView.cc:132
msgid ""
"Warning: Missing OpenGL capabilities for OpenCSG - OpenCSG has been "
"disabled.\n"
@@ -957,7 +1198,7 @@ msgstr ""
"désactivé.\n"
"\n"
-#: src/QGLView.cc:137
+#: src/QGLView.cc:135
msgid ""
"It is highly recommended to use OpenSCAD on a system with OpenGL 2.0 or "
"later.\n"
@@ -967,7 +1208,7 @@ msgstr ""
"OpenGL 2.0 ou ultérieur.\n"
"Voici les informations de votre moteur de rendu:\n"
-#: src/QGLView.cc:141
+#: src/QGLView.cc:139
#, c-format
msgid ""
"GLEW version %s\n"
@@ -978,27 +1219,43 @@ msgstr ""
"%s (%s)\n"
"Version OpenGL %s\n"
-#: src/QGLView.cc:171
-#, c-format
-msgid ""
-"Viewport: translate = [ %.2f %.2f %.2f ], rotate = [ %.2f %.2f %.2f ], "
-"distance = %.2f"
-msgstr ""
-"Fenêtre de rendu: translation = [ %.2f %.2f %.2f ], rotation = [ %.2f %.2f "
-"%.2f ], distance = %.2f"
+#: src/settings.cc:132
+msgid "After indentation"
+msgstr "Après indentation"
-#: src/UIUtils.cc:85
+#: src/UIUtils.cc:86
msgid "Basics"
msgstr "Bases"
-#: src/UIUtils.cc:85
+#: src/UIUtils.cc:86
msgid "Shapes"
msgstr "Formes"
-#: src/UIUtils.cc:85
+#: src/UIUtils.cc:86
msgid "Extrusion"
msgstr "Extrusion"
+#~ msgid "Top"
+#~ msgstr "Dessus"
+
+#~ msgid "Back"
+#~ msgstr "Arrière"
+
+#~ msgid "toolBar"
+#~ msgstr "boîte à outils"
+
+#~ msgid "Form"
+#~ msgstr "Formulaire"
+
+#~ msgid ""
+#~ "\n"
+#~ "Using QGLWidget\n"
+#~ "\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Utilise QGLWidget\n"
+#~ "\n"
+
#~ msgid "Paste font selector to Editor Window"
#~ msgstr "Coller le sélecteur de polices dans l'éditeur de fenêtres"
diff --git a/locale/openscad.pot b/locale/openscad.pot
index b3587cc0..fc958879 100644
--- a/locale/openscad.pot
+++ b/locale/openscad.pot
@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: OpenSCAD 2014.12.22\n"
+"Project-Id-Version: OpenSCAD 2015.02.01\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2014-12-22 23:37+0100\n"
+"POT-Creation-Date: 2015-02-01 19:40+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME \n"
"Language-Team: LANGUAGE \n"
@@ -16,74 +16,13 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
-#: objects/ui_AboutDialog.h:51 src/AboutDialog.h:15
+#: objects/ui_AboutDialog.h:103 src/AboutDialog.h:13
msgid "About OpenSCAD"
msgstr ""
-#: objects/ui_FontListDialog.h:102
-msgid "OpenSCAD Font List"
-msgstr ""
-
-#: objects/ui_FontListDialog.h:103 objects/ui_LibraryInfoDialog.h:77
-msgid "&OK"
-msgstr ""
-
-#: objects/ui_FontListDialog.h:104
-msgid "Copy to Clipboard"
-msgstr ""
-
-#: objects/ui_FontListDialog.h:105
-msgid "Filter:"
-msgstr ""
-
-#: objects/ui_FontListDialog.h:106
-msgid ""
-"This list shows the fonts currently registered with "
-"OpenSCAD.
Example:
text(t = "
-""OpenSCAD", font = "DejaVu Sans");
text(t = "OpenSCAD", font = "
-""Liberation Sans:style=Italic");
"
-msgstr ""
-
-#: objects/ui_launchingscreen.h:276
-msgid "Welcome to OpenSCAD"
-msgstr ""
-
-#: objects/ui_launchingscreen.h:277
-msgid "New"
-msgstr ""
-
-#: objects/ui_launchingscreen.h:278
-msgid "Open"
-msgstr ""
-
-#: objects/ui_launchingscreen.h:279
-msgid "Help"
-msgstr ""
-
-#: objects/ui_launchingscreen.h:280
-msgid "Recents"
-msgstr ""
-
-#: objects/ui_launchingscreen.h:281
-msgid "Open Recent"
-msgstr ""
-
-#: objects/ui_launchingscreen.h:282 objects/ui_launchingscreen.h:284
-#: objects/ui_MainWindow.h:855
-msgid "Examples"
-msgstr ""
-
-#: objects/ui_launchingscreen.h:285
-msgid "Open Example"
-msgstr ""
-
-#: objects/ui_launchingscreen.h:287
+#: objects/ui_AboutDialog.h:105 objects/ui_launchingscreen.h:305
msgid ""
"\n"
"This list shows the fonts currently registered with "
+"OpenSCAD.
Example:
text(t = "
+""OpenSCAD", font = "DejaVu Sans");
text(t = "OpenSCAD", font = "
+""Liberation Sans:style=Italic");
"
+msgstr ""
+
#: objects/ui_launchingscreen.h:294
+msgid "Welcome to OpenSCAD"
+msgstr ""
+
+#: objects/ui_launchingscreen.h:295
+msgid "New"
+msgstr ""
+
+#: objects/ui_launchingscreen.h:296
+msgid "Open"
+msgstr ""
+
+#: objects/ui_launchingscreen.h:297
+msgid "Help"
+msgstr ""
+
+#: objects/ui_launchingscreen.h:298
+msgid "Recents"
+msgstr ""
+
+#: objects/ui_launchingscreen.h:299
+msgid "Open Recent"
+msgstr ""
+
+#: objects/ui_launchingscreen.h:300 objects/ui_launchingscreen.h:302
+msgid "Examples"
+msgstr ""
+
+#: objects/ui_launchingscreen.h:303
+msgid "Open Example"
+msgstr ""
+
+#: objects/ui_launchingscreen.h:312
msgid "Don't show again"
msgstr ""
+#: objects/ui_launchingscreen.h:313
+msgid "Version"
+msgstr ""
+
#: objects/ui_LibraryInfoDialog.h:75
msgid "Lib & Build Info"
msgstr ""
@@ -109,543 +117,567 @@ msgstr ""
msgid "OpenSCAD Detailed Library and Build Information"
msgstr ""
-#: objects/ui_MainWindow.h:731
+#: objects/ui_MainWindow.h:837
msgid "&New"
msgstr ""
-#: objects/ui_MainWindow.h:732
+#: objects/ui_MainWindow.h:838
msgid "Ctrl+N"
msgstr ""
-#: objects/ui_MainWindow.h:733
+#: objects/ui_MainWindow.h:839
msgid "&Open..."
msgstr ""
-#: objects/ui_MainWindow.h:734
+#: objects/ui_MainWindow.h:840
msgid "Ctrl+O"
msgstr ""
-#: objects/ui_MainWindow.h:735
+#: objects/ui_MainWindow.h:841
msgid "&Save"
msgstr ""
-#: objects/ui_MainWindow.h:736
+#: objects/ui_MainWindow.h:842
msgid "Ctrl+S"
msgstr ""
-#: objects/ui_MainWindow.h:737
+#: objects/ui_MainWindow.h:843
msgid "Save &As..."
msgstr ""
-#: objects/ui_MainWindow.h:738
+#: objects/ui_MainWindow.h:844
msgid "Ctrl+Shift+S"
msgstr ""
-#: objects/ui_MainWindow.h:739
+#: objects/ui_MainWindow.h:845
msgid "&Reload"
msgstr ""
-#: objects/ui_MainWindow.h:740
+#: objects/ui_MainWindow.h:846
msgid "Ctrl+R"
msgstr ""
-#: objects/ui_MainWindow.h:741
+#: objects/ui_MainWindow.h:847
msgid "&Quit"
msgstr ""
-#: objects/ui_MainWindow.h:742
+#: objects/ui_MainWindow.h:848
msgid "Ctrl+Q"
msgstr ""
-#: objects/ui_MainWindow.h:743
+#: objects/ui_MainWindow.h:849
msgid "&Undo"
msgstr ""
-#: objects/ui_MainWindow.h:744
+#: objects/ui_MainWindow.h:850
msgid "Ctrl+Z"
msgstr ""
-#: objects/ui_MainWindow.h:745
+#: objects/ui_MainWindow.h:851
msgid "&Redo"
msgstr ""
-#: objects/ui_MainWindow.h:746
+#: objects/ui_MainWindow.h:852
msgid "Ctrl+Shift+Z"
msgstr ""
-#: objects/ui_MainWindow.h:747
+#: objects/ui_MainWindow.h:853
msgid "Cu&t"
msgstr ""
-#: objects/ui_MainWindow.h:748
+#: objects/ui_MainWindow.h:854
msgid "Ctrl+X"
msgstr ""
-#: objects/ui_MainWindow.h:749
+#: objects/ui_MainWindow.h:855
msgid "&Copy"
msgstr ""
-#: objects/ui_MainWindow.h:750
+#: objects/ui_MainWindow.h:856
msgid "Ctrl+C"
msgstr ""
-#: objects/ui_MainWindow.h:751
+#: objects/ui_MainWindow.h:857
msgid "&Paste"
msgstr ""
-#: objects/ui_MainWindow.h:752
+#: objects/ui_MainWindow.h:858
msgid "Ctrl+V"
msgstr ""
-#: objects/ui_MainWindow.h:753
+#: objects/ui_MainWindow.h:859
msgid "&Indent"
msgstr ""
-#: objects/ui_MainWindow.h:754
+#: objects/ui_MainWindow.h:860
msgid "Ctrl+I"
msgstr ""
-#: objects/ui_MainWindow.h:755
-msgid "U&nindent"
-msgstr ""
-
-#: objects/ui_MainWindow.h:756
-msgid "Ctrl+Shift+I"
-msgstr ""
-
-#: objects/ui_MainWindow.h:757
+#: objects/ui_MainWindow.h:861
msgid "C&omment"
msgstr ""
-#: objects/ui_MainWindow.h:758
+#: objects/ui_MainWindow.h:862
msgid "Ctrl+D"
msgstr ""
-#: objects/ui_MainWindow.h:759
+#: objects/ui_MainWindow.h:863
msgid "Unco&mment"
msgstr ""
-#: objects/ui_MainWindow.h:760
+#: objects/ui_MainWindow.h:864
msgid "Ctrl+Shift+D"
msgstr ""
-#: objects/ui_MainWindow.h:761
-msgid "Paste viewport translation"
-msgstr ""
-
-#: objects/ui_MainWindow.h:762
-msgid "Ctrl+T"
-msgstr ""
-
-#: objects/ui_MainWindow.h:763
-msgid "Paste viewport rotation"
-msgstr ""
-
-#: objects/ui_MainWindow.h:764 objects/ui_MainWindow.h:842
-msgid "Zoom In"
-msgstr ""
-
-#: objects/ui_MainWindow.h:765
-msgid "Ctrl++"
-msgstr ""
-
-#: objects/ui_MainWindow.h:766 objects/ui_MainWindow.h:844
-msgid "Zoom Out"
-msgstr ""
-
-#: objects/ui_MainWindow.h:767
-msgid "Ctrl+-"
-msgstr ""
-
-#: objects/ui_MainWindow.h:768
-msgid "Hide editor"
-msgstr ""
-
-#: objects/ui_MainWindow.h:769
-msgid "&Reload and Preview"
-msgstr ""
-
-#: objects/ui_MainWindow.h:770
-msgid "F4"
-msgstr ""
-
-#: objects/ui_MainWindow.h:771
-msgid "&Preview"
-msgstr ""
-
-#: objects/ui_MainWindow.h:772
-msgid "F5"
-msgstr ""
-
-#: objects/ui_MainWindow.h:773
-msgid "&Render"
-msgstr ""
-
-#: objects/ui_MainWindow.h:774
-msgid "F6"
-msgstr ""
-
-#: objects/ui_MainWindow.h:775
-msgid "Check Validity"
-msgstr ""
-
-#: objects/ui_MainWindow.h:776
-msgid "Display &AST..."
-msgstr ""
-
-#: objects/ui_MainWindow.h:777
-msgid "Display CSG &Tree..."
-msgstr ""
-
-#: objects/ui_MainWindow.h:778
-msgid "Display CSG &Products..."
-msgstr ""
-
-#: objects/ui_MainWindow.h:779
-msgid "Export as &STL..."
-msgstr ""
-
-#: objects/ui_MainWindow.h:780
-msgid "Export as &OFF..."
-msgstr ""
-
-#: objects/ui_MainWindow.h:781
-msgid "Preview"
-msgstr ""
-
-#: objects/ui_MainWindow.h:782
-msgid "F9"
-msgstr ""
-
-#: objects/ui_MainWindow.h:783
-msgid "Surfaces"
-msgstr ""
-
-#: objects/ui_MainWindow.h:784
-msgid "F10"
-msgstr ""
-
-#: objects/ui_MainWindow.h:785
-msgid "Wireframe"
-msgstr ""
-
-#: objects/ui_MainWindow.h:786
-msgid "F11"
-msgstr ""
-
-#: objects/ui_MainWindow.h:787
-msgid "Thrown Together"
-msgstr ""
-
-#: objects/ui_MainWindow.h:788
-msgid "F12"
-msgstr ""
-
-#: objects/ui_MainWindow.h:789
-msgid "Show Edges"
-msgstr ""
-
-#: objects/ui_MainWindow.h:790
-msgid "Ctrl+1"
-msgstr ""
-
-#: objects/ui_MainWindow.h:791
-msgid "Show Axes"
-msgstr ""
-
-#: objects/ui_MainWindow.h:792
-msgid "Ctrl+2"
-msgstr ""
-
-#: objects/ui_MainWindow.h:793
-msgid "Show Crosshairs"
-msgstr ""
-
-#: objects/ui_MainWindow.h:794
-msgid "Ctrl+3"
-msgstr ""
-
-#: objects/ui_MainWindow.h:795
-msgid "Animate"
-msgstr ""
-
-#: objects/ui_MainWindow.h:796
-msgid "Top"
-msgstr ""
-
-#: objects/ui_MainWindow.h:797
-msgid "Ctrl+4"
-msgstr ""
-
-#: objects/ui_MainWindow.h:798
-msgid "Bottom"
-msgstr ""
-
-#: objects/ui_MainWindow.h:799
-msgid "Ctrl+5"
-msgstr ""
-
-#: objects/ui_MainWindow.h:800
-msgid "Left"
-msgstr ""
-
-#: objects/ui_MainWindow.h:801
-msgid "Ctrl+6"
-msgstr ""
-
-#: objects/ui_MainWindow.h:802
-msgid "Right"
-msgstr ""
-
-#: objects/ui_MainWindow.h:803
-msgid "Ctrl+7"
-msgstr ""
-
-#: objects/ui_MainWindow.h:804
-msgid "Front"
-msgstr ""
-
-#: objects/ui_MainWindow.h:805
-msgid "Ctrl+8"
-msgstr ""
-
-#: objects/ui_MainWindow.h:806
-msgid "Back"
-msgstr ""
-
-#: objects/ui_MainWindow.h:807
-msgid "Ctrl+9"
-msgstr ""
-
-#: objects/ui_MainWindow.h:808
-msgid "Diagonal"
-msgstr ""
-
-#: objects/ui_MainWindow.h:809
-msgid "Ctrl+0"
-msgstr ""
-
-#: objects/ui_MainWindow.h:810
-msgid "Center"
-msgstr ""
-
-#: objects/ui_MainWindow.h:811
-msgid "Perspective"
-msgstr ""
-
-#: objects/ui_MainWindow.h:812
-msgid "Orthogonal"
-msgstr ""
-
-#: objects/ui_MainWindow.h:813
-msgid "Hide console"
-msgstr ""
-
-#: objects/ui_MainWindow.h:814
-msgid "About"
-msgstr ""
-
-#: objects/ui_MainWindow.h:815
-msgid "Documentation"
-msgstr ""
-
-#: objects/ui_MainWindow.h:816
-msgid "Clear Recent"
-msgstr ""
-
-#: objects/ui_MainWindow.h:817
-msgid "Export as DXF..."
-msgstr ""
-
-#: objects/ui_MainWindow.h:818 objects/ui_OpenCSGWarningDialog.h:94
-msgid "Close"
-msgstr ""
-
-#: objects/ui_MainWindow.h:819
-msgid "Ctrl+W"
-msgstr ""
-
-#: objects/ui_MainWindow.h:820 objects/ui_Preferences.h:608
-msgid "Preferences"
-msgstr ""
-
-#: objects/ui_MainWindow.h:821
-msgid "Find..."
-msgstr ""
-
-#: objects/ui_MainWindow.h:822
-msgid "Ctrl+F"
-msgstr ""
-
-#: objects/ui_MainWindow.h:823
-msgid "Find and Replace..."
-msgstr ""
-
-#: objects/ui_MainWindow.h:824
-msgid "Ctrl+Alt+F"
-msgstr ""
-
-#: objects/ui_MainWindow.h:825
-msgid "Find Next"
-msgstr ""
-
-#: objects/ui_MainWindow.h:826
-msgid "Ctrl+G"
-msgstr ""
-
-#: objects/ui_MainWindow.h:827
-msgid "Find Previous"
-msgstr ""
-
-#: objects/ui_MainWindow.h:828
-msgid "Ctrl+Shift+G"
-msgstr ""
-
-#: objects/ui_MainWindow.h:829
-msgid "Use Selection for Find"
-msgstr ""
-
-#: objects/ui_MainWindow.h:830
-msgid "Ctrl+E"
-msgstr ""
-
-#: objects/ui_MainWindow.h:831
-msgid "Flush Caches"
-msgstr ""
-
-#: objects/ui_MainWindow.h:832
-msgid "OpenSCAD Homepage"
-msgstr ""
-
-#: objects/ui_MainWindow.h:833
-msgid "Automatic Reload and Preview"
-msgstr ""
-
-#: objects/ui_MainWindow.h:834
-msgid "Export as Image..."
-msgstr ""
-
-#: objects/ui_MainWindow.h:835
-msgid "Export as CSG..."
-msgstr ""
-
-#: objects/ui_MainWindow.h:836
-msgid "Library info"
-msgstr ""
-
-#: objects/ui_MainWindow.h:837
-msgid "Show Library Folder..."
-msgstr ""
-
-#: objects/ui_MainWindow.h:838
-msgid "Reset View"
-msgstr ""
-
-#: objects/ui_MainWindow.h:839
-msgid "Font List"
-msgstr ""
-
-#: objects/ui_MainWindow.h:840
-msgid "Export as SVG..."
-msgstr ""
-
-#: objects/ui_MainWindow.h:841
-msgid "Export as AMF..."
-msgstr ""
-
-#: objects/ui_MainWindow.h:843
-msgid "Ctrl+]"
-msgstr ""
-
-#: objects/ui_MainWindow.h:845
-msgid "Ctrl+["
-msgstr ""
-
-#: objects/ui_MainWindow.h:846
-msgid "View All"
-msgstr ""
-
-#: objects/ui_MainWindow.h:847
-msgid "Convert Tabs to Spaces"
-msgstr ""
-
-#: objects/ui_MainWindow.h:848
-msgid "Hide toolbars"
-msgstr ""
-
-#: objects/ui_MainWindow.h:849
-msgid "Time:"
-msgstr ""
-
-#: objects/ui_MainWindow.h:850
-msgid "FPS:"
-msgstr ""
-
-#: objects/ui_MainWindow.h:851
-msgid "Steps:"
-msgstr ""
-
-#: objects/ui_MainWindow.h:852
-msgid "Dump Pictures"
-msgstr ""
-
-#: objects/ui_MainWindow.h:853
-msgid "&File"
-msgstr ""
-
-#: objects/ui_MainWindow.h:854
-msgid "Recent Files"
-msgstr ""
-
-#: objects/ui_MainWindow.h:856
-msgid "Export"
-msgstr ""
-
-#: objects/ui_MainWindow.h:857
-msgid "&Edit"
-msgstr ""
-
-#: objects/ui_MainWindow.h:858
-msgid "&Design"
-msgstr ""
-
-#: objects/ui_MainWindow.h:859
-msgid "&View"
-msgstr ""
-
-#: objects/ui_MainWindow.h:860
-msgid "&Help"
-msgstr ""
-
-#: objects/ui_MainWindow.h:863
-msgid "Find"
-msgstr ""
-
-#: objects/ui_MainWindow.h:864 objects/ui_MainWindow.h:871
-msgid "Replace"
+#: objects/ui_MainWindow.h:865
+msgid "P&aste viewport translation"
msgstr ""
#: objects/ui_MainWindow.h:866
-msgid "Search string"
+msgid "Ctrl+T"
msgstr ""
#: objects/ui_MainWindow.h:867
-msgid "<"
+msgid "Past&e viewport rotation"
msgstr ""
#: objects/ui_MainWindow.h:868
-msgid ">"
+msgid "Increase Font &Size"
msgstr ""
#: objects/ui_MainWindow.h:869
-msgid "Done"
+msgid "Ctrl++"
msgstr ""
#: objects/ui_MainWindow.h:870
-msgid "Replacement string"
+msgid "Decrease Font Si&ze"
+msgstr ""
+
+#: objects/ui_MainWindow.h:871
+msgid "Ctrl+-"
msgstr ""
#: objects/ui_MainWindow.h:872
+msgid "H&ide editor"
+msgstr ""
+
+#: objects/ui_MainWindow.h:873
+msgid "&Reload and Preview"
+msgstr ""
+
+#: objects/ui_MainWindow.h:874
+msgid "F4"
+msgstr ""
+
+#: objects/ui_MainWindow.h:875
+msgid "&Preview"
+msgstr ""
+
+#: objects/ui_MainWindow.h:876
+msgid "F5"
+msgstr ""
+
+#: objects/ui_MainWindow.h:877
+msgid "R&ender"
+msgstr ""
+
+#: objects/ui_MainWindow.h:878
+msgid "F6"
+msgstr ""
+
+#: objects/ui_MainWindow.h:879
+msgid "&Check Validity"
+msgstr ""
+
+#: objects/ui_MainWindow.h:880
+msgid "Display A&ST..."
+msgstr ""
+
+#: objects/ui_MainWindow.h:881
+msgid "Display CSG &Tree..."
+msgstr ""
+
+#: objects/ui_MainWindow.h:882
+msgid "Display CSG Pr&oducts..."
+msgstr ""
+
+#: objects/ui_MainWindow.h:883
+msgid "Export as &STL..."
+msgstr ""
+
+#: objects/ui_MainWindow.h:884
+msgid "Export as &OFF..."
+msgstr ""
+
+#: objects/ui_MainWindow.h:885
+msgid "Preview"
+msgstr ""
+
+#: objects/ui_MainWindow.h:886
+msgid "F9"
+msgstr ""
+
+#: objects/ui_MainWindow.h:887
+msgid "Surfaces"
+msgstr ""
+
+#: objects/ui_MainWindow.h:888
+msgid "F10"
+msgstr ""
+
+#: objects/ui_MainWindow.h:889
+msgid "Wireframe"
+msgstr ""
+
+#: objects/ui_MainWindow.h:890
+msgid "F11"
+msgstr ""
+
+#: objects/ui_MainWindow.h:891
+msgid "Thrown Together"
+msgstr ""
+
+#: objects/ui_MainWindow.h:892
+msgid "F12"
+msgstr ""
+
+#: objects/ui_MainWindow.h:893
+msgid "Show Edges"
+msgstr ""
+
+#: objects/ui_MainWindow.h:894
+msgid "Ctrl+1"
+msgstr ""
+
+#: objects/ui_MainWindow.h:895
+msgid "Show Axes"
+msgstr ""
+
+#: objects/ui_MainWindow.h:896
+msgid "Ctrl+2"
+msgstr ""
+
+#: objects/ui_MainWindow.h:897
+msgid "Show Crosshairs"
+msgstr ""
+
+#: objects/ui_MainWindow.h:898
+msgid "Ctrl+3"
+msgstr ""
+
+#: objects/ui_MainWindow.h:899
+msgid "Show Scale Markers"
+msgstr ""
+
+#: objects/ui_MainWindow.h:900
+msgid "Animate"
+msgstr ""
+
+#: objects/ui_MainWindow.h:901
+msgid "&Top"
+msgstr ""
+
+#: objects/ui_MainWindow.h:902
+msgid "Ctrl+4"
+msgstr ""
+
+#: objects/ui_MainWindow.h:903
+msgid "&Bottom"
+msgstr ""
+
+#: objects/ui_MainWindow.h:904
+msgid "Ctrl+5"
+msgstr ""
+
+#: objects/ui_MainWindow.h:905
+msgid "&Left"
+msgstr ""
+
+#: objects/ui_MainWindow.h:906
+msgid "Ctrl+6"
+msgstr ""
+
+#: objects/ui_MainWindow.h:907
+msgid "&Right"
+msgstr ""
+
+#: objects/ui_MainWindow.h:908
+msgid "Ctrl+7"
+msgstr ""
+
+#: objects/ui_MainWindow.h:909
+msgid "&Front"
+msgstr ""
+
+#: objects/ui_MainWindow.h:910
+msgid "Ctrl+8"
+msgstr ""
+
+#: objects/ui_MainWindow.h:911
+msgid "Bac&k"
+msgstr ""
+
+#: objects/ui_MainWindow.h:912
+msgid "Ctrl+9"
+msgstr ""
+
+#: objects/ui_MainWindow.h:913
+msgid "&Diagonal"
+msgstr ""
+
+#: objects/ui_MainWindow.h:914
+msgid "Ctrl+0"
+msgstr ""
+
+#: objects/ui_MainWindow.h:915
+msgid "Ce&nter"
+msgstr ""
+
+#: objects/ui_MainWindow.h:916
+msgid "&Perspective"
+msgstr ""
+
+#: objects/ui_MainWindow.h:917
+msgid "&Orthogonal"
+msgstr ""
+
+#: objects/ui_MainWindow.h:918
+msgid "H&ide console"
+msgstr ""
+
+#: objects/ui_MainWindow.h:919
+msgid "&About"
+msgstr ""
+
+#: objects/ui_MainWindow.h:920
+msgid "&Documentation"
+msgstr ""
+
+#: objects/ui_MainWindow.h:921
+msgid "Clear Recent"
+msgstr ""
+
+#: objects/ui_MainWindow.h:922
+msgid "Export as &DXF..."
+msgstr ""
+
+#: objects/ui_MainWindow.h:923
+msgid "&Close"
+msgstr ""
+
+#: objects/ui_MainWindow.h:924
+msgid "Ctrl+W"
+msgstr ""
+
+#: objects/ui_MainWindow.h:925
+msgid "&Preferences"
+msgstr ""
+
+#: objects/ui_MainWindow.h:926
+msgid "&Find..."
+msgstr ""
+
+#: objects/ui_MainWindow.h:927
+msgid "Ctrl+F"
+msgstr ""
+
+#: objects/ui_MainWindow.h:928
+msgid "Fin&d and Replace..."
+msgstr ""
+
+#: objects/ui_MainWindow.h:929
+msgid "Ctrl+Alt+F"
+msgstr ""
+
+#: objects/ui_MainWindow.h:930
+msgid "Find Ne&xt"
+msgstr ""
+
+#: objects/ui_MainWindow.h:931
+msgid "Ctrl+G"
+msgstr ""
+
+#: objects/ui_MainWindow.h:932
+msgid "Find Pre&vious"
+msgstr ""
+
+#: objects/ui_MainWindow.h:933
+msgid "Ctrl+Shift+G"
+msgstr ""
+
+#: objects/ui_MainWindow.h:934
+msgid "Use Se&lection for Find"
+msgstr ""
+
+#: objects/ui_MainWindow.h:935
+msgid "Ctrl+E"
+msgstr ""
+
+#: objects/ui_MainWindow.h:936
+msgid "&Flush Caches"
+msgstr ""
+
+#: objects/ui_MainWindow.h:937
+msgid "&OpenSCAD Homepage"
+msgstr ""
+
+#: objects/ui_MainWindow.h:938
+msgid "&Automatic Reload and Preview"
+msgstr ""
+
+#: objects/ui_MainWindow.h:939
+msgid "Export as &Image..."
+msgstr ""
+
+#: objects/ui_MainWindow.h:940
+msgid "Export as &CSG..."
+msgstr ""
+
+#: objects/ui_MainWindow.h:941
+msgid "&Library info"
+msgstr ""
+
+#: objects/ui_MainWindow.h:942
+msgid "Show &Library Folder..."
+msgstr ""
+
+#: objects/ui_MainWindow.h:943
+msgid "Reset View"
+msgstr ""
+
+#: objects/ui_MainWindow.h:944
+msgid "&Font List"
+msgstr ""
+
+#: objects/ui_MainWindow.h:945
+msgid "Export as S&VG..."
+msgstr ""
+
+#: objects/ui_MainWindow.h:946
+msgid "Export as &AMF..."
+msgstr ""
+
+#: objects/ui_MainWindow.h:947
+msgid "Zoom In"
+msgstr ""
+
+#: objects/ui_MainWindow.h:948
+msgid "Ctrl+]"
+msgstr ""
+
+#: objects/ui_MainWindow.h:949
+msgid "Zoom Out"
+msgstr ""
+
+#: objects/ui_MainWindow.h:950
+msgid "Ctrl+["
+msgstr ""
+
+#: objects/ui_MainWindow.h:951
+msgid "View All"
+msgstr ""
+
+#: objects/ui_MainWindow.h:952
+msgid "Conv&ert Tabs to Spaces"
+msgstr ""
+
+#: objects/ui_MainWindow.h:953
+msgid "Hide toolbars"
+msgstr ""
+
+#: objects/ui_MainWindow.h:954
+msgid "U&nindent"
+msgstr ""
+
+#: objects/ui_MainWindow.h:955
+msgid "Ctrl+Shift+I"
+msgstr ""
+
+#: objects/ui_MainWindow.h:956
+msgid "&Cheat Sheet"
+msgstr ""
+
+#: objects/ui_MainWindow.h:957
+msgid "Message"
+msgstr ""
+
+#: objects/ui_MainWindow.h:960
+msgid "Time:"
+msgstr ""
+
+#: objects/ui_MainWindow.h:961
+msgid "FPS:"
+msgstr ""
+
+#: objects/ui_MainWindow.h:962
+msgid "Steps:"
+msgstr ""
+
+#: objects/ui_MainWindow.h:963
+msgid "Dump Pictures"
+msgstr ""
+
+#: objects/ui_MainWindow.h:964
+msgid "&File"
+msgstr ""
+
+#: objects/ui_MainWindow.h:965
+msgid "Recen&t Files"
+msgstr ""
+
+#: objects/ui_MainWindow.h:966
+msgid "&Examples"
+msgstr ""
+
+#: objects/ui_MainWindow.h:967
+msgid "E&xport"
+msgstr ""
+
+#: objects/ui_MainWindow.h:968
+msgid "&Edit"
+msgstr ""
+
+#: objects/ui_MainWindow.h:969
+msgid "&Design"
+msgstr ""
+
+#: objects/ui_MainWindow.h:970
+msgid "&View"
+msgstr ""
+
+#: objects/ui_MainWindow.h:971
+msgid "&Help"
+msgstr ""
+
+#: objects/ui_MainWindow.h:974
+msgid "Find"
+msgstr ""
+
+#: objects/ui_MainWindow.h:975 objects/ui_MainWindow.h:982
+msgid "Replace"
+msgstr ""
+
+#: objects/ui_MainWindow.h:977
+msgid "Search string"
+msgstr ""
+
+#: objects/ui_MainWindow.h:978
+msgid "<"
+msgstr ""
+
+#: objects/ui_MainWindow.h:979
+msgid ">"
+msgstr ""
+
+#: objects/ui_MainWindow.h:980
+msgid "Done"
+msgstr ""
+
+#: objects/ui_MainWindow.h:981
+msgid "Replacement string"
+msgstr ""
+
+#: objects/ui_MainWindow.h:983
msgid "All"
msgstr ""
@@ -675,250 +707,416 @@ msgstr ""
msgid "Show this message again"
msgstr ""
-#: objects/ui_Preferences.h:609
+#: objects/ui_OpenCSGWarningDialog.h:94
+msgid "Close"
+msgstr ""
+
+#: objects/ui_Preferences.h:1061
+msgid "Preferences"
+msgstr ""
+
+#: objects/ui_Preferences.h:1062
msgid "3D View"
msgstr ""
-#: objects/ui_Preferences.h:610 src/UIUtils.cc:85
+#: objects/ui_Preferences.h:1063 src/UIUtils.cc:86
msgid "Advanced"
msgstr ""
-#: objects/ui_Preferences.h:611 src/mainwin.cc:2315
+#: objects/ui_Preferences.h:1064 src/mainwin.cc:2418
msgid "Editor"
msgstr ""
-#: objects/ui_Preferences.h:612
+#: objects/ui_Preferences.h:1065
msgid "Update"
msgstr ""
-#: objects/ui_Preferences.h:613 objects/ui_Preferences.h:633
+#: objects/ui_Preferences.h:1066 objects/ui_Preferences.h:1147
msgid "Features"
msgstr ""
-#: objects/ui_Preferences.h:615
+#: objects/ui_Preferences.h:1068
msgid "Enable/Disable experimental features"
msgstr ""
-#: objects/ui_Preferences.h:617
+#: objects/ui_Preferences.h:1070
msgid "Color scheme:"
msgstr ""
-#: objects/ui_Preferences.h:618
+#: objects/ui_Preferences.h:1071
+msgid "Show Warnings and Errors in 3D View"
+msgstr ""
+
+#: objects/ui_Preferences.h:1072
msgid "Editor Type"
msgstr ""
-#: objects/ui_Preferences.h:621
+#: objects/ui_Preferences.h:1075
msgid "Simple Editor"
msgstr ""
-#: objects/ui_Preferences.h:622
+#: objects/ui_Preferences.h:1076
msgid "QScintilla Editor"
msgstr ""
-#: objects/ui_Preferences.h:624
+#: objects/ui_Preferences.h:1078
msgid "(requires restart)"
msgstr ""
-#: objects/ui_Preferences.h:625
+#: objects/ui_Preferences.h:1079
msgid "Font"
msgstr ""
-#: objects/ui_Preferences.h:626
+#: objects/ui_Preferences.h:1080
msgid "Color syntax highlighting"
msgstr ""
-#: objects/ui_Preferences.h:627
-msgid "Use Ctrl/Cmd-Mouse-wheel to zoom text"
+#: objects/ui_Preferences.h:1081
+msgid "Ctrl/Cmd-Mouse-wheel zooms text"
msgstr ""
-#: objects/ui_Preferences.h:629
+#: objects/ui_Preferences.h:1082
+msgid "Indentation"
+msgstr ""
+
+#: objects/ui_Preferences.h:1083
+msgid "Auto Indent"
+msgstr ""
+
+#: objects/ui_Preferences.h:1084
+msgid "Indent using"
+msgstr ""
+
+#: objects/ui_Preferences.h:1087 src/settings.cc:135
+msgid "Spaces"
+msgstr ""
+
+#: objects/ui_Preferences.h:1088 src/settings.cc:135
+msgid "Tabs"
+msgstr ""
+
+#: objects/ui_Preferences.h:1090
+msgid "Indentation width"
+msgstr ""
+
+#: objects/ui_Preferences.h:1091
+msgid "Tab width"
+msgstr ""
+
+#: objects/ui_Preferences.h:1092
+msgid "Tab key function"
+msgstr ""
+
+#: objects/ui_Preferences.h:1095 objects/ui_Preferences.h:1125
+#: src/settings.cc:136
+msgid "Indent"
+msgstr ""
+
+#: objects/ui_Preferences.h:1096 src/settings.cc:136
+msgid "Insert Tab"
+msgstr ""
+
+#: objects/ui_Preferences.h:1098
+msgid "Show whitespace"
+msgstr ""
+
+#: objects/ui_Preferences.h:1101 src/settings.cc:132
+msgid "Never"
+msgstr ""
+
+#: objects/ui_Preferences.h:1102 src/settings.cc:132
+msgid "Always"
+msgstr ""
+
+#: objects/ui_Preferences.h:1103
+msgid "Only after indentation"
+msgstr ""
+
+#: objects/ui_Preferences.h:1105
+msgid "Size"
+msgstr ""
+
+#: objects/ui_Preferences.h:1106
+msgid "Display"
+msgstr ""
+
+#: objects/ui_Preferences.h:1107
+msgid "Enable brace matching"
+msgstr ""
+
+#: objects/ui_Preferences.h:1108
+msgid "Highlight current line"
+msgstr ""
+
+#: objects/ui_Preferences.h:1109 objects/ui_Preferences.h:1142
+msgid "Line wrap"
+msgstr ""
+
+#: objects/ui_Preferences.h:1112 objects/ui_Preferences.h:1129
+#: objects/ui_Preferences.h:1137 src/settings.cc:127 src/settings.cc:130
+#: src/settings.cc:131
+msgid "None"
+msgstr ""
+
+#: objects/ui_Preferences.h:1113 src/settings.cc:127
+msgid "Wrap at character boundaries"
+msgstr ""
+
+#: objects/ui_Preferences.h:1114 src/settings.cc:127
+msgid "Wrap at word boundaries"
+msgstr ""
+
+#: objects/ui_Preferences.h:1116
+msgid "Line wrap indentation"
+msgstr ""
+
+#: objects/ui_Preferences.h:1117
+msgid "Line wrap visualization"
+msgstr ""
+
+#: objects/ui_Preferences.h:1118
+msgid "Style"
+msgstr ""
+
+#: objects/ui_Preferences.h:1121 src/settings.cc:128
+msgid "Fixed"
+msgstr ""
+
+#: objects/ui_Preferences.h:1122 src/settings.cc:128
+msgid "Same"
+msgstr ""
+
+#: objects/ui_Preferences.h:1123 src/settings.cc:128
+msgid "Indented"
+msgstr ""
+
+#: objects/ui_Preferences.h:1126
+msgid "Start"
+msgstr ""
+
+#: objects/ui_Preferences.h:1130 objects/ui_Preferences.h:1138
+#: src/settings.cc:130 src/settings.cc:131
+msgid "Text"
+msgstr ""
+
+#: objects/ui_Preferences.h:1131 objects/ui_Preferences.h:1139
+#: src/settings.cc:130 src/settings.cc:131
+msgid "Border"
+msgstr ""
+
+#: objects/ui_Preferences.h:1132 objects/ui_Preferences.h:1140
+#: src/settings.cc:130 src/settings.cc:131
+msgid "Margin"
+msgstr ""
+
+#: objects/ui_Preferences.h:1134
+msgid "End"
+msgstr ""
+
+#: objects/ui_Preferences.h:1143
msgid "Automatically check for updates"
msgstr ""
-#: objects/ui_Preferences.h:630
+#: objects/ui_Preferences.h:1144
msgid "Include development snapshots"
msgstr ""
-#: objects/ui_Preferences.h:631
+#: objects/ui_Preferences.h:1145
msgid "Check Now"
msgstr ""
-#: objects/ui_Preferences.h:632
+#: objects/ui_Preferences.h:1146
msgid "Last checked: "
msgstr ""
-#: objects/ui_Preferences.h:634
+#: objects/ui_Preferences.h:1148
msgid "OpenCSG"
msgstr ""
-#: objects/ui_Preferences.h:635
+#: objects/ui_Preferences.h:1149
msgid "Show capability warning"
msgstr ""
-#: objects/ui_Preferences.h:636
+#: objects/ui_Preferences.h:1150
msgid "Enable for OpenGL 1.x"
msgstr ""
-#: objects/ui_Preferences.h:637
+#: objects/ui_Preferences.h:1151
msgid "Turn off rendering at "
msgstr ""
-#: objects/ui_Preferences.h:638
+#: objects/ui_Preferences.h:1152
msgid "elements"
msgstr ""
-#: objects/ui_Preferences.h:639
+#: objects/ui_Preferences.h:1153
msgid "Force Goldfeather"
msgstr ""
-#: objects/ui_Preferences.h:640
+#: objects/ui_Preferences.h:1154
msgid "CGAL Cache size"
msgstr ""
-#: objects/ui_Preferences.h:641 objects/ui_Preferences.h:643
+#: objects/ui_Preferences.h:1155 objects/ui_Preferences.h:1157
msgid "bytes"
msgstr ""
-#: objects/ui_Preferences.h:642
+#: objects/ui_Preferences.h:1156
msgid "PolySet Cache size"
msgstr ""
-#: objects/ui_Preferences.h:644
+#: objects/ui_Preferences.h:1158
msgid "Allow to open multiple documents"
msgstr ""
-#: objects/ui_Preferences.h:645
+#: objects/ui_Preferences.h:1159
msgid "Enable docking of Editor and Console in different places"
msgstr ""
-#: objects/ui_Preferences.h:646
+#: objects/ui_Preferences.h:1160
msgid "Enable undocking of Editor and Console to separate windows"
msgstr ""
-#: objects/ui_Preferences.h:647
+#: objects/ui_Preferences.h:1161
msgid "Show Welcome Screen"
msgstr ""
-#: objects/ui_Preferences.h:648
+#: objects/ui_Preferences.h:1162
msgid "Enable user interface localization (requires restart of OpenSCAD)"
msgstr ""
-#: objects/ui_Preferences.h:649
-msgid "toolBar"
-msgstr ""
-
#: objects/ui_ProgressWidget.h:72
-msgid "Form"
-msgstr ""
-
-#: objects/ui_ProgressWidget.h:73
msgid "%v / %m"
msgstr ""
-#: src/mainwin.cc:768 src/mainwin.cc:1300
+#: src/Camera.cc:126
+#, c-format
+msgid ""
+"Viewport: translate = [ %.2f %.2f %.2f ], rotate = [ %.2f %.2f %.2f ], "
+"distance = %.2f"
+msgstr ""
+
+#: src/mainwin.cc:778 src/mainwin.cc:1354
msgid "Untitled.scad"
msgstr ""
-#: src/mainwin.cc:1299
+#: src/mainwin.cc:971
+msgid "Compile error."
+msgstr ""
+
+#: src/mainwin.cc:974
+msgid "Error while compiling '%1'."
+msgstr ""
+
+#: src/mainwin.cc:978
+msgid "Compilation generated %1 warning."
+msgid_plural "Compilation generated %1 warnings."
+msgstr[0] ""
+msgstr[1] ""
+
+#: src/mainwin.cc:988
+msgid " For details see console window."
+msgstr ""
+
+#: src/mainwin.cc:1353
msgid "Save File"
msgstr ""
-#: src/mainwin.cc:1301
+#: src/mainwin.cc:1355
msgid "OpenSCAD Designs (*.scad)"
msgstr ""
-#: src/mainwin.cc:1311
+#: src/mainwin.cc:1365
msgid ""
"%1 already exists.\n"
"Do you want to replace it?"
msgstr ""
-#: src/mainwin.cc:1630
+#: src/mainwin.cc:1684
msgid "Application"
msgstr ""
-#: src/mainwin.cc:1631
+#: src/mainwin.cc:1685
msgid ""
"The document has been modified.\n"
"Do you really want to reload the file?"
msgstr ""
-#: src/mainwin.cc:1942 src/mainwin.cc:1999
+#: src/mainwin.cc:2038 src/mainwin.cc:2094
msgid "Export %1 File"
msgstr ""
-#: src/mainwin.cc:1943 src/mainwin.cc:2003
+#: src/mainwin.cc:2039 src/mainwin.cc:2098
msgid "%1 Files (*%2)"
msgstr ""
-#: src/mainwin.cc:1944
+#: src/mainwin.cc:2040
msgid "Untitled"
msgstr ""
-#: src/mainwin.cc:2001
+#: src/mainwin.cc:2096
msgid "Untitled%1"
msgstr ""
-#: src/mainwin.cc:2052
+#: src/mainwin.cc:2147
msgid "Export CSG File"
msgstr ""
-#: src/mainwin.cc:2053
+#: src/mainwin.cc:2148
msgid "Untitled.csg"
msgstr ""
-#: src/mainwin.cc:2054
+#: src/mainwin.cc:2149
msgid "CSG Files (*.csg)"
msgstr ""
-#: src/mainwin.cc:2080
+#: src/mainwin.cc:2175
msgid "Export Image"
msgstr ""
-#: src/mainwin.cc:2080
+#: src/mainwin.cc:2175
msgid "PNG Files (*.png)"
msgstr ""
-#: src/mainwin.cc:2320
+#: src/mainwin.cc:2423
msgid "Console"
msgstr ""
-#: src/mainwin.cc:2447
+#: src/mainwin.cc:2560
msgid "The document has been modified."
msgstr ""
-#: src/mainwin.cc:2448
+#: src/mainwin.cc:2561
msgid "Do you want to save your changes?"
msgstr ""
-#: src/QGLView.cc:114
+#: src/openscad.cc:604
msgid ""
-"\n"
-"Using QGLWidget\n"
-"\n"
+"Fontconfig needs to update its font cache.\n"
+"This can take up to a couple of minutes."
msgstr ""
-#: src/QGLView.cc:131
+#: src/QGLView.cc:129
msgid ""
"Warning: You may experience OpenCSG rendering errors.\n"
"\n"
msgstr ""
-#: src/QGLView.cc:134
+#: src/QGLView.cc:132
msgid ""
"Warning: Missing OpenGL capabilities for OpenCSG - OpenCSG has been "
"disabled.\n"
"\n"
msgstr ""
-#: src/QGLView.cc:137
+#: src/QGLView.cc:135
msgid ""
"It is highly recommended to use OpenSCAD on a system with OpenGL 2.0 or "
"later.\n"
"Your renderer information is as follows:\n"
msgstr ""
-#: src/QGLView.cc:141
+#: src/QGLView.cc:139
#, c-format
msgid ""
"GLEW version %s\n"
@@ -926,21 +1124,18 @@ msgid ""
"OpenGL version %s\n"
msgstr ""
-#: src/QGLView.cc:171
-#, c-format
-msgid ""
-"Viewport: translate = [ %.2f %.2f %.2f ], rotate = [ %.2f %.2f %.2f ], "
-"distance = %.2f"
+#: src/settings.cc:132
+msgid "After indentation"
msgstr ""
-#: src/UIUtils.cc:85
+#: src/UIUtils.cc:86
msgid "Basics"
msgstr ""
-#: src/UIUtils.cc:85
+#: src/UIUtils.cc:86
msgid "Shapes"
msgstr ""
-#: src/UIUtils.cc:85
+#: src/UIUtils.cc:86
msgid "Extrusion"
msgstr ""
diff --git a/locale/ru.po b/locale/ru.po
index 8fc11980..8e6f6e0e 100644
--- a/locale/ru.po
+++ b/locale/ru.po
@@ -7,9 +7,9 @@ msgid ""
msgstr ""
"Project-Id-Version: OpenSCAD 2014.01.05\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2014-12-22 23:28+0100\n"
+"POT-Creation-Date: 2015-02-01 18:03+0100\n"
"PO-Revision-Date: 2013-02-24 17:50+0100\n"
-"Last-Translator: \n"
+"Last-Translator: \n"
"Language-Team: Russian\n"
"Language: ru\n"
"MIME-Version: 1.0\n"
@@ -18,80 +18,11 @@ msgstr ""
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
-#: objects/ui_AboutDialog.h:51 src/AboutDialog.h:15
+#: objects/ui_AboutDialog.h:103 src/AboutDialog.h:13
msgid "About OpenSCAD"
msgstr "О программе OpenSCAD"
-#: objects/ui_FontListDialog.h:102
-#, fuzzy
-msgid "OpenSCAD Font List"
-msgstr "Шрифт"
-
-#: objects/ui_FontListDialog.h:103 objects/ui_LibraryInfoDialog.h:77
-msgid "&OK"
-msgstr ""
-
-#: objects/ui_FontListDialog.h:104
-msgid "Copy to Clipboard"
-msgstr ""
-
-#: objects/ui_FontListDialog.h:105
-msgid "Filter:"
-msgstr ""
-
-#: objects/ui_FontListDialog.h:106
-msgid ""
-"This list shows the fonts currently registered with "
-"OpenSCAD.
Example:
text(t = "
-""OpenSCAD", font = "DejaVu Sans");
text(t = "OpenSCAD", font = "
-""Liberation Sans:style=Italic");
"
-msgstr ""
-
-#: objects/ui_launchingscreen.h:276
-#, fuzzy
-msgid "Welcome to OpenSCAD"
-msgstr "О программе OpenSCAD"
-
-#: objects/ui_launchingscreen.h:277
-#, fuzzy
-msgid "New"
-msgstr "&Создать"
-
-#: objects/ui_launchingscreen.h:278
-#, fuzzy
-msgid "Open"
-msgstr "&Открыть..."
-
-#: objects/ui_launchingscreen.h:279
-#, fuzzy
-msgid "Help"
-msgstr "&Справка"
-
-#: objects/ui_launchingscreen.h:280
-#, fuzzy
-msgid "Recents"
-msgstr "Открыть файл"
-
-#: objects/ui_launchingscreen.h:281
-msgid "Open Recent"
-msgstr "Открыть недавние"
-
-#: objects/ui_launchingscreen.h:282 objects/ui_launchingscreen.h:284
-#: objects/ui_MainWindow.h:855
-msgid "Examples"
-msgstr "Примеры"
-
-#: objects/ui_launchingscreen.h:285
-#, fuzzy
-msgid "Open Example"
-msgstr "Примеры"
-
-#: objects/ui_launchingscreen.h:287
+#: objects/ui_AboutDialog.h:105 objects/ui_launchingscreen.h:305
msgid ""
"\n"
"This list shows the fonts currently registered with "
+"OpenSCAD.
Example:
text(t = "
+""OpenSCAD", font = "DejaVu Sans");
text(t = "OpenSCAD", font = "
+""Liberation Sans:style=Italic");
"
msgstr ""
+#: objects/ui_launchingscreen.h:294
+#, fuzzy
+msgid "Welcome to OpenSCAD"
+msgstr "О программе OpenSCAD"
+
+#: objects/ui_launchingscreen.h:295
+#, fuzzy
+msgid "New"
+msgstr "&Создать"
+
+#: objects/ui_launchingscreen.h:296
+#, fuzzy
+msgid "Open"
+msgstr "&Открыть..."
+
+#: objects/ui_launchingscreen.h:297
+#, fuzzy
+msgid "Help"
+msgstr "&Справка"
+
+#: objects/ui_launchingscreen.h:298
+#, fuzzy
+msgid "Recents"
+msgstr "Открыть файл"
+
+#: objects/ui_launchingscreen.h:299
+msgid "Open Recent"
+msgstr "Открыть недавние"
+
+#: objects/ui_launchingscreen.h:300 objects/ui_launchingscreen.h:302
+msgid "Examples"
+msgstr "Примеры"
+
+#: objects/ui_launchingscreen.h:303
+#, fuzzy
+msgid "Open Example"
+msgstr "Примеры"
+
+#: objects/ui_launchingscreen.h:312
+msgid "Don't show again"
+msgstr "Не показывать снова"
+
+#: objects/ui_launchingscreen.h:313
+msgid "Version"
+msgstr "Версия"
+
#: objects/ui_LibraryInfoDialog.h:75
msgid "Lib & Build Info"
-msgstr ""
+msgstr "Информация о сборке"
#: objects/ui_LibraryInfoDialog.h:76
msgid "OpenSCAD Detailed Library and Build Information"
msgstr "Подробная информация о библиотеках и сборке OpenSCAD"
-#: objects/ui_MainWindow.h:731
+#: objects/ui_MainWindow.h:837
msgid "&New"
msgstr "&Создать"
-#: objects/ui_MainWindow.h:732
+#: objects/ui_MainWindow.h:838
msgid "Ctrl+N"
-msgstr ""
+msgstr "Ctrl+N"
-#: objects/ui_MainWindow.h:733
+#: objects/ui_MainWindow.h:839
msgid "&Open..."
msgstr "&Открыть..."
-#: objects/ui_MainWindow.h:734
+#: objects/ui_MainWindow.h:840
msgid "Ctrl+O"
-msgstr ""
+msgstr "Ctrl+O"
-#: objects/ui_MainWindow.h:735
+#: objects/ui_MainWindow.h:841
msgid "&Save"
msgstr "&Сохранить"
-#: objects/ui_MainWindow.h:736
+#: objects/ui_MainWindow.h:842
msgid "Ctrl+S"
-msgstr ""
+msgstr "Ctrl+S"
-#: objects/ui_MainWindow.h:737
+#: objects/ui_MainWindow.h:843
msgid "Save &As..."
msgstr "Сохранить &как..."
-#: objects/ui_MainWindow.h:738
+#: objects/ui_MainWindow.h:844
msgid "Ctrl+Shift+S"
-msgstr ""
+msgstr "Ctrl+Shift+S"
-#: objects/ui_MainWindow.h:739
+#: objects/ui_MainWindow.h:845
msgid "&Reload"
msgstr "&Обновить"
-#: objects/ui_MainWindow.h:740
+#: objects/ui_MainWindow.h:846
msgid "Ctrl+R"
-msgstr ""
+msgstr "Ctrl+R"
-#: objects/ui_MainWindow.h:741
+#: objects/ui_MainWindow.h:847
msgid "&Quit"
msgstr "&Выход"
-#: objects/ui_MainWindow.h:742
+#: objects/ui_MainWindow.h:848
msgid "Ctrl+Q"
-msgstr ""
+msgstr "Ctrl+Q"
-#: objects/ui_MainWindow.h:743
+#: objects/ui_MainWindow.h:849
msgid "&Undo"
msgstr "&Отменить"
-#: objects/ui_MainWindow.h:744
+#: objects/ui_MainWindow.h:850
msgid "Ctrl+Z"
-msgstr ""
+msgstr "Ctrl+Z"
-#: objects/ui_MainWindow.h:745
+#: objects/ui_MainWindow.h:851
msgid "&Redo"
msgstr "&Повторить"
-#: objects/ui_MainWindow.h:746
+#: objects/ui_MainWindow.h:852
msgid "Ctrl+Shift+Z"
-msgstr ""
+msgstr "Ctrl+Shift+Z"
-#: objects/ui_MainWindow.h:747
+#: objects/ui_MainWindow.h:853
msgid "Cu&t"
msgstr "Вы&резать"
-#: objects/ui_MainWindow.h:748
+#: objects/ui_MainWindow.h:854
msgid "Ctrl+X"
-msgstr ""
+msgstr "Ctrl+X"
-#: objects/ui_MainWindow.h:749
+#: objects/ui_MainWindow.h:855
msgid "&Copy"
msgstr "&Копировать"
-#: objects/ui_MainWindow.h:750
+#: objects/ui_MainWindow.h:856
msgid "Ctrl+C"
-msgstr ""
+msgstr "Ctrl+C"
-#: objects/ui_MainWindow.h:751
+#: objects/ui_MainWindow.h:857
msgid "&Paste"
msgstr "&Вставить"
-#: objects/ui_MainWindow.h:752
+#: objects/ui_MainWindow.h:858
msgid "Ctrl+V"
-msgstr ""
+msgstr "Ctrl+V"
-#: objects/ui_MainWindow.h:753
+#: objects/ui_MainWindow.h:859
msgid "&Indent"
msgstr "&Добавить отступ"
-#: objects/ui_MainWindow.h:754
+#: objects/ui_MainWindow.h:860
msgid "Ctrl+I"
-msgstr ""
+msgstr "Ctrl+I"
-#: objects/ui_MainWindow.h:755
-msgid "U&nindent"
-msgstr "У&брать отступ"
-
-#: objects/ui_MainWindow.h:756
-msgid "Ctrl+Shift+I"
-msgstr ""
-
-#: objects/ui_MainWindow.h:757
+#: objects/ui_MainWindow.h:861
msgid "C&omment"
msgstr "Зако&мментировать"
-#: objects/ui_MainWindow.h:758
+#: objects/ui_MainWindow.h:862
msgid "Ctrl+D"
-msgstr ""
+msgstr "Ctrl+D"
-#: objects/ui_MainWindow.h:759
+#: objects/ui_MainWindow.h:863
msgid "Unco&mment"
msgstr "Р&аскомментировать"
-#: objects/ui_MainWindow.h:760
+#: objects/ui_MainWindow.h:864
msgid "Ctrl+Shift+D"
-msgstr ""
+msgstr "Ctrl+Shift+D"
-#: objects/ui_MainWindow.h:761
-msgid "Paste viewport translation"
+#: objects/ui_MainWindow.h:865
+#, fuzzy
+msgid "P&aste viewport translation"
msgstr "Вставить смещение точки обзора"
-#: objects/ui_MainWindow.h:762
+#: objects/ui_MainWindow.h:866
msgid "Ctrl+T"
-msgstr ""
+msgstr "Ctrl+T"
-#: objects/ui_MainWindow.h:763
-msgid "Paste viewport rotation"
+#: objects/ui_MainWindow.h:867
+#, fuzzy
+msgid "Past&e viewport rotation"
msgstr "Вставить поворот точки обзора"
-#: objects/ui_MainWindow.h:764 objects/ui_MainWindow.h:842
-msgid "Zoom In"
-msgstr "Увеличить масштаб"
+#: objects/ui_MainWindow.h:868
+#, fuzzy
+msgid "Increase Font &Size"
+msgstr "Увеличить размер шрифта"
-#: objects/ui_MainWindow.h:765
+#: objects/ui_MainWindow.h:869
msgid "Ctrl++"
-msgstr ""
+msgstr "Ctrl++"
-#: objects/ui_MainWindow.h:766 objects/ui_MainWindow.h:844
-msgid "Zoom Out"
-msgstr "Уменьшить масштаб"
+#: objects/ui_MainWindow.h:870
+#, fuzzy
+msgid "Decrease Font Si&ze"
+msgstr "Уменьшить размер шрифта"
-#: objects/ui_MainWindow.h:767
+#: objects/ui_MainWindow.h:871
msgid "Ctrl+-"
-msgstr ""
+msgstr "Ctrl+-"
-#: objects/ui_MainWindow.h:768
-msgid "Hide editor"
+#: objects/ui_MainWindow.h:872
+#, fuzzy
+msgid "H&ide editor"
msgstr "Скрыть редактор"
-#: objects/ui_MainWindow.h:769
+#: objects/ui_MainWindow.h:873
#, fuzzy
msgid "&Reload and Preview"
msgstr "&Обновить и компилировать"
-#: objects/ui_MainWindow.h:770
+#: objects/ui_MainWindow.h:874
msgid "F4"
-msgstr ""
+msgstr "F4"
-#: objects/ui_MainWindow.h:771
+#: objects/ui_MainWindow.h:875
+#, fuzzy
msgid "&Preview"
-msgstr ""
+msgstr "&Превью"
-#: objects/ui_MainWindow.h:772
+#: objects/ui_MainWindow.h:876
msgid "F5"
-msgstr ""
+msgstr "F5"
-#: objects/ui_MainWindow.h:773
-msgid "&Render"
-msgstr ""
+#: objects/ui_MainWindow.h:877
+#, fuzzy
+msgid "R&ender"
+msgstr "&Рендер"
-#: objects/ui_MainWindow.h:774
+#: objects/ui_MainWindow.h:878
msgid "F6"
-msgstr ""
+msgstr "F6"
-#: objects/ui_MainWindow.h:775
-msgid "Check Validity"
-msgstr ""
+#: objects/ui_MainWindow.h:879
+#, fuzzy
+msgid "&Check Validity"
+msgstr "Проверить"
-#: objects/ui_MainWindow.h:776
-msgid "Display &AST..."
+#: objects/ui_MainWindow.h:880
+#, fuzzy
+msgid "Display A&ST..."
msgstr "Показать &AST..."
-#: objects/ui_MainWindow.h:777
+#: objects/ui_MainWindow.h:881
msgid "Display CSG &Tree..."
msgstr "Показать &дерево CSG..."
-#: objects/ui_MainWindow.h:778
-msgid "Display CSG &Products..."
+#: objects/ui_MainWindow.h:882
+#, fuzzy
+msgid "Display CSG Pr&oducts..."
msgstr "Показать &результаты CSG..."
-#: objects/ui_MainWindow.h:779
+#: objects/ui_MainWindow.h:883
msgid "Export as &STL..."
msgstr "Экспортировать в &STL..."
-#: objects/ui_MainWindow.h:780
+#: objects/ui_MainWindow.h:884
msgid "Export as &OFF..."
msgstr "Экспортировать в &OFF..."
-#: objects/ui_MainWindow.h:781
+#: objects/ui_MainWindow.h:885
msgid "Preview"
-msgstr ""
+msgstr "Превью"
-#: objects/ui_MainWindow.h:782
+#: objects/ui_MainWindow.h:886
msgid "F9"
-msgstr ""
+msgstr "F9"
-#: objects/ui_MainWindow.h:783
+#: objects/ui_MainWindow.h:887
#, fuzzy
msgid "Surfaces"
msgstr "Поверхности CGAL"
-#: objects/ui_MainWindow.h:784
+#: objects/ui_MainWindow.h:888
msgid "F10"
-msgstr ""
+msgstr "F10"
-#: objects/ui_MainWindow.h:785
+#: objects/ui_MainWindow.h:889
msgid "Wireframe"
msgstr ""
-#: objects/ui_MainWindow.h:786
+#: objects/ui_MainWindow.h:890
msgid "F11"
-msgstr ""
+msgstr "F11"
-#: objects/ui_MainWindow.h:787
+#: objects/ui_MainWindow.h:891
msgid "Thrown Together"
msgstr "Всё вместе"
-#: objects/ui_MainWindow.h:788
+#: objects/ui_MainWindow.h:892
msgid "F12"
-msgstr ""
+msgstr "F12"
-#: objects/ui_MainWindow.h:789
+#: objects/ui_MainWindow.h:893
msgid "Show Edges"
msgstr "Показывать рёбра"
-#: objects/ui_MainWindow.h:790
+#: objects/ui_MainWindow.h:894
msgid "Ctrl+1"
-msgstr ""
+msgstr "Ctrl+1"
-#: objects/ui_MainWindow.h:791
+#: objects/ui_MainWindow.h:895
msgid "Show Axes"
msgstr "Показывать оси"
-#: objects/ui_MainWindow.h:792
+#: objects/ui_MainWindow.h:896
msgid "Ctrl+2"
-msgstr ""
+msgstr "Ctrl+2"
-#: objects/ui_MainWindow.h:793
+#: objects/ui_MainWindow.h:897
msgid "Show Crosshairs"
msgstr "Показывать перекрестия"
-#: objects/ui_MainWindow.h:794
+#: objects/ui_MainWindow.h:898
msgid "Ctrl+3"
-msgstr ""
+msgstr "Ctrl+3"
-#: objects/ui_MainWindow.h:795
+#: objects/ui_MainWindow.h:899
+#, fuzzy
+msgid "Show Scale Markers"
+msgstr "Показать метки масштаба"
+
+#: objects/ui_MainWindow.h:900
msgid "Animate"
msgstr "Анимация"
-#: objects/ui_MainWindow.h:796
-msgid "Top"
-msgstr "Сверху"
-
-#: objects/ui_MainWindow.h:797
-msgid "Ctrl+4"
+#: objects/ui_MainWindow.h:901
+msgid "&Top"
msgstr ""
-#: objects/ui_MainWindow.h:798
-msgid "Bottom"
+#: objects/ui_MainWindow.h:902
+msgid "Ctrl+4"
+msgstr "Ctrl+4"
+
+#: objects/ui_MainWindow.h:903
+#, fuzzy
+msgid "&Bottom"
msgstr "Снизу"
-#: objects/ui_MainWindow.h:799
+#: objects/ui_MainWindow.h:904
msgid "Ctrl+5"
-msgstr ""
+msgstr "Ctrl+5"
-#: objects/ui_MainWindow.h:800
-msgid "Left"
+#: objects/ui_MainWindow.h:905
+#, fuzzy
+msgid "&Left"
msgstr "Слева"
-#: objects/ui_MainWindow.h:801
+#: objects/ui_MainWindow.h:906
msgid "Ctrl+6"
-msgstr ""
+msgstr "Ctrl+6"
-#: objects/ui_MainWindow.h:802
-msgid "Right"
+#: objects/ui_MainWindow.h:907
+#, fuzzy
+msgid "&Right"
msgstr "Справа"
-#: objects/ui_MainWindow.h:803
+#: objects/ui_MainWindow.h:908
msgid "Ctrl+7"
-msgstr ""
+msgstr "Ctrl+7"
-#: objects/ui_MainWindow.h:804
-msgid "Front"
+#: objects/ui_MainWindow.h:909
+#, fuzzy
+msgid "&Front"
msgstr "Спереди"
-#: objects/ui_MainWindow.h:805
+#: objects/ui_MainWindow.h:910
msgid "Ctrl+8"
+msgstr "Ctrl+8"
+
+#: objects/ui_MainWindow.h:911
+msgid "Bac&k"
msgstr ""
-#: objects/ui_MainWindow.h:806
-msgid "Back"
-msgstr "Сзади"
-
-#: objects/ui_MainWindow.h:807
+#: objects/ui_MainWindow.h:912
msgid "Ctrl+9"
-msgstr ""
+msgstr "Ctrl+9"
-#: objects/ui_MainWindow.h:808
-msgid "Diagonal"
+#: objects/ui_MainWindow.h:913
+#, fuzzy
+msgid "&Diagonal"
msgstr "Аксонометрический"
-#: objects/ui_MainWindow.h:809
+#: objects/ui_MainWindow.h:914
msgid "Ctrl+0"
-msgstr ""
+msgstr "Ctrl+0"
-#: objects/ui_MainWindow.h:810
-msgid "Center"
+#: objects/ui_MainWindow.h:915
+#, fuzzy
+msgid "Ce&nter"
msgstr "По центру"
-#: objects/ui_MainWindow.h:811
-msgid "Perspective"
+#: objects/ui_MainWindow.h:916
+#, fuzzy
+msgid "&Perspective"
msgstr "Перспектива"
-#: objects/ui_MainWindow.h:812
-msgid "Orthogonal"
+#: objects/ui_MainWindow.h:917
+#, fuzzy
+msgid "&Orthogonal"
msgstr "Прямоугольная проекция"
-#: objects/ui_MainWindow.h:813
-msgid "Hide console"
+#: objects/ui_MainWindow.h:918
+#, fuzzy
+msgid "H&ide console"
msgstr "Скрыть консоль"
-#: objects/ui_MainWindow.h:814
-msgid "About"
+#: objects/ui_MainWindow.h:919
+#, fuzzy
+msgid "&About"
msgstr "О программе"
-#: objects/ui_MainWindow.h:815
-msgid "Documentation"
+#: objects/ui_MainWindow.h:920
+#, fuzzy
+msgid "&Documentation"
msgstr "Документация"
-#: objects/ui_MainWindow.h:816
+#: objects/ui_MainWindow.h:921
msgid "Clear Recent"
msgstr "Очистить список"
-#: objects/ui_MainWindow.h:817
-msgid "Export as DXF..."
+#: objects/ui_MainWindow.h:922
+#, fuzzy
+msgid "Export as &DXF..."
msgstr "Экспортировать в DXF..."
-#: objects/ui_MainWindow.h:818 objects/ui_OpenCSGWarningDialog.h:94
-msgid "Close"
+#: objects/ui_MainWindow.h:923
+#, fuzzy
+msgid "&Close"
msgstr "Закрыть"
-#: objects/ui_MainWindow.h:819
+#: objects/ui_MainWindow.h:924
msgid "Ctrl+W"
-msgstr ""
+msgstr "Ctrl+W"
-#: objects/ui_MainWindow.h:820 objects/ui_Preferences.h:608
-msgid "Preferences"
+#: objects/ui_MainWindow.h:925
+#, fuzzy
+msgid "&Preferences"
msgstr "Настройки"
-#: objects/ui_MainWindow.h:821
-msgid "Find..."
-msgstr ""
+#: objects/ui_MainWindow.h:926
+#, fuzzy
+msgid "&Find..."
+msgstr "Найти..."
-#: objects/ui_MainWindow.h:822
+#: objects/ui_MainWindow.h:927
msgid "Ctrl+F"
-msgstr ""
+msgstr "Ctrl+F"
-#: objects/ui_MainWindow.h:823
-msgid "Find and Replace..."
-msgstr ""
+#: objects/ui_MainWindow.h:928
+#, fuzzy
+msgid "Fin&d and Replace..."
+msgstr "Найти и замена..."
-#: objects/ui_MainWindow.h:824
+#: objects/ui_MainWindow.h:929
msgid "Ctrl+Alt+F"
-msgstr ""
+msgstr "Ctrl+Alt+F"
-#: objects/ui_MainWindow.h:825
-msgid "Find Next"
-msgstr ""
+#: objects/ui_MainWindow.h:930
+#, fuzzy
+msgid "Find Ne&xt"
+msgstr "Искать дальше"
-#: objects/ui_MainWindow.h:826
+#: objects/ui_MainWindow.h:931
msgid "Ctrl+G"
-msgstr ""
+msgstr "Ctrl+G"
-#: objects/ui_MainWindow.h:827
-msgid "Find Previous"
-msgstr ""
+#: objects/ui_MainWindow.h:932
+#, fuzzy
+msgid "Find Pre&vious"
+msgstr "Искать раньше"
-#: objects/ui_MainWindow.h:828
+#: objects/ui_MainWindow.h:933
msgid "Ctrl+Shift+G"
-msgstr ""
+msgstr "Ctrl+Shift+G"
-#: objects/ui_MainWindow.h:829
-msgid "Use Selection for Find"
-msgstr ""
+#: objects/ui_MainWindow.h:934
+#, fuzzy
+msgid "Use Se&lection for Find"
+msgstr "Найти выделенный текст"
-#: objects/ui_MainWindow.h:830
+#: objects/ui_MainWindow.h:935
msgid "Ctrl+E"
-msgstr ""
+msgstr "Ctrl+E"
-#: objects/ui_MainWindow.h:831
-msgid "Flush Caches"
+#: objects/ui_MainWindow.h:936
+#, fuzzy
+msgid "&Flush Caches"
msgstr "Очистить кэш"
-#: objects/ui_MainWindow.h:832
-msgid "OpenSCAD Homepage"
+#: objects/ui_MainWindow.h:937
+#, fuzzy
+msgid "&OpenSCAD Homepage"
msgstr "Домашняя страница OpenSCAD"
-#: objects/ui_MainWindow.h:833
+#: objects/ui_MainWindow.h:938
#, fuzzy
-msgid "Automatic Reload and Preview"
+msgid "&Automatic Reload and Preview"
msgstr "Автоматически обновлять и комилировать"
-#: objects/ui_MainWindow.h:834
-msgid "Export as Image..."
+#: objects/ui_MainWindow.h:939
+#, fuzzy
+msgid "Export as &Image..."
msgstr "Экспортировать в растр..."
-#: objects/ui_MainWindow.h:835
-msgid "Export as CSG..."
+#: objects/ui_MainWindow.h:940
+#, fuzzy
+msgid "Export as &CSG..."
msgstr "Экспортировать в CSG..."
-#: objects/ui_MainWindow.h:836
-msgid "Library info"
+#: objects/ui_MainWindow.h:941
+#, fuzzy
+msgid "&Library info"
msgstr "Информация о библиотеках"
-#: objects/ui_MainWindow.h:837
-msgid "Show Library Folder..."
+#: objects/ui_MainWindow.h:942
+#, fuzzy
+msgid "Show &Library Folder..."
msgstr "Открыть каталог библиотек..."
-#: objects/ui_MainWindow.h:838
+#: objects/ui_MainWindow.h:943
msgid "Reset View"
msgstr "Сбросить настройки вида"
-#: objects/ui_MainWindow.h:839
+#: objects/ui_MainWindow.h:944
#, fuzzy
-msgid "Font List"
+msgid "&Font List"
msgstr "Шрифт"
-#: objects/ui_MainWindow.h:840
+#: objects/ui_MainWindow.h:945
#, fuzzy
-msgid "Export as SVG..."
+msgid "Export as S&VG..."
msgstr "Экспортировать в CSG..."
-#: objects/ui_MainWindow.h:841
+#: objects/ui_MainWindow.h:946
#, fuzzy
-msgid "Export as AMF..."
+msgid "Export as &AMF..."
msgstr "Экспортировать в DXF..."
-#: objects/ui_MainWindow.h:843
+#: objects/ui_MainWindow.h:947
+msgid "Zoom In"
+msgstr "Увеличить масштаб"
+
+#: objects/ui_MainWindow.h:948
msgid "Ctrl+]"
-msgstr ""
+msgstr "Ctrl+]"
-#: objects/ui_MainWindow.h:845
+#: objects/ui_MainWindow.h:949
+msgid "Zoom Out"
+msgstr "Уменьшить масштаб"
+
+#: objects/ui_MainWindow.h:950
msgid "Ctrl+["
-msgstr ""
+msgstr "Ctrl+["
-#: objects/ui_MainWindow.h:846
+#: objects/ui_MainWindow.h:951
#, fuzzy
msgid "View All"
msgstr "&Вид"
-#: objects/ui_MainWindow.h:847
-msgid "Convert Tabs to Spaces"
-msgstr ""
+#: objects/ui_MainWindow.h:952
+#, fuzzy
+msgid "Conv&ert Tabs to Spaces"
+msgstr "Преобразовать табуляции в пробелы"
-#: objects/ui_MainWindow.h:848
+#: objects/ui_MainWindow.h:953
#, fuzzy
msgid "Hide toolbars"
-msgstr "Скрыть редактор"
+msgstr "Скрыть панель"
-#: objects/ui_MainWindow.h:849
+#: objects/ui_MainWindow.h:954
+msgid "U&nindent"
+msgstr "У&брать отступ"
+
+#: objects/ui_MainWindow.h:955
+msgid "Ctrl+Shift+I"
+msgstr "Ctrl+Shift+I"
+
+#: objects/ui_MainWindow.h:956
+#, fuzzy
+msgid "&Cheat Sheet"
+msgstr "Указатель"
+
+#: objects/ui_MainWindow.h:957
+msgid "Message"
+msgstr "Сообщение"
+
+#: objects/ui_MainWindow.h:960
msgid "Time:"
msgstr "Время:"
-#: objects/ui_MainWindow.h:850
+#: objects/ui_MainWindow.h:961
msgid "FPS:"
msgstr "Кадров в секунду:"
-#: objects/ui_MainWindow.h:851
+#: objects/ui_MainWindow.h:962
msgid "Steps:"
msgstr "Шагов:"
-#: objects/ui_MainWindow.h:852
+#: objects/ui_MainWindow.h:963
msgid "Dump Pictures"
msgstr "Сохранять кадры"
-#: objects/ui_MainWindow.h:853
+#: objects/ui_MainWindow.h:964
msgid "&File"
msgstr "&Файл"
-#: objects/ui_MainWindow.h:854
+#: objects/ui_MainWindow.h:965
#, fuzzy
-msgid "Recent Files"
+msgid "Recen&t Files"
msgstr "Открыть файл"
-#: objects/ui_MainWindow.h:856
-msgid "Export"
-msgstr ""
+#: objects/ui_MainWindow.h:966
+#, fuzzy
+msgid "&Examples"
+msgstr "Примеры"
-#: objects/ui_MainWindow.h:857
+#: objects/ui_MainWindow.h:967
+#, fuzzy
+msgid "E&xport"
+msgstr "Экспорт"
+
+#: objects/ui_MainWindow.h:968
msgid "&Edit"
msgstr "&Правка"
-#: objects/ui_MainWindow.h:858
+#: objects/ui_MainWindow.h:969
msgid "&Design"
msgstr "&Модель"
-#: objects/ui_MainWindow.h:859
+#: objects/ui_MainWindow.h:970
msgid "&View"
msgstr "&Вид"
-#: objects/ui_MainWindow.h:860
+#: objects/ui_MainWindow.h:971
msgid "&Help"
msgstr "&Справка"
-#: objects/ui_MainWindow.h:863
+#: objects/ui_MainWindow.h:974
msgid "Find"
-msgstr ""
+msgstr "Найти"
-#: objects/ui_MainWindow.h:864 objects/ui_MainWindow.h:871
+#: objects/ui_MainWindow.h:975 objects/ui_MainWindow.h:982
msgid "Replace"
-msgstr ""
+msgstr "Заменить"
-#: objects/ui_MainWindow.h:866
+#: objects/ui_MainWindow.h:977
msgid "Search string"
-msgstr ""
+msgstr "Строка поиска"
-#: objects/ui_MainWindow.h:867
+#: objects/ui_MainWindow.h:978
msgid "<"
-msgstr ""
+msgstr "<"
-#: objects/ui_MainWindow.h:868
+#: objects/ui_MainWindow.h:979
msgid ">"
-msgstr ""
+msgstr ">"
-#: objects/ui_MainWindow.h:869
+#: objects/ui_MainWindow.h:980
msgid "Done"
-msgstr ""
+msgstr "Готово"
-#: objects/ui_MainWindow.h:870
+#: objects/ui_MainWindow.h:981
#, fuzzy
msgid "Replacement string"
msgstr "элементах"
-#: objects/ui_MainWindow.h:872
+#: objects/ui_MainWindow.h:983
msgid "All"
-msgstr ""
+msgstr "Все"
#: objects/ui_OpenCSGWarningDialog.h:86
msgid "OpenGL Warning"
@@ -694,261 +765,454 @@ msgstr "Включить для OpenGL 1.x"
msgid "Show this message again"
msgstr ""
-#: objects/ui_Preferences.h:609
+#: objects/ui_OpenCSGWarningDialog.h:94
+msgid "Close"
+msgstr "Закрыть"
+
+#: objects/ui_Preferences.h:1061
+msgid "Preferences"
+msgstr "Настройки"
+
+#: objects/ui_Preferences.h:1062
msgid "3D View"
msgstr "3D Вид"
-#: objects/ui_Preferences.h:610 src/UIUtils.cc:85
+#: objects/ui_Preferences.h:1063 src/UIUtils.cc:86
msgid "Advanced"
msgstr "Дополнительные"
-#: objects/ui_Preferences.h:611 src/mainwin.cc:2315
+#: objects/ui_Preferences.h:1064 src/mainwin.cc:2418
msgid "Editor"
msgstr "Редактор"
-#: objects/ui_Preferences.h:612
+#: objects/ui_Preferences.h:1065
msgid "Update"
msgstr "Обновления"
-#: objects/ui_Preferences.h:613 objects/ui_Preferences.h:633
+#: objects/ui_Preferences.h:1066 objects/ui_Preferences.h:1147
msgid "Features"
msgstr "Функции"
-#: objects/ui_Preferences.h:615
+#: objects/ui_Preferences.h:1068
msgid "Enable/Disable experimental features"
-msgstr ""
+msgstr "Включить/Выключить экспериментальные возможности"
-#: objects/ui_Preferences.h:617
+#: objects/ui_Preferences.h:1070
msgid "Color scheme:"
msgstr "Цветовая схема:"
-#: objects/ui_Preferences.h:618
+#: objects/ui_Preferences.h:1071
+msgid "Show Warnings and Errors in 3D View"
+msgstr "Показывать ошибки и предупреждения в 3D виде"
+
+#: objects/ui_Preferences.h:1072
#, fuzzy
msgid "Editor Type"
msgstr "Редактор"
-#: objects/ui_Preferences.h:621
+#: objects/ui_Preferences.h:1075
#, fuzzy
msgid "Simple Editor"
-msgstr "Скрыть редактор"
+msgstr "Простой редактор"
-#: objects/ui_Preferences.h:622
+#: objects/ui_Preferences.h:1076
msgid "QScintilla Editor"
msgstr ""
-#: objects/ui_Preferences.h:624
+#: objects/ui_Preferences.h:1078
msgid "(requires restart)"
-msgstr ""
+msgstr "(требуется перезапуск)"
-#: objects/ui_Preferences.h:625
+#: objects/ui_Preferences.h:1079
msgid "Font"
msgstr "Шрифт"
-#: objects/ui_Preferences.h:626
+#: objects/ui_Preferences.h:1080
msgid "Color syntax highlighting"
msgstr "Подсветка синтаксиса"
-#: objects/ui_Preferences.h:627
-msgid "Use Ctrl/Cmd-Mouse-wheel to zoom text"
+#: objects/ui_Preferences.h:1081
+msgid "Ctrl/Cmd-Mouse-wheel zooms text"
+msgstr "Ctrl/Cmd-Колесико-мыши увеличивает текст"
+
+#: objects/ui_Preferences.h:1082
+#, fuzzy
+msgid "Indentation"
+msgstr "Документация"
+
+#: objects/ui_Preferences.h:1083
+#, fuzzy
+msgid "Auto Indent"
+msgstr "&Добавить отступ"
+
+#: objects/ui_Preferences.h:1084
+#, fuzzy
+msgid "Indent using"
+msgstr "&Добавить отступ"
+
+#: objects/ui_Preferences.h:1087 src/settings.cc:135
+#, fuzzy
+msgid "Spaces"
+msgstr "Поверхности CGAL"
+
+#: objects/ui_Preferences.h:1088 src/settings.cc:135
+msgid "Tabs"
msgstr ""
-#: objects/ui_Preferences.h:629
+#: objects/ui_Preferences.h:1090
+msgid "Indentation width"
+msgstr "Ширина отступа"
+
+#: objects/ui_Preferences.h:1091
+msgid "Tab width"
+msgstr "Ширина табуляции"
+
+#: objects/ui_Preferences.h:1092
+msgid "Tab key function"
+msgstr "Функция клавиши Tab"
+
+#: objects/ui_Preferences.h:1095 objects/ui_Preferences.h:1125
+#: src/settings.cc:136
+#, fuzzy
+msgid "Indent"
+msgstr "&Добавить отступ"
+
+#: objects/ui_Preferences.h:1096 src/settings.cc:136
+msgid "Insert Tab"
+msgstr "Вставить Tab"
+
+#: objects/ui_Preferences.h:1098
+msgid "Show whitespace"
+msgstr "Показать пробел"
+
+#: objects/ui_Preferences.h:1101 src/settings.cc:132
+msgid "Never"
+msgstr "Никогда"
+
+#: objects/ui_Preferences.h:1102 src/settings.cc:132
+msgid "Always"
+msgstr "Всегда"
+
+#: objects/ui_Preferences.h:1103
+msgid "Only after indentation"
+msgstr "Только после отступа"
+
+#: objects/ui_Preferences.h:1105
+msgid "Size"
+msgstr "Размер"
+
+#: objects/ui_Preferences.h:1106
+#, fuzzy
+msgid "Display"
+msgstr "Показать &AST..."
+
+#: objects/ui_Preferences.h:1107
+#, fuzzy
+msgid "Enable brace matching"
+msgstr "Вклчить автозакрытие скобок"
+
+#: objects/ui_Preferences.h:1108
+msgid "Highlight current line"
+msgstr "Выделить текущую строчку"
+
+#: objects/ui_Preferences.h:1109 objects/ui_Preferences.h:1142
+msgid "Line wrap"
+msgstr ""
+
+#: objects/ui_Preferences.h:1112 objects/ui_Preferences.h:1129
+#: objects/ui_Preferences.h:1137 src/settings.cc:127 src/settings.cc:130
+#: src/settings.cc:131
+#, fuzzy
+msgid "None"
+msgstr "Нет"
+
+#: objects/ui_Preferences.h:1113 src/settings.cc:127
+msgid "Wrap at character boundaries"
+msgstr ""
+
+#: objects/ui_Preferences.h:1114 src/settings.cc:127
+msgid "Wrap at word boundaries"
+msgstr ""
+
+#: objects/ui_Preferences.h:1116
+msgid "Line wrap indentation"
+msgstr ""
+
+#: objects/ui_Preferences.h:1117
+msgid "Line wrap visualization"
+msgstr ""
+
+#: objects/ui_Preferences.h:1118
+msgid "Style"
+msgstr "Стиль"
+
+#: objects/ui_Preferences.h:1121 src/settings.cc:128
+msgid "Fixed"
+msgstr "Фиксированный"
+
+#: objects/ui_Preferences.h:1122 src/settings.cc:128
+#, fuzzy
+msgid "Same"
+msgstr "Так же"
+
+#: objects/ui_Preferences.h:1123 src/settings.cc:128
+#, fuzzy
+msgid "Indented"
+msgstr "&Добавить отступ"
+
+#: objects/ui_Preferences.h:1126
+#, fuzzy
+msgid "Start"
+msgstr "Начало"
+
+#: objects/ui_Preferences.h:1130 objects/ui_Preferences.h:1138
+#: src/settings.cc:130 src/settings.cc:131
+msgid "Text"
+msgstr "Текст"
+
+#: objects/ui_Preferences.h:1131 objects/ui_Preferences.h:1139
+#: src/settings.cc:130 src/settings.cc:131
+msgid "Border"
+msgstr "Граница"
+
+#: objects/ui_Preferences.h:1132 objects/ui_Preferences.h:1140
+#: src/settings.cc:130 src/settings.cc:131
+msgid "Margin"
+msgstr ""
+
+#: objects/ui_Preferences.h:1134
+msgid "End"
+msgstr "Конец"
+
+#: objects/ui_Preferences.h:1143
msgid "Automatically check for updates"
msgstr "Автоматически проверять обновления"
-#: objects/ui_Preferences.h:630
+#: objects/ui_Preferences.h:1144
msgid "Include development snapshots"
msgstr "Включая рабочие сборки"
-#: objects/ui_Preferences.h:631
+#: objects/ui_Preferences.h:1145
msgid "Check Now"
msgstr "Проверить сейчас"
-#: objects/ui_Preferences.h:632
+#: objects/ui_Preferences.h:1146
msgid "Last checked: "
msgstr "Последняя проверка: "
-#: objects/ui_Preferences.h:634
+#: objects/ui_Preferences.h:1148
msgid "OpenCSG"
-msgstr ""
+msgstr "OpenCSG"
-#: objects/ui_Preferences.h:635
+#: objects/ui_Preferences.h:1149
msgid "Show capability warning"
msgstr "Показывать предупреждение о возможностях"
-#: objects/ui_Preferences.h:636
+#: objects/ui_Preferences.h:1150
msgid "Enable for OpenGL 1.x"
msgstr "Включить для OpenGL 1.x"
-#: objects/ui_Preferences.h:637
+#: objects/ui_Preferences.h:1151
msgid "Turn off rendering at "
msgstr "Отключать отрисовку на "
-#: objects/ui_Preferences.h:638
+#: objects/ui_Preferences.h:1152
msgid "elements"
msgstr "элементах"
-#: objects/ui_Preferences.h:639
+#: objects/ui_Preferences.h:1153
msgid "Force Goldfeather"
msgstr "Принудительно использовать алгоритм Goldfeather («Золотое перо»)"
-#: objects/ui_Preferences.h:640
+#: objects/ui_Preferences.h:1154
msgid "CGAL Cache size"
msgstr "Размер кэша CGAL"
-#: objects/ui_Preferences.h:641 objects/ui_Preferences.h:643
+#: objects/ui_Preferences.h:1155 objects/ui_Preferences.h:1157
msgid "bytes"
msgstr "байт"
-#: objects/ui_Preferences.h:642
+#: objects/ui_Preferences.h:1156
msgid "PolySet Cache size"
msgstr "Размер кэша PolySet"
-#: objects/ui_Preferences.h:644
+#: objects/ui_Preferences.h:1158
msgid "Allow to open multiple documents"
-msgstr ""
+msgstr "Разрешить открытие нескольких документов"
-#: objects/ui_Preferences.h:645
+#: objects/ui_Preferences.h:1159
msgid "Enable docking of Editor and Console in different places"
-msgstr ""
+msgstr "Включить прилипание Редактора и Консоли в разных местах"
-#: objects/ui_Preferences.h:646
+#: objects/ui_Preferences.h:1160
msgid "Enable undocking of Editor and Console to separate windows"
-msgstr ""
+msgstr "Включить перетаскивание Редактора и Консоли в разные окна"
-#: objects/ui_Preferences.h:647
+#: objects/ui_Preferences.h:1161
msgid "Show Welcome Screen"
-msgstr ""
+msgstr "Показать экран преветствия"
-#: objects/ui_Preferences.h:648
+#: objects/ui_Preferences.h:1162
msgid "Enable user interface localization (requires restart of OpenSCAD)"
-msgstr ""
-
-#: objects/ui_Preferences.h:649
-msgid "toolBar"
-msgstr ""
+msgstr "Включить локализацию интерфейса (необходимо перезапустить OpenSCAD)"
#: objects/ui_ProgressWidget.h:72
-msgid "Form"
-msgstr ""
-
-#: objects/ui_ProgressWidget.h:73
msgid "%v / %m"
msgstr ""
-#: src/mainwin.cc:768 src/mainwin.cc:1300
+#: src/Camera.cc:126
+#, c-format
+msgid ""
+"Viewport: translate = [ %.2f %.2f %.2f ], rotate = [ %.2f %.2f %.2f ], "
+"distance = %.2f"
+msgstr ""
+
+#: src/mainwin.cc:778 src/mainwin.cc:1354
msgid "Untitled.scad"
msgstr "Безымянный.scad"
-#: src/mainwin.cc:1299
+#: src/mainwin.cc:971
+#, fuzzy
+msgid "Compile error."
+msgstr "&Компилировать"
+
+#: src/mainwin.cc:974
+msgid "Error while compiling '%1'."
+msgstr "Ошибка во время компиляции '%1'."
+
+#: src/mainwin.cc:978
+msgid "Compilation generated %1 warning."
+msgid_plural "Compilation generated %1 warnings."
+msgstr[0] ""
+msgstr[1] ""
+msgstr[2] ""
+
+#: src/mainwin.cc:988
+msgid " For details see console window."
+msgstr "Для подробностей смотреть окно консоли."
+
+#: src/mainwin.cc:1353
msgid "Save File"
msgstr "Сохранить файл"
-#: src/mainwin.cc:1301
+#: src/mainwin.cc:1355
msgid "OpenSCAD Designs (*.scad)"
msgstr "Модели OpenSCAD (*.scad)"
-#: src/mainwin.cc:1311
+#: src/mainwin.cc:1365
msgid ""
"%1 already exists.\n"
"Do you want to replace it?"
msgstr ""
+"%1 уже существует.\n"
+"Перезаписать?"
-#: src/mainwin.cc:1630
+#: src/mainwin.cc:1684
msgid "Application"
-msgstr ""
+msgstr "Приложение"
-#: src/mainwin.cc:1631
+#: src/mainwin.cc:1685
msgid ""
"The document has been modified.\n"
"Do you really want to reload the file?"
msgstr ""
+"Документ был изменен.\n"
+"Хотите перезагрузить документ?"
-#: src/mainwin.cc:1942 src/mainwin.cc:1999
+#: src/mainwin.cc:2038 src/mainwin.cc:2094
#, fuzzy
msgid "Export %1 File"
msgstr "Экспортировать в DXF..."
-#: src/mainwin.cc:1943 src/mainwin.cc:2003
+#: src/mainwin.cc:2039 src/mainwin.cc:2098
msgid "%1 Files (*%2)"
msgstr ""
-#: src/mainwin.cc:1944
+#: src/mainwin.cc:2040
#, fuzzy
msgid "Untitled"
msgstr "Безымянный.scad"
-#: src/mainwin.cc:2001
+#: src/mainwin.cc:2096
#, fuzzy
msgid "Untitled%1"
msgstr "Безымянный.scad"
-#: src/mainwin.cc:2052
+#: src/mainwin.cc:2147
msgid "Export CSG File"
-msgstr ""
+msgstr "Экспортировать файл CSG"
-#: src/mainwin.cc:2053
+#: src/mainwin.cc:2148
msgid "Untitled.csg"
-msgstr ""
+msgstr "Безимянный.csg"
-#: src/mainwin.cc:2054
+#: src/mainwin.cc:2149
msgid "CSG Files (*.csg)"
-msgstr ""
+msgstr "Файлы CSG (*.csg)"
-#: src/mainwin.cc:2080
+#: src/mainwin.cc:2175
msgid "Export Image"
-msgstr ""
+msgstr "Экспортировать изображение"
-#: src/mainwin.cc:2080
+#: src/mainwin.cc:2175
msgid "PNG Files (*.png)"
-msgstr ""
+msgstr "Файлы PNG (*.png)"
-#: src/mainwin.cc:2320
+#: src/mainwin.cc:2423
msgid "Console"
-msgstr ""
+msgstr "Консоль"
-#: src/mainwin.cc:2447
+#: src/mainwin.cc:2560
#, fuzzy
msgid "The document has been modified."
msgstr ""
"Документ был изменен.\n"
"Сохранить изменения?"
-#: src/mainwin.cc:2448
+#: src/mainwin.cc:2561
#, fuzzy
msgid "Do you want to save your changes?"
msgstr ""
"Документ был изменен.\n"
"Сохранить изменения?"
-#: src/QGLView.cc:114
+#: src/openscad.cc:604
msgid ""
-"\n"
-"Using QGLWidget\n"
-"\n"
+"Fontconfig needs to update its font cache.\n"
+"This can take up to a couple of minutes."
msgstr ""
+"Fontconfig требуется обновить кеш шрифтов.\n"
+"Это может занять пару минут."
-#: src/QGLView.cc:131
+#: src/QGLView.cc:129
msgid ""
"Warning: You may experience OpenCSG rendering errors.\n"
"\n"
msgstr ""
+"Предупреждение: Возможны ошибки рендринга OpenCSG.\n"
+"\n"
-#: src/QGLView.cc:134
+#: src/QGLView.cc:132
msgid ""
"Warning: Missing OpenGL capabilities for OpenCSG - OpenCSG has been "
"disabled.\n"
"\n"
msgstr ""
+"Предупреждение: Не найдены OpenGL расширения для OpenCSG - OpenCSG был "
+"отключен.\n"
+"\n"
-#: src/QGLView.cc:137
+#: src/QGLView.cc:135
msgid ""
"It is highly recommended to use OpenSCAD on a system with OpenGL 2.0 or "
"later.\n"
"Your renderer information is as follows:\n"
msgstr ""
+"Крайне рекомендуется использовать OpenSCAD на системе с поддержкой OpenGL "
+"2.0 или новее.\n"
+"Информация о рендере:\n"
-#: src/QGLView.cc:141
+#: src/QGLView.cc:139
#, c-format
msgid ""
"GLEW version %s\n"
@@ -956,24 +1220,30 @@ msgid ""
"OpenGL version %s\n"
msgstr ""
-#: src/QGLView.cc:171
-#, c-format
-msgid ""
-"Viewport: translate = [ %.2f %.2f %.2f ], rotate = [ %.2f %.2f %.2f ], "
-"distance = %.2f"
-msgstr ""
+#: src/settings.cc:132
+msgid "After indentation"
+msgstr "После отступа"
-#: src/UIUtils.cc:85
+#: src/UIUtils.cc:86
msgid "Basics"
-msgstr ""
+msgstr "Примитивы"
-#: src/UIUtils.cc:85
+#: src/UIUtils.cc:86
msgid "Shapes"
-msgstr ""
+msgstr "Формы"
-#: src/UIUtils.cc:85
+#: src/UIUtils.cc:86
msgid "Extrusion"
-msgstr ""
+msgstr "Выдавливание"
+
+#~ msgid "Top"
+#~ msgstr "Сверху"
+
+#~ msgid "Back"
+#~ msgstr "Сзади"
+
+#~ msgid "toolBar"
+#~ msgstr "Панель инструментов"
#~ msgid "Check for Update.."
#~ msgstr "Проверить обновления..."
@@ -990,9 +1260,6 @@ msgstr ""
#~ msgid "OpenSCAD Designs (*.scad *.csg)"
#~ msgstr "Модели OpenSCAD (*.scad *.csg)"
-#~ msgid "&Compile"
-#~ msgstr "&Компилировать"
-
#~ msgid "Compile and &Render (CGAL)"
#~ msgstr "Компилировать и &отрисовать (CGAL)"
diff --git a/mjau.gdb b/mjau.gdb
deleted file mode 100644
index 6d394114..00000000
--- a/mjau.gdb
+++ /dev/null
@@ -1,2 +0,0 @@
-set environment DYLD_LIBRARY_PATH=/Users/kintel/code/OpenSCAD/libraries/install/lib
-set environment DYLD_FRAMEWORK_PATH=/Users/kintel/code/OpenSCAD/libraries/install/lib
diff --git a/openscad.png b/openscad.png
deleted file mode 100644
index 11f807eb..00000000
Binary files a/openscad.png and /dev/null differ
diff --git a/openscad.pro b/openscad.pro
index 247632bf..26b39937 100644
--- a/openscad.pro
+++ b/openscad.pro
@@ -279,6 +279,7 @@ HEADERS += src/typedefs.h \
src/Geometry.h \
src/Polygon2d.h \
src/clipper-utils.h \
+ src/GeometryUtils.h \
src/polyset-utils.h \
src/polyset.h \
src/printutils.h \
@@ -347,6 +348,7 @@ SOURCES += src/version_check.cc \
src/Polygon2d.cc \
src/clipper-utils.cc \
src/polyset-utils.cc \
+ src/GeometryUtils.cc \
src/polyset.cc \
src/csgops.cc \
src/transform.cc \
@@ -392,6 +394,7 @@ SOURCES += src/version_check.cc \
src/QGLView.cc \
src/AutoUpdater.cc \
\
+ src/grid.cc \
src/builtin.cc \
src/calc.cc \
src/export.cc \
@@ -422,6 +425,24 @@ SOURCES += src/version_check.cc \
SOURCES += src/polyclipping/clipper.cpp
HEADERS += src/polyclipping/clipper.hpp
+# libtess2
+INCLUDEPATH += src/libtess2/Include
+SOURCES += src/libtess2/Source/bucketalloc.c \
+ src/libtess2/Source/dict.c \
+ src/libtess2/Source/geom.c \
+ src/libtess2/Source/mesh.c \
+ src/libtess2/Source/priorityq.c \
+ src/libtess2/Source/sweep.c \
+ src/libtess2/Source/tess.c
+HEADERS += src/libtess2/Include/tesselator.h \
+ src/libtess2/Source/bucketalloc.h \
+ src/libtess2/Source/dict.h \
+ src/libtess2/Source/geom.h \
+ src/libtess2/Source/mesh.h \
+ src/libtess2/Source/priorityq.h \
+ src/libtess2/Source/sweep.h \
+ src/libtess2/Source/tess.h
+
unix:!macx {
SOURCES += src/imageutils-lodepng.cc
SOURCES += src/OffscreenContextGLX.cc
@@ -449,13 +470,13 @@ HEADERS += src/cgal.h \
src/CGALRenderer.h \
src/CGAL_Nef_polyhedron.h \
src/CGAL_Nef3_workaround.h \
+ src/convex_hull_3_bugfix.h \
src/cgalworker.h \
src/Polygon2d-CGAL.h
SOURCES += src/cgalutils.cc \
src/cgalutils-tess.cc \
src/cgalutils-polyhedron.cc \
- src/cgalutils-tess-old.cc \
src/CGALCache.cc \
src/CGALRenderer.cc \
src/CGAL_Nef_polyhedron.cc \
@@ -476,6 +497,7 @@ unix:!macx {
SOURCES += src/PlatformUtils-posix.cc
}
win* {
+ HEADERS += src/findversion.h
SOURCES += src/PlatformUtils-win.cc
}
diff --git a/openscad.qrc b/openscad.qrc
index f202c2d4..bc855681 100644
--- a/openscad.qrc
+++ b/openscad.qrc
@@ -1,5 +1,24 @@
+ images/zoom-text-in-white.png
+ images/zoom-text-in.png
+ images/zoom-text-out-white.png
+ images/zoom-text-out.png
+ images/Command-Redo-32-white.png
+ images/Command-Reset-32-white.png
+ images/Command-Undo-32-white.png
+ images/Decrease-Indent-32-white.png
+ images/Increase-Indent-32-white.png
+ images/Command-Redo-32.png
+ images/Command-Reset-32.png
+ images/Command-Undo-32.png
+ images/Decrease-Indent-32.png
+ images/Increase-Indent-32.png
+ icons/close.png
+ icons/information-icons-error.png
+ icons/information-icons-info.png
+ icons/information-icons-question.png
+ icons/information-icons-warning.png
icons/openscad.png
icons/button.png
icons/background-welcome-screen.svg
@@ -11,7 +30,6 @@
icons/prefsUpdate.png
icons/flattr.png
src/AboutDialog.html
- images/Arrowhead-Right-32.png
images/export.png
images/axes.png
images/export-white.png
@@ -28,7 +46,6 @@
images/left.png
images/blackUp.png
images/blackNew.png
- images/blackRender.png
images/Rotation-32.png
images/Shape-Cube-32.png
images/Open-32.png
@@ -52,12 +69,30 @@
images/orthogonal.png
images/cross.png
images/perspective1.png
- images/Preview-32.png
+ images/preview-32.png
+ images/preview-32-white.png
+ images/render-32.png
+ images/render-32-white.png
images/animate.png
- images/Preview-32 (1).png
images/orthogonalwhite.png
images/perspective1white.png
images/crosswhite.png
icons/background.png
+ images/scalemarkers.png
+ images/scalemarkers-white.png
+ images/AMF.png
+ images/AMF-white.png
+ images/CSG.png
+ images/CSG-white.png
+ images/DXF.png
+ images/DXF-white.png
+ images/OFF.png
+ images/OFF-white.png
+ images/PNG.png
+ images/PNG-white.png
+ images/STL.png
+ images/STL-white.png
+ images/SVG.png
+ images/SVG-white.png
diff --git a/openscad_win32.rc b/openscad_win32.rc
index ffdc7e24..95be2192 100644
--- a/openscad_win32.rc
+++ b/openscad_win32.rc
@@ -33,5 +33,6 @@ VS_VERSION_INFO VERSIONINFO
/* End of Version info */
IDI_ICON1 ICON DISCARDABLE "icons/openscad.ico"
+IDI_ICON2 ICON DISCARDABLE "icons/openscad_doc.ico"
diff --git a/qxs/openscad.qnfa b/qxs/openscad.qnfa
deleted file mode 100644
index bdd64f2e..00000000
--- a/qxs/openscad.qnfa
+++ /dev/null
@@ -1,71 +0,0 @@
-
-
-
-
-
-
-
-
- "
- "
- \n
- \\[nrtvf\\"'\n]
-
-
-
- use
- \n
-
- <
- >
-
-
-
-
- include
- \n
-
- <
- >
-
-
-
- (
- )
- {
- }
- \[
- \]
-
-
- module
- function
-
-
-
- for
- if
- else
-
-
-
- false
- true
- undef
-
-
- -?[0-9]*.[0-9]+f?
- -?[0-9]+[ulUL]*
-
diff --git a/qxs/openscad.qxf b/qxs/openscad.qxf
deleted file mode 100644
index f0df3d54..00000000
--- a/qxs/openscad.qxf
+++ /dev/null
@@ -1,142 +0,0 @@
-
-
-
- false
- false
- false
- false
- false
- false
-
-
- false
- false
- false
- false
- false
- false
- #008000
-
-
- true
- false
- false
- false
- false
- false
- #ff00ff
-
-
- false
- true
- false
- false
- false
- false
- #a0a0a4
-
-
-
- true
- false
- false
- false
- false
- false
- #000000
-
-
-
- true
- false
- false
- false
- false
- false
- #ff0000
- #ffff00
-
-
- true
- false
- false
- false
- false
- false
- #ff0000
- #ffff00
-
-
- true
- false
- false
- false
- false
- false
- #ffff00
- #ff0000
-
-
- true
- true
- false
- false
- false
- false
- #ff0000
- #ffff00
-
-
- true
- false
- false
- false
- false
- true
- #d060d0
- #ff0000
-
-
- false
- false
- false
- false
- false
- false
- #800080
-
-
- false
- false
- false
- false
- false
- false
- #ff0000
-
-
- false
- false
- false
- false
- false
- false
- #ff1493
-
-
diff --git a/releases/2014.QX.md b/releases/2015.02.md
similarity index 83%
rename from releases/2014.QX.md
rename to releases/2015.02.md
index 15500944..2904cd18 100644
--- a/releases/2014.QX.md
+++ b/releases/2015.02.md
@@ -1,10 +1,10 @@
**Language Features:**
-* surface() can now take PNG images as input
-* List comprehensions, let()
* text() module
* offset()
-* min() and max() can now take a wvector argument
+* List comprehensions, let()
* concat()
+* surface() can now take PNG images as input
+* min() and max() can now take a vector argument
* 2D minkowski and holes
* chr()
@@ -13,25 +13,25 @@
* MDI
* FIXME: Windows cmd-line fixes
* Qt5, retina
-* SVG import/export
-* AMF import/export
+* SVG export
+* AMF export
* Color schemes for viewer and editor can be user-edited
* Improved editor
* Splash screen
* Docking of GUI components
-* Toolbar
+* Toolbars
* More robust STL export
**Bugfixes/improvements:**
* Internal cavity fix
* Performance: 2D (clipper), preview, hull, minkowski, surface, n-ary-union, transforms (polyset)
* Performance: Reduce duplicate evaluation of identical expressions
-* STL export/import fixes
+* STL export/import stability fixes
* F6 stability fixes
* Better recursion behavior
* Reorganized examples a bit
* improved search() behavior
-* Mac: Timestamps is output fixed
+* Mac: Timestamps in output fixed
**Deprecations:**
* polyhedron triangles
diff --git a/right.png b/right.png
deleted file mode 100644
index 0635ca38..00000000
Binary files a/right.png and /dev/null differ
diff --git a/scripts/check-dependencies.sh b/scripts/check-dependencies.sh
index 242b969e..d2e7b08e 100755
--- a/scripts/check-dependencies.sh
+++ b/scripts/check-dependencies.sh
@@ -167,7 +167,7 @@ qt_sysver()
export QT_SELECT=5
qtpath="`qtchooser -run-tool=qmake -qt=5 -query QT_INSTALL_HEADERS`"/QtCore/qglobal.h
fi
- if [ ! -e $qtpath ]; then
+ if [ ! -e "$qtpath" ]; then
if qtchooser -run-tool=qmake -qt=4 -v >/dev/null 2>&1 ; then
export QT_SELECT=4
qtpath="`qtchooser -run-tool=qmake -qt=4 -query QT_INSTALL_HEADERS`"/QtCore/qglobal.h
@@ -193,10 +193,10 @@ qt_sysver()
# netbsd
qtpath=$1/qt4/include/QtCore/qglobal.h
fi
- if [ ! -e $qtpath ]; then
- unset QT_SELECT
- return
- fi
+ fi
+ if [ ! -e "$qtpath" ]; then
+ unset QT_SELECT
+ return
fi
qtver=`grep 'define *QT_VERSION_STR *' $qtpath | awk '{print $3}'`
qtver=`echo $qtver | sed s/'"'//g`
diff --git a/scripts/common-build-dependencies.sh b/scripts/common-build-dependencies.sh
index 87a2bed0..8ef303df 100644
--- a/scripts/common-build-dependencies.sh
+++ b/scripts/common-build-dependencies.sh
@@ -161,7 +161,7 @@ build_ragel()
cd "$BASEDIR"/src
rm -rf "ragel-$version"
if [ ! -f "ragel-$version.tar.gz" ]; then
- curl --insecure -LO "http://www.complang.org/ragel/ragel-$version.tar.gz"
+ curl --insecure -LO "http://www.colm.net/files/ragel/ragel-$version.tar.gz"
fi
tar xzf "ragel-$version.tar.gz"
cd "ragel-$version"
diff --git a/scripts/macosx-build-dependencies.sh b/scripts/macosx-build-dependencies.sh
index 109b95a5..244c2800 100755
--- a/scripts/macosx-build-dependencies.sh
+++ b/scripts/macosx-build-dependencies.sh
@@ -1,4 +1,4 @@
-#!/bin/sh -e
+#!/bin/bash
#
# This script builds all library dependencies of OpenSCAD for Mac OS X.
# The libraries will be build in 64-bit (and optionally 32-bit mode) mode
@@ -6,18 +6,18 @@
#
# This script must be run from the OpenSCAD source root directory
#
-# Usage: macosx-build-dependencies.sh [-6lcd]
+# Usage: macosx-build-dependencies.sh [-6lcd] []
# -6 Build only 64-bit binaries
# -l Force use of LLVM compiler
# -c Force use of clang compiler
# -d Build for deployment (if not specified, e.g. Sparkle won't be built)
+# -f Force build even if package is installed
#
# Prerequisites:
# - MacPorts: curl, cmake
#
# FIXME:
# o Verbose option
-# o Force rebuild vs. only rebuild changes
#
BASEDIR=$PWD/../libraries
@@ -30,17 +30,116 @@ OPTION_LLVM=false
OPTION_CLANG=false
OPTION_GCC=false
OPTION_DEPLOY=false
+OPTION_FORCE=0
+
+PACKAGES=(
+ "eigen 3.2.4"
+ "gmp 5.1.3"
+ "mpfr 3.1.2"
+ "boost 1.57.0"
+ "qt5 5.4.0"
+ "qscintilla 2.8.4"
+ # NB! For eigen, also update the path in the function
+ # NB! For CGAL, also update the actual download URL in the function
+ "cgal 4.5.1"
+ "glew 1.12.0"
+ "gettext 0.19.4"
+ "libffi 3.2.1"
+ "glib2 2.42.1"
+ "opencsg 1.4.0"
+ "freetype 2.5.5"
+ "ragel 6.9"
+ "harfbuzz 0.9.37"
+ "libxml2 2.9.2"
+ "fontconfig 2.11.1"
+)
+DEPLOY_PACKAGES=(
+ "sparkle Cocoanetics:1e7dcb1a48b96d1a8c62100b5864bd50211cbae1"
+)
printUsage()
{
- echo "Usage: $0 [-6lcd]"
+ echo "Usage: $0 [-6lcd] []"
echo
echo " -6 Build only 64-bit binaries"
echo " -l Force use of LLVM compiler"
echo " -c Force use of clang compiler"
echo " -d Build for deployment"
+ echo " -f Force build even if package is installed"
+ echo
+ echo " If is not specified, builds all packages"
}
+# Outputs all package names
+all_packages()
+{
+ for i in $(seq 0 $(( ${#PACKAGES[@]} - 1 )) ); do
+ local p=${PACKAGES[$i]}
+ echo -n "${p%%\ *} " # Cut at first space
+ done
+}
+
+# Usage: package_version
+# Outputs the package version for the given package
+package_version()
+{
+ for i in $(seq 0 $(( ${#PACKAGES[@]} - 1 )) ); do
+ local p=${PACKAGES[$i]}
+ if [ "$1" = "${p%%\ *}" ]; then
+ echo "${p#*\ }" # cut until first space
+ return 0
+ fi
+ done
+ return 1
+}
+
+# Usage: build
+build()
+{
+ local package=$1
+ local version=$2
+
+ local should_install=$(( $OPTION_FORCE == 1 ))
+ if [[ $should_install == 0 ]]; then
+ is_installed $package $version
+ should_install=$?
+ fi
+ if [[ $should_install == 1 ]]; then
+ set -e
+ build_$package $version
+ set +e
+ fi
+
+}
+
+# Usage: is_installed []
+# Returns success (0) if the/a version of the package is already installed
+is_installed()
+{
+ if check_$1 $2; then
+ echo "$1 already installed - not building"
+ return 0
+ fi
+ return 1
+}
+
+# Usage: check_dir
+# Checks if $DEPLOYDIR/ exists and is a folder
+# Returns success (0) if the folder exists
+check_dir()
+{
+ test -d "$DEPLOYDIR/$1"
+}
+
+# Usage: check_file
+# Checks if $DEPLOYDIR/ exists and is a file
+# Returns success (0) if the file exists
+check_file()
+{
+ test -f "$DEPLOYDIR/$1"
+}
+
+
patch_qt_disable_core_wlan()
{
version="$1"
@@ -104,15 +203,15 @@ build_qt()
make -j"$NUMCPU" install
}
+check_qt5()
+{
+ check_dir lib/QtCore.framework
+}
+
build_qt5()
{
version=$1
- if [ -d $DEPLOYDIR/lib/QtCore.framework ]; then
- echo "Qt5 already installed. not building"
- return
- fi
-
echo "Building Qt" $version "..."
cd $BASEDIR/src
v=(${version//./ }) # Split into array
@@ -133,6 +232,11 @@ build_qt5()
make -j"$NUMCPU" install
}
+check_qscintilla()
+{
+ check_file include/Qsci/qsciscintilla.h
+}
+
build_qscintilla()
{
version=$1
@@ -149,6 +253,11 @@ build_qscintilla()
install_name_tool -id $DEPLOYDIR/lib/libqscintilla2.dylib $DEPLOYDIR/lib/libqscintilla2.dylib
}
+check_gmp()
+{
+ check_file lib/libgmp.dylib
+}
+
# Hack warning: gmplib is built separately in 32-bit and 64-bit mode
# and then merged afterwards. gmplib's header files are dependent on
# the CPU architecture on which configure was run and will be patched accordingly.
@@ -156,11 +265,6 @@ build_gmp()
{
version=$1
- if [ -f $DEPLOYDIR/lib/libgmp.dylib ]; then
- echo "gmp already installed. not building"
- return
- fi
-
echo "Building gmp" $version "..."
cd $BASEDIR/src
rm -rf gmp-$version
@@ -252,17 +356,17 @@ EOF
cp x86_64/include/gmpxx.h include/
}
+check_mpfr()
+{
+ check_file include/mpfr.h
+}
+
# As with gmplib, mpfr is built separately in 32-bit and 64-bit mode and then merged
# afterwards.
build_mpfr()
{
version=$1
- if [ -f $DEPLOYDIR/include/mpfr.h ]; then
- echo "mpfr already installed. not building"
- return
- fi
-
echo "Building mpfr" $version "..."
cd $BASEDIR/src
rm -rf mpfr-$version
@@ -300,15 +404,15 @@ build_mpfr()
cp x86_64/include/mpf2mpfr.h include/
}
+check_boost()
+{
+ check_file lib/libboost_system.dylib
+}
+
build_boost()
{
version=$1
- if [ -f $DEPLOYDIR/lib/libboost_system.dylib ]; then
- echo "boost already installed. not building"
- return
- fi
-
bversion=`echo $version | tr "." "_"`
echo "Building boost" $version "..."
cd $BASEDIR/src
@@ -343,15 +447,15 @@ build_boost()
}
+check_cgal()
+{
+ check_file lib/libCGAL.dylib
+}
+
build_cgal()
{
version=$1
- if [ -f $DEPLOYDIR/lib/libCGAL.dylib ]; then
- echo "cgal already installed. not building"
- return
- fi
-
echo "Building CGAL" $version "..."
cd $BASEDIR/src
rm -rf CGAL-$version
@@ -383,15 +487,15 @@ build_cgal()
install_name_tool -change $PWD/lib/libCGAL.9.dylib $DEPLOYDIR/lib/libCGAL.dylib $DEPLOYDIR/lib/libCGAL_Core.dylib
}
+check_glew()
+{
+ check_file lib/libGLEW.dylib
+}
+
build_glew()
{
version=$1
- if [ -f $DEPLOYDIR/lib/libGLEW.dylib ]; then
- echo "glew already installed. not building"
- return
- fi
-
echo "Building GLEW" $version "..."
cd $BASEDIR/src
rm -rf glew-$version
@@ -407,15 +511,15 @@ build_glew()
make GLEW_DEST=$DEPLOYDIR CC=$CC CFLAGS.EXTRA="-no-cpp-precomp -dynamic -fno-common -mmacosx-version-min=$MAC_OSX_VERSION_MIN $GLEW_EXTRA_FLAGS -arch x86_64" LDFLAGS.EXTRA="-mmacosx-version-min=$MAC_OSX_VERSION_MIN $GLEW_EXTRA_FLAGS -arch x86_64" STRIP= install
}
+check_opencsg()
+{
+ check_file lib/libopencsg.dylib
+}
+
build_opencsg()
{
version=$1
- if [ -f $DEPLOYDIR/lib/libopencsg.dylib ]; then
- echo "opencsg already installed. not building"
- return
- fi
-
echo "Building OpenCSG" $version "..."
cd $BASEDIR/src
rm -rf OpenCSG-$version
@@ -432,15 +536,23 @@ build_opencsg()
make install
}
+# Usage: func []
+check_eigen()
+{
+ # To check version:
+ # include/eigen3/Eigen/src/Core/util/Macros.h:
+ # #define EIGEN_WORLD_VERSION 3
+ # #define EIGEN_MAJOR_VERSION 2
+ # #define EIGEN_MINOR_VERSION 3
+
+ check_dir include/eigen3
+}
+
+# Usage: func
build_eigen()
{
version=$1
- if [ -d $DEPLOYDIR/include/eigen3 ]; then
- echo "eigen3 already installed. not building"
- return
- fi
-
echo "Building eigen" $version "..."
cd $BASEDIR/src
rm -rf eigen-$version
@@ -453,6 +565,7 @@ build_eigen()
elif [ $version = "3.2.1" ]; then EIGENDIR=eigen-eigen-6b38706d90a9;
elif [ $version = "3.2.2" ]; then EIGENDIR=eigen-eigen-1306d75b4a21;
elif [ $version = "3.2.3" ]; then EIGENDIR=eigen-eigen-36fd1ba04c12;
+ elif [ $version = "3.2.4" ]; then EIGENDIR=eigen-eigen-10219c95fe65;
fi
if [ $EIGENDIR = "none" ]; then
@@ -473,19 +586,28 @@ build_eigen()
if $OPTION_32BIT; then
EIGEN_EXTRA_FLAGS=";i386"
fi
- cmake -DCMAKE_INSTALL_PREFIX=$DEPLOYDIR -DEIGEN_BUILD_LIB=ON -DBUILD_SHARED_LIBS=FALSE -DCMAKE_OSX_DEPLOYMENT_TARGET="$MAC_OSX_VERSION_MIN" -DCMAKE_OSX_ARCHITECTURES="x86_64$EIGEN_EXTRA_FLAGS" ..
+ cmake -DCMAKE_INSTALL_PREFIX=$DEPLOYDIR -DEIGEN_TEST_NOQT=TRUE -DCMAKE_OSX_DEPLOYMENT_TARGET="$MAC_OSX_VERSION_MIN" -DCMAKE_OSX_ARCHITECTURES="x86_64$EIGEN_EXTRA_FLAGS" ..
make -j"$NUMCPU" install
- make install
}
+check_sparkle()
+{
+ check_file lib/Sparkle.framework/Sparkle
+}
+
+# Usage: build_sparkle :
build_sparkle()
{
+ v=$1
+ github=${1%%:*} # Cut at first colon
+ version=${1#*:} # cut until first colon
+
+ echo "Building Sparkle" $version "..."
+
# Let Sparkle use the default compiler
unset CC
unset CXX
- github=$1
- version=$2
- echo "Building Sparkle" $version "..."
+
cd $BASEDIR/src
rm -rf Sparkle-$version
if [ ! -f Sparkle-$version.zip ]; then
@@ -504,15 +626,15 @@ build_sparkle()
install_name_tool -id $DEPLOYDIR/lib/Sparkle.framework/Versions/A/Sparkle $DEPLOYDIR/lib/Sparkle.framework/Sparkle
}
+check_freetype()
+{
+ check_file lib/libfreetype.dylib
+}
+
build_freetype()
{
version="$1"
- extra_config_flags="$2"
-
- if [ -f $DEPLOYDIR/lib/libfreetype.dylib ]; then
- echo "freetype already installed. not building"
- return
- fi
+ extra_config_flags="--without-png"
echo "Building freetype $version..."
cd "$BASEDIR"/src
@@ -522,20 +644,23 @@ build_freetype()
fi
tar xzf "freetype-$version.tar.gz"
cd "freetype-$version"
+
+ export FREETYPE_CFLAGS="-I$DEPLOYDIR/include -I$DEPLOYDIR/include/freetype2"
+ export FREETYPE_LIBS="-L$DEPLOYDIR/lib -lfreetype"
PKG_CONFIG_LIBDIR="$DEPLOYDOR/lib/pkgconfig" ./configure --prefix="$DEPLOYDIR" CFLAGS=-mmacosx-version-min=$MAC_OSX_VERSION_MIN LDFLAGS=-mmacosx-version-min=$MAC_OSX_VERSION_MIN $extra_config_flags
make -j"$NUMCPU"
make install
}
+check_libxml2()
+{
+ check_file lib/libxml2.dylib
+}
+
build_libxml2()
{
version="$1"
- if [ -f $DEPLOYDIR/lib/libxml2.dylib ]; then
- echo "libxml2 already installed. not building"
- return
- fi
-
echo "Building libxml2 $version..."
cd "$BASEDIR"/src
rm -rf "libxml2-$version"
@@ -549,15 +674,15 @@ build_libxml2()
make install
}
+check_fontconfig()
+{
+ check_file lib/libfontconfig.dylib
+}
+
build_fontconfig()
{
version=$1
- if [ -f $DEPLOYDIR/lib/libfontconfig.dylib ]; then
- echo "fontconfig already installed. not building"
- return
- fi
-
echo "Building fontconfig $version..."
cd "$BASEDIR"/src
rm -rf "fontconfig-$version"
@@ -573,15 +698,15 @@ build_fontconfig()
make install
}
+check_libffi()
+{
+ check_file lib/libffi.dylib
+}
+
build_libffi()
{
version="$1"
- if [ -f $DEPLOYDIR/lib/libffi.dylib ]; then
- echo "libffi already installed. not building"
- return
- fi
-
echo "Building libffi $version..."
cd "$BASEDIR"/src
rm -rf "libffi-$version"
@@ -595,15 +720,15 @@ build_libffi()
make install
}
+check_gettext()
+{
+ check_file lib/libgettextlib.dylib
+}
+
build_gettext()
{
version="$1"
- if [ -f $DEPLOYDIR/lib/libgettextlib.dylib ]; then
- echo "gettext already installed. not building"
- return
- fi
-
echo "Building gettext $version..."
cd "$BASEDIR"/src
rm -rf "gettext-$version"
@@ -618,15 +743,15 @@ build_gettext()
make install
}
+check_glib2()
+{
+ check_file lib/libglib-2.0.dylib
+}
+
build_glib2()
{
version="$1"
- if [ -f $DEPLOYDIR/lib/libglib-2.0.dylib ]; then
- echo "glib2 already installed. not building"
- return
- fi
-
echo "Building glib2 $version..."
cd "$BASEDIR"/src
@@ -645,15 +770,15 @@ build_glib2()
make install
}
+check_ragel()
+{
+ check_file bin/ragel
+}
+
build_ragel()
{
version=$1
- if [ -f $DEPLOYDIR/bin/ragel ]; then
- echo "ragel already installed. not building"
- return
- fi
-
echo "Building ragel $version..."
cd "$BASEDIR"/src
rm -rf "ragel-$version"
@@ -668,15 +793,15 @@ build_ragel()
make install
}
+check_harfbuzz()
+{
+ check_file lib/libharfbuzz.dylib
+}
+
build_harfbuzz()
{
version=$1
- extra_config_flags="$2"
-
- if [ -f $DEPLOYDIR/lib/libharfbuzz.dylib ]; then
- echo "harfbuzz already installed. not building"
- return
- fi
+ extra_config_flags="--with-coretext=auto --with-glib=no"
echo "Building harfbuzz $version..."
cd "$BASEDIR"/src
@@ -700,19 +825,27 @@ if [ ! -f $OPENSCADDIR/openscad.pro ]; then
fi
OPENSCAD_SCRIPTDIR=$PWD/scripts
-while getopts '6lcd' c
+while getopts '6lcdf' c
do
case $c in
6) OPTION_32BIT=false;;
l) OPTION_LLVM=true;;
c) OPTION_CLANG=true;;
d) OPTION_DEPLOY=true;;
+ f) OPTION_FORCE=1;;
+ *) printUsage;exit 1;;
esac
done
+OPTION_PACKAGES="${@:$OPTIND}"
+
OSX_VERSION=`sw_vers -productVersion | cut -d. -f2`
-if (( $OSX_VERSION >= 8 )); then
- echo "Detected Mountain Lion (10.8) or later"
+if (( $OSX_VERSION >= 10 )); then
+ echo "Detected Yosemite (10.10) or later"
+elif (( $OSX_VERSION >= 9 )); then
+ echo "Detected Mavericks (10.9)"
+elif (( $OSX_VERSION >= 8 )); then
+ echo "Detected Mountain Lion (10.8)"
elif (( $OSX_VERSION >= 7 )); then
echo "Detected Lion (10.7)"
else
@@ -771,30 +904,32 @@ else
echo "Building 64-bit binaries"
fi
+if (( $OPTION_FORCE )); then
+ echo "Forcing rebuild"
+fi
+
echo "Using basedir:" $BASEDIR
mkdir -p $SRCDIR $DEPLOYDIR
-build_qt5 5.4.0
-build_qscintilla 2.8.4
-# NB! For eigen, also update the path in the function
-build_eigen 3.2.3
-build_gmp 5.1.3
-build_mpfr 3.1.2
-build_boost 1.57.0
-# NB! For CGAL, also update the actual download URL in the function
-build_cgal 4.5.1
-build_glew 1.11.0
-build_gettext 0.19.4
-build_libffi 3.2.1
-build_glib2 2.42.1
-build_opencsg 1.4.0
-build_freetype 2.5.4 --without-png
-build_ragel 6.9
-build_harfbuzz 0.9.37 "--with-coretext=auto --with-glib=no"
-export FREETYPE_CFLAGS="-I$DEPLOYDIR/include -I$DEPLOYDIR/include/freetype2"
-export FREETYPE_LIBS="-L$DEPLOYDIR/lib -lfreetype"
-build_libxml2 2.9.2
-build_fontconfig 2.11.1
+
+# Only build deploy packages in deploy mode
if $OPTION_DEPLOY; then
-# build_sparkle andymatuschak 0ed83cf9f2eeb425d4fdd141c01a29d843970c20
- build_sparkle Cocoanetics 1e7dcb1a48b96d1a8c62100b5864bd50211cbae1
+ # Array concatenation
+ PACKAGES=("${PACKAGES[@]}" "${DEPLOY_PACKAGES[@]}")
fi
+
+# Build specified (or all) packages
+ALL_PACKAGES=$(all_packages)
+if [ -z "$OPTION_PACKAGES" ]; then
+ OPTION_PACKAGES=$ALL_PACKAGES
+fi
+
+echo "Building packages: $OPTION_PACKAGES"
+echo
+
+for package in $OPTION_PACKAGES; do
+ if [[ $ALL_PACKAGES =~ $package ]]; then
+ build $package $(package_version $package)
+ else
+ echo "Skipping unknown package $package"
+ fi
+done
diff --git a/scripts/release-common.sh b/scripts/release-common.sh
index 2da42495..2c98a625 100755
--- a/scripts/release-common.sh
+++ b/scripts/release-common.sh
@@ -255,7 +255,7 @@ case $OS in
exit
fi
# make console pipe-able openscad.com - see winconsole.pro for info
- qmake ../winconsole.pro
+ qmake ../winconsole/winconsole.pro
make
if [ ! -e $TARGET/openscad.com ]; then
echo "cant find $TARGET/openscad.com. build failed. stopping."
diff --git a/scripts/uni-build-dependencies.sh b/scripts/uni-build-dependencies.sh
index 5ee34919..eb59665e 100755
--- a/scripts/uni-build-dependencies.sh
+++ b/scripts/uni-build-dependencies.sh
@@ -813,7 +813,7 @@ build_glib2 2.38.2
build_freetype 2.5.0.1 --without-png
build_libxml2 2.9.1
build_fontconfig 2.11.0 --with-add-fonts=/usr/X11R6/lib/X11/fonts,/usr/local/share/fonts
-build_ragel 6.8
+build_ragel 6.9
build_harfbuzz 0.9.23 --with-glib=yes
echo "OpenSCAD dependencies built and installed to " $BASEDIR
diff --git a/src/AboutDialog.html b/src/AboutDialog.html
index 22ca9272..478c5e20 100644
--- a/src/AboutDialog.html
+++ b/src/AboutDialog.html
@@ -23,7 +23,7 @@
-Copyright (C) 2009-2014 Marius Kintel <marius@kintel.net> and Clifford Wolf <clifford@clifford.at>
+Copyright (C) 2009-2015 Marius Kintel <marius@kintel.net> and Clifford Wolf <clifford@clifford.at>
@@ -47,12 +47,18 @@ Please visit this link for a copy of the license: GNU GMP
GNU MPFR
CGAL
+Clipper
Eigen
OpenCSG
OpenGL
GLEW
-Qt Toolkit
+Qt Toolkit
+QScintilla
Boost
+GLib
+Fontconfig
+Freetype
+Harfbuzz
Bison
Flex
CMake
diff --git a/src/CGALRenderer.cc b/src/CGALRenderer.cc
index c9b816c5..a3505856 100644
--- a/src/CGALRenderer.cc
+++ b/src/CGALRenderer.cc
@@ -32,6 +32,7 @@
// dxfdata.h must come first for Eigen SIMD alignment issues
#include "dxfdata.h"
#include "polyset.h"
+#include "polyset-utils.h"
#include "printutils.h"
#include "CGALRenderer.h"
@@ -44,7 +45,13 @@
CGALRenderer::CGALRenderer(shared_ptr geom)
{
if (shared_ptr ps = dynamic_pointer_cast(geom)) {
- this->polyset = ps;
+ assert(ps->getDimension() == 3);
+ // We need to tessellate here, in case the generated PolySet contains concave polygons
+ // See testdata/scad/3D/features/polyhedron-concave-test.scad
+ PolySet *ps_tri = new PolySet(3, ps->convexValue());
+ ps_tri->setConvexity(ps->getConvexity());
+ PolysetUtils::tessellate_faces(*ps, *ps_tri);
+ this->polyset.reset(ps_tri);
}
else if (shared_ptr poly = dynamic_pointer_cast(geom)) {
this->polyset.reset(poly->tessellate());
diff --git a/src/CSGTermEvaluator.cc b/src/CSGTermEvaluator.cc
index 4adfa62d..e2207f76 100644
--- a/src/CSGTermEvaluator.cc
+++ b/src/CSGTermEvaluator.cc
@@ -11,6 +11,7 @@
#include "printutils.h"
#include "GeometryEvaluator.h"
#include "polyset.h"
+#include "polyset-utils.h"
#include
#include