From f33359fb0c56fe88e0ae3c564b7847f90889eac2 Mon Sep 17 00:00:00 2001 From: David Boddie Date: Mon, 9 Aug 2010 20:50:45 +0200 Subject: Doc: Fixes to Qt Quick documentation. Reviewed-by: Trust Me To-be-verified-by: Qt Doc Team --- doc/src/declarative/declarativeui.qdoc | 99 +- doc/src/declarative/dynamicobjects.qdoc | 2 +- doc/src/declarative/elements.qdoc | 6 +- doc/src/declarative/qml-intro.qdoc | 414 +--- doc/src/declarative/qtprogrammers.qdoc | 3 +- doc/src/external-resources.qdoc | 15 + doc/src/getting-started/demos.qdoc | 18 +- doc/src/getting-started/gettingstartedqml.qdoc | 2044 ++++++++++---------- doc/src/getting-started/gettingstartedqt.qdoc | 6 +- doc/src/qt4-intro.qdoc | 8 +- .../ui-components/dialcontrol/content/Dial.qml | 2 + .../ui-components/dialcontrol/dialcontrol.qml | 4 +- src/declarative/qml/qdeclarativecomponent.cpp | 2 +- src/declarative/qml/qdeclarativeengine.cpp | 6 +- 14 files changed, 1159 insertions(+), 1470 deletions(-) diff --git a/doc/src/declarative/declarativeui.qdoc b/doc/src/declarative/declarativeui.qdoc index 42189c0..ed8b734 100644 --- a/doc/src/declarative/declarativeui.qdoc +++ b/doc/src/declarative/declarativeui.qdoc @@ -33,7 +33,7 @@ dynamic, custom user interfaces. Qt Quick provides a declarative framework for building highly dynamic, -custom user interfaces from a rich set of \l {QML Elements}{QML elements}. +custom user interfaces from a rich set of \l{QML Elements}{QML elements}. Qt Quick helps programmers and designers collaborate to build the fluid user interfaces that are becoming common in portable consumer devices, such as mobile phones, media players, set-top boxes @@ -41,73 +41,74 @@ and netbooks. Qt Quick consists of the QtDeclarative C++ module, QML, and the integration of both of these into the Qt Creator IDE. Using the QtDeclarative C++ module, you can load and interact with QML files from your Qt application. -QML is an extension to \l -{http://www.ecma-international.org/publications/standards/Ecma-262.htm} -{JavaScript}, that provides a mechanism to declaratively build an -object tree of \l {QML Elements}{QML elements}. QML improves the -integration between JavaScript and Qt's existing QObject based type -system, adds support for automatic \l {Property Binding}{property -bindings} and provides \l {Network Transparency}{network transparency} -at the language level. +QML is an extension to \l{About JavaScript}{JavaScript}, that provides +a mechanism to declaratively build an object tree of +\l{QML Elements}{QML elements}. QML improves the integration between +JavaScript and Qt's existing QObject-based type system, adds support for +automatic \l{Property Binding}{property bindings} and provides +\l{Network Transparency}{network transparency} at the language level. -The \l {QML Elements}{QML elements} are a sophisticated set of +The \l{QML Elements}{QML elements} are a sophisticated set of graphical and behavioral building blocks. These different elements -are combined together in \l {QML Documents}{QML documents} to build +are combined together in \l{QML Documents}{QML documents} to build components ranging in complexity from simple buttons and sliders, to -complete internet-enabled applications like a \l -{http://www.flickr.com}{Flickr} photo browser. +complete Internet-enabled applications like a photo browser for the +popular \l{http://www.flickr.com}{Flickr} photo-sharing site. -Qt Quick builds on \l {QML for Qt programmers}{Qt's existing -strengths}. QML can be be used to incrementally extend an existing -application or to build completely new applications. QML is fully \l -{Extending QML in C++}{extensible from C++} through the QtDeclarative Module. +Qt Quick builds on \l{QML for Qt programmers}{Qt's existing strengths}. +QML can be be used to incrementally extend an existing application or +to build completely new applications. QML is fully +\l{Extending QML in C++}{extensible from C++} through the QtDeclarative +Module. \section1 Getting Started \list -\o \l {Introduction to the QML language} -\o \l {QML Tutorial}{Tutorial: 'Hello World'} -\o \l {QML Advanced Tutorial}{Tutorial: 'Same Game'} -\o \l {QML Examples and Demos} -\o \l {QML for Qt programmers} +\o \l{Introduction to the QML language} +\o \l{QML Tutorial}{Tutorial: 'Hello World'} +\o \l{QML Advanced Tutorial}{Tutorial: 'Same Game'} +\o \l{QML Examples and Demos} +\o \l{QML for Qt Programmers} +\o \l{Getting Started Programming with QML} +\o \l{Beginning Qt Quick} \endlist \section1 Core QML Features \list -\o \l {QML Documents} -\o \l {Property Binding} -\o \l {Network Transparency} -\o \l {QML Scope} -\o \l {Integrating JavaScript} -\o \l {Data Models} -\o \l {anchor-layout.html}{Anchor-based Layout} -\o \l {qdeclarativestates.html}{States} -\o \l {qdeclarativeanimation.html}{Animation} -\o \l {qdeclarativefocus.html}{Keyboard Focus} -\o \l {qdeclarativemodules.html}{Modules} -\o \l {Extending types from QML} -\o \l {qdeclarativedynamicobjects.html}{Dynamic Object Creation} -\o \l {qmlruntime.html}{The Qt Declarative Runtime} +\o \l{QML Documents} +\o \l{Property Binding} +\o \l{Network Transparency} +\o \l{QML Scope} +\o \l{Integrating JavaScript} +\o \l{Data Models} +\o \l{Anchor-based Layout in QML} +\o \l{QML States} +\o \l{QML Animation} +\o \l{Keyboard Focus in QML} +\o \l{QML Modules} +\o \l{Extending types from QML} +\o \l{Dynamic Object Management in QML} +\o \l{Qt Declarative UI Runtime} \endlist \section1 Using QML with C++ \list -\o \l {Using QML in C++ Applications} -\o \l {Integrating QML with existing Qt UI code} -\o \l {Tutorial: Writing QML extensions with C++} -\o \l {Extending QML in C++} +\o \l{Using QML in C++ Applications} +\o \l{Integrating QML with existing Qt UI code} +\o \l{Tutorial: Writing QML extensions with C++} +\o \l{Extending QML in C++} \endlist \section1 Reference \list -\o \l {QML Elements} -\o \l {QML Global Object} -\o \l {QML Internationalization} -\o \l {QML Security} -\o \l {QtDeclarative Module} -\o \l {Debugging QML} -\o \l {QML Viewer} -\o \l {QML Performance} -\o \l {QML Coding Conventions} +\o \l{QML Elements} +\o \l{QML Global Object} +\o \l{QML Internationalization} +\o \l{QML Security} +\o \l{QtDeclarative Module} +\o \l{Debugging QML} +\o \l{QML Viewer} +\o \l{QML Performance} +\o \l{QML Coding Conventions} \endlist */ diff --git a/doc/src/declarative/dynamicobjects.qdoc b/doc/src/declarative/dynamicobjects.qdoc index 997f601..e735bce 100644 --- a/doc/src/declarative/dynamicobjects.qdoc +++ b/doc/src/declarative/dynamicobjects.qdoc @@ -27,7 +27,7 @@ /*! \page qdeclarativedynamicobjects.html -\title Dynamic Object Management +\title Dynamic Object Management in QML QML provides a number of ways to dynamically create and manage QML objects. The \l{Loader}, \l{Repeater}, \l{ListView}, \l{GridView} and \l{PathView} elements diff --git a/doc/src/declarative/elements.qdoc b/doc/src/declarative/elements.qdoc index c2930b3..55b71e1 100644 --- a/doc/src/declarative/elements.qdoc +++ b/doc/src/declarative/elements.qdoc @@ -26,11 +26,11 @@ ****************************************************************************/ /*! -\page qdeclarativeelements.html +\page qmlelements.html \target elements \title QML Elements -The following table lists the QML elements provided by the \l {QtDeclarative}{Qt Declarative} module. +The following table lists the QML elements provided by the \l{QtDeclarative} module. \table \header \o {2,1} \bold {Basic Visual Items} @@ -54,7 +54,7 @@ The following table lists the QML elements provided by the \l {QtDeclarative}{Qt \row \o \l {Flickable} \o Provides a surface that can be "flicked" \row \o \l {Flipable} \o Provides a surface that produces flipping effects \row \o \l {GestureArea} (experimental) \o Enables simple gesture handling - + \header \o {2,1} \bold {States} \row \o \l {State} \o Defines sets of configurations of objects and properties \row \o \l {PropertyChanges} \o Describes property changes within a state diff --git a/doc/src/declarative/qml-intro.qdoc b/doc/src/declarative/qml-intro.qdoc index fbab001..69dd500 100644 --- a/doc/src/declarative/qml-intro.qdoc +++ b/doc/src/declarative/qml-intro.qdoc @@ -28,14 +28,11 @@ /*! - -\page qml-intro.html +\page qml-intro.html \title Beginning Qt Quick - \section1 Overview - QML is a high level, scripted language. Its commands, more correctly \e elements, leverage the power and efficiency of the Qt libraries to make easy to use commands that perform intuitive functions. Draw a rectangle, display an image at @@ -61,12 +58,7 @@ would be a property. The basic syntax of an \l {QML Elements}{element} is - \code - SomeElement { - id: myObject - ... some other things here ... - } - \endcode +\snippet doc/src/snippets/declarative/qml-intro/basic-syntax.qml basic syntax Here we are defining a new object. We specify its 'type' first as SomeElement. Then within matching braces { ... } we specify the various parts of our @@ -90,61 +82,38 @@ want a rectangle that is 500 pixels by 400 pixels in the x and y directions We can implement this \l Rectangle with these properties this way - \code - import Qt 4.7 - - // This is a comment. And below myRectangle is defined. - Rectangle { - id: myRectangle - width: 500 - height: 400 - } - \endcode +\quotefile doc/src/snippets/declarative/qml-intro/rectangle.qml This is a valid QML script. To run it, copy it and save it to a file, say -myexample.qml, and on the command line run the command +myexample.qml, and on the command line run the following command: - \code - qmlviewer myexample.qml - \endcode +\code +qmlviewer myexample.qml +\endcode On Mac OS X, open the "QMLViewer" application instead and open the \c myexample.qml file, or run it from the command line: - \code - QMLViewer.app/Contents/MacOS/QMLViewer myexample.qml - \endcode - +\code +QMLViewer.app/Contents/MacOS/QMLViewer myexample.qml +\endcode It will create a very boring rectangle in its own window. - \section1 Hello World! We can now add some color and text to make a Hello World QML program. -\l Rectangle has the property \l {Rectangle::color}{color} to produce a +\l Rectangle has the property \l{Rectangle::color}{color} to produce a background color. Text is handled by a different element called \l Text. We need to create a -\l Text object inside the \l Rectangle and set its \l {Text::text}{text} -property to "Hello World!". So to set the text to 'Hello world' and the +\l Text object inside the \l Rectangle and set its \l{Text::}{text} +property to "Hello World!". So to set the text to "Hello world" and the background colour to light gray, - \code - import Qt 4.7 - - Rectangle { - id: myRectangle - width: 500 - height: 400 - - Text { text: "Hello World!" } - - color: "lightgray" - } - \endcode +\quotefile doc/src/snippets/declarative/qml-intro/hello-world1.qml \section1 Hello World Again @@ -158,12 +127,7 @@ position belongs to the \l Text element so we set the position inside its definition. Note that we separate different QML statements on the same line with a semi-colon, or we could have simply put each statement on a new line - \code - Text { - text: "

Hello World

"; color: "darkgreen" - x: 100; y:100 - } - \endcode +\snippet doc/src/snippets/declarative/qml-intro/hello-world2.qml updated text Not only did we reposition the text, but the text was altered by adding HTML tags to change the font size. The text color was also changed from the @@ -174,13 +138,7 @@ We could also have used a hexadecimal string for the RGB (red-green-blue, as #rrggbb) values of the color similar to the method used in HTML. For example, mostly blue with a green tint, - \code - Text { - text: "

Hello world again

" - color: "#002288" - x: 100; y: 100 - } - \endcode +\snippet doc/src/snippets/declarative/qml-intro/hello-world3.qml updated text All of these changes occurred within the \l Text object which is the scope of these property changes. @@ -198,11 +156,7 @@ source of the image, the path to the file, is a URL. Therefore the file can be local: \e {mydir/myimage1.png}. Or it can be remote: \e {"http://www.example.com/images/myimage1.png"}. - \code - Image { - source: "images/qt-logo.png" - } - \endcode +\snippet doc/src/snippets/declarative/qml-intro/hello-world4.qml added an image This displays the image, as we would expect, at the top left of the window. The position of the default x = 0, y = 0 coordinate. The example here uses @@ -213,44 +167,12 @@ Let us reposition the image and enlarge it. Place it at the same 'x' offset as the "Hello world again" text, but put it another 50 pixels below the text, also make it 150 by 150 pixels in size, - \code - Image { - source: "images/qt-logo.png" - x: 100; y: 150 - width: 150; height: 150 - } - \endcode +\snippet doc/src/snippets/declarative/qml-intro/hello-world5.qml positioning the image Adding the Hello World example, with the text and the image example we can write a simple piece of QML that starts to look a bit better. - \code - import Qt 4.7 - - Rectangle { - id: myRectangle - width: 500 - height: 400 - - // A light gray background - color: "lightgray" - - // Position and color some text - Text { - text: "

Hello world again

" - color: "darkgreen" - x: 100; y: 100 - } - - // Using the opportunity to resize the image. - Image { - source: "images/qt-logo.png" - x: 100; y: 150 - width: 150; height: 150 - } - - } - \endcode +\quotefile doc/src/snippets/declarative/qml-intro/hello-world5.qml The result is still quite simple @@ -281,22 +203,7 @@ If we want to position an image at the bottom of the rectangle it is inside. I have to specify that the bottom of the image is also at the bottom of the rectangle - \code - import Qt 4.7 - - Rectangle { - id: myWin - width: 500 - height: 400 - - Image { - id: image1 - source: "images/qt-logo.png" - width: 150; height: 150 - anchors.bottom: myWin.bottom - } - } - \endcode +\quotefile doc/src/snippets/declarative/qml-intro/anchors1.qml This places the logo at the bottom left of the window. @@ -315,25 +222,7 @@ the bottomMargin property is used. So the new actions for the script are Encoded into QML the script becomes - \code - import Qt 4.7 - - Rectangle { - id: myWin - width: 500 - height: 400 - - Image { - id: image1 - source: "images/qt-logo.png" - width: 150; height: 150 - anchors.bottom: myWin.bottom - anchors.horizontalCenter: myWin.horizontalCenter - anchors.bottomMargin: 10 - } - } - \endcode - +\quotefile doc/src/snippets/declarative/qml-intro/anchors2.qml Run this and resize the window. You will see that now the position of the image adjusts during the resize. @@ -344,14 +233,7 @@ You can also add another object say a block of descriptive text and place it above or below the image or to the side. This code places some text just above the image - \code - Text { - text: "

The Qt Logo

" - anchors.bottom: image1.top - anchors.horizontalCenter: myWin.horizontalCenter - anchors.bottomMargin: 15 - } - \endcode +\snippet doc/src/snippets/declarative/qml-intro/anchors3.qml adding some text \image qml-intro-anchors3.png @@ -359,17 +241,15 @@ above the image referencing these properties from another object we use the property directly, instead of saying: - \code - myRectangle.anchors.top // Wrong - \endcode +\qml +myRectangle.anchors.top // Wrong +\endqml we use - \code - myRectangle.top // Correct - \endcode - - +\qml +myRectangle.top // Correct +\endqml \section1 Transformations @@ -391,9 +271,9 @@ Rotation of text was also suggested. It could also be useful to scale the text. We can do both. The \l {Item::transform}{transform} property is a \e list of \l Transform elements, so using the list syntax - \code - myList: [ listElement1, listElement2, ... } ] - \endcode +\qml +myList: [ listElement1, listElement2, ... } ] +\endqml we can produce a list of transformations. @@ -402,46 +282,7 @@ vertically by a factor of 1.5 and by 1.2 horizontally. Using the example above as the basis for this we have, - \code - import Qt 4.7 - - Rectangle { - id: myWin - width: 500 - height: 400 - - Image { - id: image1 - source: "images/qt-logo.png" - width: 150; height: 150 - anchors.bottom: myWin.bottom - anchors.horizontalCenter: myWin.horizontalCenter - anchors.bottomMargin: 10 - - transform: Rotation { - origin.x: 75; origin.y: 75 - axis{ x: 0; y: 0; z:1 } angle: -90 - } - - } - - Text { - text: "

The Qt Logo -- taking it easy

" - anchors.bottom: image1.top - anchors.horizontalCenter: myWin.horizontalCenter - anchors.bottomMargin: 15 - - transform: [ - Scale { xScale: 1.5; yScale: 1.2 } , - - Rotation { - origin.x: 75; origin.y: 75 - axis{ x: 0; y: 0; z:1 } angle: -45 - } - ] - } - } - \endcode +\quotefile doc/src/snippets/declarative/qml-intro/transformations1.qml The code block in \c image1 starting with \c transform specifies that the \l {Item::transform}{transform} property will be a Rotation through -90 @@ -479,30 +320,7 @@ from \l Item. The rotation property is a real number that specifies the angle in a clockwise direction for the rotation of the object. Here is the code for our animated rotating image. - \code - import Qt 4.7 - - Rectangle { - id: mainRec - width: 600 - height: 400 - - Image { - id: image1 - source: "images/qt-logo.png" - x: 200; y: 100 - width: 100; height: 100 - - // Animate a rotation - transformOrigin: Item.Center - NumberAnimation on rotation { - from: 0; to: 360 - duration: 2000 - loops: Animation.Infinite - } - } - } - \endcode +\quotefile doc/src/snippets/declarative/number-animation1.qml The \c {transformOrigin: Item.Center} is redundant since this is the default axis of rotation anyway. But if you change \c Center to \c BottomRight you @@ -515,32 +333,7 @@ combination. For example, if the task had been to animate the rotation about the y-axis passing through the center of the image then the following code would do it. - \code - import Qt 4.7 - - Rectangle { - id: mainRec - width: 600 - height: 400 - - Image { - id: image1 - source: "images/qt-logo.png" - x: 200; y: 100 - width: 100; height: 100 - - // Animate a rotation - transform: Rotation { - origin.x: 50; origin.y: 50; axis {x:0; y:1; z:0} angle:0 - NumberAnimation on angle { - from: 0; to: 360; - duration: 3000; - loops: Animation.Infinite - } - } - } - } - \endcode +\quotefile doc/src/snippets/declarative/number-animation2.qml Here there is a rectangle 600 by 400 pixels. Placed within that rectangle is an image 100 by 100 pixels. It is rotated about the center of the image @@ -569,31 +362,7 @@ will be animating the position and the size of the image. First create two images - \code - import Qt 4.7 - - Rectangle { - id: mainRec - width: 600 - height: 400 - z: 0 - - Image { - id: image1 - source: "images/qt-logo.png" - x: 20; y: 20 ; z: 1 - width: 100; height: 100 - } - - Image { - id: image2 - source: "images/qt-logo.png" - width: 100; height: 100 - x: (mainRec.width - 100)/2; y: (mainRec.height - 100)/2 - z: 2 - } - } - \endcode +\quotefile doc/src/snippets/declarative/sequential-animation1.qml We will add to 'image1' a SequentialAnimation from x = 20 to the target of x = 450. The 'from' values will be used because we will be repeating the @@ -606,14 +375,7 @@ between the x values and over a given duration. After the NumberAnimation there will be a PauseAnimation that will pause the animation for 500 milliseconds (half a second) simply for the visual effect. - \code - SequentialAnimation on x { - loops: Animation.Infinite - NumberAnimation { from: 20; to: 450; easing.type: "InOutQuad"; -duration: 2000 } - PauseAnimation { duration: 500 } - } - \endcode +\snippet doc/src/snippets/declarative/sequential-animation2.qml adding a sequential animation A similar block of code is written for the animation of the 'y' value of the position. @@ -628,54 +390,7 @@ and image1 to 1 and image2 to 2 then image2 will be in the foreground and image1 in the background. When image1 passes image2 it will pass behind it. The completed code looks like - \code - Rectangle { - id: mainRec - width: 600 - height: 400 - z: 0 - - Image { - id: image2 - source: "images/qt-logo.png" - width: 100; height: 100 - x: (mainRec.width - 100)/2; y: (mainRec.height - 100)/2 - z: 2 - } - - Image { - id: image1 - source: "images/qt-logo.png" - x: 20; y: 20 ; z: 1 - width: 100; height: 100 - - SequentialAnimation on x { - loops: Animation.Infinite - NumberAnimation { - from: 20; to: 450 - easing.type: "InOutQuad"; duration: 2000 - } - PauseAnimation { duration: 500 } - } - - SequentialAnimation on y { - loops: Animation.Infinite - NumberAnimation { - from: 20; to: 250 - easing.type: "InOutQuad"; duration: 2000 - } - PauseAnimation { duration: 500 } - } - - SequentialAnimation on scale { - loops: Animation.Infinite - NumberAnimation { from: 1; to: 0.5; duration: 1000 } - NumberAnimation { from: 0.5; to: 1; duration: 1000 } - PauseAnimation { duration: 500 } - } - } - } - \endcode +\quotefile doc/src/snippets/declarative/sequential-animation3.qml The \c {easing.type} has many options, expressed as a string. It specifies the kind of equation that describes the acceleration of the property value, not @@ -756,60 +471,7 @@ will be the default state. We will just go to 'night' by clicking and holding the left mouse button down, releasing the mouse button will reverse the process - \code - import Qt 4.7 - - Rectangle { - id: mainRectangle - width: 600 - height: 400 - color: "black" - - Rectangle { - id: sky - width: 600 - height: 200 - y: 0 - color: "lightblue" - } - - Rectangle { - id: ground - width: 600; height: 200 - y: 200 - color: "green" - } - - MouseArea { - id: mousearea - anchors.fill: mainRectangle - } - - states: [ State { - name: "night" - when: mousearea.pressed == true - PropertyChanges { target: sky; color: "darkblue" } - PropertyChanges { target: ground; color: "black" } - }, - State { - name: "daylight" - when: mousearea.pressed == false - PropertyChanges { target: sky; color: "lightblue" } - PropertyChanges { target: ground; color: "green" } - } - ] - - transitions: [ Transition { - from: "daylight"; to: "night" - ColorAnimation { duration: 1000 } - }, - Transition { - from: "night"; to: "daylight" - ColorAnimation { duration: 500 } - } - ] - } - \endcode +\quotefile doc/src/snippets/declarative/states1.qml Several new things appear in this sample. Firstly, we use a \l MouseArea element to detect mouse clicks in the \e mainRectangle. Secondly, we use diff --git a/doc/src/declarative/qtprogrammers.qdoc b/doc/src/declarative/qtprogrammers.qdoc index 68d56bf..c0639db 100644 --- a/doc/src/declarative/qtprogrammers.qdoc +++ b/doc/src/declarative/qtprogrammers.qdoc @@ -26,10 +26,9 @@ ****************************************************************************/ /*! - \page qtprogrammers.html \target qtprogrammers -\title QML for Qt programmers +\title QML for Qt Programmers \section1 Overview diff --git a/doc/src/external-resources.qdoc b/doc/src/external-resources.qdoc index e901124c..61620f5 100644 --- a/doc/src/external-resources.qdoc +++ b/doc/src/external-resources.qdoc @@ -428,3 +428,18 @@ \externalpage http://developer.symbian.org/wiki/index.php/Deploying_a_Qt_Application \title Deploying a Qt Application article */ + +/*! + \externalpage http://www.ecma-international.org/publications/standards/Ecma-262.htm + \title ECMAScript Language Specification +*/ + +/*! + \externalpage https://developer.mozilla.org/en/JavaScript + \title JavaScript +*/ + +/*! + \externalpage https://developer.mozilla.org/en/JavaScript/About_JavaScript + \title About JavaScript +*/ diff --git a/doc/src/getting-started/demos.qdoc b/doc/src/getting-started/demos.qdoc index ef16224..719c861 100644 --- a/doc/src/getting-started/demos.qdoc +++ b/doc/src/getting-started/demos.qdoc @@ -46,7 +46,7 @@ \o \inlineimage qtdemo-small.png \o If you run the \l{Examples and Demos Launcher}, you'll see many of Qt's widgets in action. - + The \l{Qt Widget Gallery} also provides overviews of selected Qt widgets in each of the styles used on various supported platforms. \endtable @@ -134,15 +134,23 @@ \section1 QtWebKit \list - \o \l{Web Browser} demonstrates how Qt's \l{QtWebKit Module}{WebKit module} - can be used to implement a small Web browser. + \o \l{Web Browser} demonstrates how Qt's \l{QtWebKit} module can be used to + implement a small Web browser. + \endlist + + \section1 Multimedia + + \list + \o \l{demos/spectrum}{Spectrum Analyser} shows how the \l{QtMultimedia} + module can be used to manipulate audio as it is played. \endlist \section1 Phonon \list - \o \l{demos/qmediaplayer}{Media Player} demonstrates how the \l{Phonon Module} can be - used to implement a basic media player application. + \o \l{demos/qmediaplayer}{Media Player} demonstrates how the + \l{Phonon Module}{Phonon module} can be used to implement a basic media player + application. \endlist \note The Phonon demos are currently not available for the MinGW platform. diff --git a/doc/src/getting-started/gettingstartedqml.qdoc b/doc/src/getting-started/gettingstartedqml.qdoc index 2bfb71c..885e6ce 100644 --- a/doc/src/getting-started/gettingstartedqml.qdoc +++ b/doc/src/getting-started/gettingstartedqml.qdoc @@ -26,1025 +26,1025 @@ ****************************************************************************/ /*! - \page qml-textEditor.html - - \title Getting Started programming with QML - \ingroup gettingStarted - - Welcome to the world of QML - the declarative UI language. In this Getting - Started guide, we will create a simple text editor application using QML. - After reading this guide, you should be ready to develop your own applications - using QML and Qt C++. - - \section1 QML to Build User Interfaces - - The application we are building is a simple text editor that will load, save, - and perform some text manipulation. This guide will consist of two parts. The - first part will involve designing the application layout and behaviors using - declarative language in QML. For the second part, file loading and saving will - be implemented using Qt C++. Using - \l {The Meta-Object System}{Qt's Meta-Object System}, we can expose C++ functions - as properties that QML elements can use. Utilizing QML and Qt C++, we can - efficiently decouple the interface logic from the application logic. - - \image qml-texteditor5_editmenu.png - - To run the QML example code, merely provide the included \l{QML Viewer}{qmlviewer} - tool with the QML file as the argument. The C++ portion of this tutorial assumes - that the reader possesses basic knowledge of Qt's compilation procedures. - - Tutorial chapters: - \list 1 - \o \l {Defining a Button and a Menu}{Defining a Button and a Menu} - \o \l {Implementing a Menu Bar}{Implementing a Menu Bar} - \o \l {Building a Text Editor}{Building a Text Editor} - \o \l {Decorating the Text Editor}{Decorating the Text Editor} - \o \l {Extending QML using Qt C++}{Extending QML using Qt C++} - \endlist - - \section1 Defining a Button and a Menu - - \section2 Basic Component - a Button - - We start our text editor by building a button. Functionally, a button has a mouse - sensitive area and a label. Buttons perform actions when a user presses the button. - - In QML, the basic visual item is the \l {Rectangle}{Rectangle} element. The - \c Rectangle element has properties to control the element's appearance and location. - - \code - import Qt 4.7 - Rectangle { - id: simplebutton - color: "grey" - width: 150; height: 75 - - Text{ - id: buttonLabel - anchors.centerIn: parent - text: "button label" - } - } - \endcode - - First, the \c { import Qt 4.7 } allows the qmlviewer tool to import the QML elements - we will later use. This line must exist for every QML file. Notice that the version - of Qt modules is included in the import statement. - - This simple rectangle has a unique identifier, \c simplebutton, which is bound to the - id property. The \c Rectangle element's properties are bound to values by listing the - property, followed by a colon, then the value. In the code sample, the color \c grey - is bound to the the Rectangle's \c color property. Similarly, we bind the \c width - and \c height of the Rectangle. - - The \l {Text}{Text} element is a non-editable text field. We name this \c Text element - \c buttonLabel. To set the string content of the Text field, we bind a value to the - \c text property. The label is contained within the Rectangle and in order to center - it in the middle, we assign the \c anchors of the Text element to its parent, which - is called \c simplebutton. Anchors may bind to other items' anchors, allowing layout - assignments simpler. - - We shall save this code as \c SimpleButton.qml. Running qmlviewer with the file as the - argument will display the grey rectangle with a text label. - - \image qml-texteditor1_simplebutton.png - - To implement the button click functionality, we can use QML's event handling. QML's event - handling is very similar to \l {Signals & Slots}{Qt's signal and slot} mechanism. Signals - are emitted and the connected slot is called. - - \code - Rectangle{ - id:simplebutton - ... - - MouseArea{ - id: buttonMouseArea - - anchors.fill: parent //anchor all sides of the mouse area to the rectangle's anchors - //onClicked handles valid mouse button clicks - onClicked: console.log(buttonLabel.text + " clicked" ) - } - } - \endcode - - We include a \l{MouseArea} element in our simplebutton. \c MouseArea elements describe - the interactive area where mouse movements are detected. For our button, we anchor the - whole MouseArea to its parent, which is \c simplebutton. The \c anchors.fill syntax is - one way of accessing a specific property called \c fill inside a group of properties - called \c anchors. QML uses \l {Anchor-based Layout in QML}{anchor based layouts} where - items can anchor to another item, creating robust layouts. - - The \c MouseArea has many signal handlers that are called during mouse movements within - the specfied \c MouseArea boundaries. One of them is \c onClicked and it is called - whenever the acceptable mouse button is clicked, the left click being the default. We - can bind actions to the onClicked handler. In our example, \c console.log() outputs text - whenever the mouse area is clicked. The function \c console.log() is a useful tool for - debugging purposes and for outputting text. - - The code in \c SimpleButton.qml is sufficient to display a button on the screen and - output text whenever it is clicked with a mouse. - - \code - Rectangle { - id:Button - ... - - property color buttonColor: "lightblue" - property color onHoverColor: "gold" - property color borderColor: "white" - - signal buttonClick() - onButtonClick: { - console.log(buttonLabel.text + " clicked" ) - } - - MouseArea{ - onClicked: buttonClick() - hoverEnabled: true - onEntered: parent.border.color = onHoverColor - onExited: parent.border.color = borderColor - } - - //determines the color of the button by using the conditional operator - color: buttonMouseArea.pressed ? Qt.darker(buttonColor, 1.5) : buttonColor - } - \endcode - - A fully functioning button is in \c Button.qml. The code snippets in this article - have some code omitted, denoted by ellipses because they were either introduced - earlier in the previous sections or irrelevant to the current code discussion. - - Custom properties are declared using the \c {property type name} syntax. In the - code, the property \c buttonColor, of type \c color, is declared and bound to - the value \c{"lightblue"}. The \c buttonColor is later used in a conditional - operation to determine the buttons's fill color. Note that property value - assignment is possible using the \c= equals sign, in addition to value binding - using the \c : colon character. Custom properties allow internal items to be - accessible outside of the Rectangle's scope. There are basic - \l{QML Basic Types}{QML types} such as \c int, \c string, \c real, as well as - a type called \c variant. - - By binding the \c onEntered and \c onExited signal handlers to colors, the - button's border will turn yellow when the mouse hovers above the button and - reverts the color when the mouse exits the mouse area. - - A \c buttonClick() signal is declared in \c Button.qml by placing the \c signal - keyword in front of the signal name. All signals have their handlers automatically - created, their names starting with \c on. As a result, the \c onButtonClick is - \c buttonClick's handler. The \c onButtonClick is then assigned an action to - perform. In our button example, the \c onClicked mouse handler will simply call - \c onButtonClick, which displays a text. The \c onButtonClick enables outside - objects to access the \c {Button}'s mouse area easily. For example, items may - have more than one \c MouseArea declarations and a \c buttonClick signal can - make the distinction between the several \c MouseArea signal handlers better. - - We now have the basic knowledge to implement items in QML that can handle - basic mouse movements. We created a \c Text label inside a \c Rectangle, - customized its properties, and implemented behaviors that respond to mouse - movements. This idea of creating elements within elements is repeated - throughout the text editor application. - - This button is not useful unless used as a component to perform an action. - In the next section, we will soon create a menu containing several of these - buttons. - - \image qml-texteditor1_button.png - - \section2 Creating a Menu Page - - Up to this stage, we covered how to create elements and assign behaviors inside - a single QML file. In this section, we will cover how to import QML elements and how - to reuse some of the created components to build other components. - - Menus display the contents of a list, each item having the ability to perform an action. - In QML, we can create a menu in several ways. First, we will create a menu containing - buttons which will eventually perform different actions. The menu code is in - \c FileMenu.qml. - - \code - import Qt 4.7 \\import the main Qt QML module - import “folderName” \\import the contents of the folder - import “Button.qml” \\import a QML file - import “NewButton.qml” as ButtonModule \\import a QML file and give it a name - import “script.js” as Script \\import a Javascript file and name it as Script - \endcode - - To use the \c Button element in \c FileMenu.qml, we need to import \c Button.qml. - The syntax shown above, shows how to use the \c import keyword. However, the - \c {import Button.qml} is not necessary; qmlviewer will import all the contents - of the current directory. We can directly create a \c Button element by declaring - \c Button{}, similar to a \c Rectangle{} declaration. - - \code - In FileMenu.qml: - - Row{ - anchors.centerIn: parent - spacing: parent.width/6 - - Button{ - id: loadButton - buttonColor: "lightgrey" - label: "Load" - } - Button{ - buttonColor: "grey" - id: saveButton - label: "Save" - } - Button{ - id: exitButton - label: "Exit" - buttonColor: "darkgrey" - - onButtonClick: Qt.quit() - } - } - \endcode - - In \c FileMenu.qml, we declare three \c Button elements. They are declared - inside a \l {Row}{Row} element, a positioner that will position its children - along a vertical row. The \c Button declaration resides in Button.qml, - which is the same as the \c Button.qml we used in the previous section. - New property bindings can be declared within the newly created buttons, - effectively overwriting the properties set in \c Button.qml. The button - called \c exitButton will quit and close the window when it is clicked. - Note that the signal handler \c onButtonClick in \c Button.qml will be - called in addition to the \c onButtonClick handler in \c exitButton. - - \image qml-texteditor1_filemenu.png - - The \c Row declaration is declared in a \c Rectangle, creating a rectangle - container for the row of buttons. This additional rectangle creates an indirect - way of organizing the row of buttons inside a menu. - - The declaration of the edit menu is very similar at this stage. The menu has - buttons that have the labels: \c Copy, \c Paste, and \c {Select All}. - - \image qml-texteditor1_editmenu.png - - Armed with our knowledge of importing and customizing previously made - components, we may now combine these menu pages to create a menu bar, - consisting of buttons to select the menu, and look at how we may structure - data using QML. - - \section1 Implementing a Menu Bar - - Our text editor application will need a way to display menus using a menu bar. - The menu bar will switch the different menus and the user can choose which menu - to display. Menu switching implies that the menus need more structure than - merely displaying them in a row. QML uses models and views to structure data - and display the structured data. - - \section2 Using Data Models and Views - - QML has different \l {Data Models}{data views} that display - \l {Data Models}{data models}. Our menu bar will display the menus in a list, - with a header that displays a row of menu names. The list of menus are declared - inside a \c VisualItemModel. The \l{VisualItemModel}{\c VisualItemModel} - element contains items that already have views such as \c Rectangle elements - and imported UI elements. Other model types such as the \l {ListModel}{\c ListModel} - element need a delegate to display their data. - - We declare two visual items in the \c menuListModel, the \c FileMenu and the - \c EditMenu. We customize the two menus and display them using a - \l {ListView}{ListView}. The \c MenuBar.qml file contains the QML declarations - and a simple edit menu is defined in \c EditMenu.qml. - - \code - VisualItemModel{ - id: menuListModel - FileMenu{ - width: menuListView.width - height: menuBar.height - color: fileColor - } - EditMenu{ - color: editColor - width: menuListView.width - height: menuBar.height - } - } - \endcode - - The \l {ListView}{ListView} element will display a model according to a delegate. - The delegate may declare the model items to display in a \c Row element or display - the items in a grid. Our \c menuListModel already has visible items, therefore, - we do not need to declare a delegate. - - \code - ListView{ - id: menuListView - - //Anchors are set to react to window anchors - anchors.fill:parent - anchors.bottom: parent.bottom - width:parent.width - height: parent.height - - //the model contains the data - model: menuListModel - - //control the movement of the menu switching - snapMode: ListView.SnapOneItem - orientation: ListView.Horizontal - boundsBehavior: Flickable.StopAtBounds - flickDeceleration: 5000 - highlightFollowsCurrentItem: true - highlightMoveDuration:240 - highlightRangeMode: ListView.StrictlyEnforceRange - } - \endcode - - Additionally, \c ListView inherits from \l {Flickable}{\c Flickable}, making - the list respond to mouse drags and other gestures. The last portion of the - code above sets \c Flickable properties to create the desired flicking movement - to our view. In particular,the property \c highlightMoveDuration changes the - duration of the flick transition. A higher \c highlightMoveDuration value - results in slower menu switching. - - The \c ListView maintains the model items through an \c index and each visual - item in the model is accessible through the \c index, in the order of the - declaration. Changing the \c currentIndex effectively changes the highlighted - item in the \c ListView. The header of our menu bar exemplify this effect. - There are two buttons in a row, both changing the current menu when clicked. - The \c fileButton changes the current menu to the file menu when clicked, - the \c index being \c 0 because \c FileMenu is declared first in the - \c menuListModel. Similarly, the \c editButton will change the current - menu to the \c EditMenu when clicked. - - The \c labelList rectangle has \c z value of \c 1, denoting that it is displayed - at the front of the menu bar. Items with higher \c z values are displayed in front - of items with lower \c z values. The default \c z value is \c 0. - - \code - Rectangle{ - id: labelList - ... - z: 1 - Row{ - anchors.centerIn: parent - spacing:40 - Button{ - label: "File" - id: fileButton - ... - onButtonClick: menuListView.currentIndex = 0 - } - Button{ - id: editButton - label: "Edit" - ... - onButtonClick: menuListView.currentIndex = 1 - } - } - } - \endcode - - The menu bar we just created can be flicked to access the menus or by clicking - on the menu names at the top. Switching menu screens feel intuitive and responsive. - - \image qml-texteditor2_menubar.png - - */ - - /*! - \page qml-textEditor3.html - \title Building a Text Editor - - \section1 Declaring a TextArea - - Our text editor is not a text editor if it didn't contain an editable text area. - QML's \l {TextEdit}{TextEdit} element allows the declaration of a multi-line - editable text area. \l {TextEdit}{TextEdit} is different from a \l {Text}{Text} - element, which doesn't allow the user to directly edit the text. - - \code - TextEdit{ - id: textEditor - anchors.fill:parent - width:parent.width; height:parent.height - color:"midnightblue" - focus: true - - wrapMode: TextEdit.Wrap - - onCursorRectangleChanged: flickArea.ensureVisible(cursorRectangle) - } - \endcode - - The editor has its font color property set and set to wrap the text. The - \c TextEdit area is inside a flickable area that will scroll the text if the - text cursor is outside the visible area. The function \c ensureVisible() will - check if the cursor rectangle is outside the visible boundaries and move the - text area accordingly. QML uses Javascript syntax for its scripts, and as previously - mentioned, Javascript files can be imported and used within a QML file. - - \code - function ensureVisible(r){ - if (contentX >= r.x) - contentX = r.x; - else if (contentX+width <= r.x+r.width) - contentX = r.x+r.width-width; - if (contentY >= r.y) - contentY = r.y; - else if (contentY+height <= r.y+r.height) - contentY = r.y+r.height-height; - } - \endcode - - \section1 Combining Components for the Text Editor - - We are now ready to create the layout of our text editor using QML. The text - editor has two components, the menu bar we created and the text area. QML allows - us to reuse components, therefore making our code simpler, by importing components - and customizing when necessary. Our text editor splits the window into two; - one-third of the screen is dedicated to the menu bar and two-thirds of the screen - displays the text area. The menu bar is displayed in front of any other elements. - - \code - Rectangle{ - - id: screen - width: 1000; height: 1000 - - //the screen is partitioned into the MenuBar and TextArea. 1/3 of the screen is assigned to the MenuBar - property int partition: height/3 - - MenuBar{ - id:menuBar - height: partition - width:parent.width - z: 1 - } - - TextArea{ - id:textArea - anchors.bottom:parent.bottom - y: partition - color: "white" - height: partition*2 - width:parent.width - } - } - \endcode - - By importing reusable components, our \c TextEditor code looks much simpler. - We can then customize the main application, without worrying about properties - that already have defined behaviors. Using this approach, application layouts - and UI components can be created easily. - - \image qml-texteditor3_texteditor.png - - */ - - /*! - \page qml-textEditor4 - \title Decorating the Text Editor - \section1 Implementing a Drawer Interface - - Our text editor looks simple and we need to decorate it. Using QML, we can declare - transitions and animate our text editor. Our menu bar is occupying one-third of the - screen and it would be nice to have it only appear when we want it. - - We can add a drawer interface, that will contract or expand the menu bar when clicked. - In our implementation, we have a thin rectangle that responds to mouse clicks. The - \c drawer, as well as the application, has two sates: the "drawer is open" state and - the "drawer is closed" state. The \c drawer item is a strip of rectangle with a small - height. There is a nested \l {Image}{Image} element declaring that an arrow icon will - be centered inside the drawer. The drawer assigns a state to the whole application, - with the identifier \c screen, whenever a user clicks the mouse area. - - \code - Rectangle{ - id:drawer - height:15 - - Image{ - id: arrowIcon - source: "images/arrow.png" - anchors.horizontalCenter: parent.horizontalCenter - } - - MouseArea{ - id: drawerMouseArea - anchors.fill:parent - onClicked:{ - if (screen.state == "DRAWER_CLOSED"){ - screen.state = "DRAWER_OPEN" - } - else if (screen.state == "DRAWER_OPEN"){ - screen.state = "DRAWER_CLOSED" - } - } - ... - } - } - \endcode - - A state is simply a collection of configurations and it is declared in a - \l{State}{State} element. A list of states can be listed and bound to the - \c states property. In our application, the two states are called - \c DRAWER_CLOSED and \c DRAWER_OPEN. Item configurations are declared in - \l {PropertyChanges}{PropertyChanges} elements. In the \c DRAWER_OPEN state, - there are four items that will receive property changes. The first target, - \c menuBar, will change its \c y property to \c 0. Similarly, the \c textArea - will lower to a new position when the state is \c DRAWER_OPEN. The \c textArea, - the \c drawer, and the drawer's icon will undergo property changes to meet the - current state. - - \code - - states:[ - State{ - name: "DRAWER_OPEN" - PropertyChanges { target: menuBar; y:0} - PropertyChanges { target: textArea; y: partition + drawer.height} - PropertyChanges { target: drawer; y: partition} - PropertyChanges { target: arrowIcon; rotation: 180} - }, - State{ - name: "DRAWER_CLOSED" - PropertyChanges { target: menuBar; y:-partition} - PropertyChanges { target: textArea; y: drawer.height; height: screen.height - drawer.height} - PropertyChanges { target: drawer; y: 0} - PropertyChanges { target: arrowIcon; rotation: 0} - } - - ] - - \endcode - - State changes are abrupt and needs smoother transitions. Transitions between states - are defined using the \l {Transition}{Transition} element, which can then bind to - the item's \c transitions property. Our text editor has a state transition whenever - the state changes to either \c DRAWER_OPEN or \c DRAWER_CLOSED. Importantly, the - transition needs a \c from and a \c to state but for our transitions, we can use - the wild card \c * symbol to denote that the transition applies to all state changes. - - During transitions, we can assign animations to the property changes. Our - \c menuBar switches position from \c {y:0} to \c {y:-partition} and we can animate - this transition using the \l {NumberAnimation}{NumberAnimation} element. We declare - that the targets' properties will animate for a certain duration of time and using - a certain easing curve. An easing curve controls the animation rates and - interpolation behavior during state transitions. The easing curve we chose is - \l {PropertyAnimation::easing.type}{Easing.OutQuint}, which slows the movement near - the end of the animation. Pleae read \l {qdeclarativeanimation.html}{QML's Animation} - article. - - \code - transitions: [ - Transition{ - to: "*" - NumberAnimation { target: textArea; properties: "y, height"; duration: 100; easing.type: Easing.OutQuint } - NumberAnimation { target: menuBar; properties: "y"; duration: 100;easing.type: Easing.OutQuint } - NumberAnimation { target: drawer; properties: "y"; duration: 100;easing.type: Easing.OutQuint } - } - ] - \endcode - - Another way of animating property changes is by declaring a \l {Behavior}{Behavior} - element. A transition only works during state changes and \c Behavior can set an - animation for a general property change. In the text editor, the arrow has a - \c NumberAnimation animating its \c rotation property whenever the property changes. - - \code - In TextEditor.qml: - - Behavior{ - NumberAnimation{property: "rotation";easing.type: Easing.OutExpo } - } - \endcode - - Going back to our components with knowledge of states and animations, we can improve - the appearances of the components. In \c Button.qml, we can add \c color and \c scale - property changes when the button is clicked. Color types are animated using - \l {ColorAnimation}{ColorAnimation} and numbers are animated using - \l {NumberAnimation}{NumberAnimation}. The \c {on propertyName} syntax displayed below - is helpful when targeting a single property. - - \code - In Button.qml: - ... - - color: buttonMouseArea.pressed ? Qt.darker(buttonColor, 1.5) : buttonColor - Behavior on color { ColorAnimation{ duration: 55} } - - scale: buttonMouseArea.pressed ? 1.1 : 1.00 - Behavior on scale { NumberAnimation{ duration: 55} } - \endcode - - Additionally, we can enhance the appearances of our QML components by adding color - effects such as gradients and opacity effects. Declaring a \l {Gradient}{Gradient} - element will override the \c color property of the element. You may declare a color - in the gradient using the \l {GradientStop}{GradientStop} element. The gradient is - positioned using a scale, between \c 0.0 and \c 1.0. - - \code - In MenuBar.qml - gradient: Gradient { - GradientStop { position: 0.0; color: "#8C8F8C" } - GradientStop { position: 0.17; color: "#6A6D6A" } - GradientStop { position: 0.98;color: "#3F3F3F" } - GradientStop { position: 1.0; color: "#0e1B20" } - } - \endcode - - This gradient is used by the menu bar to display a gradient simulating depth. - The first color starts at \c 0.0 and the last color is at \c 1.0. - - - \section2 Where to Go from Here - - We are finished building the user interface of a very simple text editor. - Going forward, the user interface is complete, and we can implement the - application logic using regular Qt and C++. QML works nicely as a prototyping - tool, separating the application logic away from the UI design. - - \image qml-texteditor4_texteditor.png - - \section1 Extending QML using Qt C++ - - Now that we have our text editor layout, we may now implement the text editor - functionalities in C++. Using QML with C++ enables us to create our application - logic using Qt. We can create a QML context in a C++ application using the - \l {Using QML in C++ Applications}{Qt's Declarative} classes and display the QML - elements using a Graphics Scene. Alternatively, we can export our C++ code into - a plugin that the \l {QML Viewer}{qmlviewer} tool can read. For our application, - we shall implement the load and save functions in C++ and export it as a plugin. - This way, we only need to load the QML file directly instead of running an executable. - - \section2 Exposing C++ Classes to QML - - We will be implementing file loading and saving using Qt and C++. C++ classes - and functions can be used in QML by registering them. The class also needs to be - compiled as a Qt plugin and the QML file will need to know where the plugin is located. - - For our application, we need to create the following items: - \list 1 - \o \c Directory class that will handle directory related operations - \o \c File class which is a QObject, simulating the list of files in a directory - \o plugin class that will register the class to the QML context - \o Qt project file that will compile the plugin - \o A \c qmldir file telling the qmlviewer tool where to find the plugin - \endlist - - \section2 Building a Qt Plugin - - To build a plugin, we need to set the following in a Qt project file. First, - the necessary sources, headers, and Qt modules need to be added into our - project file. All the C++ code and project files are in the \c filedialog - directory. - - \code - In cppPlugins.pro: - - TEMPLATE = lib - CONFIG += qt plugin - QT += declarative - - DESTDIR += ../plugins - OBJECTS_DIR = tmp - MOC_DIR = tmp - - TARGET = FileDialog - - HEADERS += directory.h \ - file.h \ - dialogPlugin.h - - SOURCES += directory.cpp \ - file.cpp \ - dialogPlugin.cpp - \endcode - - In particular, we compile Qt with the \c declarative module and configure it as a - \c plugin, needing a \c lib template. We shall put the compiled plugin into the - parent's \c plugins directory. - - - \section2 Registering a Class into QML - - \code - In dialogPlugin.h: - - #include - - class DialogPlugin : public QDeclarativeExtensionPlugin - { - Q_OBJECT - - public: - void registerTypes(const char *uri); - - }; - - \endcode - Our plugin class, \c DialogPlugin is a subclass of \l {QDeclarativeExtensionPlugin}{QDeclarativeExtensionPlugin}. We need to implement the inherited function, \l {QDeclarativeExtensionPlugin::registerTypes}{registerTypes}. The \c dialogPlugin.cpp file looks like this: - - \code - DialogPlugin.cpp: - - #include "dialogPlugin.h" - #include "directory.h" - #include "file.h" - #include - - void DialogPlugin::registerTypes(const char *uri){ - - qmlRegisterType(uri, 1, 0, "Directory"); - qmlRegisterType(uri, 1, 0,"File"); - } - - Q_EXPORT_PLUGIN2(FileDialog, DialogPlugin); - \endcode - - The \l {QDeclarativeExtensionPlugin::registerTypes}{registerTypes} - function registers our File and Directory classes into QML. This function - needs the class name for its template, a major version number, a minor version - number, and a name for our classes. - - We need to export the plugin using the \l {Q_EXPORT_PLUGIN2}{Q_EXPORT_PLUGIN2} - macro. Note that in our \c dialogPlugin.h file, we have the \l {Q_OBJECT}{Q_OBJECT} - macro at the top of our class. As well, we need to run \c qmake on the project - file to generate the necessary meta-object code. - - - \section2 Creating QML Properties in a C++ class - - We can create QML elements and properties using C++ and - \l {The Meta-Object System}{Qt's Meta-Object System}. We can implement - properties using slots and signals, making Qt aware of these properties. - These properties can then be used in QML. - - For the text editor, we need to be able to load and save files. Typically, - these features are contained in a file dialog. Fortunately, we can use - \l {QDir}{QDir}, \l {QFile}{QFile}, and \l {QTextStream}{QTextStream} to - implement directory reading and input/output streams. - - \code - class Directory : public QObject{ - - Q_OBJECT - - Q_PROPERTY(int filesCount READ filesCount CONSTANT) - Q_PROPERTY(QString filename READ filename WRITE setFilename NOTIFY filenameChanged) - Q_PROPERTY(QString fileContent READ fileContent WRITE setFileContent NOTIFY fileContentChanged) - Q_PROPERTY(QDeclarativeListProperty files READ files CONSTANT ) - - ... - \endcode - - The \c Directory class uses Qt's Meta-Object System to register properties it - needs to accomplish file handling. The \c Directory class is exported as a plugin - and is useable in QML as the \c Directory element. Each of the listed properties - using the \l {Q_PROPERTY()}{Q_PROPERTY} macro is a QML property. - - The \l {Q_PROPERTY()} {Q_PROPERTY} declares a property as well as its read and - write functions into Qt's Meta-Object System. For example, the \c filename - property, of type \l {QString}{QString}, is readable using the \c filename() - function and writable using the function \c setFilename(). Additionally, there - is a signal associated to the filename property called \c filenameChanged(), - which is emitted whenever the property changes. The read and write functions - are declared as \c public in the header file. - - Similarly, we have the other properties declared according to their uses. The - \c filesCount property indicates the number of files in a directory. The filename - property is set to the currently selected file's name and the loaded/saved file - content is stored in \c fileContent property. - - \code - Q_PROPERTY(QDeclarativeListProperty files READ files CONSTANT ) - \endcode - - The \c files list property is a list of all the filtered files in a directory. - The \c Directory class is implemented to filter out invalid text files; only - files with a \c .txt extension are valid. Further, \l {QLists}{QLists} can be - used in QML files by declaring them as a \c QDeclarativeListProperty in C++. - The templated object needs to inherit from a \l {QObject}{QObject}, therefore, - the \c File class must also inherit from \c QObject. In the \c Directory class, - the list of \c File objects is stored in a \c QList called \c m_fileList. - - \code - class File : public QObject{ - - Q_OBJECT - Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged) - - ... - }; - \endcode - - The properties can then be used in QML as part of the \c Directory element's - properties. Note that we do not have to create an identifier \c id property - in our C++ code. - - \code - Directory{ - id: directory - - filesCount - filename - fileContent - files - - files[0].name - } - - \endcode - - Because QML uses Javascript's syntax and structure, we can iterate through - the list of files and retrieve its properties. To retrieve the first file's - name property, we can call \c { files[0].name }. - - Regular C++ functions are also accessible from QML. The file loading and saving - functions are implemented in C++ and declared using the - \l {Q_INVOKABLE}{Q_INVOKABLE} macro. Alternatively, we can declare the functions - as a \c slot and the functions will be accessible from QML. - - \code - In Directory.h: - - Q_INVOKABLE void saveFile(); - Q_INVOKABLE void loadFile(); - \endcode - - The \c Directory class also has to notify other objects whenever the directory - contents change. This feature is performed using a \c signal. As previously - mentioned, QML signals have a corresponding handler with their names prepended - with \c on. The signal is called \c directoryChanged and it is emitted whenever - there is a directory refresh. The refresh simply reloads the directory contents - and updates the list of valid files in the directory. QML items can then be - notified by attaching an action to the \c onDirectoryChanged signal handler. - - The \c list properties need to be explored further. This is because list - properties use callbacks to access and modify the list contents. The list - property is of type \c QDeclarativeListProperty. Whenever the list - is accessed, the accessor function needs to return a - \c QDeclarativeListProperty. The template type, \c File, needs to be a - \c QObject derivative. Further, to create the - \l {QDeclarativeListProperty}{QDeclarativeListProperty}, the list's accessor - and modifiers need to be passed to the consructor as function pointers. The list, - a \c QList in our case, also needs to be a list of \c File pointers. - - The constructor of \l {QDeclarativeListProperty}{QDeclarativeListProperty} - constructor and the \c Directory implementation: - \code - QDeclarativeListProperty ( QObject * object, void * data, AppendFunction append, CountFunction count = 0, AtFunction at = 0, ClearFunction clear = 0 ) - QDeclarativeListProperty( this, &m_fileList, &appendFiles, &filesSize, &fileAt, &clearFilesPtr ); - \endcode - - The constructor passes pointers to functions that will append the list, count - the list, retrieve the item using an index, and empty the list. Only the append - function is mandatory. Note that the function pointers must match the definition - of \l {QDeclarativeListProperty::AppendFunction}{AppendFunction}, - \l {QDeclarativeListProperty::CountFunction}{CountFunction}, - \l {QDeclarativeListProperty::AtFunction}{AtFunction}, or - \l {QDeclarativeListProperty::ClearFunction}{ClearFunction}. - - \code - void appendFiles(QDeclarativeListProperty * property, File * file) - File* fileAt(QDeclarativeListProperty * property, int index) - int filesSize(QDeclarativeListProperty * property) - void clearFilesPtr(QDeclarativeListProperty *property) - \endcode - - To simplify our file dialog, the \c Directory class filters out invalid text - files, which are files that do not have a \c .txt extension. If a file name - doesn't have the \c .txt extension, then it won't be seen in our file dialog. - Also, the implementation makes sure that saved files have a \c .txt extension in - the file name. \c Directory uses \l {QTextStream}{QTextStream} to read the file - and to output the file contents to a file. - - With our \c Directory element, we can retrieve the files as a list, know how many - text files is in the application directory, get the file's name and content as a - string, and be notified whenever there are changes in the directory contents. - - To build the plugin, run \c qmake on the \c cppPlugins.pro project file, then run - \c make to build and transfer the plugin to the \c plugins directory. - - - \section2 Importing a Plugin in QML - - The qmlviewer tool imports files that are in the same directory as the - application. We can also create a \c qmldir file containing the locations of - QML files we wish to import. The \c qmldir file can also store locations of - plugins and other resources. - - \code - In qmldir: - - Button ./Button.qml - FileDialog ./FileDialog.qml - TextArea ./TextArea.qml - TextEditor ./TextEditor.qml - EditMenu ./EditMenu.qml - - plugin FileDialog plugins - \endcode - - The plugin we just created is called \c FileDialog, as indicated by the - \c TARGET field in the project file. The compiled plugin is in the \c plugins directory. - - - \section2 Integrating a File Dialog into the File Menu - - Our \c FileMenu needs to display the \c FileDialog element, containing a list of - the text files in a directory thus allowing the user to select the file by - clicking on the list. We also need to assign the save, load, and new buttons - to their respective actions. The FileMenu contains an editable text input to - allow the user to type a file name using the keyboard. - - The \c Directory element is used in the \c FileMenu.qml file and it notifies the - \c FileDialog element that the directory refreshed its contents. This notification - is performed in the signal handler, \c onDirectoryChanged. - - \code - In FileMenu.qml: - - Directory{ - id:directory - filename: textInput.text - onDirectoryChanged: fileDialog.notifyRefresh() - } - \endcode - - Keeping with the simplicity of our application, the file dialog will always be - visible and will not display invalid text files, which do not have a \c .txt - extension to their filenames. - - \code - In FileDialog.qml: - - signal notifyRefresh() - onNotifyRefresh: dirView.model = directory.files - \endcode - - The \c FileDialog element will display the contents of a directory by reading its - list property called \c files. The files are used as the model of a - \l {GridView}{GridView} element, which displays data items in a grid according - to a delegate. The delegate handles the appearance of the model and our file - dialog will simply create a grid with text centered in the middle. Clicking on - the file name will result in the appearance of a rectangle to highlight the file - name. The \c FileDialog is notified whenever the \c notifyRefresh signal is emitted, - reloading the files in the directory. - - \code - In FileMenu.qml: - - Button{ - id: newButton - label: "New" - onButtonClick:{ - textArea.textContent = "" - } - } - Button{ - id: loadButton - label: "Load" - onButtonClick:{ - directory.filename = textInput.text - directory.loadFile() - textArea.textContent = directory.fileContent - } - } - Button{ - id: saveButton - label: "Save" - onButtonClick:{ - directory.fileContent = textArea.textContent - directory.filename = textInput.text - directory.saveFile() - } - } - Button{ - id: exitButton - label: "Exit" - onButtonClick:{ - Qt.quit() - } - } - \endcode - - Our \c FileMenu can now connect to their respective actions. The \c saveButton - will transfer the text from the \c TextEdit onto the directory's \c fileContent - property, then copy its file name from the editable text input. Finally, the button - calls the \c saveFile() function, saving the file. The \c sloadButton has a similar - execution. Also, the \c New action will empty the contents of the \c TextEdit. - - Further, the \c EditMenu buttons are connected to the \c TextEdit functions to copy, - paste, and select all the text in the text editor. - - \image qml-texteditor5_filemenu.png - - \section1 Text Editor Completion - - \image qml-texteditor5_newfile.png - - The application can function as a simple text editor, able to accept text - and save the text into a file. The text editor can also load from a file and - perform text manipulation. - - -*/ \ No newline at end of file + \page gettingstartedqml.html + \title Getting Started Programming with QML + \ingroup gettingStarted + + Welcome to the world of QML, the declarative UI language. In this Getting + Started guide, we will create a simple text editor application using QML. + After reading this guide, you should be ready to develop your own applications + using QML and Qt C++. + + \section1 QML to Build User Interfaces + + The application we are building is a simple text editor that will load, save, + and perform some text manipulation. This guide will consist of two parts. The + first part will involve designing the application layout and behaviors using + declarative language in QML. For the second part, file loading and saving will + be implemented using Qt C++. Using + \l {The Meta-Object System}{Qt's Meta-Object System}, we can expose C++ functions + as properties that QML elements can use. Utilizing QML and Qt C++, we can + efficiently decouple the interface logic from the application logic. + + \image qml-texteditor5_editmenu.png + + To run the QML example code, merely provide the included \l{QML Viewer}{qmlviewer} + tool with the QML file as the argument. The C++ portion of this tutorial assumes + that the reader possesses basic knowledge of Qt's compilation procedures. + + Tutorial chapters: + \list 1 + \o \l {Defining a Button and a Menu}{Defining a Button and a Menu} + \o \l {Implementing a Menu Bar}{Implementing a Menu Bar} + \o \l {Building a Text Editor}{Building a Text Editor} + \o \l {Decorating the Text Editor}{Decorating the Text Editor} + \o \l {Extending QML using Qt C++}{Extending QML using Qt C++} + \endlist + + \section1 Defining a Button and a Menu + + \section2 Basic Component - a Button + + We start our text editor by building a button. Functionally, a button has a mouse + sensitive area and a label. Buttons perform actions when a user presses the button. + + In QML, the basic visual item is the \l {Rectangle}{Rectangle} element. The + \c Rectangle element has properties to control the element's appearance and location. + + \code + import Qt 4.7 + Rectangle { + id: simplebutton + color: "grey" + width: 150; height: 75 + + Text{ + id: buttonLabel + anchors.centerIn: parent + text: "button label" + } + } + \endcode + + First, the \c { import Qt 4.7 } allows the qmlviewer tool to import the QML elements + we will later use. This line must exist for every QML file. Notice that the version + of Qt modules is included in the import statement. + + This simple rectangle has a unique identifier, \c simplebutton, which is bound to the + id property. The \c Rectangle element's properties are bound to values by listing the + property, followed by a colon, then the value. In the code sample, the color \c grey + is bound to the the Rectangle's \c color property. Similarly, we bind the \c width + and \c height of the Rectangle. + + The \l {Text}{Text} element is a non-editable text field. We name this \c Text element + \c buttonLabel. To set the string content of the Text field, we bind a value to the + \c text property. The label is contained within the Rectangle and in order to center + it in the middle, we assign the \c anchors of the Text element to its parent, which + is called \c simplebutton. Anchors may bind to other items' anchors, allowing layout + assignments simpler. + + We shall save this code as \c SimpleButton.qml. Running qmlviewer with the file as the + argument will display the grey rectangle with a text label. + + \image qml-texteditor1_simplebutton.png + + To implement the button click functionality, we can use QML's event handling. QML's event + handling is very similar to \l {Signals & Slots}{Qt's signal and slot} mechanism. Signals + are emitted and the connected slot is called. + + \code + Rectangle{ + id:simplebutton + ... + + MouseArea{ + id: buttonMouseArea + + anchors.fill: parent //anchor all sides of the mouse area to the rectangle's anchors + //onClicked handles valid mouse button clicks + onClicked: console.log(buttonLabel.text + " clicked" ) + } + } + \endcode + + We include a \l{MouseArea} element in our simplebutton. \c MouseArea elements describe + the interactive area where mouse movements are detected. For our button, we anchor the + whole MouseArea to its parent, which is \c simplebutton. The \c anchors.fill syntax is + one way of accessing a specific property called \c fill inside a group of properties + called \c anchors. QML uses \l {Anchor-based Layout in QML}{anchor based layouts} where + items can anchor to another item, creating robust layouts. + + The \c MouseArea has many signal handlers that are called during mouse movements within + the specfied \c MouseArea boundaries. One of them is \c onClicked and it is called + whenever the acceptable mouse button is clicked, the left click being the default. We + can bind actions to the onClicked handler. In our example, \c console.log() outputs text + whenever the mouse area is clicked. The function \c console.log() is a useful tool for + debugging purposes and for outputting text. + + The code in \c SimpleButton.qml is sufficient to display a button on the screen and + output text whenever it is clicked with a mouse. + + \code + Rectangle { + id:Button + ... + + property color buttonColor: "lightblue" + property color onHoverColor: "gold" + property color borderColor: "white" + + signal buttonClick() + onButtonClick: { + console.log(buttonLabel.text + " clicked" ) + } + + MouseArea{ + onClicked: buttonClick() + hoverEnabled: true + onEntered: parent.border.color = onHoverColor + onExited: parent.border.color = borderColor + } + + //determines the color of the button by using the conditional operator + color: buttonMouseArea.pressed ? Qt.darker(buttonColor, 1.5) : buttonColor + } + \endcode + + A fully functioning button is in \c Button.qml. The code snippets in this article + have some code omitted, denoted by ellipses because they were either introduced + earlier in the previous sections or irrelevant to the current code discussion. + + Custom properties are declared using the \c {property type name} syntax. In the + code, the property \c buttonColor, of type \c color, is declared and bound to + the value \c{"lightblue"}. The \c buttonColor is later used in a conditional + operation to determine the buttons's fill color. Note that property value + assignment is possible using the \c= equals sign, in addition to value binding + using the \c : colon character. Custom properties allow internal items to be + accessible outside of the Rectangle's scope. There are basic + \l{QML Basic Types}{QML types} such as \c int, \c string, \c real, as well as + a type called \c variant. + + By binding the \c onEntered and \c onExited signal handlers to colors, the + button's border will turn yellow when the mouse hovers above the button and + reverts the color when the mouse exits the mouse area. + + A \c buttonClick() signal is declared in \c Button.qml by placing the \c signal + keyword in front of the signal name. All signals have their handlers automatically + created, their names starting with \c on. As a result, the \c onButtonClick is + \c buttonClick's handler. The \c onButtonClick is then assigned an action to + perform. In our button example, the \c onClicked mouse handler will simply call + \c onButtonClick, which displays a text. The \c onButtonClick enables outside + objects to access the \c {Button}'s mouse area easily. For example, items may + have more than one \c MouseArea declarations and a \c buttonClick signal can + make the distinction between the several \c MouseArea signal handlers better. + + We now have the basic knowledge to implement items in QML that can handle + basic mouse movements. We created a \c Text label inside a \c Rectangle, + customized its properties, and implemented behaviors that respond to mouse + movements. This idea of creating elements within elements is repeated + throughout the text editor application. + + This button is not useful unless used as a component to perform an action. + In the next section, we will soon create a menu containing several of these + buttons. + + \image qml-texteditor1_button.png + + \section2 Creating a Menu Page + + Up to this stage, we covered how to create elements and assign behaviors inside + a single QML file. In this section, we will cover how to import QML elements and how + to reuse some of the created components to build other components. + + Menus display the contents of a list, each item having the ability to perform an action. + In QML, we can create a menu in several ways. First, we will create a menu containing + buttons which will eventually perform different actions. The menu code is in + \c FileMenu.qml. + + \code + import Qt 4.7 \\import the main Qt QML module + import "folderName" \\import the contents of the folder + import "Button.qml" \\import a QML file + import "NewButton.qml" as ButtonModule \\import a QML file and give it a name + import "script.js" as Script \\import a Javascript file and name it as Script + \endcode + + To use the \c Button element in \c FileMenu.qml, we need to import \c Button.qml. + The syntax shown above, shows how to use the \c import keyword. However, the + \c {import Button.qml} is not necessary; qmlviewer will import all the contents + of the current directory. We can directly create a \c Button element by declaring + \c Button{}, similar to a \c Rectangle{} declaration. + + \code + In FileMenu.qml: + + Row{ + anchors.centerIn: parent + spacing: parent.width/6 + + Button{ + id: loadButton + buttonColor: "lightgrey" + label: "Load" + } + Button{ + buttonColor: "grey" + id: saveButton + label: "Save" + } + Button{ + id: exitButton + label: "Exit" + buttonColor: "darkgrey" + + onButtonClick: Qt.quit() + } + } + \endcode + + In \c FileMenu.qml, we declare three \c Button elements. They are declared + inside a \l {Row}{Row} element, a positioner that will position its children + along a vertical row. The \c Button declaration resides in Button.qml, + which is the same as the \c Button.qml we used in the previous section. + New property bindings can be declared within the newly created buttons, + effectively overwriting the properties set in \c Button.qml. The button + called \c exitButton will quit and close the window when it is clicked. + Note that the signal handler \c onButtonClick in \c Button.qml will be + called in addition to the \c onButtonClick handler in \c exitButton. + + \image qml-texteditor1_filemenu.png + + The \c Row declaration is declared in a \c Rectangle, creating a rectangle + container for the row of buttons. This additional rectangle creates an indirect + way of organizing the row of buttons inside a menu. + + The declaration of the edit menu is very similar at this stage. The menu has + buttons that have the labels: \c Copy, \c Paste, and \c {Select All}. + + \image qml-texteditor1_editmenu.png + + Armed with our knowledge of importing and customizing previously made + components, we may now combine these menu pages to create a menu bar, + consisting of buttons to select the menu, and look at how we may structure + data using QML. + + \section1 Implementing a Menu Bar + + Our text editor application will need a way to display menus using a menu bar. + The menu bar will switch the different menus and the user can choose which menu + to display. Menu switching implies that the menus need more structure than + merely displaying them in a row. QML uses models and views to structure data + and display the structured data. + + \section2 Using Data Models and Views + + QML has different \l {Data Models}{data views} that display + \l {Data Models}{data models}. Our menu bar will display the menus in a list, + with a header that displays a row of menu names. The list of menus are declared + inside a \c VisualItemModel. The \l{VisualItemModel}{\c VisualItemModel} + element contains items that already have views such as \c Rectangle elements + and imported UI elements. Other model types such as the \l{ListModel}{\c ListModel} + element need a delegate to display their data. + + We declare two visual items in the \c menuListModel, the \c FileMenu and the + \c EditMenu. We customize the two menus and display them using a + \l {ListView}{ListView}. The \c MenuBar.qml file contains the QML declarations + and a simple edit menu is defined in \c EditMenu.qml. + + \code + VisualItemModel{ + id: menuListModel + FileMenu{ + width: menuListView.width + height: menuBar.height + color: fileColor + } + EditMenu{ + color: editColor + width: menuListView.width + height: menuBar.height + } + } + \endcode + + The \l {ListView}{ListView} element will display a model according to a delegate. + The delegate may declare the model items to display in a \c Row element or display + the items in a grid. Our \c menuListModel already has visible items, therefore, + we do not need to declare a delegate. + + \code + ListView{ + id: menuListView + + //Anchors are set to react to window anchors + anchors.fill:parent + anchors.bottom: parent.bottom + width:parent.width + height: parent.height + + //the model contains the data + model: menuListModel + + //control the movement of the menu switching + snapMode: ListView.SnapOneItem + orientation: ListView.Horizontal + boundsBehavior: Flickable.StopAtBounds + flickDeceleration: 5000 + highlightFollowsCurrentItem: true + highlightMoveDuration:240 + highlightRangeMode: ListView.StrictlyEnforceRange + } + \endcode + + Additionally, \c ListView inherits from \l{Flickable}{\c Flickable}, making + the list respond to mouse drags and other gestures. The last portion of the + code above sets \c Flickable properties to create the desired flicking movement + to our view. In particular,the property \c highlightMoveDuration changes the + duration of the flick transition. A higher \c highlightMoveDuration value + results in slower menu switching. + + The \c ListView maintains the model items through an \c index and each visual + item in the model is accessible through the \c index, in the order of the + declaration. Changing the \c currentIndex effectively changes the highlighted + item in the \c ListView. The header of our menu bar exemplify this effect. + There are two buttons in a row, both changing the current menu when clicked. + The \c fileButton changes the current menu to the file menu when clicked, + the \c index being \c 0 because \c FileMenu is declared first in the + \c menuListModel. Similarly, the \c editButton will change the current + menu to the \c EditMenu when clicked. + + The \c labelList rectangle has \c z value of \c 1, denoting that it is displayed + at the front of the menu bar. Items with higher \c z values are displayed in front + of items with lower \c z values. The default \c z value is \c 0. + + \code + Rectangle{ + id: labelList + ... + z: 1 + Row{ + anchors.centerIn: parent + spacing:40 + Button{ + label: "File" + id: fileButton + ... + onButtonClick: menuListView.currentIndex = 0 + } + Button{ + id: editButton + label: "Edit" + ... + onButtonClick: menuListView.currentIndex = 1 + } + } + } + \endcode + + The menu bar we just created can be flicked to access the menus or by clicking + on the menu names at the top. Switching menu screens feel intuitive and responsive. + + \image qml-texteditor2_menubar.png + + */ + + /*! + \page qml-textEditor3.html + \title Building a Text Editor + + \section1 Declaring a TextArea + + Our text editor is not a text editor if it didn't contain an editable text area. + QML's \l {TextEdit}{TextEdit} element allows the declaration of a multi-line + editable text area. \l {TextEdit}{TextEdit} is different from a \l {Text}{Text} + element, which doesn't allow the user to directly edit the text. + + \code + TextEdit{ + id: textEditor + anchors.fill:parent + width:parent.width; height:parent.height + color:"midnightblue" + focus: true + + wrapMode: TextEdit.Wrap + + onCursorRectangleChanged: flickArea.ensureVisible(cursorRectangle) + } + \endcode + + The editor has its font color property set and set to wrap the text. The + \c TextEdit area is inside a flickable area that will scroll the text if the + text cursor is outside the visible area. The function \c ensureVisible() will + check if the cursor rectangle is outside the visible boundaries and move the + text area accordingly. QML uses Javascript syntax for its scripts, and as previously + mentioned, Javascript files can be imported and used within a QML file. + + \code + function ensureVisible(r){ + if (contentX >= r.x) + contentX = r.x; + else if (contentX+width <= r.x+r.width) + contentX = r.x+r.width-width; + if (contentY >= r.y) + contentY = r.y; + else if (contentY+height <= r.y+r.height) + contentY = r.y+r.height-height; + } + \endcode + + \section1 Combining Components for the Text Editor + + We are now ready to create the layout of our text editor using QML. The text + editor has two components, the menu bar we created and the text area. QML allows + us to reuse components, therefore making our code simpler, by importing components + and customizing when necessary. Our text editor splits the window into two; + one-third of the screen is dedicated to the menu bar and two-thirds of the screen + displays the text area. The menu bar is displayed in front of any other elements. + + \code + Rectangle{ + + id: screen + width: 1000; height: 1000 + + //the screen is partitioned into the MenuBar and TextArea. 1/3 of the screen is assigned to the MenuBar + property int partition: height/3 + + MenuBar{ + id:menuBar + height: partition + width:parent.width + z: 1 + } + + TextArea{ + id:textArea + anchors.bottom:parent.bottom + y: partition + color: "white" + height: partition*2 + width:parent.width + } + } + \endcode + + By importing reusable components, our \c TextEditor code looks much simpler. + We can then customize the main application, without worrying about properties + that already have defined behaviors. Using this approach, application layouts + and UI components can be created easily. + + \image qml-texteditor3_texteditor.png + + */ + + /*! + \page qml-textEditor4 + \title Decorating the Text Editor + \section1 Implementing a Drawer Interface + + Our text editor looks simple and we need to decorate it. Using QML, we can declare + transitions and animate our text editor. Our menu bar is occupying one-third of the + screen and it would be nice to have it only appear when we want it. + + We can add a drawer interface, that will contract or expand the menu bar when clicked. + In our implementation, we have a thin rectangle that responds to mouse clicks. The + \c drawer, as well as the application, has two sates: the "drawer is open" state and + the "drawer is closed" state. The \c drawer item is a strip of rectangle with a small + height. There is a nested \l {Image}{Image} element declaring that an arrow icon will + be centered inside the drawer. The drawer assigns a state to the whole application, + with the identifier \c screen, whenever a user clicks the mouse area. + + \code + Rectangle{ + id:drawer + height:15 + + Image{ + id: arrowIcon + source: "images/arrow.png" + anchors.horizontalCenter: parent.horizontalCenter + } + + MouseArea{ + id: drawerMouseArea + anchors.fill:parent + onClicked:{ + if (screen.state == "DRAWER_CLOSED"){ + screen.state = "DRAWER_OPEN" + } + else if (screen.state == "DRAWER_OPEN"){ + screen.state = "DRAWER_CLOSED" + } + } + ... + } + } + \endcode + + A state is simply a collection of configurations and it is declared in a + \l{State}{State} element. A list of states can be listed and bound to the + \c states property. In our application, the two states are called + \c DRAWER_CLOSED and \c DRAWER_OPEN. Item configurations are declared in + \l {PropertyChanges}{PropertyChanges} elements. In the \c DRAWER_OPEN state, + there are four items that will receive property changes. The first target, + \c menuBar, will change its \c y property to \c 0. Similarly, the \c textArea + will lower to a new position when the state is \c DRAWER_OPEN. The \c textArea, + the \c drawer, and the drawer's icon will undergo property changes to meet the + current state. + + \code + + states:[ + State{ + name: "DRAWER_OPEN" + PropertyChanges { target: menuBar; y:0} + PropertyChanges { target: textArea; y: partition + drawer.height} + PropertyChanges { target: drawer; y: partition} + PropertyChanges { target: arrowIcon; rotation: 180} + }, + State{ + name: "DRAWER_CLOSED" + PropertyChanges { target: menuBar; y:-partition} + PropertyChanges { target: textArea; y: drawer.height; height: screen.height - drawer.height} + PropertyChanges { target: drawer; y: 0} + PropertyChanges { target: arrowIcon; rotation: 0} + } + + ] + + \endcode + + State changes are abrupt and needs smoother transitions. Transitions between states + are defined using the \l {Transition}{Transition} element, which can then bind to + the item's \c transitions property. Our text editor has a state transition whenever + the state changes to either \c DRAWER_OPEN or \c DRAWER_CLOSED. Importantly, the + transition needs a \c from and a \c to state but for our transitions, we can use + the wild card \c * symbol to denote that the transition applies to all state changes. + + During transitions, we can assign animations to the property changes. Our + \c menuBar switches position from \c {y:0} to \c {y:-partition} and we can animate + this transition using the \l {NumberAnimation}{NumberAnimation} element. We declare + that the targets' properties will animate for a certain duration of time and using + a certain easing curve. An easing curve controls the animation rates and + interpolation behavior during state transitions. The easing curve we chose is + \l{PropertyAnimation::easing.type}{Easing.OutQuint}, which slows the movement near + the end of the animation. Pleae read \l {qdeclarativeanimation.html}{QML's Animation} + article. + + \code + transitions: [ + Transition{ + to: "*" + NumberAnimation { target: textArea; properties: "y, height"; duration: 100; easing.type: Easing.OutQuint } + NumberAnimation { target: menuBar; properties: "y"; duration: 100;easing.type: Easing.OutQuint } + NumberAnimation { target: drawer; properties: "y"; duration: 100;easing.type: Easing.OutQuint } + } + ] + \endcode + + Another way of animating property changes is by declaring a \l {Behavior}{Behavior} + element. A transition only works during state changes and \c Behavior can set an + animation for a general property change. In the text editor, the arrow has a + \c NumberAnimation animating its \c rotation property whenever the property changes. + + \code + In TextEditor.qml: + + Behavior{ + NumberAnimation{property: "rotation";easing.type: Easing.OutExpo } + } + \endcode + + Going back to our components with knowledge of states and animations, we can improve + the appearances of the components. In \c Button.qml, we can add \c color and \c scale + property changes when the button is clicked. Color types are animated using + \l {ColorAnimation}{ColorAnimation} and numbers are animated using + \l {NumberAnimation}{NumberAnimation}. The \c {on propertyName} syntax displayed below + is helpful when targeting a single property. + + \code + In Button.qml: + ... + + color: buttonMouseArea.pressed ? Qt.darker(buttonColor, 1.5) : buttonColor + Behavior on color { ColorAnimation{ duration: 55} } + + scale: buttonMouseArea.pressed ? 1.1 : 1.00 + Behavior on scale { NumberAnimation{ duration: 55} } + \endcode + + Additionally, we can enhance the appearances of our QML components by adding color + effects such as gradients and opacity effects. Declaring a \l {Gradient}{Gradient} + element will override the \c color property of the element. You may declare a color + in the gradient using the \l {GradientStop}{GradientStop} element. The gradient is + positioned using a scale, between \c 0.0 and \c 1.0. + + \code + In MenuBar.qml + gradient: Gradient { + GradientStop { position: 0.0; color: "#8C8F8C" } + GradientStop { position: 0.17; color: "#6A6D6A" } + GradientStop { position: 0.98;color: "#3F3F3F" } + GradientStop { position: 1.0; color: "#0e1B20" } + } + \endcode + + This gradient is used by the menu bar to display a gradient simulating depth. + The first color starts at \c 0.0 and the last color is at \c 1.0. + + + \section2 Where to Go from Here + + We are finished building the user interface of a very simple text editor. + Going forward, the user interface is complete, and we can implement the + application logic using regular Qt and C++. QML works nicely as a prototyping + tool, separating the application logic away from the UI design. + + \image qml-texteditor4_texteditor.png + + \section1 Extending QML using Qt C++ + + Now that we have our text editor layout, we may now implement the text editor + functionalities in C++. Using QML with C++ enables us to create our application + logic using Qt. We can create a QML context in a C++ application using the + \l {Using QML in C++ Applications}{Qt's Declarative} classes and display the QML + elements using a Graphics Scene. Alternatively, we can export our C++ code into + a plugin that the \l {QML Viewer}{qmlviewer} tool can read. For our application, + we shall implement the load and save functions in C++ and export it as a plugin. + This way, we only need to load the QML file directly instead of running an executable. + + \section2 Exposing C++ Classes to QML + + We will be implementing file loading and saving using Qt and C++. C++ classes + and functions can be used in QML by registering them. The class also needs to be + compiled as a Qt plugin and the QML file will need to know where the plugin is located. + + For our application, we need to create the following items: + \list 1 + \o \c Directory class that will handle directory related operations + \o \c File class which is a QObject, simulating the list of files in a directory + \o plugin class that will register the class to the QML context + \o Qt project file that will compile the plugin + \o A \c qmldir file telling the qmlviewer tool where to find the plugin + \endlist + + \section2 Building a Qt Plugin + + To build a plugin, we need to set the following in a Qt project file. First, + the necessary sources, headers, and Qt modules need to be added into our + project file. All the C++ code and project files are in the \c filedialog + directory. + + \code + In cppPlugins.pro: + + TEMPLATE = lib + CONFIG += qt plugin + QT += declarative + + DESTDIR += ../plugins + OBJECTS_DIR = tmp + MOC_DIR = tmp + + TARGET = FileDialog + + HEADERS += directory.h \ + file.h \ + dialogPlugin.h + + SOURCES += directory.cpp \ + file.cpp \ + dialogPlugin.cpp + \endcode + + In particular, we compile Qt with the \c declarative module and configure it as a + \c plugin, needing a \c lib template. We shall put the compiled plugin into the + parent's \c plugins directory. + + + \section2 Registering a Class into QML + + \code + In dialogPlugin.h: + + #include + + class DialogPlugin : public QDeclarativeExtensionPlugin + { + Q_OBJECT + + public: + void registerTypes(const char *uri); + + }; + + \endcode + + Our plugin class, \c DialogPlugin is a subclass of \l{QDeclarativeExtensionPlugin}. + We need to implement the inherited function, \l {QDeclarativeExtensionPlugin::}{registerTypes()}. + The \c dialogPlugin.cpp file looks like this: + + \code + DialogPlugin.cpp: + + #include "dialogPlugin.h" + #include "directory.h" + #include "file.h" + #include + + void DialogPlugin::registerTypes(const char *uri){ + + qmlRegisterType(uri, 1, 0, "Directory"); + qmlRegisterType(uri, 1, 0,"File"); + } + + Q_EXPORT_PLUGIN2(FileDialog, DialogPlugin); + \endcode + + The \l{QDeclarativeExtensionPlugin::}{registerTypes()} function registers + our File and Directory classes into QML. This function needs the class name + for its template, a major version number, a minor version number, and a name + for our classes. + + We need to export the plugin using the \l {Q_EXPORT_PLUGIN2}{Q_EXPORT_PLUGIN2} + macro. Note that in our \c dialogPlugin.h file, we have the \l {Q_OBJECT}{Q_OBJECT} + macro at the top of our class. As well, we need to run \c qmake on the project + file to generate the necessary meta-object code. + + + \section2 Creating QML Properties in a C++ class + + We can create QML elements and properties using C++ and + \l {The Meta-Object System}{Qt's Meta-Object System}. We can implement + properties using slots and signals, making Qt aware of these properties. + These properties can then be used in QML. + + For the text editor, we need to be able to load and save files. Typically, + these features are contained in a file dialog. Fortunately, we can use + \l {QDir}{QDir}, \l {QFile}{QFile}, and \l {QTextStream}{QTextStream} to + implement directory reading and input/output streams. + + \code + class Directory : public QObject{ + + Q_OBJECT + + Q_PROPERTY(int filesCount READ filesCount CONSTANT) + Q_PROPERTY(QString filename READ filename WRITE setFilename NOTIFY filenameChanged) + Q_PROPERTY(QString fileContent READ fileContent WRITE setFileContent NOTIFY fileContentChanged) + Q_PROPERTY(QDeclarativeListProperty files READ files CONSTANT ) + + ... + \endcode + + The \c Directory class uses Qt's Meta-Object System to register properties it + needs to accomplish file handling. The \c Directory class is exported as a plugin + and is useable in QML as the \c Directory element. Each of the listed properties + using the \l {Q_PROPERTY()}{Q_PROPERTY} macro is a QML property. + + The \l {Q_PROPERTY()} {Q_PROPERTY} declares a property as well as its read and + write functions into Qt's Meta-Object System. For example, the \c filename + property, of type \l {QString}{QString}, is readable using the \c filename() + function and writable using the function \c setFilename(). Additionally, there + is a signal associated to the filename property called \c filenameChanged(), + which is emitted whenever the property changes. The read and write functions + are declared as \c public in the header file. + + Similarly, we have the other properties declared according to their uses. The + \c filesCount property indicates the number of files in a directory. The filename + property is set to the currently selected file's name and the loaded/saved file + content is stored in \c fileContent property. + + \code + Q_PROPERTY(QDeclarativeListProperty files READ files CONSTANT ) + \endcode + + The \c files list property is a list of all the filtered files in a directory. + The \c Directory class is implemented to filter out invalid text files; only + files with a \c .txt extension are valid. Further, \l {QLists}{QLists} can be + used in QML files by declaring them as a \c QDeclarativeListProperty in C++. + The templated object needs to inherit from a \l {QObject}{QObject}, therefore, + the \c File class must also inherit from \c QObject. In the \c Directory class, + the list of \c File objects is stored in a \c QList called \c m_fileList. + + \code + class File : public QObject{ + + Q_OBJECT + Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged) + + ... + }; + \endcode + + The properties can then be used in QML as part of the \c Directory element's + properties. Note that we do not have to create an identifier \c id property + in our C++ code. + + \code + Directory{ + id: directory + + filesCount + filename + fileContent + files + + files[0].name + } + + \endcode + + Because QML uses Javascript's syntax and structure, we can iterate through + the list of files and retrieve its properties. To retrieve the first file's + name property, we can call \c { files[0].name }. + + Regular C++ functions are also accessible from QML. The file loading and saving + functions are implemented in C++ and declared using the + \l {Q_INVOKABLE}{Q_INVOKABLE} macro. Alternatively, we can declare the functions + as a \c slot and the functions will be accessible from QML. + + \code + In Directory.h: + + Q_INVOKABLE void saveFile(); + Q_INVOKABLE void loadFile(); + \endcode + + The \c Directory class also has to notify other objects whenever the directory + contents change. This feature is performed using a \c signal. As previously + mentioned, QML signals have a corresponding handler with their names prepended + with \c on. The signal is called \c directoryChanged and it is emitted whenever + there is a directory refresh. The refresh simply reloads the directory contents + and updates the list of valid files in the directory. QML items can then be + notified by attaching an action to the \c onDirectoryChanged signal handler. + + The \c list properties need to be explored further. This is because list + properties use callbacks to access and modify the list contents. The list + property is of type \c QDeclarativeListProperty. Whenever the list + is accessed, the accessor function needs to return a + \c QDeclarativeListProperty. The template type, \c File, needs to be a + \c QObject derivative. Further, to create the + \l {QDeclarativeListProperty}{QDeclarativeListProperty}, the list's accessor + and modifiers need to be passed to the consructor as function pointers. The list, + a \c QList in our case, also needs to be a list of \c File pointers. + + The constructor of \l {QDeclarativeListProperty}{QDeclarativeListProperty} + constructor and the \c Directory implementation: + \code + QDeclarativeListProperty ( QObject * object, void * data, AppendFunction append, CountFunction count = 0, AtFunction at = 0, ClearFunction clear = 0 ) + QDeclarativeListProperty( this, &m_fileList, &appendFiles, &filesSize, &fileAt, &clearFilesPtr ); + \endcode + + The constructor passes pointers to functions that will append the list, count + the list, retrieve the item using an index, and empty the list. Only the append + function is mandatory. Note that the function pointers must match the definition + of \l {QDeclarativeListProperty::AppendFunction}{AppendFunction}, + \l {QDeclarativeListProperty::CountFunction}{CountFunction}, + \l {QDeclarativeListProperty::AtFunction}{AtFunction}, or + \l {QDeclarativeListProperty::ClearFunction}{ClearFunction}. + + \code + void appendFiles(QDeclarativeListProperty * property, File * file) + File* fileAt(QDeclarativeListProperty * property, int index) + int filesSize(QDeclarativeListProperty * property) + void clearFilesPtr(QDeclarativeListProperty *property) + \endcode + + To simplify our file dialog, the \c Directory class filters out invalid text + files, which are files that do not have a \c .txt extension. If a file name + doesn't have the \c .txt extension, then it won't be seen in our file dialog. + Also, the implementation makes sure that saved files have a \c .txt extension in + the file name. \c Directory uses \l {QTextStream}{QTextStream} to read the file + and to output the file contents to a file. + + With our \c Directory element, we can retrieve the files as a list, know how many + text files is in the application directory, get the file's name and content as a + string, and be notified whenever there are changes in the directory contents. + + To build the plugin, run \c qmake on the \c cppPlugins.pro project file, then run + \c make to build and transfer the plugin to the \c plugins directory. + + + \section2 Importing a Plugin in QML + + The qmlviewer tool imports files that are in the same directory as the + application. We can also create a \c qmldir file containing the locations of + QML files we wish to import. The \c qmldir file can also store locations of + plugins and other resources. + + \code + In qmldir: + + Button ./Button.qml + FileDialog ./FileDialog.qml + TextArea ./TextArea.qml + TextEditor ./TextEditor.qml + EditMenu ./EditMenu.qml + + plugin FileDialog plugins + \endcode + + The plugin we just created is called \c FileDialog, as indicated by the + \c TARGET field in the project file. The compiled plugin is in the \c plugins directory. + + + \section2 Integrating a File Dialog into the File Menu + + Our \c FileMenu needs to display the \c FileDialog element, containing a list of + the text files in a directory thus allowing the user to select the file by + clicking on the list. We also need to assign the save, load, and new buttons + to their respective actions. The FileMenu contains an editable text input to + allow the user to type a file name using the keyboard. + + The \c Directory element is used in the \c FileMenu.qml file and it notifies the + \c FileDialog element that the directory refreshed its contents. This notification + is performed in the signal handler, \c onDirectoryChanged. + + \code + In FileMenu.qml: + + Directory{ + id:directory + filename: textInput.text + onDirectoryChanged: fileDialog.notifyRefresh() + } + \endcode + + Keeping with the simplicity of our application, the file dialog will always be + visible and will not display invalid text files, which do not have a \c .txt + extension to their filenames. + + \code + In FileDialog.qml: + + signal notifyRefresh() + onNotifyRefresh: dirView.model = directory.files + \endcode + + The \c FileDialog element will display the contents of a directory by reading its + list property called \c files. The files are used as the model of a + \l {GridView}{GridView} element, which displays data items in a grid according + to a delegate. The delegate handles the appearance of the model and our file + dialog will simply create a grid with text centered in the middle. Clicking on + the file name will result in the appearance of a rectangle to highlight the file + name. The \c FileDialog is notified whenever the \c notifyRefresh signal is emitted, + reloading the files in the directory. + + \code + In FileMenu.qml: + + Button{ + id: newButton + label: "New" + onButtonClick:{ + textArea.textContent = "" + } + } + Button{ + id: loadButton + label: "Load" + onButtonClick:{ + directory.filename = textInput.text + directory.loadFile() + textArea.textContent = directory.fileContent + } + } + Button{ + id: saveButton + label: "Save" + onButtonClick:{ + directory.fileContent = textArea.textContent + directory.filename = textInput.text + directory.saveFile() + } + } + Button{ + id: exitButton + label: "Exit" + onButtonClick:{ + Qt.quit() + } + } + \endcode + + Our \c FileMenu can now connect to their respective actions. The \c saveButton + will transfer the text from the \c TextEdit onto the directory's \c fileContent + property, then copy its file name from the editable text input. Finally, the button + calls the \c saveFile() function, saving the file. The \c sloadButton has a similar + execution. Also, the \c New action will empty the contents of the \c TextEdit. + + Further, the \c EditMenu buttons are connected to the \c TextEdit functions to copy, + paste, and select all the text in the text editor. + + \image qml-texteditor5_filemenu.png + + \section1 Text Editor Completion + + \image qml-texteditor5_newfile.png + + The application can function as a simple text editor, able to accept text + and save the text into a file. The text editor can also load from a file and + perform text manipulation. +*/ diff --git a/doc/src/getting-started/gettingstartedqt.qdoc b/doc/src/getting-started/gettingstartedqt.qdoc index 1b3770f..25d0ccd 100644 --- a/doc/src/getting-started/gettingstartedqt.qdoc +++ b/doc/src/getting-started/gettingstartedqt.qdoc @@ -28,8 +28,8 @@ /*! \page gettingstartedqt.html - \title Getting Started programming with Qt - \ingroup gettingStarted + \title Getting Started Programming with Qt + \ingroup gettingStarted Welcome to the world of Qt--the cross-platform GUI toolkit. In this getting started guide, we teach basic Qt knowledge by @@ -85,7 +85,7 @@ other widgets), it is possible to show a single widget in its own window. Widgets are not visible by default; the function \l{QWidget::}{show()} makes the widget visible. - + Line 11 makes the QApplication enter its event loop. When a Qt application is running, events are generated and sent to the widgets of the application. Examples of events are mouse presses diff --git a/doc/src/qt4-intro.qdoc b/doc/src/qt4-intro.qdoc index 8867fd9..3771bcc 100644 --- a/doc/src/qt4-intro.qdoc +++ b/doc/src/qt4-intro.qdoc @@ -455,10 +455,10 @@ \image quick_screens.png - Qt 4.7 introduces Quick, the Qt UI Creation Kit. that enables the creation - of dynamic user interfaces, easier and more effective than possible - with existing UI technologies. This UI Creation Kit consist of three - technologies: + Qt 4.7 introduces \l{Qt Quick}, the Qt UI Creation Kit. that enables + the creation of dynamic user interfaces, easier and more effective + than possible with existing UI technologies. This UI Creation Kit + consists of three technologies: \list \i QML is a declarative language oriented on JavaScript that utilizes diff --git a/examples/declarative/ui-components/dialcontrol/content/Dial.qml b/examples/declarative/ui-components/dialcontrol/content/Dial.qml index b5074a64..3ffa09a 100644 --- a/examples/declarative/ui-components/dialcontrol/content/Dial.qml +++ b/examples/declarative/ui-components/dialcontrol/content/Dial.qml @@ -68,6 +68,7 @@ Item { transform: Rotation { id: needleRotation origin.x: 5; origin.y: 65 + //! [needle angle] angle: Math.min(Math.max(-130, root.value*2.6 - 130), 133) Behavior on angle { SpringAnimation { @@ -75,6 +76,7 @@ Item { damping: .15 } } + //! [needle angle] } } //! [needle] diff --git a/examples/declarative/ui-components/dialcontrol/dialcontrol.qml b/examples/declarative/ui-components/dialcontrol/dialcontrol.qml index 95df68c..46cc3e6 100644 --- a/examples/declarative/ui-components/dialcontrol/dialcontrol.qml +++ b/examples/declarative/ui-components/dialcontrol/dialcontrol.qml @@ -38,8 +38,10 @@ ** ****************************************************************************/ +//! [imports] import Qt 4.7 import "content" +//! [imports] //! [0] Rectangle { @@ -87,4 +89,4 @@ Rectangle { } } } -//! [0] \ No newline at end of file +//! [0] diff --git a/src/declarative/qml/qdeclarativecomponent.cpp b/src/declarative/qml/qdeclarativecomponent.cpp index 1d48b1a..e3e1840 100644 --- a/src/declarative/qml/qdeclarativecomponent.cpp +++ b/src/declarative/qml/qdeclarativecomponent.cpp @@ -599,7 +599,7 @@ QDeclarativeComponent::QDeclarativeComponent(QDeclarativeComponentPrivate &dd, Q property, or else the object will not be visible. Dynamically created instances can be deleted with the \c destroy() method. - See \l {Dynamic Object Management} for more information. + See \l {Dynamic Object Management in QML} for more information. */ /*! diff --git a/src/declarative/qml/qdeclarativeengine.cpp b/src/declarative/qml/qdeclarativeengine.cpp index 3822373..a476629 100644 --- a/src/declarative/qml/qdeclarativeengine.cpp +++ b/src/declarative/qml/qdeclarativeengine.cpp @@ -240,7 +240,7 @@ The format specification is described at \l{QML:Qt::formatDateTime}{Qt.formatDat \section1 Dynamic Object Creation The following functions on the global object allow you to dynamically create QML -items from files or strings. See \l{Dynamic Object Management} for an overview +items from files or strings. See \l{Dynamic Object Management in QML} for an overview of their use. \list @@ -1118,7 +1118,7 @@ For example: \snippet doc/src/snippets/declarative/createComponent-simple.qml 0 -See \l {Dynamic Object Management} for more information on using this function. +See \l {Dynamic Object Management in QML} for more information on using this function. To create a QML object from an arbitrary string of QML (instead of a file), use \l{QML:Qt::createQmlObject()}{Qt.createQmlObject()}. @@ -1170,7 +1170,7 @@ Note that this function returns immediately, and therefore may not work if the \a qml string loads new components (that is, external QML files that have not yet been loaded). If this is the case, consider using \l{QML:Qt::createComponent()}{Qt.createComponent()} instead. -See \l {Dynamic Object Management} for more information on using this function. +See \l {Dynamic Object Management in QML} for more information on using this function. */ QScriptValue QDeclarativeEnginePrivate::createQmlObject(QScriptContext *ctxt, QScriptEngine *engine) -- cgit v0.12 From 58d0e46dcc50a3cddabc177c9dfdfec5c66e932d Mon Sep 17 00:00:00 2001 From: David Boddie Date: Tue, 10 Aug 2010 15:12:42 +0200 Subject: Doc: Removed invalid entities in documentation. Details: It is not necessary to use entities. In any case, I replaced them with words for consistency. --- doc/src/getting-started/examples.qdoc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/src/getting-started/examples.qdoc b/doc/src/getting-started/examples.qdoc index 1bf86e5..708c44e 100644 --- a/doc/src/getting-started/examples.qdoc +++ b/doc/src/getting-started/examples.qdoc @@ -343,8 +343,8 @@ /*! \page examples-draganddrop.html \ingroup all-examples - \title Drag & Drop Examples - \brief How to access your platform's native darg & drop functionality + \title Drag and Drop Examples + \brief How to access your platform's native drag and drop functionality. \image draganddrop-examples.png -- cgit v0.12 From d904fe2273be5d39b54b987eef6b9cc0d1b85c4b Mon Sep 17 00:00:00 2001 From: Martin Jones Date: Fri, 13 Aug 2010 10:10:38 +1000 Subject: Fix configure -help output. declarative module is built by default. Task-number: QTBUG-12840 --- configure | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/configure b/configure index 35fe2eb..7c3f9a3 100755 --- a/configure +++ b/configure @@ -3677,8 +3677,8 @@ fi -no-scripttools .... Do not build the QtScriptTools module. + -scripttools ....... Build the QtScriptTools module. - + -no-declarative .....Do not build the declarative module. - -declarative ....... Build the declarative module. + -no-declarative .....Do not build the declarative module. + + -declarative ....... Build the declarative module. -platform target ... The operating system and compiler you are building on ($PLATFORM). -- cgit v0.12 From f9fe93e6e85294274d4e0ce81db09783cfacd733 Mon Sep 17 00:00:00 2001 From: Michael Brasser Date: Fri, 13 Aug 2010 12:22:46 +1000 Subject: Clear previous animation data for non-triggering animations. We need to clear the data from the last run if the animation doesn't match any of the state actions (or if there are no actions). Task-number: QTBUG-12805 --- src/declarative/util/qdeclarativeanimation.cpp | 2 ++ .../data/nonTransitionBug.qml | 30 +++++++++++++++++++++ .../tst_qdeclarativeanimations.cpp | 31 ++++++++++++++++++++++ 3 files changed, 63 insertions(+) create mode 100644 tests/auto/declarative/qdeclarativeanimations/data/nonTransitionBug.qml diff --git a/src/declarative/util/qdeclarativeanimation.cpp b/src/declarative/util/qdeclarativeanimation.cpp index a747706..2fca09d 100644 --- a/src/declarative/util/qdeclarativeanimation.cpp +++ b/src/declarative/util/qdeclarativeanimation.cpp @@ -2392,6 +2392,8 @@ void QDeclarativePropertyAnimation::transition(QDeclarativeStateActions &actions d->actions = &data->actions; } else { delete data; + d->va->setFromSourcedValue(0); //clear previous data + d->va->setAnimValue(0, QAbstractAnimation::DeleteWhenStopped); //clear previous data d->actions = 0; } } diff --git a/tests/auto/declarative/qdeclarativeanimations/data/nonTransitionBug.qml b/tests/auto/declarative/qdeclarativeanimations/data/nonTransitionBug.qml new file mode 100644 index 0000000..e9dc36e --- /dev/null +++ b/tests/auto/declarative/qdeclarativeanimations/data/nonTransitionBug.qml @@ -0,0 +1,30 @@ +import Qt 4.7 + +Rectangle { + id: root + width: 200 + height: 200 + + Rectangle { + id: mover + objectName: "mover" + } + + states: [ + State { + name: "free" + }, + State { + name: "left" + PropertyChanges { + restoreEntryValues: false + target: mover + x: 0 + } + } + ] + + transitions: Transition { + PropertyAnimation { properties: "x"; duration: 50 } + } +} diff --git a/tests/auto/declarative/qdeclarativeanimations/tst_qdeclarativeanimations.cpp b/tests/auto/declarative/qdeclarativeanimations/tst_qdeclarativeanimations.cpp index ec867fe..e5943fb 100644 --- a/tests/auto/declarative/qdeclarativeanimations/tst_qdeclarativeanimations.cpp +++ b/tests/auto/declarative/qdeclarativeanimations/tst_qdeclarativeanimations.cpp @@ -48,6 +48,8 @@ #include #include +#include "../../../shared/util.h" + #ifdef Q_OS_SYMBIAN // In Symbian OS test data is located in applications private dir #define SRCDIR "." @@ -82,6 +84,7 @@ private slots: void easingProperties(); void rotation(); void runningTrueBug(); + void nonTransitionBug(); }; #define QTIMED_COMPARE(lhs, rhs) do { \ @@ -762,6 +765,34 @@ void tst_qdeclarativeanimations::runningTrueBug() QVERIFY(cloud->x() > qreal(0)); } +//QTBUG-12805 +void tst_qdeclarativeanimations::nonTransitionBug() +{ + //tests that the animation values from the previous transition are properly cleared + //in the case where an animation in the transition doesn't match anything (but previously did) + QDeclarativeEngine engine; + + QDeclarativeComponent c(&engine, SRCDIR "/data/nonTransitionBug.qml"); + QDeclarativeRectangle *rect = qobject_cast(c.create()); + QVERIFY(rect != 0); + QDeclarativeItemPrivate *rectPrivate = QDeclarativeItemPrivate::get(rect); + QDeclarativeRectangle *mover = rect->findChild("mover"); + + mover->setX(100); + QCOMPARE(mover->x(), qreal(100)); + + rectPrivate->setState("left"); + QTRY_COMPARE(mover->x(), qreal(0)); + + mover->setX(100); + QCOMPARE(mover->x(), qreal(100)); + + //make sure we don't try to animate back to 0 + rectPrivate->setState("free"); + QTest::qWait(300); + QCOMPARE(mover->x(), qreal(100)); +} + QTEST_MAIN(tst_qdeclarativeanimations) #include "tst_qdeclarativeanimations.moc" -- cgit v0.12 From 7e4807fed07e4c96086af00338601223b3353d29 Mon Sep 17 00:00:00 2001 From: Aaron McCarthy Date: Fri, 13 Aug 2010 13:58:46 +1000 Subject: Better fix for d524da81ee257a6bd67d32d0bc870280a7d5b8a4. Wrap new APIs in ifndef QT_MOBILITY_BEARER. --- src/network/bearer/qnetworkconfiguration.cpp | 7 ------- src/network/bearer/qnetworkconfiguration.h | 10 ++++++++-- src/s60installs/eabi/QtNetworku.def | 2 +- 3 files changed, 9 insertions(+), 10 deletions(-) diff --git a/src/network/bearer/qnetworkconfiguration.cpp b/src/network/bearer/qnetworkconfiguration.cpp index 60851ac..3190a30 100644 --- a/src/network/bearer/qnetworkconfiguration.cpp +++ b/src/network/bearer/qnetworkconfiguration.cpp @@ -406,13 +406,6 @@ QList QNetworkConfiguration::children() const This function is deprecated. It is equivalent to calling bearerTypeName(), however bearerType() should be used in preference. */ -QString QNetworkConfiguration::bearerName() const -{ - // This function cannot be inline as it would break Qt Mobility. - // Qt Mobility uses the Qt header as well and since the Mobility Bearer library - // does not provide bearerTypeName() we cannot use an inline function. - return bearerTypeName(); -} /*! Returns the type of bearer used by this network configuration. diff --git a/src/network/bearer/qnetworkconfiguration.h b/src/network/bearer/qnetworkconfiguration.h index 18b92a9..593dbbe 100644 --- a/src/network/bearer/qnetworkconfiguration.h +++ b/src/network/bearer/qnetworkconfiguration.h @@ -103,6 +103,7 @@ public: Q_DECLARE_FLAGS(StateFlags, StateFlag) +#ifndef QT_MOBILITY_BEARER enum BearerType { BearerUnknown, BearerEthernet, @@ -114,17 +115,22 @@ public: BearerBluetooth, BearerWiMAX }; +#endif StateFlags state() const; Type type() const; Purpose purpose() const; - // Required to maintain source compatibility with Qt Mobility. +#ifndef QT_MOBILITY_BEARER #ifdef QT_DEPRECATED - QT_DEPRECATED QString bearerName() const; + // Required to maintain source compatibility with Qt Mobility. + QT_DEPRECATED inline QString bearerName() const { return bearerTypeName(); } #endif BearerType bearerType() const; QString bearerTypeName() const; +#else + QString bearerName() const; +#endif QString identifier() const; bool isRoamingAvailable() const; diff --git a/src/s60installs/eabi/QtNetworku.def b/src/s60installs/eabi/QtNetworku.def index 2442ee8..6b34a19 100644 --- a/src/s60installs/eabi/QtNetworku.def +++ b/src/s60installs/eabi/QtNetworku.def @@ -1131,7 +1131,7 @@ EXPORTS _ZNK21QNetworkAccessManager13configurationEv @ 1130 NONAME _ZNK21QNetworkAccessManager17networkAccessibleEv @ 1131 NONAME _ZNK21QNetworkAccessManager19activeConfigurationEv @ 1132 NONAME - _ZNK21QNetworkConfiguration10bearerNameEv @ 1133 NONAME + _ZNK21QNetworkConfiguration10bearerNameEv @ 1133 NONAME ABSENT _ZNK21QNetworkConfiguration10identifierEv @ 1134 NONAME _ZNK21QNetworkConfiguration18isRoamingAvailableEv @ 1135 NONAME _ZNK21QNetworkConfiguration4nameEv @ 1136 NONAME -- cgit v0.12 From 167b63d2250e7923d7b660076a80e82af07d9cdb Mon Sep 17 00:00:00 2001 From: Aaron McCarthy Date: Fri, 13 Aug 2010 14:01:52 +1000 Subject: Make this constructor explicit in Qt too. --- src/network/bearer/qnetworksession.h | 4 ---- 1 file changed, 4 deletions(-) diff --git a/src/network/bearer/qnetworksession.h b/src/network/bearer/qnetworksession.h index e7fffac..0b40147 100644 --- a/src/network/bearer/qnetworksession.h +++ b/src/network/bearer/qnetworksession.h @@ -89,11 +89,7 @@ public: OperationNotSupportedError, InvalidConfigurationError }; -#ifndef QT_MOBILITY_BEARER - QNetworkSession(const QNetworkConfiguration& connConfig, QObject* parent =0); -#else explicit QNetworkSession(const QNetworkConfiguration& connConfig, QObject* parent =0); -#endif virtual ~QNetworkSession(); bool isOpen() const; -- cgit v0.12 From ade18bab3a2c4c877baa9be2a0012d670dafb64a Mon Sep 17 00:00:00 2001 From: Joona Petrell Date: Fri, 13 Aug 2010 17:09:27 +1000 Subject: Add autotest that checks that copy and cut don't work when echomode is set to hide text/password mode Task-number: QTBUG-12086 Reviewed-by: Michael Brasser --- .../tst_qdeclarativetextinput.cpp | 24 ++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/tests/auto/declarative/qdeclarativetextinput/tst_qdeclarativetextinput.cpp b/tests/auto/declarative/qdeclarativetextinput/tst_qdeclarativetextinput.cpp index 6e15a4a..ca9009d 100644 --- a/tests/auto/declarative/qdeclarativetextinput/tst_qdeclarativetextinput.cpp +++ b/tests/auto/declarative/qdeclarativetextinput/tst_qdeclarativetextinput.cpp @@ -741,6 +741,30 @@ void tst_qdeclarativetextinput::copyAndPaste() { textInput->paste(); QCOMPARE(textInput->text(), QString("Hello world!Hello world!")); QCOMPARE(textInput->text().length(), 24); + + // clear copy buffer + QClipboard *clipboard = QApplication::clipboard(); + QVERIFY(clipboard); + clipboard->clear(); + + // test that copy functionality is disabled + // when echo mode is set to hide text/password mode + int index = 0; + while (index < 4) { + QDeclarativeTextInput::EchoMode echoMode = QDeclarativeTextInput::EchoMode(index); + textInput->setEchoMode(echoMode); + textInput->setText("My password"); + textInput->select(0, textInput->text().length());; + textInput->copy(); + if (echoMode == QDeclarativeTextInput::Normal) { + QVERIFY(!clipboard->text().isEmpty()); + QCOMPARE(clipboard->text(), QString("My password")); + clipboard->clear(); + } else { + QVERIFY(clipboard->text().isEmpty()); + } + index++; + } #endif } -- cgit v0.12 From b52da4ab2179079a6aff95891786d2f6598048b5 Mon Sep 17 00:00:00 2001 From: Prasanth Ullattil Date: Fri, 13 Aug 2010 12:27:55 +0200 Subject: Multiple "Edit/Special Characters" menu entries on Mac OS X (Cocoa) Every time [NSApp setMainMenu:] is called, Cocoa will add the 'Special Characters' item to the 'Edit' menu. Before adding a new entry it will make sure that menu items list doesn't contain an item with the selector 'orderFrontCharacterPalette' & a 'nil' target. We need to return the index for the first entry (we have QCocoaMenuLoader as target). Task-number: QTBUG-12842 Reviewed-by: Denis --- src/gui/kernel/qcocoamenuloader_mac.mm | 5 +++++ src/gui/kernel/qcocoamenuloader_mac_p.h | 1 + src/gui/widgets/qcocoamenu_mac.mm | 12 ++++++++++++ src/gui/widgets/qcocoamenu_mac_p.h | 1 + 4 files changed, 19 insertions(+) diff --git a/src/gui/kernel/qcocoamenuloader_mac.mm b/src/gui/kernel/qcocoamenuloader_mac.mm index 8d65aa1..8d38f45 100644 --- a/src/gui/kernel/qcocoamenuloader_mac.mm +++ b/src/gui/kernel/qcocoamenuloader_mac.mm @@ -255,5 +255,10 @@ QT_USE_NAMESPACE qApp->quit(); } } + + - (void)orderFrontCharacterPalette:(id)sender + { + [NSApp orderFrontCharacterPalette:sender]; + } @end #endif // QT_MAC_USE_COCOA diff --git a/src/gui/kernel/qcocoamenuloader_mac_p.h b/src/gui/kernel/qcocoamenuloader_mac_p.h index a75ad0a..edacfa5 100644 --- a/src/gui/kernel/qcocoamenuloader_mac_p.h +++ b/src/gui/kernel/qcocoamenuloader_mac_p.h @@ -88,6 +88,7 @@ - (IBAction)hide:(id)sender; - (IBAction)qtDispatcherToQAction:(id)sender; - (void)qtUpdateMenubar; +- (void)orderFrontCharacterPalette:(id)sender; @end #endif // QT_MAC_USE_COCOA diff --git a/src/gui/widgets/qcocoamenu_mac.mm b/src/gui/widgets/qcocoamenu_mac.mm index ce85919..15fae23 100644 --- a/src/gui/widgets/qcocoamenu_mac.mm +++ b/src/gui/widgets/qcocoamenu_mac.mm @@ -188,6 +188,18 @@ QT_USE_NAMESPACE return NO; } +- (NSInteger)indexOfItemWithTarget:(id)anObject andAction:(SEL)actionSelector +{ + NSInteger index = [super indexOfItemWithTarget:anObject andAction:actionSelector]; + static SEL selForOFCP = NSSelectorFromString(@"orderFrontCharacterPalette:"); + if (index == -1 && selForOFCP == actionSelector) { + // Check if the 'orderFrontCharacterPalette' SEL exists for QCocoaMenuLoader object + QT_MANGLE_NAMESPACE(QCocoaMenuLoader) *loader = [NSApp QT_MANGLE_NAMESPACE(qt_qcocoamenuLoader)]; + return [super indexOfItemWithTarget:loader andAction:actionSelector]; + } + return index; +} + @end QT_BEGIN_NAMESPACE diff --git a/src/gui/widgets/qcocoamenu_mac_p.h b/src/gui/widgets/qcocoamenu_mac_p.h index d6ac8c5..1a42642 100644 --- a/src/gui/widgets/qcocoamenu_mac_p.h +++ b/src/gui/widgets/qcocoamenu_mac_p.h @@ -76,6 +76,7 @@ QT_FORWARD_DECLARE_CLASS(QAction) } - (id)initWithQMenu:(QMenu*)menu; - (BOOL)menuHasKeyEquivalent:(NSMenu *)menu forEvent:(NSEvent *)event target:(id *)target action:(SEL *)action; +- (NSInteger)indexOfItemWithTarget:(id)anObject andAction:(SEL)actionSelector; @end #endif -- cgit v0.12 From 5dedcd3c4cac993949295d109804a8f7cc3a5b0a Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Fri, 13 Aug 2010 12:23:46 +0200 Subject: diagramscene example: fix leak and crashes. In MainWindow::deleteItem, if there is arrow selected, we need to clean up the items from this arrow. We need to delete them first so there is no arrow in the list anymore when we calls removeArrows (which before, deleted arrow that were possibly in the list, resulting in crashes) Also avoid leak by giving parents to objects that needs it, and destroying items. Reviewed-by: Geir Vattekar Task-number: QTBUG-12753 --- doc/src/examples/diagramscene.qdoc | 3 ++- examples/graphicsview/diagramscene/mainwindow.cpp | 29 ++++++++++++++++------- 2 files changed, 22 insertions(+), 10 deletions(-) diff --git a/doc/src/examples/diagramscene.qdoc b/doc/src/examples/diagramscene.qdoc index f4d6b0d..7c643c2 100644 --- a/doc/src/examples/diagramscene.qdoc +++ b/doc/src/examples/diagramscene.qdoc @@ -265,7 +265,8 @@ \snippet examples/graphicsview/diagramscene/mainwindow.cpp 3 - This slot deletes the selected item, if any, from the scene. If + This slot deletes the selected item, if any, from the scene. It + deletes the arrows first in order to avoid to delete them twice. If the item to be deleted is a \c DiagramItem, we also need to delete arrows connected to it; we don't want arrows in the scene that aren't connected to items in both ends. diff --git a/examples/graphicsview/diagramscene/mainwindow.cpp b/examples/graphicsview/diagramscene/mainwindow.cpp index f09c552..7d82df0 100644 --- a/examples/graphicsview/diagramscene/mainwindow.cpp +++ b/examples/graphicsview/diagramscene/mainwindow.cpp @@ -45,6 +45,7 @@ #include "diagramitem.h" #include "diagramscene.h" #include "diagramtextitem.h" +#include "arrow.h" const int InsertTextButton = 10; @@ -55,7 +56,7 @@ MainWindow::MainWindow() createToolBox(); createMenus(); - scene = new DiagramScene(itemMenu); + scene = new DiagramScene(itemMenu, this); scene->setSceneRect(QRectF(0, 0, 5000, 5000)); connect(scene, SIGNAL(itemInserted(DiagramItem*)), this, SLOT(itemInserted(DiagramItem*))); @@ -123,11 +124,22 @@ void MainWindow::buttonGroupClicked(int id) void MainWindow::deleteItem() { foreach (QGraphicsItem *item, scene->selectedItems()) { - if (item->type() == DiagramItem::Type) { - qgraphicsitem_cast(item)->removeArrows(); + if (item->type() == Arrow::Type) { + scene->removeItem(item); + Arrow *arrow = qgraphicsitem_cast(item); + arrow->startItem()->removeArrow(arrow); + arrow->endItem()->removeArrow(arrow); + delete item; } - scene->removeItem(item); } + + foreach (QGraphicsItem *item, scene->selectedItems()) { + if (item->type() == DiagramItem::Type) { + qgraphicsitem_cast(item)->removeArrows(); + } + scene->removeItem(item); + delete item; + } } //! [3] @@ -313,7 +325,7 @@ void MainWindow::about() //! [21] void MainWindow::createToolBox() { - buttonGroup = new QButtonGroup; + buttonGroup = new QButtonGroup(this); buttonGroup->setExclusive(false); connect(buttonGroup, SIGNAL(buttonClicked(int)), this, SLOT(buttonGroupClicked(int))); @@ -345,7 +357,7 @@ void MainWindow::createToolBox() QWidget *itemWidget = new QWidget; itemWidget->setLayout(layout); - backgroundButtonGroup = new QButtonGroup; + backgroundButtonGroup = new QButtonGroup(this); connect(backgroundButtonGroup, SIGNAL(buttonClicked(QAbstractButton*)), this, SLOT(backgroundButtonGroupClicked(QAbstractButton*))); @@ -460,7 +472,6 @@ void MainWindow::createToolbars() editToolBar->addAction(sendBackAction); fontCombo = new QFontComboBox(); - fontSizeCombo = new QComboBox(); connect(fontCombo, SIGNAL(currentFontChanged(QFont)), this, SLOT(currentFontChanged(QFont))); @@ -526,7 +537,7 @@ void MainWindow::createToolbars() linePointerButton->setCheckable(true); linePointerButton->setIcon(QIcon(":/images/linepointer.png")); - pointerTypeGroup = new QButtonGroup; + pointerTypeGroup = new QButtonGroup(this); pointerTypeGroup->addButton(pointerButton, int(DiagramScene::MoveItem)); pointerTypeGroup->addButton(linePointerButton, int(DiagramScene::InsertLine)); @@ -605,7 +616,7 @@ QMenu *MainWindow::createColorMenu(const char *slot, QColor defaultColor) names << tr("black") << tr("white") << tr("red") << tr("blue") << tr("yellow"); - QMenu *colorMenu = new QMenu; + QMenu *colorMenu = new QMenu(this); for (int i = 0; i < colors.count(); ++i) { QAction *action = new QAction(names.at(i), this); action->setData(colors.at(i)); -- cgit v0.12 From 448a8603bb0609bf880a2c1b92b26c2005e1cf63 Mon Sep 17 00:00:00 2001 From: Miikka Heikkinen Date: Fri, 13 Aug 2010 13:25:46 +0300 Subject: Fix check to remove unnecessary deployments in Symbian Previously check to remove files from deployment in case the deployment target location was the same as the source location was done using QFileInfo equality, which resolved to true when file didn't yet exist at the time qmake was run. Changed the check to compare absolute paths instead. Task-number: QTBUG-12879 Reviewed-by: Shane Kearns --- qmake/generators/symbian/initprojectdeploy_symbian.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/qmake/generators/symbian/initprojectdeploy_symbian.cpp b/qmake/generators/symbian/initprojectdeploy_symbian.cpp index 382e012..776a646 100644 --- a/qmake/generators/symbian/initprojectdeploy_symbian.cpp +++ b/qmake/generators/symbian/initprojectdeploy_symbian.cpp @@ -353,7 +353,11 @@ void initProjectDeploySymbian(QMakeProject* project, CopyItem &item = i.next(); QFileInfo fromItem(item.from); QFileInfo toItem(item.to); - if (fromItem == toItem) +#if defined(Q_OS_WIN) + if (0 == fromItem.absoluteFilePath().compare(toItem.absoluteFilePath(), Qt::CaseInsensitive)) +#else + if (0 == fromItem.absoluteFilePath().compare(toItem.absoluteFilePath())) +#endif i.remove(); } } -- cgit v0.12 From 5d32b723332acab5fdf880aa0d555ab8e05d79dd Mon Sep 17 00:00:00 2001 From: Shane Kearns Date: Fri, 13 Aug 2010 12:59:55 +0100 Subject: Fix for memory leak in qt_init Reviewed-by: Miikka Heikkinen --- src/gui/kernel/qapplication_s60.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/gui/kernel/qapplication_s60.cpp b/src/gui/kernel/qapplication_s60.cpp index e64ebb1..559bb6a 100644 --- a/src/gui/kernel/qapplication_s60.cpp +++ b/src/gui/kernel/qapplication_s60.cpp @@ -1475,6 +1475,8 @@ void qt_init(QApplicationPrivate * /* priv */, int) S60->avkonComponentsSupportTransparency = (value==1) ? true : false; } } + delete repository; + repository = 0; #endif #ifdef QT_KEYPAD_NAVIGATION -- cgit v0.12 From 13d35e19a2bf78dd6a63b35f06a07d2b6e9c67c4 Mon Sep 17 00:00:00 2001 From: Martin Smith Date: Fri, 13 Aug 2010 14:01:49 +0200 Subject: qdoc: Added the fix to change qml-qml-file.name to qml-file.name --- tools/qdoc3/tree.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tools/qdoc3/tree.cpp b/tools/qdoc3/tree.cpp index 56e3484..540ffa9 100644 --- a/tools/qdoc3/tree.cpp +++ b/tools/qdoc3/tree.cpp @@ -1963,8 +1963,8 @@ QString Tree::fullDocumentLocation(const Node *node) const if ((node->subType() == Node::QmlClass) || (node->subType() == Node::QmlBasicType)) { QString fb = node->fileBase(); - if (fb.startsWith(QLatin1String("QML:"))) - return node->fileBase() + ".html"; + if (fb.startsWith(QLatin1String("qml-"))) + return fb + ".html"; else return "qml-" + node->fileBase() + ".html"; } else @@ -1981,7 +1981,7 @@ QString Tree::fullDocumentLocation(const Node *node) const else if ((parentNode = node->parent())) { if (parentNode->subType() == Node::QmlPropertyGroup) { parentNode = parentNode->parent(); - parentName = "qml-" + parentNode->fileBase() + ".html"; + parentName = fullDocumentLocation(parentNode); } else parentName = fullDocumentLocation(node->parent()); -- cgit v0.12 From 6d0d767e63df3c997d6d7a8cb6cd4bf8c0dfc835 Mon Sep 17 00:00:00 2001 From: Richard Moe Gustavsen Date: Fri, 13 Aug 2010 14:05:17 +0200 Subject: Cocoa: Stacking order of modal dialogs is wrong Modal dialogs were sometimes hidden behind other normal windows on screen. The reason was that, upon going modal for a window, we actually resat the stacking level on the window in a faulty attempt to respect any stays-on-top window flags. This patch makes sure we avoid doing that, and at the same time, ensures we don't reintroduce the original bug as well. Task-number: QTBUG-12841 Reviewed-by: cduclos --- src/gui/kernel/qeventdispatcher_mac.mm | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/gui/kernel/qeventdispatcher_mac.mm b/src/gui/kernel/qeventdispatcher_mac.mm index e26fbde..89f01d8 100644 --- a/src/gui/kernel/qeventdispatcher_mac.mm +++ b/src/gui/kernel/qeventdispatcher_mac.mm @@ -785,7 +785,7 @@ void QEventDispatcherMacPrivate::temporarilyStopAllModalSessions() // the stacking order of the windows while doing so, we put // up a block that is used in QCocoaWindow and QCocoaPanel: int stackSize = cocoaModalSessionStack.size(); - for (int i=stackSize-1; i>=0; --i) { + for (int i=0; i [window level]) + [window setLevel:levelBeforeEnterModal]; } currentModalSessionCached = info.session; } -- cgit v0.12 From 434ce6748ea7f082357b6d7ab542c9fa2285bd4c Mon Sep 17 00:00:00 2001 From: Miikka Heikkinen Date: Fri, 13 Aug 2010 15:22:25 +0300 Subject: Fix "installer_sis" and "deploy" targets when TARGET has path Dependencies got generated wrong in Makefile because sis is always created in the .pro file directory but dependency included path that was in TARGET. Task-number: QTBUG-12884 Reviewed-by: Shane Kearns --- mkspecs/features/sis_targets.prf | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/mkspecs/features/sis_targets.prf b/mkspecs/features/sis_targets.prf index 99f5910..abdf2d4 100644 --- a/mkspecs/features/sis_targets.prf +++ b/mkspecs/features/sis_targets.prf @@ -11,7 +11,6 @@ else:!equals(DEPLOYMENT, default_deployment) { equals(GENERATE_SIS_TARGETS, true) { symbian-abld|symbian-sbsv2 { - sis_destdir = make_cache_name = .make.cache sis_target.target = sis sis_target.commands = $(if $(wildcard $$basename(TARGET)_template.pkg), \ @@ -50,7 +49,7 @@ equals(GENERATE_SIS_TARGETS, true) { ok_unsigned_sis_target.target = ok_unsigned_sis ok_unsigned_sis_target.commands = createpackage.bat $(QT_SIS_OPTIONS) -o $$basename(TARGET)_template.pkg $(QT_SIS_TARGET) - target_sis_target.target = $${sis_destdir}$${TARGET}.sis + target_sis_target.target = $$basename(TARGET).sis target_sis_target.commands = $(MAKE) -f $(MAKEFILE) sis installer_sis_target.target = installer_sis @@ -59,7 +58,7 @@ equals(GENERATE_SIS_TARGETS, true) { , \ $(MAKE) -f $(MAKEFILE) fail_sis_nopkg \ ) - installer_sis_target.depends = $${sis_destdir}$${TARGET}.sis + installer_sis_target.depends = $$basename(TARGET).sis ok_installer_sis_target.target = ok_installer_sis ok_installer_sis_target.commands = createpackage.bat $(QT_SIS_OPTIONS) $$basename(TARGET)_installer.pkg - \ -- cgit v0.12 From 2dfd16e8a138da9d903b31ef461331016d16ec5b Mon Sep 17 00:00:00 2001 From: Morten Engvoldsen Date: Fri, 13 Aug 2010 15:20:36 +0200 Subject: Doc: removed assistant style and reintroduced the index page icons. --- doc/src/template/style/narrow.css | 4 ++-- doc/src/template/style/style.css | 41 ++------------------------------------- 2 files changed, 4 insertions(+), 41 deletions(-) diff --git a/doc/src/template/style/narrow.css b/doc/src/template/style/narrow.css index e4ad135..349048f 100644 --- a/doc/src/template/style/narrow.css +++ b/doc/src/template/style/narrow.css @@ -54,7 +54,7 @@ .narrow .header .qtref a { - color: #363534; + color: #00732F; } .narrow .header .qtref span @@ -103,7 +103,7 @@ } .narrow .header #shortCut ul li a { - color: #44a51c; + color: #00732F; } .narrow .wrapper .hd diff --git a/doc/src/template/style/style.css b/doc/src/template/style/style.css index 6a32e53..190c60a 100755 --- a/doc/src/template/style/style.css +++ b/doc/src/template/style/style.css @@ -1283,43 +1283,6 @@ -/* start of offline spec*/ - .offline .wrapper .hd - { - background: url(../images/page.png) no-repeat 0 -15px; - } - .offline .wrapper .bd - { - background: url(../images/bg_l_blank.png) repeat-y 0 0; - } - .offline .wrapper .ft - { - background: url(../images/page.png) no-repeat 0 -90px; - } - .offline .sidebar, - .offline .feedback, - .offline .t_button, - .offline #narrowsearch, - .offline #narrowmenu - { - display: none; - } - .offline .wrap - { - margin: 0 5px 0 5px; - } - .offline .wrap .breadcrumb - { - } - - .offline .wrap .content - { - padding-top: 15px; - } - - -/* end of offline spec*/ - /* start of creator spec*/ .creator { @@ -1339,9 +1302,9 @@ .creator #feedbackBox, .creator #feedback, .creator #blurpage, - .creator .indexbox .indexIcon span, + /*.creator .indexbox .indexIcon span,*/ .creator .wrapper .hd, - .creator .indexbox .indexIcon, +/* .creator .indexbox .indexIcon,*/ .creator .header #nav-logo, .creator #offlinemenu, .creator #offlinesearch, -- cgit v0.12 From 7c413e92841c7a6010c4ba5748f6f54448f8643e Mon Sep 17 00:00:00 2001 From: Jukka Rissanen Date: Wed, 28 Jul 2010 15:13:49 +0300 Subject: Do not change the session configuration state because of changes in QNetworkConfigurationManager. The session state is only changed according to status messages sent by icd. Fixes: NB#182148 - QNetworkSession changes to disconnected state immediately after opening session --- src/plugins/bearer/icd/qnetworksession_impl.cpp | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/plugins/bearer/icd/qnetworksession_impl.cpp b/src/plugins/bearer/icd/qnetworksession_impl.cpp index 2583b28..0b35349 100644 --- a/src/plugins/bearer/icd/qnetworksession_impl.cpp +++ b/src/plugins/bearer/icd/qnetworksession_impl.cpp @@ -339,8 +339,6 @@ void QNetworkSessionPrivateImpl::syncStateWithInterface() isOpen = false; opened = false; - connect(&manager, SIGNAL(updateCompleted()), this, SLOT(networkConfigurationsChanged())); - connect(engine, SIGNAL(iapStateChanged(const QString&, uint)), this, SLOT(iapStateChanged(const QString&, uint))); -- cgit v0.12 From d4c8461db653e498b9369c2a36de5b699bcbf87d Mon Sep 17 00:00:00 2001 From: Aaron McCarthy Date: Thu, 12 Aug 2010 14:46:46 +1000 Subject: Release lock before calling into icd engine. --- src/plugins/bearer/icd/qnetworksession_impl.cpp | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/plugins/bearer/icd/qnetworksession_impl.cpp b/src/plugins/bearer/icd/qnetworksession_impl.cpp index 0b35349..3170bf6 100644 --- a/src/plugins/bearer/icd/qnetworksession_impl.cpp +++ b/src/plugins/bearer/icd/qnetworksession_impl.cpp @@ -458,14 +458,15 @@ void QNetworkSessionPrivateImpl::syncStateWithInterface() else ptr->name = ptr->id; + const QString identifier = ptr->id; + + configLocker.unlock(); + // Add the new active configuration to manager or update the old config - if (!engine->hasIdentifier(ptr->id)) { - configLocker.unlock(); + if (!engine->hasIdentifier(identifier)) engine->addSessionConfiguration(ptr); - } else { - configLocker.unlock(); + else engine->changedSessionConfiguration(ptr); - } } break; -- cgit v0.12 From f7c07892e927a6420bb64a7011312f0a4a5a1fc9 Mon Sep 17 00:00:00 2001 From: Martin Jones Date: Mon, 16 Aug 2010 11:17:56 +1000 Subject: emit countChanged where appropriate in Repeater Task-number: QTBUG-12905 Reviewed-by: Bea Lam --- src/declarative/graphicsitems/qdeclarativerepeater.cpp | 5 ++++- .../declarative/qdeclarativerepeater/tst_qdeclarativerepeater.cpp | 3 +++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/declarative/graphicsitems/qdeclarativerepeater.cpp b/src/declarative/graphicsitems/qdeclarativerepeater.cpp index 68e7e9a..b4b6c02 100644 --- a/src/declarative/graphicsitems/qdeclarativerepeater.cpp +++ b/src/declarative/graphicsitems/qdeclarativerepeater.cpp @@ -245,8 +245,8 @@ void QDeclarativeRepeater::setModel(const QVariant &model) connect(d->model, SIGNAL(destroyingItem(QDeclarativeItem*)), this, SLOT(destroyingItem(QDeclarativeItem*))); */ regenerate(); - emit countChanged(); } + emit countChanged(); } /*! @@ -377,6 +377,7 @@ void QDeclarativeRepeater::itemsInserted(int index, int count) d->deletables.insert(modelIndex, item); } } + emit countChanged(); } void QDeclarativeRepeater::itemsRemoved(int index, int count) @@ -391,6 +392,7 @@ void QDeclarativeRepeater::itemsRemoved(int index, int count) else break; } + emit countChanged(); } void QDeclarativeRepeater::itemsMoved(int from, int to, int count) @@ -420,6 +422,7 @@ void QDeclarativeRepeater::modelReset() if (!isComponentComplete()) return; regenerate(); + emit countChanged(); } QT_END_NAMESPACE diff --git a/tests/auto/declarative/qdeclarativerepeater/tst_qdeclarativerepeater.cpp b/tests/auto/declarative/qdeclarativerepeater/tst_qdeclarativerepeater.cpp index 623b3d7..360d90f 100644 --- a/tests/auto/declarative/qdeclarativerepeater/tst_qdeclarativerepeater.cpp +++ b/tests/auto/declarative/qdeclarativerepeater/tst_qdeclarativerepeater.cpp @@ -309,11 +309,14 @@ void tst_QDeclarativeRepeater::dataModel() QCOMPARE(container->childItems().count(), 4); + QSignalSpy repeaterSpy(repeater, SIGNAL(countChanged())); testModel.addItem("four", "4"); QCOMPARE(container->childItems().count(), 5); + QCOMPARE(repeaterSpy.count(),1); testModel.removeItem(2); QCOMPARE(container->childItems().count(), 4); + QCOMPARE(repeaterSpy.count(),2); // Check that model changes are propagated QDeclarativeText *text = findItem(canvas->rootObject(), "myName", 1); -- cgit v0.12 From 8ae7f9508a94e37ceddd4c2b1b94dc43ff039cf3 Mon Sep 17 00:00:00 2001 From: Martin Jones Date: Mon, 16 Aug 2010 13:38:54 +1000 Subject: Make positioners work with QGraphicsWidgets also Task-number: QTBUG-12416 Reviewed-by: Alexis Menard --- .../graphicsitems/qdeclarativepositioners.cpp | 107 ++++++++++++--------- .../graphicsitems/qdeclarativepositioners_p.h | 8 +- .../graphicsitems/qdeclarativepositioners_p_p.h | 5 +- 3 files changed, 71 insertions(+), 49 deletions(-) diff --git a/src/declarative/graphicsitems/qdeclarativepositioners.cpp b/src/declarative/graphicsitems/qdeclarativepositioners.cpp index 179f13d..f32c532 100644 --- a/src/declarative/graphicsitems/qdeclarativepositioners.cpp +++ b/src/declarative/graphicsitems/qdeclarativepositioners.cpp @@ -61,16 +61,33 @@ static const QDeclarativeItemPrivate::ChangeTypes watchedChanges | QDeclarativeItemPrivate::Opacity | QDeclarativeItemPrivate::Destroyed; -void QDeclarativeBasePositionerPrivate::watchChanges(QDeclarativeItem *other) +void QDeclarativeBasePositionerPrivate::watchChanges(QGraphicsObject *other) { - QDeclarativeItemPrivate *otherPrivate = static_cast(QGraphicsItemPrivate::get(other)); - otherPrivate->addItemChangeListener(this, watchedChanges); + if (QGraphicsItemPrivate::get(other)->isDeclarativeItem) { + QDeclarativeItemPrivate *otherPrivate = static_cast(QGraphicsItemPrivate::get(other)); + otherPrivate->addItemChangeListener(this, watchedChanges); + } else { + Q_Q(QDeclarativeBasePositioner); + QObject::connect(other, SIGNAL(widthChanged()), q, SLOT(graphicsWidgetGeometryChanged())); + QObject::connect(other, SIGNAL(heightChanged()), q, SLOT(graphicsWidgetGeometryChanged())); + } } -void QDeclarativeBasePositionerPrivate::unwatchChanges(QDeclarativeItem* other) +void QDeclarativeBasePositionerPrivate::unwatchChanges(QGraphicsObject* other) { - QDeclarativeItemPrivate *otherPrivate = static_cast(QGraphicsItemPrivate::get(other)); - otherPrivate->removeItemChangeListener(this, watchedChanges); + if (QGraphicsItemPrivate::get(other)->isDeclarativeItem) { + QDeclarativeItemPrivate *otherPrivate = static_cast(QGraphicsItemPrivate::get(other)); + otherPrivate->removeItemChangeListener(this, watchedChanges); + } else { + Q_Q(QDeclarativeBasePositioner); + QObject::disconnect(other, SIGNAL(widthChanged()), q, SLOT(graphicsWidgetGeometryChanged())); + QObject::disconnect(other, SIGNAL(heightChanged()), q, SLOT(graphicsWidgetGeometryChanged())); + } +} + +void QDeclarativeBasePositioner::graphicsWidgetGeometryChanged() +{ + prePositioning(); } /*! @@ -174,16 +191,16 @@ QVariant QDeclarativeBasePositioner::itemChange(GraphicsItemChange change, Q_D(QDeclarativeBasePositioner); if (change == ItemChildAddedChange){ QGraphicsItem* item = value.value(); - QDeclarativeItem* child = 0; + QGraphicsObject* child = 0; if(item) - child = qobject_cast(item->toGraphicsObject()); + child = item->toGraphicsObject(); if (child) prePositioning(); } else if (change == ItemChildRemovedChange) { QGraphicsItem* item = value.value(); - QDeclarativeItem* child = 0; + QGraphicsObject* child = 0; if(item) - child = qobject_cast(item->toGraphicsObject()); + child = item->toGraphicsObject(); if (child) { QDeclarativeBasePositioner::PositionedItem posItem(child); int idx = positionedItems.find(posItem); @@ -194,7 +211,6 @@ QVariant QDeclarativeBasePositioner::itemChange(GraphicsItemChange change, prePositioning(); } } - return QDeclarativeItem::itemChange(change, value); } @@ -216,7 +232,7 @@ void QDeclarativeBasePositioner::prePositioning() QPODVector oldItems; positionedItems.copyAndClear(oldItems); for (int ii = 0; ii < children.count(); ++ii) { - QDeclarativeItem *child = qobject_cast(children.at(ii)); + QGraphicsObject *child = children.at(ii)->toGraphicsObject(); if (!child) continue; QDeclarativeItemPrivate *childPrivate = static_cast(QGraphicsItemPrivate::get(child)); @@ -302,10 +318,10 @@ void QDeclarativeBasePositioner::finishApplyTransitions() d->moveActions.clear(); } -static inline bool isInvisible(QDeclarativeItem *child) +static inline bool isInvisible(QGraphicsObject *child) { QDeclarativeItemPrivate *childPrivate = static_cast(QGraphicsItemPrivate::get(child)); - return child->opacity() == 0.0 || childPrivate->explicitlyHidden || !child->width() || !child->height(); + return child->opacity() == 0.0 || childPrivate->explicitlyHidden || !childPrivate->width() || !childPrivate->height(); } /*! @@ -440,9 +456,9 @@ void QDeclarativeColumn::doPositioning(QSizeF *contentSize) if(child.item->y() != voffset) positionY(voffset, child); - contentSize->setWidth(qMax(contentSize->width(), child.item->width())); + contentSize->setWidth(qMax(contentSize->width(), QGraphicsItemPrivate::get(child.item)->width())); - voffset += child.item->height(); + voffset += QGraphicsItemPrivate::get(child.item)->height(); voffset += spacing(); } @@ -454,8 +470,8 @@ void QDeclarativeColumn::reportConflictingAnchors() QDeclarativeBasePositionerPrivate *d = static_cast(QDeclarativeBasePositionerPrivate::get(this)); for (int ii = 0; ii < positionedItems.count(); ++ii) { const PositionedItem &child = positionedItems.at(ii); - if (child.item) { - QDeclarativeAnchors *anchors = QDeclarativeItemPrivate::get(child.item)->_anchors; + if (child.item && QGraphicsItemPrivate::get(child.item)->isDeclarativeItem) { + QDeclarativeAnchors *anchors = QDeclarativeItemPrivate::get(static_cast(child.item))->_anchors; if (anchors) { QDeclarativeAnchors::Anchors usedAnchors = anchors->usedAnchors(); if (usedAnchors & QDeclarativeAnchors::TopAnchor || @@ -579,9 +595,9 @@ void QDeclarativeRow::doPositioning(QSizeF *contentSize) if(child.item->x() != hoffset) positionX(hoffset, child); - contentSize->setHeight(qMax(contentSize->height(), child.item->height())); + contentSize->setHeight(qMax(contentSize->height(), QGraphicsItemPrivate::get(child.item)->height())); - hoffset += child.item->width(); + hoffset += QGraphicsItemPrivate::get(child.item)->width(); hoffset += spacing(); } @@ -593,8 +609,8 @@ void QDeclarativeRow::reportConflictingAnchors() QDeclarativeBasePositionerPrivate *d = static_cast(QDeclarativeBasePositionerPrivate::get(this)); for (int ii = 0; ii < positionedItems.count(); ++ii) { const PositionedItem &child = positionedItems.at(ii); - if (child.item) { - QDeclarativeAnchors *anchors = QDeclarativeItemPrivate::get(child.item)->_anchors; + if (child.item && QGraphicsItemPrivate::get(child.item)->isDeclarativeItem) { + QDeclarativeAnchors *anchors = QDeclarativeItemPrivate::get(static_cast(child.item))->_anchors; if (anchors) { QDeclarativeAnchors::Anchors usedAnchors = anchors->usedAnchors(); if (usedAnchors & QDeclarativeAnchors::LeftAnchor || @@ -814,10 +830,11 @@ void QDeclarativeGrid::doPositioning(QSizeF *contentSize) const PositionedItem &child = positionedItems.at(childIndex++); if (!child.item || isInvisible(child.item)) continue; - if (child.item->width() > maxColWidth[j]) - maxColWidth[j] = child.item->width(); - if (child.item->height() > maxRowHeight[i]) - maxRowHeight[i] = child.item->height(); + QGraphicsItemPrivate *childPrivate = QGraphicsItemPrivate::get(child.item); + if (childPrivate->width() > maxColWidth[j]) + maxColWidth[j] = childPrivate->width(); + if (childPrivate->height() > maxRowHeight[i]) + maxRowHeight[i] = childPrivate->height(); } } } else { @@ -833,10 +850,11 @@ void QDeclarativeGrid::doPositioning(QSizeF *contentSize) const PositionedItem &child = positionedItems.at(childIndex++); if (!child.item || isInvisible(child.item)) continue; - if (child.item->width() > maxColWidth[j]) - maxColWidth[j] = child.item->width(); - if (child.item->height() > maxRowHeight[i]) - maxRowHeight[i] = child.item->height(); + QGraphicsItemPrivate *childPrivate = QGraphicsItemPrivate::get(child.item); + if (childPrivate->width() > maxColWidth[j]) + maxColWidth[j] = childPrivate->width(); + if (childPrivate->height() > maxRowHeight[i]) + maxRowHeight[i] = childPrivate->height(); } } } @@ -855,7 +873,7 @@ void QDeclarativeGrid::doPositioning(QSizeF *contentSize) } if (m_flow == LeftToRight) { - contentSize->setWidth(qMax(contentSize->width(), xoffset + child.item->width())); + contentSize->setWidth(qMax(contentSize->width(), xoffset + QGraphicsItemPrivate::get(child.item)->width())); contentSize->setHeight(yoffset + maxRowHeight[curRow]); xoffset+=maxColWidth[curCol]+spacing(); @@ -869,7 +887,7 @@ void QDeclarativeGrid::doPositioning(QSizeF *contentSize) break; } } else { - contentSize->setHeight(qMax(contentSize->height(), yoffset + child.item->height())); + contentSize->setHeight(qMax(contentSize->height(), yoffset + QGraphicsItemPrivate::get(child.item)->height())); contentSize->setWidth(xoffset + maxColWidth[curCol]); yoffset+=maxRowHeight[curRow]+spacing(); @@ -891,8 +909,8 @@ void QDeclarativeGrid::reportConflictingAnchors() QDeclarativeBasePositionerPrivate *d = static_cast(QDeclarativeBasePositionerPrivate::get(this)); for (int ii = 0; ii < positionedItems.count(); ++ii) { const PositionedItem &child = positionedItems.at(ii); - if (child.item) { - QDeclarativeAnchors *anchors = QDeclarativeItemPrivate::get(child.item)->_anchors; + if (child.item && QGraphicsItemPrivate::get(child.item)->isDeclarativeItem) { + QDeclarativeAnchors *anchors = QDeclarativeItemPrivate::get(static_cast(child.item))->_anchors; if (anchors && (anchors->usedAnchors() || anchors->fill() || anchors->centerIn())) { d->anchorConflict = true; break; @@ -1026,14 +1044,15 @@ void QDeclarativeFlow::doPositioning(QSizeF *contentSize) if (!child.item || isInvisible(child.item)) continue; + QGraphicsItemPrivate *childPrivate = QGraphicsItemPrivate::get(child.item); if (d->flow == LeftToRight) { - if (widthValid() && hoffset && hoffset + child.item->width() > width()) { + if (widthValid() && hoffset && hoffset + childPrivate->width() > width()) { hoffset = 0; voffset += linemax + spacing(); linemax = 0; } } else { - if (heightValid() && voffset && voffset + child.item->height() > height()) { + if (heightValid() && voffset && voffset + childPrivate->height() > height()) { voffset = 0; hoffset += linemax + spacing(); linemax = 0; @@ -1045,17 +1064,17 @@ void QDeclarativeFlow::doPositioning(QSizeF *contentSize) positionY(voffset, child); } - contentSize->setWidth(qMax(contentSize->width(), hoffset + child.item->width())); - contentSize->setHeight(qMax(contentSize->height(), voffset + child.item->height())); + contentSize->setWidth(qMax(contentSize->width(), hoffset + childPrivate->width())); + contentSize->setHeight(qMax(contentSize->height(), voffset + childPrivate->height())); if (d->flow == LeftToRight) { - hoffset += child.item->width(); + hoffset += childPrivate->width(); hoffset += spacing(); - linemax = qMax(linemax, qCeil(child.item->height())); + linemax = qMax(linemax, qCeil(childPrivate->height())); } else { - voffset += child.item->height(); + voffset += childPrivate->height(); voffset += spacing(); - linemax = qMax(linemax, qCeil(child.item->width())); + linemax = qMax(linemax, qCeil(childPrivate->width())); } } } @@ -1065,8 +1084,8 @@ void QDeclarativeFlow::reportConflictingAnchors() Q_D(QDeclarativeFlow); for (int ii = 0; ii < positionedItems.count(); ++ii) { const PositionedItem &child = positionedItems.at(ii); - if (child.item) { - QDeclarativeAnchors *anchors = QDeclarativeItemPrivate::get(child.item)->_anchors; + if (child.item && QGraphicsItemPrivate::get(child.item)->isDeclarativeItem) { + QDeclarativeAnchors *anchors = QDeclarativeItemPrivate::get(static_cast(child.item))->_anchors; if (anchors && (anchors->usedAnchors() || anchors->fill() || anchors->centerIn())) { d->anchorConflict = true; break; diff --git a/src/declarative/graphicsitems/qdeclarativepositioners_p.h b/src/declarative/graphicsitems/qdeclarativepositioners_p.h index c03e518..f9ecc0a 100644 --- a/src/declarative/graphicsitems/qdeclarativepositioners_p.h +++ b/src/declarative/graphicsitems/qdeclarativepositioners_p.h @@ -91,14 +91,16 @@ Q_SIGNALS: protected Q_SLOTS: void prePositioning(); + void graphicsWidgetGeometryChanged(); protected: virtual void doPositioning(QSizeF *contentSize)=0; virtual void reportConflictingAnchors()=0; - struct PositionedItem { - PositionedItem(QDeclarativeItem *i) : item(i), isNew(false), isVisible(true) {} + class PositionedItem { + public : + PositionedItem(QGraphicsObject *i) : item(i), isNew(false), isVisible(true) {} bool operator==(const PositionedItem &other) const { return other.item == item; } - QDeclarativeItem *item; + QGraphicsObject *item; bool isNew; bool isVisible; }; diff --git a/src/declarative/graphicsitems/qdeclarativepositioners_p_p.h b/src/declarative/graphicsitems/qdeclarativepositioners_p_p.h index 822079b..35946e9 100644 --- a/src/declarative/graphicsitems/qdeclarativepositioners_p_p.h +++ b/src/declarative/graphicsitems/qdeclarativepositioners_p_p.h @@ -94,8 +94,8 @@ public: QDeclarativeTransitionManager addTransitionManager; QDeclarativeTransitionManager moveTransitionManager; - void watchChanges(QDeclarativeItem *other); - void unwatchChanges(QDeclarativeItem* other); + void watchChanges(QGraphicsObject *other); + void unwatchChanges(QGraphicsObject* other); bool queuedPositioning : 1; bool doingPositioning : 1; bool anchorConflict : 1; @@ -123,6 +123,7 @@ public: if (newGeometry.size() != oldGeometry.size()) q->prePositioning(); } + virtual void itemVisibilityChanged(QDeclarativeItem *) { schedulePositioning(); -- cgit v0.12 From b8505789fdf977fcdec91f94557fe13bcef1e7cc Mon Sep 17 00:00:00 2001 From: Tomasz Bursztyka Date: Thu, 29 Jul 2010 15:22:33 +0300 Subject: The QNetworkConfigurationManager did not get the online status correctly even when there was an active connection. Fixes: NB#181984 - QNetworkConfigurationManager reports offline even when connected. Signed-off-by: Tomasz Bursztyka Signed-off-by: Jukka Rissanen --- src/plugins/bearer/icd/qicdengine.cpp | 97 +++++++++++++++++++++++++---------- src/plugins/bearer/icd/qicdengine.h | 2 +- 2 files changed, 71 insertions(+), 28 deletions(-) diff --git a/src/plugins/bearer/icd/qicdengine.cpp b/src/plugins/bearer/icd/qicdengine.cpp index 0900329..87b31da 100644 --- a/src/plugins/bearer/icd/qicdengine.cpp +++ b/src/plugins/bearer/icd/qicdengine.cpp @@ -275,6 +275,8 @@ void QIcdEngine::initialize() userChoiceConfigurations.insert(cpPriv->id, ptr); doRequestUpdate(); + + getIcdInitialState(); } static inline QString network_attrs_to_security(uint network_attrs) @@ -623,7 +625,11 @@ void QIcdEngine::doRequestUpdate(QList scanned) changed = true; } - if (ptr->state != QNetworkConfiguration::Discovered) { + /* If this config is the current active one, we do not set it + * to discovered. + */ + if ((ptr->state != QNetworkConfiguration::Discovered) && + (ptr->state != QNetworkConfiguration::Active)) { ptr->state = QNetworkConfiguration::Discovered; changed = true; } @@ -786,10 +792,50 @@ void QIcdEngine::startListeningStateSignalsForAllConnections() ICD_DBUS_API_INTERFACE, ICD_DBUS_API_STATE_SIG, this, SLOT(connectionStateSignalsSlot(QDBusMessage))); +} + +void QIcdEngine::getIcdInitialState() +{ + /* Instead of requesting ICD status asynchronously, we ask it synchronously. + * It ensures that we always get right icd status BEFORE initialize() ends. + * If not, initialize() might end before we got icd status and + * QNetworkConfigurationManager::updateConfigurations() + * call from user might also end before receiving icd status. + * In such case, we come up to a bug: + * QNetworkConfigurationManagerPrivate::isOnline() will be false even + * if we are connected. + */ + Maemo::Icd icd; + QList state_results; + QMutexLocker locker(&mutex); + QNetworkConfigurationPrivatePointer ptr; + + if (icd.state(state_results) && !state_results.isEmpty()) { + + if (!(state_results.first().params.network_attrs == 0 && + state_results.first().params.network_id.isEmpty())) { + + switch (state_results.first().state) { + case ICD_STATE_CONNECTED: + m_onlineIapId = state_results.first().params.network_id; + + ptr = accessPointConfigurations.value(m_onlineIapId); + if (ptr) { + ptr->state = QNetworkConfiguration::Active; + + QMutexLocker configLocker(&ptr->mutex); + configLocker.unlock(); - // Calling ICD_DBUS_API_STATE_REQ makes sure that initial state will be updated immediately - m_gettingInitialConnectionState = true; - m_dbusInterface->call(ICD_DBUS_API_STATE_REQ); + locker.unlock(); + emit configurationChanged(ptr); + locker.relock(); + } + break; + default: + break; + } + } + } } void QIcdEngine::connectionStateSignalsSlot(QDBusMessage msg) @@ -814,12 +860,12 @@ void QIcdEngine::connectionStateSignalsSlot(QDBusMessage msg) ptr->type = QNetworkConfiguration::InternetAccessPoint; if (ptr->state != QNetworkConfiguration::Active) { ptr->state = QNetworkConfiguration::Active; - if (!m_gettingInitialConnectionState) { - configLocker.unlock(); - locker.unlock(); - emit configurationChanged(ptr); - locker.relock(); - } + + configLocker.unlock(); + locker.unlock(); + emit configurationChanged(ptr); + locker.relock(); + m_onlineIapId = iapid; } } else { @@ -840,22 +886,21 @@ void QIcdEngine::connectionStateSignalsSlot(QDBusMessage msg) ptr->type = QNetworkConfiguration::InternetAccessPoint; if (ptr->state == QNetworkConfiguration::Active) { ptr->state = QNetworkConfiguration::Discovered; - if (!m_gettingInitialConnectionState) { - configLocker.unlock(); - locker.unlock(); - emit configurationChanged(ptr); - locker.relock(); - // Note: If ICD switches used IAP from one to another: - // 1) new IAP is reported to be online first - // 2) old IAP is reported to be offline then - // => Device can be reported to be offline only - // if last known online IAP is reported to be disconnected - if (iapid == m_onlineIapId) { - // It's known that there is only one global ICD connection - // => Because ICD state was reported to be DISCONNECTED, Device is offline - m_onlineIapId.clear(); - } + configLocker.unlock(); + locker.unlock(); + emit configurationChanged(ptr); + locker.relock(); + + // Note: If ICD switches used IAP from one to another: + // 1) new IAP is reported to be online first + // 2) old IAP is reported to be offline then + // => Device can be reported to be offline only + // if last known online IAP is reported to be disconnected + if (iapid == m_onlineIapId) { + // It's known that there is only one global ICD connection + // => Because ICD state was reported to be DISCONNECTED, Device is offline + m_onlineIapId.clear(); } } } else { @@ -876,8 +921,6 @@ void QIcdEngine::connectionStateSignalsSlot(QDBusMessage msg) locker.unlock(); emit iapStateChanged(iapid, icd_connection_state); locker.relock(); - - m_gettingInitialConnectionState = false; } void QIcdEngine::requestUpdate() diff --git a/src/plugins/bearer/icd/qicdengine.h b/src/plugins/bearer/icd/qicdengine.h index a768d84..0d5ba27 100644 --- a/src/plugins/bearer/icd/qicdengine.h +++ b/src/plugins/bearer/icd/qicdengine.h @@ -152,6 +152,7 @@ private: void startListeningStateSignalsForAllConnections(); void doRequestUpdate(QList scanned = QList()); void cancelAsyncConfigurationUpdate(); + void getIcdInitialState(); private: IapMonitor *iapMonitor; @@ -162,7 +163,6 @@ private: QList m_scanResult; bool firstUpdate; - bool m_gettingInitialConnectionState; bool m_scanGoingOn; }; -- cgit v0.12 From dbdbac99ef4ae5243a5f2571b66d4949dbfdc88c Mon Sep 17 00:00:00 2001 From: Aaron McCarthy Date: Mon, 16 Aug 2010 11:14:24 +1000 Subject: Fixed a typo when doing a lock. Conflicts: src/plugins/bearer/icd/qicdengine.cpp --- src/plugins/bearer/icd/qicdengine.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/plugins/bearer/icd/qicdengine.cpp b/src/plugins/bearer/icd/qicdengine.cpp index 87b31da..cae2b7c 100644 --- a/src/plugins/bearer/icd/qicdengine.cpp +++ b/src/plugins/bearer/icd/qicdengine.cpp @@ -821,9 +821,8 @@ void QIcdEngine::getIcdInitialState() ptr = accessPointConfigurations.value(m_onlineIapId); if (ptr) { - ptr->state = QNetworkConfiguration::Active; - QMutexLocker configLocker(&ptr->mutex); + ptr->state = QNetworkConfiguration::Active; configLocker.unlock(); locker.unlock(); -- cgit v0.12 From 6f911718ba51b84ea34b45baf7f8b16954c33371 Mon Sep 17 00:00:00 2001 From: Aaron McCarthy Date: Mon, 16 Aug 2010 11:16:41 +1000 Subject: Mutex is already locked when private member function is called. Conflicts: src/plugins/bearer/icd/qicdengine.cpp --- src/plugins/bearer/icd/qicdengine.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/plugins/bearer/icd/qicdengine.cpp b/src/plugins/bearer/icd/qicdengine.cpp index cae2b7c..3264f15 100644 --- a/src/plugins/bearer/icd/qicdengine.cpp +++ b/src/plugins/bearer/icd/qicdengine.cpp @@ -807,7 +807,6 @@ void QIcdEngine::getIcdInitialState() */ Maemo::Icd icd; QList state_results; - QMutexLocker locker(&mutex); QNetworkConfigurationPrivatePointer ptr; if (icd.state(state_results) && !state_results.isEmpty()) { @@ -825,9 +824,9 @@ void QIcdEngine::getIcdInitialState() ptr->state = QNetworkConfiguration::Active; configLocker.unlock(); - locker.unlock(); + mutex.unlock(); emit configurationChanged(ptr); - locker.relock(); + mutex.lock(); } break; default: -- cgit v0.12 From a1deaf3227ed6bfc086f0142a057d76ccf735e76 Mon Sep 17 00:00:00 2001 From: Aaron McCarthy Date: Thu, 12 Aug 2010 15:17:59 +1000 Subject: Register QNetworkConfigurationPrivatePointer metatype. --- src/network/bearer/qnetworkconfigmanager_p.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/network/bearer/qnetworkconfigmanager_p.cpp b/src/network/bearer/qnetworkconfigmanager_p.cpp index c4f7c00..dd174bf 100644 --- a/src/network/bearer/qnetworkconfigmanager_p.cpp +++ b/src/network/bearer/qnetworkconfigmanager_p.cpp @@ -63,6 +63,7 @@ QNetworkConfigurationManagerPrivate::QNetworkConfigurationManagerPrivate() : pollTimer(0), mutex(QMutex::Recursive), forcedPolling(0), firstUpdate(true) { qRegisterMetaType("QNetworkConfiguration"); + qRegisterMetaType("QNetworkConfigurationPrivatePointer"); moveToThread(QCoreApplicationPrivate::mainThread()); updateConfigurations(); -- cgit v0.12 From d379b4b4d284a1fe5f7cd436d103fbede43b9ca3 Mon Sep 17 00:00:00 2001 From: Aaron McCarthy Date: Thu, 12 Aug 2010 14:48:30 +1000 Subject: Remove version 0.41 of libconninet. --- src/3rdparty/libconninet/AUTHORS | 0 src/3rdparty/libconninet/COPYING | 510 ------ src/3rdparty/libconninet/ChangeLog | 0 src/3rdparty/libconninet/INSTALL | 229 --- src/3rdparty/libconninet/Makefile.am | 49 - src/3rdparty/libconninet/NEWS | 0 src/3rdparty/libconninet/README | 0 src/3rdparty/libconninet/autogen.sh | 3 - src/3rdparty/libconninet/config.guess | 1533 ------------------ src/3rdparty/libconninet/config.sub | 1693 -------------------- src/3rdparty/libconninet/configure.ac | 90 -- src/3rdparty/libconninet/conninet.pc.in | 11 - src/3rdparty/libconninet/debian/changelog | 285 ---- src/3rdparty/libconninet/debian/compat | 1 - src/3rdparty/libconninet/debian/control | 39 - src/3rdparty/libconninet/debian/copyright | 19 - .../libconninet/debian/libconninet0-dev.dirs | 2 - .../libconninet/debian/libconninet0-dev.files | 4 - src/3rdparty/libconninet/debian/libconninet0.dirs | 1 - src/3rdparty/libconninet/debian/libconninet0.files | 1 - src/3rdparty/libconninet/debian/rules | 123 -- src/3rdparty/libconninet/doxygen.cfg.in | 1147 ------------- src/3rdparty/libconninet/src/Makefile.am | 36 - src/3rdparty/libconninet/src/dbusdispatcher.cpp | 611 ------- src/3rdparty/libconninet/src/dbusdispatcher.h | 91 -- src/3rdparty/libconninet/src/iapconf.cpp | 299 ---- src/3rdparty/libconninet/src/iapconf.h | 84 - src/3rdparty/libconninet/src/iapmonitor.cpp | 110 -- src/3rdparty/libconninet/src/iapmonitor.h | 48 - src/3rdparty/libconninet/src/maemo_icd.cpp | 1277 --------------- src/3rdparty/libconninet/src/maemo_icd.h | 182 --- src/3rdparty/libconninet/src/proxyconf.cpp | 315 ---- src/3rdparty/libconninet/src/proxyconf.h | 53 - src/3rdparty/libconninet/tests/Makefile.am | 39 - .../libconninet/tests/ut_dbusdispatcher.cpp | 191 --- src/3rdparty/libconninet/tests/ut_iapconf.cpp | 186 --- src/3rdparty/libconninet/tests/ut_iapmonitor.cpp | 118 -- src/3rdparty/libconninet/tests/ut_maemo_icd.cpp | 274 ---- src/3rdparty/libconninet/tests/ut_proxyconf.cpp | 400 ----- 39 files changed, 10054 deletions(-) delete mode 100644 src/3rdparty/libconninet/AUTHORS delete mode 100644 src/3rdparty/libconninet/COPYING delete mode 100644 src/3rdparty/libconninet/ChangeLog delete mode 100644 src/3rdparty/libconninet/INSTALL delete mode 100644 src/3rdparty/libconninet/Makefile.am delete mode 100644 src/3rdparty/libconninet/NEWS delete mode 100644 src/3rdparty/libconninet/README delete mode 100755 src/3rdparty/libconninet/autogen.sh delete mode 100755 src/3rdparty/libconninet/config.guess delete mode 100755 src/3rdparty/libconninet/config.sub delete mode 100644 src/3rdparty/libconninet/configure.ac delete mode 100644 src/3rdparty/libconninet/conninet.pc.in delete mode 100644 src/3rdparty/libconninet/debian/changelog delete mode 100644 src/3rdparty/libconninet/debian/compat delete mode 100644 src/3rdparty/libconninet/debian/control delete mode 100644 src/3rdparty/libconninet/debian/copyright delete mode 100644 src/3rdparty/libconninet/debian/libconninet0-dev.dirs delete mode 100644 src/3rdparty/libconninet/debian/libconninet0-dev.files delete mode 100644 src/3rdparty/libconninet/debian/libconninet0.dirs delete mode 100644 src/3rdparty/libconninet/debian/libconninet0.files delete mode 100755 src/3rdparty/libconninet/debian/rules delete mode 100644 src/3rdparty/libconninet/doxygen.cfg.in delete mode 100644 src/3rdparty/libconninet/src/Makefile.am delete mode 100644 src/3rdparty/libconninet/src/dbusdispatcher.cpp delete mode 100644 src/3rdparty/libconninet/src/dbusdispatcher.h delete mode 100644 src/3rdparty/libconninet/src/iapconf.cpp delete mode 100644 src/3rdparty/libconninet/src/iapconf.h delete mode 100644 src/3rdparty/libconninet/src/iapmonitor.cpp delete mode 100644 src/3rdparty/libconninet/src/iapmonitor.h delete mode 100644 src/3rdparty/libconninet/src/maemo_icd.cpp delete mode 100644 src/3rdparty/libconninet/src/maemo_icd.h delete mode 100644 src/3rdparty/libconninet/src/proxyconf.cpp delete mode 100644 src/3rdparty/libconninet/src/proxyconf.h delete mode 100644 src/3rdparty/libconninet/tests/Makefile.am delete mode 100644 src/3rdparty/libconninet/tests/ut_dbusdispatcher.cpp delete mode 100644 src/3rdparty/libconninet/tests/ut_iapconf.cpp delete mode 100644 src/3rdparty/libconninet/tests/ut_iapmonitor.cpp delete mode 100644 src/3rdparty/libconninet/tests/ut_maemo_icd.cpp delete mode 100644 src/3rdparty/libconninet/tests/ut_proxyconf.cpp diff --git a/src/3rdparty/libconninet/AUTHORS b/src/3rdparty/libconninet/AUTHORS deleted file mode 100644 index e69de29..0000000 diff --git a/src/3rdparty/libconninet/COPYING b/src/3rdparty/libconninet/COPYING deleted file mode 100644 index b124cf5..0000000 --- a/src/3rdparty/libconninet/COPYING +++ /dev/null @@ -1,510 +0,0 @@ - - GNU LESSER GENERAL PUBLIC LICENSE - Version 2.1, February 1999 - - Copyright (C) 1991, 1999 Free Software Foundation, Inc. - 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - -[This is the first released version of the Lesser GPL. It also counts - as the successor of the GNU Library Public License, version 2, hence - the version number 2.1.] - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -Licenses are intended to guarantee your freedom to share and change -free software--to make sure the software is free for all its users. - - This license, the Lesser General Public License, applies to some -specially designated software packages--typically libraries--of the -Free Software Foundation and other authors who decide to use it. You -can use it too, but we suggest you first think carefully about whether -this license or the ordinary General Public License is the better -strategy to use in any particular case, based on the explanations -below. - - When we speak of free software, we are referring to freedom of use, -not price. Our General Public Licenses are designed to make sure that -you have the freedom to distribute copies of free software (and charge -for this service if you wish); that you receive source code or can get -it if you want it; that you can change the software and use pieces of -it in new free programs; and that you are informed that you can do -these things. - - To protect your rights, we need to make restrictions that forbid -distributors to deny you these rights or to ask you to surrender these -rights. These restrictions translate to certain responsibilities for -you if you distribute copies of the library or if you modify it. - - For example, if you distribute copies of the library, whether gratis -or for a fee, you must give the recipients all the rights that we gave -you. You must make sure that they, too, receive or can get the source -code. If you link other code with the library, you must provide -complete object files to the recipients, so that they can relink them -with the library after making changes to the library and recompiling -it. And you must show them these terms so they know their rights. - - We protect your rights with a two-step method: (1) we copyright the -library, and (2) we offer you this license, which gives you legal -permission to copy, distribute and/or modify the library. - - To protect each distributor, we want to make it very clear that -there is no warranty for the free library. Also, if the library is -modified by someone else and passed on, the recipients should know -that what they have is not the original version, so that the original -author's reputation will not be affected by problems that might be -introduced by others. - - Finally, software patents pose a constant threat to the existence of -any free program. We wish to make sure that a company cannot -effectively restrict the users of a free program by obtaining a -restrictive license from a patent holder. Therefore, we insist that -any patent license obtained for a version of the library must be -consistent with the full freedom of use specified in this license. - - Most GNU software, including some libraries, is covered by the -ordinary GNU General Public License. This license, the GNU Lesser -General Public License, applies to certain designated libraries, and -is quite different from the ordinary General Public License. We use -this license for certain libraries in order to permit linking those -libraries into non-free programs. - - When a program is linked with a library, whether statically or using -a shared library, the combination of the two is legally speaking a -combined work, a derivative of the original library. The ordinary -General Public License therefore permits such linking only if the -entire combination fits its criteria of freedom. The Lesser General -Public License permits more lax criteria for linking other code with -the library. - - We call this license the "Lesser" General Public License because it -does Less to protect the user's freedom than the ordinary General -Public License. It also provides other free software developers Less -of an advantage over competing non-free programs. These disadvantages -are the reason we use the ordinary General Public License for many -libraries. However, the Lesser license provides advantages in certain -special circumstances. - - For example, on rare occasions, there may be a special need to -encourage the widest possible use of a certain library, so that it -becomes a de-facto standard. To achieve this, non-free programs must -be allowed to use the library. A more frequent case is that a free -library does the same job as widely used non-free libraries. In this -case, there is little to gain by limiting the free library to free -software only, so we use the Lesser General Public License. - - In other cases, permission to use a particular library in non-free -programs enables a greater number of people to use a large body of -free software. For example, permission to use the GNU C Library in -non-free programs enables many more people to use the whole GNU -operating system, as well as its variant, the GNU/Linux operating -system. - - Although the Lesser General Public License is Less protective of the -users' freedom, it does ensure that the user of a program that is -linked with the Library has the freedom and the wherewithal to run -that program using a modified version of the Library. - - The precise terms and conditions for copying, distribution and -modification follow. Pay close attention to the difference between a -"work based on the library" and a "work that uses the library". The -former contains code derived from the library, whereas the latter must -be combined with the library in order to run. - - GNU LESSER GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License Agreement applies to any software library or other -program which contains a notice placed by the copyright holder or -other authorized party saying it may be distributed under the terms of -this Lesser General Public License (also called "this License"). -Each licensee is addressed as "you". - - A "library" means a collection of software functions and/or data -prepared so as to be conveniently linked with application programs -(which use some of those functions and data) to form executables. - - The "Library", below, refers to any such software library or work -which has been distributed under these terms. A "work based on the -Library" means either the Library or any derivative work under -copyright law: that is to say, a work containing the Library or a -portion of it, either verbatim or with modifications and/or translated -straightforwardly into another language. (Hereinafter, translation is -included without limitation in the term "modification".) - - "Source code" for a work means the preferred form of the work for -making modifications to it. For a library, complete source code means -all the source code for all modules it contains, plus any associated -interface definition files, plus the scripts used to control -compilation and installation of the library. - - Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running a program using the Library is not restricted, and output from -such a program is covered only if its contents constitute a work based -on the Library (independent of the use of the Library in a tool for -writing it). Whether that is true depends on what the Library does -and what the program that uses the Library does. - - 1. You may copy and distribute verbatim copies of the Library's -complete source code as you receive it, in any medium, provided that -you conspicuously and appropriately publish on each copy an -appropriate copyright notice and disclaimer of warranty; keep intact -all the notices that refer to this License and to the absence of any -warranty; and distribute a copy of this License along with the -Library. - - You may charge a fee for the physical act of transferring a copy, -and you may at your option offer warranty protection in exchange for a -fee. - - 2. You may modify your copy or copies of the Library or any portion -of it, thus forming a work based on the Library, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) The modified work must itself be a software library. - - b) You must cause the files modified to carry prominent notices - stating that you changed the files and the date of any change. - - c) You must cause the whole of the work to be licensed at no - charge to all third parties under the terms of this License. - - d) If a facility in the modified Library refers to a function or a - table of data to be supplied by an application program that uses - the facility, other than as an argument passed when the facility - is invoked, then you must make a good faith effort to ensure that, - in the event an application does not supply such function or - table, the facility still operates, and performs whatever part of - its purpose remains meaningful. - - (For example, a function in a library to compute square roots has - a purpose that is entirely well-defined independent of the - application. Therefore, Subsection 2d requires that any - application-supplied function or table used by this function must - be optional: if the application does not supply it, the square - root function must still compute square roots.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Library, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Library, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote -it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Library. - -In addition, mere aggregation of another work not based on the Library -with the Library (or with a work based on the Library) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may opt to apply the terms of the ordinary GNU General Public -License instead of this License to a given copy of the Library. To do -this, you must alter all the notices that refer to this License, so -that they refer to the ordinary GNU General Public License, version 2, -instead of to this License. (If a newer version than version 2 of the -ordinary GNU General Public License has appeared, then you can specify -that version instead if you wish.) Do not make any other change in -these notices. - - Once this change is made in a given copy, it is irreversible for -that copy, so the ordinary GNU General Public License applies to all -subsequent copies and derivative works made from that copy. - - This option is useful when you wish to copy part of the code of -the Library into a program that is not a library. - - 4. You may copy and distribute the Library (or a portion or -derivative of it, under Section 2) in object code or executable form -under the terms of Sections 1 and 2 above provided that you accompany -it with the complete corresponding machine-readable source code, which -must be distributed under the terms of Sections 1 and 2 above on a -medium customarily used for software interchange. - - If distribution of object code is made by offering access to copy -from a designated place, then offering equivalent access to copy the -source code from the same place satisfies the requirement to -distribute the source code, even though third parties are not -compelled to copy the source along with the object code. - - 5. A program that contains no derivative of any portion of the -Library, but is designed to work with the Library by being compiled or -linked with it, is called a "work that uses the Library". Such a -work, in isolation, is not a derivative work of the Library, and -therefore falls outside the scope of this License. - - However, linking a "work that uses the Library" with the Library -creates an executable that is a derivative of the Library (because it -contains portions of the Library), rather than a "work that uses the -library". The executable is therefore covered by this License. -Section 6 states terms for distribution of such executables. - - When a "work that uses the Library" uses material from a header file -that is part of the Library, the object code for the work may be a -derivative work of the Library even though the source code is not. -Whether this is true is especially significant if the work can be -linked without the Library, or if the work is itself a library. The -threshold for this to be true is not precisely defined by law. - - If such an object file uses only numerical parameters, data -structure layouts and accessors, and small macros and small inline -functions (ten lines or less in length), then the use of the object -file is unrestricted, regardless of whether it is legally a derivative -work. (Executables containing this object code plus portions of the -Library will still fall under Section 6.) - - Otherwise, if the work is a derivative of the Library, you may -distribute the object code for the work under the terms of Section 6. -Any executables containing that work also fall under Section 6, -whether or not they are linked directly with the Library itself. - - 6. As an exception to the Sections above, you may also combine or -link a "work that uses the Library" with the Library to produce a -work containing portions of the Library, and distribute that work -under terms of your choice, provided that the terms permit -modification of the work for the customer's own use and reverse -engineering for debugging such modifications. - - You must give prominent notice with each copy of the work that the -Library is used in it and that the Library and its use are covered by -this License. You must supply a copy of this License. If the work -during execution displays copyright notices, you must include the -copyright notice for the Library among them, as well as a reference -directing the user to the copy of this License. Also, you must do one -of these things: - - a) Accompany the work with the complete corresponding - machine-readable source code for the Library including whatever - changes were used in the work (which must be distributed under - Sections 1 and 2 above); and, if the work is an executable linked - with the Library, with the complete machine-readable "work that - uses the Library", as object code and/or source code, so that the - user can modify the Library and then relink to produce a modified - executable containing the modified Library. (It is understood - that the user who changes the contents of definitions files in the - Library will not necessarily be able to recompile the application - to use the modified definitions.) - - b) Use a suitable shared library mechanism for linking with the - Library. A suitable mechanism is one that (1) uses at run time a - copy of the library already present on the user's computer system, - rather than copying library functions into the executable, and (2) - will operate properly with a modified version of the library, if - the user installs one, as long as the modified version is - interface-compatible with the version that the work was made with. - - c) Accompany the work with a written offer, valid for at least - three years, to give the same user the materials specified in - Subsection 6a, above, for a charge no more than the cost of - performing this distribution. - - d) If distribution of the work is made by offering access to copy - from a designated place, offer equivalent access to copy the above - specified materials from the same place. - - e) Verify that the user has already received a copy of these - materials or that you have already sent this user a copy. - - For an executable, the required form of the "work that uses the -Library" must include any data and utility programs needed for -reproducing the executable from it. However, as a special exception, -the materials to be distributed need not include anything that is -normally distributed (in either source or binary form) with the major -components (compiler, kernel, and so on) of the operating system on -which the executable runs, unless that component itself accompanies -the executable. - - It may happen that this requirement contradicts the license -restrictions of other proprietary libraries that do not normally -accompany the operating system. Such a contradiction means you cannot -use both them and the Library together in an executable that you -distribute. - - 7. You may place library facilities that are a work based on the -Library side-by-side in a single library together with other library -facilities not covered by this License, and distribute such a combined -library, provided that the separate distribution of the work based on -the Library and of the other library facilities is otherwise -permitted, and provided that you do these two things: - - a) Accompany the combined library with a copy of the same work - based on the Library, uncombined with any other library - facilities. This must be distributed under the terms of the - Sections above. - - b) Give prominent notice with the combined library of the fact - that part of it is a work based on the Library, and explaining - where to find the accompanying uncombined form of the same work. - - 8. You may not copy, modify, sublicense, link with, or distribute -the Library except as expressly provided under this License. Any -attempt otherwise to copy, modify, sublicense, link with, or -distribute the Library is void, and will automatically terminate your -rights under this License. However, parties who have received copies, -or rights, from you under this License will not have their licenses -terminated so long as such parties remain in full compliance. - - 9. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Library or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Library (or any work based on the -Library), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Library or works based on it. - - 10. Each time you redistribute the Library (or any work based on the -Library), the recipient automatically receives a license from the -original licensor to copy, distribute, link with or modify the Library -subject to these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties with -this License. - - 11. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Library at all. For example, if a patent -license would not permit royalty-free redistribution of the Library by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Library. - -If any portion of this section is held invalid or unenforceable under -any particular circumstance, the balance of the section is intended to -apply, and the section as a whole is intended to apply in other -circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 12. If the distribution and/or use of the Library is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Library under this License -may add an explicit geographical distribution limitation excluding those -countries, so that distribution is permitted only in or among -countries not thus excluded. In such case, this License incorporates -the limitation as if written in the body of this License. - - 13. The Free Software Foundation may publish revised and/or new -versions of the Lesser General Public License from time to time. -Such new versions will be similar in spirit to the present version, -but may differ in detail to address new problems or concerns. - -Each version is given a distinguishing version number. If the Library -specifies a version number of this License which applies to it and -"any later version", you have the option of following the terms and -conditions either of that version or of any later version published by -the Free Software Foundation. If the Library does not specify a -license version number, you may choose any version ever published by -the Free Software Foundation. - - 14. If you wish to incorporate parts of the Library into other free -programs whose distribution conditions are incompatible with these, -write to the author to ask for permission. For software which is -copyrighted by the Free Software Foundation, write to the Free -Software Foundation; we sometimes make exceptions for this. Our -decision will be guided by the two goals of preserving the free status -of all derivatives of our free software and of promoting the sharing -and reuse of software generally. - - NO WARRANTY - - 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO -WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. -EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR -OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY -KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR -PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE -LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME -THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. - - 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN -WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY -AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU -FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR -CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE -LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING -RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A -FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF -SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH -DAMAGES. - - END OF TERMS AND CONDITIONS - - How to Apply These Terms to Your New Libraries - - If you develop a new library, and you want it to be of the greatest -possible use to the public, we recommend making it free software that -everyone can redistribute and change. You can do so by permitting -redistribution under these terms (or, alternatively, under the terms -of the ordinary General Public License). - - To apply these terms, attach the following notices to the library. -It is safest to attach them to the start of each source file to most -effectively convey the exclusion of warranty; and each file should -have at least the "copyright" line and a pointer to where the full -notice is found. - - - - Copyright (C) - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -Also add information on how to contact you by electronic and paper mail. - -You should also get your employer (if you work as a programmer) or -your school, if any, to sign a "copyright disclaimer" for the library, -if necessary. Here is a sample; alter the names: - - Yoyodyne, Inc., hereby disclaims all copyright interest in the - library `Frob' (a library for tweaking knobs) written by James - Random Hacker. - - , 1 April 1990 - Ty Coon, President of Vice - -That's all there is to it! - - diff --git a/src/3rdparty/libconninet/ChangeLog b/src/3rdparty/libconninet/ChangeLog deleted file mode 100644 index e69de29..0000000 diff --git a/src/3rdparty/libconninet/INSTALL b/src/3rdparty/libconninet/INSTALL deleted file mode 100644 index 54caf7c..0000000 --- a/src/3rdparty/libconninet/INSTALL +++ /dev/null @@ -1,229 +0,0 @@ -Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002 Free Software -Foundation, Inc. - - This file is free documentation; the Free Software Foundation gives -unlimited permission to copy, distribute and modify it. - -Basic Installation -================== - - These are generic installation instructions. - - The `configure' shell script attempts to guess correct values for -various system-dependent variables used during compilation. It uses -those values to create a `Makefile' in each directory of the package. -It may also create one or more `.h' files containing system-dependent -definitions. Finally, it creates a shell script `config.status' that -you can run in the future to recreate the current configuration, and a -file `config.log' containing compiler output (useful mainly for -debugging `configure'). - - It can also use an optional file (typically called `config.cache' -and enabled with `--cache-file=config.cache' or simply `-C') that saves -the results of its tests to speed up reconfiguring. (Caching is -disabled by default to prevent problems with accidental use of stale -cache files.) - - If you need to do unusual things to compile the package, please try -to figure out how `configure' could check whether to do them, and mail -diffs or instructions to the address given in the `README' so they can -be considered for the next release. If you are using the cache, and at -some point `config.cache' contains results you don't want to keep, you -may remove or edit it. - - The file `configure.ac' (or `configure.in') is used to create -`configure' by a program called `autoconf'. You only need -`configure.ac' if you want to change it or regenerate `configure' using -a newer version of `autoconf'. - -The simplest way to compile this package is: - - 1. `cd' to the directory containing the package's source code and type - `./configure' to configure the package for your system. If you're - using `csh' on an old version of System V, you might need to type - `sh ./configure' instead to prevent `csh' from trying to execute - `configure' itself. - - Running `configure' takes awhile. While running, it prints some - messages telling which features it is checking for. - - 2. Type `make' to compile the package. - - 3. Optionally, type `make check' to run any self-tests that come with - the package. - - 4. Type `make install' to install the programs and any data files and - documentation. - - 5. You can remove the program binaries and object files from the - source code directory by typing `make clean'. To also remove the - files that `configure' created (so you can compile the package for - a different kind of computer), type `make distclean'. There is - also a `make maintainer-clean' target, but that is intended mainly - for the package's developers. If you use it, you may have to get - all sorts of other programs in order to regenerate files that came - with the distribution. - -Compilers and Options -===================== - - Some systems require unusual options for compilation or linking that -the `configure' script does not know about. Run `./configure --help' -for details on some of the pertinent environment variables. - - You can give `configure' initial values for configuration parameters -by setting variables in the command line or in the environment. Here -is an example: - - ./configure CC=c89 CFLAGS=-O2 LIBS=-lposix - - *Note Defining Variables::, for more details. - -Compiling For Multiple Architectures -==================================== - - You can compile the package for more than one kind of computer at the -same time, by placing the object files for each architecture in their -own directory. To do this, you must use a version of `make' that -supports the `VPATH' variable, such as GNU `make'. `cd' to the -directory where you want the object files and executables to go and run -the `configure' script. `configure' automatically checks for the -source code in the directory that `configure' is in and in `..'. - - If you have to use a `make' that does not support the `VPATH' -variable, you have to compile the package for one architecture at a -time in the source code directory. After you have installed the -package for one architecture, use `make distclean' before reconfiguring -for another architecture. - -Installation Names -================== - - By default, `make install' will install the package's files in -`/usr/local/bin', `/usr/local/man', etc. You can specify an -installation prefix other than `/usr/local' by giving `configure' the -option `--prefix=PATH'. - - You can specify separate installation prefixes for -architecture-specific files and architecture-independent files. If you -give `configure' the option `--exec-prefix=PATH', the package will use -PATH as the prefix for installing programs and libraries. -Documentation and other data files will still use the regular prefix. - - In addition, if you use an unusual directory layout you can give -options like `--bindir=PATH' to specify different values for particular -kinds of files. Run `configure --help' for a list of the directories -you can set and what kinds of files go in them. - - If the package supports it, you can cause programs to be installed -with an extra prefix or suffix on their names by giving `configure' the -option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'. - -Optional Features -================= - - Some packages pay attention to `--enable-FEATURE' options to -`configure', where FEATURE indicates an optional part of the package. -They may also pay attention to `--with-PACKAGE' options, where PACKAGE -is something like `gnu-as' or `x' (for the X Window System). The -`README' should mention any `--enable-' and `--with-' options that the -package recognizes. - - For packages that use the X Window System, `configure' can usually -find the X include and library files automatically, but if it doesn't, -you can use the `configure' options `--x-includes=DIR' and -`--x-libraries=DIR' to specify their locations. - -Specifying the System Type -========================== - - There may be some features `configure' cannot figure out -automatically, but needs to determine by the type of machine the package -will run on. Usually, assuming the package is built to be run on the -_same_ architectures, `configure' can figure that out, but if it prints -a message saying it cannot guess the machine type, give it the -`--build=TYPE' option. TYPE can either be a short name for the system -type, such as `sun4', or a canonical name which has the form: - - CPU-COMPANY-SYSTEM - -where SYSTEM can have one of these forms: - - OS KERNEL-OS - - See the file `config.sub' for the possible values of each field. If -`config.sub' isn't included in this package, then this package doesn't -need to know the machine type. - - If you are _building_ compiler tools for cross-compiling, you should -use the `--target=TYPE' option to select the type of system they will -produce code for. - - If you want to _use_ a cross compiler, that generates code for a -platform different from the build platform, you should specify the -"host" platform (i.e., that on which the generated programs will -eventually be run) with `--host=TYPE'. - -Sharing Defaults -================ - - If you want to set default values for `configure' scripts to share, -you can create a site shell script called `config.site' that gives -default values for variables like `CC', `cache_file', and `prefix'. -`configure' looks for `PREFIX/share/config.site' if it exists, then -`PREFIX/etc/config.site' if it exists. Or, you can set the -`CONFIG_SITE' environment variable to the location of the site script. -A warning: not all `configure' scripts look for a site script. - -Defining Variables -================== - - Variables not defined in a site shell script can be set in the -environment passed to `configure'. However, some packages may run -configure again during the build, and the customized values of these -variables may be lost. In order to avoid this problem, you should set -them in the `configure' command line, using `VAR=value'. For example: - - ./configure CC=/usr/local2/bin/gcc - -will cause the specified gcc to be used as the C compiler (unless it is -overridden in the site shell script). - -`configure' Invocation -====================== - - `configure' recognizes the following options to control how it -operates. - -`--help' -`-h' - Print a summary of the options to `configure', and exit. - -`--version' -`-V' - Print the version of Autoconf used to generate the `configure' - script, and exit. - -`--cache-file=FILE' - Enable the cache: use and save the results of the tests in FILE, - traditionally `config.cache'. FILE defaults to `/dev/null' to - disable caching. - -`--config-cache' -`-C' - Alias for `--cache-file=config.cache'. - -`--quiet' -`--silent' -`-q' - Do not print messages saying which checks are being made. To - suppress all normal output, redirect it to `/dev/null' (any error - messages will still be shown). - -`--srcdir=DIR' - Look for the package's source code in directory DIR. Usually - `configure' can determine that directory automatically. - -`configure' also accepts some other, not widely useful, options. Run -`configure --help' for more details. - diff --git a/src/3rdparty/libconninet/Makefile.am b/src/3rdparty/libconninet/Makefile.am deleted file mode 100644 index 250637a..0000000 --- a/src/3rdparty/libconninet/Makefile.am +++ /dev/null @@ -1,49 +0,0 @@ -SUBDIRS = src tests - -pkgconfigdir = $(libdir)/pkgconfig -pkgconfig_DATA = conninet.pc - -MAINTAINERCLEANFILES = \ - Makefile.in config.h.in configure \ - install-sh ltmain.sh missing mkinstalldirs \ - config.log config.status config.guess config.sub \ - build-stamp compile depcomp acinclude.m4 aclocal.m4 \ - debian/files \ - debian/libconninet0.postinst.debhelper \ - debian/libconninet0.postrm.debhelper \ - debian/libconninet0.substvars - -EXTRA_DIST = \ - debian/changelog \ - debian/compat \ - debian/control \ - debian/copyright \ - debian/libconninet0-dev.dirs \ - debian/libconninet0-dev.files \ - debian/libconninet0.dirs \ - debian/libconninet0.files \ - debian/rules - -# get rid of debian build dirs -maintainer-clean-local: - -rm -rf debian/build debian/tmp \ - debian/libconninet0 \ - debian/libconninet0-dev \ - debian/libconninet0-dbg - -if DOXYGEN_DOCS_ENABLED - DOXYGEN_LINE = $(DOXYGEN) doxygen.cfg -else - DOXYGEN_LINE = -endif - -.PHONY : doc - -doc: - $(DOXYGEN_LINE) - -deb: dist - -mkdir $(top_builddir)/debian-build - cd $(top_builddir)/debian-build && tar zxf ../$(top_builddir)/$(PACKAGE)-$(VERSION).tar.gz - cd $(top_builddir)/debian-build/$(PACKAGE)-$(VERSION) && dpkg-buildpackage -rfakeroot -sa -D - -rm -rf $(top_builddir)/debian-build/$(PACKAGE)-$(VERSION) diff --git a/src/3rdparty/libconninet/NEWS b/src/3rdparty/libconninet/NEWS deleted file mode 100644 index e69de29..0000000 diff --git a/src/3rdparty/libconninet/README b/src/3rdparty/libconninet/README deleted file mode 100644 index e69de29..0000000 diff --git a/src/3rdparty/libconninet/autogen.sh b/src/3rdparty/libconninet/autogen.sh deleted file mode 100755 index a8fd885..0000000 --- a/src/3rdparty/libconninet/autogen.sh +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/sh - -autoreconf --verbose --install --force diff --git a/src/3rdparty/libconninet/config.guess b/src/3rdparty/libconninet/config.guess deleted file mode 100755 index e3a2116..0000000 --- a/src/3rdparty/libconninet/config.guess +++ /dev/null @@ -1,1533 +0,0 @@ -#! /bin/sh -# Attempt to guess a canonical system name. -# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, -# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 -# Free Software Foundation, Inc. - -timestamp='2009-06-10' - -# This file is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA -# 02110-1301, USA. -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - - -# Originally written by Per Bothner . -# Please send patches to . Submit a context -# diff and a properly formatted ChangeLog entry. -# -# This script attempts to guess a canonical system name similar to -# config.sub. If it succeeds, it prints the system name on stdout, and -# exits with 0. Otherwise, it exits with 1. -# -# The plan is that this can be called by configure scripts if you -# don't specify an explicit build system type. - -me=`echo "$0" | sed -e 's,.*/,,'` - -usage="\ -Usage: $0 [OPTION] - -Output the configuration name of the system \`$me' is run on. - -Operation modes: - -h, --help print this help, then exit - -t, --time-stamp print date of last modification, then exit - -v, --version print version number, then exit - -Report bugs and patches to ." - -version="\ -GNU config.guess ($timestamp) - -Originally written by Per Bothner. -Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, -2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. - -This is free software; see the source for copying conditions. There is NO -warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." - -help=" -Try \`$me --help' for more information." - -# Parse command line -while test $# -gt 0 ; do - case $1 in - --time-stamp | --time* | -t ) - echo "$timestamp" ; exit ;; - --version | -v ) - echo "$version" ; exit ;; - --help | --h* | -h ) - echo "$usage"; exit ;; - -- ) # Stop option processing - shift; break ;; - - ) # Use stdin as input. - break ;; - -* ) - echo "$me: invalid option $1$help" >&2 - exit 1 ;; - * ) - break ;; - esac -done - -if test $# != 0; then - echo "$me: too many arguments$help" >&2 - exit 1 -fi - -trap 'exit 1' 1 2 15 - -# CC_FOR_BUILD -- compiler used by this script. Note that the use of a -# compiler to aid in system detection is discouraged as it requires -# temporary files to be created and, as you can see below, it is a -# headache to deal with in a portable fashion. - -# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still -# use `HOST_CC' if defined, but it is deprecated. - -# Portable tmp directory creation inspired by the Autoconf team. - -set_cc_for_build=' -trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; -trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; -: ${TMPDIR=/tmp} ; - { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || - { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || - { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || - { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; -dummy=$tmp/dummy ; -tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; -case $CC_FOR_BUILD,$HOST_CC,$CC in - ,,) echo "int x;" > $dummy.c ; - for c in cc gcc c89 c99 ; do - if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then - CC_FOR_BUILD="$c"; break ; - fi ; - done ; - if test x"$CC_FOR_BUILD" = x ; then - CC_FOR_BUILD=no_compiler_found ; - fi - ;; - ,,*) CC_FOR_BUILD=$CC ;; - ,*,*) CC_FOR_BUILD=$HOST_CC ;; -esac ; set_cc_for_build= ;' - -# This is needed to find uname on a Pyramid OSx when run in the BSD universe. -# (ghazi@noc.rutgers.edu 1994-08-24) -if (test -f /.attbin/uname) >/dev/null 2>&1 ; then - PATH=$PATH:/.attbin ; export PATH -fi - -UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown -UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown -UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown -UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown - -# Note: order is significant - the case branches are not exclusive. - -case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in - *:NetBSD:*:*) - # NetBSD (nbsd) targets should (where applicable) match one or - # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*, - # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently - # switched to ELF, *-*-netbsd* would select the old - # object file format. This provides both forward - # compatibility and a consistent mechanism for selecting the - # object file format. - # - # Note: NetBSD doesn't particularly care about the vendor - # portion of the name. We always set it to "unknown". - sysctl="sysctl -n hw.machine_arch" - UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \ - /usr/sbin/$sysctl 2>/dev/null || echo unknown)` - case "${UNAME_MACHINE_ARCH}" in - armeb) machine=armeb-unknown ;; - arm*) machine=arm-unknown ;; - sh3el) machine=shl-unknown ;; - sh3eb) machine=sh-unknown ;; - sh5el) machine=sh5le-unknown ;; - *) machine=${UNAME_MACHINE_ARCH}-unknown ;; - esac - # The Operating System including object format, if it has switched - # to ELF recently, or will in the future. - case "${UNAME_MACHINE_ARCH}" in - arm*|i386|m68k|ns32k|sh3*|sparc|vax) - eval $set_cc_for_build - if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ - | grep -q __ELF__ - then - # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). - # Return netbsd for either. FIX? - os=netbsd - else - os=netbsdelf - fi - ;; - *) - os=netbsd - ;; - esac - # The OS release - # Debian GNU/NetBSD machines have a different userland, and - # thus, need a distinct triplet. However, they do not need - # kernel version information, so it can be replaced with a - # suitable tag, in the style of linux-gnu. - case "${UNAME_VERSION}" in - Debian*) - release='-gnu' - ;; - *) - release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` - ;; - esac - # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: - # contains redundant information, the shorter form: - # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. - echo "${machine}-${os}${release}" - exit ;; - *:OpenBSD:*:*) - UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` - echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} - exit ;; - *:ekkoBSD:*:*) - echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} - exit ;; - *:SolidBSD:*:*) - echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE} - exit ;; - macppc:MirBSD:*:*) - echo powerpc-unknown-mirbsd${UNAME_RELEASE} - exit ;; - *:MirBSD:*:*) - echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} - exit ;; - alpha:OSF1:*:*) - case $UNAME_RELEASE in - *4.0) - UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` - ;; - *5.*) - UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` - ;; - esac - # According to Compaq, /usr/sbin/psrinfo has been available on - # OSF/1 and Tru64 systems produced since 1995. I hope that - # covers most systems running today. This code pipes the CPU - # types through head -n 1, so we only detect the type of CPU 0. - ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` - case "$ALPHA_CPU_TYPE" in - "EV4 (21064)") - UNAME_MACHINE="alpha" ;; - "EV4.5 (21064)") - UNAME_MACHINE="alpha" ;; - "LCA4 (21066/21068)") - UNAME_MACHINE="alpha" ;; - "EV5 (21164)") - UNAME_MACHINE="alphaev5" ;; - "EV5.6 (21164A)") - UNAME_MACHINE="alphaev56" ;; - "EV5.6 (21164PC)") - UNAME_MACHINE="alphapca56" ;; - "EV5.7 (21164PC)") - UNAME_MACHINE="alphapca57" ;; - "EV6 (21264)") - UNAME_MACHINE="alphaev6" ;; - "EV6.7 (21264A)") - UNAME_MACHINE="alphaev67" ;; - "EV6.8CB (21264C)") - UNAME_MACHINE="alphaev68" ;; - "EV6.8AL (21264B)") - UNAME_MACHINE="alphaev68" ;; - "EV6.8CX (21264D)") - UNAME_MACHINE="alphaev68" ;; - "EV6.9A (21264/EV69A)") - UNAME_MACHINE="alphaev69" ;; - "EV7 (21364)") - UNAME_MACHINE="alphaev7" ;; - "EV7.9 (21364A)") - UNAME_MACHINE="alphaev79" ;; - esac - # A Pn.n version is a patched version. - # A Vn.n version is a released version. - # A Tn.n version is a released field test version. - # A Xn.n version is an unreleased experimental baselevel. - # 1.2 uses "1.2" for uname -r. - echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` - exit ;; - Alpha\ *:Windows_NT*:*) - # How do we know it's Interix rather than the generic POSIX subsystem? - # Should we change UNAME_MACHINE based on the output of uname instead - # of the specific Alpha model? - echo alpha-pc-interix - exit ;; - 21064:Windows_NT:50:3) - echo alpha-dec-winnt3.5 - exit ;; - Amiga*:UNIX_System_V:4.0:*) - echo m68k-unknown-sysv4 - exit ;; - *:[Aa]miga[Oo][Ss]:*:*) - echo ${UNAME_MACHINE}-unknown-amigaos - exit ;; - *:[Mm]orph[Oo][Ss]:*:*) - echo ${UNAME_MACHINE}-unknown-morphos - exit ;; - *:OS/390:*:*) - echo i370-ibm-openedition - exit ;; - *:z/VM:*:*) - echo s390-ibm-zvmoe - exit ;; - *:OS400:*:*) - echo powerpc-ibm-os400 - exit ;; - arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) - echo arm-acorn-riscix${UNAME_RELEASE} - exit ;; - arm:riscos:*:*|arm:RISCOS:*:*) - echo arm-unknown-riscos - exit ;; - SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) - echo hppa1.1-hitachi-hiuxmpp - exit ;; - Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) - # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. - if test "`(/bin/universe) 2>/dev/null`" = att ; then - echo pyramid-pyramid-sysv3 - else - echo pyramid-pyramid-bsd - fi - exit ;; - NILE*:*:*:dcosx) - echo pyramid-pyramid-svr4 - exit ;; - DRS?6000:unix:4.0:6*) - echo sparc-icl-nx6 - exit ;; - DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) - case `/usr/bin/uname -p` in - sparc) echo sparc-icl-nx7; exit ;; - esac ;; - s390x:SunOS:*:*) - echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` - exit ;; - sun4H:SunOS:5.*:*) - echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` - exit ;; - sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) - echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` - exit ;; - i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) - eval $set_cc_for_build - SUN_ARCH="i386" - # If there is a compiler, see if it is configured for 64-bit objects. - # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. - # This test works for both compilers. - if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then - if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ - (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ - grep IS_64BIT_ARCH >/dev/null - then - SUN_ARCH="x86_64" - fi - fi - echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` - exit ;; - sun4*:SunOS:6*:*) - # According to config.sub, this is the proper way to canonicalize - # SunOS6. Hard to guess exactly what SunOS6 will be like, but - # it's likely to be more like Solaris than SunOS4. - echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` - exit ;; - sun4*:SunOS:*:*) - case "`/usr/bin/arch -k`" in - Series*|S4*) - UNAME_RELEASE=`uname -v` - ;; - esac - # Japanese Language versions have a version number like `4.1.3-JL'. - echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` - exit ;; - sun3*:SunOS:*:*) - echo m68k-sun-sunos${UNAME_RELEASE} - exit ;; - sun*:*:4.2BSD:*) - UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` - test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 - case "`/bin/arch`" in - sun3) - echo m68k-sun-sunos${UNAME_RELEASE} - ;; - sun4) - echo sparc-sun-sunos${UNAME_RELEASE} - ;; - esac - exit ;; - aushp:SunOS:*:*) - echo sparc-auspex-sunos${UNAME_RELEASE} - exit ;; - # The situation for MiNT is a little confusing. The machine name - # can be virtually everything (everything which is not - # "atarist" or "atariste" at least should have a processor - # > m68000). The system name ranges from "MiNT" over "FreeMiNT" - # to the lowercase version "mint" (or "freemint"). Finally - # the system name "TOS" denotes a system which is actually not - # MiNT. But MiNT is downward compatible to TOS, so this should - # be no problem. - atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) - echo m68k-atari-mint${UNAME_RELEASE} - exit ;; - atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) - echo m68k-atari-mint${UNAME_RELEASE} - exit ;; - *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) - echo m68k-atari-mint${UNAME_RELEASE} - exit ;; - milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) - echo m68k-milan-mint${UNAME_RELEASE} - exit ;; - hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) - echo m68k-hades-mint${UNAME_RELEASE} - exit ;; - *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) - echo m68k-unknown-mint${UNAME_RELEASE} - exit ;; - m68k:machten:*:*) - echo m68k-apple-machten${UNAME_RELEASE} - exit ;; - powerpc:machten:*:*) - echo powerpc-apple-machten${UNAME_RELEASE} - exit ;; - RISC*:Mach:*:*) - echo mips-dec-mach_bsd4.3 - exit ;; - RISC*:ULTRIX:*:*) - echo mips-dec-ultrix${UNAME_RELEASE} - exit ;; - VAX*:ULTRIX*:*:*) - echo vax-dec-ultrix${UNAME_RELEASE} - exit ;; - 2020:CLIX:*:* | 2430:CLIX:*:*) - echo clipper-intergraph-clix${UNAME_RELEASE} - exit ;; - mips:*:*:UMIPS | mips:*:*:RISCos) - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c -#ifdef __cplusplus -#include /* for printf() prototype */ - int main (int argc, char *argv[]) { -#else - int main (argc, argv) int argc; char *argv[]; { -#endif - #if defined (host_mips) && defined (MIPSEB) - #if defined (SYSTYPE_SYSV) - printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); - #endif - #if defined (SYSTYPE_SVR4) - printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); - #endif - #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) - printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); - #endif - #endif - exit (-1); - } -EOF - $CC_FOR_BUILD -o $dummy $dummy.c && - dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` && - SYSTEM_NAME=`$dummy $dummyarg` && - { echo "$SYSTEM_NAME"; exit; } - echo mips-mips-riscos${UNAME_RELEASE} - exit ;; - Motorola:PowerMAX_OS:*:*) - echo powerpc-motorola-powermax - exit ;; - Motorola:*:4.3:PL8-*) - echo powerpc-harris-powermax - exit ;; - Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) - echo powerpc-harris-powermax - exit ;; - Night_Hawk:Power_UNIX:*:*) - echo powerpc-harris-powerunix - exit ;; - m88k:CX/UX:7*:*) - echo m88k-harris-cxux7 - exit ;; - m88k:*:4*:R4*) - echo m88k-motorola-sysv4 - exit ;; - m88k:*:3*:R3*) - echo m88k-motorola-sysv3 - exit ;; - AViiON:dgux:*:*) - # DG/UX returns AViiON for all architectures - UNAME_PROCESSOR=`/usr/bin/uname -p` - if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] - then - if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ - [ ${TARGET_BINARY_INTERFACE}x = x ] - then - echo m88k-dg-dgux${UNAME_RELEASE} - else - echo m88k-dg-dguxbcs${UNAME_RELEASE} - fi - else - echo i586-dg-dgux${UNAME_RELEASE} - fi - exit ;; - M88*:DolphinOS:*:*) # DolphinOS (SVR3) - echo m88k-dolphin-sysv3 - exit ;; - M88*:*:R3*:*) - # Delta 88k system running SVR3 - echo m88k-motorola-sysv3 - exit ;; - XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) - echo m88k-tektronix-sysv3 - exit ;; - Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) - echo m68k-tektronix-bsd - exit ;; - *:IRIX*:*:*) - echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` - exit ;; - ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. - echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id - exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' - i*86:AIX:*:*) - echo i386-ibm-aix - exit ;; - ia64:AIX:*:*) - if [ -x /usr/bin/oslevel ] ; then - IBM_REV=`/usr/bin/oslevel` - else - IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} - fi - echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} - exit ;; - *:AIX:2:3) - if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c - #include - - main() - { - if (!__power_pc()) - exit(1); - puts("powerpc-ibm-aix3.2.5"); - exit(0); - } -EOF - if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` - then - echo "$SYSTEM_NAME" - else - echo rs6000-ibm-aix3.2.5 - fi - elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then - echo rs6000-ibm-aix3.2.4 - else - echo rs6000-ibm-aix3.2 - fi - exit ;; - *:AIX:*:[456]) - IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` - if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then - IBM_ARCH=rs6000 - else - IBM_ARCH=powerpc - fi - if [ -x /usr/bin/oslevel ] ; then - IBM_REV=`/usr/bin/oslevel` - else - IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} - fi - echo ${IBM_ARCH}-ibm-aix${IBM_REV} - exit ;; - *:AIX:*:*) - echo rs6000-ibm-aix - exit ;; - ibmrt:4.4BSD:*|romp-ibm:BSD:*) - echo romp-ibm-bsd4.4 - exit ;; - ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and - echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to - exit ;; # report: romp-ibm BSD 4.3 - *:BOSX:*:*) - echo rs6000-bull-bosx - exit ;; - DPX/2?00:B.O.S.:*:*) - echo m68k-bull-sysv3 - exit ;; - 9000/[34]??:4.3bsd:1.*:*) - echo m68k-hp-bsd - exit ;; - hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) - echo m68k-hp-bsd4.4 - exit ;; - 9000/[34678]??:HP-UX:*:*) - HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` - case "${UNAME_MACHINE}" in - 9000/31? ) HP_ARCH=m68000 ;; - 9000/[34]?? ) HP_ARCH=m68k ;; - 9000/[678][0-9][0-9]) - if [ -x /usr/bin/getconf ]; then - sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` - sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` - case "${sc_cpu_version}" in - 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 - 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 - 532) # CPU_PA_RISC2_0 - case "${sc_kernel_bits}" in - 32) HP_ARCH="hppa2.0n" ;; - 64) HP_ARCH="hppa2.0w" ;; - '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 - esac ;; - esac - fi - if [ "${HP_ARCH}" = "" ]; then - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c - - #define _HPUX_SOURCE - #include - #include - - int main () - { - #if defined(_SC_KERNEL_BITS) - long bits = sysconf(_SC_KERNEL_BITS); - #endif - long cpu = sysconf (_SC_CPU_VERSION); - - switch (cpu) - { - case CPU_PA_RISC1_0: puts ("hppa1.0"); break; - case CPU_PA_RISC1_1: puts ("hppa1.1"); break; - case CPU_PA_RISC2_0: - #if defined(_SC_KERNEL_BITS) - switch (bits) - { - case 64: puts ("hppa2.0w"); break; - case 32: puts ("hppa2.0n"); break; - default: puts ("hppa2.0"); break; - } break; - #else /* !defined(_SC_KERNEL_BITS) */ - puts ("hppa2.0"); break; - #endif - default: puts ("hppa1.0"); break; - } - exit (0); - } -EOF - (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` - test -z "$HP_ARCH" && HP_ARCH=hppa - fi ;; - esac - if [ ${HP_ARCH} = "hppa2.0w" ] - then - eval $set_cc_for_build - - # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating - # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler - # generating 64-bit code. GNU and HP use different nomenclature: - # - # $ CC_FOR_BUILD=cc ./config.guess - # => hppa2.0w-hp-hpux11.23 - # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess - # => hppa64-hp-hpux11.23 - - if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | - grep -q __LP64__ - then - HP_ARCH="hppa2.0w" - else - HP_ARCH="hppa64" - fi - fi - echo ${HP_ARCH}-hp-hpux${HPUX_REV} - exit ;; - ia64:HP-UX:*:*) - HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` - echo ia64-hp-hpux${HPUX_REV} - exit ;; - 3050*:HI-UX:*:*) - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c - #include - int - main () - { - long cpu = sysconf (_SC_CPU_VERSION); - /* The order matters, because CPU_IS_HP_MC68K erroneously returns - true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct - results, however. */ - if (CPU_IS_PA_RISC (cpu)) - { - switch (cpu) - { - case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; - case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; - case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; - default: puts ("hppa-hitachi-hiuxwe2"); break; - } - } - else if (CPU_IS_HP_MC68K (cpu)) - puts ("m68k-hitachi-hiuxwe2"); - else puts ("unknown-hitachi-hiuxwe2"); - exit (0); - } -EOF - $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` && - { echo "$SYSTEM_NAME"; exit; } - echo unknown-hitachi-hiuxwe2 - exit ;; - 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) - echo hppa1.1-hp-bsd - exit ;; - 9000/8??:4.3bsd:*:*) - echo hppa1.0-hp-bsd - exit ;; - *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) - echo hppa1.0-hp-mpeix - exit ;; - hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) - echo hppa1.1-hp-osf - exit ;; - hp8??:OSF1:*:*) - echo hppa1.0-hp-osf - exit ;; - i*86:OSF1:*:*) - if [ -x /usr/sbin/sysversion ] ; then - echo ${UNAME_MACHINE}-unknown-osf1mk - else - echo ${UNAME_MACHINE}-unknown-osf1 - fi - exit ;; - parisc*:Lites*:*:*) - echo hppa1.1-hp-lites - exit ;; - C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) - echo c1-convex-bsd - exit ;; - C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) - if getsysinfo -f scalar_acc - then echo c32-convex-bsd - else echo c2-convex-bsd - fi - exit ;; - C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) - echo c34-convex-bsd - exit ;; - C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) - echo c38-convex-bsd - exit ;; - C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) - echo c4-convex-bsd - exit ;; - CRAY*Y-MP:*:*:*) - echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' - exit ;; - CRAY*[A-Z]90:*:*:*) - echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ - | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ - -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ - -e 's/\.[^.]*$/.X/' - exit ;; - CRAY*TS:*:*:*) - echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' - exit ;; - CRAY*T3E:*:*:*) - echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' - exit ;; - CRAY*SV1:*:*:*) - echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' - exit ;; - *:UNICOS/mp:*:*) - echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' - exit ;; - F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) - FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` - FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` - FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` - echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" - exit ;; - 5000:UNIX_System_V:4.*:*) - FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` - FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` - echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" - exit ;; - i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) - echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} - exit ;; - sparc*:BSD/OS:*:*) - echo sparc-unknown-bsdi${UNAME_RELEASE} - exit ;; - *:BSD/OS:*:*) - echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} - exit ;; - *:FreeBSD:*:*) - case ${UNAME_MACHINE} in - pc98) - echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; - amd64) - echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; - *) - echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; - esac - exit ;; - i*:CYGWIN*:*) - echo ${UNAME_MACHINE}-pc-cygwin - exit ;; - *:MINGW*:*) - echo ${UNAME_MACHINE}-pc-mingw32 - exit ;; - i*:windows32*:*) - # uname -m includes "-pc" on this system. - echo ${UNAME_MACHINE}-mingw32 - exit ;; - i*:PW*:*) - echo ${UNAME_MACHINE}-pc-pw32 - exit ;; - *:Interix*:[3456]*) - case ${UNAME_MACHINE} in - x86) - echo i586-pc-interix${UNAME_RELEASE} - exit ;; - EM64T | authenticamd | genuineintel) - echo x86_64-unknown-interix${UNAME_RELEASE} - exit ;; - IA64) - echo ia64-unknown-interix${UNAME_RELEASE} - exit ;; - esac ;; - [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) - echo i${UNAME_MACHINE}-pc-mks - exit ;; - 8664:Windows_NT:*) - echo x86_64-pc-mks - exit ;; - i*:Windows_NT*:* | Pentium*:Windows_NT*:*) - # How do we know it's Interix rather than the generic POSIX subsystem? - # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we - # UNAME_MACHINE based on the output of uname instead of i386? - echo i586-pc-interix - exit ;; - i*:UWIN*:*) - echo ${UNAME_MACHINE}-pc-uwin - exit ;; - amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) - echo x86_64-unknown-cygwin - exit ;; - p*:CYGWIN*:*) - echo powerpcle-unknown-cygwin - exit ;; - prep*:SunOS:5.*:*) - echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` - exit ;; - *:GNU:*:*) - # the GNU system - echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` - exit ;; - *:GNU/*:*:*) - # other systems with GNU libc and userland - echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu - exit ;; - i*86:Minix:*:*) - echo ${UNAME_MACHINE}-pc-minix - exit ;; - arm*:Linux:*:*) - eval $set_cc_for_build - if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ - | grep -q __ARM_EABI__ - then - echo ${UNAME_MACHINE}-unknown-linux-gnu - else - echo ${UNAME_MACHINE}-unknown-linux-gnueabi - fi - exit ;; - avr32*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu - exit ;; - cris:Linux:*:*) - echo cris-axis-linux-gnu - exit ;; - crisv32:Linux:*:*) - echo crisv32-axis-linux-gnu - exit ;; - frv:Linux:*:*) - echo frv-unknown-linux-gnu - exit ;; - ia64:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu - exit ;; - m32r*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu - exit ;; - m68*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu - exit ;; - mips:Linux:*:* | mips64:Linux:*:*) - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c - #undef CPU - #undef ${UNAME_MACHINE} - #undef ${UNAME_MACHINE}el - #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) - CPU=${UNAME_MACHINE}el - #else - #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) - CPU=${UNAME_MACHINE} - #else - CPU= - #endif - #endif -EOF - eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n ' - /^CPU/{ - s: ::g - p - }'`" - test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } - ;; - or32:Linux:*:*) - echo or32-unknown-linux-gnu - exit ;; - ppc:Linux:*:*) - echo powerpc-unknown-linux-gnu - exit ;; - ppc64:Linux:*:*) - echo powerpc64-unknown-linux-gnu - exit ;; - alpha:Linux:*:*) - case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in - EV5) UNAME_MACHINE=alphaev5 ;; - EV56) UNAME_MACHINE=alphaev56 ;; - PCA56) UNAME_MACHINE=alphapca56 ;; - PCA57) UNAME_MACHINE=alphapca56 ;; - EV6) UNAME_MACHINE=alphaev6 ;; - EV67) UNAME_MACHINE=alphaev67 ;; - EV68*) UNAME_MACHINE=alphaev68 ;; - esac - objdump --private-headers /bin/sh | grep -q ld.so.1 - if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi - echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} - exit ;; - padre:Linux:*:*) - echo sparc-unknown-linux-gnu - exit ;; - parisc:Linux:*:* | hppa:Linux:*:*) - # Look for CPU level - case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in - PA7*) echo hppa1.1-unknown-linux-gnu ;; - PA8*) echo hppa2.0-unknown-linux-gnu ;; - *) echo hppa-unknown-linux-gnu ;; - esac - exit ;; - parisc64:Linux:*:* | hppa64:Linux:*:*) - echo hppa64-unknown-linux-gnu - exit ;; - s390:Linux:*:* | s390x:Linux:*:*) - echo ${UNAME_MACHINE}-ibm-linux - exit ;; - sh64*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu - exit ;; - sh*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu - exit ;; - sparc:Linux:*:* | sparc64:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu - exit ;; - vax:Linux:*:*) - echo ${UNAME_MACHINE}-dec-linux-gnu - exit ;; - x86_64:Linux:*:*) - echo x86_64-unknown-linux-gnu - exit ;; - xtensa*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu - exit ;; - i*86:Linux:*:*) - # The BFD linker knows what the default object file format is, so - # first see if it will tell us. cd to the root directory to prevent - # problems with other programs or directories called `ld' in the path. - # Set LC_ALL=C to ensure ld outputs messages in English. - ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \ - | sed -ne '/supported targets:/!d - s/[ ][ ]*/ /g - s/.*supported targets: *// - s/ .*// - p'` - case "$ld_supported_targets" in - elf32-i386) - TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu" - ;; - esac - # Determine whether the default compiler is a.out or elf - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c - #include - #ifdef __ELF__ - # ifdef __GLIBC__ - # if __GLIBC__ >= 2 - LIBC=gnu - # else - LIBC=gnulibc1 - # endif - # else - LIBC=gnulibc1 - # endif - #else - #if defined(__INTEL_COMPILER) || defined(__PGI) || defined(__SUNPRO_C) || defined(__SUNPRO_CC) - LIBC=gnu - #else - LIBC=gnuaout - #endif - #endif - #ifdef __dietlibc__ - LIBC=dietlibc - #endif -EOF - eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n ' - /^LIBC/{ - s: ::g - p - }'`" - test x"${LIBC}" != x && { - echo "${UNAME_MACHINE}-pc-linux-${LIBC}" - exit - } - test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; } - ;; - i*86:DYNIX/ptx:4*:*) - # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. - # earlier versions are messed up and put the nodename in both - # sysname and nodename. - echo i386-sequent-sysv4 - exit ;; - i*86:UNIX_SV:4.2MP:2.*) - # Unixware is an offshoot of SVR4, but it has its own version - # number series starting with 2... - # I am not positive that other SVR4 systems won't match this, - # I just have to hope. -- rms. - # Use sysv4.2uw... so that sysv4* matches it. - echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} - exit ;; - i*86:OS/2:*:*) - # If we were able to find `uname', then EMX Unix compatibility - # is probably installed. - echo ${UNAME_MACHINE}-pc-os2-emx - exit ;; - i*86:XTS-300:*:STOP) - echo ${UNAME_MACHINE}-unknown-stop - exit ;; - i*86:atheos:*:*) - echo ${UNAME_MACHINE}-unknown-atheos - exit ;; - i*86:syllable:*:*) - echo ${UNAME_MACHINE}-pc-syllable - exit ;; - i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*) - echo i386-unknown-lynxos${UNAME_RELEASE} - exit ;; - i*86:*DOS:*:*) - echo ${UNAME_MACHINE}-pc-msdosdjgpp - exit ;; - i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) - UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` - if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then - echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} - else - echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} - fi - exit ;; - i*86:*:5:[678]*) - # UnixWare 7.x, OpenUNIX and OpenServer 6. - case `/bin/uname -X | grep "^Machine"` in - *486*) UNAME_MACHINE=i486 ;; - *Pentium) UNAME_MACHINE=i586 ;; - *Pent*|*Celeron) UNAME_MACHINE=i686 ;; - esac - echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} - exit ;; - i*86:*:3.2:*) - if test -f /usr/options/cb.name; then - UNAME_REL=`sed -n 's/.*Version //p' /dev/null >/dev/null ; then - UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` - (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 - (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ - && UNAME_MACHINE=i586 - (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ - && UNAME_MACHINE=i686 - (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ - && UNAME_MACHINE=i686 - echo ${UNAME_MACHINE}-pc-sco$UNAME_REL - else - echo ${UNAME_MACHINE}-pc-sysv32 - fi - exit ;; - pc:*:*:*) - # Left here for compatibility: - # uname -m prints for DJGPP always 'pc', but it prints nothing about - # the processor, so we play safe by assuming i586. - # Note: whatever this is, it MUST be the same as what config.sub - # prints for the "djgpp" host, or else GDB configury will decide that - # this is a cross-build. - echo i586-pc-msdosdjgpp - exit ;; - Intel:Mach:3*:*) - echo i386-pc-mach3 - exit ;; - paragon:*:*:*) - echo i860-intel-osf1 - exit ;; - i860:*:4.*:*) # i860-SVR4 - if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then - echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 - else # Add other i860-SVR4 vendors below as they are discovered. - echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 - fi - exit ;; - mini*:CTIX:SYS*5:*) - # "miniframe" - echo m68010-convergent-sysv - exit ;; - mc68k:UNIX:SYSTEM5:3.51m) - echo m68k-convergent-sysv - exit ;; - M680?0:D-NIX:5.3:*) - echo m68k-diab-dnix - exit ;; - M68*:*:R3V[5678]*:*) - test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; - 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0) - OS_REL='' - test -r /etc/.relid \ - && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` - /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ - && { echo i486-ncr-sysv4.3${OS_REL}; exit; } - /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ - && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; - 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) - /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ - && { echo i486-ncr-sysv4; exit; } ;; - NCR*:*:4.2:* | MPRAS*:*:4.2:*) - OS_REL='.3' - test -r /etc/.relid \ - && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` - /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ - && { echo i486-ncr-sysv4.3${OS_REL}; exit; } - /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ - && { echo i586-ncr-sysv4.3${OS_REL}; exit; } - /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \ - && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; - m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) - echo m68k-unknown-lynxos${UNAME_RELEASE} - exit ;; - mc68030:UNIX_System_V:4.*:*) - echo m68k-atari-sysv4 - exit ;; - TSUNAMI:LynxOS:2.*:*) - echo sparc-unknown-lynxos${UNAME_RELEASE} - exit ;; - rs6000:LynxOS:2.*:*) - echo rs6000-unknown-lynxos${UNAME_RELEASE} - exit ;; - PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*) - echo powerpc-unknown-lynxos${UNAME_RELEASE} - exit ;; - SM[BE]S:UNIX_SV:*:*) - echo mips-dde-sysv${UNAME_RELEASE} - exit ;; - RM*:ReliantUNIX-*:*:*) - echo mips-sni-sysv4 - exit ;; - RM*:SINIX-*:*:*) - echo mips-sni-sysv4 - exit ;; - *:SINIX-*:*:*) - if uname -p 2>/dev/null >/dev/null ; then - UNAME_MACHINE=`(uname -p) 2>/dev/null` - echo ${UNAME_MACHINE}-sni-sysv4 - else - echo ns32k-sni-sysv - fi - exit ;; - PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort - # says - echo i586-unisys-sysv4 - exit ;; - *:UNIX_System_V:4*:FTX*) - # From Gerald Hewes . - # How about differentiating between stratus architectures? -djm - echo hppa1.1-stratus-sysv4 - exit ;; - *:*:*:FTX*) - # From seanf@swdc.stratus.com. - echo i860-stratus-sysv4 - exit ;; - i*86:VOS:*:*) - # From Paul.Green@stratus.com. - echo ${UNAME_MACHINE}-stratus-vos - exit ;; - *:VOS:*:*) - # From Paul.Green@stratus.com. - echo hppa1.1-stratus-vos - exit ;; - mc68*:A/UX:*:*) - echo m68k-apple-aux${UNAME_RELEASE} - exit ;; - news*:NEWS-OS:6*:*) - echo mips-sony-newsos6 - exit ;; - R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) - if [ -d /usr/nec ]; then - echo mips-nec-sysv${UNAME_RELEASE} - else - echo mips-unknown-sysv${UNAME_RELEASE} - fi - exit ;; - BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. - echo powerpc-be-beos - exit ;; - BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. - echo powerpc-apple-beos - exit ;; - BePC:BeOS:*:*) # BeOS running on Intel PC compatible. - echo i586-pc-beos - exit ;; - BePC:Haiku:*:*) # Haiku running on Intel PC compatible. - echo i586-pc-haiku - exit ;; - SX-4:SUPER-UX:*:*) - echo sx4-nec-superux${UNAME_RELEASE} - exit ;; - SX-5:SUPER-UX:*:*) - echo sx5-nec-superux${UNAME_RELEASE} - exit ;; - SX-6:SUPER-UX:*:*) - echo sx6-nec-superux${UNAME_RELEASE} - exit ;; - SX-7:SUPER-UX:*:*) - echo sx7-nec-superux${UNAME_RELEASE} - exit ;; - SX-8:SUPER-UX:*:*) - echo sx8-nec-superux${UNAME_RELEASE} - exit ;; - SX-8R:SUPER-UX:*:*) - echo sx8r-nec-superux${UNAME_RELEASE} - exit ;; - Power*:Rhapsody:*:*) - echo powerpc-apple-rhapsody${UNAME_RELEASE} - exit ;; - *:Rhapsody:*:*) - echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} - exit ;; - *:Darwin:*:*) - UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown - case $UNAME_PROCESSOR in - unknown) UNAME_PROCESSOR=powerpc ;; - esac - echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} - exit ;; - *:procnto*:*:* | *:QNX:[0123456789]*:*) - UNAME_PROCESSOR=`uname -p` - if test "$UNAME_PROCESSOR" = "x86"; then - UNAME_PROCESSOR=i386 - UNAME_MACHINE=pc - fi - echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} - exit ;; - *:QNX:*:4*) - echo i386-pc-qnx - exit ;; - NSE-?:NONSTOP_KERNEL:*:*) - echo nse-tandem-nsk${UNAME_RELEASE} - exit ;; - NSR-?:NONSTOP_KERNEL:*:*) - echo nsr-tandem-nsk${UNAME_RELEASE} - exit ;; - *:NonStop-UX:*:*) - echo mips-compaq-nonstopux - exit ;; - BS2000:POSIX*:*:*) - echo bs2000-siemens-sysv - exit ;; - DS/*:UNIX_System_V:*:*) - echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} - exit ;; - *:Plan9:*:*) - # "uname -m" is not consistent, so use $cputype instead. 386 - # is converted to i386 for consistency with other x86 - # operating systems. - if test "$cputype" = "386"; then - UNAME_MACHINE=i386 - else - UNAME_MACHINE="$cputype" - fi - echo ${UNAME_MACHINE}-unknown-plan9 - exit ;; - *:TOPS-10:*:*) - echo pdp10-unknown-tops10 - exit ;; - *:TENEX:*:*) - echo pdp10-unknown-tenex - exit ;; - KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) - echo pdp10-dec-tops20 - exit ;; - XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) - echo pdp10-xkl-tops20 - exit ;; - *:TOPS-20:*:*) - echo pdp10-unknown-tops20 - exit ;; - *:ITS:*:*) - echo pdp10-unknown-its - exit ;; - SEI:*:*:SEIUX) - echo mips-sei-seiux${UNAME_RELEASE} - exit ;; - *:DragonFly:*:*) - echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` - exit ;; - *:*VMS:*:*) - UNAME_MACHINE=`(uname -p) 2>/dev/null` - case "${UNAME_MACHINE}" in - A*) echo alpha-dec-vms ; exit ;; - I*) echo ia64-dec-vms ; exit ;; - V*) echo vax-dec-vms ; exit ;; - esac ;; - *:XENIX:*:SysV) - echo i386-pc-xenix - exit ;; - i*86:skyos:*:*) - echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//' - exit ;; - i*86:rdos:*:*) - echo ${UNAME_MACHINE}-pc-rdos - exit ;; - i*86:AROS:*:*) - echo ${UNAME_MACHINE}-pc-aros - exit ;; -esac - -#echo '(No uname command or uname output not recognized.)' 1>&2 -#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 - -eval $set_cc_for_build -cat >$dummy.c < -# include -#endif -main () -{ -#if defined (sony) -#if defined (MIPSEB) - /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, - I don't know.... */ - printf ("mips-sony-bsd\n"); exit (0); -#else -#include - printf ("m68k-sony-newsos%s\n", -#ifdef NEWSOS4 - "4" -#else - "" -#endif - ); exit (0); -#endif -#endif - -#if defined (__arm) && defined (__acorn) && defined (__unix) - printf ("arm-acorn-riscix\n"); exit (0); -#endif - -#if defined (hp300) && !defined (hpux) - printf ("m68k-hp-bsd\n"); exit (0); -#endif - -#if defined (NeXT) -#if !defined (__ARCHITECTURE__) -#define __ARCHITECTURE__ "m68k" -#endif - int version; - version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; - if (version < 4) - printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); - else - printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); - exit (0); -#endif - -#if defined (MULTIMAX) || defined (n16) -#if defined (UMAXV) - printf ("ns32k-encore-sysv\n"); exit (0); -#else -#if defined (CMU) - printf ("ns32k-encore-mach\n"); exit (0); -#else - printf ("ns32k-encore-bsd\n"); exit (0); -#endif -#endif -#endif - -#if defined (__386BSD__) - printf ("i386-pc-bsd\n"); exit (0); -#endif - -#if defined (sequent) -#if defined (i386) - printf ("i386-sequent-dynix\n"); exit (0); -#endif -#if defined (ns32000) - printf ("ns32k-sequent-dynix\n"); exit (0); -#endif -#endif - -#if defined (_SEQUENT_) - struct utsname un; - - uname(&un); - - if (strncmp(un.version, "V2", 2) == 0) { - printf ("i386-sequent-ptx2\n"); exit (0); - } - if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ - printf ("i386-sequent-ptx1\n"); exit (0); - } - printf ("i386-sequent-ptx\n"); exit (0); - -#endif - -#if defined (vax) -# if !defined (ultrix) -# include -# if defined (BSD) -# if BSD == 43 - printf ("vax-dec-bsd4.3\n"); exit (0); -# else -# if BSD == 199006 - printf ("vax-dec-bsd4.3reno\n"); exit (0); -# else - printf ("vax-dec-bsd\n"); exit (0); -# endif -# endif -# else - printf ("vax-dec-bsd\n"); exit (0); -# endif -# else - printf ("vax-dec-ultrix\n"); exit (0); -# endif -#endif - -#if defined (alliant) && defined (i860) - printf ("i860-alliant-bsd\n"); exit (0); -#endif - - exit (1); -} -EOF - -$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` && - { echo "$SYSTEM_NAME"; exit; } - -# Apollos put the system type in the environment. - -test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; } - -# Convex versions that predate uname can use getsysinfo(1) - -if [ -x /usr/convex/getsysinfo ] -then - case `getsysinfo -f cpu_type` in - c1*) - echo c1-convex-bsd - exit ;; - c2*) - if getsysinfo -f scalar_acc - then echo c32-convex-bsd - else echo c2-convex-bsd - fi - exit ;; - c34*) - echo c34-convex-bsd - exit ;; - c38*) - echo c38-convex-bsd - exit ;; - c4*) - echo c4-convex-bsd - exit ;; - esac -fi - -cat >&2 < in order to provide the needed -information to handle your system. - -config.guess timestamp = $timestamp - -uname -m = `(uname -m) 2>/dev/null || echo unknown` -uname -r = `(uname -r) 2>/dev/null || echo unknown` -uname -s = `(uname -s) 2>/dev/null || echo unknown` -uname -v = `(uname -v) 2>/dev/null || echo unknown` - -/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` -/bin/uname -X = `(/bin/uname -X) 2>/dev/null` - -hostinfo = `(hostinfo) 2>/dev/null` -/bin/universe = `(/bin/universe) 2>/dev/null` -/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` -/bin/arch = `(/bin/arch) 2>/dev/null` -/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` -/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` - -UNAME_MACHINE = ${UNAME_MACHINE} -UNAME_RELEASE = ${UNAME_RELEASE} -UNAME_SYSTEM = ${UNAME_SYSTEM} -UNAME_VERSION = ${UNAME_VERSION} -EOF - -exit 1 - -# Local variables: -# eval: (add-hook 'write-file-hooks 'time-stamp) -# time-stamp-start: "timestamp='" -# time-stamp-format: "%:y-%02m-%02d" -# time-stamp-end: "'" -# End: diff --git a/src/3rdparty/libconninet/config.sub b/src/3rdparty/libconninet/config.sub deleted file mode 100755 index eb0389a..0000000 --- a/src/3rdparty/libconninet/config.sub +++ /dev/null @@ -1,1693 +0,0 @@ -#! /bin/sh -# Configuration validation subroutine script. -# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, -# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 -# Free Software Foundation, Inc. - -timestamp='2009-06-11' - -# This file is (in principle) common to ALL GNU software. -# The presence of a machine in this file suggests that SOME GNU software -# can handle that machine. It does not imply ALL GNU software can. -# -# This file is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA -# 02110-1301, USA. -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - - -# Please send patches to . Submit a context -# diff and a properly formatted ChangeLog entry. -# -# Configuration subroutine to validate and canonicalize a configuration type. -# Supply the specified configuration type as an argument. -# If it is invalid, we print an error message on stderr and exit with code 1. -# Otherwise, we print the canonical config type on stdout and succeed. - -# This file is supposed to be the same for all GNU packages -# and recognize all the CPU types, system types and aliases -# that are meaningful with *any* GNU software. -# Each package is responsible for reporting which valid configurations -# it does not support. The user should be able to distinguish -# a failure to support a valid configuration from a meaningless -# configuration. - -# The goal of this file is to map all the various variations of a given -# machine specification into a single specification in the form: -# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM -# or in some cases, the newer four-part form: -# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM -# It is wrong to echo any other type of specification. - -me=`echo "$0" | sed -e 's,.*/,,'` - -usage="\ -Usage: $0 [OPTION] CPU-MFR-OPSYS - $0 [OPTION] ALIAS - -Canonicalize a configuration name. - -Operation modes: - -h, --help print this help, then exit - -t, --time-stamp print date of last modification, then exit - -v, --version print version number, then exit - -Report bugs and patches to ." - -version="\ -GNU config.sub ($timestamp) - -Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, -2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. - -This is free software; see the source for copying conditions. There is NO -warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." - -help=" -Try \`$me --help' for more information." - -# Parse command line -while test $# -gt 0 ; do - case $1 in - --time-stamp | --time* | -t ) - echo "$timestamp" ; exit ;; - --version | -v ) - echo "$version" ; exit ;; - --help | --h* | -h ) - echo "$usage"; exit ;; - -- ) # Stop option processing - shift; break ;; - - ) # Use stdin as input. - break ;; - -* ) - echo "$me: invalid option $1$help" - exit 1 ;; - - *local*) - # First pass through any local machine types. - echo $1 - exit ;; - - * ) - break ;; - esac -done - -case $# in - 0) echo "$me: missing argument$help" >&2 - exit 1;; - 1) ;; - *) echo "$me: too many arguments$help" >&2 - exit 1;; -esac - -# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). -# Here we must recognize all the valid KERNEL-OS combinations. -maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` -case $maybe_os in - nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \ - uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \ - kopensolaris*-gnu* | \ - storm-chaos* | os2-emx* | rtmk-nova*) - os=-$maybe_os - basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` - ;; - *) - basic_machine=`echo $1 | sed 's/-[^-]*$//'` - if [ $basic_machine != $1 ] - then os=`echo $1 | sed 's/.*-/-/'` - else os=; fi - ;; -esac - -### Let's recognize common machines as not being operating systems so -### that things like config.sub decstation-3100 work. We also -### recognize some manufacturers as not being operating systems, so we -### can provide default operating systems below. -case $os in - -sun*os*) - # Prevent following clause from handling this invalid input. - ;; - -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ - -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ - -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ - -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ - -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ - -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ - -apple | -axis | -knuth | -cray) - os= - basic_machine=$1 - ;; - -bluegene*) - os=-cnk - ;; - -sim | -cisco | -oki | -wec | -winbond) - os= - basic_machine=$1 - ;; - -scout) - ;; - -wrs) - os=-vxworks - basic_machine=$1 - ;; - -chorusos*) - os=-chorusos - basic_machine=$1 - ;; - -chorusrdb) - os=-chorusrdb - basic_machine=$1 - ;; - -hiux*) - os=-hiuxwe2 - ;; - -sco6) - os=-sco5v6 - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -sco5) - os=-sco3.2v5 - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -sco4) - os=-sco3.2v4 - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -sco3.2.[4-9]*) - os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -sco3.2v[4-9]*) - # Don't forget version if it is 3.2v4 or newer. - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -sco5v6*) - # Don't forget version if it is 3.2v4 or newer. - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -sco*) - os=-sco3.2v2 - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -udk*) - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -isc) - os=-isc2.2 - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -clix*) - basic_machine=clipper-intergraph - ;; - -isc*) - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -lynx*) - os=-lynxos - ;; - -ptx*) - basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` - ;; - -windowsnt*) - os=`echo $os | sed -e 's/windowsnt/winnt/'` - ;; - -psos*) - os=-psos - ;; - -mint | -mint[0-9]*) - basic_machine=m68k-atari - os=-mint - ;; -esac - -# Decode aliases for certain CPU-COMPANY combinations. -case $basic_machine in - # Recognize the basic CPU types without company name. - # Some are omitted here because they have special meanings below. - 1750a | 580 \ - | a29k \ - | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ - | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ - | am33_2.0 \ - | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ - | bfin \ - | c4x | clipper \ - | d10v | d30v | dlx | dsp16xx \ - | fido | fr30 | frv \ - | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ - | i370 | i860 | i960 | ia64 \ - | ip2k | iq2000 \ - | lm32 \ - | m32c | m32r | m32rle | m68000 | m68k | m88k \ - | maxq | mb | microblaze | mcore | mep | metag \ - | mips | mipsbe | mipseb | mipsel | mipsle \ - | mips16 \ - | mips64 | mips64el \ - | mips64octeon | mips64octeonel \ - | mips64orion | mips64orionel \ - | mips64r5900 | mips64r5900el \ - | mips64vr | mips64vrel \ - | mips64vr4100 | mips64vr4100el \ - | mips64vr4300 | mips64vr4300el \ - | mips64vr5000 | mips64vr5000el \ - | mips64vr5900 | mips64vr5900el \ - | mipsisa32 | mipsisa32el \ - | mipsisa32r2 | mipsisa32r2el \ - | mipsisa64 | mipsisa64el \ - | mipsisa64r2 | mipsisa64r2el \ - | mipsisa64sb1 | mipsisa64sb1el \ - | mipsisa64sr71k | mipsisa64sr71kel \ - | mipstx39 | mipstx39el \ - | mn10200 | mn10300 \ - | moxie \ - | mt \ - | msp430 \ - | nios | nios2 \ - | ns16k | ns32k \ - | or32 \ - | pdp10 | pdp11 | pj | pjl \ - | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ - | pyramid \ - | score \ - | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ - | sh64 | sh64le \ - | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ - | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ - | spu | strongarm \ - | tahoe | thumb | tic4x | tic80 | tron \ - | v850 | v850e \ - | we32k \ - | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \ - | z8k | z80) - basic_machine=$basic_machine-unknown - ;; - m6811 | m68hc11 | m6812 | m68hc12) - # Motorola 68HC11/12. - basic_machine=$basic_machine-unknown - os=-none - ;; - m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) - ;; - ms1) - basic_machine=mt-unknown - ;; - - # We use `pc' rather than `unknown' - # because (1) that's what they normally are, and - # (2) the word "unknown" tends to confuse beginning users. - i*86 | x86_64) - basic_machine=$basic_machine-pc - ;; - # Object if more than one company name word. - *-*-*) - echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 - exit 1 - ;; - # Recognize the basic CPU types with company name. - 580-* \ - | a29k-* \ - | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ - | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ - | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ - | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ - | avr-* | avr32-* \ - | bfin-* | bs2000-* \ - | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \ - | clipper-* | craynv-* | cydra-* \ - | d10v-* | d30v-* | dlx-* \ - | elxsi-* \ - | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ - | h8300-* | h8500-* \ - | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ - | i*86-* | i860-* | i960-* | ia64-* \ - | ip2k-* | iq2000-* \ - | lm32-* \ - | m32c-* | m32r-* | m32rle-* \ - | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ - | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ - | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ - | mips16-* \ - | mips64-* | mips64el-* \ - | mips64octeon-* | mips64octeonel-* \ - | mips64orion-* | mips64orionel-* \ - | mips64r5900-* | mips64r5900el-* \ - | mips64vr-* | mips64vrel-* \ - | mips64vr4100-* | mips64vr4100el-* \ - | mips64vr4300-* | mips64vr4300el-* \ - | mips64vr5000-* | mips64vr5000el-* \ - | mips64vr5900-* | mips64vr5900el-* \ - | mipsisa32-* | mipsisa32el-* \ - | mipsisa32r2-* | mipsisa32r2el-* \ - | mipsisa64-* | mipsisa64el-* \ - | mipsisa64r2-* | mipsisa64r2el-* \ - | mipsisa64sb1-* | mipsisa64sb1el-* \ - | mipsisa64sr71k-* | mipsisa64sr71kel-* \ - | mipstx39-* | mipstx39el-* \ - | mmix-* \ - | mt-* \ - | msp430-* \ - | nios-* | nios2-* \ - | none-* | np1-* | ns16k-* | ns32k-* \ - | orion-* \ - | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ - | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ - | pyramid-* \ - | romp-* | rs6000-* \ - | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ - | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ - | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ - | sparclite-* \ - | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \ - | tahoe-* | thumb-* \ - | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* | tile-* \ - | tron-* \ - | v850-* | v850e-* | vax-* \ - | we32k-* \ - | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \ - | xstormy16-* | xtensa*-* \ - | ymp-* \ - | z8k-* | z80-*) - ;; - # Recognize the basic CPU types without company name, with glob match. - xtensa*) - basic_machine=$basic_machine-unknown - ;; - # Recognize the various machine names and aliases which stand - # for a CPU type and a company and sometimes even an OS. - 386bsd) - basic_machine=i386-unknown - os=-bsd - ;; - 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) - basic_machine=m68000-att - ;; - 3b*) - basic_machine=we32k-att - ;; - a29khif) - basic_machine=a29k-amd - os=-udi - ;; - abacus) - basic_machine=abacus-unknown - ;; - adobe68k) - basic_machine=m68010-adobe - os=-scout - ;; - alliant | fx80) - basic_machine=fx80-alliant - ;; - altos | altos3068) - basic_machine=m68k-altos - ;; - am29k) - basic_machine=a29k-none - os=-bsd - ;; - amd64) - basic_machine=x86_64-pc - ;; - amd64-*) - basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - amdahl) - basic_machine=580-amdahl - os=-sysv - ;; - amiga | amiga-*) - basic_machine=m68k-unknown - ;; - amigaos | amigados) - basic_machine=m68k-unknown - os=-amigaos - ;; - amigaunix | amix) - basic_machine=m68k-unknown - os=-sysv4 - ;; - apollo68) - basic_machine=m68k-apollo - os=-sysv - ;; - apollo68bsd) - basic_machine=m68k-apollo - os=-bsd - ;; - aros) - basic_machine=i386-pc - os=-aros - ;; - aux) - basic_machine=m68k-apple - os=-aux - ;; - balance) - basic_machine=ns32k-sequent - os=-dynix - ;; - blackfin) - basic_machine=bfin-unknown - os=-linux - ;; - blackfin-*) - basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` - os=-linux - ;; - bluegene*) - basic_machine=powerpc-ibm - os=-cnk - ;; - c90) - basic_machine=c90-cray - os=-unicos - ;; - cegcc) - basic_machine=arm-unknown - os=-cegcc - ;; - convex-c1) - basic_machine=c1-convex - os=-bsd - ;; - convex-c2) - basic_machine=c2-convex - os=-bsd - ;; - convex-c32) - basic_machine=c32-convex - os=-bsd - ;; - convex-c34) - basic_machine=c34-convex - os=-bsd - ;; - convex-c38) - basic_machine=c38-convex - os=-bsd - ;; - cray | j90) - basic_machine=j90-cray - os=-unicos - ;; - craynv) - basic_machine=craynv-cray - os=-unicosmp - ;; - cr16) - basic_machine=cr16-unknown - os=-elf - ;; - crds | unos) - basic_machine=m68k-crds - ;; - crisv32 | crisv32-* | etraxfs*) - basic_machine=crisv32-axis - ;; - cris | cris-* | etrax*) - basic_machine=cris-axis - ;; - crx) - basic_machine=crx-unknown - os=-elf - ;; - da30 | da30-*) - basic_machine=m68k-da30 - ;; - decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) - basic_machine=mips-dec - ;; - decsystem10* | dec10*) - basic_machine=pdp10-dec - os=-tops10 - ;; - decsystem20* | dec20*) - basic_machine=pdp10-dec - os=-tops20 - ;; - delta | 3300 | motorola-3300 | motorola-delta \ - | 3300-motorola | delta-motorola) - basic_machine=m68k-motorola - ;; - delta88) - basic_machine=m88k-motorola - os=-sysv3 - ;; - dicos) - basic_machine=i686-pc - os=-dicos - ;; - djgpp) - basic_machine=i586-pc - os=-msdosdjgpp - ;; - dpx20 | dpx20-*) - basic_machine=rs6000-bull - os=-bosx - ;; - dpx2* | dpx2*-bull) - basic_machine=m68k-bull - os=-sysv3 - ;; - ebmon29k) - basic_machine=a29k-amd - os=-ebmon - ;; - elxsi) - basic_machine=elxsi-elxsi - os=-bsd - ;; - encore | umax | mmax) - basic_machine=ns32k-encore - ;; - es1800 | OSE68k | ose68k | ose | OSE) - basic_machine=m68k-ericsson - os=-ose - ;; - fx2800) - basic_machine=i860-alliant - ;; - genix) - basic_machine=ns32k-ns - ;; - gmicro) - basic_machine=tron-gmicro - os=-sysv - ;; - go32) - basic_machine=i386-pc - os=-go32 - ;; - h3050r* | hiux*) - basic_machine=hppa1.1-hitachi - os=-hiuxwe2 - ;; - h8300hms) - basic_machine=h8300-hitachi - os=-hms - ;; - h8300xray) - basic_machine=h8300-hitachi - os=-xray - ;; - h8500hms) - basic_machine=h8500-hitachi - os=-hms - ;; - harris) - basic_machine=m88k-harris - os=-sysv3 - ;; - hp300-*) - basic_machine=m68k-hp - ;; - hp300bsd) - basic_machine=m68k-hp - os=-bsd - ;; - hp300hpux) - basic_machine=m68k-hp - os=-hpux - ;; - hp3k9[0-9][0-9] | hp9[0-9][0-9]) - basic_machine=hppa1.0-hp - ;; - hp9k2[0-9][0-9] | hp9k31[0-9]) - basic_machine=m68000-hp - ;; - hp9k3[2-9][0-9]) - basic_machine=m68k-hp - ;; - hp9k6[0-9][0-9] | hp6[0-9][0-9]) - basic_machine=hppa1.0-hp - ;; - hp9k7[0-79][0-9] | hp7[0-79][0-9]) - basic_machine=hppa1.1-hp - ;; - hp9k78[0-9] | hp78[0-9]) - # FIXME: really hppa2.0-hp - basic_machine=hppa1.1-hp - ;; - hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) - # FIXME: really hppa2.0-hp - basic_machine=hppa1.1-hp - ;; - hp9k8[0-9][13679] | hp8[0-9][13679]) - basic_machine=hppa1.1-hp - ;; - hp9k8[0-9][0-9] | hp8[0-9][0-9]) - basic_machine=hppa1.0-hp - ;; - hppa-next) - os=-nextstep3 - ;; - hppaosf) - basic_machine=hppa1.1-hp - os=-osf - ;; - hppro) - basic_machine=hppa1.1-hp - os=-proelf - ;; - i370-ibm* | ibm*) - basic_machine=i370-ibm - ;; -# I'm not sure what "Sysv32" means. Should this be sysv3.2? - i*86v32) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-sysv32 - ;; - i*86v4*) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-sysv4 - ;; - i*86v) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-sysv - ;; - i*86sol2) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-solaris2 - ;; - i386mach) - basic_machine=i386-mach - os=-mach - ;; - i386-vsta | vsta) - basic_machine=i386-unknown - os=-vsta - ;; - iris | iris4d) - basic_machine=mips-sgi - case $os in - -irix*) - ;; - *) - os=-irix4 - ;; - esac - ;; - isi68 | isi) - basic_machine=m68k-isi - os=-sysv - ;; - m68knommu) - basic_machine=m68k-unknown - os=-linux - ;; - m68knommu-*) - basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` - os=-linux - ;; - m88k-omron*) - basic_machine=m88k-omron - ;; - magnum | m3230) - basic_machine=mips-mips - os=-sysv - ;; - merlin) - basic_machine=ns32k-utek - os=-sysv - ;; - mingw32) - basic_machine=i386-pc - os=-mingw32 - ;; - mingw32ce) - basic_machine=arm-unknown - os=-mingw32ce - ;; - miniframe) - basic_machine=m68000-convergent - ;; - *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) - basic_machine=m68k-atari - os=-mint - ;; - mips3*-*) - basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` - ;; - mips3*) - basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown - ;; - monitor) - basic_machine=m68k-rom68k - os=-coff - ;; - morphos) - basic_machine=powerpc-unknown - os=-morphos - ;; - msdos) - basic_machine=i386-pc - os=-msdos - ;; - ms1-*) - basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` - ;; - mvs) - basic_machine=i370-ibm - os=-mvs - ;; - ncr3000) - basic_machine=i486-ncr - os=-sysv4 - ;; - netbsd386) - basic_machine=i386-unknown - os=-netbsd - ;; - netwinder) - basic_machine=armv4l-rebel - os=-linux - ;; - news | news700 | news800 | news900) - basic_machine=m68k-sony - os=-newsos - ;; - news1000) - basic_machine=m68030-sony - os=-newsos - ;; - news-3600 | risc-news) - basic_machine=mips-sony - os=-newsos - ;; - necv70) - basic_machine=v70-nec - os=-sysv - ;; - next | m*-next ) - basic_machine=m68k-next - case $os in - -nextstep* ) - ;; - -ns2*) - os=-nextstep2 - ;; - *) - os=-nextstep3 - ;; - esac - ;; - nh3000) - basic_machine=m68k-harris - os=-cxux - ;; - nh[45]000) - basic_machine=m88k-harris - os=-cxux - ;; - nindy960) - basic_machine=i960-intel - os=-nindy - ;; - mon960) - basic_machine=i960-intel - os=-mon960 - ;; - nonstopux) - basic_machine=mips-compaq - os=-nonstopux - ;; - np1) - basic_machine=np1-gould - ;; - nsr-tandem) - basic_machine=nsr-tandem - ;; - op50n-* | op60c-*) - basic_machine=hppa1.1-oki - os=-proelf - ;; - openrisc | openrisc-*) - basic_machine=or32-unknown - ;; - os400) - basic_machine=powerpc-ibm - os=-os400 - ;; - OSE68000 | ose68000) - basic_machine=m68000-ericsson - os=-ose - ;; - os68k) - basic_machine=m68k-none - os=-os68k - ;; - pa-hitachi) - basic_machine=hppa1.1-hitachi - os=-hiuxwe2 - ;; - paragon) - basic_machine=i860-intel - os=-osf - ;; - parisc) - basic_machine=hppa-unknown - os=-linux - ;; - parisc-*) - basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` - os=-linux - ;; - pbd) - basic_machine=sparc-tti - ;; - pbb) - basic_machine=m68k-tti - ;; - pc532 | pc532-*) - basic_machine=ns32k-pc532 - ;; - pc98) - basic_machine=i386-pc - ;; - pc98-*) - basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - pentium | p5 | k5 | k6 | nexgen | viac3) - basic_machine=i586-pc - ;; - pentiumpro | p6 | 6x86 | athlon | athlon_*) - basic_machine=i686-pc - ;; - pentiumii | pentium2 | pentiumiii | pentium3) - basic_machine=i686-pc - ;; - pentium4) - basic_machine=i786-pc - ;; - pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) - basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - pentiumpro-* | p6-* | 6x86-* | athlon-*) - basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) - basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - pentium4-*) - basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - pn) - basic_machine=pn-gould - ;; - power) basic_machine=power-ibm - ;; - ppc) basic_machine=powerpc-unknown - ;; - ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - ppcle | powerpclittle | ppc-le | powerpc-little) - basic_machine=powerpcle-unknown - ;; - ppcle-* | powerpclittle-*) - basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - ppc64) basic_machine=powerpc64-unknown - ;; - ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - ppc64le | powerpc64little | ppc64-le | powerpc64-little) - basic_machine=powerpc64le-unknown - ;; - ppc64le-* | powerpc64little-*) - basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - ps2) - basic_machine=i386-ibm - ;; - pw32) - basic_machine=i586-unknown - os=-pw32 - ;; - rdos) - basic_machine=i386-pc - os=-rdos - ;; - rom68k) - basic_machine=m68k-rom68k - os=-coff - ;; - rm[46]00) - basic_machine=mips-siemens - ;; - rtpc | rtpc-*) - basic_machine=romp-ibm - ;; - s390 | s390-*) - basic_machine=s390-ibm - ;; - s390x | s390x-*) - basic_machine=s390x-ibm - ;; - sa29200) - basic_machine=a29k-amd - os=-udi - ;; - sb1) - basic_machine=mipsisa64sb1-unknown - ;; - sb1el) - basic_machine=mipsisa64sb1el-unknown - ;; - sde) - basic_machine=mipsisa32-sde - os=-elf - ;; - sei) - basic_machine=mips-sei - os=-seiux - ;; - sequent) - basic_machine=i386-sequent - ;; - sh) - basic_machine=sh-hitachi - os=-hms - ;; - sh5el) - basic_machine=sh5le-unknown - ;; - sh64) - basic_machine=sh64-unknown - ;; - sparclite-wrs | simso-wrs) - basic_machine=sparclite-wrs - os=-vxworks - ;; - sps7) - basic_machine=m68k-bull - os=-sysv2 - ;; - spur) - basic_machine=spur-unknown - ;; - st2000) - basic_machine=m68k-tandem - ;; - stratus) - basic_machine=i860-stratus - os=-sysv4 - ;; - sun2) - basic_machine=m68000-sun - ;; - sun2os3) - basic_machine=m68000-sun - os=-sunos3 - ;; - sun2os4) - basic_machine=m68000-sun - os=-sunos4 - ;; - sun3os3) - basic_machine=m68k-sun - os=-sunos3 - ;; - sun3os4) - basic_machine=m68k-sun - os=-sunos4 - ;; - sun4os3) - basic_machine=sparc-sun - os=-sunos3 - ;; - sun4os4) - basic_machine=sparc-sun - os=-sunos4 - ;; - sun4sol2) - basic_machine=sparc-sun - os=-solaris2 - ;; - sun3 | sun3-*) - basic_machine=m68k-sun - ;; - sun4) - basic_machine=sparc-sun - ;; - sun386 | sun386i | roadrunner) - basic_machine=i386-sun - ;; - sv1) - basic_machine=sv1-cray - os=-unicos - ;; - symmetry) - basic_machine=i386-sequent - os=-dynix - ;; - t3e) - basic_machine=alphaev5-cray - os=-unicos - ;; - t90) - basic_machine=t90-cray - os=-unicos - ;; - tic54x | c54x*) - basic_machine=tic54x-unknown - os=-coff - ;; - tic55x | c55x*) - basic_machine=tic55x-unknown - os=-coff - ;; - tic6x | c6x*) - basic_machine=tic6x-unknown - os=-coff - ;; - tile*) - basic_machine=tile-unknown - os=-linux-gnu - ;; - tx39) - basic_machine=mipstx39-unknown - ;; - tx39el) - basic_machine=mipstx39el-unknown - ;; - toad1) - basic_machine=pdp10-xkl - os=-tops20 - ;; - tower | tower-32) - basic_machine=m68k-ncr - ;; - tpf) - basic_machine=s390x-ibm - os=-tpf - ;; - udi29k) - basic_machine=a29k-amd - os=-udi - ;; - ultra3) - basic_machine=a29k-nyu - os=-sym1 - ;; - v810 | necv810) - basic_machine=v810-nec - os=-none - ;; - vaxv) - basic_machine=vax-dec - os=-sysv - ;; - vms) - basic_machine=vax-dec - os=-vms - ;; - vpp*|vx|vx-*) - basic_machine=f301-fujitsu - ;; - vxworks960) - basic_machine=i960-wrs - os=-vxworks - ;; - vxworks68) - basic_machine=m68k-wrs - os=-vxworks - ;; - vxworks29k) - basic_machine=a29k-wrs - os=-vxworks - ;; - w65*) - basic_machine=w65-wdc - os=-none - ;; - w89k-*) - basic_machine=hppa1.1-winbond - os=-proelf - ;; - xbox) - basic_machine=i686-pc - os=-mingw32 - ;; - xps | xps100) - basic_machine=xps100-honeywell - ;; - ymp) - basic_machine=ymp-cray - os=-unicos - ;; - z8k-*-coff) - basic_machine=z8k-unknown - os=-sim - ;; - z80-*-coff) - basic_machine=z80-unknown - os=-sim - ;; - none) - basic_machine=none-none - os=-none - ;; - -# Here we handle the default manufacturer of certain CPU types. It is in -# some cases the only manufacturer, in others, it is the most popular. - w89k) - basic_machine=hppa1.1-winbond - ;; - op50n) - basic_machine=hppa1.1-oki - ;; - op60c) - basic_machine=hppa1.1-oki - ;; - romp) - basic_machine=romp-ibm - ;; - mmix) - basic_machine=mmix-knuth - ;; - rs6000) - basic_machine=rs6000-ibm - ;; - vax) - basic_machine=vax-dec - ;; - pdp10) - # there are many clones, so DEC is not a safe bet - basic_machine=pdp10-unknown - ;; - pdp11) - basic_machine=pdp11-dec - ;; - we32k) - basic_machine=we32k-att - ;; - sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) - basic_machine=sh-unknown - ;; - sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) - basic_machine=sparc-sun - ;; - cydra) - basic_machine=cydra-cydrome - ;; - orion) - basic_machine=orion-highlevel - ;; - orion105) - basic_machine=clipper-highlevel - ;; - mac | mpw | mac-mpw) - basic_machine=m68k-apple - ;; - pmac | pmac-mpw) - basic_machine=powerpc-apple - ;; - *-unknown) - # Make sure to match an already-canonicalized machine name. - ;; - *) - echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 - exit 1 - ;; -esac - -# Here we canonicalize certain aliases for manufacturers. -case $basic_machine in - *-digital*) - basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` - ;; - *-commodore*) - basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` - ;; - *) - ;; -esac - -# Decode manufacturer-specific aliases for certain operating systems. - -if [ x"$os" != x"" ] -then -case $os in - # First match some system type aliases - # that might get confused with valid system types. - # -solaris* is a basic system type, with this one exception. - -solaris1 | -solaris1.*) - os=`echo $os | sed -e 's|solaris1|sunos4|'` - ;; - -solaris) - os=-solaris2 - ;; - -svr4*) - os=-sysv4 - ;; - -unixware*) - os=-sysv4.2uw - ;; - -gnu/linux*) - os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` - ;; - # First accept the basic system types. - # The portable systems comes first. - # Each alternative MUST END IN A *, to match a version number. - # -sysv* is not here because it comes later, after sysvr4. - -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ - | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ - | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \ - | -kopensolaris* \ - | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ - | -aos* | -aros* \ - | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ - | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ - | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ - | -openbsd* | -solidbsd* \ - | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ - | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ - | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ - | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ - | -chorusos* | -chorusrdb* | -cegcc* \ - | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ - | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \ - | -uxpv* | -beos* | -mpeix* | -udk* \ - | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ - | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ - | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ - | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ - | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ - | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ - | -skyos* | -haiku* | -rdos* | -toppers* | -drops*) - # Remember, each alternative MUST END IN *, to match a version number. - ;; - -qnx*) - case $basic_machine in - x86-* | i*86-*) - ;; - *) - os=-nto$os - ;; - esac - ;; - -nto-qnx*) - ;; - -nto*) - os=`echo $os | sed -e 's|nto|nto-qnx|'` - ;; - -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ - | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ - | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) - ;; - -mac*) - os=`echo $os | sed -e 's|mac|macos|'` - ;; - -linux-dietlibc) - os=-linux-dietlibc - ;; - -linux*) - os=`echo $os | sed -e 's|linux|linux-gnu|'` - ;; - -sunos5*) - os=`echo $os | sed -e 's|sunos5|solaris2|'` - ;; - -sunos6*) - os=`echo $os | sed -e 's|sunos6|solaris3|'` - ;; - -opened*) - os=-openedition - ;; - -os400*) - os=-os400 - ;; - -wince*) - os=-wince - ;; - -osfrose*) - os=-osfrose - ;; - -osf*) - os=-osf - ;; - -utek*) - os=-bsd - ;; - -dynix*) - os=-bsd - ;; - -acis*) - os=-aos - ;; - -atheos*) - os=-atheos - ;; - -syllable*) - os=-syllable - ;; - -386bsd) - os=-bsd - ;; - -ctix* | -uts*) - os=-sysv - ;; - -nova*) - os=-rtmk-nova - ;; - -ns2 ) - os=-nextstep2 - ;; - -nsk*) - os=-nsk - ;; - # Preserve the version number of sinix5. - -sinix5.*) - os=`echo $os | sed -e 's|sinix|sysv|'` - ;; - -sinix*) - os=-sysv4 - ;; - -tpf*) - os=-tpf - ;; - -triton*) - os=-sysv3 - ;; - -oss*) - os=-sysv3 - ;; - -svr4) - os=-sysv4 - ;; - -svr3) - os=-sysv3 - ;; - -sysvr4) - os=-sysv4 - ;; - # This must come after -sysvr4. - -sysv*) - ;; - -ose*) - os=-ose - ;; - -es1800*) - os=-ose - ;; - -xenix) - os=-xenix - ;; - -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) - os=-mint - ;; - -aros*) - os=-aros - ;; - -kaos*) - os=-kaos - ;; - -zvmoe) - os=-zvmoe - ;; - -dicos*) - os=-dicos - ;; - -none) - ;; - *) - # Get rid of the `-' at the beginning of $os. - os=`echo $os | sed 's/[^-]*-//'` - echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 - exit 1 - ;; -esac -else - -# Here we handle the default operating systems that come with various machines. -# The value should be what the vendor currently ships out the door with their -# machine or put another way, the most popular os provided with the machine. - -# Note that if you're going to try to match "-MANUFACTURER" here (say, -# "-sun"), then you have to tell the case statement up towards the top -# that MANUFACTURER isn't an operating system. Otherwise, code above -# will signal an error saying that MANUFACTURER isn't an operating -# system, and we'll never get to this point. - -case $basic_machine in - score-*) - os=-elf - ;; - spu-*) - os=-elf - ;; - *-acorn) - os=-riscix1.2 - ;; - arm*-rebel) - os=-linux - ;; - arm*-semi) - os=-aout - ;; - c4x-* | tic4x-*) - os=-coff - ;; - # This must come before the *-dec entry. - pdp10-*) - os=-tops20 - ;; - pdp11-*) - os=-none - ;; - *-dec | vax-*) - os=-ultrix4.2 - ;; - m68*-apollo) - os=-domain - ;; - i386-sun) - os=-sunos4.0.2 - ;; - m68000-sun) - os=-sunos3 - # This also exists in the configure program, but was not the - # default. - # os=-sunos4 - ;; - m68*-cisco) - os=-aout - ;; - mep-*) - os=-elf - ;; - mips*-cisco) - os=-elf - ;; - mips*-*) - os=-elf - ;; - or32-*) - os=-coff - ;; - *-tti) # must be before sparc entry or we get the wrong os. - os=-sysv3 - ;; - sparc-* | *-sun) - os=-sunos4.1.1 - ;; - *-be) - os=-beos - ;; - *-haiku) - os=-haiku - ;; - *-ibm) - os=-aix - ;; - *-knuth) - os=-mmixware - ;; - *-wec) - os=-proelf - ;; - *-winbond) - os=-proelf - ;; - *-oki) - os=-proelf - ;; - *-hp) - os=-hpux - ;; - *-hitachi) - os=-hiux - ;; - i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) - os=-sysv - ;; - *-cbm) - os=-amigaos - ;; - *-dg) - os=-dgux - ;; - *-dolphin) - os=-sysv3 - ;; - m68k-ccur) - os=-rtu - ;; - m88k-omron*) - os=-luna - ;; - *-next ) - os=-nextstep - ;; - *-sequent) - os=-ptx - ;; - *-crds) - os=-unos - ;; - *-ns) - os=-genix - ;; - i370-*) - os=-mvs - ;; - *-next) - os=-nextstep3 - ;; - *-gould) - os=-sysv - ;; - *-highlevel) - os=-bsd - ;; - *-encore) - os=-bsd - ;; - *-sgi) - os=-irix - ;; - *-siemens) - os=-sysv4 - ;; - *-masscomp) - os=-rtu - ;; - f30[01]-fujitsu | f700-fujitsu) - os=-uxpv - ;; - *-rom68k) - os=-coff - ;; - *-*bug) - os=-coff - ;; - *-apple) - os=-macos - ;; - *-atari*) - os=-mint - ;; - *) - os=-none - ;; -esac -fi - -# Here we handle the case where we know the os, and the CPU type, but not the -# manufacturer. We pick the logical manufacturer. -vendor=unknown -case $basic_machine in - *-unknown) - case $os in - -riscix*) - vendor=acorn - ;; - -sunos*) - vendor=sun - ;; - -cnk*|-aix*) - vendor=ibm - ;; - -beos*) - vendor=be - ;; - -hpux*) - vendor=hp - ;; - -mpeix*) - vendor=hp - ;; - -hiux*) - vendor=hitachi - ;; - -unos*) - vendor=crds - ;; - -dgux*) - vendor=dg - ;; - -luna*) - vendor=omron - ;; - -genix*) - vendor=ns - ;; - -mvs* | -opened*) - vendor=ibm - ;; - -os400*) - vendor=ibm - ;; - -ptx*) - vendor=sequent - ;; - -tpf*) - vendor=ibm - ;; - -vxsim* | -vxworks* | -windiss*) - vendor=wrs - ;; - -aux*) - vendor=apple - ;; - -hms*) - vendor=hitachi - ;; - -mpw* | -macos*) - vendor=apple - ;; - -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) - vendor=atari - ;; - -vos*) - vendor=stratus - ;; - esac - basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` - ;; -esac - -echo $basic_machine$os -exit - -# Local variables: -# eval: (add-hook 'write-file-hooks 'time-stamp) -# time-stamp-start: "timestamp='" -# time-stamp-format: "%:y-%02m-%02d" -# time-stamp-end: "'" -# End: diff --git a/src/3rdparty/libconninet/configure.ac b/src/3rdparty/libconninet/configure.ac deleted file mode 100644 index 2a383ee..0000000 --- a/src/3rdparty/libconninet/configure.ac +++ /dev/null @@ -1,90 +0,0 @@ -AC_INIT([libconninet], patsubst(esyscmd([dpkg-parsechangelog | sed -n '/^Version: \(.*\)$/ {s//\1/;p}']), [ -]), [jukka.rissanen@nokia.com]) -AM_INIT_AUTOMAKE([foreign]) - -AC_PROG_CXX -AC_PROG_LIBTOOL - -AC_ARG_ENABLE(docs, [ --enable-docs Build DOXYGEN documentation (requires Doxygen)],enable_docs=$enableval,enable_docs=auto) - -AC_PATH_PROG(DOXYGEN, doxygen, no) -AC_MSG_CHECKING([whether to build Doxygen documentation]) - -if test x$DOXYGEN = xno ; then - have_doxygen=no -else - have_doxygen=yes -fi -if test x$enable_docs = xauto ; then - if test x$have_doxygen = xno ; then - enable_docs=no - else - enable_docs=yes - fi -fi -if test x$enable_docs = xyes; then - if test x$have_doxygen = xno; then - AC_MSG_ERROR([Building Doxygen docs explicitly required, but Doxygen not found]) - else - AC_MSG_RESULT(yes) - fi -else - AC_MSG_RESULT(no) -fi - -AM_CONDITIONAL(DOXYGEN_DOCS_ENABLED, test x$enable_docs = xyes) -AC_SUBST(DOXYGEN) - -PKG_CHECK_MODULES(GLIB, glib-2.0) -AC_SUBST(GLIB_CFLAGS) -AC_SUBST(GLIB_LIBS) - -PKG_CHECK_MODULES(QTCORE, QtCore) -AC_SUBST(QTCORE_CFLAGS) -AC_SUBST(QTCORE_LIBS) - -PKG_CHECK_MODULES(QTNETWORK, QtNetwork) -AC_SUBST(QTNETWORK_CFLAGS) -AC_SUBST(QTNETWORK_LIBS) - -PKG_CHECK_MODULES(QTDBUS, QtDBus) -AC_SUBST(QTDBUS_CFLAGS) -AC_SUBST(QTDBUS_LIBS) - -PKG_CHECK_MODULES(QTTEST, QtTest) -AC_SUBST(QTTEST_CFLAGS) -AC_SUBST(QTTEST_LIBS) - -PKG_CHECK_MODULES(DBUS, dbus-glib-1) -AC_SUBST(DBUS_CFLAGS) -AC_SUBST(DBUS_LIBS) - -PKG_CHECK_MODULES(CONNSETTINGS, connsettings) -AC_SUBST(CONNSETTINGS_CFLAGS) -AC_SUBST(CONNSETTINGS_LIBS) - -PKG_CHECK_MODULES(OSSO_IC, osso-ic) -AC_SUBST(OSSO_IC_CFLAGS) -AC_SUBST(OSSO_IC_LIBS) - -PKG_CHECK_MODULES(ICD_DEV, icd2) -AC_SUBST(ICD_DEV_CFLAGS) -AC_SUBST(ICD_DEV_LIBS) - -PKG_CHECK_MODULES(GCONF, gconf-2.0) -AC_SUBST(GCONF_CFLAGS) -AC_SUBST(GCONF_LIBS) - -PKG_CHECK_MODULES(QGCONF, gq-gconf) -AC_SUBST(QGCONF_CFLAGS) -AC_SUBST(QGCONF_LIBS) - -CONCFLAGS="-Wall -Werror -Wmissing-prototypes" -AC_SUBST(CONCFLAGS) - -AC_CONFIG_FILES([Makefile \ - src/Makefile \ - tests/Makefile \ - conninet.pc \ - doxygen.cfg]) -AC_OUTPUT diff --git a/src/3rdparty/libconninet/conninet.pc.in b/src/3rdparty/libconninet/conninet.pc.in deleted file mode 100644 index 68cdee0..0000000 --- a/src/3rdparty/libconninet/conninet.pc.in +++ /dev/null @@ -1,11 +0,0 @@ -prefix=@prefix@ -exec_prefix=@exec_prefix@ -libdir=@libdir@ -includedir=@includedir@ - -Name: libconninet -Description: Internet Connectivity support library -Version: @VERSION@ -Requires: dbus-1 >= 0.60 glib-2.0 QtCore QtDBus QtGui -Libs: -lconninet -Cflags: -I${includedir}/conninet diff --git a/src/3rdparty/libconninet/debian/changelog b/src/3rdparty/libconninet/debian/changelog deleted file mode 100644 index 436d318..0000000 --- a/src/3rdparty/libconninet/debian/changelog +++ /dev/null @@ -1,285 +0,0 @@ -libconninet (0.41+0m6) unstable; urgency=low - - * This entry has been added by BIFH queue processor - version has been changed to 0.41+0m6 - - -- Qing Jin Thu, 15 Jul 2010 15:56:38 +0300 - -libconninet (0.41) unstable; urgency=low - - * Fixes: NB#175098 - Qt4.7 Webkit crashes when bearer API QNetworkSession - constructor calls QNetworkSession::syncStateWithInterface() which in turn - calls Maemo::state() and Maemo::addrinfo() and webkit expects that event - loop is not run but those function process main loop events. - Now Maemo::state() and Maemo::addrinfo() are changed to be synchronous - and fully blocking functions. The old non-blocking versions are called - Maemo::state_non_blocking() and Maemo::addrinfo_non_blocking(). - - -- Jukka Rissanen Wed, 14 Jul 2010 10:12:47 +0300 - -libconninet (0.40) unstable; urgency=low - - * Fixes: NB#167465 - Unable to open network connection using libbearer - - -- Jukka Rissanen Tue, 11 May 2010 10:47:10 +0300 - -libconninet (0.39) unstable; urgency=low - - * Fixes: NB#167982 - initialize DBus vtable in DBusDispatcher. - - -- Aapo Makela Mon, 10 May 2010 14:42:39 +0300 - -libconninet (0.38) unstable; urgency=low - - * Changing icd2 connect_req to be synchronous as the check for - returned connect signal did not work correctly, this caused a - long timeout when connect() was called. - * Scan sometimes missed results and did not return them to caller. - * HTTP proxy settings were not set correctly. - - -- Jukka Rissanen Thu, 15 Apr 2010 11:25:06 +0300 - -libconninet (0.37) unstable; urgency=low - - * Make proxy config reference counting atomic. - - -- Jukka Rissanen Wed, 3 Mar 2010 13:23:08 +0200 - -libconninet (0.36) unstable; urgency=low - - * Fixes: NB#157586 - Cleanup dbus listener when WLAN scanning object is - deleted. - - -- Jukka Rissanen Fri, 26 Feb 2010 13:30:41 +0200 - -libconninet (0.35) unstable; urgency=low - - * Fixes: NB#156883 - libconninet fails to build under the Platform SDK (SB2) - - -- Jukka Rissanen Thu, 18 Feb 2010 12:14:40 +0200 - -libconninet (0.34) unstable; urgency=low - - * Coverity fix - - -- Jukka Rissanen Tue, 16 Feb 2010 16:38:00 +0200 - -libconninet (0.33) unstable; urgency=low - - * Added API to update Qt proxy config. - - -- Jukka Rissanen Tue, 26 Jan 2010 15:48:36 +0200 - -libconninet (0.32) unstable; urgency=low - - * Fixed IAPConf to unset value when set value is invalid. - * Updated IAPMonitor to use libconnsettings. - - -- Aapo Makela Wed, 03 Feb 2010 07:32:45 +0200 - -libconninet (0.31) unstable; urgency=low - - * Fixes: NB#154892 - Check nulls in IAPConf. - - -- Aapo Makela Mon, 01 Feb 2010 09:32:06 +0200 - -libconninet (0.30) unstable; urgency=low - - * Updated IAPConf to use libconnsettings. - - -- Aapo Makela Fri, 29 Jan 2010 12:58:03 +0200 - -libconninet (0.29) unstable; urgency=low - - * Fixed dependencies - - -- Jukka Rissanen Fri, 15 Jan 2010 10:16:07 +0200 - -libconninet (0.28) unstable; urgency=low - - * Get rid of libdui dependency - - -- Jukka Rissanen Wed, 13 Jan 2010 09:56:26 +0200 - -libconninet (0.27) unstable; urgency=low - - * Insert new pending calls to the list in DBusDispatcher. - - -- Aapo Makela Tue, 22 Dec 2009 14:27:32 +0200 - -libconninet (0.26) unstable; urgency=low - - * Added possibility to specify different signal path for DBusDispatcher. - - -- Aapo Makela Wed, 25 Nov 2009 14:27:34 +0200 - -libconninet (0.25) unstable; urgency=low - - * Fixes: NB#146450 - All scan results were not returned to the caller. - - -- Jukka Rissanen Mon, 16 Nov 2009 17:23:15 +0200 - -libconninet (0.24) unstable; urgency=low - - * Wait all scan results for all network types in Maemo::Icd::scan() - - -- Jukka Rissanen Fri, 6 Nov 2009 14:45:23 +0200 - -libconninet (0.23) unstable; urgency=low - - * Fixes: NB#143361 - Assert failure in session class for GPRS IAP. - - -- Jukka Rissanen Mon, 19 Oct 2009 16:00:14 +0300 - -libconninet (0.22) unstable; urgency=low - - * Fixed the error checking if scan returns 0 results. - - -- Jukka Rissanen Wed, 7 Oct 2009 13:50:27 +0300 - -libconninet (0.21) unstable; urgency=low - - * Support multiple DBusDispatcher classes at the same time. This is - required by Maemo::Icd class so that multiple instances of it can - be used the same time. - - -- Jukka Rissanen Mon, 5 Oct 2009 16:33:43 +0300 - -libconninet (0.20) unstable; urgency=low - - * Fixed memory leak in IAPConf::setValue() - - -- Jukka Rissanen Fri, 2 Oct 2009 13:02:21 +0300 - -libconninet (0.19) unstable; urgency=low - - * Fixed connect_req to one specific IAP in Icd class. - - -- Jukka Rissanen Tue, 29 Sep 2009 17:02:46 +0300 - -libconninet (0.18) unstable; urgency=low - - * Make sure the library will not abort in Icd class if scan does - not return any results. - - -- Jukka Rissanen Tue, 22 Sep 2009 17:00:12 +0300 - -libconninet (0.17) unstable; urgency=low - - * Added IAP monitoring support. - - -- Jukka Rissanen Mon, 21 Sep 2009 16:29:31 +0300 - -libconninet (0.16) unstable; urgency=low - - * Disabled the old osso-ic dbus interface as it is currently not used. - * Fixed the addrinfo request, now addresses are returned correctly to - the caller. - - -- Jukka Rissanen Thu, 17 Sep 2009 15:56:13 +0300 - -libconninet (0.15) unstable; urgency=low - - * Enabling state_req, statistics_req and addrinfo_req support - functions in Maemo::Icd as the corresponding DBUS API functions are - fixed in icd2 v0.89 - - -- Jukka Rissanen Fri, 24 Jul 2009 15:23:02 +0300 - -libconninet (0.14) unstable; urgency=low - - * Icd statistics support added. - * Icd address information support added. - * Icd scan method does not return the final (and empty) result any more. - * Added initial unit test implementation for Icd class. - * Some of the status functions in Icd class disabled because of issues - in icd2 and the dbus api. - - -- Jukka Rissanen Thu, 23 Jul 2009 11:03:05 +0300 - -libconninet (0.13) unstable; urgency=low - - * Added API to get all the configured IAPs. - - -- Jukka Rissanen Tue, 21 Jul 2009 09:47:18 +0300 - -libconninet (0.12) unstable; urgency=low - - * Replaced duivaluespace by Dui in pkg-config file because the - duivaluespace is deprecated. - - -- Jukka Rissanen Mon, 20 Jul 2009 16:00:10 +0300 - -libconninet (0.11) unstable; urgency=low - - * Using libdui instead of libduivaluespace because it is deprecated. - * The IAPConf::clear() uses native gconf API instead of launching gconftool - * Check that state_req call returned list and the list contains entries - before trying to access it. - - -- Jukka Rissanen Mon, 20 Jul 2009 14:55:15 +0300 - -libconninet (0.10) unstable; urgency=low - - * connect() did not return ok when connection succeeded. - - -- Jukka Rissanen Thu, 25 Jun 2009 09:31:21 +0300 - -libconninet (0.9) unstable; urgency=low - - * Connection timeout set to 2.5min, same as in fremantle. - - -- Jukka Rissanen Wed, 17 Jun 2009 13:36:40 +0300 - -libconninet (0.8) unstable; urgency=low - - * Fix state_req signal received from Icd - - -- Jukka Rissanen Thu, 11 Jun 2009 17:19:33 +0300 - -libconninet (0.7) unstable; urgency=low - - * Icd disconnect and select reqs are made synchronous as we do not - wait the return status. The previous async version was causing core - dumps if Icd class was destroyed too early. - - -- Jukka Rissanen Thu, 11 Jun 2009 11:52:36 +0300 - -libconninet (0.6) unstable; urgency=low - - * Fixed the libconninet0-dev dependencies. - - -- Jukka Rissanen Mon, 8 Jun 2009 10:47:56 +0300 - -libconninet (0.5) unstable; urgency=low - - * Fixed missing QObject connect functions. - * Fixed IAPConf to return invalid QVariant if the value does not exist. - - -- Jukka Rissanen Mon, 01 Jun 2009 13:58:53 +0300 - -libconninet (0.4) unstable; urgency=low - - * Fixed QObject signal setting for Maemo::Icd - - -- Jukka Rissanen Wed, 20 May 2009 13:51:11 +0300 - -libconninet (0.3) unstable; urgency=low - - * Refactoring classes - * Added IAPConf class. - - -- Jukka Rissanen Thu, 14 May 2009 13:24:11 +0300 - -libconninet (0.2) unstable; urgency=low - - * Fixed pkgconfig file which had wrong dependency - * Added DBus array and struct support to DBusDispatcher. - - -- Jukka Rissanen Wed, 13 May 2009 12:11:00 +0300 - -libconninet (0.1) unstable; urgency=low - - * Initial Release. - - -- Jukka Rissanen Tue, 12 May 2009 16:10:27 +0200 diff --git a/src/3rdparty/libconninet/debian/compat b/src/3rdparty/libconninet/debian/compat deleted file mode 100644 index b8626c4..0000000 --- a/src/3rdparty/libconninet/debian/compat +++ /dev/null @@ -1 +0,0 @@ -4 diff --git a/src/3rdparty/libconninet/debian/control b/src/3rdparty/libconninet/debian/control deleted file mode 100644 index 2db660f..0000000 --- a/src/3rdparty/libconninet/debian/control +++ /dev/null @@ -1,39 +0,0 @@ -Source: libconninet -Priority: optional -Maintainer: Jukka Rissanen -Build-Depends: debhelper (>= 4.0.0), autotools-dev, libglib2.0-dev (>= 2.8), - libdbus-1-dev (>= 0.60), libconnsettings0-dev (>= 0.4), icd2-osso-ic-dev, - icd2-dev, libqt4-dev, libgconf2-dev (>> 2.6.4), libgq-gconf-dev -Standards-Version: 3.6.2 -Section: libs - -Package: libconninet0-dev -Section: libdevel -Architecture: any -Depends: libconninet0 (= ${Source-Version}), libdbus-1-dev (>= 0.60), - libglib2.0-dev (>= 2.8), libconnsettings0-dev (>= 0.4), libqt4-dev, - icd2-osso-ic-dev, icd2-dev, libgconf2-dev (>> 2.6.4), libgq-gconf-dev -Description: Internet Connectivity support library development files - Internet Connectivity support library (libconninet) provides common - support functions for connecting to icd2 and accessing configuration - data. - . - This package contains the header files. - -Package: libconninet0 -Section: libs -Architecture: any -Depends: ${shlibs:Depends}, ${misc:Depends} -Description: Internet Connectivity support library - Internet Connectivity support library (libconninet) provides common - support functions for connecting to icd2 and accessing configuration - data. - . - This package contains the shared libraries. - -Package: libconninet0-dbg -Section: libs -Architecture: any -Depends: libconninet0 (= ${Source-Version}), ${shlibs:Depends}, ${misc:Depends} -Description: Debug symbols for the Internet Connectivity support library - Internet Connectivity support library (libconninet) debug symbols. diff --git a/src/3rdparty/libconninet/debian/copyright b/src/3rdparty/libconninet/debian/copyright deleted file mode 100644 index 97e8e68..0000000 --- a/src/3rdparty/libconninet/debian/copyright +++ /dev/null @@ -1,19 +0,0 @@ -libconninet - Internet Connectivity support library - -Copyright (C) 2009 Nokia Corporation. All rights reserved. - -Contact: Jukka Rissanen - -This library is free software; you can redistribute it and/or modify -it under the terms of the GNU Lesser General Public License version 2.1 -as published by the Free Software Foundation. - -This library is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -Lesser General Public License for more details. - -You should have received a copy of the GNU Lesser General Public -License along with this library; if not, write to the Free Software -Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA -02110-1301 USA diff --git a/src/3rdparty/libconninet/debian/libconninet0-dev.dirs b/src/3rdparty/libconninet/debian/libconninet0-dev.dirs deleted file mode 100644 index 4418816..0000000 --- a/src/3rdparty/libconninet/debian/libconninet0-dev.dirs +++ /dev/null @@ -1,2 +0,0 @@ -usr/lib -usr/include diff --git a/src/3rdparty/libconninet/debian/libconninet0-dev.files b/src/3rdparty/libconninet/debian/libconninet0-dev.files deleted file mode 100644 index 78bbac8..0000000 --- a/src/3rdparty/libconninet/debian/libconninet0-dev.files +++ /dev/null @@ -1,4 +0,0 @@ -usr/include/* -usr/lib/lib*.so -usr/lib/pkgconfig/* -usr/share/pkgconfig/* diff --git a/src/3rdparty/libconninet/debian/libconninet0.dirs b/src/3rdparty/libconninet/debian/libconninet0.dirs deleted file mode 100644 index 6845771..0000000 --- a/src/3rdparty/libconninet/debian/libconninet0.dirs +++ /dev/null @@ -1 +0,0 @@ -usr/lib diff --git a/src/3rdparty/libconninet/debian/libconninet0.files b/src/3rdparty/libconninet/debian/libconninet0.files deleted file mode 100644 index d0dbfd1..0000000 --- a/src/3rdparty/libconninet/debian/libconninet0.files +++ /dev/null @@ -1 +0,0 @@ -usr/lib/lib*.so.* diff --git a/src/3rdparty/libconninet/debian/rules b/src/3rdparty/libconninet/debian/rules deleted file mode 100755 index 2a3d395..0000000 --- a/src/3rdparty/libconninet/debian/rules +++ /dev/null @@ -1,123 +0,0 @@ -#!/usr/bin/make -f -# -*- makefile -*- -# Sample debian/rules that uses debhelper. -# This file was originally written by Joey Hess and Craig Small. -# As a special exception, when this file is copied by dh-make into a -# dh-make output file, you may use that output file without restriction. -# This special exception was added by Craig Small in version 0.37 of dh-make. - -# Uncomment this to turn on verbose mode. -#export DH_VERBOSE=1 - - -# These are used for cross-compiling and for saving the configure script -# from having to guess our platform (since we know it already) -DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) -DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) - - -CFLAGS = -Wall -g - -ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) - CFLAGS += -O0 -else - CFLAGS += -O2 -endif - -# shared library versions, option 1 -#version=2.0.5 -#major=2 -# option 2, assuming the library is created as src/.libs/libfoo.so.2.0.5 or so -version=`ls src/.libs/lib*.so.* | \ - awk '{if (match($$0,/[0-9]+\.[0-9]+\.[0-9]+$$/)) print substr($$0,RSTART)}'` -major=`ls src/.libs/lib*.so.* | \ - awk '{if (match($$0,/\.so\.[0-9]+$$/)) print substr($$0,RSTART+4)}'` - -configure: configure.ac debian/changelog - -./autogen.sh - -config.status: configure - dh_testdir - # Add here commands to configure the package. - CFLAGS="$(CFLAGS)" ./configure \ - --host=$(DEB_HOST_GNU_TYPE) \ - --build=$(DEB_BUILD_GNU_TYPE) \ - --prefix=/usr \ - --mandir=\$${prefix}/share/man \ - --infodir=\$${prefix}/share/info - - -build: build-stamp -build-stamp: config.status - dh_testdir - - # Add here commands to compile the package. - $(MAKE) - - touch build-stamp - -clean: - dh_testdir - dh_testroot - rm -f build-stamp - - # Add here commands to clean up after the build process. - -$(MAKE) distclean -ifneq "$(wildcard /usr/share/misc/config.sub)" "" - cp -f /usr/share/misc/config.sub config.sub -endif -ifneq "$(wildcard /usr/share/misc/config.guess)" "" - cp -f /usr/share/misc/config.guess config.guess -endif - - - dh_clean - -install: build - dh_testdir - dh_testroot - dh_clean -k - dh_installdirs - - # Add here commands to install the package into debian/tmp - $(MAKE) install DESTDIR=$(CURDIR)/debian/tmp - - -# Build architecture-independent files here. -binary-indep: build install -# We have nothing to do by default. - -# Build architecture-dependent files here. -binary-arch: build install - dh_testdir - dh_testroot - dh_movefiles - dh_installchangelogs ChangeLog - dh_installdocs - dh_installexamples -# dh_install -# dh_installmenu -# dh_installdebconf -# dh_installlogrotate -# dh_installemacsen -# dh_installpam -# dh_installmime -# dh_installinit -# dh_installcron -# dh_installinfo - dh_installman - dh_link - dh_strip --dbg-package=libconninet0 - dh_compress - dh_fixperms -# dh_perl -# dh_python - dh_makeshlibs - dh_installdeb - dh_shlibdeps - dh_gencontrol - dh_md5sums - dh_builddeb - -binary: binary-indep binary-arch -.PHONY: build clean binary-indep binary-arch binary install diff --git a/src/3rdparty/libconninet/doxygen.cfg.in b/src/3rdparty/libconninet/doxygen.cfg.in deleted file mode 100644 index 80a4c8d..0000000 --- a/src/3rdparty/libconninet/doxygen.cfg.in +++ /dev/null @@ -1,1147 +0,0 @@ -# Doxyfile 1.3.7 - -# This file describes the settings to be used by the documentation system -# doxygen (www.doxygen.org) for a project -# -# All text after a hash (#) is considered a comment and will be ignored -# The format is: -# TAG = value [value, ...] -# For lists items can also be appended using: -# TAG += value [value, ...] -# Values that contain spaces should be placed between quotes (" ") - -#--------------------------------------------------------------------------- -# Project related configuration options -#--------------------------------------------------------------------------- - -# The PROJECT_NAME tag is a single word (or a sequence of words surrounded -# by quotes) that should identify the project. - -PROJECT_NAME = "Internet Connectivity Support Library" - -# The PROJECT_NUMBER tag can be used to enter a project or revision number. -# This could be handy for archiving the generated documentation or -# if some version control system is used. - -PROJECT_NUMBER = @VERSION@ - -# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) -# base path where the generated documentation will be put. -# If a relative path is entered, it will be relative to the location -# where doxygen was started. If left blank the current directory will be used. - -OUTPUT_DIRECTORY = doc - -# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create -# 2 levels of 10 sub-directories under the output directory of each output -# format and will distribute the generated files over these directories. -# Enabling this option can be useful when feeding doxygen a huge amount of source -# files, where putting all generated files in the same directory would otherwise -# cause performance problems for the file system. - -CREATE_SUBDIRS = NO - -# The OUTPUT_LANGUAGE tag is used to specify the language in which all -# documentation generated by doxygen is written. Doxygen will use this -# information to generate all constant output in the proper language. -# The default language is English, other supported languages are: -# Brazilian, Catalan, Chinese, Chinese-Traditional, Croatian, Czech, Danish, Dutch, -# Finnish, French, German, Greek, Hungarian, Italian, Japanese, Japanese-en -# (Japanese with English messages), Korean, Korean-en, Norwegian, Polish, Portuguese, -# Romanian, Russian, Serbian, Slovak, Slovene, Spanish, Swedish, and Ukrainian. - -OUTPUT_LANGUAGE = English - -# This tag can be used to specify the encoding used in the generated output. -# The encoding is not always determined by the language that is chosen, -# but also whether or not the output is meant for Windows or non-Windows users. -# In case there is a difference, setting the USE_WINDOWS_ENCODING tag to YES -# forces the Windows encoding (this is the default for the Windows binary), -# whereas setting the tag to NO uses a Unix-style encoding (the default for -# all platforms other than Windows). - -USE_WINDOWS_ENCODING = NO - -# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will -# include brief member descriptions after the members that are listed in -# the file and class documentation (similar to JavaDoc). -# Set to NO to disable this. - -BRIEF_MEMBER_DESC = YES - -# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend -# the brief description of a member or function before the detailed description. -# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the -# brief descriptions will be completely suppressed. - -REPEAT_BRIEF = YES - -# This tag implements a quasi-intelligent brief description abbreviator -# that is used to form the text in various listings. Each string -# in this list, if found as the leading text of the brief description, will be -# stripped from the text and the result after processing the whole list, is used -# as the annotated text. Otherwise, the brief description is used as-is. If left -# blank, the following values are used ("$name" is automatically replaced with the -# name of the entity): "The $name class" "The $name widget" "The $name file" -# "is" "provides" "specifies" "contains" "represents" "a" "an" "the" - -ABBREVIATE_BRIEF = - -# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then -# Doxygen will generate a detailed section even if there is only a brief -# description. - -ALWAYS_DETAILED_SEC = NO - -# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all inherited -# members of a class in the documentation of that class as if those members were -# ordinary class members. Constructors, destructors and assignment operators of -# the base classes will not be shown. - -INLINE_INHERITED_MEMB = NO - -# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full -# path before files name in the file list and in the header files. If set -# to NO the shortest path that makes the file name unique will be used. - -FULL_PATH_NAMES = NO - -# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag -# can be used to strip a user-defined part of the path. Stripping is -# only done if one of the specified strings matches the left-hand part of -# the path. The tag can be used to show relative paths in the file list. -# If left blank the directory from which doxygen is run is used as the -# path to strip. - -STRIP_FROM_PATH = - -# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of -# the path mentioned in the documentation of a class, which tells -# the reader which header file to include in order to use a class. -# If left blank only the name of the header file containing the class -# definition is used. Otherwise one should specify the include paths that -# are normally passed to the compiler using the -I flag. - -STRIP_FROM_INC_PATH = - -# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter -# (but less readable) file names. This can be useful is your file systems -# doesn't support long names like on DOS, Mac, or CD-ROM. - -SHORT_NAMES = NO - -# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen -# will interpret the first line (until the first dot) of a JavaDoc-style -# comment as the brief description. If set to NO, the JavaDoc -# comments will behave just like the Qt-style comments (thus requiring an -# explicit @brief command for a brief description. - -JAVADOC_AUTOBRIEF = YES - -# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen -# treat a multi-line C++ special comment block (i.e. a block of //! or /// -# comments) as a brief description. This used to be the default behaviour. -# The new default is to treat a multi-line C++ comment block as a detailed -# description. Set this tag to YES if you prefer the old behaviour instead. - -MULTILINE_CPP_IS_BRIEF = NO - -# If the DETAILS_AT_TOP tag is set to YES then Doxygen -# will output the detailed description near the top, like JavaDoc. -# If set to NO, the detailed description appears after the member -# documentation. - -DETAILS_AT_TOP = YES - -# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented -# member inherits the documentation from any documented member that it -# re-implements. - -INHERIT_DOCS = YES - -# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC -# tag is set to YES, then doxygen will reuse the documentation of the first -# member in the group (if any) for the other members of the group. By default -# all members of a group must be documented explicitly. - -DISTRIBUTE_GROUP_DOC = NO - -# The TAB_SIZE tag can be used to set the number of spaces in a tab. -# Doxygen uses this value to replace tabs by spaces in code fragments. - -TAB_SIZE = 8 - -# This tag can be used to specify a number of aliases that acts -# as commands in the documentation. An alias has the form "name=value". -# For example adding "sideeffect=\par Side Effects:\n" will allow you to -# put the command \sideeffect (or @sideeffect) in the documentation, which -# will result in a user-defined paragraph with heading "Side Effects:". -# You can put \n's in the value part of an alias to insert newlines. - -ALIASES = - -# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources -# only. Doxygen will then generate output that is more tailored for C. -# For instance, some of the names that are used will be different. The list -# of all members will be omitted, etc. - -OPTIMIZE_OUTPUT_FOR_C = YES - -# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java sources -# only. Doxygen will then generate output that is more tailored for Java. -# For instance, namespaces will be presented as packages, qualified scopes -# will look different, etc. - -OPTIMIZE_OUTPUT_JAVA = NO - -# Set the SUBGROUPING tag to YES (the default) to allow class member groups of -# the same type (for instance a group of public functions) to be put as a -# subgroup of that type (e.g. under the Public Functions section). Set it to -# NO to prevent subgrouping. Alternatively, this can be done per class using -# the \nosubgrouping command. - -SUBGROUPING = YES - -#--------------------------------------------------------------------------- -# Build related configuration options -#--------------------------------------------------------------------------- - -# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in -# documentation are documented, even if no documentation was available. -# Private class members and static file members will be hidden unless -# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES - -EXTRACT_ALL = NO - -# If the EXTRACT_PRIVATE tag is set to YES all private members of a class -# will be included in the documentation. - -EXTRACT_PRIVATE = NO - -# If the EXTRACT_STATIC tag is set to YES all static members of a file -# will be included in the documentation. - -EXTRACT_STATIC = NO - -# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs) -# defined locally in source files will be included in the documentation. -# If set to NO only classes defined in header files are included. - -EXTRACT_LOCAL_CLASSES = YES - -# This flag is only useful for Objective-C code. When set to YES local -# methods, which are defined in the implementation section but not in -# the interface are included in the documentation. -# If set to NO (the default) only methods in the interface are included. - -EXTRACT_LOCAL_METHODS = NO - -# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all -# undocumented members of documented classes, files or namespaces. -# If set to NO (the default) these members will be included in the -# various overviews, but no documentation section is generated. -# This option has no effect if EXTRACT_ALL is enabled. - -HIDE_UNDOC_MEMBERS = YES - -# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all -# undocumented classes that are normally visible in the class hierarchy. -# If set to NO (the default) these classes will be included in the various -# overviews. This option has no effect if EXTRACT_ALL is enabled. - -HIDE_UNDOC_CLASSES = NO - -# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all -# friend (class|struct|union) declarations. -# If set to NO (the default) these declarations will be included in the -# documentation. - -HIDE_FRIEND_COMPOUNDS = NO - -# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any -# documentation blocks found inside the body of a function. -# If set to NO (the default) these blocks will be appended to the -# function's detailed documentation block. - -HIDE_IN_BODY_DOCS = NO - -# The INTERNAL_DOCS tag determines if documentation -# that is typed after a \internal command is included. If the tag is set -# to NO (the default) then the documentation will be excluded. -# Set it to YES to include the internal documentation. - -INTERNAL_DOCS = NO - -# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate -# file names in lower-case letters. If set to YES upper-case letters are also -# allowed. This is useful if you have classes or files whose names only differ -# in case and if your file system supports case sensitive file names. Windows -# users are advised to set this option to NO. - -CASE_SENSE_NAMES = YES - -# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen -# will show members with their full class and namespace scopes in the -# documentation. If set to YES the scope will be hidden. - -HIDE_SCOPE_NAMES = NO - -# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen -# will put a list of the files that are included by a file in the documentation -# of that file. - -SHOW_INCLUDE_FILES = YES - -# If the INLINE_INFO tag is set to YES (the default) then a tag [inline] -# is inserted in the documentation for inline members. - -INLINE_INFO = YES - -# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen -# will sort the (detailed) documentation of file and class members -# alphabetically by member name. If set to NO the members will appear in -# declaration order. - -SORT_MEMBER_DOCS = YES - -# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the -# brief documentation of file, namespace and class members alphabetically -# by member name. If set to NO (the default) the members will appear in -# declaration order. - -SORT_BRIEF_DOCS = NO - -# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be -# sorted by fully-qualified names, including namespaces. If set to -# NO (the default), the class list will be sorted only by class name, -# not including the namespace part. -# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES. -# Note: This option applies only to the class list, not to the -# alphabetical list. - -SORT_BY_SCOPE_NAME = NO - -# The GENERATE_TODOLIST tag can be used to enable (YES) or -# disable (NO) the todo list. This list is created by putting \todo -# commands in the documentation. - -GENERATE_TODOLIST = YES - -# The GENERATE_TESTLIST tag can be used to enable (YES) or -# disable (NO) the test list. This list is created by putting \test -# commands in the documentation. - -GENERATE_TESTLIST = YES - -# The GENERATE_BUGLIST tag can be used to enable (YES) or -# disable (NO) the bug list. This list is created by putting \bug -# commands in the documentation. - -GENERATE_BUGLIST = YES - -# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or -# disable (NO) the deprecated list. This list is created by putting -# \deprecated commands in the documentation. - -GENERATE_DEPRECATEDLIST= YES - -# The ENABLED_SECTIONS tag can be used to enable conditional -# documentation sections, marked by \if sectionname ... \endif. - -ENABLED_SECTIONS = - -# The MAX_INITIALIZER_LINES tag determines the maximum number of lines -# the initial value of a variable or define consists of for it to appear in -# the documentation. If the initializer consists of more lines than specified -# here it will be hidden. Use a value of 0 to hide initializers completely. -# The appearance of the initializer of individual variables and defines in the -# documentation can be controlled using \showinitializer or \hideinitializer -# command in the documentation regardless of this setting. - -MAX_INITIALIZER_LINES = 30 - -# Set the SHOW_USED_FILES tag to NO to disable the list of files generated -# at the bottom of the documentation of classes and structs. If set to YES the -# list will mention the files that were used to generate the documentation. - -SHOW_USED_FILES = YES - -#--------------------------------------------------------------------------- -# configuration options related to warning and progress messages -#--------------------------------------------------------------------------- - -# The QUIET tag can be used to turn on/off the messages that are generated -# by doxygen. Possible values are YES and NO. If left blank NO is used. - -QUIET = NO - -# The WARNINGS tag can be used to turn on/off the warning messages that are -# generated by doxygen. Possible values are YES and NO. If left blank -# NO is used. - -WARNINGS = YES - -# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings -# for undocumented members. If EXTRACT_ALL is set to YES then this flag will -# automatically be disabled. - -WARN_IF_UNDOCUMENTED = YES - -# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for -# potential errors in the documentation, such as not documenting some -# parameters in a documented function, or documenting parameters that -# don't exist or using markup commands wrongly. - -WARN_IF_DOC_ERROR = YES - -# The WARN_FORMAT tag determines the format of the warning messages that -# doxygen can produce. The string should contain the $file, $line, and $text -# tags, which will be replaced by the file and line number from which the -# warning originated and the warning text. - -WARN_FORMAT = "$file:$line: $text" - -# The WARN_LOGFILE tag can be used to specify a file to which warning -# and error messages should be written. If left blank the output is written -# to stderr. - -WARN_LOGFILE = - -#--------------------------------------------------------------------------- -# configuration options related to the input files -#--------------------------------------------------------------------------- - -# The INPUT tag can be used to specify the files and/or directories that contain -# documented source files. You may enter file names like "myfile.cpp" or -# directories like "/usr/src/myproject". Separate the files or directories -# with spaces. - -INPUT = conic/conic.h \ - conic/conicconnection.h \ - conic/conicconnectionevent.h \ - conic/conicevent.h \ - conic/coniciap.h \ - conic/conicstatisticsevent.h - -# If the value of the INPUT tag contains directories, you can use the -# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp -# and *.h) to filter out the source-files in the directories. If left -# blank the following patterns are tested: -# *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx *.hpp -# *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm - -FILE_PATTERNS = - -# The RECURSIVE tag can be used to turn specify whether or not subdirectories -# should be searched for input files as well. Possible values are YES and NO. -# If left blank NO is used. - -RECURSIVE = NO - -# The EXCLUDE tag can be used to specify files and/or directories that should -# excluded from the INPUT source files. This way you can easily exclude a -# subdirectory from a directory tree whose root is specified with the INPUT tag. - -EXCLUDE = - -# The EXCLUDE_SYMLINKS tag can be used select whether or not files or directories -# that are symbolic links (a Unix filesystem feature) are excluded from the input. - -EXCLUDE_SYMLINKS = NO - -# If the value of the INPUT tag contains directories, you can use the -# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude -# certain files from those directories. - -EXCLUDE_PATTERNS = - -# The EXAMPLE_PATH tag can be used to specify one or more files or -# directories that contain example code fragments that are included (see -# the \include command). - -EXAMPLE_PATH = - -# If the value of the EXAMPLE_PATH tag contains directories, you can use the -# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp -# and *.h) to filter out the source-files in the directories. If left -# blank all files are included. - -EXAMPLE_PATTERNS = - -# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be -# searched for input files to be used with the \include or \dontinclude -# commands irrespective of the value of the RECURSIVE tag. -# Possible values are YES and NO. If left blank NO is used. - -EXAMPLE_RECURSIVE = NO - -# The IMAGE_PATH tag can be used to specify one or more files or -# directories that contain image that are included in the documentation (see -# the \image command). - -IMAGE_PATH = - -# The INPUT_FILTER tag can be used to specify a program that doxygen should -# invoke to filter for each input file. Doxygen will invoke the filter program -# by executing (via popen()) the command , where -# is the value of the INPUT_FILTER tag, and is the name of an -# input file. Doxygen will then use the output that the filter program writes -# to standard output. - -INPUT_FILTER = - -# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using -# INPUT_FILTER) will be used to filter the input files when producing source -# files to browse (i.e. when SOURCE_BROWSER is set to YES). - -FILTER_SOURCE_FILES = NO - -#--------------------------------------------------------------------------- -# configuration options related to source browsing -#--------------------------------------------------------------------------- - -# If the SOURCE_BROWSER tag is set to YES then a list of source files will -# be generated. Documented entities will be cross-referenced with these sources. -# Note: To get rid of all source code in the generated output, make sure also -# VERBATIM_HEADERS is set to NO. - -SOURCE_BROWSER = NO - -# Setting the INLINE_SOURCES tag to YES will include the body -# of functions and classes directly in the documentation. - -INLINE_SOURCES = NO - -# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct -# doxygen to hide any special comment blocks from generated source code -# fragments. Normal C and C++ comments will always remain visible. - -STRIP_CODE_COMMENTS = YES - -# If the REFERENCED_BY_RELATION tag is set to YES (the default) -# then for each documented function all documented -# functions referencing it will be listed. - -REFERENCED_BY_RELATION = YES - -# If the REFERENCES_RELATION tag is set to YES (the default) -# then for each documented function all documented entities -# called/used by that function will be listed. - -REFERENCES_RELATION = YES - -# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen -# will generate a verbatim copy of the header file for each class for -# which an include is specified. Set to NO to disable this. - -VERBATIM_HEADERS = NO - -#--------------------------------------------------------------------------- -# configuration options related to the alphabetical class index -#--------------------------------------------------------------------------- - -# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index -# of all compounds will be generated. Enable this if the project -# contains a lot of classes, structs, unions or interfaces. - -ALPHABETICAL_INDEX = NO - -# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then -# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns -# in which this list will be split (can be a number in the range [1..20]) - -COLS_IN_ALPHA_INDEX = 5 - -# In case all classes in a project start with a common prefix, all -# classes will be put under the same header in the alphabetical index. -# The IGNORE_PREFIX tag can be used to specify one or more prefixes that -# should be ignored while generating the index headers. - -IGNORE_PREFIX = - -#--------------------------------------------------------------------------- -# configuration options related to the HTML output -#--------------------------------------------------------------------------- - -# If the GENERATE_HTML tag is set to YES (the default) Doxygen will -# generate HTML output. - -GENERATE_HTML = YES - -# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. -# If a relative path is entered the value of OUTPUT_DIRECTORY will be -# put in front of it. If left blank `html' will be used as the default path. - -HTML_OUTPUT = html - -# The HTML_FILE_EXTENSION tag can be used to specify the file extension for -# each generated HTML page (for example: .htm,.php,.asp). If it is left blank -# doxygen will generate files with .html extension. - -HTML_FILE_EXTENSION = .html - -# The HTML_HEADER tag can be used to specify a personal HTML header for -# each generated HTML page. If it is left blank doxygen will generate a -# standard header. - -HTML_HEADER = - -# The HTML_FOOTER tag can be used to specify a personal HTML footer for -# each generated HTML page. If it is left blank doxygen will generate a -# standard footer. - -HTML_FOOTER = - -# The HTML_STYLESHEET tag can be used to specify a user-defined cascading -# style sheet that is used by each HTML page. It can be used to -# fine-tune the look of the HTML output. If the tag is left blank doxygen -# will generate a default style sheet. Note that doxygen will try to copy -# the style sheet file to the HTML output directory, so don't put your own -# stylesheet in the HTML output directory as well, or it will be erased! - -HTML_STYLESHEET = - -# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes, -# files or namespaces will be aligned in HTML using tables. If set to -# NO a bullet list will be used. - -HTML_ALIGN_MEMBERS = YES - -# If the GENERATE_HTMLHELP tag is set to YES, additional index files -# will be generated that can be used as input for tools like the -# Microsoft HTML help workshop to generate a compressed HTML help file (.chm) -# of the generated HTML documentation. - -GENERATE_HTMLHELP = NO - -# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can -# be used to specify the file name of the resulting .chm file. You -# can add a path in front of the file if the result should not be -# written to the html output directory. - -CHM_FILE = - -# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can -# be used to specify the location (absolute path including file name) of -# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run -# the HTML help compiler on the generated index.hhp. - -HHC_LOCATION = - -# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag -# controls if a separate .chi index file is generated (YES) or that -# it should be included in the master .chm file (NO). - -GENERATE_CHI = NO - -# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag -# controls whether a binary table of contents is generated (YES) or a -# normal table of contents (NO) in the .chm file. - -BINARY_TOC = NO - -# The TOC_EXPAND flag can be set to YES to add extra items for group members -# to the contents of the HTML help documentation and to the tree view. - -TOC_EXPAND = NO - -# The DISABLE_INDEX tag can be used to turn on/off the condensed index at -# top of each HTML page. The value NO (the default) enables the index and -# the value YES disables it. - -DISABLE_INDEX = NO - -# This tag can be used to set the number of enum values (range [1..20]) -# that doxygen will group on one line in the generated HTML documentation. - -ENUM_VALUES_PER_LINE = 4 - -# If the GENERATE_TREEVIEW tag is set to YES, a side panel will be -# generated containing a tree-like index structure (just like the one that -# is generated for HTML Help). For this to work a browser that supports -# JavaScript, DHTML, CSS and frames is required (for instance Mozilla 1.0+, -# Netscape 6.0+, Internet explorer 5.0+, or Konqueror). Windows users are -# probably better off using the HTML help feature. - -GENERATE_TREEVIEW = NO - -# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be -# used to set the initial width (in pixels) of the frame in which the tree -# is shown. - -TREEVIEW_WIDTH = 250 - -#--------------------------------------------------------------------------- -# configuration options related to the LaTeX output -#--------------------------------------------------------------------------- - -# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will -# generate Latex output. - -GENERATE_LATEX = YES - -# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. -# If a relative path is entered the value of OUTPUT_DIRECTORY will be -# put in front of it. If left blank `latex' will be used as the default path. - -LATEX_OUTPUT = latex - -# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be -# invoked. If left blank `latex' will be used as the default command name. - -LATEX_CMD_NAME = latex - -# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to -# generate index for LaTeX. If left blank `makeindex' will be used as the -# default command name. - -MAKEINDEX_CMD_NAME = makeindex - -# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact -# LaTeX documents. This may be useful for small projects and may help to -# save some trees in general. - -COMPACT_LATEX = NO - -# The PAPER_TYPE tag can be used to set the paper type that is used -# by the printer. Possible values are: a4, a4wide, letter, legal and -# executive. If left blank a4wide will be used. - -PAPER_TYPE = a4wide - -# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX -# packages that should be included in the LaTeX output. - -EXTRA_PACKAGES = - -# The LATEX_HEADER tag can be used to specify a personal LaTeX header for -# the generated latex document. The header should contain everything until -# the first chapter. If it is left blank doxygen will generate a -# standard header. Notice: only use this tag if you know what you are doing! - -LATEX_HEADER = - -# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated -# is prepared for conversion to pdf (using ps2pdf). The pdf file will -# contain links (just like the HTML output) instead of page references -# This makes the output suitable for online browsing using a pdf viewer. - -PDF_HYPERLINKS = YES - -# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of -# plain latex in the generated Makefile. Set this option to YES to get a -# higher quality PDF documentation. - -USE_PDFLATEX = YES - -# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode. -# command to the generated LaTeX files. This will instruct LaTeX to keep -# running if errors occur, instead of asking the user for help. -# This option is also used when generating formulas in HTML. - -LATEX_BATCHMODE = NO - -# If LATEX_HIDE_INDICES is set to YES then doxygen will not -# include the index chapters (such as File Index, Compound Index, etc.) -# in the output. - -LATEX_HIDE_INDICES = NO - -#--------------------------------------------------------------------------- -# configuration options related to the RTF output -#--------------------------------------------------------------------------- - -# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output -# The RTF output is optimized for Word 97 and may not look very pretty with -# other RTF readers or editors. - -GENERATE_RTF = NO - -# The RTF_OUTPUT tag is used to specify where the RTF docs will be put. -# If a relative path is entered the value of OUTPUT_DIRECTORY will be -# put in front of it. If left blank `rtf' will be used as the default path. - -RTF_OUTPUT = rtf - -# If the COMPACT_RTF tag is set to YES Doxygen generates more compact -# RTF documents. This may be useful for small projects and may help to -# save some trees in general. - -COMPACT_RTF = NO - -# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated -# will contain hyperlink fields. The RTF file will -# contain links (just like the HTML output) instead of page references. -# This makes the output suitable for online browsing using WORD or other -# programs which support those fields. -# Note: wordpad (write) and others do not support links. - -RTF_HYPERLINKS = NO - -# Load stylesheet definitions from file. Syntax is similar to doxygen's -# config file, i.e. a series of assignments. You only have to provide -# replacements, missing definitions are set to their default value. - -RTF_STYLESHEET_FILE = - -# Set optional variables used in the generation of an rtf document. -# Syntax is similar to doxygen's config file. - -RTF_EXTENSIONS_FILE = - -#--------------------------------------------------------------------------- -# configuration options related to the man page output -#--------------------------------------------------------------------------- - -# If the GENERATE_MAN tag is set to YES (the default) Doxygen will -# generate man pages - -GENERATE_MAN = NO - -# The MAN_OUTPUT tag is used to specify where the man pages will be put. -# If a relative path is entered the value of OUTPUT_DIRECTORY will be -# put in front of it. If left blank `man' will be used as the default path. - -MAN_OUTPUT = man - -# The MAN_EXTENSION tag determines the extension that is added to -# the generated man pages (default is the subroutine's section .3) - -MAN_EXTENSION = .3 - -# If the MAN_LINKS tag is set to YES and Doxygen generates man output, -# then it will generate one additional man file for each entity -# documented in the real man page(s). These additional files -# only source the real man page, but without them the man command -# would be unable to find the correct page. The default is NO. - -MAN_LINKS = NO - -#--------------------------------------------------------------------------- -# configuration options related to the XML output -#--------------------------------------------------------------------------- - -# If the GENERATE_XML tag is set to YES Doxygen will -# generate an XML file that captures the structure of -# the code including all documentation. - -GENERATE_XML = NO - -# The XML_OUTPUT tag is used to specify where the XML pages will be put. -# If a relative path is entered the value of OUTPUT_DIRECTORY will be -# put in front of it. If left blank `xml' will be used as the default path. - -XML_OUTPUT = xml - -# The XML_SCHEMA tag can be used to specify an XML schema, -# which can be used by a validating XML parser to check the -# syntax of the XML files. - -XML_SCHEMA = - -# The XML_DTD tag can be used to specify an XML DTD, -# which can be used by a validating XML parser to check the -# syntax of the XML files. - -XML_DTD = - -# If the XML_PROGRAMLISTING tag is set to YES Doxygen will -# dump the program listings (including syntax highlighting -# and cross-referencing information) to the XML output. Note that -# enabling this will significantly increase the size of the XML output. - -XML_PROGRAMLISTING = YES - -#--------------------------------------------------------------------------- -# configuration options for the AutoGen Definitions output -#--------------------------------------------------------------------------- - -# If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will -# generate an AutoGen Definitions (see autogen.sf.net) file -# that captures the structure of the code including all -# documentation. Note that this feature is still experimental -# and incomplete at the moment. - -GENERATE_AUTOGEN_DEF = NO - -#--------------------------------------------------------------------------- -# configuration options related to the Perl module output -#--------------------------------------------------------------------------- - -# If the GENERATE_PERLMOD tag is set to YES Doxygen will -# generate a Perl module file that captures the structure of -# the code including all documentation. Note that this -# feature is still experimental and incomplete at the -# moment. - -GENERATE_PERLMOD = NO - -# If the PERLMOD_LATEX tag is set to YES Doxygen will generate -# the necessary Makefile rules, Perl scripts and LaTeX code to be able -# to generate PDF and DVI output from the Perl module output. - -PERLMOD_LATEX = NO - -# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be -# nicely formatted so it can be parsed by a human reader. This is useful -# if you want to understand what is going on. On the other hand, if this -# tag is set to NO the size of the Perl module output will be much smaller -# and Perl will parse it just the same. - -PERLMOD_PRETTY = YES - -# The names of the make variables in the generated doxyrules.make file -# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX. -# This is useful so different doxyrules.make files included by the same -# Makefile don't overwrite each other's variables. - -PERLMOD_MAKEVAR_PREFIX = - -#--------------------------------------------------------------------------- -# Configuration options related to the preprocessor -#--------------------------------------------------------------------------- - -# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will -# evaluate all C-preprocessor directives found in the sources and include -# files. - -ENABLE_PREPROCESSING = YES - -# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro -# names in the source code. If set to NO (the default) only conditional -# compilation will be performed. Macro expansion can be done in a controlled -# way by setting EXPAND_ONLY_PREDEF to YES. - -MACRO_EXPANSION = NO - -# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES -# then the macro expansion is limited to the macros specified with the -# PREDEFINED and EXPAND_AS_PREDEFINED tags. - -EXPAND_ONLY_PREDEF = NO - -# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files -# in the INCLUDE_PATH (see below) will be search if a #include is found. - -SEARCH_INCLUDES = YES - -# The INCLUDE_PATH tag can be used to specify one or more directories that -# contain include files that are not input files but should be processed by -# the preprocessor. - -INCLUDE_PATH = - -# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard -# patterns (like *.h and *.hpp) to filter out the header-files in the -# directories. If left blank, the patterns specified with FILE_PATTERNS will -# be used. - -INCLUDE_FILE_PATTERNS = - -# The PREDEFINED tag can be used to specify one or more macro names that -# are defined before the preprocessor is started (similar to the -D option of -# gcc). The argument of the tag is a list of macros of the form: name -# or name=definition (no spaces). If the definition and the = are -# omitted =1 is assumed. - -PREDEFINED = - -# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then -# this tag can be used to specify a list of macro names that should be expanded. -# The macro definition that is found in the sources will be used. -# Use the PREDEFINED tag if you want to use a different macro definition. - -EXPAND_AS_DEFINED = - -# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then -# doxygen's preprocessor will remove all function-like macros that are alone -# on a line, have an all uppercase name, and do not end with a semicolon. Such -# function macros are typically used for boiler-plate code, and will confuse the -# parser if not removed. - -SKIP_FUNCTION_MACROS = YES - -#--------------------------------------------------------------------------- -# Configuration::additions related to external references -#--------------------------------------------------------------------------- - -# The TAGFILES option can be used to specify one or more tagfiles. -# Optionally an initial location of the external documentation -# can be added for each tagfile. The format of a tag file without -# this location is as follows: -# TAGFILES = file1 file2 ... -# Adding location for the tag files is done as follows: -# TAGFILES = file1=loc1 "file2 = loc2" ... -# where "loc1" and "loc2" can be relative or absolute paths or -# URLs. If a location is present for each tag, the installdox tool -# does not have to be run to correct the links. -# Note that each tag file must have a unique name -# (where the name does NOT include the path) -# If a tag file is not located in the directory in which doxygen -# is run, you must also specify the path to the tagfile here. - -TAGFILES = - -# When a file name is specified after GENERATE_TAGFILE, doxygen will create -# a tag file that is based on the input files it reads. - -GENERATE_TAGFILE = - -# If the ALLEXTERNALS tag is set to YES all external classes will be listed -# in the class index. If set to NO only the inherited external classes -# will be listed. - -ALLEXTERNALS = NO - -# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed -# in the modules index. If set to NO, only the current project's groups will -# be listed. - -EXTERNAL_GROUPS = YES - -# The PERL_PATH should be the absolute path and name of the perl script -# interpreter (i.e. the result of `which perl'). - -PERL_PATH = /usr/bin/perl - -#--------------------------------------------------------------------------- -# Configuration options related to the dot tool -#--------------------------------------------------------------------------- - -# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will -# generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base or -# super classes. Setting the tag to NO turns the diagrams off. Note that this -# option is superseded by the HAVE_DOT option below. This is only a fallback. It is -# recommended to install and use dot, since it yields more powerful graphs. - -CLASS_DIAGRAMS = YES - -# If set to YES, the inheritance and collaboration graphs will hide -# inheritance and usage relations if the target is undocumented -# or is not a class. - -HIDE_UNDOC_RELATIONS = YES - -# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is -# available from the path. This tool is part of Graphviz, a graph visualization -# toolkit from AT&T and Lucent Bell Labs. The other options in this section -# have no effect if this option is set to NO (the default) - -HAVE_DOT = NO - -# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen -# will generate a graph for each documented class showing the direct and -# indirect inheritance relations. Setting this tag to YES will force the -# the CLASS_DIAGRAMS tag to NO. - -CLASS_GRAPH = YES - -# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen -# will generate a graph for each documented class showing the direct and -# indirect implementation dependencies (inheritance, containment, and -# class references variables) of the class with other documented classes. - -COLLABORATION_GRAPH = YES - -# If the UML_LOOK tag is set to YES doxygen will generate inheritance and -# collaboration diagrams in a style similar to the OMG's Unified Modeling -# Language. - -UML_LOOK = NO - -# If set to YES, the inheritance and collaboration graphs will show the -# relations between templates and their instances. - -TEMPLATE_RELATIONS = NO - -# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT -# tags are set to YES then doxygen will generate a graph for each documented -# file showing the direct and indirect include dependencies of the file with -# other documented files. - -INCLUDE_GRAPH = YES - -# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and -# HAVE_DOT tags are set to YES then doxygen will generate a graph for each -# documented header file showing the documented files that directly or -# indirectly include this file. - -INCLUDED_BY_GRAPH = YES - -# If the CALL_GRAPH and HAVE_DOT tags are set to YES then doxygen will -# generate a call dependency graph for every global function or class method. -# Note that enabling this option will significantly increase the time of a run. -# So in most cases it will be better to enable call graphs for selected -# functions only using the \callgraph command. - -CALL_GRAPH = NO - -# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen -# will graphical hierarchy of all classes instead of a textual one. - -GRAPHICAL_HIERARCHY = YES - -# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images -# generated by dot. Possible values are png, jpg, or gif -# If left blank png will be used. - -DOT_IMAGE_FORMAT = png - -# The tag DOT_PATH can be used to specify the path where the dot tool can be -# found. If left blank, it is assumed the dot tool can be found on the path. - -DOT_PATH = - -# The DOTFILE_DIRS tag can be used to specify one or more directories that -# contain dot files that are included in the documentation (see the -# \dotfile command). - -DOTFILE_DIRS = - -# The MAX_DOT_GRAPH_WIDTH tag can be used to set the maximum allowed width -# (in pixels) of the graphs generated by dot. If a graph becomes larger than -# this value, doxygen will try to truncate the graph, so that it fits within -# the specified constraint. Beware that most browsers cannot cope with very -# large images. - -MAX_DOT_GRAPH_WIDTH = 1024 - -# The MAX_DOT_GRAPH_HEIGHT tag can be used to set the maximum allows height -# (in pixels) of the graphs generated by dot. If a graph becomes larger than -# this value, doxygen will try to truncate the graph, so that it fits within -# the specified constraint. Beware that most browsers cannot cope with very -# large images. - -MAX_DOT_GRAPH_HEIGHT = 1024 - -# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the -# graphs generated by dot. A depth value of 3 means that only nodes reachable -# from the root by following a path via at most 3 edges will be shown. Nodes that -# lay further from the root node will be omitted. Note that setting this option to -# 1 or 2 may greatly reduce the computation time needed for large code bases. Also -# note that a graph may be further truncated if the graph's image dimensions are -# not sufficient to fit the graph (see MAX_DOT_GRAPH_WIDTH and MAX_DOT_GRAPH_HEIGHT). -# If 0 is used for the depth value (the default), the graph is not depth-constrained. - -MAX_DOT_GRAPH_DEPTH = 0 - -# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will -# generate a legend page explaining the meaning of the various boxes and -# arrows in the dot generated graphs. - -GENERATE_LEGEND = YES - -# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will -# remove the intermediate dot files that are used to generate -# the various graphs. - -DOT_CLEANUP = YES - -#--------------------------------------------------------------------------- -# Configuration::additions related to the search engine -#--------------------------------------------------------------------------- - -# The SEARCHENGINE tag specifies whether or not a search engine should be -# used. If set to NO the values of all tags below this one will be ignored. - -SEARCHENGINE = NO diff --git a/src/3rdparty/libconninet/src/Makefile.am b/src/3rdparty/libconninet/src/Makefile.am deleted file mode 100644 index be7a1e5..0000000 --- a/src/3rdparty/libconninet/src/Makefile.am +++ /dev/null @@ -1,36 +0,0 @@ -DEFS = -DDBUS_API_SUBJECT_TO_CHANGE -DGCONF_DISABLE_DEPRECATED -INCLUDES = @GLIB_CFLAGS@ @DBUS_CFLAGS@ @GCONF_CFLAGS@ @OSSO_IC_CFLAGS@ @ICD_DEV_CFLAGS@ @QTCORE_CFLAGS@ @QTNETWORK_CFLAGS@ @QTDBUS_CFLAGS@ @QGCONF_CFLAGS@ @CONNSETTINGS_CFLAGS@ -LIBS = @GLIB_LIBS@ @DBUS_LIBS@ @GCONF_LIBS@ @OSSO_IC_LIBS@ @ICD_DEV_LIBS@ @QTCORE_LIBS@ @QTDBUS_LIBS@ @QTNETWORK_CFLAGS@ @QGCONF_LIBS@ @CONNSETTINGS_LIBS@ - -AM_CFLAGS = $(CONCFLAGS) - -lib_LTLIBRARIES = libconninet.la -libconninet_la_SOURCES = \ - maemo_icd.cpp \ - dbusdispatcher.cpp \ - iapconf.cpp \ - iapmonitor.cpp \ - proxyconf.cpp - -#libconninet_la_LDFLAGS = -version-info 0:0:0 - -conninetincludedir = $(includedir)/conninet -conninetinclude_HEADERS = \ - maemo_icd.h \ - dbusdispatcher.h \ - iapconf.h \ - iapmonitor.h \ - proxyconf.h - -nodist_libconninet_la_SOURCES = \ - moc_maemo_icd.cpp \ - moc_dbusdispatcher.cpp - -MAINTAINERCLEANFILES = Makefile.in - -# This rule lets GNU make create any moc_*.cpp from the equivalent *.h -moc_%.cpp: %.h - moc $< -o $@ - -# This line ensures that generated moc files are deleted when we make clean. -CLEANFILES = *_moc.cpp *.loT diff --git a/src/3rdparty/libconninet/src/dbusdispatcher.cpp b/src/3rdparty/libconninet/src/dbusdispatcher.cpp deleted file mode 100644 index f5b830a..0000000 --- a/src/3rdparty/libconninet/src/dbusdispatcher.cpp +++ /dev/null @@ -1,611 +0,0 @@ -/* * This file is part of conninet * - * - * Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). - * All rights reserved. - * - * Contact: Aapo Makela - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public License - * version 2.1 as published by the Free Software Foundation. - * - * This library is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA - * 02110-1301 USA - */ - -#include -#include -#include -#include -#include -#include -#include "dbusdispatcher.h" - -namespace Maemo { - -/*! - \class Maemo::DBusDispatcher - - \brief DBusDispatcher is a class, which is able to send DBUS method call - messages and receive unicast signals from DBUS object. -*/ - -class DBusDispatcherPrivate -{ -public: - DBusDispatcherPrivate(const QString& service, - const QString& path, - const QString& interface, - const QString& signalPath) - : service(service), path(path), interface(interface), - signalPath(signalPath), connection(0) - { - memset(&signal_vtable, 0, sizeof(signal_vtable)); - } - - ~DBusDispatcherPrivate() - { - foreach(DBusPendingCall *call, pending_calls) { - dbus_pending_call_cancel(call); - dbus_pending_call_unref(call); - } - } - - QString service; - QString path; - QString interface; - QString signalPath; - struct DBusConnection *connection; - QList pending_calls; - struct DBusObjectPathVTable signal_vtable; -}; - -static bool constantVariantList(const QVariantList& variantList) { - // Special case, empty list == empty struct - if (variantList.isEmpty()) { - return false; - } else { - QVariant::Type type = variantList[0].type(); - // Iterate items in the list and check if they are same type - foreach(QVariant variant, variantList) { - if (variant.type() != type) { - return false; - } - } - } - return true; -} - -static QString variantToSignature(const QVariant& argument, - bool constantList = true) { - switch (argument.type()) { - case QVariant::Bool: - return "b"; - case QVariant::ByteArray: - return "ay"; - case QVariant::Char: - return "y"; - case QVariant::Int: - return "i"; - case QVariant::UInt: - return "u"; - case QVariant::StringList: - return "as"; - case QVariant::String: - return "s"; - case QVariant::LongLong: - return "x"; - case QVariant::ULongLong: - return "t"; - case QVariant::List: - { - QString signature; - QVariantList variantList = argument.toList(); - if (!constantList) { - signature += DBUS_STRUCT_BEGIN_CHAR_AS_STRING; - foreach(QVariant listItem, variantList) { - signature += variantToSignature(listItem); - } - signature += DBUS_STRUCT_END_CHAR_AS_STRING; - } else { - if (variantList.isEmpty()) - return ""; - signature = "a" + variantToSignature(variantList[0]); - } - - return signature; - } - default: - qDebug() << "Unsupported variant type: " << argument.type(); - break; - } - - return ""; -} - -static bool appendVariantToDBusMessage(const QVariant& argument, - DBusMessageIter *dbus_iter) { - int idx = 0; - DBusMessageIter array_iter; - QStringList str_list; - dbus_bool_t bool_data; - dbus_int32_t int32_data; - dbus_uint32_t uint32_data; - dbus_int64_t int64_data; - dbus_uint64_t uint64_data; - char *str_data; - char char_data; - - switch (argument.type()) { - - case QVariant::Bool: - bool_data = argument.toBool(); - dbus_message_iter_append_basic(dbus_iter, DBUS_TYPE_BOOLEAN, - &bool_data); - break; - - case QVariant::ByteArray: - str_data = argument.toByteArray().data(); - dbus_message_iter_open_container(dbus_iter, DBUS_TYPE_ARRAY, - DBUS_TYPE_BYTE_AS_STRING, &array_iter); - dbus_message_iter_append_fixed_array(&array_iter, - DBUS_TYPE_BYTE, - &str_data, - argument.toByteArray().size()); - dbus_message_iter_close_container(dbus_iter, &array_iter); - break; - - case QVariant::Char: - char_data = argument.toChar().toAscii(); - dbus_message_iter_append_basic(dbus_iter, DBUS_TYPE_BYTE, - &char_data); - break; - - case QVariant::Int: - int32_data = argument.toInt(); - dbus_message_iter_append_basic(dbus_iter, DBUS_TYPE_INT32, - &int32_data); - break; - - case QVariant::String: - str_data = argument.toString().toLatin1().data(); - dbus_message_iter_append_basic(dbus_iter, DBUS_TYPE_STRING, - &str_data); - break; - - case QVariant::StringList: - str_list = argument.toStringList(); - dbus_message_iter_open_container(dbus_iter, DBUS_TYPE_ARRAY, - "s", &array_iter); - for (idx = 0; idx < str_list.size(); idx++) { - str_data = str_list.at(idx).toLatin1().data(); - dbus_message_iter_append_basic(&array_iter, - DBUS_TYPE_STRING, - &str_data); - } - dbus_message_iter_close_container(dbus_iter, &array_iter); - break; - - case QVariant::UInt: - uint32_data = argument.toUInt(); - dbus_message_iter_append_basic(dbus_iter, DBUS_TYPE_UINT32, - &uint32_data); - break; - - case QVariant::ULongLong: - uint64_data = argument.toULongLong(); - dbus_message_iter_append_basic(dbus_iter, DBUS_TYPE_UINT64, - &uint64_data); - break; - - case QVariant::LongLong: - int64_data = argument.toLongLong(); - dbus_message_iter_append_basic(dbus_iter, DBUS_TYPE_INT64, - &int64_data); - break; - - case QVariant::List: - { - QVariantList variantList = argument.toList(); - bool constantList = constantVariantList(variantList); - DBusMessageIter array_iter; - - // List is mapped either as an DBUS array (all items same type) - // DBUS struct (variable types) depending on constantList - if (constantList) { - // Resolve the signature for the first item - QString signature = ""; - if (!variantList.isEmpty()) { - signature = variantToSignature( - variantList[0], - constantVariantList(variantList[0].toList())); - } - - // Mapped as DBUS array - dbus_message_iter_open_container(dbus_iter, DBUS_TYPE_ARRAY, - signature.toAscii(), - &array_iter); - - foreach(QVariant listItem, variantList) { - appendVariantToDBusMessage(listItem, &array_iter); - } - - dbus_message_iter_close_container(dbus_iter, &array_iter); - } else { - // Mapped as DBUS struct - dbus_message_iter_open_container(dbus_iter, DBUS_TYPE_STRUCT, - NULL, - &array_iter); - - foreach(QVariant listItem, variantList) { - appendVariantToDBusMessage(listItem, &array_iter); - } - - dbus_message_iter_close_container(dbus_iter, &array_iter); - } - - break; - } - default: - qDebug() << "Unsupported variant type: " << argument.type(); - break; - } - - return true; -} - -static QVariant getVariantFromDBusMessage(DBusMessageIter *iter) { - dbus_bool_t bool_data; - dbus_int32_t int32_data; - dbus_uint32_t uint32_data; - dbus_int64_t int64_data; - dbus_uint64_t uint64_data; - char *str_data; - char char_data; - int argtype = dbus_message_iter_get_arg_type(iter); - - switch (argtype) { - - case DBUS_TYPE_BOOLEAN: - { - dbus_message_iter_get_basic(iter, &bool_data); - QVariant variant((bool)bool_data); - return variant; - } - - case DBUS_TYPE_ARRAY: - { - // Handle all arrays here - int elem_type = dbus_message_iter_get_element_type(iter); - DBusMessageIter array_iter; - - dbus_message_iter_recurse(iter, &array_iter); - - if (elem_type == DBUS_TYPE_BYTE) { - QByteArray byte_array; - do { - dbus_message_iter_get_basic(&array_iter, &char_data); - byte_array.append(char_data); - } while (dbus_message_iter_next(&array_iter)); - QVariant variant(byte_array); - return variant; - } else if (elem_type == DBUS_TYPE_STRING) { - QStringList str_list; - do { - dbus_message_iter_get_basic(&array_iter, &str_data); - str_list.append(str_data); - } while (dbus_message_iter_next(&array_iter)); - QVariant variant(str_list); - return variant; - } else { - QVariantList variantList; - do { - variantList << getVariantFromDBusMessage(&array_iter); - } while (dbus_message_iter_next(&array_iter)); - QVariant variant(variantList); - return variant; - } - break; - } - - case DBUS_TYPE_BYTE: - { - dbus_message_iter_get_basic(iter, &char_data); - QChar ch(char_data); - QVariant variant(ch); - return variant; - } - - case DBUS_TYPE_INT32: - { - dbus_message_iter_get_basic(iter, &int32_data); - QVariant variant((int)int32_data); - return variant; - } - - case DBUS_TYPE_UINT32: - { - dbus_message_iter_get_basic(iter, &uint32_data); - QVariant variant((uint)uint32_data); - return variant; - } - - case DBUS_TYPE_STRING: - { - dbus_message_iter_get_basic(iter, &str_data); - QString str(str_data); - QVariant variant(str); - return variant; - } - - case DBUS_TYPE_INT64: - { - dbus_message_iter_get_basic(iter, &int64_data); - QVariant variant((qlonglong)int64_data); - return variant; - } - - case DBUS_TYPE_UINT64: - { - dbus_message_iter_get_basic(iter, &uint64_data); - QVariant variant((qulonglong)uint64_data); - return variant; - } - - case DBUS_TYPE_STRUCT: - { - // Handle all structs here - DBusMessageIter struct_iter; - dbus_message_iter_recurse(iter, &struct_iter); - - QVariantList variantList; - do { - variantList << getVariantFromDBusMessage(&struct_iter); - } while (dbus_message_iter_next(&struct_iter)); - QVariant variant(variantList); - return variant; - } - - default: - qDebug() << "Unsupported DBUS type: " << argtype; - } - - return QVariant(); -} - -static DBusHandlerResult signalHandler (DBusConnection *connection, - DBusMessage *message, - void *object_ref) { - (void)connection; - QString interface; - QString signal; - DBusDispatcher *dispatcher = (DBusDispatcher *)object_ref; - - if (dbus_message_get_type(message) == DBUS_MESSAGE_TYPE_SIGNAL) { - interface = dbus_message_get_interface(message); - signal = dbus_message_get_member(message); - - QList arglist; - DBusMessageIter dbus_iter; - - if (dbus_message_iter_init(message, &dbus_iter)) { - // Read return arguments - while (dbus_message_iter_get_arg_type (&dbus_iter) != DBUS_TYPE_INVALID) { - arglist << getVariantFromDBusMessage(&dbus_iter); - dbus_message_iter_next(&dbus_iter); - } - } - - dispatcher->emitSignalReceived(interface, signal, arglist); - return DBUS_HANDLER_RESULT_HANDLED; - } - (void)message; - return DBUS_HANDLER_RESULT_NOT_YET_HANDLED; -} - -DBusDispatcher::DBusDispatcher(const QString& service, - const QString& path, - const QString& interface, - QObject *parent) - : QObject(parent), - d_ptr(new DBusDispatcherPrivate(service, path, interface, path)) { - setupDBus(); -} - -DBusDispatcher::DBusDispatcher(const QString& service, - const QString& path, - const QString& interface, - const QString& signalPath, - QObject *parent) - : QObject(parent), - d_ptr(new DBusDispatcherPrivate(service, path, interface, signalPath)) { - setupDBus(); -} - -DBusDispatcher::~DBusDispatcher() -{ - if (d_ptr->connection) { - dbus_connection_close(d_ptr->connection); - dbus_connection_unref(d_ptr->connection); - } - delete d_ptr; -} - -void DBusDispatcher::setupDBus() -{ - d_ptr->connection = dbus_bus_get_private(DBUS_BUS_SYSTEM, NULL); - - if (d_ptr->connection == NULL) - qDebug() << "Unable to get DBUS connection!"; - else { - d_ptr->signal_vtable.message_function = signalHandler; - - dbus_connection_set_exit_on_disconnect(d_ptr->connection, FALSE); - dbus_connection_setup_with_g_main(d_ptr->connection, NULL); - dbus_connection_register_object_path(d_ptr->connection, - d_ptr->signalPath.toLatin1(), - &d_ptr->signal_vtable, - this); - } -} - -static DBusMessage *prepareDBusCall(const QString& service, - const QString& path, - const QString& interface, - const QString& method, - const QVariant& arg1 = QVariant(), - const QVariant& arg2 = QVariant(), - const QVariant& arg3 = QVariant(), - const QVariant& arg4 = QVariant(), - const QVariant& arg5 = QVariant(), - const QVariant& arg6 = QVariant(), - const QVariant& arg7 = QVariant(), - const QVariant& arg8 = QVariant()) -{ - DBusMessage *message = dbus_message_new_method_call(service.toLatin1(), - path.toLatin1(), - interface.toLatin1(), - method.toLatin1()); - DBusMessageIter dbus_iter; - - // Append variants to DBUS message - QList arglist; - if (arg1.isValid()) arglist << arg1; - if (arg2.isValid()) arglist << arg2; - if (arg3.isValid()) arglist << arg3; - if (arg4.isValid()) arglist << arg4; - if (arg5.isValid()) arglist << arg5; - if (arg6.isValid()) arglist << arg6; - if (arg7.isValid()) arglist << arg7; - if (arg8.isValid()) arglist << arg8; - - dbus_message_iter_init_append (message, &dbus_iter); - - while (!arglist.isEmpty()) { - QVariant argument = arglist.takeFirst(); - appendVariantToDBusMessage(argument, &dbus_iter); - } - - return message; -} - -QList DBusDispatcher::call(const QString& method, - const QVariant& arg1, - const QVariant& arg2, - const QVariant& arg3, - const QVariant& arg4, - const QVariant& arg5, - const QVariant& arg6, - const QVariant& arg7, - const QVariant& arg8) { - DBusMessageIter dbus_iter; - DBusMessage *message = prepareDBusCall(d_ptr->service, d_ptr->path, - d_ptr->interface, method, - arg1, arg2, arg3, arg4, arg5, - arg6, arg7, arg8); - DBusMessage *reply = dbus_connection_send_with_reply_and_block( - d_ptr->connection, - message, -1, NULL); - dbus_message_unref(message); - - QList replylist; - if (reply != NULL && dbus_message_iter_init(reply, &dbus_iter)) { - // Read return arguments - while (dbus_message_iter_get_arg_type (&dbus_iter) != DBUS_TYPE_INVALID) { - replylist << getVariantFromDBusMessage(&dbus_iter); - dbus_message_iter_next(&dbus_iter); - } - } - if (reply != NULL) dbus_message_unref(reply); - return replylist; -} - -class PendingCallInfo { -public: - QString method; - DBusDispatcher *dispatcher; - DBusDispatcherPrivate *priv; -}; - -static void freePendingCallInfo(void *memory) { - PendingCallInfo *info = (PendingCallInfo *)memory; - delete info; -} - -static void pendingCallFunction (DBusPendingCall *pending, - void *memory) { - PendingCallInfo *info = (PendingCallInfo *)memory; - QString errorStr; - QList replyList; - DBusMessage *reply = dbus_pending_call_steal_reply (pending); - - Q_ASSERT(reply != NULL); - - if (dbus_message_get_type(reply) == DBUS_MESSAGE_TYPE_ERROR) { - errorStr = dbus_message_get_error_name (reply); - } else { - DBusMessageIter dbus_iter; - dbus_message_iter_init(reply, &dbus_iter); - // Read return arguments - while (dbus_message_iter_get_arg_type (&dbus_iter) != DBUS_TYPE_INVALID) { - replyList << getVariantFromDBusMessage(&dbus_iter); - dbus_message_iter_next(&dbus_iter); - } - } - - info->priv->pending_calls.removeOne(pending); - info->dispatcher->emitCallReply(info->method, replyList, errorStr); - dbus_message_unref(reply); - dbus_pending_call_unref(pending); -} - -bool DBusDispatcher::callAsynchronous(const QString& method, - const QVariant& arg1, - const QVariant& arg2, - const QVariant& arg3, - const QVariant& arg4, - const QVariant& arg5, - const QVariant& arg6, - const QVariant& arg7, - const QVariant& arg8) { - DBusMessage *message = prepareDBusCall(d_ptr->service, d_ptr->path, - d_ptr->interface, method, - arg1, arg2, arg3, arg4, arg5, - arg6, arg7, arg8); - DBusPendingCall *call = NULL; - dbus_bool_t ret = dbus_connection_send_with_reply(d_ptr->connection, - message, &call, -1); - PendingCallInfo *info = new PendingCallInfo; - info->method = method; - info->dispatcher = this; - info->priv = d_ptr; - - dbus_pending_call_set_notify(call, pendingCallFunction, info, freePendingCallInfo); - d_ptr->pending_calls.append(call); - return (bool)ret; -} - -void DBusDispatcher::emitSignalReceived(const QString& interface, - const QString& signal, - const QList& args) { - emit signalReceived(interface, signal, args); } - -void DBusDispatcher::emitCallReply(const QString& method, - const QList& args, - const QString& error) { - emit callReply(method, args, error); } - -void DBusDispatcher::synchronousDispatch(int timeout_ms) -{ - dbus_connection_read_write_dispatch(d_ptr->connection, timeout_ms); -} - -} // Maemo namespace - diff --git a/src/3rdparty/libconninet/src/dbusdispatcher.h b/src/3rdparty/libconninet/src/dbusdispatcher.h deleted file mode 100644 index 2f71b6f..0000000 --- a/src/3rdparty/libconninet/src/dbusdispatcher.h +++ /dev/null @@ -1,91 +0,0 @@ -/* * This file is part of conn-dui-settings-inet * - * - * Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). - * All rights reserved. - * - * Contact: Aapo Makela - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public License - * version 2.1 as published by the Free Software Foundation. - * - * This library is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA - * 02110-1301 USA - */ - -#ifndef DBUSDISPATCHER_H -#define DBUSDISPATCHER_H - -#include -#include - -namespace Maemo { - -class DBusDispatcherPrivate; -class DBusDispatcher : public QObject -{ - Q_OBJECT - -public: - DBusDispatcher(const QString& service, - const QString& path, - const QString& interface, - QObject *parent = 0); - DBusDispatcher(const QString& service, - const QString& path, - const QString& interface, - const QString& signalPath, - QObject *parent = 0); - ~DBusDispatcher(); - - QList call(const QString& method, - const QVariant& arg1 = QVariant(), - const QVariant& arg2 = QVariant(), - const QVariant& arg3 = QVariant(), - const QVariant& arg4 = QVariant(), - const QVariant& arg5 = QVariant(), - const QVariant& arg6 = QVariant(), - const QVariant& arg7 = QVariant(), - const QVariant& arg8 = QVariant()); - bool callAsynchronous(const QString& method, - const QVariant& arg1 = QVariant(), - const QVariant& arg2 = QVariant(), - const QVariant& arg3 = QVariant(), - const QVariant& arg4 = QVariant(), - const QVariant& arg5 = QVariant(), - const QVariant& arg6 = QVariant(), - const QVariant& arg7 = QVariant(), - const QVariant& arg8 = QVariant()); - void emitSignalReceived(const QString& interface, - const QString& signal, - const QList& args); - void emitCallReply(const QString& method, - const QList& args, - const QString& error = ""); - void synchronousDispatch(int timeout_ms); - -Q_SIGNALS: - void signalReceived(const QString& interface, - const QString& signal, - const QList& args); - void callReply(const QString& method, - const QList& args, - const QString& error); - -protected: - void setupDBus(); - -private: - DBusDispatcherPrivate *d_ptr; -}; - -} // Maemo namespace - -#endif diff --git a/src/3rdparty/libconninet/src/iapconf.cpp b/src/3rdparty/libconninet/src/iapconf.cpp deleted file mode 100644 index 2e77fa5..0000000 --- a/src/3rdparty/libconninet/src/iapconf.cpp +++ /dev/null @@ -1,299 +0,0 @@ -/* - libconninet - Internet Connectivity support library - - Copyright (C) 2009-2010 Nokia Corporation. All rights reserved. - - Contact: Aapo Makela - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public License - version 2.1 as published by the Free Software Foundation. - - This library is distributed in the hope that it will be useful, but - WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA - 02110-1301 USA -*/ - -#include -#include -#include - -#include "iapconf.h" - -#define QSTRING_TO_CONST_CSTR(str) \ - str.toUtf8().constData() - -namespace Maemo { - -class IAPConfPrivate { -public: - ConnSettings *settings; - - ConnSettingsValue *variantToValue(const QVariant &variant); - QVariant valueToVariant(ConnSettingsValue *value); -}; - -ConnSettingsValue *IAPConfPrivate::variantToValue(const QVariant &variant) -{ - // Convert variant to ConnSettingsValue - ConnSettingsValue *value = conn_settings_value_new(); - if (value == 0) { - qWarning("IAPConf: Unable to create new ConnSettingsValue"); - return 0; - } - - switch(variant.type()) { - - case QVariant::Invalid: - value->type = CONN_SETTINGS_VALUE_INVALID; - break; - - case QVariant::String: { - char *valueStr = strdup(QSTRING_TO_CONST_CSTR(variant.toString())); - value->type = CONN_SETTINGS_VALUE_STRING; - value->value.string_val = valueStr; - break; - } - - case QVariant::Int: - value->type = CONN_SETTINGS_VALUE_INT; - value->value.int_val = variant.toInt(); - break; - - case QMetaType::Float: - case QVariant::Double: - value->type = CONN_SETTINGS_VALUE_DOUBLE; - value->value.double_val = variant.toDouble(); - break; - - case QVariant::Bool: - value->type = CONN_SETTINGS_VALUE_BOOL; - value->value.bool_val = variant.toBool() ? 1 : 0; - break; - - case QVariant::ByteArray: { - QByteArray array = variant.toByteArray(); - value->type = CONN_SETTINGS_VALUE_BYTE_ARRAY; - value->value.byte_array.len = array.size(); - value->value.byte_array.val = (unsigned char *)malloc(array.size()); - memcpy(value->value.byte_array.val, array.constData(), array.size()); - break; - } - - case QVariant::List: { - QVariantList list = variant.toList(); - ConnSettingsValue **list_val = (ConnSettingsValue **)malloc( - (list.size() + 1) * sizeof(ConnSettingsValue *)); - - for (int idx = 0; idx < list.size(); idx++) { - list_val[idx] = variantToValue(list.at(idx)); - } - list_val[list.size()] = 0; - - value->type = CONN_SETTINGS_VALUE_LIST; - value->value.list_val = list_val; - break; - } - - default: - qWarning("IAPConf: Can not handle QVariant of type %d", - variant.type()); - conn_settings_value_destroy(value); - return 0; - } - - return value; -} - -QVariant IAPConfPrivate::valueToVariant(ConnSettingsValue *value) -{ - if (value == 0 || value->type == CONN_SETTINGS_VALUE_INVALID) { - return QVariant(); - } - - switch(value->type) { - - case CONN_SETTINGS_VALUE_BOOL: - return QVariant(value->value.bool_val ? true : false); - - case CONN_SETTINGS_VALUE_STRING: - return QVariant(QString(value->value.string_val)); - - case CONN_SETTINGS_VALUE_DOUBLE: - return QVariant(value->value.double_val); - - case CONN_SETTINGS_VALUE_INT: - return QVariant(value->value.int_val); - - case CONN_SETTINGS_VALUE_LIST: { - // At least with GConf backend connsettings returns byte array as list - // of ints, first check for that case - if (value->value.list_val && value->value.list_val[0]) { - bool canBeConvertedToByteArray = true; - for (int idx = 0; value->value.list_val[idx]; idx++) { - ConnSettingsValue *val = value->value.list_val[idx]; - if (val->type != CONN_SETTINGS_VALUE_INT - || val->value.int_val > 255 - || val->value.int_val < 0) { - canBeConvertedToByteArray = false; - break; - } - } - - if (canBeConvertedToByteArray) { - QByteArray array; - for (int idx = 0; value->value.list_val[idx]; idx++) { - array.append(value->value.list_val[idx]->value.int_val); - } - return array; - } - - // Create normal list - QVariantList list; - for (int idx = 0; value->value.list_val[idx]; idx++) { - list.append(valueToVariant(value->value.list_val[idx])); - } - return list; - } - } - - case CONN_SETTINGS_VALUE_BYTE_ARRAY: - return QByteArray::fromRawData((char *)value->value.byte_array.val, - value->value.byte_array.len); - - default: - return QVariant(); - } -} - -// Public class implementation - -IAPConf::IAPConf(const QString &iap_id) - : d_ptr(new IAPConfPrivate) -{ - d_ptr->settings = conn_settings_open(CONN_SETTINGS_CONNECTION, - QSTRING_TO_CONST_CSTR(iap_id)); - if (d_ptr->settings == 0) { - qWarning("IAPConf: Unable to open ConnSettings for %s", - QSTRING_TO_CONST_CSTR(iap_id)); - } -} - -IAPConf::~IAPConf() -{ - conn_settings_close(d_ptr->settings); - delete d_ptr; -} - -void IAPConf::setValue(const QString& key, const QVariant& value) -{ - // Invalid value means unsetting the given key - if (!value.isValid()) { - int err = conn_settings_unset(d_ptr->settings, - QSTRING_TO_CONST_CSTR(key)); - if (err != CONN_SETTINGS_E_NO_ERROR) { - qWarning("IAPConf: unable to unset key %s: %s", - QSTRING_TO_CONST_CSTR(key), - conn_settings_error_text((ConnSettingsError)err)); - } - return; - } - - // Convert value to ConnSettingsValue - ConnSettingsValue *val = d_ptr->variantToValue(value); - if (val == 0) return; - - // Set value and handle errors - int error = conn_settings_set(d_ptr->settings, - QSTRING_TO_CONST_CSTR(key), - val); - if (error != CONN_SETTINGS_E_NO_ERROR) { - qWarning("IAPConf: error in setting key %s: %s", - QSTRING_TO_CONST_CSTR(key), - conn_settings_error_text((ConnSettingsError)error)); - } - - // Destroy value - conn_settings_value_destroy(val); - return; -} - -void IAPConf::set(const QString& key1, const QVariant& value1, - const QString& key2, const QVariant& value2, - const QString& key3, const QVariant& value3, - const QString& key4, const QVariant& value4, - const QString& key5, const QVariant& value5, - const QString& key6, const QVariant& value6, - const QString& key7, const QVariant& value7, - const QString& key8, const QVariant& value8, - const QString& key9, const QVariant& value9, - const QString& key10, const QVariant& value10) -{ - if (!key1.isEmpty()) setValue(key1, value1); - if (!key2.isEmpty()) setValue(key2, value2); - if (!key3.isEmpty()) setValue(key3, value3); - if (!key4.isEmpty()) setValue(key4, value4); - if (!key5.isEmpty()) setValue(key5, value5); - if (!key6.isEmpty()) setValue(key6, value6); - if (!key7.isEmpty()) setValue(key7, value7); - if (!key8.isEmpty()) setValue(key8, value8); - if (!key9.isEmpty()) setValue(key9, value9); - if (!key10.isEmpty()) setValue(key10, value10); -} - -QVariant IAPConf::value(const QString& key) const -{ - ConnSettingsValue *val = conn_settings_get(d_ptr->settings, - QSTRING_TO_CONST_CSTR(key)); - - QVariant variant = d_ptr->valueToVariant(val); - conn_settings_value_destroy(val); - return variant; -} - -void IAPConf::clear(const char *default_path) -{ - Q_UNUSED(default_path); // default path is unused - - int error = conn_settings_remove(d_ptr->settings); - if (error != CONN_SETTINGS_E_NO_ERROR) { - qWarning("IAPConf: Error when removing IAP: %s", - conn_settings_error_text((ConnSettingsError)error)); - } -} - -void IAPConf::clearAll() -{ - ConnSettings *settings = conn_settings_open(CONN_SETTINGS_CONNECTION, - NULL); - conn_settings_remove(settings); - conn_settings_close(settings); -} - - -void IAPConf::getAll(QList &all_iaps, bool return_path) -{ - Q_UNUSED(return_path); // We don't use return path currently - - // Go through all available connections and add them to the list - char **ids = conn_settings_list_ids(CONN_SETTINGS_CONNECTION); - if (ids == 0) { - // No ids found - nothing to do - return; - } - - for (int idx = 0; ids[idx]; idx++) { - all_iaps.append(QString(ids[idx])); - free(ids[idx]); - } - free(ids); -} - - -} // namespace Maemo diff --git a/src/3rdparty/libconninet/src/iapconf.h b/src/3rdparty/libconninet/src/iapconf.h deleted file mode 100644 index 57c0856..0000000 --- a/src/3rdparty/libconninet/src/iapconf.h +++ /dev/null @@ -1,84 +0,0 @@ -/* - libconninet - Internet Connectivity support library - - Copyright (C) 2009 Nokia Corporation. All rights reserved. - - Contact: Aapo Makela - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public License - version 2.1 as published by the Free Software Foundation. - - This library is distributed in the hope that it will be useful, but - WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA - 02110-1301 USA -*/ - -#ifndef IAPCONF_H -#define IAPCONF_H - -#include -#include - -namespace Maemo { - -class IAPConfPrivate; -class IAPConf { -public: - IAPConf(const QString &iap_id); - virtual ~IAPConf(); - - /** - Convenience method for setting multiple IAP values with one call. - */ - void set(const QString& key1, const QVariant& value1, - const QString& key2 = "", const QVariant& value2 = QVariant(), - const QString& key3 = "", const QVariant& value3 = QVariant(), - const QString& key4 = "", const QVariant& value4 = QVariant(), - const QString& key5 = "", const QVariant& value5 = QVariant(), - const QString& key6 = "", const QVariant& value6 = QVariant(), - const QString& key7 = "", const QVariant& value7 = QVariant(), - const QString& key8 = "", const QVariant& value8 = QVariant(), - const QString& key9 = "", const QVariant& value9 = QVariant(), - const QString& key10 = "", const QVariant& value10 = QVariant()); - - /** - Set one IAP value. - */ - void setValue(const QString& key, const QVariant& value); - - /** - Get one IAP value. - */ - QVariant value(const QString& key) const; - - /** - Clear this IAP from GConf - */ - void clear(const char *default_path=0); - - /** - Clear all IAP specific information from GConf (including all IAPs). - DO NOT USE THIS FUNCTION IN ANYWHERE ELSE EXCEPT IN TEST CODE! - */ - void clearAll(); - - /** - Return all the IAPs found in the system. If return_path is true, - then do not strip the IAP path away. - */ - static void getAll(QList &all_iaps, bool return_path=false); - -private: - IAPConfPrivate *d_ptr; -}; - -} // namespace Maemo - -#endif diff --git a/src/3rdparty/libconninet/src/iapmonitor.cpp b/src/3rdparty/libconninet/src/iapmonitor.cpp deleted file mode 100644 index c44cbc8..0000000 --- a/src/3rdparty/libconninet/src/iapmonitor.cpp +++ /dev/null @@ -1,110 +0,0 @@ -/* - libconninet - Internet Connectivity support library - - Copyright (C) 2009-2010 Nokia Corporation. All rights reserved. - - Contact: Jukka Rissanen - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public License - version 2.1 as published by the Free Software Foundation. - - This library is distributed in the hope that it will be useful, but - WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA - 02110-1301 USA -*/ - -#include - -#include -#include "iapmonitor.h" - -namespace Maemo { - - -void conn_settings_notify_func (ConnSettingsType type, - const char *id, - const char *key, - ConnSettingsValue *value, - void *user_data); - -class IAPMonitorPrivate { -private: - IAPMonitor *monitor; - ConnSettings *settings; - -public: - - IAPMonitorPrivate(IAPMonitor *monitor) - : monitor(monitor) - { - settings = conn_settings_open(CONN_SETTINGS_CONNECTION, NULL); - conn_settings_add_notify( - settings, - (ConnSettingsNotifyFunc *)conn_settings_notify_func, - this); - } - - ~IAPMonitorPrivate() - { - conn_settings_del_notify(settings); - conn_settings_close(settings); - } - - void iapAdded(const QString &iap) - { - monitor->iapAdded(iap); - } - - void iapRemoved(const QString &iap) - { - monitor->iapRemoved(iap); - } -}; - -void conn_settings_notify_func (ConnSettingsType type, - const char *id, - const char *key, - ConnSettingsValue *value, - void *user_data) -{ - if (type != CONN_SETTINGS_CONNECTION) return; - IAPMonitorPrivate *priv = (IAPMonitorPrivate *)user_data; - - QString iapId(key); - iapId = iapId.split("/")[0]; - if (value != 0) { - priv->iapAdded(iapId); - } else if (iapId == QString(key)) { - // IAP is removed only when the directory gets removed - priv->iapRemoved(iapId); - } -} - -IAPMonitor::IAPMonitor() - : d_ptr(new IAPMonitorPrivate(this)) -{ -} - -IAPMonitor::~IAPMonitor() -{ - delete d_ptr; -} - -void IAPMonitor::iapAdded(const QString &id) -{ - // By default do nothing -} - -void IAPMonitor::iapRemoved(const QString &id) -{ - // By default do nothing -} - -} // namespace Maemo diff --git a/src/3rdparty/libconninet/src/iapmonitor.h b/src/3rdparty/libconninet/src/iapmonitor.h deleted file mode 100644 index 558f23e..0000000 --- a/src/3rdparty/libconninet/src/iapmonitor.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - libconninet - Internet Connectivity support library - - Copyright (C) 2009-2010 Nokia Corporation. All rights reserved. - - Contact: Jukka Rissanen - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public License - version 2.1 as published by the Free Software Foundation. - - This library is distributed in the hope that it will be useful, but - WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA - 02110-1301 USA -*/ - -#ifndef IAPMONITOR_H -#define IAPMONITOR_H - -#include - -namespace Maemo { - -class IAPMonitorPrivate; -class IAPMonitor { -public: - IAPMonitor(); - ~IAPMonitor(); - -protected: - virtual void iapAdded(const QString &id); - virtual void iapRemoved(const QString &id); - -private: - IAPMonitorPrivate *d_ptr; - Q_DECLARE_PRIVATE(IAPMonitor); -}; - -} // namespace Maemo - -#endif // IAPMONITOR_H - diff --git a/src/3rdparty/libconninet/src/maemo_icd.cpp b/src/3rdparty/libconninet/src/maemo_icd.cpp deleted file mode 100644 index bc84fbc..0000000 --- a/src/3rdparty/libconninet/src/maemo_icd.cpp +++ /dev/null @@ -1,1277 +0,0 @@ -/* - libconninet - Internet Connectivity support library - - Copyright (C) 2009 Nokia Corporation. All rights reserved. - - Contact: Jukka Rissanen - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public License - version 2.1 as published by the Free Software Foundation. - - This library is distributed in the hope that it will be useful, but - WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA - 02110-1301 USA -*/ - -#include -#include "maemo_icd.h" -#include -#include -#include -#include -#include -#include -#include - - -namespace Maemo { - -/* Reference counting singleton class that creates a single connection - * to icd so that icd reference counting works as expected. This is - * needed because DBusDispatcher uses private dbus connections - * which come and go and icd cannot use that information to - * determine whether application quit or not. So we create one - * persistent connection that is only teared down when application - * quits or calls disconnect() - */ -class IcdRefCounting -{ -public: - IcdRefCounting() : first_call(true) { } - void setup(enum icd_connection_flags flag); - void cleanup(); - -private: - bool first_call; - struct DBusConnection *connection; -}; - -Q_GLOBAL_STATIC(IcdRefCounting, icdRefCounting); - - -void IcdRefCounting::setup(enum icd_connection_flags flag) -{ - if (first_call) { - DBusMessage *msg = NULL; - - connection = dbus_bus_get_private(DBUS_BUS_SYSTEM, NULL); - dbus_connection_set_exit_on_disconnect(connection, FALSE); - dbus_connection_setup_with_g_main(connection, NULL); - - msg = dbus_message_new_method_call(ICD_DBUS_API_INTERFACE, - ICD_DBUS_API_PATH, - ICD_DBUS_API_INTERFACE, - ICD_DBUS_API_CONNECT_REQ); - if (msg == NULL) - goto out; - - if (!dbus_message_append_args(msg, - DBUS_TYPE_UINT32, &flag, - DBUS_TYPE_INVALID)) - goto out; - - if (!dbus_connection_send_with_reply(connection, msg, - NULL, 60*1000)) - goto out; - - first_call = false; - return; - - out: - dbus_connection_close(connection); - dbus_connection_unref(connection); - } -} - -void IcdRefCounting::cleanup() -{ - if (!first_call) { - dbus_connection_close(connection); - dbus_connection_unref(connection); - first_call = true; - } -} - - -class IcdPrivate -{ -public: - IcdPrivate(Icd *myfriend) - { - init(10000, IcdNewDbusInterface, myfriend); - } - - IcdPrivate(unsigned int timeout, Icd *myfriend) - { - init(timeout, IcdNewDbusInterface, myfriend); - } - - IcdPrivate(unsigned int timeout, IcdDbusInterfaceVer ver, Icd *myfriend) - { - /* Note that the old Icd interface is currently disabled and - * the new one is always used. - */ - init(timeout, IcdNewDbusInterface, myfriend); - } - - ~IcdPrivate() - { - QObject::disconnect(mDBus, - SIGNAL(signalReceived(const QString&, - const QString&, - const QList&)), - icd, - SLOT(icdSignalReceived(const QString&, - const QString&, - const QList&))); - - QObject::disconnect(mDBus, - SIGNAL(callReply(const QString&, - const QList&, - const QString&)), - icd, - SLOT(icdCallReply(const QString&, - const QList&, - const QString&))); - - delete mDBus; - mDBus = 0; - } - - /* Icd2 dbus API functions */ - QStringList scan(icd_scan_request_flags flags, - QStringList &network_types, - QList& scan_results, - QString& error); - void scanCancel(); - bool connect(icd_connection_flags flags, IcdConnectResult& result); - bool connect(icd_connection_flags flags, QList& params, - IcdConnectResult& result); - bool connect(icd_connection_flags flags, QString& iap, QString& result); - void select(uint flags); - void disconnect(uint connect_flags, QString& service_type, - uint service_attrs, QString& service_id, - QString& network_type, uint network_attrs, - QByteArray& network_id); - void disconnect(uint connect_flags); - - uint state(QString& service_type, uint service_attrs, - QString& service_id, QString& network_type, - uint network_attrs, QByteArray& network_id, - IcdStateResult &state_result); - uint statistics(QString& service_type, uint service_attrs, - QString& service_id, QString& network_type, - uint network_attrs, QByteArray& network_id, - IcdStatisticsResult& stats_result); - uint addrinfo(QString& service_type, uint service_attrs, - QString& service_id, QString& network_type, - uint network_attrs, QByteArray& network_id, - IcdAddressInfoResult& addr_result); - - uint state(QList& state_results); - uint state_non_blocking(QList& state_results); - uint statistics(QList& stats_results); - uint addrinfo(QList& addr_results); - uint addrinfo_non_blocking(QList& addr_results); - - void signalReceived(const QString& interface, - const QString& signal, - const QList& args); - void callReply(const QString& method, - const QList& args, - const QString& error); - - QString error() { return mError; } - -public: - DBusDispatcher *mDBus; - QString mMethod; - QString mInterface; - QString mSignal; - QString mError; - QList mArgs; - QList receivedSignals; - unsigned int timeout; - IcdDbusInterfaceVer icd_dbus_version; - Icd *icd; - - void init(unsigned int dbus_timeout, IcdDbusInterfaceVer ver, - Icd *myfriend) - { - if (ver == IcdNewDbusInterface) { - mDBus = new DBusDispatcher(ICD_DBUS_API_INTERFACE, - ICD_DBUS_API_PATH, - ICD_DBUS_API_INTERFACE); - } else { - mDBus = new DBusDispatcher(ICD_DBUS_SERVICE, - ICD_DBUS_PATH, - ICD_DBUS_INTERFACE); - } - icd_dbus_version = ver; - - /* This connect has a side effect as it means that only one - * Icd object can exists in one time. This should be fixed! - */ - QObject::connect(mDBus, - SIGNAL(signalReceived(const QString&, - const QString&, - const QList&)), - myfriend, - SLOT(icdSignalReceived(const QString&, - const QString&, - const QList&))); - - QObject::connect(mDBus, - SIGNAL(callReply(const QString&, - const QList&, - const QString&)), - myfriend, - SLOT(icdCallReply(const QString&, - const QList&, - const QString&))); - - icd = myfriend; - timeout = dbus_timeout; - } - - void clearState() - { - mMethod.clear(); - mInterface.clear(); - mSignal.clear(); - mError.clear(); - mArgs.clear(); - receivedSignals.clear(); - } - - bool doConnect(IcdConnectResult& result); - bool doConnect(QString& result); - bool doState(); -}; - - -void IcdPrivate::signalReceived(const QString& interface, - const QString& signal, - const QList& args) -{ - // Signal handler, which simply records what has been signalled - mInterface = interface; - mSignal = signal; - mArgs = args; - - //qDebug() << "signal" << signal << "received:" << args; - receivedSignals << QVariant(interface) << QVariant(signal) << QVariant(args); -} - - -void IcdPrivate::callReply(const QString& method, - const QList& /*args*/, - const QString& error) -{ - mMethod = method; - mError = error; -} - - -static void get_scan_result(QList& args, - IcdScanResult& ret) -{ - int i=0; - - if (args.isEmpty()) - return; - - ret.status = args[i++].toUInt(); - ret.timestamp = args[i++].toUInt(); - ret.scan.service_type = args[i++].toString(); - ret.service_name = args[i++].toString(); - ret.scan.service_attrs = args[i++].toUInt(); - ret.scan.service_id = args[i++].toString(); - ret.service_priority = args[i++].toInt(); - ret.scan.network_type = args[i++].toString(); - ret.network_name = args[i++].toString(); - ret.scan.network_attrs = args[i++].toUInt(); - ret.scan.network_id = args[i++].toByteArray(); - ret.network_priority = args[i++].toInt(); - ret.signal_strength = args[i++].toInt(); - ret.station_id = args[i++].toString(); - ret.signal_dB = args[i++].toInt(); -} - - -static void get_connect_result(QList& args, - IcdConnectResult& ret) -{ - int i=0; - - if (args.isEmpty()) - return; - - ret.connect.service_type = args[i++].toString(); - ret.connect.service_attrs = args[i++].toInt(); - ret.connect.service_id = args[i++].toString(); - ret.connect.network_type = args[i++].toString(); - ret.connect.network_attrs = args[i++].toInt(); - ret.connect.network_id = args[i++].toByteArray(); - ret.status = args[i++].toInt(); -} - - -QStringList IcdPrivate::scan(icd_scan_request_flags flags, - QStringList &network_types, - QList& scan_results, - QString& error) -{ - QStringList scanned_types; - QTimer timer; - QVariant reply; - QVariantList vl; - bool last_result = false; - IcdScanResult result; - int all_waited; - - clearState(); - reply = mDBus->call(ICD_DBUS_API_SCAN_REQ, (uint)flags); - if (reply.type() != QVariant::List) - return scanned_types; - vl = reply.toList(); - if (vl.isEmpty()) { - error = "Scan did not return anything."; - return scanned_types; - } - reply = vl.first(); - scanned_types = reply.toStringList(); - //qDebug() << "Scanning:" << scanned_types; - all_waited = scanned_types.size(); - - timer.setSingleShot(true); - timer.start(timeout); - - scan_results.clear(); - while (!last_result) { - while (timer.isActive() && mInterface.isEmpty() && mError.isEmpty()) { - QCoreApplication::processEvents(QEventLoop::AllEvents, 1000); - } - - if (!timer.isActive()) { - //qDebug() << "Timeout happened"; - break; - } - - if (mSignal != ICD_DBUS_API_SCAN_SIG) { - //qDebug() << "Received" << mSignal << "while waiting" << ICD_DBUS_API_SCAN_SIG << ", ignoring"; - mInterface.clear(); - continue; - } - - if (mError.isEmpty()) { - QString msgInterface = receivedSignals.takeFirst().toString(); - QString msgSignal = receivedSignals.takeFirst().toString(); - QList msgArgs = receivedSignals.takeFirst().toList(); - //qDebug() << "Signal" << msgSignal << "received."; - //qDebug() << "Params:" << msgArgs; - - while (!msgSignal.isEmpty()) { - get_scan_result(msgArgs, result); - -#if 0 - qDebug() << "Received: " << - "status =" << result.status << - ", timestamp =" << result.timestamp << - ", service_type =" << result.scan.service_type << - ", service_name =" << result.service_name << - ", service_attrs =" << result.scan.service_attrs << - ", service_id =" << result.scan.service_id << - ", service_priority =" << result.service_priority << - ", network_type =" << result.scan.network_type << - ", network_name =" << result.network_name << - ", network_attrs =" << result.scan.network_attrs << - ", network_id =" << "-" << - ", network_priority =" << result.network_priority << - ", signal_strength =" << result.signal_strength << - ", station_id =" << result.station_id << - ", signal_dB =" << result.signal_dB; -#endif - - if (result.status == ICD_SCAN_COMPLETE) { - //qDebug() << "waited =" << all_waited; - if (--all_waited == 0) { - last_result = true; - break; - } - } else - scan_results << result; - - if (receivedSignals.isEmpty()) - break; - - msgInterface = receivedSignals.takeFirst().toString(); - msgSignal = receivedSignals.takeFirst().toString(); - msgArgs = receivedSignals.takeFirst().toList(); - } - mInterface.clear(); - - } else { - qWarning() << "Error while scanning:" << mError; - break; - } - } - timer.stop(); - - error = mError; - return scanned_types; -} - - -void IcdPrivate::scanCancel() -{ - mDBus->call(ICD_DBUS_API_SCAN_CANCEL); -} - - -bool IcdPrivate::doConnect(IcdConnectResult& result) -{ - QTimer timer; - bool status = false; - - timer.setSingleShot(true); - timer.start(timeout); - - //qDebug() << "Waiting" << ICD_DBUS_API_CONNECT_SIG << "signal"; - - while (timer.isActive() && mInterface.isEmpty() && - mSignal != ICD_DBUS_API_CONNECT_SIG && - mError.isEmpty()) { - QCoreApplication::processEvents(QEventLoop::AllEvents, 1000); - } - - timer.stop(); - - if (mError.isEmpty()) { - if (!mArgs.isEmpty()) { - get_connect_result(mArgs, result); - status = true; - } else - status = false; - } else - status = false; - - return status; -} - - -bool IcdPrivate::connect(icd_connection_flags flags, IcdConnectResult& result) -{ - clearState(); - //mDBus->callAsynchronous(ICD_DBUS_API_CONNECT_REQ, (uint)flags); - mDBus->call(ICD_DBUS_API_CONNECT_REQ, (uint)flags); - icdRefCounting()->setup(flags); - return doConnect(result); -} - - -bool IcdPrivate::connect(icd_connection_flags flags, QList& params, - IcdConnectResult& result) -{ - QVariantList varlist; - QVariantList varlist2; - - foreach (ConnectParams param, params) { - QVariantList items; - - items.append(QVariant(param.connect.service_type)); - items.append(QVariant(param.connect.service_attrs)); - items.append(QVariant(param.connect.service_id)); - items.append(QVariant(param.connect.network_type)); - items.append(QVariant(param.connect.network_attrs)); - items.append(QVariant(param.connect.network_id)); - - varlist.append(items); - } - - varlist2.append(QVariant(varlist)); - - clearState(); - //mDBus->callAsynchronous(ICD_DBUS_API_CONNECT_REQ, (uint)flags, varlist2); - mDBus->call(ICD_DBUS_API_CONNECT_REQ, (uint)flags, varlist2); - icdRefCounting()->setup(flags); - return doConnect(result); -} - - -bool IcdPrivate::doConnect(QString& ret) -{ - QTimer timer; - bool status = false; - - timer.setSingleShot(true); - timer.start(timeout); - - while (timer.isActive() && mInterface.isEmpty() && - mError.isEmpty()) { - QCoreApplication::processEvents(QEventLoop::AllEvents, 1000); - } - - timer.stop(); - - if (mError.isEmpty()) { - if (!mArgs.isEmpty()) { - status = true; - //ret = mArgs[0]; // TODO correctly - } else - status = false; - } else - status = false; - - return status; -} - - -bool IcdPrivate::connect(icd_connection_flags flags, QString& iap, QString& result) -{ - clearState(); - //mDBus->callAsynchronous(ICD_CONNECT_REQ, iap, (uint)flags); - mDBus->call(ICD_CONNECT_REQ, iap, (uint)flags); - icdRefCounting()->setup(flags); - return doConnect(result); -} - - -void IcdPrivate::select(uint flags) -{ - mDBus->call(ICD_DBUS_API_SELECT_REQ, flags); -} - - -void IcdPrivate::disconnect(uint flags, QString& service_type, - uint service_attrs, QString& service_id, - QString& network_type, uint network_attrs, - QByteArray& network_id) -{ - clearState(); - mDBus->call(ICD_DBUS_API_DISCONNECT_REQ, flags, - service_type, service_attrs, service_id, - network_type, network_attrs, network_id); - icdRefCounting()->cleanup(); -} - - -void IcdPrivate::disconnect(uint flags) -{ - clearState(); - mDBus->call(ICD_DBUS_API_DISCONNECT_REQ, flags); - icdRefCounting()->cleanup(); -} - - -static void get_state_all_result(QList& args, - IcdStateResult& ret) -{ - int i=0; - - ret.params.service_type = args[i++].toString(); - ret.params.service_attrs = args[i++].toUInt(); - ret.params.service_id = args[i++].toString(); - ret.params.network_type = args[i++].toString(); - ret.params.network_attrs = args[i++].toUInt(); - ret.params.network_id = args[i++].toByteArray(); - ret.error = args[i++].toString(); - ret.state = args[i++].toInt(); -} - - -static void get_state_all_result2(QList& args, - IcdStateResult& ret) -{ - int i=0; - - ret.params.network_type = args[i++].toString(); - ret.state = args[i++].toInt(); - - // Initialize the other values so that the caller can - // notice we only returned partial status - ret.params.service_type = QString(); - ret.params.service_attrs = 0; - ret.params.service_id = QString(); - ret.params.network_attrs = 0; - ret.params.network_id = QByteArray(); - ret.error = QString(); -} - - -uint IcdPrivate::state(QString& service_type, uint service_attrs, - QString& service_id, QString& network_type, - uint network_attrs, QByteArray& network_id, - IcdStateResult& state_result) -{ - QTimer timer; - QVariant reply; - uint total_signals; - QVariantList vl; - - clearState(); - - reply = mDBus->call(ICD_DBUS_API_STATE_REQ, - service_type, service_attrs, service_id, - network_type, network_attrs, network_id); - if (reply.type() != QVariant::List) - return 0; - vl = reply.toList(); - if (vl.isEmpty()) - return 0; - reply = vl.first(); - total_signals = reply.toUInt(); - if (!total_signals) - return 0; - - timer.setSingleShot(true); - timer.start(timeout); - - mInterface.clear(); - while (timer.isActive() && mInterface.isEmpty()) { - QCoreApplication::processEvents(QEventLoop::AllEvents, 1000); - - if (mSignal != ICD_DBUS_API_STATE_SIG) { - mInterface.clear(); - continue; - } - } - - timer.stop(); - - if (mError.isEmpty()) { - if (!mArgs.isEmpty()) { - if (mArgs.size()>2) - get_state_all_result(mArgs, state_result); - else { - // We are not connected as we did not get the status we asked - return 0; - } - } - } else { - qWarning() << "Error:" << mError; - } - - // The returned value should be one because we asked for one state - return total_signals; -} - - -uint IcdPrivate::state_non_blocking(QList& state_results) -{ - QTimer timer; - QVariant reply; - QVariantList vl; - uint signals_left, total_signals; - IcdStateResult result; - - clearState(); - reply = mDBus->call(ICD_DBUS_API_STATE_REQ); - if (reply.type() != QVariant::List) - return 0; - vl = reply.toList(); - if (vl.isEmpty()) - return 0; - reply = vl.first(); - signals_left = total_signals = reply.toUInt(); - if (!signals_left) - return 0; - - timer.setSingleShot(true); - timer.start(timeout); - state_results.clear(); - mError.clear(); - while (signals_left) { - mInterface.clear(); - while (timer.isActive() && mInterface.isEmpty()) { - QCoreApplication::processEvents(QEventLoop::AllEvents, 1000); - } - - if (!timer.isActive()) { - total_signals = 0; - break; - } - - if (mSignal != ICD_DBUS_API_STATE_SIG) { - continue; - } - - if (mError.isEmpty()) { - if (!mArgs.isEmpty()) { - if (mArgs.size()==2) - get_state_all_result2(mArgs, result); - else - get_state_all_result(mArgs, result); - state_results << result; - } - signals_left--; - } else { - qWarning() << "Error:" << mError; - break; - } - } - timer.stop(); - - return total_signals; -} - - -/* Special version of the state() call which does not call event loop. - * Needed in order to fix NB#175098 where Qt4.7 webkit crashes because event - * loop is run when webkit does not expect it. This function is called from - * bearer management API syncStateWithInterface() in QNetworkSession - * constructor. - */ -uint IcdPrivate::state(QList& state_results) -{ - QTimer timer; - QVariant reply; - QVariantList vl; - uint signals_left, total_signals; - IcdStateResult result; - - clearState(); - reply = mDBus->call(ICD_DBUS_API_STATE_REQ); - if (reply.type() != QVariant::List) - return 0; - vl = reply.toList(); - if (vl.isEmpty()) - return 0; - reply = vl.first(); - signals_left = total_signals = reply.toUInt(); - if (!signals_left) - return 0; - - timer.setSingleShot(true); - timer.start(timeout); - state_results.clear(); - mError.clear(); - while (signals_left) { - mInterface.clear(); - while (timer.isActive() && mInterface.isEmpty()) { - mDBus->synchronousDispatch(1000); - } - - if (!timer.isActive()) { - total_signals = 0; - break; - } - - if (mSignal != ICD_DBUS_API_STATE_SIG) { - continue; - } - - if (mError.isEmpty()) { - if (!mArgs.isEmpty()) { - if (mArgs.size()==2) - get_state_all_result2(mArgs, result); - else - get_state_all_result(mArgs, result); - state_results << result; - } - signals_left--; - } else { - qWarning() << "Error:" << mError; - break; - } - } - timer.stop(); - - return total_signals; -} - - -static void get_statistics_all_result(QList& args, - IcdStatisticsResult& ret) -{ - int i=0; - - if (args.isEmpty()) - return; - - ret.params.service_type = args[i++].toString(); - ret.params.service_attrs = args[i++].toUInt(); - ret.params.service_id = args[i++].toString(); - ret.params.network_type = args[i++].toString(); - ret.params.network_attrs = args[i++].toUInt(); - ret.params.network_id = args[i++].toByteArray(); - ret.time_active = args[i++].toUInt(); - ret.signal_strength = (enum icd_nw_levels)args[i++].toUInt(); - ret.bytes_sent = args[i++].toUInt(); - ret.bytes_received = args[i++].toUInt(); -} - - -uint IcdPrivate::statistics(QList& stats_results) -{ - QTimer timer; - QVariant reply; - QVariantList vl; - uint signals_left, total_signals; - IcdStatisticsResult result; - - clearState(); - reply = mDBus->call(ICD_DBUS_API_STATISTICS_REQ); - if (reply.type() != QVariant::List) - return 0; - vl = reply.toList(); - if (vl.isEmpty()) - return 0; - reply = vl.first(); - if (reply.type() != QVariant::UInt) - return 0; - signals_left = total_signals = reply.toUInt(); - - if (!signals_left) - return 0; - - timer.setSingleShot(true); - timer.start(timeout); - stats_results.clear(); - while (signals_left) { - mInterface.clear(); - while (timer.isActive() && mInterface.isEmpty()) { - QCoreApplication::processEvents(QEventLoop::AllEvents, 1000); - } - - if (!timer.isActive()) { - total_signals = 0; - break; - } - - if (mSignal != ICD_DBUS_API_STATISTICS_SIG) { - continue; - } - - if (mError.isEmpty()) { - get_statistics_all_result(mArgs, result); - stats_results << result; - signals_left--; - } else { - qWarning() << "Error:" << mError; - break; - } - } - timer.stop(); - - return total_signals; -} - - -uint IcdPrivate::statistics(QString& service_type, uint service_attrs, - QString& service_id, QString& network_type, - uint network_attrs, QByteArray& network_id, - IcdStatisticsResult& stats_result) -{ - QTimer timer; - QVariant reply; - uint total_signals; - QVariantList vl; - - clearState(); - - reply = mDBus->call(ICD_DBUS_API_STATISTICS_REQ, - service_type, service_attrs, service_id, - network_type, network_attrs, network_id); - if (reply.type() != QVariant::List) - return 0; - vl = reply.toList(); - if (vl.isEmpty()) - return 0; - reply = vl.first(); - total_signals = reply.toUInt(); - if (!total_signals) - return 0; - - timer.setSingleShot(true); - timer.start(timeout); - - mInterface.clear(); - while (timer.isActive() && mInterface.isEmpty()) { - QCoreApplication::processEvents(QEventLoop::AllEvents, 1000); - - if (mSignal != ICD_DBUS_API_STATISTICS_SIG) { - mInterface.clear(); - continue; - } - } - - timer.stop(); - - if (mError.isEmpty()) { - get_statistics_all_result(mArgs, stats_result); - } else { - qWarning() << "Error:" << mError; - } - - // The returned value should be one because we asked for one statistics - return total_signals; -} - - -static void get_addrinfo_all_result(QList& args, - IcdAddressInfoResult& ret) -{ - int i=0; - - if (args.isEmpty()) - return; - - ret.params.service_type = args[i++].toString(); - ret.params.service_attrs = args[i++].toUInt(); - ret.params.service_id = args[i++].toString(); - ret.params.network_type = args[i++].toString(); - ret.params.network_attrs = args[i++].toUInt(); - ret.params.network_id = args[i++].toByteArray(); - - QVariantList vl = args[i].toList(); - QVariant reply = vl.first(); - QList lst = reply.toList(); - for (int k=0; k& addr_results) -{ - QTimer timer; - QVariant reply; - QVariantList vl; - uint signals_left, total_signals; - IcdAddressInfoResult result; - - clearState(); - reply = mDBus->call(ICD_DBUS_API_ADDRINFO_REQ); - if (reply.type() != QVariant::List) - return 0; - vl = reply.toList(); - if (vl.isEmpty()) - return 0; - reply = vl.first(); - if (reply.type() != QVariant::UInt) - return 0; - signals_left = total_signals = reply.toUInt(); - if (!signals_left) - return 0; - - timer.setSingleShot(true); - timer.start(timeout); - addr_results.clear(); - while (signals_left) { - mInterface.clear(); - while (timer.isActive() && mInterface.isEmpty()) { - mDBus->synchronousDispatch(1000); - } - - if (!timer.isActive()) { - total_signals = 0; - break; - } - - if (mSignal != ICD_DBUS_API_ADDRINFO_SIG) { - continue; - } - - if (mError.isEmpty()) { - get_addrinfo_all_result(mArgs, result); - addr_results << result; - signals_left--; - } else { - qWarning() << "Error:" << mError; - break; - } - } - timer.stop(); - return total_signals; -} - -uint IcdPrivate::addrinfo_non_blocking(QList& addr_results) -{ - QTimer timer; - QVariant reply; - QVariantList vl; - uint signals_left, total_signals; - IcdAddressInfoResult result; - - clearState(); - reply = mDBus->call(ICD_DBUS_API_ADDRINFO_REQ); - if (reply.type() != QVariant::List) - return 0; - vl = reply.toList(); - if (vl.isEmpty()) - return 0; - reply = vl.first(); - if (reply.type() != QVariant::UInt) - return 0; - signals_left = total_signals = reply.toUInt(); - if (!signals_left) - return 0; - - timer.setSingleShot(true); - timer.start(timeout); - addr_results.clear(); - while (signals_left) { - mInterface.clear(); - while (timer.isActive() && mInterface.isEmpty()) { - QCoreApplication::processEvents(QEventLoop::AllEvents, 1000); - } - - if (!timer.isActive()) { - total_signals = 0; - break; - } - - if (mSignal != ICD_DBUS_API_ADDRINFO_SIG) { - continue; - } - - if (mError.isEmpty()) { - get_addrinfo_all_result(mArgs, result); - addr_results << result; - signals_left--; - } else { - qWarning() << "Error:" << mError; - break; - } - } - timer.stop(); - return total_signals; -} - - -uint IcdPrivate::addrinfo(QString& service_type, uint service_attrs, - QString& service_id, QString& network_type, - uint network_attrs, QByteArray& network_id, - IcdAddressInfoResult& addr_result) -{ - QTimer timer; - QVariant reply; - uint total_signals; - QVariantList vl; - - clearState(); - - reply = mDBus->call(ICD_DBUS_API_ADDRINFO_REQ, - service_type, service_attrs, service_id, - network_type, network_attrs, network_id); - if (reply.type() != QVariant::List) - return 0; - vl = reply.toList(); - if (vl.isEmpty()) - return 0; - reply = vl.first(); - total_signals = reply.toUInt(); - - if (!total_signals) - return 0; - - timer.setSingleShot(true); - timer.start(timeout); - - mInterface.clear(); - while (timer.isActive() && mInterface.isEmpty()) { - QCoreApplication::processEvents(QEventLoop::AllEvents, 1000); - - if (mSignal != ICD_DBUS_API_ADDRINFO_SIG) { - mInterface.clear(); - continue; - } - } - - timer.stop(); - - if (mError.isEmpty()) { - get_addrinfo_all_result(mArgs, addr_result); - } else { - qWarning() << "Error:" << mError; - } - - // The returned value should be one because we asked for one addrinfo - return total_signals; -} - - -Icd::Icd(QObject *parent) - : QObject(parent), d(new IcdPrivate(this)) -{ -} - -Icd::Icd(unsigned int timeout, QObject *parent) - : QObject(parent), d(new IcdPrivate(timeout, this)) -{ -} - -Icd::Icd(unsigned int timeout, IcdDbusInterfaceVer ver, QObject *parent) - : QObject(parent), d(new IcdPrivate(timeout, ver, this)) -{ -} - -Icd::~Icd() -{ - delete d; -} - - -QStringList Icd::scan(icd_scan_request_flags flags, - QStringList &network_types, - QList& scan_results, - QString& error) -{ - return d->scan(flags, network_types, scan_results, error); -} - - -void Icd::scanCancel() -{ - d->scanCancel(); -} - - -bool Icd::connect(icd_connection_flags flags, IcdConnectResult& result) -{ - return d->connect(flags, result); -} - - -bool Icd::connect(icd_connection_flags flags, QList& params, - IcdConnectResult& result) -{ - return d->connect(flags, params, result); -} - - -bool Icd::connect(icd_connection_flags flags, QString& iap, QString& result) -{ - return d->connect(flags, iap, result); -} - - -void Icd::select(uint flags) -{ - d->select(flags); -} - - -void Icd::disconnect(uint connect_flags, QString& service_type, - uint service_attrs, QString& service_id, - QString& network_type, uint network_attrs, - QByteArray& network_id) -{ - d->disconnect(connect_flags, service_type, - service_attrs, service_id, - network_type, network_attrs, - network_id); -} - - -void Icd::disconnect(uint connect_flags) -{ - d->disconnect(connect_flags); -} - - -uint Icd::state(QString& service_type, uint service_attrs, - QString& service_id, QString& network_type, - uint network_attrs, QByteArray& network_id, - IcdStateResult &state_result) -{ - return d->state(service_type, service_attrs, service_id, - network_type, network_attrs, network_id, - state_result); -} - - -uint Icd::statistics(QString& service_type, uint service_attrs, - QString& service_id, QString& network_type, - uint network_attrs, QByteArray& network_id, - IcdStatisticsResult& stats_result) -{ - return d->statistics(service_type, service_attrs, service_id, - network_type, network_attrs, network_id, - stats_result); -} - - -uint Icd::addrinfo(QString& service_type, uint service_attrs, - QString& service_id, QString& network_type, - uint network_attrs, QByteArray& network_id, - IcdAddressInfoResult& addr_result) -{ - return d->addrinfo(service_type, service_attrs, service_id, - network_type, network_attrs, network_id, - addr_result); -} - - -uint Icd::state(QList& state_results) -{ - return d->state(state_results); -} - -uint Icd::state_non_blocking(QList& state_results) -{ - return d->state_non_blocking(state_results); -} - -uint Icd::statistics(QList& stats_results) -{ - return d->statistics(stats_results); -} - - -uint Icd::addrinfo(QList& addr_results) -{ - return d->addrinfo(addr_results); -} - -uint Icd::addrinfo_non_blocking(QList& addr_results) -{ - return d->addrinfo_non_blocking(addr_results); -} - -void Icd::icdSignalReceived(const QString& interface, - const QString& signal, - const QList& args) -{ - d->signalReceived(interface, signal, args); -} - - -void Icd::icdCallReply(const QString& method, - const QList& args, - const QString& error) -{ - d->callReply(method, args, error); -} - - -QString Icd::error() -{ - return d->error(); -} - -} // Maemo namespace - - diff --git a/src/3rdparty/libconninet/src/maemo_icd.h b/src/3rdparty/libconninet/src/maemo_icd.h deleted file mode 100644 index d7a8d5b..0000000 --- a/src/3rdparty/libconninet/src/maemo_icd.h +++ /dev/null @@ -1,182 +0,0 @@ -/* - libconninet - Internet Connectivity support library - - Copyright (C) 2009 Nokia Corporation. All rights reserved. - - Contact: Jukka Rissanen - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public License - version 2.1 as published by the Free Software Foundation. - - This library is distributed in the hope that it will be useful, but - WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA - 02110-1301 USA -*/ - -#ifndef MAEMO_ICD_H -#define MAEMO_ICD_H - -#include -#include -#include -#include -#include -#include - -#include -#include -#include -#include - -#include "dbusdispatcher.h" -#include - -#define ICD_LONG_SCAN_TIMEOUT (30*1000) /* 30sec */ -#define ICD_SHORT_SCAN_TIMEOUT (10*1000) /* 10sec */ -#define ICD_SHORT_CONNECT_TIMEOUT (10*1000) /* 10sec */ -#define ICD_LONG_CONNECT_TIMEOUT (150*1000) /* 2.5min */ - -namespace Maemo { - -struct CommonParams { - QString service_type; - uint service_attrs; - QString service_id; - QString network_type; - uint network_attrs; - QByteArray network_id; -}; - -struct ConnectParams { - struct CommonParams connect; -}; - -struct IcdScanResult { - uint status; // see #icd_scan_status - uint timestamp; // when last seen - QString service_name; - uint service_priority; // within a service type - QString network_name; - uint network_priority; - struct CommonParams scan; - uint signal_strength; // quality, 0 (none) - 10 (good) - QString station_id; // e.g. MAC address or similar id - uint signal_dB; // use signal strength above unless you know what you are doing - - IcdScanResult() { - status = timestamp = scan.service_attrs = service_priority = - scan.network_attrs = network_priority = signal_strength = - signal_dB = 0; - } -}; - -struct IcdConnectResult { - struct CommonParams connect; - uint status; -}; - -struct IcdStateResult { - struct CommonParams params; - QString error; - uint state; -}; - -struct IcdStatisticsResult { - struct CommonParams params; - uint time_active; // in seconds - enum icd_nw_levels signal_strength; // see network_api_defines.h in icd2-dev package - uint bytes_sent; - uint bytes_received; -}; - -struct IcdIPInformation { - QString address; - QString netmask; - QString default_gateway; - QString dns1; - QString dns2; - QString dns3; -}; - -struct IcdAddressInfoResult { - struct CommonParams params; - QList ip_info; -}; - -enum IcdDbusInterfaceVer { - IcdOldDbusInterface = 0, // use the old OSSO-IC interface - IcdNewDbusInterface // use the new Icd2 interface (default) -}; - - -class IcdPrivate; -class Icd : public QObject -{ - Q_OBJECT - -public: - Icd(QObject *parent = 0); - Icd(unsigned int timeout, QObject *parent = 0); - Icd(unsigned int timeout, IcdDbusInterfaceVer ver, QObject *parent = 0); - ~Icd(); - QString error(); // returns last error string - - /* Icd2 dbus API functions */ - QStringList scan(icd_scan_request_flags flags, - QStringList &network_types, - QList& scan_results, - QString& error); - void scanCancel(); - bool connect(icd_connection_flags flags, IcdConnectResult& result); - bool connect(icd_connection_flags flags, QList& params, - IcdConnectResult& result); - bool connect(icd_connection_flags flags, QString& iap, QString& result); - void select(uint flags); - void disconnect(uint connect_flags, QString& service_type, - uint service_attrs, QString& service_id, - QString& network_type, uint network_attrs, - QByteArray& network_id); - void disconnect(uint connect_flags); - - uint state(QString& service_type, uint service_attrs, - QString& service_id, QString& network_type, - uint network_attrs, QByteArray& network_id, - IcdStateResult &state_result); - uint statistics(QString& service_type, uint service_attrs, - QString& service_id, QString& network_type, - uint network_attrs, QByteArray& network_id, - IcdStatisticsResult& stats_result); - uint addrinfo(QString& service_type, uint service_attrs, - QString& service_id, QString& network_type, - uint network_attrs, QByteArray& network_id, - IcdAddressInfoResult& addr_result); - - uint state(QList& state_results); - uint state_non_blocking(QList& state_results); - uint statistics(QList& stats_results); - uint addrinfo(QList& addr_results); - uint addrinfo_non_blocking(QList& addr_results); - -private Q_SLOTS: - void icdSignalReceived(const QString& interface, - const QString& signal, - const QList& args); - void icdCallReply(const QString& method, - const QList& args, - const QString& error); - -private: - IcdPrivate *d; - friend class IcdPrivate; -}; - -} // Maemo namespace - -#endif diff --git a/src/3rdparty/libconninet/src/proxyconf.cpp b/src/3rdparty/libconninet/src/proxyconf.cpp deleted file mode 100644 index 5b27565..0000000 --- a/src/3rdparty/libconninet/src/proxyconf.cpp +++ /dev/null @@ -1,315 +0,0 @@ -/* - libconninet - Internet Connectivity support library - - Copyright (C) 2010 Nokia Corporation. All rights reserved. - - Contact: Jukka Rissanen - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public License - version 2.1 as published by the Free Software Foundation. - - This library is distributed in the hope that it will be useful, but - WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA - 02110-1301 USA -*/ - -#include -#include -#include -#include -#include -#include -#include "proxyconf.h" - -#define CONF_PROXY "/system/proxy" -#define HTTP_PROXY "/system/http_proxy" - - -namespace Maemo { - -class NetworkProxyFactory : QNetworkProxyFactory { -public: - NetworkProxyFactory() { } - QList queryProxy(const QNetworkProxyQuery &query = QNetworkProxyQuery()); -}; - - -QList NetworkProxyFactory::queryProxy(const QNetworkProxyQuery &query) -{ - ProxyConf proxy_conf; - - QList result = proxy_conf.flush(query); - if (result.isEmpty()) - result << QNetworkProxy::NoProxy; - - return result; -} - - -class ProxyConfPrivate { -private: - // proxy values from gconf - QString mode; - bool use_http_host; - QString autoconfig_url; - QString http_proxy; - quint16 http_port; - QList ignore_hosts; - QString secure_host; - quint16 secure_port; - QString ftp_host; - quint16 ftp_port; - QString socks_host; - quint16 socks_port; - QString rtsp_host; - quint16 rtsp_port; - - QVariant getValue(QString& name); - QVariant getHttpValue(QString& name); - QVariant getValue(const char *name); - QVariant getHttpValue(const char *name); - bool isHostExcluded(const QString &host); - -public: - QString prefix; - QString http_prefix; - - void readProxyData(); - QList flush(const QNetworkProxyQuery &query); -}; - - -QVariant ProxyConfPrivate::getValue(QString& name) -{ - GConfItem item(prefix + name); - return item.value(); -} - -QVariant ProxyConfPrivate::getHttpValue(QString& name) -{ - GConfItem item(http_prefix + name); - return item.value(); -} - - -QVariant ProxyConfPrivate::getValue(const char *name) -{ - QString n = QString(name); - return getValue(n); -} - -QVariant ProxyConfPrivate::getHttpValue(const char *name) -{ - QString n = QString(name); - return getHttpValue(n); -} - - -#define GET(var, type) \ - do { \ - var = getValue(#var).to##type (); \ - /*qDebug()<<"var="<prefix = CONF_PROXY "/"; - d_ptr->http_prefix = HTTP_PROXY "/"; -} - -ProxyConf::~ProxyConf() -{ - delete d_ptr; -} - - -QList ProxyConf::flush(const QNetworkProxyQuery &query) -{ - d_ptr->readProxyData(); - return d_ptr->flush(query); -} - - -static int refcount = 0; -static QReadWriteLock lock; - -void ProxyConf::update() -{ - QWriteLocker locker(&lock); - NetworkProxyFactory *factory = new NetworkProxyFactory(); - QNetworkProxyFactory::setApplicationProxyFactory((QNetworkProxyFactory*)factory); - refcount++; -} - - -void ProxyConf::clear(void) -{ - QWriteLocker locker(&lock); - refcount--; - if (refcount == 0) - QNetworkProxyFactory::setApplicationProxyFactory(NULL); - - if (refcount<0) - refcount = 0; -} - - -} // namespace Maemo diff --git a/src/3rdparty/libconninet/src/proxyconf.h b/src/3rdparty/libconninet/src/proxyconf.h deleted file mode 100644 index 7711c49..0000000 --- a/src/3rdparty/libconninet/src/proxyconf.h +++ /dev/null @@ -1,53 +0,0 @@ -/* - libconninet - Internet Connectivity support library - - Copyright (C) 2010 Nokia Corporation. All rights reserved. - - Contact: Jukka Rissanen - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public License - version 2.1 as published by the Free Software Foundation. - - This library is distributed in the hope that it will be useful, but - WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA - 02110-1301 USA -*/ - -#ifndef PROXYCONF_H -#define PROXYCONF_H - -#include -#include - -namespace Maemo { - -class ProxyConfPrivate; -class ProxyConf { -private: - ProxyConfPrivate *d_ptr; - -public: - ProxyConf(); - virtual ~ProxyConf(); - - QList flush(const QNetworkProxyQuery &query = QNetworkProxyQuery()); // read the proxies from db - - /* Note that for each update() call there should be corresponding - * clear() call because the ProxyConf class implements a reference - * counting mechanism. The factory is removed only when there is - * no one using the factory any more. - */ - static void update(void); // this builds QNetworkProxy factory - static void clear(void); // this removes QNetworkProxy factory -}; - -} // namespace Maemo - -#endif diff --git a/src/3rdparty/libconninet/tests/Makefile.am b/src/3rdparty/libconninet/tests/Makefile.am deleted file mode 100644 index f6f41ea..0000000 --- a/src/3rdparty/libconninet/tests/Makefile.am +++ /dev/null @@ -1,39 +0,0 @@ -DEFS = -DDBUS_API_SUBJECT_TO_CHANGE -INCLUDES = @GLIB_CFLAGS@ @DBUS_CFLAGS@ @CONNSETTINGS_CFLAGS@ @OSSO_IC_CFLAGS@ @ICD_DEV_CFLAGS@ \ - @QTCORE_CFLAGS@ @QTDBUS_CFLAGS@ @QTCORE_CFLAGS@ @QTNETWORK_CFLAGS@ @QTTEST_CFLAGS@ \ - -I$(top_srcdir) \ - -I$(top_srcdir)/src - -LIBS = @GLIB_LIBS@ @DBUS_LIBS@ @CONNSETTINGS_LIBS@ @OSSO_IC_LIBS@ @ICD_DEV_LIBS@ \ - @QTCORE_LIBS@ @QTDBUS_LIBS@ @QTCORE_LIBS@ @QTNETWORK_LIBS@ @QTTEST_LIBS@ \ - $(top_builddir)/src/libconninet.la - -AM_CFLAGS = $(CONCFLAGS) -AM_LDFLAGS = -static - -bin_PROGRAMS = test_dbusdispatcher test_iapconf test_maemo_icd test_iapmonitor test_proxyconf - -test_dbusdispatcher_SOURCES = ut_dbusdispatcher.cpp -ut_dbusdispatcher.o: ut_dbusdispatcher.moc - -test_iapconf_SOURCES = ut_iapconf.cpp -ut_iapconf.o: ut_iapconf.moc - -test_maemo_icd_SOURCES = ut_maemo_icd.cpp -ut_maemo_icd.o: ut_maemo_icd.moc - -test_iapmonitor_SOURCES = ut_iapmonitor.cpp -ut_iapmonitor.o: ut_iapmonitor.moc - -test_proxyconf_SOURCES = ut_proxyconf.cpp -ut_proxyconf.o: ut_proxyconf.moc - - -MAINTAINERCLEANFILES = Makefile.in - -# This rule lets GNU make create any *.moc from the equivalent *.cpp -%.moc: %.cpp - moc $< -o $@ - -# This line ensures that generated moc files are deleted when we make clean. -CLEANFILES = *.moc diff --git a/src/3rdparty/libconninet/tests/ut_dbusdispatcher.cpp b/src/3rdparty/libconninet/tests/ut_dbusdispatcher.cpp deleted file mode 100644 index 70deb3f..0000000 --- a/src/3rdparty/libconninet/tests/ut_dbusdispatcher.cpp +++ /dev/null @@ -1,191 +0,0 @@ -/* * This file is part of conn-dui-settings-inet * - * - * Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). - * All rights reserved. - * - * Contact: Aapo Makela - * - * This software, including documentation, is protected by copyright - * controlled by Nokia Corporation. All rights are reserved. Copying, - * including reproducing, storing, adapting or translating, any or all of - * this material requires the prior written consent of Nokia Corporation. - * This material also contains confidential information which may not be - * disclosed to others without the prior written consent of Nokia. - */ - -#include -#include -#include -#include -#include - -#include - -class Ut_DBusDispatcher : public QObject -{ - Q_OBJECT - -private Q_SLOTS: - void init(); - void cleanup(); - void initTestCase(); - void cleanupTestCase(); - - void simpleSignalReceived(const QString& interface, - const QString& signal, - const QList& args); - void simpleCallReply(const QString& method, - const QList& args, - const QString& error); - void simpleCall(); - - void complexCallReply(const QString& method, - const QList& args, - const QString& error); - void complexCall(); - -private: - Maemo::DBusDispatcher *mSubject; - QProcess *icd_stub; - - QString mMethod; - QString mInterface; - QString mSignal; - QList mArgs; -}; - -void Ut_DBusDispatcher::init() -{ - mSubject = new Maemo::DBusDispatcher("com.nokia.icd2", "/com/nokia/icd2", - "com.nokia.icd2"); - - // Start icd2 stub - icd_stub = new QProcess(this); - icd_stub->start("/usr/bin/icd2_stub.py"); - QTest::qWait(1000); -} - -void Ut_DBusDispatcher::cleanup() -{ - // Terminate icd2 stub - icd_stub->terminate(); - icd_stub->waitForFinished(); - - delete mSubject; - mSubject = 0; -} - -void Ut_DBusDispatcher::initTestCase() -{ -} - -void Ut_DBusDispatcher::cleanupTestCase() -{ -} - -void Ut_DBusDispatcher::simpleSignalReceived(const QString& interface, - const QString& signal, - const QList& args) -{ - // Signal handler, which simply records what has been signalled - mInterface = interface; - mSignal = signal; - mArgs = args; -} - -void Ut_DBusDispatcher::simpleCallReply(const QString& method, - const QList& args, - const QString& error) -{ - mMethod = method; - - // Check that method matches and at least WLAN_INFRA is returned - QVERIFY(error.isEmpty()); - QVERIFY(args[0].toStringList().contains("WLAN_INFRA")); -} - -void Ut_DBusDispatcher::simpleCall() -{ - uint flags = 0; - QList reply; - int idx = 0; - QTimer timer; - - // Connect signals - connect(mSubject, SIGNAL(signalReceived(const QString&, - const QString&, - const QList&)), - this, SLOT(simpleSignalReceived(const QString&, - const QString&, - const QList&))); - connect(mSubject, SIGNAL(callReply(const QString&, - const QList&, - const QString&)), - this, SLOT(simpleCallReply(const QString&, - const QList&, - const QString&))); - - // Request scan and verify the call starts succesfully - QVERIFY(mSubject->callAsynchronous("scan_req", flags)); - - // Wait 1st scan signal for 10 secs - timer.setSingleShot(true); - timer.start(10000); - while (timer.isActive() && mInterface.isEmpty()) { - QCoreApplication::processEvents(QEventLoop::AllEvents, 1000); - idx++; - } - timer.stop(); - - // Sanity checks for the scan result - QVERIFY(mInterface == "com.nokia.icd2"); // interface is icd2 - QVERIFY(mMethod == "scan_req"); // method is scan_req - QVERIFY(mSignal == "scan_result_sig"); // signal is scan result - QVERIFY(mArgs[0] == QVariant(0) || - mArgs[0] == QVariant(4)); // First argument is status - // (0 == NEW, 4 == COMPLETED) - //QVERIFY(mArgs.contains(QVariant("WLAN_INFRA"))); // WLAN scan result -} - -void Ut_DBusDispatcher::complexCallReply(const QString& method, - const QList& args, - const QString& error) -{ - mMethod = method; - - // Check that method has not return arguments and error is not set - QVERIFY(error.isEmpty()); - QVERIFY(args.isEmpty()); -} - -void Ut_DBusDispatcher::complexCall() -{ - uint flags = ICD_CONNECTION_FLAG_UI_EVENT; - QList reply; - QVariantList networks; - QVariantList network1; - - network1 << "" << (uint)0 << "" << "WLAN_INFRA" << (uint)0x05000011 << QByteArray("osso@46@net"); - networks << QVariant(network1); - - // Connect signal - connect(mSubject, SIGNAL(callReply(const QString&, - const QList&, - const QString&)), - this, SLOT(complexCallReply(const QString&, - const QList&, - const QString&))); - - // Request connect and verify the call starts succesfully - QVERIFY(mSubject->callAsynchronous("connect_req", flags, networks)); - - QTest::qWait(1000); - - // Sanity checks for the scan result - QVERIFY(mInterface == "com.nokia.icd2"); // interface is icd2 - QVERIFY(mMethod == "connect_req"); // method connect_req -} - -QTEST_MAIN(Ut_DBusDispatcher) - -#include "ut_dbusdispatcher.moc" diff --git a/src/3rdparty/libconninet/tests/ut_iapconf.cpp b/src/3rdparty/libconninet/tests/ut_iapconf.cpp deleted file mode 100644 index 6a91d61..0000000 --- a/src/3rdparty/libconninet/tests/ut_iapconf.cpp +++ /dev/null @@ -1,186 +0,0 @@ -/* - libconninet - Internet Connectivity support library - - Copyright (C) 2009 Nokia Corporation. All rights reserved. - - Contact: Aapo Makela - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public License - version 2.1 as published by the Free Software Foundation. - - This library is distributed in the hope that it will be useful, but - WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA - 02110-1301 USA -*/ - - -#include -#include - -#include - -class Ut_IAPConf : public QObject -{ - Q_OBJECT - -private Q_SLOTS: - void init(); - void cleanup(); - void initTestCase(); - void cleanupTestCase(); - - void setupIAP(); - void setupIAPContainingDot(); - void unsetIAPValueIsNotValid(); - void verifyAllIAPs(); - void allForEmptyConfReturnsEmptyList(); - void settingInvalidValueUnsetsKey(); - -private: - Maemo::IAPConf *mSubject; -}; - -void Ut_IAPConf::init() -{ - mSubject = new Maemo::IAPConf("test_iap"); -} - -void Ut_IAPConf::cleanup() -{ - // Clear made settings - mSubject->clear(); - - delete mSubject; - mSubject = 0; -} - -void Ut_IAPConf::initTestCase() -{ -} - -void Ut_IAPConf::cleanupTestCase() -{ -} - -void Ut_IAPConf::setupIAP() -{ - // Set bunch of values - mSubject->set("ipv4_type", "AUTO", - "wlan_wepkey1", "connt", - "wlan_wepdefkey", 1, - "wlan_ssid", QByteArray("CONNTEST-1")); - - // Set one value - mSubject->setValue("type", "WLAN_INFRA"); - - // Check all values that they were set correctly - QVERIFY(mSubject->value("ipv4_type").toString() == "AUTO"); - QVERIFY(mSubject->value("wlan_wepkey1").toString() == "connt"); - QVERIFY(mSubject->value("wlan_wepdefkey").toInt() == 1); - QVERIFY(mSubject->value("wlan_ssid").toByteArray() == QByteArray("CONNTEST-1")); - QVERIFY(mSubject->value("type").toString() == "WLAN_INFRA"); -} - -void Ut_IAPConf::setupIAPContainingDot() -{ - delete mSubject; - mSubject = new Maemo::IAPConf("test.iap"); - - // Set and check one value - mSubject->setValue("type", "DUMMY"); - QVERIFY(mSubject->value("type").toString() == "DUMMY"); -} - -void Ut_IAPConf::unsetIAPValueIsNotValid() -{ - QVariant invalidValue = mSubject->value("this_value_does_not_exist"); - QVERIFY(invalidValue.isValid() == false); -} - -void Ut_IAPConf::verifyAllIAPs() -{ - int count = 0, extras = 0; - QRegExp regexp("iap[1-3]"); - Maemo::IAPConf iap1("iap1"); - Maemo::IAPConf iap2("iap2"); - Maemo::IAPConf iap3("iap3"); - - iap1.clear(); - iap2.clear(); - iap3.clear(); - - iap1.setValue("name", "iap1"); - iap2.setValue("name", "iap2"); - iap3.setValue("name", "iap3"); - - count = extras = 0; - QList iaps; - Maemo::IAPConf::getAll(iaps, true); - foreach (QString iap_path, iaps) { - QString iap_id = iap_path.section('/', 5); /* This is the IAP id */ - if (!iap_id.contains(regexp)) { - extras++; - continue; - } - Maemo::IAPConf iap(iap_id); - QString name = iap.value("name").toString(); - QVERIFY(name == iap_id); - count++; - } - QCOMPARE(count, iaps.size()-extras); - - iap1.clear(); - iap2.clear(); - iap3.clear(); - - iap1.setValue("name", "iap1"); - iap2.setValue("name", "iap2"); - iap3.setValue("name", "iap3"); - - count = extras = 0; - Maemo::IAPConf::getAll(iaps); - foreach (QString iap_id, iaps) { - if (!iap_id.contains(regexp)) { - extras++; - continue; - } - Maemo::IAPConf iap(iap_id); - QString name = iap.value("name").toString(); - QVERIFY(name == iap_id); - count++; - } - QCOMPARE(count, iaps.size()-extras); -} - -void Ut_IAPConf::allForEmptyConfReturnsEmptyList() -{ - // Clear everything in configuration - mSubject->clearAll(); - - // Get all for a list and check that it is empty - QStringList iaps; - mSubject->getAll(iaps); - QVERIFY(iaps.isEmpty()); -} - -void Ut_IAPConf::settingInvalidValueUnsetsKey() -{ - // Setup some IAP - setupIAP(); - - // Set invalid value to unset "wlan_wepdefkey" key and verify that the - // value is unset - mSubject->setValue("wlan_wepdefkey", QVariant()); - QVERIFY(!mSubject->value("wlan_wepdefkey").isValid()); -} - -QTEST_MAIN(Ut_IAPConf) - -#include "ut_iapconf.moc" diff --git a/src/3rdparty/libconninet/tests/ut_iapmonitor.cpp b/src/3rdparty/libconninet/tests/ut_iapmonitor.cpp deleted file mode 100644 index f14f623..0000000 --- a/src/3rdparty/libconninet/tests/ut_iapmonitor.cpp +++ /dev/null @@ -1,118 +0,0 @@ -/* - libconninet - Internet Connectivity support library - - Copyright (C) 2009-2010 Nokia Corporation. All rights reserved. - - Contact: Jukka Rissanen - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public License - version 2.1 as published by the Free Software Foundation. - - This library is distributed in the hope that it will be useful, but - WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA - 02110-1301 USA -*/ - - -#include -#include - -#include -#include - -static const char *iap_id = "test_monitor_1"; - -class TestIAPMonitor : public Maemo::IAPMonitor -{ -public: - QString addedIap; - QString removedIap; - -protected: - virtual void iapAdded(const QString &id) - { - addedIap = id; - } - - virtual void iapRemoved(const QString &id) - { - removedIap = id; - } -}; - -class Ut_IAPMonitor : public QObject -{ - Q_OBJECT - -private Q_SLOTS: - void init(); - void cleanup(); - void initTestCase(); - void cleanupTestCase(); - - void check(); - -private: - TestIAPMonitor *mon; - Maemo::IAPConf *iap; -}; - -void Ut_IAPMonitor::init() -{ - mon = new TestIAPMonitor; -} - -void Ut_IAPMonitor::cleanup() -{ - delete mon; - mon = 0; -} - -void Ut_IAPMonitor::initTestCase() -{ -} - -void Ut_IAPMonitor::cleanupTestCase() -{ -} - -void Ut_IAPMonitor::check() -{ - QVERIFY(mon->addedIap.isEmpty()); - - iap = new Maemo::IAPConf(iap_id); - iap->set("ipv4_type", "AUTO", - "wlan_wepkey1", "connt", - "wlan_wepdefkey", 1, - "wlan_ssid", QByteArray(iap_id)); - - QCoreApplication::processEvents(QEventLoop::AllEvents, 1000); - QVERIFY(mon->addedIap == iap_id); - mon->addedIap.clear(); - - QVERIFY(mon->removedIap.isEmpty()); - - // Unset only one value and verify that IAP is not removed - iap->set("ipv4_type", QVariant()); - QCoreApplication::processEvents(QEventLoop::AllEvents, 1000); - QVERIFY(mon->removedIap.isEmpty()); - - // Clear the whole IAP and check that it is removed - iap->clear(); - delete iap; - - QCoreApplication::processEvents(QEventLoop::AllEvents, 1000); - - QVERIFY(mon->removedIap == iap_id); -} - -QTEST_MAIN(Ut_IAPMonitor) - -#include "ut_iapmonitor.moc" diff --git a/src/3rdparty/libconninet/tests/ut_maemo_icd.cpp b/src/3rdparty/libconninet/tests/ut_maemo_icd.cpp deleted file mode 100644 index 494829d..0000000 --- a/src/3rdparty/libconninet/tests/ut_maemo_icd.cpp +++ /dev/null @@ -1,274 +0,0 @@ -/* - * Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). - * All rights reserved. - * - * Contact: Jukka Rissanen - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public License - * version 2.1 as published by the Free Software Foundation. - * - * This library is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA - * 02110-1301 USA - */ - - -// !!!! -// !!!! NOTE: THESE TEST DO NOT REALLY WORK YET BECAUSE OF MISSING -// !!!! FUNCTIONALITY IN ICD2 STUB. YOU HAVE BEEN WARNED. -// !!!! - - -#include -#include -#include -#include -#include - -#include "maemo_icd.h" - -class Ut_MaemoIcd : public QObject -{ - Q_OBJECT - -private Q_SLOTS: - void init(); - void cleanup(); - void initTestCase(); - void cleanupTestCase(); - - void scan_req(); - void scan_cancel_req(); - void connect_req_default(); - void state_req_all(); - void state_req(); - void statistics_req_all(); - void statistics_req(); - void addrinfo_req_all(); - void addrinfo_req(); - -private: - void disconnect_req_default(); // this is currently not run - void connect_req_specific(); // this is currently not run - QProcess *icd_stub; - bool connect_iap(Maemo::IcdConnectResult &connect_result, - QString &result, - QString &error, - QString iap=QString()); -}; - - -QString create_error_str(Maemo::Icd &icd) -{ - return icd.error(); -} - - -void Ut_MaemoIcd::init() -{ - icd_stub = new QProcess(this); - icd_stub->setStandardOutputFile("/tmp/ut_maemo_icd.log"); - icd_stub->start("/usr/bin/icd2_stub.py"); - QTest::qWait(1000); - - // Set the statistics - QProcess dbus_send; - dbus_send.start("dbus-send --type=method_call --system " - "--dest=com.nokia.icd2 /com/nokia/icd2 " - "com.nokia.icd2.testing.set_statistics " - "uint32:1024 uint32:256"); - dbus_send.waitForFinished(); - -} - -void Ut_MaemoIcd::cleanup() -{ - icd_stub->terminate(); - icd_stub->waitForFinished(); -} - -void Ut_MaemoIcd::initTestCase() -{ -} - -void Ut_MaemoIcd::cleanupTestCase() -{ -} - -void Ut_MaemoIcd::scan_req() -{ - QList scanned; - QStringList scannedNetworkTypes; - QStringList networkTypesToScan; - QString error; - Maemo::Icd icd(ICD_SHORT_SCAN_TIMEOUT); - - scannedNetworkTypes = icd.scan(ICD_SCAN_REQUEST_ACTIVE, - networkTypesToScan, - scanned, - error); - QVERIFY(error.isEmpty()); - QCOMPARE(scanned.size(), 3); - QVERIFY(scannedNetworkTypes[0] == "WLAN_INFRA"); - QVERIFY(scannedNetworkTypes[1] == "DUN_GSM_PS"); -} - -void Ut_MaemoIcd::scan_cancel_req() -{ - Maemo::Icd icd; - icd.scanCancel(); - // Not much to verify here -} - -bool Ut_MaemoIcd::connect_iap(Maemo::IcdConnectResult &connect_result, - QString &result, - QString &error, - QString iap) -{ - icd_connection_flags flags = ICD_CONNECTION_FLAG_USER_EVENT; - bool st; - Maemo::Icd icd(ICD_SHORT_CONNECT_TIMEOUT); - - if (iap.isEmpty()) { - qDebug() << "connecting to default IAP"; - st = icd.connect(flags, connect_result); - } else { - qDebug() << "connecting to" << iap; - st = icd.connect(flags, iap, result); - } - - error = create_error_str(icd); - return st; -} - -void Ut_MaemoIcd::connect_req_default() -{ - Maemo::IcdConnectResult connect_result; - QString result, error; - bool st; - st = connect_iap(connect_result, result, error); - QVERIFY2(st, error.toAscii().data()); - result = connect_result.connect.network_id.data(); - qDebug() << result; -} - - -void Ut_MaemoIcd::disconnect_req_default() -{ - icd_connection_flags flags = ICD_CONNECTION_FLAG_USER_EVENT; - bool st; - Maemo::Icd icd(ICD_SHORT_CONNECT_TIMEOUT); - icd.disconnect(flags); -} - - -void Ut_MaemoIcd::connect_req_specific() -{ - Maemo::IcdConnectResult connect_result; - QString result; - QString error; - bool st; - st = connect_iap(connect_result, result, error, "wpa2gx2.osso.net"); - QVERIFY2(st, error.toAscii().data()); - qDebug() << result; -} - - -void Ut_MaemoIcd::state_req_all() -{ - QList state_results; - Maemo::Icd icd; - int sig; - sig = icd.state(state_results); - QVERIFY2(sig==1, create_error_str(icd).toAscii().data()); -} - - -void Ut_MaemoIcd::state_req() -{ - Maemo::IcdStateResult state_result; - Maemo::Icd icd; - int sig; - QString service_type, service_id; - QString network_type("WLAN_INFRA"); - QByteArray network_id("wpa2gx2.osso.net"); - sig = icd.state(service_type, 0, service_id, - network_type, (uint)0x17a1, network_id, - state_result); - QVERIFY2(sig==1, create_error_str(icd).toAscii().data()); -} - - -void Ut_MaemoIcd::statistics_req_all() -{ - QList stats_results; - Maemo::Icd icd; - int sig; - QString err; - sig = icd.statistics(stats_results); - err = create_error_str(icd); - if (!err.isEmpty()) - QVERIFY2(sig==1, err.toAscii().data()); - else - QCOMPARE(sig, 1); - - for(int i=0; i addr_results; - Maemo::Icd icd; - int sig; - sig = icd.addrinfo(addr_results); - QVERIFY2(sig==1, create_error_str(icd).toAscii().data()); -} - - -void Ut_MaemoIcd::addrinfo_req() -{ - Maemo::IcdAddressInfoResult addr_result; - Maemo::Icd icd; - int sig; - QString service_type, service_id; - QString network_type("WLAN_INFRA"); - QByteArray network_id("wpa2gx2.osso.net"); - sig = icd.addrinfo(service_type, 0, service_id, - network_type, (uint)0x17a1, network_id, - addr_result); - QVERIFY2(sig==1, create_error_str(icd).toAscii().data()); -} - - -QTEST_MAIN(Ut_MaemoIcd) - -#include "ut_maemo_icd.moc" diff --git a/src/3rdparty/libconninet/tests/ut_proxyconf.cpp b/src/3rdparty/libconninet/tests/ut_proxyconf.cpp deleted file mode 100644 index 1f407f0..0000000 --- a/src/3rdparty/libconninet/tests/ut_proxyconf.cpp +++ /dev/null @@ -1,400 +0,0 @@ -/* - libconninet - Internet Connectivity support library - - Copyright (C) 2010 Nokia Corporation. All rights reserved. - - Contact: Jukka Rissanen - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public License - version 2.1 as published by the Free Software Foundation. - - This library is distributed in the hope that it will be useful, but - WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA - 02110-1301 USA -*/ - - -#include -#include -#include -#include - -#include "../src/proxyconf.h" - -class Ut_ProxyConf : public QObject -{ - Q_OBJECT - -private Q_SLOTS: - void init(); - void cleanup(); - void initTestCase(); - void cleanupTestCase(); - - // tests without the factory - void proxy_ftp_no_factory_ok_auto(); - void proxy_ftp_no_factory_ok_manual(); - void proxy_http_no_factory_ok_manual(); - void proxy_https_no_factory_ok_manual(); - void proxy_socks_no_factory_ok_manual(); - void proxy_default_no_factory_ok_manual(); - - // tests using the factory - void proxy_ftp_factory_ok_auto(); - void proxy_ftp_factory_ok_manual(); - void proxy_http_factory_ok_manual(); - void proxy_https_factory_ok_manual(); - void proxy_socks_factory_ok_manual(); - void proxy_http_factory_ok_manual_clear(); - void proxy_default_factory_ok_manual(); - void proxy_http_factory_ok_manual_ignore_list(); - void proxy_default_factory_ok_manual_system(); - -private: - Maemo::ProxyConf *pc; -}; - - -void put(QString var, QString type, QString value) -{ - QProcess gconf; - if (value.isEmpty()) - gconf.start(QString("gconftool-2 -u /system/proxy/"+var)); - else - gconf.start(QString("gconftool-2 -s /system/proxy/"+var+" -t "+type+" "+value)); - gconf.waitForFinished(); -} - -void put_http(QString var, QString type, QString value) -{ - QProcess gconf; - if (value.isEmpty()) - gconf.start(QString("gconftool-2 -u /system/http_proxy/"+var)); - else - gconf.start(QString("gconftool-2 -s /system/http_proxy/"+var+" -t "+type+" "+value)); - gconf.waitForFinished(); -} - -void put_list(QString var, QString type, QList value) -{ - QProcess gconf; - QString values = "["; - foreach (QString str, value) - values = values + str + ","; - values.chop(1); - values = values + "]"; - - gconf.start(QString("gconftool-2 -s /system/http_proxy/"+var+" -t list --list-type="+type+" "+values)); - gconf.waitForFinished(); -} - - -void Ut_ProxyConf::init() -{ - put_http("host", "string", "my.proxy.com"); - put_http("port", "int", "8080"); - - QList list; - list.append("foo.bar.com"); - list.append("192.168.19.69"); - list.append("192.168.20.0/24"); - list.append("bar.foo.com"); - put_list("ignore_hosts", "string", list); - put_http("use_http_host", "boolean", "true"); - - put("mode", "string", "auto"); - put("autoconfig_url", "string", "http://foo.bar.com/autoconf"); - put("secure_host", "string", "secure_host.com"); - put("secure_port", "int", "112"); - - put("ftp_host", "string", "ftp.nuukia.com"); - put("ftp_port", "int", "2000"); - put("socks_host", "string", "socks.host.com"); - put("socks_port", "int", "10080"); - put("rtsp_host", "string", "rtsp.voice.com"); - put("rtsp_port", "int", "1554"); - - pc = new Maemo::ProxyConf(); -} - -void Ut_ProxyConf::cleanup() -{ - delete pc; - pc = 0; -} - -void Ut_ProxyConf::initTestCase() -{ -} - -void Ut_ProxyConf::cleanupTestCase() -{ -} - - -void Ut_ProxyConf::proxy_ftp_no_factory_ok_auto() -{ - QList nplist; - QNetworkProxyQuery query = QNetworkProxyQuery(QUrl("ftp://maps.google.com/")); - - nplist = pc->flush(query); - QVERIFY(nplist.length()==0); -} - - -void Ut_ProxyConf::proxy_ftp_no_factory_ok_manual() -{ - QList nplist; - QNetworkProxyQuery query = QNetworkProxyQuery(QUrl("ftp://maps.google.com/")); - - put("mode", "string", "manual"); - - nplist = pc->flush(query); - foreach (QNetworkProxy proxy, nplist) { - qDebug() << "proxy: " << proxy.hostName() << "port" << proxy.port(); - } - QVERIFY(nplist.length()==3); - QVERIFY(nplist.first().type() == QNetworkProxy::FtpCachingProxy); -} - - -void Ut_ProxyConf::proxy_http_no_factory_ok_manual() -{ - QList nplist; - QNetworkProxyQuery query = QNetworkProxyQuery(QUrl("http://maps.google.com/")); - - put("mode", "string", "manual"); - - nplist = pc->flush(query); - foreach (QNetworkProxy proxy, nplist) { - qDebug() << "proxy: " << proxy.hostName() << "port" << proxy.port(); - } - QVERIFY(nplist.length()==3); - QVERIFY(nplist.first().type() == QNetworkProxy::HttpProxy); -} - - -void Ut_ProxyConf::proxy_https_no_factory_ok_manual() -{ - QList nplist; - QNetworkProxyQuery query = QNetworkProxyQuery(QUrl("https://maps.google.com/")); - - put("mode", "string", "manual"); - - nplist = pc->flush(query); - foreach (QNetworkProxy proxy, nplist) { - qDebug() << "proxy: " << proxy.hostName() << "port" << proxy.port(); - } - QVERIFY(nplist.length()==2); - QVERIFY(nplist.first().type() == QNetworkProxy::HttpProxy); -} - - -void Ut_ProxyConf::proxy_socks_no_factory_ok_manual() -{ - QList nplist; - QNetworkProxyQuery query = QNetworkProxyQuery(QUrl("http://maps.google.com/")); - - put("mode", "string", "manual"); - put_http("host", "string", ""); - - nplist = pc->flush(query); - foreach (QNetworkProxy proxy, nplist) { - qDebug() << "proxy: " << proxy.hostName() << "port" << proxy.port(); - } - QVERIFY(nplist.length()==2); - QVERIFY(nplist.first().type() == QNetworkProxy::Socks5Proxy); -} - - -void Ut_ProxyConf::proxy_default_no_factory_ok_manual() -{ - QList nplist; - QNetworkProxyQuery query = QNetworkProxyQuery(QUrl("foobar://maps.google.com/")); - - put("mode", "string", "manual"); - put("socks_host", "string", ""); - put("secure_host", "string", ""); - - nplist = pc->flush(query); - foreach (QNetworkProxy proxy, nplist) { - qDebug() << "proxy: " << proxy.hostName() << "port" << proxy.port(); - } - QVERIFY(nplist.length()==0); -} - - -void Ut_ProxyConf::proxy_ftp_factory_ok_auto() -{ - QNetworkProxyQuery query = QNetworkProxyQuery(QUrl("ftp://maps.google.com/")); - Maemo::ProxyConf::update(); - QList listOfProxies = QNetworkProxyFactory::proxyForQuery(query); - QVERIFY(listOfProxies.length()==1); - QVERIFY(listOfProxies.first().type() == QNetworkProxy::NoProxy); - Maemo::ProxyConf::clear(); -} - - -void Ut_ProxyConf::proxy_ftp_factory_ok_manual() -{ - QNetworkProxyQuery query = QNetworkProxyQuery(QUrl("ftp://maps.google.com/")); - Maemo::ProxyConf::update(); - - put("mode", "string", "manual"); - - QList listOfProxies = QNetworkProxyFactory::proxyForQuery(query); - - foreach (QNetworkProxy proxy, listOfProxies) { - qDebug() << "proxy: " << proxy.hostName() << "port" << proxy.port(); - } - QVERIFY(listOfProxies.length()==3); - QVERIFY(listOfProxies.first().type() == QNetworkProxy::FtpCachingProxy); - Maemo::ProxyConf::clear(); -} - - -void Ut_ProxyConf::proxy_http_factory_ok_manual() -{ - QNetworkProxyQuery query = QNetworkProxyQuery(QUrl("http://maps.google.com/")); - Maemo::ProxyConf::update(); - - put("mode", "string", "manual"); - - QList listOfProxies = QNetworkProxyFactory::proxyForQuery(query); - - foreach (QNetworkProxy proxy, listOfProxies) { - qDebug() << "proxy: " << proxy.hostName() << "port" << proxy.port(); - } - QVERIFY(listOfProxies.length()==3); - QVERIFY(listOfProxies.first().type() == QNetworkProxy::HttpProxy); - Maemo::ProxyConf::clear(); -} - - -void Ut_ProxyConf::proxy_https_factory_ok_manual() -{ - QNetworkProxyQuery query = QNetworkProxyQuery(QUrl("https://maps.google.com/")); - Maemo::ProxyConf::update(); - - put("mode", "string", "manual"); - - QList listOfProxies = QNetworkProxyFactory::proxyForQuery(query); - - foreach (QNetworkProxy proxy, listOfProxies) { - qDebug() << "proxy: " << proxy.hostName() << "port" << proxy.port(); - } - QVERIFY(listOfProxies.length()==2); - QVERIFY(listOfProxies.first().type() == QNetworkProxy::HttpProxy); - Maemo::ProxyConf::clear(); -} - - -void Ut_ProxyConf::proxy_socks_factory_ok_manual() -{ - QNetworkProxyQuery query = QNetworkProxyQuery(QUrl("http://maps.google.com/")); - Maemo::ProxyConf::update(); - - put("mode", "string", "manual"); - put_http("host", "string", ""); - - QList listOfProxies = QNetworkProxyFactory::proxyForQuery(query); - - foreach (QNetworkProxy proxy, listOfProxies) { - qDebug() << "proxy: " << proxy.hostName() << "port" << proxy.port(); - } - QVERIFY(listOfProxies.length()==2); - QVERIFY(listOfProxies.first().type() == QNetworkProxy::Socks5Proxy); - Maemo::ProxyConf::clear(); -} - - -void Ut_ProxyConf::proxy_http_factory_ok_manual_clear() -{ - QNetworkProxyQuery query = QNetworkProxyQuery(QUrl("http://maps.google.com/")); - Maemo::ProxyConf::update(); - - put("mode", "string", "manual"); - put_http("host", "string", "192.168.1.1"); - - QList listOfProxies = QNetworkProxyFactory::proxyForQuery(query); - - foreach (QNetworkProxy proxy, listOfProxies) { - qDebug() << "proxy: " << proxy.hostName() << "port" << proxy.port(); - } - QVERIFY(listOfProxies.length()==3); - QVERIFY(listOfProxies.first().type() == QNetworkProxy::HttpProxy); - - Maemo::ProxyConf::clear(); - listOfProxies = QNetworkProxyFactory::proxyForQuery(query); - QVERIFY(listOfProxies.length()==1); - QVERIFY(listOfProxies.first().type() == QNetworkProxy::NoProxy); -} - - -void Ut_ProxyConf::proxy_default_factory_ok_manual() -{ - QNetworkProxyQuery query = QNetworkProxyQuery(QUrl("foobar://maps.google.com/")); - Maemo::ProxyConf::update(); - - put("mode", "string", "manual"); - put("socks_host", "string", ""); - put("secure_host", "string", ""); - - QList listOfProxies = QNetworkProxyFactory::proxyForQuery(query); - - QVERIFY(listOfProxies.length()==1); - QVERIFY(listOfProxies.first().type() == QNetworkProxy::NoProxy); - Maemo::ProxyConf::clear(); -} - - -void Ut_ProxyConf::proxy_http_factory_ok_manual_ignore_list() -{ - QNetworkProxyQuery query = QNetworkProxyQuery(QUrl("http://192.168.19.70/")); - Maemo::ProxyConf::update(); - - put("mode", "string", "manual"); - - QList listOfProxies = QNetworkProxyFactory::proxyForQuery(query); - - foreach (QNetworkProxy proxy, listOfProxies) { - qDebug() << "proxy: " << proxy.hostName() << "port" << proxy.port(); - } - QVERIFY(listOfProxies.length()==3); - QVERIFY(listOfProxies.first().type() == QNetworkProxy::HttpProxy); - - query = QNetworkProxyQuery(QUrl("http://192.168.20.10/")); - listOfProxies = QNetworkProxyFactory::proxyForQuery(query); - QVERIFY(listOfProxies.length()==1); - QVERIFY(listOfProxies.first().type() == QNetworkProxy::NoProxy); - Maemo::ProxyConf::clear(); -} - - -void Ut_ProxyConf::proxy_default_factory_ok_manual_system() -{ - QNetworkProxyQuery query = QNetworkProxyQuery(QUrl("http://maps.google.com/")); - Maemo::ProxyConf::update(); - - put("mode", "string", "manual"); - - QList listOfProxies = QNetworkProxyFactory::systemProxyForQuery(query); - - QVERIFY(listOfProxies.length()==1); - QVERIFY(listOfProxies.first().type() == QNetworkProxy::NoProxy); - Maemo::ProxyConf::clear(); -} - - - - -QTEST_MAIN(Ut_ProxyConf) - -#include "ut_proxyconf.moc" -- cgit v0.12 From ab11576ca4987c7da9fcffb9cab286c1b227b74d Mon Sep 17 00:00:00 2001 From: Aaron McCarthy Date: Thu, 12 Aug 2010 14:49:35 +1000 Subject: Add version 0.42 of libconninet. Minor update. Fixes infinite loops. --- src/3rdparty/libconninet/AUTHORS | 0 src/3rdparty/libconninet/COPYING | 510 ++++++ src/3rdparty/libconninet/ChangeLog | 0 src/3rdparty/libconninet/INSTALL | 229 +++ src/3rdparty/libconninet/NEWS | 0 src/3rdparty/libconninet/README | 0 src/3rdparty/libconninet/autogen.sh | 3 + src/3rdparty/libconninet/config.guess | 1533 ++++++++++++++++++ src/3rdparty/libconninet/config.sub | 1693 ++++++++++++++++++++ src/3rdparty/libconninet/configure.ac | 90 ++ src/3rdparty/libconninet/conninet.pc.in | 11 + src/3rdparty/libconninet/debian/changelog | 293 ++++ src/3rdparty/libconninet/debian/compat | 1 + src/3rdparty/libconninet/debian/control | 39 + src/3rdparty/libconninet/debian/copyright | 19 + .../libconninet/debian/libconninet0-dev.dirs | 2 + .../libconninet/debian/libconninet0-dev.files | 4 + src/3rdparty/libconninet/debian/libconninet0.dirs | 1 + src/3rdparty/libconninet/debian/libconninet0.files | 1 + src/3rdparty/libconninet/debian/rules | 123 ++ src/3rdparty/libconninet/doxygen.cfg.in | 1147 +++++++++++++ src/3rdparty/libconninet/src/dbusdispatcher.cpp | 611 +++++++ src/3rdparty/libconninet/src/dbusdispatcher.h | 91 ++ src/3rdparty/libconninet/src/iapconf.cpp | 299 ++++ src/3rdparty/libconninet/src/iapconf.h | 84 + src/3rdparty/libconninet/src/iapmonitor.cpp | 110 ++ src/3rdparty/libconninet/src/iapmonitor.h | 48 + src/3rdparty/libconninet/src/maemo_icd.cpp | 1316 +++++++++++++++ src/3rdparty/libconninet/src/maemo_icd.h | 182 +++ src/3rdparty/libconninet/src/proxyconf.cpp | 315 ++++ src/3rdparty/libconninet/src/proxyconf.h | 53 + .../libconninet/tests/ut_dbusdispatcher.cpp | 191 +++ src/3rdparty/libconninet/tests/ut_iapconf.cpp | 186 +++ src/3rdparty/libconninet/tests/ut_iapmonitor.cpp | 118 ++ src/3rdparty/libconninet/tests/ut_maemo_icd.cpp | 274 ++++ src/3rdparty/libconninet/tests/ut_proxyconf.cpp | 400 +++++ 36 files changed, 9977 insertions(+) create mode 100644 src/3rdparty/libconninet/AUTHORS create mode 100644 src/3rdparty/libconninet/COPYING create mode 100644 src/3rdparty/libconninet/ChangeLog create mode 100644 src/3rdparty/libconninet/INSTALL create mode 100644 src/3rdparty/libconninet/NEWS create mode 100644 src/3rdparty/libconninet/README create mode 100755 src/3rdparty/libconninet/autogen.sh create mode 100755 src/3rdparty/libconninet/config.guess create mode 100755 src/3rdparty/libconninet/config.sub create mode 100644 src/3rdparty/libconninet/configure.ac create mode 100644 src/3rdparty/libconninet/conninet.pc.in create mode 100644 src/3rdparty/libconninet/debian/changelog create mode 100644 src/3rdparty/libconninet/debian/compat create mode 100644 src/3rdparty/libconninet/debian/control create mode 100644 src/3rdparty/libconninet/debian/copyright create mode 100644 src/3rdparty/libconninet/debian/libconninet0-dev.dirs create mode 100644 src/3rdparty/libconninet/debian/libconninet0-dev.files create mode 100644 src/3rdparty/libconninet/debian/libconninet0.dirs create mode 100644 src/3rdparty/libconninet/debian/libconninet0.files create mode 100755 src/3rdparty/libconninet/debian/rules create mode 100644 src/3rdparty/libconninet/doxygen.cfg.in create mode 100644 src/3rdparty/libconninet/src/dbusdispatcher.cpp create mode 100644 src/3rdparty/libconninet/src/dbusdispatcher.h create mode 100644 src/3rdparty/libconninet/src/iapconf.cpp create mode 100644 src/3rdparty/libconninet/src/iapconf.h create mode 100644 src/3rdparty/libconninet/src/iapmonitor.cpp create mode 100644 src/3rdparty/libconninet/src/iapmonitor.h create mode 100644 src/3rdparty/libconninet/src/maemo_icd.cpp create mode 100644 src/3rdparty/libconninet/src/maemo_icd.h create mode 100644 src/3rdparty/libconninet/src/proxyconf.cpp create mode 100644 src/3rdparty/libconninet/src/proxyconf.h create mode 100644 src/3rdparty/libconninet/tests/ut_dbusdispatcher.cpp create mode 100644 src/3rdparty/libconninet/tests/ut_iapconf.cpp create mode 100644 src/3rdparty/libconninet/tests/ut_iapmonitor.cpp create mode 100644 src/3rdparty/libconninet/tests/ut_maemo_icd.cpp create mode 100644 src/3rdparty/libconninet/tests/ut_proxyconf.cpp diff --git a/src/3rdparty/libconninet/AUTHORS b/src/3rdparty/libconninet/AUTHORS new file mode 100644 index 0000000..e69de29 diff --git a/src/3rdparty/libconninet/COPYING b/src/3rdparty/libconninet/COPYING new file mode 100644 index 0000000..b124cf5 --- /dev/null +++ b/src/3rdparty/libconninet/COPYING @@ -0,0 +1,510 @@ + + GNU LESSER GENERAL PUBLIC LICENSE + Version 2.1, February 1999 + + Copyright (C) 1991, 1999 Free Software Foundation, Inc. + 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + +[This is the first released version of the Lesser GPL. It also counts + as the successor of the GNU Library Public License, version 2, hence + the version number 2.1.] + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +Licenses are intended to guarantee your freedom to share and change +free software--to make sure the software is free for all its users. + + This license, the Lesser General Public License, applies to some +specially designated software packages--typically libraries--of the +Free Software Foundation and other authors who decide to use it. You +can use it too, but we suggest you first think carefully about whether +this license or the ordinary General Public License is the better +strategy to use in any particular case, based on the explanations +below. + + When we speak of free software, we are referring to freedom of use, +not price. Our General Public Licenses are designed to make sure that +you have the freedom to distribute copies of free software (and charge +for this service if you wish); that you receive source code or can get +it if you want it; that you can change the software and use pieces of +it in new free programs; and that you are informed that you can do +these things. + + To protect your rights, we need to make restrictions that forbid +distributors to deny you these rights or to ask you to surrender these +rights. These restrictions translate to certain responsibilities for +you if you distribute copies of the library or if you modify it. + + For example, if you distribute copies of the library, whether gratis +or for a fee, you must give the recipients all the rights that we gave +you. You must make sure that they, too, receive or can get the source +code. If you link other code with the library, you must provide +complete object files to the recipients, so that they can relink them +with the library after making changes to the library and recompiling +it. And you must show them these terms so they know their rights. + + We protect your rights with a two-step method: (1) we copyright the +library, and (2) we offer you this license, which gives you legal +permission to copy, distribute and/or modify the library. + + To protect each distributor, we want to make it very clear that +there is no warranty for the free library. Also, if the library is +modified by someone else and passed on, the recipients should know +that what they have is not the original version, so that the original +author's reputation will not be affected by problems that might be +introduced by others. + + Finally, software patents pose a constant threat to the existence of +any free program. We wish to make sure that a company cannot +effectively restrict the users of a free program by obtaining a +restrictive license from a patent holder. Therefore, we insist that +any patent license obtained for a version of the library must be +consistent with the full freedom of use specified in this license. + + Most GNU software, including some libraries, is covered by the +ordinary GNU General Public License. This license, the GNU Lesser +General Public License, applies to certain designated libraries, and +is quite different from the ordinary General Public License. We use +this license for certain libraries in order to permit linking those +libraries into non-free programs. + + When a program is linked with a library, whether statically or using +a shared library, the combination of the two is legally speaking a +combined work, a derivative of the original library. The ordinary +General Public License therefore permits such linking only if the +entire combination fits its criteria of freedom. The Lesser General +Public License permits more lax criteria for linking other code with +the library. + + We call this license the "Lesser" General Public License because it +does Less to protect the user's freedom than the ordinary General +Public License. It also provides other free software developers Less +of an advantage over competing non-free programs. These disadvantages +are the reason we use the ordinary General Public License for many +libraries. However, the Lesser license provides advantages in certain +special circumstances. + + For example, on rare occasions, there may be a special need to +encourage the widest possible use of a certain library, so that it +becomes a de-facto standard. To achieve this, non-free programs must +be allowed to use the library. A more frequent case is that a free +library does the same job as widely used non-free libraries. In this +case, there is little to gain by limiting the free library to free +software only, so we use the Lesser General Public License. + + In other cases, permission to use a particular library in non-free +programs enables a greater number of people to use a large body of +free software. For example, permission to use the GNU C Library in +non-free programs enables many more people to use the whole GNU +operating system, as well as its variant, the GNU/Linux operating +system. + + Although the Lesser General Public License is Less protective of the +users' freedom, it does ensure that the user of a program that is +linked with the Library has the freedom and the wherewithal to run +that program using a modified version of the Library. + + The precise terms and conditions for copying, distribution and +modification follow. Pay close attention to the difference between a +"work based on the library" and a "work that uses the library". The +former contains code derived from the library, whereas the latter must +be combined with the library in order to run. + + GNU LESSER GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License Agreement applies to any software library or other +program which contains a notice placed by the copyright holder or +other authorized party saying it may be distributed under the terms of +this Lesser General Public License (also called "this License"). +Each licensee is addressed as "you". + + A "library" means a collection of software functions and/or data +prepared so as to be conveniently linked with application programs +(which use some of those functions and data) to form executables. + + The "Library", below, refers to any such software library or work +which has been distributed under these terms. A "work based on the +Library" means either the Library or any derivative work under +copyright law: that is to say, a work containing the Library or a +portion of it, either verbatim or with modifications and/or translated +straightforwardly into another language. (Hereinafter, translation is +included without limitation in the term "modification".) + + "Source code" for a work means the preferred form of the work for +making modifications to it. For a library, complete source code means +all the source code for all modules it contains, plus any associated +interface definition files, plus the scripts used to control +compilation and installation of the library. + + Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running a program using the Library is not restricted, and output from +such a program is covered only if its contents constitute a work based +on the Library (independent of the use of the Library in a tool for +writing it). Whether that is true depends on what the Library does +and what the program that uses the Library does. + + 1. You may copy and distribute verbatim copies of the Library's +complete source code as you receive it, in any medium, provided that +you conspicuously and appropriately publish on each copy an +appropriate copyright notice and disclaimer of warranty; keep intact +all the notices that refer to this License and to the absence of any +warranty; and distribute a copy of this License along with the +Library. + + You may charge a fee for the physical act of transferring a copy, +and you may at your option offer warranty protection in exchange for a +fee. + + 2. You may modify your copy or copies of the Library or any portion +of it, thus forming a work based on the Library, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) The modified work must itself be a software library. + + b) You must cause the files modified to carry prominent notices + stating that you changed the files and the date of any change. + + c) You must cause the whole of the work to be licensed at no + charge to all third parties under the terms of this License. + + d) If a facility in the modified Library refers to a function or a + table of data to be supplied by an application program that uses + the facility, other than as an argument passed when the facility + is invoked, then you must make a good faith effort to ensure that, + in the event an application does not supply such function or + table, the facility still operates, and performs whatever part of + its purpose remains meaningful. + + (For example, a function in a library to compute square roots has + a purpose that is entirely well-defined independent of the + application. Therefore, Subsection 2d requires that any + application-supplied function or table used by this function must + be optional: if the application does not supply it, the square + root function must still compute square roots.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Library, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Library, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote +it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Library. + +In addition, mere aggregation of another work not based on the Library +with the Library (or with a work based on the Library) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may opt to apply the terms of the ordinary GNU General Public +License instead of this License to a given copy of the Library. To do +this, you must alter all the notices that refer to this License, so +that they refer to the ordinary GNU General Public License, version 2, +instead of to this License. (If a newer version than version 2 of the +ordinary GNU General Public License has appeared, then you can specify +that version instead if you wish.) Do not make any other change in +these notices. + + Once this change is made in a given copy, it is irreversible for +that copy, so the ordinary GNU General Public License applies to all +subsequent copies and derivative works made from that copy. + + This option is useful when you wish to copy part of the code of +the Library into a program that is not a library. + + 4. You may copy and distribute the Library (or a portion or +derivative of it, under Section 2) in object code or executable form +under the terms of Sections 1 and 2 above provided that you accompany +it with the complete corresponding machine-readable source code, which +must be distributed under the terms of Sections 1 and 2 above on a +medium customarily used for software interchange. + + If distribution of object code is made by offering access to copy +from a designated place, then offering equivalent access to copy the +source code from the same place satisfies the requirement to +distribute the source code, even though third parties are not +compelled to copy the source along with the object code. + + 5. A program that contains no derivative of any portion of the +Library, but is designed to work with the Library by being compiled or +linked with it, is called a "work that uses the Library". Such a +work, in isolation, is not a derivative work of the Library, and +therefore falls outside the scope of this License. + + However, linking a "work that uses the Library" with the Library +creates an executable that is a derivative of the Library (because it +contains portions of the Library), rather than a "work that uses the +library". The executable is therefore covered by this License. +Section 6 states terms for distribution of such executables. + + When a "work that uses the Library" uses material from a header file +that is part of the Library, the object code for the work may be a +derivative work of the Library even though the source code is not. +Whether this is true is especially significant if the work can be +linked without the Library, or if the work is itself a library. The +threshold for this to be true is not precisely defined by law. + + If such an object file uses only numerical parameters, data +structure layouts and accessors, and small macros and small inline +functions (ten lines or less in length), then the use of the object +file is unrestricted, regardless of whether it is legally a derivative +work. (Executables containing this object code plus portions of the +Library will still fall under Section 6.) + + Otherwise, if the work is a derivative of the Library, you may +distribute the object code for the work under the terms of Section 6. +Any executables containing that work also fall under Section 6, +whether or not they are linked directly with the Library itself. + + 6. As an exception to the Sections above, you may also combine or +link a "work that uses the Library" with the Library to produce a +work containing portions of the Library, and distribute that work +under terms of your choice, provided that the terms permit +modification of the work for the customer's own use and reverse +engineering for debugging such modifications. + + You must give prominent notice with each copy of the work that the +Library is used in it and that the Library and its use are covered by +this License. You must supply a copy of this License. If the work +during execution displays copyright notices, you must include the +copyright notice for the Library among them, as well as a reference +directing the user to the copy of this License. Also, you must do one +of these things: + + a) Accompany the work with the complete corresponding + machine-readable source code for the Library including whatever + changes were used in the work (which must be distributed under + Sections 1 and 2 above); and, if the work is an executable linked + with the Library, with the complete machine-readable "work that + uses the Library", as object code and/or source code, so that the + user can modify the Library and then relink to produce a modified + executable containing the modified Library. (It is understood + that the user who changes the contents of definitions files in the + Library will not necessarily be able to recompile the application + to use the modified definitions.) + + b) Use a suitable shared library mechanism for linking with the + Library. A suitable mechanism is one that (1) uses at run time a + copy of the library already present on the user's computer system, + rather than copying library functions into the executable, and (2) + will operate properly with a modified version of the library, if + the user installs one, as long as the modified version is + interface-compatible with the version that the work was made with. + + c) Accompany the work with a written offer, valid for at least + three years, to give the same user the materials specified in + Subsection 6a, above, for a charge no more than the cost of + performing this distribution. + + d) If distribution of the work is made by offering access to copy + from a designated place, offer equivalent access to copy the above + specified materials from the same place. + + e) Verify that the user has already received a copy of these + materials or that you have already sent this user a copy. + + For an executable, the required form of the "work that uses the +Library" must include any data and utility programs needed for +reproducing the executable from it. However, as a special exception, +the materials to be distributed need not include anything that is +normally distributed (in either source or binary form) with the major +components (compiler, kernel, and so on) of the operating system on +which the executable runs, unless that component itself accompanies +the executable. + + It may happen that this requirement contradicts the license +restrictions of other proprietary libraries that do not normally +accompany the operating system. Such a contradiction means you cannot +use both them and the Library together in an executable that you +distribute. + + 7. You may place library facilities that are a work based on the +Library side-by-side in a single library together with other library +facilities not covered by this License, and distribute such a combined +library, provided that the separate distribution of the work based on +the Library and of the other library facilities is otherwise +permitted, and provided that you do these two things: + + a) Accompany the combined library with a copy of the same work + based on the Library, uncombined with any other library + facilities. This must be distributed under the terms of the + Sections above. + + b) Give prominent notice with the combined library of the fact + that part of it is a work based on the Library, and explaining + where to find the accompanying uncombined form of the same work. + + 8. You may not copy, modify, sublicense, link with, or distribute +the Library except as expressly provided under this License. Any +attempt otherwise to copy, modify, sublicense, link with, or +distribute the Library is void, and will automatically terminate your +rights under this License. However, parties who have received copies, +or rights, from you under this License will not have their licenses +terminated so long as such parties remain in full compliance. + + 9. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Library or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Library (or any work based on the +Library), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Library or works based on it. + + 10. Each time you redistribute the Library (or any work based on the +Library), the recipient automatically receives a license from the +original licensor to copy, distribute, link with or modify the Library +subject to these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties with +this License. + + 11. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Library at all. For example, if a patent +license would not permit royalty-free redistribution of the Library by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Library. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply, and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 12. If the distribution and/or use of the Library is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Library under this License +may add an explicit geographical distribution limitation excluding those +countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 13. The Free Software Foundation may publish revised and/or new +versions of the Lesser General Public License from time to time. +Such new versions will be similar in spirit to the present version, +but may differ in detail to address new problems or concerns. + +Each version is given a distinguishing version number. If the Library +specifies a version number of this License which applies to it and +"any later version", you have the option of following the terms and +conditions either of that version or of any later version published by +the Free Software Foundation. If the Library does not specify a +license version number, you may choose any version ever published by +the Free Software Foundation. + + 14. If you wish to incorporate parts of the Library into other free +programs whose distribution conditions are incompatible with these, +write to the author to ask for permission. For software which is +copyrighted by the Free Software Foundation, write to the Free +Software Foundation; we sometimes make exceptions for this. Our +decision will be guided by the two goals of preserving the free status +of all derivatives of our free software and of promoting the sharing +and reuse of software generally. + + NO WARRANTY + + 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO +WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. +EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR +OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY +KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE +LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME +THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN +WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY +AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU +FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR +CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE +LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING +RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A +FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF +SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Libraries + + If you develop a new library, and you want it to be of the greatest +possible use to the public, we recommend making it free software that +everyone can redistribute and change. You can do so by permitting +redistribution under these terms (or, alternatively, under the terms +of the ordinary General Public License). + + To apply these terms, attach the following notices to the library. +It is safest to attach them to the start of each source file to most +effectively convey the exclusion of warranty; and each file should +have at least the "copyright" line and a pointer to where the full +notice is found. + + + + Copyright (C) + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + +Also add information on how to contact you by electronic and paper mail. + +You should also get your employer (if you work as a programmer) or +your school, if any, to sign a "copyright disclaimer" for the library, +if necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the + library `Frob' (a library for tweaking knobs) written by James + Random Hacker. + + , 1 April 1990 + Ty Coon, President of Vice + +That's all there is to it! + + diff --git a/src/3rdparty/libconninet/ChangeLog b/src/3rdparty/libconninet/ChangeLog new file mode 100644 index 0000000..e69de29 diff --git a/src/3rdparty/libconninet/INSTALL b/src/3rdparty/libconninet/INSTALL new file mode 100644 index 0000000..54caf7c --- /dev/null +++ b/src/3rdparty/libconninet/INSTALL @@ -0,0 +1,229 @@ +Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002 Free Software +Foundation, Inc. + + This file is free documentation; the Free Software Foundation gives +unlimited permission to copy, distribute and modify it. + +Basic Installation +================== + + These are generic installation instructions. + + The `configure' shell script attempts to guess correct values for +various system-dependent variables used during compilation. It uses +those values to create a `Makefile' in each directory of the package. +It may also create one or more `.h' files containing system-dependent +definitions. Finally, it creates a shell script `config.status' that +you can run in the future to recreate the current configuration, and a +file `config.log' containing compiler output (useful mainly for +debugging `configure'). + + It can also use an optional file (typically called `config.cache' +and enabled with `--cache-file=config.cache' or simply `-C') that saves +the results of its tests to speed up reconfiguring. (Caching is +disabled by default to prevent problems with accidental use of stale +cache files.) + + If you need to do unusual things to compile the package, please try +to figure out how `configure' could check whether to do them, and mail +diffs or instructions to the address given in the `README' so they can +be considered for the next release. If you are using the cache, and at +some point `config.cache' contains results you don't want to keep, you +may remove or edit it. + + The file `configure.ac' (or `configure.in') is used to create +`configure' by a program called `autoconf'. You only need +`configure.ac' if you want to change it or regenerate `configure' using +a newer version of `autoconf'. + +The simplest way to compile this package is: + + 1. `cd' to the directory containing the package's source code and type + `./configure' to configure the package for your system. If you're + using `csh' on an old version of System V, you might need to type + `sh ./configure' instead to prevent `csh' from trying to execute + `configure' itself. + + Running `configure' takes awhile. While running, it prints some + messages telling which features it is checking for. + + 2. Type `make' to compile the package. + + 3. Optionally, type `make check' to run any self-tests that come with + the package. + + 4. Type `make install' to install the programs and any data files and + documentation. + + 5. You can remove the program binaries and object files from the + source code directory by typing `make clean'. To also remove the + files that `configure' created (so you can compile the package for + a different kind of computer), type `make distclean'. There is + also a `make maintainer-clean' target, but that is intended mainly + for the package's developers. If you use it, you may have to get + all sorts of other programs in order to regenerate files that came + with the distribution. + +Compilers and Options +===================== + + Some systems require unusual options for compilation or linking that +the `configure' script does not know about. Run `./configure --help' +for details on some of the pertinent environment variables. + + You can give `configure' initial values for configuration parameters +by setting variables in the command line or in the environment. Here +is an example: + + ./configure CC=c89 CFLAGS=-O2 LIBS=-lposix + + *Note Defining Variables::, for more details. + +Compiling For Multiple Architectures +==================================== + + You can compile the package for more than one kind of computer at the +same time, by placing the object files for each architecture in their +own directory. To do this, you must use a version of `make' that +supports the `VPATH' variable, such as GNU `make'. `cd' to the +directory where you want the object files and executables to go and run +the `configure' script. `configure' automatically checks for the +source code in the directory that `configure' is in and in `..'. + + If you have to use a `make' that does not support the `VPATH' +variable, you have to compile the package for one architecture at a +time in the source code directory. After you have installed the +package for one architecture, use `make distclean' before reconfiguring +for another architecture. + +Installation Names +================== + + By default, `make install' will install the package's files in +`/usr/local/bin', `/usr/local/man', etc. You can specify an +installation prefix other than `/usr/local' by giving `configure' the +option `--prefix=PATH'. + + You can specify separate installation prefixes for +architecture-specific files and architecture-independent files. If you +give `configure' the option `--exec-prefix=PATH', the package will use +PATH as the prefix for installing programs and libraries. +Documentation and other data files will still use the regular prefix. + + In addition, if you use an unusual directory layout you can give +options like `--bindir=PATH' to specify different values for particular +kinds of files. Run `configure --help' for a list of the directories +you can set and what kinds of files go in them. + + If the package supports it, you can cause programs to be installed +with an extra prefix or suffix on their names by giving `configure' the +option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'. + +Optional Features +================= + + Some packages pay attention to `--enable-FEATURE' options to +`configure', where FEATURE indicates an optional part of the package. +They may also pay attention to `--with-PACKAGE' options, where PACKAGE +is something like `gnu-as' or `x' (for the X Window System). The +`README' should mention any `--enable-' and `--with-' options that the +package recognizes. + + For packages that use the X Window System, `configure' can usually +find the X include and library files automatically, but if it doesn't, +you can use the `configure' options `--x-includes=DIR' and +`--x-libraries=DIR' to specify their locations. + +Specifying the System Type +========================== + + There may be some features `configure' cannot figure out +automatically, but needs to determine by the type of machine the package +will run on. Usually, assuming the package is built to be run on the +_same_ architectures, `configure' can figure that out, but if it prints +a message saying it cannot guess the machine type, give it the +`--build=TYPE' option. TYPE can either be a short name for the system +type, such as `sun4', or a canonical name which has the form: + + CPU-COMPANY-SYSTEM + +where SYSTEM can have one of these forms: + + OS KERNEL-OS + + See the file `config.sub' for the possible values of each field. If +`config.sub' isn't included in this package, then this package doesn't +need to know the machine type. + + If you are _building_ compiler tools for cross-compiling, you should +use the `--target=TYPE' option to select the type of system they will +produce code for. + + If you want to _use_ a cross compiler, that generates code for a +platform different from the build platform, you should specify the +"host" platform (i.e., that on which the generated programs will +eventually be run) with `--host=TYPE'. + +Sharing Defaults +================ + + If you want to set default values for `configure' scripts to share, +you can create a site shell script called `config.site' that gives +default values for variables like `CC', `cache_file', and `prefix'. +`configure' looks for `PREFIX/share/config.site' if it exists, then +`PREFIX/etc/config.site' if it exists. Or, you can set the +`CONFIG_SITE' environment variable to the location of the site script. +A warning: not all `configure' scripts look for a site script. + +Defining Variables +================== + + Variables not defined in a site shell script can be set in the +environment passed to `configure'. However, some packages may run +configure again during the build, and the customized values of these +variables may be lost. In order to avoid this problem, you should set +them in the `configure' command line, using `VAR=value'. For example: + + ./configure CC=/usr/local2/bin/gcc + +will cause the specified gcc to be used as the C compiler (unless it is +overridden in the site shell script). + +`configure' Invocation +====================== + + `configure' recognizes the following options to control how it +operates. + +`--help' +`-h' + Print a summary of the options to `configure', and exit. + +`--version' +`-V' + Print the version of Autoconf used to generate the `configure' + script, and exit. + +`--cache-file=FILE' + Enable the cache: use and save the results of the tests in FILE, + traditionally `config.cache'. FILE defaults to `/dev/null' to + disable caching. + +`--config-cache' +`-C' + Alias for `--cache-file=config.cache'. + +`--quiet' +`--silent' +`-q' + Do not print messages saying which checks are being made. To + suppress all normal output, redirect it to `/dev/null' (any error + messages will still be shown). + +`--srcdir=DIR' + Look for the package's source code in directory DIR. Usually + `configure' can determine that directory automatically. + +`configure' also accepts some other, not widely useful, options. Run +`configure --help' for more details. + diff --git a/src/3rdparty/libconninet/NEWS b/src/3rdparty/libconninet/NEWS new file mode 100644 index 0000000..e69de29 diff --git a/src/3rdparty/libconninet/README b/src/3rdparty/libconninet/README new file mode 100644 index 0000000..e69de29 diff --git a/src/3rdparty/libconninet/autogen.sh b/src/3rdparty/libconninet/autogen.sh new file mode 100755 index 0000000..a8fd885 --- /dev/null +++ b/src/3rdparty/libconninet/autogen.sh @@ -0,0 +1,3 @@ +#!/bin/sh + +autoreconf --verbose --install --force diff --git a/src/3rdparty/libconninet/config.guess b/src/3rdparty/libconninet/config.guess new file mode 100755 index 0000000..e3a2116 --- /dev/null +++ b/src/3rdparty/libconninet/config.guess @@ -0,0 +1,1533 @@ +#! /bin/sh +# Attempt to guess a canonical system name. +# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, +# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 +# Free Software Foundation, Inc. + +timestamp='2009-06-10' + +# This file is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA +# 02110-1301, USA. +# +# As a special exception to the GNU General Public License, if you +# distribute this file as part of a program that contains a +# configuration script generated by Autoconf, you may include it under +# the same distribution terms that you use for the rest of that program. + + +# Originally written by Per Bothner . +# Please send patches to . Submit a context +# diff and a properly formatted ChangeLog entry. +# +# This script attempts to guess a canonical system name similar to +# config.sub. If it succeeds, it prints the system name on stdout, and +# exits with 0. Otherwise, it exits with 1. +# +# The plan is that this can be called by configure scripts if you +# don't specify an explicit build system type. + +me=`echo "$0" | sed -e 's,.*/,,'` + +usage="\ +Usage: $0 [OPTION] + +Output the configuration name of the system \`$me' is run on. + +Operation modes: + -h, --help print this help, then exit + -t, --time-stamp print date of last modification, then exit + -v, --version print version number, then exit + +Report bugs and patches to ." + +version="\ +GNU config.guess ($timestamp) + +Originally written by Per Bothner. +Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, +2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. + +This is free software; see the source for copying conditions. There is NO +warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." + +help=" +Try \`$me --help' for more information." + +# Parse command line +while test $# -gt 0 ; do + case $1 in + --time-stamp | --time* | -t ) + echo "$timestamp" ; exit ;; + --version | -v ) + echo "$version" ; exit ;; + --help | --h* | -h ) + echo "$usage"; exit ;; + -- ) # Stop option processing + shift; break ;; + - ) # Use stdin as input. + break ;; + -* ) + echo "$me: invalid option $1$help" >&2 + exit 1 ;; + * ) + break ;; + esac +done + +if test $# != 0; then + echo "$me: too many arguments$help" >&2 + exit 1 +fi + +trap 'exit 1' 1 2 15 + +# CC_FOR_BUILD -- compiler used by this script. Note that the use of a +# compiler to aid in system detection is discouraged as it requires +# temporary files to be created and, as you can see below, it is a +# headache to deal with in a portable fashion. + +# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still +# use `HOST_CC' if defined, but it is deprecated. + +# Portable tmp directory creation inspired by the Autoconf team. + +set_cc_for_build=' +trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; +trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; +: ${TMPDIR=/tmp} ; + { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || + { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || + { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || + { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; +dummy=$tmp/dummy ; +tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; +case $CC_FOR_BUILD,$HOST_CC,$CC in + ,,) echo "int x;" > $dummy.c ; + for c in cc gcc c89 c99 ; do + if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then + CC_FOR_BUILD="$c"; break ; + fi ; + done ; + if test x"$CC_FOR_BUILD" = x ; then + CC_FOR_BUILD=no_compiler_found ; + fi + ;; + ,,*) CC_FOR_BUILD=$CC ;; + ,*,*) CC_FOR_BUILD=$HOST_CC ;; +esac ; set_cc_for_build= ;' + +# This is needed to find uname on a Pyramid OSx when run in the BSD universe. +# (ghazi@noc.rutgers.edu 1994-08-24) +if (test -f /.attbin/uname) >/dev/null 2>&1 ; then + PATH=$PATH:/.attbin ; export PATH +fi + +UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown +UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown +UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown +UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown + +# Note: order is significant - the case branches are not exclusive. + +case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in + *:NetBSD:*:*) + # NetBSD (nbsd) targets should (where applicable) match one or + # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*, + # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently + # switched to ELF, *-*-netbsd* would select the old + # object file format. This provides both forward + # compatibility and a consistent mechanism for selecting the + # object file format. + # + # Note: NetBSD doesn't particularly care about the vendor + # portion of the name. We always set it to "unknown". + sysctl="sysctl -n hw.machine_arch" + UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \ + /usr/sbin/$sysctl 2>/dev/null || echo unknown)` + case "${UNAME_MACHINE_ARCH}" in + armeb) machine=armeb-unknown ;; + arm*) machine=arm-unknown ;; + sh3el) machine=shl-unknown ;; + sh3eb) machine=sh-unknown ;; + sh5el) machine=sh5le-unknown ;; + *) machine=${UNAME_MACHINE_ARCH}-unknown ;; + esac + # The Operating System including object format, if it has switched + # to ELF recently, or will in the future. + case "${UNAME_MACHINE_ARCH}" in + arm*|i386|m68k|ns32k|sh3*|sparc|vax) + eval $set_cc_for_build + if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ + | grep -q __ELF__ + then + # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). + # Return netbsd for either. FIX? + os=netbsd + else + os=netbsdelf + fi + ;; + *) + os=netbsd + ;; + esac + # The OS release + # Debian GNU/NetBSD machines have a different userland, and + # thus, need a distinct triplet. However, they do not need + # kernel version information, so it can be replaced with a + # suitable tag, in the style of linux-gnu. + case "${UNAME_VERSION}" in + Debian*) + release='-gnu' + ;; + *) + release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` + ;; + esac + # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: + # contains redundant information, the shorter form: + # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. + echo "${machine}-${os}${release}" + exit ;; + *:OpenBSD:*:*) + UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` + echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} + exit ;; + *:ekkoBSD:*:*) + echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} + exit ;; + *:SolidBSD:*:*) + echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE} + exit ;; + macppc:MirBSD:*:*) + echo powerpc-unknown-mirbsd${UNAME_RELEASE} + exit ;; + *:MirBSD:*:*) + echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} + exit ;; + alpha:OSF1:*:*) + case $UNAME_RELEASE in + *4.0) + UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` + ;; + *5.*) + UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` + ;; + esac + # According to Compaq, /usr/sbin/psrinfo has been available on + # OSF/1 and Tru64 systems produced since 1995. I hope that + # covers most systems running today. This code pipes the CPU + # types through head -n 1, so we only detect the type of CPU 0. + ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` + case "$ALPHA_CPU_TYPE" in + "EV4 (21064)") + UNAME_MACHINE="alpha" ;; + "EV4.5 (21064)") + UNAME_MACHINE="alpha" ;; + "LCA4 (21066/21068)") + UNAME_MACHINE="alpha" ;; + "EV5 (21164)") + UNAME_MACHINE="alphaev5" ;; + "EV5.6 (21164A)") + UNAME_MACHINE="alphaev56" ;; + "EV5.6 (21164PC)") + UNAME_MACHINE="alphapca56" ;; + "EV5.7 (21164PC)") + UNAME_MACHINE="alphapca57" ;; + "EV6 (21264)") + UNAME_MACHINE="alphaev6" ;; + "EV6.7 (21264A)") + UNAME_MACHINE="alphaev67" ;; + "EV6.8CB (21264C)") + UNAME_MACHINE="alphaev68" ;; + "EV6.8AL (21264B)") + UNAME_MACHINE="alphaev68" ;; + "EV6.8CX (21264D)") + UNAME_MACHINE="alphaev68" ;; + "EV6.9A (21264/EV69A)") + UNAME_MACHINE="alphaev69" ;; + "EV7 (21364)") + UNAME_MACHINE="alphaev7" ;; + "EV7.9 (21364A)") + UNAME_MACHINE="alphaev79" ;; + esac + # A Pn.n version is a patched version. + # A Vn.n version is a released version. + # A Tn.n version is a released field test version. + # A Xn.n version is an unreleased experimental baselevel. + # 1.2 uses "1.2" for uname -r. + echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` + exit ;; + Alpha\ *:Windows_NT*:*) + # How do we know it's Interix rather than the generic POSIX subsystem? + # Should we change UNAME_MACHINE based on the output of uname instead + # of the specific Alpha model? + echo alpha-pc-interix + exit ;; + 21064:Windows_NT:50:3) + echo alpha-dec-winnt3.5 + exit ;; + Amiga*:UNIX_System_V:4.0:*) + echo m68k-unknown-sysv4 + exit ;; + *:[Aa]miga[Oo][Ss]:*:*) + echo ${UNAME_MACHINE}-unknown-amigaos + exit ;; + *:[Mm]orph[Oo][Ss]:*:*) + echo ${UNAME_MACHINE}-unknown-morphos + exit ;; + *:OS/390:*:*) + echo i370-ibm-openedition + exit ;; + *:z/VM:*:*) + echo s390-ibm-zvmoe + exit ;; + *:OS400:*:*) + echo powerpc-ibm-os400 + exit ;; + arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) + echo arm-acorn-riscix${UNAME_RELEASE} + exit ;; + arm:riscos:*:*|arm:RISCOS:*:*) + echo arm-unknown-riscos + exit ;; + SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) + echo hppa1.1-hitachi-hiuxmpp + exit ;; + Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) + # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. + if test "`(/bin/universe) 2>/dev/null`" = att ; then + echo pyramid-pyramid-sysv3 + else + echo pyramid-pyramid-bsd + fi + exit ;; + NILE*:*:*:dcosx) + echo pyramid-pyramid-svr4 + exit ;; + DRS?6000:unix:4.0:6*) + echo sparc-icl-nx6 + exit ;; + DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) + case `/usr/bin/uname -p` in + sparc) echo sparc-icl-nx7; exit ;; + esac ;; + s390x:SunOS:*:*) + echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit ;; + sun4H:SunOS:5.*:*) + echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit ;; + sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) + echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit ;; + i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) + eval $set_cc_for_build + SUN_ARCH="i386" + # If there is a compiler, see if it is configured for 64-bit objects. + # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. + # This test works for both compilers. + if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then + if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ + (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ + grep IS_64BIT_ARCH >/dev/null + then + SUN_ARCH="x86_64" + fi + fi + echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit ;; + sun4*:SunOS:6*:*) + # According to config.sub, this is the proper way to canonicalize + # SunOS6. Hard to guess exactly what SunOS6 will be like, but + # it's likely to be more like Solaris than SunOS4. + echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit ;; + sun4*:SunOS:*:*) + case "`/usr/bin/arch -k`" in + Series*|S4*) + UNAME_RELEASE=`uname -v` + ;; + esac + # Japanese Language versions have a version number like `4.1.3-JL'. + echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` + exit ;; + sun3*:SunOS:*:*) + echo m68k-sun-sunos${UNAME_RELEASE} + exit ;; + sun*:*:4.2BSD:*) + UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` + test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 + case "`/bin/arch`" in + sun3) + echo m68k-sun-sunos${UNAME_RELEASE} + ;; + sun4) + echo sparc-sun-sunos${UNAME_RELEASE} + ;; + esac + exit ;; + aushp:SunOS:*:*) + echo sparc-auspex-sunos${UNAME_RELEASE} + exit ;; + # The situation for MiNT is a little confusing. The machine name + # can be virtually everything (everything which is not + # "atarist" or "atariste" at least should have a processor + # > m68000). The system name ranges from "MiNT" over "FreeMiNT" + # to the lowercase version "mint" (or "freemint"). Finally + # the system name "TOS" denotes a system which is actually not + # MiNT. But MiNT is downward compatible to TOS, so this should + # be no problem. + atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) + echo m68k-atari-mint${UNAME_RELEASE} + exit ;; + atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) + echo m68k-atari-mint${UNAME_RELEASE} + exit ;; + *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) + echo m68k-atari-mint${UNAME_RELEASE} + exit ;; + milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) + echo m68k-milan-mint${UNAME_RELEASE} + exit ;; + hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) + echo m68k-hades-mint${UNAME_RELEASE} + exit ;; + *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) + echo m68k-unknown-mint${UNAME_RELEASE} + exit ;; + m68k:machten:*:*) + echo m68k-apple-machten${UNAME_RELEASE} + exit ;; + powerpc:machten:*:*) + echo powerpc-apple-machten${UNAME_RELEASE} + exit ;; + RISC*:Mach:*:*) + echo mips-dec-mach_bsd4.3 + exit ;; + RISC*:ULTRIX:*:*) + echo mips-dec-ultrix${UNAME_RELEASE} + exit ;; + VAX*:ULTRIX*:*:*) + echo vax-dec-ultrix${UNAME_RELEASE} + exit ;; + 2020:CLIX:*:* | 2430:CLIX:*:*) + echo clipper-intergraph-clix${UNAME_RELEASE} + exit ;; + mips:*:*:UMIPS | mips:*:*:RISCos) + eval $set_cc_for_build + sed 's/^ //' << EOF >$dummy.c +#ifdef __cplusplus +#include /* for printf() prototype */ + int main (int argc, char *argv[]) { +#else + int main (argc, argv) int argc; char *argv[]; { +#endif + #if defined (host_mips) && defined (MIPSEB) + #if defined (SYSTYPE_SYSV) + printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); + #endif + #if defined (SYSTYPE_SVR4) + printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); + #endif + #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) + printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); + #endif + #endif + exit (-1); + } +EOF + $CC_FOR_BUILD -o $dummy $dummy.c && + dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` && + SYSTEM_NAME=`$dummy $dummyarg` && + { echo "$SYSTEM_NAME"; exit; } + echo mips-mips-riscos${UNAME_RELEASE} + exit ;; + Motorola:PowerMAX_OS:*:*) + echo powerpc-motorola-powermax + exit ;; + Motorola:*:4.3:PL8-*) + echo powerpc-harris-powermax + exit ;; + Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) + echo powerpc-harris-powermax + exit ;; + Night_Hawk:Power_UNIX:*:*) + echo powerpc-harris-powerunix + exit ;; + m88k:CX/UX:7*:*) + echo m88k-harris-cxux7 + exit ;; + m88k:*:4*:R4*) + echo m88k-motorola-sysv4 + exit ;; + m88k:*:3*:R3*) + echo m88k-motorola-sysv3 + exit ;; + AViiON:dgux:*:*) + # DG/UX returns AViiON for all architectures + UNAME_PROCESSOR=`/usr/bin/uname -p` + if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] + then + if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ + [ ${TARGET_BINARY_INTERFACE}x = x ] + then + echo m88k-dg-dgux${UNAME_RELEASE} + else + echo m88k-dg-dguxbcs${UNAME_RELEASE} + fi + else + echo i586-dg-dgux${UNAME_RELEASE} + fi + exit ;; + M88*:DolphinOS:*:*) # DolphinOS (SVR3) + echo m88k-dolphin-sysv3 + exit ;; + M88*:*:R3*:*) + # Delta 88k system running SVR3 + echo m88k-motorola-sysv3 + exit ;; + XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) + echo m88k-tektronix-sysv3 + exit ;; + Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) + echo m68k-tektronix-bsd + exit ;; + *:IRIX*:*:*) + echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` + exit ;; + ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. + echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id + exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' + i*86:AIX:*:*) + echo i386-ibm-aix + exit ;; + ia64:AIX:*:*) + if [ -x /usr/bin/oslevel ] ; then + IBM_REV=`/usr/bin/oslevel` + else + IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} + fi + echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} + exit ;; + *:AIX:2:3) + if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then + eval $set_cc_for_build + sed 's/^ //' << EOF >$dummy.c + #include + + main() + { + if (!__power_pc()) + exit(1); + puts("powerpc-ibm-aix3.2.5"); + exit(0); + } +EOF + if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` + then + echo "$SYSTEM_NAME" + else + echo rs6000-ibm-aix3.2.5 + fi + elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then + echo rs6000-ibm-aix3.2.4 + else + echo rs6000-ibm-aix3.2 + fi + exit ;; + *:AIX:*:[456]) + IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` + if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then + IBM_ARCH=rs6000 + else + IBM_ARCH=powerpc + fi + if [ -x /usr/bin/oslevel ] ; then + IBM_REV=`/usr/bin/oslevel` + else + IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} + fi + echo ${IBM_ARCH}-ibm-aix${IBM_REV} + exit ;; + *:AIX:*:*) + echo rs6000-ibm-aix + exit ;; + ibmrt:4.4BSD:*|romp-ibm:BSD:*) + echo romp-ibm-bsd4.4 + exit ;; + ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and + echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to + exit ;; # report: romp-ibm BSD 4.3 + *:BOSX:*:*) + echo rs6000-bull-bosx + exit ;; + DPX/2?00:B.O.S.:*:*) + echo m68k-bull-sysv3 + exit ;; + 9000/[34]??:4.3bsd:1.*:*) + echo m68k-hp-bsd + exit ;; + hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) + echo m68k-hp-bsd4.4 + exit ;; + 9000/[34678]??:HP-UX:*:*) + HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` + case "${UNAME_MACHINE}" in + 9000/31? ) HP_ARCH=m68000 ;; + 9000/[34]?? ) HP_ARCH=m68k ;; + 9000/[678][0-9][0-9]) + if [ -x /usr/bin/getconf ]; then + sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` + sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` + case "${sc_cpu_version}" in + 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 + 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 + 532) # CPU_PA_RISC2_0 + case "${sc_kernel_bits}" in + 32) HP_ARCH="hppa2.0n" ;; + 64) HP_ARCH="hppa2.0w" ;; + '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 + esac ;; + esac + fi + if [ "${HP_ARCH}" = "" ]; then + eval $set_cc_for_build + sed 's/^ //' << EOF >$dummy.c + + #define _HPUX_SOURCE + #include + #include + + int main () + { + #if defined(_SC_KERNEL_BITS) + long bits = sysconf(_SC_KERNEL_BITS); + #endif + long cpu = sysconf (_SC_CPU_VERSION); + + switch (cpu) + { + case CPU_PA_RISC1_0: puts ("hppa1.0"); break; + case CPU_PA_RISC1_1: puts ("hppa1.1"); break; + case CPU_PA_RISC2_0: + #if defined(_SC_KERNEL_BITS) + switch (bits) + { + case 64: puts ("hppa2.0w"); break; + case 32: puts ("hppa2.0n"); break; + default: puts ("hppa2.0"); break; + } break; + #else /* !defined(_SC_KERNEL_BITS) */ + puts ("hppa2.0"); break; + #endif + default: puts ("hppa1.0"); break; + } + exit (0); + } +EOF + (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` + test -z "$HP_ARCH" && HP_ARCH=hppa + fi ;; + esac + if [ ${HP_ARCH} = "hppa2.0w" ] + then + eval $set_cc_for_build + + # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating + # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler + # generating 64-bit code. GNU and HP use different nomenclature: + # + # $ CC_FOR_BUILD=cc ./config.guess + # => hppa2.0w-hp-hpux11.23 + # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess + # => hppa64-hp-hpux11.23 + + if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | + grep -q __LP64__ + then + HP_ARCH="hppa2.0w" + else + HP_ARCH="hppa64" + fi + fi + echo ${HP_ARCH}-hp-hpux${HPUX_REV} + exit ;; + ia64:HP-UX:*:*) + HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` + echo ia64-hp-hpux${HPUX_REV} + exit ;; + 3050*:HI-UX:*:*) + eval $set_cc_for_build + sed 's/^ //' << EOF >$dummy.c + #include + int + main () + { + long cpu = sysconf (_SC_CPU_VERSION); + /* The order matters, because CPU_IS_HP_MC68K erroneously returns + true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct + results, however. */ + if (CPU_IS_PA_RISC (cpu)) + { + switch (cpu) + { + case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; + case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; + case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; + default: puts ("hppa-hitachi-hiuxwe2"); break; + } + } + else if (CPU_IS_HP_MC68K (cpu)) + puts ("m68k-hitachi-hiuxwe2"); + else puts ("unknown-hitachi-hiuxwe2"); + exit (0); + } +EOF + $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` && + { echo "$SYSTEM_NAME"; exit; } + echo unknown-hitachi-hiuxwe2 + exit ;; + 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) + echo hppa1.1-hp-bsd + exit ;; + 9000/8??:4.3bsd:*:*) + echo hppa1.0-hp-bsd + exit ;; + *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) + echo hppa1.0-hp-mpeix + exit ;; + hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) + echo hppa1.1-hp-osf + exit ;; + hp8??:OSF1:*:*) + echo hppa1.0-hp-osf + exit ;; + i*86:OSF1:*:*) + if [ -x /usr/sbin/sysversion ] ; then + echo ${UNAME_MACHINE}-unknown-osf1mk + else + echo ${UNAME_MACHINE}-unknown-osf1 + fi + exit ;; + parisc*:Lites*:*:*) + echo hppa1.1-hp-lites + exit ;; + C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) + echo c1-convex-bsd + exit ;; + C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) + if getsysinfo -f scalar_acc + then echo c32-convex-bsd + else echo c2-convex-bsd + fi + exit ;; + C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) + echo c34-convex-bsd + exit ;; + C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) + echo c38-convex-bsd + exit ;; + C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) + echo c4-convex-bsd + exit ;; + CRAY*Y-MP:*:*:*) + echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + exit ;; + CRAY*[A-Z]90:*:*:*) + echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ + | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ + -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ + -e 's/\.[^.]*$/.X/' + exit ;; + CRAY*TS:*:*:*) + echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + exit ;; + CRAY*T3E:*:*:*) + echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + exit ;; + CRAY*SV1:*:*:*) + echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + exit ;; + *:UNICOS/mp:*:*) + echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + exit ;; + F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) + FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` + FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` + FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` + echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" + exit ;; + 5000:UNIX_System_V:4.*:*) + FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` + FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` + echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" + exit ;; + i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) + echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} + exit ;; + sparc*:BSD/OS:*:*) + echo sparc-unknown-bsdi${UNAME_RELEASE} + exit ;; + *:BSD/OS:*:*) + echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} + exit ;; + *:FreeBSD:*:*) + case ${UNAME_MACHINE} in + pc98) + echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; + amd64) + echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; + *) + echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; + esac + exit ;; + i*:CYGWIN*:*) + echo ${UNAME_MACHINE}-pc-cygwin + exit ;; + *:MINGW*:*) + echo ${UNAME_MACHINE}-pc-mingw32 + exit ;; + i*:windows32*:*) + # uname -m includes "-pc" on this system. + echo ${UNAME_MACHINE}-mingw32 + exit ;; + i*:PW*:*) + echo ${UNAME_MACHINE}-pc-pw32 + exit ;; + *:Interix*:[3456]*) + case ${UNAME_MACHINE} in + x86) + echo i586-pc-interix${UNAME_RELEASE} + exit ;; + EM64T | authenticamd | genuineintel) + echo x86_64-unknown-interix${UNAME_RELEASE} + exit ;; + IA64) + echo ia64-unknown-interix${UNAME_RELEASE} + exit ;; + esac ;; + [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) + echo i${UNAME_MACHINE}-pc-mks + exit ;; + 8664:Windows_NT:*) + echo x86_64-pc-mks + exit ;; + i*:Windows_NT*:* | Pentium*:Windows_NT*:*) + # How do we know it's Interix rather than the generic POSIX subsystem? + # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we + # UNAME_MACHINE based on the output of uname instead of i386? + echo i586-pc-interix + exit ;; + i*:UWIN*:*) + echo ${UNAME_MACHINE}-pc-uwin + exit ;; + amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) + echo x86_64-unknown-cygwin + exit ;; + p*:CYGWIN*:*) + echo powerpcle-unknown-cygwin + exit ;; + prep*:SunOS:5.*:*) + echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit ;; + *:GNU:*:*) + # the GNU system + echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` + exit ;; + *:GNU/*:*:*) + # other systems with GNU libc and userland + echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu + exit ;; + i*86:Minix:*:*) + echo ${UNAME_MACHINE}-pc-minix + exit ;; + arm*:Linux:*:*) + eval $set_cc_for_build + if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ + | grep -q __ARM_EABI__ + then + echo ${UNAME_MACHINE}-unknown-linux-gnu + else + echo ${UNAME_MACHINE}-unknown-linux-gnueabi + fi + exit ;; + avr32*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; + cris:Linux:*:*) + echo cris-axis-linux-gnu + exit ;; + crisv32:Linux:*:*) + echo crisv32-axis-linux-gnu + exit ;; + frv:Linux:*:*) + echo frv-unknown-linux-gnu + exit ;; + ia64:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; + m32r*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; + m68*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; + mips:Linux:*:* | mips64:Linux:*:*) + eval $set_cc_for_build + sed 's/^ //' << EOF >$dummy.c + #undef CPU + #undef ${UNAME_MACHINE} + #undef ${UNAME_MACHINE}el + #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) + CPU=${UNAME_MACHINE}el + #else + #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) + CPU=${UNAME_MACHINE} + #else + CPU= + #endif + #endif +EOF + eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n ' + /^CPU/{ + s: ::g + p + }'`" + test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } + ;; + or32:Linux:*:*) + echo or32-unknown-linux-gnu + exit ;; + ppc:Linux:*:*) + echo powerpc-unknown-linux-gnu + exit ;; + ppc64:Linux:*:*) + echo powerpc64-unknown-linux-gnu + exit ;; + alpha:Linux:*:*) + case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in + EV5) UNAME_MACHINE=alphaev5 ;; + EV56) UNAME_MACHINE=alphaev56 ;; + PCA56) UNAME_MACHINE=alphapca56 ;; + PCA57) UNAME_MACHINE=alphapca56 ;; + EV6) UNAME_MACHINE=alphaev6 ;; + EV67) UNAME_MACHINE=alphaev67 ;; + EV68*) UNAME_MACHINE=alphaev68 ;; + esac + objdump --private-headers /bin/sh | grep -q ld.so.1 + if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi + echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} + exit ;; + padre:Linux:*:*) + echo sparc-unknown-linux-gnu + exit ;; + parisc:Linux:*:* | hppa:Linux:*:*) + # Look for CPU level + case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in + PA7*) echo hppa1.1-unknown-linux-gnu ;; + PA8*) echo hppa2.0-unknown-linux-gnu ;; + *) echo hppa-unknown-linux-gnu ;; + esac + exit ;; + parisc64:Linux:*:* | hppa64:Linux:*:*) + echo hppa64-unknown-linux-gnu + exit ;; + s390:Linux:*:* | s390x:Linux:*:*) + echo ${UNAME_MACHINE}-ibm-linux + exit ;; + sh64*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; + sh*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; + sparc:Linux:*:* | sparc64:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; + vax:Linux:*:*) + echo ${UNAME_MACHINE}-dec-linux-gnu + exit ;; + x86_64:Linux:*:*) + echo x86_64-unknown-linux-gnu + exit ;; + xtensa*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; + i*86:Linux:*:*) + # The BFD linker knows what the default object file format is, so + # first see if it will tell us. cd to the root directory to prevent + # problems with other programs or directories called `ld' in the path. + # Set LC_ALL=C to ensure ld outputs messages in English. + ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \ + | sed -ne '/supported targets:/!d + s/[ ][ ]*/ /g + s/.*supported targets: *// + s/ .*// + p'` + case "$ld_supported_targets" in + elf32-i386) + TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu" + ;; + esac + # Determine whether the default compiler is a.out or elf + eval $set_cc_for_build + sed 's/^ //' << EOF >$dummy.c + #include + #ifdef __ELF__ + # ifdef __GLIBC__ + # if __GLIBC__ >= 2 + LIBC=gnu + # else + LIBC=gnulibc1 + # endif + # else + LIBC=gnulibc1 + # endif + #else + #if defined(__INTEL_COMPILER) || defined(__PGI) || defined(__SUNPRO_C) || defined(__SUNPRO_CC) + LIBC=gnu + #else + LIBC=gnuaout + #endif + #endif + #ifdef __dietlibc__ + LIBC=dietlibc + #endif +EOF + eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n ' + /^LIBC/{ + s: ::g + p + }'`" + test x"${LIBC}" != x && { + echo "${UNAME_MACHINE}-pc-linux-${LIBC}" + exit + } + test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; } + ;; + i*86:DYNIX/ptx:4*:*) + # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. + # earlier versions are messed up and put the nodename in both + # sysname and nodename. + echo i386-sequent-sysv4 + exit ;; + i*86:UNIX_SV:4.2MP:2.*) + # Unixware is an offshoot of SVR4, but it has its own version + # number series starting with 2... + # I am not positive that other SVR4 systems won't match this, + # I just have to hope. -- rms. + # Use sysv4.2uw... so that sysv4* matches it. + echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} + exit ;; + i*86:OS/2:*:*) + # If we were able to find `uname', then EMX Unix compatibility + # is probably installed. + echo ${UNAME_MACHINE}-pc-os2-emx + exit ;; + i*86:XTS-300:*:STOP) + echo ${UNAME_MACHINE}-unknown-stop + exit ;; + i*86:atheos:*:*) + echo ${UNAME_MACHINE}-unknown-atheos + exit ;; + i*86:syllable:*:*) + echo ${UNAME_MACHINE}-pc-syllable + exit ;; + i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*) + echo i386-unknown-lynxos${UNAME_RELEASE} + exit ;; + i*86:*DOS:*:*) + echo ${UNAME_MACHINE}-pc-msdosdjgpp + exit ;; + i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) + UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` + if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then + echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} + else + echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} + fi + exit ;; + i*86:*:5:[678]*) + # UnixWare 7.x, OpenUNIX and OpenServer 6. + case `/bin/uname -X | grep "^Machine"` in + *486*) UNAME_MACHINE=i486 ;; + *Pentium) UNAME_MACHINE=i586 ;; + *Pent*|*Celeron) UNAME_MACHINE=i686 ;; + esac + echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} + exit ;; + i*86:*:3.2:*) + if test -f /usr/options/cb.name; then + UNAME_REL=`sed -n 's/.*Version //p' /dev/null >/dev/null ; then + UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` + (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 + (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ + && UNAME_MACHINE=i586 + (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ + && UNAME_MACHINE=i686 + (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ + && UNAME_MACHINE=i686 + echo ${UNAME_MACHINE}-pc-sco$UNAME_REL + else + echo ${UNAME_MACHINE}-pc-sysv32 + fi + exit ;; + pc:*:*:*) + # Left here for compatibility: + # uname -m prints for DJGPP always 'pc', but it prints nothing about + # the processor, so we play safe by assuming i586. + # Note: whatever this is, it MUST be the same as what config.sub + # prints for the "djgpp" host, or else GDB configury will decide that + # this is a cross-build. + echo i586-pc-msdosdjgpp + exit ;; + Intel:Mach:3*:*) + echo i386-pc-mach3 + exit ;; + paragon:*:*:*) + echo i860-intel-osf1 + exit ;; + i860:*:4.*:*) # i860-SVR4 + if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then + echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 + else # Add other i860-SVR4 vendors below as they are discovered. + echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 + fi + exit ;; + mini*:CTIX:SYS*5:*) + # "miniframe" + echo m68010-convergent-sysv + exit ;; + mc68k:UNIX:SYSTEM5:3.51m) + echo m68k-convergent-sysv + exit ;; + M680?0:D-NIX:5.3:*) + echo m68k-diab-dnix + exit ;; + M68*:*:R3V[5678]*:*) + test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; + 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0) + OS_REL='' + test -r /etc/.relid \ + && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` + /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ + && { echo i486-ncr-sysv4.3${OS_REL}; exit; } + /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ + && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; + 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) + /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ + && { echo i486-ncr-sysv4; exit; } ;; + NCR*:*:4.2:* | MPRAS*:*:4.2:*) + OS_REL='.3' + test -r /etc/.relid \ + && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` + /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ + && { echo i486-ncr-sysv4.3${OS_REL}; exit; } + /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ + && { echo i586-ncr-sysv4.3${OS_REL}; exit; } + /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \ + && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; + m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) + echo m68k-unknown-lynxos${UNAME_RELEASE} + exit ;; + mc68030:UNIX_System_V:4.*:*) + echo m68k-atari-sysv4 + exit ;; + TSUNAMI:LynxOS:2.*:*) + echo sparc-unknown-lynxos${UNAME_RELEASE} + exit ;; + rs6000:LynxOS:2.*:*) + echo rs6000-unknown-lynxos${UNAME_RELEASE} + exit ;; + PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*) + echo powerpc-unknown-lynxos${UNAME_RELEASE} + exit ;; + SM[BE]S:UNIX_SV:*:*) + echo mips-dde-sysv${UNAME_RELEASE} + exit ;; + RM*:ReliantUNIX-*:*:*) + echo mips-sni-sysv4 + exit ;; + RM*:SINIX-*:*:*) + echo mips-sni-sysv4 + exit ;; + *:SINIX-*:*:*) + if uname -p 2>/dev/null >/dev/null ; then + UNAME_MACHINE=`(uname -p) 2>/dev/null` + echo ${UNAME_MACHINE}-sni-sysv4 + else + echo ns32k-sni-sysv + fi + exit ;; + PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort + # says + echo i586-unisys-sysv4 + exit ;; + *:UNIX_System_V:4*:FTX*) + # From Gerald Hewes . + # How about differentiating between stratus architectures? -djm + echo hppa1.1-stratus-sysv4 + exit ;; + *:*:*:FTX*) + # From seanf@swdc.stratus.com. + echo i860-stratus-sysv4 + exit ;; + i*86:VOS:*:*) + # From Paul.Green@stratus.com. + echo ${UNAME_MACHINE}-stratus-vos + exit ;; + *:VOS:*:*) + # From Paul.Green@stratus.com. + echo hppa1.1-stratus-vos + exit ;; + mc68*:A/UX:*:*) + echo m68k-apple-aux${UNAME_RELEASE} + exit ;; + news*:NEWS-OS:6*:*) + echo mips-sony-newsos6 + exit ;; + R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) + if [ -d /usr/nec ]; then + echo mips-nec-sysv${UNAME_RELEASE} + else + echo mips-unknown-sysv${UNAME_RELEASE} + fi + exit ;; + BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. + echo powerpc-be-beos + exit ;; + BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. + echo powerpc-apple-beos + exit ;; + BePC:BeOS:*:*) # BeOS running on Intel PC compatible. + echo i586-pc-beos + exit ;; + BePC:Haiku:*:*) # Haiku running on Intel PC compatible. + echo i586-pc-haiku + exit ;; + SX-4:SUPER-UX:*:*) + echo sx4-nec-superux${UNAME_RELEASE} + exit ;; + SX-5:SUPER-UX:*:*) + echo sx5-nec-superux${UNAME_RELEASE} + exit ;; + SX-6:SUPER-UX:*:*) + echo sx6-nec-superux${UNAME_RELEASE} + exit ;; + SX-7:SUPER-UX:*:*) + echo sx7-nec-superux${UNAME_RELEASE} + exit ;; + SX-8:SUPER-UX:*:*) + echo sx8-nec-superux${UNAME_RELEASE} + exit ;; + SX-8R:SUPER-UX:*:*) + echo sx8r-nec-superux${UNAME_RELEASE} + exit ;; + Power*:Rhapsody:*:*) + echo powerpc-apple-rhapsody${UNAME_RELEASE} + exit ;; + *:Rhapsody:*:*) + echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} + exit ;; + *:Darwin:*:*) + UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown + case $UNAME_PROCESSOR in + unknown) UNAME_PROCESSOR=powerpc ;; + esac + echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} + exit ;; + *:procnto*:*:* | *:QNX:[0123456789]*:*) + UNAME_PROCESSOR=`uname -p` + if test "$UNAME_PROCESSOR" = "x86"; then + UNAME_PROCESSOR=i386 + UNAME_MACHINE=pc + fi + echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} + exit ;; + *:QNX:*:4*) + echo i386-pc-qnx + exit ;; + NSE-?:NONSTOP_KERNEL:*:*) + echo nse-tandem-nsk${UNAME_RELEASE} + exit ;; + NSR-?:NONSTOP_KERNEL:*:*) + echo nsr-tandem-nsk${UNAME_RELEASE} + exit ;; + *:NonStop-UX:*:*) + echo mips-compaq-nonstopux + exit ;; + BS2000:POSIX*:*:*) + echo bs2000-siemens-sysv + exit ;; + DS/*:UNIX_System_V:*:*) + echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} + exit ;; + *:Plan9:*:*) + # "uname -m" is not consistent, so use $cputype instead. 386 + # is converted to i386 for consistency with other x86 + # operating systems. + if test "$cputype" = "386"; then + UNAME_MACHINE=i386 + else + UNAME_MACHINE="$cputype" + fi + echo ${UNAME_MACHINE}-unknown-plan9 + exit ;; + *:TOPS-10:*:*) + echo pdp10-unknown-tops10 + exit ;; + *:TENEX:*:*) + echo pdp10-unknown-tenex + exit ;; + KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) + echo pdp10-dec-tops20 + exit ;; + XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) + echo pdp10-xkl-tops20 + exit ;; + *:TOPS-20:*:*) + echo pdp10-unknown-tops20 + exit ;; + *:ITS:*:*) + echo pdp10-unknown-its + exit ;; + SEI:*:*:SEIUX) + echo mips-sei-seiux${UNAME_RELEASE} + exit ;; + *:DragonFly:*:*) + echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` + exit ;; + *:*VMS:*:*) + UNAME_MACHINE=`(uname -p) 2>/dev/null` + case "${UNAME_MACHINE}" in + A*) echo alpha-dec-vms ; exit ;; + I*) echo ia64-dec-vms ; exit ;; + V*) echo vax-dec-vms ; exit ;; + esac ;; + *:XENIX:*:SysV) + echo i386-pc-xenix + exit ;; + i*86:skyos:*:*) + echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//' + exit ;; + i*86:rdos:*:*) + echo ${UNAME_MACHINE}-pc-rdos + exit ;; + i*86:AROS:*:*) + echo ${UNAME_MACHINE}-pc-aros + exit ;; +esac + +#echo '(No uname command or uname output not recognized.)' 1>&2 +#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 + +eval $set_cc_for_build +cat >$dummy.c < +# include +#endif +main () +{ +#if defined (sony) +#if defined (MIPSEB) + /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, + I don't know.... */ + printf ("mips-sony-bsd\n"); exit (0); +#else +#include + printf ("m68k-sony-newsos%s\n", +#ifdef NEWSOS4 + "4" +#else + "" +#endif + ); exit (0); +#endif +#endif + +#if defined (__arm) && defined (__acorn) && defined (__unix) + printf ("arm-acorn-riscix\n"); exit (0); +#endif + +#if defined (hp300) && !defined (hpux) + printf ("m68k-hp-bsd\n"); exit (0); +#endif + +#if defined (NeXT) +#if !defined (__ARCHITECTURE__) +#define __ARCHITECTURE__ "m68k" +#endif + int version; + version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; + if (version < 4) + printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); + else + printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); + exit (0); +#endif + +#if defined (MULTIMAX) || defined (n16) +#if defined (UMAXV) + printf ("ns32k-encore-sysv\n"); exit (0); +#else +#if defined (CMU) + printf ("ns32k-encore-mach\n"); exit (0); +#else + printf ("ns32k-encore-bsd\n"); exit (0); +#endif +#endif +#endif + +#if defined (__386BSD__) + printf ("i386-pc-bsd\n"); exit (0); +#endif + +#if defined (sequent) +#if defined (i386) + printf ("i386-sequent-dynix\n"); exit (0); +#endif +#if defined (ns32000) + printf ("ns32k-sequent-dynix\n"); exit (0); +#endif +#endif + +#if defined (_SEQUENT_) + struct utsname un; + + uname(&un); + + if (strncmp(un.version, "V2", 2) == 0) { + printf ("i386-sequent-ptx2\n"); exit (0); + } + if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ + printf ("i386-sequent-ptx1\n"); exit (0); + } + printf ("i386-sequent-ptx\n"); exit (0); + +#endif + +#if defined (vax) +# if !defined (ultrix) +# include +# if defined (BSD) +# if BSD == 43 + printf ("vax-dec-bsd4.3\n"); exit (0); +# else +# if BSD == 199006 + printf ("vax-dec-bsd4.3reno\n"); exit (0); +# else + printf ("vax-dec-bsd\n"); exit (0); +# endif +# endif +# else + printf ("vax-dec-bsd\n"); exit (0); +# endif +# else + printf ("vax-dec-ultrix\n"); exit (0); +# endif +#endif + +#if defined (alliant) && defined (i860) + printf ("i860-alliant-bsd\n"); exit (0); +#endif + + exit (1); +} +EOF + +$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` && + { echo "$SYSTEM_NAME"; exit; } + +# Apollos put the system type in the environment. + +test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; } + +# Convex versions that predate uname can use getsysinfo(1) + +if [ -x /usr/convex/getsysinfo ] +then + case `getsysinfo -f cpu_type` in + c1*) + echo c1-convex-bsd + exit ;; + c2*) + if getsysinfo -f scalar_acc + then echo c32-convex-bsd + else echo c2-convex-bsd + fi + exit ;; + c34*) + echo c34-convex-bsd + exit ;; + c38*) + echo c38-convex-bsd + exit ;; + c4*) + echo c4-convex-bsd + exit ;; + esac +fi + +cat >&2 < in order to provide the needed +information to handle your system. + +config.guess timestamp = $timestamp + +uname -m = `(uname -m) 2>/dev/null || echo unknown` +uname -r = `(uname -r) 2>/dev/null || echo unknown` +uname -s = `(uname -s) 2>/dev/null || echo unknown` +uname -v = `(uname -v) 2>/dev/null || echo unknown` + +/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` +/bin/uname -X = `(/bin/uname -X) 2>/dev/null` + +hostinfo = `(hostinfo) 2>/dev/null` +/bin/universe = `(/bin/universe) 2>/dev/null` +/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` +/bin/arch = `(/bin/arch) 2>/dev/null` +/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` +/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` + +UNAME_MACHINE = ${UNAME_MACHINE} +UNAME_RELEASE = ${UNAME_RELEASE} +UNAME_SYSTEM = ${UNAME_SYSTEM} +UNAME_VERSION = ${UNAME_VERSION} +EOF + +exit 1 + +# Local variables: +# eval: (add-hook 'write-file-hooks 'time-stamp) +# time-stamp-start: "timestamp='" +# time-stamp-format: "%:y-%02m-%02d" +# time-stamp-end: "'" +# End: diff --git a/src/3rdparty/libconninet/config.sub b/src/3rdparty/libconninet/config.sub new file mode 100755 index 0000000..eb0389a --- /dev/null +++ b/src/3rdparty/libconninet/config.sub @@ -0,0 +1,1693 @@ +#! /bin/sh +# Configuration validation subroutine script. +# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, +# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 +# Free Software Foundation, Inc. + +timestamp='2009-06-11' + +# This file is (in principle) common to ALL GNU software. +# The presence of a machine in this file suggests that SOME GNU software +# can handle that machine. It does not imply ALL GNU software can. +# +# This file is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA +# 02110-1301, USA. +# +# As a special exception to the GNU General Public License, if you +# distribute this file as part of a program that contains a +# configuration script generated by Autoconf, you may include it under +# the same distribution terms that you use for the rest of that program. + + +# Please send patches to . Submit a context +# diff and a properly formatted ChangeLog entry. +# +# Configuration subroutine to validate and canonicalize a configuration type. +# Supply the specified configuration type as an argument. +# If it is invalid, we print an error message on stderr and exit with code 1. +# Otherwise, we print the canonical config type on stdout and succeed. + +# This file is supposed to be the same for all GNU packages +# and recognize all the CPU types, system types and aliases +# that are meaningful with *any* GNU software. +# Each package is responsible for reporting which valid configurations +# it does not support. The user should be able to distinguish +# a failure to support a valid configuration from a meaningless +# configuration. + +# The goal of this file is to map all the various variations of a given +# machine specification into a single specification in the form: +# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM +# or in some cases, the newer four-part form: +# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM +# It is wrong to echo any other type of specification. + +me=`echo "$0" | sed -e 's,.*/,,'` + +usage="\ +Usage: $0 [OPTION] CPU-MFR-OPSYS + $0 [OPTION] ALIAS + +Canonicalize a configuration name. + +Operation modes: + -h, --help print this help, then exit + -t, --time-stamp print date of last modification, then exit + -v, --version print version number, then exit + +Report bugs and patches to ." + +version="\ +GNU config.sub ($timestamp) + +Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, +2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. + +This is free software; see the source for copying conditions. There is NO +warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." + +help=" +Try \`$me --help' for more information." + +# Parse command line +while test $# -gt 0 ; do + case $1 in + --time-stamp | --time* | -t ) + echo "$timestamp" ; exit ;; + --version | -v ) + echo "$version" ; exit ;; + --help | --h* | -h ) + echo "$usage"; exit ;; + -- ) # Stop option processing + shift; break ;; + - ) # Use stdin as input. + break ;; + -* ) + echo "$me: invalid option $1$help" + exit 1 ;; + + *local*) + # First pass through any local machine types. + echo $1 + exit ;; + + * ) + break ;; + esac +done + +case $# in + 0) echo "$me: missing argument$help" >&2 + exit 1;; + 1) ;; + *) echo "$me: too many arguments$help" >&2 + exit 1;; +esac + +# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). +# Here we must recognize all the valid KERNEL-OS combinations. +maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` +case $maybe_os in + nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \ + uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \ + kopensolaris*-gnu* | \ + storm-chaos* | os2-emx* | rtmk-nova*) + os=-$maybe_os + basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` + ;; + *) + basic_machine=`echo $1 | sed 's/-[^-]*$//'` + if [ $basic_machine != $1 ] + then os=`echo $1 | sed 's/.*-/-/'` + else os=; fi + ;; +esac + +### Let's recognize common machines as not being operating systems so +### that things like config.sub decstation-3100 work. We also +### recognize some manufacturers as not being operating systems, so we +### can provide default operating systems below. +case $os in + -sun*os*) + # Prevent following clause from handling this invalid input. + ;; + -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ + -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ + -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ + -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ + -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ + -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ + -apple | -axis | -knuth | -cray) + os= + basic_machine=$1 + ;; + -bluegene*) + os=-cnk + ;; + -sim | -cisco | -oki | -wec | -winbond) + os= + basic_machine=$1 + ;; + -scout) + ;; + -wrs) + os=-vxworks + basic_machine=$1 + ;; + -chorusos*) + os=-chorusos + basic_machine=$1 + ;; + -chorusrdb) + os=-chorusrdb + basic_machine=$1 + ;; + -hiux*) + os=-hiuxwe2 + ;; + -sco6) + os=-sco5v6 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -sco5) + os=-sco3.2v5 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -sco4) + os=-sco3.2v4 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -sco3.2.[4-9]*) + os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -sco3.2v[4-9]*) + # Don't forget version if it is 3.2v4 or newer. + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -sco5v6*) + # Don't forget version if it is 3.2v4 or newer. + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -sco*) + os=-sco3.2v2 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -udk*) + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -isc) + os=-isc2.2 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -clix*) + basic_machine=clipper-intergraph + ;; + -isc*) + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -lynx*) + os=-lynxos + ;; + -ptx*) + basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` + ;; + -windowsnt*) + os=`echo $os | sed -e 's/windowsnt/winnt/'` + ;; + -psos*) + os=-psos + ;; + -mint | -mint[0-9]*) + basic_machine=m68k-atari + os=-mint + ;; +esac + +# Decode aliases for certain CPU-COMPANY combinations. +case $basic_machine in + # Recognize the basic CPU types without company name. + # Some are omitted here because they have special meanings below. + 1750a | 580 \ + | a29k \ + | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ + | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ + | am33_2.0 \ + | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ + | bfin \ + | c4x | clipper \ + | d10v | d30v | dlx | dsp16xx \ + | fido | fr30 | frv \ + | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ + | i370 | i860 | i960 | ia64 \ + | ip2k | iq2000 \ + | lm32 \ + | m32c | m32r | m32rle | m68000 | m68k | m88k \ + | maxq | mb | microblaze | mcore | mep | metag \ + | mips | mipsbe | mipseb | mipsel | mipsle \ + | mips16 \ + | mips64 | mips64el \ + | mips64octeon | mips64octeonel \ + | mips64orion | mips64orionel \ + | mips64r5900 | mips64r5900el \ + | mips64vr | mips64vrel \ + | mips64vr4100 | mips64vr4100el \ + | mips64vr4300 | mips64vr4300el \ + | mips64vr5000 | mips64vr5000el \ + | mips64vr5900 | mips64vr5900el \ + | mipsisa32 | mipsisa32el \ + | mipsisa32r2 | mipsisa32r2el \ + | mipsisa64 | mipsisa64el \ + | mipsisa64r2 | mipsisa64r2el \ + | mipsisa64sb1 | mipsisa64sb1el \ + | mipsisa64sr71k | mipsisa64sr71kel \ + | mipstx39 | mipstx39el \ + | mn10200 | mn10300 \ + | moxie \ + | mt \ + | msp430 \ + | nios | nios2 \ + | ns16k | ns32k \ + | or32 \ + | pdp10 | pdp11 | pj | pjl \ + | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ + | pyramid \ + | score \ + | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ + | sh64 | sh64le \ + | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ + | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ + | spu | strongarm \ + | tahoe | thumb | tic4x | tic80 | tron \ + | v850 | v850e \ + | we32k \ + | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \ + | z8k | z80) + basic_machine=$basic_machine-unknown + ;; + m6811 | m68hc11 | m6812 | m68hc12) + # Motorola 68HC11/12. + basic_machine=$basic_machine-unknown + os=-none + ;; + m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) + ;; + ms1) + basic_machine=mt-unknown + ;; + + # We use `pc' rather than `unknown' + # because (1) that's what they normally are, and + # (2) the word "unknown" tends to confuse beginning users. + i*86 | x86_64) + basic_machine=$basic_machine-pc + ;; + # Object if more than one company name word. + *-*-*) + echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 + exit 1 + ;; + # Recognize the basic CPU types with company name. + 580-* \ + | a29k-* \ + | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ + | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ + | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ + | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ + | avr-* | avr32-* \ + | bfin-* | bs2000-* \ + | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \ + | clipper-* | craynv-* | cydra-* \ + | d10v-* | d30v-* | dlx-* \ + | elxsi-* \ + | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ + | h8300-* | h8500-* \ + | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ + | i*86-* | i860-* | i960-* | ia64-* \ + | ip2k-* | iq2000-* \ + | lm32-* \ + | m32c-* | m32r-* | m32rle-* \ + | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ + | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ + | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ + | mips16-* \ + | mips64-* | mips64el-* \ + | mips64octeon-* | mips64octeonel-* \ + | mips64orion-* | mips64orionel-* \ + | mips64r5900-* | mips64r5900el-* \ + | mips64vr-* | mips64vrel-* \ + | mips64vr4100-* | mips64vr4100el-* \ + | mips64vr4300-* | mips64vr4300el-* \ + | mips64vr5000-* | mips64vr5000el-* \ + | mips64vr5900-* | mips64vr5900el-* \ + | mipsisa32-* | mipsisa32el-* \ + | mipsisa32r2-* | mipsisa32r2el-* \ + | mipsisa64-* | mipsisa64el-* \ + | mipsisa64r2-* | mipsisa64r2el-* \ + | mipsisa64sb1-* | mipsisa64sb1el-* \ + | mipsisa64sr71k-* | mipsisa64sr71kel-* \ + | mipstx39-* | mipstx39el-* \ + | mmix-* \ + | mt-* \ + | msp430-* \ + | nios-* | nios2-* \ + | none-* | np1-* | ns16k-* | ns32k-* \ + | orion-* \ + | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ + | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ + | pyramid-* \ + | romp-* | rs6000-* \ + | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ + | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ + | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ + | sparclite-* \ + | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \ + | tahoe-* | thumb-* \ + | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* | tile-* \ + | tron-* \ + | v850-* | v850e-* | vax-* \ + | we32k-* \ + | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \ + | xstormy16-* | xtensa*-* \ + | ymp-* \ + | z8k-* | z80-*) + ;; + # Recognize the basic CPU types without company name, with glob match. + xtensa*) + basic_machine=$basic_machine-unknown + ;; + # Recognize the various machine names and aliases which stand + # for a CPU type and a company and sometimes even an OS. + 386bsd) + basic_machine=i386-unknown + os=-bsd + ;; + 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) + basic_machine=m68000-att + ;; + 3b*) + basic_machine=we32k-att + ;; + a29khif) + basic_machine=a29k-amd + os=-udi + ;; + abacus) + basic_machine=abacus-unknown + ;; + adobe68k) + basic_machine=m68010-adobe + os=-scout + ;; + alliant | fx80) + basic_machine=fx80-alliant + ;; + altos | altos3068) + basic_machine=m68k-altos + ;; + am29k) + basic_machine=a29k-none + os=-bsd + ;; + amd64) + basic_machine=x86_64-pc + ;; + amd64-*) + basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + amdahl) + basic_machine=580-amdahl + os=-sysv + ;; + amiga | amiga-*) + basic_machine=m68k-unknown + ;; + amigaos | amigados) + basic_machine=m68k-unknown + os=-amigaos + ;; + amigaunix | amix) + basic_machine=m68k-unknown + os=-sysv4 + ;; + apollo68) + basic_machine=m68k-apollo + os=-sysv + ;; + apollo68bsd) + basic_machine=m68k-apollo + os=-bsd + ;; + aros) + basic_machine=i386-pc + os=-aros + ;; + aux) + basic_machine=m68k-apple + os=-aux + ;; + balance) + basic_machine=ns32k-sequent + os=-dynix + ;; + blackfin) + basic_machine=bfin-unknown + os=-linux + ;; + blackfin-*) + basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` + os=-linux + ;; + bluegene*) + basic_machine=powerpc-ibm + os=-cnk + ;; + c90) + basic_machine=c90-cray + os=-unicos + ;; + cegcc) + basic_machine=arm-unknown + os=-cegcc + ;; + convex-c1) + basic_machine=c1-convex + os=-bsd + ;; + convex-c2) + basic_machine=c2-convex + os=-bsd + ;; + convex-c32) + basic_machine=c32-convex + os=-bsd + ;; + convex-c34) + basic_machine=c34-convex + os=-bsd + ;; + convex-c38) + basic_machine=c38-convex + os=-bsd + ;; + cray | j90) + basic_machine=j90-cray + os=-unicos + ;; + craynv) + basic_machine=craynv-cray + os=-unicosmp + ;; + cr16) + basic_machine=cr16-unknown + os=-elf + ;; + crds | unos) + basic_machine=m68k-crds + ;; + crisv32 | crisv32-* | etraxfs*) + basic_machine=crisv32-axis + ;; + cris | cris-* | etrax*) + basic_machine=cris-axis + ;; + crx) + basic_machine=crx-unknown + os=-elf + ;; + da30 | da30-*) + basic_machine=m68k-da30 + ;; + decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) + basic_machine=mips-dec + ;; + decsystem10* | dec10*) + basic_machine=pdp10-dec + os=-tops10 + ;; + decsystem20* | dec20*) + basic_machine=pdp10-dec + os=-tops20 + ;; + delta | 3300 | motorola-3300 | motorola-delta \ + | 3300-motorola | delta-motorola) + basic_machine=m68k-motorola + ;; + delta88) + basic_machine=m88k-motorola + os=-sysv3 + ;; + dicos) + basic_machine=i686-pc + os=-dicos + ;; + djgpp) + basic_machine=i586-pc + os=-msdosdjgpp + ;; + dpx20 | dpx20-*) + basic_machine=rs6000-bull + os=-bosx + ;; + dpx2* | dpx2*-bull) + basic_machine=m68k-bull + os=-sysv3 + ;; + ebmon29k) + basic_machine=a29k-amd + os=-ebmon + ;; + elxsi) + basic_machine=elxsi-elxsi + os=-bsd + ;; + encore | umax | mmax) + basic_machine=ns32k-encore + ;; + es1800 | OSE68k | ose68k | ose | OSE) + basic_machine=m68k-ericsson + os=-ose + ;; + fx2800) + basic_machine=i860-alliant + ;; + genix) + basic_machine=ns32k-ns + ;; + gmicro) + basic_machine=tron-gmicro + os=-sysv + ;; + go32) + basic_machine=i386-pc + os=-go32 + ;; + h3050r* | hiux*) + basic_machine=hppa1.1-hitachi + os=-hiuxwe2 + ;; + h8300hms) + basic_machine=h8300-hitachi + os=-hms + ;; + h8300xray) + basic_machine=h8300-hitachi + os=-xray + ;; + h8500hms) + basic_machine=h8500-hitachi + os=-hms + ;; + harris) + basic_machine=m88k-harris + os=-sysv3 + ;; + hp300-*) + basic_machine=m68k-hp + ;; + hp300bsd) + basic_machine=m68k-hp + os=-bsd + ;; + hp300hpux) + basic_machine=m68k-hp + os=-hpux + ;; + hp3k9[0-9][0-9] | hp9[0-9][0-9]) + basic_machine=hppa1.0-hp + ;; + hp9k2[0-9][0-9] | hp9k31[0-9]) + basic_machine=m68000-hp + ;; + hp9k3[2-9][0-9]) + basic_machine=m68k-hp + ;; + hp9k6[0-9][0-9] | hp6[0-9][0-9]) + basic_machine=hppa1.0-hp + ;; + hp9k7[0-79][0-9] | hp7[0-79][0-9]) + basic_machine=hppa1.1-hp + ;; + hp9k78[0-9] | hp78[0-9]) + # FIXME: really hppa2.0-hp + basic_machine=hppa1.1-hp + ;; + hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) + # FIXME: really hppa2.0-hp + basic_machine=hppa1.1-hp + ;; + hp9k8[0-9][13679] | hp8[0-9][13679]) + basic_machine=hppa1.1-hp + ;; + hp9k8[0-9][0-9] | hp8[0-9][0-9]) + basic_machine=hppa1.0-hp + ;; + hppa-next) + os=-nextstep3 + ;; + hppaosf) + basic_machine=hppa1.1-hp + os=-osf + ;; + hppro) + basic_machine=hppa1.1-hp + os=-proelf + ;; + i370-ibm* | ibm*) + basic_machine=i370-ibm + ;; +# I'm not sure what "Sysv32" means. Should this be sysv3.2? + i*86v32) + basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` + os=-sysv32 + ;; + i*86v4*) + basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` + os=-sysv4 + ;; + i*86v) + basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` + os=-sysv + ;; + i*86sol2) + basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` + os=-solaris2 + ;; + i386mach) + basic_machine=i386-mach + os=-mach + ;; + i386-vsta | vsta) + basic_machine=i386-unknown + os=-vsta + ;; + iris | iris4d) + basic_machine=mips-sgi + case $os in + -irix*) + ;; + *) + os=-irix4 + ;; + esac + ;; + isi68 | isi) + basic_machine=m68k-isi + os=-sysv + ;; + m68knommu) + basic_machine=m68k-unknown + os=-linux + ;; + m68knommu-*) + basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` + os=-linux + ;; + m88k-omron*) + basic_machine=m88k-omron + ;; + magnum | m3230) + basic_machine=mips-mips + os=-sysv + ;; + merlin) + basic_machine=ns32k-utek + os=-sysv + ;; + mingw32) + basic_machine=i386-pc + os=-mingw32 + ;; + mingw32ce) + basic_machine=arm-unknown + os=-mingw32ce + ;; + miniframe) + basic_machine=m68000-convergent + ;; + *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) + basic_machine=m68k-atari + os=-mint + ;; + mips3*-*) + basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` + ;; + mips3*) + basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown + ;; + monitor) + basic_machine=m68k-rom68k + os=-coff + ;; + morphos) + basic_machine=powerpc-unknown + os=-morphos + ;; + msdos) + basic_machine=i386-pc + os=-msdos + ;; + ms1-*) + basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` + ;; + mvs) + basic_machine=i370-ibm + os=-mvs + ;; + ncr3000) + basic_machine=i486-ncr + os=-sysv4 + ;; + netbsd386) + basic_machine=i386-unknown + os=-netbsd + ;; + netwinder) + basic_machine=armv4l-rebel + os=-linux + ;; + news | news700 | news800 | news900) + basic_machine=m68k-sony + os=-newsos + ;; + news1000) + basic_machine=m68030-sony + os=-newsos + ;; + news-3600 | risc-news) + basic_machine=mips-sony + os=-newsos + ;; + necv70) + basic_machine=v70-nec + os=-sysv + ;; + next | m*-next ) + basic_machine=m68k-next + case $os in + -nextstep* ) + ;; + -ns2*) + os=-nextstep2 + ;; + *) + os=-nextstep3 + ;; + esac + ;; + nh3000) + basic_machine=m68k-harris + os=-cxux + ;; + nh[45]000) + basic_machine=m88k-harris + os=-cxux + ;; + nindy960) + basic_machine=i960-intel + os=-nindy + ;; + mon960) + basic_machine=i960-intel + os=-mon960 + ;; + nonstopux) + basic_machine=mips-compaq + os=-nonstopux + ;; + np1) + basic_machine=np1-gould + ;; + nsr-tandem) + basic_machine=nsr-tandem + ;; + op50n-* | op60c-*) + basic_machine=hppa1.1-oki + os=-proelf + ;; + openrisc | openrisc-*) + basic_machine=or32-unknown + ;; + os400) + basic_machine=powerpc-ibm + os=-os400 + ;; + OSE68000 | ose68000) + basic_machine=m68000-ericsson + os=-ose + ;; + os68k) + basic_machine=m68k-none + os=-os68k + ;; + pa-hitachi) + basic_machine=hppa1.1-hitachi + os=-hiuxwe2 + ;; + paragon) + basic_machine=i860-intel + os=-osf + ;; + parisc) + basic_machine=hppa-unknown + os=-linux + ;; + parisc-*) + basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` + os=-linux + ;; + pbd) + basic_machine=sparc-tti + ;; + pbb) + basic_machine=m68k-tti + ;; + pc532 | pc532-*) + basic_machine=ns32k-pc532 + ;; + pc98) + basic_machine=i386-pc + ;; + pc98-*) + basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + pentium | p5 | k5 | k6 | nexgen | viac3) + basic_machine=i586-pc + ;; + pentiumpro | p6 | 6x86 | athlon | athlon_*) + basic_machine=i686-pc + ;; + pentiumii | pentium2 | pentiumiii | pentium3) + basic_machine=i686-pc + ;; + pentium4) + basic_machine=i786-pc + ;; + pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) + basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + pentiumpro-* | p6-* | 6x86-* | athlon-*) + basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) + basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + pentium4-*) + basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + pn) + basic_machine=pn-gould + ;; + power) basic_machine=power-ibm + ;; + ppc) basic_machine=powerpc-unknown + ;; + ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + ppcle | powerpclittle | ppc-le | powerpc-little) + basic_machine=powerpcle-unknown + ;; + ppcle-* | powerpclittle-*) + basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + ppc64) basic_machine=powerpc64-unknown + ;; + ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + ppc64le | powerpc64little | ppc64-le | powerpc64-little) + basic_machine=powerpc64le-unknown + ;; + ppc64le-* | powerpc64little-*) + basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + ps2) + basic_machine=i386-ibm + ;; + pw32) + basic_machine=i586-unknown + os=-pw32 + ;; + rdos) + basic_machine=i386-pc + os=-rdos + ;; + rom68k) + basic_machine=m68k-rom68k + os=-coff + ;; + rm[46]00) + basic_machine=mips-siemens + ;; + rtpc | rtpc-*) + basic_machine=romp-ibm + ;; + s390 | s390-*) + basic_machine=s390-ibm + ;; + s390x | s390x-*) + basic_machine=s390x-ibm + ;; + sa29200) + basic_machine=a29k-amd + os=-udi + ;; + sb1) + basic_machine=mipsisa64sb1-unknown + ;; + sb1el) + basic_machine=mipsisa64sb1el-unknown + ;; + sde) + basic_machine=mipsisa32-sde + os=-elf + ;; + sei) + basic_machine=mips-sei + os=-seiux + ;; + sequent) + basic_machine=i386-sequent + ;; + sh) + basic_machine=sh-hitachi + os=-hms + ;; + sh5el) + basic_machine=sh5le-unknown + ;; + sh64) + basic_machine=sh64-unknown + ;; + sparclite-wrs | simso-wrs) + basic_machine=sparclite-wrs + os=-vxworks + ;; + sps7) + basic_machine=m68k-bull + os=-sysv2 + ;; + spur) + basic_machine=spur-unknown + ;; + st2000) + basic_machine=m68k-tandem + ;; + stratus) + basic_machine=i860-stratus + os=-sysv4 + ;; + sun2) + basic_machine=m68000-sun + ;; + sun2os3) + basic_machine=m68000-sun + os=-sunos3 + ;; + sun2os4) + basic_machine=m68000-sun + os=-sunos4 + ;; + sun3os3) + basic_machine=m68k-sun + os=-sunos3 + ;; + sun3os4) + basic_machine=m68k-sun + os=-sunos4 + ;; + sun4os3) + basic_machine=sparc-sun + os=-sunos3 + ;; + sun4os4) + basic_machine=sparc-sun + os=-sunos4 + ;; + sun4sol2) + basic_machine=sparc-sun + os=-solaris2 + ;; + sun3 | sun3-*) + basic_machine=m68k-sun + ;; + sun4) + basic_machine=sparc-sun + ;; + sun386 | sun386i | roadrunner) + basic_machine=i386-sun + ;; + sv1) + basic_machine=sv1-cray + os=-unicos + ;; + symmetry) + basic_machine=i386-sequent + os=-dynix + ;; + t3e) + basic_machine=alphaev5-cray + os=-unicos + ;; + t90) + basic_machine=t90-cray + os=-unicos + ;; + tic54x | c54x*) + basic_machine=tic54x-unknown + os=-coff + ;; + tic55x | c55x*) + basic_machine=tic55x-unknown + os=-coff + ;; + tic6x | c6x*) + basic_machine=tic6x-unknown + os=-coff + ;; + tile*) + basic_machine=tile-unknown + os=-linux-gnu + ;; + tx39) + basic_machine=mipstx39-unknown + ;; + tx39el) + basic_machine=mipstx39el-unknown + ;; + toad1) + basic_machine=pdp10-xkl + os=-tops20 + ;; + tower | tower-32) + basic_machine=m68k-ncr + ;; + tpf) + basic_machine=s390x-ibm + os=-tpf + ;; + udi29k) + basic_machine=a29k-amd + os=-udi + ;; + ultra3) + basic_machine=a29k-nyu + os=-sym1 + ;; + v810 | necv810) + basic_machine=v810-nec + os=-none + ;; + vaxv) + basic_machine=vax-dec + os=-sysv + ;; + vms) + basic_machine=vax-dec + os=-vms + ;; + vpp*|vx|vx-*) + basic_machine=f301-fujitsu + ;; + vxworks960) + basic_machine=i960-wrs + os=-vxworks + ;; + vxworks68) + basic_machine=m68k-wrs + os=-vxworks + ;; + vxworks29k) + basic_machine=a29k-wrs + os=-vxworks + ;; + w65*) + basic_machine=w65-wdc + os=-none + ;; + w89k-*) + basic_machine=hppa1.1-winbond + os=-proelf + ;; + xbox) + basic_machine=i686-pc + os=-mingw32 + ;; + xps | xps100) + basic_machine=xps100-honeywell + ;; + ymp) + basic_machine=ymp-cray + os=-unicos + ;; + z8k-*-coff) + basic_machine=z8k-unknown + os=-sim + ;; + z80-*-coff) + basic_machine=z80-unknown + os=-sim + ;; + none) + basic_machine=none-none + os=-none + ;; + +# Here we handle the default manufacturer of certain CPU types. It is in +# some cases the only manufacturer, in others, it is the most popular. + w89k) + basic_machine=hppa1.1-winbond + ;; + op50n) + basic_machine=hppa1.1-oki + ;; + op60c) + basic_machine=hppa1.1-oki + ;; + romp) + basic_machine=romp-ibm + ;; + mmix) + basic_machine=mmix-knuth + ;; + rs6000) + basic_machine=rs6000-ibm + ;; + vax) + basic_machine=vax-dec + ;; + pdp10) + # there are many clones, so DEC is not a safe bet + basic_machine=pdp10-unknown + ;; + pdp11) + basic_machine=pdp11-dec + ;; + we32k) + basic_machine=we32k-att + ;; + sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) + basic_machine=sh-unknown + ;; + sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) + basic_machine=sparc-sun + ;; + cydra) + basic_machine=cydra-cydrome + ;; + orion) + basic_machine=orion-highlevel + ;; + orion105) + basic_machine=clipper-highlevel + ;; + mac | mpw | mac-mpw) + basic_machine=m68k-apple + ;; + pmac | pmac-mpw) + basic_machine=powerpc-apple + ;; + *-unknown) + # Make sure to match an already-canonicalized machine name. + ;; + *) + echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 + exit 1 + ;; +esac + +# Here we canonicalize certain aliases for manufacturers. +case $basic_machine in + *-digital*) + basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` + ;; + *-commodore*) + basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` + ;; + *) + ;; +esac + +# Decode manufacturer-specific aliases for certain operating systems. + +if [ x"$os" != x"" ] +then +case $os in + # First match some system type aliases + # that might get confused with valid system types. + # -solaris* is a basic system type, with this one exception. + -solaris1 | -solaris1.*) + os=`echo $os | sed -e 's|solaris1|sunos4|'` + ;; + -solaris) + os=-solaris2 + ;; + -svr4*) + os=-sysv4 + ;; + -unixware*) + os=-sysv4.2uw + ;; + -gnu/linux*) + os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` + ;; + # First accept the basic system types. + # The portable systems comes first. + # Each alternative MUST END IN A *, to match a version number. + # -sysv* is not here because it comes later, after sysvr4. + -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ + | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ + | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \ + | -kopensolaris* \ + | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ + | -aos* | -aros* \ + | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ + | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ + | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ + | -openbsd* | -solidbsd* \ + | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ + | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ + | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ + | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ + | -chorusos* | -chorusrdb* | -cegcc* \ + | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ + | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \ + | -uxpv* | -beos* | -mpeix* | -udk* \ + | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ + | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ + | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ + | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ + | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ + | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ + | -skyos* | -haiku* | -rdos* | -toppers* | -drops*) + # Remember, each alternative MUST END IN *, to match a version number. + ;; + -qnx*) + case $basic_machine in + x86-* | i*86-*) + ;; + *) + os=-nto$os + ;; + esac + ;; + -nto-qnx*) + ;; + -nto*) + os=`echo $os | sed -e 's|nto|nto-qnx|'` + ;; + -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ + | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ + | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) + ;; + -mac*) + os=`echo $os | sed -e 's|mac|macos|'` + ;; + -linux-dietlibc) + os=-linux-dietlibc + ;; + -linux*) + os=`echo $os | sed -e 's|linux|linux-gnu|'` + ;; + -sunos5*) + os=`echo $os | sed -e 's|sunos5|solaris2|'` + ;; + -sunos6*) + os=`echo $os | sed -e 's|sunos6|solaris3|'` + ;; + -opened*) + os=-openedition + ;; + -os400*) + os=-os400 + ;; + -wince*) + os=-wince + ;; + -osfrose*) + os=-osfrose + ;; + -osf*) + os=-osf + ;; + -utek*) + os=-bsd + ;; + -dynix*) + os=-bsd + ;; + -acis*) + os=-aos + ;; + -atheos*) + os=-atheos + ;; + -syllable*) + os=-syllable + ;; + -386bsd) + os=-bsd + ;; + -ctix* | -uts*) + os=-sysv + ;; + -nova*) + os=-rtmk-nova + ;; + -ns2 ) + os=-nextstep2 + ;; + -nsk*) + os=-nsk + ;; + # Preserve the version number of sinix5. + -sinix5.*) + os=`echo $os | sed -e 's|sinix|sysv|'` + ;; + -sinix*) + os=-sysv4 + ;; + -tpf*) + os=-tpf + ;; + -triton*) + os=-sysv3 + ;; + -oss*) + os=-sysv3 + ;; + -svr4) + os=-sysv4 + ;; + -svr3) + os=-sysv3 + ;; + -sysvr4) + os=-sysv4 + ;; + # This must come after -sysvr4. + -sysv*) + ;; + -ose*) + os=-ose + ;; + -es1800*) + os=-ose + ;; + -xenix) + os=-xenix + ;; + -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) + os=-mint + ;; + -aros*) + os=-aros + ;; + -kaos*) + os=-kaos + ;; + -zvmoe) + os=-zvmoe + ;; + -dicos*) + os=-dicos + ;; + -none) + ;; + *) + # Get rid of the `-' at the beginning of $os. + os=`echo $os | sed 's/[^-]*-//'` + echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 + exit 1 + ;; +esac +else + +# Here we handle the default operating systems that come with various machines. +# The value should be what the vendor currently ships out the door with their +# machine or put another way, the most popular os provided with the machine. + +# Note that if you're going to try to match "-MANUFACTURER" here (say, +# "-sun"), then you have to tell the case statement up towards the top +# that MANUFACTURER isn't an operating system. Otherwise, code above +# will signal an error saying that MANUFACTURER isn't an operating +# system, and we'll never get to this point. + +case $basic_machine in + score-*) + os=-elf + ;; + spu-*) + os=-elf + ;; + *-acorn) + os=-riscix1.2 + ;; + arm*-rebel) + os=-linux + ;; + arm*-semi) + os=-aout + ;; + c4x-* | tic4x-*) + os=-coff + ;; + # This must come before the *-dec entry. + pdp10-*) + os=-tops20 + ;; + pdp11-*) + os=-none + ;; + *-dec | vax-*) + os=-ultrix4.2 + ;; + m68*-apollo) + os=-domain + ;; + i386-sun) + os=-sunos4.0.2 + ;; + m68000-sun) + os=-sunos3 + # This also exists in the configure program, but was not the + # default. + # os=-sunos4 + ;; + m68*-cisco) + os=-aout + ;; + mep-*) + os=-elf + ;; + mips*-cisco) + os=-elf + ;; + mips*-*) + os=-elf + ;; + or32-*) + os=-coff + ;; + *-tti) # must be before sparc entry or we get the wrong os. + os=-sysv3 + ;; + sparc-* | *-sun) + os=-sunos4.1.1 + ;; + *-be) + os=-beos + ;; + *-haiku) + os=-haiku + ;; + *-ibm) + os=-aix + ;; + *-knuth) + os=-mmixware + ;; + *-wec) + os=-proelf + ;; + *-winbond) + os=-proelf + ;; + *-oki) + os=-proelf + ;; + *-hp) + os=-hpux + ;; + *-hitachi) + os=-hiux + ;; + i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) + os=-sysv + ;; + *-cbm) + os=-amigaos + ;; + *-dg) + os=-dgux + ;; + *-dolphin) + os=-sysv3 + ;; + m68k-ccur) + os=-rtu + ;; + m88k-omron*) + os=-luna + ;; + *-next ) + os=-nextstep + ;; + *-sequent) + os=-ptx + ;; + *-crds) + os=-unos + ;; + *-ns) + os=-genix + ;; + i370-*) + os=-mvs + ;; + *-next) + os=-nextstep3 + ;; + *-gould) + os=-sysv + ;; + *-highlevel) + os=-bsd + ;; + *-encore) + os=-bsd + ;; + *-sgi) + os=-irix + ;; + *-siemens) + os=-sysv4 + ;; + *-masscomp) + os=-rtu + ;; + f30[01]-fujitsu | f700-fujitsu) + os=-uxpv + ;; + *-rom68k) + os=-coff + ;; + *-*bug) + os=-coff + ;; + *-apple) + os=-macos + ;; + *-atari*) + os=-mint + ;; + *) + os=-none + ;; +esac +fi + +# Here we handle the case where we know the os, and the CPU type, but not the +# manufacturer. We pick the logical manufacturer. +vendor=unknown +case $basic_machine in + *-unknown) + case $os in + -riscix*) + vendor=acorn + ;; + -sunos*) + vendor=sun + ;; + -cnk*|-aix*) + vendor=ibm + ;; + -beos*) + vendor=be + ;; + -hpux*) + vendor=hp + ;; + -mpeix*) + vendor=hp + ;; + -hiux*) + vendor=hitachi + ;; + -unos*) + vendor=crds + ;; + -dgux*) + vendor=dg + ;; + -luna*) + vendor=omron + ;; + -genix*) + vendor=ns + ;; + -mvs* | -opened*) + vendor=ibm + ;; + -os400*) + vendor=ibm + ;; + -ptx*) + vendor=sequent + ;; + -tpf*) + vendor=ibm + ;; + -vxsim* | -vxworks* | -windiss*) + vendor=wrs + ;; + -aux*) + vendor=apple + ;; + -hms*) + vendor=hitachi + ;; + -mpw* | -macos*) + vendor=apple + ;; + -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) + vendor=atari + ;; + -vos*) + vendor=stratus + ;; + esac + basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` + ;; +esac + +echo $basic_machine$os +exit + +# Local variables: +# eval: (add-hook 'write-file-hooks 'time-stamp) +# time-stamp-start: "timestamp='" +# time-stamp-format: "%:y-%02m-%02d" +# time-stamp-end: "'" +# End: diff --git a/src/3rdparty/libconninet/configure.ac b/src/3rdparty/libconninet/configure.ac new file mode 100644 index 0000000..2a383ee --- /dev/null +++ b/src/3rdparty/libconninet/configure.ac @@ -0,0 +1,90 @@ +AC_INIT([libconninet], patsubst(esyscmd([dpkg-parsechangelog | sed -n '/^Version: \(.*\)$/ {s//\1/;p}']), [ +]), [jukka.rissanen@nokia.com]) +AM_INIT_AUTOMAKE([foreign]) + +AC_PROG_CXX +AC_PROG_LIBTOOL + +AC_ARG_ENABLE(docs, [ --enable-docs Build DOXYGEN documentation (requires Doxygen)],enable_docs=$enableval,enable_docs=auto) + +AC_PATH_PROG(DOXYGEN, doxygen, no) +AC_MSG_CHECKING([whether to build Doxygen documentation]) + +if test x$DOXYGEN = xno ; then + have_doxygen=no +else + have_doxygen=yes +fi +if test x$enable_docs = xauto ; then + if test x$have_doxygen = xno ; then + enable_docs=no + else + enable_docs=yes + fi +fi +if test x$enable_docs = xyes; then + if test x$have_doxygen = xno; then + AC_MSG_ERROR([Building Doxygen docs explicitly required, but Doxygen not found]) + else + AC_MSG_RESULT(yes) + fi +else + AC_MSG_RESULT(no) +fi + +AM_CONDITIONAL(DOXYGEN_DOCS_ENABLED, test x$enable_docs = xyes) +AC_SUBST(DOXYGEN) + +PKG_CHECK_MODULES(GLIB, glib-2.0) +AC_SUBST(GLIB_CFLAGS) +AC_SUBST(GLIB_LIBS) + +PKG_CHECK_MODULES(QTCORE, QtCore) +AC_SUBST(QTCORE_CFLAGS) +AC_SUBST(QTCORE_LIBS) + +PKG_CHECK_MODULES(QTNETWORK, QtNetwork) +AC_SUBST(QTNETWORK_CFLAGS) +AC_SUBST(QTNETWORK_LIBS) + +PKG_CHECK_MODULES(QTDBUS, QtDBus) +AC_SUBST(QTDBUS_CFLAGS) +AC_SUBST(QTDBUS_LIBS) + +PKG_CHECK_MODULES(QTTEST, QtTest) +AC_SUBST(QTTEST_CFLAGS) +AC_SUBST(QTTEST_LIBS) + +PKG_CHECK_MODULES(DBUS, dbus-glib-1) +AC_SUBST(DBUS_CFLAGS) +AC_SUBST(DBUS_LIBS) + +PKG_CHECK_MODULES(CONNSETTINGS, connsettings) +AC_SUBST(CONNSETTINGS_CFLAGS) +AC_SUBST(CONNSETTINGS_LIBS) + +PKG_CHECK_MODULES(OSSO_IC, osso-ic) +AC_SUBST(OSSO_IC_CFLAGS) +AC_SUBST(OSSO_IC_LIBS) + +PKG_CHECK_MODULES(ICD_DEV, icd2) +AC_SUBST(ICD_DEV_CFLAGS) +AC_SUBST(ICD_DEV_LIBS) + +PKG_CHECK_MODULES(GCONF, gconf-2.0) +AC_SUBST(GCONF_CFLAGS) +AC_SUBST(GCONF_LIBS) + +PKG_CHECK_MODULES(QGCONF, gq-gconf) +AC_SUBST(QGCONF_CFLAGS) +AC_SUBST(QGCONF_LIBS) + +CONCFLAGS="-Wall -Werror -Wmissing-prototypes" +AC_SUBST(CONCFLAGS) + +AC_CONFIG_FILES([Makefile \ + src/Makefile \ + tests/Makefile \ + conninet.pc \ + doxygen.cfg]) +AC_OUTPUT diff --git a/src/3rdparty/libconninet/conninet.pc.in b/src/3rdparty/libconninet/conninet.pc.in new file mode 100644 index 0000000..68cdee0 --- /dev/null +++ b/src/3rdparty/libconninet/conninet.pc.in @@ -0,0 +1,11 @@ +prefix=@prefix@ +exec_prefix=@exec_prefix@ +libdir=@libdir@ +includedir=@includedir@ + +Name: libconninet +Description: Internet Connectivity support library +Version: @VERSION@ +Requires: dbus-1 >= 0.60 glib-2.0 QtCore QtDBus QtGui +Libs: -lconninet +Cflags: -I${includedir}/conninet diff --git a/src/3rdparty/libconninet/debian/changelog b/src/3rdparty/libconninet/debian/changelog new file mode 100644 index 0000000..4063317 --- /dev/null +++ b/src/3rdparty/libconninet/debian/changelog @@ -0,0 +1,293 @@ +libconninet (0.42+0m6) unstable; urgency=low + + * This entry has been added by BIFH queue processor + version has been changed to 0.42+0m6 + + -- Qing Jin Thu, 22 Jul 2010 14:04:58 +0300 + +libconninet (0.42) unstable; urgency=low + + * Fixes: NB#180536 - Uploads to online services are not working. + This is a regression caused by fix to bug 175098, the timeout was never + expiring when waiting reply from icd. + + -- Jukka Rissanen Mon, 19 Jul 2010 12:23:30 +0300 + +libconninet (0.41) unstable; urgency=low + + * Fixes: NB#175098 - Qt4.7 Webkit crashes when bearer API QNetworkSession + constructor calls QNetworkSession::syncStateWithInterface() which in turn + calls Maemo::state() and Maemo::addrinfo() and webkit expects that event + loop is not run but those function process main loop events. + Now Maemo::state() and Maemo::addrinfo() are changed to be synchronous + and fully blocking functions. The old non-blocking versions are called + Maemo::state_non_blocking() and Maemo::addrinfo_non_blocking(). + + -- Jukka Rissanen Wed, 14 Jul 2010 10:12:47 +0300 + +libconninet (0.40) unstable; urgency=low + + * Fixes: NB#167465 - Unable to open network connection using libbearer + + -- Jukka Rissanen Tue, 11 May 2010 10:47:10 +0300 + +libconninet (0.39) unstable; urgency=low + + * Fixes: NB#167982 - initialize DBus vtable in DBusDispatcher. + + -- Aapo Makela Mon, 10 May 2010 14:42:39 +0300 + +libconninet (0.38) unstable; urgency=low + + * Changing icd2 connect_req to be synchronous as the check for + returned connect signal did not work correctly, this caused a + long timeout when connect() was called. + * Scan sometimes missed results and did not return them to caller. + * HTTP proxy settings were not set correctly. + + -- Jukka Rissanen Thu, 15 Apr 2010 11:25:06 +0300 + +libconninet (0.37) unstable; urgency=low + + * Make proxy config reference counting atomic. + + -- Jukka Rissanen Wed, 3 Mar 2010 13:23:08 +0200 + +libconninet (0.36) unstable; urgency=low + + * Fixes: NB#157586 - Cleanup dbus listener when WLAN scanning object is + deleted. + + -- Jukka Rissanen Fri, 26 Feb 2010 13:30:41 +0200 + +libconninet (0.35) unstable; urgency=low + + * Fixes: NB#156883 - libconninet fails to build under the Platform SDK (SB2) + + -- Jukka Rissanen Thu, 18 Feb 2010 12:14:40 +0200 + +libconninet (0.34) unstable; urgency=low + + * Coverity fix + + -- Jukka Rissanen Tue, 16 Feb 2010 16:38:00 +0200 + +libconninet (0.33) unstable; urgency=low + + * Added API to update Qt proxy config. + + -- Jukka Rissanen Tue, 26 Jan 2010 15:48:36 +0200 + +libconninet (0.32) unstable; urgency=low + + * Fixed IAPConf to unset value when set value is invalid. + * Updated IAPMonitor to use libconnsettings. + + -- Aapo Makela Wed, 03 Feb 2010 07:32:45 +0200 + +libconninet (0.31) unstable; urgency=low + + * Fixes: NB#154892 - Check nulls in IAPConf. + + -- Aapo Makela Mon, 01 Feb 2010 09:32:06 +0200 + +libconninet (0.30) unstable; urgency=low + + * Updated IAPConf to use libconnsettings. + + -- Aapo Makela Fri, 29 Jan 2010 12:58:03 +0200 + +libconninet (0.29) unstable; urgency=low + + * Fixed dependencies + + -- Jukka Rissanen Fri, 15 Jan 2010 10:16:07 +0200 + +libconninet (0.28) unstable; urgency=low + + * Get rid of libdui dependency + + -- Jukka Rissanen Wed, 13 Jan 2010 09:56:26 +0200 + +libconninet (0.27) unstable; urgency=low + + * Insert new pending calls to the list in DBusDispatcher. + + -- Aapo Makela Tue, 22 Dec 2009 14:27:32 +0200 + +libconninet (0.26) unstable; urgency=low + + * Added possibility to specify different signal path for DBusDispatcher. + + -- Aapo Makela Wed, 25 Nov 2009 14:27:34 +0200 + +libconninet (0.25) unstable; urgency=low + + * Fixes: NB#146450 - All scan results were not returned to the caller. + + -- Jukka Rissanen Mon, 16 Nov 2009 17:23:15 +0200 + +libconninet (0.24) unstable; urgency=low + + * Wait all scan results for all network types in Maemo::Icd::scan() + + -- Jukka Rissanen Fri, 6 Nov 2009 14:45:23 +0200 + +libconninet (0.23) unstable; urgency=low + + * Fixes: NB#143361 - Assert failure in session class for GPRS IAP. + + -- Jukka Rissanen Mon, 19 Oct 2009 16:00:14 +0300 + +libconninet (0.22) unstable; urgency=low + + * Fixed the error checking if scan returns 0 results. + + -- Jukka Rissanen Wed, 7 Oct 2009 13:50:27 +0300 + +libconninet (0.21) unstable; urgency=low + + * Support multiple DBusDispatcher classes at the same time. This is + required by Maemo::Icd class so that multiple instances of it can + be used the same time. + + -- Jukka Rissanen Mon, 5 Oct 2009 16:33:43 +0300 + +libconninet (0.20) unstable; urgency=low + + * Fixed memory leak in IAPConf::setValue() + + -- Jukka Rissanen Fri, 2 Oct 2009 13:02:21 +0300 + +libconninet (0.19) unstable; urgency=low + + * Fixed connect_req to one specific IAP in Icd class. + + -- Jukka Rissanen Tue, 29 Sep 2009 17:02:46 +0300 + +libconninet (0.18) unstable; urgency=low + + * Make sure the library will not abort in Icd class if scan does + not return any results. + + -- Jukka Rissanen Tue, 22 Sep 2009 17:00:12 +0300 + +libconninet (0.17) unstable; urgency=low + + * Added IAP monitoring support. + + -- Jukka Rissanen Mon, 21 Sep 2009 16:29:31 +0300 + +libconninet (0.16) unstable; urgency=low + + * Disabled the old osso-ic dbus interface as it is currently not used. + * Fixed the addrinfo request, now addresses are returned correctly to + the caller. + + -- Jukka Rissanen Thu, 17 Sep 2009 15:56:13 +0300 + +libconninet (0.15) unstable; urgency=low + + * Enabling state_req, statistics_req and addrinfo_req support + functions in Maemo::Icd as the corresponding DBUS API functions are + fixed in icd2 v0.89 + + -- Jukka Rissanen Fri, 24 Jul 2009 15:23:02 +0300 + +libconninet (0.14) unstable; urgency=low + + * Icd statistics support added. + * Icd address information support added. + * Icd scan method does not return the final (and empty) result any more. + * Added initial unit test implementation for Icd class. + * Some of the status functions in Icd class disabled because of issues + in icd2 and the dbus api. + + -- Jukka Rissanen Thu, 23 Jul 2009 11:03:05 +0300 + +libconninet (0.13) unstable; urgency=low + + * Added API to get all the configured IAPs. + + -- Jukka Rissanen Tue, 21 Jul 2009 09:47:18 +0300 + +libconninet (0.12) unstable; urgency=low + + * Replaced duivaluespace by Dui in pkg-config file because the + duivaluespace is deprecated. + + -- Jukka Rissanen Mon, 20 Jul 2009 16:00:10 +0300 + +libconninet (0.11) unstable; urgency=low + + * Using libdui instead of libduivaluespace because it is deprecated. + * The IAPConf::clear() uses native gconf API instead of launching gconftool + * Check that state_req call returned list and the list contains entries + before trying to access it. + + -- Jukka Rissanen Mon, 20 Jul 2009 14:55:15 +0300 + +libconninet (0.10) unstable; urgency=low + + * connect() did not return ok when connection succeeded. + + -- Jukka Rissanen Thu, 25 Jun 2009 09:31:21 +0300 + +libconninet (0.9) unstable; urgency=low + + * Connection timeout set to 2.5min, same as in fremantle. + + -- Jukka Rissanen Wed, 17 Jun 2009 13:36:40 +0300 + +libconninet (0.8) unstable; urgency=low + + * Fix state_req signal received from Icd + + -- Jukka Rissanen Thu, 11 Jun 2009 17:19:33 +0300 + +libconninet (0.7) unstable; urgency=low + + * Icd disconnect and select reqs are made synchronous as we do not + wait the return status. The previous async version was causing core + dumps if Icd class was destroyed too early. + + -- Jukka Rissanen Thu, 11 Jun 2009 11:52:36 +0300 + +libconninet (0.6) unstable; urgency=low + + * Fixed the libconninet0-dev dependencies. + + -- Jukka Rissanen Mon, 8 Jun 2009 10:47:56 +0300 + +libconninet (0.5) unstable; urgency=low + + * Fixed missing QObject connect functions. + * Fixed IAPConf to return invalid QVariant if the value does not exist. + + -- Jukka Rissanen Mon, 01 Jun 2009 13:58:53 +0300 + +libconninet (0.4) unstable; urgency=low + + * Fixed QObject signal setting for Maemo::Icd + + -- Jukka Rissanen Wed, 20 May 2009 13:51:11 +0300 + +libconninet (0.3) unstable; urgency=low + + * Refactoring classes + * Added IAPConf class. + + -- Jukka Rissanen Thu, 14 May 2009 13:24:11 +0300 + +libconninet (0.2) unstable; urgency=low + + * Fixed pkgconfig file which had wrong dependency + * Added DBus array and struct support to DBusDispatcher. + + -- Jukka Rissanen Wed, 13 May 2009 12:11:00 +0300 + +libconninet (0.1) unstable; urgency=low + + * Initial Release. + + -- Jukka Rissanen Tue, 12 May 2009 16:10:27 +0200 diff --git a/src/3rdparty/libconninet/debian/compat b/src/3rdparty/libconninet/debian/compat new file mode 100644 index 0000000..b8626c4 --- /dev/null +++ b/src/3rdparty/libconninet/debian/compat @@ -0,0 +1 @@ +4 diff --git a/src/3rdparty/libconninet/debian/control b/src/3rdparty/libconninet/debian/control new file mode 100644 index 0000000..2db660f --- /dev/null +++ b/src/3rdparty/libconninet/debian/control @@ -0,0 +1,39 @@ +Source: libconninet +Priority: optional +Maintainer: Jukka Rissanen +Build-Depends: debhelper (>= 4.0.0), autotools-dev, libglib2.0-dev (>= 2.8), + libdbus-1-dev (>= 0.60), libconnsettings0-dev (>= 0.4), icd2-osso-ic-dev, + icd2-dev, libqt4-dev, libgconf2-dev (>> 2.6.4), libgq-gconf-dev +Standards-Version: 3.6.2 +Section: libs + +Package: libconninet0-dev +Section: libdevel +Architecture: any +Depends: libconninet0 (= ${Source-Version}), libdbus-1-dev (>= 0.60), + libglib2.0-dev (>= 2.8), libconnsettings0-dev (>= 0.4), libqt4-dev, + icd2-osso-ic-dev, icd2-dev, libgconf2-dev (>> 2.6.4), libgq-gconf-dev +Description: Internet Connectivity support library development files + Internet Connectivity support library (libconninet) provides common + support functions for connecting to icd2 and accessing configuration + data. + . + This package contains the header files. + +Package: libconninet0 +Section: libs +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends} +Description: Internet Connectivity support library + Internet Connectivity support library (libconninet) provides common + support functions for connecting to icd2 and accessing configuration + data. + . + This package contains the shared libraries. + +Package: libconninet0-dbg +Section: libs +Architecture: any +Depends: libconninet0 (= ${Source-Version}), ${shlibs:Depends}, ${misc:Depends} +Description: Debug symbols for the Internet Connectivity support library + Internet Connectivity support library (libconninet) debug symbols. diff --git a/src/3rdparty/libconninet/debian/copyright b/src/3rdparty/libconninet/debian/copyright new file mode 100644 index 0000000..97e8e68 --- /dev/null +++ b/src/3rdparty/libconninet/debian/copyright @@ -0,0 +1,19 @@ +libconninet - Internet Connectivity support library + +Copyright (C) 2009 Nokia Corporation. All rights reserved. + +Contact: Jukka Rissanen + +This library is free software; you can redistribute it and/or modify +it under the terms of the GNU Lesser General Public License version 2.1 +as published by the Free Software Foundation. + +This library is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +Lesser General Public License for more details. + +You should have received a copy of the GNU Lesser General Public +License along with this library; if not, write to the Free Software +Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA +02110-1301 USA diff --git a/src/3rdparty/libconninet/debian/libconninet0-dev.dirs b/src/3rdparty/libconninet/debian/libconninet0-dev.dirs new file mode 100644 index 0000000..4418816 --- /dev/null +++ b/src/3rdparty/libconninet/debian/libconninet0-dev.dirs @@ -0,0 +1,2 @@ +usr/lib +usr/include diff --git a/src/3rdparty/libconninet/debian/libconninet0-dev.files b/src/3rdparty/libconninet/debian/libconninet0-dev.files new file mode 100644 index 0000000..78bbac8 --- /dev/null +++ b/src/3rdparty/libconninet/debian/libconninet0-dev.files @@ -0,0 +1,4 @@ +usr/include/* +usr/lib/lib*.so +usr/lib/pkgconfig/* +usr/share/pkgconfig/* diff --git a/src/3rdparty/libconninet/debian/libconninet0.dirs b/src/3rdparty/libconninet/debian/libconninet0.dirs new file mode 100644 index 0000000..6845771 --- /dev/null +++ b/src/3rdparty/libconninet/debian/libconninet0.dirs @@ -0,0 +1 @@ +usr/lib diff --git a/src/3rdparty/libconninet/debian/libconninet0.files b/src/3rdparty/libconninet/debian/libconninet0.files new file mode 100644 index 0000000..d0dbfd1 --- /dev/null +++ b/src/3rdparty/libconninet/debian/libconninet0.files @@ -0,0 +1 @@ +usr/lib/lib*.so.* diff --git a/src/3rdparty/libconninet/debian/rules b/src/3rdparty/libconninet/debian/rules new file mode 100755 index 0000000..2a3d395 --- /dev/null +++ b/src/3rdparty/libconninet/debian/rules @@ -0,0 +1,123 @@ +#!/usr/bin/make -f +# -*- makefile -*- +# Sample debian/rules that uses debhelper. +# This file was originally written by Joey Hess and Craig Small. +# As a special exception, when this file is copied by dh-make into a +# dh-make output file, you may use that output file without restriction. +# This special exception was added by Craig Small in version 0.37 of dh-make. + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + + +# These are used for cross-compiling and for saving the configure script +# from having to guess our platform (since we know it already) +DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) +DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) + + +CFLAGS = -Wall -g + +ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) + CFLAGS += -O0 +else + CFLAGS += -O2 +endif + +# shared library versions, option 1 +#version=2.0.5 +#major=2 +# option 2, assuming the library is created as src/.libs/libfoo.so.2.0.5 or so +version=`ls src/.libs/lib*.so.* | \ + awk '{if (match($$0,/[0-9]+\.[0-9]+\.[0-9]+$$/)) print substr($$0,RSTART)}'` +major=`ls src/.libs/lib*.so.* | \ + awk '{if (match($$0,/\.so\.[0-9]+$$/)) print substr($$0,RSTART+4)}'` + +configure: configure.ac debian/changelog + -./autogen.sh + +config.status: configure + dh_testdir + # Add here commands to configure the package. + CFLAGS="$(CFLAGS)" ./configure \ + --host=$(DEB_HOST_GNU_TYPE) \ + --build=$(DEB_BUILD_GNU_TYPE) \ + --prefix=/usr \ + --mandir=\$${prefix}/share/man \ + --infodir=\$${prefix}/share/info + + +build: build-stamp +build-stamp: config.status + dh_testdir + + # Add here commands to compile the package. + $(MAKE) + + touch build-stamp + +clean: + dh_testdir + dh_testroot + rm -f build-stamp + + # Add here commands to clean up after the build process. + -$(MAKE) distclean +ifneq "$(wildcard /usr/share/misc/config.sub)" "" + cp -f /usr/share/misc/config.sub config.sub +endif +ifneq "$(wildcard /usr/share/misc/config.guess)" "" + cp -f /usr/share/misc/config.guess config.guess +endif + + + dh_clean + +install: build + dh_testdir + dh_testroot + dh_clean -k + dh_installdirs + + # Add here commands to install the package into debian/tmp + $(MAKE) install DESTDIR=$(CURDIR)/debian/tmp + + +# Build architecture-independent files here. +binary-indep: build install +# We have nothing to do by default. + +# Build architecture-dependent files here. +binary-arch: build install + dh_testdir + dh_testroot + dh_movefiles + dh_installchangelogs ChangeLog + dh_installdocs + dh_installexamples +# dh_install +# dh_installmenu +# dh_installdebconf +# dh_installlogrotate +# dh_installemacsen +# dh_installpam +# dh_installmime +# dh_installinit +# dh_installcron +# dh_installinfo + dh_installman + dh_link + dh_strip --dbg-package=libconninet0 + dh_compress + dh_fixperms +# dh_perl +# dh_python + dh_makeshlibs + dh_installdeb + dh_shlibdeps + dh_gencontrol + dh_md5sums + dh_builddeb + +binary: binary-indep binary-arch +.PHONY: build clean binary-indep binary-arch binary install diff --git a/src/3rdparty/libconninet/doxygen.cfg.in b/src/3rdparty/libconninet/doxygen.cfg.in new file mode 100644 index 0000000..80a4c8d --- /dev/null +++ b/src/3rdparty/libconninet/doxygen.cfg.in @@ -0,0 +1,1147 @@ +# Doxyfile 1.3.7 + +# This file describes the settings to be used by the documentation system +# doxygen (www.doxygen.org) for a project +# +# All text after a hash (#) is considered a comment and will be ignored +# The format is: +# TAG = value [value, ...] +# For lists items can also be appended using: +# TAG += value [value, ...] +# Values that contain spaces should be placed between quotes (" ") + +#--------------------------------------------------------------------------- +# Project related configuration options +#--------------------------------------------------------------------------- + +# The PROJECT_NAME tag is a single word (or a sequence of words surrounded +# by quotes) that should identify the project. + +PROJECT_NAME = "Internet Connectivity Support Library" + +# The PROJECT_NUMBER tag can be used to enter a project or revision number. +# This could be handy for archiving the generated documentation or +# if some version control system is used. + +PROJECT_NUMBER = @VERSION@ + +# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) +# base path where the generated documentation will be put. +# If a relative path is entered, it will be relative to the location +# where doxygen was started. If left blank the current directory will be used. + +OUTPUT_DIRECTORY = doc + +# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create +# 2 levels of 10 sub-directories under the output directory of each output +# format and will distribute the generated files over these directories. +# Enabling this option can be useful when feeding doxygen a huge amount of source +# files, where putting all generated files in the same directory would otherwise +# cause performance problems for the file system. + +CREATE_SUBDIRS = NO + +# The OUTPUT_LANGUAGE tag is used to specify the language in which all +# documentation generated by doxygen is written. Doxygen will use this +# information to generate all constant output in the proper language. +# The default language is English, other supported languages are: +# Brazilian, Catalan, Chinese, Chinese-Traditional, Croatian, Czech, Danish, Dutch, +# Finnish, French, German, Greek, Hungarian, Italian, Japanese, Japanese-en +# (Japanese with English messages), Korean, Korean-en, Norwegian, Polish, Portuguese, +# Romanian, Russian, Serbian, Slovak, Slovene, Spanish, Swedish, and Ukrainian. + +OUTPUT_LANGUAGE = English + +# This tag can be used to specify the encoding used in the generated output. +# The encoding is not always determined by the language that is chosen, +# but also whether or not the output is meant for Windows or non-Windows users. +# In case there is a difference, setting the USE_WINDOWS_ENCODING tag to YES +# forces the Windows encoding (this is the default for the Windows binary), +# whereas setting the tag to NO uses a Unix-style encoding (the default for +# all platforms other than Windows). + +USE_WINDOWS_ENCODING = NO + +# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will +# include brief member descriptions after the members that are listed in +# the file and class documentation (similar to JavaDoc). +# Set to NO to disable this. + +BRIEF_MEMBER_DESC = YES + +# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend +# the brief description of a member or function before the detailed description. +# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the +# brief descriptions will be completely suppressed. + +REPEAT_BRIEF = YES + +# This tag implements a quasi-intelligent brief description abbreviator +# that is used to form the text in various listings. Each string +# in this list, if found as the leading text of the brief description, will be +# stripped from the text and the result after processing the whole list, is used +# as the annotated text. Otherwise, the brief description is used as-is. If left +# blank, the following values are used ("$name" is automatically replaced with the +# name of the entity): "The $name class" "The $name widget" "The $name file" +# "is" "provides" "specifies" "contains" "represents" "a" "an" "the" + +ABBREVIATE_BRIEF = + +# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then +# Doxygen will generate a detailed section even if there is only a brief +# description. + +ALWAYS_DETAILED_SEC = NO + +# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all inherited +# members of a class in the documentation of that class as if those members were +# ordinary class members. Constructors, destructors and assignment operators of +# the base classes will not be shown. + +INLINE_INHERITED_MEMB = NO + +# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full +# path before files name in the file list and in the header files. If set +# to NO the shortest path that makes the file name unique will be used. + +FULL_PATH_NAMES = NO + +# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag +# can be used to strip a user-defined part of the path. Stripping is +# only done if one of the specified strings matches the left-hand part of +# the path. The tag can be used to show relative paths in the file list. +# If left blank the directory from which doxygen is run is used as the +# path to strip. + +STRIP_FROM_PATH = + +# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of +# the path mentioned in the documentation of a class, which tells +# the reader which header file to include in order to use a class. +# If left blank only the name of the header file containing the class +# definition is used. Otherwise one should specify the include paths that +# are normally passed to the compiler using the -I flag. + +STRIP_FROM_INC_PATH = + +# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter +# (but less readable) file names. This can be useful is your file systems +# doesn't support long names like on DOS, Mac, or CD-ROM. + +SHORT_NAMES = NO + +# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen +# will interpret the first line (until the first dot) of a JavaDoc-style +# comment as the brief description. If set to NO, the JavaDoc +# comments will behave just like the Qt-style comments (thus requiring an +# explicit @brief command for a brief description. + +JAVADOC_AUTOBRIEF = YES + +# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen +# treat a multi-line C++ special comment block (i.e. a block of //! or /// +# comments) as a brief description. This used to be the default behaviour. +# The new default is to treat a multi-line C++ comment block as a detailed +# description. Set this tag to YES if you prefer the old behaviour instead. + +MULTILINE_CPP_IS_BRIEF = NO + +# If the DETAILS_AT_TOP tag is set to YES then Doxygen +# will output the detailed description near the top, like JavaDoc. +# If set to NO, the detailed description appears after the member +# documentation. + +DETAILS_AT_TOP = YES + +# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented +# member inherits the documentation from any documented member that it +# re-implements. + +INHERIT_DOCS = YES + +# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC +# tag is set to YES, then doxygen will reuse the documentation of the first +# member in the group (if any) for the other members of the group. By default +# all members of a group must be documented explicitly. + +DISTRIBUTE_GROUP_DOC = NO + +# The TAB_SIZE tag can be used to set the number of spaces in a tab. +# Doxygen uses this value to replace tabs by spaces in code fragments. + +TAB_SIZE = 8 + +# This tag can be used to specify a number of aliases that acts +# as commands in the documentation. An alias has the form "name=value". +# For example adding "sideeffect=\par Side Effects:\n" will allow you to +# put the command \sideeffect (or @sideeffect) in the documentation, which +# will result in a user-defined paragraph with heading "Side Effects:". +# You can put \n's in the value part of an alias to insert newlines. + +ALIASES = + +# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources +# only. Doxygen will then generate output that is more tailored for C. +# For instance, some of the names that are used will be different. The list +# of all members will be omitted, etc. + +OPTIMIZE_OUTPUT_FOR_C = YES + +# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java sources +# only. Doxygen will then generate output that is more tailored for Java. +# For instance, namespaces will be presented as packages, qualified scopes +# will look different, etc. + +OPTIMIZE_OUTPUT_JAVA = NO + +# Set the SUBGROUPING tag to YES (the default) to allow class member groups of +# the same type (for instance a group of public functions) to be put as a +# subgroup of that type (e.g. under the Public Functions section). Set it to +# NO to prevent subgrouping. Alternatively, this can be done per class using +# the \nosubgrouping command. + +SUBGROUPING = YES + +#--------------------------------------------------------------------------- +# Build related configuration options +#--------------------------------------------------------------------------- + +# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in +# documentation are documented, even if no documentation was available. +# Private class members and static file members will be hidden unless +# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES + +EXTRACT_ALL = NO + +# If the EXTRACT_PRIVATE tag is set to YES all private members of a class +# will be included in the documentation. + +EXTRACT_PRIVATE = NO + +# If the EXTRACT_STATIC tag is set to YES all static members of a file +# will be included in the documentation. + +EXTRACT_STATIC = NO + +# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs) +# defined locally in source files will be included in the documentation. +# If set to NO only classes defined in header files are included. + +EXTRACT_LOCAL_CLASSES = YES + +# This flag is only useful for Objective-C code. When set to YES local +# methods, which are defined in the implementation section but not in +# the interface are included in the documentation. +# If set to NO (the default) only methods in the interface are included. + +EXTRACT_LOCAL_METHODS = NO + +# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all +# undocumented members of documented classes, files or namespaces. +# If set to NO (the default) these members will be included in the +# various overviews, but no documentation section is generated. +# This option has no effect if EXTRACT_ALL is enabled. + +HIDE_UNDOC_MEMBERS = YES + +# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all +# undocumented classes that are normally visible in the class hierarchy. +# If set to NO (the default) these classes will be included in the various +# overviews. This option has no effect if EXTRACT_ALL is enabled. + +HIDE_UNDOC_CLASSES = NO + +# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all +# friend (class|struct|union) declarations. +# If set to NO (the default) these declarations will be included in the +# documentation. + +HIDE_FRIEND_COMPOUNDS = NO + +# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any +# documentation blocks found inside the body of a function. +# If set to NO (the default) these blocks will be appended to the +# function's detailed documentation block. + +HIDE_IN_BODY_DOCS = NO + +# The INTERNAL_DOCS tag determines if documentation +# that is typed after a \internal command is included. If the tag is set +# to NO (the default) then the documentation will be excluded. +# Set it to YES to include the internal documentation. + +INTERNAL_DOCS = NO + +# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate +# file names in lower-case letters. If set to YES upper-case letters are also +# allowed. This is useful if you have classes or files whose names only differ +# in case and if your file system supports case sensitive file names. Windows +# users are advised to set this option to NO. + +CASE_SENSE_NAMES = YES + +# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen +# will show members with their full class and namespace scopes in the +# documentation. If set to YES the scope will be hidden. + +HIDE_SCOPE_NAMES = NO + +# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen +# will put a list of the files that are included by a file in the documentation +# of that file. + +SHOW_INCLUDE_FILES = YES + +# If the INLINE_INFO tag is set to YES (the default) then a tag [inline] +# is inserted in the documentation for inline members. + +INLINE_INFO = YES + +# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen +# will sort the (detailed) documentation of file and class members +# alphabetically by member name. If set to NO the members will appear in +# declaration order. + +SORT_MEMBER_DOCS = YES + +# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the +# brief documentation of file, namespace and class members alphabetically +# by member name. If set to NO (the default) the members will appear in +# declaration order. + +SORT_BRIEF_DOCS = NO + +# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be +# sorted by fully-qualified names, including namespaces. If set to +# NO (the default), the class list will be sorted only by class name, +# not including the namespace part. +# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES. +# Note: This option applies only to the class list, not to the +# alphabetical list. + +SORT_BY_SCOPE_NAME = NO + +# The GENERATE_TODOLIST tag can be used to enable (YES) or +# disable (NO) the todo list. This list is created by putting \todo +# commands in the documentation. + +GENERATE_TODOLIST = YES + +# The GENERATE_TESTLIST tag can be used to enable (YES) or +# disable (NO) the test list. This list is created by putting \test +# commands in the documentation. + +GENERATE_TESTLIST = YES + +# The GENERATE_BUGLIST tag can be used to enable (YES) or +# disable (NO) the bug list. This list is created by putting \bug +# commands in the documentation. + +GENERATE_BUGLIST = YES + +# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or +# disable (NO) the deprecated list. This list is created by putting +# \deprecated commands in the documentation. + +GENERATE_DEPRECATEDLIST= YES + +# The ENABLED_SECTIONS tag can be used to enable conditional +# documentation sections, marked by \if sectionname ... \endif. + +ENABLED_SECTIONS = + +# The MAX_INITIALIZER_LINES tag determines the maximum number of lines +# the initial value of a variable or define consists of for it to appear in +# the documentation. If the initializer consists of more lines than specified +# here it will be hidden. Use a value of 0 to hide initializers completely. +# The appearance of the initializer of individual variables and defines in the +# documentation can be controlled using \showinitializer or \hideinitializer +# command in the documentation regardless of this setting. + +MAX_INITIALIZER_LINES = 30 + +# Set the SHOW_USED_FILES tag to NO to disable the list of files generated +# at the bottom of the documentation of classes and structs. If set to YES the +# list will mention the files that were used to generate the documentation. + +SHOW_USED_FILES = YES + +#--------------------------------------------------------------------------- +# configuration options related to warning and progress messages +#--------------------------------------------------------------------------- + +# The QUIET tag can be used to turn on/off the messages that are generated +# by doxygen. Possible values are YES and NO. If left blank NO is used. + +QUIET = NO + +# The WARNINGS tag can be used to turn on/off the warning messages that are +# generated by doxygen. Possible values are YES and NO. If left blank +# NO is used. + +WARNINGS = YES + +# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings +# for undocumented members. If EXTRACT_ALL is set to YES then this flag will +# automatically be disabled. + +WARN_IF_UNDOCUMENTED = YES + +# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for +# potential errors in the documentation, such as not documenting some +# parameters in a documented function, or documenting parameters that +# don't exist or using markup commands wrongly. + +WARN_IF_DOC_ERROR = YES + +# The WARN_FORMAT tag determines the format of the warning messages that +# doxygen can produce. The string should contain the $file, $line, and $text +# tags, which will be replaced by the file and line number from which the +# warning originated and the warning text. + +WARN_FORMAT = "$file:$line: $text" + +# The WARN_LOGFILE tag can be used to specify a file to which warning +# and error messages should be written. If left blank the output is written +# to stderr. + +WARN_LOGFILE = + +#--------------------------------------------------------------------------- +# configuration options related to the input files +#--------------------------------------------------------------------------- + +# The INPUT tag can be used to specify the files and/or directories that contain +# documented source files. You may enter file names like "myfile.cpp" or +# directories like "/usr/src/myproject". Separate the files or directories +# with spaces. + +INPUT = conic/conic.h \ + conic/conicconnection.h \ + conic/conicconnectionevent.h \ + conic/conicevent.h \ + conic/coniciap.h \ + conic/conicstatisticsevent.h + +# If the value of the INPUT tag contains directories, you can use the +# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp +# and *.h) to filter out the source-files in the directories. If left +# blank the following patterns are tested: +# *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx *.hpp +# *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm + +FILE_PATTERNS = + +# The RECURSIVE tag can be used to turn specify whether or not subdirectories +# should be searched for input files as well. Possible values are YES and NO. +# If left blank NO is used. + +RECURSIVE = NO + +# The EXCLUDE tag can be used to specify files and/or directories that should +# excluded from the INPUT source files. This way you can easily exclude a +# subdirectory from a directory tree whose root is specified with the INPUT tag. + +EXCLUDE = + +# The EXCLUDE_SYMLINKS tag can be used select whether or not files or directories +# that are symbolic links (a Unix filesystem feature) are excluded from the input. + +EXCLUDE_SYMLINKS = NO + +# If the value of the INPUT tag contains directories, you can use the +# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude +# certain files from those directories. + +EXCLUDE_PATTERNS = + +# The EXAMPLE_PATH tag can be used to specify one or more files or +# directories that contain example code fragments that are included (see +# the \include command). + +EXAMPLE_PATH = + +# If the value of the EXAMPLE_PATH tag contains directories, you can use the +# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp +# and *.h) to filter out the source-files in the directories. If left +# blank all files are included. + +EXAMPLE_PATTERNS = + +# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be +# searched for input files to be used with the \include or \dontinclude +# commands irrespective of the value of the RECURSIVE tag. +# Possible values are YES and NO. If left blank NO is used. + +EXAMPLE_RECURSIVE = NO + +# The IMAGE_PATH tag can be used to specify one or more files or +# directories that contain image that are included in the documentation (see +# the \image command). + +IMAGE_PATH = + +# The INPUT_FILTER tag can be used to specify a program that doxygen should +# invoke to filter for each input file. Doxygen will invoke the filter program +# by executing (via popen()) the command , where +# is the value of the INPUT_FILTER tag, and is the name of an +# input file. Doxygen will then use the output that the filter program writes +# to standard output. + +INPUT_FILTER = + +# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using +# INPUT_FILTER) will be used to filter the input files when producing source +# files to browse (i.e. when SOURCE_BROWSER is set to YES). + +FILTER_SOURCE_FILES = NO + +#--------------------------------------------------------------------------- +# configuration options related to source browsing +#--------------------------------------------------------------------------- + +# If the SOURCE_BROWSER tag is set to YES then a list of source files will +# be generated. Documented entities will be cross-referenced with these sources. +# Note: To get rid of all source code in the generated output, make sure also +# VERBATIM_HEADERS is set to NO. + +SOURCE_BROWSER = NO + +# Setting the INLINE_SOURCES tag to YES will include the body +# of functions and classes directly in the documentation. + +INLINE_SOURCES = NO + +# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct +# doxygen to hide any special comment blocks from generated source code +# fragments. Normal C and C++ comments will always remain visible. + +STRIP_CODE_COMMENTS = YES + +# If the REFERENCED_BY_RELATION tag is set to YES (the default) +# then for each documented function all documented +# functions referencing it will be listed. + +REFERENCED_BY_RELATION = YES + +# If the REFERENCES_RELATION tag is set to YES (the default) +# then for each documented function all documented entities +# called/used by that function will be listed. + +REFERENCES_RELATION = YES + +# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen +# will generate a verbatim copy of the header file for each class for +# which an include is specified. Set to NO to disable this. + +VERBATIM_HEADERS = NO + +#--------------------------------------------------------------------------- +# configuration options related to the alphabetical class index +#--------------------------------------------------------------------------- + +# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index +# of all compounds will be generated. Enable this if the project +# contains a lot of classes, structs, unions or interfaces. + +ALPHABETICAL_INDEX = NO + +# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then +# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns +# in which this list will be split (can be a number in the range [1..20]) + +COLS_IN_ALPHA_INDEX = 5 + +# In case all classes in a project start with a common prefix, all +# classes will be put under the same header in the alphabetical index. +# The IGNORE_PREFIX tag can be used to specify one or more prefixes that +# should be ignored while generating the index headers. + +IGNORE_PREFIX = + +#--------------------------------------------------------------------------- +# configuration options related to the HTML output +#--------------------------------------------------------------------------- + +# If the GENERATE_HTML tag is set to YES (the default) Doxygen will +# generate HTML output. + +GENERATE_HTML = YES + +# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# put in front of it. If left blank `html' will be used as the default path. + +HTML_OUTPUT = html + +# The HTML_FILE_EXTENSION tag can be used to specify the file extension for +# each generated HTML page (for example: .htm,.php,.asp). If it is left blank +# doxygen will generate files with .html extension. + +HTML_FILE_EXTENSION = .html + +# The HTML_HEADER tag can be used to specify a personal HTML header for +# each generated HTML page. If it is left blank doxygen will generate a +# standard header. + +HTML_HEADER = + +# The HTML_FOOTER tag can be used to specify a personal HTML footer for +# each generated HTML page. If it is left blank doxygen will generate a +# standard footer. + +HTML_FOOTER = + +# The HTML_STYLESHEET tag can be used to specify a user-defined cascading +# style sheet that is used by each HTML page. It can be used to +# fine-tune the look of the HTML output. If the tag is left blank doxygen +# will generate a default style sheet. Note that doxygen will try to copy +# the style sheet file to the HTML output directory, so don't put your own +# stylesheet in the HTML output directory as well, or it will be erased! + +HTML_STYLESHEET = + +# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes, +# files or namespaces will be aligned in HTML using tables. If set to +# NO a bullet list will be used. + +HTML_ALIGN_MEMBERS = YES + +# If the GENERATE_HTMLHELP tag is set to YES, additional index files +# will be generated that can be used as input for tools like the +# Microsoft HTML help workshop to generate a compressed HTML help file (.chm) +# of the generated HTML documentation. + +GENERATE_HTMLHELP = NO + +# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can +# be used to specify the file name of the resulting .chm file. You +# can add a path in front of the file if the result should not be +# written to the html output directory. + +CHM_FILE = + +# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can +# be used to specify the location (absolute path including file name) of +# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run +# the HTML help compiler on the generated index.hhp. + +HHC_LOCATION = + +# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag +# controls if a separate .chi index file is generated (YES) or that +# it should be included in the master .chm file (NO). + +GENERATE_CHI = NO + +# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag +# controls whether a binary table of contents is generated (YES) or a +# normal table of contents (NO) in the .chm file. + +BINARY_TOC = NO + +# The TOC_EXPAND flag can be set to YES to add extra items for group members +# to the contents of the HTML help documentation and to the tree view. + +TOC_EXPAND = NO + +# The DISABLE_INDEX tag can be used to turn on/off the condensed index at +# top of each HTML page. The value NO (the default) enables the index and +# the value YES disables it. + +DISABLE_INDEX = NO + +# This tag can be used to set the number of enum values (range [1..20]) +# that doxygen will group on one line in the generated HTML documentation. + +ENUM_VALUES_PER_LINE = 4 + +# If the GENERATE_TREEVIEW tag is set to YES, a side panel will be +# generated containing a tree-like index structure (just like the one that +# is generated for HTML Help). For this to work a browser that supports +# JavaScript, DHTML, CSS and frames is required (for instance Mozilla 1.0+, +# Netscape 6.0+, Internet explorer 5.0+, or Konqueror). Windows users are +# probably better off using the HTML help feature. + +GENERATE_TREEVIEW = NO + +# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be +# used to set the initial width (in pixels) of the frame in which the tree +# is shown. + +TREEVIEW_WIDTH = 250 + +#--------------------------------------------------------------------------- +# configuration options related to the LaTeX output +#--------------------------------------------------------------------------- + +# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will +# generate Latex output. + +GENERATE_LATEX = YES + +# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# put in front of it. If left blank `latex' will be used as the default path. + +LATEX_OUTPUT = latex + +# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be +# invoked. If left blank `latex' will be used as the default command name. + +LATEX_CMD_NAME = latex + +# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to +# generate index for LaTeX. If left blank `makeindex' will be used as the +# default command name. + +MAKEINDEX_CMD_NAME = makeindex + +# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact +# LaTeX documents. This may be useful for small projects and may help to +# save some trees in general. + +COMPACT_LATEX = NO + +# The PAPER_TYPE tag can be used to set the paper type that is used +# by the printer. Possible values are: a4, a4wide, letter, legal and +# executive. If left blank a4wide will be used. + +PAPER_TYPE = a4wide + +# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX +# packages that should be included in the LaTeX output. + +EXTRA_PACKAGES = + +# The LATEX_HEADER tag can be used to specify a personal LaTeX header for +# the generated latex document. The header should contain everything until +# the first chapter. If it is left blank doxygen will generate a +# standard header. Notice: only use this tag if you know what you are doing! + +LATEX_HEADER = + +# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated +# is prepared for conversion to pdf (using ps2pdf). The pdf file will +# contain links (just like the HTML output) instead of page references +# This makes the output suitable for online browsing using a pdf viewer. + +PDF_HYPERLINKS = YES + +# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of +# plain latex in the generated Makefile. Set this option to YES to get a +# higher quality PDF documentation. + +USE_PDFLATEX = YES + +# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode. +# command to the generated LaTeX files. This will instruct LaTeX to keep +# running if errors occur, instead of asking the user for help. +# This option is also used when generating formulas in HTML. + +LATEX_BATCHMODE = NO + +# If LATEX_HIDE_INDICES is set to YES then doxygen will not +# include the index chapters (such as File Index, Compound Index, etc.) +# in the output. + +LATEX_HIDE_INDICES = NO + +#--------------------------------------------------------------------------- +# configuration options related to the RTF output +#--------------------------------------------------------------------------- + +# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output +# The RTF output is optimized for Word 97 and may not look very pretty with +# other RTF readers or editors. + +GENERATE_RTF = NO + +# The RTF_OUTPUT tag is used to specify where the RTF docs will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# put in front of it. If left blank `rtf' will be used as the default path. + +RTF_OUTPUT = rtf + +# If the COMPACT_RTF tag is set to YES Doxygen generates more compact +# RTF documents. This may be useful for small projects and may help to +# save some trees in general. + +COMPACT_RTF = NO + +# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated +# will contain hyperlink fields. The RTF file will +# contain links (just like the HTML output) instead of page references. +# This makes the output suitable for online browsing using WORD or other +# programs which support those fields. +# Note: wordpad (write) and others do not support links. + +RTF_HYPERLINKS = NO + +# Load stylesheet definitions from file. Syntax is similar to doxygen's +# config file, i.e. a series of assignments. You only have to provide +# replacements, missing definitions are set to their default value. + +RTF_STYLESHEET_FILE = + +# Set optional variables used in the generation of an rtf document. +# Syntax is similar to doxygen's config file. + +RTF_EXTENSIONS_FILE = + +#--------------------------------------------------------------------------- +# configuration options related to the man page output +#--------------------------------------------------------------------------- + +# If the GENERATE_MAN tag is set to YES (the default) Doxygen will +# generate man pages + +GENERATE_MAN = NO + +# The MAN_OUTPUT tag is used to specify where the man pages will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# put in front of it. If left blank `man' will be used as the default path. + +MAN_OUTPUT = man + +# The MAN_EXTENSION tag determines the extension that is added to +# the generated man pages (default is the subroutine's section .3) + +MAN_EXTENSION = .3 + +# If the MAN_LINKS tag is set to YES and Doxygen generates man output, +# then it will generate one additional man file for each entity +# documented in the real man page(s). These additional files +# only source the real man page, but without them the man command +# would be unable to find the correct page. The default is NO. + +MAN_LINKS = NO + +#--------------------------------------------------------------------------- +# configuration options related to the XML output +#--------------------------------------------------------------------------- + +# If the GENERATE_XML tag is set to YES Doxygen will +# generate an XML file that captures the structure of +# the code including all documentation. + +GENERATE_XML = NO + +# The XML_OUTPUT tag is used to specify where the XML pages will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# put in front of it. If left blank `xml' will be used as the default path. + +XML_OUTPUT = xml + +# The XML_SCHEMA tag can be used to specify an XML schema, +# which can be used by a validating XML parser to check the +# syntax of the XML files. + +XML_SCHEMA = + +# The XML_DTD tag can be used to specify an XML DTD, +# which can be used by a validating XML parser to check the +# syntax of the XML files. + +XML_DTD = + +# If the XML_PROGRAMLISTING tag is set to YES Doxygen will +# dump the program listings (including syntax highlighting +# and cross-referencing information) to the XML output. Note that +# enabling this will significantly increase the size of the XML output. + +XML_PROGRAMLISTING = YES + +#--------------------------------------------------------------------------- +# configuration options for the AutoGen Definitions output +#--------------------------------------------------------------------------- + +# If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will +# generate an AutoGen Definitions (see autogen.sf.net) file +# that captures the structure of the code including all +# documentation. Note that this feature is still experimental +# and incomplete at the moment. + +GENERATE_AUTOGEN_DEF = NO + +#--------------------------------------------------------------------------- +# configuration options related to the Perl module output +#--------------------------------------------------------------------------- + +# If the GENERATE_PERLMOD tag is set to YES Doxygen will +# generate a Perl module file that captures the structure of +# the code including all documentation. Note that this +# feature is still experimental and incomplete at the +# moment. + +GENERATE_PERLMOD = NO + +# If the PERLMOD_LATEX tag is set to YES Doxygen will generate +# the necessary Makefile rules, Perl scripts and LaTeX code to be able +# to generate PDF and DVI output from the Perl module output. + +PERLMOD_LATEX = NO + +# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be +# nicely formatted so it can be parsed by a human reader. This is useful +# if you want to understand what is going on. On the other hand, if this +# tag is set to NO the size of the Perl module output will be much smaller +# and Perl will parse it just the same. + +PERLMOD_PRETTY = YES + +# The names of the make variables in the generated doxyrules.make file +# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX. +# This is useful so different doxyrules.make files included by the same +# Makefile don't overwrite each other's variables. + +PERLMOD_MAKEVAR_PREFIX = + +#--------------------------------------------------------------------------- +# Configuration options related to the preprocessor +#--------------------------------------------------------------------------- + +# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will +# evaluate all C-preprocessor directives found in the sources and include +# files. + +ENABLE_PREPROCESSING = YES + +# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro +# names in the source code. If set to NO (the default) only conditional +# compilation will be performed. Macro expansion can be done in a controlled +# way by setting EXPAND_ONLY_PREDEF to YES. + +MACRO_EXPANSION = NO + +# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES +# then the macro expansion is limited to the macros specified with the +# PREDEFINED and EXPAND_AS_PREDEFINED tags. + +EXPAND_ONLY_PREDEF = NO + +# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files +# in the INCLUDE_PATH (see below) will be search if a #include is found. + +SEARCH_INCLUDES = YES + +# The INCLUDE_PATH tag can be used to specify one or more directories that +# contain include files that are not input files but should be processed by +# the preprocessor. + +INCLUDE_PATH = + +# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard +# patterns (like *.h and *.hpp) to filter out the header-files in the +# directories. If left blank, the patterns specified with FILE_PATTERNS will +# be used. + +INCLUDE_FILE_PATTERNS = + +# The PREDEFINED tag can be used to specify one or more macro names that +# are defined before the preprocessor is started (similar to the -D option of +# gcc). The argument of the tag is a list of macros of the form: name +# or name=definition (no spaces). If the definition and the = are +# omitted =1 is assumed. + +PREDEFINED = + +# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then +# this tag can be used to specify a list of macro names that should be expanded. +# The macro definition that is found in the sources will be used. +# Use the PREDEFINED tag if you want to use a different macro definition. + +EXPAND_AS_DEFINED = + +# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then +# doxygen's preprocessor will remove all function-like macros that are alone +# on a line, have an all uppercase name, and do not end with a semicolon. Such +# function macros are typically used for boiler-plate code, and will confuse the +# parser if not removed. + +SKIP_FUNCTION_MACROS = YES + +#--------------------------------------------------------------------------- +# Configuration::additions related to external references +#--------------------------------------------------------------------------- + +# The TAGFILES option can be used to specify one or more tagfiles. +# Optionally an initial location of the external documentation +# can be added for each tagfile. The format of a tag file without +# this location is as follows: +# TAGFILES = file1 file2 ... +# Adding location for the tag files is done as follows: +# TAGFILES = file1=loc1 "file2 = loc2" ... +# where "loc1" and "loc2" can be relative or absolute paths or +# URLs. If a location is present for each tag, the installdox tool +# does not have to be run to correct the links. +# Note that each tag file must have a unique name +# (where the name does NOT include the path) +# If a tag file is not located in the directory in which doxygen +# is run, you must also specify the path to the tagfile here. + +TAGFILES = + +# When a file name is specified after GENERATE_TAGFILE, doxygen will create +# a tag file that is based on the input files it reads. + +GENERATE_TAGFILE = + +# If the ALLEXTERNALS tag is set to YES all external classes will be listed +# in the class index. If set to NO only the inherited external classes +# will be listed. + +ALLEXTERNALS = NO + +# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed +# in the modules index. If set to NO, only the current project's groups will +# be listed. + +EXTERNAL_GROUPS = YES + +# The PERL_PATH should be the absolute path and name of the perl script +# interpreter (i.e. the result of `which perl'). + +PERL_PATH = /usr/bin/perl + +#--------------------------------------------------------------------------- +# Configuration options related to the dot tool +#--------------------------------------------------------------------------- + +# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will +# generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base or +# super classes. Setting the tag to NO turns the diagrams off. Note that this +# option is superseded by the HAVE_DOT option below. This is only a fallback. It is +# recommended to install and use dot, since it yields more powerful graphs. + +CLASS_DIAGRAMS = YES + +# If set to YES, the inheritance and collaboration graphs will hide +# inheritance and usage relations if the target is undocumented +# or is not a class. + +HIDE_UNDOC_RELATIONS = YES + +# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is +# available from the path. This tool is part of Graphviz, a graph visualization +# toolkit from AT&T and Lucent Bell Labs. The other options in this section +# have no effect if this option is set to NO (the default) + +HAVE_DOT = NO + +# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen +# will generate a graph for each documented class showing the direct and +# indirect inheritance relations. Setting this tag to YES will force the +# the CLASS_DIAGRAMS tag to NO. + +CLASS_GRAPH = YES + +# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen +# will generate a graph for each documented class showing the direct and +# indirect implementation dependencies (inheritance, containment, and +# class references variables) of the class with other documented classes. + +COLLABORATION_GRAPH = YES + +# If the UML_LOOK tag is set to YES doxygen will generate inheritance and +# collaboration diagrams in a style similar to the OMG's Unified Modeling +# Language. + +UML_LOOK = NO + +# If set to YES, the inheritance and collaboration graphs will show the +# relations between templates and their instances. + +TEMPLATE_RELATIONS = NO + +# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT +# tags are set to YES then doxygen will generate a graph for each documented +# file showing the direct and indirect include dependencies of the file with +# other documented files. + +INCLUDE_GRAPH = YES + +# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and +# HAVE_DOT tags are set to YES then doxygen will generate a graph for each +# documented header file showing the documented files that directly or +# indirectly include this file. + +INCLUDED_BY_GRAPH = YES + +# If the CALL_GRAPH and HAVE_DOT tags are set to YES then doxygen will +# generate a call dependency graph for every global function or class method. +# Note that enabling this option will significantly increase the time of a run. +# So in most cases it will be better to enable call graphs for selected +# functions only using the \callgraph command. + +CALL_GRAPH = NO + +# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen +# will graphical hierarchy of all classes instead of a textual one. + +GRAPHICAL_HIERARCHY = YES + +# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images +# generated by dot. Possible values are png, jpg, or gif +# If left blank png will be used. + +DOT_IMAGE_FORMAT = png + +# The tag DOT_PATH can be used to specify the path where the dot tool can be +# found. If left blank, it is assumed the dot tool can be found on the path. + +DOT_PATH = + +# The DOTFILE_DIRS tag can be used to specify one or more directories that +# contain dot files that are included in the documentation (see the +# \dotfile command). + +DOTFILE_DIRS = + +# The MAX_DOT_GRAPH_WIDTH tag can be used to set the maximum allowed width +# (in pixels) of the graphs generated by dot. If a graph becomes larger than +# this value, doxygen will try to truncate the graph, so that it fits within +# the specified constraint. Beware that most browsers cannot cope with very +# large images. + +MAX_DOT_GRAPH_WIDTH = 1024 + +# The MAX_DOT_GRAPH_HEIGHT tag can be used to set the maximum allows height +# (in pixels) of the graphs generated by dot. If a graph becomes larger than +# this value, doxygen will try to truncate the graph, so that it fits within +# the specified constraint. Beware that most browsers cannot cope with very +# large images. + +MAX_DOT_GRAPH_HEIGHT = 1024 + +# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the +# graphs generated by dot. A depth value of 3 means that only nodes reachable +# from the root by following a path via at most 3 edges will be shown. Nodes that +# lay further from the root node will be omitted. Note that setting this option to +# 1 or 2 may greatly reduce the computation time needed for large code bases. Also +# note that a graph may be further truncated if the graph's image dimensions are +# not sufficient to fit the graph (see MAX_DOT_GRAPH_WIDTH and MAX_DOT_GRAPH_HEIGHT). +# If 0 is used for the depth value (the default), the graph is not depth-constrained. + +MAX_DOT_GRAPH_DEPTH = 0 + +# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will +# generate a legend page explaining the meaning of the various boxes and +# arrows in the dot generated graphs. + +GENERATE_LEGEND = YES + +# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will +# remove the intermediate dot files that are used to generate +# the various graphs. + +DOT_CLEANUP = YES + +#--------------------------------------------------------------------------- +# Configuration::additions related to the search engine +#--------------------------------------------------------------------------- + +# The SEARCHENGINE tag specifies whether or not a search engine should be +# used. If set to NO the values of all tags below this one will be ignored. + +SEARCHENGINE = NO diff --git a/src/3rdparty/libconninet/src/dbusdispatcher.cpp b/src/3rdparty/libconninet/src/dbusdispatcher.cpp new file mode 100644 index 0000000..7581982 --- /dev/null +++ b/src/3rdparty/libconninet/src/dbusdispatcher.cpp @@ -0,0 +1,611 @@ +/* * This file is part of conninet * + * + * Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). + * All rights reserved. + * + * Contact: Aapo Makela + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public License + * version 2.1 as published by the Free Software Foundation. + * + * This library is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + * 02110-1301 USA + */ + +#include +#include +#include +#include +#include +#include +#include "dbusdispatcher.h" + +namespace Maemo { + +/*! + \class DBusDispatcher + + \brief DBusDispatcher is a class, which is able to send DBUS method call + messages and receive unicast signals from DBUS object. +*/ + +class DBusDispatcherPrivate +{ +public: + DBusDispatcherPrivate(const QString& service, + const QString& path, + const QString& interface, + const QString& signalPath) + : service(service), path(path), interface(interface), + signalPath(signalPath), connection(0) + { + memset(&signal_vtable, 0, sizeof(signal_vtable)); + } + + ~DBusDispatcherPrivate() + { + foreach(DBusPendingCall *call, pending_calls) { + dbus_pending_call_cancel(call); + dbus_pending_call_unref(call); + } + } + + QString service; + QString path; + QString interface; + QString signalPath; + struct DBusConnection *connection; + QList pending_calls; + struct DBusObjectPathVTable signal_vtable; +}; + +static bool constantVariantList(const QVariantList& variantList) { + // Special case, empty list == empty struct + if (variantList.isEmpty()) { + return false; + } else { + QVariant::Type type = variantList[0].type(); + // Iterate items in the list and check if they are same type + foreach(QVariant variant, variantList) { + if (variant.type() != type) { + return false; + } + } + } + return true; +} + +static QString variantToSignature(const QVariant& argument, + bool constantList = true) { + switch (argument.type()) { + case QVariant::Bool: + return "b"; + case QVariant::ByteArray: + return "ay"; + case QVariant::Char: + return "y"; + case QVariant::Int: + return "i"; + case QVariant::UInt: + return "u"; + case QVariant::StringList: + return "as"; + case QVariant::String: + return "s"; + case QVariant::LongLong: + return "x"; + case QVariant::ULongLong: + return "t"; + case QVariant::List: + { + QString signature; + QVariantList variantList = argument.toList(); + if (!constantList) { + signature += DBUS_STRUCT_BEGIN_CHAR_AS_STRING; + foreach(QVariant listItem, variantList) { + signature += variantToSignature(listItem); + } + signature += DBUS_STRUCT_END_CHAR_AS_STRING; + } else { + if (variantList.isEmpty()) + return ""; + signature = "a" + variantToSignature(variantList[0]); + } + + return signature; + } + default: + qDebug() << "Unsupported variant type: " << argument.type(); + break; + } + + return ""; +} + +static bool appendVariantToDBusMessage(const QVariant& argument, + DBusMessageIter *dbus_iter) { + int idx = 0; + DBusMessageIter array_iter; + QStringList str_list; + dbus_bool_t bool_data; + dbus_int32_t int32_data; + dbus_uint32_t uint32_data; + dbus_int64_t int64_data; + dbus_uint64_t uint64_data; + char *str_data; + char char_data; + + switch (argument.type()) { + + case QVariant::Bool: + bool_data = argument.toBool(); + dbus_message_iter_append_basic(dbus_iter, DBUS_TYPE_BOOLEAN, + &bool_data); + break; + + case QVariant::ByteArray: + str_data = argument.toByteArray().data(); + dbus_message_iter_open_container(dbus_iter, DBUS_TYPE_ARRAY, + DBUS_TYPE_BYTE_AS_STRING, &array_iter); + dbus_message_iter_append_fixed_array(&array_iter, + DBUS_TYPE_BYTE, + &str_data, + argument.toByteArray().size()); + dbus_message_iter_close_container(dbus_iter, &array_iter); + break; + + case QVariant::Char: + char_data = argument.toChar().toAscii(); + dbus_message_iter_append_basic(dbus_iter, DBUS_TYPE_BYTE, + &char_data); + break; + + case QVariant::Int: + int32_data = argument.toInt(); + dbus_message_iter_append_basic(dbus_iter, DBUS_TYPE_INT32, + &int32_data); + break; + + case QVariant::String: + str_data = argument.toString().toLatin1().data(); + dbus_message_iter_append_basic(dbus_iter, DBUS_TYPE_STRING, + &str_data); + break; + + case QVariant::StringList: + str_list = argument.toStringList(); + dbus_message_iter_open_container(dbus_iter, DBUS_TYPE_ARRAY, + "s", &array_iter); + for (idx = 0; idx < str_list.size(); idx++) { + str_data = str_list.at(idx).toLatin1().data(); + dbus_message_iter_append_basic(&array_iter, + DBUS_TYPE_STRING, + &str_data); + } + dbus_message_iter_close_container(dbus_iter, &array_iter); + break; + + case QVariant::UInt: + uint32_data = argument.toUInt(); + dbus_message_iter_append_basic(dbus_iter, DBUS_TYPE_UINT32, + &uint32_data); + break; + + case QVariant::ULongLong: + uint64_data = argument.toULongLong(); + dbus_message_iter_append_basic(dbus_iter, DBUS_TYPE_UINT64, + &uint64_data); + break; + + case QVariant::LongLong: + int64_data = argument.toLongLong(); + dbus_message_iter_append_basic(dbus_iter, DBUS_TYPE_INT64, + &int64_data); + break; + + case QVariant::List: + { + QVariantList variantList = argument.toList(); + bool constantList = constantVariantList(variantList); + DBusMessageIter array_iter; + + // List is mapped either as an DBUS array (all items same type) + // DBUS struct (variable types) depending on constantList + if (constantList) { + // Resolve the signature for the first item + QString signature = ""; + if (!variantList.isEmpty()) { + signature = variantToSignature( + variantList[0], + constantVariantList(variantList[0].toList())); + } + + // Mapped as DBUS array + dbus_message_iter_open_container(dbus_iter, DBUS_TYPE_ARRAY, + signature.toAscii(), + &array_iter); + + foreach(QVariant listItem, variantList) { + appendVariantToDBusMessage(listItem, &array_iter); + } + + dbus_message_iter_close_container(dbus_iter, &array_iter); + } else { + // Mapped as DBUS struct + dbus_message_iter_open_container(dbus_iter, DBUS_TYPE_STRUCT, + NULL, + &array_iter); + + foreach(QVariant listItem, variantList) { + appendVariantToDBusMessage(listItem, &array_iter); + } + + dbus_message_iter_close_container(dbus_iter, &array_iter); + } + + break; + } + default: + qDebug() << "Unsupported variant type: " << argument.type(); + break; + } + + return true; +} + +static QVariant getVariantFromDBusMessage(DBusMessageIter *iter) { + dbus_bool_t bool_data; + dbus_int32_t int32_data; + dbus_uint32_t uint32_data; + dbus_int64_t int64_data; + dbus_uint64_t uint64_data; + char *str_data; + char char_data; + int argtype = dbus_message_iter_get_arg_type(iter); + + switch (argtype) { + + case DBUS_TYPE_BOOLEAN: + { + dbus_message_iter_get_basic(iter, &bool_data); + QVariant variant((bool)bool_data); + return variant; + } + + case DBUS_TYPE_ARRAY: + { + // Handle all arrays here + int elem_type = dbus_message_iter_get_element_type(iter); + DBusMessageIter array_iter; + + dbus_message_iter_recurse(iter, &array_iter); + + if (elem_type == DBUS_TYPE_BYTE) { + QByteArray byte_array; + do { + dbus_message_iter_get_basic(&array_iter, &char_data); + byte_array.append(char_data); + } while (dbus_message_iter_next(&array_iter)); + QVariant variant(byte_array); + return variant; + } else if (elem_type == DBUS_TYPE_STRING) { + QStringList str_list; + do { + dbus_message_iter_get_basic(&array_iter, &str_data); + str_list.append(str_data); + } while (dbus_message_iter_next(&array_iter)); + QVariant variant(str_list); + return variant; + } else { + QVariantList variantList; + do { + variantList << getVariantFromDBusMessage(&array_iter); + } while (dbus_message_iter_next(&array_iter)); + QVariant variant(variantList); + return variant; + } + break; + } + + case DBUS_TYPE_BYTE: + { + dbus_message_iter_get_basic(iter, &char_data); + QChar ch(char_data); + QVariant variant(ch); + return variant; + } + + case DBUS_TYPE_INT32: + { + dbus_message_iter_get_basic(iter, &int32_data); + QVariant variant((int)int32_data); + return variant; + } + + case DBUS_TYPE_UINT32: + { + dbus_message_iter_get_basic(iter, &uint32_data); + QVariant variant((uint)uint32_data); + return variant; + } + + case DBUS_TYPE_STRING: + { + dbus_message_iter_get_basic(iter, &str_data); + QString str(str_data); + QVariant variant(str); + return variant; + } + + case DBUS_TYPE_INT64: + { + dbus_message_iter_get_basic(iter, &int64_data); + QVariant variant((qlonglong)int64_data); + return variant; + } + + case DBUS_TYPE_UINT64: + { + dbus_message_iter_get_basic(iter, &uint64_data); + QVariant variant((qulonglong)uint64_data); + return variant; + } + + case DBUS_TYPE_STRUCT: + { + // Handle all structs here + DBusMessageIter struct_iter; + dbus_message_iter_recurse(iter, &struct_iter); + + QVariantList variantList; + do { + variantList << getVariantFromDBusMessage(&struct_iter); + } while (dbus_message_iter_next(&struct_iter)); + QVariant variant(variantList); + return variant; + } + + default: + qDebug() << "Unsupported DBUS type: " << argtype; + } + + return QVariant(); +} + +static DBusHandlerResult signalHandler (DBusConnection *connection, + DBusMessage *message, + void *object_ref) { + (void)connection; + QString interface; + QString signal; + DBusDispatcher *dispatcher = (DBusDispatcher *)object_ref; + + if (dbus_message_get_type(message) == DBUS_MESSAGE_TYPE_SIGNAL) { + interface = dbus_message_get_interface(message); + signal = dbus_message_get_member(message); + + QList arglist; + DBusMessageIter dbus_iter; + + if (dbus_message_iter_init(message, &dbus_iter)) { + // Read return arguments + while (dbus_message_iter_get_arg_type (&dbus_iter) != DBUS_TYPE_INVALID) { + arglist << getVariantFromDBusMessage(&dbus_iter); + dbus_message_iter_next(&dbus_iter); + } + } + + dispatcher->emitSignalReceived(interface, signal, arglist); + return DBUS_HANDLER_RESULT_HANDLED; + } + (void)message; + return DBUS_HANDLER_RESULT_NOT_YET_HANDLED; +} + +DBusDispatcher::DBusDispatcher(const QString& service, + const QString& path, + const QString& interface, + QObject *parent) + : QObject(parent), + d_ptr(new DBusDispatcherPrivate(service, path, interface, path)) { + setupDBus(); +} + +DBusDispatcher::DBusDispatcher(const QString& service, + const QString& path, + const QString& interface, + const QString& signalPath, + QObject *parent) + : QObject(parent), + d_ptr(new DBusDispatcherPrivate(service, path, interface, signalPath)) { + setupDBus(); +} + +DBusDispatcher::~DBusDispatcher() +{ + if (d_ptr->connection) { + dbus_connection_close(d_ptr->connection); + dbus_connection_unref(d_ptr->connection); + } + delete d_ptr; +} + +void DBusDispatcher::setupDBus() +{ + d_ptr->connection = dbus_bus_get_private(DBUS_BUS_SYSTEM, NULL); + + if (d_ptr->connection == NULL) + qDebug() << "Unable to get DBUS connection!"; + else { + d_ptr->signal_vtable.message_function = signalHandler; + + dbus_connection_set_exit_on_disconnect(d_ptr->connection, FALSE); + dbus_connection_setup_with_g_main(d_ptr->connection, NULL); + dbus_connection_register_object_path(d_ptr->connection, + d_ptr->signalPath.toLatin1(), + &d_ptr->signal_vtable, + this); + } +} + +static DBusMessage *prepareDBusCall(const QString& service, + const QString& path, + const QString& interface, + const QString& method, + const QVariant& arg1 = QVariant(), + const QVariant& arg2 = QVariant(), + const QVariant& arg3 = QVariant(), + const QVariant& arg4 = QVariant(), + const QVariant& arg5 = QVariant(), + const QVariant& arg6 = QVariant(), + const QVariant& arg7 = QVariant(), + const QVariant& arg8 = QVariant()) +{ + DBusMessage *message = dbus_message_new_method_call(service.toLatin1(), + path.toLatin1(), + interface.toLatin1(), + method.toLatin1()); + DBusMessageIter dbus_iter; + + // Append variants to DBUS message + QList arglist; + if (arg1.isValid()) arglist << arg1; + if (arg2.isValid()) arglist << arg2; + if (arg3.isValid()) arglist << arg3; + if (arg4.isValid()) arglist << arg4; + if (arg5.isValid()) arglist << arg5; + if (arg6.isValid()) arglist << arg6; + if (arg7.isValid()) arglist << arg7; + if (arg8.isValid()) arglist << arg8; + + dbus_message_iter_init_append (message, &dbus_iter); + + while (!arglist.isEmpty()) { + QVariant argument = arglist.takeFirst(); + appendVariantToDBusMessage(argument, &dbus_iter); + } + + return message; +} + +QList DBusDispatcher::call(const QString& method, + const QVariant& arg1, + const QVariant& arg2, + const QVariant& arg3, + const QVariant& arg4, + const QVariant& arg5, + const QVariant& arg6, + const QVariant& arg7, + const QVariant& arg8) { + DBusMessageIter dbus_iter; + DBusMessage *message = prepareDBusCall(d_ptr->service, d_ptr->path, + d_ptr->interface, method, + arg1, arg2, arg3, arg4, arg5, + arg6, arg7, arg8); + DBusMessage *reply = dbus_connection_send_with_reply_and_block( + d_ptr->connection, + message, -1, NULL); + dbus_message_unref(message); + + QList replylist; + if (reply != NULL && dbus_message_iter_init(reply, &dbus_iter)) { + // Read return arguments + while (dbus_message_iter_get_arg_type (&dbus_iter) != DBUS_TYPE_INVALID) { + replylist << getVariantFromDBusMessage(&dbus_iter); + dbus_message_iter_next(&dbus_iter); + } + } + if (reply != NULL) dbus_message_unref(reply); + return replylist; +} + +class PendingCallInfo { +public: + QString method; + DBusDispatcher *dispatcher; + DBusDispatcherPrivate *priv; +}; + +static void freePendingCallInfo(void *memory) { + PendingCallInfo *info = (PendingCallInfo *)memory; + delete info; +} + +static void pendingCallFunction (DBusPendingCall *pending, + void *memory) { + PendingCallInfo *info = (PendingCallInfo *)memory; + QString errorStr; + QList replyList; + DBusMessage *reply = dbus_pending_call_steal_reply (pending); + + Q_ASSERT(reply != NULL); + + if (dbus_message_get_type(reply) == DBUS_MESSAGE_TYPE_ERROR) { + errorStr = dbus_message_get_error_name (reply); + } else { + DBusMessageIter dbus_iter; + dbus_message_iter_init(reply, &dbus_iter); + // Read return arguments + while (dbus_message_iter_get_arg_type (&dbus_iter) != DBUS_TYPE_INVALID) { + replyList << getVariantFromDBusMessage(&dbus_iter); + dbus_message_iter_next(&dbus_iter); + } + } + + info->priv->pending_calls.removeOne(pending); + info->dispatcher->emitCallReply(info->method, replyList, errorStr); + dbus_message_unref(reply); + dbus_pending_call_unref(pending); +} + +bool DBusDispatcher::callAsynchronous(const QString& method, + const QVariant& arg1, + const QVariant& arg2, + const QVariant& arg3, + const QVariant& arg4, + const QVariant& arg5, + const QVariant& arg6, + const QVariant& arg7, + const QVariant& arg8) { + DBusMessage *message = prepareDBusCall(d_ptr->service, d_ptr->path, + d_ptr->interface, method, + arg1, arg2, arg3, arg4, arg5, + arg6, arg7, arg8); + DBusPendingCall *call = NULL; + dbus_bool_t ret = dbus_connection_send_with_reply(d_ptr->connection, + message, &call, -1); + PendingCallInfo *info = new PendingCallInfo; + info->method = method; + info->dispatcher = this; + info->priv = d_ptr; + + dbus_pending_call_set_notify(call, pendingCallFunction, info, freePendingCallInfo); + d_ptr->pending_calls.append(call); + return (bool)ret; +} + +void DBusDispatcher::emitSignalReceived(const QString& interface, + const QString& signal, + const QList& args) { + emit signalReceived(interface, signal, args); } + +void DBusDispatcher::emitCallReply(const QString& method, + const QList& args, + const QString& error) { + emit callReply(method, args, error); } + +void DBusDispatcher::synchronousDispatch(int timeout_ms) +{ + dbus_connection_read_write_dispatch(d_ptr->connection, timeout_ms); +} + +} // Maemo namespace + diff --git a/src/3rdparty/libconninet/src/dbusdispatcher.h b/src/3rdparty/libconninet/src/dbusdispatcher.h new file mode 100644 index 0000000..2f71b6f --- /dev/null +++ b/src/3rdparty/libconninet/src/dbusdispatcher.h @@ -0,0 +1,91 @@ +/* * This file is part of conn-dui-settings-inet * + * + * Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). + * All rights reserved. + * + * Contact: Aapo Makela + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public License + * version 2.1 as published by the Free Software Foundation. + * + * This library is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + * 02110-1301 USA + */ + +#ifndef DBUSDISPATCHER_H +#define DBUSDISPATCHER_H + +#include +#include + +namespace Maemo { + +class DBusDispatcherPrivate; +class DBusDispatcher : public QObject +{ + Q_OBJECT + +public: + DBusDispatcher(const QString& service, + const QString& path, + const QString& interface, + QObject *parent = 0); + DBusDispatcher(const QString& service, + const QString& path, + const QString& interface, + const QString& signalPath, + QObject *parent = 0); + ~DBusDispatcher(); + + QList call(const QString& method, + const QVariant& arg1 = QVariant(), + const QVariant& arg2 = QVariant(), + const QVariant& arg3 = QVariant(), + const QVariant& arg4 = QVariant(), + const QVariant& arg5 = QVariant(), + const QVariant& arg6 = QVariant(), + const QVariant& arg7 = QVariant(), + const QVariant& arg8 = QVariant()); + bool callAsynchronous(const QString& method, + const QVariant& arg1 = QVariant(), + const QVariant& arg2 = QVariant(), + const QVariant& arg3 = QVariant(), + const QVariant& arg4 = QVariant(), + const QVariant& arg5 = QVariant(), + const QVariant& arg6 = QVariant(), + const QVariant& arg7 = QVariant(), + const QVariant& arg8 = QVariant()); + void emitSignalReceived(const QString& interface, + const QString& signal, + const QList& args); + void emitCallReply(const QString& method, + const QList& args, + const QString& error = ""); + void synchronousDispatch(int timeout_ms); + +Q_SIGNALS: + void signalReceived(const QString& interface, + const QString& signal, + const QList& args); + void callReply(const QString& method, + const QList& args, + const QString& error); + +protected: + void setupDBus(); + +private: + DBusDispatcherPrivate *d_ptr; +}; + +} // Maemo namespace + +#endif diff --git a/src/3rdparty/libconninet/src/iapconf.cpp b/src/3rdparty/libconninet/src/iapconf.cpp new file mode 100644 index 0000000..2e77fa5 --- /dev/null +++ b/src/3rdparty/libconninet/src/iapconf.cpp @@ -0,0 +1,299 @@ +/* + libconninet - Internet Connectivity support library + + Copyright (C) 2009-2010 Nokia Corporation. All rights reserved. + + Contact: Aapo Makela + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public License + version 2.1 as published by the Free Software Foundation. + + This library is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + 02110-1301 USA +*/ + +#include +#include +#include + +#include "iapconf.h" + +#define QSTRING_TO_CONST_CSTR(str) \ + str.toUtf8().constData() + +namespace Maemo { + +class IAPConfPrivate { +public: + ConnSettings *settings; + + ConnSettingsValue *variantToValue(const QVariant &variant); + QVariant valueToVariant(ConnSettingsValue *value); +}; + +ConnSettingsValue *IAPConfPrivate::variantToValue(const QVariant &variant) +{ + // Convert variant to ConnSettingsValue + ConnSettingsValue *value = conn_settings_value_new(); + if (value == 0) { + qWarning("IAPConf: Unable to create new ConnSettingsValue"); + return 0; + } + + switch(variant.type()) { + + case QVariant::Invalid: + value->type = CONN_SETTINGS_VALUE_INVALID; + break; + + case QVariant::String: { + char *valueStr = strdup(QSTRING_TO_CONST_CSTR(variant.toString())); + value->type = CONN_SETTINGS_VALUE_STRING; + value->value.string_val = valueStr; + break; + } + + case QVariant::Int: + value->type = CONN_SETTINGS_VALUE_INT; + value->value.int_val = variant.toInt(); + break; + + case QMetaType::Float: + case QVariant::Double: + value->type = CONN_SETTINGS_VALUE_DOUBLE; + value->value.double_val = variant.toDouble(); + break; + + case QVariant::Bool: + value->type = CONN_SETTINGS_VALUE_BOOL; + value->value.bool_val = variant.toBool() ? 1 : 0; + break; + + case QVariant::ByteArray: { + QByteArray array = variant.toByteArray(); + value->type = CONN_SETTINGS_VALUE_BYTE_ARRAY; + value->value.byte_array.len = array.size(); + value->value.byte_array.val = (unsigned char *)malloc(array.size()); + memcpy(value->value.byte_array.val, array.constData(), array.size()); + break; + } + + case QVariant::List: { + QVariantList list = variant.toList(); + ConnSettingsValue **list_val = (ConnSettingsValue **)malloc( + (list.size() + 1) * sizeof(ConnSettingsValue *)); + + for (int idx = 0; idx < list.size(); idx++) { + list_val[idx] = variantToValue(list.at(idx)); + } + list_val[list.size()] = 0; + + value->type = CONN_SETTINGS_VALUE_LIST; + value->value.list_val = list_val; + break; + } + + default: + qWarning("IAPConf: Can not handle QVariant of type %d", + variant.type()); + conn_settings_value_destroy(value); + return 0; + } + + return value; +} + +QVariant IAPConfPrivate::valueToVariant(ConnSettingsValue *value) +{ + if (value == 0 || value->type == CONN_SETTINGS_VALUE_INVALID) { + return QVariant(); + } + + switch(value->type) { + + case CONN_SETTINGS_VALUE_BOOL: + return QVariant(value->value.bool_val ? true : false); + + case CONN_SETTINGS_VALUE_STRING: + return QVariant(QString(value->value.string_val)); + + case CONN_SETTINGS_VALUE_DOUBLE: + return QVariant(value->value.double_val); + + case CONN_SETTINGS_VALUE_INT: + return QVariant(value->value.int_val); + + case CONN_SETTINGS_VALUE_LIST: { + // At least with GConf backend connsettings returns byte array as list + // of ints, first check for that case + if (value->value.list_val && value->value.list_val[0]) { + bool canBeConvertedToByteArray = true; + for (int idx = 0; value->value.list_val[idx]; idx++) { + ConnSettingsValue *val = value->value.list_val[idx]; + if (val->type != CONN_SETTINGS_VALUE_INT + || val->value.int_val > 255 + || val->value.int_val < 0) { + canBeConvertedToByteArray = false; + break; + } + } + + if (canBeConvertedToByteArray) { + QByteArray array; + for (int idx = 0; value->value.list_val[idx]; idx++) { + array.append(value->value.list_val[idx]->value.int_val); + } + return array; + } + + // Create normal list + QVariantList list; + for (int idx = 0; value->value.list_val[idx]; idx++) { + list.append(valueToVariant(value->value.list_val[idx])); + } + return list; + } + } + + case CONN_SETTINGS_VALUE_BYTE_ARRAY: + return QByteArray::fromRawData((char *)value->value.byte_array.val, + value->value.byte_array.len); + + default: + return QVariant(); + } +} + +// Public class implementation + +IAPConf::IAPConf(const QString &iap_id) + : d_ptr(new IAPConfPrivate) +{ + d_ptr->settings = conn_settings_open(CONN_SETTINGS_CONNECTION, + QSTRING_TO_CONST_CSTR(iap_id)); + if (d_ptr->settings == 0) { + qWarning("IAPConf: Unable to open ConnSettings for %s", + QSTRING_TO_CONST_CSTR(iap_id)); + } +} + +IAPConf::~IAPConf() +{ + conn_settings_close(d_ptr->settings); + delete d_ptr; +} + +void IAPConf::setValue(const QString& key, const QVariant& value) +{ + // Invalid value means unsetting the given key + if (!value.isValid()) { + int err = conn_settings_unset(d_ptr->settings, + QSTRING_TO_CONST_CSTR(key)); + if (err != CONN_SETTINGS_E_NO_ERROR) { + qWarning("IAPConf: unable to unset key %s: %s", + QSTRING_TO_CONST_CSTR(key), + conn_settings_error_text((ConnSettingsError)err)); + } + return; + } + + // Convert value to ConnSettingsValue + ConnSettingsValue *val = d_ptr->variantToValue(value); + if (val == 0) return; + + // Set value and handle errors + int error = conn_settings_set(d_ptr->settings, + QSTRING_TO_CONST_CSTR(key), + val); + if (error != CONN_SETTINGS_E_NO_ERROR) { + qWarning("IAPConf: error in setting key %s: %s", + QSTRING_TO_CONST_CSTR(key), + conn_settings_error_text((ConnSettingsError)error)); + } + + // Destroy value + conn_settings_value_destroy(val); + return; +} + +void IAPConf::set(const QString& key1, const QVariant& value1, + const QString& key2, const QVariant& value2, + const QString& key3, const QVariant& value3, + const QString& key4, const QVariant& value4, + const QString& key5, const QVariant& value5, + const QString& key6, const QVariant& value6, + const QString& key7, const QVariant& value7, + const QString& key8, const QVariant& value8, + const QString& key9, const QVariant& value9, + const QString& key10, const QVariant& value10) +{ + if (!key1.isEmpty()) setValue(key1, value1); + if (!key2.isEmpty()) setValue(key2, value2); + if (!key3.isEmpty()) setValue(key3, value3); + if (!key4.isEmpty()) setValue(key4, value4); + if (!key5.isEmpty()) setValue(key5, value5); + if (!key6.isEmpty()) setValue(key6, value6); + if (!key7.isEmpty()) setValue(key7, value7); + if (!key8.isEmpty()) setValue(key8, value8); + if (!key9.isEmpty()) setValue(key9, value9); + if (!key10.isEmpty()) setValue(key10, value10); +} + +QVariant IAPConf::value(const QString& key) const +{ + ConnSettingsValue *val = conn_settings_get(d_ptr->settings, + QSTRING_TO_CONST_CSTR(key)); + + QVariant variant = d_ptr->valueToVariant(val); + conn_settings_value_destroy(val); + return variant; +} + +void IAPConf::clear(const char *default_path) +{ + Q_UNUSED(default_path); // default path is unused + + int error = conn_settings_remove(d_ptr->settings); + if (error != CONN_SETTINGS_E_NO_ERROR) { + qWarning("IAPConf: Error when removing IAP: %s", + conn_settings_error_text((ConnSettingsError)error)); + } +} + +void IAPConf::clearAll() +{ + ConnSettings *settings = conn_settings_open(CONN_SETTINGS_CONNECTION, + NULL); + conn_settings_remove(settings); + conn_settings_close(settings); +} + + +void IAPConf::getAll(QList &all_iaps, bool return_path) +{ + Q_UNUSED(return_path); // We don't use return path currently + + // Go through all available connections and add them to the list + char **ids = conn_settings_list_ids(CONN_SETTINGS_CONNECTION); + if (ids == 0) { + // No ids found - nothing to do + return; + } + + for (int idx = 0; ids[idx]; idx++) { + all_iaps.append(QString(ids[idx])); + free(ids[idx]); + } + free(ids); +} + + +} // namespace Maemo diff --git a/src/3rdparty/libconninet/src/iapconf.h b/src/3rdparty/libconninet/src/iapconf.h new file mode 100644 index 0000000..57c0856 --- /dev/null +++ b/src/3rdparty/libconninet/src/iapconf.h @@ -0,0 +1,84 @@ +/* + libconninet - Internet Connectivity support library + + Copyright (C) 2009 Nokia Corporation. All rights reserved. + + Contact: Aapo Makela + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public License + version 2.1 as published by the Free Software Foundation. + + This library is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + 02110-1301 USA +*/ + +#ifndef IAPCONF_H +#define IAPCONF_H + +#include +#include + +namespace Maemo { + +class IAPConfPrivate; +class IAPConf { +public: + IAPConf(const QString &iap_id); + virtual ~IAPConf(); + + /** + Convenience method for setting multiple IAP values with one call. + */ + void set(const QString& key1, const QVariant& value1, + const QString& key2 = "", const QVariant& value2 = QVariant(), + const QString& key3 = "", const QVariant& value3 = QVariant(), + const QString& key4 = "", const QVariant& value4 = QVariant(), + const QString& key5 = "", const QVariant& value5 = QVariant(), + const QString& key6 = "", const QVariant& value6 = QVariant(), + const QString& key7 = "", const QVariant& value7 = QVariant(), + const QString& key8 = "", const QVariant& value8 = QVariant(), + const QString& key9 = "", const QVariant& value9 = QVariant(), + const QString& key10 = "", const QVariant& value10 = QVariant()); + + /** + Set one IAP value. + */ + void setValue(const QString& key, const QVariant& value); + + /** + Get one IAP value. + */ + QVariant value(const QString& key) const; + + /** + Clear this IAP from GConf + */ + void clear(const char *default_path=0); + + /** + Clear all IAP specific information from GConf (including all IAPs). + DO NOT USE THIS FUNCTION IN ANYWHERE ELSE EXCEPT IN TEST CODE! + */ + void clearAll(); + + /** + Return all the IAPs found in the system. If return_path is true, + then do not strip the IAP path away. + */ + static void getAll(QList &all_iaps, bool return_path=false); + +private: + IAPConfPrivate *d_ptr; +}; + +} // namespace Maemo + +#endif diff --git a/src/3rdparty/libconninet/src/iapmonitor.cpp b/src/3rdparty/libconninet/src/iapmonitor.cpp new file mode 100644 index 0000000..c44cbc8 --- /dev/null +++ b/src/3rdparty/libconninet/src/iapmonitor.cpp @@ -0,0 +1,110 @@ +/* + libconninet - Internet Connectivity support library + + Copyright (C) 2009-2010 Nokia Corporation. All rights reserved. + + Contact: Jukka Rissanen + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public License + version 2.1 as published by the Free Software Foundation. + + This library is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + 02110-1301 USA +*/ + +#include + +#include +#include "iapmonitor.h" + +namespace Maemo { + + +void conn_settings_notify_func (ConnSettingsType type, + const char *id, + const char *key, + ConnSettingsValue *value, + void *user_data); + +class IAPMonitorPrivate { +private: + IAPMonitor *monitor; + ConnSettings *settings; + +public: + + IAPMonitorPrivate(IAPMonitor *monitor) + : monitor(monitor) + { + settings = conn_settings_open(CONN_SETTINGS_CONNECTION, NULL); + conn_settings_add_notify( + settings, + (ConnSettingsNotifyFunc *)conn_settings_notify_func, + this); + } + + ~IAPMonitorPrivate() + { + conn_settings_del_notify(settings); + conn_settings_close(settings); + } + + void iapAdded(const QString &iap) + { + monitor->iapAdded(iap); + } + + void iapRemoved(const QString &iap) + { + monitor->iapRemoved(iap); + } +}; + +void conn_settings_notify_func (ConnSettingsType type, + const char *id, + const char *key, + ConnSettingsValue *value, + void *user_data) +{ + if (type != CONN_SETTINGS_CONNECTION) return; + IAPMonitorPrivate *priv = (IAPMonitorPrivate *)user_data; + + QString iapId(key); + iapId = iapId.split("/")[0]; + if (value != 0) { + priv->iapAdded(iapId); + } else if (iapId == QString(key)) { + // IAP is removed only when the directory gets removed + priv->iapRemoved(iapId); + } +} + +IAPMonitor::IAPMonitor() + : d_ptr(new IAPMonitorPrivate(this)) +{ +} + +IAPMonitor::~IAPMonitor() +{ + delete d_ptr; +} + +void IAPMonitor::iapAdded(const QString &id) +{ + // By default do nothing +} + +void IAPMonitor::iapRemoved(const QString &id) +{ + // By default do nothing +} + +} // namespace Maemo diff --git a/src/3rdparty/libconninet/src/iapmonitor.h b/src/3rdparty/libconninet/src/iapmonitor.h new file mode 100644 index 0000000..558f23e --- /dev/null +++ b/src/3rdparty/libconninet/src/iapmonitor.h @@ -0,0 +1,48 @@ +/* + libconninet - Internet Connectivity support library + + Copyright (C) 2009-2010 Nokia Corporation. All rights reserved. + + Contact: Jukka Rissanen + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public License + version 2.1 as published by the Free Software Foundation. + + This library is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + 02110-1301 USA +*/ + +#ifndef IAPMONITOR_H +#define IAPMONITOR_H + +#include + +namespace Maemo { + +class IAPMonitorPrivate; +class IAPMonitor { +public: + IAPMonitor(); + ~IAPMonitor(); + +protected: + virtual void iapAdded(const QString &id); + virtual void iapRemoved(const QString &id); + +private: + IAPMonitorPrivate *d_ptr; + Q_DECLARE_PRIVATE(IAPMonitor); +}; + +} // namespace Maemo + +#endif // IAPMONITOR_H + diff --git a/src/3rdparty/libconninet/src/maemo_icd.cpp b/src/3rdparty/libconninet/src/maemo_icd.cpp new file mode 100644 index 0000000..026241c --- /dev/null +++ b/src/3rdparty/libconninet/src/maemo_icd.cpp @@ -0,0 +1,1316 @@ +/* + libconninet - Internet Connectivity support library + + Copyright (C) 2009 Nokia Corporation. All rights reserved. + + Contact: Jukka Rissanen + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public License + version 2.1 as published by the Free Software Foundation. + + This library is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + 02110-1301 USA +*/ + +#include +#include "maemo_icd.h" +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include + +namespace Maemo { + +#undef PRINT_DEBUGINFO +#ifdef PRINT_DEBUGINFO + static FILE *fdebug = NULL; +#define PDEBUG(fmt, args...) \ + do { \ + struct timeval tv; \ + gettimeofday(&tv, 0); \ + fprintf(fdebug, "DEBUG[%d]:%ld.%ld:%s:%s():%d: " fmt, \ + getpid(), \ + tv.tv_sec, tv.tv_usec, \ + __FILE__, __FUNCTION__, __LINE__, args); \ + fflush(fdebug); \ + } while(0) +#else +#define PDEBUG(fmt...) +#endif + + +/* Reference counting singleton class that creates a single connection + * to icd so that icd reference counting works as expected. This is + * needed because DBusDispatcher uses private dbus connections + * which come and go and icd cannot use that information to + * determine whether application quit or not. So we create one + * persistent connection that is only teared down when application + * quits or calls disconnect() + */ +class IcdRefCounting +{ +public: + IcdRefCounting() : first_call(true) { } + void setup(enum icd_connection_flags flag); + void cleanup(); + +private: + bool first_call; + struct DBusConnection *connection; +}; + +Q_GLOBAL_STATIC(IcdRefCounting, icdRefCounting); + + +void IcdRefCounting::setup(enum icd_connection_flags flag) +{ + if (first_call) { + DBusMessage *msg = NULL; + + connection = dbus_bus_get_private(DBUS_BUS_SYSTEM, NULL); + dbus_connection_set_exit_on_disconnect(connection, FALSE); + dbus_connection_setup_with_g_main(connection, NULL); + + msg = dbus_message_new_method_call(ICD_DBUS_API_INTERFACE, + ICD_DBUS_API_PATH, + ICD_DBUS_API_INTERFACE, + ICD_DBUS_API_CONNECT_REQ); + if (msg == NULL) + goto out; + + if (!dbus_message_append_args(msg, + DBUS_TYPE_UINT32, &flag, + DBUS_TYPE_INVALID)) + goto out; + + if (!dbus_connection_send_with_reply(connection, msg, + NULL, 60*1000)) + goto out; + + first_call = false; + return; + + out: + dbus_connection_close(connection); + dbus_connection_unref(connection); + } +} + +void IcdRefCounting::cleanup() +{ + if (!first_call) { + dbus_connection_close(connection); + dbus_connection_unref(connection); + first_call = true; + } +} + + +class IcdPrivate +{ +public: + IcdPrivate(Icd *myfriend) + { + init(10000, IcdNewDbusInterface, myfriend); + } + + IcdPrivate(unsigned int timeout, Icd *myfriend) + { + init(timeout, IcdNewDbusInterface, myfriend); + } + + IcdPrivate(unsigned int timeout, IcdDbusInterfaceVer ver, Icd *myfriend) + { + /* Note that the old Icd interface is currently disabled and + * the new one is always used. + */ + init(timeout, IcdNewDbusInterface, myfriend); + } + + ~IcdPrivate() + { + QObject::disconnect(mDBus, + SIGNAL(signalReceived(const QString&, + const QString&, + const QList&)), + icd, + SLOT(icdSignalReceived(const QString&, + const QString&, + const QList&))); + + QObject::disconnect(mDBus, + SIGNAL(callReply(const QString&, + const QList&, + const QString&)), + icd, + SLOT(icdCallReply(const QString&, + const QList&, + const QString&))); + + delete mDBus; + mDBus = 0; + } + + /* Icd2 dbus API functions */ + QStringList scan(icd_scan_request_flags flags, + QStringList &network_types, + QList& scan_results, + QString& error); + void scanCancel(); + bool connect(icd_connection_flags flags, IcdConnectResult& result); + bool connect(icd_connection_flags flags, QList& params, + IcdConnectResult& result); + bool connect(icd_connection_flags flags, QString& iap, QString& result); + void select(uint flags); + void disconnect(uint connect_flags, QString& service_type, + uint service_attrs, QString& service_id, + QString& network_type, uint network_attrs, + QByteArray& network_id); + void disconnect(uint connect_flags); + + uint state(QString& service_type, uint service_attrs, + QString& service_id, QString& network_type, + uint network_attrs, QByteArray& network_id, + IcdStateResult &state_result); + uint statistics(QString& service_type, uint service_attrs, + QString& service_id, QString& network_type, + uint network_attrs, QByteArray& network_id, + IcdStatisticsResult& stats_result); + uint addrinfo(QString& service_type, uint service_attrs, + QString& service_id, QString& network_type, + uint network_attrs, QByteArray& network_id, + IcdAddressInfoResult& addr_result); + + uint state(QList& state_results); + uint state_non_blocking(QList& state_results); + uint statistics(QList& stats_results); + uint addrinfo(QList& addr_results); + uint addrinfo_non_blocking(QList& addr_results); + + void signalReceived(const QString& interface, + const QString& signal, + const QList& args); + void callReply(const QString& method, + const QList& args, + const QString& error); + + QString error() { return mError; } + +public: + DBusDispatcher *mDBus; + QString mMethod; + QString mInterface; + QString mSignal; + QString mError; + QList mArgs; + QList receivedSignals; + unsigned int timeout; + IcdDbusInterfaceVer icd_dbus_version; + Icd *icd; + + void init(unsigned int dbus_timeout, IcdDbusInterfaceVer ver, + Icd *myfriend) + { + if (ver == IcdNewDbusInterface) { + mDBus = new DBusDispatcher(ICD_DBUS_API_INTERFACE, + ICD_DBUS_API_PATH, + ICD_DBUS_API_INTERFACE); + } else { + mDBus = new DBusDispatcher(ICD_DBUS_SERVICE, + ICD_DBUS_PATH, + ICD_DBUS_INTERFACE); + } + icd_dbus_version = ver; + + /* This connect has a side effect as it means that only one + * Icd object can exists in one time. This should be fixed! + */ + QObject::connect(mDBus, + SIGNAL(signalReceived(const QString&, + const QString&, + const QList&)), + myfriend, + SLOT(icdSignalReceived(const QString&, + const QString&, + const QList&))); + + QObject::connect(mDBus, + SIGNAL(callReply(const QString&, + const QList&, + const QString&)), + myfriend, + SLOT(icdCallReply(const QString&, + const QList&, + const QString&))); + + icd = myfriend; + timeout = dbus_timeout; + +#ifdef PRINT_DEBUGINFO + if (!fdebug) { + fdebug = fopen("/tmp/maemoicd.log", "a+"); + } + PDEBUG("created %s\n", "IcdPrivate"); +#endif + } + + void clearState() + { + mMethod.clear(); + mInterface.clear(); + mSignal.clear(); + mError.clear(); + mArgs.clear(); + receivedSignals.clear(); + } + + bool doConnect(IcdConnectResult& result); + bool doConnect(QString& result); + bool doState(); +}; + + +void IcdPrivate::signalReceived(const QString& interface, + const QString& signal, + const QList& args) +{ + // Signal handler, which simply records what has been signalled + mInterface = interface; + mSignal = signal; + mArgs = args; + + //qDebug() << "signal" << signal << "received:" << args; + receivedSignals << QVariant(interface) << QVariant(signal) << QVariant(args); +} + + +void IcdPrivate::callReply(const QString& method, + const QList& /*args*/, + const QString& error) +{ + mMethod = method; + mError = error; +} + + +static void get_scan_result(QList& args, + IcdScanResult& ret) +{ + int i=0; + + if (args.isEmpty()) + return; + + ret.status = args[i++].toUInt(); + ret.timestamp = args[i++].toUInt(); + ret.scan.service_type = args[i++].toString(); + ret.service_name = args[i++].toString(); + ret.scan.service_attrs = args[i++].toUInt(); + ret.scan.service_id = args[i++].toString(); + ret.service_priority = args[i++].toInt(); + ret.scan.network_type = args[i++].toString(); + ret.network_name = args[i++].toString(); + ret.scan.network_attrs = args[i++].toUInt(); + ret.scan.network_id = args[i++].toByteArray(); + ret.network_priority = args[i++].toInt(); + ret.signal_strength = args[i++].toInt(); + ret.station_id = args[i++].toString(); + ret.signal_dB = args[i++].toInt(); +} + + +static void get_connect_result(QList& args, + IcdConnectResult& ret) +{ + int i=0; + + if (args.isEmpty()) + return; + + ret.connect.service_type = args[i++].toString(); + ret.connect.service_attrs = args[i++].toInt(); + ret.connect.service_id = args[i++].toString(); + ret.connect.network_type = args[i++].toString(); + ret.connect.network_attrs = args[i++].toInt(); + ret.connect.network_id = args[i++].toByteArray(); + ret.status = args[i++].toInt(); +} + + +QStringList IcdPrivate::scan(icd_scan_request_flags flags, + QStringList &network_types, + QList& scan_results, + QString& error) +{ + QStringList scanned_types; + QTimer timer; + QVariant reply; + QVariantList vl; + bool last_result = false; + IcdScanResult result; + int all_waited; + + clearState(); + reply = mDBus->call(ICD_DBUS_API_SCAN_REQ, (uint)flags); + if (reply.type() != QVariant::List) + return scanned_types; + vl = reply.toList(); + if (vl.isEmpty()) { + error = "Scan did not return anything."; + return scanned_types; + } + reply = vl.first(); + scanned_types = reply.toStringList(); + //qDebug() << "Scanning:" << scanned_types; + all_waited = scanned_types.size(); + + timer.setSingleShot(true); + timer.start(timeout); + + scan_results.clear(); + while (!last_result) { + while (timer.isActive() && mInterface.isEmpty() && mError.isEmpty()) { + QCoreApplication::processEvents(QEventLoop::AllEvents, 1000); + } + + if (!timer.isActive()) { + //qDebug() << "Timeout happened"; + break; + } + + if (mSignal != ICD_DBUS_API_SCAN_SIG) { + //qDebug() << "Received" << mSignal << "while waiting" << ICD_DBUS_API_SCAN_SIG << ", ignoring"; + mInterface.clear(); + continue; + } + + if (mError.isEmpty()) { + QString msgInterface = receivedSignals.takeFirst().toString(); + QString msgSignal = receivedSignals.takeFirst().toString(); + QList msgArgs = receivedSignals.takeFirst().toList(); + //qDebug() << "Signal" << msgSignal << "received."; + //qDebug() << "Params:" << msgArgs; + + while (!msgSignal.isEmpty()) { + get_scan_result(msgArgs, result); + +#if 0 + qDebug() << "Received: " << + "status =" << result.status << + ", timestamp =" << result.timestamp << + ", service_type =" << result.scan.service_type << + ", service_name =" << result.service_name << + ", service_attrs =" << result.scan.service_attrs << + ", service_id =" << result.scan.service_id << + ", service_priority =" << result.service_priority << + ", network_type =" << result.scan.network_type << + ", network_name =" << result.network_name << + ", network_attrs =" << result.scan.network_attrs << + ", network_id =" << "-" << + ", network_priority =" << result.network_priority << + ", signal_strength =" << result.signal_strength << + ", station_id =" << result.station_id << + ", signal_dB =" << result.signal_dB; +#endif + + if (result.status == ICD_SCAN_COMPLETE) { + //qDebug() << "waited =" << all_waited; + if (--all_waited == 0) { + last_result = true; + break; + } + } else + scan_results << result; + + if (receivedSignals.isEmpty()) + break; + + msgInterface = receivedSignals.takeFirst().toString(); + msgSignal = receivedSignals.takeFirst().toString(); + msgArgs = receivedSignals.takeFirst().toList(); + } + mInterface.clear(); + + } else { + qWarning() << "Error while scanning:" << mError; + break; + } + } + timer.stop(); + + error = mError; + return scanned_types; +} + + +void IcdPrivate::scanCancel() +{ + mDBus->call(ICD_DBUS_API_SCAN_CANCEL); +} + + +bool IcdPrivate::doConnect(IcdConnectResult& result) +{ + QTimer timer; + bool status = false; + + timer.setSingleShot(true); + timer.start(timeout); + + //qDebug() << "Waiting" << ICD_DBUS_API_CONNECT_SIG << "signal"; + + while (timer.isActive() && mInterface.isEmpty() && + mSignal != ICD_DBUS_API_CONNECT_SIG && + mError.isEmpty()) { + QCoreApplication::processEvents(QEventLoop::AllEvents, 1000); + } + + timer.stop(); + + if (mError.isEmpty()) { + if (!mArgs.isEmpty()) { + get_connect_result(mArgs, result); + status = true; + } else + status = false; + } else + status = false; + + return status; +} + + +bool IcdPrivate::connect(icd_connection_flags flags, IcdConnectResult& result) +{ + clearState(); + //mDBus->callAsynchronous(ICD_DBUS_API_CONNECT_REQ, (uint)flags); + mDBus->call(ICD_DBUS_API_CONNECT_REQ, (uint)flags); + icdRefCounting()->setup(flags); + return doConnect(result); +} + + +bool IcdPrivate::connect(icd_connection_flags flags, QList& params, + IcdConnectResult& result) +{ + QVariantList varlist; + QVariantList varlist2; + + foreach (ConnectParams param, params) { + QVariantList items; + + items.append(QVariant(param.connect.service_type)); + items.append(QVariant(param.connect.service_attrs)); + items.append(QVariant(param.connect.service_id)); + items.append(QVariant(param.connect.network_type)); + items.append(QVariant(param.connect.network_attrs)); + items.append(QVariant(param.connect.network_id)); + + varlist.append(items); + } + + varlist2.append(QVariant(varlist)); + + clearState(); + //mDBus->callAsynchronous(ICD_DBUS_API_CONNECT_REQ, (uint)flags, varlist2); + mDBus->call(ICD_DBUS_API_CONNECT_REQ, (uint)flags, varlist2); + icdRefCounting()->setup(flags); + return doConnect(result); +} + + +bool IcdPrivate::doConnect(QString& ret) +{ + QTimer timer; + bool status = false; + + timer.setSingleShot(true); + timer.start(timeout); + + while (timer.isActive() && mInterface.isEmpty() && + mError.isEmpty()) { + QCoreApplication::processEvents(QEventLoop::AllEvents, 1000); + } + + timer.stop(); + + if (mError.isEmpty()) { + if (!mArgs.isEmpty()) { + status = true; + //ret = mArgs[0]; // TODO correctly + } else + status = false; + } else + status = false; + + return status; +} + + +bool IcdPrivate::connect(icd_connection_flags flags, QString& iap, QString& result) +{ + clearState(); + //mDBus->callAsynchronous(ICD_CONNECT_REQ, iap, (uint)flags); + mDBus->call(ICD_CONNECT_REQ, iap, (uint)flags); + icdRefCounting()->setup(flags); + return doConnect(result); +} + + +void IcdPrivate::select(uint flags) +{ + mDBus->call(ICD_DBUS_API_SELECT_REQ, flags); +} + + +void IcdPrivate::disconnect(uint flags, QString& service_type, + uint service_attrs, QString& service_id, + QString& network_type, uint network_attrs, + QByteArray& network_id) +{ + clearState(); + mDBus->call(ICD_DBUS_API_DISCONNECT_REQ, flags, + service_type, service_attrs, service_id, + network_type, network_attrs, network_id); + icdRefCounting()->cleanup(); +} + + +void IcdPrivate::disconnect(uint flags) +{ + clearState(); + mDBus->call(ICD_DBUS_API_DISCONNECT_REQ, flags); + icdRefCounting()->cleanup(); +} + + +static void get_state_all_result(QList& args, + IcdStateResult& ret) +{ + int i=0; + + ret.params.service_type = args[i++].toString(); + ret.params.service_attrs = args[i++].toUInt(); + ret.params.service_id = args[i++].toString(); + ret.params.network_type = args[i++].toString(); + ret.params.network_attrs = args[i++].toUInt(); + ret.params.network_id = args[i++].toByteArray(); + ret.error = args[i++].toString(); + ret.state = args[i++].toInt(); +} + + +static void get_state_all_result2(QList& args, + IcdStateResult& ret) +{ + int i=0; + + ret.params.network_type = args[i++].toString(); + ret.state = args[i++].toInt(); + + // Initialize the other values so that the caller can + // notice we only returned partial status + ret.params.service_type = QString(); + ret.params.service_attrs = 0; + ret.params.service_id = QString(); + ret.params.network_attrs = 0; + ret.params.network_id = QByteArray(); + ret.error = QString(); +} + + +uint IcdPrivate::state(QString& service_type, uint service_attrs, + QString& service_id, QString& network_type, + uint network_attrs, QByteArray& network_id, + IcdStateResult& state_result) +{ + QTimer timer; + QVariant reply; + uint total_signals; + QVariantList vl; + + clearState(); + + reply = mDBus->call(ICD_DBUS_API_STATE_REQ, + service_type, service_attrs, service_id, + network_type, network_attrs, network_id); + if (reply.type() != QVariant::List) + return 0; + vl = reply.toList(); + if (vl.isEmpty()) + return 0; + reply = vl.first(); + total_signals = reply.toUInt(); + if (!total_signals) + return 0; + + timer.setSingleShot(true); + timer.start(timeout); + + mInterface.clear(); + while (timer.isActive() && mInterface.isEmpty()) { + QCoreApplication::processEvents(QEventLoop::AllEvents, 1000); + + if (mSignal != ICD_DBUS_API_STATE_SIG) { + mInterface.clear(); + continue; + } + } + + timer.stop(); + + if (mError.isEmpty()) { + if (!mArgs.isEmpty()) { + if (mArgs.size()>2) + get_state_all_result(mArgs, state_result); + else { + // We are not connected as we did not get the status we asked + return 0; + } + } + } else { + qWarning() << "Error:" << mError; + } + + // The returned value should be one because we asked for one state + return total_signals; +} + + +uint IcdPrivate::state_non_blocking(QList& state_results) +{ + QTimer timer; + QVariant reply; + QVariantList vl; + uint signals_left, total_signals; + IcdStateResult result; + + PDEBUG("%s\n", "non blocking state"); + + clearState(); + reply = mDBus->call(ICD_DBUS_API_STATE_REQ); + if (reply.type() != QVariant::List) + return 0; + vl = reply.toList(); + if (vl.isEmpty()) + return 0; + reply = vl.first(); + signals_left = total_signals = reply.toUInt(); + if (!signals_left) + return 0; + + timer.setSingleShot(true); + timer.start(timeout); + state_results.clear(); + mError.clear(); + while (signals_left) { + mInterface.clear(); + while (timer.isActive() && mInterface.isEmpty()) { + QCoreApplication::processEvents(QEventLoop::AllEvents, 1000); + } + + if (!timer.isActive()) { + total_signals = 0; + break; + } + + if (mSignal != ICD_DBUS_API_STATE_SIG) { + continue; + } + + if (mError.isEmpty()) { + if (!mArgs.isEmpty()) { + if (mArgs.size()==2) + get_state_all_result2(mArgs, result); + else + get_state_all_result(mArgs, result); + state_results << result; + } + signals_left--; + } else { + qWarning() << "Error:" << mError; + break; + } + } + timer.stop(); + + PDEBUG("total_signals=%d\n", total_signals); + return total_signals; +} + + +/* Special version of the state() call which does not call event loop. + * Needed in order to fix NB#175098 where Qt4.7 webkit crashes because event + * loop is run when webkit does not expect it. This function is called from + * bearer management API syncStateWithInterface() in QNetworkSession + * constructor. + */ +uint IcdPrivate::state(QList& state_results) +{ + QVariant reply; + QVariantList vl; + uint signals_left, total_signals; + IcdStateResult result; + time_t started; + int timeout_secs = timeout / 1000; + + PDEBUG("%s\n", "state_results"); + + clearState(); + reply = mDBus->call(ICD_DBUS_API_STATE_REQ); + if (reply.type() != QVariant::List) + return 0; + vl = reply.toList(); + if (vl.isEmpty()) + return 0; + reply = vl.first(); + signals_left = total_signals = reply.toUInt(); + if (!signals_left) + return 0; + + started = time(0); + state_results.clear(); + mError.clear(); + while (signals_left) { + mInterface.clear(); + while ((time(0)<=(started+timeout_secs)) && mInterface.isEmpty()) { + mDBus->synchronousDispatch(1000); + } + + if (time(0)>(started+timeout_secs)) { + total_signals = 0; + break; + } + + if (mSignal != ICD_DBUS_API_STATE_SIG) { + continue; + } + + if (mError.isEmpty()) { + if (!mArgs.isEmpty()) { + if (mArgs.size()==2) + get_state_all_result2(mArgs, result); + else + get_state_all_result(mArgs, result); + state_results << result; + } + signals_left--; + } else { + qWarning() << "Error:" << mError; + break; + } + } + + PDEBUG("total_signals=%d\n", total_signals); + return total_signals; +} + + +static void get_statistics_all_result(QList& args, + IcdStatisticsResult& ret) +{ + int i=0; + + if (args.isEmpty()) + return; + + ret.params.service_type = args[i++].toString(); + ret.params.service_attrs = args[i++].toUInt(); + ret.params.service_id = args[i++].toString(); + ret.params.network_type = args[i++].toString(); + ret.params.network_attrs = args[i++].toUInt(); + ret.params.network_id = args[i++].toByteArray(); + ret.time_active = args[i++].toUInt(); + ret.signal_strength = (enum icd_nw_levels)args[i++].toUInt(); + ret.bytes_sent = args[i++].toUInt(); + ret.bytes_received = args[i++].toUInt(); +} + + +uint IcdPrivate::statistics(QList& stats_results) +{ + QTimer timer; + QVariant reply; + QVariantList vl; + uint signals_left, total_signals; + IcdStatisticsResult result; + + clearState(); + reply = mDBus->call(ICD_DBUS_API_STATISTICS_REQ); + if (reply.type() != QVariant::List) + return 0; + vl = reply.toList(); + if (vl.isEmpty()) + return 0; + reply = vl.first(); + if (reply.type() != QVariant::UInt) + return 0; + signals_left = total_signals = reply.toUInt(); + + if (!signals_left) + return 0; + + timer.setSingleShot(true); + timer.start(timeout); + stats_results.clear(); + while (signals_left) { + mInterface.clear(); + while (timer.isActive() && mInterface.isEmpty()) { + QCoreApplication::processEvents(QEventLoop::AllEvents, 1000); + } + + if (!timer.isActive()) { + total_signals = 0; + break; + } + + if (mSignal != ICD_DBUS_API_STATISTICS_SIG) { + continue; + } + + if (mError.isEmpty()) { + get_statistics_all_result(mArgs, result); + stats_results << result; + signals_left--; + } else { + qWarning() << "Error:" << mError; + break; + } + } + timer.stop(); + + return total_signals; +} + + +uint IcdPrivate::statistics(QString& service_type, uint service_attrs, + QString& service_id, QString& network_type, + uint network_attrs, QByteArray& network_id, + IcdStatisticsResult& stats_result) +{ + QTimer timer; + QVariant reply; + uint total_signals; + QVariantList vl; + + clearState(); + + reply = mDBus->call(ICD_DBUS_API_STATISTICS_REQ, + service_type, service_attrs, service_id, + network_type, network_attrs, network_id); + if (reply.type() != QVariant::List) + return 0; + vl = reply.toList(); + if (vl.isEmpty()) + return 0; + reply = vl.first(); + total_signals = reply.toUInt(); + if (!total_signals) + return 0; + + timer.setSingleShot(true); + timer.start(timeout); + + mInterface.clear(); + while (timer.isActive() && mInterface.isEmpty()) { + QCoreApplication::processEvents(QEventLoop::AllEvents, 1000); + + if (mSignal != ICD_DBUS_API_STATISTICS_SIG) { + mInterface.clear(); + continue; + } + } + + timer.stop(); + + if (mError.isEmpty()) { + get_statistics_all_result(mArgs, stats_result); + } else { + qWarning() << "Error:" << mError; + } + + // The returned value should be one because we asked for one statistics + return total_signals; +} + + +static void get_addrinfo_all_result(QList& args, + IcdAddressInfoResult& ret) +{ + int i=0; + + if (args.isEmpty()) + return; + + ret.params.service_type = args[i++].toString(); + ret.params.service_attrs = args[i++].toUInt(); + ret.params.service_id = args[i++].toString(); + ret.params.network_type = args[i++].toString(); + ret.params.network_attrs = args[i++].toUInt(); + ret.params.network_id = args[i++].toByteArray(); + + QVariantList vl = args[i].toList(); + QVariant reply = vl.first(); + QList lst = reply.toList(); + for (int k=0; k& addr_results) +{ + QVariant reply; + QVariantList vl; + uint signals_left, total_signals; + IcdAddressInfoResult result; + time_t started; + int timeout_secs = timeout / 1000; + + PDEBUG("%s\n", "addr_results"); + + clearState(); + reply = mDBus->call(ICD_DBUS_API_ADDRINFO_REQ); + if (reply.type() != QVariant::List) + return 0; + vl = reply.toList(); + if (vl.isEmpty()) + return 0; + reply = vl.first(); + if (reply.type() != QVariant::UInt) + return 0; + signals_left = total_signals = reply.toUInt(); + if (!signals_left) + return 0; + + started = time(0); + addr_results.clear(); + while (signals_left) { + mInterface.clear(); + while ((time(0)<=(started+timeout_secs)) && mInterface.isEmpty()) { + mDBus->synchronousDispatch(1000); + } + + if (time(0)>(started+timeout_secs)) { + total_signals = 0; + break; + } + + if (mSignal != ICD_DBUS_API_ADDRINFO_SIG) { + continue; + } + + if (mError.isEmpty()) { + get_addrinfo_all_result(mArgs, result); + addr_results << result; + signals_left--; + } else { + qWarning() << "Error:" << mError; + break; + } + } + + PDEBUG("total_signals=%d\n", total_signals); + return total_signals; +} + +uint IcdPrivate::addrinfo_non_blocking(QList& addr_results) +{ + QTimer timer; + QVariant reply; + QVariantList vl; + uint signals_left, total_signals; + IcdAddressInfoResult result; + + PDEBUG("%s\n", "non blocking addrinfo"); + + clearState(); + reply = mDBus->call(ICD_DBUS_API_ADDRINFO_REQ); + if (reply.type() != QVariant::List) + return 0; + vl = reply.toList(); + if (vl.isEmpty()) + return 0; + reply = vl.first(); + if (reply.type() != QVariant::UInt) + return 0; + signals_left = total_signals = reply.toUInt(); + if (!signals_left) + return 0; + + timer.setSingleShot(true); + timer.start(timeout); + addr_results.clear(); + while (signals_left) { + mInterface.clear(); + while (timer.isActive() && mInterface.isEmpty()) { + QCoreApplication::processEvents(QEventLoop::AllEvents, 1000); + } + + if (!timer.isActive()) { + total_signals = 0; + break; + } + + if (mSignal != ICD_DBUS_API_ADDRINFO_SIG) { + continue; + } + + if (mError.isEmpty()) { + get_addrinfo_all_result(mArgs, result); + addr_results << result; + signals_left--; + } else { + qWarning() << "Error:" << mError; + break; + } + } + timer.stop(); + PDEBUG("total_signals=%d\n", total_signals); + return total_signals; +} + + +uint IcdPrivate::addrinfo(QString& service_type, uint service_attrs, + QString& service_id, QString& network_type, + uint network_attrs, QByteArray& network_id, + IcdAddressInfoResult& addr_result) +{ + QTimer timer; + QVariant reply; + uint total_signals; + QVariantList vl; + + clearState(); + + reply = mDBus->call(ICD_DBUS_API_ADDRINFO_REQ, + service_type, service_attrs, service_id, + network_type, network_attrs, network_id); + if (reply.type() != QVariant::List) + return 0; + vl = reply.toList(); + if (vl.isEmpty()) + return 0; + reply = vl.first(); + total_signals = reply.toUInt(); + + if (!total_signals) + return 0; + + timer.setSingleShot(true); + timer.start(timeout); + + mInterface.clear(); + while (timer.isActive() && mInterface.isEmpty()) { + QCoreApplication::processEvents(QEventLoop::AllEvents, 1000); + + if (mSignal != ICD_DBUS_API_ADDRINFO_SIG) { + mInterface.clear(); + continue; + } + } + + timer.stop(); + + if (mError.isEmpty()) { + get_addrinfo_all_result(mArgs, addr_result); + } else { + qWarning() << "Error:" << mError; + } + + // The returned value should be one because we asked for one addrinfo + return total_signals; +} + + +Icd::Icd(QObject *parent) + : QObject(parent), d(new IcdPrivate(this)) +{ +} + +Icd::Icd(unsigned int timeout, QObject *parent) + : QObject(parent), d(new IcdPrivate(timeout, this)) +{ +} + +Icd::Icd(unsigned int timeout, IcdDbusInterfaceVer ver, QObject *parent) + : QObject(parent), d(new IcdPrivate(timeout, ver, this)) +{ +} + +Icd::~Icd() +{ + delete d; +} + + +QStringList Icd::scan(icd_scan_request_flags flags, + QStringList &network_types, + QList& scan_results, + QString& error) +{ + return d->scan(flags, network_types, scan_results, error); +} + + +void Icd::scanCancel() +{ + d->scanCancel(); +} + + +bool Icd::connect(icd_connection_flags flags, IcdConnectResult& result) +{ + return d->connect(flags, result); +} + + +bool Icd::connect(icd_connection_flags flags, QList& params, + IcdConnectResult& result) +{ + return d->connect(flags, params, result); +} + + +bool Icd::connect(icd_connection_flags flags, QString& iap, QString& result) +{ + return d->connect(flags, iap, result); +} + + +void Icd::select(uint flags) +{ + d->select(flags); +} + + +void Icd::disconnect(uint connect_flags, QString& service_type, + uint service_attrs, QString& service_id, + QString& network_type, uint network_attrs, + QByteArray& network_id) +{ + d->disconnect(connect_flags, service_type, + service_attrs, service_id, + network_type, network_attrs, + network_id); +} + + +void Icd::disconnect(uint connect_flags) +{ + d->disconnect(connect_flags); +} + + +uint Icd::state(QString& service_type, uint service_attrs, + QString& service_id, QString& network_type, + uint network_attrs, QByteArray& network_id, + IcdStateResult &state_result) +{ + return d->state(service_type, service_attrs, service_id, + network_type, network_attrs, network_id, + state_result); +} + + +uint Icd::statistics(QString& service_type, uint service_attrs, + QString& service_id, QString& network_type, + uint network_attrs, QByteArray& network_id, + IcdStatisticsResult& stats_result) +{ + return d->statistics(service_type, service_attrs, service_id, + network_type, network_attrs, network_id, + stats_result); +} + + +uint Icd::addrinfo(QString& service_type, uint service_attrs, + QString& service_id, QString& network_type, + uint network_attrs, QByteArray& network_id, + IcdAddressInfoResult& addr_result) +{ + return d->addrinfo(service_type, service_attrs, service_id, + network_type, network_attrs, network_id, + addr_result); +} + + +uint Icd::state(QList& state_results) +{ + return d->state(state_results); +} + +uint Icd::state_non_blocking(QList& state_results) +{ + return d->state_non_blocking(state_results); +} + +uint Icd::statistics(QList& stats_results) +{ + return d->statistics(stats_results); +} + + +uint Icd::addrinfo(QList& addr_results) +{ + return d->addrinfo(addr_results); +} + +uint Icd::addrinfo_non_blocking(QList& addr_results) +{ + return d->addrinfo_non_blocking(addr_results); +} + +void Icd::icdSignalReceived(const QString& interface, + const QString& signal, + const QList& args) +{ + d->signalReceived(interface, signal, args); +} + + +void Icd::icdCallReply(const QString& method, + const QList& args, + const QString& error) +{ + d->callReply(method, args, error); +} + + +QString Icd::error() +{ + return d->error(); +} + +} // Maemo namespace + + diff --git a/src/3rdparty/libconninet/src/maemo_icd.h b/src/3rdparty/libconninet/src/maemo_icd.h new file mode 100644 index 0000000..d7a8d5b --- /dev/null +++ b/src/3rdparty/libconninet/src/maemo_icd.h @@ -0,0 +1,182 @@ +/* + libconninet - Internet Connectivity support library + + Copyright (C) 2009 Nokia Corporation. All rights reserved. + + Contact: Jukka Rissanen + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public License + version 2.1 as published by the Free Software Foundation. + + This library is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + 02110-1301 USA +*/ + +#ifndef MAEMO_ICD_H +#define MAEMO_ICD_H + +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include + +#include "dbusdispatcher.h" +#include + +#define ICD_LONG_SCAN_TIMEOUT (30*1000) /* 30sec */ +#define ICD_SHORT_SCAN_TIMEOUT (10*1000) /* 10sec */ +#define ICD_SHORT_CONNECT_TIMEOUT (10*1000) /* 10sec */ +#define ICD_LONG_CONNECT_TIMEOUT (150*1000) /* 2.5min */ + +namespace Maemo { + +struct CommonParams { + QString service_type; + uint service_attrs; + QString service_id; + QString network_type; + uint network_attrs; + QByteArray network_id; +}; + +struct ConnectParams { + struct CommonParams connect; +}; + +struct IcdScanResult { + uint status; // see #icd_scan_status + uint timestamp; // when last seen + QString service_name; + uint service_priority; // within a service type + QString network_name; + uint network_priority; + struct CommonParams scan; + uint signal_strength; // quality, 0 (none) - 10 (good) + QString station_id; // e.g. MAC address or similar id + uint signal_dB; // use signal strength above unless you know what you are doing + + IcdScanResult() { + status = timestamp = scan.service_attrs = service_priority = + scan.network_attrs = network_priority = signal_strength = + signal_dB = 0; + } +}; + +struct IcdConnectResult { + struct CommonParams connect; + uint status; +}; + +struct IcdStateResult { + struct CommonParams params; + QString error; + uint state; +}; + +struct IcdStatisticsResult { + struct CommonParams params; + uint time_active; // in seconds + enum icd_nw_levels signal_strength; // see network_api_defines.h in icd2-dev package + uint bytes_sent; + uint bytes_received; +}; + +struct IcdIPInformation { + QString address; + QString netmask; + QString default_gateway; + QString dns1; + QString dns2; + QString dns3; +}; + +struct IcdAddressInfoResult { + struct CommonParams params; + QList ip_info; +}; + +enum IcdDbusInterfaceVer { + IcdOldDbusInterface = 0, // use the old OSSO-IC interface + IcdNewDbusInterface // use the new Icd2 interface (default) +}; + + +class IcdPrivate; +class Icd : public QObject +{ + Q_OBJECT + +public: + Icd(QObject *parent = 0); + Icd(unsigned int timeout, QObject *parent = 0); + Icd(unsigned int timeout, IcdDbusInterfaceVer ver, QObject *parent = 0); + ~Icd(); + QString error(); // returns last error string + + /* Icd2 dbus API functions */ + QStringList scan(icd_scan_request_flags flags, + QStringList &network_types, + QList& scan_results, + QString& error); + void scanCancel(); + bool connect(icd_connection_flags flags, IcdConnectResult& result); + bool connect(icd_connection_flags flags, QList& params, + IcdConnectResult& result); + bool connect(icd_connection_flags flags, QString& iap, QString& result); + void select(uint flags); + void disconnect(uint connect_flags, QString& service_type, + uint service_attrs, QString& service_id, + QString& network_type, uint network_attrs, + QByteArray& network_id); + void disconnect(uint connect_flags); + + uint state(QString& service_type, uint service_attrs, + QString& service_id, QString& network_type, + uint network_attrs, QByteArray& network_id, + IcdStateResult &state_result); + uint statistics(QString& service_type, uint service_attrs, + QString& service_id, QString& network_type, + uint network_attrs, QByteArray& network_id, + IcdStatisticsResult& stats_result); + uint addrinfo(QString& service_type, uint service_attrs, + QString& service_id, QString& network_type, + uint network_attrs, QByteArray& network_id, + IcdAddressInfoResult& addr_result); + + uint state(QList& state_results); + uint state_non_blocking(QList& state_results); + uint statistics(QList& stats_results); + uint addrinfo(QList& addr_results); + uint addrinfo_non_blocking(QList& addr_results); + +private Q_SLOTS: + void icdSignalReceived(const QString& interface, + const QString& signal, + const QList& args); + void icdCallReply(const QString& method, + const QList& args, + const QString& error); + +private: + IcdPrivate *d; + friend class IcdPrivate; +}; + +} // Maemo namespace + +#endif diff --git a/src/3rdparty/libconninet/src/proxyconf.cpp b/src/3rdparty/libconninet/src/proxyconf.cpp new file mode 100644 index 0000000..5b27565 --- /dev/null +++ b/src/3rdparty/libconninet/src/proxyconf.cpp @@ -0,0 +1,315 @@ +/* + libconninet - Internet Connectivity support library + + Copyright (C) 2010 Nokia Corporation. All rights reserved. + + Contact: Jukka Rissanen + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public License + version 2.1 as published by the Free Software Foundation. + + This library is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + 02110-1301 USA +*/ + +#include +#include +#include +#include +#include +#include +#include "proxyconf.h" + +#define CONF_PROXY "/system/proxy" +#define HTTP_PROXY "/system/http_proxy" + + +namespace Maemo { + +class NetworkProxyFactory : QNetworkProxyFactory { +public: + NetworkProxyFactory() { } + QList queryProxy(const QNetworkProxyQuery &query = QNetworkProxyQuery()); +}; + + +QList NetworkProxyFactory::queryProxy(const QNetworkProxyQuery &query) +{ + ProxyConf proxy_conf; + + QList result = proxy_conf.flush(query); + if (result.isEmpty()) + result << QNetworkProxy::NoProxy; + + return result; +} + + +class ProxyConfPrivate { +private: + // proxy values from gconf + QString mode; + bool use_http_host; + QString autoconfig_url; + QString http_proxy; + quint16 http_port; + QList ignore_hosts; + QString secure_host; + quint16 secure_port; + QString ftp_host; + quint16 ftp_port; + QString socks_host; + quint16 socks_port; + QString rtsp_host; + quint16 rtsp_port; + + QVariant getValue(QString& name); + QVariant getHttpValue(QString& name); + QVariant getValue(const char *name); + QVariant getHttpValue(const char *name); + bool isHostExcluded(const QString &host); + +public: + QString prefix; + QString http_prefix; + + void readProxyData(); + QList flush(const QNetworkProxyQuery &query); +}; + + +QVariant ProxyConfPrivate::getValue(QString& name) +{ + GConfItem item(prefix + name); + return item.value(); +} + +QVariant ProxyConfPrivate::getHttpValue(QString& name) +{ + GConfItem item(http_prefix + name); + return item.value(); +} + + +QVariant ProxyConfPrivate::getValue(const char *name) +{ + QString n = QString(name); + return getValue(n); +} + +QVariant ProxyConfPrivate::getHttpValue(const char *name) +{ + QString n = QString(name); + return getHttpValue(n); +} + + +#define GET(var, type) \ + do { \ + var = getValue(#var).to##type (); \ + /*qDebug()<<"var="<prefix = CONF_PROXY "/"; + d_ptr->http_prefix = HTTP_PROXY "/"; +} + +ProxyConf::~ProxyConf() +{ + delete d_ptr; +} + + +QList ProxyConf::flush(const QNetworkProxyQuery &query) +{ + d_ptr->readProxyData(); + return d_ptr->flush(query); +} + + +static int refcount = 0; +static QReadWriteLock lock; + +void ProxyConf::update() +{ + QWriteLocker locker(&lock); + NetworkProxyFactory *factory = new NetworkProxyFactory(); + QNetworkProxyFactory::setApplicationProxyFactory((QNetworkProxyFactory*)factory); + refcount++; +} + + +void ProxyConf::clear(void) +{ + QWriteLocker locker(&lock); + refcount--; + if (refcount == 0) + QNetworkProxyFactory::setApplicationProxyFactory(NULL); + + if (refcount<0) + refcount = 0; +} + + +} // namespace Maemo diff --git a/src/3rdparty/libconninet/src/proxyconf.h b/src/3rdparty/libconninet/src/proxyconf.h new file mode 100644 index 0000000..7711c49 --- /dev/null +++ b/src/3rdparty/libconninet/src/proxyconf.h @@ -0,0 +1,53 @@ +/* + libconninet - Internet Connectivity support library + + Copyright (C) 2010 Nokia Corporation. All rights reserved. + + Contact: Jukka Rissanen + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public License + version 2.1 as published by the Free Software Foundation. + + This library is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + 02110-1301 USA +*/ + +#ifndef PROXYCONF_H +#define PROXYCONF_H + +#include +#include + +namespace Maemo { + +class ProxyConfPrivate; +class ProxyConf { +private: + ProxyConfPrivate *d_ptr; + +public: + ProxyConf(); + virtual ~ProxyConf(); + + QList flush(const QNetworkProxyQuery &query = QNetworkProxyQuery()); // read the proxies from db + + /* Note that for each update() call there should be corresponding + * clear() call because the ProxyConf class implements a reference + * counting mechanism. The factory is removed only when there is + * no one using the factory any more. + */ + static void update(void); // this builds QNetworkProxy factory + static void clear(void); // this removes QNetworkProxy factory +}; + +} // namespace Maemo + +#endif diff --git a/src/3rdparty/libconninet/tests/ut_dbusdispatcher.cpp b/src/3rdparty/libconninet/tests/ut_dbusdispatcher.cpp new file mode 100644 index 0000000..70deb3f --- /dev/null +++ b/src/3rdparty/libconninet/tests/ut_dbusdispatcher.cpp @@ -0,0 +1,191 @@ +/* * This file is part of conn-dui-settings-inet * + * + * Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). + * All rights reserved. + * + * Contact: Aapo Makela + * + * This software, including documentation, is protected by copyright + * controlled by Nokia Corporation. All rights are reserved. Copying, + * including reproducing, storing, adapting or translating, any or all of + * this material requires the prior written consent of Nokia Corporation. + * This material also contains confidential information which may not be + * disclosed to others without the prior written consent of Nokia. + */ + +#include +#include +#include +#include +#include + +#include + +class Ut_DBusDispatcher : public QObject +{ + Q_OBJECT + +private Q_SLOTS: + void init(); + void cleanup(); + void initTestCase(); + void cleanupTestCase(); + + void simpleSignalReceived(const QString& interface, + const QString& signal, + const QList& args); + void simpleCallReply(const QString& method, + const QList& args, + const QString& error); + void simpleCall(); + + void complexCallReply(const QString& method, + const QList& args, + const QString& error); + void complexCall(); + +private: + Maemo::DBusDispatcher *mSubject; + QProcess *icd_stub; + + QString mMethod; + QString mInterface; + QString mSignal; + QList mArgs; +}; + +void Ut_DBusDispatcher::init() +{ + mSubject = new Maemo::DBusDispatcher("com.nokia.icd2", "/com/nokia/icd2", + "com.nokia.icd2"); + + // Start icd2 stub + icd_stub = new QProcess(this); + icd_stub->start("/usr/bin/icd2_stub.py"); + QTest::qWait(1000); +} + +void Ut_DBusDispatcher::cleanup() +{ + // Terminate icd2 stub + icd_stub->terminate(); + icd_stub->waitForFinished(); + + delete mSubject; + mSubject = 0; +} + +void Ut_DBusDispatcher::initTestCase() +{ +} + +void Ut_DBusDispatcher::cleanupTestCase() +{ +} + +void Ut_DBusDispatcher::simpleSignalReceived(const QString& interface, + const QString& signal, + const QList& args) +{ + // Signal handler, which simply records what has been signalled + mInterface = interface; + mSignal = signal; + mArgs = args; +} + +void Ut_DBusDispatcher::simpleCallReply(const QString& method, + const QList& args, + const QString& error) +{ + mMethod = method; + + // Check that method matches and at least WLAN_INFRA is returned + QVERIFY(error.isEmpty()); + QVERIFY(args[0].toStringList().contains("WLAN_INFRA")); +} + +void Ut_DBusDispatcher::simpleCall() +{ + uint flags = 0; + QList reply; + int idx = 0; + QTimer timer; + + // Connect signals + connect(mSubject, SIGNAL(signalReceived(const QString&, + const QString&, + const QList&)), + this, SLOT(simpleSignalReceived(const QString&, + const QString&, + const QList&))); + connect(mSubject, SIGNAL(callReply(const QString&, + const QList&, + const QString&)), + this, SLOT(simpleCallReply(const QString&, + const QList&, + const QString&))); + + // Request scan and verify the call starts succesfully + QVERIFY(mSubject->callAsynchronous("scan_req", flags)); + + // Wait 1st scan signal for 10 secs + timer.setSingleShot(true); + timer.start(10000); + while (timer.isActive() && mInterface.isEmpty()) { + QCoreApplication::processEvents(QEventLoop::AllEvents, 1000); + idx++; + } + timer.stop(); + + // Sanity checks for the scan result + QVERIFY(mInterface == "com.nokia.icd2"); // interface is icd2 + QVERIFY(mMethod == "scan_req"); // method is scan_req + QVERIFY(mSignal == "scan_result_sig"); // signal is scan result + QVERIFY(mArgs[0] == QVariant(0) || + mArgs[0] == QVariant(4)); // First argument is status + // (0 == NEW, 4 == COMPLETED) + //QVERIFY(mArgs.contains(QVariant("WLAN_INFRA"))); // WLAN scan result +} + +void Ut_DBusDispatcher::complexCallReply(const QString& method, + const QList& args, + const QString& error) +{ + mMethod = method; + + // Check that method has not return arguments and error is not set + QVERIFY(error.isEmpty()); + QVERIFY(args.isEmpty()); +} + +void Ut_DBusDispatcher::complexCall() +{ + uint flags = ICD_CONNECTION_FLAG_UI_EVENT; + QList reply; + QVariantList networks; + QVariantList network1; + + network1 << "" << (uint)0 << "" << "WLAN_INFRA" << (uint)0x05000011 << QByteArray("osso@46@net"); + networks << QVariant(network1); + + // Connect signal + connect(mSubject, SIGNAL(callReply(const QString&, + const QList&, + const QString&)), + this, SLOT(complexCallReply(const QString&, + const QList&, + const QString&))); + + // Request connect and verify the call starts succesfully + QVERIFY(mSubject->callAsynchronous("connect_req", flags, networks)); + + QTest::qWait(1000); + + // Sanity checks for the scan result + QVERIFY(mInterface == "com.nokia.icd2"); // interface is icd2 + QVERIFY(mMethod == "connect_req"); // method connect_req +} + +QTEST_MAIN(Ut_DBusDispatcher) + +#include "ut_dbusdispatcher.moc" diff --git a/src/3rdparty/libconninet/tests/ut_iapconf.cpp b/src/3rdparty/libconninet/tests/ut_iapconf.cpp new file mode 100644 index 0000000..6a91d61 --- /dev/null +++ b/src/3rdparty/libconninet/tests/ut_iapconf.cpp @@ -0,0 +1,186 @@ +/* + libconninet - Internet Connectivity support library + + Copyright (C) 2009 Nokia Corporation. All rights reserved. + + Contact: Aapo Makela + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public License + version 2.1 as published by the Free Software Foundation. + + This library is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + 02110-1301 USA +*/ + + +#include +#include + +#include + +class Ut_IAPConf : public QObject +{ + Q_OBJECT + +private Q_SLOTS: + void init(); + void cleanup(); + void initTestCase(); + void cleanupTestCase(); + + void setupIAP(); + void setupIAPContainingDot(); + void unsetIAPValueIsNotValid(); + void verifyAllIAPs(); + void allForEmptyConfReturnsEmptyList(); + void settingInvalidValueUnsetsKey(); + +private: + Maemo::IAPConf *mSubject; +}; + +void Ut_IAPConf::init() +{ + mSubject = new Maemo::IAPConf("test_iap"); +} + +void Ut_IAPConf::cleanup() +{ + // Clear made settings + mSubject->clear(); + + delete mSubject; + mSubject = 0; +} + +void Ut_IAPConf::initTestCase() +{ +} + +void Ut_IAPConf::cleanupTestCase() +{ +} + +void Ut_IAPConf::setupIAP() +{ + // Set bunch of values + mSubject->set("ipv4_type", "AUTO", + "wlan_wepkey1", "connt", + "wlan_wepdefkey", 1, + "wlan_ssid", QByteArray("CONNTEST-1")); + + // Set one value + mSubject->setValue("type", "WLAN_INFRA"); + + // Check all values that they were set correctly + QVERIFY(mSubject->value("ipv4_type").toString() == "AUTO"); + QVERIFY(mSubject->value("wlan_wepkey1").toString() == "connt"); + QVERIFY(mSubject->value("wlan_wepdefkey").toInt() == 1); + QVERIFY(mSubject->value("wlan_ssid").toByteArray() == QByteArray("CONNTEST-1")); + QVERIFY(mSubject->value("type").toString() == "WLAN_INFRA"); +} + +void Ut_IAPConf::setupIAPContainingDot() +{ + delete mSubject; + mSubject = new Maemo::IAPConf("test.iap"); + + // Set and check one value + mSubject->setValue("type", "DUMMY"); + QVERIFY(mSubject->value("type").toString() == "DUMMY"); +} + +void Ut_IAPConf::unsetIAPValueIsNotValid() +{ + QVariant invalidValue = mSubject->value("this_value_does_not_exist"); + QVERIFY(invalidValue.isValid() == false); +} + +void Ut_IAPConf::verifyAllIAPs() +{ + int count = 0, extras = 0; + QRegExp regexp("iap[1-3]"); + Maemo::IAPConf iap1("iap1"); + Maemo::IAPConf iap2("iap2"); + Maemo::IAPConf iap3("iap3"); + + iap1.clear(); + iap2.clear(); + iap3.clear(); + + iap1.setValue("name", "iap1"); + iap2.setValue("name", "iap2"); + iap3.setValue("name", "iap3"); + + count = extras = 0; + QList iaps; + Maemo::IAPConf::getAll(iaps, true); + foreach (QString iap_path, iaps) { + QString iap_id = iap_path.section('/', 5); /* This is the IAP id */ + if (!iap_id.contains(regexp)) { + extras++; + continue; + } + Maemo::IAPConf iap(iap_id); + QString name = iap.value("name").toString(); + QVERIFY(name == iap_id); + count++; + } + QCOMPARE(count, iaps.size()-extras); + + iap1.clear(); + iap2.clear(); + iap3.clear(); + + iap1.setValue("name", "iap1"); + iap2.setValue("name", "iap2"); + iap3.setValue("name", "iap3"); + + count = extras = 0; + Maemo::IAPConf::getAll(iaps); + foreach (QString iap_id, iaps) { + if (!iap_id.contains(regexp)) { + extras++; + continue; + } + Maemo::IAPConf iap(iap_id); + QString name = iap.value("name").toString(); + QVERIFY(name == iap_id); + count++; + } + QCOMPARE(count, iaps.size()-extras); +} + +void Ut_IAPConf::allForEmptyConfReturnsEmptyList() +{ + // Clear everything in configuration + mSubject->clearAll(); + + // Get all for a list and check that it is empty + QStringList iaps; + mSubject->getAll(iaps); + QVERIFY(iaps.isEmpty()); +} + +void Ut_IAPConf::settingInvalidValueUnsetsKey() +{ + // Setup some IAP + setupIAP(); + + // Set invalid value to unset "wlan_wepdefkey" key and verify that the + // value is unset + mSubject->setValue("wlan_wepdefkey", QVariant()); + QVERIFY(!mSubject->value("wlan_wepdefkey").isValid()); +} + +QTEST_MAIN(Ut_IAPConf) + +#include "ut_iapconf.moc" diff --git a/src/3rdparty/libconninet/tests/ut_iapmonitor.cpp b/src/3rdparty/libconninet/tests/ut_iapmonitor.cpp new file mode 100644 index 0000000..f14f623 --- /dev/null +++ b/src/3rdparty/libconninet/tests/ut_iapmonitor.cpp @@ -0,0 +1,118 @@ +/* + libconninet - Internet Connectivity support library + + Copyright (C) 2009-2010 Nokia Corporation. All rights reserved. + + Contact: Jukka Rissanen + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public License + version 2.1 as published by the Free Software Foundation. + + This library is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + 02110-1301 USA +*/ + + +#include +#include + +#include +#include + +static const char *iap_id = "test_monitor_1"; + +class TestIAPMonitor : public Maemo::IAPMonitor +{ +public: + QString addedIap; + QString removedIap; + +protected: + virtual void iapAdded(const QString &id) + { + addedIap = id; + } + + virtual void iapRemoved(const QString &id) + { + removedIap = id; + } +}; + +class Ut_IAPMonitor : public QObject +{ + Q_OBJECT + +private Q_SLOTS: + void init(); + void cleanup(); + void initTestCase(); + void cleanupTestCase(); + + void check(); + +private: + TestIAPMonitor *mon; + Maemo::IAPConf *iap; +}; + +void Ut_IAPMonitor::init() +{ + mon = new TestIAPMonitor; +} + +void Ut_IAPMonitor::cleanup() +{ + delete mon; + mon = 0; +} + +void Ut_IAPMonitor::initTestCase() +{ +} + +void Ut_IAPMonitor::cleanupTestCase() +{ +} + +void Ut_IAPMonitor::check() +{ + QVERIFY(mon->addedIap.isEmpty()); + + iap = new Maemo::IAPConf(iap_id); + iap->set("ipv4_type", "AUTO", + "wlan_wepkey1", "connt", + "wlan_wepdefkey", 1, + "wlan_ssid", QByteArray(iap_id)); + + QCoreApplication::processEvents(QEventLoop::AllEvents, 1000); + QVERIFY(mon->addedIap == iap_id); + mon->addedIap.clear(); + + QVERIFY(mon->removedIap.isEmpty()); + + // Unset only one value and verify that IAP is not removed + iap->set("ipv4_type", QVariant()); + QCoreApplication::processEvents(QEventLoop::AllEvents, 1000); + QVERIFY(mon->removedIap.isEmpty()); + + // Clear the whole IAP and check that it is removed + iap->clear(); + delete iap; + + QCoreApplication::processEvents(QEventLoop::AllEvents, 1000); + + QVERIFY(mon->removedIap == iap_id); +} + +QTEST_MAIN(Ut_IAPMonitor) + +#include "ut_iapmonitor.moc" diff --git a/src/3rdparty/libconninet/tests/ut_maemo_icd.cpp b/src/3rdparty/libconninet/tests/ut_maemo_icd.cpp new file mode 100644 index 0000000..494829d --- /dev/null +++ b/src/3rdparty/libconninet/tests/ut_maemo_icd.cpp @@ -0,0 +1,274 @@ +/* + * Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). + * All rights reserved. + * + * Contact: Jukka Rissanen + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public License + * version 2.1 as published by the Free Software Foundation. + * + * This library is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + * 02110-1301 USA + */ + + +// !!!! +// !!!! NOTE: THESE TEST DO NOT REALLY WORK YET BECAUSE OF MISSING +// !!!! FUNCTIONALITY IN ICD2 STUB. YOU HAVE BEEN WARNED. +// !!!! + + +#include +#include +#include +#include +#include + +#include "maemo_icd.h" + +class Ut_MaemoIcd : public QObject +{ + Q_OBJECT + +private Q_SLOTS: + void init(); + void cleanup(); + void initTestCase(); + void cleanupTestCase(); + + void scan_req(); + void scan_cancel_req(); + void connect_req_default(); + void state_req_all(); + void state_req(); + void statistics_req_all(); + void statistics_req(); + void addrinfo_req_all(); + void addrinfo_req(); + +private: + void disconnect_req_default(); // this is currently not run + void connect_req_specific(); // this is currently not run + QProcess *icd_stub; + bool connect_iap(Maemo::IcdConnectResult &connect_result, + QString &result, + QString &error, + QString iap=QString()); +}; + + +QString create_error_str(Maemo::Icd &icd) +{ + return icd.error(); +} + + +void Ut_MaemoIcd::init() +{ + icd_stub = new QProcess(this); + icd_stub->setStandardOutputFile("/tmp/ut_maemo_icd.log"); + icd_stub->start("/usr/bin/icd2_stub.py"); + QTest::qWait(1000); + + // Set the statistics + QProcess dbus_send; + dbus_send.start("dbus-send --type=method_call --system " + "--dest=com.nokia.icd2 /com/nokia/icd2 " + "com.nokia.icd2.testing.set_statistics " + "uint32:1024 uint32:256"); + dbus_send.waitForFinished(); + +} + +void Ut_MaemoIcd::cleanup() +{ + icd_stub->terminate(); + icd_stub->waitForFinished(); +} + +void Ut_MaemoIcd::initTestCase() +{ +} + +void Ut_MaemoIcd::cleanupTestCase() +{ +} + +void Ut_MaemoIcd::scan_req() +{ + QList scanned; + QStringList scannedNetworkTypes; + QStringList networkTypesToScan; + QString error; + Maemo::Icd icd(ICD_SHORT_SCAN_TIMEOUT); + + scannedNetworkTypes = icd.scan(ICD_SCAN_REQUEST_ACTIVE, + networkTypesToScan, + scanned, + error); + QVERIFY(error.isEmpty()); + QCOMPARE(scanned.size(), 3); + QVERIFY(scannedNetworkTypes[0] == "WLAN_INFRA"); + QVERIFY(scannedNetworkTypes[1] == "DUN_GSM_PS"); +} + +void Ut_MaemoIcd::scan_cancel_req() +{ + Maemo::Icd icd; + icd.scanCancel(); + // Not much to verify here +} + +bool Ut_MaemoIcd::connect_iap(Maemo::IcdConnectResult &connect_result, + QString &result, + QString &error, + QString iap) +{ + icd_connection_flags flags = ICD_CONNECTION_FLAG_USER_EVENT; + bool st; + Maemo::Icd icd(ICD_SHORT_CONNECT_TIMEOUT); + + if (iap.isEmpty()) { + qDebug() << "connecting to default IAP"; + st = icd.connect(flags, connect_result); + } else { + qDebug() << "connecting to" << iap; + st = icd.connect(flags, iap, result); + } + + error = create_error_str(icd); + return st; +} + +void Ut_MaemoIcd::connect_req_default() +{ + Maemo::IcdConnectResult connect_result; + QString result, error; + bool st; + st = connect_iap(connect_result, result, error); + QVERIFY2(st, error.toAscii().data()); + result = connect_result.connect.network_id.data(); + qDebug() << result; +} + + +void Ut_MaemoIcd::disconnect_req_default() +{ + icd_connection_flags flags = ICD_CONNECTION_FLAG_USER_EVENT; + bool st; + Maemo::Icd icd(ICD_SHORT_CONNECT_TIMEOUT); + icd.disconnect(flags); +} + + +void Ut_MaemoIcd::connect_req_specific() +{ + Maemo::IcdConnectResult connect_result; + QString result; + QString error; + bool st; + st = connect_iap(connect_result, result, error, "wpa2gx2.osso.net"); + QVERIFY2(st, error.toAscii().data()); + qDebug() << result; +} + + +void Ut_MaemoIcd::state_req_all() +{ + QList state_results; + Maemo::Icd icd; + int sig; + sig = icd.state(state_results); + QVERIFY2(sig==1, create_error_str(icd).toAscii().data()); +} + + +void Ut_MaemoIcd::state_req() +{ + Maemo::IcdStateResult state_result; + Maemo::Icd icd; + int sig; + QString service_type, service_id; + QString network_type("WLAN_INFRA"); + QByteArray network_id("wpa2gx2.osso.net"); + sig = icd.state(service_type, 0, service_id, + network_type, (uint)0x17a1, network_id, + state_result); + QVERIFY2(sig==1, create_error_str(icd).toAscii().data()); +} + + +void Ut_MaemoIcd::statistics_req_all() +{ + QList stats_results; + Maemo::Icd icd; + int sig; + QString err; + sig = icd.statistics(stats_results); + err = create_error_str(icd); + if (!err.isEmpty()) + QVERIFY2(sig==1, err.toAscii().data()); + else + QCOMPARE(sig, 1); + + for(int i=0; i addr_results; + Maemo::Icd icd; + int sig; + sig = icd.addrinfo(addr_results); + QVERIFY2(sig==1, create_error_str(icd).toAscii().data()); +} + + +void Ut_MaemoIcd::addrinfo_req() +{ + Maemo::IcdAddressInfoResult addr_result; + Maemo::Icd icd; + int sig; + QString service_type, service_id; + QString network_type("WLAN_INFRA"); + QByteArray network_id("wpa2gx2.osso.net"); + sig = icd.addrinfo(service_type, 0, service_id, + network_type, (uint)0x17a1, network_id, + addr_result); + QVERIFY2(sig==1, create_error_str(icd).toAscii().data()); +} + + +QTEST_MAIN(Ut_MaemoIcd) + +#include "ut_maemo_icd.moc" diff --git a/src/3rdparty/libconninet/tests/ut_proxyconf.cpp b/src/3rdparty/libconninet/tests/ut_proxyconf.cpp new file mode 100644 index 0000000..1f407f0 --- /dev/null +++ b/src/3rdparty/libconninet/tests/ut_proxyconf.cpp @@ -0,0 +1,400 @@ +/* + libconninet - Internet Connectivity support library + + Copyright (C) 2010 Nokia Corporation. All rights reserved. + + Contact: Jukka Rissanen + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public License + version 2.1 as published by the Free Software Foundation. + + This library is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + 02110-1301 USA +*/ + + +#include +#include +#include +#include + +#include "../src/proxyconf.h" + +class Ut_ProxyConf : public QObject +{ + Q_OBJECT + +private Q_SLOTS: + void init(); + void cleanup(); + void initTestCase(); + void cleanupTestCase(); + + // tests without the factory + void proxy_ftp_no_factory_ok_auto(); + void proxy_ftp_no_factory_ok_manual(); + void proxy_http_no_factory_ok_manual(); + void proxy_https_no_factory_ok_manual(); + void proxy_socks_no_factory_ok_manual(); + void proxy_default_no_factory_ok_manual(); + + // tests using the factory + void proxy_ftp_factory_ok_auto(); + void proxy_ftp_factory_ok_manual(); + void proxy_http_factory_ok_manual(); + void proxy_https_factory_ok_manual(); + void proxy_socks_factory_ok_manual(); + void proxy_http_factory_ok_manual_clear(); + void proxy_default_factory_ok_manual(); + void proxy_http_factory_ok_manual_ignore_list(); + void proxy_default_factory_ok_manual_system(); + +private: + Maemo::ProxyConf *pc; +}; + + +void put(QString var, QString type, QString value) +{ + QProcess gconf; + if (value.isEmpty()) + gconf.start(QString("gconftool-2 -u /system/proxy/"+var)); + else + gconf.start(QString("gconftool-2 -s /system/proxy/"+var+" -t "+type+" "+value)); + gconf.waitForFinished(); +} + +void put_http(QString var, QString type, QString value) +{ + QProcess gconf; + if (value.isEmpty()) + gconf.start(QString("gconftool-2 -u /system/http_proxy/"+var)); + else + gconf.start(QString("gconftool-2 -s /system/http_proxy/"+var+" -t "+type+" "+value)); + gconf.waitForFinished(); +} + +void put_list(QString var, QString type, QList value) +{ + QProcess gconf; + QString values = "["; + foreach (QString str, value) + values = values + str + ","; + values.chop(1); + values = values + "]"; + + gconf.start(QString("gconftool-2 -s /system/http_proxy/"+var+" -t list --list-type="+type+" "+values)); + gconf.waitForFinished(); +} + + +void Ut_ProxyConf::init() +{ + put_http("host", "string", "my.proxy.com"); + put_http("port", "int", "8080"); + + QList list; + list.append("foo.bar.com"); + list.append("192.168.19.69"); + list.append("192.168.20.0/24"); + list.append("bar.foo.com"); + put_list("ignore_hosts", "string", list); + put_http("use_http_host", "boolean", "true"); + + put("mode", "string", "auto"); + put("autoconfig_url", "string", "http://foo.bar.com/autoconf"); + put("secure_host", "string", "secure_host.com"); + put("secure_port", "int", "112"); + + put("ftp_host", "string", "ftp.nuukia.com"); + put("ftp_port", "int", "2000"); + put("socks_host", "string", "socks.host.com"); + put("socks_port", "int", "10080"); + put("rtsp_host", "string", "rtsp.voice.com"); + put("rtsp_port", "int", "1554"); + + pc = new Maemo::ProxyConf(); +} + +void Ut_ProxyConf::cleanup() +{ + delete pc; + pc = 0; +} + +void Ut_ProxyConf::initTestCase() +{ +} + +void Ut_ProxyConf::cleanupTestCase() +{ +} + + +void Ut_ProxyConf::proxy_ftp_no_factory_ok_auto() +{ + QList nplist; + QNetworkProxyQuery query = QNetworkProxyQuery(QUrl("ftp://maps.google.com/")); + + nplist = pc->flush(query); + QVERIFY(nplist.length()==0); +} + + +void Ut_ProxyConf::proxy_ftp_no_factory_ok_manual() +{ + QList nplist; + QNetworkProxyQuery query = QNetworkProxyQuery(QUrl("ftp://maps.google.com/")); + + put("mode", "string", "manual"); + + nplist = pc->flush(query); + foreach (QNetworkProxy proxy, nplist) { + qDebug() << "proxy: " << proxy.hostName() << "port" << proxy.port(); + } + QVERIFY(nplist.length()==3); + QVERIFY(nplist.first().type() == QNetworkProxy::FtpCachingProxy); +} + + +void Ut_ProxyConf::proxy_http_no_factory_ok_manual() +{ + QList nplist; + QNetworkProxyQuery query = QNetworkProxyQuery(QUrl("http://maps.google.com/")); + + put("mode", "string", "manual"); + + nplist = pc->flush(query); + foreach (QNetworkProxy proxy, nplist) { + qDebug() << "proxy: " << proxy.hostName() << "port" << proxy.port(); + } + QVERIFY(nplist.length()==3); + QVERIFY(nplist.first().type() == QNetworkProxy::HttpProxy); +} + + +void Ut_ProxyConf::proxy_https_no_factory_ok_manual() +{ + QList nplist; + QNetworkProxyQuery query = QNetworkProxyQuery(QUrl("https://maps.google.com/")); + + put("mode", "string", "manual"); + + nplist = pc->flush(query); + foreach (QNetworkProxy proxy, nplist) { + qDebug() << "proxy: " << proxy.hostName() << "port" << proxy.port(); + } + QVERIFY(nplist.length()==2); + QVERIFY(nplist.first().type() == QNetworkProxy::HttpProxy); +} + + +void Ut_ProxyConf::proxy_socks_no_factory_ok_manual() +{ + QList nplist; + QNetworkProxyQuery query = QNetworkProxyQuery(QUrl("http://maps.google.com/")); + + put("mode", "string", "manual"); + put_http("host", "string", ""); + + nplist = pc->flush(query); + foreach (QNetworkProxy proxy, nplist) { + qDebug() << "proxy: " << proxy.hostName() << "port" << proxy.port(); + } + QVERIFY(nplist.length()==2); + QVERIFY(nplist.first().type() == QNetworkProxy::Socks5Proxy); +} + + +void Ut_ProxyConf::proxy_default_no_factory_ok_manual() +{ + QList nplist; + QNetworkProxyQuery query = QNetworkProxyQuery(QUrl("foobar://maps.google.com/")); + + put("mode", "string", "manual"); + put("socks_host", "string", ""); + put("secure_host", "string", ""); + + nplist = pc->flush(query); + foreach (QNetworkProxy proxy, nplist) { + qDebug() << "proxy: " << proxy.hostName() << "port" << proxy.port(); + } + QVERIFY(nplist.length()==0); +} + + +void Ut_ProxyConf::proxy_ftp_factory_ok_auto() +{ + QNetworkProxyQuery query = QNetworkProxyQuery(QUrl("ftp://maps.google.com/")); + Maemo::ProxyConf::update(); + QList listOfProxies = QNetworkProxyFactory::proxyForQuery(query); + QVERIFY(listOfProxies.length()==1); + QVERIFY(listOfProxies.first().type() == QNetworkProxy::NoProxy); + Maemo::ProxyConf::clear(); +} + + +void Ut_ProxyConf::proxy_ftp_factory_ok_manual() +{ + QNetworkProxyQuery query = QNetworkProxyQuery(QUrl("ftp://maps.google.com/")); + Maemo::ProxyConf::update(); + + put("mode", "string", "manual"); + + QList listOfProxies = QNetworkProxyFactory::proxyForQuery(query); + + foreach (QNetworkProxy proxy, listOfProxies) { + qDebug() << "proxy: " << proxy.hostName() << "port" << proxy.port(); + } + QVERIFY(listOfProxies.length()==3); + QVERIFY(listOfProxies.first().type() == QNetworkProxy::FtpCachingProxy); + Maemo::ProxyConf::clear(); +} + + +void Ut_ProxyConf::proxy_http_factory_ok_manual() +{ + QNetworkProxyQuery query = QNetworkProxyQuery(QUrl("http://maps.google.com/")); + Maemo::ProxyConf::update(); + + put("mode", "string", "manual"); + + QList listOfProxies = QNetworkProxyFactory::proxyForQuery(query); + + foreach (QNetworkProxy proxy, listOfProxies) { + qDebug() << "proxy: " << proxy.hostName() << "port" << proxy.port(); + } + QVERIFY(listOfProxies.length()==3); + QVERIFY(listOfProxies.first().type() == QNetworkProxy::HttpProxy); + Maemo::ProxyConf::clear(); +} + + +void Ut_ProxyConf::proxy_https_factory_ok_manual() +{ + QNetworkProxyQuery query = QNetworkProxyQuery(QUrl("https://maps.google.com/")); + Maemo::ProxyConf::update(); + + put("mode", "string", "manual"); + + QList listOfProxies = QNetworkProxyFactory::proxyForQuery(query); + + foreach (QNetworkProxy proxy, listOfProxies) { + qDebug() << "proxy: " << proxy.hostName() << "port" << proxy.port(); + } + QVERIFY(listOfProxies.length()==2); + QVERIFY(listOfProxies.first().type() == QNetworkProxy::HttpProxy); + Maemo::ProxyConf::clear(); +} + + +void Ut_ProxyConf::proxy_socks_factory_ok_manual() +{ + QNetworkProxyQuery query = QNetworkProxyQuery(QUrl("http://maps.google.com/")); + Maemo::ProxyConf::update(); + + put("mode", "string", "manual"); + put_http("host", "string", ""); + + QList listOfProxies = QNetworkProxyFactory::proxyForQuery(query); + + foreach (QNetworkProxy proxy, listOfProxies) { + qDebug() << "proxy: " << proxy.hostName() << "port" << proxy.port(); + } + QVERIFY(listOfProxies.length()==2); + QVERIFY(listOfProxies.first().type() == QNetworkProxy::Socks5Proxy); + Maemo::ProxyConf::clear(); +} + + +void Ut_ProxyConf::proxy_http_factory_ok_manual_clear() +{ + QNetworkProxyQuery query = QNetworkProxyQuery(QUrl("http://maps.google.com/")); + Maemo::ProxyConf::update(); + + put("mode", "string", "manual"); + put_http("host", "string", "192.168.1.1"); + + QList listOfProxies = QNetworkProxyFactory::proxyForQuery(query); + + foreach (QNetworkProxy proxy, listOfProxies) { + qDebug() << "proxy: " << proxy.hostName() << "port" << proxy.port(); + } + QVERIFY(listOfProxies.length()==3); + QVERIFY(listOfProxies.first().type() == QNetworkProxy::HttpProxy); + + Maemo::ProxyConf::clear(); + listOfProxies = QNetworkProxyFactory::proxyForQuery(query); + QVERIFY(listOfProxies.length()==1); + QVERIFY(listOfProxies.first().type() == QNetworkProxy::NoProxy); +} + + +void Ut_ProxyConf::proxy_default_factory_ok_manual() +{ + QNetworkProxyQuery query = QNetworkProxyQuery(QUrl("foobar://maps.google.com/")); + Maemo::ProxyConf::update(); + + put("mode", "string", "manual"); + put("socks_host", "string", ""); + put("secure_host", "string", ""); + + QList listOfProxies = QNetworkProxyFactory::proxyForQuery(query); + + QVERIFY(listOfProxies.length()==1); + QVERIFY(listOfProxies.first().type() == QNetworkProxy::NoProxy); + Maemo::ProxyConf::clear(); +} + + +void Ut_ProxyConf::proxy_http_factory_ok_manual_ignore_list() +{ + QNetworkProxyQuery query = QNetworkProxyQuery(QUrl("http://192.168.19.70/")); + Maemo::ProxyConf::update(); + + put("mode", "string", "manual"); + + QList listOfProxies = QNetworkProxyFactory::proxyForQuery(query); + + foreach (QNetworkProxy proxy, listOfProxies) { + qDebug() << "proxy: " << proxy.hostName() << "port" << proxy.port(); + } + QVERIFY(listOfProxies.length()==3); + QVERIFY(listOfProxies.first().type() == QNetworkProxy::HttpProxy); + + query = QNetworkProxyQuery(QUrl("http://192.168.20.10/")); + listOfProxies = QNetworkProxyFactory::proxyForQuery(query); + QVERIFY(listOfProxies.length()==1); + QVERIFY(listOfProxies.first().type() == QNetworkProxy::NoProxy); + Maemo::ProxyConf::clear(); +} + + +void Ut_ProxyConf::proxy_default_factory_ok_manual_system() +{ + QNetworkProxyQuery query = QNetworkProxyQuery(QUrl("http://maps.google.com/")); + Maemo::ProxyConf::update(); + + put("mode", "string", "manual"); + + QList listOfProxies = QNetworkProxyFactory::systemProxyForQuery(query); + + QVERIFY(listOfProxies.length()==1); + QVERIFY(listOfProxies.first().type() == QNetworkProxy::NoProxy); + Maemo::ProxyConf::clear(); +} + + + + +QTEST_MAIN(Ut_ProxyConf) + +#include "ut_proxyconf.moc" -- cgit v0.12 From 7fcc1daf1762d345ca39f9599a8de2567bb8e788 Mon Sep 17 00:00:00 2001 From: Martin Jones Date: Mon, 16 Aug 2010 15:17:27 +1000 Subject: More positioners with QGraphicsWidgets fixes. Task-number: QTBUG-12416 Reviewed-by: Michael Brasser --- .../graphicsitems/qdeclarativepositioners.cpp | 8 +++- .../tst_qdeclarativepositioners.cpp | 44 ++++++++++++++++++++++ 2 files changed, 50 insertions(+), 2 deletions(-) diff --git a/src/declarative/graphicsitems/qdeclarativepositioners.cpp b/src/declarative/graphicsitems/qdeclarativepositioners.cpp index f32c532..1a5c42d 100644 --- a/src/declarative/graphicsitems/qdeclarativepositioners.cpp +++ b/src/declarative/graphicsitems/qdeclarativepositioners.cpp @@ -70,6 +70,8 @@ void QDeclarativeBasePositionerPrivate::watchChanges(QGraphicsObject *other) Q_Q(QDeclarativeBasePositioner); QObject::connect(other, SIGNAL(widthChanged()), q, SLOT(graphicsWidgetGeometryChanged())); QObject::connect(other, SIGNAL(heightChanged()), q, SLOT(graphicsWidgetGeometryChanged())); + QObject::connect(other, SIGNAL(opacityChanged()), q, SLOT(graphicsWidgetGeometryChanged())); + QObject::connect(other, SIGNAL(visibleChanged()), q, SLOT(graphicsWidgetGeometryChanged())); } } @@ -82,6 +84,8 @@ void QDeclarativeBasePositionerPrivate::unwatchChanges(QGraphicsObject* other) Q_Q(QDeclarativeBasePositioner); QObject::disconnect(other, SIGNAL(widthChanged()), q, SLOT(graphicsWidgetGeometryChanged())); QObject::disconnect(other, SIGNAL(heightChanged()), q, SLOT(graphicsWidgetGeometryChanged())); + QObject::disconnect(other, SIGNAL(opacityChanged()), q, SLOT(graphicsWidgetGeometryChanged())); + QObject::disconnect(other, SIGNAL(visibleChanged()), q, SLOT(graphicsWidgetGeometryChanged())); } } @@ -235,7 +239,7 @@ void QDeclarativeBasePositioner::prePositioning() QGraphicsObject *child = children.at(ii)->toGraphicsObject(); if (!child) continue; - QDeclarativeItemPrivate *childPrivate = static_cast(QGraphicsItemPrivate::get(child)); + QGraphicsItemPrivate *childPrivate = static_cast(QGraphicsItemPrivate::get(child)); PositionedItem *item = 0; PositionedItem posItem(child); int wIdx = oldItems.find(posItem); @@ -320,7 +324,7 @@ void QDeclarativeBasePositioner::finishApplyTransitions() static inline bool isInvisible(QGraphicsObject *child) { - QDeclarativeItemPrivate *childPrivate = static_cast(QGraphicsItemPrivate::get(child)); + QGraphicsItemPrivate *childPrivate = static_cast(QGraphicsItemPrivate::get(child)); return child->opacity() == 0.0 || childPrivate->explicitlyHidden || !childPrivate->width() || !childPrivate->height(); } diff --git a/tests/auto/declarative/qdeclarativepositioners/tst_qdeclarativepositioners.cpp b/tests/auto/declarative/qdeclarativepositioners/tst_qdeclarativepositioners.cpp index 0663991..887be50 100644 --- a/tests/auto/declarative/qdeclarativepositioners/tst_qdeclarativepositioners.cpp +++ b/tests/auto/declarative/qdeclarativepositioners/tst_qdeclarativepositioners.cpp @@ -46,6 +46,7 @@ #include #include #include +#include #include "../../../shared/util.h" #ifdef Q_OS_SYMBIAN @@ -77,6 +78,7 @@ private slots: void test_flow_resize(); void test_flow_implicit_resize(); void test_conflictinganchors(); + void test_vertical_qgraphicswidget(); private: QDeclarativeView *createView(const QString &filename); }; @@ -771,6 +773,48 @@ void tst_QDeclarativePositioners::test_conflictinganchors() QCOMPARE(warningMessage, QString("file::2:1: QML Flow: Cannot specify anchors for items inside Flow")); } +void tst_QDeclarativePositioners::test_vertical_qgraphicswidget() +{ + QDeclarativeView *canvas = createView(SRCDIR "/data/verticalqgraphicswidget.qml"); + + QGraphicsWidget *one = canvas->rootObject()->findChild("one"); + QVERIFY(one != 0); + + QGraphicsWidget *two = canvas->rootObject()->findChild("two"); + QVERIFY(two != 0); + + QGraphicsWidget *three = canvas->rootObject()->findChild("three"); + QVERIFY(three != 0); + + QCOMPARE(one->x(), 0.0); + QCOMPARE(one->y(), 0.0); + QCOMPARE(two->x(), 0.0); + QCOMPARE(two->y(), 50.0); + QCOMPARE(three->x(), 0.0); + QCOMPARE(three->y(), 60.0); + + QDeclarativeItem *column = canvas->rootObject()->findChild("column"); + QVERIFY(column); + QCOMPARE(column->height(), 80.0); + QCOMPARE(column->width(), 50.0); + + two->resize(QSizeF(two->size().width(), 20.0)); + QCOMPARE(three->x(), 0.0); + QCOMPARE(three->y(), 70.0); + + two->setOpacity(0.0); + QCOMPARE(one->x(), 0.0); + QCOMPARE(one->y(), 0.0); + QCOMPARE(three->x(), 0.0); + QCOMPARE(three->y(), 50.0); + + one->setVisible(false); + QCOMPARE(three->x(), 0.0); + QCOMPARE(three->y(), 0.0); + + delete canvas; +} + QDeclarativeView *tst_QDeclarativePositioners::createView(const QString &filename) { QDeclarativeView *canvas = new QDeclarativeView(0); -- cgit v0.12 From b83c295650b3f28bc9da542acf4652f4ce2d168b Mon Sep 17 00:00:00 2001 From: Martin Jones Date: Mon, 16 Aug 2010 15:38:15 +1000 Subject: Handle QGraphicsWidgets in Flickable Task-number: QTBUG-12830 Reviewed-by: Michael Brasser --- .../graphicsitems/qdeclarativeflickable.cpp | 2 +- .../tst_qdeclarativeflickable.cpp | 37 ++++++++++++++++++++++ 2 files changed, 38 insertions(+), 1 deletion(-) diff --git a/src/declarative/graphicsitems/qdeclarativeflickable.cpp b/src/declarative/graphicsitems/qdeclarativeflickable.cpp index 19cabdd..9bcadd2 100644 --- a/src/declarative/graphicsitems/qdeclarativeflickable.cpp +++ b/src/declarative/graphicsitems/qdeclarativeflickable.cpp @@ -1027,7 +1027,7 @@ void QDeclarativeFlickable::cancelFlick() void QDeclarativeFlickablePrivate::data_append(QDeclarativeListProperty *prop, QObject *o) { - QDeclarativeItem *i = qobject_cast(o); + QGraphicsObject *i = qobject_cast(o); if (i) i->setParentItem(static_cast(prop->data)->contentItem); else diff --git a/tests/auto/declarative/qdeclarativeflickable/tst_qdeclarativeflickable.cpp b/tests/auto/declarative/qdeclarativeflickable/tst_qdeclarativeflickable.cpp index 678996b..e7ded8a 100644 --- a/tests/auto/declarative/qdeclarativeflickable/tst_qdeclarativeflickable.cpp +++ b/tests/auto/declarative/qdeclarativeflickable/tst_qdeclarativeflickable.cpp @@ -44,6 +44,7 @@ #include #include #include +#include #include #ifdef Q_OS_SYMBIAN @@ -67,9 +68,13 @@ private slots: void flickDeceleration(); void pressDelay(); void flickableDirection(); + void qgraphicswidget(); private: QDeclarativeEngine engine; + + template + T *findItem(QGraphicsObject *parent, const QString &objectName); }; tst_qdeclarativeflickable::tst_qdeclarativeflickable() @@ -261,6 +266,38 @@ void tst_qdeclarativeflickable::flickableDirection() QCOMPARE(spy.count(),3); } +void tst_qdeclarativeflickable::qgraphicswidget() +{ + QDeclarativeEngine engine; + QDeclarativeComponent c(&engine, QUrl::fromLocalFile(SRCDIR "/data/flickableqgraphicswidget.qml")); + QDeclarativeFlickable *flickable = qobject_cast(c.create()); + + QVERIFY(flickable != 0); + QGraphicsWidget *widget = findItem(flickable->contentItem(), "widget1"); + QVERIFY(widget); +} + +template +T *tst_qdeclarativeflickable::findItem(QGraphicsObject *parent, const QString &objectName) +{ + const QMetaObject &mo = T::staticMetaObject; + //qDebug() << parent->childItems().count() << "children"; + for (int i = 0; i < parent->childItems().count(); ++i) { + QGraphicsObject *item = qobject_cast(parent->childItems().at(i)); + if(!item) + continue; + //qDebug() << "try" << item; + if (mo.cast(item) && (objectName.isEmpty() || item->objectName() == objectName)) { + return static_cast(item); + } + item = findItem(item, objectName); + if (item) + return static_cast(item); + } + + return 0; +} + QTEST_MAIN(tst_qdeclarativeflickable) #include "tst_qdeclarativeflickable.moc" -- cgit v0.12 From af675cf96d4d13b066a669eae847ad56485927d0 Mon Sep 17 00:00:00 2001 From: mae Date: Mon, 16 Aug 2010 10:11:20 +0200 Subject: Fix game could not be restarted Task-number: QT-3668 --- demos/declarative/snake/content/snake.js | 5 ++++- demos/declarative/snake/snake.qml | 16 +--------------- 2 files changed, 5 insertions(+), 16 deletions(-) diff --git a/demos/declarative/snake/content/snake.js b/demos/declarative/snake/content/snake.js index 0f0dbf7..fab7834 100644 --- a/demos/declarative/snake/content/snake.js +++ b/demos/declarative/snake/content/snake.js @@ -35,9 +35,12 @@ function startNewGame() if (heartbeat.running) { endGame(); startNewGameTimer.running = true; + state = "starting"; return; } + state = "starting"; + numRows = numRowsAvailable; numColumns = numColumnsAvailable; board = new Array(numRows * numColumns); @@ -80,7 +83,6 @@ function startNewGame() waitForCookie = 5; score = 0; startHeartbeatTimer.running = true; - heartbeat.running = true; } function endGame() @@ -94,6 +96,7 @@ function endGame() } lastScore = score; highScores.saveScore(lastScore); + state = ""; } function move() { diff --git a/demos/declarative/snake/snake.qml b/demos/declarative/snake/snake.qml index b1344af..ed3bac9 100644 --- a/demos/declarative/snake/snake.qml +++ b/demos/declarative/snake/snake.qml @@ -94,6 +94,7 @@ Rectangle { Timer { id: startHeartbeatTimer; interval: 1000 ; + onTriggered: { state = "running"; heartbeat.running = true; } } @@ -208,21 +209,6 @@ Rectangle { Keys.onUpPressed: if (state == "starting" || direction != 2) Logic.scheduleDirection(0); Keys.onDownPressed: if (state == "starting" || direction != 0) Logic.scheduleDirection(2); - Connections { - target: startHeartbeatTimer - onRunningChanged: { - if (startHeartbeatTimer.running) - screen.state = "starting"; - else - screen.state = "running" - } - } - Connections { - target: heartbeat - onRunningChanged: if (!heartbeat.running) screen.state = ""; - } - - states: [ State { name: "starting" -- cgit v0.12 From aebac76abbc5ed617d5998009afb06f07b9e237f Mon Sep 17 00:00:00 2001 From: Tasuku Suzuki Date: Mon, 16 Aug 2010 12:15:52 +0200 Subject: Fix compilation: QT_NO_LINEEDIT Merge-request: 774 Reviewed-by: Oswald Buddenhagen --- src/gui/util/qcompleter.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/gui/util/qcompleter.cpp b/src/gui/util/qcompleter.cpp index 04d6de9..e718212 100644 --- a/src/gui/util/qcompleter.cpp +++ b/src/gui/util/qcompleter.cpp @@ -921,10 +921,12 @@ void QCompleterPrivate::showPopup(const QRect& rect) void QCompleterPrivate::_q_fileSystemModelDirectoryLoaded(const QString &path) { Q_Q(QCompleter); +#ifndef QT_NO_LINEEDIT QLineEdit *lineEdit = qobject_cast(widget); //the path given by QFileSystemModel does not end with / if (lineEdit && !lineEdit->text().isEmpty() && !q->completionPrefix().isEmpty() && q->completionPrefix() != path + QLatin1Char('/')) q->complete(); +#endif } /*! -- cgit v0.12 From f7a501515fcf1dafecb88a40e18721ea14fd0a13 Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Mon, 16 Aug 2010 13:33:16 +0200 Subject: QtDeclarative debugging: Add an option not to stream the properties of an object. Streaming all the properties is too slow, and we do not need them in the debugger of creator. Reviewed-by: Lasse Holmstedt --- src/declarative/debugger/qdeclarativedebug.cpp | 4 ++-- src/declarative/qml/qdeclarativeenginedebug.cpp | 16 ++++++++++++---- src/declarative/qml/qdeclarativeenginedebug_p.h | 2 +- 3 files changed, 15 insertions(+), 7 deletions(-) diff --git a/src/declarative/debugger/qdeclarativedebug.cpp b/src/declarative/debugger/qdeclarativedebug.cpp index b950aef..154df51 100644 --- a/src/declarative/debugger/qdeclarativedebug.cpp +++ b/src/declarative/debugger/qdeclarativedebug.cpp @@ -507,7 +507,7 @@ QDeclarativeDebugObjectQuery *QDeclarativeEngineDebug::queryObject(const QDeclar QByteArray message; QDataStream ds(&message, QIODevice::WriteOnly); ds << QByteArray("FETCH_OBJECT") << queryId << object.debugId() - << false; + << false << true; d->client->sendMessage(message); } else { query->m_state = QDeclarativeDebugQuery::Error; @@ -530,7 +530,7 @@ QDeclarativeDebugObjectQuery *QDeclarativeEngineDebug::queryObjectRecursive(cons QByteArray message; QDataStream ds(&message, QIODevice::WriteOnly); ds << QByteArray("FETCH_OBJECT") << queryId << object.debugId() - << true; + << true << true; d->client->sendMessage(message); } else { query->m_state = QDeclarativeDebugQuery::Error; diff --git a/src/declarative/qml/qdeclarativeenginedebug.cpp b/src/declarative/qml/qdeclarativeenginedebug.cpp index 1837366..ed98e3c 100644 --- a/src/declarative/qml/qdeclarativeenginedebug.cpp +++ b/src/declarative/qml/qdeclarativeenginedebug.cpp @@ -182,7 +182,7 @@ QVariant QDeclarativeEngineDebugServer::valueContents(const QVariant &value) con } void QDeclarativeEngineDebugServer::buildObjectDump(QDataStream &message, - QObject *object, bool recur) + QObject *object, bool recur, bool dumpProperties) { message << objectData(object); @@ -209,6 +209,8 @@ void QDeclarativeEngineDebugServer::buildObjectDump(QDataStream &message, continue; QDeclarativeBoundSignal *signal = QDeclarativeBoundSignal::cast(child); if (signal) { + if (!dumpProperties) + continue; QDeclarativeObjectProperty prop; prop.type = QDeclarativeObjectProperty::SignalProperty; prop.hasNotifySignal = false; @@ -229,12 +231,17 @@ void QDeclarativeEngineDebugServer::buildObjectDump(QDataStream &message, fakeProperties << prop; } else { if (recur) - buildObjectDump(message, child, recur); + buildObjectDump(message, child, recur, dumpProperties); else message << objectData(child); } } + if (!dumpProperties) { + message << 0; + return; + } + message << (object->metaObject()->propertyCount() + fakeProperties.count()); for (int ii = 0; ii < object->metaObject()->propertyCount(); ++ii) @@ -372,8 +379,9 @@ void QDeclarativeEngineDebugServer::messageReceived(const QByteArray &message) int queryId; int objectId; bool recurse; + bool dumpProperties = true; - ds >> queryId >> objectId >> recurse; + ds >> queryId >> objectId >> recurse >> dumpProperties; QObject *object = QDeclarativeDebugService::objectForId(objectId); @@ -382,7 +390,7 @@ void QDeclarativeEngineDebugServer::messageReceived(const QByteArray &message) rs << QByteArray("FETCH_OBJECT_R") << queryId; if (object) - buildObjectDump(rs, object, recurse); + buildObjectDump(rs, object, recurse, dumpProperties); sendMessage(reply); } else if (type == "WATCH_OBJECT") { diff --git a/src/declarative/qml/qdeclarativeenginedebug_p.h b/src/declarative/qml/qdeclarativeenginedebug_p.h index ea35b40..aa450f3 100644 --- a/src/declarative/qml/qdeclarativeenginedebug_p.h +++ b/src/declarative/qml/qdeclarativeenginedebug_p.h @@ -103,7 +103,7 @@ private Q_SLOTS: private: void buildObjectList(QDataStream &, QDeclarativeContext *); - void buildObjectDump(QDataStream &, QObject *, bool); + void buildObjectDump(QDataStream &, QObject *, bool, bool); QDeclarativeObjectData objectData(QObject *); QDeclarativeObjectProperty propertyData(QObject *, int); QVariant valueContents(const QVariant &defaultValue) const; -- cgit v0.12 From a9c0fbd5e946ae6e90b6db6dd4aea64c824a4066 Mon Sep 17 00:00:00 2001 From: Andreas Kling Date: Mon, 16 Aug 2010 04:33:03 +0200 Subject: qgrayraster: Speed up rendering of small cubic splines. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Based on these upstream freetype2 commits: 7fb3ef64a24489189113f693696eaf935f500c3f e419f48b40a746465a6c8e1d446b407b8677bfed Reviewed-by: Samuel Rødal --- src/gui/painting/qgrayraster.c | 36 ++++++++++++++++-------------------- 1 file changed, 16 insertions(+), 20 deletions(-) diff --git a/src/gui/painting/qgrayraster.c b/src/gui/painting/qgrayraster.c index 5e7c67a..539a33c 100644 --- a/src/gui/painting/qgrayraster.c +++ b/src/gui/painting/qgrayraster.c @@ -956,53 +956,49 @@ const QT_FT_Vector* control2, const QT_FT_Vector* to ) { - TPos dx, dy, da, db; int top, level; int* levels; QT_FT_Vector* arc; + int mid_x = ( DOWNSCALE( ras.x ) + to->x + + 3 * (control1->x + control2->x ) ) / 8; + int mid_y = ( DOWNSCALE( ras.y ) + to->y + + 3 * (control1->y + control2->y ) ) / 8; + TPos dx = DOWNSCALE( ras.x ) + to->x - ( mid_x << 1 ); + TPos dy = DOWNSCALE( ras.y ) + to->y - ( mid_y << 1 ); - dx = DOWNSCALE( ras.x ) + to->x - ( control1->x << 1 ); if ( dx < 0 ) dx = -dx; - dy = DOWNSCALE( ras.y ) + to->y - ( control1->y << 1 ); if ( dy < 0 ) dy = -dy; if ( dx < dy ) dx = dy; - da = dx; - - dx = DOWNSCALE( ras.x ) + to->x - 3 * ( control1->x + control2->x ); - if ( dx < 0 ) - dx = -dx; - dy = DOWNSCALE( ras.y ) + to->y - 3 * ( control1->x + control2->y ); - if ( dy < 0 ) - dy = -dy; - if ( dx < dy ) - dx = dy; - db = dx; level = 1; - da = da / ras.cubic_level; - db = db / ras.conic_level; - while ( da > 0 || db > 0 ) + dx /= ras.cubic_level; + while ( dx > 0 ) { - da >>= 2; - db >>= 3; + dx >>= 2; level++; } if ( level <= 1 ) { - TPos to_x, to_y, mid_x, mid_y; + TPos to_x, to_y; to_x = UPSCALE( to->x ); to_y = UPSCALE( to->y ); + + /* Recalculation of midpoint is needed only if */ + /* UPSCALE and DOWNSCALE have any effect. */ + +#if ( PIXEL_BITS != 6 ) mid_x = ( ras.x + to_x + 3 * UPSCALE( control1->x + control2->x ) ) / 8; mid_y = ( ras.y + to_y + 3 * UPSCALE( control1->y + control2->y ) ) / 8; +#endif gray_render_line( RAS_VAR_ mid_x, mid_y ); gray_render_line( RAS_VAR_ to_x, to_y ); -- cgit v0.12 From 7cfc9f2245162944f3d9a29ad73cd93e2bcf197f Mon Sep 17 00:00:00 2001 From: Miikka Heikkinen Date: Mon, 16 Aug 2010 16:09:34 +0300 Subject: Fix QProcessManager destruction If QProcessManager destructor is ran as part of global static cleanup, manager thread will most likely be terminated by kernel at that point, so trying to delete QProcessActives and QProcessMediators will panic as they will still be active. They can also no longer be properly canceled as the thread is already gone. In case manager thread has already died, which implies that process exit is imminent, we simply do nothing and let the deletion of the main heap at process exit take care of stray objects. Task-number: QTBUG-11218 Reviewed-by: Janne Koskinen --- src/corelib/io/qprocess_symbian.cpp | 47 ++++++++++++++++++++++--------------- 1 file changed, 28 insertions(+), 19 deletions(-) diff --git a/src/corelib/io/qprocess_symbian.cpp b/src/corelib/io/qprocess_symbian.cpp index af657b2..003e781 100644 --- a/src/corelib/io/qprocess_symbian.cpp +++ b/src/corelib/io/qprocess_symbian.cpp @@ -375,10 +375,9 @@ QProcessActive::QProcessActive() // Nothing to do } -// Called from ProcessManagerThread +// Called from main thread QProcessActive::~QProcessActive() { - Cancel(); process = NULL; pproc = NULL; } @@ -482,10 +481,9 @@ QProcessManagerMediator::QProcessManagerMediator() // Nothing to do } -// Called from ProcessManagerThread +// Called from main thread QProcessManagerMediator::~QProcessManagerMediator() { - Cancel(); processManagerThread.Close(); currentCommand = ENoCommand; currentObserver = NULL; @@ -648,25 +646,36 @@ QProcessManager::QProcessManager() QProcessManager::~QProcessManager() { QPROCESS_DEBUG_PRINT("QProcessManager::~QProcessManager()"); - // Cancel death listening for all child processes - if (mediator) { - QMap::Iterator it = children.begin(); - while (it != children.end()) { - // Remove all monitors - QProcessActive *active = it.value(); - mediator->remove(active); - - QPROCESS_DEBUG_PRINT("QProcessManager::~QProcessManager() removed listening for a process"); - ++it; + + // Check if manager thread is still alive. If this destructor is ran as part of global + // static cleanup, manager thread will most likely be terminated by kernel at this point, + // so trying to delete QProcessActives and QProcessMediators will panic as they + // will still be active. They can also no longer be canceled as the thread is already gone. + // In case manager thread has already died, we simply do nothing and let the deletion of + // the main heap at process exit take care of stray objects. + + if (managerThread.Handle() && managerThread.ExitType() == EExitPending) { + // Cancel death listening for all child processes + if (mediator) { + QMap::Iterator it = children.begin(); + while (it != children.end()) { + // Remove all monitors + QProcessActive *active = it.value(); + mediator->remove(active); + + QPROCESS_DEBUG_PRINT("QProcessManager::~QProcessManager() removed listening for a process"); + ++it; + } + + // Terminate process manager thread. + mediator->terminate(); + delete mediator; } - // Terminate process manager thread. - mediator->terminate(); - delete mediator; + qDeleteAll(children.values()); + children.clear(); } - qDeleteAll(children.values()); - children.clear(); managerThread.Close(); managerMutex.Close(); } -- cgit v0.12 From 8f3489c8bfb18246480a489779c2d9b330474c5d Mon Sep 17 00:00:00 2001 From: Martin Smith Date: Mon, 16 Aug 2010 15:59:30 +0200 Subject: qdoc: Reorganized the QML elements table to be a dictionary... ...and a set of functional group pages. --- doc/src/declarative/elements.qdoc | 252 ++++++++++++--------- .../WebKit/qt/declarative/qdeclarativewebview.cpp | 1 + .../graphicsitems/qdeclarativeanimatedimage.cpp | 3 +- .../graphicsitems/qdeclarativeborderimage.cpp | 1 + .../graphicsitems/qdeclarativeevents.cpp | 4 + .../graphicsitems/qdeclarativeflickable.cpp | 2 + .../graphicsitems/qdeclarativeflipable.cpp | 2 + .../graphicsitems/qdeclarativefocuspanel.cpp | 2 + .../graphicsitems/qdeclarativefocusscope.cpp | 2 + .../graphicsitems/qdeclarativegridview.cpp | 2 + .../graphicsitems/qdeclarativeimage.cpp | 2 + src/declarative/graphicsitems/qdeclarativeitem.cpp | 7 + .../graphicsitems/qdeclarativelayoutitem.cpp | 1 + .../graphicsitems/qdeclarativelistview.cpp | 1 + .../graphicsitems/qdeclarativeloader.cpp | 1 + .../graphicsitems/qdeclarativemousearea.cpp | 1 + src/declarative/graphicsitems/qdeclarativepath.cpp | 7 + .../graphicsitems/qdeclarativepathview.cpp | 1 + .../graphicsitems/qdeclarativepositioners.cpp | 4 + .../graphicsitems/qdeclarativerectangle.cpp | 3 + .../graphicsitems/qdeclarativerepeater.cpp | 1 + src/declarative/graphicsitems/qdeclarativetext.cpp | 3 +- .../graphicsitems/qdeclarativetextedit.cpp | 1 + .../graphicsitems/qdeclarativetextinput.cpp | 4 + .../graphicsitems/qdeclarativevisualitemmodel.cpp | 2 + src/declarative/qml/qdeclarativecomponent.cpp | 1 + src/declarative/qml/qdeclarativeengine.cpp | 2 + src/declarative/qml/qdeclarativeworkerscript.cpp | 1 + src/declarative/util/qdeclarativeanimation.cpp | 13 ++ src/declarative/util/qdeclarativebehavior.cpp | 1 + src/declarative/util/qdeclarativebind.cpp | 1 + src/declarative/util/qdeclarativeconnections.cpp | 1 + src/declarative/util/qdeclarativefontloader.cpp | 1 + src/declarative/util/qdeclarativelistmodel.cpp | 4 +- src/declarative/util/qdeclarativepackage.cpp | 1 + .../util/qdeclarativepropertychanges.cpp | 1 + .../util/qdeclarativesmoothedanimation.cpp | 1 + .../util/qdeclarativespringanimation.cpp | 1 + src/declarative/util/qdeclarativestate.cpp | 1 + src/declarative/util/qdeclarativestategroup.cpp | 1 + .../util/qdeclarativestateoperations.cpp | 3 + src/declarative/util/qdeclarativesystempalette.cpp | 1 + src/declarative/util/qdeclarativetimer.cpp | 1 + src/declarative/util/qdeclarativetransition.cpp | 1 + src/declarative/util/qdeclarativexmllistmodel.cpp | 2 + .../qdeclarativefolderlistmodel.cpp | 1 + src/imports/gestures/qdeclarativegesturearea.cpp | 2 + src/imports/particles/qdeclarativeparticles.cpp | 4 + tools/qdoc3/ditaxmlgenerator.cpp | 10 + tools/qdoc3/htmlgenerator.cpp | 10 + tools/qdoc3/htmlgenerator.h | 1 + 51 files changed, 267 insertions(+), 110 deletions(-) diff --git a/doc/src/declarative/elements.qdoc b/doc/src/declarative/elements.qdoc index c008404..94abe10 100644 --- a/doc/src/declarative/elements.qdoc +++ b/doc/src/declarative/elements.qdoc @@ -26,113 +26,151 @@ ****************************************************************************/ /*! -\page qdeclarativeelements.html -\target elements -\title QML Elements - -The following table lists the QML elements provided by the \l {QtDeclarative}{Qt Declarative} module. - -\table -\header \o {2,1} \bold {Basic Visual Items} -\row \o \l {Item} \o Basic item element inherited by all visual items in QML -\row \o \l {Rectangle} \o Basic visual rectangle element -\row \o \l {Gradient} \o Defines a gradient between two or more colors -\row \o \l {GradientStop} \o Defines a color used in a \l {Gradient} -\row \o \l {Image} \o Allows the use of bitmaps to a scene -\row \o \l {BorderImage} (Item-specific) \o Defines an image as a border -\row \o \l {AnimatedImage} \o For playing animations stored as a series of frames -\row \o \l {Text} \o Allows the use of formatted text in a scene -\row \o \l {TextInput} \o Displays an editable line of text -\row \o \l {IntValidator} \o Validator for integer values -\row \o \l {DoubleValidator} \o Validator for non-integer values -\row \o \l {RegExpValidator} \o Validator for string regular expressions -\row \o \l {TextEdit} \o Displays multiple lines of editable formatted text - -\header \o {2,1} \bold {Basic Interaction Items} -\row \o \l {MouseArea} \o Handles mouse interactions -\row \o \l {FocusScope} \o For keyboard focus handling -\row \o \l {Flickable} \o Provides a surface that can be "flicked" -\row \o \l {Flipable} \o Provides a surface that produces flipping effects -\row \o \l {GestureArea} (experimental) \o Enables simple gesture handling - -\header \o {2,1} \bold {States} -\row \o \l {State} \o Defines sets of configurations of objects and properties -\row \o \l {PropertyChanges} \o Describes property changes within a state -\row \o \l {StateGroup} \o Contains a set of states and state transitions -\row \o \l {StateChangeScript} \o Allows script binding in a state -\row \o \l {ParentChange} (Item-specific) \o Re-parent an Item in a state change -\row \o \l {AnchorChanges} \o Change the anchors of an item in a state - -\header \o {2,1} \bold {Animation and Transitions} -\row \o \l {Behavior} \o Specifies a default animation for property changes -\row \o \l {SequentialAnimation} \o Runs animations sequentially -\row \o \l {ParallelAnimation} \o Runs animations in parallel -\row \o \l {PropertyAnimation} \o Animates property changes -\row \o \l {NumberAnimation} \o Animates properties of type qreal -\row \o \l {Vector3dAnimation} \o Animates properties of type QVector3d -\row \o \l {ColorAnimation} \o Animates color changes -\row \o \l {RotationAnimation} \o Animates rotations -\row \o \l {ParentAnimation} \o Animates parent changes -\row \o \l {AnchorAnimation} \o Animates anchor changes -\row \o \l {PauseAnimation} \o Pauses an animation -\row \o \l {SmoothedAnimation} \o Allows a property to smoothly track a value -\row \o \l {SpringAnimation} \o Allows a property to track a value in a spring-like motion -\row \o \l {PropertyAction} \o Sets immediate property changes during animation -\row \o \l {ScriptAction} \o Runs scripts during an animation -\row \o \l {Transition} \o Animates transitions during state changes - -\header \o {2,1} \bold {Working with Data} -\row \o \l {Binding} \o Binds any value to any property -\row \o \l {ListModel} \o Defines a list of data -\row \o \l {ListElement} \o Defines a data item in a \l {ListModel} -\row \o \l {VisualItemModel} \o Contains items that already defines its own visual delegate -\row \o \l {VisualDataModel} \o Encapsulates a model and a delegate -\row \o \l {Package} \o Collection that enables sharing of items within different views -\row \o \l {XmlListModel} \o Specifies a model using XPath expressions -\row \o \l {XmlRole} \o Specifies a role for an \l {XmlListModel} - -\header \o {2,1} \bold {Views} -\row \o \l {ListView} \o Provides a list visualization of a model -\row \o \l {GridView} \o Provides a grid visualization of a model -\row \o \l {PathView} \o Visualizes a model's contents along a path -\row \o \l {Path} \o Defines a path used by \l {PathView} -\row \o \l {PathLine} \o Defines a line in \l {Path} -\row \o \l {PathQuad} \o Defines a quadratic Bezier curve in a \l {Path} -\row \o \l {PathCubic} \o Defines a cubic Bezier curve in a \l {Path} -\row \o \l {PathAttribute} \o Allows the setting of attributes along a \l {Path} -\row \o \l {PathPercent} \o Modifies the item distribution along a \l {Path} -\row \o \l {WebView} \o Allows the addition of web content to a canvas - -\header \o {2,1} \bold {Positioners} -\row \o \l {Column} \o Arranges its children vertically -\row \o \l {Row} \o Arranges its children horizontally -\row \o \l {Grid} \o Positions its children in a grid -\row \o \l {Flow} \o Positions its children with wrapping support - -\header \o {2,1} \bold {Utility} -\row \o \l {Connections} \o Explicitly connects signals and signal handlers -\row \o \l {Component} \o Encapsulate QML items as a component -\row \o \l {Timer} \o Provides timed triggers -\row \o \l {QML:QtObject} {QtObject} \o Basic element containing only the objectName property -\row \o \l {QML:Qt} {Qt} \o The QML global Qt object provides useful enums and functions from Qt. -\row \o \l {WorkerScript} \o Enables the use of threads in QML -\row \o \l {Loader} \o Controls the loading of items or components -\row \o \l {Repeater} \o Uses a model to create multiples of components -\row \o \l {SystemPalette} \o Provides access to the Qt palettes -\row \o \l {FontLoader} \o Loads fonts by name or URL -\row \o \l {LayoutItem} \o Allows declarative UI elements inside Qt's Graphics View layouts - -\header \o {2,1} \bold {Transforms} -\row \o \l {Scale} \o Assigns item scaling behaviors -\row \o \l {Rotation} \o Assigns item rotation behaviors -\row \o \l {Translate} \o Assigns item translation behaviors - -\header \o {2,1} \bold {Effects} -\row \o \l {Particles} (experimental) \o Generates and animates particles -\row \o \l {ParticleMotionLinear} \o Adds linear motion behavior to \l {Particles} -\row \o \l {ParticleMotionGravity} \o Adds gravitational motion to \l {Particles} -\row \o \l {ParticleMotionWander} \o Adds varied motions to \l {Particles} -\endtable + \page qdeclarativeelements.html + \target elements + \title QML Elements + This is a dictionary of all the QML elements available in the \l + {QtDeclarative} {Qt Declarative} module. + + To see the QML elements listed by + functional area, \l{Groups Of Related QML Elements} {look here}. + + \generatelist qmlclasses + +*/ + + +/*! + \group qml-groups + \title Groups Of Related QML Elements + + \brief If you know what kind of QML element you want (Basic Visual, + Interaction, Animation, etc), look here. + + This is a list of functional groups of QML elements. + + \generatelist{related} + +*/ + +/*! + \group qml-basic-visual-elements + \title Basic QML Visual Elements + \ingroup qml-groups + + \brief Elements for constructing basic visual items. + + \generatelist{related} + +*/ + +/*! + \group qml-basic-interaction-elements + \title Basic QML Interaction Elements + \ingroup qml-groups + + \brief Elements for handling basic interactions. + + \generatelist{related} + +*/ + +/*! + \group qml-state-elements + \title QML State Elements + \ingroup qml-groups + + \brief Elements for handling state changes. + + \generatelist{related} + +*/ + +/*! + \group qml-event-elements + \title QML Event Elements + \ingroup qml-groups + + \brief Elements for handling events. + + \generatelist{related} + +*/ + +/*! + \group qml-animation-transition + \title QML Animation and Transition Elements + \ingroup qml-groups + + \brief Elements for handling animations and transitions. + + \generatelist{related} + +*/ + +/*! + \group qml-working-with-data + \title Working With Data in QML + \ingroup qml-groups + + \brief Elements for working with data. + + \generatelist{related} + +*/ + +/*! + \group qml-view-elements + \title QML View Elements + \ingroup qml-groups + + \brief Elements for handling views. + + \generatelist{related} + +*/ + +/*! + \group qml-positioning-elements + \title QML Positioning Elements + \ingroup qml-groups + + \brief Elements for positioning items. + + \generatelist{related} + +*/ + +/*! + \group qml-utility-elements + \title QML Utility Elements + \ingroup qml-groups + + \brief Elements for handling misc operations. + + \generatelist{related} + +*/ + +/*! + \group qml-transform-elements + \title QML Transform Elements + \ingroup qml-groups + + \brief Elements for handling transformations. + + \generatelist{related} + +*/ + +/*! + \group qml-particle-elements + \title QML Particle Elements + \ingroup qml-groups + + \brief Elements for handling particle effects. + + \generatelist{related} */ diff --git a/src/3rdparty/webkit/WebKit/qt/declarative/qdeclarativewebview.cpp b/src/3rdparty/webkit/WebKit/qt/declarative/qdeclarativewebview.cpp index 9dcba60..c1ca23d 100644 --- a/src/3rdparty/webkit/WebKit/qt/declarative/qdeclarativewebview.cpp +++ b/src/3rdparty/webkit/WebKit/qt/declarative/qdeclarativewebview.cpp @@ -139,6 +139,7 @@ void GraphicsWebView::mouseMoveEvent(QGraphicsSceneMouseEvent* event) /*! \qmlclass WebView QDeclarativeWebView + \ingroup qml-view-elements \since 4.7 \brief The WebView item allows you to add web content to a canvas. \inherits Item diff --git a/src/declarative/graphicsitems/qdeclarativeanimatedimage.cpp b/src/declarative/graphicsitems/qdeclarativeanimatedimage.cpp index d8527d3..e0a2149 100644 --- a/src/declarative/graphicsitems/qdeclarativeanimatedimage.cpp +++ b/src/declarative/graphicsitems/qdeclarativeanimatedimage.cpp @@ -62,7 +62,8 @@ QT_BEGIN_NAMESPACE \qmlclass AnimatedImage QDeclarativeAnimatedImage \inherits Image \since 4.7 - + \ingroup basic-visual-elements + The AnimatedImage element provides for playing animations stored as images containing a series of frames, such as GIF files. diff --git a/src/declarative/graphicsitems/qdeclarativeborderimage.cpp b/src/declarative/graphicsitems/qdeclarativeborderimage.cpp index 4881248..e0c7fc2 100644 --- a/src/declarative/graphicsitems/qdeclarativeborderimage.cpp +++ b/src/declarative/graphicsitems/qdeclarativeborderimage.cpp @@ -56,6 +56,7 @@ QT_BEGIN_NAMESPACE \brief The BorderImage element provides an image that can be used as a border. \inherits Item \since 4.7 + \ingroup qm-basic-visual-elements A BorderImage breaks an image into 9 sections, as shown below: diff --git a/src/declarative/graphicsitems/qdeclarativeevents.cpp b/src/declarative/graphicsitems/qdeclarativeevents.cpp index 81ec6e1..0a35a3f 100644 --- a/src/declarative/graphicsitems/qdeclarativeevents.cpp +++ b/src/declarative/graphicsitems/qdeclarativeevents.cpp @@ -45,6 +45,8 @@ QT_BEGIN_NAMESPACE /*! \qmlclass KeyEvent QDeclarativeKeyEvent \since 4.7 + \ingroup qml-event-elements + \brief The KeyEvent object provides information about a key event. For example, the following changes the Item's state property when the Enter @@ -115,6 +117,8 @@ Item { /*! \qmlclass MouseEvent QDeclarativeMouseEvent \since 4.7 + \ingroup qml-event-elements + \brief The MouseEvent object provides information about a mouse event. The position of the mouse can be found via the x and y properties. diff --git a/src/declarative/graphicsitems/qdeclarativeflickable.cpp b/src/declarative/graphicsitems/qdeclarativeflickable.cpp index 19cabdd..31f7707 100644 --- a/src/declarative/graphicsitems/qdeclarativeflickable.cpp +++ b/src/declarative/graphicsitems/qdeclarativeflickable.cpp @@ -345,6 +345,8 @@ void QDeclarativeFlickablePrivate::updateBeginningEnd() /*! \qmlclass Flickable QDeclarativeFlickable \since 4.7 + \ingroup qml-basic-interaction-elements + \brief The Flickable item provides a surface that can be "flicked". \inherits Item diff --git a/src/declarative/graphicsitems/qdeclarativeflipable.cpp b/src/declarative/graphicsitems/qdeclarativeflipable.cpp index b266273..6ce0fa6 100644 --- a/src/declarative/graphicsitems/qdeclarativeflipable.cpp +++ b/src/declarative/graphicsitems/qdeclarativeflipable.cpp @@ -70,6 +70,8 @@ public: /*! \qmlclass Flipable QDeclarativeFlipable \since 4.7 + \ingroup qml-basic-interaction-elements + \brief The Flipable item provides a surface that can be flipped. \inherits Item diff --git a/src/declarative/graphicsitems/qdeclarativefocuspanel.cpp b/src/declarative/graphicsitems/qdeclarativefocuspanel.cpp index bd60e25..5c7959a 100644 --- a/src/declarative/graphicsitems/qdeclarativefocuspanel.cpp +++ b/src/declarative/graphicsitems/qdeclarativefocuspanel.cpp @@ -51,6 +51,8 @@ QT_BEGIN_NAMESPACE /*! \qmlclass FocusPanel QDeclarativeFocusPanel \since 4.7 + \ingroup qml-basic-interaction-elements + \brief The FocusPanel item explicitly creates a focus panel. \inherits Item diff --git a/src/declarative/graphicsitems/qdeclarativefocusscope.cpp b/src/declarative/graphicsitems/qdeclarativefocusscope.cpp index e8e6fa2..4498275 100644 --- a/src/declarative/graphicsitems/qdeclarativefocusscope.cpp +++ b/src/declarative/graphicsitems/qdeclarativefocusscope.cpp @@ -48,6 +48,8 @@ QT_BEGIN_NAMESPACE /*! \qmlclass FocusScope QDeclarativeFocusScope \since 4.7 + \ingroup qml-basic-interaction-elements + \brief The FocusScope object explicitly creates a focus scope. \inherits Item diff --git a/src/declarative/graphicsitems/qdeclarativegridview.cpp b/src/declarative/graphicsitems/qdeclarativegridview.cpp index 68a4c64..d67e69a 100644 --- a/src/declarative/graphicsitems/qdeclarativegridview.cpp +++ b/src/declarative/graphicsitems/qdeclarativegridview.cpp @@ -1056,6 +1056,8 @@ void QDeclarativeGridViewPrivate::flick(AxisData &data, qreal minExtent, qreal m /*! \qmlclass GridView QDeclarativeGridView \since 4.7 + \ingroup qml-view-elements + \inherits Flickable \brief The GridView item provides a grid view of items provided by a model. diff --git a/src/declarative/graphicsitems/qdeclarativeimage.cpp b/src/declarative/graphicsitems/qdeclarativeimage.cpp index 37736cc..47a410c 100644 --- a/src/declarative/graphicsitems/qdeclarativeimage.cpp +++ b/src/declarative/graphicsitems/qdeclarativeimage.cpp @@ -51,6 +51,8 @@ QT_BEGIN_NAMESPACE /*! \qmlclass Image QDeclarativeImage \since 4.7 + \ingroup qml-vasic-visual-elements + \brief The Image element allows you to add bitmaps to a scene. \inherits Item diff --git a/src/declarative/graphicsitems/qdeclarativeitem.cpp b/src/declarative/graphicsitems/qdeclarativeitem.cpp index cc7c673..0f16a79 100644 --- a/src/declarative/graphicsitems/qdeclarativeitem.cpp +++ b/src/declarative/graphicsitems/qdeclarativeitem.cpp @@ -69,6 +69,7 @@ QT_BEGIN_NAMESPACE /*! \qmlclass Transform QGraphicsTransform + \ingroup qml-transform-elements \since 4.7 \brief The Transform elements provide a way of building advanced transformations on Items. @@ -90,6 +91,7 @@ QT_BEGIN_NAMESPACE /*! \qmlclass Translate QDeclarativeTranslate + \ingroup qml-transform-elements \since 4.7 \brief The Translate object provides a way to move an Item without changing its x or y properties. @@ -131,6 +133,7 @@ QT_BEGIN_NAMESPACE /*! \qmlclass Scale QGraphicsScale + \ingroup qml-transform-elements \since 4.7 \brief The Scale element provides a way to scale an Item. @@ -172,6 +175,7 @@ QT_BEGIN_NAMESPACE /*! \qmlclass Rotation QGraphicsRotation + \ingroup qml-transform-elements \since 4.7 \brief The Rotation object provides a way to rotate an Item. @@ -419,6 +423,7 @@ void QDeclarativeItemKeyFilter::componentComplete() /*! \qmlclass KeyNavigation QDeclarativeKeyNavigationAttached + \ingroup qml-basic-interaction-elements \since 4.7 \brief The KeyNavigation attached property supports key navigation by arrow keys. @@ -725,6 +730,7 @@ void QDeclarativeKeyNavigationAttached::keyReleased(QKeyEvent *event, bool post) /*! \qmlclass Keys QDeclarativeKeysAttached + \ingroup qml-basic-interaction-elements \since 4.7 \brief The Keys attached property provides key handling to Items. @@ -1310,6 +1316,7 @@ QDeclarativeKeysAttached *QDeclarativeKeysAttached::qmlAttachedProperties(QObjec /*! \qmlclass Item QDeclarativeItem + \ingroup qml-basic-visual-elements \since 4.7 \brief The Item is the most basic of all visual items in QML. diff --git a/src/declarative/graphicsitems/qdeclarativelayoutitem.cpp b/src/declarative/graphicsitems/qdeclarativelayoutitem.cpp index 38d5f59..8509473 100644 --- a/src/declarative/graphicsitems/qdeclarativelayoutitem.cpp +++ b/src/declarative/graphicsitems/qdeclarativelayoutitem.cpp @@ -49,6 +49,7 @@ QT_BEGIN_NAMESPACE /*! \qmlclass LayoutItem QDeclarativeLayoutItem + \ingroup qml-utility-elements \since 4.7 \brief The LayoutItem element allows declarative UI elements to be placed inside Qt's Graphics View layouts. diff --git a/src/declarative/graphicsitems/qdeclarativelistview.cpp b/src/declarative/graphicsitems/qdeclarativelistview.cpp index e1dd1c0..ec1b6cf 100644 --- a/src/declarative/graphicsitems/qdeclarativelistview.cpp +++ b/src/declarative/graphicsitems/qdeclarativelistview.cpp @@ -1357,6 +1357,7 @@ void QDeclarativeListViewPrivate::flick(AxisData &data, qreal minExtent, qreal m /*! \qmlclass ListView QDeclarativeListView + \ingroup qml-view-elements \since 4.7 \inherits Flickable \brief The ListView item provides a list view of items provided by a model. diff --git a/src/declarative/graphicsitems/qdeclarativeloader.cpp b/src/declarative/graphicsitems/qdeclarativeloader.cpp index d28181e..4c6268f 100644 --- a/src/declarative/graphicsitems/qdeclarativeloader.cpp +++ b/src/declarative/graphicsitems/qdeclarativeloader.cpp @@ -108,6 +108,7 @@ void QDeclarativeLoaderPrivate::initResize() /*! \qmlclass Loader QDeclarativeLoader + \ingroup qml-utility-elements \since 4.7 \inherits Item diff --git a/src/declarative/graphicsitems/qdeclarativemousearea.cpp b/src/declarative/graphicsitems/qdeclarativemousearea.cpp index dcdb9f6..2823888 100644 --- a/src/declarative/graphicsitems/qdeclarativemousearea.cpp +++ b/src/declarative/graphicsitems/qdeclarativemousearea.cpp @@ -180,6 +180,7 @@ QDeclarativeMouseAreaPrivate::~QDeclarativeMouseAreaPrivate() /*! \qmlclass MouseArea QDeclarativeMouseArea + \ingroup qml-basic-interaction-elements \since 4.7 \brief The MouseArea item enables simple mouse handling. \inherits Item diff --git a/src/declarative/graphicsitems/qdeclarativepath.cpp b/src/declarative/graphicsitems/qdeclarativepath.cpp index c48011d3..62e03e7 100644 --- a/src/declarative/graphicsitems/qdeclarativepath.cpp +++ b/src/declarative/graphicsitems/qdeclarativepath.cpp @@ -51,6 +51,7 @@ QT_BEGIN_NAMESPACE /*! \qmlclass PathElement QDeclarativePathElement + \ingroup qml-view-elements \since 4.7 \brief PathElement is the base path type. @@ -67,6 +68,7 @@ QT_BEGIN_NAMESPACE /*! \qmlclass Path QDeclarativePath + \ingroup qml-view-elements \since 4.7 \brief A Path object defines a path for use by \l PathView. @@ -497,6 +499,7 @@ void QDeclarativeCurve::setY(qreal y) /*! \qmlclass PathAttribute QDeclarativePathAttribute + \ingroup qml-view-elements \since 4.7 \brief The PathAttribute allows setting an attribute at a given position in a Path. @@ -587,6 +590,7 @@ void QDeclarativePathAttribute::setValue(qreal value) /*! \qmlclass PathLine QDeclarativePathLine + \ingroup qml-view-elements \since 4.7 \brief The PathLine defines a straight line. @@ -627,6 +631,7 @@ void QDeclarativePathLine::addToPath(QPainterPath &path) /*! \qmlclass PathQuad QDeclarativePathQuad + \ingroup qml-view-elements \since 4.7 \brief The PathQuad defines a quadratic Bezier curve with a control point. @@ -713,6 +718,7 @@ void QDeclarativePathQuad::addToPath(QPainterPath &path) /*! \qmlclass PathCubic QDeclarativePathCubic + \ingroup qml-view-elements \since 4.7 \brief The PathCubic defines a cubic Bezier curve with two control points. @@ -828,6 +834,7 @@ void QDeclarativePathCubic::addToPath(QPainterPath &path) /*! \qmlclass PathPercent QDeclarativePathPercent + \ingroup qml-view-elements \since 4.7 \brief The PathPercent manipulates the way a path is interpreted. diff --git a/src/declarative/graphicsitems/qdeclarativepathview.cpp b/src/declarative/graphicsitems/qdeclarativepathview.cpp index 380c6ad..535fb90 100644 --- a/src/declarative/graphicsitems/qdeclarativepathview.cpp +++ b/src/declarative/graphicsitems/qdeclarativepathview.cpp @@ -326,6 +326,7 @@ void QDeclarativePathViewPrivate::regenerate() /*! \qmlclass PathView QDeclarativePathView + \ingroup qml-view-elements \since 4.7 \brief The PathView element lays out model-provided items on a path. \inherits Item diff --git a/src/declarative/graphicsitems/qdeclarativepositioners.cpp b/src/declarative/graphicsitems/qdeclarativepositioners.cpp index 179f13d..5c21b03 100644 --- a/src/declarative/graphicsitems/qdeclarativepositioners.cpp +++ b/src/declarative/graphicsitems/qdeclarativepositioners.cpp @@ -310,6 +310,7 @@ static inline bool isInvisible(QDeclarativeItem *child) /*! \qmlclass Column QDeclarativeColumn + \ingroup qml-positioning-elements \since 4.7 \brief The Column item arranges its children vertically. \inherits Item @@ -475,6 +476,7 @@ void QDeclarativeColumn::reportConflictingAnchors() /*! \qmlclass Row QDeclarativeRow + \ingroup qml-positioning-elements \since 4.7 \brief The Row item arranges its children horizontally. \inherits Item @@ -613,6 +615,7 @@ void QDeclarativeRow::reportConflictingAnchors() /*! \qmlclass Grid QDeclarativeGrid + \ingroup qml-positioning-elements \since 4.7 \brief The Grid item positions its children in a grid. \inherits Item @@ -905,6 +908,7 @@ void QDeclarativeGrid::reportConflictingAnchors() /*! \qmlclass Flow QDeclarativeFlow + \ingroup qml-positioning-elements \since 4.7 \brief The Flow item arranges its children side by side, wrapping as necessary. \inherits Item diff --git a/src/declarative/graphicsitems/qdeclarativerectangle.cpp b/src/declarative/graphicsitems/qdeclarativerectangle.cpp index c49be46..5990c2d 100644 --- a/src/declarative/graphicsitems/qdeclarativerectangle.cpp +++ b/src/declarative/graphicsitems/qdeclarativerectangle.cpp @@ -84,6 +84,7 @@ void QDeclarativePen::setWidth(int w) /*! \qmlclass GradientStop QDeclarativeGradientStop + \ingroup qml-basic-visual-elements \since 4.7 \brief The GradientStop item defines the color at a position in a Gradient @@ -105,6 +106,7 @@ void QDeclarativeGradientStop::updateGradient() /*! \qmlclass Gradient QDeclarativeGradient + \ingroup qml-basic-visual-elements \since 4.7 \brief The Gradient item defines a gradient fill. @@ -152,6 +154,7 @@ void QDeclarativeGradient::doUpdate() /*! \qmlclass Rectangle QDeclarativeRectangle + \ingroup qml-basic-visual-elements \since 4.7 \brief The Rectangle item allows you to add rectangles to a scene. \inherits Item diff --git a/src/declarative/graphicsitems/qdeclarativerepeater.cpp b/src/declarative/graphicsitems/qdeclarativerepeater.cpp index 68e7e9a..8828d3e 100644 --- a/src/declarative/graphicsitems/qdeclarativerepeater.cpp +++ b/src/declarative/graphicsitems/qdeclarativerepeater.cpp @@ -62,6 +62,7 @@ QDeclarativeRepeaterPrivate::~QDeclarativeRepeaterPrivate() /*! \qmlclass Repeater QDeclarativeRepeater + \ingroup qml-utility-elements \since 4.7 \inherits Item diff --git a/src/declarative/graphicsitems/qdeclarativetext.cpp b/src/declarative/graphicsitems/qdeclarativetext.cpp index ab2be9c..fcd112e 100644 --- a/src/declarative/graphicsitems/qdeclarativetext.cpp +++ b/src/declarative/graphicsitems/qdeclarativetext.cpp @@ -162,7 +162,8 @@ QSet QTextDocumentWithImageResources::errors; /*! \qmlclass Text QDeclarativeText - \since 4.7 + \ingroup qml-basic-visual-elements + \since 4.7 \brief The Text item allows you to add formatted text to a scene. \inherits Item diff --git a/src/declarative/graphicsitems/qdeclarativetextedit.cpp b/src/declarative/graphicsitems/qdeclarativetextedit.cpp index 8117676..b8e8726 100644 --- a/src/declarative/graphicsitems/qdeclarativetextedit.cpp +++ b/src/declarative/graphicsitems/qdeclarativetextedit.cpp @@ -61,6 +61,7 @@ QT_BEGIN_NAMESPACE /*! \qmlclass TextEdit QDeclarativeTextEdit + \ingroup qml-basic-visual-elements \since 4.7 \brief The TextEdit item displays multiple lines of editable formatted text. \inherits Item diff --git a/src/declarative/graphicsitems/qdeclarativetextinput.cpp b/src/declarative/graphicsitems/qdeclarativetextinput.cpp index 90f5a70..bd8d404 100644 --- a/src/declarative/graphicsitems/qdeclarativetextinput.cpp +++ b/src/declarative/graphicsitems/qdeclarativetextinput.cpp @@ -57,6 +57,7 @@ QT_BEGIN_NAMESPACE /*! \qmlclass TextInput QDeclarativeTextInput + \ingroup qml-basic-visual-elements \since 4.7 \brief The TextInput item displays an editable line of text. \inherits Item @@ -561,6 +562,7 @@ void QDeclarativeTextInput::setAutoScroll(bool b) /*! \qmlclass IntValidator QIntValidator + \ingroup qml-basic-visual-elements This element provides a validator for integer values. */ @@ -579,6 +581,7 @@ void QDeclarativeTextInput::setAutoScroll(bool b) /*! \qmlclass DoubleValidator QDoubleValidator + \ingroup qml-basic-visual-elements This element provides a validator for non-integer numbers. */ @@ -617,6 +620,7 @@ void QDeclarativeTextInput::setAutoScroll(bool b) /*! \qmlclass RegExpValidator QRegExpValidator + \ingroup qml-basic-visual-elements This element provides a validator, which counts as valid any string which matches a specified regular expression. diff --git a/src/declarative/graphicsitems/qdeclarativevisualitemmodel.cpp b/src/declarative/graphicsitems/qdeclarativevisualitemmodel.cpp index a489b5a..764676a 100644 --- a/src/declarative/graphicsitems/qdeclarativevisualitemmodel.cpp +++ b/src/declarative/graphicsitems/qdeclarativevisualitemmodel.cpp @@ -128,6 +128,7 @@ public: /*! \qmlclass VisualItemModel QDeclarativeVisualItemModel + \ingroup qml-working-with-data \since 4.7 \brief The VisualItemModel allows items to be provided to a view. @@ -644,6 +645,7 @@ QDeclarativeVisualDataModelData *QDeclarativeVisualDataModelPrivate::data(QObjec /*! \qmlclass VisualDataModel QDeclarativeVisualDataModel + \ingroup qml-working-with-data \brief The VisualDataModel encapsulates a model and delegate A VisualDataModel encapsulates a model and the delegate that will diff --git a/src/declarative/qml/qdeclarativecomponent.cpp b/src/declarative/qml/qdeclarativecomponent.cpp index 5f4a063..73689fc 100644 --- a/src/declarative/qml/qdeclarativecomponent.cpp +++ b/src/declarative/qml/qdeclarativecomponent.cpp @@ -104,6 +104,7 @@ class QByteArray; /*! \qmlclass Component QDeclarativeComponent + \ingroup qml-utility-elements \since 4.7 \brief The Component element encapsulates a QML component definition. diff --git a/src/declarative/qml/qdeclarativeengine.cpp b/src/declarative/qml/qdeclarativeengine.cpp index de79e4d..1061c03 100644 --- a/src/declarative/qml/qdeclarativeengine.cpp +++ b/src/declarative/qml/qdeclarativeengine.cpp @@ -114,6 +114,7 @@ QT_BEGIN_NAMESPACE /*! \qmlclass QtObject QObject + \ingroup qml-utility-elements \since 4.7 \brief The QtObject element is the most basic element in QML. @@ -185,6 +186,7 @@ void QDeclarativeEnginePrivate::defineModule() /*! \qmlclass QML:Qt QDeclarativeEnginePrivate + \ingroup qml-utility-elements \brief The QML global Qt object provides useful enums and functions from Qt. \keyword QmlGlobalQtObject diff --git a/src/declarative/qml/qdeclarativeworkerscript.cpp b/src/declarative/qml/qdeclarativeworkerscript.cpp index aec84a6..789116e 100644 --- a/src/declarative/qml/qdeclarativeworkerscript.cpp +++ b/src/declarative/qml/qdeclarativeworkerscript.cpp @@ -514,6 +514,7 @@ void QDeclarativeWorkerScriptEngine::run() /*! \qmlclass WorkerScript QDeclarativeWorkerScript + \ingroup qml-utility-elements \brief The WorkerScript element enables the use of threads in QML. Use WorkerScript to run operations in a new thread. diff --git a/src/declarative/util/qdeclarativeanimation.cpp b/src/declarative/util/qdeclarativeanimation.cpp index 2fca09d..3b8cb37 100644 --- a/src/declarative/util/qdeclarativeanimation.cpp +++ b/src/declarative/util/qdeclarativeanimation.cpp @@ -74,6 +74,7 @@ QT_BEGIN_NAMESPACE /*! \qmlclass Animation QDeclarativeAbstractAnimation + \ingroup qml-animation-transition \since 4.7 \brief The Animation element is the base of all QML animations. @@ -554,6 +555,7 @@ void QDeclarativeAbstractAnimation::timelineComplete() /*! \qmlclass PauseAnimation QDeclarativePauseAnimation + \ingroup qml-animation-transition \since 4.7 \inherits Animation \brief The PauseAnimation element provides a pause for an animation. @@ -630,6 +632,7 @@ QAbstractAnimation *QDeclarativePauseAnimation::qtAnimation() /*! \qmlclass ColorAnimation QDeclarativeColorAnimation + \ingroup qml-animation-transition \since 4.7 \inherits PropertyAnimation \brief The ColorAnimation element animates changes in color values. @@ -730,6 +733,7 @@ void QDeclarativeColorAnimation::setTo(const QColor &t) /*! \qmlclass ScriptAction QDeclarativeScriptAction + \ingroup qml-animation-transition \since 4.7 \inherits Animation \brief The ScriptAction element allows scripts to be run during an animation. @@ -878,6 +882,7 @@ QAbstractAnimation *QDeclarativeScriptAction::qtAnimation() /*! \qmlclass PropertyAction QDeclarativePropertyAction + \ingroup qml-animation-transition \since 4.7 \inherits Animation \brief The PropertyAction element allows immediate property changes during animation. @@ -1129,6 +1134,7 @@ void QDeclarativePropertyAction::transition(QDeclarativeStateActions &actions, /*! \qmlclass NumberAnimation QDeclarativeNumberAnimation + \ingroup qml-animation-transition \since 4.7 \inherits PropertyAnimation \brief The NumberAnimation element animates changes in qreal-type values. @@ -1238,6 +1244,7 @@ void QDeclarativeNumberAnimation::setTo(qreal t) /*! \qmlclass Vector3dAnimation QDeclarativeVector3dAnimation + \ingroup qml-animation-transition \since 4.7 \inherits PropertyAnimation \brief The Vector3dAnimation element animates changes in QVector3d values. @@ -1311,6 +1318,7 @@ void QDeclarativeVector3dAnimation::setTo(QVector3D t) /*! \qmlclass RotationAnimation QDeclarativeRotationAnimation + \ingroup qml-animation-transition \since 4.7 \inherits PropertyAnimation \brief The RotationAnimation element animates changes in rotation values. @@ -1540,6 +1548,7 @@ QDeclarativeListProperty QDeclarativeAnimationGro /*! \qmlclass SequentialAnimation QDeclarativeSequentialAnimation + \ingroup qml-animation-transition \since 4.7 \inherits Animation \brief The SequentialAnimation element allows animations to be run sequentially. @@ -1613,6 +1622,7 @@ void QDeclarativeSequentialAnimation::transition(QDeclarativeStateActions &actio /*! \qmlclass ParallelAnimation QDeclarativeParallelAnimation + \ingroup qml-animation-transition \since 4.7 \inherits Animation \brief The ParallelAnimation element allows animations to be run in parallel. @@ -1731,6 +1741,7 @@ void QDeclarativePropertyAnimationPrivate::convertVariant(QVariant &variant, int /*! \qmlclass PropertyAnimation QDeclarativePropertyAnimation + \ingroup qml-animation-transition \since 4.7 \inherits Animation \brief The PropertyAnimation element animates changes in property values. @@ -2400,6 +2411,7 @@ void QDeclarativePropertyAnimation::transition(QDeclarativeStateActions &actions /*! \qmlclass ParentAnimation QDeclarativeParentAnimation + \ingroup qml-animation-transition \since 4.7 \inherits Animation \brief The ParentAnimation element animates changes in parent values. @@ -2759,6 +2771,7 @@ QAbstractAnimation *QDeclarativeParentAnimation::qtAnimation() /*! \qmlclass AnchorAnimation QDeclarativeAnchorAnimation + \ingroup qml-animation-transition \since 4.7 \inherits Animation \brief The AnchorAnimation element animates changes in anchor values. diff --git a/src/declarative/util/qdeclarativebehavior.cpp b/src/declarative/util/qdeclarativebehavior.cpp index 1e7f81a..f1b6f9a 100644 --- a/src/declarative/util/qdeclarativebehavior.cpp +++ b/src/declarative/util/qdeclarativebehavior.cpp @@ -72,6 +72,7 @@ public: /*! \qmlclass Behavior QDeclarativeBehavior + \ingroup qml-animation-transition \since 4.7 \brief The Behavior element allows you to specify a default animation for a property change. diff --git a/src/declarative/util/qdeclarativebind.cpp b/src/declarative/util/qdeclarativebind.cpp index 5fab631..86d08f5 100644 --- a/src/declarative/util/qdeclarativebind.cpp +++ b/src/declarative/util/qdeclarativebind.cpp @@ -72,6 +72,7 @@ public: /*! \qmlclass Binding QDeclarativeBind + \ingroup qml-working-with-data \since 4.7 \brief The Binding element allows arbitrary property bindings to be created. diff --git a/src/declarative/util/qdeclarativeconnections.cpp b/src/declarative/util/qdeclarativeconnections.cpp index b364821..293928e 100644 --- a/src/declarative/util/qdeclarativeconnections.cpp +++ b/src/declarative/util/qdeclarativeconnections.cpp @@ -71,6 +71,7 @@ public: /*! \qmlclass Connections QDeclarativeConnections + \ingroup qml-utility-elements \since 4.7 \brief A Connections element describes generalized connections to signals. diff --git a/src/declarative/util/qdeclarativefontloader.cpp b/src/declarative/util/qdeclarativefontloader.cpp index 83bdb17..291583c 100644 --- a/src/declarative/util/qdeclarativefontloader.cpp +++ b/src/declarative/util/qdeclarativefontloader.cpp @@ -78,6 +78,7 @@ public: /*! \qmlclass FontLoader QDeclarativeFontLoader + \ingroup qml-utility-elements \since 4.7 \brief The FontLoader element allows fonts to be loaded by name or URL. diff --git a/src/declarative/util/qdeclarativelistmodel.cpp b/src/declarative/util/qdeclarativelistmodel.cpp index 20fe3a9..1f66f0f 100644 --- a/src/declarative/util/qdeclarativelistmodel.cpp +++ b/src/declarative/util/qdeclarativelistmodel.cpp @@ -68,6 +68,7 @@ QDeclarativeListModelParser::ListInstruction *QDeclarativeListModelParser::ListM /*! \qmlclass ListModel QDeclarativeListModel + \ingroup qml-working-with-data \since 4.7 \brief The ListModel element defines a free-form list data source. @@ -129,7 +130,7 @@ QDeclarativeListModelParser::ListInstruction *QDeclarativeListModelParser::ListM \snippet examples/declarative/threading/threadedlistmodel/dataloader.js 0 - The application's \tt Timer object periodically sends a message to the +working-with-data worker script by calling \l WorkerScript::sendMessage(). When this message is received, \l {WorkerScript::onMessage}{WorkerScript.onMessage()} is invoked in \tt dataloader.js, which appends the current time to the list model. @@ -769,6 +770,7 @@ bool QDeclarativeListModelParser::definesEmptyList(const QString &s) /*! \qmlclass ListElement + \ingroup qml-working-with-data \since 4.7 \brief The ListElement element defines a data item in a ListModel. diff --git a/src/declarative/util/qdeclarativepackage.cpp b/src/declarative/util/qdeclarativepackage.cpp index 1a4f2a7..a5ec9b3 100644 --- a/src/declarative/util/qdeclarativepackage.cpp +++ b/src/declarative/util/qdeclarativepackage.cpp @@ -48,6 +48,7 @@ QT_BEGIN_NAMESPACE /*! \qmlclass Package QDeclarativePackage + \ingroup qml-working-with-data \brief Package provides a collection of named items. The Package class is used in conjunction with diff --git a/src/declarative/util/qdeclarativepropertychanges.cpp b/src/declarative/util/qdeclarativepropertychanges.cpp index 12c6353..25edd35 100644 --- a/src/declarative/util/qdeclarativepropertychanges.cpp +++ b/src/declarative/util/qdeclarativepropertychanges.cpp @@ -61,6 +61,7 @@ QT_BEGIN_NAMESPACE /*! \qmlclass PropertyChanges QDeclarativePropertyChanges + \ingroup qml-state-elements \since 4.7 \brief The PropertyChanges element describes new property bindings or values for a state. diff --git a/src/declarative/util/qdeclarativesmoothedanimation.cpp b/src/declarative/util/qdeclarativesmoothedanimation.cpp index 30e1491..b2f02e6 100644 --- a/src/declarative/util/qdeclarativesmoothedanimation.cpp +++ b/src/declarative/util/qdeclarativesmoothedanimation.cpp @@ -249,6 +249,7 @@ void QSmoothedAnimation::init() /*! \qmlclass SmoothedAnimation QDeclarativeSmoothedAnimation + \ingroup qml-animation-transition \since 4.7 \inherits NumberAnimation \brief The SmoothedAnimation element allows a property to smoothly track a value. diff --git a/src/declarative/util/qdeclarativespringanimation.cpp b/src/declarative/util/qdeclarativespringanimation.cpp index 6f4ac51..fce4097 100644 --- a/src/declarative/util/qdeclarativespringanimation.cpp +++ b/src/declarative/util/qdeclarativespringanimation.cpp @@ -228,6 +228,7 @@ void QDeclarativeSpringAnimationPrivate::updateMode() /*! \qmlclass SpringAnimation QDeclarativeSpringAnimation + \ingroup qml-animation-transition \inherits Animation \since 4.7 diff --git a/src/declarative/util/qdeclarativestate.cpp b/src/declarative/util/qdeclarativestate.cpp index 028bacb..6e17cf2 100644 --- a/src/declarative/util/qdeclarativestate.cpp +++ b/src/declarative/util/qdeclarativestate.cpp @@ -133,6 +133,7 @@ QDeclarativeStateOperation::QDeclarativeStateOperation(QObjectPrivate &dd, QObje /*! \qmlclass State QDeclarativeState + \ingroup qml-state-elements \since 4.7 \brief The State element defines configurations of objects and properties. diff --git a/src/declarative/util/qdeclarativestategroup.cpp b/src/declarative/util/qdeclarativestategroup.cpp index 1c1e964..fc90baa 100644 --- a/src/declarative/util/qdeclarativestategroup.cpp +++ b/src/declarative/util/qdeclarativestategroup.cpp @@ -88,6 +88,7 @@ public: /*! \qmlclass StateGroup QDeclarativeStateGroup + \ingroup qml-state-elements \since 4.7 \brief The StateGroup element provides state support for non-Item elements. diff --git a/src/declarative/util/qdeclarativestateoperations.cpp b/src/declarative/util/qdeclarativestateoperations.cpp index 2291c16..6e6f0cb 100644 --- a/src/declarative/util/qdeclarativestateoperations.cpp +++ b/src/declarative/util/qdeclarativestateoperations.cpp @@ -161,6 +161,7 @@ void QDeclarativeParentChangePrivate::doChange(QDeclarativeItem *targetParent, Q /*! \preliminary \qmlclass ParentChange QDeclarativeParentChange + \ingroup qml-state-elements \brief The ParentChange element allows you to reparent an Item in a state change. ParentChange reparents an item while preserving its visual appearance (position, size, @@ -589,6 +590,7 @@ public: /*! \qmlclass StateChangeScript QDeclarativeStateChangeScript + \ingroup qml-state-elements \brief The StateChangeScript element allows you to run a script in a state. A StateChangeScript is run upon entering a state. You can optionally use @@ -693,6 +695,7 @@ QString QDeclarativeStateChangeScript::typeName() const /*! \qmlclass AnchorChanges QDeclarativeAnchorChanges + \ingroup qml-state-elements \brief The AnchorChanges element allows you to change the anchors of an item in a state. The AnchorChanges element is used to modify the anchors of an item in a \l State. diff --git a/src/declarative/util/qdeclarativesystempalette.cpp b/src/declarative/util/qdeclarativesystempalette.cpp index c334859..7b80736 100644 --- a/src/declarative/util/qdeclarativesystempalette.cpp +++ b/src/declarative/util/qdeclarativesystempalette.cpp @@ -58,6 +58,7 @@ public: /*! \qmlclass SystemPalette QDeclarativeSystemPalette + \ingroup qml-utility-elements \since 4.7 \brief The SystemPalette element provides access to the Qt palettes. diff --git a/src/declarative/util/qdeclarativetimer.cpp b/src/declarative/util/qdeclarativetimer.cpp index 838a8f3..56320e6 100644 --- a/src/declarative/util/qdeclarativetimer.cpp +++ b/src/declarative/util/qdeclarativetimer.cpp @@ -70,6 +70,7 @@ public: /*! \qmlclass Timer QDeclarativeTimer + \ingroup qml-utility-elements \since 4.7 \brief The Timer item triggers a handler at a specified interval. diff --git a/src/declarative/util/qdeclarativetransition.cpp b/src/declarative/util/qdeclarativetransition.cpp index aa1426c..21d7ded 100644 --- a/src/declarative/util/qdeclarativetransition.cpp +++ b/src/declarative/util/qdeclarativetransition.cpp @@ -53,6 +53,7 @@ QT_BEGIN_NAMESPACE /*! \qmlclass Transition QDeclarativeTransition + \ingroup qml-animation-transition \since 4.7 \brief The Transition element defines animated transitions that occur on state changes. diff --git a/src/declarative/util/qdeclarativexmllistmodel.cpp b/src/declarative/util/qdeclarativexmllistmodel.cpp index 8bd829e..7b3d4a8 100644 --- a/src/declarative/util/qdeclarativexmllistmodel.cpp +++ b/src/declarative/util/qdeclarativexmllistmodel.cpp @@ -72,6 +72,7 @@ typedef QPair QDeclarativeXmlListRange; /*! \qmlclass XmlRole QDeclarativeXmlListModelRole + \ingroup qml-working-with-data \since 4.7 \brief The XmlRole element allows you to specify a role for an XmlListModel. @@ -505,6 +506,7 @@ void QDeclarativeXmlListModelPrivate::clear_role(QDeclarativeListPropertyroot()); findAllFunctions(tree->root()); findAllLegaleseTexts(tree->root()); @@ -751,6 +752,9 @@ int DitaXmlGenerator::generateAtom(const Atom *atom, else if (atom->string() == "classes") { generateCompactList(relative, marker, nonCompatClasses, true); } + else if (atom->string() == "qmlclasses") { + generateCompactList(relative, marker, qmlClasses, true); + } else if (atom->string().contains("classesbymodule")) { QString arg = atom->string().trimmed(); QString moduleName = atom->string().mid(atom->string().indexOf( @@ -3675,6 +3679,12 @@ void DitaXmlGenerator::findAllClasses(const InnerNode *node) if (!serviceName.isEmpty()) serviceClasses.insert(serviceName, *c); } + else if ((*c)->type() == Node::Fake && + (*c)->subType() == Node::QmlClass && + !(*c)->doc().isEmpty()) { + QString qmlClassName = (*c)->name(); + qmlClasses.insert(qmlClassName,*c); + } else if ((*c)->isInnerNode()) { findAllClasses(static_cast(*c)); } diff --git a/tools/qdoc3/htmlgenerator.cpp b/tools/qdoc3/htmlgenerator.cpp index 4603a40..50f8b56 100644 --- a/tools/qdoc3/htmlgenerator.cpp +++ b/tools/qdoc3/htmlgenerator.cpp @@ -376,6 +376,7 @@ void HtmlGenerator::generateTree(const Tree *tree, CodeMarker *marker) funcIndex.clear(); legaleseTexts.clear(); serviceClasses.clear(); + qmlClasses.clear(); findAllClasses(tree->root()); findAllFunctions(tree->root()); findAllLegaleseTexts(tree->root()); @@ -611,6 +612,9 @@ int HtmlGenerator::generateAtom(const Atom *atom, else if (atom->string() == "classes") { generateCompactList(relative, marker, nonCompatClasses, true); } + else if (atom->string() == "qmlclasses") { + generateCompactList(relative, marker, qmlClasses, true); + } else if (atom->string().contains("classesbymodule")) { QString arg = atom->string().trimmed(); QString moduleName = atom->string().mid(atom->string().indexOf( @@ -3707,6 +3711,12 @@ void HtmlGenerator::findAllClasses(const InnerNode *node) if (!serviceName.isEmpty()) serviceClasses.insert(serviceName, *c); } + else if ((*c)->type() == Node::Fake && + (*c)->subType() == Node::QmlClass && + !(*c)->doc().isEmpty()) { + QString qmlClassName = (*c)->name(); + qmlClasses.insert(qmlClassName,*c); + } else if ((*c)->isInnerNode()) { findAllClasses(static_cast(*c)); } diff --git a/tools/qdoc3/htmlgenerator.h b/tools/qdoc3/htmlgenerator.h index eab10c6..d885ada 100644 --- a/tools/qdoc3/htmlgenerator.h +++ b/tools/qdoc3/htmlgenerator.h @@ -330,6 +330,7 @@ class HtmlGenerator : public PageGenerator NodeMap obsoleteClasses; NodeMap namespaceIndex; NodeMap serviceClasses; + NodeMap qmlClasses; QMap funcIndex; QMap legaleseTexts; NewSinceMaps newSinceMaps; -- cgit v0.12 From 0fb9e0fff4097bf0b84ff217526b0a9c33b69414 Mon Sep 17 00:00:00 2001 From: Benjamin Poulain Date: Fri, 13 Aug 2010 20:57:07 +0200 Subject: Implement the general blending of ARGB32_pm with SSSE3 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit SSSE3 provides two tools to improve the blending speed over SSE2: -palignr -byte permutation The alignement is enforced on src and dst with palignr to always make aligned access. The extraction of the alpha mask is done with a byte permutation in order to save two instructions per cycle. On Atom, this patch gives between 0% (aligned src) to 10% of improvement (unaligned 4 and 12 bytes). On Core 2, this patch gives consistently 8% to 10% of improvement for every miss-alignment. Reviewed-by: Samuel Rødal --- src/gui/painting/painting.pri | 1 + src/gui/painting/qdrawhelper.cpp | 11 ++ src/gui/painting/qdrawhelper_ssse3.cpp | 263 +++++++++++++++++++++++++ tests/benchmarks/gui/image/blendbench/main.cpp | 43 ++++ 4 files changed, 318 insertions(+) create mode 100644 src/gui/painting/qdrawhelper_ssse3.cpp diff --git a/src/gui/painting/painting.pri b/src/gui/painting/painting.pri index dfa4a48..793d380 100644 --- a/src/gui/painting/painting.pri +++ b/src/gui/painting/painting.pri @@ -212,6 +212,7 @@ if(mmx|3dnow|sse|sse2|iwmmxt) { SSE3DNOW_SOURCES += painting/qdrawhelper_sse3dnow.cpp SSE_SOURCES += painting/qdrawhelper_sse.cpp SSE2_SOURCES += painting/qdrawhelper_sse2.cpp + SSSE3_SOURCES += painting/qdrawhelper_ssse3.cpp IWMMXT_SOURCES += painting/qdrawhelper_iwmmxt.cpp } diff --git a/src/gui/painting/qdrawhelper.cpp b/src/gui/painting/qdrawhelper.cpp index 1ff3d7b..276da93 100644 --- a/src/gui/painting/qdrawhelper.cpp +++ b/src/gui/painting/qdrawhelper.cpp @@ -7840,6 +7840,17 @@ void qInitDrawhelperAsm() qBlendFunctions[QImage::Format_ARGB32_Premultiplied][QImage::Format_RGB32] = qt_blend_rgb32_on_rgb32_sse2; qBlendFunctions[QImage::Format_RGB32][QImage::Format_ARGB32_Premultiplied] = qt_blend_argb32_on_argb32_sse2; qBlendFunctions[QImage::Format_ARGB32_Premultiplied][QImage::Format_ARGB32_Premultiplied] = qt_blend_argb32_on_argb32_sse2; + +#if defined(QT_HAVE_SSSE3) + if (features & SSSE3) { + extern void qt_blend_argb32_on_argb32_ssse3(uchar *destPixels, int dbpl, + const uchar *srcPixels, int sbpl, + int w, int h, + int const_alpha); + qBlendFunctions[QImage::Format_RGB32][QImage::Format_ARGB32_Premultiplied] = qt_blend_argb32_on_argb32_ssse3; + qBlendFunctions[QImage::Format_ARGB32_Premultiplied][QImage::Format_ARGB32_Premultiplied] = qt_blend_argb32_on_argb32_ssse3; + } +#endif // QT_HAVE_SSSE3 } else #endif { diff --git a/src/gui/painting/qdrawhelper_ssse3.cpp b/src/gui/painting/qdrawhelper_ssse3.cpp new file mode 100644 index 0000000..bc4a7eb8 --- /dev/null +++ b/src/gui/painting/qdrawhelper_ssse3.cpp @@ -0,0 +1,263 @@ +/**************************************************************************** +** +** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the QtGui module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** No Commercial Usage +** This file contains pre-release code and may not be distributed. +** You may use this file in accordance with the terms and conditions +** contained in the Technology Preview License Agreement accompanying +** this package. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 2.1 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 2.1 requirements +** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** If you have questions regarding the use of this file, please contact +** Nokia at qt-info@nokia.com. +** +** +** +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + + +#ifdef QT_HAVE_SSSE3 + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +inline static void blend_pixel(quint32 &dst, const quint32 src) +{ + if (src >= 0xff000000) + dst = src; + else if (src != 0) + dst = src + BYTE_MUL(dst, qAlpha(~src)); +} + + +/* The instruction palignr uses direct arguments, so we have to generate the code fo the different + shift (4, 8, 12). Checking the alignment inside the loop is unfortunatelly way too slow. + */ +#define BLENDING_LOOP(palignrOffset, length)\ + for (; x < length-3; x += 4) { \ + const __m128i srcVectorLastLoaded = _mm_load_si128((__m128i *)&src[x - minusOffsetToAlignSrcOn16Bytes + 4]);\ + const __m128i srcVector = _mm_alignr_epi8(srcVectorLastLoaded, srcVectorPrevLoaded, palignrOffset); \ + const __m128i srcVectorAlpha = _mm_and_si128(srcVector, alphaMask); \ + if (_mm_movemask_epi8(_mm_cmpeq_epi32(srcVectorAlpha, alphaMask)) == 0xffff) { \ + _mm_store_si128((__m128i *)&dst[x], srcVector); \ + } else if (_mm_movemask_epi8(_mm_cmpeq_epi32(srcVectorAlpha, nullVector)) != 0xffff) { \ + __m128i alphaChannel = _mm_shuffle_epi8(srcVector, alphaShuffleMask); \ + alphaChannel = _mm_sub_epi16(one, alphaChannel); \ + const __m128i dstVector = _mm_load_si128((__m128i *)&dst[x]); \ + __m128i destMultipliedByOneMinusAlpha; \ + BYTE_MUL_SSE2(destMultipliedByOneMinusAlpha, dstVector, alphaChannel, colorMask, half); \ + const __m128i result = _mm_add_epi8(srcVector, destMultipliedByOneMinusAlpha); \ + _mm_store_si128((__m128i *)&dst[x], result); \ + } \ + srcVectorPrevLoaded = srcVectorLastLoaded;\ + } + + +#define BLEND_SOURCE_OVER_ARGB32_FIRST_ROW_SSSE3(dst, src, length, nullVector, half, one, colorMask, alphaMask) { \ + int x = 0; \ +\ + /* First, get dst aligned. */ \ + const int offsetToAlignOn16Bytes = (4 - ((reinterpret_cast(dst) >> 2) & 0x3)) & 0x3;\ + const int prologLength = qMin(length, offsetToAlignOn16Bytes);\ +\ + for (; x < prologLength; ++x) {\ + blend_pixel(dst[x], src[x]); \ + } \ +\ + const int minusOffsetToAlignSrcOn16Bytes = (reinterpret_cast(&(src[x])) >> 2) & 0x3;\ +\ + if (!minusOffsetToAlignSrcOn16Bytes) {\ + /* src is aligned, usual algorithm but with aligned operations.\ + See the SSE2 version for more documentation on the algorithm itself. */\ + const __m128i alphaShuffleMask = _mm_set_epi8(0xff,15,0xff,15,0xff,11,0xff,11,0xff,7,0xff,7,0xff,3,0xff,3);\ + for (; x < length-3; x += 4) { \ + const __m128i srcVector = _mm_load_si128((__m128i *)&src[x]); \ + const __m128i srcVectorAlpha = _mm_and_si128(srcVector, alphaMask); \ + if (_mm_movemask_epi8(_mm_cmpeq_epi32(srcVectorAlpha, alphaMask)) == 0xffff) { \ + _mm_store_si128((__m128i *)&dst[x], srcVector); \ + } else if (_mm_movemask_epi8(_mm_cmpeq_epi32(srcVectorAlpha, nullVector)) != 0xffff) { \ + __m128i alphaChannel = _mm_shuffle_epi8(srcVector, alphaShuffleMask); \ + alphaChannel = _mm_sub_epi16(one, alphaChannel); \ + const __m128i dstVector = _mm_load_si128((__m128i *)&dst[x]); \ + __m128i destMultipliedByOneMinusAlpha; \ + BYTE_MUL_SSE2(destMultipliedByOneMinusAlpha, dstVector, alphaChannel, colorMask, half); \ + const __m128i result = _mm_add_epi8(srcVector, destMultipliedByOneMinusAlpha); \ + _mm_store_si128((__m128i *)&dst[x], result); \ + } \ + } /* end for() */\ + } else if ((length - x) >= 8) {\ + /* We are at the first line, so "x - minusOffsetToAlignSrcOn16Bytes" could go before src, and\ + generate an invalid access. */\ +\ + /* We use two vectors to extract the src: prevLoaded for the first pixels, lastLoaded for the current pixels. */\ + __m128i srcVectorPrevLoaded;\ + if (minusOffsetToAlignSrcOn16Bytes <= prologLength) {\ + srcVectorPrevLoaded = _mm_load_si128((__m128i *)&src[x - minusOffsetToAlignSrcOn16Bytes]);\ + } else {\ + quint32 temp[4] Q_DECL_ALIGN(16);\ + switch (prologLength) {\ + case 3:\ + temp[1] = src[x - 3];\ + case 2:\ + temp[2] = src[x - 2];\ + case 1:\ + temp[3] = src[x - 1];\ + default:\ + break;\ + }\ + srcVectorPrevLoaded = _mm_load_si128((__m128i *)temp);\ + }\ + const int palignrOffset = minusOffsetToAlignSrcOn16Bytes << 2;\ +\ + const __m128i alphaShuffleMask = _mm_set_epi8(0xff,15,0xff,15,0xff,11,0xff,11,0xff,7,0xff,7,0xff,3,0xff,3);\ + switch (palignrOffset) {\ + case 4:\ + BLENDING_LOOP(4, length)\ + break;\ + case 8:\ + BLENDING_LOOP(8, length)\ + break;\ + case 12:\ + BLENDING_LOOP(12, length)\ + break;\ + }\ + }\ + for (; x < length; ++x) \ + blend_pixel(dst[x], src[x]); \ +} + +// Basically blend src over dst with the const alpha defined as constAlphaVector. +// nullVector, half, one, colorMask are constant accross the whole image/texture, and should be defined as: +//const __m128i nullVector = _mm_set1_epi32(0); +//const __m128i half = _mm_set1_epi16(0x80); +//const __m128i one = _mm_set1_epi16(0xff); +//const __m128i colorMask = _mm_set1_epi32(0x00ff00ff); +//const __m128i alphaMask = _mm_set1_epi32(0xff000000); +// +// The computation being done is: +// result = s + d * (1-alpha) +// with shortcuts if fully opaque or fully transparent. +#define BLEND_SOURCE_OVER_ARGB32_MAIN_SSSE3(dst, src, length, nullVector, half, one, colorMask, alphaMask) { \ + int x = 0; \ +\ + /* First, get dst aligned. */ \ + ALIGNMENT_PROLOGUE_16BYTES(dst, x, length) { \ + blend_pixel(dst[x], src[x]); \ + } \ +\ + const int minusOffsetToAlignSrcOn16Bytes = (reinterpret_cast(&(src[x])) >> 2) & 0x3;\ +\ + if (!minusOffsetToAlignSrcOn16Bytes) {\ + /* src is aligned, usual algorithm but with aligned operations.\ + See the SSE2 version for more documentation on the algorithm itself. */\ + const __m128i alphaShuffleMask = _mm_set_epi8(0xff,15,0xff,15,0xff,11,0xff,11,0xff,7,0xff,7,0xff,3,0xff,3);\ + for (; x < length-3; x += 4) { \ + const __m128i srcVector = _mm_load_si128((__m128i *)&src[x]); \ + const __m128i srcVectorAlpha = _mm_and_si128(srcVector, alphaMask); \ + if (_mm_movemask_epi8(_mm_cmpeq_epi32(srcVectorAlpha, alphaMask)) == 0xffff) { \ + _mm_store_si128((__m128i *)&dst[x], srcVector); \ + } else if (_mm_movemask_epi8(_mm_cmpeq_epi32(srcVectorAlpha, nullVector)) != 0xffff) { \ + __m128i alphaChannel = _mm_shuffle_epi8(srcVector, alphaShuffleMask); \ + alphaChannel = _mm_sub_epi16(one, alphaChannel); \ + const __m128i dstVector = _mm_load_si128((__m128i *)&dst[x]); \ + __m128i destMultipliedByOneMinusAlpha; \ + BYTE_MUL_SSE2(destMultipliedByOneMinusAlpha, dstVector, alphaChannel, colorMask, half); \ + const __m128i result = _mm_add_epi8(srcVector, destMultipliedByOneMinusAlpha); \ + _mm_store_si128((__m128i *)&dst[x], result); \ + } \ + } /* end for() */\ + } else if ((length - x) >= 8) {\ + /* We use two vectors to extract the src: prevLoaded for the first pixels, lastLoaded for the current pixels. */\ + __m128i srcVectorPrevLoaded = _mm_load_si128((__m128i *)&src[x - minusOffsetToAlignSrcOn16Bytes]);\ + const int palignrOffset = minusOffsetToAlignSrcOn16Bytes << 2;\ +\ + const __m128i alphaShuffleMask = _mm_set_epi8(0xff,15,0xff,15,0xff,11,0xff,11,0xff,7,0xff,7,0xff,3,0xff,3);\ + switch (palignrOffset) {\ + case 4:\ + BLENDING_LOOP(4, length)\ + break;\ + case 8:\ + BLENDING_LOOP(8, length)\ + break;\ + case 12:\ + BLENDING_LOOP(12, length)\ + break;\ + }\ + }\ + for (; x < length; ++x) \ + blend_pixel(dst[x], src[x]); \ +} + +void qt_blend_argb32_on_argb32_ssse3(uchar *destPixels, int dbpl, + const uchar *srcPixels, int sbpl, + int w, int h, + int const_alpha) +{ + const quint32 *src = (const quint32 *) srcPixels; + quint32 *dst = (quint32 *) destPixels; + if (const_alpha == 256) { + const __m128i alphaMask = _mm_set1_epi32(0xff000000); + const __m128i nullVector = _mm_setzero_si128(); + const __m128i half = _mm_set1_epi16(0x80); + const __m128i one = _mm_set1_epi16(0xff); + const __m128i colorMask = _mm_set1_epi32(0x00ff00ff); + + // We have to unrol the first row in order to deal with the load on unaligned data + // prior to the src pointer. + BLEND_SOURCE_OVER_ARGB32_FIRST_ROW_SSSE3(dst, src, w, nullVector, half, one, colorMask, alphaMask); + dst = (quint32 *)(((uchar *) dst) + dbpl); + src = (const quint32 *)(((const uchar *) src) + sbpl); + + for (int y = 1; y < h; ++y) { + BLEND_SOURCE_OVER_ARGB32_MAIN_SSSE3(dst, src, w, nullVector, half, one, colorMask, alphaMask); + dst = (quint32 *)(((uchar *) dst) + dbpl); + src = (const quint32 *)(((const uchar *) src) + sbpl); + } + } else if (const_alpha != 0) { + // dest = (s + d * sia) * ca + d * cia + // = s * ca + d * (sia * ca + cia) + // = s * ca + d * (1 - sa*ca) + const_alpha = (const_alpha * 255) >> 8; + const __m128i nullVector = _mm_setzero_si128(); + const __m128i half = _mm_set1_epi16(0x80); + const __m128i one = _mm_set1_epi16(0xff); + const __m128i colorMask = _mm_set1_epi32(0x00ff00ff); + const __m128i constAlphaVector = _mm_set1_epi16(const_alpha); + for (int y = 0; y < h; ++y) { + BLEND_SOURCE_OVER_ARGB32_WITH_CONST_ALPHA_SSE2(dst, src, w, nullVector, half, one, colorMask, constAlphaVector) + dst = (quint32 *)(((uchar *) dst) + dbpl); + src = (const quint32 *)(((const uchar *) src) + sbpl); + } + } +} + +QT_END_NAMESPACE + +#endif // QT_HAVE_SSSE3 diff --git a/tests/benchmarks/gui/image/blendbench/main.cpp b/tests/benchmarks/gui/image/blendbench/main.cpp index f53654b..d420d6c 100644 --- a/tests/benchmarks/gui/image/blendbench/main.cpp +++ b/tests/benchmarks/gui/image/blendbench/main.cpp @@ -106,6 +106,9 @@ private slots: void blendBenchAlpha_data(); void blendBenchAlpha(); + + void unalignedBlendArgb32_data(); + void unalignedBlendArgb32(); }; void BlendBench::blendBench_data() @@ -179,6 +182,46 @@ void BlendBench::blendBenchAlpha() } } +void BlendBench::unalignedBlendArgb32_data() +{ + // The performance of blending can depend of the alignment of the data + // on 16 bytes. Some SIMD instruction set have significantly better + // memory access when the memory is aligned on 16 bytes boundary. + + // offset in 32 bits words + QTest::addColumn("offset"); + QTest::newRow("aligned on 16 bytes") << 0; + QTest::newRow("unaligned by 4 bytes") << 1; + QTest::newRow("unaligned by 8 bytes") << 2; + QTest::newRow("unaligned by 12 bytes") << 3; +} + +void BlendBench::unalignedBlendArgb32() +{ + const int dimension = 1024; + + // We use dst aligned by design. We don't want to test all the combination of alignemnt for src and dst. + // Moreover, it make sense for us to align dst in the implementation because it is accessed more often. + uchar *dstMemory = static_cast(qMallocAligned((dimension * dimension * sizeof(quint32)), 16)); + QImage destination(dstMemory, dimension, dimension, QImage::Format_ARGB32_Premultiplied); + destination.fill(0x12345678); // avoid special cases of alpha + + uchar *srcMemory = static_cast(qMallocAligned((dimension * dimension * sizeof(quint32)) + 16, 16)); + QFETCH(int, offset); + srcMemory += (offset * sizeof(quint32)); + + QImage src(srcMemory, dimension, dimension, QImage::Format_ARGB32_Premultiplied); + src.fill(0x87654321); + + QPainter painter(&destination); + QBENCHMARK { + painter.drawImage(QPoint(), src); + } + + qFreeAligned(srcMemory); + qFreeAligned(dstMemory); +} + QTEST_MAIN(BlendBench) #include "main.moc" -- cgit v0.12 From 34eb6cb58629c58b819d4c82b582106513da03bd Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Mon, 16 Aug 2010 17:35:17 +0200 Subject: diagramscene example: fix leak and crashes. In MainWindow::deleteItem, if there is arrow selected, we need to clean up the items from this arrow. We need to delete them first so there is no arrow in the list anymore when we calls removeArrows (which before, deleted arrow that were possibly in the list, resulting in crashes) Also avoid leak by giving parents to objects that needs it, and destroying items. Reviewed-by: Geir Vattekar Task-number: QTBUG-12753 Merge-request: 775 Reviewed-by: Liang Qi --- doc/src/examples/diagramscene.qdoc | 3 ++- examples/graphicsview/diagramscene/mainwindow.cpp | 29 ++++++++++++++++------- 2 files changed, 22 insertions(+), 10 deletions(-) diff --git a/doc/src/examples/diagramscene.qdoc b/doc/src/examples/diagramscene.qdoc index f4d6b0d..7c643c2 100644 --- a/doc/src/examples/diagramscene.qdoc +++ b/doc/src/examples/diagramscene.qdoc @@ -265,7 +265,8 @@ \snippet examples/graphicsview/diagramscene/mainwindow.cpp 3 - This slot deletes the selected item, if any, from the scene. If + This slot deletes the selected item, if any, from the scene. It + deletes the arrows first in order to avoid to delete them twice. If the item to be deleted is a \c DiagramItem, we also need to delete arrows connected to it; we don't want arrows in the scene that aren't connected to items in both ends. diff --git a/examples/graphicsview/diagramscene/mainwindow.cpp b/examples/graphicsview/diagramscene/mainwindow.cpp index f09c552..7d82df0 100644 --- a/examples/graphicsview/diagramscene/mainwindow.cpp +++ b/examples/graphicsview/diagramscene/mainwindow.cpp @@ -45,6 +45,7 @@ #include "diagramitem.h" #include "diagramscene.h" #include "diagramtextitem.h" +#include "arrow.h" const int InsertTextButton = 10; @@ -55,7 +56,7 @@ MainWindow::MainWindow() createToolBox(); createMenus(); - scene = new DiagramScene(itemMenu); + scene = new DiagramScene(itemMenu, this); scene->setSceneRect(QRectF(0, 0, 5000, 5000)); connect(scene, SIGNAL(itemInserted(DiagramItem*)), this, SLOT(itemInserted(DiagramItem*))); @@ -123,11 +124,22 @@ void MainWindow::buttonGroupClicked(int id) void MainWindow::deleteItem() { foreach (QGraphicsItem *item, scene->selectedItems()) { - if (item->type() == DiagramItem::Type) { - qgraphicsitem_cast(item)->removeArrows(); + if (item->type() == Arrow::Type) { + scene->removeItem(item); + Arrow *arrow = qgraphicsitem_cast(item); + arrow->startItem()->removeArrow(arrow); + arrow->endItem()->removeArrow(arrow); + delete item; } - scene->removeItem(item); } + + foreach (QGraphicsItem *item, scene->selectedItems()) { + if (item->type() == DiagramItem::Type) { + qgraphicsitem_cast(item)->removeArrows(); + } + scene->removeItem(item); + delete item; + } } //! [3] @@ -313,7 +325,7 @@ void MainWindow::about() //! [21] void MainWindow::createToolBox() { - buttonGroup = new QButtonGroup; + buttonGroup = new QButtonGroup(this); buttonGroup->setExclusive(false); connect(buttonGroup, SIGNAL(buttonClicked(int)), this, SLOT(buttonGroupClicked(int))); @@ -345,7 +357,7 @@ void MainWindow::createToolBox() QWidget *itemWidget = new QWidget; itemWidget->setLayout(layout); - backgroundButtonGroup = new QButtonGroup; + backgroundButtonGroup = new QButtonGroup(this); connect(backgroundButtonGroup, SIGNAL(buttonClicked(QAbstractButton*)), this, SLOT(backgroundButtonGroupClicked(QAbstractButton*))); @@ -460,7 +472,6 @@ void MainWindow::createToolbars() editToolBar->addAction(sendBackAction); fontCombo = new QFontComboBox(); - fontSizeCombo = new QComboBox(); connect(fontCombo, SIGNAL(currentFontChanged(QFont)), this, SLOT(currentFontChanged(QFont))); @@ -526,7 +537,7 @@ void MainWindow::createToolbars() linePointerButton->setCheckable(true); linePointerButton->setIcon(QIcon(":/images/linepointer.png")); - pointerTypeGroup = new QButtonGroup; + pointerTypeGroup = new QButtonGroup(this); pointerTypeGroup->addButton(pointerButton, int(DiagramScene::MoveItem)); pointerTypeGroup->addButton(linePointerButton, int(DiagramScene::InsertLine)); @@ -605,7 +616,7 @@ QMenu *MainWindow::createColorMenu(const char *slot, QColor defaultColor) names << tr("black") << tr("white") << tr("red") << tr("blue") << tr("yellow"); - QMenu *colorMenu = new QMenu; + QMenu *colorMenu = new QMenu(this); for (int i = 0; i < colors.count(); ++i) { QAction *action = new QAction(names.at(i), this); action->setData(colors.at(i)); -- cgit v0.12 From 5b47a913473802d377ec303b425eb1ad0496f843 Mon Sep 17 00:00:00 2001 From: Liang Qi Date: Mon, 16 Aug 2010 17:35:19 +0200 Subject: Translate bughowto.qdoc into zh_CN. Merge-request: 775 Reviewed-by: Liang Qi --- doc/src/zh_CN/bughowto.qdoc | 53 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 doc/src/zh_CN/bughowto.qdoc diff --git a/doc/src/zh_CN/bughowto.qdoc b/doc/src/zh_CN/bughowto.qdoc new file mode 100644 index 0000000..05c8403 --- /dev/null +++ b/doc/src/zh_CN/bughowto.qdoc @@ -0,0 +1,53 @@ +/**************************************************************************** +** +** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the documentation of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:FDL$ +** Commercial Usage +** Licensees holding valid Qt Commercial licenses may use this file in +** accordance with the Qt Commercial License Agreement provided with the +** Software or, alternatively, in accordance with the terms contained in a +** written agreement between you and Nokia. +** +** GNU Free Documentation License +** Alternatively, this file may be used under the terms of the GNU Free +** Documentation License version 1.3 as published by the Free Software +** Foundation and appearing in the file included in the packaging of this +** file. +** +** If you have questions regarding the use of this file, please contact +** Nokia at qt-info@nokia.com. +** $QT_END_LICENSE$ +** +****************************************************************************/ + +/*! + \page bughowto.html + \title 如何报告 Bug + \brief 关于报告 Qt 中 bug 方法的信æ¯ã€‚ + + 如果您认为您已ç»å‘现了 Qt 的一个 bug,我们éžå¸¸é«˜å…´å¬åˆ°è¿™ä¸ªæ¶ˆæ¯ï¼Œå› ä¸ºåœ¨æ­¤ä¹‹åŽæˆ‘们å¯ä»¥ä¿®å¤å®ƒã€‚ + + 在报告 bug 之å‰ï¼Œè¯·æ£€æŸ¥ Qt 网站中的 \l{FAQs}{FAQ}ã€\l{Platform Notes}{å¹³å°å¤‡æ³¨}å’Œ \l{Qt Bug Tracker}{Qt Bug 跟踪器}确认这个问题是å¦å·²çŸ¥ã€‚ + + 如果您还没有 \l{Qt Bug Tracker}{Qt Bug 跟踪器}çš„å¸å·ï¼Œæ‚¨è¦åšçš„第一件事情就是注册一个。一旦您完æˆäº†è¿™ä¸€æ­¥ï¼Œæ‚¨å°±å¯ä»¥æ交并且跟踪您的 bug 报告,而且在您æ交之åŽï¼Œå…¬ä¼—å°±å¯ä»¥çœ‹åˆ°å®ƒä»¬ã€‚ + + 请在您的 bug 报告中包å«ä»¥ä¸‹ä¿¡æ¯ï¼š + + \list 1 + \o 您的编译器的åç§°å’Œç‰ˆæœ¬å· + \o 您的æ“作系统的åç§°å’Œç‰ˆæœ¬å· + \o 您所使用的 Qt 的版本å·ï¼Œä»¥åŠå®ƒåœ¨è¢«ç¼–译的时候所使用的é…置选项 + \o 关于如何é‡å¤è¿™ä¸ªé—®é¢˜çš„å¯é å¹¶ä¸”清晰的æè¿° + \endlist + + 如果å¯èƒ½ï¼Œè¯·æ供一个使用 QtTest 模å—编写的测试程åºï¼Œå› ä¸ºè¿™æ ·åšå¯ä»¥åŠ å¿«æˆ‘们é‡çŽ°æ‚¨çš„这个问题的进程,并且å¯ä»¥è®©å¼€å‘人员更有效率的确认这个问题。 + + å¦å¤–,如果您的问题åªæ˜¯åœ¨è¿è¡Œæ—¶å¯è§ï¼Œè¯·å°½é‡åˆ›å»ºä¸€ä¸ªå¯ä»¥è¿è¡Œå¹¶ä¸”显示这个问题的å°æµ‹è¯•ç¨‹åºã€‚通常,您å¯ä»¥åœ¨ä¼—多 Qt 实例中选择一个进行少é‡ä¿®æ”¹å°±å¯ä»¥å®žçŽ°è¿™ä¸€ç›®çš„。 + + 如果您已ç»å®žçŽ°äº†ä¸€ä¸ª bug ä¿®å¤å¹¶ä¸”希望直接贡献这个修å¤ï¼Œé‚£ä¹ˆæ‚¨éœ€è¦é€šè¿‡\l{Public Qt Repository}{公共 Qt 代ç ä»“库}æ¥å®žçŽ°ã€‚ +*/ -- cgit v0.12 From 3e07671a2b043703bc51c2672f16c45ed0c31c42 Mon Sep 17 00:00:00 2001 From: Gabriel de Dietrich Date: Fri, 13 Aug 2010 18:12:30 +0200 Subject: Keyboard navigation regression in QTreeView Ammends commit 8da7252de0badb818302763cbe62c38ad699f1f3 Auto-test included. Reviewed-by: Olivier Task-number: QTBUG-11466 --- src/gui/itemviews/qabstractitemview.cpp | 8 +- tests/auto/qtreeview/tst_qtreeview.cpp | 125 ++++++++++++++++++++++++++++++++ 2 files changed, 130 insertions(+), 3 deletions(-) diff --git a/src/gui/itemviews/qabstractitemview.cpp b/src/gui/itemviews/qabstractitemview.cpp index 97499f3..4ffd284 100644 --- a/src/gui/itemviews/qabstractitemview.cpp +++ b/src/gui/itemviews/qabstractitemview.cpp @@ -2270,9 +2270,11 @@ void QAbstractItemView::keyPressEvent(QKeyEvent *event) } else { d->selectionModel->setCurrentIndex(newCurrent, command); d->pressedPosition = visualRect(newCurrent).center() + d->offset(); - // We copy the same behaviour as for mousePressEvent(). - QRect rect(d->pressedPosition - d->offset(), QSize(1, 1)); - setSelection(rect, command); + if (newCurrent.isValid()) { + // We copy the same behaviour as for mousePressEvent(). + QRect rect(d->pressedPosition - d->offset(), QSize(1, 1)); + setSelection(rect, command); + } } event->accept(); return; diff --git a/tests/auto/qtreeview/tst_qtreeview.cpp b/tests/auto/qtreeview/tst_qtreeview.cpp index 75a4c62..7e2e800 100644 --- a/tests/auto/qtreeview/tst_qtreeview.cpp +++ b/tests/auto/qtreeview/tst_qtreeview.cpp @@ -239,6 +239,7 @@ private slots: void doubleClickedWithSpans(); void taskQTBUG_6450_selectAllWith1stColumnHidden(); void taskQTBUG_9216_setSizeAndUniformRowHeightsWrongRepaint(); + void taskQTBUG_11466_keyboardNavigationRegression(); }; class QtTestModel: public QAbstractItemModel @@ -3785,5 +3786,129 @@ void tst_QTreeView::keyboardNavigationWithDisabled() QCOMPARE(view.currentIndex(), model.index(6, 0)); } +class Model_11466 : public QAbstractItemModel +{ + Q_OBJECT +public: + Model_11466(QObject *parent) : + m_block(false) + { + // set up the model to have two top level items and a few others + m_selectionModel = new QItemSelectionModel(this, this); // owned by this + + connect(m_selectionModel, SIGNAL(currentChanged(const QModelIndex &,const QModelIndex &)), + this, SLOT(slotCurrentChanged(const QModelIndex &,const QModelIndex &))); + }; + + int rowCount(const QModelIndex &parent) const + { + if (parent.isValid()) + return (parent.internalId() == 0) ? 4 : 0; + return 2; // two top level items + } + + int columnCount(const QModelIndex &parent) const + { + return 2; + } + + QVariant data(const QModelIndex &index, int role) const + { + if (role == Qt::DisplayRole && index.isValid()) { + qint64 parentRowPlusOne = index.internalId(); + QString str; + QTextStream stream(&str); + if (parentRowPlusOne > 0) + stream << parentRowPlusOne << " -> " << index.row() << " : " << index.column(); + else + stream << index.row() << " : " << index.column(); + return QVariant(str); + } + return QVariant(); + } + + QModelIndex parent(const QModelIndex &index) const + { + if (index.isValid()) { + qint64 parentRowPlusOne = index.internalId(); + if (parentRowPlusOne > 0) { + int row = static_cast(parentRowPlusOne - 1); + return createIndex(row, 0, (quint32)0); + } + } + return QModelIndex(); + } + + void bindView(QTreeView *view) + { + // sets the view to this model with a shared selection model + QItemSelectionModel *oldModel = view->selectionModel(); + if (oldModel != m_selectionModel) + delete oldModel; + view->setModel(this); // this creates a new selection model for the view, but we dont want it either ... + oldModel = view->selectionModel(); + view->setSelectionModel(m_selectionModel); + delete oldModel; + } + + QModelIndex index(int row, int column, const QModelIndex &parent) const + { + return createIndex(row, column, parent.isValid() ? (quint32)(parent.row() + 1) : (quint32)0); + } + +public slots: + void slotCurrentChanged(const QModelIndex ¤t,const QModelIndex &) + { + if (m_block) + return; + + if (current.isValid()) { + int selectedRow = current.row(); + quint32 parentRowPlusOne = static_cast(current.internalId()); + + for (int i = 0; i < 2; ++i) { + // announce the removal of all non top level items + beginRemoveRows(createIndex(i, 0, 0), 0, 3); + // nothing to actually do for the removal + endRemoveRows(); + + // put them back in again + beginInsertRows(createIndex(i, 0, 0), 0, 3); + // nothing to actually do for the insertion + endInsertRows(); + } + // reselect the current item ... + QModelIndex selectedIndex = createIndex(selectedRow, 0, parentRowPlusOne); + + m_block = true; // recursion block + m_selectionModel->select(selectedIndex, QItemSelectionModel::ClearAndSelect|QItemSelectionModel::Current|QItemSelectionModel::Rows); + m_selectionModel->setCurrentIndex(selectedIndex, QItemSelectionModel::NoUpdate); + m_block = false; + } else { + m_selectionModel->clear(); + } + } + +private: + bool m_block; + QItemSelectionModel *m_selectionModel; +}; + +void tst_QTreeView::taskQTBUG_11466_keyboardNavigationRegression() +{ + QTreeView treeView; + treeView.setSelectionBehavior(QAbstractItemView::SelectRows); + treeView.setSelectionMode(QAbstractItemView::SingleSelection); + Model_11466 model(&treeView); + model.bindView(&treeView); + treeView.expandAll(); + treeView.show(); + QTest::qWaitForWindowShown(&treeView); + + QTest::keyPress(treeView.viewport(), Qt::Key_Down); + QTest::qWait(10); + QTRY_COMPARE(treeView.currentIndex(), treeView.selectionModel()->selection().indexes().first()); +} + QTEST_MAIN(tst_QTreeView) #include "tst_qtreeview.moc" -- cgit v0.12 From 69e8769e2a3f44700c24437dc851ea817c16318f Mon Sep 17 00:00:00 2001 From: Nicolai de Haan Brogger Date: Mon, 16 Aug 2010 21:55:42 +0000 Subject: Take advantage of a new EGL extension when posting 16 bit surfaces. Replaces the existing NVIDIA EGL extension "EGL_NV_post_convert_replication" with another newer extension named "EGL_NV_post_convert_roundinng". The newer extension produces similar result when posting 16 bit surfaces to 24/32 bit as the old and performs faster. Motivated by qtbug-9444. Merge-request: 742 Reviewed-by: Donald Carr --- src/gui/egl/qegl_x11.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gui/egl/qegl_x11.cpp b/src/gui/egl/qegl_x11.cpp index fea6e8d..15cc109 100644 --- a/src/gui/egl/qegl_x11.cpp +++ b/src/gui/egl/qegl_x11.cpp @@ -165,7 +165,7 @@ VisualID QEgl::getCompatibleVisualId(EGLConfig config) if (chosenVisualInfo) { // Skip size checks if implementation supports non-matching visual // and config (http://bugreports.qt.nokia.com/browse/QTBUG-9444). - if (QEgl::hasExtension("EGL_NV_post_convert_replication")) + if (QEgl::hasExtension("EGL_NV_post_convert_rounding")) return visualId; int visualRedSize = countBits(chosenVisualInfo->red_mask); -- cgit v0.12 From c6867a620259ee6c82a038995f424bef63d45aea Mon Sep 17 00:00:00 2001 From: Martin Jones Date: Tue, 17 Aug 2010 09:12:58 +1000 Subject: Add missing auto test files. --- .../data/flickableqgraphicswidget.qml | 7 +++++++ .../data/verticalqgraphicswidget.qml | 24 ++++++++++++++++++++++ 2 files changed, 31 insertions(+) create mode 100644 tests/auto/declarative/qdeclarativeflickable/data/flickableqgraphicswidget.qml create mode 100644 tests/auto/declarative/qdeclarativepositioners/data/verticalqgraphicswidget.qml diff --git a/tests/auto/declarative/qdeclarativeflickable/data/flickableqgraphicswidget.qml b/tests/auto/declarative/qdeclarativeflickable/data/flickableqgraphicswidget.qml new file mode 100644 index 0000000..8e95a94 --- /dev/null +++ b/tests/auto/declarative/qdeclarativeflickable/data/flickableqgraphicswidget.qml @@ -0,0 +1,7 @@ +import Qt 4.7 + +Flickable { + width: 100; height: 100 + + QGraphicsWidget { objectName: "widget1"; width: 200; height: 300 } +} diff --git a/tests/auto/declarative/qdeclarativepositioners/data/verticalqgraphicswidget.qml b/tests/auto/declarative/qdeclarativepositioners/data/verticalqgraphicswidget.qml new file mode 100644 index 0000000..c9c8607 --- /dev/null +++ b/tests/auto/declarative/qdeclarativepositioners/data/verticalqgraphicswidget.qml @@ -0,0 +1,24 @@ +import Qt 4.7 + +Item { + width: 640 + height: 480 + Column { + objectName: "column" + QGraphicsWidget { + objectName: "one" + width: 50 + height: 50 + } + QGraphicsWidget { + objectName: "two" + width: 20 + height: 10 + } + QGraphicsWidget { + objectName: "three" + width: 40 + height: 20 + } + } +} -- cgit v0.12 From 875d5e374dce3dd7d7cce87b55e277e8e9497044 Mon Sep 17 00:00:00 2001 From: Joona Petrell Date: Tue, 17 Aug 2010 13:29:08 +1000 Subject: Update QtGui def files Task-number: Reviewed-by: Martin Jones --- src/s60installs/bwins/QtGuiu.def | 4 +++- src/s60installs/eabi/QtGuiu.def | 1 + 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/src/s60installs/bwins/QtGuiu.def b/src/s60installs/bwins/QtGuiu.def index 90c0878..21a2122 100644 --- a/src/s60installs/bwins/QtGuiu.def +++ b/src/s60installs/bwins/QtGuiu.def @@ -4148,7 +4148,7 @@ EXPORTS ?ensureSceneTransformRecursive@QGraphicsItemPrivate@@QAEXPAPAVQGraphicsItem@@@Z @ 4147 NONAME ; void QGraphicsItemPrivate::ensureSceneTransformRecursive(class QGraphicsItem * *) ?ensureSequentialSiblingIndex@QGraphicsItemPrivate@@QAEXXZ @ 4148 NONAME ; void QGraphicsItemPrivate::ensureSequentialSiblingIndex(void) ?ensureSortedChildren@QGraphicsItemPrivate@@QAEXXZ @ 4149 NONAME ; void QGraphicsItemPrivate::ensureSortedChildren(void) - ?ensureSpace@QTextEngine@@QBEXH@Z @ 4150 NONAME ; void QTextEngine::ensureSpace(int) const + ?ensureSpace@QTextEngine@@QBEXH@Z @ 4150 NONAME ABSENT ; void QTextEngine::ensureSpace(int) const ?ensureVisible@QGraphicsItem@@QAEXABVQRectF@@HH@Z @ 4151 NONAME ; void QGraphicsItem::ensureVisible(class QRectF const &, int, int) ?ensureVisible@QGraphicsItem@@QAEXMMMMHH@Z @ 4152 NONAME ; void QGraphicsItem::ensureVisible(float, float, float, float, int, int) ?ensureVisible@QGraphicsView@@QAEXABVQRectF@@HH@Z @ 4153 NONAME ; void QGraphicsView::ensureVisible(class QRectF const &, int, int) @@ -12886,4 +12886,6 @@ EXPORTS ?zScaleChanged@QGraphicsScale@@IAEXXZ @ 12885 NONAME ; void QGraphicsScale::zScaleChanged(void) ?xScaleChanged@QGraphicsScale@@IAEXXZ @ 12886 NONAME ; void QGraphicsScale::xScaleChanged(void) ?yScaleChanged@QGraphicsScale@@IAEXXZ @ 12887 NONAME ; void QGraphicsScale::yScaleChanged(void) + ?_q_aboutToQuit@QApplicationPrivate@@QAEXXZ @ 12888 NONAME ; void QApplicationPrivate::_q_aboutToQuit(void) + ?ensureSpace@QTextEngine@@QBE_NH@Z @ 12889 NONAME ; bool QTextEngine::ensureSpace(int) const diff --git a/src/s60installs/eabi/QtGuiu.def b/src/s60installs/eabi/QtGuiu.def index d8e86bf..c4ad848 100644 --- a/src/s60installs/eabi/QtGuiu.def +++ b/src/s60installs/eabi/QtGuiu.def @@ -12091,4 +12091,5 @@ EXPORTS _ZN14QGraphicsScale13xScaleChangedEv @ 12090 NONAME _ZN14QGraphicsScale13yScaleChangedEv @ 12091 NONAME _ZN14QGraphicsScale13zScaleChangedEv @ 12092 NONAME + _ZN19QApplicationPrivate14_q_aboutToQuitEv @ 12093 NONAME -- cgit v0.12 From cf0f53ecefd6914d533ffea057748480e3e5bd33 Mon Sep 17 00:00:00 2001 From: Joona Petrell Date: Tue, 17 Aug 2010 13:29:08 +1000 Subject: Update QtDeclarative def files Task-number: Reviewed-by: Martin Jones --- src/s60installs/bwins/QtDeclarativeu.def | 1 + src/s60installs/eabi/QtDeclarativeu.def | 1 + 2 files changed, 2 insertions(+) diff --git a/src/s60installs/bwins/QtDeclarativeu.def b/src/s60installs/bwins/QtDeclarativeu.def index 480d9ff..bc6d0aa 100644 --- a/src/s60installs/bwins/QtDeclarativeu.def +++ b/src/s60installs/bwins/QtDeclarativeu.def @@ -1684,4 +1684,5 @@ EXPORTS ?rootContext@QDeclarativeView@@QBEPAVQDeclarativeContext@@XZ @ 1683 NONAME ; class QDeclarativeContext * QDeclarativeView::rootContext(void) const ?rootContext@QDeclarativeEngine@@QBEPAVQDeclarativeContext@@XZ @ 1684 NONAME ; class QDeclarativeContext * QDeclarativeEngine::rootContext(void) const ?qmlregister@QDeclarativePrivate@@YAHW4RegistrationType@1@PAX@Z @ 1685 NONAME ; int QDeclarativePrivate::qmlregister(enum QDeclarativePrivate::RegistrationType, void *) + ?hasValue@QDeclarativeOpenMetaObject@@QBE_NH@Z @ 1686 NONAME ; bool QDeclarativeOpenMetaObject::hasValue(int) const diff --git a/src/s60installs/eabi/QtDeclarativeu.def b/src/s60installs/eabi/QtDeclarativeu.def index 9a3cefa..723f2ae 100644 --- a/src/s60installs/eabi/QtDeclarativeu.def +++ b/src/s60installs/eabi/QtDeclarativeu.def @@ -1714,4 +1714,5 @@ EXPORTS _ZNK16QDeclarativeView6engineEv @ 1713 NONAME _ZNK18QDeclarativeEngine11rootContextEv @ 1714 NONAME _ZN19QDeclarativePrivate11qmlregisterENS_16RegistrationTypeEPv @ 1715 NONAME + _ZNK26QDeclarativeOpenMetaObject8hasValueEi @ 1716 NONAME -- cgit v0.12 From 056574f7d6c331ec7d972b298585e1a3a6c975ac Mon Sep 17 00:00:00 2001 From: Bea Lam Date: Tue, 17 Aug 2010 14:05:53 +1000 Subject: Docs - clarify use of PropertyChanges for immediate property changes in a State (e.g. for setting a transformOrigin for a RotationAnimation). Also improve some other animation docs in general. --- doc/src/declarative/animation.qdoc | 19 ++- doc/src/snippets/declarative/propertychanges.qml | 92 +++++++++++ doc/src/snippets/declarative/rotationanimation.qml | 3 +- src/declarative/util/qdeclarativeanimation.cpp | 169 +++++++++++++++------ .../util/qdeclarativepropertychanges.cpp | 119 ++++++--------- 5 files changed, 273 insertions(+), 129 deletions(-) create mode 100644 doc/src/snippets/declarative/propertychanges.qml diff --git a/doc/src/declarative/animation.qdoc b/doc/src/declarative/animation.qdoc index 7416341..53a0c55 100644 --- a/doc/src/declarative/animation.qdoc +++ b/doc/src/declarative/animation.qdoc @@ -156,11 +156,13 @@ The \l {PropertyAnimation::}{to} property is also required to specify the new \section2 Standalone Animations Animations can also be created as ordinary QML objects that are not bound to -any particular objects and properties. An example: +any particular objects and properties. Here is an example, using a +PropertyAnimation object. The animation is explicitly started when the +\l Rectangle is clicked: \snippet doc/src/snippets/declarative/animation-standalone.qml 0 -A standalone animation is not running by default and must be started explicitly +A standalone animation object is not running by default and must be started explicitly using the \l {Animation::}{running} property or \l {Animation::}{start()} and \l {Animation::}{stop()} methods. Since the animation is not bound to a particular object or property, it must define the \l @@ -183,10 +185,13 @@ object and add it to an item's \l {Item::}{transitions} property. An example: \snippet doc/src/snippets/declarative/animation-transitions.qml 0 -When the \l Rectangle changes to the \e moved state, its \c x and \c y property -values are changed by the PropertyChanges object, and the PropertyAnimation -defined within the \l Transition is triggered on these properties. The -animation will not be applied at any time other than during the state change. +The PropertyChanges object in the \e moved state defines that when the +\l Rectangle is in this state, its position should be changed +to (50, 50). When the \l Rectangle changes to the \e moved state, the +\l Transition will be triggered, and the transition's \l PropertyAnimation will +animate the changes in the \c x and \c y properties to their new values. +The animation will not be applied at any time other than during the state +change. Notice the example does not set any \l {PropertyAnimation::}{from} and \l {PropertyAnimation::}{to} values for the PropertyAnimation. As a convenience, @@ -234,7 +239,7 @@ and rotation changes. A ColorAnimation allows color values for the \l {ColorAnimation::}{from} and \l {ColorAnimation::}{to} properties. The -following animates the rectangle's \l {Rectangle::color} property: +following animates the rectangle's \l {Rectangle::}{color} property: \snippet doc/src/snippets/declarative/animation-elements.qml color diff --git a/doc/src/snippets/declarative/propertychanges.qml b/doc/src/snippets/declarative/propertychanges.qml new file mode 100644 index 0000000..9f119bf --- /dev/null +++ b/doc/src/snippets/declarative/propertychanges.qml @@ -0,0 +1,92 @@ +/**************************************************************************** +** +** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the QtDeclarative module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** No Commercial Usage +** This file contains pre-release code and may not be distributed. +** You may use this file in accordance with the terms and conditions +** contained in the Technology Preview License Agreement accompanying +** this package. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 2.1 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 2.1 requirements +** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** If you have questions regarding the use of this file, please contact +** Nokia at qt-info@nokia.com. +** +** +** +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ +//![import] +import Qt 4.7 +//![import] + +Column { + +//![0] +Item { + id: container + width: 300; height: 300 + + Rectangle { + id: rect + width: 100; height: 100 + color: "red" + + MouseArea { + id: mouseArea + anchors.fill: parent + } + + states: State { + name: "resized"; when: mouseArea.pressed + PropertyChanges { target: rect; color: "blue"; height: container.height } + } + } +} +//![0] + +//![reset] +Rectangle { + width: 300; height: 200 + + Text { + id: myText + width: 50 + wrapMode: Text.WordWrap + text: "a text string that is longer than 50 pixels" + + states: State { + name: "widerText" + PropertyChanges { target: myText; width: undefined } + } + } + + MouseArea { + anchors.fill: parent + onClicked: myText.state = "widerText" + } +} +//![reset] +} diff --git a/doc/src/snippets/declarative/rotationanimation.qml b/doc/src/snippets/declarative/rotationanimation.qml index c81395a..b56cb3f 100644 --- a/doc/src/snippets/declarative/rotationanimation.qml +++ b/doc/src/snippets/declarative/rotationanimation.qml @@ -52,7 +52,8 @@ Item { smooth: true states: State { - name: "rotated"; PropertyChanges { target: rect; rotation: 180 } + name: "rotated" + PropertyChanges { target: rect; rotation: 180 } } transitions: Transition { diff --git a/src/declarative/util/qdeclarativeanimation.cpp b/src/declarative/util/qdeclarativeanimation.cpp index 3b8cb37..4e9e8d5 100644 --- a/src/declarative/util/qdeclarativeanimation.cpp +++ b/src/declarative/util/qdeclarativeanimation.cpp @@ -694,9 +694,12 @@ QDeclarativeColorAnimation::~QDeclarativeColorAnimation() } \endqml - If this value is not set and the ColorAnimation is defined within - a \l Transition, it defaults to the value defined in the starting - state of the \l Transition. + If the ColorAnimation is defined within a \l Transition or \l Behavior, + this value defaults to the value defined in the starting state of the + \l Transition, or the current value of the property at the moment the + \l Behavior is triggered. + + \sa {QML Animation} */ QColor QDeclarativeColorAnimation::from() const { @@ -714,9 +717,12 @@ void QDeclarativeColorAnimation::setFrom(const QColor &f) This property holds the color value at which the animation should end. - If this value is not set and the ColorAnimation is defined within - a \l Transition or \l Behavior, it defaults to the value defined in the end - state of the \l Transition or \l Behavior. + If the ColorAnimation is defined within a \l Transition or \l Behavior, + this value defaults to the value defined in the end state of the + \l Transition, or the value of the property change that triggered the + \l Behavior. + + \sa {QML Animation} */ QColor QDeclarativeColorAnimation::to() const { @@ -887,29 +893,45 @@ QAbstractAnimation *QDeclarativeScriptAction::qtAnimation() \inherits Animation \brief The PropertyAction element allows immediate property changes during animation. - PropertyAction is used to specify an immediate property change - during an animation. The property change is not animated. + PropertyAction is used to specify an immediate property change during an + animation. The property change is not animated. - For example, to explicitly set \c {theImage.smooth = true} during a \l Transition: - \code - transitions: Transition { - ... - PropertyAction { target: theImage; property: "smooth"; value: true } - ... - } - \endcode + It is useful for setting non-animated property values during an animation. - Or, to set \c theWebView.url to the value set for the destination state: - \code + For example, here is a SequentialAnimation that sets the image's + \l {Image::}{smooth} property to \c true, animates the width of the image, + then sets \l {Image::}{smooth} back to \c false: + + \snippet doc/src/snippets/declarative/propertyaction.qml standalone + + PropertyAction is also useful for setting the exact point at which a property + change should occur during a \l Transition. For example, if PropertyChanges + was used in a \l State to rotate an item around a particular + \l {Item::}{transformOrigin}, it might be implemented like this: + + \snippet doc/src/snippets/declarative/propertyaction.qml transition + + However, with this code, the \c transformOrigin is not set until \e after + the animation, as a \l State is taken to define the values at the \e end of + a transition. The animation would rotate at the default \c transformOrigin, + then jump to \c Item.BottomRight. To fix this, insert a PropertyChanges + before the RotationAnimation begins: + + \qml transitions: Transition { - ... - PropertyAction { target: theWebView; property: "url" } - ... + SequentialAnimation { + PropertyAction { target: rect; property: "transformOrigin" } + RotationAnimation { ... } + } } - \endcode - + \endqml + + This immediately sets the \c transformOrigin property to the value defined + in the end state of the \l Transition (i.e. the value defined in the + PropertyChanges object) so that the rotation animation begins with the + correct transform origin. - \sa QtDeclarative + \sa {QML Animation}, QtDeclarative */ /*! \internal @@ -1014,7 +1036,11 @@ QDeclarativeListProperty QDeclarativePropertyAction::exclude() /*! \qmlproperty any PropertyAction::value This property holds the value to be set on the property. - If not set, then the value defined for the end state of the transition. + + If the PropertyAction is defined within a \l Transition or \l Behavior, + this value defaults to the value defined in the end state of the + \l Transition, or the value of the property change that triggered the + \l Behavior. */ QVariant QDeclarativePropertyAction::value() const { @@ -1190,7 +1216,7 @@ void QDeclarativeNumberAnimation::init() /*! \qmlproperty real NumberAnimation::from - This property holds the starting number value. + This property holds the starting value for the animation. For example, the following animation is not applied until the \c x value has reached 100: @@ -1205,9 +1231,12 @@ void QDeclarativeNumberAnimation::init() } \endqml - If this value is not set and the NumberAnimation is defined within - a \l Transition, it defaults to the value defined in the start - state of the \l Transition. + If the NumberAnimation is defined within a \l Transition or \l Behavior, + this value defaults to the value defined in the starting state of the + \l Transition, or the current value of the property at the moment the + \l Behavior is triggered. + + \sa {QML Animation} */ qreal QDeclarativeNumberAnimation::from() const @@ -1223,11 +1252,14 @@ void QDeclarativeNumberAnimation::setFrom(qreal f) /*! \qmlproperty real NumberAnimation::to - This property holds the ending number value. + This property holds the end value for the animation. - If this value is not set and the NumberAnimation is defined within - a \l Transition or \l Behavior, it defaults to the value defined in the end - state of the \l Transition or \l Behavior. + If the NumberAnimation is defined within a \l Transition or \l Behavior, + this value defaults to the value defined in the end state of the + \l Transition, or the value of the property change that triggered the + \l Behavior. + + \sa {QML Animation} */ qreal QDeclarativeNumberAnimation::to() const { @@ -1280,10 +1312,14 @@ QDeclarativeVector3dAnimation::~QDeclarativeVector3dAnimation() /*! \qmlproperty real Vector3dAnimation::from - This property holds the starting value. + This property holds the starting value for the animation. + + If the Vector3dAnimation is defined within a \l Transition or \l Behavior, + this value defaults to the value defined in the starting state of the + \l Transition, or the current value of the property at the moment the + \l Behavior is triggered. - If this value is not set, it defaults to the value defined in the start - state of the \l Transition. + \sa {QML Animation} */ QVector3D QDeclarativeVector3dAnimation::from() const { @@ -1298,10 +1334,14 @@ void QDeclarativeVector3dAnimation::setFrom(QVector3D f) /*! \qmlproperty real Vector3dAnimation::to - This property holds the ending value. + This property holds the end value for the animation. - If this value is not set, it defaults to the value defined in the end - state of the \l Transition or \l Behavior. + If the Vector3dAnimation is defined within a \l Transition or \l Behavior, + this value defaults to the value defined in the end state of the + \l Transition, or the value of the property change that triggered the + \l Behavior. + + \sa {QML Animation} */ QVector3D QDeclarativeVector3dAnimation::to() const { @@ -1343,6 +1383,12 @@ void QDeclarativeVector3dAnimation::setTo(QVector3D t) your own properties via \l {PropertyAnimation::properties}{properties} or \l {PropertyAnimation::property}{property}. + Also, note the \l Rectangle will be rotated around its default + \l {Item::}{transformOrigin} (which is \c Item.Center). To use a different + transform origin, set the origin in the PropertyChanges object and apply + the change at the start of the animation using PropertyAction. See the + PropertyAction documentation for more details. + Like any other animation element, a RotationAnimation can be applied in a number of ways, including transitions, behaviors and property value sources. The \l {QML Animation} documentation shows a variety of methods @@ -1408,7 +1454,7 @@ QDeclarativeRotationAnimation::~QDeclarativeRotationAnimation() /*! \qmlproperty real RotationAnimation::from - This property holds the starting number value. + This property holds the starting value for the animation. For example, the following animation is not applied until the \c angle value has reached 100: @@ -1423,8 +1469,12 @@ QDeclarativeRotationAnimation::~QDeclarativeRotationAnimation() } \endqml - If this value is not set, it defaults to the value defined in the start - state of the \l Transition. + If the RotationAnimation is defined within a \l Transition or \l Behavior, + this value defaults to the value defined in the starting state of the + \l Transition, or the current value of the property at the moment the + \l Behavior is triggered. + + \sa {QML Animation} */ qreal QDeclarativeRotationAnimation::from() const { @@ -1439,10 +1489,14 @@ void QDeclarativeRotationAnimation::setFrom(qreal f) /*! \qmlproperty real RotationAnimation::to - This property holds the ending value. + This property holds the end value for the animation.. + + If the RotationAnimation is defined within a \l Transition or \l Behavior, + this value defaults to the value defined in the end state of the + \l Transition, or the value of the property change that triggered the + \l Behavior. - If this value is not set, it defaults to the value defined in the end - state of the \l Transition or \l Behavior. + \sa {QML Animation} */ qreal QDeclarativeRotationAnimation::to() const { @@ -1854,8 +1908,14 @@ void QDeclarativePropertyAnimation::setDuration(int duration) /*! \qmlproperty real PropertyAnimation::from - This property holds the starting value. - If not set, then the value defined in the start state of the transition. + This property holds the starting value for the animation. + + If the PropertyAnimation is defined within a \l Transition or \l Behavior, + this value defaults to the value defined in the starting state of the + \l Transition, or the current value of the property at the moment the + \l Behavior is triggered. + + \sa {QML Animation} */ QVariant QDeclarativePropertyAnimation::from() const { @@ -1875,8 +1935,14 @@ void QDeclarativePropertyAnimation::setFrom(const QVariant &f) /*! \qmlproperty real PropertyAnimation::to - This property holds the ending value. - If not set, then the value defined in the end state of the transition or \l Behavior. + This property holds the end value for the animation. + + If the PropertyAnimation is defined within a \l Transition or \l Behavior, + this value defaults to the value defined in the end state of the + \l Transition, or the value of the property change that triggered the + \l Behavior. + + \sa {QML Animation} */ QVariant QDeclarativePropertyAnimation::to() const { @@ -2502,7 +2568,10 @@ void QDeclarativeParentAnimation::setTarget(QDeclarativeItem *target) \qmlproperty Item ParentAnimation::newParent The new parent to animate to. - If not set, then the parent defined in the end state of the transition. + If the ParentAnimation is defined within a \l Transition or \l Behavior, + this value defaults to the value defined in the end state of the + \l Transition, or the value of the property change that triggered the + \l Behavior. */ QDeclarativeItem *QDeclarativeParentAnimation::newParent() const { diff --git a/src/declarative/util/qdeclarativepropertychanges.cpp b/src/declarative/util/qdeclarativepropertychanges.cpp index 25edd35..c28ada3 100644 --- a/src/declarative/util/qdeclarativepropertychanges.cpp +++ b/src/declarative/util/qdeclarativepropertychanges.cpp @@ -65,48 +65,30 @@ QT_BEGIN_NAMESPACE \since 4.7 \brief The PropertyChanges element describes new property bindings or values for a state. - PropertyChanges provides a state change that modifies the properties of an item. + PropertyChanges is used to define the property values or bindings in a + \l State. This enables an item's property values to be changed when it + \l {QML States}{changes between states}. - Here is a property change that modifies the text and color of a \l Text element - when it is clicked: + To create a PropertyChanges object, specify the \l target item whose + properties are to be modified, and define the new property values or + bindings. For example: - \qml - Text { - id: myText - width: 100; height: 100 - text: "Hello" - color: "blue" - - states: State { - name: "myState" - - PropertyChanges { - target: myText - text: "Goodbye" - color: "red" - } - } - - MouseArea { anchors.fill: parent; onClicked: myText.state = 'myState' } - } - \endqml - - By default, PropertyChanges will establish new bindings where appropriate. - For example, the following creates a new binding for myItem's \c height property. - - \qml - PropertyChanges { - target: myItem - height: parent.height - } - \endqml - - If you don't want a binding to be established (and instead just want to assign - the value of the binding at the time the state is entered), - you should set the PropertyChange's \l{PropertyChanges::explicit}{explicit} + \snippet doc/src/snippets/declarative/propertychanges.qml import + \codeline + \snippet doc/src/snippets/declarative/propertychanges.qml 0 + + When the mouse is pressed, the \l Rectangle changes to the \e resized + state. In this state, the PropertyChanges object sets the rectangle's + color to blue and the \c height value to that of \c container.height. + + Note this automatically binds \c rect.height to \c container.height + in the \e resized state. If a property binding should not be + established, and the height should just be set to the value of + \c container.height at the time of the state change, set the \l explicit property to \c true. - - State-specific script for signal handlers can also be specified: + + A PropertyChanges object can also override the default signal handler + for an object to implement a signal handler specific to the new state: \qml PropertyChanges { @@ -115,36 +97,31 @@ QT_BEGIN_NAMESPACE } \endqml - You can reset a property in a state change by assigning \c undefined. In the following - example we reset \c theText's width when we enter state1. This will give the text its - natural width (which is the whole string on one line). + \note PropertyChanges can be used to change anchor margins, but not other anchor + values; use AnchorChanges for this instead. Similarly, to change an \l Item's + \l {Item::}{parent} value, use ParentChanges instead. - \qml - import Qt 4.7 - - Rectangle { - width: 640 - height: 480 - Text { - id: theText - width: 50 - wrapMode: Text.WordWrap - text: "a text string that is longer than 50 pixels" - } - states: State { - name: "state1" - PropertyChanges { - target: theText - width: undefined - } - } - } - \endqml + \section2 Resetting property values - Anchor margins should be changed with PropertyChanges, but other anchor changes or changes to - an Item's parent should be done using the associated change elements - (ParentChange and AnchorChanges, respectively). + The \c undefined value can be used to reset the property value for a state. + In the following example, when \c theText changes to the \e widerText + state, its \c width property is reset, giving the text its natural width + and displaying the whole string on a single line. + + \snippet doc/src/snippets/declarative/propertychanges.qml reset + + + \section2 Immediate property changes in transitions + + When \l Transitions are used to animate state changes, they animate + properties from their values in the current state to those defined in the + new state (as defined by PropertyChanges objects). However, + it is sometimes desirable to set a property value \e immediately during a + \l Transition, without animation; in these cases, the PropertyAction + element can be used to force an immediate property change. + + See the PropertyAction documentation for more details. \sa {declarative/animation/states}{states example}, {qmlstate}{States}, QtDeclarative */ @@ -397,12 +374,12 @@ void QDeclarativePropertyChanges::setObject(QObject *o) /*! \qmlproperty bool PropertyChanges::restoreEntryValues - - Whether or not the previous values should be restored when - leaving the state. By default, restoreEntryValues is true. - By setting restoreEntryValues to false, you can create a temporary state - that has permanent effects on property values. + This property holds whether the previous values should be restored when + leaving the state. + + The default value is \c true. Setting this value to \c false creates a + temporary state that has permanent effects on property values. */ bool QDeclarativePropertyChanges::restoreEntryValues() const { -- cgit v0.12 From 59d2b0a0a1c836d3371c18a2a857d88c2d28621f Mon Sep 17 00:00:00 2001 From: Bea Lam Date: Tue, 17 Aug 2010 14:09:07 +1000 Subject: Add missing file --- doc/src/snippets/declarative/propertyaction.qml | 86 +++++++++++++++++++++++++ 1 file changed, 86 insertions(+) create mode 100644 doc/src/snippets/declarative/propertyaction.qml diff --git a/doc/src/snippets/declarative/propertyaction.qml b/doc/src/snippets/declarative/propertyaction.qml new file mode 100644 index 0000000..1a15469 --- /dev/null +++ b/doc/src/snippets/declarative/propertyaction.qml @@ -0,0 +1,86 @@ +/**************************************************************************** +** +** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the QtDeclarative module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** No Commercial Usage +** This file contains pre-release code and may not be distributed. +** You may use this file in accordance with the terms and conditions +** contained in the Technology Preview License Agreement accompanying +** this package. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 2.1 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 2.1 requirements +** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** If you have questions regarding the use of this file, please contact +** Nokia at qt-info@nokia.com. +** +** +** +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ +import Qt 4.7 + +Row { + +//![transition] +Item { + width: 400; height: 400 + + Rectangle { + id: rect + width: 200; height: 100 + color: "red" + + states: State { + name: "rotated" + PropertyChanges { target: rect; rotation: 180; transformOrigin: Item.BottomRight } + } + + transitions: Transition { + RotationAnimation { duration: 1000; direction: RotationAnimation.Counterclockwise } + } + + MouseArea { + anchors.fill: parent + onClicked: rect.state = "rotated" + } + } +} +//![transition] + +Item { + width: 300; height: 300 + + Image { id: img; source: "pics/qt.png" } + +//![standalone] +SequentialAnimation { + PropertyAction { target: img; property: "smooth"; value: "true" } + NumberAnimation { target: img; property: "width"; to: 300; duration: 1000 } + PropertyAction { target: img; property: "smooth"; value: "false" } +} +//![standalone] +} + +} + -- cgit v0.12 From a76b8bf67696ae69888cc6237417e7c8f07f8da6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samuel=20R=C3=B8dal?= Date: Tue, 17 Aug 2010 10:29:03 +0200 Subject: Prevented Xorg crash in qtdemo when running corkboards example. The crash happens in the Nvidia driver in glXReleaseTexImageEXT when scrolling the corkboard using the mouse. To work around it we detect the Nvidia driver versions where this is known to be a problem and skip using the texture from pixmap extension in those cases. Task-number: QTBUG-12914 Reviewed-by: Trond --- src/opengl/qgl.cpp | 30 +++++++++++++++++++++++++----- src/opengl/qgl_p.h | 3 +++ 2 files changed, 28 insertions(+), 5 deletions(-) diff --git a/src/opengl/qgl.cpp b/src/opengl/qgl.cpp index 4daa866..74bde36 100644 --- a/src/opengl/qgl.cpp +++ b/src/opengl/qgl.cpp @@ -1688,6 +1688,10 @@ void QGLContextPrivate::init(QPaintDevice *dev, const QGLFormat &format) workaround_needsFullClearOnEveryFrame = false; workaround_brokenFBOReadBack = false; workaroundsCached = false; + + workaround_brokenTextureFromPixmap = false; + workaround_brokenTextureFromPixmap_init = false; + for (int i = 0; i < QT_GL_VERTEX_ARRAY_TRACKED_COUNT; ++i) vertexAttributeArraysEnabledState[i] = false; } @@ -2570,11 +2574,27 @@ QGLTexture *QGLContextPrivate::bindTexture(const QPixmap &pixmap, GLenum target, && xinfo && xinfo->screen() == pixmap.x11Info().screen() && target == GL_TEXTURE_2D) { - texture = bindTextureFromNativePixmap(const_cast(&pixmap), key, options); - if (texture) { - texture->options |= QGLContext::MemoryManagedBindOption; - texture->boundPixmap = pd; - boundPixmaps.insert(pd, QPixmap(pixmap)); + if (!workaround_brokenTextureFromPixmap_init) { + workaround_brokenTextureFromPixmap_init = true; + + const QByteArray versionString(reinterpret_cast(glGetString(GL_VERSION))); + const int pos = versionString.indexOf("NVIDIA "); + + if (pos >= 0) { + const QByteArray nvidiaVersionString = versionString.mid(pos + strlen("NVIDIA ")); + + if (nvidiaVersionString.startsWith("195") || nvidiaVersionString.startsWith("256")) + workaround_brokenTextureFromPixmap = true; + } + } + + if (!workaround_brokenTextureFromPixmap) { + texture = bindTextureFromNativePixmap(const_cast(&pixmap), key, options); + if (texture) { + texture->options |= QGLContext::MemoryManagedBindOption; + texture->boundPixmap = pd; + boundPixmaps.insert(pd, QPixmap(pixmap)); + } } } #endif diff --git a/src/opengl/qgl_p.h b/src/opengl/qgl_p.h index 32feacd..ca0d3fa 100644 --- a/src/opengl/qgl_p.h +++ b/src/opengl/qgl_p.h @@ -393,6 +393,9 @@ public: uint workaround_brokenFBOReadBack : 1; uint workaroundsCached : 1; + uint workaround_brokenTextureFromPixmap : 1; + uint workaround_brokenTextureFromPixmap_init : 1; + QPaintDevice *paintDevice; QColor transpColor; QGLContext *q_ptr; -- cgit v0.12 From d7213ecceabf79de561cd276429372e09464e62c Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Tue, 17 Aug 2010 11:11:15 +0200 Subject: tst_QDataStream::stream_QPixmap: actualy test QPixmap. Because of a type, QIcon was tested twicen and QPixmap was not tested --- tests/auto/qdatastream/tst_qdatastream.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/auto/qdatastream/tst_qdatastream.cpp b/tests/auto/qdatastream/tst_qdatastream.cpp index 31e12fe..c03bc71 100644 --- a/tests/auto/qdatastream/tst_qdatastream.cpp +++ b/tests/auto/qdatastream/tst_qdatastream.cpp @@ -1820,7 +1820,7 @@ void tst_QDataStream::stream_QPixmap() #ifdef Q_OS_WINCE QSKIP("Test depends on more memory than available on Qt/CE", SkipAll); #endif - STREAM_IMPL(QIcon); + STREAM_IMPL(QPixmap); } void tst_QDataStream::stream_QIcon_data() -- cgit v0.12 From cc6dc0aeefde881a95f5fea2b26f2f3d7bdc6e15 Mon Sep 17 00:00:00 2001 From: Richard Moe Gustavsen Date: Tue, 17 Aug 2010 10:08:20 +0200 Subject: Cocoa: parent windows shows on screen when they should be hidden The reason is the cocoa method that adds a window as a child of another, it ends up showing both the parent and the child window regardless. And this could in some cases also cause a crash. So we therefore need to be careful when calling that function, and be sure that the parent is actually visible. In addition, addChildWindow reset the stacking level of the child window, and made e.g. normal child windows pop in front of tool child windows. This could easily be seen in e.g. Designer. Task-number: QTBUG-12866 Reviewed-by: prasanth --- src/gui/kernel/qwidget_mac.mm | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/src/gui/kernel/qwidget_mac.mm b/src/gui/kernel/qwidget_mac.mm index 8ae6a99..4ed4ccc 100644 --- a/src/gui/kernel/qwidget_mac.mm +++ b/src/gui/kernel/qwidget_mac.mm @@ -2796,10 +2796,16 @@ void QWidgetPrivate::setSubWindowStacking(bool set) if (QWidget *parent = q->parentWidget()) { if (parent->testAttribute(Qt::WA_WState_Created)) { - if (set) - [qt_mac_window_for(parent) addChildWindow:qt_mac_window_for(q) ordered:NSWindowAbove]; - else + if (set) { + if (parent->isVisible()) { + NSWindow *childwin = qt_mac_window_for(q); + int childLevel = [childwin level]; + [qt_mac_window_for(parent) addChildWindow:childwin ordered:NSWindowAbove]; + [childwin setLevel:childLevel]; + } + } else { [qt_mac_window_for(parent) removeChildWindow:qt_mac_window_for(q)]; + } } } @@ -2807,10 +2813,14 @@ void QWidgetPrivate::setSubWindowStacking(bool set) for (int i=0; iisWindow() && child->testAttribute(Qt::WA_WState_Created) && child->isVisibleTo(q)) { - if (set) - [qt_mac_window_for(q) addChildWindow:qt_mac_window_for(child) ordered:NSWindowAbove]; - else + if (set) { + NSWindow *childwin = qt_mac_window_for(child); + int childLevel = [childwin level]; + [qt_mac_window_for(q) addChildWindow:childwin ordered:NSWindowAbove]; + [childwin setLevel:childLevel]; + } else { [qt_mac_window_for(q) removeChildWindow:qt_mac_window_for(child)]; + } } } } -- cgit v0.12 From ff405f5623d7ed18c881c097368e3e9afd2e9443 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samuel=20R=C3=B8dal?= Date: Tue, 17 Aug 2010 10:45:17 +0200 Subject: Outline / fill inconsistency in X11 paint engine. Change ebbab30af417dfbf3df47dec15c0e2f8d6a30fa6 broke outline / fill consistency in the X11 engine. Since the positioning of lines is more important we'll round the fill coordinates the same way. The bug was visible in the filltest.qps arthur test. Reviewed-by: Gunnar Sletta --- src/gui/painting/qpaintengine_x11.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/gui/painting/qpaintengine_x11.cpp b/src/gui/painting/qpaintengine_x11.cpp index e521e01..5307142 100644 --- a/src/gui/painting/qpaintengine_x11.cpp +++ b/src/gui/painting/qpaintengine_x11.cpp @@ -1516,8 +1516,8 @@ void QX11PaintEnginePrivate::fillPolygon_translated(const QPointF *polygonPoints for (int i = 0; i < pointCount; ++i) { translated_points[i] = polygonPoints[i] + offset; - translated_points[i].rx() = qRound(translated_points[i].x()) + offs; - translated_points[i].ry() = qRound(translated_points[i].y()) + offs; + translated_points[i].rx() = qFloor(translated_points[i].x()) + offs; + translated_points[i].ry() = qFloor(translated_points[i].y()) + offs; } fillPolygon_dev(translated_points.data(), pointCount, gcMode, mode); @@ -1754,8 +1754,8 @@ void QX11PaintEnginePrivate::fillPath(const QPainterPath &path, QX11PaintEngineP for (int j = 0; j < polys.at(i).size(); ++j) { translated_points[j] = polys.at(i).at(j); if (!X11->use_xrender || !(render_hints & QPainter::Antialiasing)) { - translated_points[j].rx() = qRound(translated_points[j].rx() + aliasedCoordinateDelta) + offs; - translated_points[j].ry() = qRound(translated_points[j].ry() + aliasedCoordinateDelta) + offs; + translated_points[j].rx() = qFloor(translated_points[j].rx() + aliasedCoordinateDelta) + offs; + translated_points[j].ry() = qFloor(translated_points[j].ry() + aliasedCoordinateDelta) + offs; } } -- cgit v0.12 From e0c798ebb4fc56fa6be38f6ec3e82de147891260 Mon Sep 17 00:00:00 2001 From: Joona Petrell Date: Mon, 16 Aug 2010 19:02:46 +1000 Subject: Repaint TextInput when password character changes in password mode Task-number: QTBUG-12838 Reviewed-by: Martin Jones --- .../graphicsitems/qdeclarativetextinput.cpp | 18 +++++++++++++----- .../tst_qdeclarativetextinput.cpp | 16 ++++++++++++++++ 2 files changed, 29 insertions(+), 5 deletions(-) diff --git a/src/declarative/graphicsitems/qdeclarativetextinput.cpp b/src/declarative/graphicsitems/qdeclarativetextinput.cpp index bd8d404..b4f36f4 100644 --- a/src/declarative/graphicsitems/qdeclarativetextinput.cpp +++ b/src/declarative/graphicsitems/qdeclarativetextinput.cpp @@ -277,8 +277,10 @@ void QDeclarativeTextInput::setSelectionColor(const QColor &color) QPalette p = d->control->palette(); p.setColor(QPalette::Highlight, d->selectionColor); d->control->setPalette(p); - clearCache(); - update(); + if (d->control->hasSelectedText()) { + clearCache(); + update(); + } emit selectionColorChanged(color); } @@ -303,8 +305,10 @@ void QDeclarativeTextInput::setSelectedTextColor(const QColor &color) QPalette p = d->control->palette(); p.setColor(QPalette::HighlightedText, d->selectedTextColor); d->control->setPalette(p); - clearCache(); - update(); + if (d->control->hasSelectedText()) { + clearCache(); + update(); + } emit selectedTextColorChanged(color); } @@ -1233,8 +1237,12 @@ void QDeclarativeTextInput::setPasswordCharacter(const QString &str) Q_D(QDeclarativeTextInput); if(str.length() < 1) return; - emit passwordCharacterChanged(); d->control->setPasswordCharacter(str.constData()[0]); + EchoMode echoMode_ = echoMode(); + if (echoMode_ == Password || echoMode_ == PasswordEchoOnEdit) { + updateSize(); + } + emit passwordCharacterChanged(); } /*! diff --git a/tests/auto/declarative/qdeclarativetextinput/tst_qdeclarativetextinput.cpp b/tests/auto/declarative/qdeclarativetextinput/tst_qdeclarativetextinput.cpp index ca9009d..98a6012 100644 --- a/tests/auto/declarative/qdeclarativetextinput/tst_qdeclarativetextinput.cpp +++ b/tests/auto/declarative/qdeclarativetextinput/tst_qdeclarativetextinput.cpp @@ -98,6 +98,7 @@ private slots: void validators(); void inputMethods(); + void passwordCharacter(); void cursorDelegate(); void navigation(); void copyAndPaste(); @@ -768,6 +769,21 @@ void tst_qdeclarativetextinput::copyAndPaste() { #endif } +void tst_qdeclarativetextinput::passwordCharacter() +{ + QString componentStr = "import Qt 4.7\nTextInput { text: \"Hello world!\"; font.family: \"Helvetica\"; echoMode: TextInput.Password }"; + QDeclarativeComponent textInputComponent(&engine); + textInputComponent.setData(componentStr.toLatin1(), QUrl()); + QDeclarativeTextInput *textInput = qobject_cast(textInputComponent.create()); + QVERIFY(textInput != 0); + + textInput->setPasswordCharacter("X"); + QSize contentsSize = textInput->contentsSize(); + textInput->setPasswordCharacter("."); + // QTBUG-12383 content is updated and redrawn + QVERIFY(contentsSize != textInput->contentsSize()); +} + void tst_qdeclarativetextinput::cursorDelegate() { QDeclarativeView* view = createView(SRCDIR "/data/cursorTest.qml"); -- cgit v0.12 From 63434c07fbe4e3d8735a9e28200ce9b3b121bec8 Mon Sep 17 00:00:00 2001 From: Oswald Buddenhagen Date: Thu, 12 Aug 2010 19:47:41 +0200 Subject: fix QMAKE_SUBSTITUTES with shadow builds still doesn't work for nested directories, but that's because fileFixify() is plain broken. on the way, remove a superfluous check: we know that the input file name ends with .in - three lines up we made sure it does. Reviewed-by: joerg --- qmake/generators/makefile.cpp | 6 +++--- tests/auto/qmake/testdata/substitutes/sub/test2.in | 1 + tests/auto/qmake/testdata/substitutes/test.in | 2 ++ tests/auto/qmake/testdata/substitutes/test.pro | 2 ++ tests/auto/qmake/testdata/substitutes_build/README | 1 + tests/auto/qmake/tst_qmake.cpp | 16 ++++++++++++++++ 6 files changed, 25 insertions(+), 3 deletions(-) create mode 100644 tests/auto/qmake/testdata/substitutes/sub/test2.in create mode 100644 tests/auto/qmake/testdata/substitutes/test.in create mode 100644 tests/auto/qmake/testdata/substitutes/test.pro create mode 100644 tests/auto/qmake/testdata/substitutes_build/README diff --git a/qmake/generators/makefile.cpp b/qmake/generators/makefile.cpp index 45a96f5..851e587 100644 --- a/qmake/generators/makefile.cpp +++ b/qmake/generators/makefile.cpp @@ -471,9 +471,9 @@ MakefileGenerator::init() subs.at(i).toLatin1().constData()); continue; } - QFile in(fileFixify(subs.at(i))), out(fileInfo(subs.at(i)).fileName()); - if(out.fileName().endsWith(".in")) - out.setFileName(out.fileName().left(out.fileName().length()-3)); + QFile in(fileFixify(subs.at(i))); + QFile out(fileFixify(subs.at(i).left(subs.at(i).length()-3), + qmake_getpwd(), Option::output_dir)); if(in.open(QFile::ReadOnly)) { QString contents; QStack state; diff --git a/tests/auto/qmake/testdata/substitutes/sub/test2.in b/tests/auto/qmake/testdata/substitutes/sub/test2.in new file mode 100644 index 0000000..78a6069 --- /dev/null +++ b/tests/auto/qmake/testdata/substitutes/sub/test2.in @@ -0,0 +1 @@ +heya diff --git a/tests/auto/qmake/testdata/substitutes/test.in b/tests/auto/qmake/testdata/substitutes/test.in new file mode 100644 index 0000000..2fa05e0 --- /dev/null +++ b/tests/auto/qmake/testdata/substitutes/test.in @@ -0,0 +1,2 @@ +test +tst diff --git a/tests/auto/qmake/testdata/substitutes/test.pro b/tests/auto/qmake/testdata/substitutes/test.pro new file mode 100644 index 0000000..5bce312 --- /dev/null +++ b/tests/auto/qmake/testdata/substitutes/test.pro @@ -0,0 +1,2 @@ +QMAKE_SUBSTITUTES += test.in +# doesn't work for the time being: sub/test2.in diff --git a/tests/auto/qmake/testdata/substitutes_build/README b/tests/auto/qmake/testdata/substitutes_build/README new file mode 100644 index 0000000..81dc596 --- /dev/null +++ b/tests/auto/qmake/testdata/substitutes_build/README @@ -0,0 +1 @@ +Placeholder file to ensure this directory exists diff --git a/tests/auto/qmake/tst_qmake.cpp b/tests/auto/qmake/tst_qmake.cpp index 5efe714..825e49b 100644 --- a/tests/auto/qmake/tst_qmake.cpp +++ b/tests/auto/qmake/tst_qmake.cpp @@ -90,6 +90,7 @@ private slots: void bundle_spaces(); #endif void includefunction(); + void substitutes(); private: TestCompiler test_compiler; @@ -477,6 +478,21 @@ void tst_qmake::includefunction() QVERIFY(test_compiler.commandOutput().contains(warningMsg)); } +void tst_qmake::substitutes() +{ + QString workDir = base_path + "/testdata/substitutes"; + QVERIFY( test_compiler.qmake( workDir, "test" )); + QVERIFY( test_compiler.exists( workDir, "test", Exe, "1.0.0" )); + //QVERIFY( test_compiler.exists( workDir, "sub/test2", Exe, "1.0.0" )); + QVERIFY( test_compiler.makeDistClean( workDir )); + + QString buildDir = base_path + "/testdata/substitutes_build"; + QVERIFY( test_compiler.qmake( workDir, "test", buildDir )); + QVERIFY( test_compiler.exists( buildDir, "test", Exe, "1.0.0" )); + //QVERIFY( test_compiler.exists( buildDir, "sub/test2", Exe, "1.0.0" )); + QVERIFY( test_compiler.makeDistClean( buildDir )); +} + QTEST_MAIN(tst_qmake) #include "tst_qmake.moc" -- cgit v0.12 From 2b5469fcb541fd0c37c04acbe1470228272f8adf Mon Sep 17 00:00:00 2001 From: Oswald Buddenhagen Date: Tue, 17 Aug 2010 11:57:58 +0200 Subject: exclude QtXmlPatterns from the completeness assessment that context is a *huge* collection of cryptic error messages, translation of which does not add too much value. so skip it. --- translations/check-ts.xq | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/translations/check-ts.xq b/translations/check-ts.xq index 2d6404c..1062e90 100644 --- a/translations/check-ts.xq +++ b/translations/check-ts.xq @@ -1,3 +1,3 @@ for $file in tokenize($files, codepoints-to-string(10)) - let $fresh := doc($file)/TS/context/message[not (translation/@type = 'obsolete')] + let $fresh := doc($file)/TS/context[not (name = 'QtXmlPatterns')]/message[not (translation/@type = 'obsolete')] return concat($file, ":", count($fresh/translation[not (@type = 'unfinished')]) * 100 idiv count($fresh)) -- cgit v0.12 From 40a2971d2ebe2b7409c13ab049ed26b249033d8e Mon Sep 17 00:00:00 2001 From: Tasuku Suzuki Date: Tue, 17 Aug 2010 13:34:10 +0200 Subject: Fix compilation: QT_NO_TEXTSTREAM Merge-request: 2450 Reviewed-by: Oswald Buddenhagen --- src/plugins/bearer/connman/qconnmanservice_linux.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/plugins/bearer/connman/qconnmanservice_linux.cpp b/src/plugins/bearer/connman/qconnmanservice_linux.cpp index eb88317..b15589e 100644 --- a/src/plugins/bearer/connman/qconnmanservice_linux.cpp +++ b/src/plugins/bearer/connman/qconnmanservice_linux.cpp @@ -1053,7 +1053,9 @@ bool QConnmanDeviceInterface::setProperty(const QString &name, const QDBusVarian { // QList args; +#ifndef QT_NO_TEXTSTREAM qWarning() << __FUNCTION__ << name << value.variant(); +#endif // args << qVariantFromValue(name); // args << qVariantFromValue(value); -- cgit v0.12 From 81644d683c0c8da3f14f162e31bc55038cb121d7 Mon Sep 17 00:00:00 2001 From: Thomas Zander Date: Tue, 17 Aug 2010 12:56:57 +0200 Subject: Fix memory leak in gesture manager If the user unregisters a recognizer before anyone ever used it we didn't delete it on application exit. This fix makes sure we do. Task: QTBUG-12845 Reviewed-by: Denis Dzyubenko --- src/gui/kernel/qgesturemanager.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/gui/kernel/qgesturemanager.cpp b/src/gui/kernel/qgesturemanager.cpp index fe9dd8a..e768a21 100644 --- a/src/gui/kernel/qgesturemanager.cpp +++ b/src/gui/kernel/qgesturemanager.cpp @@ -129,7 +129,12 @@ Qt::GestureType QGestureManager::registerGestureRecognizer(QGestureRecognizer *r void QGestureManager::unregisterGestureRecognizer(Qt::GestureType type) { QList list = m_recognizers.values(type); - m_recognizers.remove(type); + while (QGestureRecognizer *recognizer = m_recognizers.take(type)) { + if (!m_obsoleteGestures.contains(recognizer)) { + // inserting even an empty QSet will cause the recognizer to be deleted on destruction of the manager + m_obsoleteGestures.insert(recognizer, QSet()); + } + } foreach (QGesture *g, m_gestureToRecognizer.keys()) { QGestureRecognizer *recognizer = m_gestureToRecognizer.value(g); if (list.contains(recognizer)) { -- cgit v0.12 From 608ed55d87a714be9b0b9681345bd012b40db4e5 Mon Sep 17 00:00:00 2001 From: Richard Moe Gustavsen Date: Tue, 17 Aug 2010 14:37:32 +0200 Subject: Cocoa: add autotest to be more safe regarding child window stacking Autotests only. Use native events on mac to check that child windows stays on top of parent windows. Reviewed-by: prasanth --- tests/auto/macnativeevents/tst_macnativeevents.cpp | 80 ++++++++++++++++++++++ 1 file changed, 80 insertions(+) diff --git a/tests/auto/macnativeevents/tst_macnativeevents.cpp b/tests/auto/macnativeevents/tst_macnativeevents.cpp index ffd0596..ac7d661 100644 --- a/tests/auto/macnativeevents/tst_macnativeevents.cpp +++ b/tests/auto/macnativeevents/tst_macnativeevents.cpp @@ -67,6 +67,11 @@ private slots: void testDragWindow(); void testMouseEnter(); void testChildDialogInFrontOfModalParent(); +#ifdef QT_MAC_USE_COCOA + void testChildWindowInFrontOfParentWindow(); + void testChildToolWindowInFrontOfChildNormalWindow(); + void testChildWindowInFrontOfStaysOnTopParentWindow(); +#endif void testKeyPressOnToplevel(); }; @@ -308,6 +313,81 @@ void tst_MacNativeEvents::testChildDialogInFrontOfModalParent() QVERIFY(!child.isVisible()); } +#ifdef QT_MAC_USE_COCOA +void tst_MacNativeEvents::testChildWindowInFrontOfParentWindow() +{ + // Test that a child window always stacks in front of its parent window. + // Do this by first click on the parent, then on the child window button. + QWidget parent; + QPushButton child("a button", &parent); + child.setWindowFlags(Qt::Window); + connect(&child, SIGNAL(clicked()), &child, SLOT(close())); + parent.show(); + child.show(); + + QPoint parent_p = parent.geometry().bottomLeft() + QPoint(20, -20); + QPoint child_p = child.geometry().center(); + + NativeEventList native; + native.append(new QNativeMouseButtonEvent(parent_p, Qt::LeftButton, 1, Qt::NoModifier)); + native.append(new QNativeMouseButtonEvent(parent_p, Qt::LeftButton, 0, Qt::NoModifier)); + native.append(new QNativeMouseButtonEvent(child_p, Qt::LeftButton, 1, Qt::NoModifier)); + native.append(new QNativeMouseButtonEvent(child_p, Qt::LeftButton, 0, Qt::NoModifier)); + + native.play(); + QTest::qWait(100); + QVERIFY(!child.isVisible()); +} + +void tst_MacNativeEvents::testChildToolWindowInFrontOfChildNormalWindow() +{ + // Test that a child tool window always stacks in front of normal sibling windows. + // Do this by first click on the sibling, then on the tool window button. + QWidget parent; + QWidget normalChild(&parent, Qt::Window); + QPushButton toolChild("a button", &parent); + toolChild.setWindowFlags(Qt::Tool); + connect(&toolChild, SIGNAL(clicked()), &toolChild, SLOT(close())); + parent.show(); + normalChild.show(); + toolChild.show(); + + QPoint normalChild_p = normalChild.geometry().bottomLeft() + QPoint(20, -20); + QPoint toolChild_p = toolChild.geometry().center(); + + NativeEventList native; + native.append(new QNativeMouseButtonEvent(normalChild_p, Qt::LeftButton, 1, Qt::NoModifier)); + native.append(new QNativeMouseButtonEvent(normalChild_p, Qt::LeftButton, 0, Qt::NoModifier)); + native.append(new QNativeMouseButtonEvent(toolChild_p, Qt::LeftButton, 1, Qt::NoModifier)); + native.append(new QNativeMouseButtonEvent(toolChild_p, Qt::LeftButton, 0, Qt::NoModifier)); + + native.play(); + QTest::qWait(100); + QVERIFY(!toolChild.isVisible()); +} + +void tst_MacNativeEvents::testChildWindowInFrontOfStaysOnTopParentWindow() +{ + // Test that a child window stacks on top of a stays-on-top parent. + QWidget parent(0, Qt::WindowStaysOnTopHint); + QPushButton button("close", &parent); + button.setWindowFlags(Qt::Window); + connect(&button, SIGNAL(clicked()), &button, SLOT(close())); + parent.show(); + button.show(); + QPoint inside = button.geometry().center(); + + // Post a click on the button to close the child dialog: + NativeEventList native; + native.append(new QNativeMouseButtonEvent(inside, Qt::LeftButton, 1, Qt::NoModifier)); + native.append(new QNativeMouseButtonEvent(inside, Qt::LeftButton, 0, Qt::NoModifier)); + + native.play(); + QTest::qWait(100); + QVERIFY(!button.isVisible()); +} +#endif + void tst_MacNativeEvents::testKeyPressOnToplevel() { // Check that we receive keyevents for -- cgit v0.12 From ab97e11919927d38bfc2be990d2b4dd1327083ea Mon Sep 17 00:00:00 2001 From: Andreas Kling Date: Tue, 17 Aug 2010 15:15:31 +0200 Subject: qgrayraster: Remove unnecessary indirection in QT_FT_Outline_Decompose MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Since this function is only used inside qgrayraster.c, we can call the gray_* functions directly instead of going through function pointers. This allows inlining trivial methods like gray_line_to() et al. Reviewed-by: Samuel Rødal --- src/gui/painting/qgrayraster.c | 44 +++++++++--------------------------------- 1 file changed, 9 insertions(+), 35 deletions(-) diff --git a/src/gui/painting/qgrayraster.c b/src/gui/painting/qgrayraster.c index 539a33c..94039fb 100644 --- a/src/gui/painting/qgrayraster.c +++ b/src/gui/painting/qgrayraster.c @@ -1355,10 +1355,6 @@ /* */ /* outline :: A pointer to the source target. */ /* */ - /* func_interface :: A table of `emitters', i.e,. function pointers */ - /* called during decomposition to indicate path */ - /* operations. */ - /* */ /* user :: A typeless pointer which is passed to each */ /* emitter during the decomposition. It can be */ /* used to store the state during the */ @@ -1369,15 +1365,10 @@ /* */ static int QT_FT_Outline_Decompose( const QT_FT_Outline* outline, - const QT_FT_Outline_Funcs* func_interface, void* user ) { #undef SCALED -#if 0 -#define SCALED( x ) ( ( (x) << shift ) - delta ) -#else #define SCALED( x ) (x) -#endif QT_FT_Vector v_last; QT_FT_Vector v_control; @@ -1392,12 +1383,6 @@ int error; char tag; /* current point's state */ -#if 0 - int shift = func_interface->shift; - TPos delta = func_interface->delta; -#endif - - first = 0; for ( n = 0; n < outline->n_contours; n++ ) @@ -1451,7 +1436,7 @@ tags--; } - error = func_interface->move_to( &v_start, user ); + error = gray_move_to( &v_start, user ); if ( error ) goto Exit; @@ -1471,7 +1456,7 @@ vec.x = SCALED( point->x ); vec.y = SCALED( point->y ); - error = func_interface->line_to( &vec, user ); + error = gray_line_to( &vec, user ); if ( error ) goto Exit; continue; @@ -1498,7 +1483,7 @@ if ( tag == QT_FT_CURVE_TAG_ON ) { - error = func_interface->conic_to( &v_control, &vec, + error = gray_conic_to( &v_control, &vec, user ); if ( error ) goto Exit; @@ -1511,7 +1496,7 @@ v_middle.x = ( v_control.x + vec.x ) / 2; v_middle.y = ( v_control.y + vec.y ) / 2; - error = func_interface->conic_to( &v_control, &v_middle, + error = gray_conic_to( &v_control, &v_middle, user ); if ( error ) goto Exit; @@ -1520,7 +1505,7 @@ goto Do_Conic; } - error = func_interface->conic_to( &v_control, &v_start, + error = gray_conic_to( &v_control, &v_start, user ); goto Close; } @@ -1551,20 +1536,20 @@ vec.x = SCALED( point->x ); vec.y = SCALED( point->y ); - error = func_interface->cubic_to( &vec1, &vec2, &vec, user ); + error = gray_cubic_to( &vec1, &vec2, &vec, user ); if ( error ) goto Exit; continue; } - error = func_interface->cubic_to( &vec1, &vec2, &v_start, user ); + error = gray_cubic_to( &vec1, &vec2, &v_start, user ); goto Close; } } } /* close the contour with a line segment */ - error = func_interface->line_to( &v_start, user ); + error = gray_line_to( &v_start, user ); Close: if ( error ) @@ -1592,22 +1577,11 @@ static int gray_convert_glyph_inner( RAS_ARG ) { - static - const QT_FT_Outline_Funcs func_interface = - { - (QT_FT_Outline_MoveTo_Func) gray_move_to, - (QT_FT_Outline_LineTo_Func) gray_line_to, - (QT_FT_Outline_ConicTo_Func)gray_conic_to, - (QT_FT_Outline_CubicTo_Func)gray_cubic_to, - 0, - 0 - }; - volatile int error = 0; if ( qt_ft_setjmp( ras.jump_buffer ) == 0 ) { - error = QT_FT_Outline_Decompose( &ras.outline, &func_interface, &ras ); + error = QT_FT_Outline_Decompose( &ras.outline, &ras ); gray_record_cell( RAS_VAR ); } else -- cgit v0.12 From acfa3c743c23ca2443d618bda6f3c01f78777b77 Mon Sep 17 00:00:00 2001 From: Markus Goetz Date: Tue, 17 Aug 2010 16:31:14 +0200 Subject: Add tests/benchmarks/README With some information from the dev mailing list. Reviewed-by: Thiago --- tests/benchmarks/README | 81 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 81 insertions(+) create mode 100644 tests/benchmarks/README diff --git a/tests/benchmarks/README b/tests/benchmarks/README new file mode 100644 index 0000000..d437299 --- /dev/null +++ b/tests/benchmarks/README @@ -0,0 +1,81 @@ +The most reliable way of running benchmarks is to do it in an otherwise idle +system. On a busy system, the results will vary according to the other tasks +demanding attention in the system. + +We have managed to obtain quite reliable results by doing the following on +Linux (and you need root): + + - switching the scheduler to a Real-Time mode + - setting the processor affinity to one single processor + - disabling the other thread of the same core + +This should work rather well for CPU-intensive tasks. A task that is in Real- +Time mode will simply not be preempted by the OS. But if you make OS syscalls, +especially I/O ones, your task will be de-scheduled. Note that this includes +page faults, so if you can, make sure your benchmark's warmup code paths touch +most of the data. + +To do this you need a tool called schedtool (package schedtool), from +http://freequaos.host.sk/schedtool/ + +From this point on, we are using CPU0 for all tasks: + +If you have a Hyperthreaded multi-core processor (Core-i5 and Core-i7), you +have to disable the other thread of the same core as CPU0. To discover which +one it is: + +$ cat /sys/devices/system/cpu/cpu0/topology/thread_siblings_list + +This will print something like 0,4, meaning that CPUs 0 and 4 are sibling +threads on the same core. So we'll turn CPU 4 off: + +(as root) +# echo 0 > /sys/devices/system/cpu/cpu4/online + +To turn it back on, echo 1 into the same file. + +To run a task on CPU 0 exclusively, using FIFO RT priority 10, you run the +following: + +(as root) +# schedtool -F -p 10 -a 1 -e ./taskname + +For example: +# schedtool -F -p 10 -a 1 -e ./tst_bench_qstring -tickcounter + +Warning: if your task livelocks or takes far too long to complete, your system +may be unusable for a long time, especially if you don't have other cores to +run stuff on. To prevent that, run it before schedtool and time it. + +You can also limit the CPU time that the task is allowed to take. Run in the +same shell as you'll run schedtool: + +$ ulimit -s 300 +To limit to 300 seconds (5 minutes) + +If your task runs away, it will get a SIGXCPU after consuming 5 minutes of CPU +time (5 minutes running at 100%). + +If your app is multithreaded, you may want to give it more CPUs, like CPU0 and +CPU1 with -a 3 (it's a bitmask). + +For best results, you should disable ALL other cores and threads of the same +processor. The new Core-i7 have one processor with 4 cores, +each core can run 2 threads; the older Mac Pros have two processors with 4 +cores each. So on those Mac Pros, you'd disable cores 1, 2 and 3, while on the +Core-i7, you'll need to disable all other CPUs. + +However, disabling just the sibling thread seems to produce very reliable +results for me already, with variance often below 0.5% (even though there are +some measurable spikes). + +Other things to try: + +Running the benchmark with highest priority, i.e. "sudo nice -19" +usually produces stable results on some machines. If the benchmark also +involves displaying something on the screen (on X11), running it with +"-sync" is a must. Though, in that case the "real" cost is not correct, +but it is useful to discover regressions. + +Also; not many people know about ionice (1) + ionice - get/set program io scheduling class and priority -- cgit v0.12 From db41f54d5cfe9e1cfa13c78536718ca34f008284 Mon Sep 17 00:00:00 2001 From: Oswald Buddenhagen Date: Tue, 17 Aug 2010 16:46:21 +0200 Subject: make error messages consistent this re-uses an existing string and obsoletes another one, so it is ok during string freeze. --- tools/assistant/tools/assistant/main.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/assistant/tools/assistant/main.cpp b/tools/assistant/tools/assistant/main.cpp index 51ea9f9..02507ae 100644 --- a/tools/assistant/tools/assistant/main.cpp +++ b/tools/assistant/tools/assistant/main.cpp @@ -355,7 +355,7 @@ int main(int argc, char *argv[]) QHelpEngineCore cachedCollection(cachedCollectionFile); if (!cachedCollection.setupData()) { cmd.showMessage(QCoreApplication::translate("Assistant", - "Error reading collection file '%1': %2"). + "Error reading collection file '%1': %2."). arg(cachedCollectionFile). arg(cachedCollection.error()), true); return EXIT_FAILURE; -- cgit v0.12 From 5eaf1f41b17eb6f73420f1a9a5e48957015d2e4e Mon Sep 17 00:00:00 2001 From: Uwe Rathmann Date: Sat, 26 Jun 2010 14:34:49 +0200 Subject: Fixes QWS window decoration offset issues When using OpenGL ES in conjunction with Qt/Embedded, Q_BACKINGSTORE_SUBSURFACES is defined and the subsequent code path shared between this define and QWS defines results in window decoration offset errors. Merge-request: 714 Reviewed-by: Donald Carr --- src/gui/painting/qbackingstore.cpp | 9 ++++++++- src/gui/painting/qwindowsurface_qws.cpp | 6 +++++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/src/gui/painting/qbackingstore.cpp b/src/gui/painting/qbackingstore.cpp index 83751ed..446c867 100644 --- a/src/gui/painting/qbackingstore.cpp +++ b/src/gui/painting/qbackingstore.cpp @@ -353,8 +353,10 @@ void QWidgetBackingStore::beginPaint(QRegion &toClean, QWidget *widget, QWindowS dirtyOnScreen += toClean; #ifdef Q_WS_QWS +#ifndef Q_BACKINGSTORE_SUBSURFACES toClean.translate(tlwOffset); #endif +#endif #ifdef QT_NO_PAINT_DEBUG windowSurface->beginPaint(toClean); @@ -1294,7 +1296,12 @@ void QWidgetBackingStore::sync() #ifdef Q_BACKINGSTORE_SUBSURFACES QWindowSurface *subSurface = w->windowSurface(); BeginPaintInfo beginPaintInfo; - beginPaint(toBePainted, w, subSurface, &beginPaintInfo, false); + + QPoint off = w->mapTo(tlw, QPoint()); + toBePainted.translate(off); + beginPaint(toBePainted, w, subSurface, &beginPaintInfo, true); + toBePainted.translate(-off); + if (beginPaintInfo.nothingToPaint) continue; diff --git a/src/gui/painting/qwindowsurface_qws.cpp b/src/gui/painting/qwindowsurface_qws.cpp index a816ed2..170668b 100644 --- a/src/gui/painting/qwindowsurface_qws.cpp +++ b/src/gui/painting/qwindowsurface_qws.cpp @@ -882,7 +882,11 @@ void QWSMemorySurface::beginPaint(const QRegion &rgn) const QVector rects = rgn.rects(); const QColor blank = Qt::transparent; for (QVector::const_iterator it = rects.begin(); it != rects.end(); ++it) { - p.fillRect(*it, blank); + QRect r = *it; +#ifdef Q_BACKINGSTORE_SUBSURFACES + r.translate(painterOffset()); +#endif + p.fillRect(r, blank); } } QWSWindowSurface::beginPaint(rgn); -- cgit v0.12 From b2056bcd48aa2288f1879de4d0f53cff443e4b16 Mon Sep 17 00:00:00 2001 From: Donald Carr Date: Mon, 16 Aug 2010 23:38:18 +0000 Subject: Adjusted define styling Adjusted multi-line define to single conjugated define in order to conform to the rest of the modified file. --- src/gui/painting/qbackingstore.cpp | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/gui/painting/qbackingstore.cpp b/src/gui/painting/qbackingstore.cpp index 446c867..ac9b994 100644 --- a/src/gui/painting/qbackingstore.cpp +++ b/src/gui/painting/qbackingstore.cpp @@ -352,11 +352,9 @@ void QWidgetBackingStore::beginPaint(QRegion &toClean, QWidget *widget, QWindowS // Always flush repainted areas. dirtyOnScreen += toClean; -#ifdef Q_WS_QWS -#ifndef Q_BACKINGSTORE_SUBSURFACES +#if defined(Q_WS_QWS) && !defined(Q_BACKINGSTORE_SUBSURFACES) toClean.translate(tlwOffset); #endif -#endif #ifdef QT_NO_PAINT_DEBUG windowSurface->beginPaint(toClean); -- cgit v0.12 From 569b28760ba84a2cc5315bf06c173035dc14afc6 Mon Sep 17 00:00:00 2001 From: Richard Moe Gustavsen Date: Tue, 17 Aug 2010 17:30:34 +0200 Subject: Cocoa, Autotest: disable autotest that was added a bit premature The test is actually correct, but cannot be enabled before a second revision on the setStackingOrder function in qwidget_mac.mm has been rewritten to handle inter-child window stacking order Reviewed-by: prasanth --- tests/auto/macnativeevents/tst_macnativeevents.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/tests/auto/macnativeevents/tst_macnativeevents.cpp b/tests/auto/macnativeevents/tst_macnativeevents.cpp index ac7d661..d582417 100644 --- a/tests/auto/macnativeevents/tst_macnativeevents.cpp +++ b/tests/auto/macnativeevents/tst_macnativeevents.cpp @@ -69,7 +69,7 @@ private slots: void testChildDialogInFrontOfModalParent(); #ifdef QT_MAC_USE_COCOA void testChildWindowInFrontOfParentWindow(); - void testChildToolWindowInFrontOfChildNormalWindow(); +// void testChildToolWindowInFrontOfChildNormalWindow(); void testChildWindowInFrontOfStaysOnTopParentWindow(); #endif void testKeyPressOnToplevel(); @@ -339,6 +339,7 @@ void tst_MacNativeEvents::testChildWindowInFrontOfParentWindow() QVERIFY(!child.isVisible()); } +/* This test can be enabled once setStackingOrder has been fixed in qwidget_mac.mm void tst_MacNativeEvents::testChildToolWindowInFrontOfChildNormalWindow() { // Test that a child tool window always stacks in front of normal sibling windows. @@ -365,7 +366,7 @@ void tst_MacNativeEvents::testChildToolWindowInFrontOfChildNormalWindow() QTest::qWait(100); QVERIFY(!toolChild.isVisible()); } - +*/ void tst_MacNativeEvents::testChildWindowInFrontOfStaysOnTopParentWindow() { // Test that a child window stacks on top of a stays-on-top parent. -- cgit v0.12 From 749ad26d255327c9fa3fe857a30983cc6dfef0d9 Mon Sep 17 00:00:00 2001 From: Richard Moe Gustavsen Date: Tue, 17 Aug 2010 17:33:42 +0200 Subject: Cocoa: revert parts of cc6dc0aeefde881a95f5fea2b26f2f3d7bdc6e15 The reason is that we tried to fix the stacking order of child windows while we fixed a crash. But the patch turned out to break an auto-test Reviewed-by: prasanth --- src/gui/kernel/qwidget_mac.mm | 4 ---- 1 file changed, 4 deletions(-) diff --git a/src/gui/kernel/qwidget_mac.mm b/src/gui/kernel/qwidget_mac.mm index 4ed4ccc..1979c84 100644 --- a/src/gui/kernel/qwidget_mac.mm +++ b/src/gui/kernel/qwidget_mac.mm @@ -2799,9 +2799,7 @@ void QWidgetPrivate::setSubWindowStacking(bool set) if (set) { if (parent->isVisible()) { NSWindow *childwin = qt_mac_window_for(q); - int childLevel = [childwin level]; [qt_mac_window_for(parent) addChildWindow:childwin ordered:NSWindowAbove]; - [childwin setLevel:childLevel]; } } else { [qt_mac_window_for(parent) removeChildWindow:qt_mac_window_for(q)]; @@ -2815,9 +2813,7 @@ void QWidgetPrivate::setSubWindowStacking(bool set) if (child->isWindow() && child->testAttribute(Qt::WA_WState_Created) && child->isVisibleTo(q)) { if (set) { NSWindow *childwin = qt_mac_window_for(child); - int childLevel = [childwin level]; [qt_mac_window_for(q) addChildWindow:childwin ordered:NSWindowAbove]; - [childwin setLevel:childLevel]; } else { [qt_mac_window_for(q) removeChildWindow:qt_mac_window_for(child)]; } -- cgit v0.12 From 837b6bba916c39665884e4967d70808f863c4487 Mon Sep 17 00:00:00 2001 From: Benjamin Poulain Date: Tue, 17 Aug 2010 19:05:35 +0200 Subject: Fix the blending of ARGB_PM image when using palignr to load the data The data loaded for the first were incorrect because the offset was incorrect. The correct offset should be up to the alignment point. Instead of trying to load a temporary array, we just move one vector further since we know reading there is always safe. Reviewed-by: Andreas Kling --- src/gui/painting/qdrawhelper_ssse3.cpp | 20 +++++--------------- 1 file changed, 5 insertions(+), 15 deletions(-) diff --git a/src/gui/painting/qdrawhelper_ssse3.cpp b/src/gui/painting/qdrawhelper_ssse3.cpp index bc4a7eb8..9c02009 100644 --- a/src/gui/painting/qdrawhelper_ssse3.cpp +++ b/src/gui/painting/qdrawhelper_ssse3.cpp @@ -118,22 +118,12 @@ inline static void blend_pixel(quint32 &dst, const quint32 src) \ /* We use two vectors to extract the src: prevLoaded for the first pixels, lastLoaded for the current pixels. */\ __m128i srcVectorPrevLoaded;\ - if (minusOffsetToAlignSrcOn16Bytes <= prologLength) {\ - srcVectorPrevLoaded = _mm_load_si128((__m128i *)&src[x - minusOffsetToAlignSrcOn16Bytes]);\ - } else {\ - quint32 temp[4] Q_DECL_ALIGN(16);\ - switch (prologLength) {\ - case 3:\ - temp[1] = src[x - 3];\ - case 2:\ - temp[2] = src[x - 2];\ - case 1:\ - temp[3] = src[x - 1];\ - default:\ - break;\ - }\ - srcVectorPrevLoaded = _mm_load_si128((__m128i *)temp);\ + if (minusOffsetToAlignSrcOn16Bytes > prologLength) {\ + /* We go forward 4 pixels to avoid reading before src. */\ + for (; x < prologLength + 4; ++x)\ + blend_pixel(dst[x], src[x]); \ }\ + srcVectorPrevLoaded = _mm_load_si128((__m128i *)&src[x - minusOffsetToAlignSrcOn16Bytes]);\ const int palignrOffset = minusOffsetToAlignSrcOn16Bytes << 2;\ \ const __m128i alphaShuffleMask = _mm_set_epi8(0xff,15,0xff,15,0xff,11,0xff,11,0xff,7,0xff,7,0xff,3,0xff,3);\ -- cgit v0.12 From 401ff4b290fcff0ef599af5986bc0b7816380575 Mon Sep 17 00:00:00 2001 From: Joona Petrell Date: Wed, 18 Aug 2010 15:12:31 +1000 Subject: Add visible background element to declarative examples that didn't have any Invisible areas cause redraw artifacts with OpenVg paint engine. Task-number: Reviewed-by: Martin Jones --- examples/declarative/modelviews/package/view.qml | 3 +- examples/declarative/sqllocalstorage/hello.qml | 48 ++++++++++++---------- .../threading/threadedlistmodel/timedisplay.qml | 40 ++++++++++-------- 3 files changed, 51 insertions(+), 40 deletions(-) diff --git a/examples/declarative/modelviews/package/view.qml b/examples/declarative/modelviews/package/view.qml index 152881a..26230ef 100644 --- a/examples/declarative/modelviews/package/view.qml +++ b/examples/declarative/modelviews/package/view.qml @@ -40,7 +40,8 @@ import Qt 4.7 -Item { +Rectangle { + color: "white" width: 400 height: 200 diff --git a/examples/declarative/sqllocalstorage/hello.qml b/examples/declarative/sqllocalstorage/hello.qml index 421a74c..19b7378 100644 --- a/examples/declarative/sqllocalstorage/hello.qml +++ b/examples/declarative/sqllocalstorage/hello.qml @@ -40,32 +40,38 @@ //![0] import Qt 4.7 -Text { - text: "?" +Rectangle { + color: "white" + width: 200 + height: 100 + + Text { + text: "?" + anchors.horizontalCenter: parent.horizontalCenter + function findGreetings() { + var db = openDatabaseSync("QDeclarativeExampleDB", "1.0", "The Example QML SQL!", 1000000); - function findGreetings() { - var db = openDatabaseSync("QDeclarativeExampleDB", "1.0", "The Example QML SQL!", 1000000); + db.transaction( + function(tx) { + // Create the database if it doesn't already exist + tx.executeSql('CREATE TABLE IF NOT EXISTS Greeting(salutation TEXT, salutee TEXT)'); - db.transaction( - function(tx) { - // Create the database if it doesn't already exist - tx.executeSql('CREATE TABLE IF NOT EXISTS Greeting(salutation TEXT, salutee TEXT)'); + // Add (another) greeting row + tx.executeSql('INSERT INTO Greeting VALUES(?, ?)', [ 'hello', 'world' ]); - // Add (another) greeting row - tx.executeSql('INSERT INTO Greeting VALUES(?, ?)', [ 'hello', 'world' ]); + // Show all added greetings + var rs = tx.executeSql('SELECT * FROM Greeting'); - // Show all added greetings - var rs = tx.executeSql('SELECT * FROM Greeting'); - - var r = "" - for(var i = 0; i < rs.rows.length; i++) { - r += rs.rows.item(i).salutation + ", " + rs.rows.item(i).salutee + "\n" + var r = "" + for(var i = 0; i < rs.rows.length; i++) { + r += rs.rows.item(i).salutation + ", " + rs.rows.item(i).salutee + "\n" + } + text = r } - text = r - } - ) - } + ) + } - Component.onCompleted: findGreetings() + Component.onCompleted: findGreetings() + } } //![0] diff --git a/examples/declarative/threading/threadedlistmodel/timedisplay.qml b/examples/declarative/threading/threadedlistmodel/timedisplay.qml index 997f7a0..9fc3eb3 100644 --- a/examples/declarative/threading/threadedlistmodel/timedisplay.qml +++ b/examples/declarative/threading/threadedlistmodel/timedisplay.qml @@ -41,31 +41,35 @@ // ![0] import Qt 4.7 -ListView { +Rectangle { + color: "white" width: 200 height: 300 - model: listModel - delegate: Component { - Text { text: time } - } + ListView { - ListModel { id: listModel } + model: listModel + delegate: Component { + Text { text: time } + } - WorkerScript { - id: worker - source: "dataloader.js" - } + ListModel { id: listModel } + + WorkerScript { + id: worker + source: "dataloader.js" + } - Timer { - id: timer - interval: 2000; repeat: true - running: true - triggeredOnStart: true + Timer { + id: timer + interval: 2000; repeat: true + running: true + triggeredOnStart: true - onTriggered: { - var msg = {'action': 'appendCurrentTime', 'model': listModel}; - worker.sendMessage(msg); + onTriggered: { + var msg = {'action': 'appendCurrentTime', 'model': listModel}; + worker.sendMessage(msg); + } } } } -- cgit v0.12 From a082d8ee8d27aaa190d28c2493b8f0326e2c9724 Mon Sep 17 00:00:00 2001 From: Joona Petrell Date: Wed, 18 Aug 2010 15:22:36 +1000 Subject: Fix previous commit Task-number: Reviewed-by: Trust me --- examples/declarative/threading/threadedlistmodel/timedisplay.qml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/declarative/threading/threadedlistmodel/timedisplay.qml b/examples/declarative/threading/threadedlistmodel/timedisplay.qml index 9fc3eb3..d807955 100644 --- a/examples/declarative/threading/threadedlistmodel/timedisplay.qml +++ b/examples/declarative/threading/threadedlistmodel/timedisplay.qml @@ -47,7 +47,7 @@ Rectangle { height: 300 ListView { - + anchors.fill: parent model: listModel delegate: Component { Text { text: time } -- cgit v0.12 From cea26da032449d6eed252890721c230fb9ad8dd3 Mon Sep 17 00:00:00 2001 From: Jarek Kobus Date: Wed, 18 Aug 2010 10:47:03 +0200 Subject: Update Polish translations --- translations/designer_pl.ts | 1332 ---------------------- translations/qt_pl.ts | 2635 +------------------------------------------ 2 files changed, 19 insertions(+), 3948 deletions(-) diff --git a/translations/designer_pl.ts b/translations/designer_pl.ts index cadcc2b..59b5baf 100644 --- a/translations/designer_pl.ts +++ b/translations/designer_pl.ts @@ -4,27 +4,22 @@ AbstractFindWidget - &Previous &Poprzednie - &Next &NastÄ™pne - &Case sensitive UwzglÄ™dniaj &wielkość liter - Whole &words &CaÅ‚e sÅ‚owa - <img src=":/trolltech/shared/images/wrap.png">&nbsp;Search wrapped <img src=":/trolltech/shared/images/wrap.png">&nbsp;Przeszukano od poczÄ…tku @@ -32,17 +27,14 @@ AddLinkDialog - Insert Link Wstaw odsyÅ‚acz - Title: TytuÅ‚: - URL: Adres URL: @@ -50,7 +42,6 @@ AppFontDialog - Additional Fonts Dodatkowe czcionki @@ -58,37 +49,30 @@ AppFontManager - '%1' is not a file. '%1' nie jest plikiem. - The font file '%1' does not have read permissions. Plik z czcionkÄ… '%1' nie ma praw do odczytu. - The font file '%1' is already loaded. Plik z czcionkÄ… '%1' jest już wczytany. - The font file '%1' could not be loaded. Nie można wczytać pliku z czcionkÄ… %1. - '%1' is not a valid font id. '%1' nie jest poprawnym identyfikatorem czcionki. - There is no loaded font matching the id '%1'. Brak wczytanej czcionki o identyfikatorze '%1'. - The font '%1' (%2) could not be unloaded. Nie można usunąć czcionki '%1' (%2). @@ -96,52 +80,42 @@ AppFontWidget - Fonts Czcionki - Add font files Dodaj pliki z czcionkami - Remove current font file UsuÅ„ bieżący plik z czcionkÄ… - Remove all font files UsuÅ„ wszystkie pliki z czcionkami - Add Font Files Dodaj pliki z czcionkami - Font files (*.ttf) Pliki z czcionkami (*.ttf) - Error Adding Fonts BÅ‚Ä…d podczas dodawania czcionek - Error Removing Fonts BÅ‚Ä…d podczas usuwania czcionek - Remove Fonts UnuÅ„ czcionki - Would you like to remove all fonts? Czy chcesz usunąć wszystkie czcionki? @@ -149,12 +123,10 @@ AppearanceOptionsWidget - Form Formularz - User Interface Mode Tryb interfejsu użytkownika @@ -162,17 +134,14 @@ AssistantClient - Unable to send request: Assistant is not responding. Nie można wysÅ‚ac komendy. Asystent nie odpowiada. - The binary '%1' does not exist. Plik binarny '%1' nie istnieje. - Unable to launch assistant (%1). Nie można uruchomić asystenta (%1). @@ -180,92 +149,74 @@ BrushPropertyManager - No brush Brak szczotki - Solid Jednolity - Dense 1 GÄ™stość 1 - Dense 2 GÄ™stość 2 - Dense 3 GÄ™stość 3 - Dense 4 GÄ™stość 4 - Dense 5 GÄ™stość 5 - Dense 6 GÄ™stość 6 - Dense 7 GÄ™stość 7 - Horizontal Poziomo - Vertical Pionowo - Cross Krzyżyk - Backward diagonal Linie pochylone w prawo - Forward diagonal Linie pochylone w lewo - Crossing diagonal Linie krzyżujÄ…ce siÄ™ - Style Styl - Color Kolor - [%1, %2] [%1, %2] @@ -273,360 +224,277 @@ Command - - Change signal ZmieÅ„ sygnaÅ‚ - - Change slot ZmieÅ„ slot - Change signal-slot connection ZmieÅ„ poÅ‚Ä…czenie sygnaÅ‚u ze slotem - Change sender ZmieÅ„ nadawcÄ™ - Change receiver ZmieÅ„ odbiorcÄ™ - Add connection Dodaj poÅ‚Ä…czenie - Adjust connection Dopasuj poÅ‚Ä…czenie - Delete connections UsuÅ„ poÅ‚Ä…czenia - Change source ZmieÅ„ źródÅ‚o - Change target ZmieÅ„ przeznaczenie - Insert '%1' Wstaw '%1' - Raise '%1' PrzenieÅ› na wierzch '%1' - Lower '%1' PrzenieÅ› na spód '%1' - Delete '%1' UsuÅ„ '%1' - Reparent '%1' ZmieÅ„ rodzica '%1' - Promote to custom widget ZastÄ…p widżet - Demote from custom widget Przywróć do oryginalnego widżetu - Lay out using grid Rozmieść używajÄ…c siatki - Lay out vertically Rozmieść w pionie - Lay out horizontally Rozmieść w poziomie - Break layout UsuÅ„ rozmieszczenie - - - Move Page PrzenieÅ› stronÄ™ - - - - Delete Page UsuÅ„ stronÄ™ - - Page Strona - page strona - - - - Insert Page Wstaw stronÄ™ - Change Tab order ZmieÅ„ kolejność tabulacji - Create Menu Bar Utwórz pasek menu - Delete Menu Bar UsuÅ„ pasek menu - Create Status Bar Utwórz pasek stanu - Delete Status Bar UsuÅ„ pasek stanu - Add Tool Bar Dodaj pasek narzÄ™dzi - Add Dock Window Dodaj okno dokowalne - Adjust Size of '%1' Dopasuj rozmiar '%1' - Change Form Layout Item Geometry ZmieÅ„ geometriÄ™ elementu w formularzu - Change Layout Item Geometry ZmieÅ„ geometriÄ™ elementu w rozmieszczeniu - Change Table Contents ZmieÅ„ zawartość tabeli - Change Tree Contents ZmieÅ„ zawartość drzewa - - Add action Dodaj akcjÄ™ - - Remove action UsuÅ„ akcjÄ™ - Add menu Dodaj menu - Remove menu UsuÅ„ menu - Create submenu Utwórz podmenu - Delete Tool Bar UsuÅ„ pasek narzÄ™dzi - Set action text Ustaw tekst akcji - Insert action Wstaw akcjÄ™ - - Move action PrzenieÅ› akcjÄ™ - Change Title ZmieÅ„ tytuÅ‚ - Insert Menu Wstaw menu - Change signals/slots ZmieÅ„ sygnaÅ‚y/sloty - Delete Subwindow UsuÅ„ podokno - Insert Subwindow Wstaw podokno - subwindow podokno - Subwindow Podokno - Change Z-order of '%1' ZmieÅ„ porzÄ…dek gÅ‚Ä™bokoÅ›ci (Z-order) dla '%1' - Simplify Grid Layout Uprość rozmieszczenie w siatce - Create button group Utwórz grupÄ™ przycisków - Break button group UsuÅ„ grupÄ™ przycisków - Break button group '%1' UsuÅ„ grupÄ™ przycisków '%1' - Add buttons to group Dodaj przyciski do grupy - - Add '%1' to '%2' Command description for adding buttons to a QButtonGroup Dodaj '%1' do '%2' - Remove buttons from group UsuÅ„ przyciski z grupy - Remove '%1' from '%2' Command description for removing buttons from a QButtonGroup UsuÅ„ '%1' z '%2' - Morph %1/'%2' into %3 MorphWidgetCommand description Przekształć %1/%2 w %3 - Change layout of '%1' from %2 to %3 ZmieÅ„ rozmieszczenie widżetu '%1' z %2 na %3 - Change script ZmieÅ„ skrypt - Changed '%1' of '%2' ZmieÅ„ '%1' w '%2' - Changed '%1' of %n objects Zmieniono '%1' w %n obiekcie @@ -635,12 +503,10 @@ - Reset '%1' of '%2' Przywróć domyÅ›lnÄ… wartość '%1' w '%2' - Reset '%1' of %n objects Przywrócono domyÅ›lnÄ… wartość '%1' w '%n' obiekcie @@ -649,12 +515,10 @@ - Add dynamic property '%1' to '%2' Dodaj dynamicznÄ… wÅ‚aÅ›ciwość '%1' do '%2' - Add dynamic property '%1' to %n objects Dodaj dynamicznÄ… wÅ‚aÅ›ciwość '%1' do %n obiektu @@ -663,12 +527,10 @@ - Remove dynamic property '%1' from '%2' UsuÅ„ dynamicznÄ… wÅ‚aÅ›ciwość '%1' z '%2' - Remove dynamic property '%1' from %n objects UsuÅ„ dynamicznÄ… wÅ‚aÅ›ciwość '%1' z %n obiektu @@ -680,22 +542,18 @@ ConnectDialog - Configure Connection Skonfiguruj poÅ‚Ä…czenie - GroupBox GroupBox - Edit... Edycja... - Show signals and slots inherited from QWidget Pokaż sygnaÅ‚y i sloty klasy QWidget @@ -703,17 +561,14 @@ ConnectionDelegate - <object> <obiekt> - <signal> <sygnaÅ‚> - <slot> <slot> @@ -721,19 +576,16 @@ DPI_Chooser - Standard (96 x 96) Embedded device standard screen resolution Standardowa (96 x 96) - Greenphone (179 x 185) Embedded device screen resolution Greenphone'a (179 x 185) - High (192 x 192) Embedded device high definition screen resolution Wysoka (192 x 192) @@ -742,89 +594,72 @@ Designer - Qt Designer Qt Designer - Custom Widgets WÅ‚asne widżety - Promoted Widgets ZastÄ™pcze widżety - Unable to launch %1. Nie można uruchomić %1. - %1 timed out. %1 przekroczony czas operacji. - This file cannot be read because it was created using %1. Nie można odczytać pliku ponieważ zostaÅ‚ utworzony przy użyciu %1. - This file cannot be read because the extra info extension failed to load. Nie można odczytać pliku ponieważ dodatkowe informacje nie mogÅ‚y zostać zaÅ‚adowane. - The converted file could not be read. Nie można odczytać skonwertowanego pliku. - Invalid UI file: The root element <ui> is missing. Niepoprawny plik UI: brak głównego elementu <ui>. - An error has occurred while reading the UI file at line %1, column %2: %3 WystÄ…piÅ‚ bÅ‚Ä…d podczas czytania zawartoÅ›ci pliku UI, linia %1, kolumna %2: %3 - This file was created using Designer from Qt-%1 and cannot be read. Ten plik zostaÅ‚ utworzony za pomocÄ… Qt Designer w wersji %1 i nie można go odczytać. - This file contains top level spacers.<br>They have <b>NOT</b> been saved into the form. Ten plik zawiera dystansy na najwyższym poziomie.<br><b>NIE</b> zostaÅ‚y one jednak zachowane w pliku. - Perhaps you forgot to create a layout? Możliwe że zapomniaÅ‚eÅ› utworzyć rozmieszczenia? - This file was created using Designer from Qt-%1 and will be converted to a new form by Qt Designer. Ten plik zostaÅ‚ utworzony za pomocÄ… Qt Designer w wersji %1 i bÄ™dzie skonwertowany przez Qt Designer'a do nowego formularza. - The old form has not been touched, but you will have to save the form under a new name. Stary formularz nie byÅ‚ zmieniony, ale nowy bÄ™dzie musiaÅ‚ być zapisany pod nowÄ… nazwÄ…. - This file was created using Designer from Qt-%1 and could not be read: %2 Ten plik zostaÅ‚ utworzony za pomocÄ… Qt Designer w wersji %1 i nie można go odczytać. %2 - Please run it through <b>uic3&nbsp;-convert</b> to convert it to Qt-4's ui format. Uruchom go przez <b>uic3&nbsp;-convert</b> aby skonwertować do formatu Qt-4. @@ -832,12 +667,10 @@ DesignerMetaEnum - %1 is not a valid enumeration value of '%2'. %1 nie jest poprawnÄ… wartoÅ›ciÄ… typu wyliczeniowego '%2'. - '%1' could not be converted to an enumeration value of type '%2'. Nie można skonwertować '%1' do wartoÅ›ci typu wyliczeniowego '%2'. @@ -845,7 +678,6 @@ DesignerMetaFlags - '%1' could not be converted to a flag value of type '%2'. Nie można skonwertować '%1' do wartoÅ›ci typu flaga '%2'. @@ -853,13 +685,11 @@ DeviceProfile - '%1' is not a number. Reading a number for an embedded device profile '%1' nie jest liczbÄ…. - An invalid tag <%1> was encountered. Napotkano niepoprawny tag <%1>. @@ -867,27 +697,22 @@ DeviceProfileDialog - &Family &Rodzina - &Point Size &Wielkość punktu - Style Styl - Device DPI Rozdzielczość urzÄ…dzenia - Name Nazwa @@ -895,57 +720,46 @@ DeviceSkin - The image file '%1' could not be loaded. Nie można wczytać pliku z obrazkiem %1. - The skin directory '%1' does not contain a configuration file. Katalog ze skórkami (skin) '%1' nie zawiera pliku konfiguracyjnego. - The skin configuration file '%1' could not be opened. Nie można otworzyć pliku z konfiguracjÄ… skórki (skin) '%1'. - Syntax error: %1 BÅ‚Ä…d skÅ‚adni: %1 - The skin cursor image file '%1' does not exist. Plik z obrazkiem kursora '%1' dla skórki (skin) nie istnieje. - Syntax error in area definition: %1 BÅ‚Ä…d skÅ‚adni w definicji obszaru: %1 - Mismatch in number of areas, expected %1, got %2. Niezgodność w iloÅ›ci obszarów, spodziewano siÄ™ %1, otrzymano %2. - The skin configuration file '%1' could not be read: %2 Nie można odczytać pliku z konfiguracjÄ… skórki (skin) '%1', powód: %2 - The skin "up" image file '%1' does not exist. Plik z obrazkiem "do góry" '%1' dla skórki (skin) nie istnieje. - The skin "down" image file '%1' does not exist. Plik z obrazkiem "w dół" '%1' dla skórki (skin) nie istnieje. - The skin "closed" image file '%1' does not exist. Plik z obrazkiem "zamkniÄ™te" '%1' dla skórki (skin) nie istnieje. @@ -953,7 +767,6 @@ EmbeddedOptionsControl - <html><table><tr><td><b>Font</b></td><td>%1, %2</td></tr><tr><td><b>Style</b></td><td>%3</td></tr><tr><td><b>Resolution</b></td><td>%4 x %5</td></tr></table></html> Format embedded device profile description <html><table><tr><td><b>Font</b></td><td>%1, %2</td></tr><tr><td><b>Styl</b></td><td>%3</td></tr><tr><td><b>Rozdzielczość</b></td><td>%4 x %5</td></tr></table></html> @@ -962,13 +775,11 @@ EmbeddedOptionsPage - Embedded Design Tab in preferences dialog Projekt dla urzÄ…dzeÅ„ specjalizowanych - Device Profiles EmbeddedOptionsControl group box" Profile urzÄ…dzeÅ„ @@ -977,27 +788,22 @@ FontPanel - Font Czcionka - &Writing system Sys&tem pisania - &Family &Rodzina - &Style &Styl - &Point size &Wielkość punktu @@ -1005,22 +811,18 @@ FontPropertyManager - PreferDefault Preferuj domyÅ›lny - NoAntialias Brak antyaliasingu - PreferAntialias Preferuj antyaliasing - Antialiasing Antyaliasing @@ -1028,7 +830,6 @@ FormBuilder - Invalid stretch value for '%1': '%2' Parsing layout stretch values ---------- @@ -1038,7 +839,6 @@ Parsing layout stretch values Niepoprawna wartość rozciÄ…gniecia dla '%1': '%2' - Invalid minimum size for '%1': '%2' Parsing grid layout minimum size values ---------- @@ -1051,28 +851,23 @@ Parsing grid layout minimum size values FormEditorOptionsPage - %1 % %1 % - Preview Zoom PowiÄ™kszanie podglÄ…du - Default Zoom DomyÅ›lne powiÄ™kszenie - Forms Tab in preferences dialog Formularze - Default Grid DomyÅ›lna siatka @@ -1080,37 +875,30 @@ Parsing grid layout minimum size values FormLayoutRowDialog - Add Form Layout Row Dodaj wiersz do formularza - &Label text: Text &etykiety: - Field &type: &Typ pola: - &Field name: Nazwa &pola: - &Buddy: Etykieta &skojarzona: - &Row: &Wiersz: - Label &name: &Nazwa etykiety: @@ -1118,12 +906,10 @@ Parsing grid layout minimum size values FormWindow - Unexpected element <%1> Niespodziewany element <%1> - Error while pasting clipboard contents at line %1, column %2: %3 BÅ‚Ä…d podczas wklejania zawartoÅ›ci schowka, linia %1, kolumna %2: %3 @@ -1131,62 +917,50 @@ Parsing grid layout minimum size values FormWindowSettings - Form Settings Ustawienia formularza - &Pixmap Function Funkcja ustawiania &pixmapy - &Include Hints Dodatkowe pliki &nagłówkowe - Embedded Design Projekt dla urzÄ…dzeÅ„ specjalizowanych - &Author &Autor - Layout &Default &Rozmieszczenie domyÅ›lne - &Spacing: &OdstÄ™py: - &Margin: &Marginesy: - &Layout Function Funkcja &rozmieszczania widżetów - Ma&rgin: Ma&rginesy: - Spa&cing: Od&stÄ™py: - Grid Siatka @@ -1194,7 +968,6 @@ Parsing grid layout minimum size values IconSelector - All Pixmaps ( Wszystkie pixmapy ( @@ -1202,7 +975,6 @@ Parsing grid layout minimum size values ItemPropertyBrowser - XX Icon Selected off Sample string to determinate the width for the first column of the list item property browser XX ikona wybrana wyÅ‚Ä…czona @@ -1211,33 +983,27 @@ Parsing grid layout minimum size values MainWindowBase - Main Not currently used (main tool bar) Główny - File Plik - Edit Edycja - Tools NarzÄ™dzia - Form Formularz - Qt Designer Qt Designer @@ -1245,52 +1011,42 @@ Parsing grid layout minimum size values NewForm - New Form Nowy formularz - &Open... &Otwórz... - C&reate &Utwórz - &Close Za&mknij - Show this Dialog on Startup Pokazuj to okno przy uruchamianiu - Recent Ostatnie - &Recent Forms Os&tatnio edytowane formularze - Read error BÅ‚Ä…d odczytu - A temporary form file could not be created in %1. Nie można utworzyć pliku z tymczasowym formularzem w %1. - The temporary form file %1 could not be written. Nie można zapisać pliku z tymczasowym formularzem w %1. @@ -1298,22 +1054,18 @@ Parsing grid layout minimum size values ObjectInspectorModel - Object Obiekt - Class Klasa - separator separator - <noname> <brak_nazwy> @@ -1321,12 +1073,10 @@ Parsing grid layout minimum size values ObjectNameDialog - Change Object Name ZmieÅ„ nazwÄ™ obiektu - Object Name Nazwa obiektu @@ -1334,12 +1084,10 @@ Parsing grid layout minimum size values PluginDialog - Plugin Information Informacje o wtyczkach - 1 1 @@ -1347,7 +1095,6 @@ Parsing grid layout minimum size values PreferencesDialog - Preferences Ustawienia @@ -1355,32 +1102,26 @@ Parsing grid layout minimum size values PreviewConfigurationWidget - Form Formularz - Print/Preview Configuration Konfiguracja wydruku/podglÄ…du - Style Styl - Style sheet Arkusz stylu - ... ... - Device skin Skórka (skin) urzÄ…dzenia @@ -1388,7 +1129,6 @@ Parsing grid layout minimum size values PromotionModel - Not used Usage of promoted widgets Nie używana @@ -1397,8 +1137,6 @@ Parsing grid layout minimum size values Q3WizardContainer - - Page Strona @@ -1406,59 +1144,48 @@ Parsing grid layout minimum size values QAbstractFormBuilder - Unexpected element <%1> Niespodziewany element <%1> - An error has occurred while reading the UI file at line %1, column %2: %3 WystÄ…piÅ‚ bÅ‚Ä…d podczas czytania zawartoÅ›ci pliku ui, linia %1, kolumna %2: %3 - Invalid UI file: The root element <ui> is missing. Niepoprawny plik UI: brak głównego elementu <ui>. - The creation of a widget of the class '%1' failed. Utworzenie widżetu klasy '%1' nie powiodÅ‚o siÄ™. - Attempt to add child that is not of class QWizardPage to QWizard. Próba dodania potomka który nie jest klasy QWizardPage do QWizard. - Attempt to add a layout to a widget '%1' (%2) which already has a layout of non-box type %3. This indicates an inconsistency in the ui-file. Próba dodania rozmieszczenia do widżetu '%1' (%2) który posiada już niezarzÄ…dzane rozmieszczenie typu %3. To wskazuje na niespójność w pliku ui. - Empty widget item in %1 '%2'. Pusty element w %1 '%2'. - Flags property are not supported yet. WÅ‚aÅ›ciwoÅ›ci typu flaga nie sÄ… jeszcze obsÅ‚ugiwane. - While applying tab stops: The widget '%1' could not be found. Podczas przypisywania kolejnoÅ›ci tabulacji: widżet '%1' nie zostaÅ‚ znaleziony. - Invalid QButtonGroup reference '%1' referenced by '%2'. Niepoprawny odnoÅ›nik QButtonGroup '%1', użyty w '%2'. - This version of the uitools library is linked without script support. Ta wersja biblioteki uitools nie zawiera obsÅ‚ugi skryptów. @@ -1466,12 +1193,10 @@ To wskazuje na niespójność w pliku ui. QAxWidgetPlugin - ActiveX control Kontrolka ActiveX - ActiveX control widget Widżet z kontrolkÄ… ActiveX @@ -1479,22 +1204,18 @@ To wskazuje na niespójność w pliku ui. QAxWidgetTaskMenu - Set Control Ustaw kontrolkÄ™ - Reset Control Przywróć pustÄ… zawartość kontrolce - Licensed Control Kontrolka licencjonowana - The control requires a design-time license Kontrolka wymaga licencji podczas projektowania @@ -1502,67 +1223,54 @@ To wskazuje na niespójność w pliku ui. QCoreApplication - %1 is not a promoted class. %1 nie jest klasÄ… zastÄ™pczÄ…. - The base class %1 is invalid. Klasa podstawowa %1 jest niewÅ‚aÅ›ciwa. - The class %1 already exists. Klasa %1 już istnieje. - Promoted Widgets ZastÄ™pcze widżety - The class %1 cannot be removed Nie można usunąć klasy %1 - The class %1 cannot be removed because it is still referenced. Nie można usunąć klasy %1 ponieważ w dalszym ciÄ…gu sÄ… do niej odwoÅ‚ania. - The class %1 cannot be renamed Nie można zmienić nazwy klasy %1 - The class %1 cannot be renamed to an empty name. Nie można zmienić nazwy klasy %1 na pustÄ… nazwÄ™. - There is already a class named %1. Istnieje już klasa o nazwie %1. - Cannot set an empty include file. Nie można ustawić pustego pliku nagłówkowego. - Exception at line %1: %2 WyjÄ…tek w linii %1: %2 - Unknown error Nieznany bÅ‚Ä…d - An error occurred while running the script for %1: %2 Script: %3 WystÄ…piÅ‚ bÅ‚Ä…d podczas uruchamiana skryptu dla %1: %2 @@ -1572,17 +1280,14 @@ Skrypt: %3 QDesigner - %1 - warning %1 - ostrzeżenie - Qt Designer Qt Designer - This application cannot be used for the Console edition of Qt Nie można użyć tej aplikacji w wydaniu Qt Console @@ -1590,105 +1295,82 @@ Skrypt: %3 QDesignerActions - Clear &Menu Wyczyść &menu - &Quit Za&koÅ„cz - Edit Widgets Modyfikuj widżety - CTRL+R CTRL+R - &Minimize &Zminimalizuj - CTRL+M CTRL+M - Bring All to Front Wszystkie na wierzch - Additional Fonts... Dodatkowe czcionki... - Qt Designer &Help Pomo&c Qt Designer - Current Widget Help Pomoc dla bieżącego widżetu - What's New in Qt Designer? Co nowego w Qt Designer? - About Plugins Informacje o wtyczkach - - About Qt Designer Informacje o Qt Designer - About Qt Informacje o Qt - &Recent Forms Os&tatnio edytowane formularze - - Open Form Otwórz formularz - Designer Projektant - Feature not implemented yet! Cecha nie zaimplementowana! - - Save Form? Zachować formularz? - The file %1 could not be opened. Reason: %2 Would you like to retry or select a different file? @@ -1697,145 +1379,114 @@ Powód: %2 Czy chcesz spróbować ponownie lub zmienić nazwÄ™ pliku? - Select New File Wybierz nowy plik - %1 already exists. Do you want to replace it? %1 już istnieje. Czy chcesz go zastÄ…pić? - &Close Preview Za&mknij podglÄ…d - Preferences... Ustawienia... - CTRL+SHIFT+S CTRL+SHIFT+S - - - Designer UI files (*.%1);;All Files (*) Pliki Designer UI (*.%1);;Wszystkie pliki (*) - Saved %1. Formularz %1 zachowany pomyÅ›lnie. - Read error BÅ‚Ä…d odczytu - %1 Do you want to update the file location or generate a new form? %1 Czy chcesz zaktualizować poÅ‚ożenie pliku lub wygenerować nowy formularz? - &Update &Uaktualnij - &New Form Nowy &formularz - Could not open file Nie można otworzyć pliku - Could not write file Nie można zapisać pliku - &New... &Nowy... - &Open... &Otwórz... - &Save &Zachowaj - Save &As... Zachowaj j&ako... - Save A&ll Zachowaj &wszystko - Save As &Template... Zachowaj jako &szablon... - - &Close Za&mknij - Save &Image... Zachowaj o&brazek... - &Print... &Drukuj... - View &Code... Pokaż &kod... - - Save Form As Zachowaj formularz jako - Preview failed Nie można utworzyć podglÄ…du - Code generation failed Nie można wygenerować kodu - It was not possible to write the entire file %1 to disk. Reason:%2 Would you like to retry? @@ -1844,60 +1495,46 @@ Powód:%2 Czy chcesz spróbować ponownie? - - The backup file %1 could not be written. Nie można zapisać pliku zapasowego %1. - The backup directory %1 could not be created. Nie można utworzyć katalogu %1 na pliki zapasowe. - The temporary backup directory %1 could not be created. Nie można utworzyć tymczasowego katalogu %1 na pliki zapasowe. - Image files (*.%1) Pliki z obrazkami (*.%1) - - Save Image Zachowaj obrazek - The file %1 could not be written. Nie można zapisać pliku %1. - - Assistant Assistant - Saved image %1. Zachowano obrazek %1. - Please close all forms to enable the loading of additional fonts. Zamknij wszystkie formularze aby umożliwić wczytanie dodatkowych czcionek. - Printed %1. Wydrukowano %1. - ALT+CTRL+S ALT+CTRL+S @@ -1905,7 +1542,6 @@ Czy chcesz spróbować ponownie? QDesignerAppearanceOptionsPage - Appearance Tab in preferences dialog WyglÄ…d @@ -1914,17 +1550,14 @@ Czy chcesz spróbować ponownie? QDesignerAppearanceOptionsWidget - Docked Window Okna dokowalne - Multiple Top-Level Windows Wiele okien głównych - Toolwindow Font Czcionka okna narzÄ™dzi @@ -1932,22 +1565,18 @@ Czy chcesz spróbować ponownie? QDesignerAxWidget - Reset control Przywróć pustÄ… zawartość kontrolce - Set control Ustaw kontrolkÄ™ - Control loaded Kontrolka wczytana - A COM exception occurred when executing a meta call of type %1, index %2 of "%3". WystÄ…piÅ‚ wyjÄ…tek COM podczas wykonywania metody typu %1 o indeksie %2 w "%3". @@ -1955,17 +1584,14 @@ Czy chcesz spróbować ponownie? QDesignerFormBuilder - Script errors occurred: WystÄ…piÅ‚y bÅ‚Ä™dy w skrypcie: - The preview failed to build. Nie można utworzyć podglÄ…du. - Designer Projektant @@ -1973,22 +1599,18 @@ Czy chcesz spróbować ponownie? QDesignerFormWindow - %1 - %2[*] %1 - %2[*] - Save Form? Zachować formularz? - Do you want to save the changes to this document before closing? Czy chcesz zachować zmiany w tym dokumencie przed zamkniÄ™ciem? - If you don't save, your changes will be lost. JeÅ›li ich nie zachowasz, zostanÄ… utracone. @@ -1996,38 +1618,30 @@ Czy chcesz spróbować ponownie? QDesignerMenu - Type Here Wpisz tutaj - Add Separator Dodaj separator - Remove action '%1' UsuÅ„ akcjÄ™ '%1' - Insert action Wstaw akcjÄ™ - - Add separator Dodaj separator - Insert separator Wstaw separator - Remove separator UsuÅ„ separator @@ -2035,22 +1649,18 @@ Czy chcesz spróbować ponownie? QDesignerMenuBar - Type Here Wpisz tutaj - Remove Menu '%1' UsuÅ„ menu '%1' - Remove Menu Bar UsuÅ„ pasek menu - Menu Menu @@ -2058,37 +1668,30 @@ Czy chcesz spróbować ponownie? QDesignerPluginManager - An XML error was encountered when parsing the XML of the custom widget %1: %2 WystÄ…piÅ‚ bÅ‚Ä…d XML podczas przetwarzania kodu XML dla wÅ‚asnego widżetu %1: %2 - A required attribute ('%1') is missing. Brak wymaganego atrybutu "%1". - An invalid property specification ('%1') was encountered. Supported types: %2 WystÄ…piÅ‚a bÅ‚Ä™dna specyfikacja wÅ‚aÅ›ciwoÅ›ci "%1". ObsÅ‚ugiwane typy: %2 - '%1' is not a valid string property specification. "%1" nie jest poprawnÄ… specyfikacjÄ… wÅ‚aÅ›ciwoÅ›ci typu ciÄ…g. - The XML of the custom widget %1 does not contain any of the elements <widget> or <ui>. Kod XML wÅ‚asnego widżetu %1 nie zawiera żadnego elementu <widget> ani <ui>. - The class attribute for the class %1 is missing. Atrybut "class" dla klasy %1 nie istnieje. - The class attribute for the class %1 does not match the class name %2. Atrybut "class" dla klasy %1 nie odpowiada nazwie klasy %2. @@ -2096,7 +1699,6 @@ Czy chcesz spróbować ponownie? QDesignerPropertySheet - Dynamic Properties Dynamiczne wÅ‚aÅ›ciwoÅ›ci @@ -2104,31 +1706,26 @@ Czy chcesz spróbować ponownie? QDesignerResource - The layout type '%1' is not supported, defaulting to grid. Rozmieszczenie typu '%1' nie jest obsÅ‚ugiwane. BÄ™dzie ono zastÄ…pione siatkÄ…. - The container extension of the widget '%1' (%2) returned a widget not managed by Designer '%3' (%4) when queried for page #%5. Container pages should only be added by specifying them in XML returned by the domXml() method of the custom widget. Rozszerzenie pojemnikowe widżetu "%1" (%2) zwróciÅ‚o widżet który nie jest zarzÄ…dzany przez Designera "%3" (%4) podczas pytania o stronÄ™ #%5. Strony pojemników powinny być dodawane jedynie poprzez wyspecyfikowanie ich w XML zwróconym przez metodÄ™ domXml() w widżecie użytkownika. - Unexpected element <%1> Parsing clipboard contents Niespodziewany element <%1> - Error while pasting clipboard contents at line %1, column %2: %3 Parsing clipboard contents BÅ‚Ä…d podczas wklejania zawartoÅ›ci schowka, linia %1, kolumna %2: %3 - Error while pasting clipboard contents: The root element <ui> is missing. Parsing clipboard contents BÅ‚Ä…d podczas wklejania zawartoÅ›ci schowka: Brak głównego elementu <ui>. @@ -2137,12 +1734,10 @@ Strony pojemników powinny być dodawane jedynie poprzez wyspecyfikowanie ich w QDesignerSharedSettings - The template path %1 could not be created. Nie można utworzyć Å›cieżki %1 dla szablonów. - An error has been encountered while parsing device profile XML: %1 WystÄ…piÅ‚ bÅ‚Ä…d podczas przetwarzania kodu XML dla profilu urzÄ…dzenia: %1 @@ -2150,32 +1745,26 @@ Strony pojemników powinny być dodawane jedynie poprzez wyspecyfikowanie ich w QDesignerToolWindow - Property Editor Edytor wÅ‚aÅ›ciwoÅ›ci - Action Editor Edytor akcji - Object Inspector Hierarchia obiektów - Resource Browser PrzeglÄ…darka zasobów - Signal/Slot Editor Edytor sygnałów/slotów - Widget Box Panel widżetów @@ -2183,97 +1772,78 @@ Strony pojemników powinny być dodawane jedynie poprzez wyspecyfikowanie ich w QDesignerWorkbench - &File &Plik - F&orm &Formularz - Preview in PodglÄ…d w stylu - &View &Widok - &Settings U&stawienia - Widget Box Panel widżetów - The last session of Designer was not terminated correctly. Backup files were left behind. Do you want to load them? Designer nie zostaÅ‚ poprawnie zamkniÄ™ty w trakcie ostatniej sesji. IstniejÄ… pliki zapasowe, czy chcesz je otworzyć? - The file <b>%1</b> is not a valid Designer UI file. Plik <b>%1</b> nie jest poprawnym plikiem UI Designera. - &Window &Okno - &Help Pomo&c - Edit Edycja - Toolbars Paski narzÄ™dzi - Save Forms? Zachować formularze? - If you do not review your documents, all your changes will be lost. JeÅ›li nie przejrzysz dokumentów, wszystkie zmiany zostanÄ… utracone. - Review Changes PrzeglÄ…dnij zmiany - Discard Changes Odrzuć zmiany - Backup Information Informacja o kopiach zapasowych - The file <b>%1</b> could not be opened. Nie można otworzyć pliku <b>%1</b>. - There are %n forms with unsaved changes. Do you want to review these changes before quitting? Jest %n formularz z niezachowanymi zmianami. Czy chcesz przejrzeć zmiany przed wyjÅ›ciem z programu? @@ -2285,7 +1855,6 @@ Strony pojemników powinny być dodawane jedynie poprzez wyspecyfikowanie ich w QFormBuilder - An empty class name was passed on to %1 (object name: '%2'). Empty class name passed to widget factory method ---------- @@ -2295,47 +1864,38 @@ Empty class name passed to widget factory method Pusta nazwa klasy zostaÅ‚a przekazana do %1 (nazwa obiektu: '%2'). - QFormBuilder was unable to create a custom widget of the class '%1'; defaulting to base class '%2'. QFormBuilder nie mógÅ‚ utworzyć wÅ‚asnego widżetu klasy '%1'. BÄ™dzie on zastÄ…piony klasÄ… bazowÄ… '%2'. - QFormBuilder was unable to create a widget of the class '%1'. QFormBuilder nie mógÅ‚ utworzyć widżetu klasy '%1'. - The layout type `%1' is not supported. Typ rozmieszczenia '%1' nie jest obsÅ‚ugiwany. - The set-type property %1 could not be read. Nie można odczytać wÅ‚aÅ›ciwoÅ›ci %1 typu zbiór. - The enumeration-type property %1 could not be read. Nie można odczytać wÅ‚aÅ›ciwoÅ›ci %1 typu wyliczeniowego. - Reading properties of the type %1 is not supported yet. Odczytywanie wÅ‚aÅ›ciwoÅ›ci typu %1 nie jest jeszcze obsÅ‚ugiwane. - The property %1 could not be written. The type %2 is not supported yet. Nie można zapisać wÅ‚aÅ›ciwoÅ›ci %1. Typ %2 nie jest jeszcze obsÅ‚ugiwany. - The enumeration-value '%1' is invalid. The default value '%2' will be used instead. Wartość "%1" typu wyliczeniowego jest niepoprawna. Użyta zostanie domyÅ›lna wartość "%2". - The flag-value '%1' is invalid. Zero will be used instead. Wartość "%1" flagi jest niepoprawna. Użyta zostanie wartość zerowa. @@ -2343,48 +1903,38 @@ Empty class name passed to widget factory method QStackedWidgetEventFilter - Previous Page Poprzednia strona - Next Page NastÄ™pna strona - Delete UsuÅ„ - Before Current Page Przed bieżącÄ… stronÄ… - After Current Page Za bieżącÄ… stronÄ… - Change Page Order... ZmieÅ„ porzÄ…dek stron... - Change Page Order ZmieÅ„ porzÄ…dek stron - Page %1 of %2 Strona %1 z %2 - - Insert Page Wstaw stronÄ™ @@ -2392,12 +1942,10 @@ Empty class name passed to widget factory method QStackedWidgetPreviewEventFilter - Go to previous page of %1 '%2' (%3/%4). Przejdź do poprzedniej strony %1 '%2' (%3/%4). - Go to next page of %1 '%2' (%3/%4). Przejdź do nastÄ™pnej strony %1 '%2' (%3/%4). @@ -2405,28 +1953,22 @@ Empty class name passed to widget factory method QTabWidgetEventFilter - Delete UsuÅ„ - Before Current Page Przed bieżącÄ… stronÄ… - After Current Page Za bieżącÄ… stronÄ… - Page %1 of %2 Strona %1 z %2 - - Insert Page Wstaw stronÄ™ @@ -2434,37 +1976,30 @@ Empty class name passed to widget factory method QToolBoxHelper - Delete Page UsuÅ„ stronÄ™ - Before Current Page Przed bieżącÄ… stronÄ… - After Current Page Za bieżącÄ… stronÄ… - Change Page Order... ZmieÅ„ porzÄ…dek stron... - Change Page Order ZmieÅ„ porzÄ…dek stron - Page %1 of %2 Strona %1 z %2 - Insert Page Wstaw stronÄ™ @@ -2472,15 +2007,10 @@ Empty class name passed to widget factory method QtBoolEdit - - - True Prawda - - False FaÅ‚sz @@ -2488,12 +2018,10 @@ Empty class name passed to widget factory method QtBoolPropertyManager - True Prawda - False FaÅ‚sz @@ -2501,7 +2029,6 @@ Empty class name passed to widget factory method QtCharEdit - Clear Char Wyczyść znak @@ -2509,7 +2036,6 @@ Empty class name passed to widget factory method QtColorEditWidget - ... ... @@ -2517,22 +2043,18 @@ Empty class name passed to widget factory method QtColorPropertyManager - Red CzerwieÅ„ - Green ZieleÅ„ - Blue BÅ‚Ä™kit - Alpha KanaÅ‚ alfa @@ -2540,97 +2062,78 @@ Empty class name passed to widget factory method QtCursorDatabase - Cross Krzyż - Arrow StrzaÅ‚ka - Up Arrow StrzaÅ‚ka do góry - Wait Oczekiwanie - IBeam Kursor tekstowy - Size Vertical Rozmiar N-S - Size Horizontal Rozmiar W-E - Size Backslash Rozmiar NW-SE - Size Slash Rozmiar NE-SW - Size All Rozmiar N-E-S-W - Blank Pusty - Split Vertical Podzielony pionowo - Split Horizontal Podzielony poziomo - Pointing Hand RÄ…czka wskazujÄ…ca - Forbidden Zabroniony - Open Hand RÄ…czka otwarta - Closed Hand RÄ…czka zamkniÄ™ta - What's This Co to jest - Busy ZajÄ™ty @@ -2638,12 +2141,10 @@ Empty class name passed to widget factory method QtFontEditWidget - ... ... - Select Font Wybierz czcionkÄ™ @@ -2651,37 +2152,30 @@ Empty class name passed to widget factory method QtFontPropertyManager - Bold Pogrubiony - Italic Kursywa - Underline PodkreÅ›lony - Family Rodzina - Point Size Wielkość punktu - Strikeout PrzekreÅ›lony - Kerning Kerning @@ -2689,7 +2183,6 @@ Empty class name passed to widget factory method QtGradientDialog - Edit Gradient Modyfikuj gradient @@ -2697,304 +2190,242 @@ Empty class name passed to widget factory method QtGradientEditor - Start X PoczÄ…tek X - Start Y PoczÄ…tek Y - Final X Koniec X - Final Y Koniec Y - - Central X Åšrodek X - - Central Y Åšrodek Y - Focal X Ogniskowa X - Focal Y Ogniskowa Y - Radius PromieÅ„ - Angle KÄ…t - Linear Liniowy - Radial Radialny - Conical Stożkowy - Pad Brak - Repeat Powtórzone - Reflect Odbite - Form Formularz - Gradient Editor Edytor gradientu - 1 1 - 2 2 - 3 3 - 4 4 - 5 5 - Gradient Stops Editor Edytor punktów gradientu - This area allows you to edit gradient stops. Double click on the existing stop handle to duplicate it. Double click outside of the existing stop handles to create a new stop. Drag & drop the handle to reposition it. Use right mouse button to popup context menu with extra actions. Ten obszar pozwala na edycjÄ™ punktów gradientu. Aby skopiować istniejÄ…cy punkt kliknij dwukrotnie na jego uchwyt. W celu stworzenia nowego punktu kliknij dwukrotnie poza istniejÄ…cymi uchwytami punków. PrzeciÄ…gnij i upuść uchwyt aby go przesunąć. NaciÅ›nij prawy przycisk myszy aby pokazać menu z dodatkowymi akcjami. - Zoom PowiÄ™kszenie - Position Pozycja - Hue Barwa - H H - Saturation Nasycenie - S S - Sat Nasycenie - Value Wartość - V V - Val Wartość - Alpha KanaÅ‚ alfa - A A - Type Rodzaj - Spread RozciÄ…ganie - Color Kolor - Current stop's color Kolor bieżącego punktu - HSV HSV - RGB RGB - Current stop's position Pozycja bieżącego punktu - % % - Zoom In PowiÄ™ksz - Zoom Out Pomniejsz - Toggle details extension PrzeÅ‚Ä…cz rozszerzenie ze szczegółami - > > - Linear Type Typ liniowy - ... ... - Radial Type Typ radialny - Conical Type Typ stożkowy - Pad Spread Powtarzaj punkt brzegowy - Repeat Spread Powtarzaj caÅ‚y zakres - Reflect Spread Powtarzaj z odbiciami - This area shows a preview of the gradient being edited. It also allows you to edit parameters specific to the gradient's type such as start and final point, radius, etc. by drag & drop. Ten obszar pokazuje podglÄ…d edytowanego gradientu. Możesz tutaj również zmieniać parametry specyficzne dla typu gradientu, takie jak: punkt poczÄ…tkowy i koÅ„cowy, promieÅ„, itp... poprzez przeciÄ…gniÄ™cie i upuszczenie uchwytu. - Show HSV specification Pokaż specyfikacjÄ™ HSV - Show RGB specification Pokaż specyfikacjÄ™ RGB - Reset Zoom Normalny rozmiar @@ -3002,37 +2433,30 @@ Empty class name passed to widget factory method QtGradientStopsWidget - New Stop Nowy punkt - Delete UsuÅ„ - Flip All Odwróć wszystko - Select All Zaznacz wszystko - Zoom In PowiÄ™ksz - Zoom Out Pomniejsz - Reset Zoom Normalny rozmiar @@ -3040,46 +2464,34 @@ Empty class name passed to widget factory method QtGradientView - Grad Grad - Remove Gradient UsuÅ„ gradient - Are you sure you want to remove the selected gradient? Czy na pewno chcesz usunąć zaznaczony gradient? - - New... Nowy... - - Edit... Modyfikuj... - - Rename ZmieÅ„ nazwÄ™ - - Remove UsuÅ„ - Gradient View Widok gradientów @@ -3087,8 +2499,6 @@ Empty class name passed to widget factory method QtGradientViewDialog - - Select Gradient Wybierz gradient @@ -3096,7 +2506,6 @@ Empty class name passed to widget factory method QtKeySequenceEdit - Clear Shortcut Wyczyść skrót @@ -3104,17 +2513,14 @@ Empty class name passed to widget factory method QtLocalePropertyManager - %1, %2 %1, %2 - Language JÄ™zyk - Country Kraj @@ -3122,17 +2528,14 @@ Empty class name passed to widget factory method QtPointFPropertyManager - (%1, %2) (%1, %2) - X X - Y Y @@ -3140,17 +2543,14 @@ Empty class name passed to widget factory method QtPointPropertyManager - (%1, %2) (%1, %2) - X X - Y Y @@ -3158,12 +2558,10 @@ Empty class name passed to widget factory method QtPropertyBrowserUtils - [%1, %2, %3] (%4) [%1, %2, %3] (%4) - [%1, %2] [%1, %2] @@ -3171,27 +2569,22 @@ Empty class name passed to widget factory method QtRectFPropertyManager - [(%1, %2), %3 x %4] [(%1, %2), %3 x %4] - X X - Y Y - Width Szerokość - Height Wysokość @@ -3199,27 +2592,22 @@ Empty class name passed to widget factory method QtRectPropertyManager - [(%1, %2), %3 x %4] [(%1, %2), %3 x %4] - X X - Y Y - Width Szerokość - Height Wysokość @@ -3227,128 +2615,98 @@ Empty class name passed to widget factory method QtResourceEditorDialog - %1 already exists. Do you want to replace it? %1 już istnieje. Czy chcesz go zastÄ…pić? - The file does not appear to be a resource file; element '%1' was found where '%2' was expected. Plik nie wyglÄ…da na plik z zasobami; znaleziono element '%1' podczas gdy oczekiwano elementu '%2'. - %1 [read-only] %1 - [tylko do odczytu] - - %1 [missing] %1 - [brak pliku] - <no prefix> <brak przedrostka> - - New Resource File Nowy plik z zasobami - - Resource files (*.qrc) Pliki z zasobami (*.qrc) - Import Resource File Zaimportuj plik z zasobami - newPrefix nowyPrzedrostek - Add Files Dodaj pliki - Incorrect Path Niepoprawna Å›cieżka - - - - Copy Skopiuj - Copy As... Skopiuj jako... - Keep Pozostaw - Skip Opuść - Clone Prefix Sklonuj przedrostek - Enter the suffix which you want to add to the names of the cloned files. This could for example be a language extension like "_de". Wprowadź przyrostek jaki ma być dodany do sklonowanych plików. To może być np. rozszerzenie okreÅ›lajÄ…ce jÄ™zyk: "_de". - - Copy As Skopiuj jako - <p>The selected file:</p><p>%1</p><p>is outside of the current resource file's directory:</p><p>%2</p><p>Please select another path within this directory.<p> <p>Zaznaczony plik:</p><p>%1</p><p>jest umiejscowiony na zewnÄ…trz katalogu z bieżącym plikiem z zasobami:</p><p>%2</p><p>Zaznacz innÄ… Å›cieżkÄ™ w tym katalogu.<p> - Could not overwrite %1. Nie można nadpisać %1. - <p><b>Warning:</b> The file</p><p>%1</p><p>is outside of the current resource file's parent directory.</p> <p><b>Ostrzeżenie:</b> Plik</p><p>%1</p><p>jest na zewnÄ…trz katalogu w którym jest bieżący plik z zasobami.</p> - <p>To resolve the issue, press:</p><table><tr><th align="left">Copy</th><td>to copy the file to the resource file's parent directory.</td></tr><tr><th align="left">Copy As...</th><td>to copy the file into a subdirectory of the resource file's parent directory.</td></tr><tr><th align="left">Keep</th><td>to use its current location.</td></tr></table> <p>Aby rozwiÄ…zać problem, naciÅ›nij:</p><table><tr><th align="left">Skopiuj</th><td>żeby skopiować plik do katalogu w którym jest plik z zasobami.</td></tr><tr><th align="left">Skopiuj jako...</th><td>żeby skopiować plik do poddrzewa katalogu w którym jest plik z zasobami.</td></tr><tr><th align="left">Zatrzymaj</th><td>żeby użyć jego bieżącÄ… Å›cieżkÄ™.</td></tr></table> - Could not copy %1 to @@ -3359,153 +2717,120 @@ jako: %2 - A parse error occurred at line %1, column %2 of %3: %4 WystÄ…piÅ‚ bÅ‚Ä…d przetwarzania w linii %1, kolumnie %2 w %3: %4 - Save Resource File Zachowaj plik z zasobami - Edit Resources Edytor zasobów - New... Nowy... - Open... Otwórz... - - Remove UsuÅ„ - - Move Up PrzenieÅ› do góry - - Move Down PrzenieÅ› w dół - - Add Prefix Dodaj przedrostek - Add Files... Dodaj pliki... - Change Prefix ZmieÅ„ przedrostek - Change Language ZmieÅ„ jÄ™zyk - Change Alias ZmieÅ„ alias - Clone Prefix... Sklonuj przedrostek... - Prefix / Path Przedrostek / Åšcieżka - Language / Alias JÄ™zyk / Alias - <html><p><b>Warning:</b> There have been problems while reloading the resources:</p><pre>%1</pre></html> <html><p><b>Ostrzeżenie:</b> Natrafiono na problemy podczas przeÅ‚adowania zasobów:</p><pre>%1</pre></html> - Resource Warning Ostrzeżenie z systemu zasobów - Dialog Okno dialogowe - New File Nowy plik - N N - Remove File UsuÅ„ plik - R R - I I - New Resource Nowy zasób - A A - Remove Resource or File UsuÅ„ zasób lub plik - Could not write %1: %2 Nie można zapisać "%1", %2 - Open Resource File Otwórz plik z zasobami @@ -3513,24 +2838,20 @@ jako: QtResourceView - Size: %1 x %2 %3 Rozmiar: %1 x %2 %3 - Edit Resources... Modyfikuj zasoby... - Reload PrzeÅ‚aduj - Copy Path Skopiuj Å›cieżkÄ™ @@ -3538,7 +2859,6 @@ jako: QtResourceViewDialog - Select Resource Wybierz zasób @@ -3546,17 +2866,14 @@ jako: QtSizeFPropertyManager - %1 x %2 %1 x %2 - Width Szerokość - Height Wysokość @@ -3564,33 +2881,26 @@ jako: QtSizePolicyPropertyManager - - <Invalid> <Niepoprawna> - [%1, %2, %3, %4] [%1, %2, %3, %4] - Horizontal Policy Strategia pozioma - Vertical Policy Strategia pionowa - Horizontal Stretch RozciÄ…ganie w poziomie - Vertical Stretch RozciÄ…ganie w pionie @@ -3598,17 +2908,14 @@ jako: QtSizePropertyManager - %1 x %2 %1 x %2 - Width Szerokość - Height Wysokość @@ -3616,107 +2923,86 @@ jako: QtToolBarDialog - < S E P A R A T O R > < S E P A R A T O R > - Customize Toolbars Dostosuj paski narzÄ™dzi - 1 1 - Actions Akcje - Toolbars Paski narzÄ™dzi - New Nowy - Remove UsuÅ„ - Rename ZmieÅ„ nazwÄ™ - Up Do góry - <- <- - -> -> - Down W dół - Current Toolbar Actions Akcje bieżącego paska narzÄ™dzi - Custom Toolbar WÅ‚asne paski narzÄ™dzi - Add new toolbar Dodaj nowy pasek narzÄ™dzi - Remove selected toolbar UsuÅ„ wybrany pasek narzÄ™dzi - Rename toolbar ZmieÅ„ nazwÄ™ paska narzÄ™dzi - Move action up PrzenieÅ› akcjÄ™ w górÄ™ - Remove action from toolbar UsuÅ„ akcjÄ™ z paska narzÄ™dzi - Add action to toolbar Dodaj akcjÄ™ do paska narzÄ™dzi - Move action down PrzenieÅ› akcjÄ™ w dół @@ -3724,12 +3010,10 @@ jako: QtTreePropertyBrowser - Property WÅ‚aÅ›ciwość - Value Wartość @@ -3737,64 +3021,52 @@ jako: SaveFormAsTemplate - Add path... Dodaj Å›cieżkÄ™... - Template Exists Szablon istnieje - Overwrite Template Nadpisz szablon - Open Error BÅ‚Ä…d otwarcia - There was an error opening template %1 for writing. Reason: %2 WystÄ…piÅ‚ bÅ‚Ä…d podczas otwierania szablonu %1 do zapisu. Powód: %2 - Write Error BÅ‚Ä…d zapisu - There was an error writing the template %1 to disk. Reason: %2 WystÄ…piÅ‚ bÅ‚Ä…d podczas zapisywania szablonu %1 na dysk. Powód: %2 - Pick a directory to save templates in Wybierz katalog do zachowywania szablonów - &Category: &Kategoria: - &Name: &Nazwa: - A template with the name %1 already exists. Do you want overwrite the template? Szablon o nazwie %1 już istnieje. Czy chcesz nadpisać szablon? - Save Form As Template Zachowaj formularz jako szablon @@ -3802,7 +3074,6 @@ Czy chcesz nadpisać szablon? ScriptErrorDialog - An error occurred while running the scripts for "%1": WystÄ…piÅ‚ bÅ‚Ä…d podczas uruchamiana skryptu dla "%1": @@ -3812,22 +3083,18 @@ Czy chcesz nadpisać szablon? SelectSignalDialog - Go to slot Przejdź do slotu - Select signal Wybierz sygnaÅ‚ - signal sygnaÅ‚ - class klasa @@ -3835,7 +3102,6 @@ Czy chcesz nadpisać szablon? SignalSlotConnection - SENDER(%1), SIGNAL(%2), RECEIVER(%3), SLOT(%4) NADAJNIK(%1), SYGNAÅ(%2), ODBIORNIK(%3), SLOT(%4) @@ -3843,32 +3109,26 @@ Czy chcesz nadpisać szablon? SignalSlotDialogClass - Signals and slots SygnaÅ‚y i sloty - Slots Sloty - ... ... - Signals SygnaÅ‚y - Add Dodaj - Delete UsuÅ„ @@ -3876,12 +3136,10 @@ Czy chcesz nadpisać szablon? Spacer - Horizontal Spacer '%1', %2 x %3 Poziomy dystans '%1', %2 x %3 - Vertical Spacer '%1', %2 x %3 Pionowy dystans '%1', %2 x %3 @@ -3889,7 +3147,6 @@ Czy chcesz nadpisać szablon? TemplateOptionsPage - Template Paths Tab in preferences dialog Åšcieżki z szablonami @@ -3898,52 +3155,42 @@ Czy chcesz nadpisać szablon? ToolBarManager - Configure Toolbars... Skonfiguruj paski narzÄ™dzi... - Window Okno - Help Pomoc - Style Styl - Dock views Dokowalne widoki - File Plik - Edit Edycja - Tools NarzÄ™dzia - Form Formularz - Toolbars Paski narzÄ™dzi @@ -3951,22 +3198,18 @@ Czy chcesz nadpisać szablon? VersionDialog - Qt Designer Qt Designer - %1<br/>Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). - <h3>%1</h3><br/><br/>Version %2 <h3>%1</h3><br/><br/>Wersja %2 - <br/>Qt Designer is a graphical user interface designer for Qt applications.<br/> <br/>Qt Designer jest aplikacjÄ… umożliwiajÄ…cÄ… projektowanie interfejsów graficznych użytkownika w aplikacjach korzystajÄ…cych z Qt.<br/> @@ -3974,47 +3217,38 @@ Czy chcesz nadpisać szablon? VideoPlayerTaskMenu - Available Mime Types DostÄ™pne typy mime - Display supported mime types... Pokaż dostÄ™pne typy mime... - Load... ZaÅ‚aduj... - Play Odtwórz - Pause Pauza - Stop Zatrzymaj - Choose Video Player Media Source Wybierz źródÅ‚o odtwarzacza wideo - An error has occurred in '%1': %2 WystÄ…piÅ‚ bÅ‚Ä…d w "%1": %2 - Video Player Error BÅ‚Ä…d odtwarzacza wideo @@ -4022,7 +3256,6 @@ Czy chcesz nadpisać szablon? WidgetDataBase - The file contains a custom widget '%1' whose base class (%2) differs from the current entry in the widget database (%3). The widget database is left unchanged. Plik zawiera wÅ‚asny widżet '%1' którego klasa bazowa (%2) różni siÄ™ od bieżącego elementu w bazie danych z widżetami (%3). Baza danych z widżetami zostaÅ‚a niezmieniona. @@ -4030,87 +3263,70 @@ Czy chcesz nadpisać szablon? qdesigner_internal::ActionEditor - Actions Akcje - New... Nowa... - Delete UsuÅ„ - New action Nowa akcja - Edit action Modyfikuj akcjÄ™ - Edit... Modyfikuj... - Go to slot... Przejdź do slotu... - Copy Skopiuj - Cut Wytnij - Paste Wklej - Select all Zaznacz wszystko - Configure Action Editor Skonfiguruj edytor akcji - Icon View Widok z ikonkami - Detailed View Szczegółowy widok - Remove actions UsuÅ„ akcje - Remove action '%1' UsuÅ„ akcjÄ™ '%1' - Used In Użyta w @@ -4118,32 +3334,26 @@ Czy chcesz nadpisać szablon? qdesigner_internal::ActionModel - Name Nazwa - Used Użyta - Text Tekst - Shortcut Skrót - Checkable PrzeÅ‚Ä…czalny - ToolTip Podpowiedź @@ -4151,27 +3361,22 @@ Czy chcesz nadpisać szablon? qdesigner_internal::BrushManagerProxy - The element '%1' is missing the required attribute '%2'. Brak wymaganego atrybutu '%2' w elemencie '%1'. - Empty brush name encountered. WystÄ…piÅ‚a pusta nazwa szczotki. - An unexpected element '%1' was encountered. WystÄ…piÅ‚ niespodziewany element '%1'. - An error occurred when reading the brush definition file '%1' at line line %2, column %3: %4 WystÄ…piÅ‚ bÅ‚Ä…d podczas czytania pliku z definicjÄ… szczotki '%1' w linii %2, w kolumnie %3: %4 - An error occurred when reading the resource file '%1' at line %2, column %3: %4 WystÄ…piÅ‚ bÅ‚Ä…d podczas czytania pliku z zasobami '%1' w linii %2, w kolumnie %3: %4 @@ -4179,17 +3384,14 @@ Czy chcesz nadpisać szablon? qdesigner_internal::BuddyEditor - Add buddy Dodaj skojarzonÄ… etykietÄ™ - Remove buddies UsuÅ„ skojarzonÄ… etykietÄ™ - Remove %n buddies UsuÅ„ %n skojarzonÄ… etykietÄ™ @@ -4198,7 +3400,6 @@ Czy chcesz nadpisać szablon? - Add %n buddies Dodaj %n skojarzonÄ… etykietÄ™ @@ -4207,7 +3408,6 @@ Czy chcesz nadpisać szablon? - Set automatically Ustaw automatycznie @@ -4215,7 +3415,6 @@ Czy chcesz nadpisać szablon? qdesigner_internal::BuddyEditorPlugin - Edit Buddies Modyfikuj skojarzone etykiety @@ -4223,7 +3422,6 @@ Czy chcesz nadpisać szablon? qdesigner_internal::BuddyEditorTool - Edit Buddies Modyfikuj skojarzone etykiety @@ -4231,12 +3429,10 @@ Czy chcesz nadpisać szablon? qdesigner_internal::ButtonGroupMenu - Select members Zaznacz skÅ‚adniki grupy - Break UsuÅ„ grupÄ™ @@ -4244,32 +3440,26 @@ Czy chcesz nadpisać szablon? qdesigner_internal::ButtonTaskMenu - Assign to button group Przypisz do grupy przycisków - Button group Grupa przycisków - New button group Nowej - Change text... ZmieÅ„ tekst... - None Å»adnej - Button group '%1' Grupa przycisków '%1' @@ -4277,57 +3467,46 @@ Czy chcesz nadpisać szablon? qdesigner_internal::CodeDialog - Save... Zachowaj... - Copy All Skopiuj wszystko - &Find in Text... Z&najdź w tekÅ›cie... - A temporary form file could not be created in %1. Nie można utworzyć pliku z tymczasowym formularzem w %1. - The temporary form file %1 could not be written. Nie można zapisać pliku z tymczasowym formularzem w %1. - %1 - [Code] %1 - [Kod] - Save Code Zachowaj kod - Header Files (*.%1) Pliki nagłówkowe (*.%1) - The file %1 could not be opened: %2 Nie można otworzyć pliku "%1", %2 - The file %1 could not be written: %2 Nie można zapisać pliku "%1", %2 - %1 - Error %1 - BÅ‚Ä…d @@ -4335,7 +3514,6 @@ Czy chcesz nadpisać szablon? qdesigner_internal::ColorAction - Text Color Color tekstu @@ -4343,12 +3521,10 @@ Czy chcesz nadpisać szablon? qdesigner_internal::ComboBoxTaskMenu - Edit Items... Modyfikuj elementy... - Change Combobox Contents ZmieÅ„ zawartość combobox'a @@ -4356,7 +3532,6 @@ Czy chcesz nadpisać szablon? qdesigner_internal::CommandLinkButtonTaskMenu - Change description... ZmieÅ„ opis... @@ -4364,17 +3539,14 @@ Czy chcesz nadpisać szablon? qdesigner_internal::ConnectionEdit - Select All Zaznacz wszystko - Delete UsuÅ„ - Deselect All Odznacz wszystko @@ -4382,52 +3554,42 @@ Czy chcesz nadpisać szablon? qdesigner_internal::ConnectionModel - Sender Nadajnik - Signal SygnaÅ‚ - Receiver Odbiornik - Slot Slot - <sender> <nadajnik> - <signal> <sygnaÅ‚> - <receiver> <odbiornik> - <slot> <slot> - Signal and Slot Editor Edytor sygnałów i slotów - The connection already exists!<br>%1 PoÅ‚Ä…czenie już istnieje!<br>%1 @@ -4435,42 +3597,34 @@ Czy chcesz nadpisać szablon? qdesigner_internal::ContainerWidgetTaskMenu - Insert Page Before Current Page Wstaw stronÄ™ przed bieżącÄ… stronÄ… - Insert Page After Current Page Wstaw stronÄ™ za bieżącÄ… stronÄ… - Add Subwindow Dodaj podokno - Delete UsuÅ„ - Insert Wstaw - Subwindow Podokno - Page Strona - Page %1 of %2 Strona %1 z %2 @@ -4478,18 +3632,15 @@ Czy chcesz nadpisać szablon? qdesigner_internal::DPI_Chooser - System (%1 x %2) System resolution Systemowa (%1 x %2) - User defined Zdefiniowana przez użytkownika - x DPI X/Y separator x @@ -4498,49 +3649,38 @@ Czy chcesz nadpisać szablon? qdesigner_internal::DesignerPropertyManager - - AlignLeft Wyrównanie do lewej - AlignHCenter Wyrównanie w poziomie do Å›rodka - AlignRight Wyrównanie do prawej - AlignJustify Wyjustowanie - AlignTop Wyrównanie do góry - - AlignVCenter Wyrównanie w pionie do Å›rodka - AlignBottom Wyrównanie do doÅ‚u - %1, %2 %1, %2 - Customized (%n roles) Dostosowana (%n rola) @@ -4549,75 +3689,58 @@ Czy chcesz nadpisać szablon? - Inherited Odziedziczony - Horizontal Poziomo - Vertical Pionowo - Normal Off Normalny wyciÅ›niÄ™ty - Normal On Normalny wciÅ›niÄ™ty - Disabled Off WyÅ‚Ä…czony wyciÅ›niÄ™ty - Disabled On WyÅ‚Ä…czony wciÅ›niÄ™ty - Active Off Aktywny wyciÅ›niÄ™ty - Active On Aktywny wciÅ›niÄ™ty - Selected Off Zaznaczony wyciÅ›niÄ™ty - Selected On Zaznaczony wciÅ›niÄ™ty - - translatable przetÅ‚umaczalny - - disambiguation ujednoznacznienie - - comment komentarz @@ -4625,48 +3748,38 @@ Czy chcesz nadpisać szablon? qdesigner_internal::DeviceProfileDialog - Device Profiles (*.%1) Profile urzÄ…dzeÅ„ (*.%1) - Default DomyÅ›lny - Save Profile Zachowaj profil - Save Profile - Error BÅ‚Ä…d podczas zachowywania profilu - Unable to open the file '%1' for writing: %2 Nie można otworzyć pliku '%1' do zapisu: %2 - Open profile Otwórz profil - - Open Profile - Error BÅ‚Ä…d podczas otwierania profilu - Unable to open the file '%1' for reading: %2 Nie można otworzyć pliku '%1' do odczytu: %2 - '%1' is not a valid profile: %2 '%1' nie jest poprawnym profilem: %2 @@ -4674,57 +3787,46 @@ Czy chcesz nadpisać szablon? qdesigner_internal::Dialog - Dialog Okno dialogowe - StringList Lista napisów - New String Nowy napis - &New &Nowy - Delete String UsuÅ„ napis - &Delete &UsuÅ„ - &Value: &Wartość: - Move String Up PrzenieÅ› w górÄ™ - Up Do góry - Move String Down PrzenieÅ› w dół - Down W dół @@ -4732,52 +3834,42 @@ Czy chcesz nadpisać szablon? qdesigner_internal::EmbeddedOptionsControl - None Brak - Add a profile Dodaj profil - Edit the selected profile Modyfikuj zaznaczony profil - Delete the selected profile UsuÅ„ zaznaczony profil - Add Profile Dodaj profil - New profile Nowy profil - Edit Profile Modyfikuj profil - Delete Profile UsuÅ„ profil - Would you like to delete the profile '%1'? Czy chcesz usunąć profil '%1'? - Default DomyÅ›lny @@ -4785,12 +3877,10 @@ Czy chcesz nadpisać szablon? qdesigner_internal::FilterWidget - Filter Filtr - Clear text Wyczyść tekst @@ -4798,12 +3888,10 @@ Czy chcesz nadpisać szablon? qdesigner_internal::FormEditor - Resource File Changed Zmieniony plik z zasobami - The file "%1" has changed outside Designer. Do you want to reload it? Plik "%1" zmieniÅ‚ siÄ™ na zewnÄ…trz Designera. Czy chcesz go ponownie zaÅ‚adować? @@ -4811,7 +3899,6 @@ Czy chcesz nadpisać szablon? qdesigner_internal::FormLayoutMenu - Add form layout row... Dodaj wiersz do formularza... @@ -4819,58 +3906,46 @@ Czy chcesz nadpisać szablon? qdesigner_internal::FormWindow - Edit contents Modyfikuj zawartość - F2 F2 - Resize ZmieÅ„ rozmiar - Key Move Przeniesienie - Key Resize Zmiana rozmiaru - Cannot paste widgets. Designer could not find a container without a layout to paste into. Nie można wkleić widżetów. Nie można byÅ‚o odnaleźć pojemnika bez rozmieszczenia do którego można by wkleić widżety. - Break the layout of the container you want to paste into, select this container and then paste again. UsuÅ„ rozmieszczenie w pojemniku do którego chcesz wkleić, zaznacz ten pojemnik i ponownie wklej. - Paste error BÅ‚Ä…d wklejania - Lay out Rozmieść - - Drop widget Upuść widżet - Paste %n action(s) Wklej %n akcjÄ™ @@ -4879,12 +3954,10 @@ Czy chcesz nadpisać szablon? - Insert widget '%1' Wstaw widżet '%1 - Paste %n widget(s) Wklej %n widżet @@ -4893,27 +3966,22 @@ Czy chcesz nadpisać szablon? - Paste (%1 widgets, %2 actions) Wklej (%1 widżetów, %2 akcji) - Select Ancestor Wybierz przodka - A QMainWindow-based form does not contain a central widget. Formularz bazujÄ…cy na QMainWindow nie zawiera centralnego widżetu. - Raise widgets PrzenieÅ› widżety na wierzch - Lower widgets PrzenieÅ› widżety na spód @@ -4921,12 +3989,10 @@ Czy chcesz nadpisać szablon? qdesigner_internal::FormWindowBase - Delete UsuÅ„ - Delete '%1' UsuÅ„ '%1' @@ -4934,200 +4000,159 @@ Czy chcesz nadpisać szablon? qdesigner_internal::FormWindowManager - Cu&t Wy&tnij - Cuts the selected widgets and puts them on the clipboard Wycina zaznaczone widżety i umieszcza je w schowku - &Copy S&kopiuj - Copies the selected widgets to the clipboard Kopiuje zaznaczone widżety do schowka - &Paste Wk&lej - Pastes the clipboard's contents Wkleja zawartość schowka - &Delete &UsuÅ„ - Deletes the selected widgets Usuwa zaznaczone widżety - Select &All Zaznacz &wszystko - Selects all widgets Wybiera wszystkie widżety - Bring to &Front PrzenieÅ› na w&ierzch - - Raises the selected widgets Przenosi zaznaczone widżety na wierzch - Send to &Back PrzenieÅ› na &spód - - Lowers the selected widgets Przenosi zaznaczone widżety na spód - Adjust &Size Dopasuj &wielkość - Adjusts the size of the selected widget Dopasuj wielkość zaznaczonego widżetu - Lay Out &Horizontally Rozmieść w po&ziomie - Lays out the selected widgets horizontally Rozmieszcza zaznaczone widżety w poziomie - Lay Out &Vertically Rozmieść w pio&nie - Lays out the selected widgets vertically Rozmieszcza zaznaczone widżety w pionie - Lay Out in a &Grid Rozmieść w &siatce - Lays out the selected widgets in a grid Rozmieszcza zaznaczone widżety w siatce - Lay Out Horizontally in S&plitter Rozmieść poziomo w s&plitterze - Lays out the selected widgets horizontally in a splitter Rozmieszcza zaznaczone widżety poziomo w splitterze - Lay Out Vertically in Sp&litter Rozmieść pionowo w sp&litterze - Lays out the selected widgets vertically in a splitter Rozmieszcza zaznaczone widżety pionowo w splitterze - &Break Layout &UsuÅ„ rozmieszczenie - Breaks the selected layout Usuwa zaznaczone rozmieszczenie - &Preview... Pod&glÄ…d... - Preview current form PodglÄ…d bierzÄ…cego formularza - Form &Settings... Us&tawienia formularza... - Break Layout UsuÅ„ rozmieszczenie - Adjust Size Dopasuj wielkość - Could not create form preview Title of warning message box Nie można utworzyć podglÄ…du formularza - Form Settings - %1 Ustawienia formularza - %1 - Removes empty columns and rows UsuÅ„ puste kolumny i wiersze - Lay Out in a &Form Layout Rozmieść w &formularzu - Lays out the selected widgets in a form layout Rozmieszcza zaznaczone widżety w formularzu - Si&mplify Grid Layout Up&rość rozmieszczenie w siatce @@ -5135,12 +4160,10 @@ Czy chcesz nadpisać szablon? qdesigner_internal::FormWindowSettings - None Å»aden - Device Profile: %1 Profil urzÄ…dzenia: %1 @@ -5148,37 +4171,30 @@ Czy chcesz nadpisać szablon? qdesigner_internal::GridPanel - Visible Widoczna - Snap PrzyciÄ…gaj - Reset Przywróć ustawienia - Form Formularz - Grid Siatka - Grid &X Siatka &X - Grid &Y Siatka &Y @@ -5186,7 +4202,6 @@ Czy chcesz nadpisać szablon? qdesigner_internal::GroupBoxTaskMenu - Change title... ZmieÅ„ tytuÅ‚... @@ -5194,7 +4209,6 @@ Czy chcesz nadpisać szablon? qdesigner_internal::HtmlTextEdit - Insert HTML entity Wstaw jednostkÄ™ HTML @@ -5202,92 +4216,74 @@ Czy chcesz nadpisać szablon? qdesigner_internal::IconSelector - The pixmap file '%1' cannot be read. Nie można odczytać pliku z pixmapÄ… %1. - The file '%1' does not appear to be a valid pixmap file: %2 Plik '%1' nie wyglÄ…da na poprawny plik z pixmapÄ…: %2 - The file '%1' could not be read: %2 Nie można odczytać pliku "%1", %2 - Pixmap Read Error BÅ‚Ä…d przy odczycie pixmapy - ... ... - Normal Off Normalny wyciÅ›niÄ™ty - Normal On Normalny wciÅ›niÄ™ty - Disabled Off WyÅ‚Ä…czony wyciÅ›niÄ™ty - Disabled On WyÅ‚Ä…czony wciÅ›niÄ™ty - Active Off Aktywny wyciÅ›niÄ™ty - Active On Aktywny wciÅ›niÄ™ty - Selected Off Zaznaczony wyciÅ›niÄ™ty - Selected On Zaznaczony wciÅ›niÄ™ty - Choose Resource... Wybierz zasób... - Choose File... Wybierz plik... - Reset Przywróć - Reset All Przywróć wszystkie - Choose a Pixmap Wybierz pixmapÄ™ @@ -5295,58 +4291,46 @@ Czy chcesz nadpisać szablon? qdesigner_internal::ItemListEditor - Properties &<< WÅ‚asciwoÅ›ci &<< - - Properties &>> WÅ‚asciwoÅ›ci &>> - Items List Lista elementów - New Item Nowy element - &New &Nowy - Delete Item UsuÅ„ element - &Delete &UsuÅ„ - Move Item Up PrzenieÅ› element do góry - U U - Move Item Down PrzenieÅ› element w dół - D D @@ -5354,12 +4338,10 @@ Czy chcesz nadpisać szablon? qdesigner_internal::LabelTaskMenu - Change rich text... ZmieÅ„ tekst sformatowany... - Change plain text... ZmieÅ„ zwykÅ‚y tekst... @@ -5367,7 +4349,6 @@ Czy chcesz nadpisać szablon? qdesigner_internal::LanguageResourceDialog - Choose Resource Wybierz zasób @@ -5375,7 +4356,6 @@ Czy chcesz nadpisać szablon? qdesigner_internal::LineEditTaskMenu - Change text... ZmieÅ„ tekst... @@ -5383,17 +4363,14 @@ Czy chcesz nadpisać szablon? qdesigner_internal::ListWidgetEditor - New Item Nowy element - Edit List Widget Modyfikuj listÄ™ - Edit Combobox Modyfikuj combobox @@ -5401,12 +4378,10 @@ Czy chcesz nadpisać szablon? qdesigner_internal::ListWidgetTaskMenu - Edit Items... Modyfikuj elementy... - Change List Contents ZmieÅ„ zawartość listy @@ -5414,22 +4389,18 @@ Czy chcesz nadpisać szablon? qdesigner_internal::MdiContainerWidgetTaskMenu - Next Subwindow NastÄ™pne podokno - Previous Subwindow Poprzednie podokno - Tile Obok siebie - Cascade Kaskadowo @@ -5437,7 +4408,6 @@ Czy chcesz nadpisać szablon? qdesigner_internal::MenuTaskMenu - Remove UsuÅ„ @@ -5445,7 +4415,6 @@ Czy chcesz nadpisać szablon? qdesigner_internal::MorphMenu - Morph into Przekształć w @@ -5453,42 +4422,34 @@ Czy chcesz nadpisać szablon? qdesigner_internal::NewActionDialog - New Action... Nowa akcja... - &Text: &Tekst: - &Icon: &Ikonka: - Shortcut: Skrót: - Checkable: PrzeÅ‚Ä…czalny: - ToolTip: Podpowiedź: - ... ... - Object &name: &Nazwa obiektu: @@ -5496,41 +4457,34 @@ Czy chcesz nadpisać szablon? qdesigner_internal::NewDynamicPropertyDialog - Set Property Name Ustaw nazwÄ™ wÅ‚aÅ›ciwoÅ›ci - The current object already has a property named '%1'. Please select another, unique one. Bieżący obiekt posiada już wÅ‚aÅ›ciwość o nazwie '%1'. Wybierz innÄ…, unikalnÄ… nazwÄ™. - Create Dynamic Property Utwórz dynamicznÄ… wÅ‚aÅ›ciwość - Property Name Nazwa wÅ‚aÅ›ciwoÅ›ci - Property Type Typ wÅ‚aÅ›ciwoÅ›ci - The '_q_' prefix is reserved for the Qt library. Please select another name. Przedrostek '_q_' jest zarezerwowany dla biblioteki Qt. Wybierz innÄ… nazwÄ™. - horizontalSpacer poziomy dystans @@ -5538,83 +4492,67 @@ Wybierz innÄ… nazwÄ™. qdesigner_internal::NewFormWidget - Default size DomyÅ›lny rozmiar - QVGA portrait (240x320) QVGA portret (240x320) - QVGA landscape (320x240) QVGA pejzaż (320x240) - VGA portrait (480x640) VGA portret (480x640) - VGA landscape (640x480) VGA pejzaż (640x480) - Widgets New Form Dialog Categories Widżety - Custom Widgets WÅ‚asne widżety - None Å»adne - Error loading form BÅ‚Ä…d podczas Å‚adowania formularza - Unable to open the form template file '%1': %2 Nie można otworzyć pliku '%1' z szablonem formularza: %2 - Internal error: No template selected. BÅ‚Ä…d wewnÄ™trzny: Nie zaznaczono szablonu. - 0 0 - Choose a template for a preview Wybierz szablon do podglÄ…du - Embedded Design Projekt dla urzÄ…dzeÅ„ specjalizowanych - Device: UrzÄ…dzenie: - Screen Size: Rozmiar ekranu: @@ -5622,37 +4560,30 @@ Wybierz innÄ… nazwÄ™. qdesigner_internal::NewPromotedClassPanel - Add Dodaj - New Promoted Class Nowa klasa zastÄ™pcza - Base class name: Nazwa bazowej klasy: - Promoted class name: Nazwa zastÄ™pczej klasy: - Header file: Plik nagłówkowy: - Global include Nagłówek globalny - Reset Przywróć ustawienia @@ -5660,12 +4591,10 @@ Wybierz innÄ… nazwÄ™. qdesigner_internal::ObjectInspector - Change Current Page ZmieÅ„ bieżącÄ… stronÄ™ - &Find in Text... Z&najdź w tekÅ›cie... @@ -5673,32 +4602,26 @@ Wybierz innÄ… nazwÄ™. qdesigner_internal::OrderDialog - Index %1 (%2) Indeks %1 (%2) - Change Page Order ZmieÅ„ porzÄ…dek stron - Page Order PorzÄ…dek stron - Move page up PrzenieÅ› stronÄ™ do góry - Move page down PrzenieÅ› stronÄ™ w dół - %1 %2 %1 %2 @@ -5706,47 +4629,38 @@ Wybierz innÄ… nazwÄ™. qdesigner_internal::PaletteEditor - Edit Palette Modyfikuj paletÄ™ - Tune Palette Dopasuj paletÄ™ - Show Details Pokazuj szczegóły - Compute Details Obliczaj szczegóły - Quick Szybko - Preview PodglÄ…d - Disabled Wyszarzony - Inactive Nieaktywny - Active Aktywny @@ -5754,7 +4668,6 @@ Wybierz innÄ… nazwÄ™. qdesigner_internal::PaletteEditorButton - Change Palette ZmieÅ„ paletÄ™ @@ -5762,22 +4675,18 @@ Wybierz innÄ… nazwÄ™. qdesigner_internal::PaletteModel - Color Role Rola koloru - Active Aktywna - Inactive Nieaktywna - Disabled Wyszarzona @@ -5785,28 +4694,22 @@ Wybierz innÄ… nazwÄ™. qdesigner_internal::PixmapEditor - Copy Path Skopiuj Å›cieżkÄ™ - Paste Path Wklej Å›cieżkÄ™ - Choose Resource... Wybierz zasób... - Choose File... Wybierz plik... - - ... ... @@ -5814,7 +4717,6 @@ Wybierz innÄ… nazwÄ™. qdesigner_internal::PlainTextEditorDialog - Edit text Modyfikuj tekst @@ -5822,37 +4724,30 @@ Wybierz innÄ… nazwÄ™. qdesigner_internal::PluginDialog - Components Komponenty - Plugin Information Informacje o wtyczkach - Qt Designer couldn't find any plugins Qt Designer nie mógÅ‚ znaleźć żadnej wtyczki - Qt Designer found the following plugins Qt Designer znalazÅ‚ nastÄ™pujÄ…ce wtyczki: - Refresh OdÅ›wież - Scan for newly installed custom widget plugins. Szukaj nowo zainstalowanych wtyczek z widżetami. - New custom widget plugins have been found. Znaleziono nowÄ… wtyczkÄ™ z widżetami. @@ -5860,7 +4755,6 @@ Wybierz innÄ… nazwÄ™. qdesigner_internal::PreviewActionGroup - %1 Style Styl %1 @@ -5868,47 +4762,38 @@ Wybierz innÄ… nazwÄ™. qdesigner_internal::PreviewConfigurationWidget - Default DomyÅ›lny - None Å»adna - Browse... PrzeglÄ…daj... - Load Custom Device Skin ZaÅ‚aduj dostosowanÄ… skórkÄ™ (skin) urzÄ…dzenia - All QVFB Skins (*.%1) Wszystkie skórki (skin) QVFB (*.%1) - %1 - Duplicate Skin %1 - zduplikowana skórka (skin) - The skin '%1' already exists. Skórka (skin) '%1' już istnieje. - %1 - Error %1 - BÅ‚Ä…d - %1 is not a valid skin directory: %2 %1 nie jest poprawnym katalogiem ze skórkÄ… (skin) @@ -5918,24 +4803,20 @@ Wybierz innÄ… nazwÄ™. qdesigner_internal::PreviewDeviceSkin - &Portrait P&ortret - Landscape (&CCW) Rotate form preview counter-clockwise Pejzaż (&CCW) - &Landscape (CW) Rotate form preview clockwise P&ejzaż (CW) - &Close Za&mknij @@ -5943,7 +4824,6 @@ Wybierz innÄ… nazwÄ™. qdesigner_internal::PreviewManager - %1 - [Preview] %1 - [PodglÄ…d] @@ -5951,7 +4831,6 @@ Wybierz innÄ… nazwÄ™. qdesigner_internal::PreviewMdiArea - The moose in the noose ate the goose who was loose. Palette editor background @@ -5962,57 +4841,46 @@ chrzÄ…szcz brzmi w trzcinie. qdesigner_internal::PreviewWidget - Preview Window PodglÄ…d okna - LineEdit LineEdit - ComboBox Combobox - PushButton PushButton - ButtonGroup2 ButtonGroup2 - CheckBox1 Checkbox1 - CheckBox2 CheckBox2 - ButtonGroup ButtonGroup - RadioButton1 RadioButton1 - RadioButton2 RadioButton2 - RadioButton3 RadioBUtton3 @@ -6020,22 +4888,18 @@ chrzÄ…szcz brzmi w trzcinie. qdesigner_internal::PromotionModel - Name Nazwa - Header file Plik nagłówkowy - Global include Nagłówek globalny - Usage Użycie @@ -6043,27 +4907,22 @@ chrzÄ…szcz brzmi w trzcinie. qdesigner_internal::PromotionTaskMenu - Promoted widgets... ZastÄ™pcze widżety... - Promote to ... ZastÄ…p... - Promote to ZastÄ…p - Demote to %1 Przywróć do %1 - Change signals/slots... ZmieÅ„ sygnaÅ‚y/sloty... @@ -6071,59 +4930,48 @@ chrzÄ…szcz brzmi w trzcinie. qdesigner_internal::PropertyEditor - Add Dynamic Property... Dodaj dynamicznÄ… wÅ‚aÅ›ciwość ... - Remove Dynamic Property UsuÅ„ dynamicznÄ… wÅ‚aÅ›ciwość - Sorting Sortowanie - Color Groups Kolorowanie grup - Tree View Widok drzewiasty - Drop Down Button View Widok z rozszerzalnymi przyciskami - Configure Property Editor Skonfiguruj edytor wÅ‚aÅ›ciwoÅ›ci - Object: %1 Class: %2 Obiekt: %1 Klasa: %2 - String... String... - Bool... Bool... - Other... Inne... @@ -6131,7 +4979,6 @@ Klasa: %2 qdesigner_internal::PropertyLineEdit - Insert line break Wstaw znak koÅ„ca linii @@ -6139,27 +4986,22 @@ Klasa: %2 qdesigner_internal::QDesignerPromotionDialog - Promoted Widgets ZastÄ™pcze widżety - Promoted Classes ZastÄ™pcze klasy - Promote ZastÄ…p - %1 - Error %1 - BÅ‚Ä…d - Change signals/slots... ZmieÅ„ sygnaÅ‚y/sloty... @@ -6167,22 +5009,18 @@ Klasa: %2 qdesigner_internal::QDesignerResource - Loading qrc file Å‚adowanie pliku qrc - The specified qrc file <p><b>%1</b></p><p>could not be found. Do you want to update the file location?</p> Plik qrc <p><b>%1</b></p><p> nie zostaÅ‚ znaleziony. Czy chcesz uaktualnić Å›cieżkÄ™ do pliku?</p> - New location for %1 Nowe poÅ‚ożenie dla %1 - Resource files (*.qrc) Pliki z zasobami (*.qrc) @@ -6190,57 +5028,46 @@ Klasa: %2 qdesigner_internal::QDesignerTaskMenu - Change objectName... ZmieÅ„ nazwÄ™ obiektu... - Change toolTip... ZmieÅ„ podpowiedź... - Change whatsThis... ZmieÅ„ "co to jest"... - Create Menu Bar Utwórz pasek menu - Add Tool Bar Dodaj pasek narzÄ™dzi - Create Status Bar Utwórz pasek stanu - Change styleSheet... ZmieÅ„ arkusz stylu... - Remove Status Bar UsuÅ„ pasek stanu - Change script... ZmieÅ„ skrypt... - no signals available brak dostÄ™pnych sygnałów - Set size constraint on %n widget(s) Ustaw ograniczenie rozmiaru w %n obiekcie @@ -6249,57 +5076,46 @@ Klasa: %2 - Change signals/slots... ZmieÅ„ sygnaÅ‚y/sloty... - Go to slot... Przejdź do slotu... - Size Constraints Ograniczenia rozmiaru - Set Minimum Width Ustaw minimalnÄ… szerokość - Set Minimum Height Ustaw minimalnÄ… wysokość - Set Minimum Size Ustaw minimalny rozmiar - Set Maximum Width Ustaw maksymalnÄ… szerokość - Set Maximum Height Ustaw maksymalnÄ… wysokość - Set Maximum Size Ustaw maksymalny rozmiar - Edit ToolTip Modyfikuj podpowiedź - Edit WhatsThis Modyfikuj "Co to jest" @@ -6307,42 +5123,34 @@ Klasa: %2 qdesigner_internal::QDesignerWidgetBox - - Unexpected element <%1> Niespodziewany element <%1> - A parse error occurred at line %1, column %2 of the XML code specified for the widget %3: %4 %5 WystÄ…piÅ‚ bÅ‚Ä…d przetwarzania w linii %1, kolumnie %2 kodu XML okreÅ›lonego dla widżetu %3: %4 %5 - The XML code specified for the widget %1 does not contain any widget elements. %2 Kod XML okreÅ›lony dla widżetu %1 nie zawiera żadnego elementu typu widżet. %2 - An error has been encountered at line %1 of %2: %3 WystÄ…piÅ‚ bÅ‚Ä…d w linii %1 w %2: %3 - Unexpected element <%1> encountered when parsing for <widget> or <ui> WystÄ…piÅ‚ niespodziewany element <%1> podczas przetwarzania elementu <widget> lub <ui> - Unexpected end of file encountered when parsing widgets. WystÄ…piÅ‚ niespodziewany koniec pliku podczas przetwarzania widżetów. - A widget element could not be found. Nie można odnależć elementu <widget>. @@ -6350,73 +5158,58 @@ Klasa: %2 qdesigner_internal::QtGradientStopsController - H H - S S - V V - - Hue Barwa - Sat Nas. - Val Wart. - Saturation Nasycenie - Value Wartość - R R - G G - B B - Red CzerwieÅ„ - Green ZieleÅ„ - Blue BÅ‚Ä™kit @@ -6424,27 +5217,22 @@ Klasa: %2 qdesigner_internal::RichTextEditorDialog - Edit text Modyfikuj tekst - &Cancel &Anuluj - &OK &OK - Rich Text Rich Text - Source ŹródÅ‚o @@ -6452,72 +5240,58 @@ Klasa: %2 qdesigner_internal::RichTextEditorToolBar - Bold Pogrubienie - Italic Kursywa - CTRL+I CTRL+I - Underline PodkreÅ›lenie - CTRL+U CTRL+U - CTRL+B CTRL+B - Left Align Wyrównanie do lewej - Center Wyrównanie do Å›rodka - Right Align Wyrównanie do prawej - Justify Wyjustuj - Superscript Indeks górny - Subscript Indeks dolny - Insert &Link Wstaw &OdsyÅ‚acz - Insert &Image Wstaw &obrazek @@ -6525,17 +5299,14 @@ Klasa: %2 qdesigner_internal::ScriptDialog - Edit script Modyfikuj skrypt - Syntax error BÅ‚Ä…d skÅ‚adni - <html>Enter a Qt Script snippet to be executed while loading the form.<br>The widget and its children are accessible via the variables <i>widget</i> and <i>childWidgets</i>, respectively. <html>Wprowadź skrypt Qt który bÄ™dzie wykonany podczas Å‚adowania formularza.<br>Widżet i jego dzieci sÄ… dostÄ™pne przez zmienne <i>widget</i> i <i>childWidgets</i>, odpowiednio. @@ -6543,7 +5314,6 @@ Klasa: %2 qdesigner_internal::ScriptErrorDialog - Script errors BÅ‚Ä™dy skryptu @@ -6551,23 +5321,18 @@ Klasa: %2 qdesigner_internal::SignalSlotDialog - There is already a slot with the signature '%1'. Slot '%1' już istnieje. - There is already a signal with the signature '%1'. SygnaÅ‚ '%1' już istnieje. - %1 - Duplicate Signature %1 - zduplikowany zapis - - Signals/Slots of %1 SygnaÅ‚y/sloty obiektu %1 @@ -6575,12 +5340,10 @@ Klasa: %2 qdesigner_internal::SignalSlotEditorPlugin - Edit Signals/Slots Modyfikuj sygnaÅ‚y/sloty - F4 F4 @@ -6588,7 +5351,6 @@ Klasa: %2 qdesigner_internal::SignalSlotEditorTool - Edit Signals/Slots Modyfikuj sygnaÅ‚y/sloty @@ -6596,7 +5358,6 @@ Klasa: %2 qdesigner_internal::StatusBarTaskMenu - Remove UsuÅ„ @@ -6604,7 +5365,6 @@ Klasa: %2 qdesigner_internal::StringListEditorButton - Change String List ZmieÅ„ listÄ™ tekstów @@ -6612,38 +5372,30 @@ Klasa: %2 qdesigner_internal::StyleSheetEditorDialog - Edit Style Sheet Modyfikuj arkusz stylu - - Valid Style Sheet Poprawny arkusz stylu - Invalid Style Sheet Niepoprawny arkusz stylu - Add Resource... Dodaj zasób... - Add Gradient... Dodaj gradient... - Add Color... Dodaj kolor... - Add Font... Dodaj czcionkÄ™... @@ -6651,27 +5403,22 @@ Klasa: %2 qdesigner_internal::TabOrderEditor - Start from Here Rozpocznij stÄ…d - Restart Rozpocznij od nowa - Tab Order List... Lista kolejnoÅ›ci tabulacji... - Tab Order List Lista kolejnoÅ›ci tabulacji - Tab Order Kolejność tabulacji @@ -6679,7 +5426,6 @@ Klasa: %2 qdesigner_internal::TabOrderEditorPlugin - Edit Tab Order Modyfikuj kolejność tabulacji @@ -6687,7 +5433,6 @@ Klasa: %2 qdesigner_internal::TabOrderEditorTool - Edit Tab Order Modyfikuj kolejność tabulacji @@ -6695,48 +5440,38 @@ Klasa: %2 qdesigner_internal::TableWidgetEditor - Edit Table Widget Modyfikuj tablÄ™ - &Items &Elementy - New Row Nowy wiersz - &Columns &Kolumny - &Rows &Wiersze - Properties &<< WÅ‚asciwoÅ›ci &<< - - Properties &>> WÅ‚asciwoÅ›ci &>> - Table Items Elementy tabeli - New Column Nowa kolumna @@ -6744,7 +5479,6 @@ Klasa: %2 qdesigner_internal::TableWidgetTaskMenu - Edit Items... Modyfikuj elementy... @@ -6752,22 +5486,18 @@ Klasa: %2 qdesigner_internal::TemplateOptionsWidget - Pick a directory to save templates in Wybierz katalog do zachowywania szablonów - Form Formularz - Additional Template Paths Dodatkowe Å›cieżki z szablonami - ... ... @@ -6775,22 +5505,18 @@ Klasa: %2 qdesigner_internal::TextEditTaskMenu - Change HTML... ZmieÅ„ HTML... - Edit HTML Modyfikuj HTML - Edit Text Modyfikuj tekst - Change Plain Text... ZmieÅ„ zwykÅ‚y tekst... @@ -6798,22 +5524,18 @@ Klasa: %2 qdesigner_internal::TextEditor - Choose Resource... Wybierz zasób... - Choose File... Wybierz plik... - Choose a File Wybierz plik - ... ... @@ -6821,27 +5543,22 @@ Klasa: %2 qdesigner_internal::ToolBarEventFilter - Insert Separator Wstaw separator - Remove action '%1' UsuÅ„ akcjÄ™ '%1' - Remove Toolbar '%1' UsuÅ„ pasek narzÄ™dzi '%1' - Insert Separator before '%1' Wstaw separator przed '%1' - Append Separator Dodaj separator @@ -6849,125 +5566,98 @@ Klasa: %2 qdesigner_internal::TreeWidgetEditor - Edit Tree Widget Modyfikuj drzewo - &Items &Elementy - Tree Items Drzewo elementów - &Columns &Kolumny - Per column properties WÅ‚aÅ›ciowÅ›ci dla kolumny - Common properties Wspólne wÅ‚aÅ›ciwoÅ›ci - - New Item Nowy element - - New Subitem Nowy podelement - Properties &<< WÅ‚asciwoÅ›ci &<< - - Properties &>> WÅ‚asciwoÅ›ci &>> - New &Subitem Nowy &podelement - Delete Item UsuÅ„ element - Move Item Left (before Parent Item) PrzenieÅ› element w lewo (przed element nadrzÄ™dny) - L L - Move Item Right (as a First Subitem of the Next Sibling Item) PrzenieÅ› element w prawo (jako pierwszy podelement kolejnego elementu) - R R - Move Item Up PrzenieÅ› element do góry - U U - Move Item Down PrzenieÅ› element w dół - D D - New Column Nowa kolumna - 1 1 - &New &Nowy - &Delete &UsuÅ„ @@ -6975,7 +5665,6 @@ Klasa: %2 qdesigner_internal::TreeWidgetTaskMenu - Edit Items... Modyfikujj elementy... @@ -6983,7 +5672,6 @@ Klasa: %2 qdesigner_internal::WidgetBox - Warning: Widget creation failed in the widget box. This could be caused by invalid custom widget XML. Ostrzeżenie: BÅ‚Ä…d tworzenia widżetu w panelu widżetów. MogÅ‚o to być spowodowane niepoprawnym kodem XML widżetu. @@ -6991,42 +5679,34 @@ Klasa: %2 qdesigner_internal::WidgetBoxTreeWidget - Scratchpad Notatnik - Custom Widgets WÅ‚asne widżety - Expand all RozwiÅ„ wszystkie - Collapse all ZwiÅ„ wszystkie - List View Widok w formie listy - Icon View Widok z ikonkami - Remove UsuÅ„ - Edit name Modyfikuj nazwÄ™ @@ -7034,7 +5714,6 @@ Klasa: %2 qdesigner_internal::WidgetDataBase - A custom widget plugin whose class name (%1) matches that of an existing class has been found. ZostaÅ‚a znaleziona wtyczka widżetu, w której nazwa klasy (%1) odpowiada istniejÄ…cej już klasie. @@ -7042,7 +5721,6 @@ Klasa: %2 qdesigner_internal::WidgetEditorTool - Edit Widgets Modyfikuj widżety @@ -7050,34 +5728,28 @@ Klasa: %2 qdesigner_internal::WidgetFactory - The custom widget factory registered for widgets of class %1 returned 0. Fabryka widżetów użytkownika zarejestrowana dla widżetów klasy %1 zwróciÅ‚a 0. - A class name mismatch occurred when creating a widget using the custom widget factory registered for widgets of class %1. It returned a widget of class %2. WystÄ…piÅ‚a niezgodność nazwy klasy podczas tworzenia widżetu przy pomocy fabryki widżetów użytkownika zarejestrowanej dla klasy %1. Zwrócony zostaÅ‚ widżet klasy %2. - %1 Widget Widżet %1 - The current page of the container '%1' (%2) could not be determined while creating a layout.This indicates an inconsistency in the ui-file, probably a layout being constructed on a container widget. Podczas tworzenia rozmieszczenia nie można byÅ‚o okreÅ›lić bieżącej strony (%2) pojemnika '%1'. Wskazuje to na niespójność pliku ui, prawdopodobnie utworzone zostaÅ‚o zbÄ™dne rozmieszczenie dla tego pojemnika. - Attempt to add a layout to a widget '%1' (%2) which already has an unmanaged layout of type %3. This indicates an inconsistency in the ui-file. Próba dodania rozmieszczenia do widżetu '%1' (%2) który posiada już niezarzÄ…dzane rozmieszczenie typu %3. To wskazuje na niespójność w pliku "ui". - Cannot create style '%1'. Nie można utworzyć stylu '%1'. @@ -7085,12 +5757,10 @@ To wskazuje na niespójność w pliku "ui". qdesigner_internal::WizardContainerWidgetTaskMenu - Next Dalej - Back Wstecz @@ -7098,7 +5768,6 @@ To wskazuje na niespójność w pliku "ui". qdesigner_internal::ZoomMenu - %1 % Zoom factor %1 % @@ -7107,7 +5776,6 @@ To wskazuje na niespójność w pliku "ui". qdesigner_internal::ZoomablePreviewDeviceSkin - &Zoom &PowiÄ™kszenie diff --git a/translations/qt_pl.ts b/translations/qt_pl.ts index 53549da..f0b144e 100644 --- a/translations/qt_pl.ts +++ b/translations/qt_pl.ts @@ -4,7 +4,6 @@ CloseButton - Close Tab Zamknij kartÄ™ @@ -12,12 +11,10 @@ FakeReply - Fake error ! FaÅ‚szywy bÅ‚Ä…d! - Invalid URL Niepoprawny URL @@ -25,37 +22,30 @@ MAC_APPLICATION_MENU - Services UsÅ‚ugi - Hide %1 Ukryj %1 - Hide Others Ukryj pozostaÅ‚e - Show All Pokaż wszystko - Preferences... Preferencje… - Quit %1 ZakoÅ„cz %1 - About %1 %1… @@ -63,32 +53,26 @@ Phonon:: - Notifications Powiadomienia - Music Muzyka - Video Wideo - Communication Komunikacja - Games Gry - Accessibility DostÄ™pność @@ -96,24 +80,18 @@ Phonon::AudioOutput - - <html>The audio playback device <b>%1</b> does not work.<br/>Falling back to <b>%2</b>.</html> <html>UrzÄ…dzenie dźwiÄ™kowe <b>%1</b> nie dziaÅ‚a.<br/>Przywracanie do <b>%2</b>.</html> - <html>Switching to the audio playback device <b>%1</b><br/>which just became available and has higher preference.</html> <html>PrzeÅ‚Ä…czanie na urzÄ…dzenie dźwiÄ™kowe <b>%1</b><br/>które wÅ‚aÅ›nie staÅ‚o siÄ™ dostÄ™pne i ma wyższy priorytet.</html> - - Revert back to device '%1' Przywróć do urzÄ…dzenia '%1' - <html>Switching to the audio playback device <b>%1</b><br/>which has higher preference or is specifically configured for this stream.</html> <html>PrzeÅ‚Ä…czanie na urzÄ…dzenie dźwiÄ™kowe <b>%1</b><br/>które ma wyższy priorytet lub jest specjalnie skonfigurowane dla tego strumienia.</html> @@ -121,14 +99,12 @@ Phonon::Gstreamer::Backend - Warning: You do not seem to have the package gstreamer0.10-plugins-good installed. Some video features have been disabled. Ostrzeżenie: WyglÄ…da na to, że pakiet gstreamer0.10-plugins-good nie jest zainstalowany w tym systemie. Niektóre możliwoÅ›ci wideo zostaÅ‚y wyÅ‚Ä…czone. - Warning: You do not seem to have the base GStreamer plugins installed. All audio and video support has been disabled Ostrzeżenie: WyglÄ…da na to, że podstawowe wtyczki GStreamer nie sÄ… zainstalowane w tym systemie. @@ -138,7 +114,6 @@ ObsÅ‚uga dźwiÄ™ku i wideo zostaÅ‚a wyÅ‚Ä…czona Phonon::Gstreamer::MediaObject - Cannot start playback. Check your GStreamer installation and make sure you @@ -149,49 +124,34 @@ Sprawdź instalacjÄ™ Gstreamer i upewnij siÄ™ że zainstalowaÅ‚eÅ› libgstreamer-plugins-base. - Missing codec helper script assistant. - Plugin codec installation failed for codec: %0 BÅ‚Ä…d podczas instalacji wtyczki dla kodeka: %0 - A required codec is missing. You need to install the following codec(s) to play this content: %0 Brak wymaganego kodeka. Aby odtworzyć zawartość musisz zainstalować poniższy kodek: %0 - - - - - - - - Could not open media source. Nie można otworzyć źródÅ‚a mediów. - Invalid source type. Niepoprawny typ źródÅ‚a. - Could not locate media source. Nie można znaleźć źródÅ‚a mediów. - Could not open audio device. The device is already in use. Nie można otworzyć urzÄ…dzenia dźwiÄ™kowego. UrzÄ…dzenie jest już używane. - Could not decode media source. Nie można zdekodować źródÅ‚a mediów. @@ -199,162 +159,130 @@ zainstalowaÅ‚eÅ› libgstreamer-plugins-base. Phonon::MMF - Audio Output WyjÅ›cie dźwiÄ™ku - The audio output device WyjÅ›ciowe urzÄ…dzenie dźwiÄ™kowe - No error Brak bÅ‚Ä™du - Not found Nie znaleziono - Out of memory Brak pamiÄ™ci - Not supported NieobsÅ‚ugiwane - Overflow PrzepeÅ‚nienie - Underflow NiedopeÅ‚nienie - Already exists Już istnieje - Path not found Nie znaleziono Å›cieżki - In use W użyciu - Not ready Brak gotowoÅ›ci - Access denied Odmowa dostÄ™pu - Could not connect Nie można poÅ‚Ä…czyć - Disconnected RozÅ‚Ä…czono - Permission denied Brak uprawnieÅ„ - Insufficient bandwidth NiewystarczajÄ…ca szerokość pasma - Network unavailable Sieć niedostÄ™pna - Network communication error BÅ‚Ä…d komunikacji sieciowej - Streaming not supported Transmisje strumieniowe nie sÄ… obsÅ‚ugiwane - Server alert Ostrzeżenie serwera - Invalid protocol NieprawidÅ‚owy protokół - Invalid URL NieprawidÅ‚owy adres URL - Multicast error BÅ‚Ä…d multiemisji - Proxy server error BÅ‚Ä…d serwera poÅ›redniczÄ…cego - Proxy server not supported NieobsÅ‚ugiwany serwer poÅ›redniczÄ…cy - Audio output error BÅ‚Ä…d wyjÅ›ciowego sygnaÅ‚u dźwiÄ™kowego - Video output error BÅ‚Ä…d wyjÅ›ciowego sygnaÅ‚u wideo - Decoder error BÅ‚Ä…d dekodera - Audio or video components could not be played Nie można odtworzyć dźwiÄ™ku lub wideo - DRM error BÅ‚Ä…d DRM - Unknown error (%1) Nieznany bÅ‚Ä…d (%1) @@ -362,33 +290,34 @@ zainstalowaÅ‚eÅ› libgstreamer-plugins-base. Phonon::MMF::AbstractMediaPlayer - Not ready to play Brak gotowoÅ›ci odtwarzania - - Error opening file BÅ‚Ä…d otwierania pliku - Error opening URL BÅ‚Ä…d otwierania adresu URL - + Error opening resource + BÅ‚Ä…d otwierania zasobu + + + Error opening source: resource not opened + BÅ‚Ä…d otwierania źródÅ‚a: zasób nie zostaÅ‚ otwarty + + Setting volume failed Ustawienie gÅ‚oÅ›noÅ›ci zakoÅ„czone bÅ‚Ä™dem - Loading clip failed ZaÅ‚adowanie klipu zakoÅ„czone bÅ‚Ä™dem - Playback complete ZakoÅ„czono odtwarzanie @@ -396,22 +325,18 @@ zainstalowaÅ‚eÅ› libgstreamer-plugins-base. Phonon::MMF::AbstractVideoPlayer - Pause failed Zatrzymanie zakoÅ„czone bÅ‚Ä™dem - Seek failed Wyszukiwanie zakoÅ„czone bÅ‚Ä™dem - Getting position failed Ustalanie pozycji zakoÅ„czone bÅ‚Ä™dem - Opening clip failed Otwieranie klipu zakoÅ„czone bÅ‚Ä™dem @@ -419,7 +344,6 @@ zainstalowaÅ‚eÅ› libgstreamer-plugins-base. Phonon::MMF::AudioEqualizer - %1 Hz %1 Hz @@ -427,7 +351,6 @@ zainstalowaÅ‚eÅ› libgstreamer-plugins-base. Phonon::MMF::AudioPlayer - Getting position failed Ustalanie pozycji zakoÅ„czone bÅ‚Ä™dem @@ -435,11 +358,6 @@ zainstalowaÅ‚eÅ› libgstreamer-plugins-base. Phonon::MMF::DsaVideoPlayer - - - - - Video display error BÅ‚Ä…d wyÅ›wietlacza wideo @@ -447,7 +365,6 @@ zainstalowaÅ‚eÅ› libgstreamer-plugins-base. Phonon::MMF::EffectFactory - Enabled WÅ‚Ä…czono @@ -455,61 +372,51 @@ zainstalowaÅ‚eÅ› libgstreamer-plugins-base. Phonon::MMF::EnvironmentalReverb - Decay HF ratio (%) DecayHFRatio: Ratio of high-frequency decay time to the value specified by DecayTime. Współczynnik zanikania HF (%) - Decay time (ms) DecayTime: Time over which reverberation is diminished. Czas zanikania (ms) - Density (%) Density Delay between first and subsequent reflections. Note that the S60 platform documentation does not make clear the distinction between this value and the Diffusion value. GÄ™stość (%) - Diffusion (%) Diffusion: Delay between first and subsequent reflections. Note that the S60 platform documentation does not make clear the distinction between this value and the Density value. Rozpraszanie (%) - Reflections delay (ms) ReflectionsDelay: Amount of delay between the arrival the direct path from the source and the arrival of the first reflection. Opóźnienie odbić (ms) - Reflections level (mB) ReflectionsLevel: Amplitude of reflections. This value is corrected by the RoomLevel to give the final reflection amplitude. Poziom odbić (mB) - Reverb delay (ms) ReverbDelay: Amount of time between arrival of the first reflection and start of the late reverberation. Opóźnienie pogÅ‚osu (ms) - Reverb level (mB) ReverbLevel Amplitude of reverberations. This value is corrected by the RoomLevel to give the final reverberation amplitude. Poziom pogÅ‚osu (mB) - Room HF level RoomHFLevel: Amplitude of low-pass filter used to attenuate the high frequency component of reflected sound. Poziom HF pomieszczenia - Room level (mB) RoomLevel: Master volume control for all reflected sound. Poziom pomieszczenia (mB) @@ -518,12 +425,18 @@ zainstalowaÅ‚eÅ› libgstreamer-plugins-base. Phonon::MMF::MediaObject - Error opening source: type not supported BÅ‚Ä…d otwierania źródÅ‚a: typ źródÅ‚a nie jest obsÅ‚ugiwany - + Error opening source: resource is compressed + BÅ‚Ä…d otwierania źródÅ‚a: zasób jest skompresowany + + + Error opening source: resource not valid + BÅ‚Ä…d otwierania źródÅ‚a: niepoprawny zasób + + Error opening source: media type could not be determined BÅ‚Ä…d otwierania źródÅ‚a: nie można okreÅ›lić typu multimediów @@ -531,7 +444,6 @@ zainstalowaÅ‚eÅ› libgstreamer-plugins-base. Phonon::MMF::StereoWidening - Level (%) Poziom (%) @@ -539,8 +451,6 @@ zainstalowaÅ‚eÅ› libgstreamer-plugins-base. Phonon::MMF::SurfaceVideoPlayer - - Video display error BÅ‚Ä…d wyÅ›wietlacza wideo @@ -548,22 +458,14 @@ zainstalowaÅ‚eÅ› libgstreamer-plugins-base. Phonon::VolumeSlider - - - - Volume: %1% GÅ‚oÅ›ność: %1% - - - Use this slider to adjust the volume. The leftmost position is 0%, the rightmost is %1% Użyj tego suwaka aby zmienić gÅ‚oÅ›ność. Skrajnie lewa pozycja to 0%, skrajnie prawa to %1% - Muted Wyciszony @@ -571,12 +473,10 @@ zainstalowaÅ‚eÅ› libgstreamer-plugins-base. Q3Accel - %1, %2 not defined %1, %2 nie okreÅ›lone - Ambiguous %1 not handled Niejednoznaczne %1, nie obsÅ‚użone @@ -584,27 +484,22 @@ zainstalowaÅ‚eÅ› libgstreamer-plugins-base. Q3DataTable - Delete Skasuj - False FaÅ‚sz - Insert Wstaw - True Prawda - Update Uaktualnij @@ -612,7 +507,6 @@ zainstalowaÅ‚eÅ› libgstreamer-plugins-base. Q3FileDialog - %1 File not found. Check path and filename. @@ -621,323 +515,246 @@ Plik nie znaleziony. Sprawdź Å›cieżkÄ™ i nazwÄ™ pliku. - <qt>Are you sure you wish to delete %1 "%2"?</qt> <qt>Na pewno chcesz skasować %1 "%2"?</qt> - - - - All Files (*) Wszystkie pliki (*) - Attributes Atrybuty - Back Powrót - - Cancel Anuluj - Copy or Move a File Skopiuj lub przenieÅ› plik - Create New Folder Utwórz nowy katalog - Date Data - &Delete &Skasuj - Delete %1 Skasuj %1 - Detail View Szczegóły - Dir Katalog - - Directories Katalogi - Directory: Katalog: - - Error BÅ‚Ä…d - File Plik - - - File &name: Nazwa &pliku: - File &type: &Rodzaj pliku: - Find Directory Znajdź katalog - Inaccessible NiedostÄ™pny - List View Lista - Look &in: Sprawdź &w: - Name Nazwa - New Folder Nowy katalog - New Folder %1 Nowy katalog %1 - New Folder 1 Nowy katalog 1 - &No &Nie - - &OK &OK - One directory up Katalog wyżej - - - &Open &Otwórz - - - Open Otwórz - Preview File Contents PodglÄ…d zawartoÅ›ci pliku - Preview File Info PodglÄ…d informacji o pliku - Read: %1 Czytaj: %1 - Read-only Tylko do odczytu - Read-write Do zapisu i odczytu - R&eload &OdÅ›wież - &Rename &ZmieÅ„ nazwÄ™ - - &Save &Zachowaj - - Save As Zachowaj jako - Show &hidden files Pokaż &ukryte pliki - Size Rozmiar - Sort Sortuj - Sort by &Date Sortuj po &dacie - Sort by &Name Sortuj &po nazwie - Sort by &Size Sortuj po &rozmiarze - Special Specjalny - Symlink to Directory DowiÄ…zanie symboliczne do katalogu - Symlink to File DowiÄ…zanie symboliczne do pliku - Symlink to Special DowiÄ…zanie symboliczne do pliku specjalnego - the directory katalog - the file plik - the symlink dowiÄ…zanie symboliczne - Type Rodzaj - &Unsorted &Bez sortowania - - Write: %1 Pisz: %1 - Write-only Tylko do zapisu - &Yes &Tak - All Files (*.*) Wszystkie pliki (*.*) - Open Otwórz - Select a Directory Wybierz katalog @@ -945,36 +762,30 @@ Sprawdź Å›cieżkÄ™ i nazwÄ™ pliku. Q3LocalFs - Could not create directory %1 Nie można utworzyć katalogu %1 - Could not open %1 Nie można otworzyć %1 - - Could not read directory %1 Nie można czytać katalogu %1 - Could not remove file or directory %1 Nie można usunąć pliku lub katalogu %1 - Could not rename %1 to @@ -985,7 +796,6 @@ na %2 - Could not write %1 Nie można zapisać @@ -995,12 +805,10 @@ na Q3MainWindow - Customize... Ustawienia użytkownika... - Line up Wyrównaj poÅ‚ożenie @@ -1008,7 +816,6 @@ na Q3NetworkProtocol - Operation stopped by the user Operacja zatrzymana przez użytkownika @@ -1016,8 +823,6 @@ na Q3ProgressDialog - - Cancel Anuluj @@ -1025,28 +830,22 @@ na Q3TabDialog - Apply Zatwierdź - Cancel Anuluj - Defaults DomyÅ›lne - Help Pomoc - - OK OK @@ -1054,38 +853,30 @@ na Q3TextEdit - Clear Wyczyść - &Copy S&kopiuj - Cu&t W&ytnij - &Paste &Wklej - &Redo &Przywróć - - Select All Zaznacz wszystko - &Undo &Cofnij @@ -1093,67 +884,54 @@ na Q3TitleBar - Close Zamknij okno - Closes the window Zamyka okno - Contains commands to manipulate the window Zawiera polecenia zarzÄ…dzajÄ…ce oknem - Displays the name of the window and contains controls to manipulate it WyÅ›wietla nazwÄ™ okna i zawiera elementy do zarzÄ…dzania nim - Makes the window full screen PowiÄ™ksza maksymalnie okno - Maximize Zmaksymalizuj - Minimize Zminimalizuj - Puts a minimized window back to normal Przywraca normalny rozmiar uprzednio zminimalizowanego okna - Moves the window out of the way Przenosi okno w inne poÅ‚ożenie - Puts a maximized window back to normal Przywraca normalny rozmiar uprzednio zmaksymalizowanego okna - Restore down Przywróć pod spód - Restore up Przywróć na wierzch - System System @@ -1161,7 +939,6 @@ na Q3ToolBar - More... WiÄ™cej... @@ -1169,51 +946,38 @@ na Q3UrlOperator - - (unknown) (nieznany) - - The protocol `%1' does not support copying or moving files or directories Protokół '%1' nie obsÅ‚uguje kopiowania lub przenoszenia plików lub katalogów - The protocol `%1' does not support creating new directories Protokół '%1' nie obsÅ‚uguje tworzenia nowych katalogów - The protocol `%1' does not support getting files Protokół '%1' nie obsÅ‚uguje pobierania plików - The protocol `%1' does not support listing directories Protokół '%1' nie obsÅ‚uguje pokazywania katalogów - The protocol `%1' does not support putting files Protokół '%1' nie obsÅ‚uguje wysyÅ‚ania plików - The protocol `%1' does not support removing files or directories Protokół '%1' nie obsÅ‚uguje usuwania plików lub katalogów - The protocol `%1' does not support renaming files or directories Protokół '%1' nie obsÅ‚uguje zmiany nazwy plików lub katalogów - - - The protocol `%1' is not supported Protokół '%1' nie jest obsÅ‚ugiwany @@ -1221,27 +985,22 @@ na Q3Wizard - < &Back < &Wstecz - &Cancel &Anuluj - &Finish &ZakoÅ„cz - &Help &Pomoc - &Next > &Dalej > @@ -1249,45 +1008,30 @@ na QAbstractSocket - - - Connection refused PoÅ‚Ä…czenie odrzucone - - - - Host not found Host nie znaleziony - Connection timed out Przekroczony czas poÅ‚Ä…czenia - - - Operation on socket is not supported Operacja na gnieździe nie jest obsÅ‚ugiwana - Socket is not connected Gniazdo nie jest podÅ‚Ä…czone - - Socket operation timed out Przekroczony czas operacji gniazda - Network unreachable Sieć niedostÄ™pna @@ -1295,17 +1039,14 @@ na QAbstractSpinBox - Step &down Krok w &dół - &Step up Krok do &góry - &Select All &Zaznacz wszystko @@ -1313,7 +1054,6 @@ na QAccessibleButton - Press WciÅ›nij @@ -1321,27 +1061,22 @@ na QApplication - Activate Uaktywnij - Activates the program's main window Uaktywnia główne okno programu - Executable '%1' requires Qt %2, found Qt %3. Program '%1' wymaga do uruchomienia Qt %2, znaleziono Qt %3. - Incompatible Qt Library Error Niekompatybilność biblioteki Qt - QT_LAYOUT_DIRECTION Translate this string to the string 'LTR' in left-to-right languages or to 'RTL' in right-to-left languages (such as Hebrew and Arabic) to get proper widget layout. LTR @@ -1350,22 +1085,18 @@ na QAxSelect - Select ActiveX Control Wybierz kontrolkÄ™ ActiveX - OK OK - &Cancel &Anuluj - COM &Object: &Obiekt COM: @@ -1373,17 +1104,14 @@ na QCheckBox - Check Zaznacz - Toggle PrzeÅ‚Ä…cz - Uncheck Odznacz @@ -1391,57 +1119,46 @@ na QColorDialog - &Add to Custom Colors &Dodaj do wÅ‚asnych kolorów - A&lpha channel: KanaÅ‚ &alfa: - Select Color Wybierz kolor - &Basic colors &Kolory podstawowe - Bl&ue: BÅ‚Ä™ki&t: - &Custom colors WÅ‚a&sne kolory - &Green: &ZieleÅ„: - Hu&e: &Barwa: - &Red: &CzerwieÅ„: - &Sat: &Nasycenie: - &Val: &Wartość: @@ -1449,23 +1166,18 @@ na QComboBox - - Open Otwórz - False FaÅ‚sz - True Prawda - Close Zamknij @@ -1473,43 +1185,36 @@ na QCoreApplication - %1: already exists QSystemSemaphore %1: już istnieje - %1: does not exist QSystemSemaphore %1: nie istnieje - %1: out of resources QSystemSemaphore %1: zasoby wyczerpane - %1: unknown error %2 QSystemSemaphore %1: nieznany bÅ‚Ä…d %2 - %1: key is empty QSystemSemaphore %1: klucz jest pusty - %1: unable to make key QSystemSemaphore %1: nie można utworzyć klucza - %1: ftok failed QSystemSemaphore %1: wystÄ…piÅ‚ bÅ‚Ä…d w funkcji ftok() @@ -1518,22 +1223,18 @@ na QDB2Driver - Unable to connect Nie można nawiÄ…zać poÅ‚Ä…czenia - Unable to commit transaction Nie można dokonać transakcji - Unable to rollback transaction Nie można wycofać transakcji - Unable to set autocommit Nie można ustawić trybu automatycznego dokonywania transakcji @@ -1541,33 +1242,26 @@ na QDB2Result - - Unable to execute statement Nie można wykonać polecenia - Unable to prepare statement Nie można przygotować polecenia - Unable to bind variable Nie można powiÄ…zać zmiennej - Unable to fetch record %1 Nie można pobrać rekordu %1 - Unable to fetch next Nie można pobrać kolejnego wiersza danych - Unable to fetch first Nie można pobrać pierwszego wiersza danych @@ -1575,22 +1269,18 @@ na QDateTimeEdit - am am - AM AM - pm pm - PM PM @@ -1598,17 +1288,14 @@ na QDeclarativeAbstractAnimation - Cannot animate non-existent property "%1" Nie można animować nieistniejÄ…cej wÅ‚aÅ›ciwoÅ›ci "%1" - Cannot animate read-only property "%1" Nie można animować wÅ‚aÅ›ciwoÅ›ci (tylko do odczytu): "%1" - Animation is an abstract class "Animation" jest klasÄ… abstrakcyjnÄ… @@ -1616,7 +1303,6 @@ na QDeclarativeAnchorAnimation - Cannot set a duration of < 0 Nie można ustawić ujemnego czasu trwania @@ -1624,67 +1310,50 @@ na QDeclarativeAnchors - Possible anchor loop detected on fill. Wykryto możliwe zapÄ™tlenie dla kotwicy "fill". - Possible anchor loop detected on centerIn. Wykryto możliwe zapÄ™tlenie dla kotwicy "centerIn". - - - - Cannot anchor to an item that isn't a parent or sibling. Nie można doczepić kotwicy do elementu który nie jest rodzicem ani rodzeÅ„stwem. - Possible anchor loop detected on vertical anchor. Wykryto możliwe zapÄ™tlenie dla pionowej kotwicy. - Possible anchor loop detected on horizontal anchor. Wykryto możliwe zapÄ™tlenie dla poziomej kotwicy. - Cannot specify left, right, and hcenter anchors. Nie można jednoczeÅ›nie podać lewej, prawej i centralnej poziomej kotwicy. - - Cannot anchor to a null item. Nie można doczepić kotwicy do zerowego elementu. - Cannot anchor a horizontal edge to a vertical edge. Nie można doczepić poziomej krawÄ™dzi do pionowej. - - Cannot anchor item to self. Nie można doczepić kotwicy do tego samego elementu. - Cannot specify top, bottom, and vcenter anchors. Nie można jednoczeÅ›nie podać górnej, dolnej i centralnej pionowej kotwicy. - Baseline anchor cannot be used in conjunction with top, bottom, or vcenter anchors. Bazowa kotwica nie może być użyta w poÅ‚Ä…czeniu z górnÄ…, dolnÄ… lub centralnÄ… pionowÄ… kotwicÄ…. - Cannot anchor a vertical edge to a horizontal edge. Nie można doczepić pionowej krawÄ™dzi do poziomej. @@ -1692,7 +1361,6 @@ na QDeclarativeAnimatedImage - Qt was built without support for QMovie Qt zostaÅ‚o zbudowane bez obsÅ‚ugi QMovie @@ -1700,7 +1368,6 @@ na QDeclarativeBehavior - Cannot change the animation assigned to a Behavior. Nie można zmienić animacji przypisanej do "Zachowania". @@ -1708,7 +1375,6 @@ na QDeclarativeBinding - Binding loop detected for property "%1" ZapÄ™tlenie powiÄ…zania dla wÅ‚aÅ›ciwoÅ›ci "%1" @@ -1716,7 +1382,6 @@ na QDeclarativeCompiledBindings - Binding loop detected for property "%1" ZapÄ™tlenie powiÄ…zania dla wÅ‚aÅ›ciwoÅ›ci "%1" @@ -1724,37 +1389,26 @@ na QDeclarativeCompiler - - - - - - Invalid property assignment: "%1" is a read-only property Niepoprawne przypisanie wartoÅ›ci: "%1" jest wÅ‚aÅ›ciwoÅ›ciÄ… tylko do odczytu - Invalid property assignment: unknown enumeration Niepoprawne przypisanie wartoÅ›ci: nieznana wartość wyliczeniowa - Invalid property assignment: string expected Niepoprawne przypisanie wartoÅ›ci: oczekiwano ciÄ…gu - Invalid property assignment: url expected Niepoprawne przypisanie wartoÅ›ci: oczekiwano url - Invalid property assignment: unsigned int expected Niepoprawne przypisanie wartoÅ›ci: oczekiwano liczby naturalnej - Invalid property assignment: int expected Niepoprawne przypisanie wartoÅ›ci: oczekiwano liczby caÅ‚kowitej @@ -1767,356 +1421,278 @@ na Niepoprawne przypisanie wartoÅ›ci: oczekiwano liczby zmiennoprzecinkowej podwójnej precyzji - - Invalid property assignment: number expected Niepoprawne przypisanie wartoÅ›ci: oczekiwano liczby - Invalid property assignment: color expected Niepoprawne przypisanie wartoÅ›ci: oczekiwano koloru - Invalid property assignment: date expected Niepoprawne przypisanie wartoÅ›ci: oczekiwano daty - Invalid property assignment: time expected Niepoprawne przypisanie wartoÅ›ci: oczekiwano czasu - Invalid property assignment: datetime expected Niepoprawne przypisanie wartoÅ›ci: oczekiwano daty i czasu - Invalid property assignment: point expected Niepoprawne przypisanie wartoÅ›ci: oczekiwano punktu - Invalid property assignment: size expected Niepoprawne przypisanie wartoÅ›ci: oczekiwano rozmiaru - Invalid property assignment: rect expected Niepoprawne przypisanie wartoÅ›ci: oczekiwano prostokÄ…ta - Invalid property assignment: boolean expected Niepoprawne przypisanie wartoÅ›ci: oczekiwano wartoÅ›ci boolowskiej - Invalid property assignment: 3D vector expected - Niepoprawne przypisanie wartoÅ›ci: oczekiwano wektoru 3D + Niepoprawne przypisanie wartoÅ›ci: oczekiwano wektora 3D - Invalid property assignment: unsupported type "%1" Niepoprawne przypisanie wartoÅ›ci: nieobsÅ‚ugiwany typ "%1" - Element is not creatable. Nie można utworzyć elementu ("creatable" wyÅ‚Ä…czone). - Component elements may not contain properties other than id Elementy komponentu nie mogÄ… posiadać wÅ‚aÅ›ciwoÅ›ci innych niż "id" - Invalid component id specification Niepoprawna specyfikacja "id" komponentu - - id is not unique Wartość "id" nie jest unikatowa - Invalid component body specification Niepoprawna specyfikacja "body" komponentu - Component objects cannot declare new properties. Instancje komponentu nie mogÄ… deklarować nowych wÅ‚aÅ›ciwoÅ›ci. - Component objects cannot declare new signals. Instancje komponentu nie mogÄ… deklarować nowych sygnałów. - Component objects cannot declare new functions. Instancje komponentu nie mogÄ… deklarować nowych funkcji. - Cannot create empty component specification Nie można utworzyć pustej specyfikacji komponentu - Incorrectly specified signal assignment Przypisanie sygnaÅ‚u bÅ‚Ä™dnie podane - Cannot assign a value to a signal (expecting a script to be run) Nie można przypisać wartoÅ›ci do sygnaÅ‚u (oczekiwano uruchomienia skryptu) - Empty signal assignment Przypisanie pustego sygnaÅ‚u - Empty property assignment Przypisanie pustej wÅ‚aÅ›ciwoÅ›ci - Attached properties cannot be used here DoÅ‚Ä…czone wÅ‚aÅ›ciwoÅ›ci nie mogÄ… być tutaj użyte - - Non-existent attached object NieistniejÄ…cy doÅ‚Ä…czony obiekt - - Invalid attached object assignment Niepoprawne przypisanie doÅ‚Ä…czonego obiektu - Cannot assign to non-existent default property Nie można przypisać wartoÅ›ci do nieistniejÄ…cej domyÅ›lnej wÅ‚aÅ›ciwoÅ›ci - - Cannot assign to non-existent property "%1" Nie można przypisać wartoÅ›ci do nieistniejÄ…cej wÅ‚aÅ›ciwoÅ›ci "%1" - Invalid use of namespace Niepoprawne użycie przestrzeni nazw - Not an attached property name Nie jest to nazwa doÅ‚Ä…czonej wÅ‚aÅ›ciwoÅ›ci - Invalid use of id property Niepoprawne użycie wÅ‚aÅ›ciwoÅ›ci "id" - - Property has already been assigned a value Wartość zostaÅ‚a już przypisana do wÅ‚aÅ›ciwoÅ›ci - - Invalid grouped property access BÅ‚Ä™dny dostÄ™p do zgrupowanej wÅ‚aÅ›ciwoÅ›ci - Cannot assign a value directly to a grouped property Nie można bezpoÅ›rednio przypisać wartoÅ›ci do zgrupowanej wÅ‚aÅ›ciwoÅ›ci - Invalid property use Niepoprawne użycie wÅ‚aÅ›ciwoÅ›ci - Property assignment expected Oczekiwano przypisania wartoÅ›ci - Single property assignment expected Oczekiwano przypisania pojedynczej wartoÅ›ci - Unexpected object assignment Nieoczekiwane przypisanie obiektu - Cannot assign object to list Nie można przypisać obiektu do listy - Can only assign one binding to lists Tylko jedno powiÄ…zanie może być przypisane do listy - Cannot assign primitives to lists Nie można przypisać elementu do listy - Cannot assign multiple values to a script property Nie można przypisać wielu wartoÅ›ci do skryptowej wÅ‚aÅ›ciwoÅ›ci - Invalid property assignment: script expected Niepoprawne przypisanie wartoÅ›ci: oczekiwano skryptu - Cannot assign object to property Nie można przypisać obiektu dla wÅ‚aÅ›ciwoÅ›ci - "%1" cannot operate on "%2" "%1" nie może operować na "%2" - Duplicate default property Powielona domyÅ›lna wÅ‚aÅ›ciwość - Duplicate property name Powielona nazwa wÅ‚aÅ›ciwoÅ›ci - Property names cannot begin with an upper case letter Nazwy wÅ‚aÅ›ciwoÅ›ci nie mogÄ… rozpoczynać siÄ™ wielkÄ… literÄ… - Illegal property name Niepoprawna nazwa wÅ‚aÅ›ciwoÅ›ci - Duplicate signal name Powielona nazwa sygnaÅ‚u - Signal names cannot begin with an upper case letter Nazwy sygnałów nie mogÄ… rozpoczynać siÄ™ wielkÄ… literÄ… - Illegal signal name Niepoprawna nazwa sygnaÅ‚u - Duplicate method name - Powielona nazwa medoty + Powielona nazwa metody - Method names cannot begin with an upper case letter Nazwy metod nie mogÄ… rozpoczynać siÄ™ wielkÄ… literÄ… - Illegal method name Niepoprawna nazwa metody - Property value set multiple times Wartość wÅ‚aÅ›ciwoÅ›ci ustawiona wielokrotnie - Invalid property nesting Niepoprawne zagnieżdżenie wÅ‚aÅ›ciwoÅ›ci - Cannot override FINAL property Nie można nadpisać wÅ‚aÅ›ciwoÅ›ci "FINAL" - Invalid property type Niepoprawny typ wÅ‚aÅ›ciwoÅ›ci - Invalid empty ID Niepoprawny pusty identyfikator - IDs cannot start with an uppercase letter Identyfikatory nie mogÄ… rozpoczynać siÄ™ wielkÄ… literÄ… - IDs must start with a letter or underscore Identyfikatory muszÄ… rozpoczynać siÄ™ literÄ… lub znakiem podkreÅ›lenia - IDs must contain only letters, numbers, and underscores Identyfikatory mogÄ… zawierać jedynie litery, cyfry i znaki podkreÅ›lenia - ID illegally masks global JavaScript property - - No property alias location - - Invalid alias location Niepoprawne poÅ‚ożenie aliasu - Invalid alias reference. An alias reference must be specified as <id> or <id>.<property> Niepoprawna referencja aliasu. Referencja aliasu musi być podana jako <id> lub <id> <property> - Invalid alias reference. Unable to find id "%1" Niepoprawna referencja aliasu. Nie można odnaleźć identyfikatora "%1" @@ -2124,7 +1700,6 @@ na QDeclarativeComponent - Invalid empty URL Niepoprawny pusty URL @@ -2132,23 +1707,18 @@ na QDeclarativeCompositeTypeManager - - Resource %1 unavailable Zasób %1 nie jest dostÄ™pny - Namespace %1 cannot be used as a type PrzestrzeÅ„ nazw %1 nie może być użyta jako typ - %1 %2 %1 %2 - Type %1 unavailable Typ %1 nie jest dostÄ™pny @@ -2156,23 +1726,18 @@ na QDeclarativeConnections - - Cannot assign to non-existent property "%1" Nie można przypisać wartoÅ›ci do nieistniejÄ…cej wÅ‚aÅ›ciwoÅ›ci "%1" - Connections: nested objects not allowed PoÅ‚Ä…czenia: zagnieżdżone obiekty nie sÄ… dozwolone - Connections: syntax error PoÅ‚Ä…czenia: bÅ‚Ä…d skÅ‚adni - Connections: script expected PoÅ‚Ä…czenia: oczekiwano skryptu @@ -2180,33 +1745,26 @@ na QDeclarativeEngine - executeSql called outside transaction() "executeSql" zawoÅ‚ane na zewnÄ…trz "transation()" - Read-only Transaction Transakcja tylko do odczytu - Version mismatch: expected %1, found %2 Niezgodność wersji: oczekiwano %1, znaleziono %2 - SQL transaction failed Transakcja SQL zakoÅ„czona bÅ‚Ä™dem - transaction: missing callback - - SQL: database version mismatch SQL: niezgodność wersji bazy danych @@ -2214,12 +1772,10 @@ na QDeclarativeFlipable - front is a write-once property "front" jest wÅ‚aÅ›ciwoÅ›ciÄ… tylko do odczytu - back is a write-once property "back" jest wÅ‚aÅ›ciwoÅ›ciÄ… tylko do odczytu @@ -2227,75 +1783,58 @@ na QDeclarativeImportDatabase - module "%1" definition "%2" not readable definicja "%2" moduÅ‚u "%1" nie może zostać odczytana - plugin cannot be loaded for module "%1": %2 wtyczka nie może zostać zaÅ‚adowana dla moduÅ‚u "%1": %2 - module "%1" plugin "%2" not found wtyczka "%2" moduÅ‚u "%1" nie zostaÅ‚a odnaleziona - - module "%1" version %2.%3 is not installed wersja %2.%3 moduÅ‚u %1 nie jest zainstalowana - module "%1" is not installed moduÅ‚ "%1" nie jest zainstalowany - - "%1": no such directory "%1": brak katalogu - import "%1" has no qmldir and no namespace - - %1 is not a namespace - %1 nie jest przestrzeniÄ… nazw - - nested namespaces not allowed - zagnieżdżone przestrzenie nazw nie sÄ… dozwolone - - local directory lokalny katalog - is ambiguous. Found in %1 and in %2 jest niejednoznaczny. Znaleziono w %1 i w %2 - is ambiguous. Found in %1 in version %2.%3 and %4.%5 jest niejednoznaczny. Znaleziono w %1 w wersji %2.%3 i %4.%5 - is instantiated recursively jest zinstancjonowany rekurencyjnie - is not a type nie jest typem @@ -2303,7 +1842,6 @@ na QDeclarativeKeyNavigationAttached - KeyNavigation is only available via attached properties "KeyNavigation" jest dostÄ™pny jedynie poprzez doÅ‚Ä…czone wÅ‚aÅ›ciwoÅ›ci @@ -2311,7 +1849,6 @@ na QDeclarativeKeysAttached - Keys is only available via attached properties "Keys" jest dostÄ™pny jedynie poprzez doÅ‚Ä…czone wÅ‚aÅ›ciwoÅ›ci @@ -2319,59 +1856,46 @@ na QDeclarativeListModel - remove: index %1 out of range remove: indeks %1 poza zakresem - insert: value is not an object insert: wartość nie jest obiektem - insert: index %1 out of range insert: indeks %1 poza zakresem - move: out of range move: poza zakresem - append: value is not an object append: wartość nie jest obiektem - set: value is not an object set: wartość nie jest obiektem - - set: index %1 out of range set: indeks %1 poza zakresem - - ListElement: cannot contain nested elements ListElement: nie może zawierać zagnieżdżonych elementów - ListElement: cannot use reserved "id" property ListElement: nie można używać zarezerwowanej wÅ‚aÅ›ciwoÅ›ci "id" - ListElement: cannot use script for property value ListElement: nie można używać skryptu jako wartoÅ›ci wÅ‚aÅ›ciwoÅ›ci - ListModel: undefined property '%1' ListModel: niezdefiniowana wÅ‚aÅ›ciwość "%1" @@ -2379,7 +1903,6 @@ na QDeclarativeLoader - Loader does not support loading non-visual elements. Åadowanie elementów niewizualnych nie jest obsÅ‚ugiwane. @@ -2387,18 +1910,14 @@ na QDeclarativeParentAnimation - Unable to preserve appearance under complex transform - - Unable to preserve appearance under non-uniform scale - Unable to preserve appearance under scale of 0 @@ -2406,18 +1925,14 @@ na QDeclarativeParentChange - Unable to preserve appearance under complex transform - - Unable to preserve appearance under non-uniform scale - Unable to preserve appearance under scale of 0 @@ -2425,144 +1940,110 @@ na QDeclarativeParser - - - Illegal unicode escape sequence - Illegal character Niepoprawny znak - Unclosed string at end of line NiedomkniÄ™ty ciÄ…g na koÅ„cu linii - Illegal escape squence - Unclosed comment at end of file NiedomkniÄ™ty komentarz na koÅ„cu linii - Illegal syntax for exponential number Niepoprawna skÅ‚adnia liczby o postaci wykÅ‚adniczej - Identifier cannot start with numeric literal Identyfikator nie może rozpoczynać siÄ™ staÅ‚Ä… liczbowÄ… - Unterminated regular expression literal NiedokoÅ„czone wyrażenie regularne - Invalid regular expression flag '%0' Niepoprawna flaga "%0" w wyrażeniu regularnym - - Unterminated regular expression backslash sequence - Unterminated regular expression class NiedokoÅ„czona klasa wyrażenia regularnego - - Syntax error BÅ‚Ä…d skÅ‚adni - Unexpected token `%1' Nieoczekiwany znak "%1" - - Expected token `%1' Oczekiwany znak "%1" - - - Property value set multiple times Wartość wÅ‚aÅ›ciwoÅ›ci ustawiona wielokrotnie - Expected type name Oczekiwana nazwa typu - Invalid import qualifier ID - Reserved name "Qt" cannot be used as an qualifier "Qt" jest nazwÄ… zarezerwowanÄ… i nie może być użyta jako kwalifikator - Script import qualifiers must be unique. Kwalifikator importu skryptu musi być unikatowy. - Script import requires a qualifier Import skryptu wymaga użycia kwalifikatora - Library import requires a version Import biblioteki wymaga podania wersji - Expected parameter type Oczekiwany typ parametru - Invalid property type modifier Niepoprawny modyfikator typu wÅ‚aÅ›ciwoÅ›ci - Unexpected property type modifier Nieoczekiwany modyfikator typu wÅ‚aÅ›ciwoÅ›ci - Expected property type Oczekiwany typ wÅ‚aÅ›ciwoÅ›ci - Readonly not yet supported "Tylko do odczytu" nie jest jeszcze obsÅ‚ugiwane - JavaScript declaration outside Script element Deklaracja "JavaScript" na zewnÄ…trz elementu "Script" @@ -2570,7 +2051,6 @@ na QDeclarativePauseAnimation - Cannot set a duration of < 0 Nie można ustawić ujemnego czasu trwania @@ -2578,19 +2058,14 @@ na QDeclarativePixmap - Error decoding: %1: %2 BÅ‚Ä…d dekodowania: %1: %2 - - Failed to get image from provider: %1 Pobieranie obrazka od dostawcy zakoÅ„czone bÅ‚Ä™dem: %1 - - Cannot open: %1 Nie można otworzyć: %1 @@ -2617,7 +2092,6 @@ na QDeclarativePropertyAnimation - Cannot set a duration of < 0 Nie można ustawić ujemnego czasu trwania @@ -2625,17 +2099,14 @@ na QDeclarativePropertyChanges - PropertyChanges does not support creating state-specific objects. "PropertyChanges" nie obsÅ‚uguje tworzenia obiektów charakterystycznych dla stanów. - Cannot assign to non-existent property "%1" Nie można przypisać wartoÅ›ci do nieistniejÄ…cej wÅ‚aÅ›ciwoÅ›ci "%1" - Cannot assign to read-only property "%1" Nie można przypisać wartoÅ›ci do wÅ‚aÅ›ciwoÅ›ci (tylko do odczytu): "%1" @@ -2643,13 +2114,10 @@ na QDeclarativeTextInput - - Could not load cursor delegate - Could not instantiate cursor delegate @@ -2657,47 +2125,38 @@ na QDeclarativeVME - Unable to create object of type %1 Nie można utworzyć obiektu typu %1 - Cannot assign value %1 to property %2 Nie można przypisać wartoÅ›ci %1 do wÅ‚aÅ›ciwoÅ›ci %2 - Cannot assign object type %1 with no default method Nie można przypisać obiektu typu %1 który nie posiada domyÅ›lnej metody - Cannot connect mismatched signal/slot %1 %vs. %2 Nie można podÅ‚Ä…czyć niezgodnych sygnałów / slotów (%1 i %2) - Cannot assign an object to signal property %1 - Cannot assign object to list Nie można przypisać obiektu do listy - Cannot assign object to interface property - Unable to create attached object Nie można utworzyć doÅ‚Ä…czonego obiektu - Cannot set properties on %1 as it is null Nie można ustawić wÅ‚aÅ›ciwoÅ›ci dla %1 ponieważ jest on zerowy @@ -2705,7 +2164,6 @@ na QDeclarativeVisualDataModel - Delegate component must be Item type. @@ -2713,8 +2171,6 @@ na QDeclarativeXmlListModel - - Qt was built without support for xmlpatterns Qt zostaÅ‚o zbudowane bez obsÅ‚ugi xmlpatterns @@ -2722,7 +2178,6 @@ na QDeclarativeXmlListModelRole - An XmlRole query must not start with '/' Zapytanie XmlRole nie może rozpoczynać siÄ™ od "/" @@ -2730,7 +2185,6 @@ na QDeclarativeXmlRoleList - An XmlListModel query must start with '/' or "//" Zapytanie XmlListModel nie może rozpoczynać siÄ™ od "/" ani od "//" @@ -2738,17 +2192,14 @@ na QDial - QDial QDial - SpeedoMeter Miernik prÄ™dkoÅ›ci - SliderHandle Uchwyt suwaka @@ -2756,12 +2207,10 @@ na QDialog - What's This? Co to jest? - Done Zrobione @@ -2769,124 +2218,98 @@ na QDialogButtonBox - Abort Przerwij - Apply Zastosuj - &Save &Zachowaj - Cancel Anuluj - &Cancel &Anuluj - Close Zamknij - &Close &Zamknij - Close without Saving Zamknij bez zapisywania - Discard Odrzuć - Don't Save Nie zachowuj - Help Pomoc - Ignore Zignoruj - &No &Nie - N&o to All Ni&e dla wszystkich - - - OK OK - Open Otwórz - Reset Resetuj - Restore Defaults Przywróć ustawienia - Retry Ponów - Save Zachowaj - Save All Zachowaj wszystko - &Yes &Tak - Yes to &All Ta&k dla wszystkich - &OK &OK @@ -2894,28 +2317,23 @@ na QDirModel - Date Modified Data modyfikacji - Kind Match OS X Finder Typ - Name Nazwa - Size Rozmiar - Type All other platforms Rodzaj @@ -2924,17 +2342,14 @@ na QDockWidget - Close Zamknij - Dock Zadokuj - Float Uwolnij @@ -2942,12 +2357,10 @@ na QDoubleSpinBox - More WiÄ™cej - Less Mniej @@ -2955,27 +2368,22 @@ na QErrorMessage - Debug Message: Komunikat dla programisty: - Fatal Error: BÅ‚Ä…d krytyczny: - &OK &OK - &Show this message again &Pokaż ten komunikat ponownie - Warning: Ostrzeżenie: @@ -2983,38 +2391,30 @@ na QFile - - Destination file exists Plik wyjÅ›ciowy już istnieje - Will not rename sequential file using block copy Nie można zmienić nazwy pliku sekwencyjnego używajÄ…c kopiowania blokowego - Cannot remove source file Nie można usunąć oryginalnego pliku - Cannot open %1 for input Nie można otworzyć pliku wejÅ›ciowego %1 - Cannot open for output Nie można otworzyć pliku wyjÅ›ciowego - Failure to write block Nie można zapisać bloku - Cannot create %1 for output Nie można utworzyć pliku wyjÅ›ciowego %1 @@ -3022,22 +2422,18 @@ na QFileDialog - %1 already exists. Do you want to replace it? %1 już istnieje. Czy chcesz zamienić? - '%1' is write protected. Do you want to delete it anyway? '%1' jest zabezpieczony przed zapisem. Czy na pewno chcesz go skasować? - - %1 Directory not found. Please verify the correct directory name was given. @@ -3046,7 +2442,6 @@ Katalog nie znaleziony. Sprawdź podanÄ… nazwÄ™ katalogu. - %1 File not found. Please verify the correct file name was given. @@ -3055,237 +2450,178 @@ Plik nie znaleziony. ProszÄ™ o sprawdzenie podanej nazwy pliku. - Are sure you want to delete '%1'? Czy na pewno chcesz skasować '%1'? - Recent Places Ostatnie miejsca - - Back Powrót - Could not delete directory. Nie można skasować katalogu. - &Delete &Skasuj - - Detail View Szczegóły - Directories Katalogi - - Directory: Katalog: - Drive UrzÄ…dzenie - - File Plik - File Folder Match Windows Explorer Katalog - Folder All other platforms Katalog - Alias Mac OS X Finder Alias - Shortcut All other platforms Skrót - - Files of type: Pliki rodzaju: - - List View Lista - My Computer Mój komputer - - - &Open &Otwórz - - Parent Directory Katalog wyżej - &Rename &ZmieÅ„ nazwÄ™ - - &Save &Zachowaj - Show &hidden files Pokaż &ukryte pliki - Unknown Nieznany - Open Otwórz - Save As Zachowaj jako - Find Directory Znajdź katalog - All Files (*.*) Wszystkie pliki (*.*) - Show Pokaż - - Forward Do przodu - New Folder Nowy katalog - &New Folder &Nowy katalog - - &Choose &Wybierz - Remove UsuÅ„ - - All Files (*) Wszystkie pliki (*) - - File &name: Nazwa &pliku: - - Look in: Szukaj w: - - Create New Folder Utwórz nowy katalog - Go back Wróć - Go forward Przejdź dalej - Go to the parent directory Przejdź do katalogu wyżej - Create a New Folder Utwórz nowy katalog - Change to list view mode Pokaż listÄ™ - Change to detail view mode Pokaż szczegóły @@ -3293,83 +2629,64 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QFileSystemModel - - %1 TB %1 TB - - %1 GB %1 GB - - %1 MB %1 MB - - %1 KB %1 KB - %1 bytes %1 bajtów - Invalid filename Niepoprawna nazwa pliku - <b>The name "%1" can not be used.</b><p>Try using another name, with fewer characters or no punctuations marks. <b>Nazwa "%1" nie może zostać użyta.</b><p>Spróbuj użyć nowej nazwy z mniejszÄ… liczbÄ… znaków lub bez znaków przystankowych. - Name Nazwa - Size Rozmiar - Kind Match OS X Finder Typ - Type All other platforms Rodzaj - Date Modified Data modyfikacji - My Computer Mój komputer - Computer Komputer - %1 byte(s) %1 bajt(ów) @@ -3377,223 +2694,172 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QFontDatabase - - Normal Normalny - - - Bold Pogrubiony - - Demi Bold Na wpół pogrubiony - - - Black it's about font weight Bardzo gruby - Demi Na wpół - - Light it's about font weight Cienki - - Italic Kursywa - - Oblique PochyÅ‚y - Any Każdy - Latin ÅaciÅ„ski - Greek Grecki - Cyrillic Cyrylica - Armenian OrmiaÅ„ski - Hebrew Hebrajski - Arabic Arabski - Syriac Syryjski - Thaana Thaana - Devanagari Devanagari - Bengali Bengalski - Gurmukhi Gurmukhi - Gujarati Gudżaracki - Oriya Orija - Tamil Tamilski - Telugu Telugu - Kannada Kannada - Malayalam Malajalam - Sinhala Syngaleski - Thai Tajski - Lao LaotaÅ„ski - Tibetan TybetaÅ„ski - Myanmar BirmaÅ„ski - Georgian GruziÅ„ski - Khmer Khmerski - Simplified Chinese Uproszczony chiÅ„ski - Traditional Chinese Tradycyjny chiÅ„ski - Japanese JapoÅ„ski - Korean KoreaÅ„ski - Vietnamese Wietnamski - Symbol Symboliczny - Ogham Ogamiczny - Runic Runiczny - N'Ko N'Ko @@ -3601,47 +2867,38 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QFontDialog - Effects Efekty - &Font &Czcionka - Font st&yle St&yl czcionki - Sample PrzykÅ‚ad - Select Font Wybierz czcionkÄ™ - &Size &Rozmiar - Stri&keout Pr&zekreÅ›lenie - &Underline &PodkreÅ›lenie - Wr&iting System Sys&tem pisania @@ -3649,143 +2906,102 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QFtp - - Changing directory failed: %1 Zmiana katalogu zakoÅ„czona bÅ‚Ä™dem: %1 - Connected to host PodÅ‚Ä…czony do hosta - - - Connected to host %1 PodÅ‚Ä…czony do hosta %1 - - Connecting to host failed: %1 PodÅ‚Ä…czanie do hosta zakoÅ„czone bÅ‚Ä™dem: %1 - - - Connection closed PoÅ‚Ä…czenie zamkniÄ™te - - Connection refused for data connection PoÅ‚Ä…czenie do przesyÅ‚u danych odrzucone - - Connection refused to host %1 PoÅ‚Ä…czenie do hosta %1 odrzucone - Connection to %1 closed PoÅ‚Ä…czenie do %1 zakoÅ„czone - - Creating directory failed: %1 Tworzenie katalogu zakoÅ„czone bÅ‚Ä™dem: %1 - - Downloading file failed: %1 Pobieranie pliku zakoÅ„czone bÅ‚Ä™dem: %1 - Host %1 found Host %1 znaleziony - - Host %1 not found Host %1 nie znaleziony - Host found Host znaleziony - - Listing directory failed: %1 Listowanie katalogu zakoÅ„czone bÅ‚Ä™dem: %1 - - Login failed: %1 Logowanie zakoÅ„czone bÅ‚Ä™dem: %1 - - Not connected Nie podÅ‚Ä…czony - Connection timed out to host %1 Przekroczony czas poÅ‚Ä…czenia do hosta %1 - - Removing directory failed: %1 Usuwanie katalogu zakoÅ„czone bÅ‚Ä™dem: %1 - - Removing file failed: %1 Usuwanie pliku zakoÅ„czone bÅ‚Ä™dem: %1 - - - - Unknown error Nieznany bÅ‚Ä…d - - Uploading file failed: %1 WysyÅ‚anie pliku zakoÅ„czone bÅ‚Ä™dem: @@ -3795,12 +3011,10 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QHostInfo - Unknown error Nieznany bÅ‚Ä…d - No host name given Nie podano nazwy hosta @@ -3808,37 +3022,22 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QHostInfoAgent - - - - Host not found Host nie znaleziony - - - - Unknown address type Nieznany typ adresu - - - Unknown error Nieznany bÅ‚Ä…d - - No host name given Nie podano nazwy hosta - - Invalid hostname Niepoprawna nazwa hosta @@ -3846,153 +3045,110 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QHttp - Connected to host PodÅ‚Ä…czony do hosta - Connected to host %1 PodÅ‚Ä…czony do hosta %1 - - Connection closed PoÅ‚Ä…czenie zakoÅ„czone - - Connection refused PoÅ‚Ä…czenie odrzucone - Connection to %1 closed PoÅ‚Ä…czenie do %1 zamkniÄ™te - Host %1 found Host %1 znaleziony - - - Host %1 not found Host %1 nie znaleziony - Host found Host znaleziony - - HTTP request failed Komenda HTTP zakoÅ„czona bÅ‚Ä™dem - - - - Invalid HTTP chunked body Niepoprawne ciaÅ‚o HTTP - - Invalid HTTP response header Niepoprawny nagłówek odpowiedzi HTTP - - No server set to connect to Brak serwera do podÅ‚Ä…czenia - - Request aborted Komenda przerwana - - Server closed connection unexpectedly Serwer nieoczekiwanie zakoÅ„czyÅ‚ poÅ‚Ä…czenie - - - - Unknown error Nieznany bÅ‚Ä…d - HTTPS connection requested but SSL support not compiled in Zażądano poÅ‚Ä…czenia HTTPS lecz obsÅ‚uga SSL nie jest wkompilowana - - Wrong content length BÅ‚Ä™dna dÅ‚ugość zawartoÅ›ci - Unknown authentication method Nieznana metoda autoryzacji - Proxy authentication required Wymagana autoryzacja poÅ›rednika - Authentication required Wymagana autoryzacja - Error writing response to device BÅ‚Ä…d zapisywania odpowiedzi do urzÄ…dzenia - Proxy requires authentication PoÅ›rednik wymaga autoryzacji - Host requires authentication Host wymaga autoryzacji - Data corrupted Dane uszkodzone - Unknown protocol specified Podano nieznany protokół - SSL handshake failed NawiÄ…zanie sesji SSL zakoÅ„czone bÅ‚Ä™dem - Connection refused (or timed out) PoÅ‚Ä…czenie odrzucone (przekroczony czas poÅ‚Ä…czenia) @@ -4000,47 +3156,38 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QHttpSocketEngine - Did not receive HTTP response from proxy Nie odebrano odpowiedzi HTTP od poÅ›rednika - Error parsing authentication request from proxy BÅ‚Ä…d parsowania żądania autoryzacji od poÅ›rednika - Authentication required Wymagana autoryzacja - Proxy denied connection PoÅ›rednik odmówiÅ‚ poÅ‚Ä…czenia - Error communicating with HTTP proxy BÅ‚Ä…d podczas komunikacji z poÅ›rednikiem HTTP - Proxy server not found Nie znaleziono serwera poÅ›redniczÄ…cego - Proxy connection refused Odmowa poÅ‚Ä…czenia z poÅ›rednikiem - Proxy server connection timed out Przekroczony czas poÅ‚Ä…czenia do serwera poÅ›redniczÄ…cego - Proxy connection closed prematurely Przedwczesne zakoÅ„czenie poÅ‚Ä…czenia z poÅ›rednikiem @@ -4048,22 +3195,18 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QIBaseDriver - Could not start transaction Nie można rozpocząć transakcji - Error opening database BÅ‚Ä…d otwierania bazy danych - Unable to commit transaction Nie można dokonać transakcji - Unable to rollback transaction Nie można wycofać transakcji @@ -4071,89 +3214,70 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QIBaseResult - Could not allocate statement Nie można zaallokować polecenia - - Could not describe input statement Nie można opisać polecenia wejÅ›ciowego - Could not describe statement Nie można opisać polecenia - Could not fetch next item Nie można pobrać kolejnego elementu - - Could not find array Nie można odnaleźć tablicy - Could not get array data Nie można pobrać danych z tablicy - Could not get query info Nie można pobrać informacji o zapytaniu - Could not get statement info Nie można pobrać informacji o poleceniu - Could not prepare statement Nie można przygotować polecenia - Could not start transaction Nie można rozpocząć transakcji - Unable to close statement Nie można zamknąć polecenia - Unable to commit transaction Nie można dokonać transakcji - Unable to create BLOB Nie można utworzyć obiektu typu BLOB - Unable to execute query Nie można wykonać zapytania - Unable to open BLOB Nie można otworzyć obiektu typu BLOB - Unable to read BLOB Nie można odczytać obiektu typu BLOB - Unable to write BLOB Nie można zapisać obiektu typu BLOB @@ -4161,27 +3285,22 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QIODevice - No space left on device Brak wolnego miejsca na urzÄ…dzeniu - No such file or directory Brak pliku lub katalogu - Permission denied Brak uprawnieÅ„ - Too many open files Zbyt wiele otwartych plików - Unknown error Nieznany bÅ‚Ä…d @@ -4189,32 +3308,26 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QInputContext - Mac OS X input method Metoda wprowadzania Mac OS X - Windows input method Metoda wprowadzania Windows - XIM XIM - FEP FEP - XIM input method Metoda wprowadzania XIM - S60 FEP input method Metoda wprowadzania S60 FEP @@ -4222,7 +3335,6 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QInputDialog - Enter a value: Podaj wartość: @@ -4230,67 +3342,50 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QLibrary - Could not mmap '%1': %2 Nie można wykonać przypisania '%1': %2 - Could not unmap '%1': %2 Nie można usunąć przypisania '%1': %2 - Plugin verification data mismatch in '%1' Niezgodność podczas weryfikacji danych we wtyczce "%1" - The plugin '%1' uses incompatible Qt library. (%2.%3.%4) [%5] Wtyczka '%1' używa niepoprawnej wersji biblioteki QT. (%2.%3.%4) [%5] - The plugin '%1' uses incompatible Qt library. Expected build key "%2", got "%3" Wtyczka '%1' używa niepoprawnej wersji biblioteki QT. Oczekiwano klucza "%2", uzyskano "%3" - Unknown error Nieznany bÅ‚Ä…d - - - The shared library was not found. Biblioteka współdzielona niedostÄ™pna. - The file '%1' is not a valid Qt plugin. Plik "%1" nie jest poprawnÄ… wtyczkÄ… Qt. - The plugin '%1' uses incompatible Qt library. (Cannot mix debug and release libraries.) Wtyczka "%1" używa innej wersji biblioteki Qt. (Nie można Å‚Ä…czyć bibliotek zwykÅ‚ych i debugowych.) - - Cannot load library %1: %2 Nie można zaÅ‚adować biblioteki %1: %2 - - Cannot unload library %1: %2 Nie można zwolnić biblioteki %1: %2 - - Cannot resolve symbol "%1" in %2: %3 Nie można zidentyfikować symbolu "%1" w %2: %3 @@ -4298,37 +3393,30 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QLineEdit - &Copy S&kopiuj - Cu&t W&ytnij - Delete Skasuj - &Paste &Wklej - &Redo &Przywróć - Select All Zaznacz wszystko - &Undo &Cofnij @@ -4336,23 +3424,18 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QLocalServer - - %1: Name error %1: BÅ‚Ä…d nazwy - %1: Permission denied %1: Brak uprawnieÅ„ - %1: Address in use %1: Adres użyty - %1: Unknown error %2 %1: Nieznany bÅ‚Ä…d %2 @@ -4360,70 +3443,46 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QLocalSocket - - %1: Connection refused %1: Odmowa poÅ‚Ä…czenia - - %1: Remote closed %1: Drugi koniec odÅ‚Ä…czony - - - - %1: Invalid name %1: Niepoprawna nazwa - - %1: Socket access error %1: BÅ‚Ä…d dostÄ™pu do gniazda - - %1: Socket resource error %1: BÅ‚Ä…d zasobów gniazda - - %1: Socket operation timed out %1: Przekroczony czas operacji gniazda - - %1: Datagram too large %1: Za duży datagram - - - %1: Connection error %1: BÅ‚Ä…d poÅ‚Ä…czenia - - %1: The socket operation is not supported %1: Operacja nie jest obsÅ‚ugiwana przez gniazdo - %1: Unknown error %1: Nieznany bÅ‚Ä…d - - %1: Unknown error %2 %1: Nieznany bÅ‚Ä…d %2 @@ -4431,27 +3490,22 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QMYSQLDriver - Unable to begin transaction Nie można rozpocząć transakcji - Unable to commit transaction Nie można potwierdzić transakcji - Unable to connect Nie można nawiÄ…zać poÅ‚Ä…czenia - Unable to open database ' Nie można otworzyć bazy danych ' - Unable to rollback transaction Nie można wycofać transakcji @@ -4459,60 +3513,46 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QMYSQLResult - - Unable to bind outvalues Nie można powiÄ…zać wartoÅ›ci zewnÄ™trznych - Unable to bind value Nie można powiÄ…zać wartoÅ›ci - Unable to execute query Nie można wykonać zapytania - Unable to execute statement Nie można wykonać polecenia - - Unable to fetch data Nie można pobrać danych - - Unable to prepare statement Nie można przygotować polecenia - Unable to reset statement Nie można skasować polecenia - Unable to store result Nie można zachować wyników - Unable to store statement results Nie można zachować wyników polecenia - Unable to execute next query Nie można wykonać nastÄ™pnego zapytania - Unable to store next result Nie można zachować nastÄ™pnego wyniku @@ -4520,7 +3560,6 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QMdiArea - (Untitled) (Nienazwany) @@ -4528,92 +3567,74 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QMdiSubWindow - %1 - [%2] %1 - [%2] - Close Zamknij - Minimize Zminimalizuj - Restore Down Przywróć pod spód - &Restore &Przywróć - &Move Prze&nieÅ› - &Size &Rozmiar - Mi&nimize Zmi&nimalizuj - Ma&ximize Zma&ksymalizuj - Stay on &Top Pozostaw na &wierzchu - &Close &Zamknij - Maximize Zmaksymalizuj - Unshade RozwiÅ„ - Shade ZwiÅ„ - Restore Przywróć - Help Pomoc - Menu Menu - - [%1] - [%1] @@ -4621,21 +3642,14 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QMenu - - Close Zamknij - - - Execute Wykonaj - - Open Otwórz @@ -4643,7 +3657,6 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QMenuBar - Actions Akcje @@ -4651,40 +3664,30 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QMessageBox - About Qt Informacje o Qt - Help Pomoc - Hide Details... Ukryj szczegóły... - - - - OK OK - <h3>About Qt</h3><p>This program uses Qt version %1.</p> <h3>Informacje o Qt</h3><p> Ten program używa Qt w wersji %1.</p> - <p>Qt is a C++ toolkit for cross-platform application development.</p><p>Qt provides single-source portability across MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qt for Embedded Linux and Qt for Windows CE.</p><p>Qt is available under three different licensing options designed to accommodate the needs of our various users.</p><p>Qt licensed under our commercial license agreement is appropriate for development of proprietary/commercial software where you do not want to share any source code with third parties or otherwise cannot comply with the terms of the GNU LGPL version 2.1 or GNU GPL version 3.0.</p><p>Qt licensed under the GNU LGPL version 2.1 is appropriate for the development of Qt applications (proprietary or open source) provided you can comply with the terms and conditions of the GNU LGPL version 2.1.</p><p>Qt licensed under the GNU General Public License version 3.0 is appropriate for the development of Qt applications where you wish to use such applications in combination with software subject to the terms of the GNU GPL version 3.0 or where you are otherwise willing to comply with the terms of the GNU GPL version 3.0.</p><p>Please see <a href="http://qt.nokia.com/products/licensing">qt.nokia.com/products/licensing</a> for an overview of Qt licensing.</p><p>Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).</p><p>Qt is a Nokia product. See <a href="http://qt.nokia.com/">qt.nokia.com</a> for more information.</p> <p>Qt jest zestawem narzÄ™dzi programistycznych dedykowanym dla jÄ™zyka C++. SÅ‚uży on do opracowywania aplikacji miÄ™dzyplatformowych.</p><p>Qt umożliwia jednoźródÅ‚owe przenoszenie miÄ™dzy systemami MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux i wszystkimi głównymi wersjami komercyjnymi systemu Unix. Åšrodowisko Qt jest dostÄ™pne dla urzÄ…dzeÅ„ wbudowanych opartych na systemie Linux ( Qt dla wbudowanego systemu Linux) oraz Windows CE.</p><p>Zestaw Qt jest dostÄ™pny w trzech różnych opcjach licencjonowania stworzonych w celu zadowolenia naszych różnych użytkowników.</p><p>Qt podlegajÄ…cy licencji zgodnie z naszÄ… komercyjnÄ… umowÄ… licencyjnÄ… jest odpowiedni do opracowywania oprogramowaÅ„ wÅ‚asnoÅ›ciowych/komercyjnych, dziÄ™ki czemu kod źródÅ‚owy nie jest udostÄ™pniany osobom trzecim. W przeciwnym razie zestaw Qt jest niezgodny z warunkami licencji GNU LGPL w wersji 2.1 lub GNU GPL w wersji 3.0.</p><p>Åšrodowisko Qt objÄ™te licencjÄ… GNU LGPL w wersji 2.1 nadaje siÄ™ do tworzenia aplikacji Qt (wÅ‚asnoÅ›ciowych lub oprogramowaÅ„ otwartych) tylko wtedy, gdy przestrzegane sÄ… warunki licencji GNU LGPL w wersji 2.1.</p><p>Qt objÄ™ty PowszechnÄ… LicencjÄ… PublicznÄ… GNU w wersji 3.0 jest odpowiedni do opracowywania aplikacji QT, aby móc korzystać z aplikacji w poÅ‚Ä…czeniu z oprogramowaniem podlegajÄ…cym warunkom licencji GNU GPL w wersji 3.0 lub aby przestrzegać warunków licencji GNU GPL w wersji 3.0.</p><p>WiÄ™cej informacji na temat licencji Qt można znaleźć na stronie <a href="http://qt.nokia.com/products/licensing">qt.nokia.com/products/licensing</a>.</p><p>Copyright (C) 2010 Nokia Corporation i/lub oddziaÅ‚y firmy.</p><p>Qt jest produktem firmy Nokia. Dodatkowe informacje znajdujÄ… siÄ™ na stronie <a href="http://qt.nokia.com/">qt.nokia.com</a> </p> - Show Details... Pokaż szczegóły... @@ -4692,7 +3695,6 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QMultiInputContext - Select IM Wybierz metodÄ™ wprowadzania @@ -4700,12 +3702,10 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QMultiInputContextPlugin - Multiple input method switcher PrzeÅ‚Ä…cznik metody wprowadzania - Multiple input method switcher that uses the context menu of the text widgets PrzeÅ‚Ä…cznik metody wprowadzania, który w widżetach tekstowych używa podrÄ™cznego menu @@ -4713,132 +3713,106 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QNativeSocketEngine - Another socket is already listening on the same port Inne gniazdo nasÅ‚uchuje już na tym porcie - Attempt to use IPv6 socket on a platform with no IPv6 support Próba użycia IPv6 na platformie bez obsÅ‚ugi IPv6 - Connection refused PoÅ‚Ä…czenie odrzucone - Connection timed out Przekroczony czas poÅ‚Ä…czenia - Datagram was too large to send Datagram za dÅ‚ugi do wysÅ‚ania - Host unreachable Komputer niedostÄ™pny - Invalid socket descriptor Niepoprawny opis gniazda - Network error BÅ‚Ä…d sieci - Network operation timed out Przekroczony czas operacji sieciowej - Network unreachable Sieć niedostÄ™pna - Operation on non-socket NieprawidÅ‚owa operacja na gnieździe - Out of resources Zasoby wyczerpane - Permission denied Brak uprawnieÅ„ - Protocol type not supported NieobsÅ‚ugiwany typ protokoÅ‚u - The address is not available Adres nie jest dostÄ™pny - The address is protected Adres jest zabezpieczony - The bound address is already in use Adres jest aktualnie w użyciu - The remote host closed the connection Zdalny host zakoÅ„czyÅ‚ poÅ‚Ä…czenie - Unable to initialize broadcast socket Nie można uruchomić gniazda rozsyÅ‚ajÄ…cego - Unable to initialize non-blocking socket Nie można uruchomić gniazda w nieblokujÄ…cym trybie - Unable to receive a message Nie można odebrać wiadomoÅ›ci - Unable to send a message Nie można wysÅ‚ać wiadomoÅ›ci - Unable to write Nie można zapisać - Unknown error Nieznany bÅ‚Ä…d - Unsupported socket operation NieobsÅ‚ugiwana operacja gniazda - The proxy type is invalid for this operation Typ poÅ›rednika nie jest poprawny dla tej operacji @@ -4846,7 +3820,6 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QNetworkAccessCacheBackend - Error opening %1 BÅ‚Ä…d otwierania %1 @@ -4854,12 +3827,10 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QNetworkAccessDataBackend - Operation not supported on %1 Operacja nieobsÅ‚ugiwana na %1 - Invalid URI: %1 Niepoprawny URI: %1 @@ -4867,17 +3838,14 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QNetworkAccessDebugPipeBackend - Write error writing to %1: %2 BÅ‚Ä…d w trakcie zapisywania do %1: %2 - Socket error on %1: %2 BÅ‚Ä…d gniazda na %1: %2 - Remote host closed the connection prematurely on %1 Zdalny host przedwczeÅ›nie zakoÅ„czyÅ‚ poÅ‚Ä…czenie na %1 @@ -4885,30 +3853,22 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QNetworkAccessFileBackend - - Request for opening non-local file %1 Żądanie otwarcia zdalnego pliku %1 - - Error opening %1: %2 BÅ‚Ä…d otwierania %1: %2 - Write error writing to %1: %2 BÅ‚Ä…d w trakcie zapisywania do %1: %2 - - Cannot open %1: Path is a directory Nie można otworzyć %1: Åšcieżka jest katalogiem - Read error reading from %1: %2 BÅ‚Ä…d w trakcie czytania z %1: %2 @@ -4916,27 +3876,22 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QNetworkAccessFtpBackend - No suitable proxy found Nie odnaleziono odpowiedniego poÅ›rednika - Cannot open %1: is a directory Nie można otworzyć %1: jest to katalog - Logging in to %1 failed: authentication required BÅ‚Ä…d podczas logowania do %1: wymagana autoryzacja - Error while downloading %1: %2 BÅ‚Ä…d podczas pobierania %1: %2 - Error while uploading %1: %2 BÅ‚Ä…d podczas wysyÅ‚ania %1: %2 @@ -4944,7 +3899,6 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QNetworkAccessHttpBackend - No suitable proxy found Nie odnaleziono odpowiedniego poÅ›rednika @@ -4952,7 +3906,6 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QNetworkAccessManager - Network access is disabled. DostÄ™p do sieci wyÅ‚Ä…czony. @@ -4960,22 +3913,18 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QNetworkReply - Error downloading %1 - server replied: %2 BÅ‚Ä…d podczas pobierania %1 - odpowiedź serwera: %2 - Protocol "%1" is unknown Protokół "%1" nie jest znany - Network session error. BÅ‚Ä…d sesji sieciowej. - Temporary network failure. Chwilowy bÅ‚Ä…d w sieci. @@ -4983,8 +3932,6 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QNetworkReplyImpl - - Operation canceled Operacja anulowana @@ -4992,7 +3939,6 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QNetworkSession - Invalid configuration. Niepoprawna konfiguracja. @@ -5000,47 +3946,34 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QNetworkSessionPrivateImpl - Roaming error BÅ‚Ä…d roamingu - Session aborted by user or system Sesja przerwana przez użytkownika lub system - Unidentified Error Niezidentyfikowany bÅ‚Ä…d - - Unknown session error. Nieznany bÅ‚Ä…d sesji. - - The session was aborted by the user or system. Sesja zostaÅ‚a przerwana przez użytkownika lub system. - - The requested operation is not supported by the system. Zażądana operacja nie jest obsÅ‚ugiwana przez system. - - The specified configuration cannot be used. Podana konfiguracja nie może być użyta. - - Roaming was aborted or is not possible. Roaming przerwany albo niemożliwy. @@ -5048,28 +3981,23 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QOCIDriver - Unable to initialize QOCIDriver Nie można dokonać inicjalizacji - Unable to logon Nie można siÄ™ zalogować - Unable to begin transaction Nie można rozpocząć transakcji - Unable to commit transaction Nie można dokonać transakcji - Unable to rollback transaction Nie można wycofać transakcji @@ -5077,44 +4005,34 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QOCIResult - - - Unable to bind column for batch execute Nie można powiÄ…zać kolumny dla wykonania zestawu poleceÅ„ - Unable to execute batch statement Nie można wykonać polecenia wsadowego - Unable to goto next Nie można przejść do kolejnego wiersza danych - Unable to alloc statement Nie można przydzielić miejsca na polecenie - Unable to prepare statement Nie można przygotować polecenia - Unable to get statement type Nie można pobrać typu polecenia - Unable to bind value Nie można powiÄ…zać wartoÅ›ci - Unable to execute statement Nie można wykonać polecenia @@ -5122,32 +4040,26 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QODBCDriver - Unable to commit transaction Nie można potwierdzić transakcji - Unable to connect Nie można nawiÄ…zać poÅ‚Ä…czenia - Unable to disable autocommit Nie można wyÅ‚Ä…czyć trybu automatycznego dokonywania transakcji - Unable to enable autocommit Nie można wÅ‚Ä…czyć trybu automatycznego dokonywania transakcji - Unable to rollback transaction Nie można wycofać transakcji - Unable to connect - Driver doesn't support all functionality required Nie można nawiÄ…zać poÅ‚Ä…czenia - sterownik nie obsÅ‚uguje caÅ‚ej potrzebnej funkcjonalnoÅ›ci @@ -5155,51 +4067,38 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QODBCResult - - QODBCResult::reset: Unable to set 'SQL_CURSOR_STATIC' as statement attribute. Please check your ODBC driver configuration QODBCResult::reset: Nie można ustawić 'SQL_CURSOR_STATIC' jako atrybutu polecenia. ProszÄ™ sprawdzić konfiguracje sterownika ODBC - Unable to bind variable Nie można powiÄ…zać zmiennej - - Unable to execute statement Nie można wykonać polecenia - Unable to fetch next Nie można pobrać kolejnych danych - Unable to prepare statement Nie można przygotować polecenia - - - Unable to fetch last Nie można pobrać ostatnich danych - Unable to fetch Nie można pobrać - Unable to fetch first Nie można pobrać pierwszych danych - Unable to fetch previous Nie można pobrać poprzednich danych @@ -5207,19 +4106,14 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QObject - - PulseAudio Sound Server Serwer dźwiÄ™ku PulseAudio - "%1" duplicates a previous role name and will be disabled. - - invalid query: "%1" Niepoprawne zapytanie: "%1" @@ -5227,12 +4121,10 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QPPDOptionsModel - Name Nazwa - Value Wartość @@ -5240,32 +4132,26 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QPSQLDriver - Could not begin transaction Nie można rozpocząć transakcji - Could not commit transaction Nie można potwierdzić transakcji - Could not rollback transaction Nie można wycofać transakcji - Unable to connect Nie można nawiÄ…zać poÅ‚Ä…czenia - Unable to subscribe Nie można wykonać subskrypcji - Unable to unsubscribe Nie można zrezygnować z subskrypcji @@ -5273,12 +4159,10 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QPSQLResult - Unable to create query Nie można utworzyć zapytania - Unable to prepare statement Nie można przygotować polecenia @@ -5286,102 +4170,82 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QPageSetupWidget - Centimeters (cm) Centymetry (cm) - Millimeters (mm) Milimetry (mm) - Inches (in) Cale (in) - Points (pt) Punkty (pt) - Form Formularz - Paper Papier - Page size: Rozmiar strony: - Width: Szerokość: - Height: Wysokość: - Paper source: ŹródÅ‚o papieru: - Orientation PoÅ‚ożenie - Portrait Portret - Landscape Pejzaż - Reverse landscape Odwrócony pejzaż - Reverse portrait Odwrócony portret - Margins Marginesy - top margin Górny margines - left margin Lewy margines - right margin Prawy margines - bottom margin Dolny margines @@ -5389,12 +4253,10 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QPluginLoader - Unknown error Nieznany bÅ‚Ä…d - The plugin was not loaded. Wtyczka nie zostaÅ‚a zaÅ‚adowana. @@ -5402,433 +4264,344 @@ ProszÄ™ o sprawdzenie podanej nazwy pliku. QPrintDialog - A0 (841 x 1189 mm) A0 (841 x 1189 mm) - A1 (594 x 841 mm) A1 (594 x 841 mm) - A2 (420 x 594 mm) A2 (420 x 594 mm) - A3 (297 x 420 mm) A3 (297 x 420 mm) - A4 (210 x 297 mm, 8.26 x 11.7 inches) A4 (210 x 297 mm, 8.26 x 11.7 cali) - A5 (148 x 210 mm) A5 (148 x 210 mm) - A6 (105 x 148 mm) A6 (105 x 148 mm) - A7 (74 x 105 mm) A7 (74 x 105 mm) - A8 (52 x 74 mm) A8 (52 x 74 mm) - A9 (37 x 52 mm) A9 (37 x 52 mm) - Print current page Wydrukuj bieżącÄ… stronÄ™ - - Aliases: %1 Aliasy: %1 - B0 (1000 x 1414 mm) B0 (1000 x 1414 mm) - B1 (707 x 1000 mm) B1 (707 x 1000 mm) - B10 (31 x 44 mm) B10 (31 x 44 mm) - B2 (500 x 707 mm) B2 (500 x 707 mm) - B3 (353 x 500 mm) B3 (353 x 500 mm) - B4 (250 x 353 mm) B4 (250 x 353 mm) - B5 (176 x 250 mm, 6.93 x 9.84 inches) B5 (176 x 250 mm, 6.93 x 9.84 cali) - B6 (125 x 176 mm) B6 (125 x 176 mm) - B7 (88 x 125 mm) B7 (88 x 125 mm) - B8 (62 x 88 mm) B8 (62 x 88 mm) - B9 (44 x 62 mm) B9 (44 x 62 mm) - C5E (163 x 229 mm) C5E (163 x 229 mm) - DLE (110 x 220 mm) DLE (110 x 220 mm) - locally connected podÅ‚Ä…czony lokalnie - OK OK - Print all Drukuj wszystko - Print range Drukuj zakres - - unknown nieznany - Executive (7.5 x 10 inches, 191 x 254 mm) Executive (7.5 x 10 cali, 191 x 254 mm) - Folio (210 x 330 mm) Folio (210 x 330 mm) - Ledger (432 x 279 mm) Ledger (432 x 279 mm) - Legal (8.5 x 14 inches, 216 x 356 mm) Legal (8.5 x 14 cali, 216 x 356 mm) - Letter (8.5 x 11 inches, 216 x 279 mm) Letter (8.5 x 11 cali, 216 x 279 mm) - Tabloid (279 x 432 mm) Tabloid (279 x 432 mm) - US Common #10 Envelope (105 x 241 mm) US Common #10 Envelope (105 x 241 mm) - - - Print Drukowanie - Print To File ... Drukuj do pliku ... - File %1 is not writable. Please choose a different file name. Plik %1 jest plikiem tylko do odczytu. ProszÄ™ wybrać innÄ… nazwÄ™ pliku. - %1 already exists. Do you want to overwrite it? %1 już istnieje. Czy chcesz nadpisać? - %1 is a directory. Please choose a different file name. %1 jest katalogiem. ProszÄ™ wybrać innÄ… nazwÄ™ pliku. - File exists Plik istnieje - <qt>Do you want to overwrite it?</qt> <qt>Czy chcesz nadpisać?</qt> - Print selection Drukuj zaznaczone - A0 A0 - A1 A1 - A2 A2 - A3 A3 - A4 A4 - A5 A5 - A6 A6 - A7 A7 - A8 A8 - A9 A9 - B0 B0 - B1 B1 - B2 B2 - B3 B3 - B4 B4 - B5 B5 - B6 B6 - B7 B7 - B8 B8 - B9 B9 - B10 B10 - C5E C5E - DLE DLE - Executive Executive - Folio Folio - Ledger Ledger - Legal Legal - Letter Letter - Tabloid Tabloid - US Common #10 Envelope US Common #10 Envelope - Custom Niestandardowy - - &Options >> &Opcje >> - &Print Wy&drukuj - &Options << &Opcje << - Print to File (PDF) Drukuj do pliku (PDF) - Print to File (Postscript) Drukuj do pliku (Postscript) - Local file Plik lokalny - Write %1 file Zapisz %1 plik - The 'From' value cannot be greater than the 'To' value. Wartość "od" nie może być wiÄ™ksza od wartoÅ›ci "do". @@ -5836,108 +4609,86 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QPrintPreviewDialog - %1% %1% - Print Preview PodglÄ…d wydruku - Next page NastÄ™pna strona - Previous page Poprzednia strona - First page Pierwsza strona - Last page Ostatnia strona - Fit width Dopasuj szerokość - Fit page Dopasuj stronÄ™ - Zoom in PowiÄ™ksz - Zoom out Pomniejsz - Portrait Portret - Landscape Pejzaż - Show single page Pokaż pojedynczÄ… stronÄ™ - Show facing pages Pokaż sÄ…siednie strony - Show overview of all pages Pokaż wszystkie strony - Print Wydrukuj - Page setup Ustawienia strony - Close Zamknij - Export to PDF Wyeksportuj do PDF - Export to PostScript Wyeksportuj do PostScript - - Page Setup Ustawienia strony @@ -5945,17 +4696,14 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QPrintPropertiesWidget - Form Forma - Page Strona - Advanced Zaawansowane @@ -5963,102 +4711,82 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QPrintSettingsOutput - Form Forma - Copies Liczba kopii - Print range Zakres wydruku - Print all Drukuj wszystko - Pages from Strony od - to do - Selection Wybrane strony - Output Settings Ustawienia wyjÅ›ciowe - Copies: Kopie: - Collate Parami - Reverse Odwróć - Options Opcje - Color Mode Tryb koloru - Color Kolor - Grayscale Skala szaroÅ›ci - Duplex Printing Drukowanie dupleksowe - None Brak - Long side DÅ‚uga strona - Short side Krótka strona - Current Page Bieżąca strona @@ -6066,47 +4794,38 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QPrintWidget - Form Forma - Printer Drukarka - &Name: &Nazwa: - P&roperties &WÅ‚aÅ›ciwoÅ›ci - Location: PoÅ‚ożenie: - Preview PodglÄ…d - Type: Typ: - Output &file: &Plik wyjÅ›ciowy: - ... ... @@ -6114,62 +4833,38 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QProcess - - Could not open input redirection for reading Nie można otworzyć wejÅ›ciowego przekierowania do odczytu - - Could not open output redirection for writing Nie można otworzyć wyjÅ›ciowego przekierowania do zapisu - Resource error (fork failure): %1 BÅ‚Ä…d zasobów (bÅ‚Ä…d forkowania): %1 - - - - - - - - - Process operation timed out Przekroczony czas operacji procesu - - - - Error reading from process BÅ‚Ä…d odczytywania z procesu - - - Error writing to process BÅ‚Ä…d zapisywania do procesu - Process crashed WystÄ…piÅ‚ bÅ‚Ä…d w procesie - proces zakoÅ„czony - No program defined Nie zdefiniowano programu - Process failed to start: %1 Nie można rozpocząć procesu: %1 @@ -6177,7 +4872,6 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QProgressDialog - Cancel Anuluj @@ -6185,7 +4879,6 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QPushButton - Open Otwórz @@ -6193,7 +4886,6 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QRadioButton - Check Zaznacz @@ -6201,57 +4893,46 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QRegExp - bad char class syntax niepoprawna skÅ‚adnia klasy znakowej - bad lookahead syntax niepoprawna skÅ‚adnia "lookahead" - bad repetition syntax niepoprawna skÅ‚adnia powtórzenia - invalid interval Niepoprawny interwaÅ‚ - invalid category Niepoprawna kategoria - disabled feature used użyta funkcja zostaÅ‚a wyÅ‚Ä…czona - invalid octal value niepoprawna wartość ósemkowa - met internal limit napotkano wewnÄ™trzne ograniczenie - missing left delim brakujÄ…cy lewy separator - no error occurred nie pojawiÅ‚ siÄ™ żaden bÅ‚Ä…d - unexpected end nieoczekiwany koniec @@ -6259,22 +4940,18 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QSQLite2Driver - Error opening database BÅ‚Ä…d otwierania bazy danych - Unable to begin transaction Nie można rozpocząć transakcji - Unable to commit transaction Nie można dokonać transakcji - Unable to rollback transaction Nie można wycofać transakcji @@ -6282,12 +4959,10 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QSQLite2Result - Unable to execute statement Nie można wykonać polecenia - Unable to fetch results Nie można pobrać wyników @@ -6295,27 +4970,22 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QSQLiteDriver - Error closing database BÅ‚Ä…d zamykania bazy danych - Error opening database BÅ‚Ä…d otwierania bazy danych - Unable to begin transaction Nie można rozpocząć transakcji - Unable to commit transaction Nie można dokonać transakcji - Unable to rollback transaction Nie można wycofać transakcji @@ -6323,34 +4993,26 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QSQLiteResult - Parameter count mismatch Niezgodna liczba parametrów - Unable to bind parameters Nie można powiÄ…zać parametrów - Unable to execute statement Nie można wykonać polecenia - - - Unable to fetch row Nie można pobrać wiersza danych - Unable to reset statement Nie można skasować polecenia - No query Brak zapytania @@ -6358,32 +5020,26 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QScriptBreakpointsModel - ID Identyfikator - Location PoÅ‚ożenie - Condition Warunek - Ignore-count Licznik pominięć - Single-shot - + Pojedyncze trafienie - Hit-count Licznik trafieÅ„ @@ -6391,12 +5047,10 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QScriptBreakpointsWidget - New Nowy - Delete Skasuj @@ -6404,143 +5058,114 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QScriptDebugger - - Go to Line Przejdź do linii - Line: Linia: - Interrupt Przerwij - Shift+F5 Shift+F5 - Continue Kontynuuj - F5 F5 - Step Into Wskocz do wnÄ™trza - F11 F11 - Step Over Przeskocz - F10 F10 - Step Out Wyskocz na zewnÄ…trz - Shift+F11 Shift+F11 - Run to Cursor Uruchom do kursora - Ctrl+F10 Ctrl+F10 - Run to New Script Uruchom do nowego skryptu - Toggle Breakpoint PrzeÅ‚Ä…cz ustawienie puÅ‚apki - F9 F9 - Clear Debug Output Wyczyść wyjÅ›cie debuggera - Clear Error Log Wyczyść log z bÅ‚Ä™dami - Clear Console Wyczyść konsolÄ™ - &Find in Script... &Znajdź w skrypcie... - Ctrl+F Ctrl+F - Find &Next Znajdź &nastÄ™pne - F3 F3 - Find &Previous Znajdź &poprzednie - Shift+F3 Shift+F3 - Ctrl+G Ctrl+G - Debug Debuguj @@ -6548,32 +5173,26 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QScriptDebuggerCodeFinderWidget - Close Zamknij - Previous Poprzednie - Next NastÄ™pne - Case Sensitive UwzglÄ™dniaj wielkość liter - Whole words CaÅ‚e sÅ‚owa - <img src=":/qt/scripttools/debugging/images/wrap.png">&nbsp;Search wrapped <img src=":/qt/scripttools/debugging/images/wrap.png">&nbsp;Przeszukano od poczÄ…tku @@ -6581,12 +5200,10 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QScriptDebuggerLocalsModel - Name Nazwa - Value Wartość @@ -6594,17 +5211,14 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QScriptDebuggerStackModel - Level Poziom - Name Nazwa - Location PoÅ‚ożenie @@ -6612,22 +5226,18 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QScriptEdit - Toggle Breakpoint PrzeÅ‚Ä…cz ustawienie puÅ‚apki - Disable Breakpoint WyÅ‚Ä…cz puÅ‚apkÄ™ - Enable Breakpoint WÅ‚Ä…cz puÅ‚apkÄ™ - Breakpoint Condition: Warunek dla puÅ‚apki: @@ -6635,52 +5245,42 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QScriptEngineDebugger - Loaded Scripts ZaÅ‚adowane skrypty - Breakpoints PuÅ‚apki - Stack Stos - Locals Zmienne lokalne - Console Konsola - Debug Output WyjÅ›cie debuggera - Error Log Log z bÅ‚Ä™dami - Search Szukaj - View Widok - Qt Script Debugger Debugger Qt Script @@ -6688,7 +5288,6 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QScriptNewBreakpointWidget - Close Zamknij @@ -6696,84 +5295,66 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QScrollBar - Bottom W dół - Left edge Lewa krawÄ™dź - Line down Linia w dół - Line up Linia w górÄ™ - - Page down Strona w dół - Page left Strona w lewo - Page right Strona w prawo - - Page up Strona do góry - Position Pozycja - Right edge Prawa krawÄ™dź - Scroll down PrzewiÅ„ w dół - Scroll here PrzewiÅ„ tutaj - Scroll left PrzewiÅ„ w lewo - Scroll right PrzewiÅ„ w prawo - Scroll up PrzewiÅ„ do góry - Top Do góry @@ -6781,111 +5362,78 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QSharedMemory - %1: create size is less then 0 %1: rozmiar przy tworzeniu mniejszy od 0 - - %1: unable to lock %1: nie można zablokować - %1: unable to unlock %1: nie można odblokować - - - %1: permission denied %1: brak uprawnieÅ„ - - - %1: already exists %1: już istnieje - %1: doesn't exists %1: nie istnieje - - - %1: out of resources %1: zasoby wyczerpane - - - %1: unknown error %2 %1: nieznany bÅ‚Ä…d %2 - %1: key is empty %1: klucz jest pusty - %1: ftok failed %1: wystÄ…piÅ‚ bÅ‚Ä…d w funkcji ftok() - - - %1: unable to make key %1: nie można utworzyć klucza - - %1: doesn't exist %1: nie istnieje - %1: UNIX key file doesn't exist %1: unixowy plik z kluczem nie istnieje - %1: system-imposed size restrictions %1: ograniczenia rozmiarów narzucone przez system - %1: not attached %1: niedoÅ‚Ä…czony - - %1: invalid size %1: niepoprawny rozmiar - - %1: key error %1: bÅ‚Ä…d klucza - %1: size query failed %1: zapytanie o rozmiar zakoÅ„czone bÅ‚Ä™dem - %1: unable to set key on lock %1: nie można ustawić klucza na zablokowanym segmencie pamiÄ™ci współdzielonej @@ -6893,1107 +5441,884 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QShortcut - + + - - Alt Alt - Back Back - Backspace Backspace - Backtab Backtab - Bass Boost Wzmocnienie basów - Bass Down Basy w dół - Bass Up Basy w górÄ™ - Call Button to start a call (note: a separate button is used to end the call) WywoÅ‚aj - Caps Lock Caps Lock - CapsLock CapsLock - Media Pause Media player pause button - Toggle Media Play/Pause Media player button to toggle between playing and paused - Monitor Brightness Up ZwiÄ™ksz jasność monitora - Monitor Brightness Down Zmniejsz jasność monitora - Keyboard Light On/Off WÅ‚Ä…cz/wyÅ‚Ä…cz podÅ›wietlenie klawiatury - Keyboard Brightness Up ZwiÄ™ksz jasność klawiatury - Keyboard Brightness Down Zmniejsz jasność klawiatury - Power Off WyÅ‚Ä…cz zasilanie - Wake Up Przebudzenie - Eject WysuÅ„ - Screensaver Wygaszacz ekranu - WWW WWW - Sleep UÅ›pienie - LightBulb Å»arówka - Shop Sklep - History Historia - Add Favorite Dodaj do ulubionych - Hot Links Popularne Å‚Ä…cza - Adjust Brightness Ustaw jasność - Finance Finanse - Community SpoÅ‚eczność - Audio Rewind Przewijanie do tyÅ‚u - Back Forward - Application Left - Application Right - Book Książka - CD CD - Calculator Kalkulator - Clear Wyczyść - Clear Grab - Close Zamknij - Copy Skopiuj - Cut Wytnij - Display WyÅ›wietlacz - DOS DOS - Documents Dokumenty - Spreadsheet Arkusz kalkulacyjny - Browser PrzeglÄ…darka - Game Gra - Go Przejdź - iTouch iTouch - Logoff Wyloguj - Market Rynek - Meeting Spotkanie - Keyboard Menu Menu klawiatury - Menu PB Menu PB - My Sites Moje strony - News WiadomoÅ›ci - Home Office Biuro domowe - Option Opcje - Paste Wklej - Phone Telefon - Reply Odpowiedz - Reload PrzeÅ‚aduj - Rotate Windows Obróć okna - Rotation PB Obrót PB - Rotation KB Obrót KB - Save Zachowaj - Send WyÅ›lij - Spellchecker Sprawdzanie pisowni - Split Screen Podziel ekran - Support Pomoc techniczna - Task Panel Panel zadaÅ„ - Terminal Terminal - Tools NarzÄ™dzia - Travel Podróże - Video Wideo - Word Processor Procesor tekstu - XFer XFer - Zoom In PowiÄ™ksz - Zoom Out Pomniejsz - Away - Messenger Komunikator - WebCam WebCam - Mail Forward Przekazanie poczty - Pictures ZdjÄ™cia - Music Muzyka - Battery Bateria - Bluetooth Bluetooth - Wireless Bezprzewodowy - Ultra Wide Band Ultraszerokie pasmo - Audio Forward Przewijanie do przodu - Audio Repeat Powtarzanie - Audio Random Play Odtwarzanie losowe - Subtitle Napisy - Audio Cycle Track - Time Czas - View Widok - Top Menu Menu główne - Suspend Wstrzymanie - Hibernate Hibernacja - Context1 Kontekst1 - Context2 Kontekst2 - Context3 Kontekst3 - Context4 Kontekst4 - Toggle Call/Hangup Button that will hang up if we're in call, or make a call if we're not. - Voice Dial Button to trigger voice dialling - Last Number Redial Button to redial the last number called - Camera Shutter Button to trigger the camera shutter (take a picture) - Camera Focus Button to focus the camera - Kanji Kanji - Muhenkan Muhenkan - Henkan Henkan - Romaji Romaji - Hiragana Hiragana - Katakana Katakana - Hiragana Katakana Hiragana Katakana - Zenkaku Zenkaku - Hankaku Hankaku - Zenkaku Hankaku Zenkaku Hankaku - Touroku Touroku - Massyo Massyo - Kana Lock Kana Lock - Kana Shift Kana Shift - Eisu Shift Eisu Shift - Eisu toggle Eisu toggle - Code input Wprowadzanie kodu - Multiple Candidate Kandydat wielokrotny - Previous Candidate Poprzedni kandydat - Hangul Hangul - Hangul Start Hangul Start - Hangul End Hangul End - Hangul Hanja Hangul Hanja - Hangul Jamo Hangul Jamo - Hangul Romaja Hangul Romaja - Hangul Jeonja Hangul Jeonja - Hangul Banja Hangul Banja - Hangul PreHanja Hangul PreHanja - Hangul PostHanja Hangul PostHanja - Hangul Special Hangul Special - - Ctrl Ctrl - Del Del - Delete Delete - Down Dół - End End - Enter Enter - Esc Esc - Escape Escape - F%1 F%1 - Favorites Ulubione - Flip Odwróć - Forward Do przodu - Hangup Button to end a call (note: a separate button is used to start the call) ZawieÅ› - Help Pomoc - Home Home - Home Page Strona startowa - Ins Ins - Insert Insert - Launch (0) Uruchom (0) - Launch (1) Uruchom (1) - Launch (2) Uruchom (2) - Launch (3) Uruchom (3) - Launch (4) Uruchom (4) - Launch (5) Uruchom (5) - Launch (6) Uruchom (6) - Launch (7) Uruchom (7) - Launch (8) Uruchom (8) - Launch (9) Uruchom (9) - Launch (A) Uruchom (A) - Launch (B) Uruchom (B) - Launch (C) Uruchom (C) - Launch (D) Uruchom (D) - Launch (E) Uruchom (E) - Launch (F) Uruchom (F) - Launch Mail Uruchom program pocztowy - Launch Media Uruchom przeglÄ…darkÄ™ mediów - Left Lewo - Media Next NastÄ™pna Å›cieżka - Media Play Odtwarzaj - Media Previous Poprzednia Å›cieżka - Media Record Nagrywaj - Media Stop Zatrzymaj - Menu Menu - - Meta Meta - No Nie - Num Lock Num Lock - Number Lock Number Lock - NumLock NumLock - Open URL Otwórz adres - Page Down Strona do góry - Page Up Strona w dół - Pause Pauza - PgDown PgDown - PgUp PgUp - Print Wydrukuj - Print Screen Wydrukuj zawartość ekranu - Refresh OdÅ›wież - Return Powrót - Right Prawo - Scroll Lock Scroll Lock - ScrollLock ScrollLock - Search Szukaj - - Select Wybierz - - Shift Shift - Space This and all following "incomprehensible" strings in QShortcut context are key names. Please use the localized names appearing on actual keyboards or whatever is commonly used. Spacja - Standby Tryb oczekiwania - Stop Zatrzymaj - SysReq SysReq - System Request Żądanie systemu - Tab Tabulator - Treble Down Soprany w dół - Treble Up Soprany w górÄ™ - Up Góra - Volume Down Przycisz - Volume Mute Wycisz - Volume Up Zrób gÅ‚oÅ›niej - Yes Tak @@ -8001,27 +6326,22 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QSlider - Page down Strona w dół - Page left Strona w lewo - Page right Strona w prawo - Page up Strona do góry - Position PoÅ‚ożenie @@ -8029,72 +6349,58 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QSocks5SocketEngine - Connection to proxy refused Odmowa poÅ‚Ä…czenia z poÅ›rednikiem - Connection to proxy closed prematurely Przedwczesne zakoÅ„czenie poÅ‚Ä…czenia z poÅ›rednikiem - Proxy host not found Nie odnaleziono hosta poÅ›redniczÄ…cego - Connection to proxy timed out Przekroczony czas poÅ‚Ä…czenia do poÅ›rednika - Proxy authentication failed Autoryzacja poÅ›rednika zakoÅ„czona bÅ‚Ä™dem - Proxy authentication failed: %1 Autoryzacja poÅ›rednika zakoÅ„czona bÅ‚Ä™dem: %1 - SOCKS version 5 protocol error BÅ‚Ä…d protokoÅ‚u SOCKS wersji 5 - General SOCKSv5 server failure Generalny bÅ‚Ä…d serwera SOCKS wersji 5 - Connection not allowed by SOCKSv5 server PoÅ‚Ä…czenie niedozwolone przez serwer SOCKS wersji 5 - TTL expired TTL straciÅ‚ ważność - SOCKSv5 command not supported NieobsÅ‚ugiwana komenda SOCKS wersji 5 - Address type not supported NieobsÅ‚ugiwany typ adresu - Unknown SOCKSv5 proxy error code 0x%1 Nieznany kod bÅ‚Ä™du (0x%1) poÅ›rednika SOCKS wersji 5 - Network operation timed out Przekroczony czas operacji sieciowej @@ -8102,32 +6408,26 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QSoftKeyManager - Ok OK - Select Wybierz - Done Zrobione - Options Opcje - Cancel Anuluj - Exit WyjÅ›cie @@ -8135,12 +6435,10 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QSpinBox - Less Mniej - More WiÄ™cej @@ -8148,56 +6446,42 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QSql - Cancel Anuluj - Cancel your edits? Anulować zmiany? - Confirm Potwierdź - Delete Skasuj - Delete this record? Skasować ten rekord? - Insert Wstaw - - - No Nie - Save edits? Zachować zmiany? - Update Uaktualnij - - - Yes Tak @@ -8205,178 +6489,142 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QSslSocket - Unable to write data: %1 - Unable to decrypt data: %1 Nie można odszyfrować danych: %1 - - Error while reading: %1 BÅ‚Ä…d podczas czytania: %1 - Error during SSL handshake: %1 BÅ‚Ä…d podczas nawiÄ…zania sesji SSL: %1 - Error creating SSL context (%1) BÅ‚Ä…d tworzenia kontekstu (%1) - Invalid or empty cipher list (%1) Niepoprawna lub pusta lista szyfrów (%1) - Private key does not certify public key, %1 Prywatny klucz nie uwiarygodnia publicznego, %1 - Error creating SSL session, %1 BÅ‚Ä…d tworzenia sesji SSL, %1 - Error creating SSL session: %1 BÅ‚Ä…d tworzenia sesji SSL: %1 - Cannot provide a certificate with no key, %1 Nie można dostarczyć certyfikatu bez klucza, %1 - Error loading local certificate, %1 BÅ‚Ä…d Å‚adowania lokalnego certyfikatu, %1 - Error loading private key, %1 BÅ‚Ä…d Å‚adowania prywatnego klucza, %1 - No error Brak bÅ‚Ä™du - The issuer certificate could not be found Nie można odnaleźć wydawcy certyfikatu - The certificate signature could not be decrypted Nie można odszyfrować podpisu certyfikatu - The public key in the certificate could not be read Nie można odczytać publicznego klucza w certyfikacie - The signature of the certificate is invalid Niepoprawny podpis certyfikatu - The certificate is not yet valid Certyfikat nie jest jeszcze ważny - The certificate has expired Certyfikat utraciÅ‚ ważność - The certificate's notBefore field contains an invalid time Pole "notBefore" certyfikatu zawiera niepoprawnÄ… datÄ™ - The certificate's notAfter field contains an invalid time Pole "notAfter" certyfikatu zawiera niepoprawnÄ… datÄ™ - The certificate is self-signed, and untrusted Niewiarygodny certyfikat z podpisem wÅ‚asnym - The root certificate of the certificate chain is self-signed, and untrusted Główny certyfikat Å‚aÅ„cucha zaufania ma wÅ‚asny podpis i jest niewiarygodny - The issuer certificate of a locally looked up certificate could not be found Nie można odnaleźć certyfikatu wydawcy wyszukanego lokalnie certyfikatu - No certificates could be verified Nie można zweryfikować żadnych certyfikatów - One of the CA certificates is invalid Jeden z certyfikatów urzÄ™du certyfikacji jest nieprawidÅ‚owy - The basicConstraints path length parameter has been exceeded DÅ‚ugość Å›cieżki okreÅ›lona w podstawowych warunkach ograniczajÄ…cych zostaÅ‚a przekroczona - The supplied certificate is unsuitable for this purpose Dostarczony certyfikat jest nieodpowiedni dla tego przeznaczenia - The root CA certificate is not trusted for this purpose Główny certyfikat urzÄ™du certyfikacji nie jest wiarygodny dla tego przeznaczenia - The root CA certificate is marked to reject the specified purpose Główny certyfikat urzÄ™du certyfikacji jest wyznaczony do odrzucania podanego przeznaczenia - The current candidate issuer certificate was rejected because its subject name did not match the issuer name of the current certificate Certyfikat wydawcy obecnego kandydata zostaÅ‚ odrzucony, ponieważ nazwa podmiotu nie odpowiadaÅ‚a nazwie wydawcy obecnego certyfikatu - The current candidate issuer certificate was rejected because its issuer name and serial number was present and did not match the authority key identifier of the current certificate Certyfikat wydawcy obecnego kandydata zostaÅ‚ odrzucony, ponieważ nazwa wydawcy i przedstawiony numer seryjny nie odpowiadaÅ‚y identyfikatorowi klucza urzÄ™du certyfikacji obecnego certyfikatu - The peer did not present any certificate Element równorzÄ™dny nie przedstawiÅ‚ żadnego certyfikatu - The host name did not match any of the valid hosts for this certificate Nazwa hosta nie odpowiadaÅ‚a żadnemu z poprawnych hostów dla tego certyfikatu - Unknown error Nieznany bÅ‚Ä…d @@ -8384,22 +6632,18 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QStateMachine - Missing initial state in compound state '%1' Brak stanu poczÄ…tkowego w stanie zÅ‚ożonym "%1" - Missing default state in history state '%1' Brak domyÅ›lnego stanu w historycznym stanie "%1" - No common ancestor for targets and source of transition from state '%1' Brak wspólnego przodka dla stanów docelowych i stanu źródÅ‚owego w przejÅ›ciu ze stanu "%1" - Unknown error Nieznany bÅ‚Ä…d @@ -8407,30 +6651,22 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QSystemSemaphore - - %1: out of resources %1: zasoby wyczerpane - - %1: permission denied %1: brak uprawnieÅ„ - %1: already exists %1: już istnieje - %1: does not exist %1: nie istnieje - - %1: unknown error %2 %1: nieznany bÅ‚Ä…d %2 @@ -8438,12 +6674,10 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QTDSDriver - Unable to open connection Nie można otworzyć poÅ‚Ä…czenia - Unable to use database Nie można użyć bazy danych @@ -8451,12 +6685,10 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QTabBar - Scroll Left PrzewiÅ„ w lewo - Scroll Right PrzewiÅ„ w prawo @@ -8464,7 +6696,6 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QTcpServer - Operation on socket is not supported Operacja na gnieździe nieobsÅ‚ugiwana @@ -8472,42 +6703,34 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QTextControl - &Copy S&kopiuj - Copy &Link Location Skopiuj &adres odsyÅ‚acza - Cu&t W&ytnij - Delete Skasuj - &Paste &Wklej - &Redo &Przywróć - Select All Zaznacz wszystko - &Undo &Cofnij @@ -8515,14 +6738,10 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QToolButton - - Open Otwórz - - Press WciÅ›nij @@ -8530,7 +6749,6 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QUdpSocket - This platform does not support IPv6 Ta platforma nie obsÅ‚uguje IPv6 @@ -8538,12 +6756,10 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QUndoGroup - Redo Przywróć - Undo Cofnij @@ -8551,7 +6767,6 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QUndoModel - <empty> <pusty> @@ -8559,12 +6774,10 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QUndoStack - Redo Przywróć - Undo Cofnij @@ -8572,57 +6785,46 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QUnicodeControlCharacterMenu - Insert Unicode control character Wstaw znak kontroli Unicode - LRE Start of left-to-right embedding LRE PoczÄ…tek osadzania od lewej do prawej - LRM Left-to-right mark LRM znacznik od prawej do lewej - LRO Start of left-to-right override LRO PoczÄ…tek nadpisania od lewej do prawej - PDF Pop directional formatting PDF Formatowanie kierunkowe pop - RLE Start of right-to-left embedding RLE PoczÄ…tek osadzania od prawej do lewej - RLM Right-to-left mark RLM Znacznik od prawej do lewej - RLO Start of right-to-left override RLO PoczÄ…tek nadpisania od prawej do lewej - ZWJ Zero width joiner ZWJ ÅÄ…cznik zerowej dÅ‚ugoÅ›ci - ZWNJ Zero width non-joiner ZWNJ Rozdzielnik zerowej dÅ‚ugoÅ›ci - ZWSP Zero width space ZWSP Przerwa zerowej dÅ‚ugoÅ›ci @@ -8630,32 +6832,26 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QWebFrame - Request cancelled ProÅ›ba anulowana - Request blocked ProÅ›ba zablokowana - Cannot show URL Nie można pokazać URL - Frame load interrupted by policy change Åadowanie ramki przerwane przez zmianÄ™ strategii - Cannot show mimetype Nie można pokazać typu MIME - File does not exist Plik nie istnieje @@ -8663,621 +6859,515 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QWebPage - Submit default label for Submit buttons in forms on web pages WyÅ›lij - Submit Submit (input element) alt text for <input> elements with no alt, title, or value WyÅ›lij - Reset default label for Reset buttons in forms on web pages Wyczyść - Choose File title for file button used in HTML forms Wybierz plik - No file selected text to display in file button used in HTML forms when no file is selected Nie zaznaczono pliku - Open in New Window Open in New Window context menu item Otwórz w nowym oknie - Save Link... Download Linked File context menu item Zachowaj odsyÅ‚acz... - Copy Link Copy Link context menu item Skopiuj odsyÅ‚acz - Open Image Open Image in New Window context menu item Otwórz obrazek - Save Image Download Image context menu item Zachowaj obrazek - Copy Image Copy Link context menu item Skopiuj obrazek - Open Frame Open Frame in New Window context menu item Otwórz ramkÄ™ - Copy Copy context menu item Skopiuj - Go Back Back context menu item Wróć - Go Forward Forward context menu item Przejdź dalej - Stop Stop context menu item Zatrzymaj - Reload Reload context menu item PrzeÅ‚aduj - Cut Cut context menu item Wytnij - Paste Paste context menu item Wklej - No Guesses Found No Guesses Found context menu item Nie odnaleziono podpowiedzi - Ignore Ignore Spelling context menu item Zignoruj - Add To Dictionary Learn Spelling context menu item Dodaj do sÅ‚ownika - Search The Web Search The Web context menu item Wyszukaj w sieci - Look Up In Dictionary Look Up in Dictionary context menu item Poszukaj w sÅ‚owniku - Open Link Open Link context menu item Otwórz odsyÅ‚acz - Ignore Ignore Grammar context menu item Zignoruj - Spelling Spelling and Grammar context sub-menu item Pisownia - Show Spelling and Grammar menu item title Pokaż pisowniÄ™ i gramatykÄ™ - Hide Spelling and Grammar menu item title Schowaj pisowniÄ™ i gramatykÄ™ - Check Spelling Check spelling context menu item Sprawdź pisowniÄ™ - Check Spelling While Typing Check spelling while typing context menu item Sprawdzaj pisowniÄ™ podczas pisania - Check Grammar With Spelling Check grammar with spelling context menu item Sprawdzaj gramatykÄ™ wraz z pisowniÄ… - Fonts Font context sub-menu item Czcionki - Bold Bold context menu item Pogrubiony - Italic Italic context menu item Kursywa - Underline Underline context menu item PodkreÅ›lenie - Outline Outline context menu item Kontur - Direction Writing direction context sub-menu item Kierunek - Text Direction Text direction context sub-menu item Kierunek tekstu - Default Default writing direction context menu item DomyÅ›lny - Missing Plug-in Label text to be used when a plug-in is missing BrakujÄ…ca wtyczka - Loading... Media controller status message when the media is loading Åadowanie... - Live Broadcast Media controller status message when watching a live broadcast Transmisja na żywo - Audio Element Media controller element Element dźwiÄ™kowy - Video Element Media controller element Element wideo - Mute Button Media controller element Przycisk wyÅ‚Ä…czania gÅ‚osu - Unmute Button Media controller element Przycisk wÅ‚Ä…czania gÅ‚osu - Play Button Media controller element Przycisk odtwarzania - Pause Button Media controller element Przycisk pauzy - Slider Media controller element Suwak - Slider Thumb Media controller element Uchwyt suwaka - Rewind Button Media controller element Przycisk przewijania - Return to Real-time Button Media controller element Przycisk powrotu do czasu rzeczywistego - Elapsed Time Media controller element Czas który upÅ‚ynÄ…Å‚ - Remaining Time Media controller element Czas który pozostaÅ‚ - Status Display Media controller element WyÅ›wietlacz stanu - Fullscreen Button Media controller element Przycisk trybu peÅ‚noekranowego - Seek Forward Button Media controller element Przycisk przeszukiwania do przodu - Seek Back Button Media controller element Przycisk przeszukiwania do tyÅ‚u - Audio element playback controls and status display Media controller element Kontrolki odtwarzania dźwiÄ™ku i wyÅ›wietlacz stanu - Video element playback controls and status display Media controller element Kontrolki odtwarzania wideo i wyÅ›wietlacz stanu - Mute audio tracks Media controller element WyÅ‚Ä…cz Å›cieżkÄ™ dźwiÄ™kowÄ… - Unmute audio tracks Media controller element WÅ‚Ä…cz Å›cieżkÄ™ dźwiÄ™kowÄ… - Begin playback Media controller element Rozpocznij odtwarzanie - Pause playback Media controller element Zatrzymaj odtwarzanie - Movie time scrubber Media controller element Suwak czasu - Movie time scrubber thumb Media controller element Uchwyt suwaka czasu - Rewind movie Media controller element PrzewiÅ„ film - Return streaming movie to real-time Media controller element Przywróć przesyÅ‚anie filmu do czasu rzeczywistego - Current movie time Media controller element Czas bieżącego filmu - Remaining movie time Media controller element Czas do koÅ„ca filmu - Current movie status Media controller element Stan bieżącego filmu - Play movie in full-screen mode Media controller element Odtwarzaj film w trybie peÅ‚noekranowym - Seek quickly back Media controller element Przeszukaj szybko do tyÅ‚u - Seek quickly forward Media controller element Przeszukaj szybko do przodu - Indefinite time Media time description NieokreÅ›lony czas - %1 days %2 hours %3 minutes %4 seconds Media time description %1 dni %2 godzin %3 minut %4 sekund - %1 hours %2 minutes %3 seconds Media time description %1 godzin %2 minut %3 sekund - %1 minutes %2 seconds Media time description %1 minut %2 sekund - %1 seconds Media time description %1 sekund - Inspect Inspect Element context menu item Zwiedzaj - No recent searches Label for only item in menu that appears when clicking on the search field image, when no searches have been performed Brak ostatnich wyszukiwaÅ„ - Recent searches label for first item in the menu that appears when clicking on the search field image, used as embedded menu title Ostatnie wyszukiwania - Clear recent searches menu item in Recent Searches menu that empties menu's contents Wyczyść ostatnie wyszukiwania - Unknown Unknown filesize FTP directory listing item Nieznany - Web Inspector - %2 Wizytator sieciowy - %2 - Redirection limit reached OsiÄ…gniÄ™to limit przekierowaÅ„ - Bad HTTP request Niepoprawna komenda HTTP - This is a searchable index. Enter search keywords: text that appears at the start of nearly-obsolete web pages in the form of a 'searchable index' To jest indeks wyszukiwawczy. Podaj sÅ‚owa do wyszukania: - Left to Right Left to Right context menu item Z lewej na prawÄ… - Right to Left Right to Left context menu item Z prawej na lewÄ… - %1 (%2x%3 pixels) Title string for images %1 (%2x%3 piksli) - Scroll here PrzewiÅ„ tutaj - Left edge Lewa krawÄ™dź - Top Do góry - Right edge Prawa krawÄ™dź - Bottom W dół - Page left Strona w lewo - Page up Strona do góry - Page right Strona w prawo - Page down Strona w dół - Scroll left PrzewiÅ„ w lewo - Scroll up PrzewiÅ„ do góry - Scroll right PrzewiÅ„ w prawo - Scroll down PrzewiÅ„ w dół - %n file(s) number of chosen file @@ -9287,237 +7377,190 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. - JavaScript Alert - %1 Ostrzeżenie JavaScript - %1 - JavaScript Confirm - %1 Potwierdzenie JavaScript - %1 - JavaScript Prompt - %1 ZachÄ™ta JavaScript - %1 - JavaScript Problem - %1 Problem JavaScript - %1 - The script on this page appears to have a problem. Do you want to stop the script? Skrypt na tej stronie nie dziaÅ‚a poprawnie. Czy chcesz przerwać ten skrypt? - Move the cursor to the next character PrzesuÅ„ kursor do nastÄ™pnego znaku - Move the cursor to the previous character PrzesuÅ„ kursor do poprzedniego znaku - Move the cursor to the next word PrzesuÅ„ kursor do nastÄ™pnego sÅ‚owa - Move the cursor to the previous word PrzesuÅ„ kursor do poprzedniego sÅ‚owa - Move the cursor to the next line PrzesuÅ„ kursor do nastÄ™pnej linii - Move the cursor to the previous line PrzesuÅ„ kursor do poprzedniej linii - Move the cursor to the start of the line PrzesuÅ„ kursor do poczÄ…tku linii - Move the cursor to the end of the line PrzesuÅ„ kursor do koÅ„ca linii - Move the cursor to the start of the block PrzesuÅ„ kursor do poczÄ…tku bloku - Move the cursor to the end of the block PrzesuÅ„ kursor do koÅ„ca bloku - Move the cursor to the start of the document PrzesuÅ„ kursor do poczÄ…tku dokumentu - Move the cursor to the end of the document PrzesuÅ„ kursor do koÅ„ca dokumentu - Select all Zaznacz wszystko - Select to the next character Zaznacz do nastÄ™pnego znaku - Select to the previous character Zaznacz do poprzedniego znaku - Select to the next word Zaznacz do nastÄ™pnego sÅ‚owa - Select to the previous word Zaznacz do poprzedniego sÅ‚owa - Select to the next line Zaznacz do nastÄ™pnej linii - Select to the previous line Zaznacz do poprzedniej linii - Select to the start of the line Zaznacz do poczÄ…tku linii - Select to the end of the line Zaznacz do koÅ„ca linii - Select to the start of the block Zaznacz do poczÄ…tku bloku - Select to the end of the block Zaznacz do koÅ„ca bloku - Select to the start of the document Zaznacz do poczÄ…tku dokumentu - Select to the end of the document Zaznacz do koÅ„ca dokumentu - Delete to the start of the word Skasuj do poczÄ…tku sÅ‚owa - Delete to the end of the word Skasuj do koÅ„ca sÅ‚owa - Insert a new paragraph Wstaw nowy paragraf - Insert a new line Wstaw nowÄ… liniÄ™ - Paste and Match Style Wklej i dopasuj styl - Remove formatting UsuÅ„ formatowanie - Strikethrough PrzekreÅ›lenie - Subscript Indeks dolny - Superscript Indeks górny - Insert Bulleted List Wstaw listÄ™ wypunktowanÄ… - Insert Numbered List Wstaw listÄ™ ponumerowanÄ… - Indent ZwiÄ™ksz wciÄ™cie - Outdent Zmniejsz wciÄ™cie - Center WyÅ›rodkuj - Justify Wyjustuj - Align Left Wyrównaj do lewej - Align Right Wyrównaj do prawej @@ -9525,7 +7568,6 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QWhatsThisAction - What's This? Co to jest? @@ -9533,7 +7575,6 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QWidget - * * @@ -9541,57 +7582,46 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QWizard - Go Back Wróć - Continue Kontynuuj - Commit Dokonaj - Done Zrobione - Help Pomoc - < &Back < &Wstecz - &Finish &ZakoÅ„cz - Cancel Anuluj - &Help &Pomoc - &Next &Dalej - &Next > &Dalej > @@ -9599,69 +7629,54 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QWorkspace - - %1 - [%2] %1 - [%2] - Close Zamknij - &Close &Zamknij - Ma&ximize Zma&ksymalizuj - Minimize Zminimalizuj - Mi&nimize Zmi&nimalizuj - &Move &PrzenieÅ› - &Restore &Przywróć - Restore Down Przywróć pod spód - - Sh&ade &ZwiÅ„ - &Size &Rozmiar - Stay on &Top Pozostaw na &wierzchu - &Unshade R&ozwiÅ„ @@ -9669,117 +7684,94 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QXml - encoding declaration or standalone declaration expected while reading the XML declaration oczekiwano deklaracji "encoding" lub "standalone" podczas odczytywania deklaracji XML - error in the text declaration of an external entity bÅ‚Ä…d w deklaracji "text" zewnÄ™trznej jednostki - error occurred while parsing comment wystÄ…piÅ‚ bÅ‚Ä…d podczas parsowania komentarza - error occurred while parsing content wystÄ…piÅ‚ bÅ‚Ä…d podczas parsowania zawartoÅ›ci - error occurred while parsing document type definition wystÄ…piÅ‚ bÅ‚Ä…d podczas parsowania typu definicji dokumentu - error occurred while parsing element wystÄ…piÅ‚ bÅ‚Ä…d podczas parsowania elementu - error occurred while parsing reference wystÄ…piÅ‚ bÅ‚Ä…d podczas parsowania odwoÅ‚ania - error triggered by consumer bÅ‚Ä…d wywoÅ‚any przez konsumenta - external parsed general entity reference not allowed in attribute value odwoÅ‚anie do jednostki ogólnej zewnÄ™trznie przetworzonej nie dozwolone dla wartoÅ›ci atrybutu - external parsed general entity reference not allowed in DTD odwoÅ‚anie do jednostki ogólnej zewnÄ™trznie przetworzonej nie dozwolone w DTD - internal general entity reference not allowed in DTD odwoÅ‚anie do jednostki ogólnej wewnÄ™trznej nie dozwolone w DTD - invalid name for processing instruction niepoprawna nazwa dla instrukcji przetwarzajÄ…cej - letter is expected oczekiwana jest litera - more than one document type definition wiÄ™cej niż jedna definicja typu dokumentu - no error occurred nie pojawiÅ‚ siÄ™ żaden bÅ‚Ä…d - recursive entities jednostki rekurencyjne - standalone declaration expected while reading the XML declaration deklaracja "standalone" oczekiwana podczas czytania deklaracji XML - tag mismatch niezgodny tag - unexpected character nieoczekiwany znak - unexpected end of file nieoczekiwany koniec pliku - unparsed entity reference in wrong context odwoÅ‚anie do jednostki nieprzetworzonej w zÅ‚ym kontekÅ›cie - version expected while reading the XML declaration oczekiwano wersji podczas czytania deklaracji XML - wrong value for standalone declaration bÅ‚Ä™dna wartość dla deklaracji "standalone" @@ -9787,27 +7779,22 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QXmlPatternistCLI - Warning in %1, at line %2, column %3: %4 Ostrzeżenie w %1, wiersz %2, kolumna %3: %4 - Warning in %1: %2 Ostrzeżenie w %1: %2 - Unknown location Nieznane poÅ‚ożenie - Error %1 in %2, at line %3, column %4: %5 BÅ‚Ä…d %1 w %2, wiersz %3, kolumna %4: %5 - Error %1 in %2: %3 BÅ‚Ä…d %1 w %2: %3 @@ -9815,184 +7802,142 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QXmlStream - - Extra content at end of document. Dodatkowa treść na koÅ„cu dokumentu. - Invalid entity value. Niepoprawna wartość jednostki. - Invalid XML character. Niepoprawny znak XML. - Sequence ']]>' not allowed in content. CiÄ…g ']]>' niedozwolony w treÅ›ci. - Namespace prefix '%1' not declared Przedrostek przestrzeni nazw '%1' nie zostaÅ‚ zadeklarowany - Attribute redefined. Atrybut zdefiniowany wielokrotnie. - Unexpected character '%1' in public id literal. Nieoczekiwany znak '%1' w publicznej staÅ‚ej znakowej. - Invalid XML version string. Niepoprawna wersja XML. - Unsupported XML version. NieobsÅ‚ugiwana wersja XML. - %1 is an invalid encoding name. %1 jest niepoprawnÄ… nazwÄ… kodowania. - Encoding %1 is unsupported Kodowanie %1 jest nieobsÅ‚ugiwane - Standalone accepts only yes or no. Tylko wartoÅ›ci "tak" lub "nie" sÄ… akceptowane przez "standalone". - Invalid attribute in XML declaration. Niepoprawny atrybut w deklaracji XML. - Premature end of document. Przedwczesne zakoÅ„czenie dokumentu. - Invalid document. Niepoprawny dokument. - Expected Oczekiwano - , but got ' , ale otrzymano ' - Unexpected ' Nieoczekiwany ' - Expected character data. Oczekiwana dana znakowa. - Recursive entity detected. Wykryto jednostkÄ™ rekurencyjnÄ…. - Start tag expected. Oczekiwano rozpoczÄ™cia tagu. - XML declaration not at start of document. Deklaracja XML nie jest na poczÄ…tku dokumentu. - NDATA in parameter entity declaration. NDATA w deklaracji parametru obiektu. - %1 is an invalid processing instruction name. %1 jest niepoprawnÄ… nazwÄ… instrukcji przetwarzajÄ…cej. - Invalid processing instruction name. Niepoprawna nazwa instrukcji przetwarzajÄ…cej. - - - - Illegal namespace declaration. Niepoprawna deklaracja przestrzeni nazw. - Invalid XML name. Niepoprawna nazwa XML. - Opening and ending tag mismatch. Niezgodne tagi poczÄ…tku i koÅ„ca. - Reference to unparsed entity '%1'. OdwoÅ‚anie do nieprzetworzonej jednostki '%1'. - - - Entity '%1' not declared. Jednostka '%1' nie zadeklarowana. - Reference to external entity '%1' in attribute value. OdwoÅ‚anie do zewnÄ™trznej jednostki '%1' jako wartość atrybutu. - Invalid character reference. Niepoprawny znak odwoÅ‚ania. - - Encountered incorrectly encoded content. Natrafiono na niepoprawnie zakodowanÄ… treść. - The standalone pseudo attribute must appear after the encoding. Pseudo atrybut "standalone" musi pojawić siÄ™ po "encoding". - %1 is an invalid PUBLIC identifier. %1 jest niepoprawnym publicznym identyfikatorem. @@ -10000,707 +7945,562 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. QtXmlPatterns - Network timeout. Przekroczony czas poÅ‚Ä…czenia. - Element %1 can't be serialized because it appears outside the document element. Element %1 nie może być zserializowany ponieważ pojawiÅ‚ siÄ™ poza elementem "document". - Attribute %1 can't be serialized because it appears at the top level. Atrybut %1 nie może być zserializowany ponieważ pojawiÅ‚ siÄ™ na najwyższym poziomie. - Year %1 is invalid because it begins with %2. Rok %1 jest niepoprawny ponieważ rozpoczyna siÄ™: %2. - Day %1 is outside the range %2..%3. DzieÅ„ %1 jest poza zakresem %2..%3. - Month %1 is outside the range %2..%3. MiesiÄ…c %1 jest poza zakresem %2..%3. - Overflow: Can't represent date %1. PrzepeÅ‚nienie: Nie można wyrazić daty %1. - Day %1 is invalid for month %2. DzieÅ„ %1 jest niepoprawny dla miesiÄ…ca %2. - Time 24:%1:%2.%3 is invalid. Hour is 24, but minutes, seconds, and milliseconds are not all 0; Czas 24:%1:%2:%3 jest niepoprawny. Godzina jest 24, ale minuty, sekundy i milisekundy nie sÄ… równoczeÅ›nie zerami; - Time %1:%2:%3.%4 is invalid. Czas %1:%2:%3.%4 jest niepoprawny. - Overflow: Date can't be represented. PrzepeÅ‚nienie: Data nie może być wyrażona. - - At least one component must be present. Przynajmniej jeden komponent musi być obecny. - At least one time component must appear after the %1-delimiter. Przynajmniej jeden komponent musi wystÄ…pić po nawiasie %1. - %1 is not a valid value of type %2. %1 nie jest poprawnÄ… wartoÅ›ciÄ… dla typu %2. - When casting to %1 from %2, the source value cannot be %3. W rzutowaniu %1 na %2 wartość źródÅ‚owa nie może być %3. - - Dividing a value of type %1 by %2 (not-a-number) is not allowed. Dzielenie wartoÅ›ci typu %1 przez %2 (typ nienumeryczny) jest niedozwolone. - Dividing a value of type %1 by %2 or %3 (plus or minus zero) is not allowed. Dzielenie wartoÅ›ci typu %1 przez %2 lub %3 (plus lub minus zero) jest niedozwolone. - Multiplication of a value of type %1 by %2 or %3 (plus or minus infinity) is not allowed. Mnożenie wartoÅ›ci typu %1 przez %2 lub %3 (plus lub minus nieskoÅ„czoność) jest niedozwolone. - A value of type %1 cannot have an Effective Boolean Value. Wartość typu %1 nie może posiadać efektywnej wartoÅ›ci boolowskiej (EBV). - Effective Boolean Value cannot be calculated for a sequence containing two or more atomic values. Efektywna wartość boolowska (EBV) nie może być obliczona dla sekwencji zawierajÄ…cej dwie lub wiÄ™cej wartoÅ›ci atomowe. - Value %1 of type %2 exceeds maximum (%3). Wartość %1 typu %2 przekracza maksimum (%3). - Value %1 of type %2 is below minimum (%3). Wartość %1 typu %2 jest poniżej minimum (%3). - A value of type %1 must contain an even number of digits. The value %2 does not. Wartość typu %1 musi zawierać parzystÄ… liczbÄ™ cyfr. Wartość %2 nie zawiera. - %1 is not valid as a value of type %2. Wartość %1 nie jest poprawna jako wartość typu %2. - Operator %1 cannot be used on type %2. Operator %1 nie może być użyty dla typu %2. - Operator %1 cannot be used on atomic values of type %2 and %3. Operator %1 nie może być użyty dla atomowych wartoÅ›ci typu %2 i %3. - The namespace URI in the name for a computed attribute cannot be %1. PrzestrzeÅ„ nazw URI nie może być %1 w nazwie dla obliczonego atrybutu. - The name for a computed attribute cannot have the namespace URI %1 with the local name %2. Nazwa dla wyliczonego atrybutu nie może zawierać przestrzeni nazw URI %1 z lokalnÄ… nazwÄ… %2. - Type error in cast, expected %1, received %2. BÅ‚Ä…d typów w rzutowaniu: oczekiwano %1, otrzymano %2. - When casting to %1 or types derived from it, the source value must be of the same type, or it must be a string literal. Type %2 is not allowed. Podczas rzutowania na %1 lub na typ pochodny, wartość źródÅ‚owa musi być tego samego typu lub musi być staÅ‚Ä… znakowÄ…. Typ %2 nie jest dozwolony. - A comment cannot contain %1 Komentarz nie może zawierać %1 - A comment cannot end with a %1. Komentarz nie może koÅ„czyć siÄ™: %1. - An attribute node cannot be a child of a document node. Therefore, the attribute %1 is out of place. WÄ™zeÅ‚ "attribute" nie może być podelementem wÄ™zÅ‚a "document". Dlatego atrybut %1 jest w zÅ‚ym miejscu. - A library module cannot be evaluated directly. It must be imported from a main module. ModuÅ‚ biblioteki nie może być bezpoÅ›rednio oceniony. On musi być zaimportowany z głównego moduÅ‚u. - No template by name %1 exists. Szablon o nazwie %1 nie istnieje. - A value of type %1 cannot be a predicate. A predicate must have either a numeric type or an Effective Boolean Value type. Wartość typu %1 nie może być predykatem. Predykat musi być typu liczbowego lub EfektywnÄ… Wartość LogicznÄ…. - A positional predicate must evaluate to a single numeric value. Wynikiem predykatu pozycyjnego musi być pojedyncza wartość liczbowa. - The target name in a processing instruction cannot be %1 in any combination of upper and lower case. Therefore, %2 is invalid. Docelowa nazwa w instrukcji przetwarzania nie może być %1 w żadnej kombinacji wielkich i maÅ‚ych liter. Dlatego nazwa %2 jest niepoprawna. - %1 is not a valid target name in a processing instruction. It must be a %2 value, e.g. %3. %1 nie jest poprawnÄ… nazwÄ… docelowÄ… w instrukcji przetwarzania. Nazwa musi być wartoÅ›ciÄ… %2, np. %3. - The last step in a path must contain either nodes or atomic values. It cannot be a mixture between the two. Ostatni krok w Å›cieżce musi zawierać albo wÄ™zÅ‚y albo wartoÅ›ci atomowe. Nie może zawierać obu jednoczeÅ›nie. - The data of a processing instruction cannot contain the string %1 Dane instrukcji przetwarzania nie mogÄ… zawierać ciÄ…gu %1 - No namespace binding exists for the prefix %1 Å»adna przestrzeÅ„ nazw nie jest powiÄ…zana z przedrostkiem %1 - No namespace binding exists for the prefix %1 in %2 Å»adna przestrzeÅ„ nazw nie jest powiÄ…zana z przedrostkiem %1 w %2 - - %1 is an invalid %2 %1 jest niepoprawnym %2 - The first argument to %1 cannot be of type %2. It must be a numeric type, xs:yearMonthDuration or xs:dayTimeDuration. Pierwszy argument w %1 nie może być typu %2. Musi on być typu liczbowego: xs:yearMonthDuration lub xs:dayTimeDuration. - The first argument to %1 cannot be of type %2. It must be of type %3, %4, or %5. Pierwszy argument w %1 nie może być typu %2. Musi on być typu: %3, %4 lub %5. - The second argument to %1 cannot be of type %2. It must be of type %3, %4, or %5. Drugi argument w %1 nie może być typu %2. Musi on być typu: %3, %4 lub %5. - %1 is not a valid XML 1.0 character. %1 nie jest poprawnym znakiem XML 1.0. - If both values have zone offsets, they must have the same zone offset. %1 and %2 are not the same. JeÅ›li oba argumenty majÄ… przesuniÄ™cia strefowe, muszÄ… one być takie same. %1 i %2 nie sÄ… takie same. - %1 was called. WywoÅ‚ano %1. - %1 must be followed by %2 or %3, not at the end of the replacement string. Po %1 musi nastÄ™pować %2 lub %3, lecz nie na koÅ„cu zastÄ™pczego ciÄ…gu. - In the replacement string, %1 must be followed by at least one digit when not escaped. W ciÄ…gu zastÄ™pczym, po %1 musi nastÄ™pować przynajmniej jedna cyfra - In the replacement string, %1 can only be used to escape itself or %2, not %3 W ciÄ…gu zastÄ™pczym, %1 może być użyte tylko do zabezpieczenia samej siebie lub %2, nigdy %3 - %1 matches newline characters %1 dopasowaÅ‚o znak nowej linii - %1 and %2 match the start and end of a line. %1 i %2 dopasowaÅ‚y poczÄ…tek i koniec linii. - Matches are case insensitive Dopasowania uwzglÄ™dniajÄ… wielkość liter - Whitespace characters are removed, except when they appear in character classes Spacje sÄ… usuwane z wyjÄ…tkiem kiedy pojawiÄ… siÄ™ w klasach znakowych - %1 is an invalid regular expression pattern: %2 %1 jest niepoprawnym wzorcem wyrażenia regularnego: %2 - %1 is an invalid flag for regular expressions. Valid flags are: %1 jest niepoprawnÄ… flagÄ… dla wyrażeÅ„ regularnych. Poprawnymi flagami sÄ…: - If the first argument is the empty sequence or a zero-length string (no namespace), a prefix cannot be specified. Prefix %1 was specified. JeÅ›li pierwszy argument jest pustÄ… sekwencjÄ… lub zerowej dÅ‚ugoÅ›ci ciÄ…giem (przy braku przestrzeni nazw), przedrostek nie może wystÄ…pić. Podano przedrostek %1. - It will not be possible to retrieve %1. Nie bÄ™dzie można odzyskać %1. - The default collection is undefined DomyÅ›lna kolekcja jest niezdefiniowana - %1 cannot be retrieved %1 nie może być odzyskane - The normalization form %1 is unsupported. The supported forms are %2, %3, %4, and %5, and none, i.e. the empty string (no normalization). Znormalizowana forma %1 nie jest obsÅ‚ugiwana. ObsÅ‚ugiwanymi formami sÄ…: %2, %3, %4 i %5 oraz pusta forma (brak normalizacji). - A zone offset must be in the range %1..%2 inclusive. %3 is out of range. PrzesuniÄ™cie strefowe musi być w zakresie %1..%2 wÅ‚Ä…cznie. %3 jest poza tym zakresem. - Required cardinality is %1; got cardinality %2. Wymagana liczność wynosi %1; otrzymano %2. - The item %1 did not match the required type %2. Element %1 nie zostaÅ‚ dopasowany do wymaganego typu %2. - - %1 is an unknown schema type. %1 jest nieznanym typem schematu. - A template with name %1 has already been declared. Szablon o nazwie %1 zostaÅ‚ już zadeklarowany. - Only one %1 declaration can occur in the query prolog. Tylko jedna deklaracja %1 może siÄ™ pojawić w prologu zapytania. - The initialization of variable %1 depends on itself Inicjalizacja zmiennej %1 zależy od niej samej - The variable %1 is unused Zmienna %1 jest nieużywana - Version %1 is not supported. The supported XQuery version is 1.0. Wersja %1 nie jest obsÅ‚ugiwana. ObsÅ‚ugiwanÄ… wersjÄ… XQuery jest wersja 1.0. - No function with signature %1 is available Å»adna funkcja w postaci %1 nie jest dostÄ™pna - It is not possible to redeclare prefix %1. Nie jest możliwe ponowne zadeklarowanie przedrostka %1. - Prefix %1 is already declared in the prolog. Przedrostek %1 jest już zadeklarowany w prologu. - The name of an option must have a prefix. There is no default namespace for options. Nazwa opcji musi posiadać przedrostek. Nie istnieje domyÅ›lna przestrzeÅ„ nazw dla opcji. - The Schema Import feature is not supported, and therefore %1 declarations cannot occur. Cecha "Import schematu" nie jest obsÅ‚ugiwana, dlatego deklaracje %1 nie mogÄ… pojawić. - The target namespace of a %1 cannot be empty. Docelowa przestrzeÅ„ nazw dla %1 nie może być pusta. - The module import feature is not supported Cecha "Import moduÅ‚u" nie jest obsÅ‚ugiwana - The namespace %1 is reserved; therefore user defined functions may not use it. Try the predefined prefix %2, which exists for these cases. PrzestrzeÅ„ nazw %1 jest zarezerwowana, dlatego funkcje zdefiniowane przez użytkownika nie mogÄ… jej użyć. Spróbuj predefiniowany przedrostek %2, który istnieje w takich przypadkach. - The namespace of a user defined function in a library module must be equivalent to the module namespace. In other words, it should be %1 instead of %2 PrzestrzeÅ„ nazw dla funkcji zdefiniowanej przez użytkownika w module bibliotecznym musi odpowiadać przestrzeni nazw moduÅ‚u. Powinna to być %1 zamiast %2 - A function already exists with the signature %1. Funkcja w postaci %1 już istnieje. - No external functions are supported. All supported functions can be used directly, without first declaring them as external ZewnÄ™trzne funkcje nie sÄ… obsÅ‚ugiwane. Wszystkie obsÅ‚ugiwane funkcje mogÄ… być używane bezpoÅ›rednio, bez ich uprzedniego deklarowania jako zewnÄ™trzne - The name of a variable bound in a for-expression must be different from the positional variable. Hence, the two variables named %1 collide. Nazwa zmiennej powiÄ…zanej w wyrażeniu "for" musi być inna od zmiennej pozycjonujÄ…cej. W zwiÄ…zku z tym dwie zmienne o nazwie %1 kolidujÄ… ze sobÄ…. - The Schema Validation Feature is not supported. Hence, %1-expressions may not be used. Cecha "Walidacja schematu" nie jest obsÅ‚ugiwana. Dlatego też wyrażenia %1 nie mogÄ… być użyte. - None of the pragma expressions are supported. Therefore, a fallback expression must be present Wyrażenia "pragma" nie sÄ… obsÅ‚ugiwane. Dlatego musi wystÄ…pić wyrażenie zastÄ™pcze - The %1-axis is unsupported in XQuery OÅ› %1 nie jest obsÅ‚ugiwana w XQuery - %1 is not a valid numeric literal. %1 nie jest poprawnÄ… staÅ‚Ä… liczbowÄ…. - W3C XML Schema identity constraint selector Selektor narzucenia niepowtarzalnoÅ›ci W3C XML Schema - W3C XML Schema identity constraint field Pole narzucenia niepowtarzalnoÅ›ci W3C XML Schema - A construct was encountered which is disallowed in the current language(%1). WystÄ…piÅ‚a konstrukcja która jest niedozwolona w bieżącym jÄ™zyku (%1). - The keyword %1 cannot occur with any other mode name. SÅ‚owo kluczowe %1 nie może wystÄ…pić z innÄ… nazwÄ… trybu. - No variable with name %1 exists Zmienna o nazwie %1 nie istnieje - The value of attribute %1 must be of type %2, which %3 isn't. Wartość atrybutu %1 musi być typu %2, którym nie jest %3. - The prefix %1 cannot be bound. By default, it is already bound to the namespace %2. Przedrostek %1 nie może być powiÄ…zany. Jest on domyÅ›lnie powiÄ…zany z przestrzeniÄ… nazw %2. - A variable with name %1 has already been declared. Zmienna o nazwie %1 zostaÅ‚a już zadeklarowana. - No value is available for the external variable with name %1. Brak wartoÅ›ci dla zewnÄ™trznej zmiennej o nazwie %1. - A stylesheet function must have a prefixed name. Funkcja arkusza stylu musi zawierać nazwÄ™ z przedrostkiem. - The namespace for a user defined function cannot be empty (try the predefined prefix %1 which exists for cases like this) PrzestrzeÅ„ nazw dla funkcji zdefiniowanej przez użytkownika nie może być pusta (spróbuj predefiniowany przedrostek %1, który stworzono specjalnie do takich sytuacji) - An argument with name %1 has already been declared. Every argument name must be unique. Argument o nazwie %1 zostaÅ‚ już zadeklarowany. Każda nazwa argumentu musi być unikatowa. - When function %1 is used for matching inside a pattern, the argument must be a variable reference or a string literal. Gdy funkcja %1 jest wykorzystana do dopasowania wewnÄ…trz wzorca, jej argument musi być referencjÄ… do zmiennej lub staÅ‚Ä… znakowÄ…. - In an XSL-T pattern, the first argument to function %1 must be a string literal, when used for matching. We wzorze XSL-T pierwszy argument w funkcji %1 musi być staÅ‚Ä… znakowÄ… podczas dopasowywania. - In an XSL-T pattern, the first argument to function %1 must be a literal or a variable reference, when used for matching. We wzorze XSL-T pierwszy argument w funkcji %1 musi być staÅ‚Ä… znakowÄ… lub nazwÄ… zmiennej podczas dopasowywania. - In an XSL-T pattern, function %1 cannot have a third argument. We wzorze XSL-T funkcja %1 nie może zawierać trzeciego argumentu. - In an XSL-T pattern, only function %1 and %2, not %3, can be used for matching. We wzorze XSL-T tylko funkcje %1 i %2 mogÄ… być użyte do dopasowania, zaÅ› funkcja %3 nie. - In an XSL-T pattern, axis %1 cannot be used, only axis %2 or %3 can. We wzorze XSL-T tylko osie %2 i %3 mogÄ… być użyte, zaÅ› oÅ› %1 nie. - %1 is an invalid template mode name. %1 nie jest poprawnÄ… nazwa trybu szablonu. - Each name of a template parameter must be unique; %1 is duplicated. Każda nazwa parametru szablonu musi być unikatowa; %1 siÄ™ powtarza. - No function with name %1 is available. Å»adna funkcja o nazwie %1 nie jest dostÄ™pna. - An attribute with name %1 has already appeared on this element. Atrybut o nazwie %1 już siÄ™ pojawiÅ‚ w tym elemencie. - The namespace URI cannot be the empty string when binding to a prefix, %1. PrzestrzeÅ„ nazw URI nie może być pustym ciÄ…giem w powiÄ…zaniu z przedrostkiem, %1. - %1 is an invalid namespace URI. %1 jest niepoprawnÄ… przestrzeniÄ… nazw URI. - It is not possible to bind to the prefix %1 Nie jest możliwe powiÄ…zanie z przedrostkiem %1 - Namespace %1 can only be bound to %2 (and it is, in either case, pre-declared). PrzestrzeÅ„ nazw %1 może być jedynie powiÄ…zana z %2 (w przeciwnym wypadku jest ona domyÅ›lnie zadeklarowana). - Prefix %1 can only be bound to %2 (and it is, in either case, pre-declared). Przedrostek %1 może być jedynie powiÄ…zany z %2 (w przeciwnym wypadku jest on domyÅ›lnie zadeklarowany). - Two namespace declaration attributes have the same name: %1. Atrybuty deklaracji przestrzeni nazw majÄ… tÄ… samÄ… nazwÄ™: %1. - The namespace URI must be a constant and cannot use enclosed expressions. PrzestrzeÅ„ nazw URI nie może być staÅ‚Ä… i nie może używać zawartych w niej wyrażeÅ„. - A direct element constructor is not well-formed. %1 is ended with %2. Konstruktor elementu bezpoÅ›redniego nie jest dobrze sformatowany. %1 jest zakoÅ„czony %2. - The name %1 does not refer to any schema type. Nazwa %1 nie odpowiada żadnemu typowi schematu. - %1 is an complex type. Casting to complex types is not possible. However, casting to atomic types such as %2 works. %1 jest typem zÅ‚ożonym. Rzutowanie na typy zÅ‚ożone nie jest możliwe. Jednakże rzutowanie na typy atomowe np.: %2 jest dozwolone. - %1 is not an atomic type. Casting is only possible to atomic types. %1 nie jest typem atomowym. Możliwe jest rzutowanie tylko na typy atomowe. - %1 is not a valid name for a processing-instruction. %1 nie jest poprawnÄ… nazwÄ… dla instrukcji przetwarzajÄ…cej. - - %1 is not in the in-scope attribute declarations. Note that the schema import feature is not supported. %1 nie jest wewnÄ…trz zakresu deklaracji atrybutów. Zwróć uwagÄ™ że importowanie schematów nie jest obsÅ‚ugiwane. - The name of an extension expression must be in a namespace. Nazwa dodatkowego wyrażenia musi znajdować sie w przestrzeni nazw. - empty pusty - zero or one zero lub jeden - exactly one dokÅ‚adnie jeden - one or more jeden lub wiÄ™cej - zero or more zero lub wiÄ™cej - Required type is %1, but %2 was found. Odnaleziono typ %2, lecz wymaganym typem jest %1. - Promoting %1 to %2 may cause loss of precision. PrzeksztaÅ‚cenie %1 do %2 może spowodować utratÄ™ precyzji. - The focus is undefined. Fokus jest niezdefiniowany. - It's not possible to add attributes after any other kind of node. Dodanie atrybutu poza wÄ™zÅ‚ami nie jest możliwe. - An attribute by name %1 has already been created. Atrybut o nazwie %1 zostaÅ‚ już utworzony. - Only the Unicode Codepoint Collation is supported(%1). %2 is unsupported. ObsÅ‚ugiwane jest jedynie "Unicode Codepoint Collation" (%1), %2 nie jest obsÅ‚ugiwane. - Integer division (%1) by zero (%2) is undefined. Dzielenie w dziedzinie liczb caÅ‚kowitych (%1) przez zero (%2) jest niezdefiniowane. - Division (%1) by zero (%2) is undefined. Dzielenie (%1) przez zero (%2) jest niezdefiniowane. - Modulus division (%1) by zero (%2) is undefined. Dzielenie modulo (%1) przez zero (%2) jest niezdefiniowane. - %1 takes at most %n argument(s). %2 is therefore invalid. %1 przyjmuje co najwyżej %n argument. %2 jest dlatego niepoprawne. @@ -10709,7 +8509,6 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. - %1 requires at least %n argument(s). %2 is therefore invalid. %1 wymaga przynajmniej %n argumentu. %2 jest dlatego niepoprawne. @@ -10718,1651 +8517,1255 @@ ProszÄ™ wybrać innÄ… nazwÄ™ pliku. - The root node of the second argument to function %1 must be a document node. %2 is not a document node. Głównym wÄ™zÅ‚em drugiego argumentu w funkcji %1 musi być wÄ™zeÅ‚ "document". %2 nie jest wÄ™zÅ‚em "document". - %1 is not a whole number of minutes. %1 nie jest caÅ‚kowitÄ… liczbÄ… minut. - The encoding %1 is invalid. It must contain Latin characters only, must not contain whitespace, and must match the regular expression %2. Enkodowanie %1 jest niepoprawne. Może ono zawierać jedynie znaki alfabetu Å‚aciÅ„skiego, nie może zawierać spacji i musi być dopasowane do wyrażenia regularnego %2. - - A default namespace declaration must occur before function, variable, and option declarations. DomyÅ›lna deklaracja przestrzeni nazw musi pojawić siÄ™ przed deklaracjami funkcji, zmiennych i opcji. - Namespace declarations must occur before function, variable, and option declarations. Deklaracje przestrzeni nazw muszÄ… pojawić siÄ™ przed deklaracjami funkcji, zmiennych i opcji. - Module imports must occur before function, variable, and option declarations. Importy modułów muszÄ… pojawić siÄ™ przed deklaracjami funkcji, zmiennych i opcji. - %1 is an unsupported encoding. NieobsÅ‚ugiwane kodowanie %1. - %1 contains octets which are disallowed in the requested encoding %2. %1 zawiera bity które sÄ… niedozwolone w zażądanym kodowaniu %2. - The codepoint %1, occurring in %2 using encoding %3, is an invalid XML character. Kod %1 który pojawiÅ‚ siÄ™ w %2 i który używa kodowania %3 jest niepoprawnym znakiem XML. - Ambiguous rule match. Dopasowano niejednoznacznÄ… reguÅ‚Ä™. - In a namespace constructor, the value for a namespace cannot be an empty string. W konstruktorze przestrzeni nazw wartość przestrzeni nazw nie może być pustym ciÄ…giem. - The prefix must be a valid %1, which %2 is not. Przedrostek musi być poprawnym %1, którym %2 nie jest. - The prefix %1 cannot be bound. Przedrostek %1 nie może być powiÄ…zany. - Only the prefix %1 can be bound to %2 and vice versa. Tylko przedrostek %1 może być powiÄ…zany z %2 i vice versa. - The parameter %1 is required, but no corresponding %2 is supplied. Wymagany jest parametr %1 lecz żaden odpowiadajÄ…cy mu %2 nie zostaÅ‚ dostarczony. - The parameter %1 is passed, but no corresponding %2 exists. Przekazany jest parametr %1 lecz żaden odpowiadajÄ…cy mu %2 nie istnieje. - The URI cannot have a fragment URI nie może posiadać fragmentu - Element %1 is not allowed at this location. Element %1 jest niedozwolony w tym miejscu. - Text nodes are not allowed at this location. WÄ™zÅ‚y tekstowe sÄ… niedozwolone w tym miejscu. - Parse error: %1 BÅ‚Ä…d parsowania: %1 - The value of the XSL-T version attribute must be a value of type %1, which %2 isn't. Wartość atrybutu wersji XSL-T musi być typu %1, którym %2 nie jest. - Running an XSL-T 1.0 stylesheet with a 2.0 processor. Przetwarzanie arkusza XSL-T w wersji 1.0 przez procesor w wersji 2.0. - Unknown XSL-T attribute %1. Nieznany atrybut %1 XSL-T. - Attribute %1 and %2 are mutually exclusive. Atrybuty %1 i %2 wzajemnie siÄ™ wykluczajÄ…cÄ…. - In a simplified stylesheet module, attribute %1 must be present. W uproszczonym module arkuszu stylu musi wystÄ…pić atrybut %1. - If element %1 has no attribute %2, it cannot have attribute %3 or %4. JeÅ›li element %1 nie posiada atrybutu %2, nie może on również posiadać atrybutu %3 ani %4. - Element %1 must have at least one of the attributes %2 or %3. Element %1 musi posiadać przynajmniej jeden z atrybutów: %2 lub %3. - At least one mode must be specified in the %1-attribute on element %2. Przynajmniej jeden tryb musi być podany w atrybucie %1 elementu %2. - Element %1 must come last. Element %1 musi wystÄ…pić jako ostatni. - At least one %1-element must occur before %2. Przynajmniej jeden element %1 musi wystÄ…pić przed %2. - Only one %1-element can appear. Może wystÄ…pić tylko jeden element %1. - At least one %1-element must occur inside %2. Przynajmniej jeden element %1 musi wystÄ…pić wewnÄ…trz %2. - When attribute %1 is present on %2, a sequence constructor cannot be used. Kiedy atrybut %1 wystÄ™puje w %2 konstruktor sekwencyjny nie może być użyty. - Element %1 must have either a %2-attribute or a sequence constructor. Element %1 musi posiadać albo atrybut %2 albo sekwencyjny konstruktor. - When a parameter is required, a default value cannot be supplied through a %1-attribute or a sequence constructor. Kiedy wymagany jest parametr, domyÅ›lna wartość nie może być dostarczona przez atrybut %1 ani przez sekwencyjny konstruktor. - Element %1 cannot have children. Element %1 nie może posiadać potomków. - Element %1 cannot have a sequence constructor. Element %1 nie może posiadać sekwencyjnego konstruktora. - - The attribute %1 cannot appear on %2, when it is a child of %3. Atrybut %1 nie może wystÄ…pić w %2 kiedy jest on potomkiem %3. - A parameter in a function cannot be declared to be a tunnel. Parametr funkcji nie może być zadeklarowany jako tunelowy. - This processor is not Schema-aware and therefore %1 cannot be used. Procesor nie obsÅ‚uguje schematów, wiÄ™c %1 nie może zostać użyte. - Top level stylesheet elements must be in a non-null namespace, which %1 isn't. Elementy arkusza stylu najwyższego poziomu muszÄ… być w niezerowej przestrzeni nazw, którÄ… %1 nie jest. - The value for attribute %1 on element %2 must either be %3 or %4, not %5. WartoÅ›ciÄ… atrybutu %1 w elemencie %2 musi być %3 albo %4, lecz nie %5. - Attribute %1 cannot have the value %2. Atrybut %1 nie może posiadać wartoÅ›ci %2. - The attribute %1 can only appear on the first %2 element. Atrybut %1 może wystÄ…pić jedynie w pierwszym elemencie %2. - At least one %1 element must appear as child of %2. Przynajmniej jeden element %1 musi wystÄ…pić jako potomek %2. - %1 has inheritance loop in its base type %2. %1 ma pÄ™tlÄ™ w dziedziczeniu w jego podstawowym typie %2. - - Circular inheritance of base type %1. Cykliczne dziedziczenie podstawowego typu %1. - Circular inheritance of union %1. Cykliczne dziedziczenie unii %1. - %1 is not allowed to derive from %2 by restriction as the latter defines it as final. Nie można wywieść %1 z %2 ograniczajÄ…c go ponieważ jest on zdefiniowany jako koÅ„cowy. - %1 is not allowed to derive from %2 by extension as the latter defines it as final. Nie można wywieść %1 z %2 rozszerzajÄ…c go ponieważ jest on zdefiniowany jako koÅ„cowy. - Base type of simple type %1 cannot be complex type %2. Typ podstawowy dla typu prostego %1 nie może być typem zÅ‚ożonym %2. - Simple type %1 cannot have direct base type %2. Typ prosty %1 nie może mieć bezpoÅ›redniego typu podstawowego %2. - - Simple type %1 is not allowed to have base type %2. Typ prosty %1 nie może mieć typu podstawowego %2. - Simple type %1 can only have simple atomic type as base type. Typem podstawowym typu prostego %1 może być tylko typ atomowy. - Simple type %1 cannot derive from %2 as the latter defines restriction as final. Typ prosty %1 nie może wywodzić siÄ™ z %2 ponieważ ten ostatni jest zdefiniowany jako koÅ„cowy. - - Variety of item type of %1 must be either atomic or union. Typem elementów listy %1 musi być albo typ atomowy albo unia. - - Variety of member types of %1 must be atomic. Typy skÅ‚adników %1 muszÄ… być atomowe. - - %1 is not allowed to derive from %2 by list as the latter defines it as final. Nie można wywieść %1 z %2 poprzez listÄ™ ponieważ jest to zdefiniowane ostatecznie w typie podstawowym. - Simple type %1 is only allowed to have %2 facet. Typ prosty %1 może jedynie posiadać aspekt %2. - Base type of simple type %1 must have variety of type list. Typ podstawowy dla typu prostego %1 musi być listÄ… typów. - Base type of simple type %1 has defined derivation by restriction as final. Typ podstawowy dla typu prostego %1 ma zdefiniowane wywodzenie poprzez ograniczenie jako koÅ„cowe. - Item type of base type does not match item type of %1. Typ elementów listy typu podstawowego nie pasuje do typu elementów listy %1. - - Simple type %1 contains not allowed facet type %2. Typ prosty %1 posiada niedozwolony aspekt %2. - - %1 is not allowed to derive from %2 by union as the latter defines it as final. Nie można wywieść %1 z %2 poprzez uniÄ™ ponieważ jest to zdefiniowane ostatecznie w typie podstawowym. - %1 is not allowed to have any facets. %1 nie może posiadać żadnych aspektów. - Base type %1 of simple type %2 must have variety of union. Typ podstawowy %1 dla typu prostego %2 musi być uniÄ…. - Base type %1 of simple type %2 is not allowed to have restriction in %3 attribute. Typ podstawowy %1 dla typu prostego %2 nie może posiadać ograniczenia dla atrybutu %3. - Member type %1 cannot be derived from member type %2 of %3's base type %4. Typ %1 skÅ‚adnika nie może być wywiedziony z typu %2 który jest typem skÅ‚adnika %3 typu podstawowego %4. - Derivation method of %1 must be extension because the base type %2 is a simple type. MetodÄ… wywodzenia z %1 musi być rozszerzenie ponieważ typ podstawowy %2 jest typem prostym. - Complex type %1 has duplicated element %2 in its content model. Typ zÅ‚ożony %1 posiada powielony element %2 w jego modelu zawartoÅ›ci. - Complex type %1 has non-deterministic content. Typ zÅ‚ożony %1 posiada nieokreÅ›lonÄ… zawartość. - Attributes of complex type %1 are not a valid extension of the attributes of base type %2: %3. Atrybuty typu zÅ‚ożonego %1 nie sÄ… poprawnym rozszerzeniem atrybutów typu podstawowego %2: %3. - Content model of complex type %1 is not a valid extension of content model of %2. Model zawartoÅ›ci typu zÅ‚ożonego %1 nie jest poprawnym rozszerzeniem modelu zawartoÅ›ci %2. - Complex type %1 must have simple content. Typ zÅ‚ożony %1 musi mieć prostÄ… zawartość. - Complex type %1 must have the same simple type as its base class %2. Typ zÅ‚ożony %1 musi posiadać ten sam prosty typ jaki posiada jego klasa podstawowa %2. - Complex type %1 cannot be derived from base type %2%3. Typ zÅ‚ożony %1 nie może być wywiedziony z typu %2%3. - Attributes of complex type %1 are not a valid restriction from the attributes of base type %2: %3. Atrybuty typu zÅ‚ożonego %1 nie sÄ… poprawnym ograniczeniem atrybutów typu podstawowego %2: %3. - Complex type %1 with simple content cannot be derived from complex base type %2. Typ zÅ‚ożony %1 z prostÄ… zawartoÅ›ciÄ… nie może być wywiedziony z podstawowego typu zÅ‚ożonego %2. - Item type of simple type %1 cannot be a complex type. Typ elementów listy w prostym typie %1 nie może być typem zÅ‚ożonym. - Member type of simple type %1 cannot be a complex type. Typ skÅ‚adnika typu prostego %1 nie może być typem zÅ‚ożonym. - %1 is not allowed to have a member type with the same name as itself. %1 nie może posiadać typu skÅ‚adnika o tej samej nazwie jakÄ… on sam posiada. - - - %1 facet collides with %2 facet. Aspekt %1 koliduje z aspektem %2. - %1 facet must have the same value as %2 facet of base type. Aspekt %1 musi mieć tÄ… samÄ… wartość jakÄ… ma aspekt %2 typu podstawowego. - %1 facet must be equal or greater than %2 facet of base type. Wartość aspektu %1 musi wiÄ™ksza od lub równa wartoÅ›ci aspektu %2 typu podstawowego. - - - - - - - - %1 facet must be less than or equal to %2 facet of base type. Wartość aspektu %1 musi być mniejsza od lub równa wartoÅ›ci aspektu %2 typu podstawowego. - %1 facet contains invalid regular expression Aspekt %1 zawiera niepoprawne wyrażenie regularne - Unknown notation %1 used in %2 facet. Nieznany zapis %1 użyty w aspekcie %2. - %1 facet contains invalid value %2: %3. Aspekt %1 zawiera niepoprawnÄ… wartość %2: %3. - %1 facet cannot be %2 or %3 if %4 facet of base type is %5. Aspektem %1 nie może być %2 ani %3 jeÅ›li aspektem %4 typu podstawowego jest %5. - %1 facet cannot be %2 if %3 facet of base type is %4. Aspektem %1 nie może być %2 jeÅ›li aspektem %3 typu podstawowego jest %4. - - - %1 facet must be less than or equal to %2 facet. Wartość aspektu %1 musi być mniejsza od lub równa wartoÅ›ci aspektu %2. - - - %1 facet must be less than %2 facet of base type. Wartość aspektu %1 musi być mniejsza od wartoÅ›ci aspektu %2 typu podstawowego. - - %1 facet and %2 facet cannot appear together. Aspekty %1 i %2 nie mogÄ… wystÄ…pić jednoczeÅ›nie. - - - %1 facet must be greater than %2 facet of base type. Wartość aspektu %1 musi być wiÄ™ksza od wartoÅ›ci aspektu %2 typu podstawowego. - - %1 facet must be less than %2 facet. Wartość aspektu %1 musi być mniejsza od wartoÅ›ci aspektu %2. - - %1 facet must be greater than or equal to %2 facet of base type. Wartość aspektu %1 musi być wiÄ™ksza od lub równa wartoÅ›ci aspektu %2 typu podstawowego. - Simple type contains not allowed facet %1. Typ prosty zawiera niedozwolony aspekt %1. - %1, %2, %3, %4, %5 and %6 facets are not allowed when derived by list. Aspekty %1, %2, %3, %4, %5 i %6 nie sÄ… dozwolone podczas wywodzenia z listy. - Only %1 and %2 facets are allowed when derived by union. Dozwolone sÄ… jedynie aspekty %1 i %2 podczas wywodzenia z unii. - - %1 contains %2 facet with invalid data: %3. %1 zawiera aspekt %2 z niepoprawnymi danymi: %3. - Attribute group %1 contains attribute %2 twice. Grupa atrybutów %1 zawiera dwukrotnie atrybut %2. - Attribute group %1 contains two different attributes that both have types derived from %2. Grupa atrybutów %1 zawiera dwa różne atrybuty których typy sÄ… wywiedzione z %2. - Attribute group %1 contains attribute %2 that has value constraint but type that inherits from %3. Grupa atrybutów %1 zawiera atrybut %2 który ma ograniczenie wartoÅ›ci ale typ wywodzi siÄ™ z %3. - Complex type %1 contains attribute %2 twice. Typ zÅ‚ożony %1 zawiera atrybut %2 dwukrotnie. - Complex type %1 contains two different attributes that both have types derived from %2. Typ zÅ‚ożony %1 zawiera dwa różne atrybuty których typy sÄ… wywiedzione z %2. - Complex type %1 contains attribute %2 that has value constraint but type that inherits from %3. Typ zÅ‚ożony %1 zawiera atrybut %2 który ma ograniczenie wartoÅ›ci ale typ wywodzi siÄ™ z %3. - Element %1 is not allowed to have a value constraint if its base type is complex. Element %1 nie może zawierać ograniczenia wartoÅ›ci gdy jego typ podstawowy jest zÅ‚ożony. - Element %1 is not allowed to have a value constraint if its type is derived from %2. Element %1 nie może zawierać ograniczenia wartoÅ›ci gdy jego typ jest wywiedziony z %2. - - Value constraint of element %1 is not of elements type: %2. Ograniczenie wartoÅ›ci elementu %1 nie jest typu: %2. - Element %1 is not allowed to have substitution group affiliation as it is no global element. Element %1 nie może przynależeć do grupy zastÄ™pujÄ…cej ponieważ nie jest on elementem globalnym. - Type of element %1 cannot be derived from type of substitution group affiliation. Typ elementu %1 nie może być wywiedziony z typu przynależnego do grupy zastÄ™pujÄ…cej. - Value constraint of attribute %1 is not of attributes type: %2. Ograniczenie wartoÅ›ci atrybutu %1 nie jest typu: %2. - Attribute %1 has value constraint but has type derived from %2. Atrybut %1 posiada ograniczenie wartoÅ›ci lecz jego typ wywodzi siÄ™ z %2. - %1 attribute in derived complex type must be %2 like in base type. Atrybut %1 w wywiedzionym typie zÅ‚ożonym musi być %2 jak w typie podstawowym. - Attribute %1 in derived complex type must have %2 value constraint like in base type. Atrybut %1 w wywiedzionym typie zÅ‚ożonym musi zawierać ograniczenie wartoÅ›ci %2 jak w typie podstawowym. - Attribute %1 in derived complex type must have the same %2 value constraint like in base type. Atrybut %1 w wywiedzionym typie zÅ‚ożonym musi zawierać te same ograniczenie wartoÅ›ci %2 jak w typie podstawowym. - Attribute %1 in derived complex type must have %2 value constraint. Atrybut %1 w wywiedzionym typie zÅ‚ożonym musi zawierać ograniczenie wartoÅ›ci %2. - processContent of base wildcard must be weaker than derived wildcard. "processContent" podstawowego dżokera musi być sÅ‚abszy od wywiedzionego dżokera. - - Element %1 exists twice with different types. IstniejÄ… dwa elementy %1 o różnych typach. - Particle contains non-deterministic wildcards. Element zawiera nieokreÅ›lone dżokery. - - Base attribute %1 is required but derived attribute is not. Wymagany jest bazowy atrybut %1, wywiedziony zaÅ› nie. - Type of derived attribute %1 cannot be validly derived from type of base attribute. Typ wywiedzionego atrybutu %1 nie może być poprawnie wywiedziony z typu podstawowego atrybutu. - Value constraint of derived attribute %1 does not match value constraint of base attribute. Ograniczenie wartoÅ›ci wywiedzionego atrybutu %1 nie pasuje do ograniczenia wartoÅ›ci podstawowego atrybutu. - Derived attribute %1 does not exist in the base definition. Wywiedziony atrybut %1 nie istnieje w podstawowej definicji. - Derived attribute %1 does not match the wildcard in the base definition. Wywiedziony atrybut %1 nie pasuje do dżokera w podstawowej definicji. - Base attribute %1 is required but missing in derived definition. Brak wymaganego bazowego atrybutu %1 w wywiedzionej definicji. - Derived definition contains an %1 element that does not exists in the base definition Wywiedziona definicja zawiera element %1 który nie istnieje w definicji podstawowej - Derived wildcard is not a subset of the base wildcard. Wywiedziony dżoker nie jest podzbiorem podstawowego dżokera. - %1 of derived wildcard is not a valid restriction of %2 of base wildcard %1 wywiedzionego dżokera nie jest poprawnym ograniczeniem %2 podstawowego dżokera - Attribute %1 from base type is missing in derived type. Brak atrybutu %1 typu bazowego w wywiedzionej definicji. - Type of derived attribute %1 differs from type of base attribute. Typ wywiedzionego atrybutu %1 różni siÄ™ od typu podstawowego atrybutu. - Base definition contains an %1 element that is missing in the derived definition Podstawowa definicja zawiera element %1 którego brakuje w wywiedzionej definicji - %1 references unknown %2 or %3 element %4. %1 odwoÅ‚uje siÄ™ do nieznanego elementu %2 lub %3: %4. - %1 references identity constraint %2 that is no %3 or %4 element. %1 odwoÅ‚uje siÄ™ do narzucenia niepowtarzalnoÅ›ci %2 które nie jest elementem %3 ani %4. - %1 has a different number of fields from the identity constraint %2 that it references. %1 posiada inna liczbÄ™ pól od narzucenia niepowtarzalnoÅ›ci %2 które siÄ™ do niego odwoÅ‚uje. - Base type %1 of %2 element cannot be resolved. Nie można rozwiÄ…zać typu podstawowego %1 elementu %2. - Item type %1 of %2 element cannot be resolved. Nie można rozwiÄ…zać typu elementów listy %1 w elemencie %2. - Member type %1 of %2 element cannot be resolved. Nie można rozwiÄ…zać typu %1 skÅ‚adnika elementu %2. - - - Type %1 of %2 element cannot be resolved. Nie można rozwiÄ…zać typu %1 elementu %2. - Base type %1 of complex type cannot be resolved. Nie można rozwiÄ…zać typu podstawowego %1 dla typu zÅ‚ożonego. - %1 cannot have complex base type that has a %2. %1 nie może mieć zÅ‚ożonego typu podstawowego który ma %2. - Content model of complex type %1 contains %2 element so it cannot be derived by extension from a non-empty type. Model zawartoÅ›ci typu zÅ‚ożonego %1 posiada element %2 wiÄ™c nie może być on wywiedziony poprzez rozszerzenie niepustego typu. - Complex type %1 cannot be derived by extension from %2 as the latter contains %3 element in its content model. Typ zÅ‚ożony %1 nie może być wywiedziony z %2 poprzez rozszerzenie ponieważ ten ostatni zawiera element %3 w jego modelu zawartoÅ›ci. - Type of %1 element must be a simple type, %2 is not. Typem elementu %1 musi być typ prosty, %2 nim nie jest. - Substitution group %1 of %2 element cannot be resolved. Nie można rozwiÄ…zać grupy zastÄ™pujÄ…cej %1 elementu %2. - Substitution group %1 has circular definition. Grupa zastÄ™pujÄ…ca %1 posiada cyklicznÄ… definicjÄ™. - - Duplicated element names %1 in %2 element. Powielona nazwa elementu %1 w elemencie %2. - - - - Reference %1 of %2 element cannot be resolved. Nie można rozwiÄ…zać odwoÅ‚ania %1 do elementu %2. - Circular group reference for %1. Cykliczne odwoÅ‚anie do grupy dla %1. - %1 element is not allowed in this scope Element %1 nie jest dozwolony w tym zakresie - %1 element cannot have %2 attribute with value other than %3. Element %1 nie może mieć atrybutu %2 z wartoÅ›ciÄ… innÄ… niż %3. - %1 element cannot have %2 attribute with value other than %3 or %4. Element %1 nie może mieć atrybutu %2 z wartoÅ›ciÄ… innÄ… niż %3 lub %4. - %1 or %2 attribute of reference %3 does not match with the attribute declaration %4. Atrybut %1 lub %2 odwoÅ‚ania %3 nie pasuje do deklaracji atrybutu %4. - Attribute group %1 has circular reference. Grupa atrybutów %1 posiada cykliczne odwoÅ‚anie. - %1 attribute in %2 must have %3 use like in base type %4. Atrybut %1 w %2 powinien używać %3 jak w typie podstawowym %4. - Attribute wildcard of %1 is not a valid restriction of attribute wildcard of base type %2. Atrybut dżokera %1 nie jest poprawnym ograniczeniem atrybutu dżokera typu podstawowego %2. - %1 has attribute wildcard but its base type %2 has not. %1 posiada atrybut dżokera lecz jego typ podstawowy %2 go nie posiada. - Union of attribute wildcard of type %1 and attribute wildcard of its base type %2 is not expressible. Nie można wyrazić unii atrybutu dżokera typu %1 i atrybutu dżokera jego typu podstawowego %2. - Enumeration facet contains invalid content: {%1} is not a value of type %2. Aspekt "enumeration" posiada niepoprawnÄ… zawartość: {%1} nie jest wartoÅ›ciÄ… typu %2. - Namespace prefix of qualified name %1 is not defined. Przedrostek przestrzeni nazw wystÄ™pujÄ…cy w peÅ‚nej nazwie %1 nie jest zdefiniowany. - - %1 element %2 is not a valid restriction of the %3 element it redefines: %4. Element %1 (%2) nie jest poprawnym ograniczeniem elementu %3 który redefiniuje: %4. - Empty particle cannot be derived from non-empty particle. Pusty element nie może być wywiedziony z niepustego elementu. - Derived particle is missing element %1. Brak elementu %1 w wywiedzionym elemencie. - Derived element %1 is missing value constraint as defined in base particle. Brak ograniczenia wartoÅ›ci w wywiedzionym elemencie %1 takiego jak w podstawowym elemencie. - Derived element %1 has weaker value constraint than base particle. Wywiedziony element %1 posiada sÅ‚absze ograniczenie wartoÅ›ci niż element podstawowy. - Fixed value constraint of element %1 differs from value constraint in base particle. Ograniczenie staÅ‚ej wartoÅ›ci elementu %1 różni siÄ™ od ograniczenia wartoÅ›ci w podstawowym elemencie. - Derived element %1 cannot be nillable as base element is not nillable. Wywiedziony element %1 może być zerowalny ponieważ element podstawowy nie jest zerowalny. - Block constraints of derived element %1 must not be more weaker than in the base element. Ograniczenia blokujÄ…ce dla wywiedzionego elementu %1 nie mogÄ… być sÅ‚absze od ograniczeÅ„ w elemencie podstawowym. - Simple type of derived element %1 cannot be validly derived from base element. Typ prosty w elemencie wywiedzionym %1 nie może być poprawnie wywiedziony z elementu podstawowego. - Complex type of derived element %1 cannot be validly derived from base element. Typ zÅ‚ożony w elemencie wywiedzionym %1 nie może być poprawnie wywiedziony z elementu podstawowego. - Element %1 is missing in derived particle. Brak elementu %1 w wywiedzionym elemencie. - Element %1 does not match namespace constraint of wildcard in base particle. Element %1 nie pasuje do ograniczenia przestrzeni nazw dżokera w elemencie podstawowym. - Wildcard in derived particle is not a valid subset of wildcard in base particle. Dżoker w wywiedzionym elemencie nie jest poprawnym podzbiorem dżokera w elemencie podstawowym. - processContent of wildcard in derived particle is weaker than wildcard in base particle. "processContent" dżokera w wywiedzionym elemencie jest sÅ‚abszy od dżokera w podstawowym elemencie. - Derived particle allows content that is not allowed in the base particle. Wywiedziony element pozwala na zawartość która jest niedozwolona w podstawowym elemencie. - Can not process unknown element %1, expected elements are: %2. Nie można przetworzyć nieznanego elementu %1, oczekiwanymi elementami sÄ…: %2. - Element %1 is not allowed in this scope, possible elements are: %2. Element %1 jest niedozwolony w tym zakresie, możliwymi elementami sÄ…: %2. - Child element is missing in that scope, possible child elements are: %1. Brak podelementu w tym zakresie, możliwymi podelementami sÄ…: %1. - Document is not a XML schema. Dokument nie jest schematem XML. - %1 attribute of %2 element contains invalid content: {%3} is not a value of type %4. Atrybut %1 elementu %2 posiada niepoprawnÄ… zawartość: {%3} nie jest wartoÅ›ciÄ… typu %4. - %1 attribute of %2 element contains invalid content: {%3}. Atrybut %1 elementu %2 posiada niepoprawnÄ… zawartość: {%3}. - Target namespace %1 of included schema is different from the target namespace %2 as defined by the including schema. Docelowa przestrzeÅ„ nazw %1 zaÅ‚Ä…czonego schematu jest różna od docelowej przestrzeni nazw %2 która jest zdefiniowana w schemacie zaÅ‚Ä…czajÄ…cym. - - Target namespace %1 of imported schema is different from the target namespace %2 as defined by the importing schema. Docelowa przestrzeÅ„ nazw %1 zaimportowanego schematu jest różna od docelowej przestrzeni nazw %2 która jest zdefiniowana w schemacie importujÄ…cym. - %1 element is not allowed to have the same %2 attribute value as the target namespace %3. Element %1 nie może zawierać tej samej wartoÅ›ci atrybutu %2 co docelowa przestrzeÅ„ nazw %3. - %1 element without %2 attribute is not allowed inside schema without target namespace. Element %1 bez atrybutu %2 jest niedozwolony wewnÄ…trz schematu bez docelowej przestrzeni nazw. - - %1 element is not allowed inside %2 element if %3 attribute is present. Element %1 jest niedozwolony wewnÄ…trz elementu %2 jeÅ›li jest obecny atrybut %3. - - - %1 element has neither %2 attribute nor %3 child element. Element %1 nie posiada ani atrybutu %2 ani podelementu %3. - - - - - - - - - - - - - - %1 element with %2 child element must not have a %3 attribute. Element %1 z podelementem %2 nie może mieć atrybutu %3. - %1 attribute of %2 element must be %3 or %4. Atrybutem %1 elementu %2 musi być %3 lub %4. - %1 attribute of %2 element must have a value of %3. Atrybut %1 elementu %2 musi posiadać wartość %3. - - %1 attribute of %2 element must have a value of %3 or %4. Atrybut %1 elementu %2 musi posiadać wartość %3 lub %4. - - - - - - - - - - - - - - %1 element must not have %2 and %3 attribute together. Element %1 nie może posiadać jednoczeÅ›nie atrybutów %2 i %3. - - Content of %1 attribute of %2 element must not be from namespace %3. Zawartość atrybutu %1 elementu %2 nie może pochodzić z przestrzeni nazw %3. - - %1 attribute of %2 element must not be %3. Atrybut %1 elementu %2 nie może być %3. - %1 attribute of %2 element must have the value %3 because the %4 attribute is set. Atrybut %1 elementu %2 musi zawierać wartość %3 ponieważ atrybut %4 jest ustawiony. - Specifying use='prohibited' inside an attribute group has no effect. Podawanie: use='prohibited' wewnÄ…trz grupy atrybutów nie przynosi żadnego efektu. - %1 element must have either %2 or %3 attribute. Element %1 musi zawierać atrybut %2 albo %3. - %1 element must have either %2 attribute or %3 or %4 as child element. Element %1 musi zawierać albo atrybut %2 albo %3 lub %4 jako podelement. - %1 element requires either %2 or %3 attribute. Element %1 wymaga atrybutu %2 albo %3. - Text or entity references not allowed inside %1 element Tekst ani odwoÅ‚anie nie sÄ… dozwolone wewnÄ…trz elementu %1 - - %1 attribute of %2 element must contain %3, %4 or a list of URIs. Atrybut %1 elementu %2 musi zawierać %3, %4 lub listÄ™ URI. - %1 element is not allowed in this context. Element %1 jest niedozwolony w tym kontekÅ›cie. - %1 attribute of %2 element has larger value than %3 attribute. Atrybut %1 elementu %2 posiada wiÄ™kszÄ… wartość niż atrybut %3. - Prefix of qualified name %1 is not defined. Przedrostek w peÅ‚nej nazwie %1 nie jest zdefiniowany. - - %1 attribute of %2 element must either contain %3 or the other values. Atrybut %1 elementu %2 musi zawierać albo %3 albo inne wartoÅ›ci. - Component with ID %1 has been defined previously. Komponent o identyfikatorze %1 zostaÅ‚ uprzednio zdefiniowany. - Element %1 already defined. Element %1 jest już zdefiniowany. - Attribute %1 already defined. Atrybut %1 jest już zdefiniowany. - Type %1 already defined. Typ %1 jest już zdefiniowany. - Attribute group %1 already defined. Grupa atrybutów %1 jest już zdefiniowana. - Element group %1 already defined. Grupa elementów %1 jest już zdefiniowana. - Notation %1 already defined. Zapis %1 jest już zdefiniowany. - Identity constraint %1 already defined. Narzucenie niepowtarzalnoÅ›ci %1 jest już zdefiniowane. - Duplicated facets in simple type %1. Powielone aspekty w prostym typie %1. - - - %1 is not valid according to %2. Ponieważ nie wiadomo co jest podmiotem nie można stwierdzić czy to ma być "poprawnym", "poprawnÄ…" czy "poprawne" %1 nie jest poprawne wedÅ‚ug %2. - String content does not match the length facet. Wartość ciÄ…gu koliduje z aspektem "length". - String content does not match the minLength facet. Wartość ciÄ…gu koliduje z aspektem "minLength". - String content does not match the maxLength facet. Wartość ciÄ…gu koliduje z aspektem "maxLength". - String content does not match pattern facet. Wartość ciÄ…gu koliduje z aspektem "pattern". - String content is not listed in the enumeration facet. Wartość ciÄ…gu nie widnieje na liÅ›cie aspektu "enumeration". - Signed integer content does not match the maxInclusive facet. Wartość liczby caÅ‚kowitej koliduje z aspektem "maxInclusive". - Signed integer content does not match the maxExclusive facet. Wartość liczby caÅ‚kowitej koliduje z aspektem "maxExclusive". - Signed integer content does not match the minInclusive facet. Wartość liczby caÅ‚kowitej koliduje z aspektem "minInclusive". - Signed integer content does not match the minExclusive facet. Wartość liczby caÅ‚kowitej koliduje z aspektem "minExclusive". - Signed integer content is not listed in the enumeration facet. Wartość liczby caÅ‚kowitej nie widnieje na liÅ›cie aspektu "enumeration". - Signed integer content does not match pattern facet. Wartość liczby caÅ‚kowitej koliduje z aspektem "pattern". - Signed integer content does not match in the totalDigits facet. Wartość liczby caÅ‚kowitej koliduje z aspektem "totalDigits". - Unsigned integer content does not match the maxInclusive facet. Wartość liczby naturalnej koliduje z aspektem "maxInclusive". - Unsigned integer content does not match the maxExclusive facet. Wartość liczby naturalnej koliduje z aspektem "maxExclusive". - Unsigned integer content does not match the minInclusive facet. Wartość liczby naturalnej koliduje z aspektem "minInclusive". - Unsigned integer content does not match the minExclusive facet. Wartość liczby naturalnej koliduje z aspektem "minExclusive". - Unsigned integer content is not listed in the enumeration facet. Wartość liczby naturalnej nie widnieje na liÅ›cie aspektu "enumeration". - Unsigned integer content does not match pattern facet. Wartość liczby naturalnej koliduje z aspektem "pattern". - Unsigned integer content does not match in the totalDigits facet. Wartość liczby naturalnej koliduje z aspektem "totalDigits". - Double content does not match the maxInclusive facet. Wartość liczby rzeczywistej koliduje z aspektem "maxInclusive". - Double content does not match the maxExclusive facet. Wartość liczby rzeczywistej koliduje z aspektem "maxExclusive". - Double content does not match the minInclusive facet. Wartość liczby rzeczywistej koliduje z aspektem "minInclusive". - Double content does not match the minExclusive facet. Wartość liczby rzeczywistej koliduje z aspektem "minExclusive". - Double content is not listed in the enumeration facet. Wartość liczby rzeczywistej nie widnieje na liÅ›cie aspektu "enumeration". - Double content does not match pattern facet. Wartość liczby rzeczywistej koliduje z aspektem "pattern". - Decimal content does not match in the fractionDigits facet. Wartość liczby rzeczywistej koliduje z aspektem "fractionDigits". - Decimal content does not match in the totalDigits facet. Wartość liczby rzeczywistej koliduje z aspektem "totalDigits". - Date time content does not match the maxInclusive facet. Zawartość daty i czasu koliduje z aspektem "maxInclusive". - Date time content does not match the maxExclusive facet. Zawartość daty i czasu koliduje z aspektem "maxExclusive". - Date time content does not match the minInclusive facet. Zawartość daty i czasu koliduje z aspektem "minInclusive". - Date time content does not match the minExclusive facet. Zawartość daty i czasu koliduje z aspektem "minExclusive". - Date time content is not listed in the enumeration facet. Zawartość daty i czasu nie widnieje na liÅ›cie aspektu "enumeration". - Date time content does not match pattern facet. Zawartość daty i czasu koliduje z aspektem "pattern". - Duration content does not match the maxInclusive facet. Wartość czasu trwania koliduje z aspektem "maxInclusive". - Duration content does not match the maxExclusive facet. Wartość czasu trwania koliduje z aspektem "maxExclusive". - Duration content does not match the minInclusive facet. Wartość czasu trwania koliduje z aspektem "minInclusive". - Duration content does not match the minExclusive facet. Wartość czasu trwania koliduje z aspektem "minExclusive". - Duration content is not listed in the enumeration facet. Wartość czasu trwania nie widnieje na liÅ›cie aspektu "enumeration". - Duration content does not match pattern facet. Wartość czasu trwania koliduje z aspektem "pattern". - Boolean content does not match pattern facet. Wartość boolowska koliduje z aspektem "pattern". - Binary content does not match the length facet. Wartość binarna koliduje z aspektem "length". - Binary content does not match the minLength facet. Wartość binarna koliduje z aspektem "minLength". - Binary content does not match the maxLength facet. Wartość binarna koliduje z aspektem "maxLength". - Binary content is not listed in the enumeration facet. Wartość binarna nie widnieje na liÅ›cie aspektu "enumeration". - Invalid QName content: %1. Niepoprawna zawartość QName: %1. - QName content is not listed in the enumeration facet. Zawartość QName nie widnieje na liÅ›cie aspektu "enumeration". - QName content does not match pattern facet. Zawartość QName koliduje z aspektem "pattern". - Notation content is not listed in the enumeration facet. Zapis zawartoÅ›ci nie widnieje na liÅ›cie aspektu "enumeration". - List content does not match length facet. Zawartość listy koliduje z aspektem "length". - List content does not match minLength facet. Zawartość listy koliduje z aspektem "minLength". - List content does not match maxLength facet. Zawartość listy koliduje z aspektem "maxLength". - List content is not listed in the enumeration facet. Zawartość listy nie widnieje na liÅ›cie aspektu "enumeration". - List content does not match pattern facet. Zawartość listy koliduje z aspektem "pattern". - Union content is not listed in the enumeration facet. Zawartość unii nie widnieje na liÅ›cie aspektu "enumeration". - Union content does not match pattern facet. Zawartość unii koliduje z aspektem "pattern". - Data of type %1 are not allowed to be empty. Dane typu %1 nie mogÄ… być puste. - Element %1 is missing child element. Brak wymaganego podelementu w elemencie %1. - There is one IDREF value with no corresponding ID: %1. Istnieje wartość IDREF bez odpowiadajÄ…cej jej wartoÅ›ci ID: %1. - Loaded schema file is invalid. ZaÅ‚adowany plik nie jest poprawnym plikiem ze schematem. - %1 contains invalid data. %1 zawiera niepoprawne dane. - xsi:schemaLocation namespace %1 has already appeared earlier in the instance document. PrzestrzeÅ„ nazw "xsi:schemaLocation" %1 wystÄ…piÅ‚a już wczeÅ›niej w dokumencie. - xsi:noNamespaceSchemaLocation cannot appear after the first no-namespace element or attribute. "xsi:noNamespaceSchemaLocation" nie może wystÄ…pić po pierwszym elemencie lub atrybucie który nie jest przestrzeniÄ… nazw. - No schema defined for validation. Brak zdefiniowanego schematu dla walidacji. - No definition for element %1 available. Brak dostÄ™pnej definicji dla elementu %1. - - - Specified type %1 is not known to the schema. Podany typ %1 nie jest schematowi znany. - Element %1 is not defined in this scope. Element %1 nie jest zdefiniowany w tym zakresie. - Declaration for element %1 does not exist. Brak deklaracji dla elementu %1. - Element %1 contains invalid content. Element %1 posiada niepoprawnÄ… zawartość. - Element %1 is declared as abstract. Element %1 jest zadeklarowany jako abstrakcyjny. - Element %1 is not nillable. Element %1 nie jest zerowalny. - Attribute %1 contains invalid data: %2 Atrybut %1 zawiera niepoprawne dane: %2 - Element contains content although it is nillable. Element posiada zawartość chociaż jest zerowalny. - Fixed value constraint not allowed if element is nillable. Ograniczenie staÅ‚ej wartoÅ›ci jest niedozwolone gdy element jest zerowalny. - Element %1 cannot contain other elements, as it has a fixed content. Element %1 nie może zawierać innych elementów ponieważ posiada on staÅ‚Ä… zawartość. - Specified type %1 is not validly substitutable with element type %2. Podany typ %1 nie jest poprawnie zastÄ™powalny typem elementu %2. - Complex type %1 is not allowed to be abstract. Typ zÅ‚ożony %1 nie może być abstrakcyjny. - Element %1 contains not allowed attributes. Element %1 zawiera niedozwolone atrybuty. - - Element %1 contains not allowed child element. Element %1 zawiera niedozwolony podelement. - - Content of element %1 does not match its type definition: %2. Zawartość elementu %1 nie pasuje do jego definicji typu: %2. - - - Content of element %1 does not match defined value constraint. Zawartość elementu %1 nie pasuje do zdefiniowanego ograniczenia wartoÅ›ci. - Element %1 contains not allowed child content. Element %1 zawiera niedozwolony podelement. - Element %1 contains not allowed text content. Element %1 zawiera niedozwolony text. - Element %1 is missing required attribute %2. Brak wymaganego atrybutu %2 w elemencie %1. - Attribute %1 does not match the attribute wildcard. Atrybut %1 nie pasuje do atrybutu dżokera. - Declaration for attribute %1 does not exist. Brak deklaracji atrybutu %1. - Element %1 contains two attributes of type %2. Element %1 posiada dwa atrybuty typu %2. - Attribute %1 contains invalid content. Atrybut %1 posiada niepoprawnÄ… zawartość. - Element %1 contains unknown attribute %2. Element %1 posiada nieznany atrybut %2. - - Content of attribute %1 does not match its type definition: %2. Zawartość atrybutu %1 nie pasuje do jego definicji typu: %2. - - Content of attribute %1 does not match defined value constraint. Zawartość elementu %1 nie pasuje do zdefiniowanego ograniczenia wartoÅ›ci. - Non-unique value found for constraint %1. Znaleziono nieunikatowÄ… wartość dla ograniczenia %1. - Key constraint %1 contains absent fields. Ograniczenie klucza %1 zawiera nieobecne pola. - Key constraint %1 contains references nillable element %2. - No referenced value found for key reference %1. Brak wartoÅ›ci do której odwoÅ‚uje siÄ™ klucz %1. - More than one value found for field %1. Znaleziono wiÄ™cej niż jednÄ… wartość dla pola %1. - Field %1 has no simple type. Pole %1 nie posiada prostego typu. - ID value '%1' is not unique. Wartość ID "%1" nie jest unikatowa. - '%1' attribute contains invalid QName content: %2. Atrybut "%1" zawiera niepoprawnÄ… zawartość QName: %2. -- cgit v0.12 From cc1b6475a99994908cbd6309a08fd08614f18221 Mon Sep 17 00:00:00 2001 From: Gareth Stockwell Date: Tue, 10 Aug 2010 16:30:18 +0100 Subject: Test backing store is deleted after: partial reveal, full reveal, hide After the following sequence: * widget starts hidden * Partially reveal widget * Fully reveal widget * Hide widget widget's backing store should be deleted, when running on Symbian. Task-number: QTBUG-12800 Reviewed-by: Jason Barron --- tests/auto/qwidget/tst_qwidget.cpp | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/tests/auto/qwidget/tst_qwidget.cpp b/tests/auto/qwidget/tst_qwidget.cpp index f722f89..e6e8970 100644 --- a/tests/auto/qwidget/tst_qwidget.cpp +++ b/tests/auto/qwidget/tst_qwidget.cpp @@ -9758,6 +9758,43 @@ void tst_QWidget::destroyBackingStoreWhenHidden() QVERIFY(0 != backingStore(parent)); QVERIFY(0 == backingStore(child)); } + + // 6. Partial reveal followed by full reveal + { + QWidget upper; + upper.setAutoFillBackground(true); + upper.setPalette(Qt::red); + upper.setGeometry(50, 50, 100, 100); + + QWidget lower; + lower.setAutoFillBackground(true); + lower.setPalette(Qt::green); + lower.setGeometry(50, 50, 100, 100); + + lower.show(); + QTest::qWaitForWindowShown(&lower); + upper.show(); + QTest::qWaitForWindowShown(&upper); + upper.raise(); + + QVERIFY(0 != backingStore(upper)); + QVERIFY(0 == backingStore(lower)); + + // Check that upper obscures lower + QVERIFY(lower.visibleRegion().subtracted(upper.visibleRegion()).isEmpty()); + + // Partially reveal lower + upper.move(100, 100); + + // Completely reveal lower + upper.hide(); + + // Hide lower widget - this should cause its backing store to be deleted + lower.hide(); + + // Check that backing store was deleted + WAIT_AND_VERIFY(0 == backingStore(lower)); + } } #undef WAIT_AND_VERIFY -- cgit v0.12 From b5360eb223d5377beb62008fcc1da48f432dc8dd Mon Sep 17 00:00:00 2001 From: Gareth Stockwell Date: Tue, 10 Aug 2010 17:08:37 +0100 Subject: Test backing store is deleted after reparenting a visible native child widget After the following sequence: * Create a TLW, parent1 * Create a child of parent1, and make it a native widget * Create another TLW, parent2 * Show parent1 and parent2 * Reparent child so its parent is now parent2 * Hide parent1 parent1's backing store should be deleted, when running on Symbian. Task-number: QTBUG-12817 Reviewed-by: Jason Barron --- tests/auto/qwidget/tst_qwidget.cpp | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/tests/auto/qwidget/tst_qwidget.cpp b/tests/auto/qwidget/tst_qwidget.cpp index e6e8970..ba0be3e 100644 --- a/tests/auto/qwidget/tst_qwidget.cpp +++ b/tests/auto/qwidget/tst_qwidget.cpp @@ -9795,6 +9795,43 @@ void tst_QWidget::destroyBackingStoreWhenHidden() // Check that backing store was deleted WAIT_AND_VERIFY(0 == backingStore(lower)); } + + // 7. Reparenting of visible native child widget + { + QWidget parent1; + parent1.setAutoFillBackground(true); + parent1.setPalette(Qt::green); + parent1.setGeometry(50, 50, 100, 100); + + QWidget *child = new QWidget(&parent1); + child->winId(); + child->setAutoFillBackground(true); + child->setPalette(Qt::red); + child->setGeometry(10, 10, 30, 30); + + QWidget parent2; + parent2.setAutoFillBackground(true); + parent2.setPalette(Qt::blue); + parent2.setGeometry(150, 150, 100, 100); + + parent1.show(); + QTest::qWaitForWindowShown(&parent1); + QVERIFY(0 != backingStore(parent1)); + + parent2.show(); + QTest::qWaitForWindowShown(&parent2); + QVERIFY(0 != backingStore(parent2)); + + child->setParent(&parent2); + child->setGeometry(10, 10, 30, 30); + child->show(); + + parent1.hide(); + WAIT_AND_VERIFY(0 == backingStore(parent1)); + + parent2.hide(); + WAIT_AND_VERIFY(0 == backingStore(parent2)); + } } #undef WAIT_AND_VERIFY -- cgit v0.12 From cb8d2dcc70846ccd9384a8b94b2a80821c0eb285 Mon Sep 17 00:00:00 2001 From: Gareth Stockwell Date: Tue, 10 Aug 2010 16:34:19 +0100 Subject: Replaced backing store reference count with list of visible widgets Previously, the following sequence: 1. Widget is hidden 2. Widget partially revealed 3. Widget fully revealed resulted in the reference count of the backing store owned by the widget's window() being incremented twice. This patch replaces the simple reference count with a QSet which stores pointers to the native widgets which are descendents of the backing store owner, and which are currently visible. The sequence above therefore results in just a single insertion at step (2), with step (3) having no effect on the backing store. The QRefCountedWidgetBackingStore class has been renamed QWidgetBackingStoreTracker to better reflect its purpose. Task-number: QTBUG-12800 Task-number: QTBUG-12817 Reviewed-by: Jason Barron --- src/gui/kernel/qapplication_s60.cpp | 11 +++---- src/gui/kernel/qwidget.cpp | 61 +++++++++++++++++++++++++++---------- src/gui/kernel/qwidget_p.h | 17 ++++++----- 3 files changed, 58 insertions(+), 31 deletions(-) diff --git a/src/gui/kernel/qapplication_s60.cpp b/src/gui/kernel/qapplication_s60.cpp index 559bb6a..df93bc5 100644 --- a/src/gui/kernel/qapplication_s60.cpp +++ b/src/gui/kernel/qapplication_s60.cpp @@ -1926,27 +1926,24 @@ int QApplicationPrivate::symbianProcessWsEvent(const QSymbianEvent *symbianEvent QWidget *const window = w->window(); if (!window->d_func()->maybeTopData()) break; - QRefCountedWidgetBackingStore &backingStore = window->d_func()->maybeTopData()->backingStore; + QWidgetBackingStoreTracker &backingStore = window->d_func()->maybeTopData()->backingStore; if (visChangedEvent->iFlags & TWsVisibilityChangedEvent::ENotVisible) { #ifdef SYMBIAN_GRAPHICS_WSERV_QT_EFFECTS S60->wsSession().SendEffectCommand(ETfxCmdDeallocateLayer); #endif - // Decrement backing store reference count - backingStore.deref(); + backingStore.unregisterWidget(w); // In order to ensure that any resources used by the window surface // are immediately freed, we flush the WSERV command buffer. S60->wsSession().Flush(); } else if (visChangedEvent->iFlags & TWsVisibilityChangedEvent::EPartiallyVisible) { if (backingStore.data()) { - // Increment backing store reference count - backingStore.ref(); + backingStore.registerWidget(w); } else { #ifdef SYMBIAN_GRAPHICS_WSERV_QT_EFFECTS S60->wsSession().SendEffectCommand(ETfxCmdRestoreLayer); #endif - // Create backing store with an initial reference count of 1 backingStore.create(window); - backingStore.ref(); + backingStore.registerWidget(w); w->d_func()->invalidateBuffer(w->rect()); w->repaint(); } diff --git a/src/gui/kernel/qwidget.cpp b/src/gui/kernel/qwidget.cpp index aaa29a1..dad4848 100644 --- a/src/gui/kernel/qwidget.cpp +++ b/src/gui/kernel/qwidget.cpp @@ -162,47 +162,76 @@ static inline bool hasBackingStoreSupport() extern bool qt_sendSpontaneousEvent(QObject*, QEvent*); // qapplication.cpp extern QDesktopWidget *qt_desktopWidget; // qapplication.cpp +/*! + \internal + \class QWidgetBackingStoreTracker + \brief Class which allows tracking of which widgets are using a given backing store -QRefCountedWidgetBackingStore::QRefCountedWidgetBackingStore() + QWidgetBackingStoreTracker is a thin wrapper around a QWidgetBackingStore pointer, + which maintains a list of the QWidgets which are currently using the backing + store. This list is modified via the registerWidget and unregisterWidget functions. + */ + +QWidgetBackingStoreTracker::QWidgetBackingStoreTracker() : m_ptr(0) - , m_count(0) { } -QRefCountedWidgetBackingStore::~QRefCountedWidgetBackingStore() +QWidgetBackingStoreTracker::~QWidgetBackingStoreTracker() { delete m_ptr; } -void QRefCountedWidgetBackingStore::create(QWidget *widget) +/*! + \internal + Destroy the contained QWidgetBackingStore, if not null, and clear the list of + widgets using the backing store, then create a new QWidgetBackingStore, providing + the QWidget. + */ +void QWidgetBackingStoreTracker::create(QWidget *widget) { destroy(); m_ptr = new QWidgetBackingStore(widget); - m_count = 0; } -void QRefCountedWidgetBackingStore::destroy() +/*! + \internal + Destroy the contained QWidgetBackingStore, if not null, and clear the list of + widgets using the backing store. + */ +void QWidgetBackingStoreTracker::destroy() { delete m_ptr; m_ptr = 0; - m_count = 0; + m_widgets.clear(); } -void QRefCountedWidgetBackingStore::ref() +/*! + \internal + Add the widget to the list of widgets currently using the backing store. + If the widget was already in the list, this function is a no-op. + */ +void QWidgetBackingStoreTracker::registerWidget(QWidget *w) { Q_ASSERT(m_ptr); - ++m_count; + Q_ASSERT(w->internalWinId()); + Q_ASSERT(qt_widget_private(w)->maybeBackingStore() == m_ptr); + m_widgets.insert(w); } -void QRefCountedWidgetBackingStore::deref() +/*! + \internal + Remove the widget from the list of widgets currently using the backing store. + If the widget was in the list, and removing it causes the list to be empty, + the backing store is deleted. + If the widget was not in the list, this function is a no-op. + */ +void QWidgetBackingStoreTracker::unregisterWidget(QWidget *w) { - if (m_count) { - Q_ASSERT(m_ptr); - if (0 == --m_count) { - delete m_ptr; - m_ptr = 0; - } + if (m_widgets.remove(w) && m_widgets.isEmpty()) { + delete m_ptr; + m_ptr = 0; } } diff --git a/src/gui/kernel/qwidget_p.h b/src/gui/kernel/qwidget_p.h index 587d7fb..4a79dc7 100644 --- a/src/gui/kernel/qwidget_p.h +++ b/src/gui/kernel/qwidget_p.h @@ -110,17 +110,18 @@ class QWidgetItemV2; class QStyle; -class Q_AUTOTEST_EXPORT QRefCountedWidgetBackingStore +class Q_AUTOTEST_EXPORT QWidgetBackingStoreTracker { + public: - QRefCountedWidgetBackingStore(); - ~QRefCountedWidgetBackingStore(); + QWidgetBackingStoreTracker(); + ~QWidgetBackingStoreTracker(); void create(QWidget *tlw); void destroy(); - void ref(); - void deref(); + void registerWidget(QWidget *w); + void unregisterWidget(QWidget *w); inline QWidgetBackingStore* data() { @@ -143,11 +144,11 @@ public: } private: - Q_DISABLE_COPY(QRefCountedWidgetBackingStore) + Q_DISABLE_COPY(QWidgetBackingStoreTracker) private: QWidgetBackingStore* m_ptr; - int m_count; + QSet m_widgets; }; struct QTLWExtra { @@ -156,7 +157,7 @@ struct QTLWExtra { // Regular pointers (keep them together to avoid gaps on 64 bits architectures). QIcon *icon; // widget icon QPixmap *iconPixmap; - QRefCountedWidgetBackingStore backingStore; + QWidgetBackingStoreTracker backingStore; QWindowSurface *windowSurface; QPainter *sharedPainter; -- cgit v0.12 From ea85300f6456ef1bd9702296f3068edf0795736e Mon Sep 17 00:00:00 2001 From: Gareth Stockwell Date: Tue, 17 Aug 2010 16:05:01 +0100 Subject: Refactored handling of window visibility events on Symbian Task-number: QTBUG-12817 Reviewed-by: Jason Barron --- src/gui/kernel/qapplication_s60.cpp | 62 +++++++++++++++++++++---------------- src/gui/kernel/qt_s60_p.h | 1 + 2 files changed, 37 insertions(+), 26 deletions(-) diff --git a/src/gui/kernel/qapplication_s60.cpp b/src/gui/kernel/qapplication_s60.cpp index df93bc5..670bf34 100644 --- a/src/gui/kernel/qapplication_s60.cpp +++ b/src/gui/kernel/qapplication_s60.cpp @@ -135,6 +135,38 @@ void QS60Data::setStatusPaneAndButtonGroupVisibility(bool statusPaneVisible, boo } #endif +void QS60Data::controlVisibilityChanged(CCoeControl *control, bool visible) +{ + if (QWidgetPrivate::mapper && QWidgetPrivate::mapper->contains(control)) { + QWidget *const widget = QWidgetPrivate::mapper->value(control); + QWidget *const window = widget->window(); + if (QTLWExtra *topData = qt_widget_private(window)->maybeTopData()) { + QWidgetBackingStoreTracker &backingStore = topData->backingStore; + if (visible) { + if (backingStore.data()) { + backingStore.registerWidget(widget); + } else { +#ifdef SYMBIAN_GRAPHICS_WSERV_QT_EFFECTS + S60->wsSession().SendEffectCommand(ETfxCmdRestoreLayer); +#endif + backingStore.create(window); + backingStore.registerWidget(widget); + qt_widget_private(widget)->invalidateBuffer(widget->rect()); + widget->repaint(); + } + } else { +#ifdef SYMBIAN_GRAPHICS_WSERV_QT_EFFECTS + S60->wsSession().SendEffectCommand(ETfxCmdDeallocateLayer); +#endif + backingStore.unregisterWidget(widget); + // In order to ensure that any resources used by the window surface + // are immediately freed, we flush the WSERV command buffer. + S60->wsSession().Flush(); + } + } + } +} + bool qt_nograb() // application no-grab option { #if defined(QT_DEBUG) @@ -1922,32 +1954,10 @@ int QApplicationPrivate::symbianProcessWsEvent(const QSymbianEvent *symbianEvent if (callSymbianEventFilters(symbianEvent)) return 1; const TWsVisibilityChangedEvent *visChangedEvent = event->VisibilityChanged(); - QWidget *w = QWidgetPrivate::mapper->value(control); - QWidget *const window = w->window(); - if (!window->d_func()->maybeTopData()) - break; - QWidgetBackingStoreTracker &backingStore = window->d_func()->maybeTopData()->backingStore; - if (visChangedEvent->iFlags & TWsVisibilityChangedEvent::ENotVisible) { -#ifdef SYMBIAN_GRAPHICS_WSERV_QT_EFFECTS - S60->wsSession().SendEffectCommand(ETfxCmdDeallocateLayer); -#endif - backingStore.unregisterWidget(w); - // In order to ensure that any resources used by the window surface - // are immediately freed, we flush the WSERV command buffer. - S60->wsSession().Flush(); - } else if (visChangedEvent->iFlags & TWsVisibilityChangedEvent::EPartiallyVisible) { - if (backingStore.data()) { - backingStore.registerWidget(w); - } else { -#ifdef SYMBIAN_GRAPHICS_WSERV_QT_EFFECTS - S60->wsSession().SendEffectCommand(ETfxCmdRestoreLayer); -#endif - backingStore.create(window); - backingStore.registerWidget(w); - w->d_func()->invalidateBuffer(w->rect()); - w->repaint(); - } - } + if (visChangedEvent->iFlags & TWsVisibilityChangedEvent::ENotVisible) + S60->controlVisibilityChanged(control, false); + else if (visChangedEvent->iFlags & TWsVisibilityChangedEvent::EPartiallyVisible) + S60->controlVisibilityChanged(control, true); return 1; } break; diff --git a/src/gui/kernel/qt_s60_p.h b/src/gui/kernel/qt_s60_p.h index a18ea07..ad6a99a 100644 --- a/src/gui/kernel/qt_s60_p.h +++ b/src/gui/kernel/qt_s60_p.h @@ -164,6 +164,7 @@ public: static inline CEikButtonGroupContainer* buttonGroupContainer(); static void setStatusPaneAndButtonGroupVisibility(bool statusPaneVisible, bool buttonGroupVisible); #endif + static void controlVisibilityChanged(CCoeControl *control, bool visible); #ifdef Q_OS_SYMBIAN TTrapHandler *s60InstalledTrapHandler; -- cgit v0.12 From 3ae514c6cd55cb0f63eea13c9d23593db38beee8 Mon Sep 17 00:00:00 2001 From: Oswald Buddenhagen Date: Wed, 18 Aug 2010 11:37:05 +0200 Subject: unbreak qmake autotest ok, that was a rather obvious braindamage ... :} --- tests/auto/qmake/tst_qmake.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/tests/auto/qmake/tst_qmake.cpp b/tests/auto/qmake/tst_qmake.cpp index 825e49b..1a3f843 100644 --- a/tests/auto/qmake/tst_qmake.cpp +++ b/tests/auto/qmake/tst_qmake.cpp @@ -482,14 +482,14 @@ void tst_qmake::substitutes() { QString workDir = base_path + "/testdata/substitutes"; QVERIFY( test_compiler.qmake( workDir, "test" )); - QVERIFY( test_compiler.exists( workDir, "test", Exe, "1.0.0" )); - //QVERIFY( test_compiler.exists( workDir, "sub/test2", Exe, "1.0.0" )); + QVERIFY( test_compiler.exists( workDir, "test", Plain, "" )); + //QVERIFY( test_compiler.exists( workDir, "sub/test2", Plain, "" )); QVERIFY( test_compiler.makeDistClean( workDir )); QString buildDir = base_path + "/testdata/substitutes_build"; QVERIFY( test_compiler.qmake( workDir, "test", buildDir )); - QVERIFY( test_compiler.exists( buildDir, "test", Exe, "1.0.0" )); - //QVERIFY( test_compiler.exists( buildDir, "sub/test2", Exe, "1.0.0" )); + QVERIFY( test_compiler.exists( buildDir, "test", Plain, "" )); + //QVERIFY( test_compiler.exists( buildDir, "sub/test2", Plain, "" )); QVERIFY( test_compiler.makeDistClean( buildDir )); } -- cgit v0.12 From 3e4f85dbbdb8b8a62e33f8680b0cc87ce2ed9e7e Mon Sep 17 00:00:00 2001 From: Lars Knoll Date: Wed, 18 Aug 2010 10:00:48 +0200 Subject: respect the layout direction in the default text option This fixes a regression against 4.6 where setting the default layout direction for rich text got ignored Task-number: QT-3566 Reviewed-by: Jiang Jiang --- src/gui/text/qtextobject.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/gui/text/qtextobject.cpp b/src/gui/text/qtextobject.cpp index 5fb3384..d25fb05 100644 --- a/src/gui/text/qtextobject.cpp +++ b/src/gui/text/qtextobject.cpp @@ -1156,6 +1156,10 @@ Qt::LayoutDirection QTextBlock::textDirection() const if (dir != Qt::LayoutDirectionAuto) return dir; + dir = p->defaultTextOption.textDirection(); + if (dir != Qt::LayoutDirectionAuto) + return dir; + const QString buffer = p->buffer(); const int pos = position(); -- cgit v0.12 From bc1c472967c78579178cf7e98ab999842fee3102 Mon Sep 17 00:00:00 2001 From: Gareth Stockwell Date: Wed, 11 Aug 2010 12:58:29 +0100 Subject: Ensure native window is considered invisible when it gets destroyed The lifetime of the backing store depends, on Symbian, on the visibility of the native windows which are rendering from it. Specifically, once all such windows (i.e. the TLW window and those of any native widget descendents) have become invisible, the backing store is deleted. During re-parenting of a visible native child widget from parent1 to parent2, the following events occur: 1. QWidget::hide() is called on the child 2. The child widget's native control is deleted 3. A new native control is created, with its parent set as parent2->window()->effectiveWinId() Because there is no yield to the event loop between (1) and (2), the application does not receive a 'window hidden' notification as a result of the call to hide(). This means that the child widget is not removed from the list of visible widgets held in the backing store of parent1->window(). This patch ensures that the child is removed from this list during between steps (1) and (2). Task-number: QTBUG-12406 Task-number: QTBUG-12817 Reviewed-by: Jason Barron --- src/gui/kernel/qwidget_s60.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/gui/kernel/qwidget_s60.cpp b/src/gui/kernel/qwidget_s60.cpp index 56349ad..319f330 100644 --- a/src/gui/kernel/qwidget_s60.cpp +++ b/src/gui/kernel/qwidget_s60.cpp @@ -684,6 +684,12 @@ void QWidgetPrivate::setParent_sys(QWidget *parent, Qt::WindowFlags f) QSymbianControl *old_winid = static_cast(wasCreated ? data.winid : 0); if ((q->windowType() == Qt::Desktop)) old_winid = 0; + + // old_winid may not have received a 'not visible' visibility + // changed event before being destroyed; make sure that it is + // removed from the backing store's list of visible windows. + S60->controlVisibilityChanged(old_winid, false); + setWinId(0); // hide and reparent our own window away. Otherwise we might get -- cgit v0.12 From 0129e6e48613378a1a5548b2744ec7f9ae0d9961 Mon Sep 17 00:00:00 2001 From: Gareth Stockwell Date: Tue, 17 Aug 2010 16:08:02 +0100 Subject: Removed QEXPECT_FAIL macros for test case which now passes Task-number: QTBUG-12406 Reviewed-by: Jason Barron --- tests/auto/qwidget/tst_qwidget.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/tests/auto/qwidget/tst_qwidget.cpp b/tests/auto/qwidget/tst_qwidget.cpp index ba0be3e..ef05b91 100644 --- a/tests/auto/qwidget/tst_qwidget.cpp +++ b/tests/auto/qwidget/tst_qwidget.cpp @@ -9742,7 +9742,6 @@ void tst_QWidget::destroyBackingStoreWhenHidden() QVERIFY(0 != backingStore(child)); // Parent is obscured, therefore its backing store should be destroyed - QEXPECT_FAIL("", "QTBUG-12406", Continue); QVERIFY(0 == backingStore(parent)); // Disable full screen -- cgit v0.12 From bc0328e334f456c789a18eb254af4427ea730187 Mon Sep 17 00:00:00 2001 From: Martin Smith Date: Wed, 18 Aug 2010 13:31:55 +0200 Subject: qdoc: Reorganized the QML elements table to be a dictionary... ...and a set of functional group pages. --- tools/qdoc3/htmlgenerator.cpp | 107 +++++++++++++++++++++++++++++------------- tools/qdoc3/node.cpp | 23 ++++++++- 2 files changed, 95 insertions(+), 35 deletions(-) diff --git a/tools/qdoc3/htmlgenerator.cpp b/tools/qdoc3/htmlgenerator.cpp index 50f8b56..8215ddc 100644 --- a/tools/qdoc3/htmlgenerator.cpp +++ b/tools/qdoc3/htmlgenerator.cpp @@ -4422,57 +4422,98 @@ bool HtmlGenerator::generatePageElement(QXmlStreamWriter& writer, return true; if (node->access() == Node::Private) return false; - if (!node->isInnerNode()) - return false; + QString t; + QString url = PageGenerator::fileName(node); QString title; QString rawTitle; QString fullTitle; - const InnerNode* inner = static_cast(node); - - writer.writeStartElement("page"); + QStringList pageWords; QXmlStreamAttributes attributes; - QString t; + + writer.writeStartElement("page"); t.setNum(id++); - switch (node->type()) { - case Node::Fake: - { - const FakeNode* fake = static_cast(node); - title = fake->fullTitle(); - break; - } - case Node::Class: - { - title = node->name() + " Class Reference"; + + if (node->isInnerNode()) { + const InnerNode* inner = static_cast(node); + switch (node->type()) { + case Node::Fake: + { + const FakeNode* fake = static_cast(node); + title = fake->fullTitle(); + pageWords << title; + break; + } + case Node::Class: + { + title = node->name() + " Class Reference"; + pageWords << node->name() << "class" << "reference"; + break; + } + case Node::Namespace: + { + rawTitle = marker->plainName(inner); + fullTitle = marker->plainFullName(inner); + title = rawTitle + " Namespace Reference"; + pageWords << rawTitle << "namespace" << "reference"; + break; + } + default: + title = node->name(); + pageWords << title; break; } - case Node::Namespace: - { - rawTitle = marker->plainName(inner); - fullTitle = marker->plainFullName(inner); - title = rawTitle + " Namespace Reference"; + + if (!inner->pageKeywords().isEmpty()) + pageWords << inner->pageKeywords(); + } + else { + switch (node->type()) { + case Node::Enum: + { + title = node->name() + " Enum Reference"; + pageWords << node->name() << "enum" << "type"; + url += "#" + node->name() + "-enum"; + break; + } + case Node::Function: + { + title = node->name() + " Function Reference"; + pageWords << node->name() << "function"; + url += "#" + node->name(); + break; + } + case Node::Property: + { + title = node->name() + " Property Reference"; + pageWords << node->name() << "property"; + url += "#" + node->name() + "-prop"; + break; + } + case Node::Typedef: + { + title = node->name() + " Type Reference"; + pageWords << node->name() << "typedef" << "type"; + url += "#" + node->name(); + break; + } + default: + title = node->name(); + pageWords << title; break; } - default: - title = node->name(); - break; } + writer.writeAttribute("id",t); writer.writeStartElement("pageWords"); - writer.writeCharacters(title); - if (!inner->pageKeywords().isEmpty()) { - const QStringList& w = inner->pageKeywords(); - for (int i = 0; i < w.size(); ++i) { - writer.writeCharacters(" "); - writer.writeCharacters(w.at(i).toLocal8Bit().constData()); - } - } + writer.writeCharacters(pageWords.join(" ")); + writer.writeEndElement(); writer.writeStartElement("pageTitle"); writer.writeCharacters(title); writer.writeEndElement(); writer.writeStartElement("pageUrl"); - writer.writeCharacters(PageGenerator::fileName(node)); + writer.writeCharacters(url); writer.writeEndElement(); writer.writeStartElement("pageType"); switch (node->pageType()) { diff --git a/tools/qdoc3/node.cpp b/tools/qdoc3/node.cpp index 259641e..41f90d5 100644 --- a/tools/qdoc3/node.cpp +++ b/tools/qdoc3/node.cpp @@ -652,8 +652,14 @@ NodeList InnerNode::overloads(const QString &funcName) const InnerNode::InnerNode(Type type, InnerNode *parent, const QString& name) : Node(type, parent, name) { - if (type == Class) + switch (type) { + case Class: + case Namespace: setPageType(ApiPage); + break; + default: + break; + } } /*! @@ -845,6 +851,19 @@ bool LeafNode::isInnerNode() const LeafNode::LeafNode(Type type, InnerNode *parent, const QString& name) : Node(type, parent, name) { + switch (type) { + case Enum: + case Function: + case Typedef: + case Variable: + case QmlProperty: + case QmlSignal: + case QmlMethod: + setPageType(ApiPage); + break; + default: + break; + } } /*! @@ -1600,7 +1619,7 @@ QmlPropertyNode::QmlPropertyNode(QmlPropGroupNode *parent, des(Trool_Default), att(attached) { - // nothing. + setPageType(ApiPage); } /*! -- cgit v0.12 From ccb77caba466fe0e4d28a809129513cefdbd5575 Mon Sep 17 00:00:00 2001 From: Morten Engvoldsen Date: Wed, 18 Aug 2010 13:37:21 +0200 Subject: Doc: Fixing overlapping text in header list --- doc/src/template/style/style.css | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/src/template/style/style.css b/doc/src/template/style/style.css index 190c60a..6f2bdce 100755 --- a/doc/src/template/style/style.css +++ b/doc/src/template/style/style.css @@ -388,9 +388,9 @@ .shortCut-topleft-inactive { padding-left: 3px; + padding-right: 3px; background: transparent url( ../images/sprites-combined.png) no-repeat 0px -58px; height: 20px; - width: 47px; } .shortCut-topleft-inactive span { -- cgit v0.12 From 3014b427aa8700890f9bd8ea2a0300fc152bf3d2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samuel=20R=C3=B8dal?= Date: Wed, 18 Aug 2010 17:06:19 +0200 Subject: Revert "Outline / fill inconsistency in X11 paint engine." This reverts commit ff405f5623d7ed18c881c097368e3e9afd2e9443. Reviewed-by: Trond --- src/gui/painting/qpaintengine_x11.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/gui/painting/qpaintengine_x11.cpp b/src/gui/painting/qpaintengine_x11.cpp index 5307142..e521e01 100644 --- a/src/gui/painting/qpaintengine_x11.cpp +++ b/src/gui/painting/qpaintengine_x11.cpp @@ -1516,8 +1516,8 @@ void QX11PaintEnginePrivate::fillPolygon_translated(const QPointF *polygonPoints for (int i = 0; i < pointCount; ++i) { translated_points[i] = polygonPoints[i] + offset; - translated_points[i].rx() = qFloor(translated_points[i].x()) + offs; - translated_points[i].ry() = qFloor(translated_points[i].y()) + offs; + translated_points[i].rx() = qRound(translated_points[i].x()) + offs; + translated_points[i].ry() = qRound(translated_points[i].y()) + offs; } fillPolygon_dev(translated_points.data(), pointCount, gcMode, mode); @@ -1754,8 +1754,8 @@ void QX11PaintEnginePrivate::fillPath(const QPainterPath &path, QX11PaintEngineP for (int j = 0; j < polys.at(i).size(); ++j) { translated_points[j] = polys.at(i).at(j); if (!X11->use_xrender || !(render_hints & QPainter::Antialiasing)) { - translated_points[j].rx() = qFloor(translated_points[j].rx() + aliasedCoordinateDelta) + offs; - translated_points[j].ry() = qFloor(translated_points[j].ry() + aliasedCoordinateDelta) + offs; + translated_points[j].rx() = qRound(translated_points[j].rx() + aliasedCoordinateDelta) + offs; + translated_points[j].ry() = qRound(translated_points[j].ry() + aliasedCoordinateDelta) + offs; } } -- cgit v0.12 From 041a68007413a20a9a9c97d0f2f04f9e03428f67 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samuel=20R=C3=B8dal?= Date: Wed, 18 Aug 2010 17:17:15 +0200 Subject: Revert "Fix the rendering of lines with the X11 paint engine" This reverts commit ebbab30af417dfbf3df47dec15c0e2f8d6a30fa6, which broke fill / outline consistency, and when trying to fix that by rounding the fill the same way that broke rendering in Creator. Unfortunately the X11 paint engine is too sensitive to changes, there have already been tons of patches to make it as consistent as possible. It's simply not possible to get the same rounding for both fill and outlines and at the same time have consistency between fill and outline (no holes or fill outside the outline), while using the integer based Xlib rendering API. Hopefully in 4.8 we'll switch to raster and the X11 paint engine will be a legacy. Reviewed-by: Trond --- src/gui/painting/qpaintengine_x11.cpp | 22 ++++++------ tests/auto/qpainter/tst_qpainter.cpp | 65 ----------------------------------- 2 files changed, 12 insertions(+), 75 deletions(-) diff --git a/src/gui/painting/qpaintengine_x11.cpp b/src/gui/painting/qpaintengine_x11.cpp index e521e01..910b2df 100644 --- a/src/gui/painting/qpaintengine_x11.cpp +++ b/src/gui/painting/qpaintengine_x11.cpp @@ -696,10 +696,11 @@ void QX11PaintEngine::drawLines(const QLine *lines, int lineCount) linef = d->matrix.map(QLineF(lines[i])); } if (clipLine(&linef, d->polygonClipper.boundingRect())) { - int x1 = qFloor(linef.x1() + aliasedCoordinateDelta); - int y1 = qFloor(linef.y1() + aliasedCoordinateDelta); - int x2 = qFloor(linef.x2() + aliasedCoordinateDelta); - int y2 = qFloor(linef.y2() + aliasedCoordinateDelta); + int x1 = qRound(linef.x1() + aliasedCoordinateDelta); + int y1 = qRound(linef.y1() + aliasedCoordinateDelta); + int x2 = qRound(linef.x2() + aliasedCoordinateDelta); + int y2 = qRound(linef.y2() + aliasedCoordinateDelta); + XDrawLine(d->dpy, d->hd, d->gc, x1, y1, x2, y2); } } @@ -729,10 +730,11 @@ void QX11PaintEngine::drawLines(const QLineF *lines, int lineCount) for (int i = 0; i < lineCount; ++i) { QLineF linef = d->matrix.map(lines[i]); if (clipLine(&linef, d->polygonClipper.boundingRect())) { - int x1 = qFloor(linef.x1() + aliasedCoordinateDelta); - int y1 = qFloor(linef.y1() + aliasedCoordinateDelta); - int x2 = qFloor(linef.x2() + aliasedCoordinateDelta); - int y2 = qFloor(linef.y2() + aliasedCoordinateDelta); + int x1 = qRound(linef.x1() + aliasedCoordinateDelta); + int y1 = qRound(linef.y1() + aliasedCoordinateDelta); + int x2 = qRound(linef.x2() + aliasedCoordinateDelta); + int y2 = qRound(linef.y2() + aliasedCoordinateDelta); + XDrawLine(d->dpy, d->hd, d->gc, x1, y1, x2, y2); } } @@ -1688,8 +1690,8 @@ void QX11PaintEnginePrivate::strokePolygon_dev(const QPointF *polygonPoints, int if (clippedCount > 0) { QVarLengthArray xpoints(clippedCount); for (int i = 0; i < clippedCount; ++i) { - xpoints[i].x = qFloor(clippedPoints[i].x + aliasedCoordinateDelta); - xpoints[i].y = qFloor(clippedPoints[i].y + aliasedCoordinateDelta); + xpoints[i].x = qRound(clippedPoints[i].x + aliasedCoordinateDelta); + xpoints[i].y = qRound(clippedPoints[i].y + aliasedCoordinateDelta); } uint numberPoints = qMin(clippedCount, xlibMaxLinePoints); XPoint *pts = xpoints.data(); diff --git a/tests/auto/qpainter/tst_qpainter.cpp b/tests/auto/qpainter/tst_qpainter.cpp index 2cbb9b2..f358681 100644 --- a/tests/auto/qpainter/tst_qpainter.cpp +++ b/tests/auto/qpainter/tst_qpainter.cpp @@ -118,12 +118,10 @@ private slots: void drawLine_task190634(); void drawLine_task229459(); void drawLine_task234891(); - void drawHorizontalLineF(); void drawRect_data() { fillData(); } void drawRect(); void drawRect2(); - void drawRectFHorizontalLine(); void fillRect(); void fillRect2(); @@ -253,7 +251,6 @@ private slots: void setPenColorOnPixmap(); void QTBUG5939_attachPainterPrivate(); - void drawHorizontalLine(); private: void fillData(); @@ -1221,26 +1218,6 @@ void tst_QPainter::drawLine_task234891() QCOMPARE(expected, img); } -void tst_QPainter::drawHorizontalLineF() -{ - QPixmap pixmap(100, 3); - pixmap.fill(); - - { - QPainter painter(&pixmap); - painter.drawLine(QLineF(1.5f, 1.5f, 98.5f, 1.5f)); - } - - QImage refImage(100, 3, QImage::Format_ARGB32); - refImage.fill(0xFFFFFFFF); - { - QPainter painter(&refImage); - painter.drawLine(QLineF(1.5f, 1.5f, 98.5f, 1.5f)); - } - - QCOMPARE(pixmap.toImage().convertToFormat(QImage::Format_ARGB32), refImage); -} - void tst_QPainter::drawLine_task216948() { QImage img(1, 10, QImage::Format_ARGB32_Premultiplied); @@ -1325,26 +1302,6 @@ void tst_QPainter::drawRect2() } } -void tst_QPainter::drawRectFHorizontalLine() -{ - QPixmap pixmap(100, 3); - pixmap.fill(); - - { - QPainter painter(&pixmap); - painter.drawRect(QRectF(1.5f, 1.5f, 98.5f, 1.5f)); - } - - QImage refImage(100, 3, QImage::Format_ARGB32); - refImage.fill(0xFFFFFFFF); - { - QPainter painter(&refImage); - painter.drawRect(QRectF(1.5f, 1.5f, 98.5f, 1.5f)); - } - - QCOMPARE(pixmap.toImage().convertToFormat(QImage::Format_ARGB32), refImage); -} - void tst_QPainter::fillRect() { QImage image(100, 100, QImage::Format_ARGB32_Premultiplied); @@ -4565,28 +4522,6 @@ void tst_QPainter::QTBUG5939_attachPainterPrivate() QCOMPARE(widget->deviceTransform, proxy->deviceTransform); } -void tst_QPainter::drawHorizontalLine() -{ - QPixmap pixmap(100, 3); - pixmap.fill(); - - { - QPainter painter(&pixmap); - painter.translate(0.3, 0.3); - painter.drawLine(QLine(1, 1, 99, 1)); - } - - QImage refImage(100, 3, QImage::Format_ARGB32); - refImage.fill(0xFFFFFFFF); - { - QPainter painter(&refImage); - painter.translate(0.3, 0.3); - painter.drawLine(QLine(1, 1, 99, 1)); - } - - QCOMPARE(pixmap.toImage().convertToFormat(QImage::Format_ARGB32), refImage); -} - QTEST_MAIN(tst_QPainter) #include "tst_qpainter.moc" -- cgit v0.12 From 8e7fb343372acd0bc5fe04db7a5c5542541d4538 Mon Sep 17 00:00:00 2001 From: Carlos Manuel Duclos Vergara Date: Wed, 11 Aug 2010 15:47:40 +0200 Subject: Crash in QX11PaintEngine::drawPixmap We receive a pixmap as a const reference and then we convert it to an X11 pixmap. This conversion could fail for many reasons, however we were not looking at the result of this conversion. This patch was contributed by Christoph Feck from KDE. Task-number: QTBUG-12826 Reviewed-by: Samuel --- src/gui/painting/qpaintengine_x11.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/gui/painting/qpaintengine_x11.cpp b/src/gui/painting/qpaintengine_x11.cpp index 910b2df..fecf25f 100644 --- a/src/gui/painting/qpaintengine_x11.cpp +++ b/src/gui/painting/qpaintengine_x11.cpp @@ -1916,6 +1916,8 @@ void QX11PaintEngine::drawPixmap(const QRectF &r, const QPixmap &px, const QRect int sh = qRound(sr.height()); QPixmap pixmap = qt_toX11Pixmap(px); + if(pixmap.isNull()) + return; if ((d->xinfo && d->xinfo->screen() != pixmap.x11Info().screen()) || (pixmap.x11Info().screen() != DefaultScreen(X11->display))) { -- cgit v0.12 From 8dd8db250d92521fda619bdcf3e1c859b37b2da0 Mon Sep 17 00:00:00 2001 From: Carlos Manuel Duclos Vergara Date: Wed, 18 Aug 2010 17:59:04 +0200 Subject: Crash in QWidgetPrivate::init on QApplication::quit() using a modal dialog on Mac The problem was the order of deletion in the destructor. To autotest this I create an application, start a modal dialog and then quit the application. The fix was contributed by a customer. Task-number: QTBUG-12673 Reviewed-by: Olivier Goffart --- src/gui/kernel/qapplication.cpp | 24 ++++++++++++------------ tests/auto/qapplication/modal/base.cpp | 21 +++++++++++++++++++++ tests/auto/qapplication/modal/base.h | 23 +++++++++++++++++++++++ tests/auto/qapplication/modal/main.cpp | 11 +++++++++++ tests/auto/qapplication/modal/modal.pro | 8 ++++++++ tests/auto/qapplication/qapplication.pro | 1 + tests/auto/qapplication/tst_qapplication.cpp | 18 ++++++++++++++++++ 7 files changed, 94 insertions(+), 12 deletions(-) create mode 100644 tests/auto/qapplication/modal/base.cpp create mode 100644 tests/auto/qapplication/modal/base.h create mode 100644 tests/auto/qapplication/modal/main.cpp create mode 100644 tests/auto/qapplication/modal/modal.pro diff --git a/src/gui/kernel/qapplication.cpp b/src/gui/kernel/qapplication.cpp index e164baf..3d3a749 100644 --- a/src/gui/kernel/qapplication.cpp +++ b/src/gui/kernel/qapplication.cpp @@ -1055,6 +1055,18 @@ QApplication::~QApplication() QApplicationPrivate::is_app_closing = true; QApplicationPrivate::is_app_running = false; + // delete all widgets + if (QWidgetPrivate::allWidgets) { + QWidgetSet *mySet = QWidgetPrivate::allWidgets; + QWidgetPrivate::allWidgets = 0; + for (QWidgetSet::ConstIterator it = mySet->constBegin(); it != mySet->constEnd(); ++it) { + register QWidget *w = *it; + if (!w->parent()) // window + w->destroy(true, true); + } + delete mySet; + } + delete qt_desktopWidget; qt_desktopWidget = 0; @@ -1075,18 +1087,6 @@ QApplication::~QApplication() delete QWidgetPrivate::mapper; QWidgetPrivate::mapper = 0; - // delete all widgets - if (QWidgetPrivate::allWidgets) { - QWidgetSet *mySet = QWidgetPrivate::allWidgets; - QWidgetPrivate::allWidgets = 0; - for (QWidgetSet::ConstIterator it = mySet->constBegin(); it != mySet->constEnd(); ++it) { - register QWidget *w = *it; - if (!w->parent()) // window - w->destroy(true, true); - } - delete mySet; - } - delete QApplicationPrivate::app_pal; QApplicationPrivate::app_pal = 0; delete QApplicationPrivate::sys_pal; diff --git a/tests/auto/qapplication/modal/base.cpp b/tests/auto/qapplication/modal/base.cpp new file mode 100644 index 0000000..d3a7de6 --- /dev/null +++ b/tests/auto/qapplication/modal/base.cpp @@ -0,0 +1,21 @@ +#include "base.h" + +base::base(QWidget *parent) : + QWidget(parent) +{ + m_timer = new QTimer(this); + m_modalStarted = false; + m_timer->setSingleShot(false); + connect(m_timer, SIGNAL(timeout()), this, SLOT(periodicTimer())); + m_timer->start(5000); +} + +void base::periodicTimer() +{ + if(m_modalStarted) + exit(0); + m_modalDialog = new QDialog(this); + m_modalDialog->setModal(true); + m_modalDialog->show(); + m_modalStarted = true; +} diff --git a/tests/auto/qapplication/modal/base.h b/tests/auto/qapplication/modal/base.h new file mode 100644 index 0000000..ebf1198 --- /dev/null +++ b/tests/auto/qapplication/modal/base.h @@ -0,0 +1,23 @@ +#ifndef BASE_H +#define BASE_H + +#include +#include +#include + +class base : public QWidget +{ +Q_OBJECT + QTimer *m_timer; + bool m_modalStarted; + QDialog *m_modalDialog; +public: + explicit base(QWidget *parent = 0); + +signals: + +public slots: + void periodicTimer(); +}; + +#endif // BASE_H diff --git a/tests/auto/qapplication/modal/main.cpp b/tests/auto/qapplication/modal/main.cpp new file mode 100644 index 0000000..e1d39cf --- /dev/null +++ b/tests/auto/qapplication/modal/main.cpp @@ -0,0 +1,11 @@ +#include + +#include +#include "base.h" + +int main(int argc, char *argv[]) +{ + QApplication app(argc, argv); + base *b = new base(); + return app.exec(); +} diff --git a/tests/auto/qapplication/modal/modal.pro b/tests/auto/qapplication/modal/modal.pro new file mode 100644 index 0000000..836f6ff --- /dev/null +++ b/tests/auto/qapplication/modal/modal.pro @@ -0,0 +1,8 @@ +TEMPLATE = app +TARGET = +DEPENDPATH += . +INCLUDEPATH += . +SOURCES += main.cpp \ + base.cpp +DESTDIR = ./ +HEADERS += base.h diff --git a/tests/auto/qapplication/qapplication.pro b/tests/auto/qapplication/qapplication.pro index 7814ad3..becc6c6 100644 --- a/tests/auto/qapplication/qapplication.pro +++ b/tests/auto/qapplication/qapplication.pro @@ -1,6 +1,7 @@ TEMPLATE = subdirs SUBDIRS = test \ desktopsettingsaware \ + modal \ wincmdline diff --git a/tests/auto/qapplication/tst_qapplication.cpp b/tests/auto/qapplication/tst_qapplication.cpp index 1a38070..91ae921 100644 --- a/tests/auto/qapplication/tst_qapplication.cpp +++ b/tests/auto/qapplication/tst_qapplication.cpp @@ -146,6 +146,7 @@ private slots: void symbianNeedForTraps(); void symbianLeaveThroughMain(); + void qtbug_12673(); }; class EventSpy : public QObject @@ -2239,6 +2240,23 @@ void tst_QApplication::symbianLeaveThroughMain() #endif } +void tst_QApplication::qtbug_12673() +{ +#ifdef Q_OS_SYMBIAN + QSKIP("This might not make sense in Symbian, but since I do not know how to test it I'll just skip it for now.", SkipAll); +#else + QProcess testProcess; + QStringList arguments; +#ifdef Q_OS_MAC + testProcess.start("modal/modal.app", arguments); +#else + testProcess.start("modal/modal", arguments); +#endif + QVERIFY(testProcess.waitForFinished(20000)); + QCOMPARE(testProcess.exitStatus(), QProcess::NormalExit); +#endif // Q_OS_SYMBIAN +} + //QTEST_APPLESS_MAIN(tst_QApplication) int main(int argc, char *argv[]) { -- cgit v0.12 From 0e443155c99a1ba9b990e7a2195132b2b8a1d36e Mon Sep 17 00:00:00 2001 From: Tuomas Suutari Date: Wed, 18 Aug 2010 12:41:24 +0200 Subject: QMake/Win32/MinGW: Fix ar script generating with absolute paths When QMake decides to use absolute path for some object file, this code used to leave the ADDMOD command out from the ar object script, which resulted in following errors from the issued "ar -M" command: Syntax error in archive script, line 2 Syntax error in archive script, line 3 etc... And the build failed in the linking phase, because the generated static library was empty. Fix this issue by prepending the file name with ADDMOD command even if the file path is absolute. Task-number: QTBUG-12959 Merge-request: 2451 Reviewed-by: Oswald Buddenhagen --- qmake/generators/win32/mingw_make.cpp | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/qmake/generators/win32/mingw_make.cpp b/qmake/generators/win32/mingw_make.cpp index 5685d6b..4717542 100644 --- a/qmake/generators/win32/mingw_make.cpp +++ b/qmake/generators/win32/mingw_make.cpp @@ -191,10 +191,7 @@ void createArObjectScriptFile(const QString &fileName, const QString &target, co QTextStream t(&file); t << "CREATE " << target << endl; for (QStringList::ConstIterator it = objList.constBegin(); it != objList.constEnd(); ++it) { - if (QDir::isRelativePath(*it)) - t << "ADDMOD " << *it << endl; - else - t << *it << endl; + t << "ADDMOD " << *it << endl; } t << "SAVE" << endl; t.flush(); -- cgit v0.12 From 4583ab15437c7744e8f08adafa1baccec238c1fa Mon Sep 17 00:00:00 2001 From: Oswald Buddenhagen Date: Wed, 18 Aug 2010 17:49:32 +0200 Subject: fix shadow builds with scratchbox seems it doesn't grok xargs -I. as some other unixes don't grok cp -s, we have two paths now ... Reviewed-by: joerg --- configure | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/configure b/configure index 7c3f9a3..bd69a0a 100755 --- a/configure +++ b/configure @@ -2414,10 +2414,15 @@ if [ "$OPT_SHADOW" = "yes" ]; then # Special case for mkspecs/features directory. # To be able to place .prf files into a shadow build directory, # we're creating links for files only. The directory structure is reproduced. - # A simple "cp -rs" doesn't work on Mac. :( rm -rf "$outpath/mkspecs/features" - find "$relpath/mkspecs/features" -type d | sed "s,^$relpath,$outpath," | xargs mkdir -p - find "$relpath/mkspecs/features" -type f | sed "s,^$relpath/,," | xargs -n 1 -I % ln -s "$relpath/%" "$outpath/%" + if [ "$UNAME_SYSTEM" = "Linux" ]; then + # This works with GNU coreutils, and is needed for ScratchBox + cp -rs "$relpath/mkspecs/features" "$outpath/mkspecs/features" + else + # A simple "cp -rs" doesn't work on Mac. :( + find "$relpath/mkspecs/features" -type d | sed "s,^$relpath,$outpath," | xargs mkdir -p + find "$relpath/mkspecs/features" -type f | sed "s,^$relpath/,," | xargs -n 1 -I % ln -s "$relpath/%" "$outpath/%" + fi # symlink the doc directory rm -rf "$outpath/doc" -- cgit v0.12 From 76d1c995e5bce542c5aa22e7bbf8a012fd5cb50e Mon Sep 17 00:00:00 2001 From: Oswald Buddenhagen Date: Wed, 18 Aug 2010 11:43:23 +0200 Subject: create missing output directories for substituted files it wasn't the fault of fileFixify() after all ... Reviewed-by: joerg --- qmake/generators/makefile.cpp | 1 + tests/auto/qmake/testdata/substitutes/test.pro | 3 +-- tests/auto/qmake/tst_qmake.cpp | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/qmake/generators/makefile.cpp b/qmake/generators/makefile.cpp index 851e587..852471d 100644 --- a/qmake/generators/makefile.cpp +++ b/qmake/generators/makefile.cpp @@ -538,6 +538,7 @@ MakefileGenerator::init() continue; } } + mkdir(QFileInfo(out).absolutePath()); if(out.open(QFile::WriteOnly)) { v["QMAKE_INTERNAL_INCLUDED_FILES"].append(subs.at(i)); out.write(contents.toUtf8()); diff --git a/tests/auto/qmake/testdata/substitutes/test.pro b/tests/auto/qmake/testdata/substitutes/test.pro index 5bce312..ddad93f 100644 --- a/tests/auto/qmake/testdata/substitutes/test.pro +++ b/tests/auto/qmake/testdata/substitutes/test.pro @@ -1,2 +1 @@ -QMAKE_SUBSTITUTES += test.in -# doesn't work for the time being: sub/test2.in +QMAKE_SUBSTITUTES += test.in sub/test2.in diff --git a/tests/auto/qmake/tst_qmake.cpp b/tests/auto/qmake/tst_qmake.cpp index 1a3f843..060fa01 100644 --- a/tests/auto/qmake/tst_qmake.cpp +++ b/tests/auto/qmake/tst_qmake.cpp @@ -483,13 +483,13 @@ void tst_qmake::substitutes() QString workDir = base_path + "/testdata/substitutes"; QVERIFY( test_compiler.qmake( workDir, "test" )); QVERIFY( test_compiler.exists( workDir, "test", Plain, "" )); - //QVERIFY( test_compiler.exists( workDir, "sub/test2", Plain, "" )); + QVERIFY( test_compiler.exists( workDir, "sub/test2", Plain, "" )); QVERIFY( test_compiler.makeDistClean( workDir )); QString buildDir = base_path + "/testdata/substitutes_build"; QVERIFY( test_compiler.qmake( workDir, "test", buildDir )); QVERIFY( test_compiler.exists( buildDir, "test", Plain, "" )); - //QVERIFY( test_compiler.exists( buildDir, "sub/test2", Plain, "" )); + QVERIFY( test_compiler.exists( buildDir, "sub/test2", Plain, "" )); QVERIFY( test_compiler.makeDistClean( buildDir )); } -- cgit v0.12 From 2eba19cdaa859dc9b06eb12f2dea9da27b69ea74 Mon Sep 17 00:00:00 2001 From: Oswald Buddenhagen Date: Wed, 18 Aug 2010 20:42:06 +0200 Subject: use intel linker and librarian with icc Reviewed-by: thiago Task-number: QTBUG-12937 --- mkspecs/win32-icc/qmake.conf | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mkspecs/win32-icc/qmake.conf b/mkspecs/win32-icc/qmake.conf index 3ae18b6..2dd796d 100644 --- a/mkspecs/win32-icc/qmake.conf +++ b/mkspecs/win32-icc/qmake.conf @@ -50,7 +50,7 @@ QMAKE_RUN_CXX = $(CXX) -c $(CXXFLAGS) $(INCPATH) -Fo$obj $src QMAKE_RUN_CXX_IMP = $(CXX) -c $(CXXFLAGS) $(INCPATH) -Fo$@ $< QMAKE_RUN_CXX_IMP_BATCH = $(CXX) -c $(CXXFLAGS) $(INCPATH) -Fo$@ @<< -QMAKE_LINK = link +QMAKE_LINK = xilink QMAKE_LFLAGS = /NOLOGO QMAKE_LFLAGS_RELEASE = QMAKE_LFLAGS_DEBUG = /DEBUG @@ -72,7 +72,7 @@ QMAKE_UIC = $$[QT_INSTALL_BINS]\\uic.exe QMAKE_IDC = $$[QT_INSTALL_BINS]\\idc.exe QMAKE_IDL = midl -QMAKE_LIB = lib /NOLOGO +QMAKE_LIB = xilib /NOLOGO QMAKE_RC = rc QMAKE_ZIP = zip -r -9 -- cgit v0.12 From bf141a24864e48e997ea3b626ad25bf5b232c2fb Mon Sep 17 00:00:00 2001 From: Rohan McGovern Date: Thu, 19 Aug 2010 08:19:41 +1000 Subject: Added license headers to new files. --- tests/auto/qapplication/modal/base.cpp | 41 ++++++++++++++++++++++++++++++++++ tests/auto/qapplication/modal/base.h | 41 ++++++++++++++++++++++++++++++++++ tests/auto/qapplication/modal/main.cpp | 41 ++++++++++++++++++++++++++++++++++ 3 files changed, 123 insertions(+) diff --git a/tests/auto/qapplication/modal/base.cpp b/tests/auto/qapplication/modal/base.cpp index d3a7de6..9022c36 100644 --- a/tests/auto/qapplication/modal/base.cpp +++ b/tests/auto/qapplication/modal/base.cpp @@ -1,3 +1,44 @@ +/**************************************************************************** +** +** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the test suite of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** No Commercial Usage +** This file contains pre-release code and may not be distributed. +** You may use this file in accordance with the terms and conditions +** contained in the Technology Preview License Agreement accompanying +** this package. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 2.1 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 2.1 requirements +** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** If you have questions regarding the use of this file, please contact +** Nokia at qt-info@nokia.com. +** +** +** +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + #include "base.h" base::base(QWidget *parent) : diff --git a/tests/auto/qapplication/modal/base.h b/tests/auto/qapplication/modal/base.h index ebf1198..faa1765 100644 --- a/tests/auto/qapplication/modal/base.h +++ b/tests/auto/qapplication/modal/base.h @@ -1,3 +1,44 @@ +/**************************************************************************** +** +** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the test suite of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** No Commercial Usage +** This file contains pre-release code and may not be distributed. +** You may use this file in accordance with the terms and conditions +** contained in the Technology Preview License Agreement accompanying +** this package. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 2.1 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 2.1 requirements +** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** If you have questions regarding the use of this file, please contact +** Nokia at qt-info@nokia.com. +** +** +** +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + #ifndef BASE_H #define BASE_H diff --git a/tests/auto/qapplication/modal/main.cpp b/tests/auto/qapplication/modal/main.cpp index e1d39cf..f9d8fb4 100644 --- a/tests/auto/qapplication/modal/main.cpp +++ b/tests/auto/qapplication/modal/main.cpp @@ -1,3 +1,44 @@ +/**************************************************************************** +** +** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the test suite of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** No Commercial Usage +** This file contains pre-release code and may not be distributed. +** You may use this file in accordance with the terms and conditions +** contained in the Technology Preview License Agreement accompanying +** this package. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 2.1 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 2.1 requirements +** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** If you have questions regarding the use of this file, please contact +** Nokia at qt-info@nokia.com. +** +** +** +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + #include #include -- cgit v0.12 From 673fa509fe0ac8262e53a12907e99d2a007fb5f2 Mon Sep 17 00:00:00 2001 From: Martin Jones Date: Thu, 19 Aug 2010 10:18:19 +1000 Subject: Document QML_DECLARE_TYPEINFO --- doc/src/declarative/qtdeclarative.qdoc | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/doc/src/declarative/qtdeclarative.qdoc b/doc/src/declarative/qtdeclarative.qdoc index b4f4c83..f163a66 100644 --- a/doc/src/declarative/qtdeclarative.qdoc +++ b/doc/src/declarative/qtdeclarative.qdoc @@ -59,6 +59,16 @@ Equivalent to Q_DECLARE_METATYPE(TYPE) and Q_DECLARE_METATYPE(QDeclarativeListProperty) */ +/*! + \macro QML_DECLARE_TYPEINFO(Type,Flags) + \relates QDeclarativeEngine + + Declares additional properties of a type. + + Current the only supported type info is \c QML_HAS_ATTACHED_PROPERTIES which + declares that the \c Type supports \l {Attached Properties}. +*/ + /*! \fn int qmlRegisterType(const char *uri, int versionMajor, int versionMinor, const char *qmlName) -- cgit v0.12 From 2abbc5fc400dfa8ad26397cc39f49f9b3a4304c9 Mon Sep 17 00:00:00 2001 From: Martin Jones Date: Thu, 19 Aug 2010 10:26:18 +1000 Subject: Make QML tests compile on OpenSolaris Task-number: QTBUG-13003 --- .../declarative/qdeclarativeecmascript/testtypes.h | 24 +++++++++++----------- .../tst_qdeclarativemetatype.cpp | 6 +++--- .../tst_qdeclarativetextedit.cpp | 2 +- .../tst_qdeclarativetextinput.cpp | 8 ++++---- 4 files changed, 20 insertions(+), 20 deletions(-) diff --git a/tests/auto/declarative/qdeclarativeecmascript/testtypes.h b/tests/auto/declarative/qdeclarativeecmascript/testtypes.h index 19bfd37..37d6dbd 100644 --- a/tests/auto/declarative/qdeclarativeecmascript/testtypes.h +++ b/tests/auto/declarative/qdeclarativeecmascript/testtypes.h @@ -604,62 +604,62 @@ class NumberAssignment : public QObject { Q_OBJECT public: - Q_PROPERTY(qreal test1 READ test1 WRITE setTest1); + Q_PROPERTY(qreal test1 READ test1 WRITE setTest1) qreal _test1; qreal test1() const { return _test1; } void setTest1(qreal v) { _test1 = v; } - Q_PROPERTY(qreal test2 READ test2 WRITE setTest2); + Q_PROPERTY(qreal test2 READ test2 WRITE setTest2) qreal _test2; qreal test2() const { return _test2; } void setTest2(qreal v) { _test2 = v; } - Q_PROPERTY(qreal test3 READ test3 WRITE setTest3); + Q_PROPERTY(qreal test3 READ test3 WRITE setTest3) qreal _test3; qreal test3() const { return _test3; } void setTest3(qreal v) { _test3 = v; } - Q_PROPERTY(qreal test4 READ test4 WRITE setTest4); + Q_PROPERTY(qreal test4 READ test4 WRITE setTest4) qreal _test4; qreal test4() const { return _test4; } void setTest4(qreal v) { _test4 = v; } - Q_PROPERTY(int test5 READ test5 WRITE setTest5); + Q_PROPERTY(int test5 READ test5 WRITE setTest5) int _test5; int test5() const { return _test5; } void setTest5(int v) { _test5 = v; } - Q_PROPERTY(int test6 READ test6 WRITE setTest6); + Q_PROPERTY(int test6 READ test6 WRITE setTest6) int _test6; int test6() const { return _test6; } void setTest6(int v) { _test6 = v; } - Q_PROPERTY(int test7 READ test7 WRITE setTest7); + Q_PROPERTY(int test7 READ test7 WRITE setTest7) int _test7; int test7() const { return _test7; } void setTest7(int v) { _test7 = v; } - Q_PROPERTY(int test8 READ test8 WRITE setTest8); + Q_PROPERTY(int test8 READ test8 WRITE setTest8) int _test8; int test8() const { return _test8; } void setTest8(int v) { _test8 = v; } - Q_PROPERTY(unsigned int test9 READ test9 WRITE setTest9); + Q_PROPERTY(unsigned int test9 READ test9 WRITE setTest9) unsigned int _test9; unsigned int test9() const { return _test9; } void setTest9(unsigned int v) { _test9 = v; } - Q_PROPERTY(unsigned int test10 READ test10 WRITE setTest10); + Q_PROPERTY(unsigned int test10 READ test10 WRITE setTest10) unsigned int _test10; unsigned int test10() const { return _test10; } void setTest10(unsigned int v) { _test10 = v; } - Q_PROPERTY(unsigned int test11 READ test11 WRITE setTest11); + Q_PROPERTY(unsigned int test11 READ test11 WRITE setTest11) unsigned int _test11; unsigned int test11() const { return _test11; } void setTest11(unsigned int v) { _test11 = v; } - Q_PROPERTY(unsigned int test12 READ test12 WRITE setTest12); + Q_PROPERTY(unsigned int test12 READ test12 WRITE setTest12) unsigned int _test12; unsigned int test12() const { return _test12; } void setTest12(unsigned int v) { _test12 = v; } diff --git a/tests/auto/declarative/qdeclarativemetatype/tst_qdeclarativemetatype.cpp b/tests/auto/declarative/qdeclarativemetatype/tst_qdeclarativemetatype.cpp index b06ad7c..862b7d2 100644 --- a/tests/auto/declarative/qdeclarativemetatype/tst_qdeclarativemetatype.cpp +++ b/tests/auto/declarative/qdeclarativemetatype/tst_qdeclarativemetatype.cpp @@ -313,7 +313,7 @@ void tst_qdeclarativemetatype::qmlParserStatusCast() QVERIFY(reinterpret_cast((QObject *)&t) != reinterpret_cast((QDeclarativeParserStatus *)&t)); QDeclarativeParserStatus *status = reinterpret_cast(reinterpret_cast((QObject *)&t) + cast); - QCOMPARE(status, &t); + QCOMPARE(status, (QDeclarativeParserStatus*)&t); } void tst_qdeclarativemetatype::qmlPropertyValueSourceCast() @@ -333,7 +333,7 @@ void tst_qdeclarativemetatype::qmlPropertyValueSourceCast() QVERIFY(reinterpret_cast((QObject *)&t) != reinterpret_cast((QDeclarativePropertyValueSource *)&t)); QDeclarativePropertyValueSource *source = reinterpret_cast(reinterpret_cast((QObject *)&t) + cast); - QCOMPARE(source, &t); + QCOMPARE(source, (QDeclarativePropertyValueSource*)&t); } void tst_qdeclarativemetatype::qmlPropertyValueInterceptorCast() @@ -353,7 +353,7 @@ void tst_qdeclarativemetatype::qmlPropertyValueInterceptorCast() QVERIFY(reinterpret_cast((QObject *)&t) != reinterpret_cast((QDeclarativePropertyValueInterceptor *)&t)); QDeclarativePropertyValueInterceptor *interceptor = reinterpret_cast(reinterpret_cast((QObject *)&t) + cast); - QCOMPARE(interceptor, &t); + QCOMPARE(interceptor, (QDeclarativePropertyValueInterceptor*)&t); } void tst_qdeclarativemetatype::isList() diff --git a/tests/auto/declarative/qdeclarativetextedit/tst_qdeclarativetextedit.cpp b/tests/auto/declarative/qdeclarativetextedit/tst_qdeclarativetextedit.cpp index 57a5e29..56a3121 100644 --- a/tests/auto/declarative/qdeclarativetextedit/tst_qdeclarativetextedit.cpp +++ b/tests/auto/declarative/qdeclarativetextedit/tst_qdeclarativetextedit.cpp @@ -1096,7 +1096,7 @@ void tst_qdeclarativetextedit::openInputPanelOnFocus() QApplication::processEvents(); QCOMPARE(ic.openInputPanelReceived, true); ic.openInputPanelReceived = false; - QCOMPARE(view.inputContext(), &ic); + QCOMPARE(view.inputContext(), (QInputContext*)&ic); QVERIFY(view.testAttribute(Qt::WA_InputMethodEnabled)); // input method should be disabled if focus diff --git a/tests/auto/declarative/qdeclarativetextinput/tst_qdeclarativetextinput.cpp b/tests/auto/declarative/qdeclarativetextinput/tst_qdeclarativetextinput.cpp index ca9009d..a5c2dda 100644 --- a/tests/auto/declarative/qdeclarativetextinput/tst_qdeclarativetextinput.cpp +++ b/tests/auto/declarative/qdeclarativetextinput/tst_qdeclarativetextinput.cpp @@ -193,7 +193,7 @@ void tst_qdeclarativetextinput::width() QDeclarativeTextInput *textinputObject = qobject_cast(textinputComponent.create()); QVERIFY(textinputObject != 0); - int delta = abs(int(textinputObject->width()) - metricWidth); + int delta = abs(int(int(textinputObject->width()) - metricWidth)); QVERIFY(delta <= 3.0); // As best as we can hope for cross-platform. delete textinputObject; @@ -450,7 +450,7 @@ void tst_qdeclarativetextinput::positionAt() QFontMetrics fm(textinputObject->font()); int pos = textinputObject->positionAt(textinputObject->width()/2); - int diff = abs(fm.width(textinputObject->text()) - (fm.width(textinputObject->text().left(pos))+textinputObject->width()/2)); + int diff = abs(int(fm.width(textinputObject->text()) - (fm.width(textinputObject->text().left(pos))+textinputObject->width()/2))); // some tollerance for different fonts. #ifdef Q_OS_LINUX @@ -462,7 +462,7 @@ void tst_qdeclarativetextinput::positionAt() // Check without autoscroll... textinputObject->setAutoScroll(false); pos = textinputObject->positionAt(textinputObject->width()/2); - diff = abs(fm.width(textinputObject->text().left(pos))-textinputObject->width()/2); + diff = abs(int(fm.width(textinputObject->text().left(pos))-textinputObject->width()/2)); // some tollerance for different fonts. #ifdef Q_OS_LINUX @@ -1022,7 +1022,7 @@ void tst_qdeclarativetextinput::openInputPanelOnFocus() QApplication::processEvents(); QCOMPARE(ic.openInputPanelReceived, true); ic.openInputPanelReceived = false; - QCOMPARE(view.inputContext(), &ic); + QCOMPARE(view.inputContext(), (QInputContext*)&ic); QVERIFY(view.testAttribute(Qt::WA_InputMethodEnabled)); // input method should be disabled if focus -- cgit v0.12 From 4d1f74c9c8f26e978f4c3487f2bd8a9af219167f Mon Sep 17 00:00:00 2001 From: Lorn Potter Date: Thu, 19 Aug 2010 14:34:30 +1000 Subject: cleanup and remove __FUNCTION__, which breaks build on solaris Task-number: QTBUG-12904 --- src/plugins/bearer/connman/qconnmanengine.cpp | 4 ---- .../bearer/connman/qconnmanservice_linux.cpp | 23 ++-------------------- 2 files changed, 2 insertions(+), 25 deletions(-) diff --git a/src/plugins/bearer/connman/qconnmanengine.cpp b/src/plugins/bearer/connman/qconnmanengine.cpp index 3b5ae86..341f7cd 100644 --- a/src/plugins/bearer/connman/qconnmanengine.cpp +++ b/src/plugins/bearer/connman/qconnmanengine.cpp @@ -328,7 +328,6 @@ QString QConnmanEngine::getServiceForNetwork(const QString &netPath) void QConnmanEngine::propertyChangedContext(const QString &path,const QString &item, const QDBusVariant &value) { Q_UNUSED(path); -// qDebug() << __FUNCTION__ << path << item << value.variant(); QMutexLocker locker(&mutex); if(item == "Services") { @@ -380,12 +379,10 @@ void QConnmanEngine::servicePropertyChangedContext(const QString &path,const QSt void QConnmanEngine::networkPropertyChangedContext(const QString &path,const QString &item, const QDBusVariant &value) { QMutexLocker locker(&mutex); -// qDebug() << __FUNCTION__ << path << item << value.variant(); } void QConnmanEngine::devicePropertyChangedContext(const QString &devpath,const QString &item,const QDBusVariant &value) { -// qDebug() << __FUNCTION__ << devpath << item << value.variant(); QMutexLocker locker(&mutex); if(item == "Networks") { @@ -429,7 +426,6 @@ void QConnmanEngine::devicePropertyChangedContext(const QString &devpath,const Q void QConnmanEngine::technologyPropertyChangedContext(const QString & path, const QString &item, const QDBusVariant &value) { -// qDebug() << __FUNCTION__ << path << item << value.variant(); if(item == "Devices") { QDBusArgument arg = qvariant_cast(value.variant()); QStringList list = qdbus_cast(arg); diff --git a/src/plugins/bearer/connman/qconnmanservice_linux.cpp b/src/plugins/bearer/connman/qconnmanservice_linux.cpp index b15589e..3722c43 100644 --- a/src/plugins/bearer/connman/qconnmanservice_linux.cpp +++ b/src/plugins/bearer/connman/qconnmanservice_linux.cpp @@ -481,9 +481,7 @@ QVariant QConnmanProfileInterface::getProperty(const QString &property) QVariantMap map = getProperties(); if (map.contains(property)) { var = map.value(property); - } else { - qDebug() <<__FUNCTION__<< "Could not find" << property; - } + } return var; } @@ -522,8 +520,6 @@ QConnmanServiceInterface::~QConnmanServiceInterface() void QConnmanServiceInterface::connectNotify(const char *signal) { -// qWarning() << __FUNCTION__ << signal << this->path(); - if (QLatin1String(signal) == SIGNAL(propertyChanged(QString,QDBusVariant))) { dbusConnection.connect(QLatin1String(CONNMAN_SERVICE), this->path(), @@ -569,9 +565,7 @@ QVariant QConnmanServiceInterface::getProperty(const QString &property) QVariantMap map = getProperties(); if (map.contains(property)) { var = map.value(property); - } else { -// qDebug() <<__FUNCTION__<< "Could not find" << property; - } + } return var; } @@ -1051,17 +1045,7 @@ QVariantMap QConnmanDeviceInterface::getProperties() bool QConnmanDeviceInterface::setProperty(const QString &name, const QDBusVariant &value) { - -// QList args; -#ifndef QT_NO_TEXTSTREAM - qWarning() << __FUNCTION__ << name << value.variant(); -#endif -// args << qVariantFromValue(name); -// args << qVariantFromValue(value); - QDBusMessage reply = this->call(QLatin1String("SetProperty"),name, qVariantFromValue(value)); -qWarning() << reply.errorMessage(); - return true; } @@ -1150,7 +1134,6 @@ bool QConnmanDeviceInterface::setEnabled(bool powered) << qVariantFromValue(QDBusVariant(powered)); QDBusMessage reply = this->callWithArgumentList(QDBus::AutoDetect,QLatin1String("SetProperty"),args); - qWarning() << reply.errorMessage() << reply.errorName(); return true; } @@ -1166,8 +1149,6 @@ QConnmanDBusHelper::~QConnmanDBusHelper() void QConnmanDBusHelper::propertyChanged(const QString &item, const QDBusVariant &var) { QDBusMessage msg = this->message(); -// qWarning() << sender(); - // qWarning() << msg.interface() << msg.path() << item << var.variant() <<"\n"; Q_EMIT propertyChangedContext(msg.path() ,item, var); } -- cgit v0.12 From 015b726aa46e774155bc13359dcd68d15df73bbd Mon Sep 17 00:00:00 2001 From: Alan Alpert Date: Thu, 19 Aug 2010 16:35:40 +1000 Subject: Without Declarative, still build and run QtDemo If declarative is configured out then QtDemo will now still build, with all declarative demos disabled. Task-number: QTBUG-12983 --- demos/qtdemo/mainwindow.h | 1 - demos/qtdemo/menumanager.cpp | 32 ++++++++++++++++++++++---------- demos/qtdemo/menumanager.h | 7 ++++++- demos/qtdemo/qtdemo.pro | 6 +++++- 4 files changed, 33 insertions(+), 13 deletions(-) diff --git a/demos/qtdemo/mainwindow.h b/demos/qtdemo/mainwindow.h index e613268..b8cfda6 100644 --- a/demos/qtdemo/mainwindow.h +++ b/demos/qtdemo/mainwindow.h @@ -43,7 +43,6 @@ #define MAIN_WINDOW_H #include -#include #include class DemoTextItem; diff --git a/demos/qtdemo/menumanager.cpp b/demos/qtdemo/menumanager.cpp index 5b851b4..f98c2fc 100644 --- a/demos/qtdemo/menumanager.cpp +++ b/demos/qtdemo/menumanager.cpp @@ -356,6 +356,7 @@ void MenuManager::launchExample(const QString &name) void MenuManager::launchQmlExample(const QString &name) { +#ifndef QT_NO_DECLARATIVE if(!qmlRoot){ exampleError(QProcess::UnknownError); return; @@ -382,6 +383,11 @@ void MenuManager::launchQmlExample(const QString &name) qmlRoot->setProperty("qmlFile", QVariant(""));//unload component qmlRoot->setProperty("show", QVariant(true)); qmlRoot->setProperty("qmlFile", QUrl::fromLocalFile(file.fileName())); +#else + QMessageBox::critical(0, tr("Failed to launch the example"), + tr("This application was built without the QtDeclarative module, and therefore declarative examples have been disabled."), + QMessageBox::Cancel); +#endif } void MenuManager::exampleFinished() @@ -427,21 +433,26 @@ void MenuManager::init(MainWindow *window) level2MenuNode = level2MenuNode.nextSibling(); } + qmlRoot = 0; +#ifndef QT_NO_DECLARATIVE // Create QML Loader declarativeEngine = new QDeclarativeEngine(this); QDeclarativeComponent component(declarativeEngine, QUrl("qrc:qml/qmlShell.qml"), this); - qmlRoot = 0; - if(component.isReady()) - qmlRoot = qobject_cast(component.create()); - else + QDeclarativeItem* qmlRootItem = 0; + if(component.isReady()){ + qmlRoot = component.create(); + qmlRootItem = qobject_cast(qmlRoot); + }else{ qDebug() << component.status() << component.errorString(); - if(qmlRoot){ - qmlRoot->setHeight(this->window->scene->sceneRect().height()); - qmlRoot->setWidth(this->window->scene->sceneRect().width()); - qmlRoot->setZValue(101);//Above other items - qmlRoot->setCursor(Qt::ArrowCursor); - window->scene->addItem(qmlRoot); + } + + if(qmlRootItem){ + qmlRootItem->setHeight(this->window->scene->sceneRect().height()); + qmlRootItem->setWidth(this->window->scene->sceneRect().width()); + qmlRootItem->setZValue(101);//Above other items + qmlRootItem->setCursor(Qt::ArrowCursor); + window->scene->addItem(qmlRootItem); //Note that QML adds key handling to the app. window->viewport()->setFocusPolicy(Qt::NoFocus);//Correct keyboard focus handling @@ -451,6 +462,7 @@ void MenuManager::init(MainWindow *window) }else{ qDebug() << "Error initializing QML subsystem, Declarative examples will not work"; } +#endif } void MenuManager::readInfoAboutExample(const QDomElement &example) diff --git a/demos/qtdemo/menumanager.h b/demos/qtdemo/menumanager.h index 5e14204..e4303c8 100644 --- a/demos/qtdemo/menumanager.h +++ b/demos/qtdemo/menumanager.h @@ -45,6 +45,9 @@ #include #include #include +#ifndef QT_NO_DECLARATIVE +#include +#endif #include "score.h" #include "textbutton.h" @@ -83,8 +86,10 @@ public: Score *score; int currentMenuCode; + QObject *qmlRoot; +#ifndef QT_NO_DECLARATIVE QDeclarativeEngine* declarativeEngine; - QDeclarativeItem *qmlRoot; +#endif private slots: void exampleFinished(); diff --git a/demos/qtdemo/qtdemo.pro b/demos/qtdemo/qtdemo.pro index 61ea376..836178b 100644 --- a/demos/qtdemo/qtdemo.pro +++ b/demos/qtdemo/qtdemo.pro @@ -6,13 +6,17 @@ DESTDIR = $$DEMO_DESTDIR/bin INSTALLS += target sources -QT += xml network declarative +QT += xml network contains(QT_CONFIG, opengl) { DEFINES += QT_OPENGL_SUPPORT QT += opengl } +contains(QT_CONFIG, declarative) { + QT += declarative +} + build_all:!build_pass { CONFIG -= build_all CONFIG += release -- cgit v0.12 From 386b4900912d8d784860e60c17838a7b61d387a5 Mon Sep 17 00:00:00 2001 From: Joona Petrell Date: Thu, 19 Aug 2010 16:30:07 +1000 Subject: Fix Image element svg autotest Also, reduced some platform-specific test as the test case is not meant to test regression in the painting routines, but that Image's svg support works. Task-number: Reviewed-by: Martin Jones --- .../qdeclarativeimage/data/heart-arm.png | Bin 12596 -> 0 bytes .../qdeclarativeimage/data/heart-mac.png | Bin 12621 -> 0 bytes .../qdeclarativeimage/data/heart-win32.png | Bin 12621 -> 12457 bytes .../declarative/qdeclarativeimage/data/heart.png | Bin 12577 -> 12424 bytes .../qdeclarativeimage/data/heart200-arm.png | Bin 8063 -> 0 bytes .../qdeclarativeimage/data/heart200-mac.png | Bin 8062 -> 0 bytes .../qdeclarativeimage/data/heart200-win32.png | Bin 8062 -> 7939 bytes .../declarative/qdeclarativeimage/data/heart200.png | Bin 8063 -> 7943 bytes .../qdeclarativeimage/tst_qdeclarativeimage.cpp | 16 ++++------------ 9 files changed, 4 insertions(+), 12 deletions(-) delete mode 100644 tests/auto/declarative/qdeclarativeimage/data/heart-arm.png delete mode 100644 tests/auto/declarative/qdeclarativeimage/data/heart-mac.png delete mode 100644 tests/auto/declarative/qdeclarativeimage/data/heart200-arm.png delete mode 100644 tests/auto/declarative/qdeclarativeimage/data/heart200-mac.png diff --git a/tests/auto/declarative/qdeclarativeimage/data/heart-arm.png b/tests/auto/declarative/qdeclarativeimage/data/heart-arm.png deleted file mode 100644 index 3245027..0000000 Binary files a/tests/auto/declarative/qdeclarativeimage/data/heart-arm.png and /dev/null differ diff --git a/tests/auto/declarative/qdeclarativeimage/data/heart-mac.png b/tests/auto/declarative/qdeclarativeimage/data/heart-mac.png deleted file mode 100644 index d7df0e4..0000000 Binary files a/tests/auto/declarative/qdeclarativeimage/data/heart-mac.png and /dev/null differ diff --git a/tests/auto/declarative/qdeclarativeimage/data/heart-win32.png b/tests/auto/declarative/qdeclarativeimage/data/heart-win32.png index 351da13..5992e79 100644 Binary files a/tests/auto/declarative/qdeclarativeimage/data/heart-win32.png and b/tests/auto/declarative/qdeclarativeimage/data/heart-win32.png differ diff --git a/tests/auto/declarative/qdeclarativeimage/data/heart.png b/tests/auto/declarative/qdeclarativeimage/data/heart.png index 372b224..ff93f6c 100644 Binary files a/tests/auto/declarative/qdeclarativeimage/data/heart.png and b/tests/auto/declarative/qdeclarativeimage/data/heart.png differ diff --git a/tests/auto/declarative/qdeclarativeimage/data/heart200-arm.png b/tests/auto/declarative/qdeclarativeimage/data/heart200-arm.png deleted file mode 100644 index b16db76..0000000 Binary files a/tests/auto/declarative/qdeclarativeimage/data/heart200-arm.png and /dev/null differ diff --git a/tests/auto/declarative/qdeclarativeimage/data/heart200-mac.png b/tests/auto/declarative/qdeclarativeimage/data/heart200-mac.png deleted file mode 100644 index df22325..0000000 Binary files a/tests/auto/declarative/qdeclarativeimage/data/heart200-mac.png and /dev/null differ diff --git a/tests/auto/declarative/qdeclarativeimage/data/heart200-win32.png b/tests/auto/declarative/qdeclarativeimage/data/heart200-win32.png index 4976ff9..19b20a8 100644 Binary files a/tests/auto/declarative/qdeclarativeimage/data/heart200-win32.png and b/tests/auto/declarative/qdeclarativeimage/data/heart200-win32.png differ diff --git a/tests/auto/declarative/qdeclarativeimage/data/heart200.png b/tests/auto/declarative/qdeclarativeimage/data/heart200.png index 786e75d..5a31ae8 100644 Binary files a/tests/auto/declarative/qdeclarativeimage/data/heart200.png and b/tests/auto/declarative/qdeclarativeimage/data/heart200.png differ diff --git a/tests/auto/declarative/qdeclarativeimage/tst_qdeclarativeimage.cpp b/tests/auto/declarative/qdeclarativeimage/tst_qdeclarativeimage.cpp index b8d2828..0f1050e 100644 --- a/tests/auto/declarative/qdeclarativeimage/tst_qdeclarativeimage.cpp +++ b/tests/auto/declarative/qdeclarativeimage/tst_qdeclarativeimage.cpp @@ -274,14 +274,10 @@ void tst_qdeclarativeimage::svg() QCOMPARE(obj->pixmap().height(), 300); QCOMPARE(obj->width(), 550.0); QCOMPARE(obj->height(), 500.0); -#if defined(Q_OS_MAC) - QCOMPARE(obj->pixmap(), QPixmap(SRCDIR "/data/heart-mac.png")); +#if defined(Q_OS_LINUX) + QCOMPARE(obj->pixmap(), QPixmap(SRCDIR "/data/heart.png")); #elif defined(Q_OS_WIN32) QCOMPARE(obj->pixmap(), QPixmap(SRCDIR "/data/heart-win32.png")); -#elif defined(QT_ARCH_ARM) - QCOMPARE(obj->pixmap(), QPixmap(SRCDIR "/data/heart-arm.png")); -#else - QCOMPARE(obj->pixmap(), QPixmap(SRCDIR "/data/heart.png")); #endif obj->setSourceSize(QSize(200,200)); @@ -290,14 +286,10 @@ void tst_qdeclarativeimage::svg() QCOMPARE(obj->pixmap().height(), 200); QCOMPARE(obj->width(), 550.0); QCOMPARE(obj->height(), 500.0); -#if defined(Q_OS_MAC) - QCOMPARE(obj->pixmap(), QPixmap(SRCDIR "/data/heart200-mac.png")); +#if defined(Q_OS_LINUX) + QCOMPARE(obj->pixmap(), QPixmap(SRCDIR "/data/heart200.png")); #elif defined(Q_OS_WIN32) QCOMPARE(obj->pixmap(), QPixmap(SRCDIR "/data/heart200-win32.png")); -#elif defined(QT_ARCH_ARM) - QCOMPARE(obj->pixmap(), QPixmap(SRCDIR "/data/heart200-arm.png")); -#else - QCOMPARE(obj->pixmap(), QPixmap(SRCDIR "/data/heart200.png")); #endif delete obj; } -- cgit v0.12 From 91f47532111927c7b8d5cd9981ded7bc0c203d88 Mon Sep 17 00:00:00 2001 From: Martin Smith Date: Thu, 19 Aug 2010 10:04:58 +0200 Subject: qdoc3: Added more pagewords & elements to the search index. Task-nr: QTBUG-11113 --- tools/qdoc3/htmlgenerator.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/tools/qdoc3/htmlgenerator.cpp b/tools/qdoc3/htmlgenerator.cpp index 8215ddc..6fbc2a9 100644 --- a/tools/qdoc3/htmlgenerator.cpp +++ b/tools/qdoc3/htmlgenerator.cpp @@ -4502,6 +4502,12 @@ bool HtmlGenerator::generatePageElement(QXmlStreamWriter& writer, pageWords << title; break; } + + Node* parent = node->parent(); + if (parent && ((parent->type() == Node::Class) || + (parent->type() == Node::Namespace))) { + pageWords << parent->name(); + } } writer.writeAttribute("id",t); -- cgit v0.12 From f894befedf669fb864a500b0aa395157ff0fb929 Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Tue, 17 Aug 2010 15:38:33 +0200 Subject: QDeclarativeImageProvider: Do not keep the global declarative mutex locked when processing. The point is to be able to process images in a thread. If the mutex is locked, this is useless. Use case is a slow QDeclarativeImageProvider that generates thumbmails from large files. Even with the asynchronous attribute set to true, the gui thread would be blocked by the mutex. By using QSharedPointer, I also fix the leak of the providers (which were not deleted) Reviewed-by: Martin Jones --- src/declarative/qml/qdeclarativeengine.cpp | 15 +-- src/declarative/qml/qdeclarativeengine_p.h | 2 +- src/declarative/qml/qdeclarativeimageprovider.cpp | 4 +- .../tst_qdeclarativeimageprovider.cpp | 105 +++++++++++++++++++-- 4 files changed, 110 insertions(+), 16 deletions(-) diff --git a/src/declarative/qml/qdeclarativeengine.cpp b/src/declarative/qml/qdeclarativeengine.cpp index 513fc65..bc7468f 100644 --- a/src/declarative/qml/qdeclarativeengine.cpp +++ b/src/declarative/qml/qdeclarativeengine.cpp @@ -674,7 +674,7 @@ void QDeclarativeEngine::addImageProvider(const QString &providerId, QDeclarativ { Q_D(QDeclarativeEngine); QMutexLocker locker(&d->mutex); - d->imageProviders.insert(providerId, provider); + d->imageProviders.insert(providerId, QSharedPointer(provider)); } /*! @@ -684,7 +684,7 @@ QDeclarativeImageProvider *QDeclarativeEngine::imageProvider(const QString &prov { Q_D(const QDeclarativeEngine); QMutexLocker locker(&d->mutex); - return d->imageProviders.value(providerId); + return d->imageProviders.value(providerId).data(); } /*! @@ -698,13 +698,14 @@ void QDeclarativeEngine::removeImageProvider(const QString &providerId) { Q_D(QDeclarativeEngine); QMutexLocker locker(&d->mutex); - delete d->imageProviders.take(providerId); + d->imageProviders.take(providerId); } QDeclarativeImageProvider::ImageType QDeclarativeEnginePrivate::getImageProviderType(const QUrl &url) { QMutexLocker locker(&mutex); - QDeclarativeImageProvider *provider = imageProviders.value(url.host()); + QSharedPointer provider = imageProviders.value(url.host()); + locker.unlock(); if (provider) return provider->imageType(); return static_cast(-1); @@ -714,7 +715,8 @@ QImage QDeclarativeEnginePrivate::getImageFromProvider(const QUrl &url, QSize *s { QMutexLocker locker(&mutex); QImage image; - QDeclarativeImageProvider *provider = imageProviders.value(url.host()); + QSharedPointer provider = imageProviders.value(url.host()); + locker.unlock(); if (provider) image = provider->requestImage(url.path().mid(1), size, req_size); return image; @@ -724,7 +726,8 @@ QPixmap QDeclarativeEnginePrivate::getPixmapFromProvider(const QUrl &url, QSize { QMutexLocker locker(&mutex); QPixmap pixmap; - QDeclarativeImageProvider *provider = imageProviders.value(url.host()); + QSharedPointer provider = imageProviders.value(url.host()); + locker.unlock(); if (provider) pixmap = provider->requestPixmap(url.path().mid(1), size, req_size); return pixmap; diff --git a/src/declarative/qml/qdeclarativeengine_p.h b/src/declarative/qml/qdeclarativeengine_p.h index 3b5dd5a..db2db35 100644 --- a/src/declarative/qml/qdeclarativeengine_p.h +++ b/src/declarative/qml/qdeclarativeengine_p.h @@ -232,7 +232,7 @@ public: mutable QNetworkAccessManager *networkAccessManager; mutable QDeclarativeNetworkAccessManagerFactory *networkAccessManagerFactory; - QHash imageProviders; + QHash > imageProviders; QDeclarativeImageProvider::ImageType getImageProviderType(const QUrl &url); QImage getImageFromProvider(const QUrl &url, QSize *size, const QSize& req_size); QPixmap getPixmapFromProvider(const QUrl &url, QSize *size, const QSize& req_size); diff --git a/src/declarative/qml/qdeclarativeimageprovider.cpp b/src/declarative/qml/qdeclarativeimageprovider.cpp index ea68327..ef31be7 100644 --- a/src/declarative/qml/qdeclarativeimageprovider.cpp +++ b/src/declarative/qml/qdeclarativeimageprovider.cpp @@ -161,7 +161,9 @@ QDeclarativeImageProvider::QDeclarativeImageProvider(ImageType type) } /*! - \internal + Destroys the QDeclarativeImageProvider + + \note The destructor of your derived class need to be thread safe. */ QDeclarativeImageProvider::~QDeclarativeImageProvider() { diff --git a/tests/auto/declarative/qdeclarativeimageprovider/tst_qdeclarativeimageprovider.cpp b/tests/auto/declarative/qdeclarativeimageprovider/tst_qdeclarativeimageprovider.cpp index e0b46f0..4a9224e 100644 --- a/tests/auto/declarative/qdeclarativeimageprovider/tst_qdeclarativeimageprovider.cpp +++ b/tests/auto/declarative/qdeclarativeimageprovider/tst_qdeclarativeimageprovider.cpp @@ -44,6 +44,7 @@ #include #include #include +#include #ifdef Q_OS_SYMBIAN // In Symbian OS test data is located in applications private dir @@ -85,6 +86,8 @@ private slots: void removeProvider_data(); void removeProvider(); + void threadTest(); + private: QString newImageFileName() const; void fillRequestTestsData(const QString &id); @@ -95,9 +98,15 @@ private: class TestQImageProvider : public QDeclarativeImageProvider { public: - TestQImageProvider() - : QDeclarativeImageProvider(Image) + TestQImageProvider(bool *deleteWatch = 0) + : QDeclarativeImageProvider(Image), deleteWatch(deleteWatch) + { + } + + ~TestQImageProvider() { + if (deleteWatch) + *deleteWatch = true; } QImage requestImage(const QString &id, QSize *size, const QSize& requestedSize) @@ -114,6 +123,8 @@ public: image = image.scaled(requestedSize); return image; } + + bool *deleteWatch; }; Q_DECLARE_METATYPE(TestQImageProvider*); @@ -121,11 +132,17 @@ Q_DECLARE_METATYPE(TestQImageProvider*); class TestQPixmapProvider : public QDeclarativeImageProvider { public: - TestQPixmapProvider() - : QDeclarativeImageProvider(Pixmap) + TestQPixmapProvider(bool *deleteWatch = 0) + : QDeclarativeImageProvider(Pixmap), deleteWatch(deleteWatch) { } + ~TestQPixmapProvider() + { + if (deleteWatch) + *deleteWatch = true; + } + QPixmap requestPixmap(const QString &id, QSize *size, const QSize& requestedSize) { if (id == QLatin1String("no-such-file.png")) @@ -140,6 +157,8 @@ public: image = image.scaled(requestedSize); return image; } + + bool *deleteWatch; }; Q_DECLARE_METATYPE(TestQPixmapProvider*); @@ -225,7 +244,9 @@ void tst_qdeclarativeimageprovider::requestImage_sync_data() void tst_qdeclarativeimageprovider::requestImage_sync() { - runTest(false, new TestQImageProvider); + bool deleteWatch = false; + runTest(false, new TestQImageProvider(&deleteWatch)); + QVERIFY(deleteWatch); } void tst_qdeclarativeimageprovider::requestImage_async_data() @@ -235,7 +256,9 @@ void tst_qdeclarativeimageprovider::requestImage_async_data() void tst_qdeclarativeimageprovider::requestImage_async() { - runTest(true, new TestQImageProvider); + bool deleteWatch = false; + runTest(true, new TestQImageProvider(&deleteWatch)); + QVERIFY(deleteWatch); } void tst_qdeclarativeimageprovider::requestPixmap_sync_data() @@ -245,13 +268,15 @@ void tst_qdeclarativeimageprovider::requestPixmap_sync_data() void tst_qdeclarativeimageprovider::requestPixmap_sync() { - runTest(false, new TestQPixmapProvider); + bool deleteWatch = false; + runTest(false, new TestQPixmapProvider(&deleteWatch)); + QVERIFY(deleteWatch); } void tst_qdeclarativeimageprovider::requestPixmap_async() { QDeclarativeEngine engine; - QDeclarativeImageProvider *provider = new TestQPixmapProvider; + QDeclarativeImageProvider *provider = new TestQPixmapProvider(); engine.addImageProvider("test", provider); QVERIFY(engine.imageProvider("test") != 0); @@ -305,6 +330,70 @@ void tst_qdeclarativeimageprovider::removeProvider() delete obj; } +class TestThreadProvider : public QDeclarativeImageProvider +{ + public: + TestThreadProvider() : QDeclarativeImageProvider(Image), ok(false) {} + + ~TestThreadProvider() {} + + QImage requestImage(const QString &id, QSize *size, const QSize& requestedSize) + { + mutex.lock(); + if (!ok) + cond.wait(&mutex); + mutex.unlock(); + QVector v; + for (int i = 0; i < 10000; i++) + v.prepend(i); //do some computation + QImage image(50,50, QImage::Format_RGB32); + image.fill(QColor(id).rgb()); + if (size) + *size = image.size(); + if (requestedSize.isValid()) + image = image.scaled(requestedSize); + return image; + } + + QWaitCondition cond; + QMutex mutex; + bool ok; +}; + + +void tst_qdeclarativeimageprovider::threadTest() +{ + QDeclarativeEngine engine; + + TestThreadProvider *provider = new TestThreadProvider; + + engine.addImageProvider("test_thread", provider); + QVERIFY(engine.imageProvider("test_thread") != 0); + + QString componentStr = "import Qt 4.7\nItem { \n" + "Image { source: \"image://test_thread/blue\"; asynchronous: true; }\n" + "Image { source: \"image://test_thread/red\"; asynchronous: true; }\n" + "Image { source: \"image://test_thread/green\"; asynchronous: true; }\n" + "Image { source: \"image://test_thread/yellow\"; asynchronous: true; }\n" + " }"; + QDeclarativeComponent component(&engine); + component.setData(componentStr.toLatin1(), QUrl::fromLocalFile("")); + QObject *obj = component.create(); + //MUST not deadlock + QVERIFY(obj != 0); + QList images = obj->findChildren(); + QCOMPARE(images.count(), 4); + QTest::qWait(100); + foreach(QDeclarativeImage *img, images) { + QCOMPARE(img->status(), QDeclarativeImage::Loading); + } + provider->ok = true; + provider->cond.wakeAll(); + foreach(QDeclarativeImage *img, images) { + TRY_WAIT(img->status() == QDeclarativeImage::Ready); + } +} + QTEST_MAIN(tst_qdeclarativeimageprovider) -- cgit v0.12 From acb18f598d96f4e193b85045a1e2d05272e4100b Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Wed, 18 Aug 2010 14:16:02 +0200 Subject: QTextCodec: fix wodring of a comment --- src/corelib/codecs/qtextcodec_symbian.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/corelib/codecs/qtextcodec_symbian.cpp b/src/corelib/codecs/qtextcodec_symbian.cpp index e4db9d7..20e0cfc 100644 --- a/src/corelib/codecs/qtextcodec_symbian.cpp +++ b/src/corelib/codecs/qtextcodec_symbian.cpp @@ -53,8 +53,10 @@ struct QSymbianCodecInitData { const char *aliases; }; -/* This table contains the known Symbian codecs aliases. It is ordered by charsetId. - It is required as symbian does not provide have aliases. +/* This table contains the known Symbian codecs aliases. + It is required because symbian does not provide aliases for codecs. + It is also faster to have a name here than asking the system. + It is ordered by charsetId to allow binary search lookup */ static const QSymbianCodecInitData codecsData[] = { { /*268439485*/ KCharacterSetIdentifierShiftJis, 17, "Shift_JIS\0MS_Kanji\0csShiftJIS\0MS_KANJI\0SJIS\0" }, -- cgit v0.12 From c0fa797ba33f0d15be1ba5d4b3587f47ccb02f0f Mon Sep 17 00:00:00 2001 From: Martin Smith Date: Thu, 19 Aug 2010 12:47:03 +0200 Subject: qdoc3: Added more pagewords & elements to the search index. Task-nr: QTBUG-11113 --- doc/src/xml-processing/xquery-introduction.qdoc | 1 + tools/qdoc3/htmlgenerator.cpp | 6 +++--- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/doc/src/xml-processing/xquery-introduction.qdoc b/doc/src/xml-processing/xquery-introduction.qdoc index b79c205..b5356f7 100644 --- a/doc/src/xml-processing/xquery-introduction.qdoc +++ b/doc/src/xml-processing/xquery-introduction.qdoc @@ -29,6 +29,7 @@ \page xquery-introduction.html \title A Short Path to XQuery +\pagekeywords XPath XQuery \startpage XQuery \target XQuery-introduction diff --git a/tools/qdoc3/htmlgenerator.cpp b/tools/qdoc3/htmlgenerator.cpp index 6fbc2a9..f3390de 100644 --- a/tools/qdoc3/htmlgenerator.cpp +++ b/tools/qdoc3/htmlgenerator.cpp @@ -4436,6 +4436,9 @@ bool HtmlGenerator::generatePageElement(QXmlStreamWriter& writer, if (node->isInnerNode()) { const InnerNode* inner = static_cast(node); + if (!inner->pageKeywords().isEmpty()) + pageWords << inner->pageKeywords(); + switch (node->type()) { case Node::Fake: { @@ -4463,9 +4466,6 @@ bool HtmlGenerator::generatePageElement(QXmlStreamWriter& writer, pageWords << title; break; } - - if (!inner->pageKeywords().isEmpty()) - pageWords << inner->pageKeywords(); } else { switch (node->type()) { -- cgit v0.12 From f30adf43b9331dbf0bb3768fb7694af5bce66c4a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samuel=20R=C3=B8dal?= Date: Thu, 19 Aug 2010 13:19:31 +0200 Subject: Made GL pixmap backend respect Qt::NoOpaqueDetection flag.. We don't want to do the opaque image scan when the Qt::NoOpaqueDetection flag is set. Reviewed-by: Trond --- src/opengl/qpixmapdata_gl.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/opengl/qpixmapdata_gl.cpp b/src/opengl/qpixmapdata_gl.cpp index 653e805..1efd398 100644 --- a/src/opengl/qpixmapdata_gl.cpp +++ b/src/opengl/qpixmapdata_gl.cpp @@ -367,7 +367,7 @@ void QGLPixmapData::ensureCreated() const } void QGLPixmapData::fromImage(const QImage &image, - Qt::ImageConversionFlags /*flags*/) + Qt::ImageConversionFlags flags) { if (image.size() == QSize(w, h)) setSerialNumber(++qt_gl_pixmap_serial); @@ -381,7 +381,9 @@ void QGLPixmapData::fromImage(const QImage &image, if (qApp->desktop()->depth() == 16) format = QImage::Format_RGB16; - if (image.hasAlphaChannel() && const_cast(image).data_ptr()->checkForAlphaPixels()) + if (image.hasAlphaChannel() + && ((flags & Qt::NoOpaqueDetection) + || const_cast(image).data_ptr()->checkForAlphaPixels())) format = QImage::Format_ARGB32_Premultiplied;; m_source = image.convertToFormat(format); -- cgit v0.12 From d0a25e466ea0234d03caff4ab0742484c37ae39f Mon Sep 17 00:00:00 2001 From: Martin Smith Date: Thu, 19 Aug 2010 13:58:44 +0200 Subject: doc: Removed comment about automatic inclusion of 3rd party library. It must be copied into the appliv=cation bundle automatically. --- doc/src/deployment/deployment.qdoc | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/doc/src/deployment/deployment.qdoc b/doc/src/deployment/deployment.qdoc index 00771ed..f2908bd 100644 --- a/doc/src/deployment/deployment.qdoc +++ b/doc/src/deployment/deployment.qdoc @@ -1442,10 +1442,8 @@ \endlist \note If you want a 3rd party library to be included in your - application bundle, then you must add an excplicit lib entry for - that library to your application's .pro file. Otherwise, the - \c macdeployqt tool will not copy the 3rd party .dylib into the - bundle. + application bundle, then you must copy the library into the + bundle manually, after the bundle is created. \c macdeployqt supports the following options: \list -- cgit v0.12 From da005580969b2501a246027f47f75ed3ee52670e Mon Sep 17 00:00:00 2001 From: Thierry Bastian Date: Thu, 19 Aug 2010 14:46:10 +0200 Subject: Fixes a regression preventing loading images without extensions Task-number: QTBUG-12560 Reviewed-by: gabi --- src/gui/image/qpixmap.cpp | 3 --- tests/auto/qpixmap/tst_qpixmap.cpp | 18 +++++++++++++----- 2 files changed, 13 insertions(+), 8 deletions(-) diff --git a/src/gui/image/qpixmap.cpp b/src/gui/image/qpixmap.cpp index ef9be8f..1c0ceff 100644 --- a/src/gui/image/qpixmap.cpp +++ b/src/gui/image/qpixmap.cpp @@ -830,9 +830,6 @@ bool QPixmap::load(const QString &fileName, const char *format, Qt::ImageConvers return false; QFileInfo info(fileName); - if (!info.exists()) - return false; - QString key = QLatin1Literal("qt_pixmap") % info.absoluteFilePath() % HexString(info.lastModified().toTime_t()) diff --git a/tests/auto/qpixmap/tst_qpixmap.cpp b/tests/auto/qpixmap/tst_qpixmap.cpp index f22edf6..e461b64 100644 --- a/tests/auto/qpixmap/tst_qpixmap.cpp +++ b/tests/auto/qpixmap/tst_qpixmap.cpp @@ -1673,31 +1673,39 @@ void tst_QPixmap::preserveDepth() void tst_QPixmap::loadAsBitmapOrPixmap() { QImage tmp(10, 10, QImage::Format_RGB32); - tmp.save("tmp.png"); + tmp.save("temp_image.png"); bool ok; // Check that we can load the pixmap as a pixmap and that it then turns into a pixmap - QPixmap pixmap("tmp.png"); + QPixmap pixmap("temp_image.png"); QVERIFY(!pixmap.isNull()); QVERIFY(pixmap.depth() > 1); QVERIFY(!pixmap.isQBitmap()); pixmap = QPixmap(); - ok = pixmap.load("tmp.png"); + ok = pixmap.load("temp_image.png"); + QVERIFY(ok); + QVERIFY(!pixmap.isNull()); + QVERIFY(pixmap.depth() > 1); + QVERIFY(!pixmap.isQBitmap()); + + //now we can try to load it without an extension + pixmap = QPixmap(); + ok = pixmap.load("temp_image"); QVERIFY(ok); QVERIFY(!pixmap.isNull()); QVERIFY(pixmap.depth() > 1); QVERIFY(!pixmap.isQBitmap()); // The do the same check for bitmaps.. - QBitmap bitmap("tmp.png"); + QBitmap bitmap("temp_image.png"); QVERIFY(!bitmap.isNull()); QVERIFY(bitmap.depth() == 1); QVERIFY(bitmap.isQBitmap()); bitmap = QBitmap(); - ok = bitmap.load("tmp.png"); + ok = bitmap.load("temp_image.png"); QVERIFY(ok); QVERIFY(!bitmap.isNull()); QVERIFY(bitmap.depth() == 1); -- cgit v0.12 From 1d991c8df38e0c5e75f99ad26ebcbe35ff674751 Mon Sep 17 00:00:00 2001 From: Martin Smith Date: Thu, 19 Aug 2010 15:00:22 +0200 Subject: qdoc: Added more elements to qt.pageindex Task-nr: QTBUG-11113 --- tools/qdoc3/htmlgenerator.cpp | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/tools/qdoc3/htmlgenerator.cpp b/tools/qdoc3/htmlgenerator.cpp index f3390de..3e79a9f 100644 --- a/tools/qdoc3/htmlgenerator.cpp +++ b/tools/qdoc3/htmlgenerator.cpp @@ -4537,6 +4537,35 @@ bool HtmlGenerator::generatePageElement(QXmlStreamWriter& writer, } writer.writeEndElement(); writer.writeEndElement(); + + if (node->type() == Node::Fake && node->doc().hasTableOfContents()) { + QList toc = node->doc().tableOfContents(); + if (!toc.isEmpty()) { + for (int i = 0; i < toc.size(); ++i) { + Text headingText = Text::sectionHeading(toc.at(i)); + QString s = headingText.toString(); + writer.writeStartElement("page"); + t.setNum(id++); + QString internalUrl = url + "#" + Doc::canonicalTitle(s); + writer.writeAttribute("id",t); + writer.writeStartElement("pageWords"); + writer.writeCharacters(pageWords.join(" ")); + writer.writeCharacters(" "); + writer.writeCharacters(s); + writer.writeEndElement(); + writer.writeStartElement("pageTitle"); + writer.writeCharacters(s); + writer.writeEndElement(); + writer.writeStartElement("pageUrl"); + writer.writeCharacters(internalUrl); + writer.writeEndElement(); + writer.writeStartElement("pageType"); + writer.writeCharacters("Article"); + writer.writeEndElement(); + writer.writeEndElement(); + } + } + } return true; } -- cgit v0.12 From 76bce7b04ceaae174c8ef0db5223f2dd17d9b102 Mon Sep 17 00:00:00 2001 From: Carlos Manuel Duclos Vergara Date: Thu, 19 Aug 2010 15:03:05 +0200 Subject: Fatal crash on solaris 64 bit We use a dummy variable for a function call, and that variable is causing a data misalignment. Changing the type to long fixes the issue. According to Denis it is ok to change this for all cases. Task-number: QTBUG-12928 Reviewed-by: Denis Dzyubenko --- src/gui/kernel/qclipboard_x11.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/gui/kernel/qclipboard_x11.cpp b/src/gui/kernel/qclipboard_x11.cpp index 9fcc718..4b75f0a 100644 --- a/src/gui/kernel/qclipboard_x11.cpp +++ b/src/gui/kernel/qclipboard_x11.cpp @@ -456,7 +456,8 @@ QClipboard::QClipboard(QObject *parent) XCheckIfEvent(X11->display, &ev, &qt_init_timestamp_scanner, (XPointer)&data); if (data.timestamp == CurrentTime) { setupOwner(); - int dummy = 0; + // We need this value just for completeness, we don't use it. + long dummy = 0; Window ownerId = owner->internalWinId(); XChangeProperty(X11->display, ownerId, ATOM(CLIP_TEMPORARY), XA_INTEGER, 32, -- cgit v0.12 From 380b3dbd3ec3de31fb9be72a5cfd02543d291a62 Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Wed, 18 Aug 2010 18:19:19 +0200 Subject: QDateEdit/QTimeEdit: remove duplicate properties. They were hidding QDateTimeEdit properties. (And their NOTIFY signal did not work correctly) Reviewed-by: Joao --- src/gui/widgets/qdatetimeedit.h | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/gui/widgets/qdatetimeedit.h b/src/gui/widgets/qdatetimeedit.h index 81bbdb9..d2f315a 100644 --- a/src/gui/widgets/qdatetimeedit.h +++ b/src/gui/widgets/qdatetimeedit.h @@ -206,7 +206,6 @@ private: class Q_GUI_EXPORT QTimeEdit : public QDateTimeEdit { Q_OBJECT - Q_PROPERTY(QTime time READ time WRITE setTime NOTIFY timeChanged USER true) public: QTimeEdit(QWidget *parent = 0); QTimeEdit(const QTime &time, QWidget *parent = 0); @@ -215,7 +214,6 @@ public: class Q_GUI_EXPORT QDateEdit : public QDateTimeEdit { Q_OBJECT - Q_PROPERTY(QDate date READ date WRITE setDate NOTIFY dateChanged USER true) public: QDateEdit(QWidget *parent = 0); QDateEdit(const QDate &date, QWidget *parent = 0); -- cgit v0.12 From 6cf0ad80bb8a168115772aa5c3b4abec3e372ccc Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Wed, 18 Aug 2010 18:10:01 +0200 Subject: moc: Error if the NOTIFY signal is invalid. Previously, an invalid NOTIFY signal would be silently ignored. Now it throws an error Reviewed-by: Joao Task-number: QTBUG-7684 --- src/tools/moc/generator.cpp | 48 ---------------------------- src/tools/moc/moc.cpp | 58 ++++++++++++++++++++++++++++++++++ src/tools/moc/moc.h | 1 + tests/auto/moc/error-on-wrong-notify.h | 53 +++++++++++++++++++++++++++++++ tests/auto/moc/tst_moc.cpp | 22 +++++++++++++ 5 files changed, 134 insertions(+), 48 deletions(-) create mode 100644 tests/auto/moc/error-on-wrong-notify.h diff --git a/src/tools/moc/generator.cpp b/src/tools/moc/generator.cpp index 9a982d0..c3bbba1 100644 --- a/src/tools/moc/generator.cpp +++ b/src/tools/moc/generator.cpp @@ -483,54 +483,6 @@ void Generator::generateFunctions(QList& list, const char *functype void Generator::generateProperties() { // - // specify get function, for compatibiliy we accept functions - // returning pointers, or const char * for QByteArray. - // - for (int i = 0; i < cdef->propertyList.count(); ++i) { - PropertyDef &p = cdef->propertyList[i]; - if (p.read.isEmpty()) - continue; - for (int j = 0; j < cdef->publicList.count(); ++j) { - const FunctionDef &f = cdef->publicList.at(j); - if (f.name != p.read) - continue; - if (!f.isConst) // get functions must be const - continue; - if (f.arguments.size()) // and must not take any arguments - continue; - PropertyDef::Specification spec = PropertyDef::ValueSpec; - QByteArray tmp = f.normalizedType; - if (p.type == "QByteArray" && tmp == "const char *") - tmp = "QByteArray"; - if (tmp.left(6) == "const ") - tmp = tmp.mid(6); - if (p.type != tmp && tmp.endsWith('*')) { - tmp.chop(1); - spec = PropertyDef::PointerSpec; - } else if (f.type.name.endsWith('&')) { // raw type, not normalized type - spec = PropertyDef::ReferenceSpec; - } - if (p.type != tmp) - continue; - p.gspec = spec; - break; - } - if(!p.notify.isEmpty()) { - int notifyId = -1; - for (int j = 0; j < cdef->signalList.count(); ++j) { - const FunctionDef &f = cdef->signalList.at(j); - if(f.name != p.notify) { - continue; - } else { - notifyId = j /* Signal indexes start from 0 */; - break; - } - } - p.notifyId = notifyId; - } - } - - // // Create meta data // diff --git a/src/tools/moc/moc.cpp b/src/tools/moc/moc.cpp index ac49d65..2c24165 100644 --- a/src/tools/moc/moc.cpp +++ b/src/tools/moc/moc.cpp @@ -727,6 +727,7 @@ void Moc::parse() error("Class declarations lacks Q_OBJECT macro."); checkSuperClasses(&def); + checkProperties(&def); classList += def; knownQObjectClasses.insert(def.classname); @@ -1312,5 +1313,62 @@ void Moc::checkSuperClasses(ClassDef *def) } } +void Moc::checkProperties(ClassDef *cdef) +{ + // + // specify get function, for compatibiliy we accept functions + // returning pointers, or const char * for QByteArray. + // + for (int i = 0; i < cdef->propertyList.count(); ++i) { + PropertyDef &p = cdef->propertyList[i]; + if (p.read.isEmpty()) + continue; + for (int j = 0; j < cdef->publicList.count(); ++j) { + const FunctionDef &f = cdef->publicList.at(j); + if (f.name != p.read) + continue; + if (!f.isConst) // get functions must be const + continue; + if (f.arguments.size()) // and must not take any arguments + continue; + PropertyDef::Specification spec = PropertyDef::ValueSpec; + QByteArray tmp = f.normalizedType; + if (p.type == "QByteArray" && tmp == "const char *") + tmp = "QByteArray"; + if (tmp.left(6) == "const ") + tmp = tmp.mid(6); + if (p.type != tmp && tmp.endsWith('*')) { + tmp.chop(1); + spec = PropertyDef::PointerSpec; + } else if (f.type.name.endsWith('&')) { // raw type, not normalized type + spec = PropertyDef::ReferenceSpec; + } + if (p.type != tmp) + continue; + p.gspec = spec; + break; + } + if(!p.notify.isEmpty()) { + int notifyId = -1; + for (int j = 0; j < cdef->signalList.count(); ++j) { + const FunctionDef &f = cdef->signalList.at(j); + if(f.name != p.notify) { + continue; + } else { + notifyId = j /* Signal indexes start from 0 */; + break; + } + } + p.notifyId = notifyId; + if (notifyId == -1) { + QByteArray msg = "NOTIFY signal '" + p.notify + "' of property '" + p.name + + "' does not exist in class " + cdef->classname + "."; + error(msg.constData()); + } + } + } +} + + QT_END_NAMESPACE diff --git a/src/tools/moc/moc.h b/src/tools/moc/moc.h index 9f349b5..5e47d9a 100644 --- a/src/tools/moc/moc.h +++ b/src/tools/moc/moc.h @@ -238,6 +238,7 @@ public: bool testFunctionAttribute(Token tok, FunctionDef *def); void checkSuperClasses(ClassDef *def); + void checkProperties(ClassDef* cdef); }; inline QByteArray noRef(const QByteArray &type) diff --git a/tests/auto/moc/error-on-wrong-notify.h b/tests/auto/moc/error-on-wrong-notify.h new file mode 100644 index 0000000..4b6284a --- /dev/null +++ b/tests/auto/moc/error-on-wrong-notify.h @@ -0,0 +1,53 @@ +/**************************************************************************** +** +** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the test suite of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** No Commercial Usage +** This file contains pre-release code and may not be distributed. +** You may use this file in accordance with the terms and conditions +** contained in the Technology Preview License Agreement accompanying +** this package. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 2.1 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 2.1 requirements +** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** If you have questions regarding the use of this file, please contact +** Nokia at qt-info@nokia.com. +** +** +** +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ +#include + +class ClassWithWrongNOTIFY : public QObject +{ + Q_OBJECT + Q_PROPERTY(int foo READ foo WRITE setFoo NOTIFY fooChanged) + + int m_foo; +public: + void setFoo(int i) { m_foo = i; } + int foo() { return m_foo; } +}; + diff --git a/tests/auto/moc/tst_moc.cpp b/tests/auto/moc/tst_moc.cpp index d3a7e03..f9c3ccb 100644 --- a/tests/auto/moc/tst_moc.cpp +++ b/tests/auto/moc/tst_moc.cpp @@ -492,6 +492,7 @@ private slots: void warnOnVirtualSignal(); void QTBUG5590_dummyProperty(); void QTBUG12260_defaultTemplate(); + void notifyError(); signals: void sigWithUnsignedArg(unsigned foo); void sigWithSignedArg(signed foo); @@ -1362,6 +1363,27 @@ void tst_Moc::QTBUG12260_defaultTemplate() QVERIFY(QTBUG12260_defaultTemplate_Object::staticMetaObject.indexOfSlot("doAnotherThing(bool,bool)") != -1); } +void tst_Moc::notifyError() +{ +#ifdef MOC_CROSS_COMPILED + QSKIP("Not tested when cross-compiled", SkipAll); +#endif +#if defined(Q_OS_LINUX) && defined(Q_CC_GNU) && !defined(QT_NO_PROCESS) + QProcess proc; + proc.start("moc", QStringList(srcify("error-on-wrong-notify.h"))); + QVERIFY(proc.waitForFinished()); + QCOMPARE(proc.exitCode(), 1); + QCOMPARE(proc.exitStatus(), QProcess::NormalExit); + QByteArray mocOut = proc.readAllStandardOutput(); + QVERIFY(mocOut.isEmpty()); + QString mocError = QString::fromLocal8Bit(proc.readAllStandardError()); + QCOMPARE(mocError, QString(SRCDIR) + + QString("/error-on-wrong-notify.h:52: Error: NOTIFY signal 'fooChanged' of property 'foo' does not exist in class ClassWithWrongNOTIFY.\n")); +#else + QSKIP("Only tested on linux/gcc", SkipAll); +#endif +} + QTEST_APPLESS_MAIN(tst_Moc) #include "tst_moc.moc" -- cgit v0.12 From e0e6fece5f79609a39a410044437e4d78eca56c6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Trond=20Kjern=C3=A5sen?= Date: Thu, 19 Aug 2010 13:19:42 +0200 Subject: Fix an obvious bug in tst_QGL::clipTest() Reviewed-by: Samuel --- tests/auto/qgl/tst_qgl.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/auto/qgl/tst_qgl.cpp b/tests/auto/qgl/tst_qgl.cpp index 7fe461c..bdff5ed 100644 --- a/tests/auto/qgl/tst_qgl.cpp +++ b/tests/auto/qgl/tst_qgl.cpp @@ -1835,7 +1835,7 @@ void tst_QGL::clipTest() // Sample pixels in a grid pattern which avoids false failures due to // off-by-one pixel errors on some buggy GL implementations for (int x = 2; x < reference.width(); x += 5) { - for (int y = 2; y < reference.width(); y += 5) { + for (int y = 2; y < reference.height(); y += 5) { QFUZZY_COMPARE_PIXELS(widgetFB.pixel(x, y), reference.pixel(x, y)); } } -- cgit v0.12 From ee2ff544fec7a40ff3096edc4bf7cc7ca8cfa191 Mon Sep 17 00:00:00 2001 From: Jiang Jiang Date: Wed, 18 Aug 2010 16:03:54 +0200 Subject: Ignore LayoutDirectionChange event in QTextControl LayoutDirectionChange should no longer affect text direction in 4.7, by ignoring this event in QTextControl, we make the behavior consistent with QLineEdit. Reviewed-by: Lars Knoll --- src/gui/text/qtextcontrol.cpp | 8 -------- 1 file changed, 8 deletions(-) diff --git a/src/gui/text/qtextcontrol.cpp b/src/gui/text/qtextcontrol.cpp index 3d34687..5fe0c0c 100644 --- a/src/gui/text/qtextcontrol.cpp +++ b/src/gui/text/qtextcontrol.cpp @@ -1101,14 +1101,6 @@ void QTextControl::processEvent(QEvent *e, const QMatrix &matrix, QWidget *conte } } break; - case QEvent::LayoutDirectionChange: { - if (contextWidget) { - QTextOption opt = document()->defaultTextOption(); - opt.setTextDirection(contextWidget->layoutDirection()); - document()->setDefaultTextOption(opt); - } - } - // FALL THROUGH default: break; } -- cgit v0.12 From d31e3bd3e27e9249df451b4b2a3a3a16e9160fa4 Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Thu, 19 Aug 2010 17:02:05 +0200 Subject: Remove wrong NOTIFY attribute. They where related to not unreachable signals. It would cause the compilation to break --- src/declarative/graphicsitems/qdeclarativepath_p.h | 2 +- src/declarative/util/qdeclarativeanimation_p.h | 18 +++++++++--------- src/declarative/util/qdeclarativefontloader_p.h | 2 +- 3 files changed, 11 insertions(+), 11 deletions(-) diff --git a/src/declarative/graphicsitems/qdeclarativepath_p.h b/src/declarative/graphicsitems/qdeclarativepath_p.h index 5ab5cfd..195057c 100644 --- a/src/declarative/graphicsitems/qdeclarativepath_p.h +++ b/src/declarative/graphicsitems/qdeclarativepath_p.h @@ -190,7 +190,7 @@ private: class Q_AUTOTEST_EXPORT QDeclarativePathPercent : public QDeclarativePathElement { Q_OBJECT - Q_PROPERTY(qreal value READ value WRITE setValue NOTIFY changed) + Q_PROPERTY(qreal value READ value WRITE setValue) public: QDeclarativePathPercent(QObject *parent=0) : QDeclarativePathElement(parent) {} diff --git a/src/declarative/util/qdeclarativeanimation_p.h b/src/declarative/util/qdeclarativeanimation_p.h index 481c36c..d15d1f6 100644 --- a/src/declarative/util/qdeclarativeanimation_p.h +++ b/src/declarative/util/qdeclarativeanimation_p.h @@ -74,7 +74,7 @@ class Q_AUTOTEST_EXPORT QDeclarativeAbstractAnimation : public QObject, public Q Q_PROPERTY(bool running READ isRunning WRITE setRunning NOTIFY runningChanged) Q_PROPERTY(bool paused READ isPaused WRITE setPaused NOTIFY pausedChanged) Q_PROPERTY(bool alwaysRunToEnd READ alwaysRunToEnd WRITE setAlwaysRunToEnd NOTIFY alwaysRunToEndChanged) - Q_PROPERTY(int loops READ loops WRITE setLoops NOTIFY loopsChanged) + Q_PROPERTY(int loops READ loops WRITE setLoops NOTIFY loopCountChanged) Q_CLASSINFO("DefaultMethod", "start()") public: @@ -301,8 +301,8 @@ class Q_AUTOTEST_EXPORT QDeclarativeColorAnimation : public QDeclarativeProperty { Q_OBJECT Q_DECLARE_PRIVATE(QDeclarativePropertyAnimation) - Q_PROPERTY(QColor from READ from WRITE setFrom NOTIFY fromChanged) - Q_PROPERTY(QColor to READ to WRITE setTo NOTIFY toChanged) + Q_PROPERTY(QColor from READ from WRITE setFrom) + Q_PROPERTY(QColor to READ to WRITE setTo) public: QDeclarativeColorAnimation(QObject *parent=0); @@ -320,8 +320,8 @@ class Q_AUTOTEST_EXPORT QDeclarativeNumberAnimation : public QDeclarativePropert Q_OBJECT Q_DECLARE_PRIVATE(QDeclarativePropertyAnimation) - Q_PROPERTY(qreal from READ from WRITE setFrom NOTIFY fromChanged) - Q_PROPERTY(qreal to READ to WRITE setTo NOTIFY toChanged) + Q_PROPERTY(qreal from READ from WRITE setFrom) + Q_PROPERTY(qreal to READ to WRITE setTo) public: QDeclarativeNumberAnimation(QObject *parent=0); @@ -345,8 +345,8 @@ class Q_AUTOTEST_EXPORT QDeclarativeVector3dAnimation : public QDeclarativePrope Q_OBJECT Q_DECLARE_PRIVATE(QDeclarativePropertyAnimation) - Q_PROPERTY(QVector3D from READ from WRITE setFrom NOTIFY fromChanged) - Q_PROPERTY(QVector3D to READ to WRITE setTo NOTIFY toChanged) + Q_PROPERTY(QVector3D from READ from WRITE setFrom) + Q_PROPERTY(QVector3D to READ to WRITE setTo) public: QDeclarativeVector3dAnimation(QObject *parent=0); @@ -366,8 +366,8 @@ class Q_AUTOTEST_EXPORT QDeclarativeRotationAnimation : public QDeclarativePrope Q_DECLARE_PRIVATE(QDeclarativeRotationAnimation) Q_ENUMS(RotationDirection) - Q_PROPERTY(qreal from READ from WRITE setFrom NOTIFY fromChanged) - Q_PROPERTY(qreal to READ to WRITE setTo NOTIFY toChanged) + Q_PROPERTY(qreal from READ from WRITE setFrom) + Q_PROPERTY(qreal to READ to WRITE setTo) Q_PROPERTY(RotationDirection direction READ direction WRITE setDirection NOTIFY directionChanged) public: diff --git a/src/declarative/util/qdeclarativefontloader_p.h b/src/declarative/util/qdeclarativefontloader_p.h index 6947547..a5fbb8f 100644 --- a/src/declarative/util/qdeclarativefontloader_p.h +++ b/src/declarative/util/qdeclarativefontloader_p.h @@ -60,7 +60,7 @@ class Q_AUTOTEST_EXPORT QDeclarativeFontLoader : public QObject Q_DECLARE_PRIVATE(QDeclarativeFontLoader) Q_ENUMS(Status) - Q_PROPERTY(QUrl source READ source WRITE setSource NOTIFY sourceChanged) + Q_PROPERTY(QUrl source READ source WRITE setSource) Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged) Q_PROPERTY(Status status READ status NOTIFY statusChanged) -- cgit v0.12 From d30921f13dc74a3e05a3f29c0c45147823f2a064 Mon Sep 17 00:00:00 2001 From: Thierry Bastian Date: Thu, 19 Aug 2010 18:05:12 +0200 Subject: Fixed build issue on Solaris Task-number: QTBUG-12994 --- tests/auto/qpauseanimation/tst_qpauseanimation.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tests/auto/qpauseanimation/tst_qpauseanimation.cpp b/tests/auto/qpauseanimation/tst_qpauseanimation.cpp index e473176..605cee6 100644 --- a/tests/auto/qpauseanimation/tst_qpauseanimation.cpp +++ b/tests/auto/qpauseanimation/tst_qpauseanimation.cpp @@ -280,7 +280,7 @@ void tst_QPauseAnimation::sequentialPauseGroup() QVERIFY(group.state() == QAbstractAnimation::Running); QVERIFY(animation1.state() == QAbstractAnimation::Stopped); - QCOMPARE(&animation2, group.currentAnimation()); + QCOMPARE((QAbstractAnimation*)&animation2, group.currentAnimation()); QVERIFY(animation2.state() == QAbstractAnimation::Running); QVERIFY(animation3.state() == QAbstractAnimation::Stopped); @@ -292,7 +292,7 @@ void tst_QPauseAnimation::sequentialPauseGroup() QVERIFY(group.state() == QAbstractAnimation::Running); QVERIFY(animation1.state() == QAbstractAnimation::Stopped); QVERIFY(animation2.state() == QAbstractAnimation::Stopped); - QCOMPARE(&animation3, group.currentAnimation()); + QCOMPARE((QAbstractAnimation*)&animation3, group.currentAnimation()); QVERIFY(animation3.state() == QAbstractAnimation::Running); group.setCurrentTime(750); @@ -329,7 +329,7 @@ void tst_QPauseAnimation::sequentialGroupWithPause() QVERIFY(group.state() == QAbstractAnimation::Running); QVERIFY(animation.state() == QAbstractAnimation::Stopped); - QCOMPARE(&pause, group.currentAnimation()); + QCOMPARE((QAbstractAnimation*)&pause, group.currentAnimation()); QVERIFY(pause.state() == QAbstractAnimation::Running); group.setCurrentTime(600); -- cgit v0.12 From ba277e9ce92dc40e648f6c83a7cd9f01dd33b886 Mon Sep 17 00:00:00 2001 From: Thierry Bastian Date: Thu, 19 Aug 2010 18:09:47 +0200 Subject: Fixed autotest compilation issue on solaris Task-number: QTBUG-12991 --- tests/auto/qgraphicseffect/tst_qgraphicseffect.cpp | 8 ++++---- .../auto/qgraphicseffectsource/tst_qgraphicseffectsource.cpp | 4 ++-- tests/auto/qgraphicsproxywidget/tst_qgraphicsproxywidget.cpp | 12 ++++++------ tests/auto/qgraphicsscene/tst_qgraphicsscene.cpp | 2 +- tests/auto/qgraphicswidget/tst_qgraphicswidget.cpp | 12 ++++++------ 5 files changed, 19 insertions(+), 19 deletions(-) diff --git a/tests/auto/qgraphicseffect/tst_qgraphicseffect.cpp b/tests/auto/qgraphicseffect/tst_qgraphicseffect.cpp index 5dc0c9d..fa6a5ec 100644 --- a/tests/auto/qgraphicseffect/tst_qgraphicseffect.cpp +++ b/tests/auto/qgraphicseffect/tst_qgraphicseffect.cpp @@ -183,20 +183,20 @@ void tst_QGraphicsEffect::source() QGraphicsItem *item = new QGraphicsRectItem(0, 0, 10, 10); item->setGraphicsEffect(effect); QVERIFY(effect->source()); - QCOMPARE(effect->source()->graphicsItem(), item); + QCOMPARE(effect->source()->graphicsItem(), (const QGraphicsItem*)item); QVERIFY(effect->m_sourceChangedFlags & QGraphicsEffect::SourceAttached); effect->reset(); // Make sure disabling/enabling the effect doesn't change the source. effect->setEnabled(false); QVERIFY(effect->source()); - QCOMPARE(effect->source()->graphicsItem(), item); + QCOMPARE(effect->source()->graphicsItem(), (const QGraphicsItem*)item); QVERIFY(!effect->m_sourceChangedFlags); effect->reset(); effect->setEnabled(true); QVERIFY(effect->source()); - QCOMPARE(effect->source()->graphicsItem(), item); + QCOMPARE(effect->source()->graphicsItem(), (const QGraphicsItem*)item); QVERIFY(!effect->m_sourceChangedFlags); effect->reset(); @@ -210,7 +210,7 @@ void tst_QGraphicsEffect::source() item->setGraphicsEffect(effect); QPointer source = effect->source(); QVERIFY(source); - QCOMPARE(source->graphicsItem(), item); + QCOMPARE(source->graphicsItem(), (const QGraphicsItem*)item); delete item; QVERIFY(!effect); QVERIFY(!source); diff --git a/tests/auto/qgraphicseffectsource/tst_qgraphicseffectsource.cpp b/tests/auto/qgraphicseffectsource/tst_qgraphicseffectsource.cpp index 49a76fa..af23b46 100644 --- a/tests/auto/qgraphicseffectsource/tst_qgraphicseffectsource.cpp +++ b/tests/auto/qgraphicseffectsource/tst_qgraphicseffectsource.cpp @@ -209,7 +209,7 @@ void tst_QGraphicsEffectSource::init() void tst_QGraphicsEffectSource::graphicsItem() { QVERIFY(effect->source()); - QCOMPARE(effect->source()->graphicsItem(), item); + QCOMPARE(effect->source()->graphicsItem(), (const QGraphicsItem*)item); } void tst_QGraphicsEffectSource::styleOption() @@ -237,7 +237,7 @@ void tst_QGraphicsEffectSource::isPixmap() CustomEffect *anotherEffect = new CustomEffect; pixmapItem->setGraphicsEffect(anotherEffect); QVERIFY(anotherEffect->source()); - QCOMPARE(anotherEffect->source()->graphicsItem(), static_cast(pixmapItem)); + QCOMPARE(anotherEffect->source()->graphicsItem(), static_cast(pixmapItem)); QVERIFY(anotherEffect->source()->isPixmap()); delete pixmapItem; } diff --git a/tests/auto/qgraphicsproxywidget/tst_qgraphicsproxywidget.cpp b/tests/auto/qgraphicsproxywidget/tst_qgraphicsproxywidget.cpp index 6cea834..411c790 100644 --- a/tests/auto/qgraphicsproxywidget/tst_qgraphicsproxywidget.cpp +++ b/tests/auto/qgraphicsproxywidget/tst_qgraphicsproxywidget.cpp @@ -788,7 +788,7 @@ void tst_QGraphicsProxyWidget::focusNextPrevChild() view.show(); QApplication::setActiveWindow(&view); QTest::qWaitForWindowShown(&view); - QTRY_COMPARE(QApplication::activeWindow(), &view); + QTRY_COMPARE(QApplication::activeWindow(), (QWidget*)&view); if (hasScene) { scene.addItem(proxy); proxy->show(); @@ -837,7 +837,7 @@ void tst_QGraphicsProxyWidget::focusOutEvent() view.setFocus(); QTest::qWaitForWindowShown(&view); QTRY_VERIFY(view.isVisible()); - QTRY_COMPARE(QApplication::activeWindow(), &view); + QTRY_COMPARE(QApplication::activeWindow(), (QWidget*)&view); QWidget *widget = new QWidget; widget->setFocusPolicy(Qt::WheelFocus); @@ -1093,7 +1093,7 @@ void tst_QGraphicsProxyWidget::keyPressEvent() view.viewport()->setFocus(); QApplication::setActiveWindow(&view); QTest::qWaitForWindowShown(&view); - QTRY_COMPARE(QApplication::activeWindow(), &view); + QTRY_COMPARE(QApplication::activeWindow(), (QWidget*)&view); SubQGraphicsProxyWidget *proxy = new SubQGraphicsProxyWidget; proxy->setFlag(QGraphicsItem::ItemIsFocusable, true); // ### remove me!!! @@ -1134,7 +1134,7 @@ void tst_QGraphicsProxyWidget::keyReleaseEvent() view.show(); QApplication::setActiveWindow(&view); QTest::qWaitForWindowShown(&view); - QTRY_COMPARE(QApplication::activeWindow(), &view); + QTRY_COMPARE(QApplication::activeWindow(), (QWidget*)&view); SubQGraphicsProxyWidget *proxy = new SubQGraphicsProxyWidget; @@ -1178,7 +1178,7 @@ void tst_QGraphicsProxyWidget::mouseDoubleClickEvent() QApplication::setActiveWindow(&view); QTest::qWaitForWindowShown(&view); - QTRY_COMPARE(QApplication::activeWindow(), &view); + QTRY_COMPARE(QApplication::activeWindow(), (QWidget*)&view); SubQGraphicsProxyWidget *proxy = new SubQGraphicsProxyWidget; proxy->setFlag(QGraphicsItem::ItemIsFocusable, true); // ### remove me!!! @@ -3472,7 +3472,7 @@ void tst_QGraphicsProxyWidget::clickFocus() qt_x11_wait_for_window_manager(&view); #endif QApplication::setActiveWindow(&view); - QTRY_COMPARE(QApplication::activeWindow(), &view); + QTRY_COMPARE(QApplication::activeWindow(), (QWidget*)&view); QVERIFY(!proxy->hasFocus()); QVERIFY(!proxy->widget()->hasFocus()); diff --git a/tests/auto/qgraphicsscene/tst_qgraphicsscene.cpp b/tests/auto/qgraphicsscene/tst_qgraphicsscene.cpp index 67a41ca..903977c 100644 --- a/tests/auto/qgraphicsscene/tst_qgraphicsscene.cpp +++ b/tests/auto/qgraphicsscene/tst_qgraphicsscene.cpp @@ -1491,7 +1491,7 @@ void tst_QGraphicsScene::clear() scene.setItemIndexMethod(QGraphicsScene::NoIndex); scene.addItem(firstItem); scene.addItem(secondItem); - QCOMPARE(scene.items().at(0), firstItem); + QCOMPARE(scene.items().at(0), (QGraphicsItem*)firstItem); QCOMPARE(scene.items().at(1), secondItem); ClearTestItem *thirdItem = new ClearTestItem(firstItem); diff --git a/tests/auto/qgraphicswidget/tst_qgraphicswidget.cpp b/tests/auto/qgraphicswidget/tst_qgraphicswidget.cpp index bda22eb..e5628d1 100644 --- a/tests/auto/qgraphicswidget/tst_qgraphicswidget.cpp +++ b/tests/auto/qgraphicswidget/tst_qgraphicswidget.cpp @@ -890,7 +890,7 @@ void tst_QGraphicsWidget::initStyleOption() qt_x11_wait_for_window_manager(&view); #endif QApplication::setActiveWindow(&view); - QTRY_COMPARE(QApplication::activeWindow(), &view); + QTRY_COMPARE(QApplication::activeWindow(), (QWidget*)&view); view.setAlignment(Qt::AlignTop | Qt::AlignLeft); SubQGraphicsWidget *widget = new SubQGraphicsWidget; @@ -1222,7 +1222,7 @@ void tst_QGraphicsWidget::setTabOrder() qt_x11_wait_for_window_manager(&view); #endif QApplication::setActiveWindow(&view); - QTRY_COMPARE(QApplication::activeWindow(), &view); + QTRY_COMPARE(QApplication::activeWindow(), (QWidget*)&view); QGraphicsWidget *lastItem = 0; QTest::ignoreMessage(QtWarningMsg, "QGraphicsWidget::setTabOrder(0, 0) is undefined"); @@ -1285,7 +1285,7 @@ void tst_QGraphicsWidget::setTabOrderAndReparent() view.show(); QApplication::setActiveWindow(&view); QTest::qWaitForWindowShown(&view); - QTRY_COMPARE(QApplication::activeWindow(), &view); + QTRY_COMPARE(QApplication::activeWindow(), (QWidget*)&view); int i; QGraphicsWidget *w1, *w2, *w3, *w4; @@ -1425,7 +1425,7 @@ void tst_QGraphicsWidget::verifyFocusChain() view.show(); QApplication::setActiveWindow(&view); QTest::qWaitForWindowShown(&view); - QTRY_COMPARE(QApplication::activeWindow(), &view); + QTRY_COMPARE(QApplication::activeWindow(), (QWidget*)&view); { // parent/child focus @@ -1552,7 +1552,7 @@ void tst_QGraphicsWidget::updateFocusChainWhenChildDie() qt_x11_wait_for_window_manager(&view); #endif QApplication::setActiveWindow(&view); - QTRY_COMPARE(QApplication::activeWindow(), &view); + QTRY_COMPARE(QApplication::activeWindow(), (QWidget*)&view); // delete item in focus chain with no focus and verify chain SubQGraphicsWidget *parent = new SubQGraphicsWidget(0, Qt::Window); @@ -2503,7 +2503,7 @@ void tst_QGraphicsWidget::task250119_shortcutContext() view.setScene(&scene); view.show(); QApplication::setActiveWindow(&view); - QTRY_COMPARE(QApplication::activeWindow(), &view); + QTRY_COMPARE(QApplication::activeWindow(), (QWidget*)&view); // *** Event: *** -- cgit v0.12 From a957ed92a61d9311ed163dba15f2b6f8d30bf03c Mon Sep 17 00:00:00 2001 From: Gareth Stockwell Date: Wed, 18 Aug 2010 15:36:09 +0100 Subject: Ensure geometry of top-level widget accounts for S60 screen furniture If the S60 screen furniture has already been constructed before QWidgetPrivate::show_sys() is called on a top-level widget which has Qt::WindowMaximized set (e.g. due to a showMaximized() call), its geometry is set to the full screen extent, including the regions covered by the status bar and CBA. This patch ensures that calculation of the widget geometry always takes into account the screen furniture. Task-number: QTBUG-12605 Reviewed-by: Jason Barron --- src/gui/kernel/qwidget_s60.cpp | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/src/gui/kernel/qwidget_s60.cpp b/src/gui/kernel/qwidget_s60.cpp index 319f330..7ab9fbc 100644 --- a/src/gui/kernel/qwidget_s60.cpp +++ b/src/gui/kernel/qwidget_s60.cpp @@ -482,14 +482,13 @@ void QWidgetPrivate::show_sys() activateSymbianWindow(); QSymbianControl *id = static_cast(q->internalWinId()); + const bool isFullscreen = q->windowState() & Qt::WindowFullScreen; #ifdef Q_WS_S60 // Lazily initialize the S60 screen furniture when the first window is shown. if (!QApplication::testAttribute(Qt::AA_S60DontConstructApplicationPanes) && !S60->buttonGroupContainer() && !S60->statusPane()) { - bool isFullscreen = q->windowState() & Qt::WindowFullScreen; - if (!q->testAttribute(Qt::WA_DontShowOnScreen)) { // Create the status pane and CBA here @@ -504,23 +503,24 @@ void QWidgetPrivate::show_sys() // Can't use AppUi directly because it privately inherits from MEikStatusPaneObserver. QSymbianControl *desktopControl = static_cast(QApplication::desktop()->winId()); S60->statusPane()->SetObserver(desktopControl); - - // Hide the status pane if fullscreen OR - // Fill client area if maximized OR - // Put window below status pane unless the window has an explicit position. - if (isFullscreen) { + if (isFullscreen) S60->statusPane()->MakeVisible(false); - } else if (q->windowState() & Qt::WindowMaximized) { - TRect r = static_cast(S60->appUi())->ClientRect(); - id->SetExtent(r.iTl, r.Size()); - } else if (!q->testAttribute(Qt::WA_Moved)) { - id->SetPosition(static_cast(S60->appUi())->ClientRect().iTl); - } } } } #endif + // Fill client area if maximized OR + // Put window below status pane unless the window has an explicit position. + if (!isFullscreen) { + if (q->windowState() & Qt::WindowMaximized) { + TRect r = static_cast(S60->appUi())->ClientRect(); + id->SetExtent(r.iTl, r.Size()); + } else if (!q->testAttribute(Qt::WA_Moved)) { + id->SetPosition(static_cast(S60->appUi())->ClientRect().iTl); + } + } + id->MakeVisible(true); if(q->isWindow()) -- cgit v0.12 From f0c1beda18d79097ab85f062e9125da175ad04b8 Mon Sep 17 00:00:00 2001 From: Bea Lam Date: Thu, 19 Aug 2010 18:03:16 +1000 Subject: Add info to Loader docs about receiving signals and key events --- doc/src/snippets/declarative/loader/KeyReader.qml | 53 ++++++++++ doc/src/snippets/declarative/loader/MyItem.qml | 55 +++++++++++ .../snippets/declarative/loader/connections.qml | 57 +++++++++++ doc/src/snippets/declarative/loader/focus.qml | 62 ++++++++++++ doc/src/snippets/declarative/loader/simple.qml | 54 +++++++++++ .../graphicsitems/qdeclarativeloader.cpp | 107 +++++++++++++-------- 6 files changed, 349 insertions(+), 39 deletions(-) create mode 100644 doc/src/snippets/declarative/loader/KeyReader.qml create mode 100644 doc/src/snippets/declarative/loader/MyItem.qml create mode 100644 doc/src/snippets/declarative/loader/connections.qml create mode 100644 doc/src/snippets/declarative/loader/focus.qml create mode 100644 doc/src/snippets/declarative/loader/simple.qml diff --git a/doc/src/snippets/declarative/loader/KeyReader.qml b/doc/src/snippets/declarative/loader/KeyReader.qml new file mode 100644 index 0000000..4423ac6 --- /dev/null +++ b/doc/src/snippets/declarative/loader/KeyReader.qml @@ -0,0 +1,53 @@ +/**************************************************************************** +** +** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the QtDeclarative module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** No Commercial Usage +** This file contains pre-release code and may not be distributed. +** You may use this file in accordance with the terms and conditions +** contained in the Technology Preview License Agreement accompanying +** this package. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 2.1 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 2.1 requirements +** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** If you have questions regarding the use of this file, please contact +** Nokia at qt-info@nokia.com. +** +** +** +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ +//![0] +import Qt 4.7 + +Item { + Item { + focus: true + Keys.onPressed: { + console.log("Loaded item captured:", event.text); + event.accepted = true; + } + } +} +//![0] diff --git a/doc/src/snippets/declarative/loader/MyItem.qml b/doc/src/snippets/declarative/loader/MyItem.qml new file mode 100644 index 0000000..cc69661 --- /dev/null +++ b/doc/src/snippets/declarative/loader/MyItem.qml @@ -0,0 +1,55 @@ +/**************************************************************************** +** +** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the QtDeclarative module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** No Commercial Usage +** This file contains pre-release code and may not be distributed. +** You may use this file in accordance with the terms and conditions +** contained in the Technology Preview License Agreement accompanying +** this package. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 2.1 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 2.1 requirements +** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** If you have questions regarding the use of this file, please contact +** Nokia at qt-info@nokia.com. +** +** +** +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ +//![0] +import Qt 4.7 + +Rectangle { + id: myItem + signal message(string msg) + + width: 100; height: 100 + + MouseArea { + anchors.fill: parent + onClicked: myItem.message("clicked!") + } +} +//![0] diff --git a/doc/src/snippets/declarative/loader/connections.qml b/doc/src/snippets/declarative/loader/connections.qml new file mode 100644 index 0000000..babac4e --- /dev/null +++ b/doc/src/snippets/declarative/loader/connections.qml @@ -0,0 +1,57 @@ +/**************************************************************************** +** +** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the QtDeclarative module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** No Commercial Usage +** This file contains pre-release code and may not be distributed. +** You may use this file in accordance with the terms and conditions +** contained in the Technology Preview License Agreement accompanying +** this package. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 2.1 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 2.1 requirements +** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** If you have questions regarding the use of this file, please contact +** Nokia at qt-info@nokia.com. +** +** +** +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ +//![0] +import Qt 4.7 + +Item { + width: 100; height: 100 + + Loader { + id: myLoader + source: "MyItem.qml" + } + + Connections { + target: myLoader.item + onMessage: console.log(msg) + } +} +//![0] diff --git a/doc/src/snippets/declarative/loader/focus.qml b/doc/src/snippets/declarative/loader/focus.qml new file mode 100644 index 0000000..464d986 --- /dev/null +++ b/doc/src/snippets/declarative/loader/focus.qml @@ -0,0 +1,62 @@ +/**************************************************************************** +** +** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the QtDeclarative module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** No Commercial Usage +** This file contains pre-release code and may not be distributed. +** You may use this file in accordance with the terms and conditions +** contained in the Technology Preview License Agreement accompanying +** this package. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 2.1 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 2.1 requirements +** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** If you have questions regarding the use of this file, please contact +** Nokia at qt-info@nokia.com. +** +** +** +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ +//![0] +import Qt 4.7 + +Rectangle { + width: 200; height: 200 + + Loader { + id: loader + focus: true + } + + MouseArea { + anchors.fill: parent + onClicked: loader.source = "KeyReader.qml" + } + + Keys.onPressed: { + console.log("Captured:", event.text); + } +} +//![0] + diff --git a/doc/src/snippets/declarative/loader/simple.qml b/doc/src/snippets/declarative/loader/simple.qml new file mode 100644 index 0000000..e0dc6b3 --- /dev/null +++ b/doc/src/snippets/declarative/loader/simple.qml @@ -0,0 +1,54 @@ +/**************************************************************************** +** +** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the QtDeclarative module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** No Commercial Usage +** This file contains pre-release code and may not be distributed. +** You may use this file in accordance with the terms and conditions +** contained in the Technology Preview License Agreement accompanying +** this package. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 2.1 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 2.1 requirements +** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** If you have questions regarding the use of this file, please contact +** Nokia at qt-info@nokia.com. +** +** +** +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ +//![0] +import Qt 4.7 + +Item { + width: 200; height: 200 + + Loader { id: pageLoader } + + MouseArea { + anchors.fill: parent + onClicked: pageLoader.source = "Page1.qml" + } +} +//![0] diff --git a/src/declarative/graphicsitems/qdeclarativeloader.cpp b/src/declarative/graphicsitems/qdeclarativeloader.cpp index 4c6268f..2fde4c8 100644 --- a/src/declarative/graphicsitems/qdeclarativeloader.cpp +++ b/src/declarative/graphicsitems/qdeclarativeloader.cpp @@ -115,53 +115,76 @@ void QDeclarativeLoaderPrivate::initResize() \brief The Loader item allows dynamically loading an Item-based subtree from a URL or Component. - The Loader element instantiates an item from a component. The component to - be instantiated may be specified directly by the \l sourceComponent - property, or loaded from a URL via the \l source property. + Loader is used to dynamically load visual QML components. It can load a + QML file (using the \l source property) or a \l Component object (using + the \l sourceComponent property). It is useful for delaying the creation + of a component until it is required: for example, when a component should + be created on demand, or when a component should not be created + unnecessarily for performance reasons. - Loader can be used to delay the creation of a component until it - is required. For example, this loads "Page1.qml" as a component - into the Loader element, when the \l MouseArea is clicked: + Here is a Loader that loads "Page1.qml" as a component when the + \l MouseArea is clicked: - \code - import Qt 4.7 + \snippet doc/src/snippets/declarative/loader/simple.qml 0 - Item { - width: 200; height: 200 + The loaded item can be accessed using the \l item property. - MouseArea { - anchors.fill: parent - onClicked: pageLoader.source = "Page1.qml" - } + Loader is like any other visual item and must be positioned and sized + accordingly to become visible. Once the component is loaded, the Loader + is automatically resized to the size of the component. - Loader { id: pageLoader } - } - \endcode + If the \l source or \l sourceComponent changes, any previously instantiated + items are destroyed. Setting \l source to an empty string or setting + \l sourceComponent to \c undefined destroys the currently loaded item, + freeing resources and leaving the Loader empty. + + + \section2 Receiving signals from loaded items - Note that Loader is like any other graphical Item and needs to be positioned - and sized accordingly to become visible. When a component is loaded, the - Loader is automatically resized to the size of the component. + Any signals emitted from the loaded item can be received using the + \l Connections element. For example, the following \c application.qml + loads \c MyItem.qml, and is able to receive the \c message signal from + the loaded item through a \l Connections object: - If the Loader source is changed, any previous items instantiated - will be destroyed. Setting \l source to an empty string, or setting - sourceComponent to \e undefined - will destroy the currently instantiated items, freeing resources - and leaving the Loader empty. For example: + \table + \row + \o application.qml + \o MyItem.qml + \row + \o \snippet doc/src/snippets/declarative/loader/connections.qml 0 + \o \snippet doc/src/snippets/declarative/loader/MyItem.qml 0 + \endtable - \code - pageLoader.source = "" - \endcode + Alternatively, since \c MyItem.qml is loaded within the scope of the + Loader, it could also directly call any function defined in the Loader or + its parent \l Item. - or - \code - pageLoader.sourceComponent = undefined - \endcode + \section2 Focus and key events - unloads "Page1.qml" and frees resources consumed by it. + Loader is a focus scope. Its \l {Item::}{focus} property must be set to + \c true for any of its children to get the \e {active focus}. (See + \l{qmlfocus#Acquiring Focus and Focus Scopes}{the focus documentation page} + for more details.) Any key events received in the loaded item should likely + also be \l {KeyEvent::}{accepted} so they are not propagated to the Loader. - Note that Loader is a focus scope. Its \c focus property must be set to \c true for any of its children - to get the \e {active focus} (see \l{qmlfocus#Acquiring Focus and Focus Scopes}{the focus documentation page} for more details). + For example, the following \c application.qml loads \c KeyReader.qml when + the \l MouseArea is clicked. Notice the \l {Item::}{focus} property is + set to \c true for the Loader as well as the \l Item in the dynamically + loaded object: + + \table + \row + \o application.qml + \o KeyReader.qml + \row + \o \snippet doc/src/snippets/declarative/loader/focus.qml 0 + \o \snippet doc/src/snippets/declarative/loader/KeyReader.qml 0 + \endtable + + Once \c KeyReader.qml is loaded, it accepts key events and sets + \c event.accepted to \c true so that the event is not propagated to the + parent \l Rectangle. \sa {dynamic-object-creation}{Dynamic Object Creation} */ @@ -198,8 +221,13 @@ QDeclarativeLoader::~QDeclarativeLoader() /*! \qmlproperty url Loader::source - This property holds the URL of the QML component to - instantiate. + This property holds the URL of the QML component to instantiate. + + Note the QML component must be an \l Item-based component. Loader cannot + load non-visual components. + + To unload the currently loaded item, set this property to an empty string, + or set \l sourceComponent to \c undefined. \sa sourceComponent, status, progress */ @@ -258,7 +286,8 @@ void QDeclarativeLoader::setSource(const QUrl &url) } \endqml - Note this value must hold a \l Component object; it cannot be a \l Item. + To unload the currently loaded item, set this property to an empty string, + or set \l sourceComponent to \c undefined. \sa source, progress */ @@ -477,7 +506,7 @@ void QDeclarativeLoaderPrivate::_q_updateSize(bool loaderGeometryChanged) /*! \qmlproperty Item Loader::item - This property holds the top-level item created from source. + This property holds the top-level item that is currently loaded. */ QGraphicsObject *QDeclarativeLoader::item() const { -- cgit v0.12 From 1f515224d52c9a33b46bbf926e82d5c2df1a84e4 Mon Sep 17 00:00:00 2001 From: Bea Lam Date: Fri, 20 Aug 2010 11:10:44 +1000 Subject: Doing "import foo.qml" doesn't work in QML anymore Task-number: QTBUG-13042 --- doc/src/getting-started/gettingstartedqml.qdoc | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/doc/src/getting-started/gettingstartedqml.qdoc b/doc/src/getting-started/gettingstartedqml.qdoc index 885e6ce..a19d281 100644 --- a/doc/src/getting-started/gettingstartedqml.qdoc +++ b/doc/src/getting-started/gettingstartedqml.qdoc @@ -224,15 +224,13 @@ \code import Qt 4.7 \\import the main Qt QML module import "folderName" \\import the contents of the folder - import "Button.qml" \\import a QML file - import "NewButton.qml" as ButtonModule \\import a QML file and give it a name import "script.js" as Script \\import a Javascript file and name it as Script \endcode - To use the \c Button element in \c FileMenu.qml, we need to import \c Button.qml. - The syntax shown above, shows how to use the \c import keyword. However, the - \c {import Button.qml} is not necessary; qmlviewer will import all the contents - of the current directory. We can directly create a \c Button element by declaring + The syntax shown above shows how to use the \c import keyword. This is required to + use JavaScript files, or QML files that are not within the same directory. Since + \c Button.qml is in the same directory as \c FileMenu.qml, we do not need to import + the \c Button.qml file to use it. We can directly create a \c Button element by declaring \c Button{}, similar to a \c Rectangle{} declaration. \code -- cgit v0.12 From e4d89bfba06b38f32dc2ad2d8f1d474bc5477361 Mon Sep 17 00:00:00 2001 From: Lorn Potter Date: Fri, 20 Aug 2010 12:29:21 +1000 Subject: just build connman and networkmanager plugins on linux --- src/plugins/bearer/bearer.pro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/plugins/bearer/bearer.pro b/src/plugins/bearer/bearer.pro index 6d8f7f2..bbe8ab1 100644 --- a/src/plugins/bearer/bearer.pro +++ b/src/plugins/bearer/bearer.pro @@ -5,7 +5,7 @@ contains(QT_CONFIG, dbus) { SUBDIRS += icd } else { SUBDIRS += generic - !mac:SUBDIRS += connman networkmanager + linux*:SUBDIRS += connman networkmanager } } -- cgit v0.12 From 43c2a627123d9f4a884dbe96e1ef6dbde02e50d5 Mon Sep 17 00:00:00 2001 From: Alan Alpert Date: Fri, 20 Aug 2010 14:53:22 +1000 Subject: Add a quit button to declarative examples in QtDemo --- demos/qtdemo/qmlShell.qml | 58 ++++++++++++++++++++--------------------------- 1 file changed, 25 insertions(+), 33 deletions(-) diff --git a/demos/qtdemo/qmlShell.qml b/demos/qtdemo/qmlShell.qml index b5fdf39..b8a019e 100644 --- a/demos/qtdemo/qmlShell.qml +++ b/demos/qtdemo/qmlShell.qml @@ -100,6 +100,30 @@ Item { } } + Rectangle{ id: closeButton + width: 24 + height: 24 + z: 11 + border.color: "#aaaaaaaa" + gradient: Gradient{ + GradientStop{ position: 0.0; color: "#34FFFFFF" } + GradientStop{ position: 1.0; color: "#7AFFFFFF" } + } + anchors.left: frame.right + anchors.bottom: frame.top + anchors.margins: -(2*width/3) + Text{ + text: 'X' + font.bold: true + color: "white" + font.pixelSize: 12 + anchors.centerIn: parent + } + MouseArea{ + anchors.fill: parent + onClicked: main.show = false; + } + } Text{ id: errorTxt @@ -116,32 +140,6 @@ Item { onLinkActivated: Qt.openUrlExternally(link); } } - Rectangle{ - id: helpLabel - property bool timedOut: false - z: 9 - //Positioned in the top left corner - x: 8 - y: 8 - color: "white" - border.color: "black" - border.width: 1 - width: helpText.width + 16 - height: helpText.height + 8 - Text{ - id: helpText - color: "black" - anchors.centerIn: parent - text: "Click outside the example to exit it." - } - opacity: 0 - Behavior on opacity{ NumberAnimation{duration:500} } - Timer{ - id: helpTimer - interval: 5000 - onTriggered: {helpLabel.timedOut=true} - } - } Rectangle{ id: blackout //Maybe use a colorize effect instead? z: 8 anchors.fill: parent @@ -154,7 +152,6 @@ Item { hoverEnabled: main.show //To steal focus from the buttons acceptedButtons: Qt.LeftButton | Qt.RightButton | Qt.MiddleButton anchors.fill: parent - onClicked: main.show=false; } states: [ @@ -166,10 +163,6 @@ Item { opacity: 1 } PropertyChanges { - target: helpLabel - opacity: helpLabel.timedOut?0:1 - } - PropertyChanges { target: blackout opacity: 0.5 } @@ -178,8 +171,7 @@ Item { transitions: [//Should not be too long, because the component has already started running Transition { from: ''; to: "show"; reversible: true ParallelAnimation{ - ScriptAction{ script: {helpLabel.timedOut = false; helpTimer.restart();} } - NumberAnimation{ exclude: helpLabel; properties: "opacity"; easing.type: Easing.InQuad; duration: 500} + NumberAnimation{ properties: "opacity"; easing.type: Easing.InQuad; duration: 500} PropertyAction { target: loader; property: "focus"; value: true}//Might be needed to ensure the focus stays with us } } -- cgit v0.12 From e8141d3eff43e419f566449f42f9548ce54acf70 Mon Sep 17 00:00:00 2001 From: Joona Petrell Date: Fri, 20 Aug 2010 14:09:51 +1000 Subject: Fix minehunt demo for Symbian Task-number: QTBUG-8927 Reviewed-by: Alan Alpert --- demos/declarative/minehunt/MinehuntCore/qmldir | 1 - demos/declarative/minehunt/README | 7 +- demos/declarative/minehunt/main.cpp | 70 ++++++++++++++ demos/declarative/minehunt/minehunt.cpp | 117 +--------------------- demos/declarative/minehunt/minehunt.h | 129 +++++++++++++++++++++++++ demos/declarative/minehunt/minehunt.pro | 36 ++----- doc/src/examples/qml-minehunt.qdoc | 2 +- 7 files changed, 216 insertions(+), 146 deletions(-) create mode 100644 demos/declarative/minehunt/main.cpp create mode 100644 demos/declarative/minehunt/minehunt.h diff --git a/demos/declarative/minehunt/MinehuntCore/qmldir b/demos/declarative/minehunt/MinehuntCore/qmldir index 2beccf9..81980e0 100644 --- a/demos/declarative/minehunt/MinehuntCore/qmldir +++ b/demos/declarative/minehunt/MinehuntCore/qmldir @@ -1,3 +1,2 @@ -plugin qmlminehuntplugin Explosion 1.0 Explosion.qml Tile 1.0 Tile.qml diff --git a/demos/declarative/minehunt/README b/demos/declarative/minehunt/README index b9f1d2a..3849ca5 100644 --- a/demos/declarative/minehunt/README +++ b/demos/declarative/minehunt/README @@ -1,3 +1,6 @@ -To compile the C++ part, do 'qmake && make'. Minehunt will not run properly if the C++ plugin is not compiled. +Minehunt has to be compiled to run. + +To compile the C++ part, do 'qmake && make'. +To run, simply run the executable. +To deploy on a device, do 'make sis'. -To run, simply load the minehunt.qml file with the qml runtime. diff --git a/demos/declarative/minehunt/main.cpp b/demos/declarative/minehunt/main.cpp new file mode 100644 index 0000000..fc223dd --- /dev/null +++ b/demos/declarative/minehunt/main.cpp @@ -0,0 +1,70 @@ +/**************************************************************************** +** +** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the demonstration applications of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** No Commercial Usage +** This file contains pre-release code and may not be distributed. +** You may use this file in accordance with the terms and conditions +** contained in the Technology Preview License Agreement accompanying +** this package. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 2.1 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 2.1 requirements +** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** If you have questions regarding the use of this file, please contact +** Nokia at qt-info@nokia.com. +** +** +** +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include +#include +#include +#include + +#include "minehunt.h" + +int main(int argc, char *argv[]) +{ + QApplication app(argc, argv); + QDeclarativeView canvas; + + qmlRegisterType(); + MinehuntGame* game = new MinehuntGame(); + +#ifdef Q_OS_SYMBIAN + canvas.setResizeMode(QDeclarativeView::SizeRootObjectToView); +#endif + canvas.engine()->rootContext()->setContextObject(game); + canvas.setSource(QString("minehunt.qml")); + +#ifdef Q_OS_SYMBIAN + canvas.showFullScreen(); +#else + canvas.setGeometry(QRect(100, 100, 450, 450)); + canvas.show(); +#endif + return app.exec(); +} diff --git a/demos/declarative/minehunt/minehunt.cpp b/demos/declarative/minehunt/minehunt.cpp index 2a4ed10..9c82f30 100644 --- a/demos/declarative/minehunt/minehunt.cpp +++ b/demos/declarative/minehunt/minehunt.cpp @@ -40,99 +40,10 @@ ****************************************************************************/ #include -#include -#include -#include -#include - #include #include -class TileData : public QObject -{ - Q_OBJECT -public: - TileData() : _hasFlag(false), _hasMine(false), _hint(-1), _flipped(false) {} - - Q_PROPERTY(bool hasFlag READ hasFlag WRITE setHasFlag NOTIFY hasFlagChanged) - bool hasFlag() const { return _hasFlag; } - - Q_PROPERTY(bool hasMine READ hasMine NOTIFY hasMineChanged) - bool hasMine() const { return _hasMine; } - - Q_PROPERTY(int hint READ hint NOTIFY hintChanged) - int hint() const { return _hint; } - - Q_PROPERTY(bool flipped READ flipped NOTIFY flippedChanged()) - bool flipped() const { return _flipped; } - - void setHasFlag(bool flag) {if(flag==_hasFlag) return; _hasFlag = flag; emit hasFlagChanged();} - void setHasMine(bool mine) {if(mine==_hasMine) return; _hasMine = mine; emit hasMineChanged();} - void setHint(int hint) { if(hint == _hint) return; _hint = hint; emit hintChanged(); } - void flip() { if (_flipped) return; _flipped = true; emit flippedChanged(); } - void unflip() { if(!_flipped) return; _flipped = false; emit flippedChanged(); } - -signals: - void flippedChanged(); - void hasFlagChanged(); - void hintChanged(); - void hasMineChanged(); - -private: - bool _hasFlag; - bool _hasMine; - int _hint; - bool _flipped; -}; - -class MinehuntGame : public QObject -{ - Q_OBJECT -public: - MinehuntGame(); - - Q_PROPERTY(QDeclarativeListProperty tiles READ tiles CONSTANT) - QDeclarativeListProperty tiles(); - - Q_PROPERTY(bool isPlaying READ isPlaying NOTIFY isPlayingChanged) - bool isPlaying() {return playing;} - - Q_PROPERTY(bool hasWon READ hasWon NOTIFY hasWonChanged) - bool hasWon() {return won;} - - Q_PROPERTY(int numMines READ numMines NOTIFY numMinesChanged) - int numMines() const{return nMines;} - - Q_PROPERTY(int numFlags READ numFlags NOTIFY numFlagsChanged) - int numFlags() const{return nFlags;} - -public slots: - Q_INVOKABLE bool flip(int row, int col); - Q_INVOKABLE bool flag(int row, int col); - void setBoard(); - void reset(); - -signals: - void isPlayingChanged(); - void hasWonChanged(); - void numMinesChanged(); - void numFlagsChanged(); - -private: - bool onBoard( int r, int c ) const { return r >= 0 && r < numRows && c >= 0 && c < numCols; } - TileData *tile( int row, int col ) { return onBoard(row, col) ? _tiles[col+numRows*row] : 0; } - int getHint(int row, int col); - void setPlaying(bool b){if(b==playing) return; playing=b; emit isPlayingChanged();} - - QList _tiles; - int numCols; - int numRows; - bool playing; - bool won; - int remaining; - int nMines; - int nFlags; -}; +#include "minehunt.h" void tilesPropAppend(QDeclarativeListProperty* prop, TileData* value) { @@ -306,29 +217,3 @@ bool MinehuntGame::flag(int row, int col) emit numFlagsChanged(); return true; } - -class MinehuntExtensionPlugin : public QDeclarativeExtensionPlugin -{ - Q_OBJECT - - public: - void registerTypes(const char *uri) { - Q_UNUSED(uri); - qmlRegisterType(); - } - - void initializeEngine(QDeclarativeEngine *engine, const char *uri) { - Q_UNUSED(uri); - - srand(QTime(0,0,0).secsTo(QTime::currentTime())); - - MinehuntGame* game = new MinehuntGame(); - - engine->rootContext()->setContextObject(game); - } -}; - -#include "minehunt.moc" - -Q_EXPORT_PLUGIN(MinehuntExtensionPlugin); - diff --git a/demos/declarative/minehunt/minehunt.h b/demos/declarative/minehunt/minehunt.h new file mode 100644 index 0000000..962cf3d --- /dev/null +++ b/demos/declarative/minehunt/minehunt.h @@ -0,0 +1,129 @@ +/**************************************************************************** +** +** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the demonstration applications of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** No Commercial Usage +** This file contains pre-release code and may not be distributed. +** You may use this file in accordance with the terms and conditions +** contained in the Technology Preview License Agreement accompanying +** this package. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 2.1 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 2.1 requirements +** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** If you have questions regarding the use of this file, please contact +** Nokia at qt-info@nokia.com. +** +** +** +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + + +#include + +class TileData : public QObject +{ + Q_OBJECT +public: + TileData() : _hasFlag(false), _hasMine(false), _hint(-1), _flipped(false) {} + + Q_PROPERTY(bool hasFlag READ hasFlag WRITE setHasFlag NOTIFY hasFlagChanged) + bool hasFlag() const { return _hasFlag; } + + Q_PROPERTY(bool hasMine READ hasMine NOTIFY hasMineChanged) + bool hasMine() const { return _hasMine; } + + Q_PROPERTY(int hint READ hint NOTIFY hintChanged) + int hint() const { return _hint; } + + Q_PROPERTY(bool flipped READ flipped NOTIFY flippedChanged()) + bool flipped() const { return _flipped; } + + void setHasFlag(bool flag) {if(flag==_hasFlag) return; _hasFlag = flag; emit hasFlagChanged();} + void setHasMine(bool mine) {if(mine==_hasMine) return; _hasMine = mine; emit hasMineChanged();} + void setHint(int hint) { if(hint == _hint) return; _hint = hint; emit hintChanged(); } + void flip() { if (_flipped) return; _flipped = true; emit flippedChanged(); } + void unflip() { if(!_flipped) return; _flipped = false; emit flippedChanged(); } + +signals: + void flippedChanged(); + void hasFlagChanged(); + void hintChanged(); + void hasMineChanged(); + +private: + bool _hasFlag; + bool _hasMine; + int _hint; + bool _flipped; +}; + +class MinehuntGame : public QObject +{ + Q_OBJECT +public: + MinehuntGame(); + + Q_PROPERTY(QDeclarativeListProperty tiles READ tiles CONSTANT) + QDeclarativeListProperty tiles(); + + Q_PROPERTY(bool isPlaying READ isPlaying NOTIFY isPlayingChanged) + bool isPlaying() {return playing;} + + Q_PROPERTY(bool hasWon READ hasWon NOTIFY hasWonChanged) + bool hasWon() {return won;} + + Q_PROPERTY(int numMines READ numMines NOTIFY numMinesChanged) + int numMines() const{return nMines;} + + Q_PROPERTY(int numFlags READ numFlags NOTIFY numFlagsChanged) + int numFlags() const{return nFlags;} + +public slots: + Q_INVOKABLE bool flip(int row, int col); + Q_INVOKABLE bool flag(int row, int col); + void setBoard(); + void reset(); + +signals: + void isPlayingChanged(); + void hasWonChanged(); + void numMinesChanged(); + void numFlagsChanged(); + +private: + bool onBoard( int r, int c ) const { return r >= 0 && r < numRows && c >= 0 && c < numCols; } + TileData *tile( int row, int col ) { return onBoard(row, col) ? _tiles[col+numRows*row] : 0; } + int getHint(int row, int col); + void setPlaying(bool b){if(b==playing) return; playing=b; emit isPlayingChanged();} + + QList _tiles; + int numCols; + int numRows; + bool playing; + bool won; + int remaining; + int nMines; + int nFlags; +}; diff --git a/demos/declarative/minehunt/minehunt.pro b/demos/declarative/minehunt/minehunt.pro index f85afeb..1d56013 100644 --- a/demos/declarative/minehunt/minehunt.pro +++ b/demos/declarative/minehunt/minehunt.pro @@ -1,38 +1,22 @@ -TEMPLATE = lib -TARGET = qmlminehuntplugin +TEMPLATE = app +TARGET = minehunt QT += declarative CONFIG += qt plugin -TARGET = $$qtLibraryTarget($$TARGET) -DESTDIR = MinehuntCore - # Input -SOURCES += minehunt.cpp +HEADERS += minehunt.h +SOURCES += main.cpp minehunt.cpp -sources.files = minehunt.qml minehunt.pro +sources.files = minehunt.qml minehunt.pro MinehuntCore sources.path = $$[QT_INSTALL_DEMOS]/declarative/minehunt +target.path = $$[QT_INSTALL_DEMOS]/declarative/minehunt -target.path = $$[QT_INSTALL_DEMOS]/declarative/minehunt/MinehuntCore - -MinehuntCore_sources.files = \ - MinehuntCore/Explosion.qml \ - MinehuntCore/Tile.qml \ - MinehuntCore/pics \ - MinehuntCore/qmldir -MinehuntCore_sources.path = $$[QT_INSTALL_DEMOS]/declarative/minehunt/MinehuntCore - -INSTALLS = sources MinehuntCore_sources target +INSTALLS = sources target symbian:{ TARGET.EPOCALLOWDLLDATA = 1 include($$QT_SOURCE_TREE/demos/symbianpkgrules.pri) - TARGET.CAPABILITY = NetworkServices ReadUserData - importFiles.sources = MinehuntCore/qmlminehuntplugin.dll \ - MinehuntCore/Explosion.qml \ - MinehuntCore/pics \ - MinehuntCore/qmldir - importFiles.path = MinehuntCore - DEPLOYMENT = importFiles + qmlminehuntfiles.sources = MinehuntCore minehunt.qml + DEPLOYMENT = qmlminehuntfiles } - -INSTALLS = sources MinehuntCore_sources target + \ No newline at end of file diff --git a/doc/src/examples/qml-minehunt.qdoc b/doc/src/examples/qml-minehunt.qdoc index be82302..e1ff22f 100644 --- a/doc/src/examples/qml-minehunt.qdoc +++ b/doc/src/examples/qml-minehunt.qdoc @@ -30,7 +30,7 @@ \example demos/declarative/minehunt This demo shows how to create a simple Minehunt game, using QML for the - UI and a C++ plugin for the game logic. + UI and C++ for the game logic. \image qml-minehunt-demo.png */ -- cgit v0.12 From db63beeb4d421e98d851f4f837ad978e0f04d9aa Mon Sep 17 00:00:00 2001 From: Alan Alpert Date: Fri, 20 Aug 2010 15:18:43 +1000 Subject: Allow QML Quit buttons to work inside QtDemo. Also changes the line documenting the quit signal on QDeclarativeEngine. --- demos/qtdemo/menumanager.cpp | 8 ++++++++ demos/qtdemo/menumanager.h | 2 ++ demos/qtdemo/qmlShell.qml | 2 -- src/declarative/qml/qdeclarativeengine.cpp | 2 +- 4 files changed, 11 insertions(+), 3 deletions(-) diff --git a/demos/qtdemo/menumanager.cpp b/demos/qtdemo/menumanager.cpp index f98c2fc..4ae9ca1 100644 --- a/demos/qtdemo/menumanager.cpp +++ b/demos/qtdemo/menumanager.cpp @@ -390,6 +390,12 @@ void MenuManager::launchQmlExample(const QString &name) #endif } +void MenuManager::quitQML() +{ + if(qmlRoot) + qmlRoot->setProperty("show", QVariant(false)); +} + void MenuManager::exampleFinished() { } @@ -437,6 +443,8 @@ void MenuManager::init(MainWindow *window) #ifndef QT_NO_DECLARATIVE // Create QML Loader declarativeEngine = new QDeclarativeEngine(this); + connect(declarativeEngine, SIGNAL(quit()), + this, SLOT(quitQML())); QDeclarativeComponent component(declarativeEngine, QUrl("qrc:qml/qmlShell.qml"), this); QDeclarativeItem* qmlRootItem = 0; diff --git a/demos/qtdemo/menumanager.h b/demos/qtdemo/menumanager.h index e4303c8..93fb998 100644 --- a/demos/qtdemo/menumanager.h +++ b/demos/qtdemo/menumanager.h @@ -95,6 +95,8 @@ private slots: void exampleFinished(); void exampleError(QProcess::ProcessError error); + void quitQML(); + private: // singleton pattern: MenuManager(); diff --git a/demos/qtdemo/qmlShell.qml b/demos/qtdemo/qmlShell.qml index b8a019e..24c12ae 100644 --- a/demos/qtdemo/qmlShell.qml +++ b/demos/qtdemo/qmlShell.qml @@ -68,8 +68,6 @@ Item { loader.item.width = 640; if(loader.item.height > 480) loader.item.height = 480; - if(loader.item.inAnotherDemo != undefined) - loader.item.inAnotherDemo = true; }} } diff --git a/src/declarative/qml/qdeclarativeengine.cpp b/src/declarative/qml/qdeclarativeengine.cpp index bc7468f..cedf9d5 100644 --- a/src/declarative/qml/qdeclarativeengine.cpp +++ b/src/declarative/qml/qdeclarativeengine.cpp @@ -551,7 +551,7 @@ QDeclarativeEngine::~QDeclarativeEngine() } /*! \fn void QDeclarativeEngine::quit() - This signal is emitted when the QDeclarativeEngine quits. + This signal is emitted when the QML loaded by the engine would like to quit. */ /*! \fn void QDeclarativeEngine::warnings(const QList &warnings) -- cgit v0.12 From 917307b393e613a891fa762f70cb676e33ca68ee Mon Sep 17 00:00:00 2001 From: Alan Alpert Date: Fri, 20 Aug 2010 16:10:10 +1000 Subject: Add a menu option to open remote files in the QML viewer Task-number: QTBUG-11019 --- tools/qml/qmlruntime.cpp | 14 ++++++++++++++ tools/qml/qmlruntime.h | 1 + 2 files changed, 15 insertions(+) diff --git a/tools/qml/qmlruntime.cpp b/tools/qml/qmlruntime.cpp index b9fd570..321b7fd 100644 --- a/tools/qml/qmlruntime.cpp +++ b/tools/qml/qmlruntime.cpp @@ -85,6 +85,7 @@ #include #include #include +#include #include #include #include @@ -715,6 +716,9 @@ void QDeclarativeViewer::createMenu() openAction->setShortcuts(QKeySequence::Open); connect(openAction, SIGNAL(triggered()), this, SLOT(openFile())); + QAction *openUrlAction = new QAction(tr("Open &URL..."), this); + connect(openUrlAction, SIGNAL(triggered()), this, SLOT(openUrl())); + QAction *reloadAction = new QAction(tr("&Reload"), this); reloadAction->setShortcuts(QKeySequence::Refresh); connect(reloadAction, SIGNAL(triggered()), this, SLOT(reload())); @@ -789,6 +793,7 @@ void QDeclarativeViewer::createMenu() #if defined(Q_WS_MAEMO_5) menu->addAction(openAction); + menu->addAction(openUrlAction); menu->addAction(reloadAction); menu->addAction(snapshotAction); @@ -809,6 +814,7 @@ void QDeclarativeViewer::createMenu() QMenu *fileMenu = menu->addMenu(tr("&File")); fileMenu->addAction(openAction); + fileMenu->addAction(openUrlAction); fileMenu->addAction(reloadAction); fileMenu->addSeparator(); fileMenu->addAction(closeAction); @@ -1021,6 +1027,14 @@ void QDeclarativeViewer::openFile() } } +void QDeclarativeViewer::openUrl() +{ + QString cur = canvas->source().toLocalFile(); + QString url= QInputDialog::getText(this, tr("Open QML file"), tr("URL of main QML file:"), QLineEdit::Normal, cur); + if (!url.isEmpty()) + open(url); +} + void QDeclarativeViewer::statusChanged() { if (canvas->status() == QDeclarativeView::Error && tester) diff --git a/tools/qml/qmlruntime.h b/tools/qml/qmlruntime.h index 6fa7d81..d1ec26d 100644 --- a/tools/qml/qmlruntime.h +++ b/tools/qml/qmlruntime.h @@ -113,6 +113,7 @@ public slots: void sceneResized(QSize size); bool open(const QString&); void openFile(); + void openUrl(); void reload(); void takeSnapShot(); void toggleRecording(); -- cgit v0.12 From a68ad8cea58fd3bcbcf4ab5c6708896073c476b2 Mon Sep 17 00:00:00 2001 From: Jani Hautakangas Date: Thu, 19 Aug 2010 22:33:31 +0300 Subject: Introduce QtOpenGL module for Symbian. Task-number: QT-2139 Reviewed-by: Gunnar Sletta --- mkspecs/common/symbian/symbian.conf | 7 +- mkspecs/features/symbian/opengl.prf | 21 ++ src/gui/kernel/qapplication_s60.cpp | 9 +- src/gui/kernel/qwidget.cpp | 13 +- src/gui/kernel/qwidget_s60.cpp | 2 +- .../gl2paintengineex/qpaintengineex_opengl2.cpp | 16 +- src/opengl/gl2paintengineex/qtriangulator.cpp | 8 + src/opengl/opengl.pro | 28 +- src/opengl/qgl.cpp | 32 +- src/opengl/qgl_egl.cpp | 2 +- src/opengl/qgl_p.h | 9 +- src/opengl/qgl_symbian.cpp | 362 +++++++++++++++++++++ src/plugins/graphicssystems/opengl/opengl.pro | 2 + src/s60installs/qt.iby | 3 + src/s60installs/s60installs.pro | 5 + tests/auto/qgl/tst_qgl.cpp | 1 + 16 files changed, 495 insertions(+), 25 deletions(-) create mode 100644 mkspecs/features/symbian/opengl.prf create mode 100644 src/opengl/qgl_symbian.cpp diff --git a/mkspecs/common/symbian/symbian.conf b/mkspecs/common/symbian/symbian.conf index 6d96b01..04b81b0 100644 --- a/mkspecs/common/symbian/symbian.conf +++ b/mkspecs/common/symbian/symbian.conf @@ -70,7 +70,12 @@ QMAKE_LIBS_CORE = $$QMAKE_LIBS -lefsrv -lhal -lbafl QMAKE_LIBS_GUI = $$QMAKE_LIBS_CORE -lfbscli -lbitgdi -lgdi -lws32 -lapgrfx -lcone -leikcore -lmediaclientaudio -lapparc -lcentralrepository QMAKE_LIBS_NETWORK = QMAKE_LIBS_EGL = -llibEGL -QMAKE_LIBS_OPENGL = +QMAKE_LIBS_OPENGL = -llibglesv2 +QMAKE_LIBS_OPENGL_ES1 = -llibGLESv1_CM +QMAKE_LIBS_OPENGL_ES2 = -llibglesv2 +QMAKE_LIBS_OPENGL_QT = -llibglesv2 -lcone -lws32 +QMAKE_LIBS_OPENGL_ES1_QT = -llibGLESv1_CM -lcone -lws32 +QMAKE_LIBS_OPENGL_ES2_QT = -llibglesv2 -lcone -lws32 QMAKE_LIBS_OPENVG = -llibOpenVG -lfbscli -lbitgdi -lgdi QMAKE_LIBS_THREAD = -llibpthread QMAKE_LIBS_COMPAT = diff --git a/mkspecs/features/symbian/opengl.prf b/mkspecs/features/symbian/opengl.prf new file mode 100644 index 0000000..9a8ab18 --- /dev/null +++ b/mkspecs/features/symbian/opengl.prf @@ -0,0 +1,21 @@ +contains(QT_CONFIG, opengles1) { + INCLUDEPATH += $$QMAKE_INCDIR_OPENGL_ES1 + !isEmpty(QMAKE_LIBDIR_OPENGL_ES1):QMAKE_LIBDIR += $$QMAKE_LIBDIR_OPENGL_ES1 + target_qt:LIBS_PRIVATE += $$QMAKE_LIBS_OPENGL_ES1_QT + else:LIBS += $$QMAKE_LIBS_OPENGL_ES1 +} else:contains(QT_CONFIG, opengles2) { + INCLUDEPATH += $$QMAKE_INCDIR_OPENGL_ES2 + !isEmpty(QMAKE_LIBDIR_OPENGL_ES2):QMAKE_LIBDIR += $$QMAKE_LIBDIR_OPENGL_ES2 + target_qt:LIBS_PRIVATE += $$QMAKE_LIBS_OPENGL_ES2_QT + else:LIBS += $$QMAKE_LIBS_OPENGL_ES2 +} else { + INCLUDEPATH += $$QMAKE_INCDIR_OPENGL + !isEmpty(QMAKE_LIBDIR_OPENGL):QMAKE_LIBDIR += $$QMAKE_LIBDIR_OPENGL + target_qt:LIBS_PRIVATE += $$QMAKE_LIBS_OPENGL_QT + else:LIBS += $$QMAKE_LIBS_OPENGL +} + +contains(QT_CONFIG, egl) { + !isEmpty(QMAKE_LIBS_EGL): LIBS += $$QMAKE_LIBS_EGL +} + diff --git a/src/gui/kernel/qapplication_s60.cpp b/src/gui/kernel/qapplication_s60.cpp index 670bf34..7c5e790 100644 --- a/src/gui/kernel/qapplication_s60.cpp +++ b/src/gui/kernel/qapplication_s60.cpp @@ -1107,17 +1107,19 @@ void QSymbianControl::Draw(const TRect& controlRect) const CFbsBitmap *bitmap = s60Surface->symbianBitmap(); CWindowGc &gc = SystemGc(); - switch(qwidget->d_func()->extraData()->nativePaintMode) { + QWExtra::NativePaintMode nativePaintMode = qwidget->d_func()->extraData()->nativePaintMode; + if(qwidget->d_func()->paintOnScreen()) + nativePaintMode = QWExtra::Disable; + + switch(nativePaintMode) { case QWExtra::Disable: // Do nothing break; - case QWExtra::Blit: if (qwidget->d_func()->isOpaque) gc.SetDrawMode(CGraphicsContext::EDrawModeWriteAlpha); gc.BitBlt(controlRect.iTl, bitmap, backingStoreRect); break; - case QWExtra::ZeroFill: if (Window().DisplayMode() == EColor16MA || Window().DisplayMode() == Q_SYMBIAN_ECOLOR16MAP) { @@ -1130,7 +1132,6 @@ void QSymbianControl::Draw(const TRect& controlRect) const gc.Clear(controlRect); }; break; - default: Q_ASSERT(false); } diff --git a/src/gui/kernel/qwidget.cpp b/src/gui/kernel/qwidget.cpp index dad4848..8b8641f 100644 --- a/src/gui/kernel/qwidget.cpp +++ b/src/gui/kernel/qwidget.cpp @@ -1274,7 +1274,16 @@ void QWidgetPrivate::init(QWidget *parentWidget, Qt::WindowFlags f) q->setAttribute(Qt::WA_WState_Hidden); //give potential windows a bigger "pre-initial" size; create_sys() will give them a new size later +#ifdef Q_OS_SYMBIAN + if(q->inherits("QGLWidget")) { + // Don't waste GPU mem for unnecessary large egl surface + data.crect = parentWidget ? QRect(0,0,2,2) : QRect(0,0,2,2); + } else { + data.crect = parentWidget ? QRect(0,0,100,30) : QRect(0,0,360,640); + } +#else data.crect = parentWidget ? QRect(0,0,100,30) : QRect(0,0,640,480); +#endif focus_next = focus_prev = q; @@ -9957,7 +9966,7 @@ void QWidget::setParent(QWidget *parent, Qt::WindowFlags f) desktopWidget = parent; bool newParent = (parent != parentWidget()) || !wasCreated || desktopWidget; -#if defined(Q_WS_X11) || defined(Q_WS_WIN) || defined(Q_WS_MAC) +#if defined(Q_WS_X11) || defined(Q_WS_WIN) || defined(Q_WS_MAC) || defined(Q_OS_SYMBIAN) if (newParent && parent && !desktopWidget) { if (testAttribute(Qt::WA_NativeWindow) && !qApp->testAttribute(Qt::AA_DontCreateNativeWidgetSiblings)) parent->d_func()->enforceNativeChildren(); @@ -10611,7 +10620,7 @@ void QWidget::setAttribute(Qt::WidgetAttribute attribute, bool on) } case Qt::WA_PaintOnScreen: d->updateIsOpaque(); -#if defined(Q_WS_WIN) || defined(Q_WS_X11) || defined(Q_WS_MAC) +#if defined(Q_WS_WIN) || defined(Q_WS_X11) || defined(Q_WS_MAC) || defined(Q_OS_SYMBIAN) // Recreate the widget if it's already created as an alien widget and // WA_PaintOnScreen is enabled. Paint on screen widgets must have win id. // So must their children. diff --git a/src/gui/kernel/qwidget_s60.cpp b/src/gui/kernel/qwidget_s60.cpp index 7ab9fbc..7494f92 100644 --- a/src/gui/kernel/qwidget_s60.cpp +++ b/src/gui/kernel/qwidget_s60.cpp @@ -486,7 +486,7 @@ void QWidgetPrivate::show_sys() #ifdef Q_WS_S60 // Lazily initialize the S60 screen furniture when the first window is shown. - if (!QApplication::testAttribute(Qt::AA_S60DontConstructApplicationPanes) + if (q->isWindow() && !QApplication::testAttribute(Qt::AA_S60DontConstructApplicationPanes) && !S60->buttonGroupContainer() && !S60->statusPane()) { if (!q->testAttribute(Qt::WA_DontShowOnScreen)) { diff --git a/src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp b/src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp index d3f6a29..18192e3 100644 --- a/src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp +++ b/src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp @@ -90,7 +90,10 @@ QT_BEGIN_NAMESPACE -//#define QT_GL_NO_SCISSOR_TEST +#if defined(Q_OS_SYMBIAN) +#define QT_GL_NO_SCISSOR_TEST +#endif + #if defined(Q_WS_WIN) extern Q_GUI_EXPORT bool qt_cleartype_enabled; #endif @@ -374,12 +377,12 @@ void QGL2PaintEngineExPrivate::updateMatrix() dx = ceilf(dx - 0.5f); dy = ceilf(dy - 0.5f); } - +#ifndef Q_OS_SYMBIAN if (addOffset) { dx += 0.49f; dy += 0.49f; } - +#endif pmvMatrix[0][0] = (wfactor * transform.m11()) - transform.m13(); pmvMatrix[1][0] = (wfactor * transform.m21()) - transform.m23(); pmvMatrix[2][0] = (wfactor * dx) - transform.m33(); @@ -686,7 +689,12 @@ void QGL2PaintEngineExPrivate::fill(const QVectorPath& path) const QPointF* const points = reinterpret_cast(path.points()); // ### Remove before release... - static bool do_vectorpath_cache = qgetenv("QT_OPENGL_NO_PATH_CACHE").isEmpty(); +#ifdef Q_OS_SYMBIAN + // ### There are some unresolved issues in Symbian vector path caching. + static bool do_vectorpath_cache = false; +#else + static bool do_vectorpath_cache = true; +#endif // Check to see if there's any hints if (path.shape() == QVectorPath::RectangleHint) { diff --git a/src/opengl/gl2paintengineex/qtriangulator.cpp b/src/opengl/gl2paintengineex/qtriangulator.cpp index df7cbc2..f14b0a4 100644 --- a/src/opengl/gl2paintengineex/qtriangulator.cpp +++ b/src/opengl/gl2paintengineex/qtriangulator.cpp @@ -65,7 +65,11 @@ QT_BEGIN_NAMESPACE // Quick sort. template +#ifdef Q_CC_RVCT // RVCT 2.2 doesn't see recursive _static_ template function +void sort(T *array, int count, LessThan lessThan) +#else static void sort(T *array, int count, LessThan lessThan) +#endif { // If the number of elements fall below some threshold, use insertion sort. const int INSERTION_SORT_LIMIT = 7; // About 7 is fastest on my computer... @@ -122,7 +126,11 @@ sort_loop_end: // Quick sort. template +#ifdef Q_CC_RVCT +void sort(T *array, int count) // RVCT 2.2 doesn't see recursive _static_ template function +#else static void sort(T *array, int count) +#endif { // If the number of elements fall below some threshold, use insertion sort. const int INSERTION_SORT_LIMIT = 25; // About 25 is fastest on my computer... diff --git a/src/opengl/opengl.pro b/src/opengl/opengl.pro index d6011cf..0e82467 100644 --- a/src/opengl/opengl.pro +++ b/src/opengl/opengl.pro @@ -11,18 +11,18 @@ unix:QMAKE_PKGCONFIG_REQUIRES = QtCore QtGui include(../qbase.pri) -!win32:!embedded:!mac:CONFIG += x11 +!win32:!embedded:!mac:!symbian:CONFIG += x11 contains(QT_CONFIG, opengl):CONFIG += opengl contains(QT_CONFIG, opengles1):CONFIG += opengles1 contains(QT_CONFIG, opengles2):CONFIG += opengles2 contains(QT_CONFIG, egl):CONFIG += egl HEADERS += qgl.h \ - qgl_p.h \ - qglcolormap.h \ - qglpixelbuffer.h \ + qgl_p.h \ + qglcolormap.h \ + qglpixelbuffer.h \ qglpixelbuffer_p.h \ - qglframebufferobject.h \ + qglframebufferobject.h \ qglframebufferobject_p.h \ qglextensions_p.h \ qglpaintdevice_p.h \ @@ -30,9 +30,9 @@ HEADERS += qgl.h \ SOURCES += qgl.cpp \ - qglcolormap.cpp \ - qglpixelbuffer.cpp \ - qglframebufferobject.cpp \ + qglcolormap.cpp \ + qglpixelbuffer.cpp \ + qglframebufferobject.cpp \ qglextensions.cpp \ qglpaintdevice.cpp \ qglbuffer.cpp \ @@ -119,7 +119,7 @@ mac { win32:!wince*: { DEFINES += QT_NO_EGL SOURCES += qgl_win.cpp \ - qglpixelbuffer_win.cpp + qglpixelbuffer_win.cpp } wince*: { SOURCES += qgl_wince.cpp \ @@ -147,4 +147,14 @@ embedded { } } +symbian { + SOURCES += qgl_symbian.cpp \ + qglpixelbuffer_egl.cpp \ + qgl_egl.cpp + + HEADERS += qgl_egl_p.h + + symbian:TARGET.UID3 = 0x2002131A +} + INCLUDEPATH += ../3rdparty/harfbuzz/src diff --git a/src/opengl/qgl.cpp b/src/opengl/qgl.cpp index 74bde36..1802107 100644 --- a/src/opengl/qgl.cpp +++ b/src/opengl/qgl.cpp @@ -96,7 +96,7 @@ QT_BEGIN_NAMESPACE -#if defined(Q_WS_X11) || defined(Q_WS_MAC) || defined(Q_WS_QWS) +#if defined(Q_WS_X11) || defined(Q_WS_MAC) || defined(Q_WS_QWS) || defined(Q_OS_SYMBIAN) QGLExtensionFuncs QGLContextPrivate::qt_extensionFuncs; #endif @@ -2264,7 +2264,7 @@ static void convertToGLFormatHelper(QImage &dst, const QImage &img, GLenum textu } } -#if defined(Q_WS_X11) || defined(Q_WS_MAC) || defined(Q_WS_QWS) +#if defined(Q_WS_X11) || defined(Q_WS_MAC) || defined(Q_WS_QWS) || defined(Q_OS_SYMBIAN) QGLExtensionFuncs& QGLContextPrivate::extensionFuncs(const QGLContext *) { return qt_extensionFuncs; @@ -4197,6 +4197,34 @@ bool QGLWidget::event(QEvent *e) d->glcx->d_ptr->clearDrawable(); # endif } +#elif defined(Q_OS_SYMBIAN) + // prevents errors on some systems, where we get a flush to a + // hidden widget + if (e->type() == QEvent::Hide) { + makeCurrent(); + glFinish(); + doneCurrent(); + } else if (e->type() == QEvent::ParentChange) { + // if we've reparented a window that has the current context + // bound, we need to rebind that context to the new window id + if (d->glcx == QGLContext::currentContext()) + makeCurrent(); + + if (testAttribute(Qt::WA_TranslucentBackground)) + setContext(new QGLContext(d->glcx->requestedFormat(), this)); + } + + // A re-parent is likely to destroy the Symbian window and re-create it. It is important + // that we free the EGL surface _before_ the winID changes - otherwise we can leak. + if (e->type() == QEvent::ParentAboutToChange) + d->glcx->d_func()->destroyEglSurfaceForDevice(); + + if ((e->type() == QEvent::ParentChange) || (e->type() == QEvent::WindowStateChange)) { + // The window may have been re-created during re-parent or state change - if so, the EGL + // surface will need to be re-created. + d->recreateEglSurface(); + } + #endif return QWidget::event(e); diff --git a/src/opengl/qgl_egl.cpp b/src/opengl/qgl_egl.cpp index a154325..ebd1169 100644 --- a/src/opengl/qgl_egl.cpp +++ b/src/opengl/qgl_egl.cpp @@ -230,7 +230,7 @@ void QGLContext::swapBuffers() const void QGLContextPrivate::destroyEglSurfaceForDevice() { if (eglSurface != EGL_NO_SURFACE) { -#ifdef Q_WS_X11 +#if defined(Q_WS_X11) || defined(Q_OS_SYMBIAN) // Make sure we don't call eglDestroySurface on a surface which // was created for a different winId. This applies only to QGLWidget // paint device, so make sure this is the one we're operating on diff --git a/src/opengl/qgl_p.h b/src/opengl/qgl_p.h index ca0d3fa..387c8f7 100644 --- a/src/opengl/qgl_p.h +++ b/src/opengl/qgl_p.h @@ -167,6 +167,9 @@ public: #if defined(Q_WS_X11) && !defined(QT_NO_EGL) , eglSurfaceWindowId(0) #endif +#if defined(Q_OS_SYMBIAN) + , eglSurfaceWindowId(0) +#endif { isGLWidget = 1; } @@ -208,6 +211,10 @@ public: #elif defined(Q_WS_QWS) QWSGLWindowSurface *wsurf; #endif +#ifdef Q_OS_SYMBIAN + void recreateEglSurface(); + WId eglSurfaceWindowId; +#endif }; class QGLContextResource; @@ -417,7 +424,7 @@ public: static inline QGLExtensionFuncs& extensionFuncs(const QGLContext *ctx) { return ctx->d_ptr->group->extensionFuncs(); } #endif -#if defined(Q_WS_X11) || defined(Q_WS_MAC) || defined(Q_WS_QWS) +#if defined(Q_WS_X11) || defined(Q_WS_MAC) || defined(Q_WS_QWS) || defined(Q_OS_SYMBIAN) static QGLExtensionFuncs qt_extensionFuncs; static Q_OPENGL_EXPORT QGLExtensionFuncs& extensionFuncs(const QGLContext *); #endif diff --git a/src/opengl/qgl_symbian.cpp b/src/opengl/qgl_symbian.cpp new file mode 100644 index 0000000..73fe4c9 --- /dev/null +++ b/src/opengl/qgl_symbian.cpp @@ -0,0 +1,362 @@ +/**************************************************************************** +** +** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the QtOpenGL module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** No Commercial Usage +** This file contains pre-release code and may not be distributed. +** You may use this file in accordance with the terms and conditions +** contained in the Technology Preview License Agreement accompanying +** this package. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 2.1 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 2.1 requirements +** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** If you have questions regarding the use of this file, please contact +** Nokia at qt-info@nokia.com. +** +** +** +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + + +#include "qgl.h" +#include +#include +#include +#include +#include +#include +#include +#include // to access QWExtra +#include "qgl_egl_p.h" +#include "qcolormap.h" +#include + +QT_BEGIN_NAMESPACE + +// Turn off "direct to window" rendering if EGL cannot support it. +#if !defined(EGL_RENDER_BUFFER) || !defined(EGL_SINGLE_BUFFER) +#if defined(QGL_DIRECT_TO_WINDOW) +#undef QGL_DIRECT_TO_WINDOW +#endif +#endif + +// Determine if preserved window contents should be used. +#if !defined(EGL_SWAP_BEHAVIOR) || !defined(EGL_BUFFER_PRESERVED) +#if !defined(QGL_NO_PRESERVED_SWAP) +#define QGL_NO_PRESERVED_SWAP 1 +#endif +#endif + +/* + QGLTemporaryContext implementation +*/ + + +class QGLTemporaryContextPrivate +{ +public: + bool initialized; + RWindow *window; + EGLContext context; + EGLSurface surface; + EGLDisplay display; +}; + +QGLTemporaryContext::QGLTemporaryContext(bool, QWidget *) + : d(new QGLTemporaryContextPrivate) +{ + d->initialized = false; + d->window = 0; + d->context = 0; + d->surface = 0; + + d->display = d->display = QEgl::display(); + + EGLConfig config; + int numConfigs = 0; + EGLint attribs[] = { + EGL_SURFACE_TYPE, EGL_WINDOW_BIT, +#ifdef QT_OPENGL_ES_2 + EGL_RENDERABLE_TYPE, EGL_OPENGL_ES2_BIT, +#endif + EGL_NONE + }; + + eglChooseConfig(d->display, attribs, &config, 1, &numConfigs); + if (!numConfigs) { + qWarning("QGLTemporaryContext: No EGL configurations available."); + return; + } + + d->window = new RWindow(CCoeEnv::Static()->WsSession()); + d->window->Construct(CCoeEnv::Static()->RootWin(),(uint)this); + + d->surface = eglCreateWindowSurface(d->display, config, (EGLNativeWindowType) d->window, NULL); + + if (d->surface == EGL_NO_SURFACE) { + qWarning("QGLTemporaryContext: Error creating EGL surface."); + delete d->window; + d->window = 0; + return; + } + + EGLint contextAttribs[] = { +#ifdef QT_OPENGL_ES_2 + EGL_CONTEXT_CLIENT_VERSION, 2, +#endif + EGL_NONE + }; + d->context = eglCreateContext(d->display, config, 0, contextAttribs); + if (d->context != EGL_NO_CONTEXT + && eglMakeCurrent(d->display, d->surface, d->surface, d->context)) + { + d->initialized = true; + } else { + qWarning("QGLTemporaryContext: Error creating EGL context."); + d->window = 0; + return; + } +} + +QGLTemporaryContext::~QGLTemporaryContext() +{ + if (d->initialized) { + eglMakeCurrent(d->display, EGL_NO_SURFACE, EGL_NO_SURFACE, EGL_NO_CONTEXT); + eglDestroyContext(d->display, d->context); + eglDestroySurface(d->display, d->surface); + delete d->window; + } +} + +bool QGLFormat::hasOpenGLOverlays() +{ + return false; +} + +// Chooses the EGL config and creates the EGL context +bool QGLContext::chooseContext(const QGLContext* shareContext) // almost same as in qgl_x11egl.cpp +{ + Q_D(QGLContext); + + if (!device()) + return false; + + int devType = device()->devType(); + + if ((devType != QInternal::Widget) && (devType != QInternal::Pbuffer)) { + qWarning("WARNING: Creating a QGLContext not supported on device type %d", devType); + return false; + } + + // Get the display and initialize it. + if (d->eglContext == 0) { + d->eglContext = new QEglContext(); + d->ownsEglContext = true; + d->eglContext->setApi(QEgl::OpenGL); + + // If the device is a widget with WA_TranslucentBackground set, make sure the glFormat + // has the alpha channel option set: + if (devType == QInternal::Widget) { + QWidget* widget = static_cast(device()); + if (widget->testAttribute(Qt::WA_TranslucentBackground)) + d->glFormat.setAlpha(true); + } + + // Construct the configuration we need for this surface. + QEglProperties configProps; + configProps.setDeviceType(devType); + configProps.setPaintDeviceFormat(device()); + configProps.setRenderableType(QEgl::OpenGL); + configProps.setValue(EGL_SURFACE_TYPE, EGL_WINDOW_BIT|EGL_SWAP_BEHAVIOR_PRESERVED_BIT); + + qt_eglproperties_set_glformat(configProps, d->glFormat); + + if (!d->eglContext->chooseConfig(configProps, QEgl::BestPixelFormat)) { + delete d->eglContext; + d->eglContext = 0; + return false; + } + + // Create a new context for the configuration. + QEglContext* eglSharedContext = shareContext ? shareContext->d_func()->eglContext : 0; + if (!d->eglContext->createContext(eglSharedContext)) { + delete d->eglContext; + d->eglContext = 0; + return false; + } + d->sharing = d->eglContext->isSharing(); + if (d->sharing && shareContext) + const_cast(shareContext)->d_func()->sharing = true; + } + + // Inform the higher layers about the actual format properties + qt_glformat_from_eglconfig(d->glFormat, d->eglContext->config()); + + // Do don't create the EGLSurface for everything. + // QWidget - yes, create the EGLSurface and store it in QGLContextPrivate::eglSurface + // QGLWidget - yes, create the EGLSurface and store it in QGLContextPrivate::eglSurface + // QGLPixelBuffer - no, it creates the surface itself and stores it in QGLPixelBufferPrivate::pbuf + + if (devType == QInternal::Widget) { + if (d->eglSurface != EGL_NO_SURFACE) + eglDestroySurface(d->eglContext->display(), d->eglSurface); + + d->eglSurface = QEgl::createSurface(device(), d->eglContext->config()); + +#if !defined(QGL_NO_PRESERVED_SWAP) + eglGetError(); // Clear error state first. + eglSurfaceAttrib(QEgl::display(), d->eglSurface, + EGL_SWAP_BEHAVIOR, EGL_BUFFER_PRESERVED); + if (eglGetError() != EGL_SUCCESS) { + qWarning("QGLContext: could not enable preserved swap"); + } +#endif + + setWindowCreated(true); + } + + return true; +} + +void QGLWidget::resizeEvent(QResizeEvent *) +{ + Q_D(QGLWidget); + if (!isValid()) + return; + + if (QGLContext::currentContext()) + doneCurrent(); + + // Symbian needs to recreate the surface on resize. + d->recreateEglSurface(); + + makeCurrent(); + if (!d->glcx->initialized()) + glInit(); + resizeGL(width(), height()); + //handle overlay +} + +const QGLContext* QGLWidget::overlayContext() const +{ + return 0; +} + +void QGLWidget::makeOverlayCurrent() +{ + //handle overlay +} + +void QGLWidget::updateOverlayGL() +{ + //handle overlay +} + +void QGLWidget::setContext(QGLContext *context, const QGLContext* shareContext, bool deleteOldContext) +{ + Q_D(QGLWidget); + if (context == 0) { + qWarning("QGLWidget::setContext: Cannot set null context"); + return; + } + if (!context->deviceIsPixmap() && context->device() != this) { + qWarning("QGLWidget::setContext: Context must refer to this widget"); + return; + } + + if (d->glcx) + d->glcx->doneCurrent(); + QGLContext* oldcx = d->glcx; + d->glcx = context; + + bool createFailed = false; + if (!d->glcx->isValid()) { + // Create the QGLContext here, which in turn chooses the EGL config + // and creates the EGL context: + if (!d->glcx->create(shareContext ? shareContext : oldcx)) + createFailed = true; + } + if (createFailed) { + if (deleteOldContext) + delete oldcx; + return; + } + + d->eglSurfaceWindowId = winId(); // Remember the window id we created the surface for +} + +void QGLWidgetPrivate::init(QGLContext *context, const QGLWidget* shareWidget) +{ + Q_Q(QGLWidget); + + initContext(context, shareWidget); + + if(q->isValid() && glcx->format().hasOverlay()) { + //no overlay + qWarning("QtOpenGL ES doesn't currently support overlays"); + } +} + +void QGLWidgetPrivate::cleanupColormaps() +{ +} + +const QGLColormap & QGLWidget::colormap() const +{ + return d_func()->cmap; +} + +void QGLWidget::setColormap(const QGLColormap &) +{ +} + +void QGLWidgetPrivate::recreateEglSurface() +{ + Q_Q(QGLWidget); + + WId currentId = q->winId(); + + if (glcx->d_func()->eglSurface != EGL_NO_SURFACE) { + eglDestroySurface(glcx->d_func()->eglContext->display(), + glcx->d_func()->eglSurface); + } + + glcx->d_func()->eglSurface = QEgl::createSurface(glcx->device(), + glcx->d_func()->eglContext->config()); + +#if !defined(QGL_NO_PRESERVED_SWAP) + eglGetError(); // Clear error state first. + eglSurfaceAttrib(QEgl::display(), glcx->d_func()->eglSurface, + EGL_SWAP_BEHAVIOR, EGL_BUFFER_PRESERVED); + if (eglGetError() != EGL_SUCCESS) { + qWarning("QGLContext: could not enable preserved swap"); + } +#endif + + eglSurfaceWindowId = currentId; +} + +QT_END_NAMESPACE + diff --git a/src/plugins/graphicssystems/opengl/opengl.pro b/src/plugins/graphicssystems/opengl/opengl.pro index 7d6fe3f..47e15c5 100644 --- a/src/plugins/graphicssystems/opengl/opengl.pro +++ b/src/plugins/graphicssystems/opengl/opengl.pro @@ -9,3 +9,5 @@ SOURCES = main.cpp target.path += $$[QT_INSTALL_PLUGINS]/graphicssystems INSTALLS += target + +symbian: TARGET.UID3 = 0x2002131B diff --git a/src/s60installs/qt.iby b/src/s60installs/qt.iby index 935bdc5..b6cdce9 100644 --- a/src/s60installs/qt.iby +++ b/src/s60installs/qt.iby @@ -20,6 +20,7 @@ file=ABI_DIR\BUILD_DIR\phonon.dll SHARED_LIB_DIR\phonon.dll file=ABI_DIR\BUILD_DIR\QtMultimedia.dll SHARED_LIB_DIR\QtMultimedia.dll file=ABI_DIR\BUILD_DIR\QtXmlPatterns.dll SHARED_LIB_DIR\QtXmlPatterns.dll file=ABI_DIR\BUILD_DIR\QtDeclarative.dll SHARED_LIB_DIR\QtDeclarative.dll +file=ABI_DIR\BUILD_DIR\QtOpenGL.dll SHARED_LIB_DIR\QtOpenGL.dll // imageformats file=ABI_DIR\BUILD_DIR\qgif.dll SHARED_LIB_DIR\qgif.dll @@ -50,6 +51,7 @@ file=ABI_DIR\BUILD_DIR\qaudio.dll SHARED_LIB_DIR\qaudio.dll // graphicssystems file=ABI_DIR\BUILD_DIR\qvggraphicssystem.dll SHARED_LIB_DIR\qvggraphicssystem.dll +file=ABI_DIR\BUILD_DIR\qglgraphicssystem.dll SHARED_LIB_DIR\qglgraphicssystem.dll // S60 version compatibility plugins for 5.0 (3.1 and 3.2 devices are never likely to have this in ROM, // so don't bother including those plugins @@ -95,6 +97,7 @@ data=\epoc32\data\qt\qtlibspluginstubs\qaudio.qtplugin resource\qt\plugins\audio // graphicssystems data=\epoc32\data\z\resource\qt\plugins\graphicssystems\qvggraphicssystem.qtplugin resource\qt\plugins\graphicssystems\qvggraphicssystem.qtplugin +data=\epoc32\data\z\resource\qt\plugins\graphicssystems\qglgraphicssystem.qtplugin resource\qt\plugins\graphicssystems\qglgraphicssystem.qtplugin // Stub sis file data=ZSYSTEM\install\qt_stub.sis System\Install\qt_stub.sis diff --git a/src/s60installs/s60installs.pro b/src/s60installs/s60installs.pro index 8a8167b..9e1d582 100644 --- a/src/s60installs/s60installs.pro +++ b/src/s60installs/s60installs.pro @@ -189,6 +189,11 @@ symbian: { "[0x1028315F],0,0,0,{\"S60ProductID\"}" } + contains(QT_CONFIG, opengl) { + qtlibraries.sources += $$QMAKE_LIBDIR_QT/QtOpenGL$${QT_LIBINFIX}.dll + graphicssystems_plugins.sources += $$QT_BUILD_TREE/plugins/graphicssystems/qglgraphicssystem$${QT_LIBINFIX}.dll + } + contains(QT_CONFIG, multimedia){ qtlibraries.sources += $$QMAKE_LIBDIR_QT/QtMultimedia$${QT_LIBINFIX}.dll } diff --git a/tests/auto/qgl/tst_qgl.cpp b/tests/auto/qgl/tst_qgl.cpp index 7fe461c..5bebdf6 100644 --- a/tests/auto/qgl/tst_qgl.cpp +++ b/tests/auto/qgl/tst_qgl.cpp @@ -847,6 +847,7 @@ void tst_QGL::graphicsViewClipping() scene.addWidget(widget)->setPos(0, 0); QGraphicsView view(&scene); + view.setBackgroundBrush(Qt::white); #ifdef Q_WS_QWS view.setWindowFlags(Qt::FramelessWindowHint); #endif -- cgit v0.12 From 870701fc34dc50bb06e55467e28da66f23ace2ea Mon Sep 17 00:00:00 2001 From: Martin Smith Date: Fri, 20 Aug 2010 08:50:57 +0200 Subject: qdoc: Changed id attribute to be a UUID. Task-nr: QTBUG-11113 --- tools/qdoc3/htmlgenerator.cpp | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/tools/qdoc3/htmlgenerator.cpp b/tools/qdoc3/htmlgenerator.cpp index 3e79a9f..e4443b0 100644 --- a/tools/qdoc3/htmlgenerator.cpp +++ b/tools/qdoc3/htmlgenerator.cpp @@ -4423,7 +4423,7 @@ bool HtmlGenerator::generatePageElement(QXmlStreamWriter& writer, if (node->access() == Node::Private) return false; - QString t; + QString guid = QUuid::createUuid().toString(); QString url = PageGenerator::fileName(node); QString title; QString rawTitle; @@ -4432,7 +4432,6 @@ bool HtmlGenerator::generatePageElement(QXmlStreamWriter& writer, QXmlStreamAttributes attributes; writer.writeStartElement("page"); - t.setNum(id++); if (node->isInnerNode()) { const InnerNode* inner = static_cast(node); @@ -4510,7 +4509,7 @@ bool HtmlGenerator::generatePageElement(QXmlStreamWriter& writer, } } - writer.writeAttribute("id",t); + writer.writeAttribute("id",guid); writer.writeStartElement("pageWords"); writer.writeCharacters(pageWords.join(" ")); @@ -4545,9 +4544,9 @@ bool HtmlGenerator::generatePageElement(QXmlStreamWriter& writer, Text headingText = Text::sectionHeading(toc.at(i)); QString s = headingText.toString(); writer.writeStartElement("page"); - t.setNum(id++); + guid = QUuid::createUuid().toString(); QString internalUrl = url + "#" + Doc::canonicalTitle(s); - writer.writeAttribute("id",t); + writer.writeAttribute("id",guid); writer.writeStartElement("pageWords"); writer.writeCharacters(pageWords.join(" ")); writer.writeCharacters(" "); -- cgit v0.12 From 9554d46c421edfcfa1c3f91244581a72d3930801 Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Fri, 20 Aug 2010 09:09:08 +0200 Subject: tst_qmetaobject: fix compilation, now that wrong NOTIFY property fails --- tests/auto/qmetaobject/tst_qmetaobject.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/auto/qmetaobject/tst_qmetaobject.cpp b/tests/auto/qmetaobject/tst_qmetaobject.cpp index bb96da1..8c2a0f9 100644 --- a/tests/auto/qmetaobject/tst_qmetaobject.cpp +++ b/tests/auto/qmetaobject/tst_qmetaobject.cpp @@ -107,7 +107,7 @@ class tst_QMetaObject : public QObject Q_PROPERTY(QVariantList value5 WRITE setVal5 READ val5) Q_PROPERTY(int value6 READ value6 NOTIFY value6Changed) Q_PROPERTY(MyStruct value7 READ value7 WRITE setVal7 NOTIFY value7Changed) - Q_PROPERTY(int value8 READ value8 NOTIFY value8Changed) + Q_PROPERTY(int value8 READ value8) Q_PROPERTY(int value9 READ value9 CONSTANT) Q_PROPERTY(int value10 READ value10 FINAL) -- cgit v0.12 From 0e4a9ab0f60faff3bde86cb7f08250161c18103e Mon Sep 17 00:00:00 2001 From: Richard Moe Gustavsen Date: Fri, 20 Aug 2010 10:06:04 +0200 Subject: QFileDialog::HideNameFilterDetails breaks Cocoa QFileDIalog filter Using namefilters in the non-native file dialog is a bit broken by design, since it don't store the whole selected name filter, but only the filter with details stripped off (if this is specified). And it stores this data in gui widgets. And the native file dialog also suffers from this. At least this patch will pick the first matching name filter (with details) given a details-stripped version. Task-number: QTBUG-12870 Reviewed-by: cduclos --- src/gui/dialogs/qfiledialog_mac.mm | 25 +++++++++++++++++-------- 1 file changed, 17 insertions(+), 8 deletions(-) diff --git a/src/gui/dialogs/qfiledialog_mac.mm b/src/gui/dialogs/qfiledialog_mac.mm index 64fc0ee..87850a7 100644 --- a/src/gui/dialogs/qfiledialog_mac.mm +++ b/src/gui/dialogs/qfiledialog_mac.mm @@ -119,6 +119,7 @@ QT_USE_NAMESPACE - (QString)removeExtensions:(const QString &)filter; - (void)createTextField; - (void)createPopUpButton:(const QString &)selectedFilter hideDetails:(BOOL)hideDetails; +- (QStringList)findStrippedFilterWithVisualFilterName:(QString)name; - (void)createAccessory; @end @@ -127,8 +128,6 @@ QT_USE_NAMESPACE - (id)initWithAcceptMode:(QT_PREPEND_NAMESPACE(QFileDialog::AcceptMode))acceptMode title:(const QString &)title - nameFilters:(const QStringList &)nameFilters - selectedNameFilter:(const QString &)selectedNameFilter hideNameFilterDetails:(bool)hideNameFilterDetails qDirFilter:(QT_PREPEND_NAMESPACE(QDir::Filters))qDirFilter fileOptions:(QT_PREPEND_NAMESPACE(QFileDialog::Options))fileOptions @@ -158,8 +157,10 @@ QT_USE_NAMESPACE mPriv = priv; mLastFilterCheckPath = new QString; mQDirFilterEntryList = new QStringList; - mNameFilterDropDownList = new QStringList(nameFilters); - mSelectedNameFilter = new QStringList(qt_clean_filter_list(selectedNameFilter)); + mNameFilterDropDownList = new QStringList(priv->nameFilters); + QString selectedVisualNameFilter = priv->qFileDialogUi->fileTypeCombo->currentText(); + mSelectedNameFilter = new QStringList([self findStrippedFilterWithVisualFilterName:selectedVisualNameFilter]); + QFileInfo sel(selectFile); if (sel.isDir()){ mCurrentDir = [qt_mac_QStringToNSString(sel.absoluteFilePath()) retain]; @@ -168,8 +169,9 @@ QT_USE_NAMESPACE mCurrentDir = [qt_mac_QStringToNSString(sel.absolutePath()) retain]; mCurrentSelection = new QString(sel.absoluteFilePath()); } + [mSavePanel setTitle:qt_mac_QStringToNSString(title)]; - [self createPopUpButton:selectedNameFilter hideDetails:hideNameFilterDetails]; + [self createPopUpButton:selectedVisualNameFilter hideDetails:hideNameFilterDetails]; [self createTextField]; [self createAccessory]; [mSavePanel setAccessoryView:mNameFilterDropDownList->size() > 1 ? mAccessoryView : nil]; @@ -350,7 +352,7 @@ QT_USE_NAMESPACE // This mDelegate function is called when the _name_ filter changes. Q_UNUSED(sender); QString selection = mNameFilterDropDownList->value([mPopUpButton indexOfSelectedItem]); - *mSelectedNameFilter = QT_PREPEND_NAMESPACE(qt_clean_filter_list)(selection); + *mSelectedNameFilter = [self findStrippedFilterWithVisualFilterName:selection]; [mSavePanel validateVisibleColumns]; [self updateProperties]; if (mPriv) @@ -499,6 +501,15 @@ QT_USE_NAMESPACE } } +- (QStringList) findStrippedFilterWithVisualFilterName:(QString)name +{ + for (int i=0; isize(); ++i) { + if (mNameFilterDropDownList->at(i).startsWith(name)) + return qt_clean_filter_list(mNameFilterDropDownList->at(i)); + } + return QStringList(); +} + - (void)createAccessory { NSRect accessoryRect = { { 0.0, 0.0 }, { 450.0, 33.0 } }; @@ -1039,8 +1050,6 @@ void QFileDialogPrivate::createNSOpenSavePanelDelegate() QT_MANGLE_NAMESPACE(QNSOpenSavePanelDelegate) *delegate = [[QT_MANGLE_NAMESPACE(QNSOpenSavePanelDelegate) alloc] initWithAcceptMode:acceptMode title:q->windowTitle() - nameFilters:q->nameFilters() - selectedNameFilter:q->selectedNameFilter() hideNameFilterDetails:q->testOption(QFileDialog::HideNameFilterDetails) qDirFilter:model->filter() fileOptions:opts -- cgit v0.12 From dafd0da322157ffd784374a810826821a180be24 Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Fri, 20 Aug 2010 10:21:39 +0200 Subject: QGraphicsView: fix few artefacts that can appear if the changed() signal is connected. Reviewed-by: bnilsen --- src/gui/graphicsview/qgraphicsview.cpp | 4 ++- tests/auto/qgraphicsview/tst_qgraphicsview.cpp | 40 +++++++++++++++++++------- 2 files changed, 33 insertions(+), 11 deletions(-) diff --git a/src/gui/graphicsview/qgraphicsview.cpp b/src/gui/graphicsview/qgraphicsview.cpp index 0674610..c8aca80 100644 --- a/src/gui/graphicsview/qgraphicsview.cpp +++ b/src/gui/graphicsview/qgraphicsview.cpp @@ -2596,9 +2596,11 @@ void QGraphicsView::updateScene(const QList &rects) // Convert scene rects to viewport rects. foreach (const QRectF &rect, rects) { - QRect xrect = transform.mapRect(rect).toRect(); + QRect xrect = transform.mapRect(rect).toAlignedRect(); if (!(d->optimizationFlags & DontAdjustForAntialiasing)) xrect.adjust(-2, -2, 2, 2); + else + xrect.adjust(-1, -1, 1, 1); if (!viewportRect.intersects(xrect)) continue; dirtyViewportRects << xrect; diff --git a/tests/auto/qgraphicsview/tst_qgraphicsview.cpp b/tests/auto/qgraphicsview/tst_qgraphicsview.cpp index 1cce687..7b5ac7a 100644 --- a/tests/auto/qgraphicsview/tst_qgraphicsview.cpp +++ b/tests/auto/qgraphicsview/tst_qgraphicsview.cpp @@ -244,6 +244,9 @@ private slots: void QTBUG_4151_clipAndIgnore(); void QTBUG_5859_exposedRect(); void QTBUG_7438_cursor(); + +public slots: + void dummySlot() {} }; void tst_QGraphicsView::initTestCase() @@ -3202,14 +3205,18 @@ void tst_QGraphicsView::scrollAfterResize() void tst_QGraphicsView::moveItemWhileScrolling_data() { QTest::addColumn("adjustForAntialiasing"); + QTest::addColumn("changedConnected"); - QTest::newRow("no adjust") << false; - QTest::newRow("adjust") << true; + QTest::newRow("no adjust") << false << false; + QTest::newRow("adjust") << true << false; + QTest::newRow("no adjust changedConnected") << false << true; + QTest::newRow("adjust changedConnected") << true << true; } void tst_QGraphicsView::moveItemWhileScrolling() { QFETCH(bool, adjustForAntialiasing); + QFETCH(bool, changedConnected); class MoveItemScrollView : public QGraphicsView { @@ -3253,6 +3260,8 @@ void tst_QGraphicsView::moveItemWhileScrolling() view.resize(200, 200); view.painted = false; view.show(); + if (changedConnected) + QObject::connect(view.scene(), SIGNAL(changed(QList)), this, SLOT(dummySlot())); QTest::qWaitForWindowShown(&view); QApplication::processEvents(); QTRY_VERIFY(view.painted); @@ -3691,24 +3700,32 @@ void tst_QGraphicsView::update2_data() { QTest::addColumn("penWidth"); QTest::addColumn("antialiasing"); + QTest::addColumn("changedConnected"); // Anti-aliased. - QTest::newRow("pen width: 0.0, antialiasing: true") << 0.0 << true; - QTest::newRow("pen width: 1.5, antialiasing: true") << 1.5 << true; - QTest::newRow("pen width: 2.0, antialiasing: true") << 2.0 << true; - QTest::newRow("pen width: 3.0, antialiasing: true") << 3.0 << true; + QTest::newRow("pen width: 0.0, antialiasing: true") << 0.0 << true << false; + QTest::newRow("pen width: 1.5, antialiasing: true") << 1.5 << true << false; + QTest::newRow("pen width: 2.0, antialiasing: true") << 2.0 << true << false; + QTest::newRow("pen width: 3.0, antialiasing: true") << 3.0 << true << false; // Aliased. - QTest::newRow("pen width: 0.0, antialiasing: false") << 0.0 << false; - QTest::newRow("pen width: 1.5, antialiasing: false") << 1.5 << false; - QTest::newRow("pen width: 2.0, antialiasing: false") << 2.0 << false; - QTest::newRow("pen width: 3.0, antialiasing: false") << 3.0 << false; + QTest::newRow("pen width: 0.0, antialiasing: false") << 0.0 << false << false; + QTest::newRow("pen width: 1.5, antialiasing: false") << 1.5 << false << false; + QTest::newRow("pen width: 2.0, antialiasing: false") << 2.0 << false << false; + QTest::newRow("pen width: 3.0, antialiasing: false") << 3.0 << false << false; + + // changed() connected + QTest::newRow("pen width: 0.0, antialiasing: false, changed") << 0.0 << false << true; + QTest::newRow("pen width: 1.5, antialiasing: true, changed") << 1.5 << true << true; + QTest::newRow("pen width: 2.0, antialiasing: false, changed") << 2.0 << false << true; + QTest::newRow("pen width: 3.0, antialiasing: true, changed") << 3.0 << true << true; } void tst_QGraphicsView::update2() { QFETCH(qreal, penWidth); QFETCH(bool, antialiasing); + QFETCH(bool, changedConnected); // Create a rect item. const QRectF rawItemRect(-50.4, -50.3, 100.2, 100.1); @@ -3719,6 +3736,9 @@ void tst_QGraphicsView::update2() // Add item to a scene. QGraphicsScene scene(-100, -100, 200, 200); + if (changedConnected) + QObject::connect(&scene, SIGNAL(changed(QList)), this, SLOT(dummySlot())); + scene.addItem(rect); // Create a view on the scene. -- cgit v0.12 From a3aeebff0afed0e974d20b088b14cdf2efa89d2b Mon Sep 17 00:00:00 2001 From: Tasuku Suzuki Date: Fri, 20 Aug 2010 12:46:47 +0200 Subject: add full width characters to ending() in linguist U+FF01 (FULLWIDTH EXCLAMATION MARK), U+FF1F (FULLWIDTH QUESTION MARK) and U+FF1A (FULLWIDTH COLON) Merge-request: 2455 Reviewed-by: Oswald Buddenhagen --- tools/linguist/linguist/mainwindow.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/tools/linguist/linguist/mainwindow.cpp b/tools/linguist/linguist/mainwindow.cpp index 163ef54..7d11823 100644 --- a/tools/linguist/linguist/mainwindow.cpp +++ b/tools/linguist/linguist/mainwindow.cpp @@ -142,10 +142,13 @@ static Ending ending(QString str, QLocale::Language lang) case 0x2048: // question exclamation mark case 0x2049: // exclamation question mark case 0x2762: // heavy exclamation mark ornament + case 0xff01: // full width exclamation mark + case 0xff1f: // full width question mark return End_Interrobang; case 0x003b: // greek 'compatibility' questionmark return lang == QLocale::Greek ? End_Interrobang : End_None; case 0x003a: // colon + case 0xff1a: // full width colon return End_Colon; case 0x2026: // horizontal ellipsis return End_Ellipsis; -- cgit v0.12 From a4d2844c99481fc7764ffd8436a2b79531a58d8b Mon Sep 17 00:00:00 2001 From: Tasuku Suzuki Date: Fri, 20 Aug 2010 12:36:15 +0200 Subject: qtconfig and qvfb internationalization fixes - install QTranslators in qtconfig and qvfb - add tr() to qvfb strings Merge-request: 783 Reviewed-by: Oswald Buddenhagen --- tools/qtconfig/main.cpp | 14 ++++++++++++ tools/qvfb/main.cpp | 13 +++++++++++ tools/qvfb/qvfb.cpp | 54 +++++++++++++++++++++++----------------------- tools/qvfb/qvfbratedlg.cpp | 10 ++++----- 4 files changed, 59 insertions(+), 32 deletions(-) diff --git a/tools/qtconfig/main.cpp b/tools/qtconfig/main.cpp index 24d044f..928cf01 100644 --- a/tools/qtconfig/main.cpp +++ b/tools/qtconfig/main.cpp @@ -42,6 +42,9 @@ #include "ui_previewwidgetbase.h" #include "mainwindow.h" #include +#include +#include +#include QT_USE_NAMESPACE @@ -50,6 +53,17 @@ int main(int argc, char **argv) Q_INIT_RESOURCE(qtconfig); QApplication app(argc, argv); + + QTranslator translator; + QTranslator qtTranslator; + QString sysLocale = QLocale::system().name(); + QString resourceDir = QLibraryInfo::location(QLibraryInfo::TranslationsPath); + if (translator.load(QLatin1String("qtconfig_") + sysLocale, resourceDir) + && qtTranslator.load(QLatin1String("qt_") + sysLocale, resourceDir)) { + app.installTranslator(&translator); + app.installTranslator(&qtTranslator); + } + MainWindow mw; mw.show(); return app.exec(); diff --git a/tools/qvfb/main.cpp b/tools/qvfb/main.cpp index d96b255..28aa7d4 100644 --- a/tools/qvfb/main.cpp +++ b/tools/qvfb/main.cpp @@ -43,6 +43,9 @@ #include #include +#include +#include +#include #include #include #include @@ -73,6 +76,16 @@ int runQVfb( int argc, char *argv[] ) QApplication app( argc, argv ); + QTranslator translator; + QTranslator qtTranslator; + QString sysLocale = QLocale::system().name(); + QString resourceDir = QLibraryInfo::location(QLibraryInfo::TranslationsPath); + if (translator.load(QLatin1String("qvfb_") + sysLocale, resourceDir) + && qtTranslator.load(QLatin1String("qt_") + sysLocale, resourceDir)) { + app.installTranslator(&translator); + app.installTranslator(&qtTranslator); + } + int width = 0; int height = 0; int depth = -32; // default, but overridable by skin diff --git a/tools/qvfb/qvfb.cpp b/tools/qvfb/qvfb.cpp index bc9e529..b4ccebc 100644 --- a/tools/qvfb/qvfb.cpp +++ b/tools/qvfb/qvfb.cpp @@ -398,47 +398,47 @@ void QVFb::createMenu(T *menu) QMenu* QVFb::createFileMenu() { - QMenu *file = new QMenu( "File", this ); - file->addAction( "Configure...", this, SLOT(configure()), 0 ); + QMenu *file = new QMenu( tr("&File"), this ); + file->addAction( tr("&Configure..."), this, SLOT(configure()), QKeySequence::Preferences ); file->addSeparator(); - file->addAction( "&Save image...", this, SLOT(saveImage()), 0 ); - file->addAction( "&Animation...", this, SLOT(toggleAnimation()), 0 ); + file->addAction( tr("&Save image..."), this, SLOT(saveImage()), QKeySequence::Save ); + file->addAction( tr("&Animation..."), this, SLOT(toggleAnimation()), 0 ); file->addSeparator(); - file->addAction( "&Quit", qApp, SLOT(quit()) ); + file->addAction( tr("&Quit"), qApp, SLOT(quit()), QKeySequence::Quit ); return file; } QMenu* QVFb::createViewMenu() { - viewMenu = new QMenu( "View", this ); - cursorAction = viewMenu->addAction( "Show &Cursor", this, + viewMenu = new QMenu( tr("&View"), this ); + cursorAction = viewMenu->addAction( tr("Show &Cursor"), this, SLOT(toggleCursor()) ); cursorAction->setCheckable(true); if ( view ) enableCursor(true); - viewMenu->addAction( "&Refresh Rate...", this, SLOT(changeRate()) ); + viewMenu->addAction( tr("&Refresh Rate..."), this, SLOT(changeRate()) ); viewMenu->addSeparator(); - viewMenu->addAction( "No rotation", this, SLOT(setRot0()) ); - viewMenu->addAction( "90\260 rotation", this, SLOT(setRot90()) ); - viewMenu->addAction( "180\260 rotation", this, SLOT(setRot180()) ); - viewMenu->addAction( "270\260 rotation", this, SLOT(setRot270()) ); + viewMenu->addAction( tr("&No rotation"), this, SLOT(setRot0()) ); + viewMenu->addAction( tr("&90\260 rotation"), this, SLOT(setRot90()) ); + viewMenu->addAction( tr("1&80\260 rotation"), this, SLOT(setRot180()) ); + viewMenu->addAction( tr("2&70\260 rotation"), this, SLOT(setRot270()) ); viewMenu->addSeparator(); - viewMenu->addAction( "Zoom scale &0.5", this, SLOT(setZoomHalf()) ); - viewMenu->addAction( "Zoom scale 0.75", this, SLOT(setZoom075()) ); - viewMenu->addAction( "Zoom scale &1", this, SLOT(setZoom1()) ); - viewMenu->addAction( "Zoom scale &2", this, SLOT(setZoom2()) ); - viewMenu->addAction( "Zoom scale &3", this, SLOT(setZoom3()) ); - viewMenu->addAction( "Zoom scale &4", this, SLOT(setZoom4()) ); + viewMenu->addAction( tr("Zoom scale &0.5"), this, SLOT(setZoomHalf()) ); + viewMenu->addAction( tr("Zoom scale 0.7&5"), this, SLOT(setZoom075()) ); + viewMenu->addAction( tr("Zoom scale &1"), this, SLOT(setZoom1()) ); + viewMenu->addAction( tr("Zoom scale &2"), this, SLOT(setZoom2()) ); + viewMenu->addAction( tr("Zoom scale &3"), this, SLOT(setZoom3()) ); + viewMenu->addAction( tr("Zoom scale &4"), this, SLOT(setZoom4()) ); viewMenu->addSeparator(); - viewMenu->addAction( "Zoom scale...", this, SLOT(setZoom()) ); + viewMenu->addAction( tr("Zoom &scale..."), this, SLOT(setZoom()) ); return viewMenu; } QMenu* QVFb::createHelpMenu() { - QMenu *help = new QMenu( "Help", this ); - help->addAction("About...", this, SLOT(about())); + QMenu *help = new QMenu( tr("&Help"), this ); + help->addAction(tr("&About..."), this, SLOT(about())); return help; } @@ -525,17 +525,17 @@ void QVFb::setZoom4() void QVFb::saveImage() { QImage img = view->image(); - QString filename = QFileDialog::getSaveFileName(this, "Save Main Screen image", "snapshot.png", "Portable Network Graphics (*.png)"); + QString filename = QFileDialog::getSaveFileName(this, tr("Save Main Screen image"), tr("snapshot.png"), tr("Portable Network Graphics (*.png)")); if (!filename.isEmpty()){ if(!img.save(filename,"PNG")) - QMessageBox::critical(this, "Save Main Screen Image", "Save failed. Check that you have permission to write to the target directory."); + QMessageBox::critical(this, tr("Save Main Screen Image"), tr("Save failed. Check that you have permission to write to the target directory.")); } if (secondaryView) { QImage img = view->image(); - QString filename = QFileDialog::getSaveFileName(this, "Save Second Screen image", "snapshot.png", "Portable Network Graphics (*.png)"); + QString filename = QFileDialog::getSaveFileName(this, tr("Save Second Screen image"), tr("snapshot.png"), tr("Portable Network Graphics (*.png)")); if (!filename.isEmpty()) { if(!img.save(filename,"PNG")) - QMessageBox::critical(this, "Save Second Screen Image", "Save failed. Check that you have permission to write to the target directory."); + QMessageBox::critical(this, tr("Save Second Screen Image"), tr("Save failed. Check that you have permission to write to the target directory.")); } } } @@ -577,7 +577,7 @@ void QVFb::setRate(int i) void QVFb::about() { - QMessageBox::about(this, "About QVFB", + QMessageBox::about(this, tr("About QVFB"), tr( "

The Qt for Embedded Linux Virtual X11 Framebuffer

" "

This application runs under Qt for X11, emulating a simple framebuffer, " "which the Qt for Embedded Linux server and clients can attach to just as if " @@ -586,7 +586,7 @@ void QVFb::about() "Linux applications under X11 without having to switch to a virtual console. " "This means you can comfortably use your other development tools such " "as GUI profilers and debuggers." - ); + )); } void QVFb::findSkins(const QString ¤tSkin) diff --git a/tools/qvfb/qvfbratedlg.cpp b/tools/qvfb/qvfbratedlg.cpp index e491bdf..a0cbb2f 100644 --- a/tools/qvfb/qvfbratedlg.cpp +++ b/tools/qvfb/qvfbratedlg.cpp @@ -55,7 +55,7 @@ QVFbRateDialog::QVFbRateDialog(int rate, QWidget *parent) QVBoxLayout *tl = new QVBoxLayout(this); tl->setMargin(5); - QLabel *label = new QLabel("Target frame rate:", this); + QLabel *label = new QLabel(tr("Target frame rate:"), this); tl->addWidget(label); QHBoxLayout *hl = new QHBoxLayout(); @@ -67,15 +67,15 @@ QVFbRateDialog::QVFbRateDialog(int rate, QWidget *parent) rateSlider->setValue(rate); hl->addWidget(rateSlider); connect(rateSlider, SIGNAL(valueChanged(int)), this, SLOT(rateChanged(int))); - rateLabel = new QLabel(QString("%1fps").arg(rate), this); + rateLabel = new QLabel(tr("%1fps").arg(rate), this); hl->addWidget(rateLabel); hl = new QHBoxLayout(); tl->addItem(hl); - QPushButton *pb = new QPushButton("OK", this); + QPushButton *pb = new QPushButton(tr("OK"), this); connect(pb, SIGNAL(clicked()), this, SLOT(ok())); hl->addWidget(pb); - pb = new QPushButton("Cancel", this); + pb = new QPushButton(tr("Cancel"), this); connect(pb, SIGNAL(clicked()), this, SLOT(cancel())); hl->addWidget(pb); } @@ -84,7 +84,7 @@ void QVFbRateDialog::rateChanged(int r) { if (rateSlider->value() != r) rateSlider->setValue(r); - rateLabel->setText(QString("%1fps").arg(r)); + rateLabel->setText(tr("%1fps").arg(r)); emit updateRate(r); } -- cgit v0.12 From 4ed1d49b650b41f1d9541b955717413330a733c9 Mon Sep 17 00:00:00 2001 From: Victor Ostashevsky Date: Fri, 20 Aug 2010 12:32:59 +0200 Subject: Ukrainian translation updated Some spell and stylistic fixes applied, new messages appeared in assistant and linguist translated and everything except xmlpatterns in qt also translated. Thanks KDE Ukrainian localisation team for some useful hints. Merge-request: 782 Reviewed-by: Oswald Buddenhagen --- translations/assistant_uk.ts | 763 ++- translations/designer_uk.ts | 24 +- translations/linguist_uk.ts | 450 +- translations/qt_help_uk.ts | 8 +- translations/qt_uk.ts | 10537 ++++++++++++++++++++++++----------------- translations/qtconfig_uk.ts | 8 +- translations/qvfb_uk.ts | 10 +- 7 files changed, 7341 insertions(+), 4459 deletions(-) diff --git a/translations/assistant_uk.ts b/translations/assistant_uk.ts index 78fd59d..c7aad83 100644 --- a/translations/assistant_uk.ts +++ b/translations/assistant_uk.ts @@ -76,12 +76,8 @@ Reason: Помилка ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñƒ колекції '%1': %2. - Error reading collection file '%1': %2 - Помилка Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñƒ колекції '%1': %2 - - Cannot load sqlite database driver! - Ðе можу завантажити драйвер бази даний SQLite! + Ðе можу завантажити драйвер бази даних SQLite! @@ -123,7 +119,7 @@ Reason: You are going to delete a Folder, this will also<br>remove it's content. Are you sure to continue? - Ви збираєтеÑÑŒ видалити теку, що призведе до Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ñ—Ñ— зміÑту.<br>Ви впевнені, що хочете продовжити? + Ви збираєтеÑÑŒ видалити теку, що призведе до Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ñ—Ñ— вміÑту.<br>Ви впевнені, що хочете продовжити? Manage Bookmarks... @@ -214,7 +210,7 @@ Reason: You are goingto delete a Folder, this will also<br> remove it's content. Are you sure to continue? - Ви збираєтеÑÑŒ видалити теку, що призведе до Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ñ—Ñ— зміÑту.<br>Ви впевнені, що хочете продовжити? + Ви збираєтеÑÑŒ видалити теку, що призведе до Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ñ—Ñ— вміÑту.<br>Ви впевнені, що хочете продовжити? Delete Folder @@ -354,7 +350,7 @@ Reason: Missing filter argument. - ВідÑутній аргумент фільтру. + ВідÑутній аргумент фільтра. Error @@ -377,14 +373,119 @@ Reason: + ConversionWizard + + Help Conversion Wizard + МайÑтер ÐºÐ¾Ð½Ð²ÐµÑ€Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð¾Ð²Ñ–Ð´ÐºÐ¸ + + + Converting %1... + Конвертую %1... + + + Writing help collection file... + ЗапиÑую файл колекції довідки... + + + Done. + Виконано. + + + + FilesPage + + Form + Форма + + + Files: + Файли: + + + Remove + Видалити + + + Remove All + Видалити вÑе + + + Unreferenced Files + Файли,на Ñкі немає поÑилань + + + Remove files which are neither referenced by a keyword nor by the TOC. + Видаліть файли, на Ñкі немає поÑилань ні за ключовим Ñловом, ні зі зміÑту. + + + <p><b>Warning:</b> Be aware when removing images or stylesheets since those files are not directly referenced by the .adp or .dcf file.</p> + <p><b>ПопередженнÑ:</b> Будьте уважними, при видаленні зображень чи таблиць Ñтилів, оÑкільки на ці файли не має прÑмих поÑилань файла .adp чи .dcf.</p> + + + FilterNameDialogClass Add Filter Name - Додати назву фільтру + Додати назву фільтра Filter Name: - Ðазва фільтру: + Ðазва фільтра: + + + + FilterPage + + Form + Форма + + + Filter attributes for current documentation (comma separated list): + Ðтрибути фільтра Ð´Ð»Ñ Ð¿Ð¾Ñ‚Ð¾Ñ‡Ð½Ð¾Ñ— документації (ÑпиÑок, розділений комою): + + + Custom Filters + КориÑтувацькі фільтри + + + 1 + 1 + + + 2 + 2 + + + Add + Додати + + + Remove + Видалити + + + Filter Settings + ÐÐ°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ñ„Ñ–Ð»ÑŒÑ‚Ñ€Ñ–Ð² + + + Specify the filter attributes for the documentation. If filter attributes are used, also define a custom filter for it. Both, the filter attributes and the custom filters are optional. + Вкажіть атрибути фільтра Ð´Ð»Ñ Ð´Ð¾ÐºÑƒÐ¼ÐµÐ½Ñ‚Ð°Ñ†Ñ–Ñ—. Якщо викориÑтовуютьÑÑ Ð°Ñ‚Ñ€Ð¸Ð±ÑƒÑ‚Ð¸ фільтра, то, також, визначіть кориÑтувацький фільтр Ð´Ð»Ñ Ð½ÑŒÐ¾Ð³Ð¾. Як атрибути фільтра, так Ñ– кориÑтувацькі фільтри, Ñ” необов'Ñзковими. + + + Filter Name + Ðазва фільтра + + + Filter Attributes + Ðтрибути фільтра + + + The custom filter '%1' is defined multiple times. + КориÑтувацький фільтр '%1' визначено декілька раз. + + + The attributes for custom filter '%1' are defined multiple times. + Ðтрибути Ð´Ð»Ñ ÐºÐ¾Ñ€Ð¸Ñтувацького фільтра '%1' визначено декілька раз. @@ -407,6 +508,13 @@ Reason: + FinishPage + + Converting File + ÐšÐ¾Ð½Ð²ÐµÑ€Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñƒ + + + FontPanel Font @@ -414,7 +522,7 @@ Reason: &Writing system - СиÑтема &пиÑьма + СиÑтема &пиÑемноÑÑ‚Ñ– &Family @@ -430,6 +538,45 @@ Reason: + GeneralPage + + Form + Форма + + + Namespace: + ПроÑÑ‚Ñ–Ñ€ імен: + + + Virtual Folder: + Віртуальна тека: + + + General Settings + Загальні Ð½Ð°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ + + + Specify the namespace and the virtual folder for the documentation. + Вкажіть проÑÑ‚Ñ–Ñ€ імен та віртуальну теку Ð´Ð»Ñ Ð´Ð¾ÐºÑƒÐ¼ÐµÐ½Ñ‚Ð°Ñ†Ñ–Ñ—. + + + Namespace Error + Помилка проÑтору імен + + + The namespace contains some invalid characters. + ПроÑÑ‚Ñ–Ñ€ імен міÑтить деÑкі неприпуÑтимі Ñимволи. + + + Virtual Folder Error + Помилка віртуальної теки + + + The virtual folder contains some invalid characters. + Віртуальна тека міÑтить деÑкі неприпуÑтимі Ñимволи. + + + HelpViewer <title>about:blank</title> @@ -453,10 +600,37 @@ Reason: + IdentifierPage + + Form + Форма + + + Create identifiers + Створювати ідентифікатори + + + Global prefix: + Глобальний префікÑ: + + + Inherit prefix from file names + УÑпадковувати Ð¿Ñ€ÐµÑ„Ñ–ÐºÑ Ð· імен файлів + + + Identifiers + Ідентифікатори + + + This page allows you to create identifiers from the keywords found in the .adp or .dcf file. + Ð¦Ñ Ñторінка дозволÑÑ” вам Ñтворювати ідентифікатори з ключових Ñлів, знайдених в файлі .adp чи .dcf. + + + IndexWindow &Look for: - + &Шукати: Open Link @@ -468,6 +642,53 @@ Reason: + InputPage + + Form + Форма + + + File name: + Ім'Ñ Ñ„Ð°Ð¹Ð»Ñƒ: + + + ... + ... + + + Input File + Вхідний файл + + + Specify the .adp or .dcf file you want to convert to the new Qt help project format and/or collection format. + Вкажіть файл .adp чи .dcf, Ñкий ви бажаєте Ñконвертувати до нового формату проекту довідки Qt та/або формату колекції. + + + Open file + Відкрити файл + + + Qt Help Files (*.adp *.dcf) + Файли довідки Qt (*.adp *.dcf) + + + File Open Error + Помилка Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ñ„Ð°Ð¹Ð»Ñƒ + + + The specified file could not be opened! + Ðе вдалоÑÑŒ відкрити вказаний файл! + + + File Parsing Error + Помилка розбору файлу + + + Parsing error in line %1! + Помилка розбору в Ñ€Ñдку %1! + + + InstallDialog Install Documentation @@ -499,11 +720,11 @@ Reason: Downloading documentation info... - Завантажую інформацію про документацію... + Звантажую інформацію про документацію... Download canceled. - Ð—Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ ÑкаÑоване. + Ð—Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ ÑкаÑоване. Done. @@ -519,19 +740,19 @@ Reason: Downloading %1... - Завантажую %1... + Звантажую %1... Download failed: %1. - Ð—Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð¿Ñ€Ð¾Ð²Ð°Ð»Ð¸Ð»Ð¾ÑÑŒ: %1. + Ð—Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð¿Ñ€Ð¾Ð²Ð°Ð»Ð¸Ð»Ð¾ÑÑŒ: %1. Documentation info file is corrupt! - Файл інформації про документації пошкоджений! + Файл інформації про документацію пошкоджений! Download failed: Downloaded file is corrupted. - Ð—Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð¿Ñ€Ð¾Ð²Ð°Ð»Ð¸Ð»Ð¾ÑÑŒ: Завантажений файл пошкоджений. + Ð—Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð¿Ñ€Ð¾Ð²Ð°Ð»Ð¸Ð»Ð¾ÑÑŒ: Звантажений файл пошкоджений. Installing documentation %1... @@ -548,7 +769,7 @@ Reason: MainWindow Index - Ð†Ð½Ð´ÐµÐºÑ + Покажчик Contents @@ -564,7 +785,7 @@ Reason: Looking for Qt Documentation... - + Пошук документації Qt... &File @@ -672,7 +893,7 @@ Reason: &Home - &Додому + &Домівка ALT+Home @@ -748,7 +969,7 @@ Reason: Filter Toolbar - Панель фільтру + Панель Ñ„Ñ–Ð»ÑŒÑ‚Ñ€ÑƒÐ²Ð°Ð½Ð½Ñ Filtered by: @@ -772,7 +993,7 @@ Reason: Updating search index - ОновлюєтьÑÑ Ñ–Ð½Ð´ÐµÐºÑ Ð¿Ð¾ÑˆÑƒÐºÑƒ + ОновлюєтьÑÑ Ð¿Ð¾ÐºÐ°Ð¶Ñ‡Ð¸Ðº пошуку Could not register file '%1': %2 @@ -780,6 +1001,92 @@ Reason: + OutputPage + + Form + Форма + + + Project file name: + Ім'Ñ Ñ„Ð°Ð¹Ð»Ñƒ проекту: + + + Collection file name: + Ім'Ñ Ñ„Ð°Ð¹Ð»Ñƒ колекції: + + + Output File Names + Імена вихідний файлів + + + Specify the file names for the output files. + Вкажіть імена вихідних файлів. + + + Convert... + Конвертувати... + + + Qt Help Project File + Файл проекту довідки Qt + + + Qt Help Collection Project File + Файл проекту колекції довідки Qt + + + The specified file %1 already exist. + +Do you want to remove it? + Вказаний файл %1 вже Ñ–Ñнує + +Бажаєте видалити його? + + + Remove + Видалити + + + Cancel + СкаÑувати + + + + PathPage + + Form + Форма + + + File filters: + Фільтри файлів: + + + Documentation source file paths: + ШлÑхи вхідних файлів документації: + + + Add + Додати + + + Remove + Видалити + + + Source File Paths + ШлÑхи вхідних файлів + + + Specify the paths where the sources files are located. By default, all files in those directories matched by the file filter will be included. + Вкажіть шлÑхи, де розташовані вхідні файли. Зазвичай, уÑÑ– файли в цих теках, що відповідають фільтру файлів, будуть включені. + + + Source File Path + ШлÑÑ… вхідного файлу + + + PreferencesDialog Add Documentation @@ -803,7 +1110,7 @@ Reason: Some documents currently opened in Assistant reference the documentation you are attempting to remove. Removing the documentation will close those documents. - ДеÑкі документи, що зараз відкриті в Assistant пов'Ñзані з документацією, Ñку ви намагаєтеÑÑŒ видалити. Ð’Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ð´Ð¾ÐºÑƒÐ¼ÐµÐ½Ñ‚Ð°Ñ†Ñ–Ñ— призведе до Ð·Ð°ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ñ†Ð¸Ñ… документів. + ДеÑкі документи, що зараз відкриті в Assistant, пов'Ñзані з документацією, Ñку ви намагаєтеÑÑŒ видалити. Ð’Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ð´Ð¾ÐºÑƒÐ¼ÐµÐ½Ñ‚Ð°Ñ†Ñ–Ñ— призведе до Ð·Ð°ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ñ†Ð¸Ñ… документів. Cancel @@ -838,7 +1145,7 @@ Reason: Application - Додаток + Програма Filters @@ -890,7 +1197,7 @@ Reason: Show a blank page - Показувати пуÑту Ñторінку + Показувати порожню Ñторінку Show my tabs from last session @@ -906,7 +1213,7 @@ Reason: Blank Page - ПуÑта Ñторінка + ÐŸÐ¾Ñ€Ð¾Ð¶Ð½Ñ Ñторінка Restore to default @@ -914,6 +1221,408 @@ Reason: + QCLuceneResultWidget + + Search Results + Результати пошуку + + + Note: + Примітка: + + + The search results may not be complete since the documentation is still being indexed! + Результати пошуку можуть бути не повні, оÑкільки Ð´Ð¾ÐºÑƒÐ¼ÐµÐ½Ñ‚Ð°Ñ†Ñ–Ñ Ð´Ð¾ÑÑ– індекÑуєтьÑÑ! + + + Your search did not match any documents. + Ваш пошук не повернув результатів. + + + (The reason for this might be that the documentation is still being indexed.) + (Причиною цього може бути те, що Ð´Ð¾ÐºÑƒÐ¼ÐµÐ½Ñ‚Ð°Ñ†Ñ–Ñ Ð´Ð¾ÑÑ– індекÑуєтьÑÑ.) + + + + QCollectionGenerator + + Unknown token at line %1. + Ðевідомий токен в Ñ€Ñдку %1. + + + Unknown token at line %1. Expected "QtHelpCollectionProject"! + Ðевідомий токен в Ñ€Ñдку %1. ОчікувавÑÑ "QtHelpCollectionProject"! + + + Missing output file name! + ВідÑутнє ім'Ñ Ð²Ð¸Ñ…Ñ–Ð´Ð½Ð¾Ð³Ð¾ файлу! + + + Missing collection config file! + ВідÑутній файл налаштувань колекції! + + + +Usage: + +qcollectiongenerator <collection-config-file> [options] + + -o <collection-file> Generates a collection file + called <collection-file>. If + this option is not specified + a default name will be used. + -v Displays the version of + qcollectiongenerator. + + + +ВикориÑтаннÑ: + +qcollectiongenerator <файл-налаштувань-колекції> [опції] + + -o <файл-колекції> Згенерувати файл колекції з іменем + <файл-колекції>. Якщо цю опцію не + вказано, то викориÑтовуватиметьÑÑ + типове ім'Ñ + -v Показати верÑÑ–ÑŽ qcollectiongenerator. + + + + + + QHelp + + Untitled + Без назви + + + + QHelpCollectionHandler + + The collection file '%1' is not set up yet! + Файл колекції '%1' ще не вÑтановлено! + + + Cannot load sqlite database driver! + Ðе можу завантажити драйвер бази даних SQLite! + + + Cannot open collection file: %1 + Ðеможливо відкрити файл колекції: %1 + + + Cannot create tables in file %1! + Ðеможливо Ñтворити таблиці в файлі %1! + + + The collection file '%1' already exists! + Файл колекції '%1' вже Ñ–Ñнує! + + + Cannot create directory: %1 + Ðеможливо Ñтворити теку: %1 + + + Cannot copy collection file: %1 + Ðеможливо Ñкопіювати файл колекції: %1 + + + Unknown filter '%1'! + Ðевідомий фільтр '%1'! + + + Cannot register filter %1! + Ðеможливо зареєÑтрувати фільтр %1! + + + Cannot open documentation file %1! + Ðеможливо відкрити файл документації %1! + + + Invalid documentation file '%1'! + Ðеправильний файл документації '%1'! + + + The namespace %1 was not registered! + ПроÑÑ‚Ñ–Ñ€ імен %1 не зареєÑтровано! + + + Namespace %1 already exists! + ПроÑÑ‚Ñ–Ñ€ імен %1 вже Ñ–Ñнує! + + + Cannot register namespace '%1'! + Ðеможливо зареєÑтрувати проÑÑ‚Ñ–Ñ€ імен '%1'! + + + Cannot open database '%1' to optimize! + Ðеможливо відкрити базу даних '%1' Ð´Ð»Ñ Ð¾Ð¿Ñ‚Ð¸Ð¼Ñ–Ð·Ð°Ñ†Ñ–Ñ—! + + + + QHelpDBReader + + Cannot open database '%1' '%2': %3 + The placeholders are: %1 - The name of the database which cannot be opened %2 - The unique id for the connection %3 - The actual error string + Ðеможливо відкрити базу даних: '%1' '%2': %3 + + + + QHelpEngineCore + + Cannot open documentation file %1: %2! + Ðеможливо файл документації %1: %2! + + + The specified namespace does not exist! + Вказаний проÑÑ‚Ñ–Ñ€ імен не Ñ–Ñнує! + + + + QHelpGenerator + + Invalid help data! + Ðеправильні дані довідки! + + + No output file name specified! + Ðе вказане ім'Ñ Ð²Ð¸Ñ…Ñ–Ð´Ð½Ð¾Ð³Ð¾ файлу! + + + The file %1 cannot be overwritten! + Ðеможливо перезапиÑати файл %1! + + + Building up file structure... + Побудова Ñтруктури файлу.... + + + Cannot open data base file %1! + Ðеможливо відкрити файл бази даних %1! + + + Cannot register namespace %1! + Ðеможливо зареєÑтрувати проÑÑ‚Ñ–Ñ€ імен %1! + + + Insert custom filters... + Ð’Ñтавка фільтрів кориÑтувача... + + + Insert help data for filter section (%1 of %2)... + Ð’Ñтавка даних довідки Ð´Ð»Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ фільтра (%1 з %2)... + + + Documentation successfully generated. + Документацію уÑпішно згенеровано. + + + Some tables already exist! + ДеÑкі таблиці вже Ñ–Ñнують! + + + Cannot create tables! + Ðеможливо Ñтворити таблиці! + + + Cannot register virtual folder! + Ðеможливо зареєÑтрувати віртуальну теку! + + + Insert files... + Ð’Ñтавка файлів... + + + The referenced file %1 must be inside or within a subdirectory of (%2). Skipping it. + Файл %1 має бути вÑередині підтеки (%2). ПропуÑкаємо його. + + + The file %1 does not exist! Skipping it. + Файл %1 не Ñ–Ñнує! ПропуÑкаємо його. + + + Cannot open file %1! Skipping it. + Ðеможливо відкрити файл %1! ПропуÑкаємо його. + + + The filter %1 is already registered! + Фільтр %1 вже зареєÑтровано! + + + Cannot register filter %1! + Ðеможливо зареєÑтрувати фільтр %1! + + + Insert indices... + Ð’Ñтавка індекÑів... + + + Insert contents... + Ð’Ñтавка зміÑту... + + + Cannot insert contents! + Ðеможливо вÑтавити зміÑÑ‚! + + + Cannot register contents! + Ðеможливо зареєÑтрувати зміÑÑ‚! + + + File '%1' does not exist. + Файл '%1' не Ñ–Ñнує. + + + File '%1' cannot be opened. + Ðеможливо відкрити файл '%1'. + + + File '%1' contains an invalid link to file '%2' + Файл '%1' міÑтить неправильне поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð´Ð¾ файлу '%2' + + + Invalid links in HTML files. + Ðеправильні поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð² файлах HTML. + + + Missing output file name! + ВідÑутнє ім'Ñ Ð²Ð¸Ñ…Ñ–Ð´Ð½Ð¾Ð³Ð¾ файлу! + + + Missing Qt help project file! + ВідÑутній файл проекту колекції довідки Qt! + + + +Usage: + +qhelpgenerator <help-project-file> [options] + + -o <compressed-file> Generates a Qt compressed help + file called <compressed-file>. + If this option is not specified + a default name will be used. + -c Checks whether all links in HTML files + point to files in this help project. + -v Displays the version of + qhelpgenerator. + + + +ВикориÑтаннÑ: + +qhelpgenerator <файл-проекту-довідки> [опції] + + -o <ÑтиÑнений-файл> Згенерувати ÑтиÑнений файл довідки + з іменем <ÑтиÑнений-файл>. Якщо цю + опцію не вказано, то буде викориÑтане + типове ім'Ñ. + -c Перевірити, що уÑÑ– поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð² файлах + HTML files вказують на файли в цьому + проекті довідки. + -v Показати верÑÑ–ÑŽ qhelpgenerator. + + + + + + QHelpProject + + Unknown token. + Ðевідомий токен. + + + Unknown token. Expected "QtHelpProject"! + Ðевідомий токен. ОчікувавÑÑ "QtHelpProject"! + + + Error in line %1: %2 + Помилка в Ñ€Ñдку %1: %2 + + + Virtual folder has invalid syntax. + Віртуальна тека має неправильний ÑинтакÑиÑ. + + + Namespace has invalid syntax. + ПроÑÑ‚Ñ–Ñ€ імен має неправильний ÑинтакÑиÑ. + + + Missing namespace in QtHelpProject. + ВідÑутній проÑÑ‚Ñ–Ñ€ імен в QtHelpProject. + + + Missing virtual folder in QtHelpProject + ВідÑÑƒÑ‚Ð½Ñ Ð²Ñ–Ñ€Ñ‚ÑƒÐ°Ð»ÑŒÐ½Ð° тека в QtHelpProject + + + Missing attribute in keyword at line %1. + ВідÑутній атрибут в ключовому Ñлові на Ñ€Ñдку %1. + + + The input file %1 could not be opened! + Ðеможливо відкрити вхідний файл %1! + + + + QHelpSearchQueryWidget + + Search for: + Шукати: + + + Previous search + Попередній пошук + + + Next search + ÐаÑтупний пошук + + + Search + Пошук + + + Advanced search + Розширений пошук + + + words <B>similar</B> to: + Ñлова <B>Ñхожі</B> на: + + + <B>without</B> the words: + <B>без</B> Ñлів: + + + with <B>exact phrase</B>: + з <B>точною фразою</B>: + + + with <B>all</B> of the words: + з <B>уÑіма</B> Ñловами: + + + with <B>at least one</B> of the words: + з <B>щонайменше одним</B> зі Ñлів: + + + + QHelpSearchResultWidget + + %1 - %2 of %n Hits + + %1 - %2 з %n збігу + %1 - %2 з %n збігів + %1 - %2 з %n збігів + + + + 0 - 0 of 0 Hits + 0 - 0 of 0 збігів + + + RemoteControl Debugging Remote Control diff --git a/translations/designer_uk.ts b/translations/designer_uk.ts index 24b2a44..ae27e67 100644 --- a/translations/designer_uk.ts +++ b/translations/designer_uk.ts @@ -657,7 +657,7 @@ Please run it through <b>uic3&nbsp;-convert</b> to convert it to Qt-4's ui format. - Будь-лаÑка, пропуÑÑ‚Ñ–Ñ‚ÑŒ його через <b>uic3&nbsp;-convert</b>, щоб Ñконвертувати до формату Qt-4. + Будь лаÑка, пропуÑÑ‚Ñ–Ñ‚ÑŒ його через <b>uic3&nbsp;-convert</b>, щоб Ñконвертувати до формату Qt-4. This file cannot be read because the extra info extension failed to load. @@ -725,15 +725,15 @@ The skin directory '%1' does not contain a configuration file. - Тека обкладинки '%1' не міÑтить конфігураційного файлу. + Тека обкладинки '%1' не міÑтить файлу налаштувань. The skin configuration file '%1' could not be opened. - Ðеможливо відкрити конфігураційний файл '%1'. + Ðеможливо відкрити файл налаштувань '%1'. The skin configuration file '%1' could not be read: %2 - Ðеможливо прочитати конфігураційний файл '%1': %2 + Ðеможливо прочитати файл налаштувань '%1': %2 Syntax error: %1 @@ -761,7 +761,7 @@ Mismatch in number of areas, expected %1, got %2. - Ðе Ñпівпадає кількіÑÑ‚ÑŒ облаÑтей, очікувалоÑÑŒ %1, отримано %2. + Ðе збігаєтьÑÑ ÐºÑ–Ð»ÑŒÐºÑ–ÑÑ‚ÑŒ облаÑтей, очікувалоÑÑŒ %1, отримано %2. @@ -1532,7 +1532,7 @@ Would you like to retry? Please close all forms to enable the loading of additional fonts. - Будь-лаÑка, закрийте уÑÑ– форми, щоб дозволити Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð´Ð¾Ð´Ð°Ñ‚ÐºÐ¾Ð²Ð¸Ñ… шрифтів. + Будь лаÑка, закрийте уÑÑ– форми, щоб дозволити Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð´Ð¾Ð´Ð°Ñ‚ÐºÐ¾Ð²Ð¸Ñ… шрифтів. Printed %1. @@ -1693,7 +1693,7 @@ Would you like to retry? The class attribute for the class %1 does not match the class name %2. - Ðтрибут "клаÑ" Ð´Ð»Ñ ÐºÐ»Ð°Ñу %1 не Ñпівпадає з іменем клаÑу %2. + Ðтрибут "клаÑ" Ð´Ð»Ñ ÐºÐ»Ð°Ñу %1 не збігаєтьÑÑ Ð· іменем клаÑу %2. @@ -2736,7 +2736,7 @@ This could for example be a language extension like "_de". <p>The selected file:</p><p>%1</p><p>is outside of the current resource file's directory:</p><p>%2</p><p>Please select another path within this directory.<p> - <p>Обраний файл</p><p>%1</p><p>знаходитьÑÑ Ð¿Ð¾Ð·Ð° межами батьківÑької теки поточного файлу реÑурÑів.</p><p>%2</p>Будь-лаÑка, оберіть інший шлÑÑ… вÑередині цієї теки.<p><p> + <p>Обраний файл</p><p>%1</p><p>знаходитьÑÑ Ð¿Ð¾Ð·Ð° межами батьківÑької теки поточного файлу реÑурÑів.</p><p>%2</p>Будь лаÑка, оберіть інший шлÑÑ… вÑередині цієї теки.<p><p> Could not overwrite %1. @@ -4480,13 +4480,13 @@ Do you want overwrite the template? The current object already has a property named '%1'. Please select another, unique one. Поточний об'єкт вже має влаÑтивіÑÑ‚ÑŒ з іменем '%1'. -Будь-лаÑка, оберіть інше, унікальне ім'Ñ. +Будь лаÑка, оберіть інше, унікальне ім'Ñ. The '_q_' prefix is reserved for the Qt library. Please select another name. ÐŸÑ€ÐµÑ„Ñ–ÐºÑ '_q_' зарезервовано Ð´Ð»Ñ Ð±Ñ–Ð±Ð»Ñ–Ð¾Ñ‚ÐµÐºÐ¸ Qt. -Будь-лаÑка, оберіть інше ім'Ñ. +Будь лаÑка, оберіть інше ім'Ñ. @@ -5715,7 +5715,7 @@ Class: %2 qdesigner_internal::WidgetDataBase A custom widget plugin whose class name (%1) matches that of an existing class has been found. - КориÑтувацький додаток віджета з іменем клаÑу (%1) Ñпівпадає з Ñ–Ñнуючим клаÑом. + КориÑтувацький додаток віджета з іменем клаÑу (%1) збігаєтьÑÑ Ð· Ñ–Ñнуючим клаÑом. @@ -5733,7 +5733,7 @@ Class: %2 A class name mismatch occurred when creating a widget using the custom widget factory registered for widgets of class %1. It returned a widget of class %2. - СталоÑÑ Ð½ÐµÑÐ¿Ñ–Ð²Ð¿Ð°Ð´Ñ–Ð½Ð½Ñ Ñ–Ð¼ÐµÐ½Ñ– клаÑу під Ñ‡Ð°Ñ ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð²Ñ–Ð´Ð¶ÐµÑ‚Ð°, викориÑтовуючи кориÑтувацьку фабрику віджетів, що зареєÑтрована Ð´Ð»Ñ ÐºÐ»Ð°Ñу %1. Вона повернула віджет клаÑу %2. + СталаÑÑ Ñ€Ð¾Ð·Ð±Ñ–Ð¶Ð½Ñ–ÑÑ‚ÑŒ імені клаÑу під Ñ‡Ð°Ñ ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð²Ñ–Ð´Ð¶ÐµÑ‚Ð°, викориÑтовуючи кориÑтувацьку фабрику віджетів, що зареєÑтрована Ð´Ð»Ñ ÐºÐ»Ð°Ñу %1. Вона повернула віджет клаÑу %2. %1 Widget diff --git a/translations/linguist_uk.ts b/translations/linguist_uk.ts index 92d16dd..6e58be5 100644 --- a/translations/linguist_uk.ts +++ b/translations/linguist_uk.ts @@ -64,7 +64,7 @@ Searching, please wait... - ЗдійÑнюєтьÑÑ Ð¿Ð¾ÑˆÑƒÐº, будь-лаÑка, зачекайте... + ЗдійÑнюєтьÑÑ Ð¿Ð¾ÑˆÑƒÐº, будь лаÑка, зачекайте... &Cancel @@ -211,7 +211,7 @@ Will assume a single universal form. Click here to find the next occurrence of the text you typed in. - Клацніть тут, щоб знайти наÑтупне ÑÐ¿Ñ–Ð²Ð¿Ð°Ð´Ñ–Ð½Ð½Ñ Ð´Ð»Ñ Ð²Ð²ÐµÐ´ÐµÐ½Ð¾Ð³Ð¾ вами текÑту. + Клацніть тут, щоб знайти наÑтупний збіг Ð´Ð»Ñ Ð²Ð²ÐµÐ´ÐµÐ½Ð¾Ð³Ð¾ вами текÑту. Find Next @@ -294,6 +294,147 @@ Will assume a single universal form. + LUpdate + + lupdate warning: Codec for tr() '%1' disagrees with existing file's codec '%2'. Expect trouble. + + Ð¿Ð¾Ð¿ÐµÑ€ÐµÐ´Ð¶ÐµÐ½Ð½Ñ lupdate: Кодек Ð´Ð»Ñ tr() '%1' не узгоджуєтьÑÑ Ð· Ñ–Ñнуючим кодеком файлу '%2'. Очікуйте неприємноÑтей. + + + + lupdate warning: Specified target language '%1' disagrees with existing file's language '%2'. Ignoring. + + Ð¿Ð¾Ð¿ÐµÑ€ÐµÐ´Ð¶ÐµÐ½Ð½Ñ lupdate: Вказана мова перекладу '%1' не узгоджуєтьÑÑ Ð· Ñ–Ñнуючою мовою файлу '%2'. Ігнорую. + + + + lupdate warning: Specified source language '%1' disagrees with existing file's language '%2'. Ignoring. + + Ð¿Ð¾Ð¿ÐµÑ€ÐµÐ´Ð¶ÐµÐ½Ð½Ñ lupdate: Вказана мова оригіналу '%1' не узгоджуєтьÑÑ Ð· Ñ–Ñнуючою мовою файлу '%2'. Ігнорую. + + + + lupdate warning: Codec for source '%1' is invalid. Falling back to codec for tr(). + + Ð¿Ð¾Ð¿ÐµÑ€ÐµÐ´Ð¶ÐµÐ½Ð½Ñ lupdate: Кодек Ð´Ð»Ñ Ð´Ð¶ÐµÑ€ÐµÐ»Ð° '%1' неправильний. ПовертаємоÑÑŒ до викориÑÑ‚Ð°Ð½Ð½Ñ ÐºÐ¾Ð´ÐµÐºÑƒ Ð´Ð»Ñ tr(). + + + + The option -target-language requires a parameter. + + ÐžÐ¿Ñ†Ñ–Ñ -target-language вимагає параметра. + + + + The option -source-language requires a parameter. + + ÐžÐ¿Ñ†Ñ–Ñ -source-language вимагає параметра. + + + + The option -disable-heuristic requires a parameter. + + ÐžÐ¿Ñ†Ñ–Ñ -disable-heuristic вимагає параметра. + + + + Invalid heuristic name passed to -disable-heuristic. + + Ðеправильна назва евриÑтики Ð´Ð»Ñ -disable-heuristic. + + + + The option -locations requires a parameter. + + ÐžÐ¿Ñ†Ñ–Ñ -locations вимагає параметра. + + + + Invalid parameter passed to -locations. + + Ðеправильний параметр Ð´Ð»Ñ -locations. + + + + The -codecfortr option should be followed by a codec name. + + За опцією -codecfortr має Ñлідувати назва кодека. + + + + The -extensions option should be followed by an extension list. + + За опцією -extensions має Ñлідувати ÑпиÑок розширень. + + + + The -pro option should be followed by a filename of .pro file. + + За опцією -pro має Ñлідувати ім'Ñ .pro файлу. + + + + The -I option should be followed by a path. + + За опцією -l має Ñлідувати шлÑÑ…. + + + + Unrecognized option '%1'. + + Ðерозпізнана Ð¾Ð¿Ñ†Ñ–Ñ '%1'. + + + + lupdate error: List file '%1' is not readable. + + помилка lupdate: Ðеможливо прочитати файл ÑпиÑку '%1'. + + + + lupdate warning: For some reason, '%1' is not writable. + + Ð¿Ð¾Ð¿ÐµÑ€ÐµÐ´Ð¶ÐµÐ½Ð½Ñ lupdate: З певних причин в '%1' не можливо запиÑати. + + + + lupdate error: File '%1' has no recognized extension. + + помилка lupdate: Файл '%1' має невідоме розширеннÑ. + + + + lupdate error: File '%1' does not exist. + + помилка lupdate: Файл '%1' не Ñ–Ñнує. + + + + lupdate warning: -target-language usually only makes sense with exactly one TS file. + + Ð¿Ð¾Ð¿ÐµÑ€ÐµÐ´Ð¶ÐµÐ½Ð½Ñ lupdate: ВикориÑÑ‚Ð°Ð½Ð½Ñ -target-language, зазвичай, має ÑÐµÐ½Ñ Ð»Ð¸ÑˆÐµ з одним файлом TS. + + + + lupdate warning: -codecfortr has no effect without -ts. + + Ð¿Ð¾Ð¿ÐµÑ€ÐµÐ´Ð¶ÐµÐ½Ð½Ñ lupdate: -codecfortr не дає ефекту без -ts. + + + + lupdate warning: no TS files specified. Only diagnostics will be produced. + + Ð¿Ð¾Ð¿ÐµÑ€ÐµÐ´Ð¶ÐµÐ½Ð½Ñ lupdate: не вказано файлів TS. ЗдійÑнюватиметьÑÑ Ð»Ð¸ÑˆÐµ діагноÑтика. + + + + lupdate error: Both project and source files / include paths specified. + + помилка lupdate: ОдночаÑно вказані файл проекту та вхідні файли / шлÑхи Ð´Ð»Ñ Ð²ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ. + + + + MainWindow MainWindow @@ -613,7 +754,7 @@ Will assume a single universal form. Toggle the validity check of accelerators, i.e. whether the number of ampersands in the source and translation text is the same. If the check fails, a message is shown in the warnings window. - ÐŸÐµÑ€ÐµÐ¼Ð¸ÐºÐ°Ð½Ð½Ñ Ð¿ÐµÑ€ÐµÐ²Ñ–Ñ€ÐºÐ¸ акÑелераторів, тобто чи Ñпівпадає кількіÑÑ‚ÑŒ амперÑандів в оригінальному та перекладеному текÑÑ‚Ñ–. Якщо виÑвлено неÑпівпадіннÑ, то у вікні попереджень буде показано повідомленнÑ. + ÐŸÐµÑ€ÐµÐ¼Ð¸ÐºÐ°Ð½Ð½Ñ Ð¿ÐµÑ€ÐµÐ²Ñ–Ñ€ÐºÐ¸ акÑелераторів, тобто чи збігаєтьÑÑ ÐºÑ–Ð»ÑŒÐºÑ–ÑÑ‚ÑŒ амперÑандів в оригінальному та перекладеному текÑÑ‚Ñ–. Якщо буде виÑвлено розбіжніÑÑ‚ÑŒ, то у вікні попереджень буде показано повідомленнÑ. &Ending Punctuation @@ -625,11 +766,11 @@ Will assume a single universal form. Toggle the validity check of ending punctuation. If the check fails, a message is shown in the warnings window. - ÐŸÐµÑ€ÐµÐ¼Ð¸ÐºÐ°Ð½Ð½Ñ Ð¿ÐµÑ€ÐµÐ²Ñ–Ñ€ÐºÐ¸ кінцевої пунктуації. Якщо виÑвлено неÑпівпадіннÑ, то у вікні попереджень буде показано повідомленнÑ. + ÐŸÐµÑ€ÐµÐ¼Ð¸ÐºÐ°Ð½Ð½Ñ Ð¿ÐµÑ€ÐµÐ²Ñ–Ñ€ÐºÐ¸ кінцевої пунктуації. Якщо буде виÑвлено розбіжніÑÑ‚ÑŒ, то у вікні попереджень буде показано повідомленнÑ. &Phrase matches - Ð¡Ð¿Ñ–Ð²Ð¿Ð°Ð´Ñ–Ð½Ð½Ñ &фраз + Збіги &фраз Toggle checking that phrase suggestions are used @@ -637,11 +778,11 @@ Will assume a single universal form. Toggle checking that phrase suggestions are used. If the check fails, a message is shown in the warnings window. - ÐŸÐµÑ€ÐµÐ¼Ð¸ÐºÐ°Ð½Ð½Ñ Ð¿ÐµÑ€ÐµÐ²Ñ–Ñ€ÐºÐ¸ про викориÑÑ‚Ð°Ð½Ð½Ñ Ð·Ð°Ð¿Ñ€Ð¾Ð¿Ð¾Ð½Ð¾Ð²Ð°Ð½Ð¸Ñ… фраз. Якщо виÑвлено неÑпівпадіннÑ, то у вікні попереджень буде показано повідомленнÑ. + ÐŸÐµÑ€ÐµÐ¼Ð¸ÐºÐ°Ð½Ð½Ñ Ð¿ÐµÑ€ÐµÐ²Ñ–Ñ€ÐºÐ¸ про викориÑÑ‚Ð°Ð½Ð½Ñ Ð·Ð°Ð¿Ñ€Ð¾Ð¿Ð¾Ð½Ð¾Ð²Ð°Ð½Ð¸Ñ… фраз. Якщо буде виÑвлено розбіжніÑÑ‚ÑŒ, то у вікні попереджень буде показано повідомленнÑ. Place &Marker Matches - Ð¡Ð¿Ñ–Ð²Ð¿Ð°Ð´Ñ–Ð½Ð½Ñ &маркерів Ð¿Ð¾Ð»Ð¾Ð¶ÐµÐ½Ð½Ñ + Збіги &маркерів Ð¿Ð¾Ð»Ð¾Ð¶ÐµÐ½Ð½Ñ Toggle the validity check of place markers @@ -649,7 +790,7 @@ Will assume a single universal form. Toggle the validity check of place markers, i.e. whether %1, %2, ... are used consistently in the source text and translation text. If the check fails, a message is shown in the warnings window. - ÐŸÐµÑ€ÐµÐ¼Ð¸ÐºÐ°Ð½Ð½Ñ Ð¿ÐµÑ€ÐµÐ²Ñ–Ñ€ÐºÐ¸ правильноÑÑ‚Ñ– маркерів розташуваннÑ, тобто чи уÑÑ– %1, %2, ... Ñпівпадають в оригінальному та перекладеному текÑÑ‚Ñ–. Якщо виÑвлено неÑпівпадіннÑ, то у вікні попереджень буде показано повідомленнÑ. + ÐŸÐµÑ€ÐµÐ¼Ð¸ÐºÐ°Ð½Ð½Ñ Ð¿ÐµÑ€ÐµÐ²Ñ–Ñ€ÐºÐ¸ правильноÑÑ‚Ñ– маркерів розташуваннÑ, тобто чи уÑÑ– %1, %2, ... збігаютьÑÑ Ð² оригінальному та перекладеному текÑÑ‚Ñ–. Якщо буде виÑвлено розбіжніÑÑ‚ÑŒ, то у вікні попереджень буде показано повідомленнÑ. &New Phrase Book... @@ -741,7 +882,7 @@ Will assume a single universal form. Replace the translation on all entries that matches the search source text. - Замінити переклад уÑÑ–Ñ… елементів, що Ñпівпадають з оригінальним текÑтом, що шукаєтьÑÑ. + Замінити переклад уÑÑ–Ñ… елементів, що збігаютьÑÑ Ð· оригінальним текÑтом, що шукаєтьÑÑ. &Batch Translation... @@ -998,7 +1139,7 @@ All files (*) No more occurrences of '%1'. Start over? - Більше Ñпівпадінь '%1' немає. Почати Ñпочатку? + Більше збігів '%1' немає. Почати Ñпочатку? Create New Phrase Book @@ -1417,6 +1558,83 @@ Line: %2 + QCoreApplication + + Usage: + lrelease [options] project-file + lrelease [options] ts-files [-qm qm-file] + +lrelease is part of Qt's Linguist tool chain. It can be used as a +stand-alone tool to convert XML-based translations files in the TS +format into the 'compiled' QM format used by QTranslator objects. + +Options: + -help Display this information and exit + -idbased + Use IDs instead of source strings for message keying + -compress + Compress the QM files + -nounfinished + Do not include unfinished translations + -removeidentical + If the translated text is the same as + the source text, do not include the message + -markuntranslated <prefix> + If a message has no real translation, use the source text + prefixed with the given string instead + -silent + Do not explain what is being done + -version + Display the version of lrelease and exit + + ВикориÑтаннÑ: + lrelease [опції] файл-проект + lrelease [опції] файли-ts [-qm файл-qm] + +lrelease - це чаÑтина набору програм Qt Linguist. Вона може викориÑтовуватиÑÑ +Ñк окремий заÑіб Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñ–Ð² перекладу на базі XML в форматі TS +до 'Ñкомпільованого' формату QM, що викориÑтовуєтьÑÑ Ð¾Ð±'єктами QTranslator. + +Опції: + -help Показати цю інформацію та вийти + -idbased + ВикориÑтовувати ID заміÑÑ‚ÑŒ Ñ€Ñдків оригіналу Ñк ключі повідомлень + -compress + СтиÑкати файли QM + -nounfinished + Ðе включати незавершені переклади + -removeidentical + Якщо перекладений текÑÑ‚ однаковий з оригіналом, то + не включати Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ + -markuntranslated <prefix> + If a message has no real translation, use the source text + prefixed with the given string instead + -silent + Ðе поÑÑнювати, що відбуваєтьÑÑ + -version + Показати верÑÑ–ÑŽ lrelease та вийти + + + + Updating '%1'... + + Оновлюю '%1'... + + + + Removing translations equal to source text in '%1'... + + Ð’Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ð¿ÐµÑ€ÐµÐºÐ»Ð°Ð´Ñ–Ð² однакових з оригінальним текÑтом в '%1'... + + + + lrelease version %1 + + lrelease верÑÑ–Ñ— %1 + + + + QObject Translation files (%1);; @@ -1462,6 +1680,216 @@ Line: %2 XLIFF localization files Файли локалізації XLIFF + + Usage: + lupdate [options] [project-file]... + lupdate [options] [source-file|path|@lst-file]... -ts ts-files|@lst-file + +lupdate is part of Qt's Linguist tool chain. It extracts translatable +messages from Qt UI files, C++, Java and JavaScript/QtScript source code. +Extracted messages are stored in textual translation source files (typically +Qt TS XML). New and modified messages can be merged into existing TS files. + +Options: + -help Display this information and exit. + -no-obsolete + Drop all obsolete strings. + -extensions <ext>[,<ext>]... + Process files with the given extensions only. + The extension list must be separated with commas, not with whitespace. + Default: '%1'. + -pluralonly + Only include plural form messages. + -silent + Do not explain what is being done. + -no-sort + Do not sort contexts in TS files. + -no-recursive + Do not recursively scan the following directories. + -recursive + Recursively scan the following directories (default). + -I <includepath> or -I<includepath> + Additional location to look for include files. + May be specified multiple times. + -locations {absolute|relative|none} + Specify/override how source code references are saved in TS files. + Default is absolute. + -no-ui-lines + Do not record line numbers in references to UI files. + -disable-heuristic {sametext|similartext|number} + Disable the named merge heuristic. Can be specified multiple times. + -pro <filename> + Name of a .pro file. Useful for files with .pro file syntax but + different file suffix. Projects are recursed into and merged. + -source-language <language>[_<region>] + Specify the language of the source strings for new files. + Defaults to POSIX if not specified. + -target-language <language>[_<region>] + Specify the language of the translations for new files. + Guessed from the file name if not specified. + -ts <ts-file>... + Specify the output file(s). This will override the TRANSLATIONS + and nullify the CODECFORTR from possibly specified project files. + -codecfortr <codec> + Specify the codec assumed for tr() calls. Effective only with -ts. + -version + Display the version of lupdate and exit. + @lst-file + Read additional file names (one per line) from lst-file. + + ВикориÑтаннÑ: + lupdate [опції] [файл-проект]... + lupdate [опції] [вхідний-файл|шлÑÑ…|@файл-ÑпиÑок]... -ts ts-файли|@файл-ÑпиÑок + +lupdate - це чаÑтина набору програм Qt Linguist. Вона It витÑгає придатні Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐºÐ»Ð°Ð´Ñƒ +Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð· файлів Qt UI, коду C++, Java та JavaScript/QtScript. ВитÑгнуті Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ +зберігаютьÑÑ Ð² текÑтовому файлі перекладу (типово Qt TS XML). Ðові та модифіковані +Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð¼Ð¾Ð¶ÑƒÑ‚ÑŒ бути об'єднанні з Ñ–Ñнуючими файлами TS. + +Опції: + -help Показати цю інформацію та вийти. + -no-obsolete + Видалити вÑÑ– заÑтарілі Ñ€Ñдки. + -extensions <розширеннÑ>[,<розширеннÑ>]... + ОброблÑти файли лише з вказаними розширеннÑми. + СпиÑок розширень має розділюватиÑÑŒ комами, а не пропуÑками. + Типово: '%1'. + -pluralonly + Включати лише Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð· формою множини. + -silent + Ðе поÑÑнювати, що відбуваєтьÑÑ. + -no-sort + Ðе Ñортувати контекÑти в файлах TS. + -no-recursive + Ðе Ñканувати рекурÑивно наÑтупні теки. + -recursive + РекурÑивно Ñканувати наÑтупні теки (типово). + -I <шлÑÑ…-включеннÑ> або -I<шлÑÑ…-включеннÑ> + Додаткові міÑÑ†Ñ Ð´Ð»Ñ Ð¿Ð¾ÑˆÑƒÐºÑƒ файлів включеннÑ. + Може бути вказано декілька разів. + -locations {absolute|relative|none} + Вказати/заміÑтити Ñк поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° код зберігаютьÑÑ Ð² файлі TS. + Типово - абÑолютно. + -no-ui-lines + Ðе запиÑувати номери Ñ€Ñдків в поÑиланнÑÑ… на файли UI. + -disable-heuristic {sametext|similartext|number} + Вимкнути вказану евриÑтику об'єданнÑ. Може бути вказано декілька разів. + -pro <ім'Ñ-файлу> + Ім'Ñ .pro файлу. КориÑно Ð´Ð»Ñ Ñ„Ð°Ð¹Ð»Ñ–Ð² із ÑинтакÑиÑом фалів .pro, але з + іншим розширеннÑм. Projects are recursed into and merged. + -source-language <мова>[_<регіон>] + Вказати мову оригінальних Ñ€Ñдків Ð´Ð»Ñ Ð½Ð¾Ð²Ð¸Ñ… файлів. + Типово, Ñкщо не вказано - POSIX. + -target-language <мова>[_<регіон>] + Вказати мову перекладу Ð´Ð»Ñ Ð½Ð¾Ð²Ð¸Ñ… файлів. + ВгадуєтьÑÑ Ð· імені файла, Ñкщо не вказано. + -ts <файл-ts>... + Вказати вихідний файл(и). Це заміÑтить TRANSLATIONS + та Ñкине CODECFORTR з, можливо, вказаних файлів проекту. + -codecfortr <кодек> + Вказати кодек, що Specify the codec вживаєтьÑÑ Ð´Ð»Ñ Ð²Ð¸ÐºÐ»Ð¸ÐºÑ–Ð² tr(). Ефективно лише з -ts. + -version + Показати верÑÑ–ÑŽ lupdate та вийти. + @файл-ÑпиÑок + Читати додаткові імена файлів (одне на Ñ€Ñдок) з файла-ÑпиÑку. + + + + Updating '%1'... + + Оновлюю '%1'... + + + + Stripping non plural forms in '%1'... + + Ð’Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ð½Ðµ множинних форм в '%1'... + + + + lupdate version %1 + + lupdate верÑÑ–Ñ— %1 + + + + Scanning directory '%1'... + + Ð¡ÐºÐ°Ð½ÑƒÐ²Ð°Ð½Ð½Ñ Ñ‚ÐµÐºÐ¸ '%1'... + + + + Found %n source text(s) (%1 new and %2 already existing) + + + Знайдено %n оригінальний текÑÑ‚ (%1 новий та %2 вже Ñ–Ñнує) + + Знайдено %n оригінальних текÑти (%1 нових та %2 вже Ñ–Ñнує) + + Знайдено %n оригінальних текÑтів (%1 нових та %2 вже Ñ–Ñнує) + + + + + Removed %n obsolete entries + + + Видалено %n заÑтарілий елемент + + Видалено %n заÑтарілих елементи + + Видалено %n заÑтарілих елементів + + + + + Kept %n obsolete entries + + + Залишено %n заÑтарілий елемент + + Залишено %n заÑтарілих елементи + + Залишено %n заÑтарілих елементів + + + + + Number heuristic provided %n translation(s) + + + ЧиÑлова евриÑтика надала %n переклад + + ЧиÑлова евриÑтика надала %n переклади + + ЧиÑлова евриÑтика надала %n перекладів + + + + + Same-text heuristic provided %n translation(s) + + + ЕвриÑтика "однаковий текÑÑ‚" надала %n переклад + + ЕвриÑтика "однаковий текÑÑ‚" надала %n переклади + + ЕвриÑтика "однаковий текÑÑ‚" надала %n перекладів + + + + + Similar-text heuristic provided %n translation(s) + + + ЕвриÑтика "Ñхожий текÑÑ‚" надала %n переклад + + ЕвриÑтика "Ñхожий текÑÑ‚" надала %n переклади + + ЕвриÑтика "Ñхожий текÑÑ‚" надала %n перекладів + + + SourceCodeView @@ -1549,7 +1977,7 @@ Line: %2 Click here to find the next occurrence of the text you typed in. - Клацніть тут, щоб знайти наÑтупне ÑÐ¿Ñ–Ð²Ð¿Ð°Ð´Ñ–Ð½Ð½Ñ Ð´Ð»Ñ Ð²Ð²ÐµÐ´ÐµÐ½Ð¾Ð³Ð¾ вами текÑту. + Клацніть тут, щоб знайти наÑтупний збіг Ð´Ð»Ñ Ð²Ð²ÐµÐ´ÐµÐ½Ð¾Ð³Ð¾ вами текÑту. Find Next diff --git a/translations/qt_help_uk.ts b/translations/qt_help_uk.ts index 1687959..b8bc984 100644 --- a/translations/qt_help_uk.ts +++ b/translations/qt_help_uk.ts @@ -307,14 +307,14 @@ %1 - %2 of %n Hits - %1 - %2 з %n ÑÐ¿Ñ–Ð²Ð¿Ð°Ð´Ñ–Ð½Ð½Ñ - %1 - %2 з %n Ñпівпадінь - %1 - %2 з %n Ñпівпадінь + %1 - %2 з %n збіг + %1 - %2 з %n збіги + %1 - %2 з %n збігів 0 - 0 of 0 Hits - 0 - 0 з 0 Ñпівпадінь + 0 - 0 з 0 збігів diff --git a/translations/qt_uk.ts b/translations/qt_uk.ts index 5164521..7a223f4 100644 --- a/translations/qt_uk.ts +++ b/translations/qt_uk.ts @@ -2,610 +2,827 @@ - AudioOutput + CloseButton - - <html>The audio playback device <b>%1</b> does not work.<br/>Falling back to <b>%2</b>.</html> - + Close Tab + Закрити вкладку + + + FakeReply - - <html>Switching to the audio playback device <b>%1</b><br/>which just became available and has higher preference.</html> - + Fake error ! + ÐеÑÐ¿Ñ€Ð°Ð²Ð¶Ð½Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ° ! - - Revert back to device '%1' - + Invalid URL + Ðеправильний URL - CloseButton + MAC_APPLICATION_MENU - - Close Tab - + Services + Служби - - - MainWindow - Print - Друкувати + Hide %1 + Сховати %1 - - - PPDOptionsModel - Name - Ім'Ñ + Hide Others + Сховати інші - Value - Ð—Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ + Show All + Показати вÑÑ– + + + Preferences... + ÐалаштуваннÑ... + + + Quit %1 + Вийти з %1 + + + About %1 + Про %1 Phonon:: - Notifications - + Ð¡Ð¿Ð¾Ð²Ñ–Ñ‰ÐµÐ½Ð½Ñ - Music - + Музика - Video - + Відео - Communication - + Ð¡Ð¿Ñ–Ð»ÐºÑƒÐ²Ð°Ð½Ð½Ñ - Games - + Ігри - Accessibility - + ДоÑтупніÑÑ‚ÑŒ + + + + Phonon::AudioOutput + + <html>The audio playback device <b>%1</b> does not work.<br/>Falling back to <b>%2</b>.</html> + <html>ПриÑтрій Ð²Ñ–Ð´Ñ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð·Ð²ÑƒÐºÑƒ <b>%1</b> не працює.<br/>Буде викориÑтовуватиÑÑŒ <b>%2</b>.</html> + + + <html>Switching to the audio playback device <b>%1</b><br/>which just became available and has higher preference.</html> + <html>ÐŸÐµÑ€ÐµÐ¼Ð¸ÐºÐ°Ð½Ð½Ñ Ð½Ð° приÑтрій Ð²Ñ–Ð´Ñ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð·Ð²ÑƒÐºÑƒ <b>%1</b><br/>, Ñкий Ñтав доÑтупний та має вищий пріоритет.</html> + + + Revert back to device '%1' + ÐŸÐ¾Ð²ÐµÑ€Ð½ÐµÐ½Ð½Ñ Ð´Ð¾ приÑтрою ’%1' + + + <html>Switching to the audio playback device <b>%1</b><br/>which has higher preference or is specifically configured for this stream.</html> + <html>ÐŸÐµÑ€ÐµÐ¼Ð¸ÐºÐ°Ð½Ð½Ñ Ð½Ð° приÑтрій Ð²Ñ–Ð´Ñ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð·Ð²ÑƒÐºÑƒ <b>%1</b><br/>, Ñкий має вищий пріоритет чи Ñпеціально налаштований Ð´Ð»Ñ Ñ†ÑŒÐ¾Ð³Ð¾ потоку.</html> Phonon::Gstreamer::Backend - Warning: You do not seem to have the package gstreamer0.10-plugins-good installed. Some video features have been disabled. - + ПопередженнÑ: Схоже, що у Ð²Ð°Ñ Ð½Ðµ вÑтановлено пакунок gstreamer0.10-plugins-good. + ДеÑкі можливоÑÑ‚Ñ– відео були вимкнені. - Warning: You do not seem to have the base GStreamer plugins installed. All audio and video support has been disabled - + ПопередженнÑ: Схоже, що у Ð²Ð°Ñ Ð½Ðµ вÑтановлено базові додатки Gstreamer. + УÑÑ Ð¿Ñ–Ð´Ñ‚Ñ€Ð¸Ð¼ÐºÐ° звуку та відео була вимкнена Phonon::Gstreamer::MediaObject - Cannot start playback. -Check your Gstreamer installation and make sure you +Check your GStreamer installation and make sure you have libgstreamer-plugins-base installed. - + Ðеможливо почати відтвореннÑ. + +Перевірте ваше вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ GStreamer та переконайтеÑÑŒ, +що у Ð²Ð°Ñ Ð²Ñтановлено libgstreamer-plugins-base. + + + Missing codec helper script assistant. + ВідÑутній допоміжний Ñкрипт вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ ÐºÐ¾Ð´ÐµÐºÐ°. + + + Plugin codec installation failed for codec: %0 + Збій вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð´Ð¾Ð´Ð°Ñ‚ÐºÑƒ кодека: %0 - A required codec is missing. You need to install the following codec(s) to play this content: %0 - + ВідÑутній необхідний кодек. Вам потрібно вÑтановити наÑтупні кодеки Ð´Ð»Ñ Ð²Ñ–Ð´Ñ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ñ†ÑŒÐ¾Ð³Ð¾ вміÑту: %0 - - - - - - - - Could not open media source. - + Ðе вдалоÑÑ Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ð¸ джерело медіа-даних. - Invalid source type. - + Ðеправильний тип джерела. - Could not locate media source. - + Ðе вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ джерело медіа-даних. - Could not open audio device. The device is already in use. - + Ðе вдалоÑÑ Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ð¸ звуковий приÑтрій. ПриÑтрій вже викориÑтовуєтьÑÑ. - Could not decode media source. - + Ðе вдалоÑÑ Ð´ÐµÐºÐ¾Ð´ÑƒÐ²Ð°Ñ‚Ð¸ джерело медіа-даних. + + + + Phonon::MMF + + Audio Output + Звуковий вихід + + + The audio output device + ПриÑтрій Ð²Ð¸Ð²ÐµÐ´ÐµÐ½Ð½Ñ Ð·Ð²ÑƒÐºÑƒ + + + No error + Ðемає помилки + + + Not found + Ðе знайдено + + + Out of memory + ÐедоÑтатньо пам’ÑÑ‚Ñ– + + + Not supported + Ðе підтримуєтьÑÑ + + + Overflow + ÐŸÐµÑ€ÐµÐ¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ + + + Underflow + ÐедоÑтача + + + Already exists + Вже Ñ–Ñнує + + + Path not found + ШлÑÑ… не знайдено + + + In use + ВикориÑтовуєтьÑÑ + + + Not ready + Ðе готово + + + Access denied + ДоÑтуп заборонено + + + Could not connect + Ðе вдалоÑÑ Ð·â€™Ñ”Ð´Ð½Ð°Ñ‚Ð¸ÑÑŒ + + + Disconnected + Від’єднано + + + Permission denied + ДоÑтуп заборонено + + + Insufficient bandwidth + ÐедоÑÑ‚Ð°Ñ‚Ð½Ñ Ð¿Ñ€Ð¾Ð¿ÑƒÑкна здатніÑÑ‚ÑŒ + + + Network unavailable + Мережа недоÑтупна + + + Network communication error + Комунікаційна помилка мережі + + + Streaming not supported + Потокова передача не підтримуєтьÑÑ + + + Server alert + Ð¡Ð¿Ð¾Ð²Ñ–Ñ‰ÐµÐ½Ð½Ñ Ñервера + + + Invalid protocol + Ðеправильний протокол + + + Invalid URL + Ðеправильний URL + + + Multicast error + Помилка групової передачі + + + Proxy server error + Помилка прокÑÑ–-Ñервера + + + Proxy server not supported + ПрокÑÑ–-Ñервер не підтримуєтьÑÑ + + + Audio output error + Помилка Ð²Ð¸Ð²ÐµÐ´ÐµÐ½Ð½Ñ Ð·Ð²ÑƒÐºÑƒ + + + Video output error + Помилка Ð²Ð¸Ð²ÐµÐ´ÐµÐ½Ð½Ñ Ð²Ñ–Ð´ÐµÐ¾ + + + Decoder error + Помилка декодера + + + Audio or video components could not be played + Ðе вдалоÑÑ Ð²Ñ–Ð´Ñ‚Ð²Ð¾Ñ€Ð¸Ñ‚Ð¸ аудіо- чи відео-компонент + + + DRM error + Помилка DRM + + + Unknown error (%1) + Ðевідома помилка (%1) + + + + Phonon::MMF::AbstractMediaPlayer + + Not ready to play + Ðе готовий до Ð²Ñ–Ð´Ñ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ + + + Error opening file + Помилка Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ñ„Ð°Ð¹Ð»Ñƒ + + + Error opening URL + Помилка Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ñ‚Ñ URL + + + Error opening resource + Помилка Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ñ€ÐµÑурÑу + + + Error opening source: resource not opened + Помилка Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ð´Ð¶ÐµÑ€ÐµÐ»Ð°: реÑÑƒÑ€Ñ Ð½Ðµ відкрито + + + Setting volume failed + Збій вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð³ÑƒÑ‡Ð½Ð¾ÑÑ‚Ñ– + + + Loading clip failed + Збій Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ ÐºÐ»Ñ–Ð¿Ñƒ + + + Playback complete + Ð’Ñ–Ð´Ñ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ðµ + + + + Phonon::MMF::AbstractVideoPlayer + + Pause failed + Збій паузи + + + Seek failed + Збій прокрутки + + + Getting position failed + Збій Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð¿Ð¾Ð·Ð¸Ñ†Ñ–Ñ— + + + Opening clip failed + Збій Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ñ‚Ñ ÐºÐ»Ñ–Ð¿Ñƒ + + + + Phonon::MMF::AudioEqualizer + + %1 Hz + %1 Гц + + + + Phonon::MMF::AudioPlayer + + Getting position failed + Збій Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð¿Ð¾Ð·Ð¸Ñ†Ñ–Ñ— + + + + Phonon::MMF::DsaVideoPlayer + + Video display error + Помилка Ð²Ñ–Ð´Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Ð²Ñ–Ð´ÐµÐ¾ + + + + Phonon::MMF::EffectFactory + + Enabled + Увімкнено + + + + Phonon::MMF::EnvironmentalReverb + + Decay HF ratio (%) + DecayHFRatio: Ratio of high-frequency decay time to the value specified by DecayTime. + Коефіцієнт поÑÐ»Ð°Ð±Ð»ÐµÐ½Ð½Ñ Ð’Ð§ (%) + + + Decay time (ms) + DecayTime: Time over which reverberation is diminished. + Ð§Ð°Ñ Ð¿Ð¾ÑÐ»Ð°Ð±Ð»ÐµÐ½Ð½Ñ (мÑ) + + + Density (%) + Density Delay between first and subsequent reflections. Note that the S60 platform documentation does not make clear the distinction between this value and the Diffusion value. + ЩільніÑÑ‚ÑŒ (%) + + + Diffusion (%) + Diffusion: Delay between first and subsequent reflections. Note that the S60 platform documentation does not make clear the distinction between this value and the Density value. + РозÑÑ–ÑŽÐ²Ð°Ð½Ð½Ñ (%) + + + Reflections delay (ms) + ReflectionsDelay: Amount of delay between the arrival the direct path from the source and the arrival of the first reflection. + Затримка Ð²Ñ–Ð´Ð±Ð¸Ñ‚Ñ‚Ñ (мÑ) + + + Reflections level (mB) + ReflectionsLevel: Amplitude of reflections. This value is corrected by the RoomLevel to give the final reflection amplitude. + Рівень Ð²Ñ–Ð´Ð±Ð¸Ñ‚Ñ‚Ñ (мБ) + + + Reverb delay (ms) + ReverbDelay: Amount of time between arrival of the first reflection and start of the late reverberation. + Затримка луни (мÑ) + + + Reverb level (mB) + ReverbLevel Amplitude of reverberations. This value is corrected by the RoomLevel to give the final reverberation amplitude. + Рівень луни (мБ) + + + Room HF level + RoomHFLevel: Amplitude of low-pass filter used to attenuate the high frequency component of reflected sound. + Рівень ВЧ Ð²Ñ–Ð´Ð±Ð¸Ñ‚Ñ‚Ñ + + + Room level (mB) + RoomLevel: Master volume control for all reflected sound. + Рівень Ð²Ñ–Ð´Ð±Ð¸Ñ‚Ñ‚Ñ (мБ) + + + + Phonon::MMF::MediaObject + + Error opening source: type not supported + Помилка Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ð´Ð¶ÐµÑ€ÐµÐ»Ð°: тип не підтримуєтьÑÑ + + + Error opening source: resource is compressed + Помилка Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ð´Ð¶ÐµÑ€ÐµÐ»Ð°: реÑÑƒÑ€Ñ ÑтиÑнутий + + + Error opening source: resource not valid + Помилка Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ð´Ð¶ÐµÑ€ÐµÐ»Ð°: реÑÑƒÑ€Ñ Ð½ÐµÐ¿Ñ€Ð°Ð²Ð¸Ð»ÑŒÐ½Ð¸Ð¹ + + + Error opening source: media type could not be determined + Помилка Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ð´Ð¶ÐµÑ€ÐµÐ»Ð°: не вдалоÑÑ Ð²Ð¸Ð·Ð½Ð°Ñ‡Ð¸Ñ‚Ð¸ тип медіа-даних + + + + Phonon::MMF::StereoWidening + + Level (%) + Рівень (%) + + + + Phonon::MMF::SurfaceVideoPlayer + + Video display error + Помилка Ð²Ñ–Ð´Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Ð²Ñ–Ð´ÐµÐ¾ Phonon::VolumeSlider - - Volume: %1% - + ГучніÑÑ‚ÑŒ: %1% - - - Use this slider to adjust the volume. The leftmost position is 0%, the rightmost is %1% - + ВикориÑтовуйте цей повзунок Ð´Ð»Ñ Ñ€ÐµÐ³ÑƒÐ»ÑŽÐ²Ð°Ð½Ð½Ñ Ð³ÑƒÑ‡Ð½Ð¾ÑÑ‚Ñ–. ÐšÑ€Ð°Ð¹Ð½Ñ Ð»Ñ–Ð²Ð° Ð¿Ð¾Ð·Ð¸Ñ†Ñ–Ñ - 0%, ÐºÑ€Ð°Ð¹Ð½Ñ Ð¿Ñ€Ð°Ð²Ð° - %1% + + + Muted + Без звуку Q3Accel - %1, %2 not defined %1, %2 не визначено - Ambiguous %1 not handled - Ðеоднозначний %1 не оброблюєтьÑÑ + Ðеоднозначний %1 не оброблено Q3DataTable - True - Так + ІÑтинно - False - ÐÑ– + Хибно - Insert Ð’Ñтавити - Update Оновити - Delete - Вилучити + Видалити Q3FileDialog - Copy or Move a File - Копіювати або переÑунути файл + Копіювати або переміÑтити файл - Read: %1 ЧитаннÑ: %1 - - Write: %1 ЗапиÑ: %1 - - Cancel СкаÑувати - - - - All Files (*) - Ð’ÑÑ– файли (*) + УÑÑ– файли (*) - Name Ім'Ñ - Size Розмір - Type Тип - Date Дата - Attributes Ðтрибути - - &OK - &Гаразд + &OK - Look &in: - ПереглÑд &в: + Пере&глÑд в: - - - File &name: &Ім'Ñ Ñ„Ð°Ð¹Ð»Ñƒ: - File &type: &Тип файлу: - Back Ðазад - One directory up - Один каталог угору + Ðа теку вище - Create New Folder Створити нову теку - List View - ВиглÑд ÑпиÑком + СпиÑком - Detail View - ВиглÑд з подробицÑми + Детально - Preview File Info - ПереглÑд відомоÑтей про файл + Попередній переглÑд інформації про файл - Preview File Contents - ПереглÑд вміÑту файла + Попередній переглÑд зміÑту файлу - Read-write - ЧитаннÑ-Ð·Ð°Ð¿Ð¸Ñ + Ð§Ð¸Ñ‚Ð°Ð½Ð½Ñ Ñ‚Ð° Ð·Ð°Ð¿Ð¸Ñ - Read-only - Тільки Ð´Ð»Ñ Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ + Лише Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ - Write-only - Тільки Ð´Ð»Ñ Ð·Ð°Ð¿Ð¸Ñу + Лише Ð·Ð°Ð¿Ð¸Ñ - Inaccessible ÐедоÑтупний - Symlink to File Символьне поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° файл - Symlink to Directory - Символьне поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° каталог + Символьне поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° теку - Symlink to Special - Символьне поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° Ñпеціальний файл + Символьне поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° Ñпецфайл - File Файл - Dir - Каталог + Тека - Special - Спеціальний файл + Спецфайл - - - Open Відкрити - - Save As - Зберегти, Ñк + Зберегти Ñк - - - &Open &Відкрити - - &Save &Зберегти - &Rename &Перейменувати - &Delete - &Витерти + Ви&далити - R&eload - О&новити + &Оновити - Sort by &Name - ВпорÑдкувати за &ім'Ñм + Сортувати по &імені - Sort by &Size - ВпорÑдкувати за &розміром + Сортувати по &розміру - Sort by &Date - ВпорÑдкувати за &датою + Сортувати по &даті - &Unsorted - &ÐевпорÑдковано + &Без ÑÐ¾Ñ€Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ - Sort - ВпорÑдкувати + Сортувати - Show &hidden files - Показати &приховані файли + Показувати при&ховані файли - the file файл - the directory - каталог + тека - the symlink Ñимвольне поÑÐ¸Ð»Ð°Ð½Ð½Ñ - Delete %1 - Вилучити %1 + Видалити %1 - <qt>Are you sure you wish to delete %1 "%2"?</qt> - <qt>Ви дійÑно хочете вилучити %1 "%2"?</qt> + <qt>Ви впевнені, що бажаєте видалити %1 "%2"?</qt> - &Yes - &Так + Т&ак - &No &ÐÑ– - New Folder 1 Ðова тека 1 - New Folder Ðова тека - New Folder %1 Ðова тека %1 - Find Directory - Знайти каталог + Пошук теки - - Directories - Каталоги + Теки - Directory: - Каталог: + Тека: - - Error Помилка - %1 File not found. Check path and filename. %1 Файл не знайдено. -Перевірте шлÑÑ… та ім'Ñ Ñ„Ð°Ð¹Ð»Ð°. +Перевірте шлÑÑ… та назву файлу. - All Files (*.*) - Ð’ÑÑ– файли (*.*) + УÑÑ– файли (*) - Open Відкрити - Select a Directory - Виберіть каталог + Оберіть теку Q3LocalFs - - Could not read directory %1 - Ðеможливо прочитати каталог + Ðе вдалоÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚Ð¸ теку %1 - Could not create directory %1 - Ðеможливо Ñтворити каталог%1 + Ðе вдалоÑÑ Ñтворити теку +%1 - Could not remove file or directory %1 - Ðеможливо вилучити файли або каталог + Ðе вдалоÑÑ Ð²Ð¸Ð´Ð°Ð»Ð¸Ñ‚Ð¸ файл або теку %1 - Could not rename %1 to %2 - Ðеможливо перейменувати + Ðе вдалоÑÑ Ð¿ÐµÑ€ÐµÐ¹Ð¼ÐµÐ½ÑƒÐ²Ð°Ñ‚Ð¸ %1 в %2 - Could not open %1 - Ðеможливо відкрити + Ðе вдалоÑÑ Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ð¸ %1 - Could not write %1 - Ðеможливо запиÑати + Ðе вдалоÑÑ Ð·Ð°Ð¿Ð¸Ñати %1 Q3MainWindow - Line up ВирівнÑти - Customize... - Підлаштувати... + Ðалаштувати... Q3NetworkProtocol - Operation stopped by the user - Дію зупинено кориÑтувачем + ÐžÐ¿ÐµÑ€Ð°Ñ†Ñ–Ñ Ð·ÑƒÐ¿Ð¸Ð½ÐµÐ½Ð° кориÑтувачем Q3ProgressDialog - - Cancel СкаÑувати @@ -613,28 +830,22 @@ to Q3TabDialog - - OK - Гаразд + OK - Apply ЗаÑтоÑувати - Help Довідка - Defaults - Типові Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ + Типово - Cancel СкаÑувати @@ -642,166 +853,131 @@ to Q3TextEdit - &Undo &Повернути - &Redo П&овторити - Cu&t Ви&різати - &Copy &Копіювати - &Paste &Ð’Ñтавити - Clear ОчиÑтити - - Select All - Вибрати вÑе + Виділити вÑе Q3TitleBar - System СиÑтема - Restore up - Відновити вгору + Відновити - Minimize Мінімізувати - Restore down - Відновити додолу + Відновити - Maximize МакÑимізувати - Close Закрити - Contains commands to manipulate the window - МіÑтить команди Ð´Ð»Ñ Ð´Ñ–Ð¹ над вікном + МіÑтить команди Ð´Ð»Ñ Ð¼Ð°Ð½Ñ–Ð¿ÑƒÐ»Ñцій з вікном - - Puts a minimized back to normal - Повертає мінімізоване в нормальний Ñтан + Puts a minimized window back to normal + Повертає мінімізоване вікно назад до нормального - Moves the window out of the way - ВідÑуває вікно з дороги + Прибирає вікно з очей - Puts a maximized window back to normal - Повертає макÑимізоване в нормальний Ñтан + Повертає макÑимізоване вікно назад до нормального - Makes the window full screen - Показує вікно на веÑÑŒ екран + Розгортає вікно на веÑÑŒ екран - Closes the window Закриває вікно - Displays the name of the window and contains controls to manipulate it - Показує ім'Ñ Ð²Ñ–ÐºÐ½Ð° та міÑтить елементи ÐºÐµÑ€ÑƒÐ²Ð°Ð½Ð½Ñ Ð½Ð¸Ð¼ + Показує назву вікна та міÑтить команди Ð´Ð»Ñ Ð¼Ð°Ð½Ñ–Ð¿ÑƒÐ»Ñцій з ним Q3ToolBar - More... - Додатково... + Більше... Q3UrlOperator - - - The protocol `%1' is not supported - Протокол "%1" не підтримуєтьÑÑ + Протокол ’%1’ не підтримуєтьÑÑ - The protocol `%1' does not support listing directories - Протокол "%1" не підтримує переглÑд ÑпиÑку каталогів + Протокол ’%1’ не підтримує переглÑд тек - The protocol `%1' does not support creating new directories - Протокол "%1" не підтримує ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ ÐºÐ°Ñ‚Ð°Ð»Ð¾Ð³Ñ–Ð² + Протокол ’%1’ не підтримує ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð½Ð¾Ð²Ð¸Ñ… тек - The protocol `%1' does not support removing files or directories - Протокол "%1" не підтримує Ð²Ð¸Ð»ÑƒÑ‡ÐµÐ½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñ–Ð² або каталогів + Протокол ’%1’ не підтримує Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñ–Ð² чи тек - The protocol `%1' does not support renaming files or directories - Протокол "%1" не підтримує Ð¿ÐµÑ€ÐµÐ¹Ð¼ÐµÐ½ÑƒÐ²Ð°Ð½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñ–Ð² та каталогів + Протокол ’%1’ не підтримує Ð¿ÐµÑ€ÐµÐ¹Ð¼ÐµÐ½ÑƒÐ²Ð°Ð½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñ–Ð² чи тек - The protocol `%1' does not support getting files - Протокол "%1" не підтримує Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñ–Ð² + Протокол ’%1’ не підтримує Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñ–Ð² - The protocol `%1' does not support putting files - Протокол "%1" не підтримує Ð²Ð¸ÐºÐ»Ð°Ð´ÐµÐ½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñ–Ð² + Протокол ’%1’ не підтримує Ð²Ñ–Ð´Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñ–Ð² - - The protocol `%1' does not support copying or moving files or directories - Протокол "%1" не підтримує ÐºÐ¾Ð¿Ñ–ÑŽÐ²Ð°Ð½Ð½Ñ Ð°Ð±Ð¾ переÑÑƒÐ²Ð°Ð½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñ–Ð² та каталогів + Протокол ’%1’ не підтримує ÐºÐ¾Ð¿Ñ–ÑŽÐ²Ð°Ð½Ð½Ñ Ð°Ð±Ð¾ Ð¿ÐµÑ€ÐµÐ¼Ñ–Ñ‰ÐµÐ½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñ–Ð² чи тек - - (unknown) (невідомо) @@ -809,27 +985,22 @@ to Q3Wizard - &Cancel &СкаÑувати - < &Back < &Ðазад - &Next > - &Вперед > + &Далі > - &Finish - &Закінчити + &Завершити - &Help &Довідка @@ -837,274 +1008,233 @@ to QAbstractSocket - - - - - Host not found - Вузол не знайдено + Socket operation timed out + Ð§Ð°Ñ Ð½Ð° операцію з Ñокетом вичерпано - - - - Connection refused - Відмовлено у зв'Ñзку + Operation on socket is not supported + Ðепідтримувана Ð´Ð»Ñ Ñокета Ð¾Ð¿ÐµÑ€Ð°Ñ†Ñ–Ñ - - Connection timed out - Перевищено термін Ð¾Ñ‡Ñ–ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð»Ñ Ð·'Ñ”Ð´Ð½Ð°Ð½Ð½Ñ + Host not found + Вузол не знайдено - - - - Operation on socket is not supported - + Connection refused + У з'єднанні відмовлено - - Socket operation timed out - Ð”Ñ–Ñ Ð· Ñокетом перевищила термін Ð¾Ñ‡Ñ–ÐºÑƒÐ²Ð°Ð½Ð½Ñ + Connection timed out + Ð§Ð°Ñ Ð½Ð° Ð·â€™Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð²Ð¸Ñ‡ÐµÑ€Ð¿Ð°Ð½Ð¾ - Socket is not connected - Сокет не Ñ” під'єднаним + Сокет не під’єднано - Network unreachable - Мережа недоÑÑжна + Мережа недоÑтупна QAbstractSpinBox - + &Select All + &Виділити вÑе + + &Step up - &Крок вгору + Крок в&гору - Step &down - Крок &додолу + Крок до&низу + + + QAccessibleButton - - &Select All - &Вибрати вÑе + Press + ÐатиÑніть QApplication - Activate Ðктивувати - + Activates the program's main window + Ðктивує головне вікно програми + + Executable '%1' requires Qt %2, found Qt %3. - Програма "%1" потребує Qt %2, але знайдено Qt %3. + Виконуваний модуль '%1' вимагає Qt %2, знайдено Qt %3. - Incompatible Qt Library Error - Помилка неÑуміÑноÑÑ‚Ñ– бібліотеки Qt + ÐеÑуміÑна бібліотека Qt - QT_LAYOUT_DIRECTION Translate this string to the string 'LTR' in left-to-right languages or to 'RTL' in right-to-left languages (such as Hebrew and Arabic) to get proper widget layout. LTR - - - Activates the program's main window - Ðктивує головне вікно програми - QAxSelect - Select ActiveX Control - Виберіть елемент ActiveX + Виберіть елемент ÐºÐµÑ€ÑƒÐ²Ð°Ð½Ð½Ñ ActiveX - OK - Гаразд + OK - &Cancel &СкаÑувати - COM &Object: - &Об'єкт COM: + COM-&об'єкт: QCheckBox - Uncheck - ЗнÑти позначку + ЗнÑти відмітку - Check - ПоÑтавити позначку + Відмітити - Toggle - Перемикнути + Перемкнути QColorDialog - Hu&e: - Від&тінок: + &Відтінок: - &Sat: &ÐаÑиченіÑÑ‚ÑŒ: - &Val: - &ЗначеннÑ: + Зна&ченнÑ: - &Red: &Червоний: - &Green: &Зелений: - Bl&ue: - С&иній: + &Блакитний: - A&lpha channel: - Канал а&льфа: + &Ðльфа-канал: - Select Color - + Оберіть колір - &Basic colors - &Базові кольори + Баз&ові кольори - &Custom colors - &Ðетипові кольори + &Кольори кориÑтувача - &Define Custom Colors >> - &Ðалаштувати нетипові кольори >> + &Add to Custom Colors + &Додати до кольорів кориÑтувача + + + QComboBox - OK - Гаразд + False + Хибно - Cancel - СкаÑувати + True + ІÑтинно - - &Add to Custom Colors - &Додати до нетипових кольорів + Open + Відкрити - Select color - Виберіть колір + Close + Закрити - QComboBox + QCoreApplication - - - Open - Відкрити + %1: already exists + QSystemSemaphore + %1: вже Ñ–Ñнує - - False - ÐÑ– + %1: does not exist + QSystemSemaphore + %1: не Ñ–Ñнує - - True - Так + %1: out of resources + QSystemSemaphore + %1: недоÑтатньо реÑурÑів - - Close - Закрити + %1: unknown error %2 + QSystemSemaphore + %1: невідома помилка %2 - - - QCoreApplication - %1: key is empty QSystemSemaphore - + %1: порожній ключ - %1: unable to make key QSystemSemaphore - + %1: неможливо Ñтворити ключ - %1: ftok failed QSystemSemaphore - + %1: помилка ftok QDB2Driver - Unable to connect - Ðеможливо з'єднатиÑÑ + Ðеможливо з'єднатиÑÑŒ - Unable to commit transaction Ðеможливо завершити транзакцію - Unable to rollback transaction Ðеможливо відкотити транзакцію - Unable to set autocommit Ðеможливо вÑтановити Ð°Ð²Ñ‚Ð¾Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð½Ñ Ñ‚Ñ€Ð°Ð½Ð·Ð°ÐºÑ†Ñ–Ð¹ @@ -1112,6882 +1242,8497 @@ to QDB2Result - - Unable to execute statement - Ðеможливо виконати оператор + Ðеможливо виконати вираз - Unable to prepare statement - Ðеможливо підготувати оператор + Ðеможливо підготувати вираз - Unable to bind variable Ðеможливо прив'Ñзати змінну - Unable to fetch record %1 - Ðеможливо вибрати Ð·Ð°Ð¿Ð¸Ñ %1 + Ðеможливо отримати Ð·Ð°Ð¿Ð¸Ñ %1 - Unable to fetch next - Ðеможливо вибрати наÑтупний + Ðеможливо отримати наÑтупний Ð·Ð°Ð¿Ð¸Ñ - Unable to fetch first - Ðеможливо вибрати перший + Ðеможливо отримати перший Ð·Ð°Ð¿Ð¸Ñ QDateTimeEdit - AM AM - am am - PM PM - pm pm - QDial + QDeclarativeAbstractAnimation - - QDial - QDial + Cannot animate non-existent property "%1" + Ðеможливо анімувати неіÑнуючу влаÑтивіÑÑ‚ÑŒ "%1" - - SpeedoMeter - Спідометр + Cannot animate read-only property "%1" + Ðеможливо анімувати влаÑтивіÑÑ‚ÑŒ лише Ð´Ð»Ñ Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ "%1" - - SliderHandle - ДержакПовзунка + Animation is an abstract class + Animation - це абÑтрактний ÐºÐ»Ð°Ñ - QDialog - - - What's This? - Що це? - + QDeclarativeAnchorAnimation - - Done - Зроблено + Cannot set a duration of < 0 + Ðе можу вÑтановити триваліÑÑ‚ÑŒ < 0 - QDialogButtonBox + QDeclarativeAnchors - - - - OK - Гаразд + Possible anchor loop detected on fill. + ВиÑвлено імовірну циклічну прив'Ñзку до fill. - - Save - Зберегти + Possible anchor loop detected on centerIn. + ВиÑвлено імовірну циклічну прив'Ñзку до centerIn. - - &Save - &Зберегти + Cannot anchor to an item that isn't a parent or sibling. + Ðеможливо прив'Ñзати до елемента, що не Ñ” батьківÑьким чи ÑуÑіднім. - - Open - Відкрити + Possible anchor loop detected on vertical anchor. + ВиÑвлено імовірну циклічну прив'Ñзку до вертикальної прив'Ñзки. - - Cancel - СкаÑувати + Possible anchor loop detected on horizontal anchor. + ВиÑвлено імовірну циклічну прив'Ñзку до горизонтальної прив'Ñзки. - - &Cancel - &СкаÑувати + Cannot specify left, right, and hcenter anchors. + Ðеможливо задати прив'Ñзки зліва, Ñправа та центру по горизонталі. - - Close - Закрити + Cannot anchor to a null item. + Ðеможливо прив'Ñзати до нульового елемента. - - &Close - &Закрити + Cannot anchor a horizontal edge to a vertical edge. + Ðеможливо прив'Ñзати горизонтальний край до вертикального. - - Apply - ЗаÑтоÑувати + Cannot anchor item to self. + Ðеможливо прив'Ñзати елемент до Ñамого Ñебе. - - Reset - Скинути + Cannot specify top, bottom, and vcenter anchors. + Ðеможливо задати прив'Ñзки верху, низу та центру по вертикалі. - - Help - Довідка + Baseline anchor cannot be used in conjunction with top, bottom, or vcenter anchors. + Ðеможливо викориÑтати базову прив'Ñзку разом з верхньої, нижньою чи центральною по вертикалі. - - Don't Save - Ðе зберігати + Cannot anchor a vertical edge to a horizontal edge. + Ðеможливо прив'Ñзати вертикальний край до горизонтального. + + + QDeclarativeAnimatedImage - - Discard - Відкинути + Qt was built without support for QMovie + Бібліотека Qt була зібрана без підтримки QMovie + + + QDeclarativeBehavior - - &Yes - &Так + Cannot change the animation assigned to a Behavior. + Ðеможливо змінити анімацію, призначену до поведінки. + + + QDeclarativeBinding - - Yes to &All - Так Ð´Ð»Ñ &вÑÑ–Ñ… + Binding loop detected for property "%1" + Знайдено циклічну прив’Ñзку Ð´Ð»Ñ Ð²Ð»Ð°ÑтивоÑÑ‚Ñ– "%1" + + + QDeclarativeCompiledBindings - - &No - &ÐÑ– + Binding loop detected for property "%1" + Знайдено циклічну прив’Ñзку Ð´Ð»Ñ Ð²Ð»Ð°ÑтивоÑÑ‚Ñ– "%1" + + + QDeclarativeCompiler - - N&o to All - Ð&Ñ– Ð´Ð»Ñ Ð²ÑÑ–Ñ… + Invalid property assignment: "%1" is a read-only property + Ðеправильне приÑÐ²Ð¾Ñ”Ð½Ð½Ñ Ð²Ð»Ð°ÑтивоÑÑ‚Ñ–: влаÑтивіÑÑ‚ÑŒ "%1" лише Ð´Ð»Ñ Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ - - Save All - Зберегти вÑÑ– + Invalid property assignment: unknown enumeration + Ðеправильне приÑÐ²Ð¾Ñ”Ð½Ð½Ñ Ð²Ð»Ð°ÑтивоÑÑ‚Ñ–: невідомий перелік - - Abort - Перервати + Invalid property assignment: string expected + Ðеправильне приÑÐ²Ð¾Ñ”Ð½Ð½Ñ Ð²Ð»Ð°ÑтивоÑÑ‚Ñ–: очікувавÑÑ Ñ€Ñдок - - Retry - Повторна Ñпроба + Invalid property assignment: url expected + Ðеправильне приÑÐ²Ð¾Ñ”Ð½Ð½Ñ Ð²Ð»Ð°ÑтивоÑÑ‚Ñ–: очікувавÑÑ URL - - Ignore - ПропуÑтити + Invalid property assignment: unsigned int expected + Ðеправильне приÑÐ²Ð¾Ñ”Ð½Ð½Ñ Ð²Ð»Ð°ÑтивоÑÑ‚Ñ–: очікувалоÑÑŒ беззнакове ціле - - Restore Defaults - Відновити типові + Invalid property assignment: int expected + Ðеправильне приÑÐ²Ð¾Ñ”Ð½Ð½Ñ Ð²Ð»Ð°ÑтивоÑÑ‚Ñ–: очікувалоÑÑŒ ціле - - Close without Saving - Закрити без Ð·Ð±ÐµÑ€ÐµÐ¶ÐµÐ½Ð½Ñ + Invalid property assignment: number expected + Ðеправильне приÑÐ²Ð¾Ñ”Ð½Ð½Ñ Ð²Ð»Ð°ÑтивоÑÑ‚Ñ–: очікувалоÑÑŒ чиÑло - - &OK - &Гаразд + Invalid property assignment: color expected + Ðеправильне приÑÐ²Ð¾Ñ”Ð½Ð½Ñ Ð²Ð»Ð°ÑтивоÑÑ‚Ñ–: очікувавÑÑ ÐºÐ¾Ð»Ñ–Ñ€ - - - QDirModel - - Name - Ім'Ñ + Invalid property assignment: date expected + Ðеправильне приÑÐ²Ð¾Ñ”Ð½Ð½Ñ Ð²Ð»Ð°ÑтивоÑÑ‚Ñ–: очікувалаÑÑŒ дата - - Size - Розмір + Invalid property assignment: time expected + Ðеправильне приÑÐ²Ð¾Ñ”Ð½Ð½Ñ Ð²Ð»Ð°ÑтивоÑÑ‚Ñ–: очікувавÑÑ Ñ‡Ð°Ñ - - Kind - Match OS X Finder - Тип + Invalid property assignment: datetime expected + Ðеправильне приÑÐ²Ð¾Ñ”Ð½Ð½Ñ Ð²Ð»Ð°ÑтивоÑÑ‚Ñ–: очікувалиÑÑŒ дата та Ñ‡Ð°Ñ - - Type - All other platforms - Тип + Invalid property assignment: point expected + Ðеправильне приÑÐ²Ð¾Ñ”Ð½Ð½Ñ Ð²Ð»Ð°ÑтивоÑÑ‚Ñ–: очікувалаÑÑŒ точка - - Date Modified - Дата зміни + Invalid property assignment: size expected + Ðеправильне приÑÐ²Ð¾Ñ”Ð½Ð½Ñ Ð²Ð»Ð°ÑтивоÑÑ‚Ñ–: очікувавÑÑ Ñ€Ð¾Ð·Ð¼Ñ–Ñ€ - - - QDockWidget - - Close - Закрити + Invalid property assignment: rect expected + Ðеправильне приÑÐ²Ð¾Ñ”Ð½Ð½Ñ Ð²Ð»Ð°ÑтивоÑÑ‚Ñ–: очікувавÑÑ Ð¿Ñ€Ñмокутник - - Dock - Пришвартувати + Invalid property assignment: boolean expected + Ðеправильне приÑÐ²Ð¾Ñ”Ð½Ð½Ñ Ð²Ð»Ð°ÑтивоÑÑ‚Ñ–: очікувалоÑÑŒ булеве - - Float - Відшвартувати + Invalid property assignment: 3D vector expected + Ðеправильне приÑÐ²Ð¾Ñ”Ð½Ð½Ñ Ð²Ð»Ð°ÑтивоÑÑ‚Ñ–: очікувавÑÑ Ñ‚Ñ€Ð¸Ð²Ð¸Ð¼Ñ–Ñ€Ð½Ð¸Ð¹ вектор - - - QDoubleSpinBox - - More - Більше + Invalid property assignment: unsupported type "%1" + Ðеправильне приÑÐ²Ð¾Ñ”Ð½Ð½Ñ Ð²Ð»Ð°ÑтивоÑÑ‚Ñ–: непідтримуваний тип "%1" - - Less - Менше + Element is not creatable. + Елемент не Ñ” Ñтворюваним. - - - QErrorMessage - - Debug Message: - ÐŸÐ¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð·Ð½ÐµÐ²Ð°Ð´Ð¶ÐµÐ½Ð½Ñ: + Component elements may not contain properties other than id + Елементи Component не можуть міÑтити влаÑтивоÑтей окрім id - - Warning: - ПопередженнÑ: + Invalid component id specification + Ðеправильна ÑÐ¿ÐµÑ†Ð¸Ñ„Ñ–ÐºÐ°Ñ†Ñ–Ñ Ñ–Ð´ÐµÐ½Ñ‚Ð¸Ñ„Ñ–ÐºÐ°Ñ‚Ð¾Ñ€Ð° компоненти - - Fatal Error: - Фатальна помилка: + id is not unique + ідентифікатор не унікальний - - &Show this message again - &Показувати це Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð·Ð½Ð¾Ð²Ñƒ + Invalid component body specification + Ðеправильна ÑÐ¿ÐµÑ†Ð¸Ñ„Ñ–ÐºÐ°Ñ†Ñ–Ñ Ñ‚Ñ–Ð»Ð° компоненти - - &OK - &Гаразд + Component objects cannot declare new properties. + Об'єкти Component не можуть оголошувати нові влаÑтивоÑÑ‚Ñ–. - - - QFile - - - Destination file exists - + Component objects cannot declare new signals. + Об'єкти Component не можуть оголошувати нові Ñигнали. - - Cannot remove source file - + Component objects cannot declare new functions. + Об'єкти Component не можуть оголошувати нові функції. - - Cannot open %1 for input - + Cannot create empty component specification + Ðеможливо Ñтворити порожню Ñпецифікацію компоненти - - Cannot open for output - + Incorrectly specified signal assignment + Ðеправильно вказане Ð¿Ñ€Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñигналу - - Failure to write block - + Cannot assign a value to a signal (expecting a script to be run) + Ðеможливо призначити Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñигналу (очікуєтьÑÑ Ñкрипт Ð´Ð»Ñ Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ) - - Cannot create %1 for output - + Empty signal assignment + Порожнє Ð¿Ñ€Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñигналу - - - QFileDialog - - - All Files (*) - Ð’ÑÑ– файли (*) + Empty property assignment + Порожнє Ð¿Ñ€Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð²Ð»Ð°ÑтивоÑÑ‚Ñ– - - Directories - Каталоги + Attached properties cannot be used here + Прикріплені влаÑтивоÑÑ‚Ñ– не можуть бути тут викориÑтані - - - - - &Open - &Відкрити + Non-existent attached object + ÐеіÑнуючий прикріплений об'єкт - - - &Save - &Зберегти + Invalid attached object assignment + Ðеправильне Ð¿Ñ€Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð¿Ñ€Ð¸ÐºÑ€Ñ–Ð¿Ð»ÐµÐ½Ð¾Ð³Ð¾ об'єкта - - Open - Відкрити + Cannot assign to non-existent default property + Ðеможливо призначити до неіÑнуючої типової влаÑтивоÑÑ‚Ñ– - - %1 already exists. -Do you want to replace it? - %1 вже Ñ–Ñнує. -ПерезапиÑати? + Cannot assign to non-existent property "%1" + Ðеможливо призначити неіÑнуючій влаÑтивоÑÑ‚Ñ– "%1" - - %1 -File not found. -Please verify the correct file name was given. - %1. -Файл не знайдено. -ПереконайтеÑÑ, що введено правильне ім'Ñ Ñ„Ð°Ð¹Ð»Ñƒ. + Invalid use of namespace + Ðеправильне викориÑÑ‚Ð°Ð½Ð½Ñ Ð¿Ñ€Ð¾Ñтору імен - - My Computer - Мій комп'ютер + Not an attached property name + Ðе Ñ” назвою прикріпленої влаÑтивоÑÑ‚Ñ– - - &Rename - &Перейменувати + Invalid use of id property + Ðеправильне викориÑÑ‚Ð°Ð½Ð½Ñ Ð²Ð»Ð°ÑтивоÑÑ‚Ñ– id - - &Delete - &Витерти + Property has already been assigned a value + ВлаÑтивоÑÑ‚Ñ– вже призначено Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ - - Show &hidden files - Показати &приховані файли + Invalid grouped property access + Ðеправильний доÑтуп до згрупованої влаÑтивоÑÑ‚Ñ– - - - Back - Ðазад + Cannot assign a value directly to a grouped property + Ðеможливо призначити Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð±ÐµÐ·Ð¿Ð¾Ñередньо до згрупованої влаÑтивоÑÑ‚Ñ– - - - Parent Directory - БатьківÑький каталог + Invalid property use + Ðеправильне викориÑÑ‚Ð°Ð½Ð½Ñ Ð²Ð»Ð°ÑтивоÑÑ‚Ñ– - - - List View - ВиглÑд ÑпиÑком + Property assignment expected + ОчікувалоÑÑŒ Ð¿Ñ€Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð²Ð»Ð°ÑтивоÑÑ‚Ñ– - - - Detail View - ВиглÑд з подробицÑми + Single property assignment expected + ОчікуєтьÑÑ Ð¾Ð´Ð¸Ð½Ð¾Ñ‡Ð½Ðµ Ð¿Ñ€Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð²Ð»Ð°ÑтивоÑÑ‚Ñ– - - - Files of type: - Тип файлів: + Unexpected object assignment + Ðеочікуване Ð¿Ñ€Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð¾Ð±'єкта - - - Directory: - Каталог: + Cannot assign object to list + Ðеможливо призначити об'єкт ÑпиÑку - -File not found. -Please verify the correct file name was given - -Файл не знайдено. -ПереконайтеÑÑ, що введено правильне ім'Ñ Ñ„Ð°Ð¹Ð»Ñƒ + Can only assign one binding to lists + Можна призначити лише один зв'Ñзок до ÑпиÑків - - - %1 -Directory not found. -Please verify the correct directory name was given. - %1. -Каталог не знайдено. -ПереконайтеÑÑ, що введено правильне ім'Ñ ÐºÐ°Ñ‚Ð°Ð»Ð¾Ð³Ñƒ. + Cannot assign primitives to lists + Ðеможливо призначити примітиви до ÑпиÑків - - '%1' is write protected. -Do you want to delete it anyway? - "%1" захищено від запиÑу. -ДійÑно вилучити? + Cannot assign multiple values to a script property + Ðеможливо призначити декілька значень влаÑтивоÑÑ‚Ñ– Ñкрипту - - Are sure you want to delete '%1'? - ДійÑно вилучити "%1"? + Invalid property assignment: script expected + Ðеправильне приÑÐ²Ð¾Ñ”Ð½Ð½Ñ Ð²Ð»Ð°ÑтивоÑÑ‚Ñ–: очікувавÑÑ Ñкрипт - - Could not delete directory. - Ðеможливо вилучити каталог. + Cannot assign object to property + Ðеможливо призначити об'єкт влаÑтивоÑÑ‚Ñ– - - Recent Places - + "%1" cannot operate on "%2" + "%1" не може оперувати над "%2" - - All Files (*.*) - Ð’ÑÑ– файли (*.*) + Duplicate default property + Дубльована типова влаÑтивіÑÑ‚ÑŒ - - Save As - Зберегти, Ñк + Duplicate property name + Дубльована назва влаÑтивоÑÑ‚Ñ– - - Drive - ДиÑк + Property names cannot begin with an upper case letter + Ðазви влаÑтивоÑтей не можуть починатиÑÑŒ з великої літери - - - File - Файл + Illegal property name + ÐеприпуÑтима назва влаÑтивоÑÑ‚Ñ– - - Unknown - Ðевідомо + Duplicate signal name + Дубльована назва Ñигналу - - Find Directory - Знайти каталог + Signal names cannot begin with an upper case letter + Ðазви Ñигналів не можуть починатиÑÑŒ з великої літери - Where: - Де: + Illegal signal name + ÐеприпуÑтима назва Ñигналу - - Show - Показати + Duplicate method name + Дубльована назва методу - - - Forward - Вперед + Method names cannot begin with an upper case letter + Ðазви методів не можуть починатиÑÑŒ з великої літери - - New Folder - Ðова тека + Illegal method name + ÐеприпуÑтима назва методу - - &New Folder - &Ðова тека + Property value set multiple times + Ð—Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð²Ð»Ð°ÑтивоÑÑ‚Ñ– вÑтановлено декілька разів - - - &Choose - &Вибрати + Invalid property nesting + Ðеправильне Ð²ÐºÐ»Ð°Ð´ÐµÐ½Ð½Ñ Ð²Ð»Ð°ÑтивоÑтей - Save &as: - Зберегти, &Ñк: + Cannot override FINAL property + Ðеможливо перевизначити влаÑтивіÑÑ‚ÑŒ FINAL - - Remove - Вилучити + Invalid property type + Ðеправильне тип влаÑтивоÑÑ‚Ñ– - - - File &name: - &Ім'Ñ Ñ„Ð°Ð¹Ð»Ñƒ: + Invalid empty ID + Ðеправильний порожній ID - - - Look in: - Пошук в: + IDs cannot start with an uppercase letter + Ідентифікатори не можуть починатиÑÑŒ з великої літери - - - Create New Folder - Створити нову теку + IDs must start with a letter or underscore + Ідентифікатори повинні починатиÑÑŒ з літери чи підкреÑÐ»ÐµÐ½Ð½Ñ - - - QFileSystemModel - - Invalid filename - Ðеправильне ім'Ñ Ñ„Ð°Ð¹Ð»Ñƒ + IDs must contain only letters, numbers, and underscores + Ідентифікатори повинні міÑтити лише літери, цифри та підкреÑÐ»ÐµÐ½Ð½Ñ - - <b>The name "%1" can not be used.</b><p>Try using another name, with fewer characters or no punctuations marks. - <b>Ðеможливо викориÑтати ім'Ñ "%1".</b><p>Спробуйте інше ім'Ñ, меншої довжини або без знаків пунктуації. + ID illegally masks global JavaScript property + Ідентифікатор неправильно маÑкує глобальну влаÑтивіÑÑ‚ÑŒ JavaScript - - Name - Ім'Ñ + No property alias location + ВідÑÑƒÑ‚Ð½Ñ Ð¿Ð¾Ð·Ð¸Ñ†Ñ–Ñ Ð¿Ñевдоніма влаÑтивоÑÑ‚Ñ– - - Size - Розмір + Invalid alias location + Ðепраильна Ð¿Ð¾Ð·Ð¸Ñ†Ñ–Ñ Ð¿Ñевдоніму - - Kind - Match OS X Finder - Тип + Invalid alias reference. An alias reference must be specified as <id> or <id>.<property> + Ðеправильне поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° пÑевдонім. ПоÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° пÑевдонім має бути вказане, Ñк <id> або <id>.<property> - - Type - All other platforms - Тип + Invalid alias reference. Unable to find id "%1" + Ðеправильне поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° пÑевдонім. Ðеможливо знайти id "%1" + + + QDeclarativeComponent - - Date Modified - Дата зміни + Invalid empty URL + Ðеправильний порожній URL + + + QDeclarativeCompositeTypeManager - - My Computer - Мій комп'ютер + Resource %1 unavailable + РеÑÑƒÑ€Ñ %1 недоÑтупний - - Computer - Комп'ютер + Namespace %1 cannot be used as a type + ПроÑÑ‚Ñ–Ñ€ імен %1 не може бути викориÑтаний Ñк тип - - %1 TB - %1 ТБ + %1 %2 + %1 %2 - - %1 GB - %1 ГБ + Type %1 unavailable + Тип %1 недоÑтупний + + + QDeclarativeConnections - - %1 MB - %1 МБ + Cannot assign to non-existent property "%1" + Ðеможливо призначити неіÑнуючій влаÑтивоÑÑ‚Ñ– "%1" - - %1 KB - %1 КБ + Connections: nested objects not allowed + З’єднаннÑ: вкладені об’єкти не дозволÑÑŽÑ‚ÑŒÑÑ - - %1 bytes - %1 байтів + Connections: syntax error + З’єднаннÑ: ÑинтакÑична помилка + + + Connections: script expected + З’єднаннÑ: очікувавÑÑ Ñкрипт - QFontDatabase + QDeclarativeEngine - - - Normal - + executeSql called outside transaction() + executeSql було викликано поза transaction() - - - - Bold - + Read-only Transaction + Ð¢Ñ€Ð°Ð½Ð·Ð°ÐºÑ†Ñ–Ñ Ð»Ð¸ÑˆÐµ Ð´Ð»Ñ Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ - - - Demi Bold - + Version mismatch: expected %1, found %2 + РозбіжніÑÑ‚ÑŒ верÑій: очікувалаÑÑŒ %1, знайдена %2 - - - - Black - + SQL transaction failed + Збій транзакції SQL - - Demi - + transaction: missing callback + транзакціÑ: відÑутній зворотній виклик - - - Light - + SQL: database version mismatch + SQL: розбіжніÑÑ‚ÑŒ верÑій бази даних + + + QDeclarativeFlipable - - - Italic - + front is a write-once property + ВлаÑтивіÑÑ‚ÑŒ front лише Ð´Ð»Ñ Ð¾Ð´Ð½Ð¾Ñ€Ð°Ð·Ð¾Ð²Ð¾Ð³Ð¾ запиÑу - - - Oblique - - - - - Any - - - - - Latin - + back is a write-once property + ВлаÑтивіÑÑ‚ÑŒ back лише Ð´Ð»Ñ Ð¾Ð´Ð½Ð¾Ñ€Ð°Ð·Ð¾Ð²Ð¾Ð³Ð¾ запиÑу + + + QDeclarativeImportDatabase - - Greek - + module "%1" definition "%2" not readable + неможливо прочитати Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ "%2" Ð¼Ð¾Ð´ÑƒÐ»Ñ "%1" - - Cyrillic - + plugin cannot be loaded for module "%1": %2 + неможливо завантажити додаток Ð´Ð»Ñ Ð¼Ð¾Ð´ÑƒÐ»Ñ "%1": %2 - - Armenian - + module "%1" plugin "%2" not found + не знайдено додаток "%2" Ð¼Ð¾Ð´ÑƒÐ»Ñ "%1" - - Hebrew - + module "%1" version %2.%3 is not installed + модуль "%1" верÑÑ–Ñ— %2.%3 не вÑтановлено - - Arabic - + module "%1" is not installed + модуль "%1" не вÑтановлено - - Syriac - + "%1": no such directory + "%1": тека не Ñ–Ñнує - - Thaana - + import "%1" has no qmldir and no namespace + import "%1" не має ні qmldir, ні namespace - - Devanagari - + - %1 is not a namespace + - %1 не Ñ” проÑтором імен - - Bengali - + - nested namespaces not allowed + - вкладені проÑтори імен не дозволÑÑŽÑ‚ÑŒÑÑ - - Gurmukhi - + local directory + локальна тека - - Gujarati - + is ambiguous. Found in %1 and in %2 + Ñ” неоднозначним. Знайдено в %1 та в %2 - - Oriya - + is ambiguous. Found in %1 in version %2.%3 and %4.%5 + Ñ” неоднозначним. Знайдено в %1 верÑÑ–Ñ— %2.%3 та %4.%5 - - Tamil - + is instantiated recursively + інÑтанціюєтьÑÑ Ñ€ÐµÐºÑƒÑ€Ñивно - - Telugu - + is not a type + не Ñ” типом + + + QDeclarativeKeyNavigationAttached - - Kannada - + KeyNavigation is only available via attached properties + KeyNavigation доÑтупна лише через прикріплені влаÑтивоÑÑ‚Ñ– + + + QDeclarativeKeysAttached - - Malayalam - + Keys is only available via attached properties + Keys доÑтупні лише через прикріплені влаÑтивоÑÑ‚Ñ– + + + QDeclarativeListModel - - Sinhala - + remove: index %1 out of range + remove: Ñ–Ð½Ð´ÐµÐºÑ %1 поза межами діапазону - - Thai - + insert: value is not an object + insert: Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð½Ðµ Ñ” об’єктом - - Lao - + insert: index %1 out of range + insert: Ñ–Ð½Ð´ÐµÐºÑ %1 поза межами діапазону - - Tibetan - + move: out of range + move: поза межами діапазону - - Myanmar - + append: value is not an object + append: Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð½Ðµ Ñ” об’єктом - - Georgian - + set: value is not an object + set: Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð½Ðµ Ñ” об’єктом - - Khmer - + set: index %1 out of range + set: Ñ–Ð½Ð´ÐµÐºÑ %1 поза межами діапазону - - Simplified Chinese - + ListElement: cannot contain nested elements + ListElement: не може міÑтити вкладені елементи - - Traditional Chinese - + ListElement: cannot use reserved "id" property + ListElement: не може викориÑтовувати зарезервовану влаÑтивіÑÑ‚ÑŒ "id" - - Japanese - + ListElement: cannot use script for property value + ListElement: неможливо викориÑтовувати Ñкрипт в ÑкоÑÑ‚Ñ– Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð²Ð»Ð°ÑтивоÑÑ‚Ñ– - - Korean - + ListModel: undefined property '%1' + ListModel: невизначена влаÑтивіÑÑ‚ÑŒ '%1' + + + QDeclarativeLoader - - Vietnamese - + Loader does not support loading non-visual elements. + Завантажувач не підтримує Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð½ÐµÐ²Ñ–Ð·ÑƒÐ°Ð»ÑŒÐ½Ð¸Ñ… елементів. + + + QDeclarativeParentAnimation - - Symbol - + Unable to preserve appearance under complex transform + Ðеможливо зберегти зовнішній виглÑд при Ñкладному перетворенні - - Ogham - + Unable to preserve appearance under non-uniform scale + Ðеможливо зберегти зовнішній виглÑд при неоднорідному маÑштабі - - Runic - + Unable to preserve appearance under scale of 0 + Ðеможливо зберегти зовнішній виглÑд при нульовому маÑштабі - QFontDialog + QDeclarativeParentChange - - &Font - &Шрифт + Unable to preserve appearance under complex transform + Ðеможливо зберегти зовнішній виглÑд при Ñкладному перетворенні - - Font st&yle - Ст&иль шрифту + Unable to preserve appearance under non-uniform scale + Ðеможливо зберегти зовнішній виглÑд при неоднорідному маÑштабі - - &Size - &Розмір + Unable to preserve appearance under scale of 0 + Ðеможливо зберегти зовнішній виглÑд при нульовому маÑштабі + + + QDeclarativeParser - - Effects - Ефекти + Illegal unicode escape sequence + ÐеприпуÑтима керуюча поÑлідовніÑÑ‚ÑŒ Unicode - - Stri&keout - Пере&креÑлити + Illegal character + ÐеприпуÑтимий Ñимвол - - &Underline - &ПідкреÑлити + Unclosed string at end of line + Ðезакритий Ñ€Ñдок в кінці файлу - - Sample - Зразок + Illegal escape squence + ÐеприпуÑтима керуюча поÑлідовніÑÑ‚ÑŒ - - Wr&iting System - СиÑтема з&апиÑу + Unclosed comment at end of file + Ðезакритий коментар в кінці файлу - - - Select Font - Виберіть шрифт + Illegal syntax for exponential number + ÐеприпуÑтимий ÑинтакÑÐ¸Ñ Ð´Ð»Ñ ÐµÐºÑпоненційного чиÑла - - - QFtp - - - Not connected - Ðе з'єднано + Identifier cannot start with numeric literal + Ідентифікатор не може починатиÑÑŒ за чиÑельного літералу - - - Host %1 not found - Вузол %1 не знайдено + Unterminated regular expression literal + Ðезавершений літерал регулÑрного виразу - - - Connection refused to host %1 - Відмовлено в з'єднанні до вузла %1 + Invalid regular expression flag '%0' + Ðеправильний прапорець регулÑрного виразу ’%0’ - - Connection timed out to host %1 - + Unterminated regular expression backslash sequence + Ðезавершена екранована поÑлідовніÑÑ‚ÑŒ регулÑрного виразу - - - - Connected to host %1 - З'єднано з вузлом %1 + Unterminated regular expression class + Ðезавершений ÐºÐ»Ð°Ñ Ñ€ÐµÐ³ÑƒÐ»Ñрного виразу - - - Connection refused for data connection - Відмовлено в з'єднанні Ð´Ð»Ñ ÐºÐ°Ð½Ð°Ð»Ñƒ даних + Syntax error + СинтакÑична помилка - - - - - Unknown error - Ðевідома помилка + Unexpected token `%1' + Ðеочікуваний токен `%1' - - - Connecting to host failed: -%1 - Помилка з'Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð´Ð¾ вузла: -%1 + Expected token `%1' + ОчікувавÑÑ Ñ‚Ð¾ÐºÐµÐ½ `%1' - - - Login failed: -%1 - Помилка входженнÑ: -%1 + Property value set multiple times + Ð—Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð²Ð»Ð°ÑтивоÑÑ‚Ñ– вÑтановлено декілька разів - - - Listing directory failed: -%1 - Помилка Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ ÑпиÑку каталогів:%1 + Expected type name + ОчікувалаÑÑŒ назва типу - - - Changing directory failed: -%1 - Помилка переходу в каталог: -%1 + Invalid import qualifier ID + Ðеправильний ID Ñпецифікатору імпорту - - - Downloading file failed: -%1 - Помилка Ð·Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñƒ: -%1 + Reserved name "Qt" cannot be used as an qualifier + Зарезервоване Ñ–Ð¼â€™Ñ "Qt" не може бути заÑтоÑоване в ÑкоÑÑ‚Ñ– Ñпецифікатора - - - Uploading file failed: -%1 - Помилка Ð²Ñ–Ð´Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñƒ: -%1 + Script import qualifiers must be unique. + Специфікатори імпорту Ñкрипту мають бути унікальними. - - - Removing file failed: -%1 - Помилка Ð²Ð¸Ð»ÑƒÑ‡ÐµÐ½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñƒ:%1 + Script import requires a qualifier + Імпорт Ñкрипту вимагає Ñпецифікатора - - - Creating directory failed: -%1 - Помилка ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ ÐºÐ°Ñ‚Ð°Ð»Ð¾Ð³Ñƒ:%1 + Library import requires a version + Імпорт бібліотеки вимагає верÑÑ–Ñ— - - - Removing directory failed: -%1 - Помилка Ð²Ð¸Ð»ÑƒÑ‡ÐµÐ½Ð½Ñ ÐºÐ°Ñ‚Ð°Ð»Ð¾Ð³Ñƒ: -%1 + Expected parameter type + ОчікувавÑÑ Ñ‚Ð¸Ð¿ параметра - - - - Connection closed - З'Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð·Ð°ÐºÑ€Ð¸Ñ‚Ð¾ + Invalid property type modifier + Ðеправильний модифікатор типу влаÑтивоÑÑ‚Ñ– - - Host %1 found - Знайдено вузол %1 + Unexpected property type modifier + Ðеочікуваний модифікатор типу влаÑтивоÑÑ‚Ñ– - - Connection to %1 closed - З'Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð· %1 закрито + Expected property type + ОчікувавÑÑ Ñ‚Ð¸Ð¿ влаÑтивоÑÑ‚Ñ– - - Host found - Знайдено вузол + Readonly not yet supported + "Тільки Ð´Ð»Ñ Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ" ще не підтримуєтьÑÑ - - Connected to host - З'єднано з вузлом + JavaScript declaration outside Script element + Ð”ÐµÐºÐ»Ð°Ñ€Ð°Ñ†Ñ–Ñ JavaScript поза межами елемента Script - QHostInfo + QDeclarativePauseAnimation - - Unknown error - Ðевідома помилка + Cannot set a duration of < 0 + Ðе можу вÑтановити триваліÑÑ‚ÑŒ < 0 - QHostInfoAgent + QDeclarativePixmap - - - - - - - - - Host not found - Вузол не знайдено + Error decoding: %1: %2 + Помилка декодуваннÑ: %1: %2 - - - - - Unknown address type - Ðевідомий тип адреÑи + Failed to get image from provider: %1 + Збій Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð·Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Ð²Ñ–Ð´ поÑтачальника: %1 - - - - Unknown error - Ðевідома помилка + Cannot open: %1 + Ðеможливо відкрити: %1 - QHttp + QDeclarativePropertyAnimation - - HTTPS connection requested but SSL support not compiled in - + Cannot set a duration of < 0 + Ðе можу вÑтановити триваліÑÑ‚ÑŒ < 0 + + + QDeclarativePropertyChanges - - - - - Unknown error - Ðевідома помилка + PropertyChanges does not support creating state-specific objects. + PropertyChanges не підтримує ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð¾Ð±â€™Ñ”ÐºÑ‚Ñ–Ð² Ñпецифічних до Ñтану. - - - Request aborted - Запит перервано + Cannot assign to non-existent property "%1" + Ðеможливо призначити неіÑнуючій влаÑтивоÑÑ‚Ñ– "%1" - - - No server set to connect to - Ðе вказано Ñервер Ð´Ð»Ñ Ð·'Ñ”Ð´Ð½Ð°Ð½Ð½Ñ + Cannot assign to read-only property "%1" + Ðеможливо призначити влаÑтивоÑÑ‚Ñ– лише Ð´Ð»Ñ Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ "%1" + + + QDeclarativeTextInput - - - Wrong content length - Ðеправильна довжина вміÑту + Could not load cursor delegate + Ðе вдалоÑÑ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶Ð¸Ñ‚Ð¸ делегат курÑору - - - Server closed connection unexpectedly - Сервер неÑподівано закрив з'Ñ”Ð´Ð½Ð°Ð½Ð½Ñ + Could not instantiate cursor delegate + Ðе вдалоÑÑ Ñ–Ð½Ñтанціювати делегат курÑору + + + QDeclarativeVME - - Unknown authentication method - + Unable to create object of type %1 + Ðеможливо Ñтворити об’єкт типу %1 - - Error writing response to device - + Cannot assign value %1 to property %2 + Ðеможливо призначити влаÑтивоÑÑ‚Ñ– %2 Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ %1 - - - Connection refused - Відмовлено у зв'Ñзку + Cannot assign object type %1 with no default method + Ðеможливо призначити об’єкт типу %1 без методу за замовчуваннÑм - - - - Host %1 not found - Вузол %1 не знайдено + Cannot connect mismatched signal/slot %1 %vs. %2 + Ðеможливо з’єднати неÑуміÑний Ñигнал/Ñлот (%1 проти %2) - - - - - HTTP request failed - Помилка запиту HTTP + Cannot assign an object to signal property %1 + Ðеможливо призначити об’єкт до влаÑтивоÑÑ‚Ñ– Ñигналу %1 - - - Invalid HTTP response header - Ðеправильний заголовок відповіді HTTP + Cannot assign object to list + Ðеможливо призначити об’єкт до ÑпиÑку - - - - - Invalid HTTP chunked body - Ðеправильно розділене тіло HTTP + Cannot assign object to interface property + Ðеможливо призначити об’єкт до влаÑтивоÑÑ‚Ñ– інтерфейÑу - - Host %1 found - Знайдено вузол %1 + Unable to create attached object + Ðеможливо Ñтворити прикріплений об’єкт - - Connected to host %1 - З'єднано з вузлом %1 + Cannot set properties on %1 as it is null + Ðеможливо вÑтановити влаÑтивоÑÑ‚Ñ– Ð´Ð»Ñ %1, оÑкільки він нульовий + + + QDeclarativeVisualDataModel - - Connection to %1 closed - З'Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð· %1 закрито + Delegate component must be Item type. + Компонент делегату має бути типу Item. + + + QDeclarativeXmlListModel - - Host found - Знайдено вузол + Qt was built without support for xmlpatterns + Бібліотека Qt була зібрана без підтримки xmlpatterns + + + QDeclarativeXmlListModelRole - - Connected to host - З'єднано з вузлом + An XmlRole query must not start with '/' + Запит XmlRole не повинен починатиÑÑŒ з '/' + + + QDeclarativeXmlRoleList - - - Connection closed - З'Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð·Ð°ÐºÑ€Ð¸Ñ‚Ð¾ + An XmlListModel query must start with '/' or "//" + Запит XmlListModel не повинен починатиÑÑŒ з '/' або "//" + + + QDial - - Proxy authentication required - ПрокÑÑ– потребує автентифікації + QDial + - - Authentication required - ÐÐ²Ñ‚ÐµÐ½Ñ‚Ð¸Ñ„Ñ–ÐºÐ°Ñ†Ñ–Ñ Ð¾Ð±Ð¾Ð²'Ñзкова + SpeedoMeter + - - Connection refused (or timed out) - + SliderHandle + + + + QDialog - - Proxy requires authentication - + Done + Завершено - - Host requires authentication - + What's This? + Що це? + + + QDialogButtonBox - - Data corrupted - + OK + - - Unknown protocol specified - + &OK + &OK - - SSL handshake failed - + &Save + &Зберегти - - - QHttpSocketEngine - - Did not receive HTTP response from proxy - + Save + Зберегти - - Error parsing authentication request from proxy - + Open + Відкрити - - Authentication required - ÐÐ²Ñ‚ÐµÐ½Ñ‚Ð¸Ñ„Ñ–ÐºÐ°Ñ†Ñ–Ñ Ð¾Ð±Ð¾Ð²'Ñзкова + &Cancel + &СкаÑувати - - Proxy denied connection - + Cancel + СкаÑувати - - Error communicating with HTTP proxy - + &Close + Закри&ти - - Proxy server not found - + Close + Закрити - - Proxy connection refused - + Apply + ЗаÑтоÑувати - - Proxy server connection timed out - + Reset + Скинути - - Proxy connection closed prematurely - + Help + Довідка - - - QIBaseDriver - - Error opening database - Ðеможливо відкрити базу даних + Don't Save + Ðе зберігати - - Could not start transaction - Ðеможливо почати транзакцію + Close without Saving + Закрити без Ð·Ð±ÐµÑ€ÐµÐ¶ÐµÐ½Ð½Ñ - - Unable to commit transaction - Ðеможливо завершити транзакцію + Discard + Відхилити - - Unable to rollback transaction - Ðеможливо відкотити транзакцію + &Yes + Т&ак - - - QIBaseResult - - Unable to create BLOB - Ðеможливо Ñтворити BLOB + Yes to &All + Так &Ð´Ð»Ñ Ð²ÑÑ–Ñ… - - Unable to write BLOB - Ðеможливо запиÑати BLOB + &No + &ÐÑ– - - Unable to open BLOB - Ðеможливо відкрити BLOB + N&o to All + ÐÑ– Ð´Ð»Ñ Ð²Ñ&Ñ–Ñ… - - Unable to read BLOB - Ðеможливо прочитати BLOB + Save All + Зберегти вÑе - - - Could not find array - Ðеможливо знайти маÑив + Abort + Перервати - - Could not get array data - Ðеможливо отримати дані маÑиву + Retry + Повторити - - Could not get query info - Ðеможливо отримати дані запиту + Ignore + Ігнорувати - - Could not start transaction - Ðеможливо почати транзакцію + Restore Defaults + Відновити типово + + + QDirModel - - Unable to commit transaction - Ðеможливо завершити транзакцію + Name + Ðазва - - Could not allocate statement - Ðеможливо розміÑтити оператор + Size + Розмір - - Could not prepare statement - Ðеможливо підготувати оператор + Kind + Match OS X Finder + Тип - - - Could not describe input statement - Ðеможливо опиÑати вхідний оператор + Type + All other platforms + Тип - - Could not describe statement - Ðеможливо опиÑати оператор + Date Modified + Дата зміни + + + QDockWidget - - Unable to close statement - Ðеможливо закрити оператор + Close + Закрити - - Unable to execute query - Ðеможливо виконати запит + Dock + Закріпити - - Could not fetch next item - Ðеможливо вибрати наÑтупний елемент + Float + Відкріпити + + + QDoubleSpinBox - - Could not get statement info - Ðеможливо отримати дані оператора + More + Більше + + + Less + Менше - QIODevice + QErrorMessage - - Permission denied - Відмовлено у доÑтупі + Debug Message: + Зневаджувальне повідомленнÑ: - - Too many open files - Забагато відкритих файлів + Warning: + ПопередженнÑ: - - No such file or directory - Ðемає такого файлу або каталогу + Fatal Error: + Фатальна помилка: - - No space left on device - Ðа приÑтрої не лишилоÑÑŒ міÑÑ†Ñ + &Show this message again + &Показувати це Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð·Ð½Ð¾Ð²Ñƒ - - Unknown error - Ðевідома помилка + &OK + &OK - QInputContext + QFile - - XIM - XIM + Destination file exists + Файл-отримувач Ñ–Ñнує - - XIM input method - Метод Ð²Ð²ÐµÐ´ÐµÐ½Ð½Ñ XIM + Will not rename sequential file using block copy + ПоÑлідовний файл не буде перейменовано за допомогою блочного ÐºÐ¾Ð¿Ñ–ÑŽÐ²Ð°Ð½Ð½Ñ - - Windows input method - Метод Ð²Ð²ÐµÐ´ÐµÐ½Ð½Ñ Windows + Cannot remove source file + Ðеможливо видалити початковий файл - - Mac OS X input method - Метод Ð²Ð²ÐµÐ´ÐµÐ½Ð½Ñ Mac OS X + Cannot open %1 for input + Ðеможливо відкрити %1 Ð´Ð»Ñ Ð²Ð²ÐµÐ´ÐµÐ½Ð½Ñ - - - QInputDialog - - Enter a value: - + Cannot open for output + Ðеможливо відкрити Ð´Ð»Ñ Ð²Ð¸Ð²Ð¾Ð´Ñƒ - - - QLibrary - QLibrary::load_sys: Cannot load %1 (%2) - QLibrary::load_sys: неможливо завантажити %1 (%2) + Failure to write block + Збій запиÑу блока - QLibrary::unload_sys: Cannot unload %1 (%2) - QLibrary::unload_sys: неможливо вивантажити %1 (%2) + Cannot create %1 for output + Ðеможливо Ñтворити %1 Ð´Ð»Ñ Ð²Ð¸Ð²Ð¾Ð´Ñƒ + + + QFileDialog - QLibrary::resolve_sys: Symbol "%1" undefined in %2 (%3) - QLibrary::resolve_sys: Ñимвол "%1" не Ñ” визначеним в %2 (%3) + Look in: + ПереглÑд в: - - Could not mmap '%1': %2 - Помилка Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ mmap "%1": %2 + Back + Ðазад - - Plugin verification data mismatch in '%1' - Дані перевірки додатку не збігаютьÑÑ Ð² "%1" + Go back + Йти назад - - Could not unmap '%1': %2 - Помилка Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ unmap "%1": %2 + Forward + Вперед - - The plugin '%1' uses incompatible Qt library. (%2.%3.%4) [%5] - Додаток "%1" викориÑтовує неÑуміÑну бібліотеку Qt. (%2.%3.%4) [%5] + Go forward + Йти вперед - - The plugin '%1' uses incompatible Qt library. Expected build key "%2", got "%3" - Додаток "%1" викориÑтовує неÑуміÑну бібліотеку Qt. ОчікувавÑÑ ÐºÐ»ÑŽÑ‡ побудови "%2", отримано "%3" + Parent Directory + БатьківÑька тека - - Unknown error - Ðевідома помилка + Go to the parent directory + Перейти до батьківÑької теки - - - The shared library was not found. - Спільну бібліотеку не знайдено. + Create New Folder + Створити нову теку - - The file '%1' is not a valid Qt plugin. - Файл "%1" не Ñ” правильним додатком Qt. + Create a New Folder + Створити нову теку - - The plugin '%1' uses incompatible Qt library. (Cannot mix debug and release libraries.) - Додаток "%1" викориÑтовує неÑуміÑну бібліотеку Qt. (Ðе дозволÑєтьÑÑ Ð·Ð¼Ñ–ÑˆÑƒÐ²Ð°Ñ‚Ð¸ верÑÑ–ÑŽ бібліотеки Ð´Ð»Ñ Ð·Ð½ÐµÐ²Ð°Ð´Ð¶ÐµÐ½Ð½Ñ Ñ– верÑÑ–ÑŽ випуÑку.) + List View + СпиÑком - - - Cannot load library %1: %2 - + Change to list view mode + Перейти до переглÑду ÑпиÑком - - - Cannot unload library %1: %2 - + Detail View + Детально - - - Cannot resolve symbol "%1" in %2: %3 - + Change to detail view mode + Перейти до детального переглÑду - - - QLineEdit - - &Undo - &Повернути + Files of type: + Тип файлів: - - &Redo - П&овторити + Find Directory + Пошук теки - - Cu&t - Ви&різати + Open + Відкрити - - &Copy - &Копіювати + Save As + Зберегти Ñк - - &Paste - &Ð’Ñтавити + All Files (*) + УÑÑ– файли (*) - - Delete - Вилучити + Show + Показати - - Select All - Вибрати вÑе + &Rename + &Перейменувати - - - QLocalServer - - - %1: Name error - + &Delete + &Видалити - - %1: Permission denied - + Show &hidden files + Показувати при&ховані файли - - %1: Address in use - + &New Folder + &Ðова тека - - - %1: Unknown error %2 - + Directory: + Тека: - - - QLocalSocket - - - %1: Connection refused - + File &name: + &Ім'Ñ Ñ„Ð°Ð¹Ð»Ñƒ: - - - %1: Remote closed - + &Open + &Відкрити - - - - - %1: Invalid name - + &Save + &Зберегти - - - %1: Socket access error - + Directories + Теки - - - %1: Socket resource error - + &Choose + &Обрати - - - %1: Socket operation timed out - + %1 +Directory not found. +Please verify the correct directory name was given. + %1 +Тека не знайдена. +Будь лаÑка, перевірте, що вказане правильне ім'Ñ Ñ‚ÐµÐºÐ¸. - - - %1: Datagram too large - + %1 already exists. +Do you want to replace it? + %1 вже Ñ–Ñнує. +Бажаєте перезапиÑати його? - - - - %1: Connection error - + %1 +File not found. +Please verify the correct file name was given. + %1 +Файл не знайдено. +Будь лаÑка, перевірте, що вказане правильне ім'Ñ Ñ„Ð°Ð¹Ð»Ñƒ. - - - %1: The socket operation is not supported - + New Folder + Ðова тека - - %1: Unknown error - + '%1' is write protected. +Do you want to delete it anyway? + '%1' захищено від запиÑу. +Бажаєте видалити незважаючи на це? - - - %1: Unknown error %2 - + Are sure you want to delete '%1'? + Ви впевнені, що хочете видалити '%1'? - - - QMYSQLDriver - - Unable to open database ' - Ðеможливо відкрити базу даних + Could not delete directory. + Ðе вдалоÑÑ Ð²Ð¸Ð´Ð°Ð»Ð¸Ñ‚Ð¸ теку. - - Unable to connect - Ðеможливо з'єднатиÑÑ + Recent Places + Ðещодавні міÑÑ†Ñ - - Unable to begin transaction - Ðеможливо почати транзакцію + All Files (*.*) + УÑÑ– файли (*) - - Unable to commit transaction - Ðеможливо завершити транзакцію + Remove + Видалити - - Unable to rollback transaction - Ðеможливо відкотити транзакцію + My Computer + Мій комп'ютер - - - QMYSQLResult - - Unable to fetch data - Ðеможливо вибрати дані + Drive + ДиÑк - - Unable to execute query - Ðеможливо виконати запит + File + Файл - - Unable to store result - Ðеможливо запиÑати результат + File Folder + Match Windows Explorer + Тека - - - Unable to prepare statement - Ðеможливо підготувати оператор + Folder + All other platforms + Тека - - Unable to reset statement - Ðеможливо Ñкинути оператор + Alias + Mac OS X Finder + ПÑевдонім - - Unable to bind value - Ðеможливо прив'Ñзати Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ + Shortcut + All other platforms + Ð¡ÐºÐ¾Ñ€Ð¾Ñ‡ÐµÐ½Ð½Ñ - - Unable to execute statement - Ðеможливо виконати оператор + Unknown + Ðевідомо + + + QFileSystemModel - - - Unable to bind outvalues - Ðеможливо прив'Ñзати вихідні Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ + %1 TB + %1 Тб - - Unable to store statement results - Ðеможливо зберегти результати оператора + %1 GB + %1 Гб - - Unable to execute next query - + %1 MB + %1 Мб - - Unable to store next result - + %1 KB + %1 Кб - - - QMdiArea - - (Untitled) - + %1 bytes + %1 байт - - - QMdiSubWindow - - %1 - [%2] - %1 - [%2] + Invalid filename + Ðеправильне ім'Ñ Ñ„Ð°Ð¹Ð»Ñƒ - - Close - Закрити + <b>The name "%1" can not be used.</b><p>Try using another name, with fewer characters or no punctuations marks. + <b>Ім'Ñ "%1" не може бути викориÑтане.</b><p>Спробуйте викориÑтати інше ім'Ñ, меншої довжини або без знаків пунктуації. - - Minimize - Мінімізувати + Name + Ім'Ñ - - Restore Down - Відновити додолу + Size + Розмір - - &Restore - &Відновити + Kind + Match OS X Finder + Тип - - &Move - &ПереÑунути + Type + All other platforms + Тип - - &Size - &Розмір + Date Modified + Дата зміни - - Mi&nimize - Мі&німізувати + My Computer + Мій комп'ютер - - Ma&ximize - Ма&кÑимізувати + Computer + Комп'ютер - - Stay on &Top - ЛишатиÑÑ Ð½Ð°Ð´ &іншими + %1 byte(s) + %1 байт + + + QFontDatabase - - &Close - &Закрити + Normal + Звичайний - - - [%1] - + Bold + Жирний - - Maximize - МакÑимізувати + Demi Bold + Ðапівжирний - - Unshade - + Black + Чорний - - Shade - + Demi + Середній - - Restore - + Light + Світлий - - Help - Довідка + Italic + КурÑив - - Menu - Menu + Oblique + Ðахилений - - - QMenu - - - Close - Закрити + Any + Будь-Ñка - - - Open - Відкрити + Latin + Ð›Ð°Ñ‚Ð¸Ð½Ð¸Ñ†Ñ - - - - Execute - Виконати + Greek + Грецька - - - QMenuBar - About - Про + Cyrillic + ÐšÐ¸Ñ€Ð¸Ð»Ð¸Ñ†Ñ - Config - ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ + Armenian + ВірменÑька - Preference - Ð’Ð¿Ð¾Ð´Ð¾Ð±Ð°Ð½Ð½Ñ + Hebrew + Іврит - Options - Опції + Arabic + ÐрабÑька - Setting - Параметри + Syriac + СирійÑька - Setup - Ð’ÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ + Thaana + Тана - Quit - Вийти + Devanagari + Деванагарі - Exit - Вийти + Bengali + БенгальÑька - About %1 - Про %1 + Gurmukhi + Гурмукхі - About Qt - Про Qt + Gujarati + Гуджараті - Preferences - Ð’Ð¿Ð¾Ð´Ð¾Ð±Ð°Ð½Ð½Ñ + Oriya + ÐžÑ€Ñ–Ñ - Quit %1 - Вийти %1 + Tamil + ТамільÑька - - - QMessageBox - - Help - Довідка + Telugu + Телугу - - - - - OK - Гаразд + Kannada + Каннада - - About Qt - Про Qt + Malayalam + МалаÑлам - <p>This program uses Qt version %1.</p> - <p>Ð¦Ñ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð° викориÑтовує Qt верÑÑ–Ñ— %1.</p> + Sinhala + СингальÑька - <h3>About Qt</h3>%1<p>Qt is a C++ toolkit for cross-platform application development.</p><p>Qt provides single-source portability across MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qtopia Core.</p><p>Qt is a Trolltech product. See <a href="http://qt.nokia.com/">qt.nokia.com</a> for more information.</p> - <h3>Про Qt</h3>%1<p>Qt - це інÑтрументарій C++ Ð´Ð»Ñ Ð¼Ñ–Ð¶Ð¿Ð»Ð°Ñ‚Ñ„Ð¾Ñ€Ð¼Ð¾Ð²Ð¾Ñ— розробки.</p><p>Qt забезпечує мобільніÑÑ‚ÑŒ єдиних джерельних текÑтів між MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux та вÑіма оÑновними комерційними верÑÑ–Ñми Unix. Qt Ñ–Ñнує також Ð´Ð»Ñ Ð²Ð±ÑƒÐ´Ð¾Ð²Ð°Ð½Ð¸Ñ… приÑтроїв, таких, Ñк Qtopia Core.</p><p>Qt - це продукт компанії Trolltech. Більше інформації можна знайти на <a href="http://qt.nokia.com/">qt.nokia.com</a>.</p> + Thai + ТайÑька - - Show Details... - Показати подробиці... + Lao + ЛаоÑька - - Hide Details... - Сховати подробиці... + Tibetan + ТибетÑька - - <h3>About Qt</h3><p>This program uses Qt version %1.</p><p>Qt is a C++ toolkit for cross-platform application development.</p><p>Qt provides single-source portability across MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qt for Embedded Linux and Qt for Windows CE.</p><p>Qt is available under three different licensing options designed to accommodate the needs of our various users.</p>Qt licensed under our commercial license agreement is appropriate for development of proprietary/commercial software where you do not want to share any source code with third parties or otherwise cannot comply with the terms of the GNU LGPL version 2.1 or GNU GPL version 3.0.</p><p>Qt licensed under the GNU LGPL version 2.1 is appropriate for the development of Qt applications (proprietary or open source) provided you can comply with the terms and conditions of the GNU LGPL version 2.1.</p><p>Qt licensed under the GNU General Public License version 3.0 is appropriate for the development of Qt applications where you wish to use such applications in combination with software subject to the terms of the GNU GPL version 3.0 or where you are otherwise willing to comply with the terms of the GNU GPL version 3.0.</p><p>Please see <a href="http://qt.nokia.com/products/licensing">qt.nokia.com/products/licensing</a> for an overview of Qt licensing.</p><p>Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).</p><p>Qt is a Nokia product. See <a href="http://qt.nokia.com/">qt.nokia.com</a> for more information.</p> - + Myanmar + Ðœ'Ñнма - <p>This program uses Qt Open Source Edition version %1.</p><p>Qt Open Source Edition is intended for the development of Open Source applications. You need a commercial Qt license for development of proprietary (closed source) applications.</p><p>Please see <a href="http://qt.nokia.com/company/model/">qt.nokia.com/company/model/</a> for an overview of Qt licensing.</p> - <p>Ð¦Ñ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð° викориÑтовує Qt Open Source Edition верÑÑ–Ñ— %1.</p><p>Qt Open Source Edition призначено Ð´Ð»Ñ Ñ€Ð¾Ð·Ñ€Ð¾Ð±ÐºÐ¸ відкритих програмних заÑобів. Ð”Ð»Ñ Ñ€Ð¾Ð·Ñ€Ð¾Ð±ÐºÐ¸ влаÑницьких (закритих) програм вам потрібна комерційна Ð»Ñ–Ñ†ÐµÐ½Ð·Ñ–Ñ Ð´Ð»Ñ Qt.</p><p>ПереглÑньте <a href="http://qt.nokia.com/company/model/">qt.nokia.com/company/model/</a> щодо оглÑду ліцензій Qt.</p> + Georgian + ГрузинÑька - - - QMultiInputContext - - Select IM - Вибрати метод вводу + Khmer + КхмерÑька - - - QMultiInputContextPlugin - - Multiple input method switcher - Перемикач методів вводу + Simplified Chinese + КитайÑька Ñпрощена - - Multiple input method switcher that uses the context menu of the text widgets - Перемикач методів вводу, що викориÑтовує контекÑтне меню текÑтових віджетів + Traditional Chinese + КитайÑька традиційна - - - QNativeSocketEngine - - The remote host closed the connection - Віддалений вузол закрив з'Ñ”Ð´Ð½Ð°Ð½Ð½Ñ + Japanese + ЯпонÑька - - Network operation timed out - Перевищено термін Ð¾Ñ‡Ñ–ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð¼ÐµÑ€ÐµÐ¶ÐµÐ²Ð¾Ñ— дії + Korean + КорейÑька - - Out of resources - Вичерпано вÑÑ– реÑурÑи + Vietnamese + Ð’'єтнамÑька - - Unsupported socket operation - Ðепідтримувана Ð´Ñ–Ñ Ñокетів + Symbol + Символьна - - Protocol type not supported - Тип протоколу не підтримуєтьÑÑ + Ogham + Огам - - Invalid socket descriptor - Ðеправильний Ð¾Ð¿Ð¸Ñ Ñокету + Runic + Рунічна - - Network unreachable - Мережа недоÑÑжна + N'Ko + Ðко + + + QFontDialog - - Permission denied - Відмовлено у доÑтупі + Select Font + Виберіть шрифт - - Connection timed out - Перевищено термін Ð¾Ñ‡Ñ–ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð»Ñ Ð·'Ñ”Ð´Ð½Ð°Ð½Ð½Ñ + &Font + &Шрифт - - Connection refused - Відмовлено у зв'Ñзку + Font st&yle + &Стиль шрифту - - The bound address is already in use - Прив'Ñзана адреÑа вже викориÑтовуєтьÑÑ + &Size + &Розмір - - The address is not available - ÐдреÑа недоÑтупна + Effects + Ефекти - - The address is protected - ÐдреÑа захищена + Stri&keout + П&ерекреÑлений - - Unable to send a message - Ðеможливо відіÑлати Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ + &Underline + П&ідкреÑлений - - Unable to receive a message - Ðеможливо отримати Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ + Sample + Зразок - - Unable to write - Ðеможливо запиÑати + Wr&iting System + СиÑтема &пиÑемноÑÑ‚Ñ– + + + QFtp - - Network error - Помилка мережі + Not connected + Ðе під'єднано - - Another socket is already listening on the same port - Інший Ñокет вже Ñлухає цей порт + Host %1 not found + Вузол %1 не знайдено - - Unable to initialize non-blocking socket - Ðеможливо ініціалізувати неблокувальний Ñокет + Connection refused to host %1 + Відмова у з’єднанні з вузлом %1 - - Unable to initialize broadcast socket - Ðеможливо ініціалізувати широкомовний Ñокет + Connection timed out to host %1 + Ð§Ð°Ñ Ð½Ð° Ð·â€™Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð· вузлом %1 вичерпано - - Attempt to use IPv6 socket on a platform with no IPv6 support - Спроба викориÑтати Ñокет IPv6 на платформі без підтримки IPv6 + Connected to host %1 + З’єднано з вузлом %1 - - Host unreachable - Вузол недоÑÑжний + Connection refused for data connection + Відмова у з’єднанні Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐ´Ð°Ñ‡Ñ– даних - - Datagram was too large to send - Дейтаграма Ñ” завеликою Ð´Ð»Ñ Ð²Ñ–Ð´ÑÐ¸Ð»Ð°Ð½Ð½Ñ - - - - Operation on non-socket - Ð”Ñ–Ñ Ð½Ð° об'єкті, що не Ñ” Ñокетом - - - Unknown error Ðевідома помилка - - The proxy type is invalid for this operation - - - - - QNetworkAccessCacheBackend - - - Error opening %1 - + Connecting to host failed: +%1 + Відмова у з’єднанні з вузлом: +%1 - - - QNetworkAccessFileBackend - - Request for opening non-local file %1 - + Login failed: +%1 + Збій входу: +%1 - - Error opening %1: %2 - + Listing directory failed: +%1 + Збій переглÑду теки: +%1 - - Write error writing to %1: %2 - + Changing directory failed: +%1 + Збій зміни теки: +%1 - - Cannot open %1: Path is a directory - + Downloading file failed: +%1 + Збій Ð·Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñƒ: +%1 - - Read error reading from %1: %2 - + Uploading file failed: +%1 + Збій Ð²Ð¸Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñƒ: +%1 - - - QNetworkAccessFtpBackend - - No suitable proxy found - + Removing file failed: +%1 + Збій Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñƒ: +%1 - - Cannot open %1: is a directory - + Creating directory failed: +%1 + Збій ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ñ‚ÐµÐºÐ¸: +%1 - - Logging in to %1 failed: authentication required - + Removing directory failed: +%1 + Збій Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ñ‚ÐµÐºÐ¸: +%1 - - Error while downloading %1: %2 - + Connection closed + З'Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð·Ð°ÐºÑ€Ð¸Ñ‚Ð¾ - - Error while uploading %1: %2 - + Host %1 found + Вузол %1 не знайдено - - - QNetworkAccessHttpBackend - - No suitable proxy found - + Connection to %1 closed + З'Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð· %1 закрито - - - QNetworkReply - - Error downloading %1 - server replied: %2 - + Host found + Вузол не знайдено - - Protocol "%1" is unknown - + Connected to host + З’єднано з вузлом - QNetworkReplyImpl + QHostInfo - - - Operation canceled - + No host name given + Ім'Ñ Ð²ÑƒÐ·Ð»Ð° не задано + + + Unknown error + Ðевідома помилка - QOCIDriver + QHostInfoAgent - - Unable to logon - Ðеможливо зайти + No host name given + Ім'Ñ Ð²ÑƒÐ·Ð»Ð° не задано - - Unable to initialize - QOCIDriver - Ðеможливо ініціалізуватиQOCIDriver + Invalid hostname + Ðеправильне ім'Ñ Ð²ÑƒÐ·Ð»Ð° - - Unable to begin transaction - Ðеможливо почати транзакцію + Unknown address type + Ðевідомий тип адреÑи - - Unable to commit transaction - Ðеможливо завершити транзакцію + Host not found + Вузол не знайдено - - Unable to rollback transaction - Ðеможливо відкотити транзакцію + Unknown error + Ðевідома помилка - QOCIResult + QHttp - - - - Unable to bind column for batch execute - Ðеможливо прив'Ñзати Ñтовпчик Ð´Ð»Ñ Ð¿Ð°ÐºÐµÑ‚Ð½Ð¾Ð³Ð¾ Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ + HTTPS connection requested but SSL support not compiled in + Запитане Ð·â€™Ñ”Ð´Ð½Ð°Ð½Ð½Ñ HTTPS, але підтримка SSL не вкомпільована - - Unable to execute batch statement - Ðеможливо виконати пакетний оператор + Unknown error + Ðевідома помилка - - Unable to goto next - Ðеможливо перейти до наÑтупного + Request aborted + Запит перервано - - Unable to alloc statement - Ðеможливо розміÑтити оператор + No server set to connect to + Ðе вÑтановлено Ñервер Ð´Ð»Ñ Ð·â€™Ñ”Ð´Ð½Ð°Ð½Ð½Ñ - - Unable to prepare statement - Ðеможливо підготувати оператор + Wrong content length + Ðеправильна довжина вміÑту - - Unable to bind value - Ðеможливо прив'Ñзати Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ + Server closed connection unexpectedly + Сервер неÑподівано закрив Ð·â€™Ñ”Ð´Ð½Ð°Ð½Ð½Ñ - Unable to execute select statement - Ðеможливо виконати оператор Ð²Ð¸Ð±Ð¸Ñ€Ð°Ð½Ð½Ñ + Connection refused (or timed out) + У з’єднанні відмовлено (або Ñ‡Ð°Ñ Ð¾Ñ‡Ñ–ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð²Ð¸Ñ‡ÐµÑ€Ð¿Ð°Ð½Ð¾) - - Unable to execute statement - Ðеможливо виконати оператор + Host %1 not found + Вузол %1 не знайдено - - - QODBCDriver - - Unable to connect - Ðеможливо з'єднатиÑÑ + HTTP request failed + Збій запиту HTTP - - Unable to connect - Driver doesn't support all needed functionality - Ðеможливо з'єднатиÑÑ - драйвер не підтримує вÑÑ–Ñ… потрібних функцій + Invalid HTTP response header + Ðеправильний заголовок відповіді HTTP - - Unable to disable autocommit - Ðеможливо вимкнути Ð°Ð²Ñ‚Ð¾Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð½Ñ Ñ‚Ñ€Ð°Ð½Ð·Ð°ÐºÑ†Ñ–Ð¹ + Unknown authentication method + Ðевідомий метод авторизації - - Unable to commit transaction - Ðеможливо завершити транзакцію + Proxy authentication required + Ðеобхідна Ð°Ð²Ñ‚Ð¾Ñ€Ð¸Ð·Ð°Ñ†Ñ–Ñ Ð½Ð° прокÑÑ–-Ñервері - - Unable to rollback transaction - Ðеможливо відкотити транзакцію + Authentication required + Ðеобхідна Ð°Ð²Ñ‚Ð¾Ñ€Ð¸Ð·Ð°Ñ†Ñ–Ñ - - Unable to enable autocommit - Ðеможливо ввімкнути Ð°Ð²Ñ‚Ð¾Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð½Ñ Ñ‚Ñ€Ð°Ð½Ð·Ð°ÐºÑ†Ñ–Ð¹ + Invalid HTTP chunked body + Ðеправильно фрагментовані дані HTTP - - - QODBCResult - - - QODBCResult::reset: Unable to set 'SQL_CURSOR_STATIC' as statement attribute. Please check your ODBC driver configuration - QODBCResult::reset: неможливо вÑтановити 'SQL_CURSOR_STATIC', Ñк атрибут оператора. Будь лаÑка, перевірте Ð½Ð°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ñ€Ð°Ð¹Ð²ÐµÑ€Ð° ODBC + Error writing response to device + Помилка запиÑу відповіді до приÑтрою - - - Unable to execute statement - Ðеможливо виконати оператор + Connection refused + У з'єднанні відмовлено - - Unable to fetch next - Ðеможливо вибрати наÑтупний + Connection closed + З'Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð·Ð°ÐºÑ€Ð¸Ñ‚Ð¾ - - Unable to prepare statement - Ðеможливо підготувати оператор + Proxy requires authentication + Ðеобхідна Ð°Ð²Ñ‚Ð¾Ñ€Ð¸Ð·Ð°Ñ†Ñ–Ñ Ð½Ð° прокÑÑ–-Ñервері - - Unable to bind variable - Ðеможливо прив'Ñзати змінну + Host requires authentication + Ðеобхідна Ð°Ð²Ñ‚Ð¾Ñ€Ð¸Ð·Ð°Ñ†Ñ–Ñ Ð½Ð° вузлі - - - - Unable to fetch last - + Data corrupted + Дані пошкоджено - - Unable to fetch - + Unknown protocol specified + Вказано невідомий протокол - - Unable to fetch first - Ðеможливо вибрати перший + SSL handshake failed + Збій рукоÑтиÑÐºÐ°Ð½Ð½Ñ SSL - - Unable to fetch previous - + Host %1 found + Вузол %1 не знайдено - - - QObject - - Home - Home + Connected to host %1 + З’єднано з вузлом %1 - - Operation not supported on %1 - + Connection to %1 closed + З'Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð· %1 закрито - - Invalid URI: %1 - + Host found + Вузол не знайдено - - Write error writing to %1: %2 - + Connected to host + З’єднано з вузлом + + + QHttpSocketEngine - - Read error reading from %1: %2 - + Did not receive HTTP response from proxy + Ðе отримано HTTP-відповідь від прокÑÑ–-Ñервера - - Socket error on %1: %2 - + Error parsing authentication request from proxy + Помилка розбору запиту авторизації від прокÑÑ–-Ñервера - - Remote host closed the connection prematurely on %1 - + Authentication required + Ðеобхідна Ð°Ð²Ñ‚Ð¾Ñ€Ð¸Ð·Ð°Ñ†Ñ–Ñ - - Protocol error: packet of size 0 received - + Proxy denied connection + ПрокÑÑ–-Ñервер відмовив у з’єднанні - - - No host name given - + Error communicating with HTTP proxy + Помилка обміну даними з прокÑÑ–-Ñервером HTTP - - - QPPDOptionsModel - - Name - Ім'Ñ + Proxy server not found + Ðе знайдено прокÑÑ–-Ñервер - - Value - Ð—Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ + Proxy connection refused + ПрокÑÑ–-Ñервер відмовив у з’єднанні + + + Proxy server connection timed out + Ð§Ð°Ñ Ð½Ð° Ð·â€™Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð· прокÑÑ–-Ñервером вичерпано + + + Proxy connection closed prematurely + Ð—â€™Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð· прокÑÑ–-Ñервером було неÑподівано закрите - QPSQLDriver + QIBaseDriver - - Unable to connect - Ðеможливо з'єднатиÑÑ + Error opening database + Помилка Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ð±Ð°Ð·Ð¸ даних - - Could not begin transaction - Ðеможливо почати транзакцію + Could not start transaction + Ðе вдалоÑÑ Ð¿Ð¾Ñ‡Ð°Ñ‚Ð¸ транзакцію - - Could not commit transaction + Unable to commit transaction Ðеможливо завершити транзакцію - - Could not rollback transaction + Unable to rollback transaction Ðеможливо відкотити транзакцію + + + QIBaseResult - - Unable to subscribe - + Unable to create BLOB + Ðеможливо Ñтворити BLOB - - Unable to unsubscribe - + Unable to write BLOB + Ðеможливо запиÑати BLOB - - - QPSQLResult - - Unable to create query - Ðеможливо Ñтворити запит + Unable to open BLOB + Ðеможливо відкрити BLOB - - Unable to prepare statement - Ðеможливо підготувати оператор - - - - QPageSetupWidget - - - Centimeters (cm) - - - - - Millimeters (mm) - - - - - Inches (in) - + Unable to read BLOB + Ðеможливо прочитати BLOB - - Points (pt) - + Could not find array + Ðе вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ маÑив - - Form - + Could not get array data + Ðе вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ дані маÑиву - - Paper - + Could not get query info + Ðе вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ інформацію про запит - - Page size: - Розмір Ñторінки: + Could not start transaction + Ðе вдалоÑÑ Ð¿Ð¾Ñ‡Ð°Ñ‚Ð¸ транзакцію - - Width: - + Unable to commit transaction + Ðеможливо завершити транзакцію - - Height: - + Could not allocate statement + Ðе вдалоÑÑ Ð²Ð¸Ð´Ñ–Ð»Ð¸Ñ‚Ð¸ вираз - - Paper source: - Джерело паперу: + Could not prepare statement + Ðе вдалоÑÑ Ð¿Ñ–Ð´Ð³Ð¾Ñ‚ÑƒÐ²Ð°Ñ‚Ð¸ вираз - - Orientation - + Could not describe input statement + Ðе вдалоÑÑ Ð¾Ð¿Ð¸Ñати вхідний вираз - - Portrait - Книжкове + Could not describe statement + Ðе вдалоÑÑ Ð¾Ð¿Ð¸Ñати вираз - - Landscape - Ðльбомне + Unable to close statement + Ðеможливо закрити вираз - - Reverse landscape - + Unable to execute query + Ðеможливо виконати запит - - Reverse portrait - + Could not fetch next item + Ðе вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ наÑтупний елемент - - Margins - + Could not get statement info + Ðе вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ інформацію про вираз + + + QIODevice - - top margin - + Permission denied + ДоÑтуп заборонено - - left margin - + Too many open files + Забагато відкритих файлів - - right margin - + No such file or directory + Файл чи тека не Ñ–Ñнують - - bottom margin - + No space left on device + Ðа приÑтрої немає вільного міÑÑ†Ñ - - - QPluginLoader - Unknown error Ðевідома помилка - - - The plugin was not loaded. - Додаток не було завантажено. - - QPrintDialog + QInputContext - - locally connected - локальне з'Ñ”Ð´Ð½Ð°Ð½Ð½Ñ + XIM + XIM - - - Aliases: %1 - ПÑевдонім: %1 + FEP + FEP - - - unknown - невідомо + XIM input method + Метод Ð²Ð²ÐµÐ´ÐµÐ½Ð½Ñ XIM - Portrait - Книжкове + Windows input method + Метод Ð²Ð²ÐµÐ´ÐµÐ½Ð½Ñ Windows - Landscape - Ðльбомне + Mac OS X input method + Метод Ð²Ð²ÐµÐ´ÐµÐ½Ð½Ñ Mac OS X - - A0 (841 x 1189 mm) - A0 (841 x 1189 мм) + S60 FEP input method + Метод Ð²Ð²ÐµÐ´ÐµÐ½Ð½Ñ S60 FEP + + + QInputDialog - - A1 (594 x 841 mm) - A1 (594 x 841 мм) + Enter a value: + Введіть значеннÑ: + + + QLibrary - - A2 (420 x 594 mm) - A2 (420 x 594 мм) + Could not mmap '%1': %2 + Ðе вдалоÑÑ Ð²Ð¸ÐºÐ¾Ð½Ð°Ñ‚Ð¸ mmap '%1': %2 - - A3 (297 x 420 mm) - A3 (297 x 420 мм) + Plugin verification data mismatch in '%1' + Дані верифікації додатку не збігаютьÑÑ Ð´Ð»Ñ â€™%1’ - - A4 (210 x 297 mm, 8.26 x 11.7 inches) - A4 (210 x 297 мм, 8.26 x 11.7 дюймів) + Could not unmap '%1': %2 + Ðе вдалоÑÑ Ð²Ð¸ÐºÐ¾Ð½Ð°Ñ‚Ð¸ unmap '%1': %2 - - A5 (148 x 210 mm) - A5 (148 x 210 мм) + The shared library was not found. + Динамічна бібліотека не знайдена. - - A6 (105 x 148 mm) - A6 (105 x 148 мм) + The file '%1' is not a valid Qt plugin. + Файл '%1' не Ñ” правильний додатком Qt. - - A7 (74 x 105 mm) - A7 (74 x 105 мм) + The plugin '%1' uses incompatible Qt library. (%2.%3.%4) [%5] + Додаток '%1' викориÑтовує неÑуміÑну верÑÑ–ÑŽ бібліотеки Qt. (%2.%3.%4) [%5] - - A8 (52 x 74 mm) - A8 (52 x 74 мм) + The plugin '%1' uses incompatible Qt library. Expected build key "%2", got "%3" + Додаток '%1' викориÑтовує неÑуміÑну верÑÑ–ÑŽ бібліотеки Qt. ОчікувавÑÑ ÐºÐ»ÑŽÑ‡ збірки "%2", отримано "%3" - - A9 (37 x 52 mm) - A9 (37 x 52 мм) + The plugin '%1' uses incompatible Qt library. (Cannot mix debug and release libraries.) + Додаток '%1' викориÑтовує неÑуміÑну верÑÑ–ÑŽ бібліотеки Qt. (Ðеможливо змішувати зневаджувальні та релізні бібліотеки.) - - B0 (1000 x 1414 mm) - B0 (1000 x 1414 мм) + Unknown error + Ðевідома помилка - - B1 (707 x 1000 mm) - B1 (707 x 1000 мм) + Cannot load library %1: %2 + Ðеможливо завантажити бібліотеку %1: %2 - - B2 (500 x 707 mm) - B2 (500 x 707 мм) + Cannot unload library %1: %2 + Ðеможливо вивантажити бібліотеку %1: %2 - - B3 (353 x 500 mm) - B3 (353 x 500 мм) + Cannot resolve symbol "%1" in %2: %3 + Ðеможливо розв’Ñзати Ñимвол "%1" в %2: %3 + + + QLineEdit - - B4 (250 x 353 mm) - B4 (250 x 353 мм) + &Undo + &Повернути - - B5 (176 x 250 mm, 6.93 x 9.84 inches) - B5 (176 x 250 мм, 6.93 x 9.84 дюймів) + &Redo + П&овторити - - B6 (125 x 176 mm) - B6 (125 x 176 мм) + Cu&t + Ви&різати - - B7 (88 x 125 mm) - B7 (88 x 125 мм) + &Copy + &Копіювати - - B8 (62 x 88 mm) - B8 (62 x 88 мм) + &Paste + &Ð’Ñтавити - - B9 (44 x 62 mm) - B9 (44 x 62 мм) + Delete + Видалити - - B10 (31 x 44 mm) - B10 (31 x 44 мм) + Select All + Виділити вÑе + + + QLocalServer - - C5E (163 x 229 mm) - C5E (163 x 229 мм) + %1: Name error + %1: Помилка імені - - DLE (110 x 220 mm) - DLE (110 x 220 мм) + %1: Permission denied + %1: ДоÑтуп заборонено - - Executive (7.5 x 10 inches, 191 x 254 mm) - Executive (7.5 x 10 дюймів, 191 x 254 мм) + %1: Address in use + %1: ÐдреÑа викориÑтовуєтьÑÑ - - Folio (210 x 330 mm) - Folio (210 x 330 мм) + %1: Unknown error %2 + %1: Ðевідома помилка %2 + + + QLocalSocket - - Ledger (432 x 279 mm) - Ledger (432 x 279 мм) + %1: Connection refused + %1: У з'єднанні відмовлено - - Legal (8.5 x 14 inches, 216 x 356 mm) - Legal (8.5 x 14 inches, 216 x 356 мм) + %1: Remote closed + %1: Віддалений кінець закрито - - Letter (8.5 x 11 inches, 216 x 279 mm) - Letter (8.5 x 11 inches, 216 x 279 мм) + %1: Invalid name + %1: Ðеправильне ім'Ñ - - Tabloid (279 x 432 mm) - Tabloid (279 x 432 мм) + %1: Socket access error + %1: Помилка доÑтупу до Ñокета - - US Common #10 Envelope (105 x 241 mm) - US Common #10 Envelope (105 x 241 мм) + %1: Socket resource error + %1: Помилка реÑурÑу Ñокета - - OK - Гаразд + %1: Socket operation timed out + %1: Ð§Ð°Ñ Ð½Ð° операцію з Ñокетом вичерпано - Cancel - СкаÑувати + %1: Datagram too large + %1: Завелика датаграма - Page size: - Розмір Ñторінки: + %1: Connection error + %1: Помилка з'Ñ”Ð´Ð½Ð°Ð½Ð½Ñ - Orientation: - РозташуваннÑ: + %1: The socket operation is not supported + %1: Ðепідтримувана Ð´Ð»Ñ Ñокета Ð¾Ð¿ÐµÑ€Ð°Ñ†Ñ–Ñ - Paper source: - Джерело паперу: + %1: Unknown error + %1: Ðевідома помилка - - - - Print - Друкувати + %1: Unknown error %2 + %1: Ðевідома помилка %2 + + + QMYSQLDriver - File - Файл + Unable to open database ' + Ðеможливо відкрити базу даних ' - Printer - Принтер + Unable to connect + Ðеможливо з'єднатиÑÑŒ - - Print To File ... - Друкувати в файл... + Unable to begin transaction + Ðеможливо почати транзакцію - Print dialog - Діалог друку + Unable to commit transaction + Ðеможливо завершити транзакцію - Paper format - Формат паперу + Unable to rollback transaction + Ðеможливо відкотити транзакцію + + + QMYSQLResult - Size: - Розмір: + Unable to fetch data + Ðеможливо отримати дані - Properties - ВлаÑтивоÑÑ‚Ñ– + Unable to execute query + Ðеможливо виконати запит - Printer info: - Дані про принтер: + Unable to store result + Ðеможливо зберегти результат - Browse - ÐÐ°Ð²Ñ–Ð³Ð°Ñ†Ñ–Ñ + Unable to execute next query + Ðеможливо виконати наÑтупний запит - Print to file - Друкувати в файл + Unable to store next result + Ðеможливо зберегти наÑтупний результат - - Print range - Діапазон друку + Unable to prepare statement + Ðеможливо підготувати вираз - - Print all - Друкувати вÑе + Unable to reset statement + Ðеможливо Ñкинути вираз - Pages from - Сторінки з + Unable to bind value + Ðеможливо прив'Ñзати Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ - to - по + Unable to execute statement + Ðеможливо виконати вираз - Selection - Вибрані + Unable to bind outvalues + Ðеможливо прив'Ñзати вихідні Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ - Copies - Копії + Unable to store statement results + Ðеможливо зберегти результати виразу + + + QMdiArea - Number of copies: - КількіÑÑ‚ÑŒ копій: - - - Collate - Сортувати - - - Print last page first - Друкувати оÑтанню Ñторінку першою + (Untitled) + (Без назви) + + + QMdiSubWindow - Other - Інше + - [%1] + - Print in color if available - Друкувати в кольорах, Ñкщо можливо + %1 - [%2] + %1 - [%2] - Double side printing - ДвоÑторонній друк + Minimize + Мінімізувати - - File %1 is not writable. -Please choose a different file name. - Файл %1 не дозволÑÑ” запиÑ. -Будь лаÑка, виберіть інше ім'Ñ Ñ„Ð°Ð¹Ð»Ñƒ. + Maximize + МакÑимізувати - - %1 already exists. -Do you want to overwrite it? - %1 вже Ñ–Ñнує.ПерезапиÑати? + Unshade + Розгорнути із заголовка - - File exists - Файл Ñ–Ñнує + Shade + Згорнути в заголовок - - <qt>Do you want to overwrite it?</qt> - <qt>ПерезапиÑати?</qt> + Restore Down + Відновити - - Print selection - Друкувати вибране + Restore + Відновити - - %1 is a directory. -Please choose a different file name. - %1 Ñ” каталогом. -Введіть інше ім'Ñ Ñ„Ð°Ð¹Ð»Ñƒ. + Close + Закрити - - A0 - + Help + Довідка - - A1 - + Menu + Меню - - A2 - + &Restore + &Відновити - - A3 - + &Move + &ПереÑунути - - A4 - + &Size + &Розмір - - A5 - + Mi&nimize + Ðœ&інімізувати - - A6 - + Ma&ximize + Ðœ&акÑимізувати - - A7 - + Stay on &Top + ЗалишатиÑÑŒ на &горі - - A8 - + &Close + Закри&ти + + + QMenu - - A9 - + Close + Закрити - - B0 - + Open + Відкрити - - B1 - + Execute + Виконати + + + QMenuBar - - B2 - + Actions + Дії + + + QMessageBox - - B3 - + Show Details... + Показати деталі... - - B4 - + Hide Details... + Приховати деталі... - - B5 - + OK + OK - - B6 - + Help + Довідка - - B7 - + <h3>About Qt</h3><p>This program uses Qt version %1.</p> + <h3>Про Qt</h3><p>Ð¦Ñ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð° викориÑтовує Qt верÑÑ–Ñ— %1.</p> - - B8 - + <p>Qt is a C++ toolkit for cross-platform application development.</p><p>Qt provides single-source portability across MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qt for Embedded Linux and Qt for Windows CE.</p><p>Qt is available under three different licensing options designed to accommodate the needs of our various users.</p><p>Qt licensed under our commercial license agreement is appropriate for development of proprietary/commercial software where you do not want to share any source code with third parties or otherwise cannot comply with the terms of the GNU LGPL version 2.1 or GNU GPL version 3.0.</p><p>Qt licensed under the GNU LGPL version 2.1 is appropriate for the development of Qt applications (proprietary or open source) provided you can comply with the terms and conditions of the GNU LGPL version 2.1.</p><p>Qt licensed under the GNU General Public License version 3.0 is appropriate for the development of Qt applications where you wish to use such applications in combination with software subject to the terms of the GNU GPL version 3.0 or where you are otherwise willing to comply with the terms of the GNU GPL version 3.0.</p><p>Please see <a href="http://qt.nokia.com/products/licensing">qt.nokia.com/products/licensing</a> for an overview of Qt licensing.</p><p>Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).</p><p>Qt is a Nokia product. See <a href="http://qt.nokia.com/">qt.nokia.com</a> for more information.</p> + <p>Qt - це інÑтрументарій Ð´Ð»Ñ ÐºÑ€Ð¾Ñ-платформної розробки програм на C++.</p><p>Qt надає переноÑиміÑÑ‚ÑŒ єдиного коду між MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux та уÑіма іншими головними комерційними варіантами Unix. Також, Qt доÑтупна Ð´Ð»Ñ Ð²Ð±ÑƒÐ´Ð¾Ð²Ð°Ð½Ð¸Ñ… приÑтроїв у виглÑді Qt Ð´Ð»Ñ Embedded Linux та Qt Ð´Ð»Ñ Windows CE.</p><p>Qt доÑтупна на умовах трьох різних опцій Ð»Ñ–Ñ†ÐµÐ½Ð·ÑƒÐ²Ð°Ð½Ð½Ñ Ð· метою Ð·Ð°Ð´Ð¾Ð²Ð¾Ð»ÐµÐ½Ð½Ñ Ð¿Ð¾Ñ‚Ñ€ÐµÐ± уÑÑ–Ñ… наших різноманітних кориÑтувачів.</p><p>Qt ліцензована на умовах нашої комерційної ліцензійної угоди придатна Ð´Ð»Ñ Ñ€Ð¾Ð·Ñ€Ð¾Ð±ÐºÐ¸ пропієтарного/комерційного програмного Ð·Ð°Ð±ÐµÐ·Ð¿ÐµÑ‡ÐµÐ½Ð½Ñ Ñ‚Ð¾Ð´Ñ–, коли ви не бажаєте надавати будь-Ñкий код чи коли не можете прийнÑти умови ліцензій GNU LGPL верÑÑ–Ñ— 2.1 чи GNU GPL верÑÑ–Ñ— 3.0.</p><p>Qt ліцензована на умовах GNU LGPL верÑÑ–Ñ— 2.1 придатна Ð´Ð»Ñ Ñ€Ð¾Ð·Ñ€Ð¾Ð±ÐºÐ¸ програм на базі Qt (пропієтарних або з відкритим кодом) за умови, що ви можете погодитиÑÑŒ з вимогами та умовами GNU LGPL верÑÑ–Ñ— 2.1.</p><p>Qt ліцензована на умовах GNU General Public License верÑÑ–Ñ— 3.0 придатна Ð´Ð»Ñ Ñ€Ð¾Ð·Ñ€Ð¾Ð±ÐºÐ¸ програм на базі Qt, коли ви бажаєте викориÑтовувати такі програми у поєднанні з програмним забезпеченнÑм, що підпадає під вимоги GNU GPL верÑÑ–Ñ— 3.0 або коли ви бажаєте дотримуватиÑÑŒ вимог GNU GPL верÑÑ–Ñ— 3.0.</p><p>Будь лаÑка, переглÑньте <a href="http://qt.nokia.com/products/licensing">qt.nokia.com/products/licensing</a> Ð´Ð»Ñ Ð¾Ð³Ð»Ñду Ð»Ñ–Ñ†ÐµÐ½Ð·ÑƒÐ²Ð°Ð½Ð½Ñ Qt.</p><p>Copyright (C) 2010 ÐšÐ¾Ñ€Ð¿Ð¾Ñ€Ð°Ñ†Ñ–Ñ Nokia та/або Ñ—Ñ— дочірні компанії.</p><p>Qt - це продукт Nokia. ПодивітьÑÑ <a href="http://qt.nokia.com/">qt.nokia.com</a> Ð´Ð»Ñ Ð´Ð¾Ð´Ð°Ñ‚ÐºÐ¾Ð²Ð¾Ñ— інформації.</p> - - B9 - + About Qt + Про Qt + + + QMultiInputContext - - B10 - + Select IM + Виберіть метод Ð²Ð²ÐµÐ´ÐµÐ½Ð½Ñ + + + QMultiInputContextPlugin - - C5E - + Multiple input method switcher + Перемикач методів Ð²Ð²ÐµÐ´ÐµÐ½Ð½Ñ - - DLE - + Multiple input method switcher that uses the context menu of the text widgets + Перемикач методів введеннÑ, що викориÑтовує контекÑтне меню текÑтових віджетів + + + QNativeSocketEngine - - Executive - + Unable to initialize non-blocking socket + Ðеможливо ініціалізувати неблокувальний Ñокет - - Folio - + Unable to initialize broadcast socket + Ðеможливо ініціалізувати широкомовний Ñокет - - Ledger - + Attempt to use IPv6 socket on a platform with no IPv6 support + Спроба викориÑтати Ñокет IPv6 на платформі без підтримки IPv6 - - Legal - + The remote host closed the connection + Віддалений вузол закрив Ð·â€™Ñ”Ð´Ð½Ð°Ð½Ð½Ñ - - Letter - + Network operation timed out + Ð§Ð°Ñ Ð½Ð° мережеву операцію вичерпано - - Tabloid - + Out of resources + ÐедоÑтатньо реÑурÑів - - US Common #10 Envelope - + Unsupported socket operation + Ðепідтримувана Ð´Ð»Ñ Ñокета Ð¾Ð¿ÐµÑ€Ð°Ñ†Ñ–Ñ - - Custom - + Protocol type not supported + Тип протоколу не підтримуєтьÑÑ - - - &Options >> - + Invalid socket descriptor + Ðеправильний деÑкриптор Ñокета - - &Print - + Host unreachable + Вузол недоÑтупний - - &Options << - + Network unreachable + Мережа недоÑтупна - - Print to File (PDF) - + Permission denied + ДоÑтуп заборонено - - Print to File (Postscript) - + Connection timed out + Ð§Ð°Ñ Ð½Ð° Ð·â€™Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð²Ð¸Ñ‡ÐµÑ€Ð¿Ð°Ð½Ð¾ - - Local file - + Connection refused + У з'єднанні відмовлено - - Write %1 file - + The bound address is already in use + ÐдреÑа вже викориÑтовуєтьÑÑ - - The 'From' value cannot be greater than the 'To' value. - + The address is not available + ÐдреÑа не доÑтупна - - - QPrintPreviewDialog - - - Page Setup - + The address is protected + ÐдреÑа захищена - - %1% - + Datagram was too large to send + Датаграма завелика, щоб надіÑлати - - Print Preview - + Unable to send a message + Ðеможливо надіÑлати Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ - - Next page - + Unable to receive a message + Ðеможливо отримати Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ - - Previous page - + Unable to write + Ðеможливо запиÑати - - First page - + Network error + Помилка мережі - - Last page - + Another socket is already listening on the same port + Інший Ñокет вже Ñлухає цей Ñамий порт - - Fit width - + Operation on non-socket + ÐžÐ¿ÐµÑ€Ð°Ñ†Ñ–Ñ Ð· не-Ñокетом - - Fit page - + The proxy type is invalid for this operation + Ðеправильний тип прокÑÑ–-Ñерверу Ð´Ð»Ñ Ñ†Ñ–Ñ”Ñ— операції - - Zoom in - + Unknown error + Ðевідома помилка + + + QNetworkAccessCacheBackend - - Zoom out - + Error opening %1 + Помилка Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ñ‚Ñ %1 + + + QNetworkAccessDataBackend - - Portrait - Книжкове + Operation not supported on %1 + Ðепідтримувана Ð´Ð»Ñ %1 Ð¾Ð¿ÐµÑ€Ð°Ñ†Ñ–Ñ - - Landscape - Ðльбомне + Invalid URI: %1 + Ðеправильний URI: %1 + + + QNetworkAccessDebugPipeBackend - - Show single page - + Write error writing to %1: %2 + Помилка запиÑу в %1: %2 - - Show facing pages - + Socket error on %1: %2 + Помилка Ñокета Ð´Ð»Ñ %1: %2 - - Show overview of all pages - + Remote host closed the connection prematurely on %1 + Віддалений вузол неÑподівано закрив Ð·â€™Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð´Ð»Ñ %1 + + + QNetworkAccessFileBackend - - Print - Друкувати + Request for opening non-local file %1 + Запит на Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ð½ÐµÐ»Ð¾ÐºÐ°Ð»ÑŒÐ½Ð¾Ð³Ð¾ файлу %1 - - Page setup - + Cannot open %1: Path is a directory + Ðеможливо відкрити %1: ШлÑÑ… Ñ” текою - - Close - Закрити + Error opening %1: %2 + Помилка Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ñ‚Ñ %1: %2 - - Export to PDF - + Write error writing to %1: %2 + Помилка запиÑу в %1: %2 - - Export to PostScript - + Read error reading from %1: %2 + Помилка Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ð· %1: %2 - QPrintPropertiesDialog + QNetworkAccessFtpBackend - PPD Properties - ВлаÑтивоÑÑ‚Ñ– PPD + No suitable proxy found + Ðе знайдено придатного прокÑÑ–-Ñервера - Save - Зберегти + Cannot open %1: is a directory + Ðеможливо відкрити %1: шлÑÑ… Ñ” текою - OK - Гаразд + Logging in to %1 failed: authentication required + Збій входу до %1: необхідна Ð°Ð²Ñ‚Ð¾Ñ€Ð¸Ð·Ð°Ñ†Ñ–Ñ + + + Error while downloading %1: %2 + Помилка Ð·Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ %1: %2 + + + Error while uploading %1: %2 + Помилка Ð²Ð¸Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ %1: %2 - QPrintPropertiesWidget + QNetworkAccessHttpBackend - - Form - + No suitable proxy found + Ðе знайдено придатного прокÑÑ–-Ñервера + + + + QNetworkAccessManager + + Network access is disabled. + ДоÑтуп до мережі вимкнено. + + + QNetworkReply - - Page - + Error downloading %1 - server replied: %2 + Помилка Ð·Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ %1 - Ñервер відповів: %2 - - Advanced - + Protocol "%1" is unknown + Ðевідомий протокол "%1" + + + Network session error. + Помилка мережевої ÑеÑÑ–Ñ—. + + + Temporary network failure. + ТимчаÑовий збій мережі. - QPrintSettingsOutput + QNetworkReplyImpl + + Operation canceled + ÐžÐ¿ÐµÑ€Ð°Ñ†Ñ–Ñ ÑкаÑована + + + + QNetworkSession + + Invalid configuration. + Ðеправильні налаштуваннÑ. + + + + QNetworkSessionPrivateImpl + + Roaming error + Помилка Ð¿ÐµÑ€ÐµÐ¼Ñ–Ñ‰ÐµÐ½Ð½Ñ + + + Session aborted by user or system + СеÑÑ–Ñ Ð¿ÐµÑ€ÐµÑ€Ð²Ð°Ð½Ð° кориÑтувачем або ÑиÑтемою + + + Unidentified Error + Ðевизначена помилка + + + Unknown session error. + Ðевідома помилка ÑеÑÑ–Ñ—. + + + The session was aborted by the user or system. + СеÑÑ–Ñ Ð¿ÐµÑ€ÐµÑ€Ð²Ð°Ð½Ð° кориÑтувачем або ÑиÑтемою. + + + The requested operation is not supported by the system. + ОпераціÑ, що запитуєтьÑÑ, не підтримуєтьÑÑ ÑиÑтемою. + + + The specified configuration cannot be used. + Ðеможливо викориÑтати вказані налаштуваннÑ. + + + Roaming was aborted or is not possible. + ÐŸÐµÑ€ÐµÐ¼Ñ–Ñ‰ÐµÐ½Ð½Ñ Ð±ÑƒÐ»Ð¾ перерване або неможливе. + + + + QOCIDriver + + Unable to initialize + QOCIDriver + Ðеможливо ініціалізувати + + + Unable to logon + Ðеможливо авторизуватиÑÑŒ + + + Unable to begin transaction + Ðеможливо почати транзакцію + + + Unable to commit transaction + Ðеможливо завершити транзакцію + + + Unable to rollback transaction + Ðеможливо відкотити транзакцію + + + + QOCIResult + + Unable to bind column for batch execute + Ðеможливо прив’Ñзати Ñтовпець Ð´Ð»Ñ Ð¿Ð°ÐºÐµÑ‚Ð½Ð¾Ð³Ð¾ Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ + + + Unable to execute batch statement + Ðеможливо виконати пакетний вираз + + + Unable to goto next + Ðеможливо перейти до наÑтупного + + + Unable to alloc statement + Ðеможливо виділити вираз + + + Unable to prepare statement + Ðеможливо підготувати вираз + + + Unable to get statement type + Ðеможливо визначити тип виразу + + + Unable to bind value + Ðеможливо прив'Ñзати Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ + + + Unable to execute statement + Ðеможливо виконати вираз + + + + QODBCDriver + + Unable to connect + Ðеможливо з'єднатиÑÑŒ + + + Unable to connect - Driver doesn't support all functionality required + Ðеможливо з'єднатиÑÑŒ - Драйвер не підтримує уÑÑŽ необхідну функціональніÑÑ‚ÑŒ + + + Unable to disable autocommit + Ðеможливо вимкнути Ð°Ð²Ñ‚Ð¾Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð½Ñ Ñ‚Ñ€Ð°Ð½Ð·Ð°ÐºÑ†Ñ–Ð¹ + + + Unable to commit transaction + Ðеможливо завершити транзакцію + + + Unable to rollback transaction + Ðеможливо відкотити транзакцію + + + Unable to enable autocommit + Ðеможливо увімкнути Ð°Ð²Ñ‚Ð¾Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð½Ñ Ñ‚Ñ€Ð°Ð½Ð·Ð°ÐºÑ†Ñ–Ð¹ + + + + QODBCResult + + Unable to fetch last + Ðеможливо отримати оÑтанній Ð·Ð°Ð¿Ð¸Ñ + + + QODBCResult::reset: Unable to set 'SQL_CURSOR_STATIC' as statement attribute. Please check your ODBC driver configuration + QODBCResult::reset: Ðеможливо вÑтановити 'SQL_CURSOR_STATIC', Ñк атрибут виразу. Будь лаÑка, перевірте Ð½Ð°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð²Ð°ÑˆÐ¾Ð³Ð¾ драйверу ODBC + + + Unable to execute statement + Ðеможливо виконати вираз + + + Unable to fetch + Ðеможливо отримати + + + Unable to fetch next + Ðеможливо отримати наÑтупний Ð·Ð°Ð¿Ð¸Ñ + + + Unable to fetch first + Ðеможливо отримати перший Ð·Ð°Ð¿Ð¸Ñ + + + Unable to fetch previous + Ðеможливо отримати попередній Ð·Ð°Ð¿Ð¸Ñ + + + Unable to prepare statement + Ðеможливо підготувати вираз + + + Unable to bind variable + Ðеможливо прив'Ñзати змінну + + + + QObject + + PulseAudio Sound Server + Звуковий Ñервер PulseAudio + + + "%1" duplicates a previous role name and will be disabled. + "%1" повторює назву попередньої ролі та буде вимкнене. + + + invalid query: "%1" + неправильний запит "%1" + + + + QPPDOptionsModel + + Name + Ðазва + + + Value + Ð—Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ + + + + QPSQLDriver + + Unable to connect + Ðеможливо з'єднатиÑÑŒ + + + Could not begin transaction + Ðе вдалоÑÑ Ð¿Ð¾Ñ‡Ð°Ñ‚Ð¸ транзакцію + + + Could not commit transaction + Ðе вдалоÑÑ Ð·Ð°Ð²ÐµÑ€ÑˆÐ¸Ñ‚Ð¸ транзакцію + + + Could not rollback transaction + Ðе вдалоÑÑ Ð²Ñ–Ð´ÐºÐ¾Ñ‚Ð¸Ñ‚Ð¸ транзакцію + + + Unable to subscribe + Ðеможливо підпиÑатиÑÑŒ + + + Unable to unsubscribe + Ðеможливо відпиÑатиÑÑŒ + + + + QPSQLResult + + Unable to create query + Ðеможливо Ñтворити запит + + + Unable to prepare statement + Ðеможливо підготувати вираз + + + + QPageSetupWidget - Form - + Форма - - Copies - Копії + Paper + Папір - - Print range - Діапазон друку + Page size: + Розмір Ñторінки: + + + Width: + Ширина: + + + Height: + ВиÑота: + + + Paper source: + Джерело паперу: + + + Orientation + ÐžÑ€Ñ–Ñ”Ð½Ñ‚Ð°Ñ†Ñ–Ñ + + + Portrait + Портрет + + + Landscape + Ландшафт + + + Reverse landscape + Обернений ландшафт + + + Reverse portrait + Обернений портрет + + + Margins + ÐŸÐ¾Ð»Ñ + + + top margin + верхнє поле + + + left margin + ліве поле + + + right margin + праве поле + + + bottom margin + нижнє поле + + + Centimeters (cm) + Сантиметри (Ñм) + + + Millimeters (mm) + Міліметри (мм) + + + Inches (in) + Дюйми (in) + + + Points (pt) + Точки (pt) + + + + QPluginLoader + + The plugin was not loaded. + Додаток не було завантажено. + + + Unknown error + Ðевідома помилка + + + + QPrintDialog + + Print + Друк + + + A0 + + + + A1 + + + + A2 + + + + A3 + + + + A4 + + + + A5 + + + + A6 + + + + A7 + + + + A8 + + + + A9 + + + + B0 + + + + B1 + + + + B2 + + + + B3 + + + + B4 + + + + B5 + + + + B6 + + + + B7 + + + + B8 + + + + B9 + + + + B10 + + + + C5E + + + + DLE + + + + Executive + Executive + + + Folio + Folio + + + Ledger + Ledger + + + Legal + Legal + + + Letter + Letter + + + Tabloid + Tabloid + + + US Common #10 Envelope + US Common #10 Envelope + + + Custom + КориÑтувацький + + + File exists + Файл Ñ–Ñнує + + + <qt>Do you want to overwrite it?</qt> + <qt>Бажаєте перезапиÑати його?</qt> + + + A0 (841 x 1189 mm) + A0 (841 x 1189 мм) + + + A1 (594 x 841 mm) + A1 (594 x 841 мм) + + + A2 (420 x 594 mm) + A2 (420 x 594 мм) + + + A3 (297 x 420 mm) + A3 (297 x 420 мм) + + + A4 (210 x 297 mm, 8.26 x 11.7 inches) + A4 (210 x 297 мм, 8.26 x 11.7 дюймів) + + + A5 (148 x 210 mm) + A5 (148 x 210 мм) + + + A6 (105 x 148 mm) + A6 (105 x 148 мм) + + + A7 (74 x 105 mm) + A7 (74 x 105 мм) + + + A8 (52 x 74 mm) + A8 (52 x 74 мм) + + + A9 (37 x 52 mm) + A9 (37 x 52 мм) + + + B0 (1000 x 1414 mm) + B0 (1000 x 1414 мм) + + + B1 (707 x 1000 mm) + B1 (707 x 1000 мм) + + + B2 (500 x 707 mm) + B2 (500 x 707 мм) + + + B3 (353 x 500 mm) + B3 (353 x 500 мм) + + + B4 (250 x 353 mm) + B4 (250 x 353 мм) + + + B5 (176 x 250 mm, 6.93 x 9.84 inches) + B5 (176 x 250 мм, 6.93 x 9.84 дюймів) + + + B6 (125 x 176 mm) + B6 (125 x 176 мм) + + + B7 (88 x 125 mm) + B7 (88 x 125 мм) + + + B8 (62 x 88 mm) + B8 (62 x 88 мм) + + + B9 (44 x 62 mm) + B9 (44 x 62 мм) + + + B10 (31 x 44 mm) + B10 (31 x 44 мм) + + + C5E (163 x 229 mm) + C5E (163 x 229 мм) + + + DLE (110 x 220 mm) + DLE (110 x 220 мм) + + + Executive (7.5 x 10 inches, 191 x 254 mm) + Executive (7.5 x 10 дюймів, 191 x 254 мм) + + + Folio (210 x 330 mm) + Folio (210 x 330 мм) + + + Ledger (432 x 279 mm) + Ledger (432 x 279 мм) + + + Legal (8.5 x 14 inches, 216 x 356 mm) + Legal (8.5 x 14 дюймів, 216 x 356 мм) + + + Letter (8.5 x 11 inches, 216 x 279 mm) + Letter (8.5 x 11 дюймів, 216 x 279 мм) + + + Tabloid (279 x 432 mm) + Tabloid (279 x 432 мм) + + + US Common #10 Envelope (105 x 241 mm) + US Common #10 Envelope (105 x 241 мм) + + + Print all + Друкувати вÑе + + + Print selection + Друкувати Ð²Ð¸Ð´Ñ–Ð»ÐµÐ½Ð½Ñ + + + Print range + Діапазон друку + + + Print current page + Друкувати поточну Ñторінку + + + &Options >> + &Опції >> + + + &Print + &Друк + + + &Options << + &Опції << + + + Print to File (PDF) + Друкувати в файл (PDF) + + + Print to File (Postscript) + Друкувати в файл (Postscript) + + + Local file + Локальний файл + + + Write %1 file + ЗапиÑати в файл %1 + + + Print To File ... + Друкувати в файл... + + + %1 is a directory. +Please choose a different file name. + %1 - тека. +Будь лаÑка, оберіть інше ім'Ñ Ñ„Ð°Ð¹Ð»Ñƒ. + + + File %1 is not writable. +Please choose a different file name. + До файлу %1 неможливо пиÑати. +Будь лаÑка, оберіть інше ім'Ñ Ñ„Ð°Ð¹Ð»Ñƒ. + + + %1 already exists. +Do you want to overwrite it? + %1 вже Ñ–Ñнує. +Бажаєте перезапиÑати його? + + + The 'From' value cannot be greater than the 'To' value. + Ð—Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð¿Ð¾Ð»Ñ 'З' не може бути більшим Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð¿Ð¾Ð»Ñ 'По'. + + + OK + OK + + + locally connected + локально з'єднано + + + Aliases: %1 + ПÑевдоніми: %1 + + + unknown + невідомо + + + + QPrintPreviewDialog + + Page Setup + Параметри Ñторінки + + + %1% + + + + Print Preview + Попередній переглÑд друку + + + Next page + ÐаÑтупна Ñторінка + + + Previous page + ÐŸÐ¾Ð¿ÐµÑ€ÐµÐ´Ð½Ñ Ñторінка + + + First page + Перша Ñторінка + + + Last page + ОÑÑ‚Ð°Ð½Ð½Ñ Ñторінка + + + Fit width + По ширині + + + Fit page + УÑÑŽ Ñторінку + + + Zoom in + Збільшити + + + Zoom out + Зменшити + + + Portrait + Портрет + + + Landscape + Ландшафт + + + Show single page + Показати одну Ñторінку + + + Show facing pages + Показати титульні Ñторінки + + + Show overview of all pages + Показати оглÑд уÑÑ–Ñ… Ñторінок + + + Print + Друк + + + Page setup + Параметри Ñторінки + + + Close + Закрити + + + Export to PDF + ЕкÑпорт в PDF + + + Export to PostScript + ЕкÑпорт в PostScript + + + + QPrintPropertiesWidget + + Form + Форма + + + Page + Сторінка + + + Advanced + Розширені + + + + QPrintSettingsOutput + + Form + Форма + + + Copies + Копії + + + Print range + Діапазон друку + + + Print all + Друкувати вÑе + + + Pages from + Сторінки з + + + to + до + + + Current Page + Поточну Ñторінку + + + Selection + Ð’Ð¸Ð´Ñ–Ð»ÐµÐ½Ð½Ñ + + + Output Settings + ÐÐ°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð²Ð¸Ð²Ð¾Ð´Ñƒ + + + Copies: + Копій: + + + Collate + Розібрати по копіÑÑ… + + + Reverse + Ð’ зворотньому порÑдку + + + Options + Параметри + + + Color Mode + Режим кольору + + + Color + Колір + + + Grayscale + Відтінки Ñірого + + + Duplex Printing + ДвоÑторонній друк + + + None + ВідÑутній + + + Long side + По довгій Ñтороні + + + Short side + По короткій Ñтороні + + + + QPrintWidget + + Form + Форма + + + Printer + Принтер + + + &Name: + &Ðазва: + + + P&roperties + &ВлаÑтивоÑÑ‚Ñ– + + + Location: + РозташуваннÑ: + + + Preview + ПереглÑд + + + Type: + Тип: + + + Output &file: + Вихідний &файл: + + + ... + ... + + + + QProcess + + Error reading from process + Помилка Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ð· процеÑу + + + Error writing to process + Помилка запиÑу в Ð¿Ñ€Ð¾Ñ†ÐµÑ + + + Process crashed + ÐŸÑ€Ð¾Ñ†ÐµÑ Ð°Ð²Ð°Ñ€Ñ–Ð¹Ð½Ð¾ завершивÑÑ + + + No program defined + Програму не задано + + + Could not open input redirection for reading + Ðе вдалоÑÑ Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ð¸ Ð¿ÐµÑ€ÐµÐ½Ð°Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ð²Ð²ÐµÐ´ÐµÐ½Ð½Ñ Ð´Ð»Ñ Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ + + + Could not open output redirection for writing + Ðе вдалоÑÑ Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ð¸ Ð¿ÐµÑ€ÐµÐ½Ð°Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ð²Ð¸Ð²ÐµÐ´ÐµÐ½Ð½Ñ Ð´Ð»Ñ Ð·Ð°Ð¿Ð¸Ñу + + + Resource error (fork failure): %1 + Помилка реÑурÑу (збій fork): %1 + + + Process operation timed out + Ð§Ð°Ñ Ð½Ð° операцію з процеÑом вичерпано + + + Process failed to start: %1 + Збій запуÑку процеÑу: %1 + + + + QProgressDialog + + Cancel + СкаÑувати + + + + QPushButton + + Open + Відкрити + + + + QRadioButton + + Check + Відмітити + + + + QRegExp + + no error occurred + без помилок + + + disabled feature used + викориÑтана вимкнена можливіÑÑ‚ÑŒ + + + bad char class syntax + неправильний ÑинтакÑÐ¸Ñ ÐºÐ»Ð°Ñу Ñимволів + + + bad lookahead syntax + неправильний ÑинтакÑÐ¸Ñ "lookahead" + + + bad repetition syntax + неправильний ÑинтакÑÐ¸Ñ Ð¿Ð¾Ð²Ñ‚Ð¾Ñ€ÐµÐ½Ð½Ñ + + + invalid octal value + неправильне віÑімкове Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ + + + missing left delim + відÑутній лівий розділювач + + + unexpected end + неочікуваний кінець + + + met internal limit + доÑÑгнуто внутрішнього Ð¾Ð±Ð¼ÐµÐ¶ÐµÐ½Ð½Ñ + + + invalid interval + неправильний інтервал + + + invalid category + неправильна ÐºÐ°Ñ‚ÐµÐ³Ð¾Ñ€Ñ–Ñ + + + + QSQLite2Driver + + Error opening database + Помилка Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ð±Ð°Ð·Ð¸ даних + + + Unable to begin transaction + Ðеможливо почати транзакцію + + + Unable to commit transaction + Ðеможливо завершити транзакцію + + + Unable to rollback transaction + Ðеможливо відкотити транзакцію + + + + QSQLite2Result + + Unable to fetch results + Ðеможливо отримати результати + + + Unable to execute statement + Ðеможливо виконати вираз + + + + QSQLiteDriver + + Error opening database + Помилка Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ð±Ð°Ð·Ð¸ даних + + + Error closing database + Помилка Ð·Ð°ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ð±Ð°Ð·Ð¸ даних + + + Unable to begin transaction + Ðеможливо почати транзакцію + + + Unable to commit transaction + Ðеможливо завершити транзакцію + + + Unable to rollback transaction + Ðеможливо відкотити транзакцію + + + + QSQLiteResult + + Unable to fetch row + Ðеможливо отримати Ñ€Ñдок + + + No query + Запит відÑутній + + + Unable to execute statement + Ðеможливо виконати вираз + + + Unable to reset statement + Ðеможливо Ñкинути вираз + + + Unable to bind parameters + Ðеможливо прив'Ñзати параметри + + + Parameter count mismatch + КількіÑÑ‚ÑŒ параметрів не збігаєтьÑÑ + + + + QScriptBreakpointsModel + + ID + + + + Location + ÐŸÐ¾Ð·Ð¸Ñ†Ñ–Ñ + + + Condition + Умова + + + Ignore-count + Пропущено + + + Single-shot + Один раз + + + Hit-count + Збігів + + + + QScriptBreakpointsWidget + + New + Ðовий + + + Delete + Видалити + + + + QScriptDebugger + + Go to Line + Перейти до Ñ€Ñдка + + + Line: + РÑдок: + + + Interrupt + Перервати + + + Shift+F5 + + + + Continue + Продовжити + + + F5 + + + + Step Into + Увійти в + + + F11 + + + + Step Over + Перейти через + + + F10 + + + + Step Out + Вийти з + + + Shift+F11 + + + + Run to Cursor + Виконати до курÑору + + + Ctrl+F10 + + + + Run to New Script + Виконати до нового Ñкрипту + + + Toggle Breakpoint + Перемкнути точку перепину + + + F9 + + + + Clear Debug Output + ОчиÑтити зневаджувальне Ð²Ð¸Ð²ÐµÐ´ÐµÐ½Ð½Ñ + + + Clear Error Log + ОчиÑтити журнал помилок + + + Clear Console + ОчиÑтити конÑоль + + + &Find in Script... + &Знайти в Ñкрипті... + + + Ctrl+F + + + + Find &Next + Знайти &наÑтупне + + + F3 + + + + Find &Previous + Знайти &попереднє + + + Shift+F3 + + + + Ctrl+G + + + + Debug + Ð—Ð½ÐµÐ²Ð°Ð´Ð¶ÐµÐ½Ð½Ñ + + + + QScriptDebuggerCodeFinderWidget + + Close + Закрити + + + Previous + Попередній + + + Next + ÐаÑтупний + + + Case Sensitive + Враховувати регіÑÑ‚Ñ€ + + + Whole words + Цілі Ñлова + + + <img src=":/qt/scripttools/debugging/images/wrap.png">&nbsp;Search wrapped + <img src=":/qt/scripttools/debugging/images/wrap.png">&nbsp;Пошук з початку + + + + QScriptDebuggerLocalsModel + + Name + Ðазва + + + Value + Ð—Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ + + + + QScriptDebuggerStackModel + + Level + Рівень + + + Name + Ðазва + + + Location + ÐŸÐ¾Ð·Ð¸Ñ†Ñ–Ñ + + + + QScriptEdit + + Toggle Breakpoint + Перемкнути точку перепину + + + Disable Breakpoint + Вимкнути точку перепину + + + Enable Breakpoint + Увімкнути точку перепину + + + Breakpoint Condition: + Умова перепину: + + + + QScriptEngineDebugger + + Loaded Scripts + Завантажені Ñкрипти + + + Breakpoints + Точки перепину + + + Stack + Стек + + + Locals + Локальні змінні + + + Console + КонÑоль + + + Debug Output + Зневаджувальне Ð²Ð¸Ð²ÐµÐ´ÐµÐ½Ð½Ñ + + + Error Log + Журнал помилок + + + Search + Пошук + + + View + Вид + + + Qt Script Debugger + Зневаджувач Ñкриптів Qt + + + + QScriptNewBreakpointWidget + + Close + Закрити + + + + QScrollBar + + Scroll here + Прокрутити Ñюди + + + Left edge + До лівої границі + + + Top + Вгору + + + Right edge + До правої границі + + + Bottom + Донизу + + + Page left + Ðа Ñторінку вліво + + + Page up + Ðа Ñторінку вгору + + + Page right + Ðа Ñторінку вправо + + + Page down + Ðа Ñторінку вниз + + + Scroll left + Прокрутити вліво + + + Scroll up + Прокрутити вгору + + + Scroll right + Прокрутити вправо + + + Scroll down + Прокрутити донизу + + + Line up + Ðа Ñ€Ñдок вгору + + + Position + ÐŸÐ¾Ð»Ð¾Ð¶ÐµÐ½Ð½Ñ + + + Line down + Ðа Ñ€Ñдок вниз + + + + QSharedMemory + + %1: unable to set key on lock + %1: неможливо вÑтановити ключ Ð´Ð»Ñ Ð±Ð»Ð¾ÐºÑƒÐ²Ð°Ð½Ð½Ñ + + + %1: create size is less then 0 + %1: розмір ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð¼ÐµÐ½ÑˆÐ¸Ð¹ Ð½ÑƒÐ»Ñ + + + %1: unable to lock + %1: неможливо заблокувати + + + %1: unable to unlock + %1: неможливо розблокувати + + + %1: already exists + %1: вже Ñ–Ñнує + + + %1: doesn't exists + %1: не Ñ–Ñнує + + + %1: invalid size + %1: неправильний розмір + + + %1: out of resources + %1: недоÑтатньо реÑурÑів + + + %1: permission denied + %1: доÑтуп заборонено + + + %1: unknown error %2 + %1: невідома помилка %2 + + + %1: key error + %1: помилка ключа + + + %1: unable to make key + %1: неможливо Ñтворити ключ + + + %1: doesn't exist + %1: не Ñ–Ñнує + + + %1: key is empty + %1: пуÑтий ключ + + + %1: UNIX key file doesn't exist + %1: файл ключа UNIX не Ñ–Ñнує + + + %1: ftok failed + %1: збій ftok + + + %1: system-imposed size restrictions + %1: Ð¾Ð±Ð¼ÐµÐ¶ÐµÐ½Ð½Ñ Ñ€Ð¾Ð·Ð¼Ñ–Ñ€Ñƒ вÑтановлені ÑиÑтемою + + + %1: not attached + %1: не прикріплено + + + %1: size query failed + %1: збій запиту розміру + + + + QShortcut + + Space + This and all following "incomprehensible" strings in QShortcut context are key names. Please use the localized names appearing on actual keyboards or whatever is commonly used. + ПропуÑк + + + Esc + Esc + + + Tab + Tab + + + Backtab + Backtab + + + Backspace + Backspace + + + Return + Return + + + Enter + Enter + + + Ins + Ins + + + Del + Del + + + Pause + Pause + + + Print + Print + + + SysReq + SysReq + + + Home + Home + + + End + End + + + Left + Вліво + + + Up + Вгору + + + Right + Вправо + + + Down + Вниз + + + PgUp + PgUp + + + PgDown + PgDown + + + CapsLock + CapsLock + + + NumLock + NumLock + + + ScrollLock + ScrollLock + + + Menu + Меню + + + Help + Довідка + + + Back + Ðазад + + + Forward + Вперед + + + Stop + Стоп + + + Refresh + Оновити + + + Volume Down + Тихіше + + + Volume Mute + Вимкнути звук + + + Volume Up + Гучніше + + + Bass Boost + ПоÑÐ¸Ð»ÐµÐ½Ð½Ñ Ð±Ð°Ñів + + + Bass Up + БаÑи гучніше + + + Bass Down + БаÑи тихіше + + + Treble Up + ВЧ гучніше + + + Treble Down + ВЧ тихіше + + + Media Play + Ð’Ñ–Ð´Ñ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ + + + Media Stop + Зупинити Ð²Ñ–Ð´Ñ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ + + + Media Previous + Відтворити попереднє + + + Media Next + Відтворити наÑтупне + + + Media Record + Ð—Ð°Ð¿Ð¸Ñ + + + Media Pause + Media player pause button + Пауза + + + Toggle Media Play/Pause + Media player button to toggle between playing and paused + Грати/Пауза + + + Home Page + Ð”Ð¾Ð¼Ð°ÑˆÐ½Ñ Ñторінка + + + Favorites + Обране + + + Search + Пошук + + + Standby + Режим Ð¾Ñ‡Ñ–ÐºÑƒÐ²Ð°Ð½Ð½Ñ + + + Open URL + Відкрити URL + + + Launch Mail + Пошта + + + Launch Media + Програвач + + + Launch (0) + ЗапуÑтити (0) + + + Launch (1) + ЗапуÑтити (1) + + + Launch (2) + ЗапуÑтити (2) + + + Launch (3) + ЗапуÑтити (3) + + + Launch (4) + ЗапуÑтити (4) + + + Launch (5) + ЗапуÑтити (5) + + + Launch (6) + ЗапуÑтити (6) + + + Launch (7) + ЗапуÑтити (7) + + + Launch (8) + ЗапуÑтити (8) + + + Launch (9) + ЗапуÑтити (9) + + + Launch (A) + ЗапуÑтити (A) + + + Launch (B) + ЗапуÑтити (B) + + + Launch (C) + ЗапуÑтити (C) + + + Launch (D) + ЗапуÑтити (D) + + + Launch (E) + ЗапуÑтити (E) + + + Launch (F) + ЗапуÑтити (F) + + + Monitor Brightness Up + Збільшити ÑÑкравіÑÑ‚ÑŒ монітору + + + Monitor Brightness Down + Зменшити ÑÑкравіÑÑ‚ÑŒ монітору + + + Keyboard Light On/Off + Вімк./Вимк. підÑвітку клавіатури + + + Keyboard Brightness Up + Збільшити ÑÑкравіÑÑ‚ÑŒ підÑвітки клавіатури + + + Keyboard Brightness Down + Зменшити ÑÑкравіÑÑ‚ÑŒ підÑвітки клавіатури + + + Power Off + Вимкнути Ð¶Ð¸Ð²Ð»ÐµÐ½Ð½Ñ + + + Wake Up + ПрокинутиÑÑŒ + + + Eject + ВитÑгнути + + + Screensaver + Зберігач екрана + + + WWW + WWW + + + Sleep + СплÑчий режим + + + LightBulb + Лампочка + + + Shop + ÐšÑ€Ð°Ð¼Ð½Ð¸Ñ†Ñ + + + History + ІÑÑ‚Ð¾Ñ€Ñ–Ñ + + + Add Favorite + Додати до обраного + + + Hot Links + ГарÑчі поÑÐ¸Ð»Ð°Ð½Ð½Ñ + + + Adjust Brightness + ÐÐ°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ ÑÑкравоÑÑ‚Ñ– + + + Finance + ФінанÑи + + + Community + Спільнота + + + Audio Rewind + Перемотка звуку на початок + + + Back Forward + Ðазад Вперед + + + Application Left + Додаток вліво + + + Application Right + Додаток вправо + + + Book + Книга + + + CD + CD + + + Calculator + КалькулÑтор + + + Clear + ОчиÑтити + + + Clear Grab + + + + Close + Закрити + + + Copy + Копіювати + + + Cut + Вирізати + + + Display + ДиÑплей + + + DOS + DOS + + + Documents + Документи + + + Spreadsheet + Електронна Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ + + + Browser + Ðавігатор + + + Game + Гра + + + Go + Йти + + + iTouch + iTouch + + + Logoff + Вийти з ÑиÑтеми + + + Market + Ринок + + + Meeting + ЗуÑтріч + + + Keyboard Menu + Клавіатурне меню + + + Menu PB + Меню PB + + + My Sites + Мої Ñайти + + + News + Ðовини + + + Home Office + Домашній Ð¾Ñ„Ñ–Ñ + + + Option + ÐžÐ¿Ñ†Ñ–Ñ + + + Paste + Ð’Ñтавити + + + Phone + Телефон + + + Reply + ВідповіÑти + + + Reload + Перезавантажити + + + Rotate Windows + Обертати вікна + + + Rotation PB + ÐžÐ±ÐµÑ€Ñ‚Ð°Ð½Ð½Ñ PB + + + Rotation KB + ÐžÐ±ÐµÑ€Ñ‚Ð°Ð½Ð½Ñ KB + + + Save + Зберегти + + + Send + ÐадіÑлати + + + Spellchecker + Перевірка правопиÑу + + + Split Screen + Розділити екран + + + Support + Підтримка + + + Task Panel + Панель задач + + + Terminal + Термінал + + + Tools + ІнÑтрументи + + + Travel + Подорож + + + Video + Відео + + + Word Processor + ТекÑтовий процеÑор + + + XFer + XFer + + + Zoom In + Збільшити + + + Zoom Out + Зменшити + + + Away + Пішов + + + Messenger + Програма миттєвого зв'Ñзку + + + WebCam + Веб-камера + + + Mail Forward + ПереÑлати лиÑÑ‚ + + + Pictures + Ð—Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ + + + Music + Музика + + + Battery + Ð‘Ð°Ñ‚Ð°Ñ€ÐµÑ + + + Bluetooth + Bluetooth + + + Wireless + Бездротова мережа + + + Ultra Wide Band + Ultra Wide Band + + + Audio Forward + ПоÑлідовно + + + Audio Repeat + Повторювати + + + Audio Random Play + Випадкове Ð²Ñ–Ð´Ñ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ + + + Subtitle + Субтитри + + + Audio Cycle Track + Зациклити трек + + + Time + Ð§Ð°Ñ + + + Select + Обрати + + + View + Вид + + + Top Menu + Головне меню + + + Suspend + Призупинити + + + Hibernate + ПриÑпати + + + Print Screen + Друк екрану + + + Page Up + Ðа Ñторінку вгору + + + Page Down + Ðа Ñторінку вниз + + + Caps Lock + Верхній регіÑÑ‚Ñ€ + + + Num Lock + Цифрові клавіші + + + Number Lock + Цифрові клавіші + + + Scroll Lock + Scroll Lock + + + Insert + Ð’Ñтавити + + + Delete + Видалити + + + Escape + Escape + + + System Request + СиÑтемний запит + + + Yes + Так + + + No + ÐÑ– + + + Context1 + КонтекÑÑ‚ 1 + + + Context2 + КонтекÑÑ‚ 2 + + + Context3 + КонтекÑÑ‚ 3 + + + Context4 + КонтекÑÑ‚ 4 + + + Call + Button to start a call (note: a separate button is used to end the call) + Дзвонити + + + Hangup + Button to end a call (note: a separate button is used to start the call) + ПоклаÑти Ñлухавку + + + Toggle Call/Hangup + Button that will hang up if we're in call, or make a call if we're not. + Подзвонити/поклаÑти Ñлухавку + + + Flip + Фліп + + + Voice Dial + Button to trigger voice dialling + ГолоÑовий набір + + + Last Number Redial + Button to redial the last number called + Повторний набір + + + Camera Shutter + Button to trigger the camera shutter (take a picture) + СпуÑк камери + + + Camera Focus + Button to focus the camera + СфокуÑувати камеру + + + Kanji + Кандзі + + + Muhenkan + Muhenkan + + + Henkan + Henkan + + + Romaji + Ромадзі + + + Hiragana + Хірагана + + + Katakana + Катакана + + + Hiragana Katakana + Хірагана Катакана + + + Zenkaku + Zenkaku + + + Hankaku + Hankaku + + + Zenkaku Hankaku + Zenkaku Hankaku + + + Touroku + Touroku + + + Massyo + Massyo + + + Kana Lock + Замкнути кана + + + Kana Shift + Кана Shift + + + Eisu Shift + Eisu Shift + + + Eisu toggle + Eisu перемкнути + + + Code input + ВвеÑти код + + + Multiple Candidate + Декілька кандидатів + + + Previous Candidate + Попередній кандидат + + + Hangul + Хангиль + + + Hangul Start + Початок Ñ…Ð°Ð½Ð³Ð¸Ð»Ñ + + + Hangul End + Кінець Ñ…Ð°Ð½Ð³Ð¸Ð»Ñ + + + Hangul Hanja + Хангиль Ханча + + + Hangul Jamo + Хангиль Чамо + + + Hangul Romaja + Хангиль Romaja + + + Hangul Jeonja + Хангиль Jeonja + + + Hangul Banja + Хангиль Banja + + + Hangul PreHanja + Хангиль преханча + + + Hangul PostHanja + Хангиль поÑтханча + + + Hangul Special + Хангиль Ñпеціальний + + + Ctrl + Ctrl + + + Shift + Shift + + + Alt + Alt + + + Meta + Meta + + + + + + + + + F%1 + F%1 + + + + QSlider + + Page left + Ðа Ñторінку вліво + + + Page up + Ðа Ñторінку вгору + + + Position + ÐŸÐ¾Ð·Ð¸Ñ†Ñ–Ñ + + + Page right + Ðа Ñторінку вправо + + + Page down + Ðа Ñторінку вниз + + + + QSocks5SocketEngine + + Connection to proxy refused + ПрокÑÑ–-Ñервер відмовив у з’єднанні + + + Connection to proxy closed prematurely + Ð—â€™Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð· прокÑÑ–-Ñервером було неÑподівано закрите + + + Proxy host not found + Ðе знайдено вузол прокÑÑ–-Ñервера + + + Connection to proxy timed out + Ð§Ð°Ñ Ð½Ð° Ð·â€™Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð· прокÑÑ–-Ñервером вичерпано + + + Proxy authentication failed + Збій авторизації з прокÑÑ–-Ñервером + + + Proxy authentication failed: %1 + Збій авторизації з прокÑÑ–-Ñервером: %1 + + + SOCKS version 5 protocol error + Помилка протоколу SOCKS верÑÑ–Ñ— 5 + + + General SOCKSv5 server failure + Загальний збій Ñервера SOCKSv5 + + + Connection not allowed by SOCKSv5 server + Ð—â€™Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð½Ðµ дозволене Ñервером SOCKSv5 + + + TTL expired + TTL минув + + + SOCKSv5 command not supported + Команда SOCKSv5 не підтримуєтьÑÑ + + + Address type not supported + Тип адреÑи не підтримуєтьÑÑ + + + Unknown SOCKSv5 proxy error code 0x%1 + Ðевідомий код помилки прокÑÑ–-Ñерверу SOCKSv5 0x%1 + + + Network operation timed out + Ð§Ð°Ñ Ð½Ð° мережеву операцію вичерпано + + + + QSoftKeyManager + + Ok + Ok + + + Select + Обрати + + + Done + Завершено + + + Options + Опції + + + Cancel + СкаÑувати + + + Exit + Вийти + + + + QSpinBox + + More + Більше + + + Less + Менше + + + + QSql + + Delete + Видалити + + + Delete this record? + Видалити цей запиÑ? + + + Yes + Так + + + No + ÐÑ– + + + Insert + Ð’Ñтавити + + + Update + Оновити + + + Save edits? + Зберегти зміни? + + + Cancel + СкаÑувати + + + Confirm + Підтвердити + + + Cancel your edits? + СкаÑувати ваші зміни? + + + + QSslSocket + + No error + Ðемає помилки + + + The issuer certificate could not be found + Ðе вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ Ñертифікат Ð²Ð¸Ð´Ð°Ð²Ñ†Ñ + + + The certificate signature could not be decrypted + Ðе вдалоÑÑ Ð´ÐµÑˆÐ¸Ñ„Ñ€ÑƒÐ²Ð°Ñ‚Ð¸ Ð¿Ñ–Ð´Ð¿Ð¸Ñ Ñертифіката + + + The public key in the certificate could not be read + Ðе вдалоÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚Ð¸ відкритий ключ Ñертифіката + + + The signature of the certificate is invalid + Ðеправильний Ð¿Ñ–Ð´Ð¿Ð¸Ñ Ñертифіката + + + The certificate is not yet valid + Сертифікати ще не Ñ” дійÑним + + + The certificate has expired + Сертифікат заÑтарів + + + The certificate's notBefore field contains an invalid time + Поле notBefore Ñертифіката міÑтить неправильний Ñ‡Ð°Ñ + + + The certificate's notAfter field contains an invalid time + Поле notAfter Ñертифіката міÑтить неправильний Ñ‡Ð°Ñ + + + The certificate is self-signed, and untrusted + Cертифікат ÑамопідпиÑаний та йому немає довіри + + + The root certificate of the certificate chain is self-signed, and untrusted + Кореневий Ñертифікат ланцюжка Ñертифікатів ÑамопідпиÑаний та йому немає довіри + + + The issuer certificate of a locally looked up certificate could not be found + Ðе вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ Ñертифікат Ð²Ð¸Ð´Ð°Ð²Ñ†Ñ Ð´Ð»Ñ Ñертифіката, що шукаєтьÑÑ Ð»Ð¾ÐºÐ°Ð»ÑŒÐ½Ð¾ + + + No certificates could be verified + Ðеможливо перевірити Ñертифікати + + + One of the CA certificates is invalid + Один з Ñертифікатів центру Ñертифікації неправильний + + + The basicConstraints path length parameter has been exceeded + Перевищено довжину шлÑху параметру basicConstraints + + + The supplied certificate is unsuitable for this purpose + Ðаданий Ñертифікат непридатний Ð´Ð»Ñ Ð´Ð°Ð½Ð¾Ñ— мети + + + The root CA certificate is not trusted for this purpose + Кореневий Ñертифікат центру Ñертифікації не Ñ” надійним Ð´Ð»Ñ Ð´Ð°Ð½Ð¾Ñ— мети + + + The root CA certificate is marked to reject the specified purpose + Кореневий Ñертифікат центру Ñертифікації помічений на Ð²Ñ–Ð´Ñ…Ð¸Ð»ÐµÐ½Ð½Ñ Ð´Ð»Ñ Ð´Ð°Ð½Ð¾Ñ— мети + + + The current candidate issuer certificate was rejected because its subject name did not match the issuer name of the current certificate + Сертифікат поточного кандидата Ð²Ð¸Ð´Ð°Ð²Ñ†Ñ Ð±ÑƒÐ»Ð¾ відхилено, оÑкільки назва теми не збігаєтьÑÑ Ð· іменем Ð²Ð¸Ð´Ð°Ð²Ñ†Ñ Ð¿Ð¾Ñ‚Ð¾Ñ‡Ð½Ð¾Ð³Ð¾ Ñертифіката + + + The current candidate issuer certificate was rejected because its issuer name and serial number was present and did not match the authority key identifier of the current certificate + Сертифікат поточного кандидата Ð²Ð¸Ð´Ð°Ð²Ñ†Ñ Ð±ÑƒÐ»Ð¾ відхилено, оÑкільки предÑтавлені ім'Ñ Ð²Ð¸Ð´Ð°Ð²Ñ†Ñ Ñ‚Ð° Ñерійний номер не збігаютьÑÑ Ð· ідентифікатором ключа Ñертифікаційного органу поточного Ñертифіката + + + The peer did not present any certificate + Інша Ñторона не надала жодного Ñертифіката + + + The host name did not match any of the valid hosts for this certificate + Ðазва вузла не збігаєтьÑÑ Ð· жодною з припуÑтимих назв вузлів Ð´Ð»Ñ Ñ†ÑŒÐ¾Ð³Ð¾ Ñертифіката + + + Unknown error + Ðевідома помилка + + + Error creating SSL context (%1) + Помилка ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ ÐºÐ¾Ð½Ñ‚ÐµÐºÑту SSL (%1) + + + Invalid or empty cipher list (%1) + Ðеправильний або порожній ÑпиÑок шифрів (%1) + + + Cannot provide a certificate with no key, %1 + Ðеможливо надати Ñертифікат без ключа, %1 + + + Error loading local certificate, %1 + Помилка Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð»Ð¾ÐºÐ°Ð»ÑŒÐ½Ð¾Ð³Ð¾ Ñертифіката, %1 + + + Error loading private key, %1 + Помилка Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð·Ð°ÐºÑ€Ð¸Ñ‚Ð¾Ð³Ð¾ ключа, %1 + + + Private key does not certify public key, %1 + Закритий ключ не Ñертифікує відкритий, %1 + + + Error creating SSL session, %1 + Помилка ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ ÑеÑÑ–Ñ— SSL, %1 + + + Error creating SSL session: %1 + Помилка ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ ÑеÑÑ–Ñ— SSL: %1 + + + Unable to write data: %1 + Ðеможливо запиÑати дані: %1 + + + Unable to decrypt data: %1 + Ðеможливо дешифрувати дані, %1 + + + Error while reading: %1 + Помилка читаннÑ: %1 + + + Error during SSL handshake: %1 + Помилка рукоÑтиÑÐºÐ°Ð½Ð½Ñ SSL: %1 + + + + QStateMachine + + Missing initial state in compound state '%1' + ВідÑутній початковий Ñтан в Ñкладеному Ñтані ’%1’ + + + Missing default state in history state '%1' + ВідÑутній типовий Ñтан в Ñ–Ñторичному Ñтані ’%1’ + + + No common ancestor for targets and source of transition from state '%1' + Ðемає Ñпільного предка Ð´Ð»Ñ Ñ†Ñ–Ð»ÐµÐ¹ та джерел переходу зі Ñтану '%1' + + + Unknown error + Ðевідома помилка + + + + QSystemSemaphore + + %1: permission denied + %1: доÑтуп заборонено + + + %1: already exists + %1: вже Ñ–Ñнує + + + %1: does not exist + %1: не Ñ–Ñнує + + + %1: out of resources + %1: недоÑтатньо реÑурÑів + + + %1: unknown error %2 + %1: невідома помилка %2 + + + + QTDSDriver + + Unable to open connection + Ðеможливо відкрити з'Ñ”Ð´Ð½Ð°Ð½Ð½Ñ + + + Unable to use database + Ðеможливо викориÑтати базу даних + + + + QTabBar + + Scroll Left + Прокрутити вліво + + + Scroll Right + Прокрутити вправо + + + + QTcpServer + + Operation on socket is not supported + Ðепідтримувана Ð´Ð»Ñ Ñокета Ð¾Ð¿ÐµÑ€Ð°Ñ†Ñ–Ñ + + + + QTextControl + + &Undo + &Повернути + + + &Redo + П&овторити + + + Cu&t + Ви&різати + + + &Copy + &Копіювати + + + Copy &Link Location + Копіювати &адреÑу поÑÐ¸Ð»Ð°Ð½Ð½Ñ + + + &Paste + &Ð’Ñтавити + + + Delete + Видалити + + + Select All + Виділити вÑе + + + + QToolButton + + Press + ÐатиÑніть + + + Open + Відкрити + + + + QUdpSocket + + This platform does not support IPv6 + Ð¦Ñ Ð¿Ð»Ð°Ñ‚Ñ„Ð¾Ñ€Ð¼Ð° не підтримує IPv6 + + + + QUndoGroup + + Undo + Повернути + + + Redo + Повторити + + + + QUndoModel + + <empty> + <порожньо> + + + + QUndoStack + + Undo + Повернути + + + Redo + Повторити + + + + QUnicodeControlCharacterMenu + + LRM Left-to-right mark + LRM Ознака зліва направо + + + RLM Right-to-left mark + RLM Ознака Ñправа наліво + + + ZWJ Zero width joiner + ZWJ Об’єднувач нульової ширини + + + ZWNJ Zero width non-joiner + ZWNJ Ðеоб’єднувач нульової довжини + + + ZWSP Zero width space + ZWSP ПропуÑк нульової ширини + + + LRE Start of left-to-right embedding + LRE Початок вбудованого напиÑу зліва направо + + + RLE Start of right-to-left embedding + RLE Початок вбудованого напиÑу Ñправа наліво + + + LRO Start of left-to-right override + LRO Початок заміни напиÑу зліва направо + + + RLO Start of right-to-left override + RLO Початок заміни напиÑу Ñправа наліво + + + PDF Pop directional formatting + PDF Забрати направлене Ñ„Ð¾Ñ€Ð¼Ð°Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ + + + Insert Unicode control character + Ð’Ñтавити керуючий Ñимвол Unicode + + + + QWebFrame + + Request cancelled + Запит ÑкаÑовано + + + Request blocked + Запит блоковано + + + Cannot show URL + Ðеможливо показати URL + + + Frame load interrupted by policy change + Ð—Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ñ„Ñ€ÐµÐ¹Ð¼Ñƒ було перерване зміною політики + + + Cannot show mimetype + Ðеможливо показати тип MIME + + + File does not exist + Файл не Ñ–Ñнує + + + + QWebPage + + Redirection limit reached + Ліміт перенаправлень вичерпано + + + Bad HTTP request + Поганий запит HTTP + + + %n file(s) + number of chosen file + + %n файл + %n файли + %n файлів + + + + Submit + default label for Submit buttons in forms on web pages + ÐадіÑлати + + + Submit + Submit (input element) alt text for <input> elements with no alt, title, or value + ÐадіÑлати + + + Reset + default label for Reset buttons in forms on web pages + Скинути + + + This is a searchable index. Enter search keywords: + text that appears at the start of nearly-obsolete web pages in the form of a 'searchable index' + Це пошуковий покажчик. Введіть ключові Ñлова пошуку: + + + Choose File + title for file button used in HTML forms + Оберіть файл + + + No file selected + text to display in file button used in HTML forms when no file is selected + Файл не обрано + + + Open in New Window + Open in New Window context menu item + Відкрити в новому вікні + + + Save Link... + Download Linked File context menu item + Зберегти поÑиланнÑ... + + + Copy Link + Copy Link context menu item + Копіювати поÑÐ¸Ð»Ð°Ð½Ð½Ñ + + + Open Image + Open Image in New Window context menu item + Відкрити Ð·Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ + + + Save Image + Download Image context menu item + Зберегти Ð·Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ + + + Copy Image + Copy Link context menu item + Копіювати Ð·Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ + + + Open Frame + Open Frame in New Window context menu item + Відкрити фрейм + + + Copy + Copy context menu item + Копіювати + + + Go Back + Back context menu item + Йти назад + + + Go Forward + Forward context menu item + Йти вперед + + + Stop + Stop context menu item + Зупинити + + + Reload + Reload context menu item + Перезавантажити + + + Cut + Cut context menu item + Вирізати + + + Paste + Paste context menu item + Ð’Ñтавити + + + No Guesses Found + No Guesses Found context menu item + Підказок не знайдено + + + Ignore + Ignore Spelling context menu item + Ігнорувати + + + Add To Dictionary + Learn Spelling context menu item + Додати до Ñловника + + + Search The Web + Search The Web context menu item + Пошук в мережі + + + Look Up In Dictionary + Look Up in Dictionary context menu item + Шукати в Ñловнику - - Print all - Друкувати вÑе + Open Link + Open Link context menu item + Відкрити поÑÐ¸Ð»Ð°Ð½Ð½Ñ - - Pages from - Сторінки з + Ignore + Ignore Grammar context menu item + Ігнорувати - - to - по + Spelling + Spelling and Grammar context sub-menu item + ÐŸÑ€Ð°Ð²Ð¾Ð¿Ð¸Ñ - - Selection - Вибрані + Show Spelling and Grammar + menu item title + Показати Ð¿Ñ€Ð°Ð²Ð¾Ð¿Ð¸Ñ Ñ‚Ð° граматику - - Output Settings - + Hide Spelling and Grammar + menu item title + Сховати Ð¿Ñ€Ð°Ð²Ð¾Ð¿Ð¸Ñ Ñ‚Ð° граматику - - Copies: - + Check Spelling + Check spelling context menu item + Перевірка правопиÑу - - Collate - Сортувати + Check Spelling While Typing + Check spelling while typing context menu item + ПеревірÑти Ð¿Ñ€Ð°Ð²Ð¾Ð¿Ð¸Ñ Ð¿Ñ–Ð´ Ñ‡Ð°Ñ Ð½Ð°Ð±Ð¾Ñ€Ñƒ - - Reverse - + Check Grammar With Spelling + Check grammar with spelling context menu item + ПеревірÑти граматику разом з правопиÑом - - Options - Опції + Fonts + Font context sub-menu item + Шрифти - - Color Mode - + Bold + Bold context menu item + Жирний - - Color - + Italic + Italic context menu item + КурÑив - - Grayscale - + Underline + Underline context menu item + ПідкреÑлений - - Duplex Printing - + Outline + Outline context menu item + Контур - - None - + Direction + Writing direction context sub-menu item + ÐапрÑмок - - Long side - + Text Direction + Text direction context sub-menu item + ÐапрÑмок текÑту - - Short side - + Default + Default writing direction context menu item + Типово - - - QPrintWidget - - Form - + Left to Right + Left to Right context menu item + Зліва направо - - Printer - Принтер + Right to Left + Right to Left context menu item + Справа наліво - - &Name: - + Inspect + Inspect Element context menu item + ІнÑпектувати - - P&roperties - + No recent searches + Label for only item in menu that appears when clicking on the search field image, when no searches have been performed + Ðемає нещодавніх пошуків - - Location: - + Recent searches + label for first item in the menu that appears when clicking on the search field image, used as embedded menu title + Ðещодавні пошуки - - Preview - + Clear recent searches + menu item in Recent Searches menu that empties menu's contents + ОчиÑтити нещодавні пошуки - - Type: - + Missing Plug-in + Label text to be used when a plug-in is missing + Додаток відÑутній - - Output &file: - + Unknown + Unknown filesize FTP directory listing item + Ðевідомо - - ... - + %1 (%2x%3 pixels) + Title string for images + %1 (%2x%3 пікÑелів) - - - QProcess - - - Could not open input redirection for reading - + Loading... + Media controller status message when the media is loading + ЗавантаженнÑ... - - - Could not open output redirection for writing - + Live Broadcast + Media controller status message when watching a live broadcast + ÐœÐ¾Ð²Ð»ÐµÐ½Ð½Ñ Ð½Ð°Ð¶Ð¸Ð²Ð¾ - - Resource error (fork failure): %1 - + Audio Element + Media controller element + Ðудіо-елемент - - - - - - - - - - Process operation timed out - + Video Element + Media controller element + Відео-елемент - - - - - Error reading from process - + Mute Button + Media controller element + Кнопка Ð²Ð¸Ð¼Ð¸ÐºÐ°Ð½Ð½Ñ Ð·Ð²ÑƒÐºÑƒ - - - - Error writing to process - + Unmute Button + Media controller element + Кнопка Ð²Ð¼Ð¸ÐºÐ°Ð½Ð½Ñ Ð·Ð²ÑƒÐºÑƒ - - Process crashed - + Play Button + Media controller element + Кнопка Ð²Ñ–Ð´Ñ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ - - No program defined - + Pause Button + Media controller element + Кнопка паузи - - Process failed to start - + Slider + Media controller element + Повзунок - - - QProgressDialog - - Cancel - СкаÑувати + Slider Thumb + Media controller element + Держак повзунка - - - QPushButton - - Open - Відкрити + Rewind Button + Media controller element + Кнопка перемотки на початок - - - QRadioButton - - Check - ПоÑтавити позначку + Return to Real-time Button + Media controller element + Кнопка Ð¿Ð¾Ð²ÐµÑ€Ð½ÐµÐ½Ð½Ñ Ð² реальний Ñ‡Ð°Ñ - - - QRegExp - - no error occurred - без помилок + Elapsed Time + Media controller element + Пройшло чаÑу - - disabled feature used - вжито вимкнену можливіÑÑ‚ÑŒ + Remaining Time + Media controller element + ЗалишилоÑÑŒ чаÑу - - bad char class syntax - неправильний ÑинтакÑÐ¸Ñ ÐºÐ»Ð°Ñу Ñимволу + Status Display + Media controller element + Ð’Ñ–Ð´Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Ñтану - - bad lookahead syntax - неправильний ÑинтакÑÐ¸Ñ Ð¿ÐµÑ€ÐµÐ³Ð»Ñду вперед + Fullscreen Button + Media controller element + Кнопка повноекранного режиму - - bad repetition syntax - неправильний ÑинтакÑÐ¸Ñ Ð¿Ð¾Ð²Ñ‚Ð¾Ñ€ÐµÐ½Ð½Ñ + Seek Forward Button + Media controller element + Кнопка перемотки вперед - - invalid octal value - неправильне віÑімкове Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ + Seek Back Button + Media controller element + Кнопка перемотки назад - - missing left delim - відÑутній лівий розділювач + Audio element playback controls and status display + Media controller element + Елементи ÐºÐµÑ€ÑƒÐ²Ð°Ð½Ð½Ñ Ð²Ñ–Ð´Ñ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñм звуку та Ð²Ñ–Ð´Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Ñтану - - unexpected end - неочікуваний кінець + Video element playback controls and status display + Media controller element + Елементи ÐºÐµÑ€ÑƒÐ²Ð°Ð½Ð½Ñ Ð²Ñ–Ð´Ñ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñм відео та Ð²Ñ–Ð´Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Ñтану - - met internal limit - доÑÑгнуто внутрішній ліміт + Mute audio tracks + Media controller element + Вимкнути звукові доріжки - - - QSQLite2Driver - - Error to open database - Помилка Ð²Ñ–Ð´ÐºÑ€Ð¸Ð²Ð°Ð½Ð½Ñ Ð±Ð°Ð·Ð¸ даних + Unmute audio tracks + Media controller element + Увімкнути звукові доріжки - - Unable to begin transaction - Ðеможливо почати транзакцію + Begin playback + Media controller element + Почати Ð²Ñ–Ð´Ñ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ - - Unable to commit transaction - Ðеможливо завершити транзакцію + Pause playback + Media controller element + Призупинити Ð²Ñ–Ð´Ñ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ - - Unable to rollback Transaction - Ðеможливо відкотити транзакцію + Movie time scrubber + Media controller element + Повзунок чаÑу фільму - - - QSQLite2Result - - Unable to fetch results - Ðеможливо витÑгнути результат + Movie time scrubber thumb + Media controller element + Держак повзунка чаÑу фільму - - Unable to execute statement - Ðеможливо виконати оператор + Rewind movie + Media controller element + Перемотка фільму на початок - - - QSQLiteDriver - - Error opening database - Ðеможливо відкрити базу даних + Return streaming movie to real-time + Media controller element + Повернути потокове відео до реального чаÑу - - Error closing database - Помилка Ð·Ð°ÐºÑ€Ð¸Ð²Ð°Ð½Ð½Ñ Ð±Ð°Ð·Ð¸ даних + Current movie time + Media controller element + Поточний Ñ‡Ð°Ñ Ñ„Ñ–Ð»ÑŒÐ¼Ñƒ - - Unable to begin transaction - Ðеможливо почати транзакцію + Remaining movie time + Media controller element + Ð§Ð°Ñ Ð´Ð¾ ÐºÑ–Ð½Ñ†Ñ Ñ„Ñ–Ð»ÑŒÐ¼Ñƒ - - Unable to commit transaction - Ðеможливо завершити транзакцію + Current movie status + Media controller element + Поточний Ñтан фільму - Unable to roll back transaction - Ðеможливо відкотити транзакцію + Play movie in full-screen mode + Media controller element + Відтворити фільм в повноекранному режимі - - Unable to rollback transaction - Ðеможливо відкотити транзакцію + Seek quickly back + Media controller element + Швидка перемотка назад - - - QSQLiteResult - - - - Unable to fetch row - Ðеможливо вибрати Ñ€Ñдок + Seek quickly forward + Media controller element + Швидка перемотка вперед - - Unable to execute statement - Ðеможливо виконати оператор + Indefinite time + Media time description + Ðевизначений Ñ‡Ð°Ñ - - Unable to reset statement - Ðеможливо Ñкинути оператор + %1 days %2 hours %3 minutes %4 seconds + Media time description + %1 днів %2 годин %3 хвилин %4 Ñекунд - - Unable to bind parameters - Ðеможливо прив'Ñзати параметри + %1 hours %2 minutes %3 seconds + Media time description + %1 годин %2 хвилин %3 Ñекунд - - Parameter count mismatch - КількіÑÑ‚ÑŒ параметрів не збігаєтьÑÑ + %1 minutes %2 seconds + Media time description + %1 хвилин %2 Ñекунд - - No query - + %1 seconds + Media time description + %1 Ñекунд - - - QScrollBar - Scroll here Прокрутити Ñюди - Left edge - Лівий край + До лівої границі - Top - Верх + Вгору - Right edge - Правий край + До правої границі - Bottom - Ðиз + Донизу - Page left - Сторінка ліворуч + Ðа Ñторінку вліво - - Page up - Сторінка вгору + Ðа Ñторінку вгору - Page right - Сторінка праворуч + Ðа Ñторінку вправо - - Page down - Сторінка додолу + Ðа Ñторінку вниз - Scroll left - Прокрутити ліворуч + Прокрутити вліво - Scroll up Прокрутити вгору - Scroll right - Прокрутити праворуч + Прокрутити вправо - Scroll down - Прокрутити додолу - - - - Line up - ВирівнÑти - - - - Position - ÐŸÐ¾Ð·Ð¸Ñ†Ñ–Ñ - - - - Line down - РÑдок униз - - - - QSharedMemory - - - %1: unable to set key on lock - + Прокрутити донизу - - %1: create size is less then 0 - + JavaScript Alert - %1 + ÐŸÐ¾Ð¿ÐµÑ€ÐµÐ´Ð¶ÐµÐ½Ð½Ñ JavaScript - %1 - - - %1: unable to lock - + JavaScript Confirm - %1 + ÐŸÑ–Ð´Ñ‚Ð²ÐµÑ€Ð´Ð¶ÐµÐ½Ð½Ñ JavaScript - %1 - - %1: unable to unlock - + JavaScript Prompt - %1 + Запит JavaScript - %1 - - - %1: permission denied - + JavaScript Problem - %1 + Проблема JavaScript - %1 - - - %1: already exists - + The script on this page appears to have a problem. Do you want to stop the script? + ЗдаєтьÑÑ Ñ” проблема зі Ñкриптом на цій Ñторінці. Бажаєте зупинити Ñкрипт? - - - %1: doesn't exists - + Move the cursor to the next character + ПереÑунути курÑор до наÑтупного Ñимволу - - - %1: out of resources - + Move the cursor to the previous character + ПереÑунути курÑор до попереднього Ñимволу - - - %1: unknown error %2 - + Move the cursor to the next word + ПереÑунути курÑор до наÑтупного Ñлова - - %1: key is empty - + Move the cursor to the previous word + ПереÑунути курÑор до попереднього Ñлова - - %1: unix key file doesn't exists - + Move the cursor to the next line + ПереÑунути курÑор до наÑтупного Ñ€Ñдка - - %1: ftok failed - + Move the cursor to the previous line + ПереÑунути курÑор до попереднього Ñ€Ñдка - - - %1: unable to make key - + Move the cursor to the start of the line + ПереÑунути курÑор до початку Ñ€Ñдка - - %1: system-imposed size restrictions - + Move the cursor to the end of the line + ПереÑунути курÑор в кінець Ñ€Ñдка - - %1: not attached - + Move the cursor to the start of the block + ПереÑунути курÑор до початку блока - - %1: invalid size - + Move the cursor to the end of the block + ПереÑунути курÑор в кінець блока - - %1: key error - + Move the cursor to the start of the document + ПереÑунути курÑор до початку документа - - %1: size query failed - + Move the cursor to the end of the document + ПереÑунути курÑор в кінець документа - - - QShortcut - - Space - Прогалина + Select all + Виділити вÑе - - Esc - Esc + Select to the next character + Виділити до наÑтупного Ñимволу - - Tab - Tab + Select to the previous character + Виділити до попереднього Ñимволу - - Backtab - Backtab + Select to the next word + Виділити до наÑтупного Ñлова - - Backspace - Backspace + Select to the previous word + Виділити до попереднього Ñлова - - Return - + Select to the next line + Виділити до наÑтупного Ñ€Ñдка - - Enter - Enter + Select to the previous line + Виділити до попереднього Ñ€Ñдка - - Ins - Ins + Select to the start of the line + Виділити до початку Ñ€Ñдка - - Del - Del + Select to the end of the line + Виділити до ÐºÑ–Ð½Ñ†Ñ Ñ€Ñдка - - Pause - Pause + Select to the start of the block + Виділити до початку блока - - Print - Друкувати + Select to the end of the block + Виділити до ÐºÑ–Ð½Ñ†Ñ Ð±Ð»Ð¾ÐºÐ° - - SysReq - SysReq + Select to the start of the document + Виділити до початку документа - - Home - Home + Select to the end of the document + Виділити до ÐºÑ–Ð½Ñ†Ñ Ð´Ð¾ÐºÑƒÐ¼ÐµÐ½Ñ‚Ð° - - End - End + Delete to the start of the word + Видалити до початку Ñлова - - Left - Ліворуч + Delete to the end of the word + Видалити до ÐºÑ–Ð½Ñ†Ñ Ñлова - - Up - Вгору + Insert a new paragraph + Ð’Ñтавити новий параграф - - Right - Праворуч + Insert a new line + Ð’Ñтавити новий Ñ€Ñдок - - Down - Додолу + Paste and Match Style + Ð’Ñтавити та зберегти Ñтиль - - PgUp - PgUp + Remove formatting + Видалити Ñ„Ð¾Ñ€Ð¼Ð°Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ - - PgDown - PgDown + Strikethrough + ПерекреÑлений - - CapsLock - CapsLock + Subscript + Ðижній Ñ–Ð½Ð´ÐµÐºÑ - - NumLock - NumLock + Superscript + Верхній Ñ–Ð½Ð´ÐµÐºÑ - - ScrollLock - ScrollLock + Insert Bulleted List + Ð’Ñтавити маркований ÑпиÑок - - Menu - Menu + Insert Numbered List + Ð’Ñтавити нумерований ÑпиÑок - - Help - Довідка + Indent + Збільшити відÑтуп - - Back - Ðазад + Outdent + Зменшити відÑтуп - - Forward - Forward + Center + По центру - - Stop - Stop + Justify + По ширині - - Refresh - Refresh + Align Left + ВирівнÑти вліво - - Volume Down - Тихіше + Align Right + ВирівнÑти вправо - - Volume Mute - Приглушити + Web Inspector - %2 + Web-інÑпектор - %2 + + + QWhatsThisAction - - Volume Up - ГолоÑніше + What's This? + Що це? + + + QWidget - - Bass Boost - Ð¡ÑƒÐ¿ÐµÑ€Ð±Ð°Ñ + * + * + + + QWizard - - Bass Up - Ðизькі чаÑтоти голоÑніше + Go Back + Йти назад - - Bass Down - Ðизькі чаÑтоти тихіше + < &Back + < &Ðазад - - Treble Up - ВиÑокі чаÑтоти голоÑніше + Continue + Продовжити - - Treble Down - ВиÑокі чаÑтоти тихіше + &Next + &Далі - - Media Play - ЗапуÑтити Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð²Ð°Ð½Ð½Ñ + &Next > + &Далі > - - Media Stop - Зупинити Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð²Ð°Ð½Ð½Ñ + Commit + Виконати - - Media Previous - Програти попередній + Done + Завершено - - Media Next - Програти наÑтупний + &Finish + &Завершити - - Media Record - Ð—Ð°Ð¿Ð¸Ñ + Cancel + СкаÑувати - - Favorites - Улюблені + Help + Довідка - - Search - Пошук + &Help + &Довідка + + + QWorkspace - - Standby - Ð’ режим Ñ‡ÐµÑ€Ð³ÑƒÐ²Ð°Ð½Ð½Ñ + Close + Закрити - - Open URL - Відкрити URL + Minimize + Мінімізувати - - Launch Mail - ЗапуÑтити пошту + Restore Down + Відновити - - Launch Media - ЗапуÑтити медіа + &Restore + &Відновити - - Launch (0) - ЗапуÑтити (0) + &Move + &ПереÑунути - - Launch (1) - ЗапуÑтити (1) + &Size + &Розмір - - Launch (2) - ЗапуÑтити (2) + Mi&nimize + Ðœ&інімізувати - - Launch (3) - ЗапуÑтити (3) + Ma&ximize + Ðœ&акÑимізувати - - Launch (4) - ЗапуÑтити (4) + &Close + Закри&ти - - Launch (5) - ЗапуÑтити (5) + Stay on &Top + ЗалишатиÑÑŒ на &горі - - Launch (6) - ЗапуÑтити (6) + Sh&ade + &Згорнути в заголовок - - Launch (7) - ЗапуÑтити (7) + %1 - [%2] + %1 - [%2] - - Launch (8) - ЗапуÑтити (8) + &Unshade + Р&озгорнути із заголовка + + + QXml - - Launch (9) - ЗапуÑтити (9) + no error occurred + без помилок - - Launch (A) - ЗапуÑтити (A) + error triggered by consumer + помилка, викликана кориÑтувачем - - Launch (B) - ЗапуÑтити (B) + unexpected end of file + неÑподіваний кінець файлу - - Launch (C) - ЗапуÑтити (C) + more than one document type definition + більш ніж одне Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñ‚Ð¸Ð¿Ñƒ документу - - Launch (D) - ЗапуÑтити (D) + error occurred while parsing element + під Ñ‡Ð°Ñ Ñ€Ð¾Ð·Ð±Ð¾Ñ€Ñƒ елемента трапилаÑÑŒ помилка - - Launch (E) - ЗапуÑтити (E) + tag mismatch + тег не збігаєтьÑÑ - - Launch (F) - ЗапуÑтити (F) + error occurred while parsing content + під Ñ‡Ð°Ñ Ñ€Ð¾Ð·Ð±Ð¾Ñ€Ñƒ вміÑту трапилаÑÑŒ помилка - - Print Screen - Друк екрану + unexpected character + неÑподіваний Ñимвол - - Page Up - Сторінка вгору + invalid name for processing instruction + неправильна назва Ð´Ð»Ñ Ñ–Ð½Ñтрукції обробки - - Page Down - Сторінка додолу + version expected while reading the XML declaration + під Ñ‡Ð°Ñ Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ð¾Ð³Ð¾Ð»Ð¾ÑˆÐµÐ½Ð½Ñ XML очікувалаÑÑŒ верÑÑ–Ñ - - Caps Lock - Caps Lock + wrong value for standalone declaration + неправильне Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð´Ð»Ñ ÑамоÑтійного Ð¾Ð³Ð¾Ð»Ð¾ÑˆÐµÐ½Ð½Ñ - - Num Lock - Num Lock + encoding declaration or standalone declaration expected while reading the XML declaration + під Ñ‡Ð°Ñ Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ð¾Ð³Ð¾Ð»Ð¾ÑˆÐµÐ½Ð½Ñ XML очікувалоÑÑŒ Ð¾Ð³Ð¾Ð»Ð¾ÑˆÐµÐ½Ð½Ñ ÐºÐ¾Ð´ÑƒÐ²Ð°Ð½Ð½Ñ Ð°Ð±Ð¾ ÑамоÑтійне Ð¾Ð³Ð¾Ð»Ð¾ÑˆÐµÐ½Ð½Ñ - - Number Lock - Number Lock + standalone declaration expected while reading the XML declaration + під Ñ‡Ð°Ñ Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ð¾Ð³Ð¾Ð»Ð¾ÑˆÐµÐ½Ð½Ñ XML очікувалоÑÑŒ ÑамоÑтійне Ð¾Ð³Ð¾Ð»Ð¾ÑˆÐµÐ½Ð½Ñ - - Scroll Lock - Scroll Lock + error occurred while parsing document type definition + під Ñ‡Ð°Ñ Ñ€Ð¾Ð·Ð±Ð¾Ñ€Ñƒ Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñ‚Ð¸Ð¿Ñƒ документа трапилаÑÑŒ помилка - - Insert - Ð’Ñтавити + letter is expected + очікувалаÑÑŒ літера - - Delete - Вилучити + error occurred while parsing comment + під Ñ‡Ð°Ñ Ñ€Ð¾Ð·Ð±Ð¾Ñ€Ñƒ ÐºÐ¾Ð¼ÐµÐ½Ñ‚Ð°Ñ€Ñ Ñ‚Ñ€Ð°Ð¿Ð¸Ð»Ð°ÑÑŒ помилка - - Escape - Escape + error occurred while parsing reference + під Ñ‡Ð°Ñ Ñ€Ð¾Ð·Ð±Ð¾Ñ€Ñƒ поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ñ‚Ñ€Ð°Ð¿Ð¸Ð»Ð°ÑÑŒ помилка - - System Request - System Request + internal general entity reference not allowed in DTD + внутрішнє поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° загальну ÑутніÑÑ‚ÑŒ не дозволене в DTD - - Select - Select + external parsed general entity reference not allowed in attribute value + зовнішнє розібране поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° загальну ÑутніÑÑ‚ÑŒ не дозволене в значенні атрибуту - - Yes - Так + external parsed general entity reference not allowed in DTD + зовнішнє розібране поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° загальну ÑутніÑÑ‚ÑŒ не дозволене в DTD - - No - ÐÑ– + unparsed entity reference in wrong context + нерозібране поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° ÑутніÑÑ‚ÑŒ в неправильному контекÑÑ‚Ñ– - - Context1 - КонтекÑÑ‚1 + recursive entities + рекурÑивні ÑутноÑÑ‚Ñ– - - Context2 - КонтекÑÑ‚2 + error in the text declaration of an external entity + помилка в текÑÑ‚Ñ– Ð¾Ð³Ð¾Ð»Ð¾ÑˆÐµÐ½Ð½Ñ Ð·Ð¾Ð²Ð½Ñ–ÑˆÐ½ÑŒÐ¾Ñ— ÑутноÑÑ‚Ñ– + + + QXmlPatternistCLI - - Context3 - КонтекÑÑ‚3 + Warning in %1, at line %2, column %3: %4 + ÐŸÐ¾Ð¿ÐµÑ€ÐµÐ´Ð¶ÐµÐ½Ð½Ñ Ð² %1, Ñ€Ñдок %2, Ð¿Ð¾Ð·Ð¸Ñ†Ñ–Ñ %3: %4 - - Context4 - КонтекÑÑ‚4 + Warning in %1: %2 + ÐŸÐ¾Ð¿ÐµÑ€ÐµÐ´Ð¶ÐµÐ½Ð½Ñ Ð² %1: %2 - - Call - Виклик + Unknown location + Ðевідома Ð¿Ð¾Ð·Ð¸Ñ†Ñ–Ñ - - Hangup - ПоклаÑти + Error %1 in %2, at line %3, column %4: %5 + Помилка %1 в %2, Ñ€Ñдок %3, Ð¿Ð¾Ð·Ð¸Ñ†Ñ–Ñ %4: %5 - - Flip - Flip + Error %1 in %2: %3 + Помилка %1 в %2: %3 + + + QXmlStream - - - Ctrl - Ctrl + Extra content at end of document. + Зайві дані в кінці документу. - - - Shift - Shift + Invalid entity value. + Ðеправильне Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ ÑутноÑÑ‚Ñ–. - - - Alt - Alt + Invalid XML character. + Ðеправильний Ñимвол XML. - - - Meta - Meta + Sequence ']]>' not allowed in content. + ПоÑлідовніÑÑ‚ÑŒ ']]>' не дозволена в зміÑÑ‚Ñ–. - - + - + + Encountered incorrectly encoded content. + ВиÑвлено неправильно закодований вміÑÑ‚. - - F%1 - F%1 + Namespace prefix '%1' not declared + ÐŸÑ€ÐµÑ„Ñ–ÐºÑ Ð¿Ñ€Ð¾Ñтору імен '%1' не оголошено - - Home Page - Ð”Ð¾Ð¼Ð°ÑˆÐ½Ñ Ñторінка + Illegal namespace declaration. + ÐеприпуÑтиме Ð¾Ð³Ð¾Ð»Ð¾ÑˆÐµÐ½Ð½Ñ Ð¿Ñ€Ð¾Ñтору імен. + + + Attribute redefined. + Ðтрибути перевизначено. - - - QSlider - - Page left - Сторінка ліворуч + Unexpected character '%1' in public id literal. + Ðеочікуваний Ñимвол '%1' в публічному літералі id. - - Page up - Сторінка вгору + Invalid XML version string. + Ðеправильний Ñ€Ñдок верÑÑ–Ñ— XML. - - Position - ÐŸÐ¾Ð·Ð¸Ñ†Ñ–Ñ + Unsupported XML version. + Ðепідтримувана верÑÑ–Ñ XML. - - Page right - Сторінка праворуч + The standalone pseudo attribute must appear after the encoding. + СамоÑтійний пÑевдоатрибут має знаходитÑÑŒ піÑÐ»Ñ ÐºÐ¾Ð´ÑƒÐ²Ð°Ð½Ð½Ñ. - - Page down - Сторінка додолу + %1 is an invalid encoding name. + %1 - неправильна назва кодуваннÑ. - - - QSocks5SocketEngine - - Connection to proxy refused - + Encoding %1 is unsupported + ÐšÐ¾Ð´ÑƒÐ²Ð°Ð½Ð½Ñ %1 не підтримуєтьÑÑ - - Connection to proxy closed prematurely - + Standalone accepts only yes or no. + СамоÑтійний приймає лише так чи ні. - - Proxy host not found - + Invalid attribute in XML declaration. + Ðеправильний атрибут в оголошенні XML. - - Connection to proxy timed out - + Premature end of document. + ÐеÑподіваний кінець документу. - - Proxy authentication failed - + Invalid document. + Ðеправильний документ. - - Proxy authentication failed: %1 - + Expected + ОчікувалоÑÑŒ - - SOCKS version 5 protocol error - + , but got ' + , але отримано ' - - General SOCKSv5 server failure - + Unexpected ' + Ðеочікуване ' - - Connection not allowed by SOCKSv5 server - + Expected character data. + ОчікувалиÑÑŒ Ñимвольні дані. - - TTL expired - + Recursive entity detected. + Знайдено рекурÑивну ÑутніÑÑ‚ÑŒ. - - SOCKSv5 command not supported - + Start tag expected. + ОчікувавÑÑ Ð²Ñ–Ð´ÐºÑ€Ð¸Ð²Ð°ÑŽÑ‡Ð¸Ð¹ тег. - - Address type not supported - + NDATA in parameter entity declaration. + NDATA в параметрі Ð¾Ð³Ð¾Ð»Ð¾ÑˆÐµÐ½Ð½Ñ ÑутноÑÑ‚Ñ–. - - Unknown SOCKSv5 proxy error code 0x%1 - + XML declaration not at start of document. + ÐžÐ³Ð¾Ð»Ð¾ÑˆÐµÐ½Ð½Ñ XML не знаходитьÑÑ Ð½Ð° початку документу. - Socks5 timeout error connecting to socks server - Перевищено Ñ‡Ð°Ñ Ð¾Ñ‡Ñ–ÐºÑƒÐ²Ð°Ð½Ð½Ñ Socks5 Ð´Ð»Ñ Ð·'Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð´Ð¾ Ñервера socks + %1 is an invalid processing instruction name. + %1 не Ñ” правильна назвою Ð´Ð»Ñ Ñ–Ð½Ñтрукції обробки. - - Network operation timed out - Перевищено термін Ð¾Ñ‡Ñ–ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð¼ÐµÑ€ÐµÐ¶ÐµÐ²Ð¾Ñ— дії + Invalid processing instruction name. + Ðеправильна назва Ð´Ð»Ñ Ñ–Ð½Ñтрукції обробки. - - - QSpinBox - - More - Більше + %1 is an invalid PUBLIC identifier. + %1 не Ñ” правильним ідентифікатором PUBLIC. - - Less - Менше + Invalid XML name. + Ðеправильна назва XML. - - - QSql - - Delete - Вилучити + Opening and ending tag mismatch. + Відкриваючий та закриваючий теги не збігаютьÑÑ. - - Delete this record? - Вилучити цей запиÑ? + Entity '%1' not declared. + СутніÑÑ‚ÑŒ '%1' не оголошена. - - - - Yes - Так + Reference to unparsed entity '%1'. + ПоÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° нерозібрану ÑутніÑÑ‚ÑŒ '%1'. - - - - No - ÐÑ– + Reference to external entity '%1' in attribute value. + ПоÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° зовнішню ÑутніÑÑ‚ÑŒ '%1' в значені атрибута. - - Insert - Ð’Ñтавити + Invalid character reference. + Ðеправильне Ñимвольне поÑиланнÑ. + + + QtXmlPatterns - - Update - Поновити + %1 is an unsupported encoding. + - - Save edits? - Зберегти правленнÑ? + %1 contains octets which are disallowed in the requested encoding %2. + - - Cancel - СкаÑувати + The codepoint %1, occurring in %2 using encoding %3, is an invalid XML character. + - - Confirm - Підтвердити + Network timeout. + - - Cancel your edits? - СкаÑувати правленнÑ? + Element %1 can't be serialized because it appears outside the document element. + - - - QSslSocket - - Unable to write data: %1 - Ðеможливо запиÑати дані: %1 + Attribute %1 can't be serialized because it appears at the top level. + - - Error while reading: %1 - Помилка читаннÑ: %1 + Year %1 is invalid because it begins with %2. + - - Error during SSL handshake: %1 - Помилка ÐºÐ²Ð¸Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ SSL: %1 + Day %1 is outside the range %2..%3. + - - Error creating SSL context (%1) - Помилка ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ ÐºÐ¾Ð½Ñ‚ÐµÐºÑту SSL (%1) + Month %1 is outside the range %2..%3. + - - Invalid or empty cipher list (%1) - Ðеправильний або порожній ÑпиÑок шифрів (%1) + Overflow: Can't represent date %1. + - - Error creating SSL session, %1 - Помилка ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ ÑеанÑу SSL, %1 + Day %1 is invalid for month %2. + - - Error creating SSL session: %1 - Помилка ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ ÑеанÑу SSL: %1 + Time 24:%1:%2.%3 is invalid. Hour is 24, but minutes, seconds, and milliseconds are not all 0; + - - Cannot provide a certificate with no key, %1 - Ðеможливо надати Ñертифікат без ключа, %1 + Time %1:%2:%3.%4 is invalid. + - - Error loading local certificate, %1 - Помилка Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð»Ð¾ÐºÐ°Ð»ÑŒÐ½Ð¾Ð³Ð¾ Ñертифіката, %1 + Overflow: Date can't be represented. + - - Error loading private key, %1 - Помилка Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð¿Ñ€Ð¸Ð²Ð°Ñ‚Ð½Ð¾Ð³Ð¾ ключа, %1 + At least one component must be present. + - Private key do not certificate public key, %1 - Приватний ключ не заÑвідчує публічний ключ, %1 + At least one time component must appear after the %1-delimiter. + - - Private key does not certificate public key, %1 + %1 is not a valid value of type %2. - - - QSystemSemaphore - - - %1: out of resources + When casting to %1 from %2, the source value cannot be %3. - - - %1: permission denied + Integer division (%1) by zero (%2) is undefined. - - %1: already exists + Division (%1) by zero (%2) is undefined. - - %1: does not exist + Modulus division (%1) by zero (%2) is undefined. - - - %1: unknown error %2 + Dividing a value of type %1 by %2 (not-a-number) is not allowed. - - - QTDSDriver - - Unable to open connection - Ðеможливо відкрити з'Ñ”Ð´Ð½Ð°Ð½Ð½Ñ + Dividing a value of type %1 by %2 or %3 (plus or minus zero) is not allowed. + - - Unable to use database - Ðеможливо викориÑтати базу даних + Multiplication of a value of type %1 by %2 or %3 (plus or minus infinity) is not allowed. + - - - QTabBar - - Scroll Left - Прокрутити ліворуч + A value of type %1 cannot have an Effective Boolean Value. + - - Scroll Right - Прокрутити праворуч + Effective Boolean Value cannot be calculated for a sequence containing two or more atomic values. + - - - QTcpServer - Socket operation unsupported - Дії з Ñокетами не підтримуютьÑÑ + Value %1 of type %2 exceeds maximum (%3). + - - Operation on socket is not supported + Value %1 of type %2 is below minimum (%3). - - - QTextControl - - &Undo - &Повернути + A value of type %1 must contain an even number of digits. The value %2 does not. + - - &Redo - П&овторити + %1 is not valid as a value of type %2. + - - Cu&t - Ви&різати + Ambiguous rule match. + - - &Copy - &Копіювати + Operator %1 cannot be used on type %2. + - - Copy &Link Location - Копіювати адреÑу &поÑÐ¸Ð»Ð°Ð½Ð½Ñ + Operator %1 cannot be used on atomic values of type %2 and %3. + - - &Paste - &Ð’Ñтавити + The namespace URI in the name for a computed attribute cannot be %1. + - - Delete - Вилучити + The name for a computed attribute cannot have the namespace URI %1 with the local name %2. + - - Select All - Вибрати вÑе + Type error in cast, expected %1, received %2. + - - - QToolButton - - - Press - ÐатиÑнути + When casting to %1 or types derived from it, the source value must be of the same type, or it must be a string literal. Type %2 is not allowed. + - - - Open - Відкрити + A comment cannot contain %1 + - - - QUdpSocket - - This platform does not support IPv6 - Ð¦Ñ Ð¿Ð»Ð°Ñ‚Ñ„Ð¾Ñ€Ð¼Ð° не підтримує IPv6 + A comment cannot end with a %1. + - - - QUndoGroup - - Undo - Повернути + In a namespace constructor, the value for a namespace cannot be an empty string. + - - Redo - Повторити + The prefix must be a valid %1, which %2 is not. + + + + The prefix %1 cannot be bound. + - - - QUndoModel - - <empty> - <порожньо> + Only the prefix %1 can be bound to %2 and vice versa. + - - - QUndoStack - - Undo - Повернути + An attribute node cannot be a child of a document node. Therefore, the attribute %1 is out of place. + - - Redo - Повторити + A library module cannot be evaluated directly. It must be imported from a main module. + - - - QUnicodeControlCharacterMenu - - LRM Left-to-right mark - LRM позначка зліва направо + No template by name %1 exists. + - - RLM Right-to-left mark - RLM позначка Ñправа наліво + A value of type %1 cannot be a predicate. A predicate must have either a numeric type or an Effective Boolean Value type. + - - ZWJ Zero width joiner - ZWJ з'єднувач нульової ширини + A positional predicate must evaluate to a single numeric value. + - - ZWNJ Zero width non-joiner - ZWNJ нез'єднувач нульової ширини + The target name in a processing instruction cannot be %1 in any combination of upper and lower case. Therefore, %2 is invalid. + - - ZWSP Zero width space - ZWSP прогалина нульової ширини + %1 is not a valid target name in a processing instruction. It must be a %2 value, e.g. %3. + - - LRE Start of left-to-right embedding - LRE початок Ð²Ð±ÑƒÐ´Ð¾Ð²ÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð»Ñ–Ð²Ð° направо + The last step in a path must contain either nodes or atomic values. It cannot be a mixture between the two. + - - RLE Start of right-to-left embedding - RLE початок Ð²Ð±ÑƒÐ´Ð¾Ð²ÑƒÐ²Ð°Ð½Ð½Ñ Ñправа наліво + The data of a processing instruction cannot contain the string %1 + - - LRO Start of left-to-right override - LRO початок Ð·Ð°Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ Ð·Ð»Ñ–Ð²Ð° направо + No namespace binding exists for the prefix %1 + - - RLO Start of right-to-left override - RLO початок Ð·Ð°Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ Ñправа наліво + No namespace binding exists for the prefix %1 in %2 + - - PDF Pop directional formatting - PDF Pop напрÑмне Ñ„Ð¾Ñ€Ð¼Ð°Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ + %1 is an invalid %2 + - - Insert Unicode control character - Ð’Ñтавити контрольний Ñимвол Unicode + The parameter %1 is passed, but no corresponding %2 exists. + - - - QWebFrame - - Request cancelled + The parameter %1 is required, but no corresponding %2 is supplied. + + %1 takes at most %n argument(s). %2 is therefore invalid. + + + + + + %1 requires at least %n argument(s). %2 is therefore invalid. + + + + - - Request blocked + The first argument to %1 cannot be of type %2. It must be a numeric type, xs:yearMonthDuration or xs:dayTimeDuration. - - Cannot show URL + The first argument to %1 cannot be of type %2. It must be of type %3, %4, or %5. - - Frame load interruped by policy change + The second argument to %1 cannot be of type %2. It must be of type %3, %4, or %5. - - Cannot show mimetype + %1 is not a valid XML 1.0 character. - - File does not exist + The root node of the second argument to function %1 must be a document node. %2 is not a document node. - - - QWebPage - - Bad HTTP request + If both values have zone offsets, they must have the same zone offset. %1 and %2 are not the same. - - Submit - default label for Submit buttons in forms on web pages + %1 was called. - - Submit - Submit (input element) alt text for <input> elements with no alt, title, or value + %1 must be followed by %2 or %3, not at the end of the replacement string. - - Reset - default label for Reset buttons in forms on web pages - Скинути + In the replacement string, %1 must be followed by at least one digit when not escaped. + - - This is a searchable index. Enter search keywords: - text that appears at the start of nearly-obsolete web pages in the form of a 'searchable index' + In the replacement string, %1 can only be used to escape itself or %2, not %3 - - Choose File - title for file button used in HTML forms + %1 matches newline characters - - No file selected - text to display in file button used in HTML forms when no file is selected + %1 and %2 match the start and end of a line. - - Open in New Window - Open in New Window context menu item + Matches are case insensitive - - Save Link... - Download Linked File context menu item + Whitespace characters are removed, except when they appear in character classes - - Copy Link - Copy Link context menu item + %1 is an invalid regular expression pattern: %2 - - Open Image - Open Image in New Window context menu item + %1 is an invalid flag for regular expressions. Valid flags are: - - Save Image - Download Image context menu item + If the first argument is the empty sequence or a zero-length string (no namespace), a prefix cannot be specified. Prefix %1 was specified. - - Copy Image - Copy Link context menu item + It will not be possible to retrieve %1. - - Open Frame - Open Frame in New Window context menu item + The default collection is undefined - - Copy - Copy context menu item + %1 cannot be retrieved - - Go Back - Back context menu item - Піти назад + The normalization form %1 is unsupported. The supported forms are %2, %3, %4, and %5, and none, i.e. the empty string (no normalization). + - - Go Forward - Forward context menu item + A zone offset must be in the range %1..%2 inclusive. %3 is out of range. - - Stop - Stop context menu item - Stop + %1 is not a whole number of minutes. + - - Reload - Reload context menu item + The URI cannot have a fragment - - Cut - Cut context menu item + Required cardinality is %1; got cardinality %2. - - Paste - Paste context menu item + The item %1 did not match the required type %2. - - No Guesses Found - No Guesses Found context menu item + The variable %1 is unused - - Ignore - Ignore Spelling context menu item - ПропуÑтити + W3C XML Schema identity constraint selector + - - Add To Dictionary - Learn Spelling context menu item + W3C XML Schema identity constraint field - - Search The Web - Search The Web context menu item + A construct was encountered which is disallowed in the current language(%1). - - Look Up In Dictionary - Look Up in Dictionary context menu item + %1 is an unknown schema type. - - Open Link - Open Link context menu item + A template with name %1 has already been declared. - - Ignore - Ignore Grammar context menu item - ПропуÑтити + %1 is not a valid numeric literal. + - - Spelling - Spelling and Grammar context sub-menu item + Only one %1 declaration can occur in the query prolog. - - Show Spelling and Grammar - menu item title + The initialization of variable %1 depends on itself - - Hide Spelling and Grammar - menu item title + No variable with name %1 exists - - Check Spelling - Check spelling context menu item + Version %1 is not supported. The supported XQuery version is 1.0. - - Check Spelling While Typing - Check spelling while typing context menu item + The encoding %1 is invalid. It must contain Latin characters only, must not contain whitespace, and must match the regular expression %2. - - Check Grammar With Spelling - Check grammar with spelling context menu item + No function with signature %1 is available - - Fonts - Font context sub-menu item + A default namespace declaration must occur before function, variable, and option declarations. - - Bold - Bold context menu item + Namespace declarations must occur before function, variable, and option declarations. - - Italic - Italic context menu item + Module imports must occur before function, variable, and option declarations. - - Underline - Underline context menu item + The keyword %1 cannot occur with any other mode name. - - Outline - Outline context menu item + The value of attribute %1 must be of type %2, which %3 isn't. - - Direction - Writing direction context sub-menu item + It is not possible to redeclare prefix %1. - - Text Direction - Text direction context sub-menu item + The prefix %1 cannot be bound. By default, it is already bound to the namespace %2. - - Default - Default writing direction context menu item + Prefix %1 is already declared in the prolog. - - LTR - Left to Right context menu item + The name of an option must have a prefix. There is no default namespace for options. - - RTL - Right to Left context menu item + The Schema Import feature is not supported, and therefore %1 declarations cannot occur. - - Inspect - Inspect Element context menu item + The target namespace of a %1 cannot be empty. - - No recent searches - Label for only item in menu that appears when clicking on the search field image, when no searches have been performed + The module import feature is not supported - - Recent searches - label for first item in the menu that appears when clicking on the search field image, used as embedded menu title + A variable with name %1 has already been declared. - - Clear recent searches - menu item in Recent Searches menu that empties menu's contents + No value is available for the external variable with name %1. - - Unknown - Unknown filesize FTP directory listing item - Ðевідомо + A stylesheet function must have a prefixed name. + - - %1 (%2x%3 pixels) - Title string for images + The namespace for a user defined function cannot be empty (try the predefined prefix %1 which exists for cases like this) - - Web Inspector - %2 + The namespace %1 is reserved; therefore user defined functions may not use it. Try the predefined prefix %2, which exists for these cases. - - Scroll here - Прокрутити Ñюди + The namespace of a user defined function in a library module must be equivalent to the module namespace. In other words, it should be %1 instead of %2 + - - Left edge - Лівий край + A function already exists with the signature %1. + - - Top - Верх + No external functions are supported. All supported functions can be used directly, without first declaring them as external + - - Right edge - Правий край + An argument with name %1 has already been declared. Every argument name must be unique. + - - Bottom - Ðиз + When function %1 is used for matching inside a pattern, the argument must be a variable reference or a string literal. + - - Page left - Сторінка ліворуч + In an XSL-T pattern, the first argument to function %1 must be a string literal, when used for matching. + - - Page up - Сторінка вгору + In an XSL-T pattern, the first argument to function %1 must be a literal or a variable reference, when used for matching. + - - Page right - Сторінка праворуч + In an XSL-T pattern, function %1 cannot have a third argument. + - - Page down - Сторінка додолу + In an XSL-T pattern, only function %1 and %2, not %3, can be used for matching. + - - Scroll left - Прокрутити ліворуч + In an XSL-T pattern, axis %1 cannot be used, only axis %2 or %3 can. + - - Scroll up - Прокрутити вгору + %1 is an invalid template mode name. + - - Scroll right - Прокрутити праворуч + The name of a variable bound in a for-expression must be different from the positional variable. Hence, the two variables named %1 collide. + - - Scroll down - Прокрутити додолу + The Schema Validation Feature is not supported. Hence, %1-expressions may not be used. + - - - %n file(s) - number of chosen file - - - - - + + None of the pragma expressions are supported. Therefore, a fallback expression must be present + - - JavaScript Alert - %1 + Each name of a template parameter must be unique; %1 is duplicated. - - JavaScript Confirm - %1 + The %1-axis is unsupported in XQuery - - JavaScript Prompt - %1 + No function with name %1 is available. - - Move the cursor to the next character + The namespace URI cannot be the empty string when binding to a prefix, %1. - - Move the cursor to the previous character + %1 is an invalid namespace URI. - - Move the cursor to the next word + It is not possible to bind to the prefix %1 - - Move the cursor to the previous word + Namespace %1 can only be bound to %2 (and it is, in either case, pre-declared). - - Move the cursor to the next line + Prefix %1 can only be bound to %2 (and it is, in either case, pre-declared). - - Move the cursor to the previous line + Two namespace declaration attributes have the same name: %1. - - Move the cursor to the start of the line + The namespace URI must be a constant and cannot use enclosed expressions. - - Move the cursor to the end of the line + An attribute with name %1 has already appeared on this element. - - Move the cursor to the start of the block + A direct element constructor is not well-formed. %1 is ended with %2. - - Move the cursor to the end of the block + The name %1 does not refer to any schema type. - - Move the cursor to the start of the document + %1 is an complex type. Casting to complex types is not possible. However, casting to atomic types such as %2 works. - - Move the cursor to the end of the document + %1 is not an atomic type. Casting is only possible to atomic types. - - Select all + %1 is not a valid name for a processing-instruction. - - Select to the next character + %1 is not in the in-scope attribute declarations. Note that the schema import feature is not supported. - - Select to the previous character + The name of an extension expression must be in a namespace. - - Select to the next word + Element %1 is not allowed at this location. - - Select to the previous word + Text nodes are not allowed at this location. - - Select to the next line + Parse error: %1 - - Select to the previous line + The value of the XSL-T version attribute must be a value of type %1, which %2 isn't. - - Select to the start of the line + Running an XSL-T 1.0 stylesheet with a 2.0 processor. - - Select to the end of the line + Unknown XSL-T attribute %1. - - Select to the start of the block + Attribute %1 and %2 are mutually exclusive. - - Select to the end of the block + In a simplified stylesheet module, attribute %1 must be present. - - Select to the start of the document + If element %1 has no attribute %2, it cannot have attribute %3 or %4. - - Select to the end of the document + Element %1 must have at least one of the attributes %2 or %3. - - Delete to the start of the word + At least one mode must be specified in the %1-attribute on element %2. - - Delete to the end of the word + Element %1 must come last. - - Insert a new paragraph + At least one %1-element must occur before %2. - - Insert a new line + Only one %1-element can appear. - - - QWhatsThisAction - - What's This? - Що це? + At least one %1-element must occur inside %2. + - - - QWidget - - * - * + When attribute %1 is present on %2, a sequence constructor cannot be used. + - - - QWizard - - Go Back - Піти назад + Element %1 must have either a %2-attribute or a sequence constructor. + - - Continue - Продовжити + When a parameter is required, a default value cannot be supplied through a %1-attribute or a sequence constructor. + - - Commit - ЗафікÑувати + Element %1 cannot have children. + - - Done - Зроблено + Element %1 cannot have a sequence constructor. + - Quit - Вийти + The attribute %1 cannot appear on %2, when it is a child of %3. + - - Help - Довідка + A parameter in a function cannot be declared to be a tunnel. + - - < &Back - < &Ðазад + This processor is not Schema-aware and therefore %1 cannot be used. + - - &Finish - &Закінчити + Top level stylesheet elements must be in a non-null namespace, which %1 isn't. + - - Cancel - СкаÑувати + The value for attribute %1 on element %2 must either be %3 or %4, not %5. + - - &Help - &Довідка + Attribute %1 cannot have the value %2. + - - &Next + The attribute %1 can only appear on the first %2 element. - - &Next > - &Вперед > + At least one %1 element must appear as child of %2. + - - - QWorkspace - - &Restore - &Відновити + Empty particle cannot be derived from non-empty particle. + - - &Move - &ПереÑунути + Derived particle is missing element %1. + - - &Size - &Розмір + Derived element %1 is missing value constraint as defined in base particle. + - - Mi&nimize - Мі&німізувати + Derived element %1 has weaker value constraint than base particle. + - - Ma&ximize - Ма&кÑимізувати + Fixed value constraint of element %1 differs from value constraint in base particle. + - - &Close - &Закрити + Derived element %1 cannot be nillable as base element is not nillable. + - - Stay on &Top - ЛишатиÑÑ Ð½Ð°Ð´ &іншими + Block constraints of derived element %1 must not be more weaker than in the base element. + - - - Sh&ade - Зг&орнути + Simple type of derived element %1 cannot be validly derived from base element. + - - - %1 - [%2] - %1 - [%2] + Complex type of derived element %1 cannot be validly derived from base element. + - - Minimize - Мінімізувати + Element %1 is missing in derived particle. + - - Restore Down - Відновити додолу + Element %1 does not match namespace constraint of wildcard in base particle. + - - Close - Закрити + Wildcard in derived particle is not a valid subset of wildcard in base particle. + - - &Unshade - &Розгорнути + processContent of wildcard in derived particle is weaker than wildcard in base particle. + - - - QXml - - no error occurred - без помилок + Derived particle allows content that is not allowed in the base particle. + - - error triggered by consumer - помилка викликана Ñпоживачем + %1 has inheritance loop in its base type %2. + - - unexpected end of file - неочікуваний кінець файлу + Circular inheritance of base type %1. + - - more than one document type definition - більше одного Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñ‚Ð¸Ð¿Ñƒ документу (DTD) + Circular inheritance of union %1. + - - error occurred while parsing element - помилка аналізу елемента + %1 is not allowed to derive from %2 by restriction as the latter defines it as final. + - - tag mismatch - теґи не збігаютьÑÑ + %1 is not allowed to derive from %2 by extension as the latter defines it as final. + - - error occurred while parsing content - помилка аналізу вміÑту + Base type of simple type %1 cannot be complex type %2. + - - unexpected character - неочікуваний Ñимвол + Simple type %1 cannot have direct base type %2. + - - invalid name for processing instruction - неправильне ім'Ñ Ð´Ð»Ñ Ð¾Ð±Ñ€Ð¾Ð±Ð½Ð¾Ñ— команди + Simple type %1 is not allowed to have base type %2. + - - version expected while reading the XML declaration - при читанні Ð¾Ð³Ð¾Ð»Ð¾ÑˆÐµÐ½Ð½Ñ XML очікувалаÑÑ Ð²ÐµÑ€ÑÑ–Ñ + Simple type %1 can only have simple atomic type as base type. + - - wrong value for standalone declaration - неправильне Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð´Ð»Ñ Ð¾ÐºÑ€ÐµÐ¼Ð¾Ð³Ð¾ Ð¾Ð³Ð¾Ð»Ð¾ÑˆÐµÐ½Ð½Ñ + Simple type %1 cannot derive from %2 as the latter defines restriction as final. + - - encoding declaration or standalone declaration expected while reading the XML declaration - при читанні оголошень XML очікувалоÑÑŒ Ð¾Ð³Ð¾Ð»Ð¾ÑˆÐµÐ½Ð½Ñ ÐºÐ¾Ð´ÑƒÐ²Ð°Ð½Ð½Ñ Ð°Ð±Ð¾ окреме Ð¾Ð³Ð¾Ð»Ð¾ÑˆÐµÐ½Ð½Ñ + Variety of item type of %1 must be either atomic or union. + - - standalone declaration expected while reading the XML declaration - при читанні оголошень XML очікувалоÑÑŒ окреме Ð¾Ð³Ð¾Ð»Ð¾ÑˆÐµÐ½Ð½Ñ + Variety of member types of %1 must be atomic. + - - error occurred while parsing document type definition - помилка при аналізі Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñ‚Ð¸Ð¿Ñƒ документу (DTD) + %1 is not allowed to derive from %2 by list as the latter defines it as final. + - - letter is expected - очікувалаÑÑŒ літера + Simple type %1 is only allowed to have %2 facet. + - - error occurred while parsing comment - помилка аналізу ÐºÐ¾Ð¼ÐµÐ½Ñ‚Ð°Ñ€Ñ + Base type of simple type %1 must have variety of type list. + - - error occurred while parsing reference - помилка аналізу поÑÐ¸Ð»Ð°Ð½Ð½Ñ + Base type of simple type %1 has defined derivation by restriction as final. + - - internal general entity reference not allowed in DTD - поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° внутрішній загальний елемент не дозволено в DTD + Item type of base type does not match item type of %1. + - - external parsed general entity reference not allowed in attribute value - поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° зовнішній розібраний загальний елемент не дозволено в значенні атрибута + Simple type %1 contains not allowed facet type %2. + - - external parsed general entity reference not allowed in DTD - поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° зовнішній розібраний загальний елемент не дозволено в DTD + %1 is not allowed to derive from %2 by union as the latter defines it as final. + - - unparsed entity reference in wrong context - поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° нерозібраний елемент у неправильному контекÑÑ‚Ñ– + %1 is not allowed to have any facets. + - - recursive entities - рекурÑивні елементи + Base type %1 of simple type %2 must have variety of union. + - - error in the text declaration of an external entity - помилка в оголошенні текÑту зовнішнього елемента + Base type %1 of simple type %2 is not allowed to have restriction in %3 attribute. + - - - QXmlStream - - - Extra content at end of document. - Ðадлишковий вміÑÑ‚ в кінці документу. + Member type %1 cannot be derived from member type %2 of %3's base type %4. + - - Invalid entity value. - Ðеправильне Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ ÐµÐ»ÐµÐ¼ÐµÐ½Ñ‚Ñƒ. + Derivation method of %1 must be extension because the base type %2 is a simple type. + - - Invalid XML character. - Ðеправильний Ñимвол XML. + Complex type %1 has duplicated element %2 in its content model. + - - Sequence ']]>' not allowed in content. - ПоÑлідовніÑÑ‚ÑŒ "]]>" в вміÑÑ‚Ñ– Ñ” недозволеною. + Complex type %1 has non-deterministic content. + - - Namespace prefix '%1' not declared - ÐŸÑ€ÐµÑ„Ñ–ÐºÑ Ð¿Ñ€Ð¾Ñтору імен "%1" не оголошено + Attributes of complex type %1 are not a valid extension of the attributes of base type %2: %3. + - - Attribute redefined. - Ðове Ð¾Ð³Ð¾Ð»Ð¾ÑˆÐµÐ½Ð½Ñ Ð°Ñ‚Ñ€Ð¸Ð±ÑƒÑ‚Ñƒ. + Content model of complex type %1 is not a valid extension of content model of %2. + - - Unexpected character '%1' in public id literal. - Ðеочікуваний Ñимвол "%1" в ідентифікаторі публічного літерала. + Complex type %1 must have simple content. + - - Invalid XML version string. - Ðеправильний Ñ€Ñдок верÑÑ–Ñ— XML. + Complex type %1 must have the same simple type as its base class %2. + - - Unsupported XML version. - Ðепідтримувана верÑÑ–Ñ XML. + Complex type %1 cannot be derived from base type %2%3. + - - %1 is an invalid encoding name. - %1 Ñ” неправильним ім'Ñм кодуваннÑ. + Attributes of complex type %1 are not a valid restriction from the attributes of base type %2: %3. + - - Encoding %1 is unsupported - ÐšÐ¾Ð´ÑƒÐ²Ð°Ð½Ð½Ñ %1 не підтримуєтьÑÑ + Complex type %1 with simple content cannot be derived from complex base type %2. + - Invalid XML encoding name. - Ðеправильне ім'Ñ ÐºÐ¾Ð´ÑƒÐ²Ð°Ð½Ð½Ñ XML. + Item type of simple type %1 cannot be a complex type. + - - Standalone accepts only yes or no. - Ðвтономний приймає лише "так" чи "ні". + Member type of simple type %1 cannot be a complex type. + - - Invalid attribute in XML declaration. - Ðеправильний атрибут в оголошенні XML. + %1 is not allowed to have a member type with the same name as itself. + - - Premature end of document. - ПередчаÑний кінець документа. + %1 facet collides with %2 facet. + - - Invalid document. - Ðеправильно Ñформований документ. + %1 facet must have the same value as %2 facet of base type. + - - Expected - ОчікувавÑÑ + %1 facet must be equal or greater than %2 facet of base type. + - - , but got ' - , але отримано " + %1 facet must be less than or equal to %2 facet of base type. + - - Unexpected ' - Ðеочікуваний " + %1 facet contains invalid regular expression + - - Expected character data. - ОчікувалиÑÑŒ Ñимвольні дані. + Unknown notation %1 used in %2 facet. + - - Recursive entity detected. - Знайдено рекурÑивний елемент. + %1 facet contains invalid value %2: %3. + - - Start tag expected. - ОчікувавÑÑ Ð¿Ð¾Ñ‡Ð°Ñ‚ÐºÐ¾Ð²Ð¸Ð¹ теґ. + %1 facet cannot be %2 or %3 if %4 facet of base type is %5. + - - XML declaration not at start of document. - ÐžÐ³Ð¾Ð»Ð¾ÑˆÐµÐ½Ð½Ñ XML не на початку документа. + %1 facet cannot be %2 if %3 facet of base type is %4. + - - NDATA in parameter entity declaration. - NDATA в оголошенні порожнього параметра. + %1 facet must be less than or equal to %2 facet. + - xml is an invalid processing instruction name. - xml не Ñ” дозволеною назвою інÑтрукції оброблÑннÑ. + %1 facet must be less than %2 facet of base type. + - - %1 is an invalid processing instruction name. - %1 не Ñ” дозволеною назвою інÑтрукції оброблÑннÑ. + %1 facet and %2 facet cannot appear together. + - - Invalid processing instruction name. - Ðеправильне ім'Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð¸ оброблÑннÑ. + %1 facet must be greater than %2 facet of base type. + - - - - - Illegal namespace declaration. - Ðеправильне Ð¾Ð³Ð¾Ð»Ð¾ÑˆÐµÐ½Ð½Ñ Ð¿Ñ€Ð¾Ñтору імен. + %1 facet must be less than %2 facet. + - - Invalid XML name. - Ðеправильне ім'Ñ XML. + %1 facet must be greater than or equal to %2 facet of base type. + - - Opening and ending tag mismatch. - Ðе збігаютьÑÑ Ð²Ñ–Ð´ÐºÑ€Ð¸Ð²Ð½Ñ– й закривні теґи. + Simple type contains not allowed facet %1. + - - Reference to unparsed entity '%1'. - ПоÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° необроблений елемент "%1". + %1, %2, %3, %4, %5 and %6 facets are not allowed when derived by list. + - - - - Entity '%1' not declared. - ВідÑутнє Ð¾Ð³Ð¾Ð»Ð¾ÑˆÐµÐ½Ð½Ñ ÐµÐ»ÐµÐ¼ÐµÐ½Ñ‚Ð° "%1". + Only %1 and %2 facets are allowed when derived by union. + - - Reference to external entity '%1' in attribute value. - ПоÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° зовнішній елемент "%1" в значенні атрибута. + %1 contains %2 facet with invalid data: %3. + - - Invalid character reference. - Ðеправильне Ñимвольне поÑиланнÑ. + Attribute group %1 contains attribute %2 twice. + - - - Encountered incorrectly encoded content. - Знайдено невірно закодований вміÑÑ‚. + Attribute group %1 contains two different attributes that both have types derived from %2. + - - The standalone pseudo attribute must appear after the encoding. - Окремий пÑевдо-атрибут має бути приÑутній піÑÐ»Ñ ÐºÐ¾Ð´ÑƒÐ²Ð°Ð½Ð½Ñ. + Attribute group %1 contains attribute %2 that has value constraint but type that inherits from %3. + - - %1 is an invalid PUBLIC identifier. - %1 Ñ” неприпуÑтимим публічним іденифікатором. + Complex type %1 contains attribute %2 twice. + - - - QtXmlPatterns - - An %1-attribute with value %2 has already been declared. + Complex type %1 contains two different attributes that both have types derived from %2. - - An %1-attribute must have a valid %2 as value, which %3 isn't. + Complex type %1 contains attribute %2 that has value constraint but type that inherits from %3. - - Network timeout. + Element %1 is not allowed to have a value constraint if its base type is complex. - - Element %1 can't be serialized because it appears outside the document element. + Element %1 is not allowed to have a value constraint if its type is derived from %2. - - Attribute %1 can't be serialized because it appears at the top level. + Value constraint of element %1 is not of elements type: %2. - - Year %1 is invalid because it begins with %2. + Element %1 is not allowed to have substitution group affiliation as it is no global element. - - Day %1 is outside the range %2..%3. + Type of element %1 cannot be derived from type of substitution group affiliation. - - Month %1 is outside the range %2..%3. + Value constraint of attribute %1 is not of attributes type: %2. - - Overflow: Can't represent date %1. + Attribute %1 has value constraint but has type derived from %2. - - Day %1 is invalid for month %2. + %1 attribute in derived complex type must be %2 like in base type. - - Time 24:%1:%2.%3 is invalid. Hour is 24, but minutes, seconds, and milliseconds are not all 0; + Attribute %1 in derived complex type must have %2 value constraint like in base type. - - Time %1:%2:%3.%4 is invalid. + Attribute %1 in derived complex type must have the same %2 value constraint like in base type. - - Overflow: Date can't be represented. + Attribute %1 in derived complex type must have %2 value constraint. - - - At least one component must be present. + processContent of base wildcard must be weaker than derived wildcard. - - At least one time component must appear after the %1-delimiter. + Element %1 exists twice with different types. - - No operand in an integer division, %1, can be %2. + Particle contains non-deterministic wildcards. - - The first operand in an integer division, %1, cannot be infinity (%2). + Base attribute %1 is required but derived attribute is not. - - The second operand in a division, %1, cannot be zero (%2). + Type of derived attribute %1 cannot be validly derived from type of base attribute. - - %1 is not a valid value of type %2. + Value constraint of derived attribute %1 does not match value constraint of base attribute. - - When casting to %1 from %2, the source value cannot be %3. + Derived attribute %1 does not exist in the base definition. - - Integer division (%1) by zero (%2) is undefined. + Derived attribute %1 does not match the wildcard in the base definition. - - Division (%1) by zero (%2) is undefined. + Base attribute %1 is required but missing in derived definition. - - Modulus division (%1) by zero (%2) is undefined. + Derived definition contains an %1 element that does not exists in the base definition - - - Dividing a value of type %1 by %2 (not-a-number) is not allowed. + Derived wildcard is not a subset of the base wildcard. - - Dividing a value of type %1 by %2 or %3 (plus or minus zero) is not allowed. + %1 of derived wildcard is not a valid restriction of %2 of base wildcard - - Multiplication of a value of type %1 by %2 or %3 (plus or minus infinity) is not allowed. + Attribute %1 from base type is missing in derived type. - - A value of type %1 cannot have an Effective Boolean Value. + Type of derived attribute %1 differs from type of base attribute. - - Effective Boolean Value cannot be calculated for a sequence containing two or more atomic values. + Base definition contains an %1 element that is missing in the derived definition - - Value %1 of type %2 exceeds maximum (%3). + Can not process unknown element %1, expected elements are: %2. - - Value %1 of type %2 is below minimum (%3). + Element %1 is not allowed in this scope, possible elements are: %2. - - A value of type %1 must contain an even number of digits. The value %2 does not. + Child element is missing in that scope, possible child elements are: %1. - - %1 is not valid as a value of type %2. + Document is not a XML schema. - - Operator %1 cannot be used on type %2. + %1 attribute of %2 element contains invalid content: {%3} is not a value of type %4. - - Operator %1 cannot be used on atomic values of type %2 and %3. + %1 attribute of %2 element contains invalid content: {%3}. - - The namespace URI in the name for a computed attribute cannot be %1. + Target namespace %1 of included schema is different from the target namespace %2 as defined by the including schema. - - The name for a computed attribute cannot have the namespace URI %1 with the local name %2. + Target namespace %1 of imported schema is different from the target namespace %2 as defined by the importing schema. - - Type error in cast, expected %1, received %2. + %1 element is not allowed to have the same %2 attribute value as the target namespace %3. - - When casting to %1 or types derived from it, the source value must be of the same type, or it must be a string literal. Type %2 is not allowed. + %1 element without %2 attribute is not allowed inside schema without target namespace. - - No casting is possible with %1 as the target type. + %1 element is not allowed inside %2 element if %3 attribute is present. - - It is not possible to cast from %1 to %2. + %1 element has neither %2 attribute nor %3 child element. - - Casting to %1 is not possible because it is an abstract type, and can therefore never be instantiated. + %1 element with %2 child element must not have a %3 attribute. - - It's not possible to cast the value %1 of type %2 to %3 + %1 attribute of %2 element must be %3 or %4. - - Failure when casting from %1 to %2: %3 + %1 attribute of %2 element must have a value of %3. - - A comment cannot contain %1 + %1 attribute of %2 element must have a value of %3 or %4. - - A comment cannot end with a %1. + %1 element must not have %2 and %3 attribute together. - - No comparisons can be done involving the type %1. + Content of %1 attribute of %2 element must not be from namespace %3. - - Operator %1 is not available between atomic values of type %2 and %3. + %1 attribute of %2 element must not be %3. - - An attribute node cannot be a child of a document node. Therefore, the attribute %1 is out of place. + %1 attribute of %2 element must have the value %3 because the %4 attribute is set. - - A library module cannot be evaluated directly. It must be imported from a main module. + Specifying use='prohibited' inside an attribute group has no effect. - - No template by name %1 exists. + %1 element must have either %2 or %3 attribute. - - A value of type %1 cannot be a predicate. A predicate must have either a numeric type or an Effective Boolean Value type. + %1 element must have either %2 attribute or %3 or %4 as child element. - - A positional predicate must evaluate to a single numeric value. + %1 element requires either %2 or %3 attribute. - - The target name in a processing instruction cannot be %1 in any combination of upper and lower case. Therefore, is %2 invalid. + Text or entity references not allowed inside %1 element - - %1 is not a valid target name in a processing instruction. It must be a %2 value, e.g. %3. + %1 attribute of %2 element must contain %3, %4 or a list of URIs. - - The last step in a path must contain either nodes or atomic values. It cannot be a mixture between the two. + %1 element is not allowed in this context. - - The data of a processing instruction cannot contain the string %1 + %1 attribute of %2 element has larger value than %3 attribute. - - No namespace binding exists for the prefix %1 + Prefix of qualified name %1 is not defined. - - No namespace binding exists for the prefix %1 in %2 + %1 attribute of %2 element must either contain %3 or the other values. - - - %1 is an invalid %2 + Component with ID %1 has been defined previously. - - - %1 takes at most %n argument(s). %2 is therefore invalid. - - - - - - - - - %1 requires at least %n argument(s). %2 is therefore invalid. - - - - - + + Element %1 already defined. + - - The first argument to %1 cannot be of type %2. It must be a numeric type, xs:yearMonthDuration or xs:dayTimeDuration. + Attribute %1 already defined. - - The first argument to %1 cannot be of type %2. It must be of type %3, %4, or %5. + Type %1 already defined. - - The second argument to %1 cannot be of type %2. It must be of type %3, %4, or %5. + Attribute group %1 already defined. - - %1 is not a valid XML 1.0 character. + Element group %1 already defined. - - The first argument to %1 cannot be of type %2. + Notation %1 already defined. - - If both values have zone offsets, they must have the same zone offset. %1 and %2 are not the same. + Identity constraint %1 already defined. - - %1 was called. + Duplicated facets in simple type %1. - - %1 must be followed by %2 or %3, not at the end of the replacement string. + %1 references unknown %2 or %3 element %4. - - In the replacement string, %1 must be followed by at least one digit when not escaped. + %1 references identity constraint %2 that is no %3 or %4 element. - - In the replacement string, %1 can only be used to escape itself or %2, not %3 + %1 has a different number of fields from the identity constraint %2 that it references. - - %1 matches newline characters + Base type %1 of %2 element cannot be resolved. - - %1 and %2 match the start and end of a line. + Item type %1 of %2 element cannot be resolved. - - Matches are case insensitive + Member type %1 of %2 element cannot be resolved. - - Whitespace characters are removed, except when they appear in character classes + Type %1 of %2 element cannot be resolved. - - %1 is an invalid regular expression pattern: %2 + Base type %1 of complex type cannot be resolved. - - %1 is an invalid flag for regular expressions. Valid flags are: + %1 cannot have complex base type that has a %2. - - If the first argument is the empty sequence or a zero-length string (no namespace), a prefix cannot be specified. Prefix %1 was specified. + Content model of complex type %1 contains %2 element so it cannot be derived by extension from a non-empty type. - - It will not be possible to retrieve %1. + Complex type %1 cannot be derived by extension from %2 as the latter contains %3 element in its content model. - - The root node of the second argument to function %1 must be a document node. %2 is not a document node. + Type of %1 element must be a simple type, %2 is not. - - The default collection is undefined + Substitution group %1 of %2 element cannot be resolved. - - %1 cannot be retrieved + Substitution group %1 has circular definition. - - The normalization form %1 is unsupported. The supported forms are %2, %3, %4, and %5, and none, i.e. the empty string (no normalization). + Duplicated element names %1 in %2 element. - - A zone offset must be in the range %1..%2 inclusive. %3 is out of range. + Reference %1 of %2 element cannot be resolved. - - %1 is not a whole number of minutes. + Circular group reference for %1. - - Required cardinality is %1; got cardinality %2. + %1 element is not allowed in this scope - - The item %1 did not match the required type %2. + %1 element cannot have %2 attribute with value other than %3. - - - %1 is an unknown schema type. + %1 element cannot have %2 attribute with value other than %3 or %4. - - Only one %1 declaration can occur in the query prolog. + %1 or %2 attribute of reference %3 does not match with the attribute declaration %4. - - The initialization of variable %1 depends on itself + Attribute group %1 has circular reference. - - No variable by name %1 exists + %1 attribute in %2 must have %3 use like in base type %4. - - The variable %1 is unused + Attribute wildcard of %1 is not a valid restriction of attribute wildcard of base type %2. - - Version %1 is not supported. The supported XQuery version is 1.0. + %1 has attribute wildcard but its base type %2 has not. - - The encoding %1 is invalid. It must contain Latin characters only, must not contain whitespace, and must match the regular expression %2. + Union of attribute wildcard of type %1 and attribute wildcard of its base type %2 is not expressible. - - No function with signature %1 is available + Enumeration facet contains invalid content: {%1} is not a value of type %2. - - - A default namespace declaration must occur before function, variable, and option declarations. + Namespace prefix of qualified name %1 is not defined. - - Namespace declarations must occur before function, variable, and option declarations. + %1 element %2 is not a valid restriction of the %3 element it redefines: %4. - - Module imports must occur before function, variable, and option declarations. + %1 is not valid according to %2. - - It is not possible to redeclare prefix %1. + String content does not match the length facet. - - Prefix %1 is already declared in the prolog. + String content does not match the minLength facet. - - The name of an option must have a prefix. There is no default namespace for options. + String content does not match the maxLength facet. - - The Schema Import feature is not supported, and therefore %1 declarations cannot occur. + String content does not match pattern facet. - - The target namespace of a %1 cannot be empty. + String content is not listed in the enumeration facet. - - The module import feature is not supported + Signed integer content does not match the maxInclusive facet. - - No value is available for the external variable by name %1. + Signed integer content does not match the maxExclusive facet. - - A construct was encountered which only is allowed in XQuery. + Signed integer content does not match the minInclusive facet. - - A template by name %1 has already been declared. + Signed integer content does not match the minExclusive facet. - - The keyword %1 cannot occur with any other mode name. + Signed integer content is not listed in the enumeration facet. - - The value of attribute %1 must of type %2, which %3 isn't. + Signed integer content does not match pattern facet. - - The prefix %1 can not be bound. By default, it is already bound to the namespace %2. + Signed integer content does not match in the totalDigits facet. - - A variable by name %1 has already been declared. + Unsigned integer content does not match the maxInclusive facet. - - A stylesheet function must have a prefixed name. + Unsigned integer content does not match the maxExclusive facet. - - The namespace for a user defined function cannot be empty (try the predefined prefix %1 which exists for cases like this) + Unsigned integer content does not match the minInclusive facet. - - The namespace %1 is reserved; therefore user defined functions may not use it. Try the predefined prefix %2, which exists for these cases. + Unsigned integer content does not match the minExclusive facet. - - The namespace of a user defined function in a library module must be equivalent to the module namespace. In other words, it should be %1 instead of %2 + Unsigned integer content is not listed in the enumeration facet. - - A function already exists with the signature %1. + Unsigned integer content does not match pattern facet. - - No external functions are supported. All supported functions can be used directly, without first declaring them as external + Unsigned integer content does not match in the totalDigits facet. - - An argument by name %1 has already been declared. Every argument name must be unique. + Double content does not match the maxInclusive facet. - - When function %1 is used for matching inside a pattern, the argument must be a variable reference or a string literal. + Double content does not match the maxExclusive facet. - - In an XSL-T pattern, the first argument to function %1 must be a string literal, when used for matching. + Double content does not match the minInclusive facet. - - In an XSL-T pattern, the first argument to function %1 must be a literal or a variable reference, when used for matching. + Double content does not match the minExclusive facet. - - In an XSL-T pattern, function %1 cannot have a third argument. + Double content is not listed in the enumeration facet. - - In an XSL-T pattern, only function %1 and %2, not %3, can be used for matching. + Double content does not match pattern facet. - - In an XSL-T pattern, axis %1 cannot be used, only axis %2 or %3 can. + Decimal content does not match in the fractionDigits facet. - - %1 is an invalid template mode name. + Decimal content does not match in the totalDigits facet. - - The name of a variable bound in a for-expression must be different from the positional variable. Hence, the two variables named %1 collide. + Date time content does not match the maxInclusive facet. - - The Schema Validation Feature is not supported. Hence, %1-expressions may not be used. + Date time content does not match the maxExclusive facet. - - None of the pragma expressions are supported. Therefore, a fallback expression must be present + Date time content does not match the minInclusive facet. - - Each name of a template parameter must be unique; %1 is duplicated. + Date time content does not match the minExclusive facet. - - The %1-axis is unsupported in XQuery + Date time content is not listed in the enumeration facet. - - %1 is not a valid name for a processing-instruction. + Date time content does not match pattern facet. - - %1 is not a valid numeric literal. + Duration content does not match the maxInclusive facet. - - No function by name %1 is available. + Duration content does not match the maxExclusive facet. - - The namespace URI cannot be the empty string when binding to a prefix, %1. + Duration content does not match the minInclusive facet. - - %1 is an invalid namespace URI. + Duration content does not match the minExclusive facet. - - It is not possible to bind to the prefix %1 + Duration content is not listed in the enumeration facet. - - Namespace %1 can only be bound to %2 (and it is, in either case, pre-declared). + Duration content does not match pattern facet. - - Prefix %1 can only be bound to %2 (and it is, in either case, pre-declared). + Boolean content does not match pattern facet. - - Two namespace declaration attributes have the same name: %1. + Binary content does not match the length facet. - - The namespace URI must be a constant and cannot use enclosed expressions. + Binary content does not match the minLength facet. - - An attribute by name %1 has already appeared on this element. + Binary content does not match the maxLength facet. - - A direct element constructor is not well-formed. %1 is ended with %2. + Binary content is not listed in the enumeration facet. - - The name %1 does not refer to any schema type. + Invalid QName content: %1. - - %1 is an complex type. Casting to complex types is not possible. However, casting to atomic types such as %2 works. + QName content is not listed in the enumeration facet. - - %1 is not an atomic type. Casting is only possible to atomic types. + QName content does not match pattern facet. - - - %1 is not in the in-scope attribute declarations. Note that the schema import feature is not supported. + Notation content is not listed in the enumeration facet. - - The name of an extension expression must be in a namespace. + List content does not match length facet. - - empty + List content does not match minLength facet. - - zero or one + List content does not match maxLength facet. - - exactly one + List content is not listed in the enumeration facet. - - one or more + List content does not match pattern facet. - - zero or more + Union content is not listed in the enumeration facet. - - Required type is %1, but %2 was found. + Union content does not match pattern facet. - - Promoting %1 to %2 may cause loss of precision. + Data of type %1 are not allowed to be empty. - - The focus is undefined. + Element %1 is missing child element. - - It's not possible to add attributes after any other kind of node. + There is one IDREF value with no corresponding ID: %1. - - An attribute by name %1 has already been created. + Loaded schema file is invalid. - - Only the Unicode Codepoint Collation is supported(%1). %2 is unsupported. + %1 contains invalid data. - - %1 is an unsupported encoding. + xsi:schemaLocation namespace %1 has already appeared earlier in the instance document. - - %1 contains octets which are disallowed in the requested encoding %2. + xsi:noNamespaceSchemaLocation cannot appear after the first no-namespace element or attribute. - - The codepoint %1, occurring in %2 using encoding %3, is an invalid XML character. + No schema defined for validation. - - Ambiguous rule match. + No definition for element %1 available. - - In a namespace constructor, the value for a namespace cannot be an empty string. + Specified type %1 is not known to the schema. - - The prefix must be a valid %1, which %2 is not. + Element %1 is not defined in this scope. - - The prefix %1 cannot be bound. + Declaration for element %1 does not exist. - - Only the prefix %1 can be bound to %2 and vice versa. + Element %1 contains invalid content. - - Circularity detected + Element %1 is declared as abstract. - - The parameter %1 is required, but no corresponding %2 is supplied. + Element %1 is not nillable. - - The parameter %1 is passed, but no corresponding %2 exists. + Attribute %1 contains invalid data: %2 - - The URI cannot have a fragment + Element contains content although it is nillable. - - Element %1 is not allowed at this location. + Fixed value constraint not allowed if element is nillable. - - Text nodes are not allowed at this location. + Specified type %1 is not validly substitutable with element type %2. - - Parse error: %1 + Complex type %1 is not allowed to be abstract. - - The value of the XSL-T version attribute must be a value of type %1, which %2 isn't. + Element %1 contains not allowed attributes. - - Running an XSL-T 1.0 stylesheet with a 2.0 processor. + Element %1 contains not allowed child element. - - Unknown XSL-T attribute %1. + Content of element %1 does not match its type definition: %2. - - Attribute %1 and %2 are mutually exclusive. + Content of element %1 does not match defined value constraint. - - In a simplified stylesheet module, attribute %1 must be present. + Element %1 contains not allowed child content. - - If element %1 has no attribute %2, it cannot have attribute %3 or %4. + Element %1 contains not allowed text content. - - Element %1 must have at least one of the attributes %2 or %3. + Element %1 cannot contain other elements, as it has a fixed content. - - At least one mode must be specified in the %1-attribute on element %2. + Element %1 is missing required attribute %2. - - Attribute %1 cannot appear on the element %2. Only the standard attributes can appear. + Attribute %1 does not match the attribute wildcard. - - Attribute %1 cannot appear on the element %2. Only %3 is allowed, and the standard attributes. + Declaration for attribute %1 does not exist. - - Attribute %1 cannot appear on the element %2. Allowed is %3, %4, and the standard attributes. + Element %1 contains two attributes of type %2. - - Attribute %1 cannot appear on the element %2. Allowed is %3, and the standard attributes. + Attribute %1 contains invalid content. - - XSL-T attributes on XSL-T elements must be in the null namespace, not in the XSL-T namespace which %1 is. + Element %1 contains unknown attribute %2. - - The attribute %1 must appear on element %2. + Content of attribute %1 does not match its type definition: %2. - - The element with local name %1 does not exist in XSL-T. + Content of attribute %1 does not match defined value constraint. - - Element %1 must come last. + Non-unique value found for constraint %1. - - At least one %1-element must occur before %2. + Key constraint %1 contains absent fields. - - Only one %1-element can appear. + Key constraint %1 contains references nillable element %2. - - At least one %1-element must occur inside %2. + No referenced value found for key reference %1. - - When attribute %1 is present on %2, a sequence constructor cannot be used. + More than one value found for field %1. - - Element %1 must have either a %2-attribute or a sequence constructor. + Field %1 has no simple type. - - When a parameter is required, a default value cannot be supplied through a %1-attribute or a sequence constructor. + ID value '%1' is not unique. - - Element %1 cannot have children. + '%1' attribute contains invalid QName content: %2. - - Element %1 cannot have a sequence constructor. + empty - - - The attribute %1 cannot appear on %2, when it is a child of %3. + zero or one - - A parameter in a function cannot be declared to be a tunnel. + exactly one - - This processor is not Schema-aware and therefore %1 cannot be used. + one or more - - Top level stylesheet elements must be in a non-null namespace, which %1 isn't. + zero or more - - The value for attribute %1 on element %2 must either be %3 or %4, not %5. + Required type is %1, but %2 was found. - - Attribute %1 cannot have the value %2. + Promoting %1 to %2 may cause loss of precision. - - The attribute %1 can only appear on the first %2 element. + The focus is undefined. - - At least one %1 element must appear as child of %2. + It's not possible to add attributes after any other kind of node. - - - VolumeSlider - - Muted + An attribute by name %1 has already been created. - - - Volume: %1% + Only the Unicode Codepoint Collation is supported(%1). %2 is unsupported. diff --git a/translations/qtconfig_uk.ts b/translations/qtconfig_uk.ts index 9d5b0a7..b1cd0c3 100644 --- a/translations/qtconfig_uk.ts +++ b/translations/qtconfig_uk.ts @@ -93,7 +93,7 @@ Qt Configuration - ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ Qt + ÐÐ°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Qt Save Changes @@ -120,7 +120,7 @@ MainWindowBase Qt Configuration - ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ Qt + ÐÐ°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Qt Appearance @@ -172,7 +172,7 @@ Please use the KDE Control Center to set the palette. - Будь-лаÑка, викориÑтовуйте СиÑтемні параметри KDE, щоб вÑтановити палітру. + Будь лаÑка, викориÑтовуйте СиÑтемні параметри KDE, щоб вÑтановити палітру. Fonts @@ -527,7 +527,7 @@ p, li { white-space: pre-wrap; } <b>Select a color role.</b><p>Available central roles are: <ul> <li>Window - general background color.</li> <li>WindowText - general foreground color. </li> <li>Base - used as background color for e.g. text entry widgets, usually white or another light color. </li> <li>Text - the foreground color used with Base. Usually this is the same as WindowText, in what case it must provide good contrast both with Window and Base. </li> <li>Button - general button background color, where buttons need a background different from Window, as in the Macintosh style. </li> <li>ButtonText - a foreground color used with the Button color. </li> <li>Highlight - a color to indicate a selected or highlighted item. </li> <li>HighlightedText - a text color that contrasts to Highlight. </li> <li>BrightText - a text color that is very different from WindowText and contrasts well with e.g. black. </li> </ul> </p> - <b>Вибір кольорової ролі.</b><p>ДоÑтупні наÑтупні головні ролі: <ul> <li>Вікно - загальний колір фону.</li> <li>ТекÑÑ‚ вікна - загальний колір переднього плану. </li> <li>Базовий - викориÑтовуєтьÑÑ Ñк колір фону, наприклад, Ð´Ð»Ñ Ð²Ñ–Ð´Ð¶ÐµÑ‚Ñ–Ð² Ð´Ð»Ñ Ð²Ð²ÐµÐ´ÐµÐ½Ð½Ñ Ñ‚ÐµÐºÑту, зазвичай білий або інший Ñвітлий колір. </li> <li>ТекÑÑ‚ - колір переднього плану, що викориÑтовуєтьÑÑ Ñ€Ð°Ð·Ð¾Ð¼ з базовим. Зазвичай Ñпівпадає з "ТекÑÑ‚ вікна", Ñ– в цьому випадку має забезпечувати гарний контраÑÑ‚ Ñ– з "Вікном", Ñ– з "Базовим". </li> <li>Кнопка - загальний колір фону кнопки, там де кнопки потребуютьÑÑ Ñ–Ð½ÑˆÐ¸Ð¹ від "Вікна" фон, Ñк в Ñтилі Macintosh. </li> <li>ТекÑÑ‚ кнопки - колір переднього плану, що заÑтоÑовуєтьÑÑ Ñ€Ð°Ð·Ð¾Ð¼ з кольором "Кнопки". </li> <li>ПідÑвічений - колір Ð´Ð»Ñ Ñ–Ð½Ð´Ð¸ÐºÐ°Ñ†Ñ–Ñ— виділеного чи підÑвіченого елементу. </li> <li>ПідÑвічений текÑÑ‚ - колір текÑту, що контраÑтує з "ПідÑвіченим". </li> <li>ЯÑкравий текÑÑ‚ - колір текÑту, що Ñуттєво відрізнÑєтьÑÑ Ð²Ñ–Ð´ "ТекÑту вікна" та добре контраÑтує з чорним, наприклад. </li> </ul> </p> + <b>Вибір кольорової ролі.</b><p>ДоÑтупні наÑтупні головні ролі: <ul> <li>Вікно - загальний колір фону.</li> <li>ТекÑÑ‚ вікна - загальний колір переднього плану. </li> <li>Базовий - викориÑтовуєтьÑÑ Ñк колір фону, наприклад, Ð´Ð»Ñ Ð²Ñ–Ð´Ð¶ÐµÑ‚Ñ–Ð² Ð´Ð»Ñ Ð²Ð²ÐµÐ´ÐµÐ½Ð½Ñ Ñ‚ÐµÐºÑту, зазвичай білий або інший Ñвітлий колір. </li> <li>ТекÑÑ‚ - колір переднього плану, що викориÑтовуєтьÑÑ Ñ€Ð°Ð·Ð¾Ð¼ з базовим. Зазвичай збігаєтьÑÑ Ð· "ТекÑÑ‚ вікна", Ñ– в цьому випадку має забезпечувати гарний контраÑÑ‚ Ñ– з "Вікном", Ñ– з "Базовим". </li> <li>Кнопка - загальний колір фону кнопки, там де кнопки потребуютьÑÑ Ñ–Ð½ÑˆÐ¸Ð¹ від "Вікна" фон, Ñк в Ñтилі Macintosh. </li> <li>ТекÑÑ‚ кнопки - колір переднього плану, що заÑтоÑовуєтьÑÑ Ñ€Ð°Ð·Ð¾Ð¼ з кольором "Кнопки". </li> <li>ПідÑвічений - колір Ð´Ð»Ñ Ñ–Ð½Ð´Ð¸ÐºÐ°Ñ†Ñ–Ñ— виділеного чи підÑвіченого елементу. </li> <li>ПідÑвічений текÑÑ‚ - колір текÑту, що контраÑтує з "ПідÑвіченим". </li> <li>ЯÑкравий текÑÑ‚ - колір текÑту, що Ñуттєво відрізнÑєтьÑÑ Ð²Ñ–Ð´ "ТекÑту вікна" та добре контраÑтує з чорним, наприклад. </li> </ul> </p> Window diff --git a/translations/qvfb_uk.ts b/translations/qvfb_uk.ts index 142863b..0e0c5da6 100644 --- a/translations/qvfb_uk.ts +++ b/translations/qvfb_uk.ts @@ -60,7 +60,7 @@ Config Configure - ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€ÑƒÐ²Ð°Ð½Ð½Ñ + Ðалаштувати Size @@ -219,15 +219,15 @@ The skin directory '%1' does not contain a configuration file. - Тека обкладинки '%1' не міÑтить конфігураційного файлу. + Тека обкладинки '%1' не міÑтить файлу налаштувань. The skin configuration file '%1' could not be opened. - Ðеможливо відкрити конфігураційний файл '%1'. + Ðеможливо відкрити файл налаштувань '%1'. The skin configuration file '%1' could not be read: %2 - Ðеможливо прочитати конфігураційний файл '%1': %2 + Ðеможливо прочитати файл налаштувань '%1': %2 Syntax error: %1 @@ -255,7 +255,7 @@ Mismatch in number of areas, expected %1, got %2. - Ðе Ñпівпадає кількіÑÑ‚ÑŒ облаÑтей, очікувалоÑÑŒ %1, отримано %2. + Ðе збігаєтьÑÑ ÐºÑ–Ð»ÑŒÐºÑ–ÑÑ‚ÑŒ облаÑтей, очікувалоÑÑŒ %1, отримано %2. -- cgit v0.12 From f13c060a187149a03b4115b1f62d9690d69fcbda Mon Sep 17 00:00:00 2001 From: Takumi ASAKI Date: Fri, 20 Aug 2010 12:39:27 +0200 Subject: Update Japanese translations Merge-request: 767 Reviewed-by: Oswald Buddenhagen --- translations/assistant_ja.ts | 576 ++- translations/designer_ja.ts | 5484 +++++---------------- translations/linguist_ja.ts | 1385 +----- translations/qt_help_ja.ts | 313 +- translations/qt_ja.ts | 10930 ++++++++++++++++++++++++----------------- translations/qtconfig_ja.ts | 919 ++++ translations/qvfb_ja.ts | 525 ++ 7 files changed, 9489 insertions(+), 10643 deletions(-) create mode 100644 translations/qtconfig_ja.ts create mode 100644 translations/qvfb_ja.ts diff --git a/translations/assistant_ja.ts b/translations/assistant_ja.ts index 5e4d2c9..afebc9a 100644 --- a/translations/assistant_ja.ts +++ b/translations/assistant_ja.ts @@ -4,7 +4,6 @@ AboutDialog - &Close é–‰ã˜ã‚‹(&C) @@ -12,66 +11,110 @@ AboutLabel - Warning 警告 - Unable to launch external application. 外部アプリケーションを起動ã§ãã¾ã›ã‚“。 - OK OK + Assistant + + Error registering documentation file '%1': %2 + ドキュメントファイル '%1' ã®ç™»éŒ²ä¸­ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: %2 + + + Error: %1 + エラー: %1 + + + Could not register documentation file +%1 + +Reason: +%2 + ドキュメントファイルを登録ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ +%1 + +原因: +%2 + + + Documentation successfully registered. + ドキュメントã®ç™»éŒ²ã«æˆåŠŸã—ã¾ã—ãŸã€‚ + + + Could not unregister documentation file +%1 + +Reason: +%2 + ドキュメントファイルã®ç™»éŒ²ã‚’解除ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ +%1 + +原因: +%2 + + + Documentation successfully unregistered. + ドキュメントã®ç™»éŒ²è§£é™¤ã«æˆåŠŸã—ã¾ã—ãŸã€‚ + + + Error reading collection file '%1': %2. + コレクションファイル '%1' ã®èª­ã¿è¾¼ã¿ä¸­ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: %2 + + + Error creating collection file '%1': %2. + コレクションファイル '%1' ã®ä½œæˆä¸­ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: %2 + + + Error reading collection file '%1': %2 + コレクションファイル '%1' ã®èª­ã¿è¾¼ã¿ä¸­ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: %2 + + + Cannot load sqlite database driver! + SQLite データベース ドライãƒãƒ¼ã‚’ロードã§ãã¾ã›ã‚“! + + + BookmarkDialog - - - - - Bookmarks - ブックマーク + ブックマーク - Add Bookmark ブックマークã®è¿½åŠ  - Bookmark: ブックマーク: - Add in Folder: 追加先フォルダ: - + + - New Folder æ–°ã—ã„フォルダ - Delete Folder - フォルダを削除 + フォルダを削除 - Rename Folder フォルダã®åå‰å¤‰æ›´ @@ -79,133 +122,296 @@ BookmarkManager - Bookmarks - ブックマーク + ブックマーク + + + Untitled + タイトルãªã— - Remove 削除 - You are going to delete a Folder, this will also<br>remove it's content. Are you sure to continue? フォルダを削除ã™ã‚‹ã¨ä¸­èº«ã‚‚削除ã•ã‚Œã¾ã™ãŒã€ç¶šã‘ã¦ã‚ˆã‚ã—ã„ã§ã™ã‹? - - + Manage Bookmarks... + ブックマークを管ç†... + + + Add Bookmark... + ブックマークã®è¿½åŠ ... + + + Ctrl+D + Ctrl+D + + + Delete Folder + フォルダを削除 + + + Rename Folder + フォルダã®åå‰å¤‰æ›´ + + + Show Bookmark + ブックマークを開ã + + + Show Bookmark in New Tab + ブックマークを新ã—ã„タブã§é–‹ã + + + Delete Bookmark + ブックマークを削除 + + + Rename Bookmark + ブックマークã®åå‰å¤‰æ›´ + + New Folder - æ–°ã—ã„フォルダ + æ–°ã—ã„フォルダ - BookmarkWidget + BookmarkManagerWidget - - Filter: - フィルタ: + Manage Bookmarks + ãƒ–ãƒƒã‚¯ãƒžãƒ¼ã‚¯ã‚’ç®¡ç† + + + Search: + 検索: - Remove 削除 - + Import and Backup + インãƒãƒ¼ãƒˆã¨ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ— + + + OK + OK + + + Import... + インãƒãƒ¼ãƒˆ... + + + Export... + エクスãƒãƒ¼ãƒˆ... + + + Open File + ファイルを開ã + + + Files (*.xbel) + ファイル (*.xbel) + + + Save File + ファイルをä¿å­˜ + + + Qt Assistant + Qt Assistant + + + Unable to save bookmarks. + ブックマークをä¿å­˜ã§ãã¾ã›ã‚“。 + + + You are goingto delete a Folder, this will also<br> remove it's content. Are you sure to continue? + フォルダを削除ã™ã‚‹ã¨ãã®ä¸­èº«ã‚‚削除ã•ã‚Œã¾ã™ãŒã€ç¶šã‘ã¦ã‚ˆã‚ã—ã„ã§ã™ã‹? + + Delete Folder フォルダを削除 - Rename Folder フォルダã®åå‰å¤‰æ›´ - Show Bookmark ブックマークを開ã - Show Bookmark in New Tab ブックマークを新ã—ã„タブã§é–‹ã - Delete Bookmark ブックマークを削除 - Rename Bookmark ブックマークã®åå‰å¤‰æ›´ + + + BookmarkModel + + Name + åå‰ + + + Address + アドレス + + + Bookmarks Menu + ブックマークメニュー + + + + BookmarkWidget + + Filter: + フィルタ: + + + Remove + 削除 + + + Delete Folder + フォルダを削除 + + + Rename Folder + フォルダã®åå‰å¤‰æ›´ + + + Show Bookmark + ブックマークを開ã + + + Show Bookmark in New Tab + ブックマークを新ã—ã„タブã§é–‹ã + + + Delete Bookmark + ブックマークを削除 + + + Rename Bookmark + ブックマークã®åå‰å¤‰æ›´ + - Add 追加 + + Bookmarks + ブックマーク + CentralWidget - Add new page æ–°ã—ã„ページã®è¿½åŠ  - Close current page ç¾åœ¨ã®ãƒšãƒ¼ã‚¸ã‚’é–‰ã˜ã‚‹ - Print Document ドキュメントをå°åˆ· - - unknown ä¸æ˜Ž - Add New Page æ–°ã—ã„ページã®è¿½åŠ  - Close This Page ã“ã®ãƒšãƒ¼ã‚¸ã‚’é–‰ã˜ã‚‹ - Close Other Pages ä»–ã®ãƒšãƒ¼ã‚¸ã‚’é–‰ã˜ã‚‹ - Add Bookmark for this Page... ã“ã®ãƒšãƒ¼ã‚¸ã‚’ブックマークã«è¿½åŠ ... - Search 検索 + CmdLineParser + + Unknown option: %1 + ä¸æ˜Žãªã‚ªãƒ—ション: %1 + + + The collection file '%1' does not exist. + コレクションファイル '%1' ãŒå­˜åœ¨ã—ã¾ã›ã‚“。 + + + Missing collection file. + コレクションファイルãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。 + + + Invalid URL '%1'. + ä¸æ­£ãªURL '%1' ã§ã™ã€‚ + + + Missing URL. + URLãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。 + + + Unknown widget: %1 + ä¸æ˜Žãªã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆ: %1 + + + Missing widget. + ウィジェットãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。 + + + The Qt help file '%1' does not exist. + Qt ã®ãƒ˜ãƒ«ãƒ—ファイル '%1' ãŒå­˜åœ¨ã—ã¾ã›ã‚“。 + + + Missing help file. + ヘルプファイルãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。 + + + Missing filter argument. + フィルタ引数ãŒä¸è¶³ã—ã¦ã„ã¾ã™ã€‚ + + + Error + エラー + + + Notice + æ³¨æ„ + + + ContentWindow - Open Link リンクを開ã - Open Link in New Tab リンクを新ã—ã„タブã§é–‹ã @@ -213,12 +419,10 @@ FilterNameDialogClass - Add Filter Name フィルタåを追加 - Filter Name: フィルタå: @@ -226,27 +430,22 @@ FindWidget - Previous 戻る - Next 進む - Case Sensitive 大文字/å°æ–‡å­—を区別ã™ã‚‹ - Whole words - å˜èªžå˜ä½ã§æ¤œç´¢ã™ã‚‹ + å˜èªžå˜ä½ã§æ¤œç´¢ã™ã‚‹ - <img src=":/trolltech/assistant/images/wrap.png">&nbsp;Search wrapped <img src=":/trolltech/assistant/images/wrap.png">&nbsp;見ã¤ã‹ã‚‰ãªã‘ã‚Œã°å…ˆé ­ã‹ã‚‰æ¤œç´¢ã™ã‚‹ @@ -254,27 +453,22 @@ FontPanel - Font フォント - &Writing system 文字セット(&W) - &Family フォントå(&F) - &Style スタイル(&S) - &Point size サイズ(&P) @@ -282,57 +476,51 @@ HelpViewer - Help - ヘルプ + ヘルプ - OK - OK + OK + + + <title>about:blank</title> + - <title>Error 404...</title><div align="center"><br><br><h1>The page could not be found</h1><br><h3>'%1'</h3></div> <title>Error 404...</title><div align="center"><br><br><h1>ページãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ã§ã—ãŸ</h1><br><h3>'%1'</h3></div> - Copy &Link Location リンクã®URLをコピー(&L) - Open Link in New Tab Ctrl+LMB リンクを新ã—ã„タブã§é–‹ã Ctrl+LMB - Open Link in New Tab リンクを新ã—ã„タブã§é–‹ã - Unable to launch external application. - 外部アプリケーションを起動ã§ãã¾ã›ã‚“。 + 外部アプリケーションを起動ã§ãã¾ã›ã‚“。 IndexWindow - &Look for: 検索文字列(&L): - Open Link リンクを開ã - Open Link in New Tab リンクを新ã—ã„タブã§é–‹ã @@ -340,99 +528,76 @@ InstallDialog - - Install Documentation ドキュメントã®ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ« - Downloading documentation info... ドキュメント情報をダウンロード中... - Download canceled. ダウンロードを中止ã—ã¾ã—ãŸã€‚ - - - Done. 完了. - The file %1 already exists. Do you want to overwrite it? %1 ã¯æ—¢ã«å­˜åœ¨ã—ã¾ã™ã€‚上書ãã—ã¾ã™ã‹? - Unable to save the file %1: %2. ファイルをä¿å­˜ã§ãã¾ã›ã‚“。%1: %2. - Downloading %1... %1 をダウンロード中... - - - Download failed: %1. ダウンロード失敗: %1. - Documentation info file is corrupt! ドキュメント情報ファイルãŒä¸æ­£ã§ã™! - Download failed: Downloaded file is corrupted. ダウンロード失敗: ダウンロードã—ãŸãƒ•ã‚¡ã‚¤ãƒ«ãŒä¸æ­£ã§ã™ã€‚ - Installing documentation %1... %1 ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’インストール中... - Error while installing documentation: %1 ドキュメントã®ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ä¸­ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: %1 - Available Documentation: 使用å¯èƒ½ãªãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆ: - Install インストール - Cancel キャンセル - Close é–‰ã˜ã‚‹ - Installation Path: インストール先ã®ãƒ‘ス: - ... ... @@ -440,349 +605,289 @@ MainWindow - - Index インデックス - - Contents コンテンツ - - Bookmarks ブックマーク - - Search 検索 - - - Qt Assistant Qt Assistant - - Unfiltered - フィルタãªã— + フィルタãªã— - Page Set&up... ページ設定(&U)... - Print Preview... å°åˆ·ãƒ—レビュー... - &Print... å°åˆ·(&P)... - New &Tab æ–°ã—ã„タブ(&T) - &Close Tab タブを閉ã˜ã‚‹(&C) - &Quit 終了(&Q) - CTRL+Q CTRL+Q - &Copy selected Text é¸æŠžä¸­ã®æ–‡å­—をコピー(&C) - &Find in Text... 検索(&F)... - + &Find + 検索(&F) + + Find &Next 次を検索(&N) - Find &Previous å‰ã‚’検索(&P) - Preferences... 設定... - Zoom &in 拡大(&I) - Zoom &out 縮å°(&O) - Normal &Size 普通ã®å¤§ãã•(&S) - Ctrl+0 Ctrl+0 - ALT+C ALT+C - ALT+I ALT+I - ALT+S ALT+S - &Home ホーム(&H) - + Could not register file '%1': %2 + ファイル '%1' を登録ã§ãã¾ã›ã‚“ã§ã—ãŸ: %2 + + Ctrl+Home - Ctrl+Home + Ctrl+Home - &Back 戻る(&B) - &Forward 進む(&F) - Sync with Table of Contents 内容ã¨ç›®æ¬¡ã‚’åŒæœŸã™ã‚‹ - Next Page 次ã®ãƒšãƒ¼ã‚¸ - Ctrl+Alt+Right Ctrl+Alt+Right - Previous Page å‰ã®ãƒšãƒ¼ã‚¸ - Ctrl+Alt+Left Ctrl+Alt+Left - Add Bookmark... - ブックマークã®è¿½åŠ ... + ブックマークã®è¿½åŠ ... - About... Qt Assistant ã«ã¤ã„ã¦... - Navigation Toolbar ナビゲーション ツールãƒãƒ¼ - Toolbars ツールãƒãƒ¼ - Filter Toolbar フィルター ツールãƒãƒ¼ - Filtered by: フィルタæ¡ä»¶: - Address Toolbar アドレス ツールãƒãƒ¼ - Address: アドレス: - Could not find the associated content item. 関連付ã„ãŸå†…容ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。 - About %1 %1 ã«ã¤ã„㦠- Updating search index 検索インデックスを更新中 - Looking for Qt Documentation... Qt ドキュメントを探ã—ã¦ã„ã¾ã™... - &Window ウィンドウ(&W) - Minimize 最å°åŒ– - Ctrl+M Ctrl+M - Zoom ズーム - &File ファイル(&F) - &Edit 編集(&E) - &View 表示(&V) - &Go ジャンプ(&G) - + ALT+Home + ALT+Home + + + Sync + åŒæœŸ + + &Bookmarks ブックマーク(&B) - &Help ヘルプ(&H) - ALT+O ALT+O - CTRL+D - CTRL+D + CTRL+D PreferencesDialog - - - Add Documentation ドキュメントã®è¿½åŠ  - Qt Compressed Help Files (*.qch) 圧縮済㿠Qt ヘルプファイル (*.qch) - The specified file is not a valid Qt Help File! 指定ã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã¯æœ‰åŠ¹ãª Qt ヘルプ ファイルã§ã¯ã‚ã‚Šã¾ã›ã‚“! - The namespace %1 is already registered! ãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ %1 ã¯æ—¢ã«ç™»éŒ²æ¸ˆã¿ã§ã™! - Remove Documentation ドキュメントã®é™¤åŽ» - Some documents currently opened in Assistant reference the documentation you are attempting to remove. Removing the documentation will close those documents. 除去ã—よã†ã¨ã—ã¦ã„ã‚‹ã„ãã¤ã‹ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã¯ Assistant 上ã§å‚ç…§ã•ã‚Œã¦ã„ã¾ã™ã€‚除去ã™ã‚‹ã¨ã€ã“れらã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã¯é–‰ã˜ã‚‰ã‚Œã¾ã™ã€‚ - Cancel キャンセル - OK OK - Use custom settings 独自設定を使用ã™ã‚‹ @@ -790,222 +895,196 @@ PreferencesDialogClass - Preferences 設定 - Fonts フォント - Font settings: フォント設定: - Browser ブラウザー - Application アプリケーション - Filters フィルタ - Filter: フィルタ: - Attributes: 属性: - 1 1 - Add 追加 - Remove 削除 - Documentation ドキュメント - Registered Documentation: 登録済ã¿ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆ: - Add... 追加... - Options オプション - Current Page ç¾åœ¨ã®ãƒšãƒ¼ã‚¸ - Restore to default デフォルト設定ã«æˆ»ã™ - Homepage ホームページ + + On help start: + ヘルプã®èµ·å‹•æ™‚: + + + Show my home page + ホームページを表示ã™ã‚‹ + + + Show a blank page + 空白ページを表示ã™ã‚‹ + + + Show my tabs from last session + å‰å›žã®ã‚»ãƒƒã‚·ãƒ§ãƒ³ã®ã‚¿ãƒ–を表示ã™ã‚‹ + + + Blank Page + 空白ページ + QObject - The specified collection file does not exist! - 指定ã•ã‚ŒãŸã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ãƒ•ã‚¡ã‚¤ãƒ«ã¯å­˜åœ¨ã—ã¾ã›ã‚“! + 指定ã•ã‚ŒãŸã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ãƒ•ã‚¡ã‚¤ãƒ«ã¯å­˜åœ¨ã—ã¾ã›ã‚“! - Missing collection file! - コレクションファイルãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“! + コレクションファイルãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“! - Invalid URL! - ä¸æ­£ãªURLã§ã™! + ä¸æ­£ãªURLã§ã™! - Missing URL! - URLãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“! + URLãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“! - - - Unknown widget: %1 - ä¸æ˜Žãªã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆ: %1 + ä¸æ˜Žãªã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆ: %1 - - - Missing widget! - ウィジェットãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“! + ウィジェットãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“! - - The specified Qt help file does not exist! - 指定ã•ã‚ŒãŸ Qt ヘルプ ファイルãŒå­˜åœ¨ã—ã¾ã›ã‚“! + 指定ã•ã‚ŒãŸ Qt ヘルプ ファイルãŒå­˜åœ¨ã—ã¾ã›ã‚“! - - Missing help file! - ヘルプファイルãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“! + ヘルプファイルãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“! - Missing filter argument! - フィルタ引数ãŒä¸è¶³ã—ã¦ã„ã¾ã™! + フィルタ引数ãŒä¸è¶³ã—ã¦ã„ã¾ã™! - Unknown option: %1 - ä¸æ˜Žãªã‚ªãƒ—ション: %1 + ä¸æ˜Žãªã‚ªãƒ—ション: %1 - - Qt Assistant - Qt Assistant + Qt Assistant - Could not register documentation file %1 Reason: %2 - ドキュメントファイルを登録ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ + ドキュメントファイルを登録ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ %1 原因: %2 - Documentation successfully registered. - ドキュメントã®ç™»éŒ²ã«æˆåŠŸã—ã¾ã—ãŸã€‚ + ドキュメントã®ç™»éŒ²ã«æˆåŠŸã—ã¾ã—ãŸã€‚ - Could not unregister documentation file %1 Reason: %2 - ドキュメントファイルを解除ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ + ドキュメントファイルを解除ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ %1 原因: %2 - Documentation successfully unregistered. - ドキュメントã®è§£æ”¾ã«æˆåŠŸã—ã¾ã—ãŸã€‚ + ドキュメントã®è§£æ”¾ã«æˆåŠŸã—ã¾ã—ãŸã€‚ - Cannot load sqlite database driver! - SQLite データベース ドライãƒãƒ¼ã‚’ロードã§ãã¾ã›ã‚“! + SQLite データベース ドライãƒãƒ¼ã‚’ロードã§ãã¾ã›ã‚“! - The specified collection file could not be read! - 指定ã•ã‚ŒãŸã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ãƒ•ã‚¡ã‚¤ãƒ«ã¯èª­ã¿è¾¼ã‚ã¾ã›ã‚“! + 指定ã•ã‚ŒãŸã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ãƒ•ã‚¡ã‚¤ãƒ«ã¯èª­ã¿è¾¼ã‚ã¾ã›ã‚“! - - Bookmark - ブックマーク + ブックマーク RemoteControl - Debugging Remote Control リモート コントロールをデãƒãƒƒã‚°ä¸­ - Received Command: %1 %2 å—ä¿¡ã—ãŸã‚³ãƒžãƒ³ãƒ‰: %1 %2 @@ -1013,56 +1092,45 @@ Reason: SearchWidget - &Copy コピー(&C) - Copy &Link Location リンクã®URLをコピー(&L) - - Open Link in New Tab リンクを新ã—ã„タブã§é–‹ã - Select All ã™ã¹ã¦ã‚’é¸æŠž - Open Link - リンクを開ã + リンクを開ã TopicChooser - Choose a topic for <b>%1</b>: <b>%1</b> ã®æ¤œç´¢å…ˆãƒˆãƒ”ックをé¸æŠžã—ã¦ãã ã•ã„: - Choose Topic トピックをé¸æŠž - &Topics トピック(&T) - &Display 表示(&D) - &Close é–‰ã˜ã‚‹(&C) diff --git a/translations/designer_ja.ts b/translations/designer_ja.ts index 40f5ad6..7e1696f 100644 --- a/translations/designer_ja.ts +++ b/translations/designer_ja.ts @@ -2,1199 +2,800 @@ - - - - The moose in the noose -ate the goose who was loose. - åŠä¸»ãŒå±é¢¨ã«ä¸Šæ‰‹ã«åŠä¸»ã®çµµã‚’æã„ãŸã€‚ - - - - <object> - <オブジェクト> - - - - <signal> - <シグナル> - - - - <slot> - <スロット> - - - - @default - - The moose in the noose -ate the goose who was loose. - åŠä¸»ãŒå±é¢¨ã«ä¸Šæ‰‹ã«åŠä¸»ã®çµµã‚’æã„ãŸã€‚ - - - <object> - <オブジェクト> - - - <signal> - <シグナル> - - - <slot> - <スロット> - - - Solid - å¡—ã‚Šã¤ã¶ã— - - - Horizontal - 横 - - - Vertical - 縦 - - - Cross - æ ¼å­ - - - Texture - テクスãƒãƒ£ - - - Dense 1 - 密度 1 - - - Dense 2 - 密度 2 - - - Dense 3 - 密度 3 - - - Dense 4 - 密度 4 - - - Dense 5 - 密度 5 - - - Dense 6 - 密度 6 - - - Dense 7 - 密度 7 - - - AbstractFindWidget - &Previous - + å‰ã‚’検索(&P) - &Next - + 次を検索(&N) - &Case sensitive - + 大文字/å°æ–‡å­—を区別ã™ã‚‹(&C) - Whole &words - + å˜èªžå˜ä½ã§æ¤œç´¢ã™ã‚‹(&W) - <img src=":/trolltech/shared/images/wrap.png">&nbsp;Search wrapped - + <img src=":/trolltech/shared/images/wrap.png">&nbsp;先頭ã‹ã‚‰å†ã³æ¤œç´¢ã—ã¾ã™ AddLinkDialog - Insert Link - + リンクを挿入 - Title: - + タイトル: - URL: - + URL: AppFontDialog - Additional Fonts - + フォントã®è¿½åŠ  AppFontManager - '%1' is not a file. - + '%1' ã¯ãƒ•ã‚¡ã‚¤ãƒ«ã§ã¯ã‚ã‚Šã¾ã›ã‚“。 - The font file '%1' does not have read permissions. - + フォントファイル '%1' を読む権é™ãŒã‚ã‚Šã¾ã›ã‚“。 - The font file '%1' is already loaded. - + フォントファイル '%1' ã¯æ—¢ã«ãƒ­ãƒ¼ãƒ‰ã•ã‚Œã¦ã„ã¾ã™ã€‚ - The font file '%1' could not be loaded. - + フォントファイル '%1' をロードã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ - '%1' is not a valid font id. - + '%1' ã¯ç„¡åŠ¹ãªãƒ•ã‚©ãƒ³ãƒˆ ID ã§ã™ã€‚ - There is no loaded font matching the id '%1'. - + フォント ID '%1' ã«åˆè‡´ã™ã‚‹ãƒ•ã‚©ãƒ³ãƒˆã¯ãƒ­ãƒ¼ãƒ‰ã•ã‚Œã¦ã„ã¾ã›ã‚“。 - The font '%1' (%2) could not be unloaded. - + フォント '%1' (%2) をアンロードã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ AppFontWidget - Fonts - + フォント - Add font files - + フォントファイルを追加 - Remove current font file - + ç¾åœ¨ã®ãƒ•ã‚©ãƒ³ãƒˆãƒ•ã‚¡ã‚¤ãƒ«ã‚’削除 - Remove all font files - + ã™ã¹ã¦ã®ãƒ•ã‚©ãƒ³ãƒˆãƒ•ã‚¡ã‚¤ãƒ«ã‚’削除 - Add Font Files - + フォントファイルを追加 - Font files (*.ttf) - + フォントファイル (*.ttf) - Error Adding Fonts - + フォントã®è¿½åŠ ã‚¨ãƒ©ãƒ¼ - Error Removing Fonts - + フォントã®å‰Šé™¤ã‚¨ãƒ©ãƒ¼ - Remove Fonts - + フォントを削除 - Would you like to remove all fonts? - + å…¨ã¦ã®ãƒ•ã‚©ãƒ³ãƒˆã‚’削除ã—ã¾ã™ã‹? AppearanceOptionsWidget - Form - フォーム + フォーム - User Interface Mode - ユーザインターフェースモード + ユーザインターフェースモード AssistantClient - Unable to send request: Assistant is not responding. - + リクエストをé€ä¿¡ã§ãã¾ã›ã‚“: Assistant ãŒå¿œç­”ã—ã¾ã›ã‚“。 - The binary '%1' does not exist. - + ãƒã‚¤ãƒŠãƒªãƒ•ã‚¡ã‚¤ãƒ« '%1' ãŒå­˜åœ¨ã—ã¾ã›ã‚“。 - Unable to launch assistant (%1). - - - - - BrushManagerProxy - - - The element '%1' is missing the required attribute '%2'. - - - - - Empty brush name encountered. - - - - - An unexpected element '%1' was encountered. - - - - - An error occurred when reading the brush definition file '%1' at line line %2, column %3: %4 - - - - - An error occurred when reading the resource file '%1' at line %2, column %3: %4 - + assistant (%1) ã‚’èµ·å‹•ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ BrushPropertyManager - No brush - + é€æ˜Ž - Solid - å¡—ã‚Šã¤ã¶ã— + å¡—ã‚Šã¤ã¶ã— - Dense 1 - 密度 1 + 密度 1 - Dense 2 - 密度 2 + 密度 2 - Dense 3 - 密度 3 + 密度 3 - Dense 4 - 密度 4 + 密度 4 - Dense 5 - 密度 5 + 密度 5 - Dense 6 - 密度 6 + 密度 6 - Dense 7 - 密度 7 + 密度 7 - Horizontal - 横 + 横線 - Vertical - 縦 + 縦線 - Cross - æ ¼å­ + æ ¼å­ - Backward diagonal - + 斜線(å³ä¸ŠãŒã‚Š) - Forward diagonal - + 斜線(å³ä¸‹ãŒã‚Š) - Crossing diagonal - - - - Texture - テクスãƒãƒ£ + 交差ã™ã‚‹æ–œç·š - Style - + スタイル - Color - 色 + 色 - [%1, %2] - + [%1, %2] Command - - Change signal シグナルを変更 - - Change slot スロットを変更 - Change signal-slot connection - + シグナル/スロット接続を変更 - Change sender 発信者を変更 - Change receiver å—信者を変更 - Add connection シグナル/スロット接続を追加 - Adjust connection シグナル/スロット接続を調整 - Delete connections シグナル/スロット接続を削除 - Change source ソースを変更 - Change target ターゲットを変更 - Insert '%1' '%1' を挿入 - Change Z-order of '%1' - + '%1' ã® Z オーダーを変更 - Raise '%1' '%1' ã‚’å‰é¢ã«ç§»å‹• - Lower '%1' '%1' を背é¢ã«ç§»å‹• - Delete '%1' '%1' を削除 - Reparent '%1' '%1' ã®è¦ªã‚’ã¤ã‘ã‹ãˆ - Promote to custom widget カスタムウィジェットã«æ ¼ä¸Šã’ - Demote from custom widget カスタムウィジェットã‹ã‚‰æ ¼ä¸‹ã’ - Lay out using grid æ ¼å­çŠ¶ã«ãƒ¬ã‚¤ã‚¢ã‚¦ãƒˆ - Lay out vertically - åž‚ç›´ã«ãƒ¬ã‚¤ã‚¢ã‚¦ãƒˆ + åž‚ç›´ã«ä¸¦ã¹ã‚‹ - Lay out horizontally - æ°´å¹³ã«ãƒ¬ã‚¤ã‚¢ã‚¦ãƒˆ + æ°´å¹³ã«ä¸¦ã¹ã‚‹ - Break layout レイアウトを破棄ã™ã‚‹ - Simplify Grid Layout - + æ ¼å­çŠ¶ã®ãƒ¬ã‚¤ã‚¢ã‚¦ãƒˆã‚’æ­£è¦åŒ–ã™ã‚‹ - - - Move Page ページを移動 - - - - Delete Page ページを削除 - - Page ページ - - - page ページ - - - - Insert Page ページを挿入 - - tab - タブ - - - Change Tab order タブ順を変更 - Create Menu Bar メニューãƒãƒ¼ã‚’ä½œæˆ - Delete Menu Bar メニューãƒãƒ¼ã‚’削除 - Create Status Bar ステータスãƒãƒ¼ã‚’ä½œæˆ - Delete Status Bar ステータスãƒãƒ¼ã‚’削除 - Add Tool Bar ツールãƒãƒ¼ã‚’追加 - Set Dock Window Widget - ドックウィンドウウィジェットã®è¨­å®š - - - Add Dock Window ドックウィンドウを追加 - Adjust Size of '%1' '%1' ã®ã‚µã‚¤ã‚ºã‚’調整 - Change Form Layout Item Geometry - + フォームレイアウトã®ã‚¢ã‚¤ãƒ†ãƒ ã®åº§æ¨™ã‚’変更 - Change Layout Item Geometry - レイアウトアイテムã®åº§æ¨™ã‚’変更 - - - Insert Row - 行を挿入 + レイアウトã®ã‚¢ã‚¤ãƒ†ãƒ ã®åº§æ¨™ã‚’変更 - Change Table Contents テーブルã®å†…容を変更 - Change Tree Contents ツリーã®å†…容を変更 - - Add action アクションを追加 - - Remove action - アクションを消去 + アクションを削除 - Add menu メニューを追加 - Remove menu - メニューを消去 + メニューを削除 - Create submenu ã‚µãƒ–ãƒ¡ãƒ‹ãƒ¥ãƒ¼ã‚’ä½œæˆ - Delete Tool Bar ツールãƒãƒ¼ã‚’削除 - Set action text アクションã®ãƒ†ã‚­ã‚¹ãƒˆã‚’設定 - Insert action アクションを挿入 - - Move action アクションを移動 - Change Title タイトルを変更 - Insert Menu メニューを挿入 - changed '%1' of '%2' - '%2' ã® '%1' を変更 - - - changed '%1' of %2 objects - - '%2' オブジェクト㮠'%1' を変更 - - - - reset '%1' of '%2' - '%2' ã® '%1' をリセット - - - reset '%1' of %2 objects - - '%2' オブジェクト㮠'%1' をリセット - - - - add dynamic property '%1' to '%2' - ダイナミックプロパティ '%1' ã‚’ '%2' ã«è¿½åŠ  - - - add dynamic property '%1' to %2 objects - - ダイナミックプロパティ '%1' ã‚’ '%2' オブジェクトã«è¿½åŠ  - - - - remove dynamic property '%1' from '%2' - ダイナミックプロパティ '%1' ã‚’ '%2' ã‹ã‚‰å‰Šé™¤ - - - remove dynamic property '%1' from %2 objects - - ダイナミックプロパティ '%1' ã‚’ '%2' オブジェクトã‹ã‚‰å‰Šé™¤ - - - - changed comment of '%1' of '%2' - '%2' ã® '%1' ã®ã‚³ãƒ¡ãƒ³ãƒˆã‚’変更 - - - changed comment of '%1' of %2 objects - - '%2' オブジェクト㮠'%1' ã®ã‚³ãƒ¡ãƒ³ãƒˆã‚’変更 - - - - Change signals/slots - + シグナル/スロットを変更 - Delete Subwindow - + サブウィンドウを削除 - Insert Subwindow - + サブウィンドウを挿入 - subwindow - + サブウィンドウ - Subwindow - + サブウィンドウ - Create button group - + ãƒœã‚¿ãƒ³ã‚°ãƒ«ãƒ¼ãƒ—ã‚’ä½œæˆ - Break button group - + ボタングループを破棄ã™ã‚‹ - Break button group '%1' - + ボタングループ '%1' を破棄ã™ã‚‹ - Add buttons to group - + グループã«ãƒœã‚¿ãƒ³ã‚’追加 - - Add '%1' to '%2' Command description for adding buttons to a QButtonGroup - + '%2' ã« '%1' を追加 - Remove buttons from group - + グループã‹ã‚‰ãƒœã‚¿ãƒ³ã‚’削除 - Remove '%1' from '%2' Command description for removing buttons from a QButtonGroup - + '%2' ã‹ã‚‰ '%1' を削除 - Morph %1/'%2' into %3 MorphWidgetCommand description - + %1/'%2' ã‚’ %3 ã¸å¤‰æ›´ - Change layout of '%1' from %2 to %3 - + '%1' ã®ãƒ¬ã‚¤ã‚¢ã‚¦ãƒˆã‚’ %2 ã‹ã‚‰ %3 ã«å¤‰æ›´ - Change script - スクリプトを変更 + スクリプトを変更 - Changed '%1' of '%2' - + '%2' ã® '%1' を変更ã—ã¾ã—㟠- Changed '%1' of %n objects - - + + %n 個ã®ã‚ªãƒ–ジェクト㮠'%1' を変更 - Reset '%1' of '%2' - + '%2' ã® '%1' をリセット - Reset '%1' of %n objects - - + + %n 個ã®ã‚ªãƒ–ジェクト㮠'%1' をリセット - Add dynamic property '%1' to '%2' - + '%2' ã«ãƒ€ã‚¤ãƒŠãƒŸãƒƒã‚¯ãƒ—ロパティ '%1' を追加 - Add dynamic property '%1' to %n objects - - + + %n 個ã®ã‚ªãƒ–ジェクトã«ãƒ€ã‚¤ãƒŠãƒŸãƒƒã‚¯ãƒ—ロパティ '%1' を追加 - Remove dynamic property '%1' from '%2' - + '%2' ã‹ã‚‰ãƒ€ã‚¤ãƒŠãƒŸãƒƒã‚¯ãƒ—ロパティ '%1' を削除 - Remove dynamic property '%1' from %n objects - - + + %n 個ã®ã‚ªãƒ–ジェクトã‹ã‚‰ãƒ€ã‚¤ãƒŠãƒŸãƒƒã‚¯ãƒ—ロパティ '%1' を削除 ConnectDialog - Configure Connection - シグナル/スロット接続を設定 + シグナル/スロット接続を設定 - GroupBox - + グループボックス - Edit... - 編集... + 編集... - Show signals and slots inherited from QWidget - + QWidget ã‹ã‚‰ç¶™æ‰¿ã—ãŸã‚·ã‚°ãƒŠãƒ«ã¨ã‚¹ãƒ­ãƒƒãƒˆã‚’表示ã™ã‚‹ + + + + ConnectionDelegate + + <object> + <オブジェクト> + + + <signal> + <シグナル> + + + <slot> + <スロット> DPI_Chooser - Standard (96 x 96) Embedded device standard screen resolution - + 標準 (96 × 96) - Greenphone (179 x 185) Embedded device screen resolution - + グリーンフォン (179 × 185) - High (192 x 192) Embedded device high definition screen resolution - + 高解åƒåº¦ (192 × 192) Designer - Qt Designer Qt Designer - This file contains top level spacers.<br>They have <b>NOT</b> been saved into the form.<br>Perhaps you forgot to create a layout? - ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã«ã¯ã€ãƒˆãƒƒãƒ—レベルã®ã‚¹ãƒšãƒ¼ã‚µãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚<br>ã“れらã¯ãƒ•ã‚©ãƒ¼ãƒ ã«ä¿å­˜ã•ã‚Œã¦<b>ã„ã¾ã›ã‚“ã§ã—ãŸ</b>。<br>ã‚‚ã—ã‚„ã€ãƒ¬ã‚¤ã‚¢ã‚¦ãƒˆã®æŒ‡å®šã‚’忘れã¦ã„ã¾ã›ã‚“ã‹? - - - This file contains top level spacers.<br>They have <b>NOT</b> been saved into the form. - + ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã«ã¯ã€ãƒˆãƒƒãƒ—レベルã®ã‚¹ãƒšãƒ¼ã‚µãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚<br>ã“れらã¯ãƒ•ã‚©ãƒ¼ãƒ ã«ä¿å­˜ã•ã‚Œã¦<b>ã„ã¾ã›ã‚“ã§ã—ãŸ</b>。 - Perhaps you forgot to create a layout? - - - - - Invalid ui file: The root element <ui> is missing. - + ã‚‚ã—ã‚„ã€ãƒ¬ã‚¤ã‚¢ã‚¦ãƒˆã®æŒ‡å®šã‚’忘れã¦ã„ã¾ã›ã‚“ã‹? - - An error has occurred while reading the ui file at line %1, column %2: %3 - - - - This file cannot be read because it was created using %1. ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã¯èª­ã‚ã¾ã›ã‚“。%1 を使ã£ã¦ä½œæˆã•ã‚ŒãŸã‹ã‚‰ã§ã™ã€‚ - This file was created using Designer from Qt-%1 and cannot be read. ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã¯ Qt-%1 ã® Designer ã§ä½œæˆã•ã‚ŒãŸã®ã§ã€èª­ã‚ã¾ã›ã‚“。 - This file cannot be read because the extra info extension failed to load. ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã¯èª­ã‚ã¾ã›ã‚“。追加情報ã®æ‹¡å¼µã®ãƒ­ãƒ¼ãƒ‰ã«å¤±æ•—ã—ãŸã‹ã‚‰ã§ã™ã€‚ - The converted file could not be read. 変æ›ã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã‚’読ã‚ã¾ã›ã‚“ã§ã—ãŸã€‚ - + Invalid UI file: The root element <ui> is missing. + 無効㪠UI ファイル: ルートè¦ç´  <ui> ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。 + + + An error has occurred while reading the UI file at line %1, column %2: %3 + UI ファイルã®èª­ã¿è¾¼ã¿ä¸­ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ(%1 è¡Œã€%2 列): %3 + + This file was created using Designer from Qt-%1 and will be converted to a new form by Qt Designer. - + ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã¯ Qt-%1 ã® Designer ã§ä½œæˆã•ã‚ŒãŸãŸã‚ã€Qt Designer ã®æ–°ã—ã„フォームã«æ›´æ–°ã§ãã¾ã›ã‚“。 - The old form has not been touched, but you will have to save the form under a new name. - + å¤ã„フォームã¯å¤‰æ›´ã—ã¦ã„ã¾ã›ã‚“。新ã—ã„åå‰ã§ãƒ•ã‚©ãƒ¼ãƒ ã‚’セーブã—ã¦ãã ã•ã„。 - This file was created using Designer from Qt-%1 and could not be read: %2 - + ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã¯ Qt-%1 ã® Designer ã§ä½œæˆã•ã‚ŒãŸãŸã‚ã€èª­ã¿è¾¼ã‚ã¾ã›ã‚“: +%2 - Please run it through <b>uic3&nbsp;-convert</b> to convert it to Qt-4's ui format. - + <b>uic3&nbsp;-convert</b>コマンドを実行ã—ã¦ã€Qt-4 ã® ui ファイルã®å½¢å¼ã«æ›´æ–°ã—ã¦ãã ã•ã„。 - This file was created using Designer from Qt-%1 and will be converted to a new form by Qt Designer. -The old form has been untouched, but you will have to save this form under a new name. - ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã¯ Qt-%1 ã® Designer ã§ä½œæˆã•ã‚ŒãŸã‚‚ã®ã§ã™ãŒã€Qt Designer ã«ã‚ˆã£ã¦æ–°ã—ã„フォームã«å¤‰æ›ã•ã‚Œã¾ã™ã€‚ -å¤ã„フォームã¯æ”¾ç½®ã•ã‚Œã¦ãã¾ã—ãŸãŒã€æ–°ã—ã„åå‰ã§ä¿å­˜ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ - - - This file was created using Designer from Qt-%1 and could not be read:<br>%2<br>Please run it through <b>uic3 -convert</b> to convert it to Qt-4's ui format. - ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã¯ Qt-%1 ã® Designer ã§ä½œæˆã•ã‚ŒãŸã‚‚ã®ã§ã™ãŒã€èª­ã‚ã¾ã›ã‚“ã§ã—ãŸ:<br>%2<br><b>uic3 -convert</b> を実行ã—ã¦ã€Qt 4 ã® UI フォーマットã«å¤‰æ›ã—ã¦ãã ã•ã„。 - - - Custom Widgets カスタムウィジェット - Promoted Widgets 格上ã’ã•ã‚ŒãŸã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆ - Unable to launch %1. %1 ã‚’èµ·å‹•ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ - %1 timed out. %1 ã¯ã‚¿ã‚¤ãƒ ã‚¢ã‚¦ãƒˆã—ã¾ã—ãŸã€‚ - - Error opening resource file - リソースファイルã®ã‚ªãƒ¼ãƒ—ンエラー - - - Failed to open "%1": -%2 - "%1" ã®ã‚ªãƒ¼ãƒ—ンã«å¤±æ•—: %2 - - - file name is empty - ファイルåãŒç©ºã§ã™ - - - XML error on line %1, col %2: %3 - %1 行目 %2 カラム目ã«XMLエラー: %3 - - - no <RCC> root element - <RCC> ルートエレメントãŒã‚ã‚Šã¾ã›ã‚“ - DesignerMetaEnum - %1 is not a valid enumeration value of '%2'. - + %1 ã¯ç„¡åŠ¹ãªåˆ—挙型 ’%2' ã®å€¤ã§ã™ã€‚ - '%1' could not be converted to an enumeration value of type '%2'. - + '%1' ã¯åˆ—挙型 '%2' ã®å€¤ã«å¤‰æ›ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ DesignerMetaFlags - '%1' could not be converted to a flag value of type '%2'. - + '%1' ã¯ãƒ•ãƒ©ã‚° '%2' ã®å€¤ã«å¤‰æ›ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ DeviceProfile - '%1' is not a number. Reading a number for an embedded device profile - + '%1' ã¯æ•°å­—ã§ã¯ã‚ã‚Šã¾ã›ã‚“。 - An invalid tag <%1> was encountered. - + 無効ãªã‚¿ã‚° <%1> ã«é­é‡ã—ã¾ã—ãŸã€‚ DeviceProfileDialog - &Family - ファミリー(&F) + ファミリー(&F) - &Point Size - + ãƒã‚¤ãƒ³ãƒˆã‚µã‚¤ã‚º(&P) - Style - + スタイル - Device DPI - + デãƒã‚¤ã‚¹ã®DPI - Name - åå‰ + åå‰ DeviceSkin - The image file '%1' could not be loaded. - + ç”»åƒãƒ•ã‚¡ã‚¤ãƒ« '%1' をロードã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ - The skin directory '%1' does not contain a configuration file. - + スキンã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª '%1' ã«è¨­å®šãƒ•ã‚¡ã‚¤ãƒ«ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。 - The skin configuration file '%1' could not be opened. - + スキンã®è¨­å®šãƒ•ã‚¡ã‚¤ãƒ« '%1' ãŒã‚ªãƒ¼ãƒ—ンã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ - Syntax error: %1 - + 構文エラー: %1 - The skin cursor image file '%1' does not exist. - + スキンã®ã‚«ãƒ¼ã‚½ãƒ«ç”»åƒ '%1' ãŒå­˜åœ¨ã—ã¾ã›ã‚“。 - Syntax error in area definition: %1 - + 領域定義ã®æ§‹æ–‡ã‚¨ãƒ©ãƒ¼: %1 - Mismatch in number of areas, expected %1, got %2. - + 領域ã®æ•°ãŒç•°ãªã‚Šã¾ã™(想定 %1ã€å–å¾— %2)。 - The skin configuration file '%1' could not be read: %2 - + スキンã®è¨­å®šãƒ•ã‚¡ã‚¤ãƒ« '%1' ãŒèª­ã‚ã¾ã›ã‚“ã§ã—ãŸ: %2 - The skin "up" image file '%1' does not exist. - + スキンã®"up"ç”»åƒãƒ•ã‚¡ã‚¤ãƒ« '%1' ãŒå­˜åœ¨ã—ã¾ã›ã‚“。 - The skin "down" image file '%1' does not exist. - + スキンã®"down"ç”»åƒãƒ•ã‚¡ã‚¤ãƒ« '%1' ãŒå­˜åœ¨ã—ã¾ã›ã‚“。 - The skin "closed" image file '%1' does not exist. - + スキンã®"closed"ç”»åƒãƒ•ã‚¡ã‚¤ãƒ« '%1' ãŒå­˜åœ¨ã—ã¾ã›ã‚“。 EmbeddedOptionsControl - <html><table><tr><td><b>Font</b></td><td>%1, %2</td></tr><tr><td><b>Style</b></td><td>%3</td></tr><tr><td><b>Resolution</b></td><td>%4 x %5</td></tr></table></html> Format embedded device profile description - + <html><table><tr><td><b>フォント</b></td><td>%1, %2</td></tr><tr><td><b>スタイル</b></td><td>%3</td></tr><tr><td><b>解åƒåº¦</b></td><td>%4 × %5</td></tr></table></html> EmbeddedOptionsPage - Embedded Design Tab in preferences dialog - + デザインプロファイル - Device Profiles EmbeddedOptionsControl group box" - + デãƒã‚¤ã‚¹ãƒ—ロファイル FontPanel - Font フォント - &Writing system ライティングシステム(&W) - &Family ファミリー(&F) - &Style スタイル(&S) - &Point size ãƒã‚¤ãƒ³ãƒˆã‚µã‚¤ã‚º(&P) @@ -1202,180 +803,156 @@ The old form has been untouched, but you will have to save this form under a new FontPropertyManager - PreferDefault - + デフォルト優先 - NoAntialias - + アンãƒã‚¨ã‚¤ãƒªã‚¢ã‚¹ãªã— - PreferAntialias - + アンãƒã‚¨ã‚¤ãƒªã‚¢ã‚¹å„ªå…ˆ - Antialiasing - + アンãƒã‚¨ã‚¤ãƒªã‚¢ã‚¹ FormBuilder - Invalid stretch value for '%1': '%2' - Parsing layout stretch values - + Parsing layout stretch values +---------- +Parsing layout stretch values +---------- +Parsing layout stretch values + '%1' ã®ã‚¹ãƒˆãƒ¬ãƒƒãƒå€¤ãŒç„¡åŠ¹ã§ã™: '%2' - Invalid minimum size for '%1': '%2' - Parsing grid layout minimum size values - + Parsing grid layout minimum size values +---------- +Parsing grid layout minimum size values +---------- +Parsing grid layout minimum size values + '%1' ã®æœ€å°ã‚µã‚¤ã‚ºãŒç„¡åŠ¹ã§ã™: '%2' FormEditorOptionsPage - %1 % - + %1 % - Preview Zoom - + プレビューã®æ‹¡å¤§è¡¨ç¤º - Default Zoom - + デフォルトã®æ‹¡å¤§çŽ‡ - Forms Tab in preferences dialog - + フォーム - Default Grid - デフォルトグリッド + デフォルトã®ã‚°ãƒªãƒƒãƒ‰è¡¨ç¤º FormLayoutRowDialog - Add Form Layout Row - + フォームレイアウトã«è¡Œã‚’追加 - &Label text: - + ラベルã®æ–‡å­—列(&L): - Field &type: - + フィールドã®åž‹(&T): - &Field name: - + フィールドã®åå‰(&F): - &Buddy: - + &Buddy: - &Row: - + è¡Œ(&R): - Label &name: - + ラベルã®åå‰(&N): FormWindow - Unexpected element <%1> - + 予期ã›ã¬è¦ç´  <%1> - Error while pasting clipboard contents at line %1, column %2: %3 - + クリップボードã®å†…容ã®è²¼ã‚Šä»˜ã‘中ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ(è¡Œ %1, 列 %2): %3 FormWindowSettings - Form Settings フォーム設定 - Layout &Default デフォルトã®ãƒ¬ã‚¤ã‚¢ã‚¦ãƒˆ(&D) - &Spacing: 空白(&S): - &Margin: 余白(&M): - &Layout Function レイアウト関数(&L) - Ma&rgin: 余白(&R): - Spa&cing: 空白(&C): - Embedded Design - + デザインプロファイル - &Author 作者(&A) - &Include Hints フォームã‹ã‚‰ã‚¤ãƒ³ã‚¯ãƒ«ãƒ¼ãƒ‰ã™ã‚‹ãƒ˜ãƒƒãƒ€(&I) - &Pixmap Function ピックスマップロード関数(&P) - Grid グリッド @@ -1383,344 +960,175 @@ The old form has been untouched, but you will have to save this form under a new IconSelector - All Pixmaps ( - å…¨ã¦ã®ãƒ”ックスマップ ( + ã™ã¹ã¦ã®ãƒ”ックスマップ ( ItemPropertyBrowser - XX Icon Selected off Sample string to determinate the width for the first column of the list item property browser - LanguageResourceDialog - - - Choose Resource - - - - - LayoutPropertySheet - - Layout - レイアウト - - - MainWindowBase - Main Not currently used (main tool bar) - + メイン - File - ファイル + ファイル - Edit - 編集 + 編集 - Tools - ツール + ツール - Form - フォーム + フォーム - Qt Designer - Qt Designer + Qt Designer NewForm - C&reate 作æˆ(&R) - Recent - 最近 + 最近使用ã—ãŸãƒ•ã‚©ãƒ¼ãƒ  - &Close é–‰ã˜ã‚‹(&C) - &Open... オープン(&O)... - &Recent Forms 最近使用ã—ãŸãƒ•ã‚©ãƒ¼ãƒ (&R) - Error loading form - フォームã®ãƒ­ãƒ¼ãƒ‰ã‚¨ãƒ©ãƒ¼ - - - Choose a template for a preview - プレビューã®ãŸã‚テンプレートをé¸æŠž - - - Read error 読ã¿è¾¼ã¿ã‚¨ãƒ©ãƒ¼ - New Form æ–°ã—ã„フォーム - 0 - 0 - - - Show this Dialog on Startup 起動時ã«ã“ã®ãƒ€ã‚¤ã‚¢ãƒ­ã‚°ã‚’表示 - Custom Widgets - カスタムウィジェット - - - A temporary form file could not be created in %1. - + 一時フォームファイルを %1ã«ä½œæˆã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ - The temporary form file %1 could not be written. - - - - - NewFormWidget - - - Unable to open the form template file '%1': %2 - + 一時フォームファイル %1 ã«æ›¸ãè¾¼ã‚ã¾ã›ã‚“ã§ã—ãŸã€‚ ObjectInspectorModel - Object - オブジェクト + オブジェクト - Class - クラス + クラス - separator - セパレータ + セパレータ - <noname> - <åå‰ãªã—> + <åå‰ãªã—> ObjectNameDialog - Change Object Name - オブジェクトåを変更 + オブジェクトåを変更 - Object Name - オブジェクトå - - - - Oubliette - - Inventory - 棚å¸ã— - - - You have <B>No</B> Items - アイテムãŒ<B>ã‚ã‚Šã¾ã›ã‚“</B> - - - You have %1 of %2 items - - %2 アイテムã®ã†ã¡ã® %1 個をæŒã£ã¦ã„ã¾ã™ - - - - OK - OK - - - Easter Egg Found - イースターエッグãŒè¦‹ã¤ã‹ã‚Šã¾ã—㟠- - - Welcome to the Trolltech Business Card Hunt -Use the direction keys to move around and find the business cards for all the trolls. - Trolltech ã®å刺æœã—ゲームã¸ã‚ˆã†ã“ã矢å°ã‚­ãƒ¼ã‚’使ã£ã¦ç§»å‹•ã—ã€Trolltech ã®å…¨ç¤¾å“¡ã®å刺を見ã¤ã‘ã¦ãã ã•ã„。 - - - You Did It! - よãã§ãã¾ã—ãŸ! - - - You've collected all the Trolltech cards. It took you %1 steps. -There's nothing more here. You should get back to work. - ã‚ãªãŸã¯ Trolltech ã®å…¨ã¦ã®å刺を集ã‚ã¾ã—ãŸã€‚%1 回ã‹ã‹ã‚Šã¾ã—ãŸã€‚ã“ã‚Œã§çµ‚ã‚ã‚Šã§ã™ã€‚仕事ã«æˆ»ã‚Šã¾ã—ょã†ã€‚ - - - That's rather anti-climatic - ãã‚Œã¯ç¤¾ä¼šã®é¢¨æ½®ã«åã™ã‚‹ã“ã¨ã§ã™ - - - Quit - 終了 + オブジェクトå PluginDialog - Plugin Information - プラグイン情報 + プラグイン情報 - 1 - 1 + 1 PreferencesDialog - Docked Window - ドックウィンドウ - - - Multiple Top-Level Windows - 複数ã®ãƒˆãƒƒãƒ—レベルウィンドウ - - - Toolwindow Font - ツールウィンドウフォント - - - Default Grid - デフォルトグリッド - - - Pick a directory to save templates in - テンプレートをä¿å­˜ã™ã‚‹ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’é¸æŠžã—ã¦ãã ã•ã„ - - - Preferences 設定 - - User Interface Mode - ユーザインターフェースモード - - - Additional Template Paths - 追加ã®ãƒ†ãƒ³ãƒ—レートパス - - - ... - ... - PreviewConfigurationWidget - - Default - - - - - None - - - - - Browse... - - - - Form - フォーム + フォーム - Print/Preview Configuration - + å°åˆ·/プレビューã®è¨­å®š - Style - + スタイル - Style sheet - + スタイルシート - ... - ... + ... - Device skin - + デãƒã‚¤ã‚¹ã‚¹ã‚­ãƒ³ PromotionModel - Not used Usage of promoted widgets - 使用ã•ã‚Œã¾ã›ã‚“ + 使用ã•ã‚Œã¦ã„ã¾ã›ã‚“ Q3WizardContainer - - Page ページ @@ -1728,720 +1136,472 @@ There's nothing more here. You should get back to work. QAbstractFormBuilder - Unexpected element <%1> - + 予期ã›ã¬è¦ç´  <%1> - - An error has occurred while reading the ui file at line %1, column %2: %3 - + An error has occurred while reading the UI file at line %1, column %2: %3 + UI ファイルã®èª­ã¿è¾¼ã¿ä¸­ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ(%1 è¡Œã€%2 列): %3 - - Invalid ui file: The root element <ui> is missing. - + Invalid UI file: The root element <ui> is missing. + 無効㪠UI ファイル: ルートè¦ç´  <ui> ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。 - The creation of a widget of the class '%1' failed. - クラス '%1' ã®ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã®ä½œæˆã«å¤±æ•—ã—ã¾ã—ãŸã€‚ + クラス '%1' ã®ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã®ä½œæˆã«å¤±æ•—ã—ã¾ã—ãŸã€‚ - Attempt to add child that is not of class QWizardPage to QWizard. - + QWizardPage クラスを継承ã—ã¦ã„ãªã„クラス㯠QWizard ã«è¿½åŠ ã§ãã¾ã›ã‚“。 - Attempt to add a layout to a widget '%1' (%2) which already has a layout of non-box type %3. This indicates an inconsistency in the ui-file. - + ウィジェット '%1' (%2) ã¯æ—¢ã«BOXタイプã§ã¯ãªã„レイアウト %3 を所æŒã—ã¦ã„ã‚‹ãŸã‚ã€ãƒ¬ã‚¤ã‚¢ã‚¦ãƒˆã‚’追加ã§ãã¾ã›ã‚“。 +UI ファイルã®è¨˜è¿°ãŒçŸ›ç›¾ã—ã¦ã„ã¾ã™ã€‚ - Empty widget item in %1 '%2'. - + %1 '%2' ã¯ç©ºã®ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆè¦ç´ ã§ã™ã€‚ - Flags property are not supported yet. - フラグã®ãƒ—ロパティã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。 + フラグã®ãƒ—ロパティã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。 - While applying tab stops: The widget '%1' could not be found. - タブストップã®é©ç”¨ä¸­: ウィジェット '%1' ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。 + タブストップã®é©ç”¨ä¸­: ウィジェット '%1' ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。 - Invalid QButtonGroup reference '%1' referenced by '%2'. - + '%2' ã‹ã‚‰å‚ç…§ã•ã‚ŒãŸ '%1' ã¯ç„¡åŠ¹ãª QButtonGroup ã§ã™ã€‚ - This version of the uitools library is linked without script support. - ã“ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã® uitools ã¯ã€ã‚¹ã‚¯ãƒªãƒ—トãŒã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ãªã„ライブラリãŒãƒªãƒ³ã‚¯ã•ã‚Œã¦ã„ã¾ã™ã€‚ - - - - QActiveXPlugin - - ActiveX control - ActiveX コントロール - - - ActiveX control widget - ActiveX コントロールウィジェット - - - - QActiveXPluginObject - - Control loaded - コントロールãŒãƒ­ãƒ¼ãƒ‰ã•ã‚Œã¾ã—㟠- - - - QActiveXTaskMenu - - Set Control - コントロールを設定 - - - Licensed Control - ライセンスã•ã‚ŒãŸã‚³ãƒ³ãƒˆãƒ­ãƒ¼ãƒ« - - - The control requires a design-time license - ã“ã®ã‚³ãƒ³ãƒˆãƒ­ãƒ¼ãƒ«ã‚’使用ã™ã‚‹ã«ã¯ã€é–‹ç™ºæ™‚ライセンスãŒå¿…è¦ã§ã™ + ã“ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã® uitools ã¯ã€ã‚¹ã‚¯ãƒªãƒ—トãŒã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ãªã„ライブラリãŒãƒªãƒ³ã‚¯ã•ã‚Œã¦ã„ã¾ã™ã€‚ QAxWidgetPlugin - ActiveX control - ActiveX コントロール + ActiveX コントロール - ActiveX control widget - ActiveX コントロールウィジェット + ActiveX コントロールウィジェット QAxWidgetTaskMenu - Set Control - コントロールを設定 + コントロールを設定 - Reset Control - + コントロールをリセット - Licensed Control - ライセンスã•ã‚ŒãŸã‚³ãƒ³ãƒˆãƒ­ãƒ¼ãƒ« + ライセンスã•ã‚ŒãŸã‚³ãƒ³ãƒˆãƒ­ãƒ¼ãƒ« - The control requires a design-time license - ã“ã®ã‚³ãƒ³ãƒˆãƒ­ãƒ¼ãƒ«ã‚’使用ã™ã‚‹ã«ã¯ã€é–‹ç™ºæ™‚ライセンスãŒå¿…è¦ã§ã™ + ã“ã®ã‚³ãƒ³ãƒˆãƒ­ãƒ¼ãƒ«ã®åˆ©ç”¨ã«ã¯ã€é–‹ç™ºæ™‚ライセンスãŒå¿…è¦ã§ã™ QCoreApplication - %1 is not a promoted class. %1 ã¯æ ¼ä¸Šã’ã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ã§ã¯ã‚ã‚Šã¾ã›ã‚“。 - The base class %1 is invalid. - ベースクラス %1 ã¯ç„¡åŠ¹ã§ã™ã€‚ + 基底クラス %1 ã¯ç„¡åŠ¹ã§ã™ã€‚ - The class %1 already exists. - %1 ã¨ã„ã†ã‚¯ãƒ©ã‚¹ã¯ã™ã§ã«å­˜åœ¨ã—ã¾ã™ã€‚ + クラス %1 ã¯æ—¢ã«å­˜åœ¨ã—ã¾ã™ã€‚ - Promoted Widgets - 格上ã’ã•ã‚ŒãŸã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆ + 格上ã’ã•ã‚ŒãŸã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆ - The class %1 cannot be removed - %1 ã¨ã„ã†ã‚¯ãƒ©ã‚¹ã‚’削除ã§ãã¾ã›ã‚“ + クラス %1 を削除ã§ãã¾ã›ã‚“ - The class %1 cannot be removed because it is still referenced. - %1 ã¨ã„ã†ã‚¯ãƒ©ã‚¹ã¯ã€å‚ç…§ã•ã‚Œã¦ã„ã‚‹ã®ã§ã€å‰Šé™¤ã§ãã¾ã›ã‚“。 + クラス %1 ã¯ã€å‚ç…§ã•ã‚Œã¦ã„ã‚‹ãŸã‚削除ã§ãã¾ã›ã‚“。 - The class %1 cannot be renamed - %1 ã¨ã„ã†ã‚¯ãƒ©ã‚¹ã‚’リãƒãƒ¼ãƒ ã§ãã¾ã›ã‚“ + クラス %1 をリãƒãƒ¼ãƒ ã§ãã¾ã›ã‚“ - The class %1 cannot be renamed to an empty name. - %1 ã¨ã„ã†ã‚¯ãƒ©ã‚¹ã‚’空ã®åå‰ã«ãƒªãƒãƒ¼ãƒ ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。 + クラス %1 を空ã®åå‰ã«ãƒªãƒãƒ¼ãƒ ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。 - There is already a class named %1. - %1 ã¨ã„ã†ã‚¯ãƒ©ã‚¹ã¯å­˜åœ¨ã—ã¾ã™ã€‚ + クラス %1 ã¯æ—¢ã«å­˜åœ¨ã—ã¾ã™ã€‚ - Cannot set an empty include file. - 空ã®ã‚¤ãƒ³ã‚¯ãƒ«ãƒ¼ãƒ‰ãƒ•ã‚¡ã‚¤ãƒ«ã‚’設定ã§ãã¾ã›ã‚“。 + 空ã®ã‚¤ãƒ³ã‚¯ãƒ«ãƒ¼ãƒ‰ãƒ•ã‚¡ã‚¤ãƒ«ã‚’設定ã§ãã¾ã›ã‚“。 - Exception at line %1: %2 - %1 行目ã§ä¾‹å¤–ãŒç™ºç”Ÿ: %2 + %1 行目ã§ä¾‹å¤–ãŒç™ºç”Ÿ: %2 - Unknown error - ä¸æ˜Žãªã‚¨ãƒ©ãƒ¼ + ä¸æ˜Žãªã‚¨ãƒ©ãƒ¼ - An error occurred while running the script for %1: %2 Script: %3 - %1 ã®ãŸã‚ã«ã‚¹ã‚¯ãƒªãƒ—トを実行ã—ã¦ã„ã¦ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: %2 + %1 ã§ã‚¹ã‚¯ãƒªãƒ—トを実行中ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: %2 スクリプト: %3 QDesigner - %1 - warning - %1 - 警告 + %1 - 警告 - Qt Designer Qt Designer - This application cannot be used for the Console edition of Qt ã“ã®ã‚¢ãƒ—リケーションã¯ã€Qt コンソール版ã§ã¯ä½¿ãˆã¾ã›ã‚“ - QDesignerActionEditor - - Action Editor - アクションエディタ - - - QDesignerActions - Edit Widgets ウィジェットを編集 - &New Form... - æ–°ã—ã„フォーム(&N)... - - - &Open Form... - フォームを開ã(&O)... - - - &Save Form - フォームをä¿å­˜(&S) - - - Save Form &As... - åå‰ã‚’ã¤ã‘ã¦ãƒ•ã‚©ãƒ¼ãƒ ã‚’ä¿å­˜(&A)... - - - Save A&ll Forms - ã™ã¹ã¦ã®ãƒ•ã‚©ãƒ¼ãƒ ã‚’ä¿å­˜(&L) - - - Save Form As &Template... - フォームをテンプレートã¨ã—ã¦ä¿å­˜(&T)... - - - &Close Form - フォームを閉ã˜ã‚‹(&C) - - - &Quit 終了(&Q) - &Preview - プレビュー(&P) - - - Form &Settings... - フォームã®è¨­å®š(&S)... - - - &Minimize 最å°åŒ–(&M) - Bring All to Front - å…¨ã¦ã®ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ã‚’å‰é¢ã« + ã™ã¹ã¦ã®ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ã‚’å‰é¢ã« - Preferences... 設定... - CTRL+N - CTRL+N - - - CTRL+O - CTRL+O - - - Clear &Menu メニューをクリア(&M) - CTRL+S - CTRL+S - - - CTRL+SHIFT+S CTRL+SHIFT+S - CTRL+W - CTRL+W - - - - CTRL+Q - CTRL+Q - - - CTRL+Z - CTRL+Z - - - CTRL+SHIFT+Z - CTRL+SHIFT+Z - - - CTRL+R CTRL+R - %1 Style - %1 スタイル - - - CTRL+M CTRL+M - Qt Designer &Help Qt Designer ヘルプ(&H) - Current Widget Help ç¾åœ¨ã®ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã®ãƒ˜ãƒ«ãƒ— - What's New in Qt Designer? Qt Designer ã®æ–°æ©Ÿèƒ½ - About Plugins プラグインã«ã¤ã„㦠- - About Qt Designer Qt Designer ã«ã¤ã„㦠- About Qt Qt ã«ã¤ã„㦠- - Open Form フォームを開ã - - - Designer UI files (*.%1);;All Files (*) Designer UI ファイル(*.%1);;ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ« (*) - Save form as - åå‰ã‚’付ã‘ã¦ãƒ•ã‚©ãƒ¼ãƒ ã‚’ä¿å­˜ - - - Save - ä¿å­˜ - - - %1 already exists. Do you want to replace it? - %1 ã¯ã™ã§ã«å­˜åœ¨ã—ã¾ã™ã€‚上書ãã—ã¾ã™ã‹? + %1 ã¯æ—¢ã«å­˜åœ¨ã—ã¾ã™ã€‚上書ãã—ã¾ã™ã‹? - Saved %1. - フォーム %1 ã¯ç„¡äº‹ä¿å­˜ã§ãã¾ã—ãŸ... + フォーム %1 ã‚’ä¿å­˜ã—ã¾ã—ãŸã€‚ - Additional Fonts... - + フォントã®è¿½åŠ ... - ALT+CTRL+S - + ALT+CTRL+S - &Recent Forms - 最近使用ã—ãŸãƒ•ã‚©ãƒ¼ãƒ (&R) + 最近使用ã—ãŸãƒ•ã‚©ãƒ¼ãƒ (&R) - Designer Designer - Feature not implemented yet! 機能ãŒã¾ã å®Ÿè£…ã•ã‚Œã¦ã„ã¾ã›ã‚“! - Read error 読ã¿è¾¼ã¿ã‚¨ãƒ©ãƒ¼ - %1 Do you want to update the file location or generate a new form? %1 ファイルã®ä½ç½®ã‚’æ›´æ–°ã—ã¾ã™ã‹ã€ãã‚Œã¨ã‚‚æ–°ã—ã„フォームを生æˆã—ã¾ã™ã‹? - &Update æ›´æ–°(&U) - &New Form æ–°ã—ã„フォーム(&N) - - Save Form? フォームをä¿å­˜ã—ã¾ã™ã‹? - Could not open file ファイルをオープンã§ãã¾ã›ã‚“ã§ã—㟠- Saved image %1. - + ç”»åƒ %1 ã‚’ä¿å­˜ã—ã¾ã—ãŸã€‚ - Please close all forms to enable the loading of additional fonts. - + 追加ã—ãŸãƒ•ã‚©ãƒ³ãƒˆã‚’ロードã™ã‚‹ã«ã¯ã™ã¹ã¦ã®ãƒ•ã‚©ãƒ¼ãƒ ã‚’é–‰ã˜ã¦ãã ã•ã„。 - Printed %1. - + %1 ã‚’å°åˆ·ã—ã¾ã—ãŸã€‚ - The file, %1, could not be opened -Reason: %2 -Would you like to retry or change your file? - ファイル %1 ã¯ã‚ªãƒ¼ãƒ—ンã§ãã¾ã›ã‚“ã§ã—㟠-ç†ç”±: %2 -リトライã—ã¾ã™ã‹ã€ãã‚Œã¨ã‚‚ファイルを変更ã—ã¾ã™ã‹? - - - Select New File æ–°ã—ã„ファイルをé¸æŠž - Could not write file ファイルã«æ›¸ã込むã“ã¨ãŒã§ãã¾ã›ã‚“ã§ã—㟠- It was not possible to write the entire file, %1, to disk. -Reason:%2 -Would you like to retry? - ファイル %1 ã®å…¨ä½“をディスクã«æ›¸ã込むã“ã¨ãŒã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ -ç†ç”±: %2 -リトライã—ã¾ã™ã‹? - - - &Close Preview プレビューを閉ã˜ã‚‹(&C) - Form Settings - %1 - フォーム設定 - %1 - - - &New... - + æ–°è¦(&N)... - &Open... - オープン(&O)... + é–‹ã(&O)... - &Save - + ä¿å­˜(&S) - Save &As... - + åå‰ã‚’ã¤ã‘ã¦ä¿å­˜(&A)... - Save A&ll - + ã™ã¹ã¦ä¿å­˜(&L) - Save As &Template... - + テンプレートã¨ã—ã¦ä¿å­˜(&T)... - - &Close - é–‰ã˜ã‚‹(&C) + é–‰ã˜ã‚‹(&C) - Save &Image... - + ç”»åƒã‚’ä¿å­˜(&I)... - &Print... - + å°åˆ·(&P)... - View &Code... - + コードを表示(&C)... - - Save Form As - + åå‰ã‚’付ã‘ã¦ãƒ•ã‚©ãƒ¼ãƒ ã‚’ä¿å­˜ - The file %1 could not be opened. Reason: %2 Would you like to retry or select a different file? - + ファイル %1 ã¯ã‚ªãƒ¼ãƒ—ンã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ +原因: %2 +リトライã—ã¾ã™ã‹ã€ãã‚Œã¨ã‚‚ä»–ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’é¸æŠžã—ã¾ã™ã‹? - It was not possible to write the entire file %1 to disk. Reason:%2 Would you like to retry? - + ファイル %1 ã®å…¨ä½“をディスクã«æ›¸ã込むã“ã¨ãŒã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ +原因: %2 +リトライã—ã¾ã™ã‹? - - The backup file %1 could not be written. - ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—ファイル %1 ã«æ›¸ãè¾¼ã‚ã¾ã›ã‚“ã§ã—ãŸã€‚ + ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—ファイル %1 ã«æ›¸ãè¾¼ã‚ã¾ã›ã‚“ã§ã—ãŸã€‚ - The backup directory %1 could not be created. - ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—ディレクトリ %1 を作æˆã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ + ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—ディレクトリ %1 を作æˆã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ - The temporary backup directory %1 could not be created. - ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—用ã®ä¸€æ™‚ディレクトリ %1 を作æˆã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ + ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—用ã®ä¸€æ™‚ディレクトリ %1 を作æˆã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ - Preview failed - + プレビューã§ãã¾ã›ã‚“ã§ã—㟠- Code generation failed - + コード生æˆã«å¤±æ•—ã—ã¾ã—㟠- Image files (*.%1) - + ç”»åƒãƒ•ã‚¡ã‚¤ãƒ« (*.%1) - - Save Image - + ç”»åƒã‚’ä¿å­˜ - The file %1 could not be written. - + ファイル %1 ã«æ›¸ãè¾¼ã‚ã¾ã›ã‚“ã§ã—ãŸã€‚ - - Assistant - + Assistant QDesignerAppearanceOptionsPage - Appearance Tab in preferences dialog - + 外観 QDesignerAppearanceOptionsWidget - Docked Window - ドックウィンドウ + ドックウィンドウ - Multiple Top-Level Windows - 複数ã®ãƒˆãƒƒãƒ—レベルウィンドウ + 複数ã®ãƒˆãƒƒãƒ—レベルウィンドウ - Toolwindow Font - ツールウィンドウフォント + ツールウィンドウã®ãƒ•ã‚©ãƒ³ãƒˆ QDesignerAxWidget - Reset control - + コントロールをリセット - Set control - + コントロールを設定 - Control loaded - コントロールãŒãƒ­ãƒ¼ãƒ‰ã•ã‚Œã¾ã—㟠+ コントロールãŒãƒ­ãƒ¼ãƒ‰ã•ã‚Œã¾ã—㟠- A COM exception occurred when executing a meta call of type %1, index %2 of "%3". - + åž‹ %1, インデックス %2("%3")ã®ãƒ¡ã‚¿ã‚³ãƒ¼ãƒ«ã®å®Ÿè¡Œæ™‚ã« COM 例外ãŒç™ºç”Ÿã—ã¾ã—ãŸã€‚ QDesignerFormBuilder - Script errors occurred: - スクリプトエラーãŒç™ºç”Ÿã—ã¾ã—ãŸ: + スクリプトエラーãŒç™ºç”Ÿã—ã¾ã—ãŸ: - The preview failed to build. - プレビューã®ãƒ“ルドã«å¤±æ•—ã—ã¾ã—ãŸã€‚ + プレビューã®ãƒ“ルドã«å¤±æ•—ã—ã¾ã—ãŸã€‚ - Designer - Designer + Designer QDesignerFormWindow - %1 - %2[*] %1 - %2[*] - Save Form? フォームをä¿å­˜ã—ã¾ã™ã‹? - Do you want to save the changes to this document before closing? é–‰ã˜ã‚‹å‰ã«ã€ã“ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã®å¤‰æ›´ã‚’ä¿å­˜ã—ã¾ã™ã‹? - If you don't save, your changes will be lost. ä¿å­˜ã—ãªã„å ´åˆã¯ã€è¡Œã£ãŸå¤‰æ›´ã¯å¤±ã‚ã‚Œã¾ã™ã€‚ @@ -2449,38 +1609,30 @@ Would you like to retry? QDesignerMenu - Type Here ã“ã“ã«å…¥åŠ› - Add Separator セパレータを追加 - Insert separator セパレータを挿入 - Remove separator - セパレータを消去 + セパレータを削除 - Remove action '%1' - アクション '%1' を消去 + アクション '%1' を削除 - - Add separator セパレータを追加 - Insert action アクションを挿入 @@ -2488,75 +1640,56 @@ Would you like to retry? QDesignerMenuBar - Type Here ã“ã“ã«å…¥åŠ› - Remove Menu '%1' - メニュー '%1' を消去 + メニュー '%1' を削除 - Remove Menu Bar - メニューãƒãƒ¼ã‚’消去 + メニューãƒãƒ¼ã‚’削除 - Menu メニュー - QDesignerObjectInspector - - Object Inspector - オブジェクトインスペクタ - - - QDesignerPluginManager - An XML error was encountered when parsing the XML of the custom widget %1: %2 - + カスタムウィジェット %1 ã® XML ã®ãƒ‘ース中㫠XML エラーãŒç™ºç”Ÿã—ã¾ã—ãŸ: %2 + + + A required attribute ('%1') is missing. + å¿…é ˆãªå±žæ€§('%1')ãŒã‚ã‚Šã¾ã›ã‚“。 + + + An invalid property specification ('%1') was encountered. Supported types: %2 + 無効ãªãƒ—ロパティã®å®šç¾©('%1')ã«é­é‡ã—ã¾ã—ãŸã€‚サãƒãƒ¼ãƒˆã™ã‚‹åž‹: %2 + + + '%1' is not a valid string property specification. + '%1' ã¯ç„¡åŠ¹ãªæ–‡å­—列プロパティã®å®šç¾©ã§ã™ã€‚ - The XML of the custom widget %1 does not contain any of the elements <widget> or <ui>. - + カスタムウィジェット %1 ã® XML ã« <widget> 㨠<ui> ã®ã©ã¡ã‚‰ã®è¦ç´ ã‚‚ã‚ã‚Šã¾ã›ã‚“。 - The class attribute for the class %1 is missing. - %1 ã¨ã„ã†ã‚¯ãƒ©ã‚¹ã®ã‚¯ãƒ©ã‚¹å±žæ€§ãŒã‚ã‚Šã¾ã›ã‚“。 + クラス %1 ã«ã‚¯ãƒ©ã‚¹å±žæ€§ãŒã‚ã‚Šã¾ã›ã‚“。 - The class attribute for the class %1 does not match the class name %2. - %1 ã¨ã„ã†ã‚¯ãƒ©ã‚¹ã®ã‚¯ãƒ©ã‚¹å±žæ€§ã¯ %2 ã¨ã„ã†ã‚¯ãƒ©ã‚¹åã¨ä¸€è‡´ã—ã¾ã›ã‚“。 + クラス %1 ã®ã‚¯ãƒ©ã‚¹å±žæ€§ã¯ã‚¯ãƒ©ã‚¹å %2 ã¨ä¸€è‡´ã—ã¾ã›ã‚“。 - QDesignerPropertyEditor + QDesignerPropertySheet - Property Editor - プロパティエディタ - - - Ctrl+I - Ctrl+I - - - - QDesignerPropertySheet - - Layout - レイアウト - - - Dynamic Properties ダイナミックプロパティ @@ -2564,2112 +1697,1366 @@ Would you like to retry? QDesignerResource - The layout type '%1' is not supported, defaulting to grid. - + レイアウト '%1' ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。格å­çŠ¶ã®ãƒ¬ã‚¤ã‚¢ã‚¦ãƒˆã‚’使用ã—ã¾ã™ã€‚ - The container extension of the widget '%1' (%2) returned a widget not managed by Designer '%3' (%4) when queried for page #%5. Container pages should only be added by specifying them in XML returned by the domXml() method of the custom widget. - + ウィジェット '%1' (%2) ã®ã‚³ãƒ³ãƒ†ãƒŠæ‹¡å¼µã¯ %5 ページ㫠Designer ã§ã¯åˆ©ç”¨ã§ããªã„ウィジェット '%3' (%4) を使用ã—ã¦ã„ã¾ã™ã€‚ +コンテナã®ãƒšãƒ¼ã‚¸ã¯ã‚«ã‚¹ã‚¿ãƒ ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã® domXml() メソッドãŒè¿”ã™ XML ã§ã®ã¿å®šç¾©ã•ã‚Œã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ - Unexpected element <%1> Parsing clipboard contents - + 予期ã›ã¬è¦ç´  <%1> - Error while pasting clipboard contents at line %1, column %2: %3 Parsing clipboard contents - + クリップボードã®å†…容ã®è²¼ã‚Šä»˜ã‘中ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ(è¡Œ %1, 列 %2): %3 - Error while pasting clipboard contents: The root element <ui> is missing. Parsing clipboard contents - - - - - QDesignerResourceEditor - - Resource Editor - リソースエディタ + クリップボードã®å†…容ã®è²¼ã‚Šä»˜ã‘中ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: ルートè¦ç´  <ui> ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。 QDesignerSharedSettings - The template path %1 could not be created. - テンプレートã®ãƒ‘ス %1 を作æˆã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ + テンプレートã®ãƒ‘ス %1 を作æˆã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ - An error has been encountered while parsing device profile XML: %1 - - - - - QDesignerSignalSlotEditor - - Signal/Slot Editor - シグナル/スロットエディタ - - - - QDesignerStackedWidget - - Previous Page - å‰ã®ãƒšãƒ¼ã‚¸ - - - Next Page - 次ã®ãƒšãƒ¼ã‚¸ - - - Delete - 削除 - - - Before Current Page - ã“ã®ãƒšãƒ¼ã‚¸ã®å‰ - - - After Current Page - ã“ã®ãƒšãƒ¼ã‚¸ã®å¾Œ - - - Change Page Order... - ページã®é †åºã‚’変更... - - - Change Page Order - ページã®é †åºã‚’変更 - - - Page %1 of %2 - %2 ページã®ã†ã¡ã® %1 ページ - - - Insert Page - ページを挿入 - - - - QDesignerTabWidget - - Delete - 削除 - - - Before Current Page - ã“ã®ãƒšãƒ¼ã‚¸ã®å‰ - - - After Current Page - ã“ã®ãƒšãƒ¼ã‚¸ã®å¾Œ - - - Page %1 of %2 - %2 ページã®ã†ã¡ã® %1 ページ - - - Insert Page - ページを挿入 - - - - QDesignerTaskMenu - - Change objectName... - オブジェクトåを変更... - - - Change toolTip... - ツールãƒãƒƒãƒ—を変更... - - - Change whatsThis... - ヒントを変更... - - - Change styleSheet... - スタイルシートを変更... - - - Create Menu Bar - メニューãƒãƒ¼ã‚’ä½œæˆ - - - Add Tool Bar - ツールãƒãƒ¼ã‚’追加 - - - Create Status Bar - ステータスãƒãƒ¼ã‚’ä½œæˆ - - - Remove Status Bar - ステータスãƒãƒ¼ã‚’消去 - - - Change script... - スクリプトを変更... - - - - QDesignerToolBox - - Delete Page - ページを削除 - - - Before Current Page - ã“ã®ãƒšãƒ¼ã‚¸ã®å‰ - - - After Current Page - ã“ã®ãƒšãƒ¼ã‚¸ã®å¾Œ - - - Change Page Order... - ページã®é †åºã‚’変更... - - - Change Page Order - ページã®é †åºã‚’変更 - - - Page %1 of %2 - %2 ページã®ã†ã¡ã® %1 ページ - - - Insert Page - ページを挿入 + デãƒã‚¤ã‚¹ãƒ—ロファイル㮠XML ã®ãƒ‘ース中ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: %1 QDesignerToolWindow - Property Editor - プロパティエディタ + プロパティエディタ - Action Editor - アクションエディタ + アクションエディタ - Object Inspector - オブジェクトインスペクタ + オブジェクトインスペクタ - Resource Browser - + リソースブラウザ - Signal/Slot Editor - シグナル/スロットエディタ - - - - Widget Box - ウィジェットボックス + シグナル/スロットエディタ - - - QDesignerWidgetBox Widget Box - ウィジェットボックス - - - - An error has been encountered at line %1 of %2: %3 - - - - - Unexpected element <%1> encountered when parsing for <widget> or <ui> - - - - - Unexpected end of file encountered when parsing widgets. - - - - - A widget element could not be found. - + ウィジェットボックス QDesignerWorkbench - &File ファイル(&F) - &Recent Forms - 最近使用ã—ãŸãƒ•ã‚©ãƒ¼ãƒ (&R) - - - &Edit - 編集(&E) - - - F&orm フォーム(&O) - Preview in スタイルを指定ã—ã¦ãƒ—レビュー - &Tools - ツール(&T) - - - &Window ウィンドウ(&W) - &Help ヘルプ(&H) - File - ファイル - - - Edit 編集 - Tools - ツール - - - Form - フォーム - - - Toolbars ツールãƒãƒ¼ Widget Box - ウィジェットボックス - - - Qt Designer - Qt Designer + ウィジェットボックス - Save Forms? フォームをä¿å­˜ã—ã¾ã™ã‹? - There are %1 forms with unsaved changes. Do you want to review these changes before quitting? - 変更分をä¿å­˜ã•ã‚Œã¦ã„ãªã„フォーム㌠%1 個ã‚ã‚Šã¾ã™ã€‚終了ã™ã‚‹å‰ã«å¤‰æ›´ã‚’確èªã—ã¾ã™ã‹? - - - If you don't review your documents, all your changes will be lost. - ドキュメントを確èªã—ãªã„å ´åˆã¯ã€è¡Œã£ãŸã™ã¹ã¦ã®å¤‰æ›´ã¯å¤±ã‚ã‚Œã¾ã™ã€‚ - - - &View - + 表示(&V) - &Settings - + 設定(&S) - If you do not review your documents, all your changes will be lost. - + ドキュメントを確èªã—ãªã„å ´åˆã€è¡Œã£ãŸã™ã¹ã¦ã®å¤‰æ›´ã¯å¤±ã‚ã‚Œã¾ã™ã€‚ - Discard Changes 変更を破棄 - Review Changes å¤‰æ›´å†…å®¹ã‚’ç¢ºèª - Backup Information ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—情報 - The last session of Designer was not terminated correctly. Backup files were left behind. Do you want to load them? - + å‰å›žä½¿ç”¨ã—ãŸã¨ãã« Designer ã¯æ­£ã—ã終了ã•ã‚Œã¾ã›ã‚“ã§ã—ãŸã€‚ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—ファイルãŒå­˜åœ¨ã—ã¾ã™ã€‚ロードã—ã¾ã™ã‹? - Designer was not correctly terminated during your last session.There are existing Backup files, do you want to load them? - å‰å›žä½¿ç”¨ã—ãŸã¨ãã« Designer ã¯æ­£ã—ã終了ã•ã‚Œã¾ã›ã‚“ã§ã—ãŸã€‚ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—ファイルãŒå­˜åœ¨ã—ã¾ã™ã€‚ロードã—ã¾ã™ã‹? + The file <b>%1</b> is not a valid Designer UI file. + ファイル <b>%1</b> ã¯ã€ç„¡åŠ¹ãª Designer ã® UI ファイルã§ã™ã€‚ - The file <b>%1</b> could not be opened. ファイル <b>%1</b> ã¯ã‚ªãƒ¼ãƒ—ンã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ - - - The file <b>%1</b> is not a valid Designer ui file. - ファイル <b>%1</b> ã¯ã€æœ‰åŠ¹ãª Designer ã® UI ファイルã§ã¯ã‚ã‚Šã¾ã›ã‚“。 - - There are %n forms with unsaved changes. Do you want to review these changes before quitting? - - + + 変更分をä¿å­˜ã•ã‚Œã¦ã„ãªã„フォーム㌠%n 個ã‚ã‚Šã¾ã™ã€‚終了ã™ã‚‹å‰ã«å¤‰æ›´ã‚’確èªã—ã¾ã™ã‹? QFormBuilder - An empty class name was passed on to %1 (object name: '%2'). - Empty class name passed to widget factory method - + Empty class name passed to widget factory method +---------- +Empty class name passed to widget factory method +---------- +Empty class name passed to widget factory method + %1 (オブジェクトå: %2)ã«ç©ºã®ã‚¯ãƒ©ã‚¹åãŒæ¸¡ã•ã‚Œã¾ã—ãŸã€‚ - QFormBuilder was unable to create a custom widget of the class '%1'; defaulting to base class '%2'. - + QFormBuilder ã¯ã‚¯ãƒ©ã‚¹ '%1' ã®ã‚«ã‚¹ã‚¿ãƒ ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã‚’作æˆã§ãã¾ã›ã‚“ã§ã—ãŸã€‚クラス '%2' ã§ä½œæˆã—ã¾ã™ã€‚ - QFormBuilder was unable to create a widget of the class '%1'. - QFormBuilder ã¯ã€ã‚¯ãƒ©ã‚¹ '%1' ã®ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã‚’作æˆã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ + QFormBuilder ã¯ã€ã‚¯ãƒ©ã‚¹ '%1' ã®ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã‚’作æˆã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ - The layout type `%1' is not supported. - レイアウトタイプ '%1' ã¯ã€ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。 + レイアウトタイプ '%1' ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。 - The set-type property %1 could not be read. - Setåž‹ã®ãƒ—ロパティ %1 を読ã‚ã¾ã›ã‚“ã§ã—ãŸã€‚ + Set åž‹ã®ãƒ—ロパティ %1 を読ã‚ã¾ã›ã‚“ã§ã—ãŸã€‚ - The enumeration-type property %1 could not be read. - Enum åž‹ã®ãƒ—ロパティ %1 を読ã‚ã¾ã›ã‚“ã§ã—ãŸã€‚ + Enum åž‹ã®ãƒ—ロパティ %1 を読ã‚ã¾ã›ã‚“ã§ã—ãŸã€‚ - Reading properties of the type %1 is not supported yet. - %1 ã¨ã„ã†åž‹ã®ãƒ—ロパティã®èª­ã¿è¾¼ã¿ã¯ã€ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。 + %1 ã¨ã„ã†åž‹ã®ãƒ—ロパティã®èª­ã¿è¾¼ã¿ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。 - The property %1 could not be written. The type %2 is not supported yet. - プロパティ %1 を書ãè¾¼ã‚ã¾ã›ã‚“ã§ã—ãŸã€‚%2 ã¨ã„ã†åž‹ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。 + プロパティ %1 を書ãè¾¼ã‚ã¾ã›ã‚“ã§ã—ãŸã€‚%2 ã¨ã„ã†åž‹ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。 - The enumeration-value '%1' is invalid. The default value '%2' will be used instead. - + 列挙型ã®å€¤ '%1' ã¯ç„¡åŠ¹ã§ã™ã€‚デフォルト値㮠'%2' を代ã‚ã‚Šã«ä½¿ç”¨ã—ã¾ã™ã€‚ - The flag-value '%1' is invalid. Zero will be used instead. - + フラグã®å€¤ '%1' ã¯ç„¡åŠ¹ã§ã™ã€‚代ã‚ã‚Šã« 0 を使用ã—ã¾ã™ã€‚ - QFormInternal::QCoreApplication - - Syntax error. - 構文エラー。 - + QStackedWidgetEventFilter - Exception at line %1: %2 - %1 行目ã§ä¾‹å¤–ãŒç™ºç”Ÿ: %2 + Previous Page + å‰ã®ãƒšãƒ¼ã‚¸ - Unknown error - ä¸æ˜Žãªã‚¨ãƒ©ãƒ¼ + Next Page + 次ã®ãƒšãƒ¼ã‚¸ - An error occurred while running the script for %1: %2 -Script: %3 - %1 ã®ãŸã‚ã«ã‚¹ã‚¯ãƒªãƒ—トを実行ã—ã¦ã„ã¦ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: %2 -スクリプト: %3 + Delete + 削除 - - - QFormInternal::QObject - QFormBuilder was unable to create a widget of the class '%1'. - QFormBuilder ã¯ã€ã‚¯ãƒ©ã‚¹ '%1' ã®ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã‚’作æˆã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ + Before Current Page + ã“ã®ãƒšãƒ¼ã‚¸ã®å‰ - The layout type `%1' is not supported. - レイアウトタイプ '%1' ã¯ã€ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。 + After Current Page + ã“ã®ãƒšãƒ¼ã‚¸ã®å¾Œ - The set-type property %1 could not be read. - Setåž‹ã®ãƒ—ロパティ %1 を読ã‚ã¾ã›ã‚“ã§ã—ãŸã€‚ + Change Page Order... + ページã®é †åºã‚’変更... - The enumeration-type property %1 could not be read. - Enum åž‹ã®ãƒ—ロパティ %1 を読ã‚ã¾ã›ã‚“ã§ã—ãŸã€‚ + Change Page Order + ページã®é †åºã‚’変更 - Reading properties of the type %1 is not supported yet. - %1 ã¨ã„ã†åž‹ã®ãƒ—ロパティã®èª­ã¿è¾¼ã¿ã¯ã€ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。 + Page %1 of %2 + %2 ページ中㮠%1 ページ目 - The property %1 could not be written. The type %2 is not supported yet. - プロパティ %1 を書ãè¾¼ã‚ã¾ã›ã‚“ã§ã—ãŸã€‚%2 ã¨ã„ã†åž‹ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。 + Insert Page + ページを挿入 - QObject + QStackedWidgetPreviewEventFilter - Show all signals and slots - å…¨ã¦ã®ã‚·ã‚°ãƒŠãƒ«ã¨ã‚¹ãƒ­ãƒƒãƒˆã‚’表示 + Go to previous page of %1 '%2' (%3/%4). + %1 '%2' ã®å‰ã®ãƒšãƒ¼ã‚¸ã«ç§»å‹•(%3/%4)。 - Configure Connection - シグナル/スロット接続を設定 + Go to next page of %1 '%2' (%3/%4). + %1 '%2' ã®æ¬¡ã®ãƒšãƒ¼ã‚¸ã«ç§»å‹•(%3/%4)。 + + + QTabWidgetEventFilter - A parse error occurred at line %1, column %2 of the XML code specified for the widget %3: %4 -%5 - ウィジェット %3 ã®ãŸã‚ã«æŒ‡å®šã•ã‚ŒãŸ XML コード㮠%1 行目㮠%2 カラム目ã§ãƒ‘ースエラーãŒç™ºç”Ÿã—ã¾ã—ãŸ: %4 -%5 + Delete + 削除 - The XML code specified for the widget %1 contains an invalid root element %2. -%3 - ウィジェット %1 ã®ãŸã‚ã«æŒ‡å®šã•ã‚ŒãŸ XML コードã¯ã€ç„¡åŠ¹ãªãƒ«ãƒ¼ãƒˆã‚¨ãƒ¬ãƒ¡ãƒ³ãƒˆ %2 ã‚’å«ã‚“ã§ã„ã¾ã™ã€‚ -%3 + Before Current Page + ã“ã®ãƒšãƒ¼ã‚¸ã®å‰ - %1 - warning - %1 - 警告 + After Current Page + ã“ã®ãƒšãƒ¼ã‚¸ã®å¾Œ - The backup file %1 could not be written. - ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—ファイル %1 ã«æ›¸ãè¾¼ã‚ã¾ã›ã‚“ã§ã—ãŸã€‚ + Page %1 of %2 + %2 ページ中㮠%1 ページ目 - The backup directory %1 could not be created. - ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—ディレクトリ %1 を作æˆã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ + Insert Page + ページを挿入 + + + QToolBoxHelper - The temporary backup directory %1 could not be created. - ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—用ã®ä¸€æ™‚ディレクトリ %1 を作æˆã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ + Delete Page + ページを削除 - The template path %1 could not be created. - テンプレートã®ãƒ‘ス %1 を作æˆã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ + Before Current Page + ã“ã®ãƒšãƒ¼ã‚¸ã®å‰ - The plugin '%1' failed to load: %2 - プラグイン '%1' をロードã§ãã¾ã›ã‚“ã§ã—ãŸ: %2 + After Current Page + ã“ã®ãƒšãƒ¼ã‚¸ã®å¾Œ - Not used - 使用ã•ã‚Œã¾ã›ã‚“ + Change Page Order... + ページã®é †åºã‚’変更... - Script errors occurred: - スクリプトエラーãŒç™ºç”Ÿã—ã¾ã—ãŸ: + Change Page Order + ページã®é †åºã‚’変更 - Change Object Name - オブジェクトåを変更 + Page %1 of %2 + %2 ページ中㮠%1 ページ目 - Object Name - オブジェクトå + Insert Page + ページを挿入 + + + QtBoolEdit - An error occurred while running the scripts for "%1": - - "%1" ã®ãŸã‚ã«ã‚¹ã‚¯ãƒªãƒ—トを実行ã—ã¦ã„ã¦ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: - + True + 真 - The creation of a widget of the class '%1' failed. - クラス '%1' ã®ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã®ä½œæˆã«å¤±æ•—ã—ã¾ã—ãŸã€‚ - - - Flags property are not supported yet. - フラグã®ãƒ—ロパティã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。 - - - While applying tab stops: The widget '%1' could not be found. - タブストップã®é©ç”¨ä¸­: ウィジェット '%1' ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。 - - - This version of the uitools library is linked without script support. - ã“ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã® uitools ã¯ã€ã‚¹ã‚¯ãƒªãƒ—トãŒã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ãªã„ライブラリãŒãƒªãƒ³ã‚¯ã•ã‚Œã¦ã„ã¾ã™ã€‚ - - - The icon specified by %1 could not be opened: %2 - %1 ã§æŒ‡å®šã•ã‚ŒãŸã‚¢ã‚¤ã‚³ãƒ³ã‚’オープンã§ãã¾ã›ã‚“ã§ã—ãŸ: %2 - - - separator - セパレータ - - - Object - オブジェクト - - - Class - クラス - - - <noname> - <åå‰ãªã—> - - - The widgetbox could not load the file %1. - ウィジェットボックス㯠%1 ã¨ã„ã†ãƒ•ã‚¡ã‚¤ãƒ«ã‚’ロードã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ - - - The widgetbox could not parse the file %1. An error occurred at line %2: %3 - ウィジェットボックスã¯ã€%1 ã¨ã„ã†ãƒ•ã‚¡ã‚¤ãƒ«ã‚’パースã§ãã¾ã›ã‚“。%2 行目ã§ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: %3 - - - The file %1 does not appear to be a widgetbox file. - %1 ã¨ã„ã†ãƒ•ã‚¡ã‚¤ãƒ«ã¯ã€ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆãƒœãƒƒã‚¯ã‚¹ã®ãƒ•ã‚¡ã‚¤ãƒ«ã§ã¯ãªã„よã†ã§ã™ã€‚ - - - An error occurred while parsing the file %1: %2 is not a valid child of the root element. - %1 ã¨ã„ã†ãƒ•ã‚¡ã‚¤ãƒ«ã®ãƒ‘ース中ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: %2 ã¯ãƒ«ãƒ¼ãƒˆã‚¨ãƒ¬ãƒ¡ãƒ³ãƒˆã®æœ‰åŠ¹ãªå­ä¾›ã§ã¯ã‚ã‚Šã¾ã›ã‚“。 - - - The class attribute for the class %1 does not match the class name %2. - %1 ã¨ã„ã†ã‚¯ãƒ©ã‚¹ã®ã‚¯ãƒ©ã‚¹å±žæ€§ã¯ %2 ã¨ã„ã†ã‚¯ãƒ©ã‚¹åã¨ä¸€è‡´ã—ã¾ã›ã‚“。 - - - The class attribute for the class %1 is missing. - %1 ã¨ã„ã†ã‚¯ãƒ©ã‚¹ã®ã‚¯ãƒ©ã‚¹å±žæ€§ãŒã‚ã‚Šã¾ã›ã‚“。 - - - The style %1 could not be loaded. - %1 ã¨ã„ã†ã‚¹ã‚¿ã‚¤ãƒ«ã‚’ロードã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ - - - The preview failed to build. - プレビューã®ãƒ“ルドã«å¤±æ•—ã—ã¾ã—ãŸã€‚ - - - %1 - [Preview] - %1 - [プレビュー] - - - Designer - Designer - - - Change script - スクリプトを変更 - - - A custom widget plugin whose class name (%1) matches that of an existing class has been found. - クラスå (%1) ãŒæ—¢å­˜ã®ã‚¯ãƒ©ã‚¹ã¨åŒã˜ã§ã‚るカスタムウィジェットプラグインãŒè¦‹ã¤ã‹ã‚Šã¾ã—ãŸã€‚ - - - The custom widget factory registered for widgets of class %1 returned 0. - %1 ã¨ã„ã†ã‚¯ãƒ©ã‚¹ã®ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã®ãŸã‚ã«ç™»éŒ²ã•ã‚ŒãŸã‚«ã‚¹ã‚¿ãƒ ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆãƒ•ã‚¡ã‚¯ãƒˆãƒªãƒ¼ãŒ 0 ã‚’è¿”ã—ã¾ã—ãŸã€‚ - - - A class name mismatch occurred when creating a widget using the custom widget factory registered for widgets of class %1. It returned a widget of class %2. - %1 ã¨ã„ã†ã‚¯ãƒ©ã‚¹ã®ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã®ãŸã‚ã«ç™»éŒ²ã•ã‚ŒãŸã‚«ã‚¹ã‚¿ãƒ ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆãƒ•ã‚¡ã‚¯ãƒˆãƒªãƒ¼ã‚’使ã£ã¦ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã‚’作æˆã—ã¦ã„ã‚‹ã¨ãã«ã€ã‚¯ãƒ©ã‚¹åã®ãƒŸã‚¹ãƒžãƒƒãƒãŒç™ºç”Ÿã—ã¾ã—ãŸã€‚%2 ã¨ã„ã†ã‚¯ãƒ©ã‚¹ã®ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã‚’è¿”ã—ã¾ã—ãŸã€‚ - - - QFormBuilder was unable to create a widget of the class '%1'. - QFormBuilder ã¯ã€ã‚¯ãƒ©ã‚¹ '%1' ã®ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã‚’作æˆã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ - - - The layout type `%1' is not supported. - レイアウトタイプ '%1' ã¯ã€ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。 - - - The set-type property %1 could not be read. - Setåž‹ã®ãƒ—ロパティ %1 を読ã‚ã¾ã›ã‚“ã§ã—ãŸã€‚ - - - The enumeration-type property %1 could not be read. - Enum åž‹ã®ãƒ—ロパティ %1 を読ã‚ã¾ã›ã‚“ã§ã—ãŸã€‚ - - - Reading properties of the type %1 is not supported yet. - %1 ã¨ã„ã†åž‹ã®ãƒ—ロパティã®èª­ã¿è¾¼ã¿ã¯ã€ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。 - - - The property %1 could not be written. The type %2 is not supported yet. - プロパティ %1 を書ãè¾¼ã‚ã¾ã›ã‚“ã§ã—ãŸã€‚%2 ã¨ã„ã†åž‹ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。 - - - Color - 色 - - - - QStackedWidgetEventFilter - - - Previous Page - å‰ã®ãƒšãƒ¼ã‚¸ - - - - Next Page - 次ã®ãƒšãƒ¼ã‚¸ - - - - Delete - 削除 - - - - Before Current Page - ã“ã®ãƒšãƒ¼ã‚¸ã®å‰ - - - - After Current Page - ã“ã®ãƒšãƒ¼ã‚¸ã®å¾Œ - - - - Change Page Order... - ページã®é †åºã‚’変更... - - - - Change Page Order - ページã®é †åºã‚’変更 - - - - Page %1 of %2 - %2 ページã®ã†ã¡ã® %1 ページ - - - - Insert Page - ページを挿入 - - - - QStackedWidgetPreviewEventFilter - - - Go to previous page of %1 '%2' (%3/%4). - - - - - Go to next page of %1 '%2' (%3/%4). - - - - - QTabWidgetEventFilter - - - Delete - 削除 - - - - Before Current Page - ã“ã®ãƒšãƒ¼ã‚¸ã®å‰ - - - - After Current Page - ã“ã®ãƒšãƒ¼ã‚¸ã®å¾Œ - - - - Page %1 of %2 - %2 ページã®ã†ã¡ã® %1 ページ - - - - Insert Page - ページを挿入 - - - - QToolBoxHelper - - - Delete Page - ページを削除 - - - - Before Current Page - ã“ã®ãƒšãƒ¼ã‚¸ã®å‰ - - - - After Current Page - ã“ã®ãƒšãƒ¼ã‚¸ã®å¾Œ - - - - Change Page Order... - ページã®é †åºã‚’変更... - - - - Change Page Order - ページã®é †åºã‚’変更 - - - - Page %1 of %2 - %2 ページã®ã†ã¡ã® %1 ページ - - - - Insert Page - ページを挿入 - - - - QtBoolEdit - - - - - True - - - - - - False - + False + å½ QtBoolPropertyManager - True - + 真 - False - + å½ QtCharEdit - Clear Char - + 文字をクリア QtColorEditWidget - ... - ... + ... QtColorPropertyManager - Red - 赤 + 赤 - Green - ç·‘ + ç·‘ - Blue - é’ + é’ - Alpha - アルファ + アルファ QtCursorDatabase - Cross - æ ¼å­ + åå­—åž‹ - Arrow - + çŸ¢å° - Up Arrow - + 上å‘ãçŸ¢å° - Wait - + å¾…æ©Ÿ - IBeam - + I ビーム - Size Vertical - + サイズ変更(縦方å‘) - Size Horizontal - + サイズ変更(横方å‘) - Size Backslash - + サイズ変更(ãƒãƒƒã‚¯ã‚¹ãƒ©ãƒƒã‚·ãƒ¥) - Size Slash - + サイズ変更(スラッシュ) - Size All - + サイズ変更(4æ–¹å‘) - Blank - + ãªã— - Split Vertical - + 分割(縦方å‘) - Split Horizontal - + 分割(横方å‘) - Pointing Hand - + ãƒãƒ³ãƒ‰(指差ã—) - Forbidden - + ç¦æ­¢ - Open Hand - + ãƒãƒ³ãƒ‰(オープン) - Closed Hand - + ãƒãƒ³ãƒ‰(クローズ) - What's This - + ヘルプ - Busy - + ビジー QtFontEditWidget - ... - ... + ... - Select Font - + フォントをé¸æŠž QtFontPropertyManager - Bold - ボールド + ボールド - Italic - イタリック + イタリック - Underline - 下線 + 下線 - Family - + ファミリー - Point Size - + ãƒã‚¤ãƒ³ãƒˆã‚µã‚¤ã‚º - Strikeout - + å–消線 - Kerning - + カーニング QtGradientDialog - Edit Gradient - グラデーションを編集 + グラデーションを編集 QtGradientEditor - Start X - 始点㮠X 座標 + 始点㮠X 座標 - Start Y - 始点㮠Y 座標 + 始点㮠Y 座標 - Final X - 終点㮠X 座標 + 終点㮠X 座標 - Final Y - 終点㮠Y 座標 + 終点㮠Y 座標 - - Central X - 中心㮠X 座標 + 中心㮠X 座標 - - Central Y - 中心㮠Y 座標 + 中心㮠Y 座標 - Focal X - 焦点㮠X 座標 + 焦点㮠X 座標 - Focal Y - 焦点㮠Y 座標 + 焦点㮠Y 座標 - Radius - åŠå¾„ + åŠå¾„ - Angle - 角度 + 角度 + + + Linear + 線状 + + + Radial + 放射状 + + + Conical + 円éŒçŠ¶ + + + Pad + 区切りã®è‰²ã§è£œå…… + + + Repeat + グラデーションã®ç¹°ã‚Šè¿”ã— + + + Reflect + グラデーションã®åå°„ - Form - フォーム + フォーム - Gradient Editor - + グラデーションエディタ - 1 - 1 + 1 - 2 - 2 + 2 - 3 - 3 + 3 - 4 - 4 + 4 - 5 - 5 + 5 - Gradient Stops Editor - + グラデーション制御点エディタ - This area allows you to edit gradient stops. Double click on the existing stop handle to duplicate it. Double click outside of the existing stop handles to create a new stop. Drag & drop the handle to reposition it. Use right mouse button to popup context menu with extra actions. - + ã“ã®ã‚ˆã†æ¯ã§ã‚°ãƒ©ãƒ‡ãƒ¼ã‚·ãƒ§ãƒ³ã®åˆ¶å¾¡ç‚¹ã‚’編集ã§ãã¾ã™ã€‚é…置済ã¿ã®åˆ¶å¾¡ç‚¹ã‚’ダブルクリックã™ã‚‹ã¨åˆ¶å¾¡ç‚¹ã‚’複製ã—ã¾ã™ã€‚制御点以外ã®å ´æ‰€ã‚’ダブルクリックã™ã‚‹ã¨æ–°ã—ã„制御点を作æˆã—ã¾ã™ã€‚ドラッグ & ドロップã§åˆ¶å¾¡ç‚¹ã®ä½ç½®ã‚’調整ã—ã¾ã™ã€‚マウスã®å³ãƒœã‚¿ãƒ³ã§è¡¨ç¤ºã•ã‚Œã‚‹ãƒãƒƒãƒ—アップメニューã§ãれ以外ã®æ“作を行ã„ã¾ã™ã€‚ - Zoom - ズーム + ズーム - Zoom All - ã™ã¹ã¦ã‚ºãƒ¼ãƒ  - - - Position - ä½ç½® + ä½ç½® - Hue - 色相 + 色相 - H - + H - Saturation - 彩度 + 彩度 - S - + S - Sat - + 彩度 - Value - + 明度 - V - + V - Val - + 明度 - Alpha - アルファ + アルファ - A - + A - Type - グラデーションã®ã‚¿ã‚¤ãƒ— + グラデーションã®ã‚¿ã‚¤ãƒ— - Spread - 広ãŒã‚Šæ–¹ + 広ãŒã‚Šæ–¹ - Color - 色 + 色 - Current stop's color - + ç¾åœ¨ã®åˆ¶å¾¡ç‚¹ã®è‰² - HSV - HSV + HSV - RGB - RGB + RGB - Current stop's position - + ç¾åœ¨ã®åˆ¶å¾¡ç‚¹ã®ä½ç½® - % - % + % - Zoom In - 拡大 + 拡大 - Zoom Out - ç¸®å° + ç¸®å° - Toggle details extension - + 詳細表示ã®ã‚ªãƒ³/オフ - > - + > - Linear Type - + ç·šå½¢ - ... - ... + ... - Radial Type - + 放射形 - Conical Type - + 円éŒå½¢ - Pad Spread - + 区切りã®è‰²ã§è£œå…… - Repeat Spread - + グラデーションã®ç¹°ã‚Šè¿”ã— - Reflect Spread - + グラデーションã®åå°„ - This area shows a preview of the gradient being edited. It also allows you to edit parameters specific to the gradient's type such as start and final point, radius, etc. by drag & drop. - + ã“ã®é ˜åŸŸã«ã¯ç·¨é›†ä¸­ã®ã‚°ãƒ©ãƒ‡ãƒ¼ã‚·ãƒ§ãƒ³ã®ãƒ—レビューを表示ã—ã¾ã™ã€‚始点や終点ã€åŠå¾„ãªã©ã®ã‚°ãƒ©ãƒ‡ãƒ¼ã‚·ãƒ§ãƒ³ã‚’定義ã™ã‚‹å„種ã®ãƒ‘ラメータã¯ãƒ‰ãƒ©ãƒƒã‚° & ドロップã§ç·¨é›†ã§ãã¾ã™ã€‚ - Show HSV specification - + HSV 色空間ã§è¡¨ç¤º - Show RGB specification - + RGB 色空間ã§è¡¨ç¤º - Reset Zoom - + ズームをリセット QtGradientStopsWidget - New Stop - æ–°ã—ã„終点 + æ–°ã—ã„制御点 - Delete - 削除 + 削除 - Flip All - + ã™ã¹ã¦å転 - Select All - ã™ã¹ã¦ã‚’é¸æŠž + ã™ã¹ã¦ã‚’é¸æŠž - Zoom In - 拡大 + 拡大 - Zoom Out - ç¸®å° - - - Zoom All - ã™ã¹ã¦ã‚ºãƒ¼ãƒ  + ç¸®å° - Reset Zoom - + ズームをリセット QtGradientView - Grad - + グラデーション - Remove Gradient - + グラデーションを削除 - Are you sure you want to remove the selected gradient? - + é¸æŠžã•ã‚ŒãŸã‚°ãƒ©ãƒ‡ãƒ¼ã‚·ãƒ§ãƒ³ã‚’削除ã—ã¾ã™ã‹? - - New... - æ–°è¦... + æ–°è¦... - - Edit... - 編集... + 編集... - - Rename - åå‰ã®å¤‰æ›´ + åå‰ã®å¤‰æ›´ - - Remove - 消去 + 削除 - Gradient View - + グラデーションビュー QtGradientViewDialog - Edit Gradient - グラデーションを編集 - - - - Select Gradient - + グラデーションをé¸æŠž QtKeySequenceEdit - Clear Shortcut - ショートカットをクリア + ショートカットをクリア QtLocalePropertyManager - %1, %2 - + %1, %2 - Language - + 言語 - Country - + 国 QtPointFPropertyManager - (%1, %2) - + (%1, %2) - X - + X - Y - + Y QtPointPropertyManager - (%1, %2) - + (%1, %2) - X - + X - Y - + Y QtPropertyBrowserUtils - [%1, %2, %3] (%4) - + [%1, %2, %3] (%4) - [%1, %2] - + [%1, %2] QtRectFPropertyManager - [(%1, %2), %3 x %4] - + [(%1, %2), %3 × %4] - X - + X - Y - + Y - Width - + å¹… - Height - + 高㕠QtRectPropertyManager - [(%1, %2), %3 x %4] - + [(%1, %2), %3 × %4] - X - + X - Y - + Y - Width - + å¹… - Height - + 高㕠QtResourceEditorDialog - %1 already exists. Do you want to replace it? - %1 ã¯ã™ã§ã«å­˜åœ¨ã—ã¾ã™ã€‚上書ãã—ã¾ã™ã‹? + %1 ã¯æ—¢ã«å­˜åœ¨ã—ã¾ã™ã€‚ +上書ãã—ã¾ã™ã‹? - The file does not appear to be a resource file; element '%1' was found where '%2' was expected. - + ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã¯ãƒªã‚½ãƒ¼ã‚¹ãƒ•ã‚¡ã‚¤ãƒ«ã§ã¯ã‚ã‚Šã¾ã›ã‚“。è¦ç´  '%2' ãŒã‚ã‚‹ã¹ã場所ã«è¦ç´  '%1' ãŒå­˜åœ¨ã—ã¾ã™ã€‚ - %1 [read-only] - + %1 [読込専用] - - %1 [missing] - + %1 [見ã¤ã‹ã‚Šã¾ã›ã‚“] - <no prefix> - + <プレフィックスãªã—> - - New Resource File - + æ–°ã—ã„リソースファイル - - Resource files (*.qrc) - リソースファイル (*.qrc) + リソースファイル (*.qrc) - Import Resource File - + リソースファイルをインãƒãƒ¼ãƒˆ - newPrefix - + newPrefix - Add Files - + ファイルを追加 - Incorrect Path - + ä¸æ­£ãªãƒ‘ス - - - - Copy - + コピー - Copy As... - + åå‰ã‚’指定ã—ã¦ã‚³ãƒ”ー... - Keep - + キープ - Skip - + スキップ - Clone Prefix - + プレフィックスを複製 - Enter the suffix which you want to add to the names of the cloned files. This could for example be a language extension like "_de". - + 複製ã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã®åå‰ã«è¿½åŠ ã™ã‚‹å¾Œç½®è©žã‚’入力ã—ã¦ãã ã•ã„。 +ã“ã®æŒ‡å®šã¯ãŸã¨ãˆã°è¨€èªžã‚’示㙠"_ja" ã®æ§˜ã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚ - - Copy As - + åå‰ã‚’指定ã—ã¦ã‚³ãƒ”ー - <p>The selected file:</p><p>%1</p><p>is outside of the current resource file's directory:</p><p>%2</p><p>Please select another path within this directory.<p> - + <p>é¸æŠžã—ãŸãƒ•ã‚¡ã‚¤ãƒ«:</p><p>%1</p><p>ã¯ç¾åœ¨ã®ãƒªã‚½ãƒ¼ã‚¹ãƒ•ã‚¡ã‚¤ãƒ«ã®ã‚るディレクトリã«ã‚ã‚Šã¾ã›ã‚“:</p><p>%2</p>ã“ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ã‚ã‚‹ä»–ã®ãƒ‘スをé¸æŠžã—ã¦ãã ã•ã„。</p> - Could not overwrite %1. - + %1 を上書ãã§ãã¾ã›ã‚“。 - Save Resource File - + リソースファイルをä¿å­˜ - Edit Resources - + リソースを編集 - New... - æ–°è¦... + æ–°è¦... - Open... - é–‹ã... + é–‹ã... - <p><b>Warning:</b> The file</p><p>%1</p><p>is outside of the current resource file's parent directory.</p> - + <p><b>警告:</b> ファイル</p><p>%1</p><p>ã¯ç¾åœ¨ã®ãƒªã‚½ãƒ¼ã‚¹ãƒ•ã‚¡ã‚¤ãƒ«ã®ã‚るディレクトリ以下ã¨ã¯åˆ¥ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãƒ„リーã«ã‚ã‚Šã¾ã™ã€‚</p> - <p>To resolve the issue, press:</p><table><tr><th align="left">Copy</th><td>to copy the file to the resource file's parent directory.</td></tr><tr><th align="left">Copy As...</th><td>to copy the file into a subdirectory of the resource file's parent directory.</td></tr><tr><th align="left">Keep</th><td>to use its current location.</td></tr></table> - + <p>ã“ã®å•é¡Œã®è§£æ±ºã«ã¯ä¸‹è¨˜ã®ã„ãšã‚Œã‹ã®ãƒœã‚¿ãƒ³ã‚’押ã—ã¦ãã ã•ã„:</p><table><tr><th align="left">コピー</th><td>ファイルをリソースファイルã®ã‚るディレクトリã«ã‚³ãƒ”ーã—ã¾ã™ã€‚</td></tr><tr><th align="left">åå‰ã‚’指定ã—ã¦ã‚³ãƒ”ー...</th><td>ファイルをリソースファイルã®ã‚るディレクトリもã—ãã¯ãã®ã‚µãƒ–ディレクトリã«åå‰ã‚’指定ã—ã¦ã‚³ãƒ”ーã—ã¾ã™ã€‚</td></tr><tr><th align="left">キープ</th><td>ç¾åœ¨ã®ãƒ‘スをãã®ã¾ã¾ä½¿ç”¨ã—ã¾ã™ã€‚</td></tr></table> - Could not copy %1 to %2 - + コピーã§ãã¾ã›ã‚“: +%1 +ã‹ã‚‰ +%2 +ã¸ã®ã‚³ãƒ”ー - A parse error occurred at line %1, column %2 of %3: %4 - + %3 ã® %1 è¡Œ %2 列ã®ãƒ‘ース中ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: +%4 - Could not write %1: %2 - + %1 ã«æ›¸ã込むã“ã¨ãŒå‡ºæ¥ã¾ã›ã‚“ã§ã—ãŸ: %2 - Open Resource File - + リソースファイルを開ã - - Remove - 消去 + 削除 - - Move Up - + 上ã¸ç§»å‹• - - Move Down - + 下ã¸ç§»å‹• - - Add Prefix - + プレフィックスを追加 - Add Files... - + ファイルを追加... - Change Prefix - + プレフィックスを変更 - Change Language - + 言語を変更 - Change Alias - + エイリアスを変更 - Clone Prefix... - + プレフィックスを複製... - Prefix / Path - + プレフィックス / パス - Language / Alias - + 言語 / エイリアス - <html><p><b>Warning:</b> There have been problems while reloading the resources:</p><pre>%1</pre></html> - + <html><p><b>警告:</b> リソースã®ãƒªãƒ­ãƒ¼ãƒ‰ä¸­ã«å•é¡ŒãŒç™ºç”Ÿã—ã¾ã—ãŸ:</p><pre>%1</pre></html> - Resource Warning - + リソースã®è­¦å‘Š - Dialog - ダイアログ + ダイアログ - New File - + æ–°ã—ã„ファイル - N - + N - Remove File - + ファイルを削除 - R - R + R - I - + I - New Resource - + æ–°ã—ã„リソース - A - + A - Remove Resource or File - + リソースもã—ãã¯ãƒ•ã‚¡ã‚¤ãƒ«ã®å‰Šé™¤ QtResourceView - Size: %1 x %2 %3 - + サイズ: %1 × %2 +%3 - Edit Resources... - + リソースを編集... - Reload - + å†èª­è¾¼ - Copy Path - + パスをコピー QtResourceViewDialog - Select Resource - + リソースをé¸æŠž QtSizeFPropertyManager - %1 x %2 - + %1 × %2 - Width - + å¹… - Height - + 高㕠QtSizePolicyPropertyManager - - <Invalid> - + <無効> - [%1, %2, %3, %4] - + [%1, %2, %3, %4] - Horizontal Policy - + 横方å‘ã®ãƒãƒªã‚·ãƒ¼ - Vertical Policy - + 縦方å‘ã®ãƒãƒªã‚·ãƒ¼ - Horizontal Stretch - + 横方å‘ã®ã‚¹ãƒˆãƒ¬ãƒƒãƒ - Vertical Stretch - + 縦方å‘ã®ã‚¹ãƒˆãƒ¬ãƒƒãƒ QtSizePropertyManager - %1 x %2 - + %1 × %2 - Width - + å¹… - Height - + 高㕠QtToolBarDialog - < S E P A R A T O R > - + < ã‚» パ レ ー ã‚¿ ー > - Customize Toolbars - + ツールãƒãƒ¼ã®ã‚«ã‚¹ã‚¿ãƒžã‚¤ã‚º - 1 - 1 + 1 - Actions - アクション + アクション - Toolbars - ツールãƒãƒ¼ + ツールãƒãƒ¼ - Add new toolbar - + ツールãƒãƒ¼ã‚’追加 - New - æ–°è¦ + æ–°è¦ - Remove selected toolbar - + é¸æŠžã—ãŸãƒ„ールãƒãƒ¼ã‚’削除 - Remove - 消去 + 削除 - Rename toolbar - + ツールãƒãƒ¼ã®åå‰ã®å¤‰æ›´ - Rename - åå‰ã®å¤‰æ›´ + åå‰ã®å¤‰æ›´ - Move action up - + アクションを上ã«ç§»å‹• - Up - 上㸠+ 上㸠- Remove action from toolbar - + アクションをツールãƒãƒ¼ã‹ã‚‰å‰Šé™¤ - <- - + ↠- Add action to toolbar - + アクションをツールãƒãƒ¼ã«è¿½åŠ  - -> - + → - Move action down - + アクションを下ã«ç§»å‹• - Down - 下㸠+ 下㸠- Current Toolbar Actions - + ç¾åœ¨ã®ãƒ„ールãƒãƒ¼ã®ã‚¢ã‚¯ã‚·ãƒ§ãƒ³ - Custom Toolbar - + カスタムツールãƒãƒ¼ QtTreePropertyBrowser - Property - プロパティ + プロパティ - Value - + 値 SaveFormAsTemplate - Add path... パスを追加... - Template Exists テンプレートãŒå­˜åœ¨ã—ã¾ã™ - A template with the name %1 already exists. Do you want overwrite the template? - %1 ã¨ã„ã†åå‰ã®ãƒ†ãƒ³ãƒ—レートãŒã™ã§ã«å­˜åœ¨ã—ã¾ã™ã€‚ + %1 ã¨ã„ã†åå‰ã®ãƒ†ãƒ³ãƒ—レートãŒæ—¢ã«å­˜åœ¨ã—ã¾ã™ã€‚ 上書ãã—ã¾ã™ã‹? - Overwrite Template テンプレートを上書ã - Open Error オープンエラー - There was an error opening template %1 for writing. Reason: %2 %1 ã¨ã„ã†ãƒ†ãƒ³ãƒ—レートを書ãè¾¼ã¿ç”¨ã«ã‚ªãƒ¼ãƒ—ンã—よã†ã¨ã—ã¦ã‚¨ãƒ©ãƒ¼ã«ãªã‚Šã¾ã—ãŸã€‚ç†ç”±: %2 - Write Error 書ãè¾¼ã¿ã‚¨ãƒ©ãƒ¼ - There was an error writing the template %1 to disk. Reason: %2 %1 ã¨ã„ã†ãƒ†ãƒ³ãƒ—レートをディスクã«æ›¸ã込もã†ã¨ã—ã¦ã‚¨ãƒ©ãƒ¼ã«ãªã‚Šã¾ã—ãŸã€‚ç†ç”±: %2 - Pick a directory to save templates in - テンプレートをä¿å­˜ã™ã‚‹ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’é¸æŠžã—ã¦ãã ã•ã„ + テンプレートをä¿å­˜ã™ã‚‹ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’é¸æŠžã—ã¦ãã ã•ã„ - Save Form As Template フォームをテンプレートã¨ã—ã¦ä¿å­˜ - &Category: カテゴリ(&C): - &Name: åå‰(&N): @@ -4677,347 +3064,343 @@ Do you want overwrite the template? ScriptErrorDialog - An error occurred while running the scripts for "%1": - "%1" ã®ãŸã‚ã«ã‚¹ã‚¯ãƒªãƒ—トを実行ã—ã¦ã„ã¦ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: + "%1" ã§ã‚¹ã‚¯ãƒªãƒ—トã®å®Ÿè¡Œä¸­ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: SelectSignalDialog - Go to slot - + スロットã¸ç§»å‹• - Select signal - + シグナルをé¸æŠž - signal - + シグナル - class - + クラス SignalSlotConnection - SENDER(%1), SIGNAL(%2), RECEIVER(%3), SLOT(%4) - + é€ä¿¡è€…(%1), シグナル(%2), å—信者(%3), スロット(%4) SignalSlotDialogClass - Signals and slots - + シグナルã¨ã‚¹ãƒ­ãƒƒãƒˆ - Slots - + スロット - ... - ... + ... - Signals - + シグナル - Add - 追加 + 追加 - Delete - 削除 + 削除 Spacer - Horizontal Spacer '%1', %2 x %3 - + 横方å‘ã®ã‚¹ãƒšãƒ¼ã‚µãƒ¼ '%1', %2 × %3 - Vertical Spacer '%1', %2 x %3 - + 縦方å‘ã®ã‚¹ãƒšãƒ¼ã‚µãƒ¼ '%1', %2 × %3 TemplateOptionsPage - Template Paths Tab in preferences dialog - + テンプレートã®ãƒ‘ス ToolBarManager - Configure Toolbars... - + ツールãƒãƒ¼ã®è¨­å®š... - Window - + ウィンドウ - Help - + ヘルプ - Style - + スタイル - Dock views - + ドックビュー + + + File + ファイル + + + Edit + 編集 + + + Tools + ツール + + + Form + フォーム - Toolbars - ツールãƒãƒ¼ + ツールãƒãƒ¼ VersionDialog - <h3>%1</h3><br/><br/>Version %2 <h3>%1</h3><br/><br/>ãƒãƒ¼ã‚¸ãƒ§ãƒ³ %2 - Open Source Edition - オープンソース版 - - - Qt Designer Qt Designer - <br/>Qt Designer is a graphical user interface designer for Qt applications.<br/> <br/>Qt Designer ã¯ã€Qt アプリケーションをデザインã™ã‚‹ãŸã‚ã® GUI ツールã§ã™ã€‚<br/> - This version of Qt Designer is part of the Qt Open Source Edition, for use in the development of Open Source applications. Qt is a comprehensive C++ framework for cross-platform application development.<br/><br/>You need a commercial Qt license for development of proprietary (closed source) applications. Please see <a href="http://qt.nokia.com/company/model.html">http://qt.nokia.com/company/model.html</a> for an overview of Qt licensing.<br/> - ã“ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã® Qt Designer ã¯ã€ã‚ªãƒ¼ãƒ—ンソースアプリケーションを開発ã™ã‚‹ãŸã‚ã® Qt オープンソース版ã®ä¸€éƒ¨ã§ã™ã€‚Qt ã¯ã€ã‚¯ãƒ­ã‚¹ãƒ—ラットフォームãªã‚¢ãƒ—リケーションを開発ã™ã‚‹ãŸã‚ã®åŒ…括的㪠C++ ã®ãƒ•ãƒ¬ãƒ¼ãƒ ãƒ¯ãƒ¼ã‚¯ã§ã™ã€‚<br/><br/>独å çš„ãªï¼ˆã‚½ãƒ¼ã‚¹ãŒéš ã•ã‚ŒãŸï¼‰ã‚¢ãƒ—リケーションを開発ã™ã‚‹ã«ã¯ã€Qt ã®å•†ç”¨ãƒ©ã‚¤ã‚»ãƒ³ã‚¹ãŒå¿…è¦ã§ã™ã€‚Qt ã®ãƒ©ã‚¤ã‚»ãƒ³ã‚¹ã®æ¦‚è¦ã«ã¤ã„ã¦ã¯ <a href="http://qt.nokia.com/company/model.html">http://qt.nokia.com/company/model.html</a> ã‚’ã”覧ãã ã•ã„。<br/> + %1<br/>Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). + %1<br/>Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). + + + + VideoPlayerTaskMenu + + Available Mime Types + 利用å¯èƒ½ãª MIME タイプ + + + Display supported mime types... + サãƒãƒ¼ãƒˆã—ã¦ã„ã‚‹ MIME タイプã®è¡¨ç¤º... + + + Load... + ロード... + + + Play + å†ç”Ÿ + + + Pause + 一時åœæ­¢ + + + Stop + åœæ­¢ + + + Choose Video Player Media Source + ビデオプレイヤーã§å†ç”Ÿã™ã‚‹ãƒ¡ãƒ‡ã‚£ã‚¢ã®ã‚½ãƒ¼ã‚¹ã‚’é¸æŠž - This program is licensed to you under the terms of the Qt Commercial License Agreement. For details, see the file LICENSE that came with this software distribution.<br/> - ã“ã®ãƒ—ログラムã¯ã€Qt 商用ライセンス契約書ã®å®šã‚ã‚‹æ¡ä»¶ã®ä¸‹ã§ã‚ãªãŸã®åˆ©ç”¨ãŒèªã‚られã¦ã„ã¾ã™ã€‚詳細ã¯ã€ã‚½ãƒ•ãƒˆã‚¦ã‚§ã‚¢ã¨ä¸€ç·’ã«é…布ã•ã‚Œã‚‹ LICENSE ファイルをå‚ç…§ã—ã¦ãã ã•ã„。<br/> + An error has occurred in '%1': %2 + '%1' ã§ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: %2 - - %1<br/>%2<br/>Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).<br/><br/>The program is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.<br/> - %1<br/>%2<br/>Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). å…¨ã¦ã®æ¨©åˆ©ã¯ä¿è­·ã•ã‚Œã¦ã„ã¾ã™ã€‚<br/><br/>プログラムã¯ã€Œè¨­è¨ˆã€ã€ã€Œå¸‚場性ã€ãŠã‚ˆã³ã€Œç‰¹å®šã®ç›®çš„ã¸ã®é©åˆæ€§ã€ã‚‚å«ã‚€ã€ã‚らゆる種類ã®ã€Œä¿è¨¼ãŒãªãã€ã€ã€Œãã®ã¾ã¾ã§ã€æä¾›ã•ã‚Œã¾ã™ã€‚<br/> + Video Player Error + ビデオプレイヤーエラー WidgetDataBase - The file contains a custom widget '%1' whose base class (%2) differs from the current entry in the widget database (%3). The widget database is left unchanged. - + ファイルã«å«ã¾ã‚Œã‚‹ã‚«ã‚¹ã‚¿ãƒ ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆ '%1' ã®åŸºåº•ã‚¯ãƒ©ã‚¹(%2)ãŒç¾åœ¨ã®ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã®åŸºåº•ã‚¯ãƒ©ã‚¹(%3)ã¨ç•°ãªã‚Šã¾ã™ã€‚ウィジェットデータベースã¯å¤‰æ›´ã—ã¦ã„ã¾ã›ã‚“。 qdesigner_internal::ActionEditor - Actions アクション - New... æ–°è¦... - Delete 削除 - New action æ–°ã—ã„アクション - Edit action アクションを編集 - Designer - Designer - - - Feature not implemented! - ãã®æ©Ÿèƒ½ã¯å®Ÿè£…ã•ã‚Œã¦ã„ã¾ã›ã‚“! - - - Edit... - 編集... + 編集... - Go to slot... - + スロットã¸ç§»å‹•... - Copy - + コピー - Cut - + 切りå–ã‚Š - Paste - 貼り付㑠+ 貼り付㑠- Select all - + ã™ã¹ã¦ã‚’é¸æŠž - Configure Action Editor - + アクションエディタã®è¨­å®š - Icon View - + アイコン表示 - Detailed View - + 詳細表示 - Remove actions - + アクションã®å‰Šé™¤ - Remove action '%1' - アクション '%1' を消去 + アクション '%1' を削除 - Used In - - - - - qdesigner_internal::ActionFilterWidget - - Filter: - フィルタ: + 使用元 qdesigner_internal::ActionModel - Name - åå‰ + åå‰ - Used - + 使用中 - Text - + テキスト - Shortcut - + ショートカット - Checkable - + ãƒã‚§ãƒƒã‚¯å¯ - ToolTip - + ツールãƒãƒƒãƒ— + + + + qdesigner_internal::BrushManagerProxy + + The element '%1' is missing the required attribute '%2'. + è¦ç´  '%1' ã«å¿…é ˆãªå±žæ€§ '%2' ãŒã‚ã‚Šã¾ã›ã‚“。 + + + Empty brush name encountered. + ブラシã®åå‰ãŒç©ºã§ã™ã€‚ + + + An unexpected element '%1' was encountered. + 予期ã›ã¬è¦ç´  <%1> ã«é­é‡ã—ã¾ã—ãŸã€‚ + + + An error occurred when reading the brush definition file '%1' at line line %2, column %3: %4 + ブラシã®å®šç¾©ãƒ•ã‚¡ã‚¤ãƒ« '%1' ã®èª­ã¿è¾¼ã¿ä¸­ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ(%2 è¡Œ, %3 列): %4 + + + An error occurred when reading the resource file '%1' at line %2, column %3: %4 + リソースファイル '%1' ã®èª­ã¿è¾¼ã¿ä¸­ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ(%2 è¡Œ, %3 列): %4 qdesigner_internal::BuddyEditor - Add buddy buddy を追加 - Remove buddies - buddy を消去 + buddy を削除 - Remove %n buddies - - + + %n 個㮠buddy を削除 - Add %n buddies - - + + %n 個㮠buddy を追加 - Set automatically - + 自動的ã«ã‚»ãƒƒãƒˆ qdesigner_internal::BuddyEditorPlugin - Edit Buddies buddy を編集 @@ -5025,7 +3408,6 @@ Do you want overwrite the template? qdesigner_internal::BuddyEditorTool - Edit Buddies buddy を編集 @@ -5033,124 +3415,102 @@ Do you want overwrite the template? qdesigner_internal::ButtonGroupMenu - Select members - + メンãƒãƒ¼ã‚’é¸æŠž - Break - + ボタングループを破棄 qdesigner_internal::ButtonTaskMenu - Assign to button group - + ボタングループã«å‰²ã‚Šå½“㦠- Button group - + ボタングループ - New button group - + æ–°ã—ã„ボタングループ - Change text... テキストを変更... - None - + ãªã— - Button group '%1' - + ボタングループ '%1' qdesigner_internal::CodeDialog - Save... - + ä¿å­˜... - Copy All - + ã™ã¹ã¦ã‚³ãƒ”ー - &Find in Text... - + テキストを検索(&F)... - A temporary form file could not be created in %1. - + 一時フォームファイルを %1ã«ä½œæˆã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ - The temporary form file %1 could not be written. - + 一時フォームファイル %1 ã«æ›¸ãè¾¼ã‚ã¾ã›ã‚“ã§ã—ãŸã€‚ - %1 - [Code] - + %1 - [コード] - Save Code - + コードをä¿å­˜ - Header Files (*.%1) - + ヘッダファイル (*.%1) - The file %1 could not be opened: %2 - + ファイル %1 ã¯ã‚ªãƒ¼ãƒ—ンã§ãã¾ã›ã‚“ã§ã—ãŸ: %2 - The file %1 could not be written: %2 - + ファイル %1 ã«æ›¸ãè¾¼ã‚ã¾ã›ã‚“ã§ã—ãŸ: %2 - %1 - Error - %1 - エラー + %1 - エラー qdesigner_internal::ColorAction - Text Color - + テキストã®è‰² qdesigner_internal::ComboBoxTaskMenu - Edit Items... アイテムを編集... - Change Combobox Contents コンボボックスã®å†…容を変更 @@ -5158,928 +3518,663 @@ Do you want overwrite the template? qdesigner_internal::CommandLinkButtonTaskMenu - Change description... - - - - - qdesigner_internal::ConnectionDelegate - - <object> - <オブジェクト> - - - <signal> - <シグナル> - - - <slot> - <スロット> + 記述を変更... qdesigner_internal::ConnectionEdit - Select All - ã™ã¹ã¦ã‚’é¸æŠž + ã™ã¹ã¦ã‚’é¸æŠž - Deselect All - + ã™ã¹ã¦ã‚’é¸æŠžè§£é™¤ - Delete - 削除 + 削除 qdesigner_internal::ConnectionModel - Sender 発信者 - Signal シグナル - Receiver å—信者 - Slot スロット - <sender> <発信者> - <signal> <シグナル> - <receiver> <å—信者> - <slot> <スロット> - The connection already exists!<br>%1 - + ãã®æŽ¥ç¶šã¯æ—¢ã«å­˜åœ¨ã—ã¾ã™!<br>%1 - Signal and Slot Editor シグナルスロットエディタ - - The connection already exists!<br>SENDER(%1), SIGNAL(%2), RECEIVER(%3), SLOT(%4) - ã™ã§ã«æŽ¥ç¶šãŒå­˜åœ¨ã—ã¾ã™!<br>é€ä¿¡è€…(%1)ã€ã‚·ã‚°ãƒŠãƒ«(%2)ã€å—信者(%3)ã€ã‚¹ãƒ­ãƒƒãƒˆ(%4) - qdesigner_internal::ContainerWidgetTaskMenu - Delete Page - ページを削除 - - - Insert Page Before Current Page ã“ã®ãƒšãƒ¼ã‚¸ã®å‰ã«ãƒšãƒ¼ã‚¸ã‚’挿入 - Insert Page After Current Page ã“ã®ãƒšãƒ¼ã‚¸ã®å¾Œã«ãƒšãƒ¼ã‚¸ã‚’挿入 - Add Subwindow - + æ–°ã—ã„サブウィンドウ - Delete - 削除 + 削除 - Insert - + 挿入 - Subwindow - + サブウィンドウ - Page - ページ + ページ - Page %1 of %2 - %2 ページã®ã†ã¡ã® %1 ページ + %2 ページ中㮠%1 ページ目 qdesigner_internal::DPI_Chooser - System (%1 x %2) System resolution - + システム (%1 × %2) - User defined - + ユーザ定義 - x DPI X/Y separator - + × qdesigner_internal::DesignerPropertyManager - - AlignLeft - + 左端æƒãˆ - AlignHCenter - + 中央æƒãˆ(横方å‘) - AlignRight - + å³ç«¯æƒãˆ - AlignJustify - + 両端æƒãˆ - AlignTop - + 上端æƒãˆ - - AlignVCenter - + 中央æƒãˆ(縦方å‘) - AlignBottom - + 下端æƒãˆ - %1, %2 - + %1, %2 - Customized (%n roles) - - + + カスタムパレット (%n ロール) - Inherited - + 親ã‹ã‚‰ç¶™æ‰¿ - Horizontal - 横 + æ¨ªæ–¹å‘ - Vertical - 縦 + ç¸¦æ–¹å‘ - Normal Off - + 通常 オフ - Normal On - + 通常 オン - Disabled Off - + 無効化 オフ - Disabled On - + 無効化 オン - Active Off - + アクティブ オフ - Active On - + アクティブ オン - Selected Off - + é¸æŠžæ¸ˆã¿ オフ - Selected On - + é¸æŠžæ¸ˆã¿ オン - - translatable - + 翻訳å¯èƒ½ - - disambiguation - + ã‚ã„ã¾ã„ã•å›žé¿ - - comment - + コメント qdesigner_internal::DeviceProfileDialog - Device Profiles (*.%1) - + デãƒã‚¤ã‚¹ãƒ—ロファイル (*.%1) - Default - + デフォルト - Save Profile - + プロファイルをä¿å­˜ - Save Profile - Error - + プロファイルをä¿å­˜ - エラー - Unable to open the file '%1' for writing: %2 - + ファイル '%1' を書ãè¾¼ã¿ç”¨ã«ã‚ªãƒ¼ãƒ—ンã§ãã¾ã›ã‚“ã§ã—ãŸ: %2 - Open profile - + プロファイルをオープン - - Open Profile - Error - + プロファイルをオープン - Error - Unable to open the file '%1' for reading: %2 - + ファイル '%1' を読ã¿è¾¼ã¿ç”¨ã«ã‚ªãƒ¼ãƒ—ンã§ãã¾ã›ã‚“ã§ã—ãŸ: %2 - '%1' is not a valid profile: %2 - + '%1' ã¯ç„¡åŠ¹ãªãƒ—ロファイルã§ã™: %2 qdesigner_internal::Dialog - Dialog ダイアログ - StringList 文字列リスト - New String æ–°ã—ã„文字列 - &New æ–°è¦(&N) - Delete String 文字列を削除 - &Delete 削除(&D) - &Value: 値(&V): - Move String Up 文字列を上㸠- Up 上㸠- Move String Down 文字列を下㸠- Down 下㸠- qdesigner_internal::EditableResourceModel - - Invalid files - 無効ãªãƒ•ã‚¡ã‚¤ãƒ« - - - Files referenced in a qrc must be in the qrc's directory or one of its subdirectories:<p><b>%1</b><p>Some of the selected files do not comply with this. - qrc ã‹ã‚‰å‚ç…§ã•ã‚Œã¦ã„るファイルã¯ã€qrc ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚‚ã—ãã¯ã‚µãƒ–ディレクトリã®ã„ãšã‚Œã‹ã«ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™:<p><b>%1</b><p>é¸æŠžã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã®ä¸­ã«ã¯ã€ã“ã®æ¡ä»¶ã«å¾“ã‚ãªã„ã‚‚ã®ãŒã‚ã‚Šã¾ã™ã€‚ - - - Only insert files which comply - æ¡ä»¶ã«å¾“ã†ãƒ•ã‚¡ã‚¤ãƒ«ã ã‘を挿入ã™ã‚‹ - - - Files referenced in a qrc must be in the qrc's directory or one of its subdirectories:<p><b>%1</b><p>The selected files do not comply with this. - qrc ã‹ã‚‰å‚ç…§ã•ã‚Œã¦ã„るファイルã¯ã€qrc ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚‚ã—ãã¯ã‚µãƒ–ディレクトリã®ã„ãšã‚Œã‹ã«ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™:<p><b>%1</b><p>é¸æŠžã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã¯ã€ã“ã®æ¡ä»¶ã«å¾“ã£ã¦ã„ã¾ã›ã‚“。 - - - Error loading resource file - リソースファイルã®ãƒ­ãƒ¼ãƒ‰ã‚¨ãƒ©ãƒ¼ - - - Failed to open "%1": -%2 - "%1" ã®ã‚ªãƒ¼ãƒ—ンã«å¤±æ•—: %2 - - - Error saving resource file - リソースファイルã®ä¿å­˜ã‚¨ãƒ©ãƒ¼ - - - Failed to save "%1": -%2 - "%1" ã®ä¿å­˜ã«å¤±æ•—: -%2 - - - qdesigner_internal::EmbeddedOptionsControl - None - + ãªã— - Add a profile - + プロファイルを追加 - Edit the selected profile - + é¸æŠžã—ãŸãƒ—ロファイルを編集 - Delete the selected profile - + é¸æŠžã—ãŸãƒ—ロファイルを削除 - Add Profile - + プロファイルを追加 - New profile - + æ–°ã—ã„プロファイル - Edit Profile - + プロファイルを編集 - Delete Profile - + プロファイルを削除 - Would you like to delete the profile '%1'? - + プロファイル '%1' を削除ã—ã¾ã™ã‹? - Default - + デフォルト qdesigner_internal::FilterWidget - - <Filter> - - - - - qdesigner_internal::FindIconDialog - - Find Icon - アイコン検索 - - - Specify resource - リソースを指定 - - - Specify image file - イメージファイルを指定 + Filter + フィルタ - Parent directory - 親ディレクトリ + Clear text + テキストをクリア qdesigner_internal::FormEditor - Resource File Changed - + リソースファイルãŒå¤‰æ›´ã•ã‚Œã¾ã—㟠- The file "%1" has changed outside Designer. Do you want to reload it? - + ファイル "%1" 㯠Designer 以外ã§å¤‰æ›´ã•ã‚Œã¾ã—ãŸã€‚リロードã—ã¾ã™ã‹? qdesigner_internal::FormLayoutMenu - Add form layout row... - + フォームレイアウトã«è¡Œã‚’追加... qdesigner_internal::FormWindow - Edit contents 内容を編集 - F2 F2 - Insert widget '%1 - ウィジェット '%1 を挿入 - - - Resize サイズ変更 - - Key Move - キーã®ç§»å‹• + 移動キー - Paste - 貼り付㑠- - - Paste error 貼り付ã‘エラー - Can't paste widgets. Designer couldn't find a container -to paste into which does not contain a layout. Break the layout -of the container you want to paste into and select this container -and then paste again. - ウィジェットを貼り付ã‘られã¾ã›ã‚“。Designer ã¯ã€ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã‚’貼り付ã‘ã‚‹ã“ã¨ãŒã§ãã‚‹ã€ãƒ¬ã‚¤ã‚¢ã‚¦ãƒˆã‚’å«ã¾ãªã„コンテナを見ã¤ã‘ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“ã§ã—ãŸã€‚貼り付ã‘å…ˆã®ã‚³ãƒ³ãƒ†ãƒŠã®ãƒ¬ã‚¤ã‚¢ã‚¦ãƒˆã‚’破棄ã—ã€ã‚‚ã†ä¸€åº¦ãã®ã‚³ãƒ³ãƒ†ãƒŠã‚’é¸ã‚“ã§è²¼ã‚Šä»˜ã‘ã¦ãã ã•ã„。 - - - Break layout - レイアウトを破棄ã™ã‚‹ - - - Lay out レイアウト - - Drop widget ウィジェットã®è²¼ã‚Šä»˜ã‘ - Paste %n action(s) - - + + %n 個ã®ã‚¢ã‚¯ã‚·ãƒ§ãƒ³ã®è²¼ã‚Šä»˜ã‘ - Insert widget '%1' - + ウィジェット '%1' を挿入 + + + Key Resize + リサイズキー - Paste %n widget(s) - - + + %n 個ã®ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã®è²¼ã‚Šä»˜ã‘ - Paste (%1 widgets, %2 actions) - + %1 個ã®ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã¨ %2 個ã®ã‚¢ã‚¯ã‚·ãƒ§ãƒ³ã®è²¼ã‚Šä»˜ã‘ - Cannot paste widgets. Designer could not find a container without a layout to paste into. - + ウィジェットを貼り付ã‘ã§ãã¾ã›ã‚“。Designer ã¯è²¼ã‚Šä»˜ã‘å…ˆã¨ãªã‚‹ãƒ¬ã‚¤ã‚¢ã‚¦ãƒˆã‚’æŒãŸãªã„コンテナを見ã¤ã‘られã¾ã›ã‚“。 - Break the layout of the container you want to paste into, select this container and then paste again. - + 貼り付ã‘å…ˆã¨ãªã‚‹ã‚³ãƒ³ãƒ†ãƒŠã®ãƒ¬ã‚¤ã‚¢ã‚¦ãƒˆã‚’破棄ã—ã¦ã€æ”¹ã‚ã¦ãã®ã‚³ãƒ³ãƒ†ãƒŠã‚’é¸æŠžã—ã¦è²¼ã‚Šä»˜ã‘ã¦ãã ã•ã„。 - Raise widgets - + ウィジェットをå‰é¢ã«ç§»å‹• - Lower widgets - + ウィジェットを後方ã«ç§»å‹• - Select Ancestor - + Ancestor ã‚’é¸æŠž - A QMainWindow-based form does not contain a central widget. - + QMainWindow ベースã®ãƒ•ã‚©ãƒ¼ãƒ ã«ã‚»ãƒ³ãƒˆãƒ©ãƒ«ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆãŒå«ã¾ã‚Œã¦ã„ã¾ã›ã‚“。 qdesigner_internal::FormWindowBase - Delete 削除 - Delete '%1' - '%1' を削除 + '%1' を削除 qdesigner_internal::FormWindowManager - Cu&t 切りå–ã‚Š(&T) - Cuts the selected widgets and puts them on the clipboard é¸æŠžã•ã‚ŒãŸã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã‚’切りå–ã£ã¦ã‚¯ãƒªãƒƒãƒ—ボードã«å‡ºåŠ› - &Copy コピー(&C) - Copies the selected widgets to the clipboard é¸æŠžã•ã‚ŒãŸã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã‚’クリップボードã«ã‚³ãƒ”ー - &Paste 貼り付ã‘(&P) - Pastes the clipboard's contents クリップボードã®ä¸­èº«ã‚’ペースト - &Delete 削除(&D) - Deletes the selected widgets é¸æŠžã—ãŸã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã‚’削除 - Select &All ã™ã¹ã¦ã‚’é¸æŠž(&A) - Selects all widgets ã™ã¹ã¦ã®ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã‚’é¸æŠž - Bring to &Front å‰é¢ã¸ç§»å‹•(&F) - - Raises the selected widgets é¸æŠžã—ãŸã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã‚’å‰ã¸ç§»å‹• - Send to &Back 背é¢ã¸ç§»å‹•(&B) - - Lowers the selected widgets é¸æŠžã—ãŸã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã‚’後ã¸ç§»å‹• - Adjust &Size サイズ調整(&S) - Adjusts the size of the selected widget é¸æŠžã•ã‚ŒãŸã‚¦ã‚£ã‚¸ã‚£ãƒˆã®ã‚µã‚¤ã‚ºã‚’調整 - Lay Out &Horizontally æ°´å¹³ã«ä¸¦ã¹ã‚‹(&H) - Lays out the selected widgets horizontally é¸æŠžã—ãŸã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã‚’æ°´å¹³ã«ä¸¦ã¹ã‚‹ - Lay Out &Vertically åž‚ç›´ã«ä¸¦ã¹ã‚‹(&V) - Lays out the selected widgets vertically é¸æŠžã—ãŸã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã‚’åž‚ç›´ã«ä¸¦ã¹ã‚‹ - Lay Out in a &Form Layout - + フォームレイアウトã§ä¸¦ã¹ã‚‹(&F) - Lays out the selected widgets in a form layout - + é¸æŠžã—ãŸã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã‚’フォームレイアウトã«é…ç½® - Lay Out in a &Grid æ ¼å­çŠ¶ã«ä¸¦ã¹ã‚‹(&G) - Lays out the selected widgets in a grid é¸æŠžã—ãŸã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã‚’æ ¼å­çŠ¶ã«ä¸¦ã¹ã‚‹ - Lay Out Horizontally in S&plitter æ°´å¹³ã«ã‚¹ãƒ—リッタã®ä¸­ã«ä¸¦ã¹ã‚‹(&P) - Lays out the selected widgets horizontally in a splitter é¸æŠžã•ã‚ŒãŸã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã‚’スプリッタã®ä¸­ã§æ°´å¹³æ–¹å‘ã«é…ç½® - Lay Out Vertically in Sp&litter åž‚ç›´ã«ã‚¹ãƒ—リッタã®ä¸­ã«ä¸¦ã¹ã‚‹(&L) - Lays out the selected widgets vertically in a splitter é¸æŠžã•ã‚ŒãŸã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã‚’スプリッタã®ä¸­ã§åž‚ç›´æ–¹å‘ã«é…ç½® - &Break Layout レイアウトを破棄(&B) - Breaks the selected layout é¸æŠžã•ã‚ŒãŸãƒ¬ã‚¤ã‚¢ã‚¦ãƒˆã‚’破棄 - Si&mplify Grid Layout - + æ ¼å­çŠ¶ã®ãƒ¬ã‚¤ã‚¢ã‚¦ãƒˆã‚’æ­£è¦åŒ–ã™ã‚‹(&M) - &Preview... - + プレビュー(&P)... - Preview current form - + ç¾åœ¨ã®ãƒ•ã‚©ãƒ¼ãƒ ã‚’プレビュー - Form &Settings... - フォームã®è¨­å®š(&S)... + フォームã®è¨­å®š(&S)... - Break Layout レイアウトを破棄ã™ã‚‹ - Adjust Size サイズ調整 - Could not create form preview Title of warning message box - + フォームãŒãƒ—レビューã§ãã¾ã›ã‚“ - Form Settings - %1 - フォーム設定 - %1 + フォーム設定 - %1 - Removes empty columns and rows - + 空ã®åˆ—ã¨è¡Œã‚’削除 qdesigner_internal::FormWindowSettings - None - + ãªã— - Device Profile: %1 - - - - - qdesigner_internal::GraphicsPropertyEditor - - <no icon> - <アイコンãªã—> - - - <no pixmap> - <ピックスマップãªã—> - - - ... - ... + デãƒã‚¤ã‚¹ãƒ—ロファイル: %1 qdesigner_internal::GridPanel - Form フォーム - Grid グリッド - Visible グリッドを表示 - Grid &X X軸ã®ã‚°ãƒªãƒƒãƒ‰é–“éš”(&X) - Snap 補正 - Reset リセット - Grid &Y Y軸ã®ã‚°ãƒªãƒƒãƒ‰é–“éš”(&Y) @@ -6087,7 +4182,6 @@ and then paste again. qdesigner_internal::GroupBoxTaskMenu - Change title... タイトルを変更... @@ -6095,180 +4189,153 @@ and then paste again. qdesigner_internal::HtmlTextEdit - Insert HTML entity - + HTML エンティティを挿入 qdesigner_internal::IconSelector - The pixmap file '%1' cannot be read. - + ピクスマップファイル '%1' を読ã‚ã¾ã›ã‚“。 - The file '%1' does not appear to be a valid pixmap file: %2 - + ファイル '%1' ã¯ç„¡åŠ¹ãªç”»åƒãƒ•ã‚¡ã‚¤ãƒ«ã§ã™: %2 - The file '%1' could not be read: %2 - + ファイル '%1' ã¯èª­ã‚ã¾ã›ã‚“ã§ã—ãŸ: %2 - Choose a Pixmap - + ピクスマップã®é¸æŠž - Pixmap Read Error - + ピクスマップã®èª­ã¿è¾¼ã¿ã‚¨ãƒ©ãƒ¼ - ... - ... + ... - Normal Off - + 通常 オフ - Normal On - + 通常 オン - Disabled Off - + 無効化 オフ - Disabled On - + 無効化 オン - Active Off - + アクティブ オフ - Active On - + アクティブ オン - Selected Off - + é¸æŠžæ¸ˆã¿ オフ - Selected On - + é¸æŠžæ¸ˆã¿ オン - Choose Resource... - + リソースをé¸æŠž... - Choose File... - + ファイルをé¸æŠž... - Reset - リセット + リセット - Reset All - + ã™ã¹ã¦ãƒªã‚»ãƒƒãƒˆ qdesigner_internal::ItemListEditor - Properties &<< - + プロパティ &<< - - Properties &>> - + プロパティ &>> - Items List - アイテム一覧 + アイテム一覧 - New Item - æ–°ã—ã„アイテム + æ–°ã—ã„アイテム - &New - æ–°è¦(&N) + æ–°è¦(&N) - Delete Item - アイテムを削除 + アイテムを削除 - &Delete - 削除(&D) + 削除(&D) - Move Item Up - ã“ã®ã‚¢ã‚¤ãƒ†ãƒ ã‚’上㸠+ ã“ã®ã‚¢ã‚¤ãƒ†ãƒ ã‚’上㸠- U - U + U - Move Item Down - ã“ã®ã‚¢ã‚¤ãƒ†ãƒ ã‚’下㸠+ ã“ã®ã‚¢ã‚¤ãƒ†ãƒ ã‚’下㸠- D - D + D qdesigner_internal::LabelTaskMenu - Change rich text... リッãƒãƒ†ã‚­ã‚¹ãƒˆã‚’変更... - Change plain text... プレインテキストを変更... + qdesigner_internal::LanguageResourceDialog + + Choose Resource + リソースをé¸æŠž + + + qdesigner_internal::LineEditTaskMenu - Change text... テキストを変更... @@ -6276,90 +4343,25 @@ and then paste again. qdesigner_internal::ListWidgetEditor - Edit List Widget リストウィジェットを編集 - Edit Combobox コンボボックスを編集 - New Item æ–°ã—ã„アイテム - - Dialog - ダイアログ - - - Items List - アイテム一覧 - - - Move Item Down - ã“ã®ã‚¢ã‚¤ãƒ†ãƒ ã‚’下㸠- - - D - D - - - &Pixmap - ピックスマップ(&P) - - - Set Item Pixmap - ã“ã®ã‚¢ã‚¤ãƒ†ãƒ ã®ãƒ”ックスマップを設定 - - - ... - ... - - - Reset Item Pixmap - ã“ã®ã‚¢ã‚¤ãƒ†ãƒ ã®ãƒ”ックスマップをリセット - - - &Text - テキスト(&T) - - - Set Item Text - ã“ã®ã‚¢ã‚¤ãƒ†ãƒ ã®ãƒ†ã‚­ã‚¹ãƒˆã‚’設定 - - - Move Item Up - ã“ã®ã‚¢ã‚¤ãƒ†ãƒ ã‚’上㸠- - - U - U - - - &New Item - æ–°ã—ã„アイテム(&N) - - - Delete Item - アイテムを削除 - - - &Delete Item - アイテムを削除(&D) - qdesigner_internal::ListWidgetTaskMenu - Edit Items... アイテムを編集... - Change List Contents リストã®å†…容を変更 @@ -6367,81 +4369,67 @@ and then paste again. qdesigner_internal::MdiContainerWidgetTaskMenu - Next Subwindow - + 次ã®ã‚µãƒ–ウィンドウ - Previous Subwindow - + å‰ã®ã‚µãƒ–ウィンドウ - Tile - + タイル表示 - Cascade - + カスケード表示 qdesigner_internal::MenuTaskMenu - Remove - 消去 + 削除 qdesigner_internal::MorphMenu - Morph into - + ä»–ã®ã‚¯ãƒ©ã‚¹ã¸å¤‰æ›´ qdesigner_internal::NewActionDialog - New Action... æ–°ã—ã„アクション... - &Text: テキスト(&T): - Shortcut: - + ショートカット: - Checkable: - + ãƒã‚§ãƒƒã‚¯å¯: - ToolTip: - + ツールãƒãƒƒãƒ—: - ... - ... + ... - &Icon: アイコン(&I): - Object &name: オブジェクトå(&N): @@ -6449,163 +4437,133 @@ and then paste again. qdesigner_internal::NewDynamicPropertyDialog - Set Property Name プロパティåを設定 - The current object already has a property named '%1'. Please select another, unique one. - ç¾åœ¨ã®ã‚ªãƒ–ジェクトã«ã¯ã€ã™ã§ã« '%1' ã¨ã„ã†åå‰ã®ãƒ—ロパティãŒå­˜åœ¨ã—ã¾ã™ã€‚ + ç¾åœ¨ã®ã‚ªãƒ–ジェクトã«ã¯ã€æ—¢ã« '%1' ã¨ã„ã†åå‰ã®ãƒ—ロパティãŒå­˜åœ¨ã—ã¾ã™ã€‚ 別ã®ãƒ¦ãƒ‹ãƒ¼ã‚¯ãªåå‰ã‚’é¸ã‚“ã§ãã ã•ã„。 - The '_q_' prefix is reserved for Qt library. -Please select another name. - '_q_' ã¨ã„ã†ãƒ—リフィックス㯠Qt ライブラリã®ãŸã‚ã«äºˆç´„ã•ã‚Œã¦ã„ã¾ã™ã€‚ -別ã®åå‰ã‚’é¸ã‚“ã§ãã ã•ã„。 - - - Create Dynamic Property ãƒ€ã‚¤ãƒŠãƒŸãƒƒã‚¯ãƒ—ãƒ­ãƒ‘ãƒ†ã‚£ã‚’ä½œæˆ - Property Name プロパティå - Property Type プロパティ型 - The '_q_' prefix is reserved for the Qt library. Please select another name. - + å‰ç½®è©ž '_q_' 㯠Qt ライブラリã®ãŸã‚ã«äºˆç´„ã•ã‚Œã¦ã„ã¾ã™ã€‚ +別ã®åå‰ã‚’é¸ã‚“ã§ãã ã•ã„。 - horizontalSpacer - + 横方å‘ã®ã‚¹ãƒšãƒ¼ã‚µãƒ¼ qdesigner_internal::NewFormWidget - Default size - + デフォルトã®ã‚µã‚¤ã‚º - QVGA portrait (240x320) - + QVGA ãƒãƒ¼ãƒˆãƒ¬ã‚¤ãƒˆ (240×320) - QVGA landscape (320x240) - + QVGA ランドスケープ (320×240) - VGA portrait (480x640) - + VGA ãƒãƒ¼ãƒˆãƒ¬ã‚¤ãƒˆ (480×640) - VGA landscape (640x480) - + VGA ランドスケープ (640×480) - Widgets New Form Dialog Categories - + ウィジェット - Custom Widgets - カスタムウィジェット + カスタムウィジェット - None - + ãªã— - Error loading form - フォームã®ãƒ­ãƒ¼ãƒ‰ã‚¨ãƒ©ãƒ¼ + フォームã®ãƒ­ãƒ¼ãƒ‰ã‚¨ãƒ©ãƒ¼ + + + Unable to open the form template file '%1': %2 + フォームã®ãƒ†ãƒ³ãƒ—レートファイル '%1' をオープンã§ãã¾ã›ã‚“: %2 - Internal error: No template selected. - + 内部エラー: テンプレートãŒé¸æŠžã•ã‚Œã¦ã„ã¾ã›ã‚“。 - 0 - 0 + 0 - Choose a template for a preview - プレビューã®ãŸã‚テンプレートをé¸æŠž + プレビュー用ã®ãƒ†ãƒ³ãƒ—レートをé¸æŠž - Embedded Design - + デザインプロファイル - Device: - + デãƒã‚¤ã‚¹: - Screen Size: - + ç”»é¢ã‚µã‚¤ã‚º: qdesigner_internal::NewPromotedClassPanel - Add 追加 - New Promoted Class æ–°ã—ã„格上ã’ã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ - Base class name: ベースクラスå: - Promoted class name: 格上ã’ã•ã‚ŒãŸã‚¯ãƒ©ã‚¹å: - Header file: ヘッダファイル: - Global include グローãƒãƒ«ã«ã‚¤ãƒ³ã‚¯ãƒ«ãƒ¼ãƒ‰ã™ã‚‹ - Reset リセット @@ -6613,120 +4571,76 @@ Please select another name. qdesigner_internal::ObjectInspector - Object - オブジェクト - - - Class - クラス - - - <noname> - <åå‰ãªã—> - - - separator - セパレータ + Change Current Page + ç¾åœ¨ã®ãƒšãƒ¼ã‚¸ã‚’変更 - &Find in Text... - - - - - qdesigner_internal::ObjectInspector::ObjectInspectorPrivate - - - Change Current Page - + テキストを検索(&F)... qdesigner_internal::OrderDialog - Index %1 (%2) インデックス %1 (%2) - %1 %2 - + %1 %2 - Change Page Order ページã®é †åºã‚’変更 - Page Order ページã®é †åº - Up - 上㸠- - - Down - 下㸠- - - Move page up - + ã“ã®ãƒšãƒ¼ã‚¸ã‚’上㸠- Move page down - + ã“ã®ãƒšãƒ¼ã‚¸ã‚’下㸠qdesigner_internal::PaletteEditor - Edit Palette パレットを編集 - Tune Palette パレットを調整 - Show Details - å…¨ã¦ã®ãƒ‘レットを設定 + ã™ã¹ã¦ã®ãƒ‘レットを設定 - Compute Details アクティブパレットを設定 - Quick 簡易設定 - Preview プレビュー - Disabled 無効化 - Inactive éžã‚¢ã‚¯ãƒ†ã‚£ãƒ– - Active アクティブ @@ -6734,7 +4648,6 @@ Please select another name. qdesigner_internal::PaletteEditorButton - Change Palette パレットを変更 @@ -6742,22 +4655,18 @@ Please select another name. qdesigner_internal::PaletteModel - Color Role 色役割 - Active アクティブ - Inactive éžã‚¢ã‚¯ãƒ†ã‚£ãƒ– - Disabled 無効化 @@ -6765,202 +4674,193 @@ Please select another name. qdesigner_internal::PixmapEditor - Copy Path - + パスをコピー - Paste Path - + パスを貼り付㑠- Choose Resource... - + リソースをé¸æŠž... - Choose File... - + ファイルをé¸æŠž... - - ... - ... + ... qdesigner_internal::PlainTextEditorDialog - Edit text - テキストを編集 + テキストを編集 qdesigner_internal::PluginDialog - Components コンãƒãƒ¼ãƒãƒ³ãƒˆ - Plugin Information プラグイン情報 - Refresh リフレッシュ - Scan for newly installed custom widget plugins. æ–°ã—ãインストールã•ã‚ŒãŸã‚«ã‚¹ã‚¿ãƒ ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆãƒ—ラグインをスキャンã—ã¾ã™ã€‚ - Qt Designer couldn't find any plugins プラグインã¯è¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ã§ã—㟠- Qt Designer found the following plugins 以下ã®ãƒ—ラグインãŒè¦‹ã¤ã‹ã‚Šã¾ã—㟠- New custom widget plugins have been found. æ–°ã—ã„カスタムウィジェットã®ãƒ—ラグインãŒè¦‹ã¤ã‹ã‚Šã¾ã—ãŸã€‚ - - TextLabel - テキストラベル - - - 1 - 1 - qdesigner_internal::PreviewActionGroup - %1 Style - %1 スタイル + %1 スタイル - qdesigner_internal::PreviewConfigurationWidget::PreviewConfigurationWidgetPrivate + qdesigner_internal::PreviewConfigurationWidget + + Default + デフォルト + + + None + ãªã— + + + Browse... + å‚ç…§... + - Load Custom Device Skin - + カスタムデãƒã‚¤ã‚¹ã‚¹ã‚­ãƒ³ã®ãƒ­ãƒ¼ãƒ‰ - All QVFB Skins (*.%1) - + ã™ã¹ã¦ã® QVFB スキン (*.%1) - %1 - Duplicate Skin - + %1 - é‡è¤‡ã—ãŸã‚¹ã‚­ãƒ³ - The skin '%1' already exists. - + スキン '%1' ã¯æ—¢ã«å­˜åœ¨ã—ã¾ã™ã€‚ - %1 - Error - %1 - エラー + %1 - エラー - %1 is not a valid skin directory: %2 - + %1 ã¯ç„¡åŠ¹ãªã‚¹ã‚­ãƒ³ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ã™: +%2 qdesigner_internal::PreviewDeviceSkin - + &Portrait + ãƒãƒ¼ãƒˆãƒ¬ã‚¤ãƒˆ(&P) + + + Landscape (&CCW) + Rotate form preview counter-clockwise + ランドスケープ (&CCW) + + + &Landscape (CW) + Rotate form preview clockwise + ランドスケープ(&L) (CW) + + &Close - é–‰ã˜ã‚‹(&C) + é–‰ã˜ã‚‹(&C) qdesigner_internal::PreviewManager - %1 - [Preview] - %1 - [プレビュー] + %1 - [プレビュー] + + + qdesigner_internal::PreviewMdiArea - %1 Style - %1 スタイル + The moose in the noose +ate the goose who was loose. + Palette editor background + åŠä¸»ãŒå±é¢¨ã«ä¸Šæ‰‹ã« +åŠä¸»ã®çµµã‚’æã„ãŸã€‚ qdesigner_internal::PreviewWidget - Preview Window プレビューウィンドウ - LineEdit 行編集 - ComboBox コンボボックス - PushButton プッシュボタン - ButtonGroup2 ボタングループ2 - CheckBox1 ãƒã‚§ãƒƒã‚¯ãƒœãƒƒã‚¯ã‚¹1 - CheckBox2 ãƒã‚§ãƒƒã‚¯ãƒœãƒƒã‚¯ã‚¹2 - ButtonGroup ボタングループ - RadioButton1 ラジオボタン1 - RadioButton2 ラジオボタン2 - RadioButton3 ラジオボタン3 @@ -6968,22 +4868,18 @@ Please select another name. qdesigner_internal::PromotionModel - Name åå‰ - Header file ヘッダファイル - Global include グローãƒãƒ«ã«ã‚¤ãƒ³ã‚¯ãƒ«ãƒ¼ãƒ‰ã™ã‚‹ - Usage 使ã„æ–¹ @@ -6991,184 +4887,120 @@ Please select another name. qdesigner_internal::PromotionTaskMenu - Promoted widgets... 格上ã’ã•ã‚ŒãŸã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆ... - Promote to ... 格上ã’先を指定... - Promote to 格上ã’å…ˆ - Demote to %1 %1 ã¸æ ¼ä¸‹ã’ - Change signals/slots... - + シグナル/スロットを変更... qdesigner_internal::PropertyEditor - Add Dynamic Property... ダイナミックプロパティを追加... - Remove Dynamic Property ダイナミックプロパティを削除 - Sorting - + ソート - Color Groups - + カラーグループ - Tree View - + ツリー表示 - Drop Down Button View - + ドロップダウンボタン表示 - Configure Property Editor - + プロパティエディタã®è¨­å®š - Object: %1 Class: %2 - + オブジェクト: %1 +クラス: %2 - String... - + 文字列... - Bool... - + ブーリアン... - Other... - + ãã®ä»–... qdesigner_internal::PropertyLineEdit - Insert line break 改行を挿入 - qdesigner_internal::QCoreApplication - - The base class %1 is invalid. - ベースクラス %1 ã¯ç„¡åŠ¹ã§ã™ã€‚ - - - The class %1 already exists. - %1 ã¨ã„ã†ã‚¯ãƒ©ã‚¹ã¯ã™ã§ã«å­˜åœ¨ã—ã¾ã™ã€‚ - - - Promoted Widgets - 格上ã’ã•ã‚ŒãŸã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆ - - - The class %1 cannot be removed - %1 ã¨ã„ã†ã‚¯ãƒ©ã‚¹ã‚’削除ã§ãã¾ã›ã‚“ - - - The class %1 cannot be removed because it is still referenced. - %1 ã¨ã„ã†ã‚¯ãƒ©ã‚¹ã¯ã€å‚ç…§ã•ã‚Œã¦ã„ã‚‹ã®ã§ã€å‰Šé™¤ã§ãã¾ã›ã‚“。 - - - The class %1 cannot be renamed - %1 ã¨ã„ã†ã‚¯ãƒ©ã‚¹ã‚’リãƒãƒ¼ãƒ ã§ãã¾ã›ã‚“ - - - The class %1 cannot be renamed to an empty name. - %1 ã¨ã„ã†ã‚¯ãƒ©ã‚¹ã‚’空ã®åå‰ã«ãƒªãƒãƒ¼ãƒ ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。 - - - There is already a class named %1. - %1 ã¨ã„ã†ã‚¯ãƒ©ã‚¹ã¯å­˜åœ¨ã—ã¾ã™ã€‚ - - - Cannot set an empty include file. - 空ã®ã‚¤ãƒ³ã‚¯ãƒ«ãƒ¼ãƒ‰ãƒ•ã‚¡ã‚¤ãƒ«ã‚’設定ã§ãã¾ã›ã‚“。 - - - qdesigner_internal::QDesignerPromotionDialog - Promoted Widgets 格上ã’ã•ã‚ŒãŸã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆ - Promoted Classes 格上ã’ã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ - Promote 格上㒠- %1 - Error %1 - エラー - Change signals/slots... - + シグナル/スロットを変更... qdesigner_internal::QDesignerResource - Loading qrc file qrc ファイルをロードã—ã¦ã„ã¾ã™ - The specified qrc file <p><b>%1</b></p><p>could not be found. Do you want to update the file location?</p> 指定ã•ã‚ŒãŸ qrc ファイル <p><b>%1</b></p><p>ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。ファイルã®ç½®ã場所を変更ã—ãŸã„ã§ã™ã‹?</p> - New location for %1 %1 ã®æ–°ã—ã„場所 - Resource files (*.qrc) リソースファイル (*.qrc) @@ -7176,876 +5008,283 @@ Class: %2 qdesigner_internal::QDesignerTaskMenu - Change objectName... - オブジェクトåを変更... + オブジェクトåを変更... - Change toolTip... - ツールãƒãƒƒãƒ—を変更... + ツールãƒãƒƒãƒ—を変更... - Change whatsThis... - ヒントを変更... + ヒントを変更... - Change styleSheet... - スタイルシートを変更... + スタイルシートを変更... - Create Menu Bar - メニューãƒãƒ¼ã‚’ä½œæˆ + メニューãƒãƒ¼ã‚’ä½œæˆ - Add Tool Bar - ツールãƒãƒ¼ã‚’追加 + ツールãƒãƒ¼ã‚’追加 - Create Status Bar - ステータスãƒãƒ¼ã‚’ä½œæˆ + ステータスãƒãƒ¼ã‚’ä½œæˆ - Remove Status Bar - ステータスãƒãƒ¼ã‚’消去 + ステータスãƒãƒ¼ã‚’削除 - Change script... - スクリプトを変更... + スクリプトを変更... - Go to slot... - + スロットã¸ç§»å‹•... - Edit ToolTip - + ツールãƒãƒƒãƒ—を編集 - Edit WhatsThis - + ヒントを編集 - no signals available - + シグナルãŒã‚ã‚Šã¾ã›ã‚“ - Set size constraint on %n widget(s) - - + + %n 個ã®ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã§é™ç•Œã‚µã‚¤ã‚ºã‚’設定 - Change signals/slots... - + シグナル/スロットを変更... - Size Constraints - + é™ç•Œã‚µã‚¤ã‚º - Set Minimum Width - + å¹…ã®æœ€å°å€¤ã‚’設定 - Set Minimum Height - + 高ã•ã®æœ€å°å€¤ã‚’設定 - Set Minimum Size - + サイズã®æœ€å°å€¤ã‚’設定 - Set Maximum Width - + å¹…ã®æœ€å¤§å€¤ã‚’設定 - Set Maximum Height - + 高ã•ã®æœ€å¤§å€¤ã‚’設定 - Set Maximum Size - - - - - qdesigner_internal::QDesignerWidgetBox - - - - Unexpected element <%1> - - - - - A parse error occurred at line %1, column %2 of the XML code specified for the widget %3: %4 -%5 - ウィジェット %3 ã®ãŸã‚ã«æŒ‡å®šã•ã‚ŒãŸ XML コード㮠%1 行目㮠%2 カラム目ã§ãƒ‘ースエラーãŒç™ºç”Ÿã—ã¾ã—ãŸ: %4 -%5 - - - - The XML code specified for the widget %1 does not contain any widget elements. -%2 - - - - - qdesigner_internal::QObject - - The icon specified by %1 could not be opened: %2 - %1 ã§æŒ‡å®šã•ã‚ŒãŸã‚¢ã‚¤ã‚³ãƒ³ã‚’オープンã§ãã¾ã›ã‚“ã§ã—ãŸ: %2 - - - The widgetbox could not load the file %1. - ウィジェットボックス㯠%1 ã¨ã„ã†ãƒ•ã‚¡ã‚¤ãƒ«ã‚’ロードã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ - - - The widgetbox could not parse the file %1. An error occurred at line %2: %3 - ウィジェットボックスã¯ã€%1 ã¨ã„ã†ãƒ•ã‚¡ã‚¤ãƒ«ã‚’パースã§ãã¾ã›ã‚“。%2 行目ã§ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: %3 - - - The file %1 does not appear to be a widgetbox file. - %1 ã¨ã„ã†ãƒ•ã‚¡ã‚¤ãƒ«ã¯ã€ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆãƒœãƒƒã‚¯ã‚¹ã®ãƒ•ã‚¡ã‚¤ãƒ«ã§ã¯ãªã„よã†ã§ã™ã€‚ - - - An error occurred while parsing the file %1: %2 is not a valid child of the root element. - %1 ã¨ã„ã†ãƒ•ã‚¡ã‚¤ãƒ«ã®ãƒ‘ース中ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: %2 ã¯ãƒ«ãƒ¼ãƒˆã‚¨ãƒ¬ãƒ¡ãƒ³ãƒˆã®æœ‰åŠ¹ãªå­ä¾›ã§ã¯ã‚ã‚Šã¾ã›ã‚“。 - - - The class attribute for the class %1 does not match the class name %2. - %1 ã¨ã„ã†ã‚¯ãƒ©ã‚¹ã®ã‚¯ãƒ©ã‚¹å±žæ€§ã¯ %2 ã¨ã„ã†ã‚¯ãƒ©ã‚¹åã¨ä¸€è‡´ã—ã¾ã›ã‚“。 - - - The class attribute for the class %1 is missing. - %1 ã¨ã„ã†ã‚¯ãƒ©ã‚¹ã®ã‚¯ãƒ©ã‚¹å±žæ€§ãŒã‚ã‚Šã¾ã›ã‚“。 - - - The style %1 could not be loaded. - %1 ã¨ã„ã†ã‚¹ã‚¿ã‚¤ãƒ«ã‚’ロードã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ - - - The preview failed to build. - プレビューã®ãƒ“ルドã«å¤±æ•—ã—ã¾ã—ãŸã€‚ - - - %1 - [Preview] - %1 - [プレビュー] - - - Designer - Designer - - - Change script - スクリプトを変更 - - - A custom widget plugin whose class name (%1) matches that of an existing class has been found. - クラスå (%1) ãŒæ—¢å­˜ã®ã‚¯ãƒ©ã‚¹ã¨åŒã˜ã§ã‚るカスタムウィジェットプラグインãŒè¦‹ã¤ã‹ã‚Šã¾ã—ãŸã€‚ - - - The custom widget factory registered for widgets of class %1 returned 0. - %1 ã¨ã„ã†ã‚¯ãƒ©ã‚¹ã®ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã®ãŸã‚ã«ç™»éŒ²ã•ã‚ŒãŸã‚«ã‚¹ã‚¿ãƒ ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆãƒ•ã‚¡ã‚¯ãƒˆãƒªãƒ¼ãŒ 0 ã‚’è¿”ã—ã¾ã—ãŸã€‚ - - - A class name mismatch occurred when creating a widget using the custom widget factory registered for widgets of class %1. It returned a widget of class %2. - %1 ã¨ã„ã†ã‚¯ãƒ©ã‚¹ã®ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã®ãŸã‚ã«ç™»éŒ²ã•ã‚ŒãŸã‚«ã‚¹ã‚¿ãƒ ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆãƒ•ã‚¡ã‚¯ãƒˆãƒªãƒ¼ã‚’使ã£ã¦ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã‚’作æˆã—ã¦ã„ã‚‹ã¨ãã«ã€ã‚¯ãƒ©ã‚¹åã®ãƒŸã‚¹ãƒžãƒƒãƒãŒç™ºç”Ÿã—ã¾ã—ãŸã€‚%2 ã¨ã„ã†ã‚¯ãƒ©ã‚¹ã®ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã‚’è¿”ã—ã¾ã—ãŸã€‚ - - - - qdesigner_internal::QPropertyEditorModel - - <noname> - <åå‰ãªã—> - - - Property - プロパティ - - - Value - 値 + サイズã®æœ€å¤§å€¤ã‚’設定 - qdesigner_internal::QtBrushDialog - - Edit Brush - ブラシを編集 - - - - qdesigner_internal::QtBrushEditor - - New Brush - æ–°ã—ã„ブラシ - - - Gradient - グラデーション - - - Texture - テクスãƒãƒ£ - - - Color Pattern - カラーパターン - - - Rename F2 - åå‰ã®å¤‰æ›´ F2 - - - Form - フォーム - - - Edit... - 編集... - - - Edit Gradient - グラデーションを編集 - - - Gradient... - グラデーション... - - - Edit Color Pattern - カラーパターンを編集 - - - Color Pattern... - カラーパターン... - - - Edit Texture - テクスãƒãƒ£ã‚’編集 - - - Texture... - テクスãƒãƒ£... - - - Remove From Custom - カスタムカラーã‹ã‚‰é™¤ã - - - Add To Custom - カスタムカラーã«è¿½åŠ  - - - Apply Custom - カスタムカラーã«é©ç”¨ - - - Apply - é©ç”¨ - - - - qdesigner_internal::QtBrushPatternDialog - - Edit Color Pattern - カラーパターンを編集 - - - - qdesigner_internal::QtBrushPatternEditor - - Hue - 色相 - - - Saturation - 彩度 - - - Value - 明度 - - - Red - 赤 - - - Green - ç·‘ - - - Blue - é’ - - - No Brush - é€æ˜Ž - - - Solid - å¡—ã‚Šã¤ã¶ã— - - - Dense 1 - 密度 1 - - - Dense 2 - 密度 2 - - - Dense 3 - 密度 3 - - - Dense 4 - 密度 4 - - - Dense 5 - 密度 5 - - - Dense 6 - 密度 6 - - - Dense 7 - 密度 7 - - - Horizontal - 横 - - - Vertical - 縦 - - - Cross - æ ¼å­ - - - Backward Diagonal - 左下ã‹ã‚‰å³ä¸Šã®æ–œç·š - - - Forward Diagonal - 左上ã‹ã‚‰å³ä¸‹ã¸ã®æ–œç·š - - - Crossing Diagonal - 交差ã™ã‚‹æ–œç·š - - - Form - フォーム - - - Pattern - パターン - - - Alpha - アルファ - - - Color - 色 - - - Preview - プレビュー - - - HSV - HSV - - - RGB - RGB - - - - qdesigner_internal::QtGradientDialog - - Edit Gradient - グラデーションを編集 - - - - qdesigner_internal::QtGradientEditor - - - Linear - 線状 - - - - Radial - 放射状 - - - - Conical - 円éŒçŠ¶ - - - - Pad - 区切りã®è‰²ã§è£œå…… - - - - Repeat - グラデーションã®ç¹°ã‚Šè¿”ã— - - - - Reflect - グラデーションã®åå°„ - - - Form - フォーム - - - Start X - 始点㮠X 座標 - - - Start Y - 始点㮠Y 座標 - - - Final X - 終点㮠X 座標 - - - Final Y - 終点㮠Y 座標 - - - Spread - 広ãŒã‚Šæ–¹ - - - Central Y - 中心㮠Y 座標 - - - Focal X - 焦点㮠X 座標 - - - Focal Y - 焦点㮠Y 座標 - - - Radius - åŠå¾„ - - - Central X - 中心㮠X 座標 - - - Angle - 角度 - - - Type - グラデーションã®ã‚¿ã‚¤ãƒ— - - - - qdesigner_internal::QtGradientStopsController - - - H - - - - - S - - - - - V - - - - - - Hue - 色相 - - - - Sat - - - - - Val - - - - - Saturation - 彩度 - - - - Value - - - - - R - R - - - - G - - - - - B - - - - - Red - 赤 - - - - Green - ç·‘ - - - - Blue - é’ - - - - qdesigner_internal::QtGradientStopsEditor - - Hue - 色相 - - - Saturation - 彩度 - - - Value - 明度 - - - Red - 赤 - - - Green - ç·‘ - - - Blue - é’ - - - Form - フォーム - - - % - % - - - Position - ä½ç½® - - - Zoom - ズーム - - - Color - 色 - - - Zoom All - ã™ã¹ã¦ã‚ºãƒ¼ãƒ  - - - Alpha - アルファ - - - Zoom Out - ç¸®å° - - - Zoom In - 拡大 - - - HSV - HSV - - - RGB - RGB - - - - qdesigner_internal::QtGradientStopsWidget - - New Stop - æ–°ã—ã„終点 - - - Delete - 削除 - - - Select All - ã™ã¹ã¦ã‚’é¸æŠž - + qdesigner_internal::QDesignerWidgetBox - Zoom In - 拡大 + Unexpected element <%1> + 予期ã›ã¬è¦ç´  <%1> - Zoom Out - ç¸®å° + A parse error occurred at line %1, column %2 of the XML code specified for the widget %3: %4 +%5 + ウィジェット %3 ã®ãŸã‚ã«æŒ‡å®šã•ã‚ŒãŸ XML コード㮠%1 行目㮠%2 カラム目ã§ãƒ‘ースエラーãŒç™ºç”Ÿã—ã¾ã—ãŸ: %4 +%5 - Zoom All - ã™ã¹ã¦ã‚ºãƒ¼ãƒ  + The XML code specified for the widget %1 does not contain any widget elements. +%2 + ウィジェット %1 を定義ã™ã‚‹ XML ã®ã‚³ãƒ¼ãƒ‰ã«ã©ã®ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã®è¦ç´ ã‚‚ã‚ã‚Šã¾ã›ã‚“。 +%2 - - - qdesigner_internal::ResourceEditor - <no resource files> - <リソースファイルãªã—> + An error has been encountered at line %1 of %2: %3 + %2 ã® %1 行目ã§ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: %3 - Open file - ファイルをオープン + Unexpected element <%1> encountered when parsing for <widget> or <ui> + <widget> ã‚‚ã—ã㯠<ui> ã®ãƒ‘ース中ã«äºˆæœŸã›ã¬è¦ç´  <%1> ãŒç¾ã‚Œã¾ã—㟠- All files (*) - ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ«(*) + Unexpected end of file encountered when parsing widgets. + ウィジェットã®ãƒ‘ース中ã«äºˆæœŸã›ãšãƒ•ã‚¡ã‚¤ãƒ«ãŒé€”中ã§çµ‚了ã—ã¾ã—ãŸã€‚ - Resource Editor - リソースエディタ + A widget element could not be found. + ウィジェットè¦ç´ ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。 + + + qdesigner_internal::QtGradientStopsController - Resource Editor: %1 - リソースエディタ: %1 + H + H - New... - æ–°è¦... + S + S - Open... - é–‹ã... + V + V - Untitled - タイトルãªã— + Hue + 色相 - Save resource file - リソースファイルをä¿å­˜ + Sat + 彩度 - Resource files (*.qrc) - リソースファイル (*.qrc) + Val + 明度 - New resource file - æ–°ã—ã„リソースファイル + Saturation + 彩度 - Open resource file - リソースファイルを開ã + Value + 明度 - Resource editor - リソースエディタ + R + R - Current Resource: - ç¾åœ¨ã®ãƒªã‚½ãƒ¼ã‚¹: + G + G - ... - ... + B + B - + - + + Red + 赤 - - - - + Green + ç·‘ - &Add Files... - ファイルを追加(&A)... + Blue + é’ qdesigner_internal::RichTextEditorDialog - Edit text テキストを編集 - &OK OK(&O) - &Cancel キャンセル(&C) - Rich Text - + リッãƒãƒ†ã‚­ã‚¹ãƒˆ - Source - + ソース qdesigner_internal::RichTextEditorToolBar - Insert &Image - + ç”»åƒã‚’挿入(&I) - Bold ボールド - CTRL+B CTRL+B - Italic イタリック - CTRL+I Ctrl+I - Underline 下線 - CTRL+U CTRL+U - Left Align - + 左端æƒãˆ - Center - + 中央æƒãˆ - Right Align - + å³ç«¯æƒãˆ - Justify - + 両端æƒãˆ - Superscript - + 上付ã文字 - Subscript - + 下付ã文字 - Insert &Link - - - - Color - 色 + リンクを挿入(&L) qdesigner_internal::ScriptDialog - Edit script スクリプトを編集 - <html>Enter a Qt Script snippet to be executed while loading the form.<br>The widget and its children are accessible via the variables <i>widget</i> and <i>childWidgets</i>, respectively. <html>フォームをロードã—ã¦ã„ã‚‹ã¨ãã«å®Ÿè¡Œã™ã‚‹ Qt スクリプトã®æ–­ç‰‡ã‚’入力ã—ã¦ãã ã•ã„。<br>ウィジェットã¨ãã®å­ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã¯ã€ãã‚Œãžã‚Œ <i>widget</i>ã€<i>childWidgets</i> ã¨ã„ã†å¤‰æ•°ã§ã‚¢ã‚¯ã‚»ã‚¹ã§ãã¾ã™ã€‚ - Syntax error 構文エラー @@ -8053,51 +5292,36 @@ Class: %2 qdesigner_internal::ScriptErrorDialog - Script errors スクリプトã®ã‚¨ãƒ©ãƒ¼ - qdesigner_internal::Sentinel - - New Tool Bar - æ–°ã—ã„ツールãƒãƒ¼ - - - qdesigner_internal::SignalSlotDialog - There is already a slot with the signature '%1'. - + ã‚·ã‚°ãƒã‚¤ãƒãƒ£ãŒ '%1' ã§ã‚るスロットã¯æ—¢ã«å­˜åœ¨ã—ã¾ã™ã€‚ - There is already a signal with the signature '%1'. - + ã‚·ã‚°ãƒã‚¤ãƒãƒ£ãŒ '%1' ã§ã‚るシグナルã¯æ—¢ã«å­˜åœ¨ã—ã¾ã™ã€‚ - %1 - Duplicate Signature - + %1 - é‡è¤‡ã—ãŸã‚·ã‚°ãƒã‚¤ãƒãƒ£ - - Signals/Slots of %1 - + %1 ã®ã‚·ã‚°ãƒŠãƒ«/スロット qdesigner_internal::SignalSlotEditorPlugin - Edit Signals/Slots シグナル/スロットを編集 - F4 F4 @@ -8105,7 +5329,6 @@ Class: %2 qdesigner_internal::SignalSlotEditorTool - Edit Signals/Slots シグナル/スロットを編集 @@ -8113,114 +5336,74 @@ Class: %2 qdesigner_internal::StatusBarTaskMenu - Remove - 消去 + 削除 qdesigner_internal::StringListEditorButton - Change StringList - 文字列リストを変更 - - - Change String List - + 文字列ã®ãƒªã‚¹ãƒˆã‚’変更 qdesigner_internal::StyleSheetEditorDialog - Edit Style Sheet スタイルシートを変更 - - Valid Style Sheet 有効ãªã‚¹ã‚¿ã‚¤ãƒ«ã‚·ãƒ¼ãƒˆ - Add Color... - + 色を追加... - Add Font... - + フォントを追加... - Invalid Style Sheet - 無効ãªã‚¹ã‚¿ã‚¤ãƒ«ã‚·ãƒ¼ãƒˆ + 無効ãªã‚¹ã‚¿ã‚¤ãƒ«ã‚·ãƒ¼ãƒˆ - Add Resource... - + リソースを追加... - Add Gradient... - - - - - qdesigner_internal::StyledButton - - All Pixmaps ( - å…¨ã¦ã®ãƒ”ックスマップ ( - - - %1-Pixmaps (%2) - - %1-ピックスマップ(%2) - - - All Files (*.*) - ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ«(*.*) - - - Open Image - イメージを開ã + グラデーションを追加... qdesigner_internal::TabOrderEditor - Start from Here - + ã“ã®ç•ªå·ã‹ã‚‰è¨­å®š - Restart - + 1番ã‹ã‚‰è¨­å®š - Tab Order List... - + タブ順ã®ãƒªã‚¹ãƒˆ... - Tab Order List - + タブ順ã®ãƒªã‚¹ãƒˆ - Tab Order - + タブ順 qdesigner_internal::TabOrderEditorPlugin - Edit Tab Order タブ順を編集 @@ -8228,7 +5411,6 @@ Class: %2 qdesigner_internal::TabOrderEditorTool - Edit Tab Order タブ順を編集 @@ -8236,168 +5418,45 @@ Class: %2 qdesigner_internal::TableWidgetEditor - New Column æ–°ã—ã„列 - New Row æ–°ã—ã„è¡Œ - &Columns - + 列(&C) - &Rows - + è¡Œ(&R) - Properties &<< - + プロパティ &<< - - Properties &>> - + プロパティ &>> - Edit Table Widget テーブルウィジェットを編集 - &Items - - - - Rows - è¡Œ - - - Move Row Down - ã“ã®è¡Œã‚’下㸠- - - D - D + アイテム(&I) - Move Row Up - ã“ã®è¡Œã‚’上㸠- - - U - U - - - Table Rows - テーブルã®è¡Œ - - - New - æ–°è¦ - - - Rename Row - è¡Œã®åå‰ã‚’変更 - - - Rename - åå‰ã®å¤‰æ›´ - - - Delete Row - 行を削除 - - - Delete - 削除 - - - Pixmap - ピックスマップ - - - Set Row Pixmap - ã“ã®è¡Œã®ãƒ”ックスマップを設定 - - - ... - ... - - - Reset Row Pixmap - ã“ã®è¡Œã®ãƒ”ックスマップをリセット - - - Table Items テーブルã®ã‚¢ã‚¤ãƒ†ãƒ  - - &Text - テキスト(&T) - - - Set Item Text - ã“ã®ã‚¢ã‚¤ãƒ†ãƒ ã®ãƒ†ã‚­ã‚¹ãƒˆã‚’設定 - - - Reset Item Pixmap - ã“ã®ã‚¢ã‚¤ãƒ†ãƒ ã®ãƒ”ックスマップをリセット - - - Set Item Pixmap - ã“ã®ã‚¢ã‚¤ãƒ†ãƒ ã®ãƒ”ックスマップを設定 - - - &Pixmap - ピックスマップ(&P) - - - Columns - 列 - - - Rename Column - 列ã®åå‰ã‚’変更 - - - Delete Column - 列を削除 - - - Move Column Up - ã“ã®åˆ—を上㸠- - - Move Column Down - ã“ã®åˆ—を下㸠- - - Table Columns - テーブルã®åˆ— - - - Set Column Pixmap - ã“ã®åˆ—ã®ãƒ”ックスマップを設定 - - - Reset Column Pixmap - ã“ã®åˆ—ã®ãƒ”ックスマップをリセット - qdesigner_internal::TableWidgetTaskMenu - Edit Items... アイテムを編集... @@ -8405,321 +5464,185 @@ Class: %2 qdesigner_internal::TemplateOptionsWidget - Pick a directory to save templates in - テンプレートをä¿å­˜ã™ã‚‹ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’é¸æŠžã—ã¦ãã ã•ã„ + テンプレートをä¿å­˜ã™ã‚‹ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’é¸æŠžã—ã¦ãã ã•ã„ - Form - フォーム + フォーム - Additional Template Paths - 追加ã®ãƒ†ãƒ³ãƒ—レートパス + 追加ã®ãƒ†ãƒ³ãƒ—レートパス - ... - ... + ... qdesigner_internal::TextEditTaskMenu - Edit HTML - + HTML を編集 - Change HTML... HTML を変更... - Edit Text - + テキストを編集 - Change Plain Text... - + プレインテキストを変更... qdesigner_internal::TextEditor - Choose Resource... - + リソースをé¸æŠž... - Choose File... - + ファイルをé¸æŠž... - Choose a File - + ファイルをé¸æŠž - ... - ... + ... qdesigner_internal::ToolBarEventFilter - Insert Separator セパレータを挿入 - Remove action '%1' - アクション '%1' を消去 + アクション '%1' を削除 - Remove Toolbar '%1' - ツールãƒãƒ¼ '%1' を消去 + ツールãƒãƒ¼ '%1' を削除 - Insert Separator before '%1' - + '%1' ã®å‰ã«ã‚»ãƒ‘レータを挿入 - Append Separator - - - - - qdesigner_internal::ToolBarTaskMenu - - Customize... - カスタマイズ... + セパレータを追加 qdesigner_internal::TreeWidgetEditor - &Columns - + 列(&C) - Per column properties - + å„列毎ã®ãƒ—ロパティ - Common properties - + 共通ã™ã‚‹ãƒ—ロパティ - - New Item æ–°ã—ã„アイテム - Properties &<< - + プロパティ &<< - - Properties &>> - + プロパティ &>> - New Sub Item - æ–°ã—ã„サブアイテム - - - New Column æ–°ã—ã„列 - Edit Tree Widget ツリーウィジェットを編集 - &Items - + アイテム(&I) - Tree Items ツリーã®ã‚¢ã‚¤ãƒ†ãƒ  - &Pixmap - ピックスマップ(&P) - - - Set Item Pixmap - ã“ã®ã‚¢ã‚¤ãƒ†ãƒ ã®ãƒ”ックスマップを設定 - - - ... - ... - - - Reset Item Pixmap - ã“ã®ã‚¢ã‚¤ãƒ†ãƒ ã®ãƒ”ックスマップをリセット - - - &Text - テキスト(&T) - - - Set Item Text - ã“ã®ã‚¢ã‚¤ãƒ†ãƒ ã®ãƒ†ã‚­ã‚¹ãƒˆã‚’設定 - - - &New Item - æ–°ã—ã„アイテム(&N) - - - - New Subitem æ–°ã—ã„サブアイテム - New &Subitem æ–°ã—ã„サブアイテム(&S) - Delete Item アイテムを削除 - &Delete Item - アイテムを削除(&D) - - - &New - æ–°è¦(&N) + æ–°è¦(&N) - &Delete - 削除(&D) + 削除(&D) - Move Item Left (before Parent Item) ã“ã®ã‚¢ã‚¤ãƒ†ãƒ ã‚’å·¦ã¸ï¼ˆè¦ªã‚¢ã‚¤ãƒ†ãƒ ã®å‰ã«ï¼‰ - L L - Move Item Right (as a First Subitem of the Next Sibling Item) ã“ã®ã‚¢ã‚¤ãƒ†ãƒ ã‚’å³ã¸ï¼ˆã™ã後ã®å…„弟アイテムã®æœ€åˆã®ã‚µãƒ–アイテム) - R R - Move Item Up ã“ã®ã‚¢ã‚¤ãƒ†ãƒ ã‚’上㸠- U U - Move Item Down ã“ã®ã‚¢ã‚¤ãƒ†ãƒ ã‚’下㸠- D D - Columns - 列 - - - Pixmap - ピックスマップ - - - Set Column Pixmap - ã“ã®åˆ—ã®ãƒ”ックスマップを設定 - - - Reset Column Pixmap - ã“ã®åˆ—ã®ãƒ”ックスマップをリセット - - - New - æ–°è¦ - - - Rename Column - 列ã®åå‰ã‚’変更 - - - Rename - åå‰ã®å¤‰æ›´ - - - Delete Column - 列を削除 - - - Delete - 削除 - - - Move Column Up - ã“ã®åˆ—を上㸠- - - Move Column Down - ã“ã®åˆ—を下㸠- - - Tree Columns - ツリーã®åˆ— - - - 1 - 1 + 1 qdesigner_internal::TreeWidgetTaskMenu - Edit Items... アイテムを編集... @@ -8727,93 +5650,55 @@ Class: %2 qdesigner_internal::WidgetBox - Warning: Widget creation failed in the widget box. This could be caused by invalid custom widget XML. - - - - - qdesigner_internal::WidgetBoxTreeView - - Scratchpad - スクラッãƒãƒ‘ッド - - - Custom Widgets - カスタムウィジェット - - - Expand all - ã™ã¹ã¦å±•é–‹ã™ã‚‹ - - - Collapse all - ã™ã¹ã¦æŠ˜ã‚ŠãŸãŸã‚€ - - - Remove - 消去 - - - Edit name - åå‰ã‚’編集 + 警告: ウィジェットボックス内ã«ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã‚’作æˆã§ãã¾ã›ã‚“。カスタムウィジェット㮠XML ãŒç„¡åŠ¹ã§ã™ã€‚ qdesigner_internal::WidgetBoxTreeWidget - Scratchpad - スクラッãƒãƒ‘ッド + スクラッãƒãƒ‘ッド - Custom Widgets - カスタムウィジェット + カスタムウィジェット - Expand all - ã™ã¹ã¦å±•é–‹ã™ã‚‹ + ã™ã¹ã¦å±•é–‹ã™ã‚‹ - Collapse all - ã™ã¹ã¦æŠ˜ã‚ŠãŸãŸã‚€ + ã™ã¹ã¦æŠ˜ã‚ŠãŸãŸã‚€ - List View - + リスト表示 - Icon View - + アイコン表示 - Remove - 消去 + 削除 - Edit name - åå‰ã‚’編集 + åå‰ã‚’編集 qdesigner_internal::WidgetDataBase - A custom widget plugin whose class name (%1) matches that of an existing class has been found. - クラスå (%1) ãŒæ—¢å­˜ã®ã‚¯ãƒ©ã‚¹ã¨åŒã˜ã§ã‚るカスタムウィジェットプラグインãŒè¦‹ã¤ã‹ã‚Šã¾ã—ãŸã€‚ + クラスå (%1) ãŒæ—¢å­˜ã®ã‚¯ãƒ©ã‚¹ã¨åŒã˜ã§ã‚るカスタムウィジェットプラグインãŒè¦‹ã¤ã‹ã‚Šã¾ã—ãŸã€‚ qdesigner_internal::WidgetEditorTool - Edit Widgets ウィジェットを編集 @@ -8821,57 +5706,56 @@ Class: %2 qdesigner_internal::WidgetFactory - The custom widget factory registered for widgets of class %1 returned 0. - %1 ã¨ã„ã†ã‚¯ãƒ©ã‚¹ã®ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã®ãŸã‚ã«ç™»éŒ²ã•ã‚ŒãŸã‚«ã‚¹ã‚¿ãƒ ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆãƒ•ã‚¡ã‚¯ãƒˆãƒªãƒ¼ãŒ 0 ã‚’è¿”ã—ã¾ã—ãŸã€‚ + クラス %1 ã®ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆç”¨ã«ç™»éŒ²ã•ã‚ŒãŸã‚«ã‚¹ã‚¿ãƒ ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆãƒ•ã‚¡ã‚¯ãƒˆãƒªãƒ¼ãŒ 0 ã‚’è¿”ã—ã¾ã—ãŸã€‚ - A class name mismatch occurred when creating a widget using the custom widget factory registered for widgets of class %1. It returned a widget of class %2. - %1 ã¨ã„ã†ã‚¯ãƒ©ã‚¹ã®ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã®ãŸã‚ã«ç™»éŒ²ã•ã‚ŒãŸã‚«ã‚¹ã‚¿ãƒ ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆãƒ•ã‚¡ã‚¯ãƒˆãƒªãƒ¼ã‚’使ã£ã¦ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã‚’作æˆã—ã¦ã„ã‚‹ã¨ãã«ã€ã‚¯ãƒ©ã‚¹åã®ãƒŸã‚¹ãƒžãƒƒãƒãŒç™ºç”Ÿã—ã¾ã—ãŸã€‚%2 ã¨ã„ã†ã‚¯ãƒ©ã‚¹ã®ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã‚’è¿”ã—ã¾ã—ãŸã€‚ + クラス %1 ã®ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆç”¨ã«ç™»éŒ²ã•ã‚ŒãŸã‚«ã‚¹ã‚¿ãƒ ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆãƒ•ã‚¡ã‚¯ãƒˆãƒªãƒ¼ã‚’用ã„ã¦ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã‚’作æˆä¸­ã«ã€ã‚¯ãƒ©ã‚¹åã®ãƒŸã‚¹ãƒžãƒƒãƒãŒç™ºç”Ÿã—ã¾ã—ãŸã€‚%2 ã¨ã„ã†ã‚¯ãƒ©ã‚¹ã®ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã‚’è¿”ã—ã¾ã—ãŸã€‚ - %1 Widget %1 ウィジェット - The current page of the container '%1' (%2) could not be determined while creating a layout.This indicates an inconsistency in the ui-file, probably a layout being constructed on a container widget. - + コンテナ '%1' (%2) ã®ç¾åœ¨ã®ãƒšãƒ¼ã‚¸ã«ãƒ¬ã‚¤ã‚¢ã‚¦ãƒˆãŒä½œæˆã§ãã¾ã›ã‚“。UI ファイルã«çŸ›ç›¾ãŒç™ºç”Ÿã—ã¦ã„ã¾ã™ã€‚レイアウトãŒã‚³ãƒ³ãƒ†ãƒŠã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆä¸Šã«ä½œæˆã•ã‚Œã¦ã„ã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚ - Attempt to add a layout to a widget '%1' (%2) which already has an unmanaged layout of type %3. This indicates an inconsistency in the ui-file. - + ウィジェット '%1' (%2) ã«ãƒ¬ã‚¤ã‚¢ã‚¦ãƒˆã‚’追加ã§ãã¾ã›ã‚“。既㫠%3 åž‹ã®ãƒ¬ã‚¤ã‚¢ã‚¦ãƒˆãŒå­˜åœ¨ã—ã¾ã™ã€‚ +UI ファイルã«çŸ›ç›¾ãŒç™ºç”Ÿã—ã¦ã„ã¾ã™ã€‚ - Cannot create style '%1'. - + スタイル '%1' を作æˆã§ãã¾ã›ã‚“。 qdesigner_internal::WizardContainerWidgetTaskMenu - Next - + 進む - Back - + 戻る qdesigner_internal::ZoomMenu - %1 % Zoom factor - + %1 % + + + + qdesigner_internal::ZoomablePreviewDeviceSkin + + &Zoom + ズーム(&Z) diff --git a/translations/linguist_ja.ts b/translations/linguist_ja.ts index 8951c7a..abd32a0 100644 --- a/translations/linguist_ja.ts +++ b/translations/linguist_ja.ts @@ -2,24 +2,8 @@ - - - - (New Entry) - (æ–°ã—ã„é …ç›®) - - - - @default - - (New Phrase) - (æ–°ã—ã„フレーズ) - - - AboutDialog - Qt Linguist Qt Linguist @@ -27,209 +11,140 @@ BatchTranslationDialog - Batch translated %1 entries - %1 é …ç›®ãŒä¸€æ‹¬ç¿»è¨³ã•ã‚Œã¾ã—㟠- - - &Cancel キャンセル(&C) - Linguist batch translator Linguist ã®ä¸€æ‹¬ç¿»è¨³ - Searching, please wait... 検索ã—ã¦ã„ã¾ã™ã€ãŠå¾…ã¡ãã ã•ã„... - Batch Translation of '%1' - Qt Linguist '%1' ã®ä¸€æ‹¬ç¿»è¨³ - Qt Linguist - Batch translated %n entries %n é …ç›®ãŒä¸€æ‹¬ç¿»è¨³ã•ã‚Œã¾ã—㟠- Qt Linguist - Batch Translation Qt Linguist - 一括翻訳 - Options オプション - Set translated entries to finished 翻訳ã•ã‚ŒãŸé …目を完了ã«ã™ã‚‹ - Retranslate entries with existing translation 訳語ãŒã‚る項目をå†åº¦ç¿»è¨³ã™ã‚‹ - - Note that the modified entries will be reset to unfinished if 'Set translated entries to finished' above is unchecked. - 注æ„:'翻訳ã•ã‚ŒãŸé …目を完了ã«ã™ã‚‹'ã«ãƒã‚§ãƒƒã‚¯ãŒã¤ã„ã¦ã„ãªã„å ´åˆã€ç¿»è¨³ã•ã‚ŒãŸé …ç›®ã¯æœªå®Œäº†ã«ãªã‚Šã¾ã™. - - - Translate also finished entries 完了ã—ã¦ã„る項目も翻訳ã™ã‚‹ - Phrase book preference フレーズブックã®è¨­å®š - Move up 上ã«ç§»å‹• - Move down 下ã«ç§»å‹• - - The batch translator will search through the selected phrase books in the order given above. - 一括翻訳機能ã¯ã€ä¸Šè¨˜ã§é¸æŠžã•ã‚ŒãŸé †ã«ãƒ•ãƒ¬ãƒ¼ã‚ºãƒ–ックを検索ã—ã¾ã™ã€‚ - - - &Run 実行(&R) - Cancel キャンセル - - - ContextModel - - Context - コンテキスト - - Done - 完了 + Note that the modified entries will be reset to unfinished if 'Set translated entries to finished' above is unchecked + 注æ„:「翻訳ã•ã‚ŒãŸé …目を完了ã«ã™ã‚‹ã€ã«ãƒã‚§ãƒƒã‚¯ãŒã¤ã„ã¦ã„ãªã„å ´åˆã€ç¿»è¨³ã•ã‚ŒãŸé …ç›®ã¯æœªå®Œäº†ã«ãªã‚Šã¾ã™ - Items - 項目数 + The batch translator will search through the selected phrase books in the order given above + 一括翻訳機能ã¯ã€ä¸Šè¨˜ã§é¸æŠžã•ã‚ŒãŸé †ã«ãƒ•ãƒ¬ãƒ¼ã‚ºãƒ–ックを検索ã—ã¾ã™ DataModel - <qt>Duplicate messages found in '%1': <qt>'%1' ã«é‡è¤‡ã—ãŸãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒè¦‹ã¤ã‹ã‚Šã¾ã—ãŸ: - <p>[more duplicates omitted] <p>[ã•ã‚‰ã«é‡è¤‡ã—ã¦ã„る部分ã¯çœç•¥ã•ã‚Œã¾ã—ãŸ] - + <p>* ID: %1 + <p> *.ID: %1 + + <p>* Context: %1<br>* Source: %2 <p>* コンテキスト: %1<br>* ソーステキスト: %2 - <br>* Comment: %3 <br>* コメント: %3 - Linguist does not know the plural rules for '%1'. Will assume a single universal form. Linguist ã¯'%1'ã®è¤‡æ•°ã®ãƒ«ãƒ¼ãƒ«ã‚’知りã¾ã›ã‚“。 å˜ä¸€ã®å…±é€šå½¢å¼ã¨ã¿ãªã—ã¾ã™ã€‚ - Cannot create '%2': %1 '%2' を作æˆã§ãã¾ã›ã‚“: %1 - Universal Form å…±é€šå½¢å¼ - EditorPage - - Source text - ソーステキスト - - - Translation (%1) - 訳 (%1) - - - This area shows the source text. - ã“ã®é ˜åŸŸã¯ã‚½ãƒ¼ã‚¹ãƒ†ã‚­ã‚¹ãƒˆã‚’表示ã—ã¾ã™ã€‚ - - - This area shows a comment that may guide you, and the context in which the text occurs. - ã“ã®é ˜åŸŸã¯ã€æ‰‹åŠ©ã‘ã¨ãªã‚‹ã‚³ãƒ¡ãƒ³ãƒˆã¨ã€ãƒ†ã‚­ã‚¹ãƒˆãŒå‡ºã¦ãるコンテキストを表示ã—ã¾ã™ã€‚ - - - This is where you can enter or modify the translation of some source text. - ソーステキストã®è¨³ã‚’入力ã—ãŸã‚Šå¤‰æ›´ã—ãŸã‚Šã§ãã‚‹ã¨ã“ã‚ã§ã™ã€‚ - - - ErrorsView - Accelerator possibly superfluous in translation. 訳ã«ä½™åˆ†ãªã‚¢ã‚¯ã‚»ãƒ©ãƒ¬ãƒ¼ã‚¿ãŒã¤ã„ã¦ã„ã¾ã™ã€‚ - Accelerator possibly missing in translation. 訳ã«ã‚¢ã‚¯ã‚»ãƒ©ãƒ¬ãƒ¼ã‚¿ãŒæ¬ ã‘ã¦ã„ã¾ã™ã€‚ - Translation does not end with the same punctuation as the source text. 訳ãŒã‚½ãƒ¼ã‚¹ãƒ†ã‚­ã‚¹ãƒˆã¨åŒã˜å¥èª­ç‚¹ã§çµ‚ã‚ã£ã¦ã„ã¾ã›ã‚“。 - A phrase book suggestion for '%1' was ignored. '%1' ã«ã¤ã„ã¦ã®ãƒ•ãƒ¬ãƒ¼ã‚ºãƒ–ックã®ç¤ºå”†ã‚’無視ã—ã¦ã„ã¾ã™ã€‚ - Translation does not refer to the same place markers as in the source text. 訳語ã«ã¯ã‚½ãƒ¼ã‚¹ãƒ†ã‚­ã‚¹ãƒˆã¨åŒã˜æ•°ã® "%" ãŒã‚ã‚Šã¾ã›ã‚“。 - Translation does not contain the necessary %n place marker. - 訳語ã«å¿…è¦ãª %n 個ã®ãƒ—レースマーカー "%" ãŒã‚ã‚Šã¾ã›ã‚“。 + 訳語ã«å¿…è¦ãªãƒ—レースマーカー "%" ㌠%n 個足りã¾ã›ã‚“。 - Unknown error 未知ã®ã‚¨ãƒ©ãƒ¼ @@ -237,691 +152,473 @@ Will assume a single universal form. FindDialog - Cancel キャンセル - Click here to close this window. ã“ã®ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ã‚’é–‰ã˜ã‚‹ã«ã¯ã“ã“をクリックã—ã¾ã™ã€‚ - Find 検索 - &Find what: 検索ã™ã‚‹æ–‡å­—列(&F): - &Source texts ソーステキスト(&S) - &Translations 訳語(&T) - &Match case 大/å°æ–‡å­—ã®åŒºåˆ¥(&M) - &Comments コメント(&C) - Ignore &accelerators アクセラレータを無視(&A) - Click here to find the next occurrence of the text you typed in. 入力ã—ãŸãƒ†ã‚­ã‚¹ãƒˆãŒæ¬¡ã«å‡ºã¦ãる箇所を見ã¤ã‘ã‚‹ã«ã¯ã“ã“をクリックã—ã¾ã™ã€‚ - Comments - コメント - - - Comments and contexts are searched when checked. é¸æŠžã™ã‚‹ã¨ã‚³ãƒ¡ãƒ³ãƒˆã¨ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆãŒæ¤œç´¢ã•ã‚Œã¾ã™ã€‚ - Find Next 次を検索 - Find what: - 検索対象: - - - Match case - 大文字・å°æ–‡å­—ã®åŒºåˆ¥ - - - Options オプション - Qt Linguist - Qt Linguist - - - Source texts - ソーステキスト - - - Source texts are searched when checked. é¸æŠžã™ã‚‹ã¨ã‚½ãƒ¼ã‚¹ãƒ†ã‚­ã‚¹ãƒˆãŒæ¤œç´¢ã•ã‚Œã¾ã™ã€‚ - Texts such as 'TeX' and 'tex' are considered as different when checked. é¸æŠžã™ã‚‹ã¨ã€ãŸã¨ãˆã° 'TeX' 㨠'tex' ã¯ç•°ãªã‚‹ã‚‚ã®ã¨è¦‹ãªã•ã‚Œã¾ã™ã€‚ - This window allows you to search for some text in the translation source file. ã“ã®ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ã§ç¿»è¨³ã‚½ãƒ¼ã‚¹ãƒ•ã‚¡ã‚¤ãƒ«å†…ã®ãƒ†ã‚­ã‚¹ãƒˆã‚’検索ã§ãã¾ã™ã€‚ - Translations - 訳 - - - Translations are searched when checked. é¸æŠžã™ã‚‹ã¨è¨³ãŒæ¤œç´¢ã•ã‚Œã¾ã™ã€‚ - Type in the text to search for. 検索ã™ã‚‹ãƒ†ã‚­ã‚¹ãƒˆã‚’入力ã—ã¦ãã ã•ã„。 - Choose Edit|Find from the menu bar or press Ctrl+F to pop up the Find dialog - FormHolder + FormMultiWidget - Preview Form - フォームをプレビュー + Alt+Delete + translate, but don't change + Alt+Delete - - - FormatTextEdit - &Copy - コピー(&C) + Shift+Alt+Insert + translate, but don't change + Shift+Alt+Insert - Ctrl+C - Ctrl+C + Alt+Insert + translate, but don't change + Alt+Insert - Select &All - ã™ã¹ã¦ã‚’é¸æŠž(&A) + Confirmation - Qt Linguist + ç¢ºèª - Qt Linguist - Ctrl+A - Ctrl+A + Delete non-empty length variant? + 空ã§ã¯ãªã„å˜æ•°å½¢ãƒ»è¤‡æ•°å½¢ã‚’削除ã—ã¾ã™ã‹? LRelease - - Generated %n translation(s) (%1 finished and %2 unfinished) - + Dropped %n message(s) which had no ID. - %n 件ã®è¨³èªž (%1 件ãŒå®Œäº†ã€ %2 件ãŒæœªå®Œäº†) を生æˆã—ã¾ã—㟠- + ID ã®ãªã„ %n 件ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’無視ã—ã¾ã—ãŸã€‚ - - Ignored %n untranslated source text(s) - + Excess context/disambiguation dropped from %n message(s). - %n 件ã®æœªç¿»è¨³ã®ã‚½ãƒ¼ã‚¹ãƒ†ã‚­ã‚¹ãƒˆã‚’無視ã—ã¾ã—㟠- + ä¸è¦ãªæ–‡è„ˆã‚„ã‚ã„ã¾ã„ã•å›žé¿ã®ã‚³ãƒ¡ãƒ³ãƒˆã‚’ %n 件ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã§ç„¡è¦–ã—ã¾ã—ãŸã€‚ - - - LanguagesDialog - - File - ファイル + + Generated %n translation(s) (%1 finished and %2 unfinished) + + %n 件ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’翻訳ã—ã¾ã—ãŸ(完了 %1 件ã€æœªå®Œäº† %2 件) + + + + Ignored %n untranslated source text(s) + + %n 件ã®æœªç¿»è¨³ã®ã‚½ãƒ¼ã‚¹ãƒ†ã‚­ã‚¹ãƒˆã‚’無視ã—ã¾ã—㟠+ MainWindow - About Qt Qt ã«ã¤ã„㦠- About Qt Linguist Qt Linguist ã«ã¤ã„㦠- &Accelerators アクセラレータã®ç¢ºèª(&A) - Batch translate all entries using the information in the phrase books. フレーズブックã«ã‚る情報を用ã„ã¦ã€å…¨é …目を一括翻訳ã—ã¾ã™ã€‚ - &Batch Translation - 一括翻訳(&B) - - - &Begin from source - ソーステキストを元ã«ç¿»è¨³(&B) - - - &Close Phrase Book フレーズブックを閉ã˜ã‚‹(&C) - Close this window and exit. ã“ã®ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ã‚’é–‰ã˜ã¦çµ‚了ã—ã¾ã™ã€‚ - Continue the search where it was left. 残りã®éƒ¨åˆ†ã®æ¤œç´¢ã‚’続ã‘ã¾ã™ã€‚ - Copies the source text into the translation field. ソーステキストを訳ã®æ¬„ã¸ã‚³ãƒ”ーã—ã¾ã™ã€‚ - &Copy コピー(&C) - Copy the selected translation text to the clipboard and deletes it. é¸æŠžã•ã‚ŒãŸè¨³ã®ãƒ†ã‚­ã‚¹ãƒˆã‚’クリップボードã«ã‚³ãƒ”ーã—ã¦å‰Šé™¤ã—ã¾ã™ã€‚ - Copy the selected translation text to the clipboard. é¸æŠžã•ã‚ŒãŸè¨³ã®ãƒ†ã‚­ã‚¹ãƒˆã‚’クリップボードã«ã‚³ãƒ”ーã—ã¾ã™ã€‚ - Create a new phrase book. æ–°ã—ã„フレーズブックを作æˆã—ã¾ã™ã€‚ - Create a Qt message file suitable for released applications from the current message file. リリースã•ã‚ŒãŸã‚¢ãƒ—リケーションã«åˆã† Qt メッセージファイルをã€ç¾åœ¨ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãƒ•ã‚¡ã‚¤ãƒ«ã‹ã‚‰ä½œæˆã—ã¾ã™ã€‚ - - Create a Qt message file suitable for released applications from the current message file. The filename will automatically be determined from the name of the .ts file. - リリースã•ã‚ŒãŸã‚¢ãƒ—リケーションã«ãµã•ã‚ã—ã„ Qt メッセージファイルをç¾åœ¨ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãƒ•ã‚¡ã‚¤ãƒ«ã‹ã‚‰ä½œæˆã—ã¾ã™ã€‚ファイルåã¯ã€.ts ファイルã®åå‰ã‹ã‚‰è‡ªå‹•çš„ã«æ±ºã‚られã¾ã™ã€‚ - - - Ctrl+A Ctrl+A - Ctrl+B Ctrl+B - Ctrl+C Ctrl+C - Ctrl+F Ctrl+F - Ctrl+H Ctrl+H - Ctrl+K Ctrl+K - Ctrl+L - Ctrl+L - - - Ctrl+N Ctrl+N - Ctrl+O Ctrl+O - Ctrl+P Ctrl+P - Ctrl+Q Ctrl+Q - Open Read-O&nly... 読å–専用ã§é–‹ã(&N)... - &Save All å…¨ã¦ä¿å­˜(&S) - Ctrl+S Ctrl+S - Ctrl+Shift+K Ctrl+Shift+K - Ctrl+Shift+L - Ctrl+Shift+L - - - Ctrl+V Ctrl+V - Ctrl+X Ctrl+X - Ctrl+Y Ctrl+Y - Recently Opened &Files 最近使ã£ãŸãƒ•ã‚¡ã‚¤ãƒ«(&F) - Ctrl+Z Ctrl+Z - Cu&t 切りå–ã‚Š(&T) - &Display guesses 推測を表示(&D) - - Display information about the Qt toolkit by Trolltech. - Trolltech ã® Qt ツールキットã«ã¤ã„ã¦ã®æƒ…報を表示ã—ã¾ã™ã€‚ - - - &Done and Next 完了ã«ã—ã¦æ¬¡ã¸(&N) - &Edit 編集(&E) - - Edit 編集 - &Edit Phrase Book フレーズブックを編集(&E) - &Ending Punctuation 末尾ã®å¥èª­ç‚¹(&E) - Enter What's This? mode. ヒントモードã«å…¥ã‚Šã¾ã™ã€‚ - E&xit 終了(&X) - F1 F1 - F3 F3 - F5 F5 - &File ファイル(&F) - - File ファイル - &Find - 検索(&F)... - - - Find &Next 次を検索(&N) - Form Preview Tool フォームプレビューツール - - Help ヘルプ - &Help ヘルプ(&H) - MainWindow MainWindow - &Manual マニュアル(&M) - Marks this item as done and moves to the next unfinished item. - ã“ã®é …ç›®ã«å®Œäº†ã®ãƒžãƒ¼ã‚¯ã‚’ã¤ã‘ã€æ¬¡ã®æœªè¨³ã®é …ç›®ã¸ç§»å‹•ã—ã¾ã™ã€‚ - - - Moves to the next item. - 次ã®é …ç›®ã¸ç§»å‹•ã—ã¾ã™ã€‚ - - - Moves to the next unfinished item. - 次ã®æœªè¨³ã®é …ç›®ã¸ç§»å‹•ã—ã¾ã™ã€‚ - - - Moves to the previous item. - å‰ã®é …ç›®ã¸ç§»å‹•ã—ã¾ã™ã€‚ - - - Moves to the previous unfinished item. - å‰ã®æœªè¨³ã®é …ç›®ã¸ç§»å‹•ã—ã¾ã™ã€‚ - - - &New - æ–°è¦(&N) - - - &New Phrase Book - æ–°ã—ã„フレーズブック(&N) - - - Ne&xt 次ã¸(&X) - &Next Unfinished - 次ã®æœªè¨³ã¸(&N) - - - &Open - オープン(&O)... + 次ã®æœªå®Œäº†ã¸(&N) - Open a phrase book to assist translation. 翻訳ã®å‚考ã«ã™ã‚‹ãŸã‚ã«ãƒ•ãƒ¬ãƒ¼ã‚ºãƒ–ックを開ãã¾ã™ã€‚ - Open a Qt translation source file (TS file) for editing Qt 翻訳ソースファイル (TS ファイル) を編集用ã«é–‹ãã¾ã™ - &Open Phrase Book - フレーズブックを開ã(&O)... - - - Open/Refresh Form &Preview フォームプレビューを開ãï¼æ›´æ–°ã™ã‚‹(&P) - &Paste 貼り付ã‘(&P) - Paste the clipboard text into the translation. クリップボードã®ãƒ†ã‚­ã‚¹ãƒˆã‚’訳ã«è²¼ã‚Šä»˜ã‘ã¾ã™ã€‚ - &Phrase matches フレーズã®ä¸€è‡´(&P) - &Phrases フレーズ(&P) - Place &Marker Matches "%" ã®æ•°ã‚„æ•°å­—ã®ä¸€è‡´(&M) - P&rev å‰ã¸(&R) - &Prev Unfinished å‰ã®æœªè¨³ã¸(&P) - &Print - å°åˆ·(&P)... - - - Print a list of all the phrases in the current Qt translation source file. - ç¾åœ¨ã® Qt 翻訳ソースファイルã®å…¨ã¦ã®ãƒ•ãƒ¬ãƒ¼ã‚ºä¸€è¦§ã‚’å°åˆ·ã—ã¾ã™ã€‚ - - - &Print Phrase Book フレーズブックをå°åˆ·(&P) - Re&cently opened files - 最近開ã„ãŸãƒ•ã‚¡ã‚¤ãƒ«(&C) - - - &Redo ã‚„ã‚Šç›´ã™(&R) - Redo an undone editing operation performed on the translation. å–り消ã•ã‚ŒãŸç·¨é›†æ“作をやり直ã—ã¾ã™ã€‚ - &Release リリース(&R) - - - Release As... åå‰ã‚’付ã‘ã¦ãƒªãƒªãƒ¼ã‚¹... - Replace the translation on all entries that matches the search source text. 検索対象ã®ã‚½ãƒ¼ã‚¹ãƒ†ã‚­ã‚¹ãƒˆã«è©²å½“ã™ã‚‹å…¨é …ç›®ã®è¨³èªžã‚’ç½®æ›ã—ã¾ã™ã€‚ - &Revert Sorting - ソート順åºã‚’åˆæœŸçŠ¶æ…‹ã«(&R) - - - This is the application's main window. - Source text ソーステキスト - - Index インデックス - - Context コンテキスト - Items 項目数 - This panel lists the source contexts. ã“ã®ãƒ‘ãƒãƒ«ã§ã¯ã‚½ãƒ¼ã‚¹ã®ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆã‚’一覧表示ã—ã¦ã„ã¾ã™ã€‚ - Strings 文字列 - Phrases and guesses フレーズã¨æŽ¨æ¸¬ - Sources and Forms ソースã¨ãƒ•ã‚©ãƒ¼ãƒ  - Warnings 警告 - MOD status bar: file(s) modified MOD - Loading... ロードã—ã¦ã„ã¾ã™... - - Loading File - Qt Linguist ロードã—ã¦ã„ã¾ã™ - Qt Linguist - The file '%1' does not seem to be related to the currently open file(s) '%2'. Close the open file(s) first? @@ -930,7 +627,6 @@ Close the open file(s) first? å…ˆã«é–‹ã„ãŸãƒ•ã‚¡ã‚¤ãƒ«ã‚’é–‰ã˜ã¾ã™ã‹? - The file '%1' does not seem to be related to the file '%2' which is being loaded as well. Skip loading the first named file? @@ -939,873 +635,616 @@ Skip loading the first named file? ファイルã®ãƒ­ãƒ¼ãƒ‰ã‚’スキップã—ã¾ã™ã‹? - %n translation unit(s) loaded. %n 件ã®ç¿»è¨³é …目をロードã—ã¾ã—ãŸã€‚ - Related files (%1);; %1 ã«é–¢é€£ã—ãŸãƒ•ã‚¡ã‚¤ãƒ«;; - Open Translation Files 翻訳ファイルを開ã - - File saved. ファイルãŒä¿å­˜ã•ã‚Œã¾ã—ãŸã€‚ - - - + <center><img src=":/images/splash.png"/></img><p>%1</p></center><p>Qt Linguist is a tool for adding translations to Qt applications.</p><p>Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). + <center><img src=":/images/splash.png"/></img><p>%1</p></center><p>Qt Linguist ã¯ã€Qt アプリケーションã®ç¿»è¨³ã‚’è¡Œã†ãƒ„ールã§ã™ã€‚</p><p>Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). + + Release リリース - Qt message files for released applications (*.qm) All files (*) リリースã•ã‚ŒãŸã‚¢ãƒ—リケーション用㮠Qt メッセージファイル (*.qm) ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ« (*) - - File created. ファイルãŒä½œæˆã•ã‚Œã¾ã—ãŸã€‚ - - Printing... å°åˆ·ä¸­... - Context: %1 コンテキスト: %1 - finished 完了 - unresolved 未解決 - obsolete ã“ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã§ã¯ä½¿ã‚ã‚Œã¦ã„ãªã„ - - Printing... (page %1) å°åˆ·ä¸­... (%1 ページ) - - Printing completed å°åˆ·å®Œäº† - - Printing aborted å°åˆ·ä¸­æ­¢ - Search wrapped. 検索ãŒä¸€é€šã‚Šçµ‚ã‚ã‚Šã¾ã—ãŸã€‚ - - - - - - - - - - Qt Linguist Qt Linguist - - Cannot find the string '%1'. 文字列 '%1' ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。 - Translate - 翻訳 - - - Translated %n entries to '%1' - - %n 項目を '%1' ã«ç¿»è¨³ã—ã¾ã—㟠- - - - Search And Translate in '%1' - Qt Linguist '%1' 内ã§æ¤œç´¢ã—ã¦ç¿»è¨³ - Qt Linguist - - - Translate - Qt Linguist 翻訳 - Qt Linguist - Translated %n entry(s) %n é …ç›®ãŒç¿»è¨³æ¸ˆã¿ã§ã™ - No more occurrences of '%1'. Start over? '%1' ã¯ã€ã“れ以上見ã¤ã‹ã‚Šã¾ã›ã‚“。先頭ã«æˆ»ã‚Šã¾ã™ã‹? - Create New Phrase Book æ–°ã—ã„ãƒ•ãƒ¬ãƒ¼ã‚ºãƒ–ãƒƒã‚¯ã‚’ä½œæˆ - Qt phrase books (*.qph) All files (*) Qt フレーズブック (*.qph) å…¨ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ« (*) - Phrase book created. フレーズブックãŒä½œæˆã•ã‚Œã¾ã—ãŸã€‚ - Open Phrase Book フレーズブックを開ã - Qt phrase books (*.qph);;All files (*) Qt フレーズブック (*.qph);;ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ« (*) - %n phrase(s) loaded. %n é …ç›®ã®ãƒ•ãƒ¬ãƒ¼ã‚ºãŒãƒ­ãƒ¼ãƒ‰ã•ã‚Œã¾ã—ãŸã€‚ - - - Add to phrase book フレーズブックã«è¿½åŠ  - No appropriate phrasebook found. é©åˆ‡ãªãƒ•ãƒ¬ãƒ¼ã‚ºãƒ–ックãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。 - Adding entry to phrasebook %1 フレーズブック %1 ã«é …目を追加 - Select phrase book to add to 追加先ã®ãƒ•ãƒ¬ãƒ¼ã‚ºãƒ–ックをé¸æŠžã—ã¦ãã ã•ã„ - Unable to launch Qt Assistant (%1) Qt Assistant (%1) ã‚’èµ·å‹•ã§ãã¾ã›ã‚“ - Version %1 ãƒãƒ¼ã‚¸ãƒ§ãƒ³ %1 - Open Source Edition - オープンソース版 - - - This version of Qt Linguist is part of the Qt Open Source Edition, for use in the development of Open Source applications. Qt is a comprehensive C++ framework for cross-platform application development.<br/><br/>You need a commercial Qt license for development of proprietary (closed source) applications. Please see <tt>http://qt.nokia.com/company/model.html</tt> for an overview of Qt licensing. - ã“ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã® Qt Linguist ã¯ã€ オープンソースアプリケーションを開発ã™ã‚‹ãŸã‚ã® Qt オープンソース版ã®ä¸€éƒ¨ã§ã™ã€‚Qt ã¯ã€ã‚¯ãƒ­ã‚¹ãƒ—ラットフォームãªã‚¢ãƒ—リケーションを開発ã™ã‚‹ãŸã‚ã®åŒ…括的㪠C++ ã®ãƒ•ãƒ¬ãƒ¼ãƒ ãƒ¯ãƒ¼ã‚¯ã§ã™ã€‚<br/><br/>独å çš„ãªï¼ˆã‚½ãƒ¼ã‚¹ãŒéš ã•ã‚ŒãŸï¼‰ã‚¢ãƒ—リケーションを開発ã™ã‚‹ã«ã¯ã€Qt ã®å•†ç”¨ãƒ©ã‚¤ã‚»ãƒ³ã‚¹ãŒå¿…è¦ã§ã™ã€‚Qt ã®ãƒ©ã‚¤ã‚»ãƒ³ã‚¹ã®æ¦‚è¦ã«ã¤ã„ã¦ã¯ <tt>http://qt.nokia.com/company/model.html</tt> ã‚’ã”覧ãã ã•ã„。 - - - This program is licensed to you under the terms of the Qt Commercial License Agreement. For details, see the file LICENSE that came with this software distribution. - ã“ã®ãƒ—ログラムã¯ã€Qt 商用ライセンス契約書ã®å®šã‚ã‚‹æ¡ä»¶ã®ä¸‹ã§ã‚ãªãŸã®åˆ©ç”¨ãŒèªã‚られã¦ã„ã¾ã™ã€‚詳細ã¯ã€ã‚½ãƒ•ãƒˆã‚¦ã‚§ã‚¢ã¨ä¸€ç·’ã«é…布ã•ã‚Œã‚‹ LICENSE ファイルをå‚ç…§ã—ã¦ãã ã•ã„。 - - - - <center><img src=":/images/splash.png"/></img><p>%1</p></center><p>Qt Linguist is a tool for adding translations to Qt applications.</p><p>%2</p><p>Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).</p><p>The program is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.</p> - <center><img src=":/images/splash.png"/></img><p>%1</p></center><p>Qt Linguist ã¯ã€Qt アプリケーションã®ç¿»è¨³ã‚’è¡Œã†ãƒ„ールã§ã™ã€‚</p><p>%2</p><p>Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). å…¨ã¦ã®æ¨©åˆ©ã¯ä¿è­·ã•ã‚Œã¦ã„ã¾ã™ã€‚</p><p>ã“ã®ãƒ—ログラムã¯ã€ã€Œè¨­è¨ˆã€ã€ã€Œå¸‚場性ã€ãŠã‚ˆã³ã€Œç‰¹å®šã®ç›®çš„ã¸ã®é©åˆæ€§ã€ã‚‚å«ã‚€ã€ã‚らゆる種類ã®ã€Œä¿è¨¼ãŒãªãã€ã€ã€Œãã®ã¾ã¾ã§ã€æä¾›ã•ã‚Œã¾ã™ã€‚</p> - - - Do you want to save the modified files? 変更ã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã‚’ä¿å­˜ã—ã¾ã™ã‹? - Do you want to save '%1'? '%1' ã‚’ä¿å­˜ã—ã¾ã™ã‹? - Qt Linguist[*] Qt Linguist[*] - %1[*] - Qt Linguist %1[*] - Qt Linguist - - No untranslated translation units left. 未訳項目ã¯æ®‹ã£ã¦ã„ã¾ã›ã‚“。 - &Window ウィンドウ(&W) - Minimize 最å°åŒ– - Ctrl+M Ctrl+M - Display the manual for %1. %1 ã®ãƒžãƒ‹ãƒ¥ã‚¢ãƒ«ã‚’表示ã—ã¾ã™ã€‚ - Display information about %1. %1 ã«ã¤ã„ã¦ã®æƒ…報を表示ã—ã¾ã™ã€‚ - &Save '%1' '%1' ã‚’ä¿å­˜ã™ã‚‹(&S) - Save '%1' &As... '%1' ã‚’åå‰ã‚’付ã‘ã¦ä¿å­˜(&A)... - Release '%1' '%1' をリリース - Release '%1' As... '%1' ã‚’åå‰ã‚’付ã‘ã¦ãƒªãƒªãƒ¼ã‚¹... - &Close '%1' '%1' ã‚’é–‰ã˜ã‚‹(&C) - - &Save ä¿å­˜(&S) - - - Save &As... åå‰ã‚’付ã‘ã¦ä¿å­˜(&A)... - - &Close é–‰ã˜ã‚‹(&C) - Save All å…¨ã¦ä¿å­˜ - - &Release All å…¨ã¦ãƒªãƒªãƒ¼ã‚¹(&R) - Close All ã™ã¹ã¦é–‰ã˜ã‚‹ - Translation File &Settings for '%1'... '%1' ã®ç¿»è¨³ãƒ•ã‚¡ã‚¤ãƒ«ã®è¨­å®š(&S)... - &Batch Translation of '%1'... '%1' ã®ä¸€æ‹¬ç¿»è¨³(&B)... - Search And &Translate in '%1'... '%1' 内を検索ã—ã¦ç¿»è¨³(&T)... - Search And &Translate... 検索ã—ã¦è¨³èªžã‚’ç½®æ›(&T)... - Cannot read from phrase book '%1'. フレーズブック '%1' ã‹ã‚‰èª­ã¿å‡ºã›ã¾ã›ã‚“。 - Close this phrase book. ã“ã®ãƒ•ãƒ¬ãƒ¼ã‚ºãƒ–ックを閉ã˜ã¾ã™ã€‚ - Enables you to add, modify, or delete entries in this phrase book. ã“ã®ãƒ•ãƒ¬ãƒ¼ã‚ºãƒ–ックã§é …ç›®ã®è¿½åŠ ã€å¤‰æ›´ã€å‰Šé™¤ãŒã§ãã¾ã™ã€‚ - Print the entries in this phrase book. ã“ã®ãƒ•ãƒ¬ãƒ¼ã‚ºãƒ–ックã®é …目をå°åˆ·ã—ã¾ã™ã€‚ - Cannot create phrase book '%1'. フレーズブック '%1' を作æˆã§ãã¾ã›ã‚“。 - Do you want to save phrase book '%1'? フレーズブック '%1' ã‚’ä¿å­˜ã—ã¾ã™ã‹? - All ã™ã¹ã¦ - Save As... åå‰ã‚’付ã‘ã¦ä¿å­˜... - Save changes made to this Qt translation source file ã“ã® Qt 翻訳ソースファイルã«å¯¾ã—ã¦è¡Œã‚ã‚ŒãŸå¤‰æ›´ã‚’ä¿å­˜ã—ã¾ã™ã€‚ - Save changes made to this Qt translation source file into a new file. Qt ã®ç¿»è¨³ã‚½ãƒ¼ã‚¹ãƒ•ã‚¡ã‚¤ãƒ«ã§è¡Œã‚ã‚ŒãŸå¤‰æ›´ã‚’æ–°ã—ã„ファイルã«ä¿å­˜ã—ã¾ã™ã€‚ - &Search And Translate - 検索ã—ã¦è¨³èªžã‚’ç½®æ›(&S) - - - Search for some text in the translation source file. 翻訳ソースファイルã‹ã‚‰ãƒ†ã‚­ã‚¹ãƒˆã‚’検索ã—ã¾ã™ã€‚ - Select &All ã™ã¹ã¦ã‚’é¸æŠž(&A) - Select the whole translation text. 訳ã®ãƒ†ã‚­ã‚¹ãƒˆå…¨éƒ¨ã‚’é¸æŠžã—ã¾ã™ã€‚ - Set whether or not to display translation guesses. 訳ã®æŽ¨æ¸¬ã‚’表示ã™ã‚‹ã‹ã©ã†ã‹ã‚’設定ã—ã¾ã™ã€‚ - Set whether or not to display translation statistics. - 翻訳ã®çµ±è¨ˆã‚’表示ã—ã¾ã™ã€‚ - - - Shift+F1 Shift+F1 - Sort the items back in the same order as in the message file. é …ç›®ã®ã‚½ãƒ¼ãƒˆã®é †åºã‚’メッセージファイルã¨åŒã˜ã‚‚ã®ã«æˆ»ã—ã¾ã™ã€‚ - &Statistics 統計(&S) - - Toggle checking that phrase suggestions are used. - フレーズã®ç¤ºå”†ã‚’使ã†ã‹ã©ã†ã‹ã®ãƒã‚§ãƒƒã‚¯ã‚’切り替ãˆã¾ã™ã€‚ - - - Toggle validity checks of accelerators. - アクセラレータã®ãƒã‚§ãƒƒã‚¯ã‚’有効ã«ã™ã‚‹ã‹ã©ã†ã‹ã‚’切り替ãˆã¾ã™ã€‚ - - - Toggle validity checks of ending punctuation. - 末尾ã®å¥èª­ç‚¹ã®ãƒã‚§ãƒƒã‚¯ã‚’有効ã«ã™ã‚‹ã‹ã©ã†ã‹ã‚’切り替ãˆã¾ã™ã€‚ - - - Toggle validity checks of place markers. - "%" ã®æ•°ã‚„番å·ã®ãƒã‚§ãƒƒã‚¯ã‚’è¡Œã†ã‹ã©ã†ã‹ã‚’切り替ãˆã¾ã™ã€‚ - - - &Toolbars ツールãƒãƒ¼(&T) - Too&ls - ツール(&L) - - - - Translation 翻訳 - &Translation 翻訳(&T) - Translation File &Settings - 翻訳ファイルã®è¨­å®š(&S) - - - &Undo å…ƒã«æˆ»ã™(&U) - Undo the last editing operation performed on the translation. - 最後ã«è¡Œã£ãŸç·¨é›†æ“作をå–り消ã—ã¾ã™ã€‚ - - - - Validation 検証 - V&alidation 検証(&A) - &View 表示(&V) - Vie&ws 表示(&W) - &What's This? ヒント(&W) - What's This? ヒント - &Open... é–‹ã(&O)... - Save ä¿å­˜ - &Print... å°åˆ·(&P)... - Print a list of all the translation units in the current translation source file. ç¾åœ¨ã® Qt 翻訳ソースファイルã®å…¨ã¦ã®è¨³èªžã®ä¸€è¦§ã‚’å°åˆ·ã—ã¾ã™ã€‚ - Undo the last editing operation performed on the current translation. ç¾åœ¨ã®ç¿»è¨³ãƒ•ã‚¡ã‚¤ãƒ«ã§æœ€å¾Œã«è¡Œã£ãŸç·¨é›†æ“作をå–り消ã—ã¾ã™ã€‚ - &Find... 検索(&F)... - - Previous unfinished item. - å‰ã®æœªè¨³ã®é …ç›®ã¸ç§»å‹•ã—ã¾ã™ã€‚ - - - Move to the previous unfinished item. å‰ã®æœªå®Œäº†ã®é …ç›®ã¸ç§»å‹•ã—ã¾ã™ã€‚ - - Next unfinished item. - 次ã®æœªè¨³ã®é …ç›®ã¸ç§»å‹•ã—ã¾ã™ã€‚ - - - Move to the next unfinished item. 次ã®æœªå®Œäº†ã®é …ç›®ã¸ç§»å‹•ã—ã¾ã™ã€‚ - - Move to previous item. - å‰ã®é …ç›®ã¸ç§»å‹•ã—ã¾ã™ã€‚ - - - Move to the previous item. å‰ã®é …ç›®ã¸ç§»å‹•ã—ã¾ã™ã€‚ - - Next item. - 次ã®é …ç›®ã¸ç§»å‹•ã—ã¾ã™ã€‚ - - - Move to the next item. 次ã®é …ç›®ã¸ç§»å‹•ã—ã¾ã™ã€‚ - - Mark item as done and move to the next unfinished item. - ã“ã®é …ç›®ã«å®Œäº†ã®ãƒžãƒ¼ã‚¯ã‚’ã¤ã‘ã€æ¬¡ã®æœªå®Œäº†ã®é …ç›®ã¸ç§»å‹•ã—ã¾ã™ã€‚ - - - Mark this item as done and move to the next unfinished item. ã“ã®é …ç›®ã«å®Œäº†ã®ãƒžãƒ¼ã‚¯ã‚’ã¤ã‘ã€æ¬¡ã®æœªå®Œäº†ã®é …ç›®ã¸ç§»å‹•ã—ã¾ã™ã€‚ - Copy from source text ソーステキストã‹ã‚‰ã‚³ãƒ”ー - - Toggle the validity check of accelerators. - アクセラレータã®ãƒã‚§ãƒƒã‚¯ã‚’有効ã«ã™ã‚‹ã‹ã©ã†ã‹ã‚’切り替ãˆã¾ã™ã€‚ - - - Toggle the validity check of accelerators, i.e. whether the number of ampersands in the source and translation text is the same. If the check fails, a message is shown in the warnings window. ソーステキストã¨è¨³èªžã®ã‚¢ã‚¯ã‚»ãƒ©ãƒ¬ãƒ¼ã‚¿ã®å€‹æ•°ãŒåŒã˜ã‹å¦ã‹ã®ãƒã‚§ãƒƒã‚¯ã‚’有効ã«ã™ã‚‹ã‹ã©ã†ã‹ã‚’切り替ãˆã¾ã™ã€‚ãƒã‚§ãƒƒã‚¯ãŒç„¡åŠ¹ã«ãªã£ã¦ã„ã¦ã‚‚ã€è­¦å‘Šã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ã«ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã¯è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚ - - Toggle the validity check of ending punctuation. - 末尾ã®å¥èª­ç‚¹ã®ãƒã‚§ãƒƒã‚¯ã‚’有効ã«ã™ã‚‹ã‹ã©ã†ã‹ã‚’切り替ãˆã¾ã™ã€‚ - - - Toggle the validity check of ending punctuation. If the check fails, a message is shown in the warnings window. 末尾ã®å¥èª­ç‚¹ã®ãƒã‚§ãƒƒã‚¯ã‚’有効ã«ã™ã‚‹ã‹ã©ã†ã‹ã‚’切り替ãˆã¾ã™ã€‚ãƒã‚§ãƒƒã‚¯ãŒç„¡åŠ¹ã«ãªã£ã¦ã„ã¦ã‚‚ã€è­¦å‘Šã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ã«ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚ - Toggle checking that phrase suggestions are used. If the check fails, a message is shown in the warnings window. フレーズã®ç¤ºå”†ã‚’使ã†ã‹ã©ã†ã‹ã®ãƒã‚§ãƒƒã‚¯ã‚’切り替ãˆã¾ã™ã€‚ãƒã‚§ãƒƒã‚¯ãŒç„¡åŠ¹ã«ãªã£ã¦ã„ã¦ã‚‚ã€è­¦å‘Šã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ã«ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚ - - Toggle the validity check of place markers. - "%" ã®æ•°ã‚„番å·ã®ãƒã‚§ãƒƒã‚¯ã‚’è¡Œã†ã‹ã©ã†ã‹ã‚’切り替ãˆã¾ã™ã€‚ - - - Toggle the validity check of place markers, i.e. whether %1, %2, ... are used consistently in the source text and translation text. If the check fails, a message is shown in the warnings window. ソーステキストã¨è¨³èªžã®"%1"ã‚„"%2"ç­‰ã®ãƒ—レースマーカーã®æ•´åˆãŒå–ã‚Œã¦ã„ã‚‹ã‹å¦ã‹ã®ãƒã‚§ãƒƒã‚¯ã‚’è¡Œã†ã‹ã©ã†ã‹ã‚’切り替ãˆã¾ã™ã€‚ãƒã‚§ãƒƒã‚¯ãŒç„¡åŠ¹ã«ãªã£ã¦ã„ã¦ã‚‚ã€è­¦å‘Šã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ã«ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã¯è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚ - &New Phrase Book... æ–°ã—ã„フレーズブック(&N)... - &Open Phrase Book... フレーズブックを開ã(&O)... - &Reset Sorting ソート順åºã‚’リセット(&R) - Display translation statistics. 翻訳ã®çµ±è¨ˆã‚’表示ã—ã¾ã™ã€‚ - &Search And Translate... 検索ã—ã¦è¨³èªžã‚’ç½®æ›(&S)... - Close é–‰ã˜ã‚‹ - &Close All å…¨ã¦é–‰ã˜ã‚‹(&C) - Ctrl+W Ctrl+W - - &Batch Translation... 一括翻訳(&B)... - - Translation File &Settings... 翻訳ファイルã®è¨­å®š(&S)... - &Add to Phrase Book フレーズブックã«è¿½åŠ (&A) - Ctrl+T Ctrl+T - Ctrl+J Ctrl+J - Ctrl+Shift+J Ctrl+Shift+J - - - MessageEditor - backspace - ãƒãƒƒã‚¯ã‚¹ãƒšãƒ¼ã‚¹ + Previous unfinished item + å‰ã®æœªå®Œäº†ã®é …ç›® - bell - ベル + Next unfinished item + 次ã®æœªè¨³ã®é …ç›® - carriage return - 行頭復帰 + Move to previous item + å‰ã®é …ç›®ã¸ç§»å‹• - Guess - 推測 + Next item + 次ã®é …ç›® - Guess (%1) - 推測(%1) + Mark item as done and move to the next unfinished item + ã“ã®é …ç›®ã«å®Œäº†ã®ãƒžãƒ¼ã‚¯ã‚’ã¤ã‘ã€æ¬¡ã®æœªè¨³ã®é …ç›®ã¸ç§»å‹•ã—ã¾ã™ + + + Copies the source text into the translation field + ソーステキストを訳ã®æ¬„ã¸ã‚³ãƒ”ーã—ã¾ã™ + + + Toggle the validity check of accelerators + アクセラレータã®ãƒã‚§ãƒƒã‚¯ã‚’有効ã«ã™ã‚‹ã‹ã©ã†ã‹ã‚’切り替ãˆã¾ã™ + + + Toggle the validity check of ending punctuation + 末尾ã®å¥èª­ç‚¹ã®ãƒã‚§ãƒƒã‚¯ã‚’有効ã«ã™ã‚‹ã‹ã©ã†ã‹ã‚’切り替ãˆã¾ã™ + + + Toggle checking that phrase suggestions are used + フレーズã®ç¤ºå”†ã‚’使ã†ã‹ã©ã†ã‹ã®ãƒã‚§ãƒƒã‚¯ã‚’切り替ãˆã¾ã™ - new line - 改行 + Toggle the validity check of place markers + "%" ã®æ•°ã‚„番å·ã®ãƒã‚§ãƒƒã‚¯ã‚’è¡Œã†ã‹ã©ã†ã‹ã‚’切り替ãˆã¾ã™ - new page - 改ページ + Display information about the Qt toolkit by Nokia. + Nokia ã® Qt ツールキットã«ã¤ã„ã¦ã®æƒ…報を表示ã—ã¾ã™ã€‚ - Phrases - フレーズ + Create a Qt message file suitable for released applications from the current message file. The filename will automatically be determined from the name of the TS file. + リリースã•ã‚ŒãŸã‚¢ãƒ—リケーションã«ãµã•ã‚ã—ã„ Qt メッセージファイルをç¾åœ¨ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãƒ•ã‚¡ã‚¤ãƒ«ã‹ã‚‰ä½œæˆã—ã¾ã™ã€‚ファイルåã¯ã€TS ファイルã®åå‰ã‹ã‚‰è‡ªå‹•çš„ã«æ±ºã‚られã¾ã™ã€‚ - Phrases and guesses: - フレーズã¨æŽ¨æ¸¬: + Length Variants + å˜æ•°å½¢ãƒ»è¤‡æ•°å½¢ + + + MessageEditor - sp) - スペース) + + This is the right panel of the main window. + - tab - タブ + Russian + ロシア語 - German - German + ドイツ語 - Japanese - Japanese + 日本語 - French - French + フランス語 - Polish - Polish + ãƒãƒ¼ãƒ©ãƒ³ãƒ‰èªž - Chinese - Chinese + 中国語 - Source text ソーステキスト - Source text (Plural) ソーステキスト(複数) - This area shows the plural form of the source text. ã“ã®é ˜åŸŸã¯è¤‡æ•°ã®ã‚½ãƒ¼ã‚¹ãƒ†ã‚­ã‚¹ãƒˆã‚’表示ã—ã¾ã™ã€‚ - Developer comments 開発者ã®ã‚³ãƒ¡ãƒ³ãƒˆ - This area shows a comment that may guide you, and the context in which the text occurs. ã“ã®é ˜åŸŸã¯ã€æ‰‹åŠ©ã‘ã¨ãªã‚‹ã‚³ãƒ¡ãƒ³ãƒˆã¨ã€ãƒ†ã‚­ã‚¹ãƒˆãŒå‡ºã¦ãるコンテキストを表示ã—ã¾ã™ã€‚ - Here you can enter comments for your own use. They have no effect on the translated applications. ã“ã“ã¯ã‚ãªãŸãŒè‡ªåˆ†è‡ªèº«ã®ç‚ºã«ã‚³ãƒ¡ãƒ³ãƒˆã‚’入力ã§ãã¾ã™ã€‚翻訳ã•ã‚ŒãŸã‚¢ãƒ—リケーションã«ã¯ä½•ã®å½±éŸ¿ã‚‚与ãˆã¾ã›ã‚“。 - %1 translation (%2) %1 翻訳 (%2) - This is where you can enter or modify the translation of the above source text. ソーステキストã®è¨³ã‚’入力ã—ãŸã‚Šå¤‰æ›´ã—ãŸã‚Šã§ãã‚‹ã¨ã“ã‚ã§ã™ã€‚ - %1 translation %1 訳 - %1 translator comments %1 翻訳者ã®ã‚³ãƒ¡ãƒ³ãƒˆ - This area shows the source text. ã“ã®é ˜åŸŸã¯ã‚½ãƒ¼ã‚¹ãƒ†ã‚­ã‚¹ãƒˆã‚’表示ã—ã¾ã™ã€‚ - This is where you can enter or modify the translation of some source text. - ソーステキストã®è¨³ã‚’入力ã—ãŸã‚Šå¤‰æ›´ã—ãŸã‚Šã§ãã‚‹ã¨ã“ã‚ã§ã™ã€‚ - - - This whole panel allows you to view and edit the translation of some source text. ã“ã®ãƒ‘ãƒãƒ«å…¨ä½“ã§ã‚½ãƒ¼ã‚¹ãƒ†ã‚­ã‚¹ãƒˆã®è¨³ã‚’見ãŸã‚Šç·¨é›†ã—ãŸã‚Šã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ - Translation (%1) - 訳 (%1) - - - '%1' Line: %2 '%1' @@ -1815,185 +1254,117 @@ Line: %2 MessageModel - Context - コンテキスト - - - Done - 完了 - - - Items - 項目数 - - - Completion status for %1 %1 ã®ç¿»è¨³å®Œäº†çŠ¶æ³ - <file header> <ファイル ヘッダー> - <context comment> <コンテキスト コメント> - <unnamed context> <ç„¡åã®ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆ> - MessagesTreeView - - Done - 完了 - - - MsgEdit - This is the right panel of the main window. - PageCurl - - Next unfinished phrase - 次ã®æœªè¨³ã®ãƒ•ãƒ¬ãƒ¼ã‚º - + PhraseBookBox - Previous unfinished phrase - å‰ã®æœªè¨³ã®ãƒ•ãƒ¬ãƒ¼ã‚º + (New Entry) + (æ–°ã—ã„é …ç›®) - - - PhraseBookBox - %1[*] - Qt Linguist %1[*] - Qt Linguist - Cannot save phrase book '%1'. フレーズブック '%1' ã‚’ä¿å­˜ã§ãã¾ã›ã‚“。 - Click here to add the phrase to the phrase book. フレーズブックã«ãƒ•ãƒ¬ãƒ¼ã‚ºã‚’追加ã™ã‚‹ã«ã¯ã“ã“をクリックã—ã¦ãã ã•ã„。 - &New Entry æ–°ã—ã„é …ç›®(&N) - Click here to remove the entry from the phrase book. フレーズブックã‹ã‚‰ãƒ•ãƒ¬ãƒ¼ã‚ºã‚’消去ã™ã‚‹ã«ã¯ã“ã“をクリックã—ã¦ãã ã•ã„。 - &Remove Entry 項目を削除(&R) - Settin&gs... 設定(&G)... - Click here to close this window. ã“ã®ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ã‚’é–‰ã˜ã‚‹ã«ã¯ã“ã“をクリックã—ã¾ã™ã€‚ - Click here to remove the phrase from the phrase book. - フレーズブックã‹ã‚‰ãƒ•ãƒ¬ãƒ¼ã‚ºã‚’消去ã™ã‚‹ã«ã¯ã“ã“をクリックã—ã¦ãã ã•ã„。 - - - Click here to save the changes made. 変更をä¿å­˜ã™ã‚‹ã«ã¯ã“ã“をクリックã—ã¦ãã ã•ã„。 - Close é–‰ã˜ã‚‹ - &Definition: 定義(&D): - Edit Phrase Book フレーズブックを編集 - &New Phrase - æ–°ã—ã„フレーズ(&N) - - - Qt Linguist Qt Linguist - &Remove Phrase - フレーズを消去(&R) - - - &Save ä¿å­˜(&S) - S&ource phrase: ソースフレーズ(&S): - This window allows you to add, modify, or delete entries in a phrase book. ã“ã®ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ã§ãƒ•ãƒ¬ãƒ¼ã‚ºãƒ–ックã«ãƒ•ãƒ¬ãƒ¼ã‚ºã‚’追加ã€å¤‰æ›´ã€å‰Šé™¤ã§ãã¾ã™ã€‚ - This is a definition for the source phrase. ソースフレーズã®å®šç¾©ã§ã™ã€‚ - This is the phrase in the source language. ソースã®è¨€èªžã®ãƒ•ãƒ¬ãƒ¼ã‚ºã§ã™ã€‚ - This is the phrase in the target language corresponding to the source phrase. ソースフレーズã«å¯¾å¿œã™ã‚‹ç¿»è¨³å…ˆè¨€èªžã®ãƒ•ãƒ¬ãƒ¼ã‚ºã§ã™ã€‚ - This window allows you to add, modify, or delete phrases in a phrase book. - ã“ã®ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ã§ãƒ•ãƒ¬ãƒ¼ã‚ºãƒ–ックã«ãƒ•ãƒ¬ãƒ¼ã‚ºã‚’追加ã€å¤‰æ›´ã€å‰Šé™¤ã§ãã¾ã™ã€‚ - - - &Translation: 訳(&T): - Go to Phrase > Edit Phrase Book... The dialog that pops up is a PhraseBookBox. @@ -2002,17 +1373,14 @@ Line: %2 PhraseModel - Definition 定義 - Source phrase ソースフレーズ - Translation 翻訳 @@ -2020,22 +1388,18 @@ Line: %2 PhraseView - Insert 挿入 - Edit 編集 - Guess (%1) 推測(%1) - Guess 推測 @@ -2043,573 +1407,103 @@ Line: %2 QObject - Compiled Qt translations コンパイル済㿠Qt 翻訳ファイル - Translation files (%1);; 翻訳ファイル (%1);; - All files (*) ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ« (*) - - - - - - - Qt Linguist Qt Linguist - - C++ source files - C++ ソースファイル - - - - Java source files - Java ソースファイル - - - GNU Gettext localization files GNU Gettext 日本語化ファイル - - Qt Script source files - Qt スクリプト ソースファイル + GNU Gettext localization template files + GNU Gettext 日本語化テンプレートファイル - Qt translation sources (format 1.1) Qt 翻訳ソース (1.1å½¢å¼) - Qt translation sources (format 2.0) Qt 翻訳ソース (2.0å½¢å¼) - Qt translation sources (latest format) Qt 翻訳ソース (最新ã®å½¢å¼) - - Qt Designer form files - Qt デザイナ フォームファイル - - - - Qt Jambi form files - Qt Jambi フォームファイル - - - XLIFF localization files XLIFF 日本語化ファイル - Qt Linguist 'Phrase Book' Qt Linguist 'フレーズ ブック' - QtWindowListMenu - - Cascade - カスケード - - - Close - é–‰ã˜ã‚‹ - - - Close All - ã™ã¹ã¦é–‰ã˜ã‚‹ - - - Tile - タイル - - - - SortedMessagesModel - - Source text - ソーステキスト - - - SourceCodeView - <i>Source code not available</i> <i>ソース コードã¯ä½¿ç”¨ã§ãã¾ã›ã‚“</i> - <i>File %1 not available</i> <i>ファイル %1 ãŒä½¿ç”¨ã§ãã¾ã›ã‚“</i> - <i>File %1 not readable</i> <i>ファイル %1 ãŒèª­ã¿è¾¼ã‚ã¾ã›ã‚“</i> - SourceTextEdit - - &Copy - コピー(&C) - - - Ctrl+A - Ctrl+A - - - Ctrl+C - Ctrl+C - - - Select &All - ã™ã¹ã¦ã‚’é¸æŠž(&A) - - - Statistics - 0 0 - Characters (with spaces): 文字(スペースã¤ã): - Characters: 文字: - &Close - é–‰ã˜ã‚‹(&C) - - - Source ソース - Statistics 統計 - Translation 翻訳 - Words: 語: - Close é–‰ã˜ã‚‹ - TrPreviewTool + TrWindow - <No Translation> - <翻訳ファイルãªã—> - - - About - ã«ã¤ã„㦠- - - Could not load form file(s): - - フォームファイルをロードã§ãã¾ã›ã‚“ã§ã—ãŸ: - - - - Could not load translation file: - - 翻訳ファイルをロードã§ãã¾ã›ã‚“ã§ã—ãŸ: - - - - Could not reload translation file(s): - - 翻訳ファイルをリロードã§ãã¾ã›ã‚“ã§ã—ãŸ: - - - - File - ファイル - - - Load Translation - 翻訳ファイルをロード - - - Open Forms - フォームを開ã - - - Qt Translation Preview Tool: Warning - Qt 翻訳プレビューツール: 警告 - - - Translation files (*.qm);;All files (*.*) - 翻訳ファイル (*.qm);;å…¨ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ« (*.*) - - - User interface form files (*.ui);;All files (*.*) - ユーザインタフェースファイル (*.ui);;å…¨ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ« (*.*) - - - Windows - ウィンドウ - - - - TrPreviewToolClass - - About - ã«ã¤ã„㦠- - - About Qt - Qt ã«ã¤ã„㦠- - - &Close - é–‰ã˜ã‚‹(&C) - - - F5 - F5 - - - &File - ファイル(&F) - - - Forms - フォーム - - - &Help - ヘルプ(&H) - - - &Load Translation... - 翻訳ファイルをロード(&L)... - - - &Open Form... - フォームを開ã(&O)... - - - Qt Translation Preview Tool - Qt 翻訳プレビューツール - - - &Reload Translations - 翻訳ファイルをリロード(&R) - - - &View - 表示(&V) - - - &Views - 表示(&V) - - - - TrWindow - - Open Source Edition - オープンソース版 - - - %1 - %2 - %1 - %2 - - - %1 - %2%3 - %1 - %2%3 - - - %n phrase(s) loaded. - - %n é …ç›®ã®ãƒ•ãƒ¬ãƒ¼ã‚ºãŒãƒ­ãƒ¼ãƒ‰ã•ã‚Œã¾ã—ãŸã€‚ - - - - %n source phrase(s) loaded. - - %n 個ã®ã‚½ãƒ¼ã‚¹ãƒ•ãƒ¬ãƒ¼ã‚ºãŒãƒ­ãƒ¼ãƒ‰ã•ã‚Œã¾ã—ãŸã€‚ - - - - <center><img src=":/images/splash.png"/></img><p>%1</p></center><p>Qt Linguist is a tool for adding translations to Qt applications.</p><p>%2</p><p>Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).</p><p>The program is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.</p> - <center><img src=":/images/splash.png"/></img><p>%1</p></center><p>Qt Linguist ã¯ã€Qt アプリケーションã®ç¿»è¨³ã‚’è¡Œã†ãƒ„ールã§ã™ã€‚</p><p>%2</p><p>Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). å…¨ã¦ã®æ¨©åˆ©ã¯ä¿è­·ã•ã‚Œã¦ã„ã¾ã™ã€‚</p><p>ã“ã®ãƒ—ログラムã¯ã€ã€Œè¨­è¨ˆã€ã€ã€Œå¸‚場性ã€ãŠã‚ˆã³ã€Œç‰¹å®šã®ç›®çš„ã¸ã®é©åˆæ€§ã€ã‚‚å«ã‚€ã€ã‚らゆる種類ã®ã€Œä¿è¨¼ãŒãªãã€ã€ã€Œãã®ã¾ã¾ã§ã€æä¾›ã•ã‚Œã¾ã™ã€‚</p> - - - A file called '%1' already exists. Please choose another name. - '%1' ã¨ã„ã†ãƒ•ã‚¡ã‚¤ãƒ«ã¯ã™ã§ã«å­˜åœ¨ã—ã¾ã™ã€‚別ã®åå‰ã‚’é¸ã‚“ã§ãã ã•ã„。 - - - A phrase book suggestion for '%1' was ignored. - '%1' ã«ã¤ã„ã¦ã®ãƒ•ãƒ¬ãƒ¼ã‚ºãƒ–ックã®ç¤ºå”†ã‚’無視ã—ã¦ã„ã¾ã™ã€‚ - - - Accelerator possibly missing in translation. - 訳ã«ã‚¢ã‚¯ã‚»ãƒ©ãƒ¬ãƒ¼ã‚¿ãŒæ¬ ã‘ã¦ã„ã¾ã™ã€‚ - - - Accelerator possibly superfluous in translation. - 訳ã«ä½™åˆ†ãªã‚¢ã‚¯ã‚»ãƒ©ãƒ¬ãƒ¼ã‚¿ãŒã¤ã„ã¦ã„ã¾ã™ã€‚ - - - Allow you to add, modify, or delete phrases of this phrase book. - フレーズブックã«ãƒ•ãƒ¬ãƒ¼ã‚ºã‚’追加ã€å¤‰æ›´ã€å‰Šé™¤ã§ãã¾ã™ã€‚ - - - Cannot create phrase book '%1'. - フレーズブック '%1' を作æˆã§ãã¾ã›ã‚“。 - - - Cannot find the string '%1'. - 文字列 '%1' ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。 - - - Cannot open '%1'. - '%1' をオープンã§ãã¾ã›ã‚“。 - - - Cannot read from phrase book '%1'. - フレーズブック '%1' ã‹ã‚‰èª­ã¿å‡ºã›ã¾ã›ã‚“。 - - - Cannot save '%1'. - '%1' ã‚’ä¿å­˜ã§ãã¾ã›ã‚“。 - - - Close this phrase book. - ã“ã®ãƒ•ãƒ¬ãƒ¼ã‚ºãƒ–ックを閉ã˜ã¾ã™ã€‚ - - - Context - コンテキスト - - - Context: %1 - コンテキスト: %1 - - - Create New Phrase Book - æ–°ã—ã„ãƒ•ãƒ¬ãƒ¼ã‚ºãƒ–ãƒƒã‚¯ã‚’ä½œæˆ - - - Ctrl+M - Ctrl+M - - - Display information about %1. - %1 ã«ã¤ã„ã¦ã®æƒ…報を表示ã—ã¾ã™ã€‚ - - - Display the manual for %1. - %1 ã®ãƒžãƒ‹ãƒ¥ã‚¢ãƒ«ã‚’表示ã—ã¾ã™ã€‚ - - - Do you want to save '%1'? - '%1' ã‚’ä¿å­˜ã—ã¾ã™ã‹? - - - Edit - 編集 - - - File - ファイル - - - File created. - ファイルãŒä½œæˆã•ã‚Œã¾ã—ãŸã€‚ - - - File saved. - ファイルãŒä¿å­˜ã•ã‚Œã¾ã—ãŸã€‚ - - - finished - 完了 - - - Help - ヘルプ - - - Loading... - ロードã—ã¦ã„ã¾ã™... - - - Minimize - 最å°åŒ– - - - MOD - 変更ã•ã‚Œã¦ã„ã¾ã™ - - - No untranslated phrases left. - 未訳ã®ãƒ•ãƒ¬ãƒ¼ã‚ºã¯æ®‹ã£ã¦ã„ã¾ã›ã‚“。 - - - obsolete - ã“ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã§ã¯ä½¿ã‚ã‚Œã¦ã„ãªã„ - - - Open Phrase Book - フレーズブックを開ã - - - Phrase book created. - フレーズブックãŒä½œæˆã•ã‚Œã¾ã—ãŸã€‚ - - - Print the entries of the phrase book. - フレーズブックã®è¦‹å‡ºã—語をå°åˆ·ã—ã¾ã™ã€‚ - - - Printing aborted - å°åˆ·ä¸­æ­¢ - - - Printing completed - å°åˆ·å®Œäº† - - - Printing... - å°åˆ·ä¸­... - - - Printing... (page %1) - å°åˆ·ä¸­... (%1 ページ) - - - Qt Linguist - Qt Linguist - - - Qt Linguist by Trolltech - Trolltech ã® Qt Linguist - - - Qt message files for released applications (*.qm) -All files (*) - リリースã•ã‚ŒãŸã‚¢ãƒ—リケーション用㮠Qt メッセージファイル (*.qm) -ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ« (*) - - - Qt phrase books (*.qph) -All files (*) - Qt フレーズブック (*.qph) -ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ« (*) - - - Qt translation source (*.ts) -All files (*) - Qt 翻訳ソースファイル (*.ts) -ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ« (*) - - - Release - リリース - - - Search wrapped. - 検索ãŒä¸€é€šã‚Šçµ‚ã‚ã‚Šã¾ã—ãŸã€‚ - - - There was a problem in the preparation of form preview. - フォームã®ãƒ—レビューã®æº–備中ã«å•é¡ŒãŒç™ºç”Ÿã—ã¾ã—ãŸã€‚ - - - This panel lists the source contexts. - ã“ã®ãƒ‘ãƒãƒ«ã§ã¯ã‚½ãƒ¼ã‚¹ã®ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆã‚’一覧表示ã—ã¦ã„ã¾ã™ã€‚ - - - This program is licensed to you under the terms of the Qt Commercial License Agreement. For details, see the file LICENSE that came with this software distribution. - ã“ã®ãƒ—ログラムã¯ã€Qt 商用ライセンス契約書ã®å®šã‚ã‚‹æ¡ä»¶ã®ä¸‹ã§ã‚ãªãŸã®åˆ©ç”¨ãŒèªã‚られã¦ã„ã¾ã™ã€‚詳細ã¯ã€ã‚½ãƒ•ãƒˆã‚¦ã‚§ã‚¢ã¨ä¸€ç·’ã«é…布ã•ã‚Œã‚‹ LICENSE ファイルをå‚ç…§ã—ã¦ãã ã•ã„。 - - - This version of Qt Linguist is part of the Qt Open Source Edition, for use in the development of Open Source applications. Qt is a comprehensive C++ framework for cross-platform application development.<br/><br/>You need a commercial Qt license for development of proprietary (closed source) applications. Please see <tt>http://qt.nokia.com/company/model.html</tt> for an overview of Qt licensing. - ã“ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã® Qt Linguist ã¯ã€ オープンソースアプリケーションを開発ã™ã‚‹ãŸã‚ã® Qt オープンソース版ã®ä¸€éƒ¨ã§ã™ã€‚Qt ã¯ã€ã‚¯ãƒ­ã‚¹ãƒ—ラットフォームãªã‚¢ãƒ—リケーションを開発ã™ã‚‹ãŸã‚ã®åŒ…括的㪠C++ ã®ãƒ•ãƒ¬ãƒ¼ãƒ ãƒ¯ãƒ¼ã‚¯ã§ã™ã€‚<br/><br/>独å çš„ãªï¼ˆã‚½ãƒ¼ã‚¹ãŒéš ã•ã‚ŒãŸï¼‰ã‚¢ãƒ—リケーションを開発ã™ã‚‹ã«ã¯ã€Qt ã®å•†ç”¨ãƒ©ã‚¤ã‚»ãƒ³ã‚¹ãŒå¿…è¦ã§ã™ã€‚Qt ã®ãƒ©ã‚¤ã‚»ãƒ³ã‚¹ã®æ¦‚è¦ã«ã¤ã„ã¦ã¯ <tt>http://qt.nokia.com/company/model.html</tt> ã‚’ã”覧ãã ã•ã„。 - - - Translate - 翻訳 - - - Translated %n entries to '%1' - - %n 項目を '%1' ã«ç¿»è¨³ã—ã¾ã—㟠- - - - Translation - 訳 - - - Translation does not end with the same punctuation as the source text. - 訳ãŒã‚½ãƒ¼ã‚¹ãƒ†ã‚­ã‚¹ãƒˆã¨åŒã˜å¥èª­ç‚¹ã§çµ‚ã‚ã£ã¦ã„ã¾ã›ã‚“。 - - - Translation does not refer to the same place markers as in the source text. - 訳語ã«ã¯ã‚½ãƒ¼ã‚¹ãƒ†ã‚­ã‚¹ãƒˆã¨åŒã˜æ•°ã® "%" ãŒã‚ã‚Šã¾ã›ã‚“。 - - - unresolved - 未解決 - - - Validation - 検証 - - - Version %1 - ãƒãƒ¼ã‚¸ãƒ§ãƒ³ %1 - - - &Window - ウィンドウ(&W) - - - This is the application's main window. @@ -2618,174 +1512,87 @@ All files (*) TranslateDialog - Cancel キャンセル - Click here to close this window. ã“ã®ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ã‚’é–‰ã˜ã‚‹ã«ã¯ã“ã“をクリックã—ã¾ã™ã€‚ - Click here to find the next occurrence of the text you typed in. 入力ã—ãŸãƒ†ã‚­ã‚¹ãƒˆãŒæ¬¡ã«å‡ºã¦ãる箇所を見ã¤ã‘ã‚‹ã«ã¯ã“ã“をクリックã—ã¾ã™ã€‚ - Find Next 次を検索 - Find &source text: ソーステキストを検索(&S): - Mark new translation as &finished æ–°ã—ã翻訳ã—ãŸé …目を完了ã«ã™ã‚‹(&F) - Match &case 大文字・å°æ–‡å­—ã®åŒºåˆ¥(&C) - Qt Linguist - Qt Linguist - - - Search options 検索オプション - Texts such as 'TeX' and 'tex' are considered as different when checked. é¸æŠžã™ã‚‹ã¨ã€ãŸã¨ãˆã° 'TeX' 㨠'tex' ã¯ç•°ãªã‚‹ã‚‚ã®ã¨è¦‹ãªã•ã‚Œã¾ã™ã€‚ - This window allows you to search for some text in the translation source file. ã“ã®ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ã§ç¿»è¨³ã‚½ãƒ¼ã‚¹ãƒ•ã‚¡ã‚¤ãƒ«å†…ã®ãƒ†ã‚­ã‚¹ãƒˆã‚’検索ã§ãã¾ã™ã€‚ - Translate 翻訳 - Translate All ã™ã¹ã¦ç¿»è¨³ - &Translate to: 訳語(&T): - Type in the text to search for. 検索ã™ã‚‹ãƒ†ã‚­ã‚¹ãƒˆã‚’入力ã—ã¦ãã ã•ã„。 - TranslationSettings - - Country - 国 - - - Language - 言語 - - - Qt Linguist - Translation file settings - Qt Linguist - 翻訳ファイルã®è¨­å®š - - - Target language - 翻訳先ã®è¨€èªž - - - TranslationSettingsDialog - Any Country 指定ã—ãªã„ - - Settings for '%1' - Qt Linguist '%1' ã®è¨­å®š - Qt Linguist - Source language 翻訳元ã®è¨€èªž - Language 言語 - Country/Region 国/地域 - Target language 翻訳先ã®è¨€èªž - - databaseTranslationDialog - - &Cancel - キャンセル(&C) - - - Move down - 下ã«ç§»å‹• - - - Move up - 上ã«ç§»å‹• - - - Only translate entries with no translation - 訳語ãŒãªã„é …ç›®ã ã‘を翻訳ã™ã‚‹ - - - Options - オプション - - - Phrase book preference - フレーズブックã®å„ªå…ˆåº¦ - - - Qt Linguist - Batch Translation - Qt Linguist - 一括翻訳 - - - &Run - 実行(&R) - - - Set translated entries to finished - 翻訳ã•ã‚ŒãŸé …目を完了ã«ã™ã‚‹ - - - The batch translator will search through the selected phrasebooks in the order given above. - 一括翻訳機能ã¯ã€ä¸Šè¨˜ã§æŒ‡å®šã•ã‚ŒãŸé †ã«ãƒ•ãƒ¬ãƒ¼ã‚ºãƒ–ックを検索ã—ã¾ã™ã€‚ - - diff --git a/translations/qt_help_ja.ts b/translations/qt_help_ja.ts index 5702cfd..2a725ca 100644 --- a/translations/qt_help_ja.ts +++ b/translations/qt_help_ja.ts @@ -1,355 +1,318 @@ - + QCLuceneResultWidget - Search Results - + 検索çµæžœ - Note: - + 注: - The search results may not be complete since the documentation is still being indexed! - + ドキュメントã®ç´¢å¼•ã®ä½œæˆãŒçµ‚了ã—ã¦ã„ãªã„ãŸã‚ã€æ¤œç´¢çµæžœã¯ä¸å®Œå…¨ãªå¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™! - Your search did not match any documents. - + ãã®èªžå¥ã¯ã©ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã«ã‚‚見ã¤ã‹ã‚Šã¾ã›ã‚“。 - (The reason for this might be that the documentation is still being indexed.) - + (ドキュメントã®ç´¢å¼•ã®ä½œæˆãŒçµ‚了ã—ã¦ã„ãªã„ãŸã‚ã‹ã‚‚ã—ã‚Œã¾ã›ã‚“。) + + + + QHelp + + Untitled + タイトルãªã— QHelpCollectionHandler - - The collection file is not set up yet! - + The collection file '%1' is not set up yet! + コレクションファイル '%1' ãŒã¾ã è¨­å®šã•ã‚Œã¦ã„ã¾ã›ã‚“! - Cannot load sqlite database driver! - + SQLite データベースドライãƒãŒãƒ­ãƒ¼ãƒ‰ã§ãã¾ã›ã‚“! - - Cannot open collection file: %1 - + コレクションファイルをオープンã§ãã¾ã›ã‚“: %1 - Cannot create tables in file %1! - + ファイル %1 ã«ãƒ†ãƒ¼ãƒ–ルを作æˆã§ãã¾ã›ã‚“! - - The specified collection file already exists! - + The collection file '%1' already exists! + コレクションファイル '%1' ãŒæ—¢ã«å­˜åœ¨ã—ã¾ã™! - - Cannot create directory: %1 - + Unknown filter '%1'! + ä¸æ˜Žãªãƒ•ã‚£ãƒ«ã‚¿ '%1'! - - Cannot copy collection file: %1 - + Invalid documentation file '%1'! + 無効ãªãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆãƒ•ã‚¡ã‚¤ãƒ« '%1'! - - Unknown filter! - + Cannot register namespace '%1'! + ãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ '%1' を登録ã§ãã¾ã›ã‚“! - - Cannot register filter %1! - + Cannot open database '%1' to optimize! + 最é©åŒ–用ã«ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ '%1' をオープンã§ãã¾ã›ã‚“! - - Cannot open documentation file %1! - + Cannot create directory: %1 + ディレクトリを作æˆã§ãã¾ã›ã‚“: %1 - - Invalid documentation file! - + Cannot copy collection file: %1 + コレクションファイルをコピーã§ãã¾ã›ã‚“: %1 - - The namespace %1 was not registered! - + Cannot register filter %1! + フィルタ %1 を登録ã§ãã¾ã›ã‚“! - - Namespace %1 already exists! - + Cannot open documentation file %1! + ドキュメントファイル %1 をオープンã§ãã¾ã›ã‚“! - - Cannot register namespace! - + The namespace %1 was not registered! + ãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ %1 ã¯ç™»éŒ²ã•ã‚Œã¦ã„ã¾ã›ã‚“! - - Cannot open database to optimize! - + Namespace %1 already exists! + ãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ %1 ã¯æ—¢ã«å­˜åœ¨ã—ã¾ã™! QHelpDBReader - Cannot open database '%1' '%2': %3 - + The placeholders are: %1 - The name of the database which cannot be opened %2 - The unique id for the connection %3 - The actual error string + データベース '%1' '%2' ãŒã‚ªãƒ¼ãƒ—ンã§ãã¾ã›ã‚“: %3 QHelpEngineCore - - The specified namespace does not exist! - + Cannot open documentation file %1: %2! + ドキュメントファイル %1 をオープンã§ãã¾ã›ã‚“: %2! - - - QHelpEngineCorePrivate - - Cannot open documentation file %1: %2! - + The specified namespace does not exist! + ãã®ãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ã¯å­˜åœ¨ã—ã¾ã›ã‚“! QHelpGenerator - Invalid help data! - + 無効ãªãƒ˜ãƒ«ãƒ—データ! - No output file name specified! - + 出力ファイルåãŒæŒ‡å®šã•ã‚Œã¦ã„ã¾ã›ã‚“! - Building up file structure... - + ファイル構造ã®æ§‹ç¯‰ä¸­... - The file %1 cannot be overwritten! - + ファイル %1 ã¯ä¸Šæ›¸ãã§ãã¾ã›ã‚“! - Cannot open data base file %1! - + データベースファイル %1 をオープンã§ãã¾ã›ã‚“! - Cannot register namespace %1! - + ãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ %1 を登録ã§ãã¾ã›ã‚“! - Insert custom filters... - + カスタムフィルターã®ç™»éŒ²ä¸­... - Insert help data for filter section (%1 of %2)... - + フィルターã«ãƒ˜ãƒ«ãƒ—データを登録中 (%1 / %2)... - Documentation successfully generated. - + ドキュメントã®ä½œæˆã«æˆåŠŸã—ã¾ã—ãŸã€‚ - Some tables already exist! - + テーブルãŒæ—¢ã«å­˜åœ¨ã—ã¾ã™! - Cannot create tables! - + テーブルãŒä½œæˆã§ãã¾ã›ã‚“! - Cannot register virtual folder! - + 仮装フォルダを登録ã§ãã¾ã›ã‚“! - Insert files... - + ファイルã®æŒ¿å…¥... + + + The referenced file %1 must be inside or within a subdirectory of (%2). Skipping it. + å‚ç…§ã•ã‚Œã‚‹ãƒ•ã‚¡ã‚¤ãƒ« %1 㯠(%2) ã®ã‚µãƒ–ディレクトリã«å­˜åœ¨ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚スキップã—ã¾ã™ã€‚ - The file %1 does not exist! Skipping it. - + ファイル %1 ãŒå­˜åœ¨ã—ã¾ã›ã‚“! スキップã—ã¾ã™ã€‚ - Cannot open file %1! Skipping it. - + ファイル %1 をオープンã§ãã¾ã›ã‚“! スキップã—ã¾ã™ã€‚ - The filter %1 is already registered! - + フィルタ %1 ã¯æ—¢ã«ç™»éŒ²ã•ã‚Œã¦ã„ã¾ã™! - Cannot register filter %1! - + フィルタ %1 を登録ã§ãã¾ã›ã‚“! - Insert indices... - + 索引ã®æŒ¿å…¥... - Insert contents... - + コンテンツã®æŒ¿å…¥... - Cannot insert contents! - + コンテンツを挿入ã§ãã¾ã›ã‚“! - Cannot register contents! - + コンテンツを登録ã§ãã¾ã›ã‚“! + + + File '%1' does not exist. + ファイル '%1' ãŒå­˜åœ¨ã—ã¾ã›ã‚“。 + + + File '%1' cannot be opened. + ファイル '%1' をオープンã§ãã¾ã›ã‚“。 + + + File '%1' contains an invalid link to file '%2' + ファイル '%1' ã«ãƒ•ã‚¡ã‚¤ãƒ« '%2' ã¸ã®ç„¡åŠ¹ãªãƒªãƒ³ã‚¯ãŒè¦‹ã¤ã‹ã‚Šã¾ã—㟠+ + + Invalid links in HTML files. + HTML ã«ç„¡åŠ¹ãªãƒªãƒ³ã‚¯ãŒè¦‹ã¤ã‹ã‚Šã¾ã—ãŸã€‚ - QHelpSearchQueryWidget + QHelpProject - - Search for: - + Unknown token. + ä¸æ˜Žãªãƒˆãƒ¼ã‚¯ãƒ³ã€‚ - - Search - + Unknown token. Expected "QtHelpProject"! + "QtHelpProject" ãŒã‚ã‚‹ã¹ã場所ã«ä¸æ˜Žãªãƒˆãƒ¼ã‚¯ãƒ³! - - Advanced search - + Error in line %1: %2 + %1 è¡Œã§ã‚¨ãƒ©ãƒ¼: %2 - - words <B>similar</B> to: - + Virtual folder has invalid syntax. + 仮装フォルダã«ç„¡åŠ¹ãªæ§‹æ–‡ãŒã‚ã‚Šã¾ã™ã€‚ - - <B>without</B> the words: - + Namespace has invalid syntax. + ãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ã«ç„¡åŠ¹ãªæ§‹æ–‡ãŒã‚ã‚Šã¾ã™ã€‚ - - with <B>exact phrase</B>: - + Missing namespace in QtHelpProject. + QtHelpProject ã«ãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ãŒã‚ã‚Šã¾ã›ã‚“。 - - with <B>all</B> of the words: - + Missing virtual folder in QtHelpProject + QtHelpProject ã«ä»®è£…フォルダãŒã‚ã‚Šã¾ã›ã‚“ - - with <B>at least one</B> of the words: - + Missing attribute in keyword at line %1. + %1 行目ã®ã‚­ãƒ¼ãƒ¯ãƒ¼ãƒ‰ã«å±žæ€§ãŒã‚ã‚Šã¾ã›ã‚“。 - - - QHelpSearchResultWidget - - 0 - 0 of 0 Hits - + The input file %1 could not be opened! + 入力ファイル %1 ãŒã‚ªãƒ¼ãƒ—ンã§ãã¾ã›ã‚“! - QHelpSearchResultWidgetPrivate + QHelpSearchQueryWidget - - %1 - %2 of %3 Hits - + Search for: + 検索キーワード: - - - QObject - - Untitled - + Previous search + å‰ã®æ¤œç´¢çµæžœ - - Unknown token. - + Next search + 次ã®æ¤œç´¢çµæžœ - - Unknown token. Expected "QtHelpProject"! - + Search + 検索 - - Error in line %1: %2 - + Advanced search + 詳細ãªæ¤œç´¢ - - A virtual folder must not contain a '/' character! - + words <B>similar</B> to: + <b>類似語</b>: - - A namespace must not contain a '/' character! - + <B>without</B> the words: + キーワードを<b>å«ã‚ãªã„</b>: - - Missing namespace in QtHelpProject. - + with <B>exact phrase</B>: + <b>フレーズ</b>ã‚’å«ã‚€: - - Missing virtual folder in QtHelpProject - + with <B>all</B> of the words: + <b>ã™ã¹ã¦ã®</b>キーワードをå«ã‚€: - - Missing attribute in keyword at line %1. - + with <B>at least one</B> of the words: + <b>ã„ãšã‚Œã‹</b>ã®ã‚­ãƒ¼ãƒ¯ãƒ¼ãƒ‰ã‚’å«ã‚€: + + + + QHelpSearchResultWidget + + %1 - %2 of %n Hits + + %1 - %2 / %n 件 + - - The input file %1 could not be opened! - + 0 - 0 of 0 Hits + 0 - 0 / 0 件 diff --git a/translations/qt_ja.ts b/translations/qt_ja.ts index e6f92b7..0812a64 100644 --- a/translations/qt_ja.ts +++ b/translations/qt_ja.ts @@ -2,92 +2,78 @@ + CloseButton + + Close Tab + ToolTip + タブを閉ã˜ã‚‹ + + + + FakeReply + + Fake error ! + 疑似エラー! + + + Invalid URL + 無効ãªURL + + + MAC_APPLICATION_MENU - Services サービス - Hide %1 %1ã‚’éš ã™ - Hide Others ã»ã‹ã‚’éš ã™ - Show All ã™ã¹ã¦ã‚’表示 - Preferences... 環境設定... - Quit %1 %1 を終了 - About %1 %1 ã«ã¤ã„㦠- CloseButton - - - Close Tab - ToolTip - タブを閉ã˜ã‚‹ - - - - PPDOptionsModel - - Name - åå‰ - - - Value - 値 - - - Phonon:: - Notifications 通知 - Music 音楽 - Video å‹•ç”» - Communication コミュニケーション - Games ゲーム - Accessibility アクセシビリティ @@ -95,31 +81,30 @@ Phonon::AudioOutput - <html>The audio playback device <b>%1</b> does not work.<br/>Falling back to <b>%2</b>.</html> <html>オーディオå†ç”Ÿãƒ‡ãƒã‚¤ã‚¹<b>%1</b>ãŒå‹•ä½œã—ã¾ã›ã‚“。<br/><b>%2</b>を使用ã—ã¾ã™ã€‚</html> - <html>Switching to the audio playback device <b>%1</b><br/>which just became available and has higher preference.</html> <html>より高ã„パフォーマンスを得られるオーディオデãƒã‚¤ã‚¹ <b>%1</b> ãŒä½¿ç”¨å¯èƒ½ã¨ãªã£ãŸã®ã§ã€ä½¿ç”¨ã—ã¾ã™ã€‚</html> - Revert back to device '%1' デãƒã‚¤ã‚¹ '%1' ã«æˆ»ã™ + + <html>Switching to the audio playback device <b>%1</b><br/>which has higher preference or is specifically configured for this stream.</html> + <html>より高ã„パフォーマンスを得られるã‹ã“ã®ã‚¹ãƒˆãƒªãƒ¼ãƒ ç”¨ã«æŒ‡å®šã•ã‚Œã¦ã„るオーディオデãƒã‚¤ã‚¹ <b>%1</b> を使用ã—ã¾ã™ã€‚</html> + Phonon::Gstreamer::Backend - Warning: You do not seem to have the package gstreamer0.10-plugins-good installed. Some video features have been disabled. 警告: gstreamer0.10-plugins-good ãŒã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•ã‚Œã¦ã„ã¾ã›ã‚“。幾ã¤ã‹ã®å‹•ç”»æ©Ÿèƒ½ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。 - Warning: You do not seem to have the base GStreamer plugins installed. All audio and video support has been disabled 警告: GStreamer plugin ãŒã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•ã‚Œã¦ã„ã¾ã›ã‚“。ã™ã¹ã¦ã®éŸ³å£°ã€å‹•ç”»æ©Ÿèƒ½ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“ @@ -128,72 +113,358 @@ Phonon::Gstreamer::MediaObject - Cannot start playback. -Check your Gstreamer installation and make sure you +Check your GStreamer installation and make sure you have libgstreamer-plugins-base installed. å†ç”Ÿã§ãã¾ã›ã‚“。 -Gstreamer 㨠libgstreamer-plugins-base ãŒæ­£ã—ãインストールã•ã‚Œã¦ã„ã‚‹ã‹ç¢ºèªã—ã¦ãã ã•ã„。 +Gstreamer ãŒã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•ã‚Œã¦ã„ã‚‹ã‹ç¢ºèªã—ã¦ãã ã•ã„。 +libgstreamer-plugins-base ã¯ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•ã‚Œã¦ã„ã¾ã™ã‹ã€‚ + + + Missing codec helper script assistant. + コーデックヘルパースクリプトã«ã‚ˆã‚‹æ”¯æ´ãŒå—ã‘られã¾ã›ã‚“。 + + + Plugin codec installation failed for codec: %0 + コーデックプラグインã®ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã«å¤±æ•—ã—ã¾ã—ãŸ: %0 - A required codec is missing. You need to install the following codec(s) to play this content: %0 å¿…è¦ãªã‚³ãƒ¼ãƒ‡ãƒƒã‚¯ãŒã¿ã¤ã‹ã‚Šã¾ã›ã‚“。ã“ã®ã‚³ãƒ³ãƒ†ãƒ³ãƒ„ã‚’å†ç”Ÿã™ã‚‹ãŸã‚ã«ã¯ã€ä»¥ä¸‹ã®ã‚³ãƒ¼ãƒ‡ãƒƒã‚¯ã‚’インストールã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™: %0 - - - - - - - - Could not open media source. メディアソースを開ãã“ã¨ãŒã§ãã¾ã›ã‚“。 - Invalid source type. 無効ãªã‚½ãƒ¼ã‚¹ã®å½¢å¼ã§ã™ã€‚ - Could not locate media source. メディアソースãŒã¿ã¤ã‹ã‚Šã¾ã›ã‚“。 - Could not open audio device. The device is already in use. オーディオデãƒã‚¤ã‚¹ã‚’é–‹ãã“ã¨ãŒã§ãã¾ã›ã‚“。デãƒã‚¤ã‚¹ã¯æ—¢ã«ä»–ã®ãƒ—ロセスã«ã‚ˆã‚Šä½¿ç”¨ã•ã‚Œã¦ã„ã¾ã™ã€‚ - Could not decode media source. メディアソースを開ãã“ã¨ãŒã§ãã¾ã›ã‚“。見ã¤ã‹ã‚‰ãªã„ã‹ã€æœªçŸ¥ã®å½¢å¼ã§ã™ã€‚ + Phonon::MMF + + Audio Output + オーディオ出力 + + + The audio output device + オーディオ出力デãƒã‚¤ã‚¹ + + + No error + エラーã¯ã‚ã‚Šã¾ã›ã‚“ + + + Not found + 見ã¤ã‹ã‚Šã¾ã›ã‚“ã§ã—㟠+ + + Out of memory + メモリãŒè¶³ã‚Šã¾ã›ã‚“ + + + Not supported + サãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“ + + + Overflow + オーãƒãƒ¼ãƒ•ãƒ­ãƒ¼ + + + Underflow + アンダーフロー + + + Already exists + æ—¢ã«å­˜åœ¨ã—ã¾ã™ + + + Path not found + パスãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ + + + In use + 使用中 + + + Not ready + 準備ä¸è¶³ + + + Access denied + アクセスã§ãã¾ã›ã‚“ + + + Could not connect + 接続ã§ãã¾ã›ã‚“ã§ã—㟠+ + + Disconnected + 切断ã•ã‚Œã¾ã—㟠+ + + Permission denied + 許å¯ã•ã‚Œã¦ã„ã¾ã›ã‚“ + + + Insufficient bandwidth + 帯域幅ãŒè¶³ã‚Šã¾ã›ã‚“ + + + Network unavailable + ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ + + + Network communication error + ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã®é€šä¿¡ã‚¨ãƒ©ãƒ¼ + + + Streaming not supported + ストリーミングã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“ + + + Server alert + サーãƒã®è­¦å‘Š + + + Invalid protocol + 無効ãªãƒ—ロトコル + + + Invalid URL + 無効ãªURL + + + Multicast error + マルãƒã‚­ãƒ£ã‚¹ãƒˆã‚¨ãƒ©ãƒ¼ + + + Proxy server error + プロキシーサーãƒã®ã‚¨ãƒ©ãƒ¼ + + + Proxy server not supported + プロキシーサーãƒã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“ + + + Audio output error + オーディオ出力エラー + + + Video output error + ビデオ出力エラー + + + Decoder error + デコーダエラー + + + Audio or video components could not be played + オーディオもã—ãã¯ãƒ“デオコンãƒãƒ¼ãƒãƒ³ãƒˆãŒå†ç”Ÿã§ãã¾ã›ã‚“ã§ã—㟠+ + + DRM error + DRMエラー + + + Unknown error (%1) + 未知ã®ã‚¨ãƒ©ãƒ¼ (%1) + + + + Phonon::MMF::AbstractMediaPlayer + + Not ready to play + å†ç”Ÿã®æº–å‚™ãŒã§ãã¦ã„ã¾ã›ã‚“ + + + Error opening file + ファイルã®ã‚ªãƒ¼ãƒ—ン時ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—㟠+ + + Error opening URL + URL ã®ã‚ªãƒ¼ãƒ—ン時ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—㟠+ + + Error opening resource + リソースã®ã‚ªãƒ¼ãƒ—ン時ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—㟠+ + + Error opening source: resource not opened + ソースã®ã‚ªãƒ¼ãƒ—ン時ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: リソースãŒã‚ªãƒ¼ãƒ—ンã•ã‚Œã¦ã„ã¾ã›ã‚“ + + + Setting volume failed + ボリュームã®è¨­å®šã«å¤±æ•—ã—ã¾ã—㟠+ + + Loading clip failed + クリップã®ãƒ­ãƒ¼ãƒ‰ã«å¤±æ•—ã—ã¾ã—㟠+ + + Playback complete + å†ç”ŸãŒçµ‚了ã—ã¾ã—㟠+ + + + Phonon::MMF::AbstractVideoPlayer + + Pause failed + 一時åœæ­¢ã«å¤±æ•—ã—ã¾ã—㟠+ + + Seek failed + シークã«å¤±æ•—ã—ã¾ã—㟠+ + + Getting position failed + å†ç”Ÿä½ç½®ã®å–å¾—ã«å¤±æ•—ã—ã¾ã—㟠+ + + Opening clip failed + クリップã®ã‚ªãƒ¼ãƒ—ンã«å¤±æ•—ã—ã¾ã—㟠+ + + + Phonon::MMF::AudioEqualizer + + %1 Hz + %1 Hz + + + + Phonon::MMF::AudioPlayer + + Getting position failed + å†ç”Ÿä½ç½®ã®å–å¾—ã«å¤±æ•—ã—ã¾ã—㟠+ + + + Phonon::MMF::DsaVideoPlayer + + Video display error + ビデオ表示ã®ã‚¨ãƒ©ãƒ¼ + + + + Phonon::MMF::EffectFactory + + Enabled + è¨±å¯ + + + + Phonon::MMF::EnvironmentalReverb + + Decay HF ratio (%) + DecayHFRatio: Ratio of high-frequency decay time to the value specified by DecayTime. + + + + Decay time (ms) + DecayTime: Time over which reverberation is diminished. + + + + Density (%) + Density Delay between first and subsequent reflections. Note that the S60 platform documentation does not make clear the distinction between this value and the Diffusion value. + + + + Diffusion (%) + Diffusion: Delay between first and subsequent reflections. Note that the S60 platform documentation does not make clear the distinction between this value and the Density value. + + + + Reflections delay (ms) + ReflectionsDelay: Amount of delay between the arrival the direct path from the source and the arrival of the first reflection. + + + + Reflections level (mB) + ReflectionsLevel: Amplitude of reflections. This value is corrected by the RoomLevel to give the final reflection amplitude. + + + + Reverb delay (ms) + ReverbDelay: Amount of time between arrival of the first reflection and start of the late reverberation. + + + + Reverb level (mB) + ReverbLevel Amplitude of reverberations. This value is corrected by the RoomLevel to give the final reverberation amplitude. + + + + Room HF level + RoomHFLevel: Amplitude of low-pass filter used to attenuate the high frequency component of reflected sound. + + + + Room level (mB) + RoomLevel: Master volume control for all reflected sound. + + + + + Phonon::MMF::MediaObject + + Error opening source: type not supported + ソースã®ã‚ªãƒ¼ãƒ—ン時ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: ソースã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ãªã„タイプã§ã™ + + + Error opening source: resource is compressed + ソースã®ã‚ªãƒ¼ãƒ—ン時ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: リソースãŒåœ§ç¸®ã•ã‚Œã¦ã„ã¾ã™ + + + Error opening source: resource not valid + ソースã®ã‚ªãƒ¼ãƒ—ン時ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: ä¸æ­£ãªãƒªã‚½ãƒ¼ã‚¹ã§ã™ + + + Error opening source: media type could not be determined + ソースã®ã‚ªãƒ¼ãƒ—ン時ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: メディアã®ã‚¿ã‚¤ãƒ—ãŒä¸æ˜Žã§ã™ + + + + Phonon::MMF::StereoWidening + + Level (%) + レベル (%) + + + + Phonon::MMF::SurfaceVideoPlayer + + Video display error + ビデオ表示ã®ã‚¨ãƒ©ãƒ¼ + + + Phonon::VolumeSlider - - - - Volume: %1% 音é‡: %1% - - - Use this slider to adjust the volume. The leftmost position is 0%, the rightmost is %1% スライダを用ã„ã¦éŸ³é‡ã‚’指定ã—ã¦ãã ã•ã„。左端ãŒ0%ã€å³ç«¯ãŒ%1%ã«ãªã‚Šã¾ã™ - Muted ミュート @@ -201,12 +472,10 @@ Gstreamer 㨠libgstreamer-plugins-base ãŒæ­£ã—ãインストールã•ã‚Œã¦ Q3Accel - %1, %2 not defined %1, %2 ã¯å®šç¾©ã•ã‚Œã¦ã„ã¾ã›ã‚“ - Ambiguous %1 not handled 曖昧㪠%1 ã¯æ‰±ãˆã¾ã›ã‚“ @@ -214,27 +483,22 @@ Gstreamer 㨠libgstreamer-plugins-base ãŒæ­£ã—ãインストールã•ã‚Œã¦ Q3DataTable - True 真 - False å½ - Insert 挿入 - Update アップデート - Delete 削除 @@ -242,328 +506,250 @@ Gstreamer 㨠libgstreamer-plugins-base ãŒæ­£ã—ãインストールã•ã‚Œã¦ Q3FileDialog - All Files (*.*) ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ«(*.*) - Open オープン - Select a Directory ディレクトリをé¸æŠž - Copy or Move a File ファイルをコピーã¾ãŸã¯ç§»å‹• - Read: %1 読ã¿è¾¼ã¿: %1 - - Write: %1 書ãè¾¼ã¿: %1 - - Cancel キャンセル - - - - All Files (*) ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ«(*) - Name åå‰ - Size サイズ - Type タイプ - Date 日付 - Attributes 属性 - - &OK OK(&O) - Look &in: 検索ã™ã‚‹å ´æ‰€(&I): - - - File &name: ファイルå(&N): - File &type: ファイルタイプ(&T): - Back 戻る - One directory up 1ã¤ä¸Šã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¸ç§»å‹• - Create New Folder æ–°ã—ã„フォルダã®ä½œæˆ - List View 一覧表示 - Detail View 詳細表示 - Preview File Info ファイル情報ã®ãƒ—レビュー - Preview File Contents ファイルã®å†…容ã®ãƒ—レビュー - Read-write 読ã¿è¾¼ã¿/書ã込㿠- Read-only 読ã¿è¾¼ã¿å°‚用 - Write-only 書ãè¾¼ã¿å°‚用 - Inaccessible アクセスä¸å¯ - Symlink to File ファイルã¸ã®ã‚·ãƒ³ãƒœãƒªãƒƒã‚¯ãƒªãƒ³ã‚¯ - Symlink to Directory ディレクトリã¸ã®ã‚·ãƒ³ãƒœãƒªãƒƒã‚¯ãƒªãƒ³ã‚¯ - Symlink to Special スペシャルファイルã¸ã®ã‚·ãƒ³ãƒœãƒªãƒƒã‚¯ãƒªãƒ³ã‚¯ - File ファイル - Dir ディレクトリ - Special スペシャル - - - Open オープン - - Save As åå‰ã‚’付ã‘ã¦ä¿å­˜ - - - &Open オープン(&O) - - &Save ä¿å­˜(&S) - &Rename åå‰ã®å¤‰æ›´(&R) - &Delete 削除(&D) - R&eload リロード(&E) - Sort by &Name åå‰é †ã«ã‚½ãƒ¼ãƒˆ(&N) - Sort by &Size サイズ順ã«ã‚½ãƒ¼ãƒˆ(&S) - Sort by &Date 日付順ã«ã‚½ãƒ¼ãƒˆ(&D) - &Unsorted ソート解除(&U) - Sort ソート - Show &hidden files éš ã—ファイルã®è¡¨ç¤º(&H) - the file ファイル - the directory ディレクトリ - the symlink シンボリックリンク - Delete %1 %1 ã®å‰Šé™¤ - <qt>Are you sure you wish to delete %1 "%2"?</qt> <qt>%1 "%2" を削除ã—ã¾ã™ã‹?</qt> - &Yes ã¯ã„(&Y) - &No ã„ã„ãˆ(&N) - New Folder 1 æ–°ã—ã„フォルダ1 - New Folder æ–°ã—ã„フォルダ - New Folder %1 æ–°ã—ã„フォルダ %1 - Find Directory ディレクトリã®æ¤œç´¢ - - Directories ディレクトリ - Directory: ディレクトリ: - - Error エラー - %1 File not found. Check path and filename. @@ -575,29 +761,24 @@ Check path and filename. Q3LocalFs - - Could not read directory %1 ディレクトリを読ã¿è¾¼ã‚ã¾ã›ã‚“ã§ã—㟠%1 - Could not create directory %1 ディレクトリを作æˆã§ãã¾ã›ã‚“ã§ã—㟠%1 - Could not remove file or directory %1 ファイルã¾ãŸã¯ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’削除ã§ãã¾ã›ã‚“ã§ã—㟠%1 - Could not rename %1 to @@ -609,14 +790,12 @@ to 㸠- Could not open %1 é–‹ã‘ã¾ã›ã‚“ã§ã—㟠%1 - Could not write %1 書ãè¾¼ã‚ã¾ã›ã‚“ã§ã—㟠@@ -626,12 +805,10 @@ to Q3MainWindow - Line up 整列 - Customize... カスタマイズ... @@ -639,7 +816,6 @@ to Q3NetworkProtocol - Operation stopped by the user æ“作ãŒãƒ¦ãƒ¼ã‚¶ã«ã‚ˆã£ã¦åœæ­¢ã•ã‚Œã¾ã—㟠@@ -647,8 +823,6 @@ to Q3ProgressDialog - - Cancel キャンセル @@ -656,28 +830,22 @@ to Q3TabDialog - - OK OK - Apply é©ç”¨ - Help ヘルプ - Defaults デフォルト - Cancel キャンセル @@ -685,38 +853,30 @@ to Q3TextEdit - &Undo å…ƒã«æˆ»ã™(&U) - &Redo ã‚„ã‚Šç›´ã™(&R) - Cu&t 切りå–ã‚Š(&T) - &Copy コピー(&C) - &Paste 貼り付ã‘(&P) - Clear 消去 - - Select All ã™ã¹ã¦ã‚’é¸æŠž @@ -724,67 +884,54 @@ to Q3TitleBar - System システム - Restore up å…ƒã«æˆ»ã™ - Minimize 最å°åŒ– - Restore down å…ƒã«æˆ»ã™ - Maximize 最大化 - Close é–‰ã˜ã‚‹ - Contains commands to manipulate the window ウィンドウをæ“作ã™ã‚‹ã‚³ãƒžãƒ³ãƒ‰ã‚’å«ã¿ã¾ã™ - - Puts a minimized back to normal + Puts a minimized window back to normal 最å°åŒ–ã•ã‚ŒãŸã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ã‚’å…ƒã®ã‚µã‚¤ã‚ºã«æˆ»ã—ã¾ã™ - Moves the window out of the way ウィンドウを隠ã—ã¾ã™ - Puts a maximized window back to normal 最大化ã•ã‚ŒãŸã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ã‚’å…ƒã®ã‚µã‚¤ã‚ºã«æˆ»ã—ã¾ã™ - Makes the window full screen ウィンドウをフルスクリーンã«ã—ã¾ã™ - Closes the window ウィンドウを閉ã˜ã¾ã™ - Displays the name of the window and contains controls to manipulate it ウィンドウã®åå‰ã¨ã€ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ã‚’æ“作ã™ã‚‹ã‚³ãƒ³ãƒˆãƒ­ãƒ¼ãƒ«ã‚’表示ã—ã¾ã™ @@ -792,7 +939,6 @@ to Q3ToolBar - More... ãã®ä»–... @@ -800,51 +946,38 @@ to Q3UrlOperator - - - The protocol `%1' is not supported プロトコル '%1' ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“ - The protocol `%1' does not support listing directories プロトコル '%1' ã¯ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®ãƒªã‚¹ãƒ†ã‚£ãƒ³ã‚°ã‚’サãƒãƒ¼ãƒˆã—ã¦ã„ã¾ã›ã‚“ - The protocol `%1' does not support creating new directories プロトコル '%1' ã¯æ–°ã—ã„ディレクトリã®ä½œæˆã‚’サãƒãƒ¼ãƒˆã—ã¦ã„ã¾ã›ã‚“ - The protocol `%1' does not support removing files or directories プロトコル '%1' ã¯ãƒ•ã‚¡ã‚¤ãƒ«ã¾ãŸã¯ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®å‰Šé™¤ã‚’サãƒãƒ¼ãƒˆã—ã¦ã„ã¾ã›ã‚“ - The protocol `%1' does not support renaming files or directories プロトコル '%1' ã¯ãƒ•ã‚¡ã‚¤ãƒ«ã¾ãŸã¯ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®åå‰ã®å¤‰æ›´ã‚’サãƒãƒ¼ãƒˆã—ã¦ã„ã¾ã›ã‚“ - The protocol `%1' does not support getting files プロトコル '%1' ã¯ãƒ•ã‚¡ã‚¤ãƒ«ã®å–得をサãƒãƒ¼ãƒˆã—ã¦ã„ã¾ã›ã‚“ - The protocol `%1' does not support putting files プロトコル '%1' ã¯ãƒ•ã‚¡ã‚¤ãƒ«ã®é€ä¿¡ã‚’サãƒãƒ¼ãƒˆã—ã¦ã„ã¾ã›ã‚“ - - The protocol `%1' does not support copying or moving files or directories プロトコル '%1' ã¯ãƒ•ã‚¡ã‚¤ãƒ«ã¾ãŸã¯ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®ã‚³ãƒ”ーã¾ãŸã¯ç§»å‹•ã‚’サãƒãƒ¼ãƒˆã—ã¦ã„ã¾ã›ã‚“ - - (unknown) (ä¸æ˜Ž) @@ -852,27 +985,22 @@ to Q3Wizard - &Cancel キャンセル(&C) - < &Back < 戻る(&B) - &Next > 次ã¸(&N) > - &Finish 完了(&F) - &Help ヘルプ(&H) @@ -880,45 +1008,31 @@ to QAbstractSocket - - - - Host not found ホストãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ã§ã—㟠- - - Connection refused 接続ãŒæ‹’å¦ã•ã‚Œã¾ã—㟠- Connection timed out 接続ãŒã‚¿ã‚¤ãƒ ã‚¢ã‚¦ãƒˆã—ã¾ã—㟠- - - Operation on socket is not supported 抽象ソケットクラスã§ã®ã‚½ã‚±ãƒƒãƒˆã®ã‚¨ãƒ©ãƒ¼ ã“ã®ã‚½ã‚±ãƒƒãƒˆã¸ã®ã“ã®æ“作ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“ - Socket operation timed out ソケットæ“作ãŒã‚¿ã‚¤ãƒ ã‚¢ã‚¦ãƒˆã—ã¾ã—㟠- Socket is not connected ソケットãŒæŽ¥ç¶šã•ã‚Œã¦ã„ã¾ã›ã‚“ - Network unreachable ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã¸åˆ°é”ã§ãã¾ã›ã‚“ @@ -926,45 +1040,44 @@ to QAbstractSpinBox - &Step up 上(&S) - Step &down 下(&D) - &Select All ã™ã¹ã¦ã‚’é¸æŠž(&S) + QAccessibleButton + + Press + 押㙠+ + + QApplication - Activate アクティブ㫠- Activates the program's main window メインウィンドウをアクティブã«ã™ã‚‹ - Executable '%1' requires Qt %2, found Qt %3. 実行å¯èƒ½ãƒ•ã‚¡ã‚¤ãƒ« '%1' ã«ã¯ Qt %2 ãŒå¿…è¦ã§ã™ã€‚Qt %3 ãŒè¦‹ã¤ã‹ã‚Šã¾ã—ãŸã€‚ - Incompatible Qt Library Error 互æ›æ€§ã®ãªã„Qtライブラリエラー - QT_LAYOUT_DIRECTION Translate this string to the string 'LTR' in left-to-right languages or to 'RTL' in right-to-left languages (such as Hebrew and Arabic) to get proper widget layout. LTR @@ -973,22 +1086,18 @@ to QAxSelect - Select ActiveX Control ActiveX Control ã‚’é¸æŠž - OK OK - &Cancel キャンセル(&C) - COM &Object: COM オブジェクト(&O): @@ -996,17 +1105,14 @@ to QCheckBox - Uncheck é¸æŠžè§£é™¤ - Check é¸æŠž - Toggle å転 @@ -1014,97 +1120,65 @@ to QColorDialog - Hu&e: 色相(&E): - &Sat: 彩度(&S): - &Val: 明度(&V): - &Red: 赤(&R): - &Green: ç·‘(&G): - Bl&ue: é’(&U): - A&lpha channel: アルファãƒãƒ£ãƒãƒ«(&L): - Select Color 色 - &Basic colors 基本的ãªã‚«ãƒ©ãƒ¼(&B) - &Custom colors カスタムカラー(&C) - &Define Custom Colors >> - カスタムカラーã®å®šç¾©(&D) >> - - - OK - OK - - - Cancel - キャンセル - - - &Add to Custom Colors カスタムカラーã«è¿½åŠ (&A) - - Select color - カラーã®é¸æŠž - QComboBox - - Open オープン - False å½ - True 真 - Close é–‰ã˜ã‚‹ @@ -1112,43 +1186,56 @@ to QCoreApplication - %1: key is empty QSystemSemaphore %1: キーãŒç©ºã§ã™ - %1: unable to make key QSystemSemaphore %1: キーを作æˆã§ãã¾ã›ã‚“ - %1: ftok failed QSystemSemaphore %1: fork ã«å¤±æ•—ã—ã¾ã—㟠+ + %1: already exists + QSystemSemaphore + %1: æ—¢ã«å­˜åœ¨ã—ã¾ã™ + + + %1: does not exist + QSystemSemaphore + %1: 存在ã—ã¾ã›ã‚“ + + + %1: out of resources + QSystemSemaphore + %1: リソースä¸è¶³ã§ã™ + + + %1: unknown error %2 + QSystemSemaphore + %1: 未知ã®ã‚¨ãƒ©ãƒ¼ %2 + QDB2Driver - Unable to connect 接続ã§ãã¾ã›ã‚“ - Unable to commit transaction トランザクションをコミットã§ãã¾ã›ã‚“ - Unable to rollback transaction トランザクションをロールãƒãƒƒã‚¯ã§ãã¾ã›ã‚“ - Unable to set autocommit オートコミットを設定ã§ãã¾ã›ã‚“ @@ -1156,33 +1243,26 @@ to QDB2Result - - Unable to execute statement ステートメントを実行ã§ãã¾ã›ã‚“ - Unable to prepare statement プリペアステートメントを使ãˆã¾ã›ã‚“ - Unable to bind variable 変数をãƒã‚¤ãƒ³ãƒ‰ã§ãã¾ã›ã‚“ - Unable to fetch record %1 レコード %1 をフェッãƒã§ãã¾ã›ã‚“ - Unable to fetch next 次ã®ãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’フェッãƒã§ãã¾ã›ã‚“ - Unable to fetch first 最åˆã®ãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’フェッãƒã§ãã¾ã›ã‚“ @@ -1190,6881 +1270,8481 @@ to QDateTimeEdit - AM AM - am am - PM PM - pm pm - QDial + QDeclarativeAbstractAnimation - - QDial - ダイヤル + Cannot animate non-existent property "%1" + 存在ã—ãªã„プロパティ "%1" ã¯ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³å‡ºæ¥ã¾ã›ã‚“ - - SpeedoMeter - スピードメータ + Cannot animate read-only property "%1" + 読込専用ã®ãƒ—ロパティ "%1" ã¯ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³å‡ºæ¥ã¾ã›ã‚“ - - SliderHandle - スライダãƒãƒ³ãƒ‰ãƒ« + Animation is an abstract class + Animation ã¯æŠ½è±¡ã‚¯ãƒ©ã‚¹ã§ã™ - QDialog + QDeclarativeAnchorAnimation - - What's This? - ヒント? - - - - Done - 終了 + Cannot set a duration of < 0 + è² ã®å€¤ã¯ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³æ™‚é–“ã¨ã—ã¦è¨­å®šã§ãã¾ã›ã‚“ - QDialogButtonBox + QDeclarativeAnchors - - - - OK - OK + Possible anchor loop detected on fill. + fill ã«ã‚ˆã£ã¦ã‚¢ãƒ³ã‚«ãƒ¼ã®ãƒ«ãƒ¼ãƒ—ãŒç™ºç”Ÿã—ã¦ã„ã¾ã™ã€‚ - - Cancel - キャンセル + Possible anchor loop detected on centerIn. + centerIn ã«ã‚ˆã£ã¦ã‚¢ãƒ³ã‚«ãƒ¼ã®ãƒ«ãƒ¼ãƒ—ãŒç™ºç”Ÿã—ã¦ã„ã¾ã™ã€‚ - - Apply - é©ç”¨ + Cannot anchor to an item that isn't a parent or sibling. + 親ã§ã‚‚兄弟ã§ã‚‚ãªã„è¦ç´ ã«ã¯ã‚¢ãƒ³ã‚«ãƒ¼å‡ºæ¥ã¾ã›ã‚“。 - - Ignore - 無視 + Possible anchor loop detected on vertical anchor. + 縦方å‘ã®ã‚¢ãƒ³ã‚«ãƒ¼ã«ã‚ˆã£ã¦ã‚¢ãƒ³ã‚«ãƒ¼ã®ãƒ«ãƒ¼ãƒ—ãŒç™ºç”Ÿã—ã¦ã„ã¾ã™ã€‚ - - Retry - å†è©¦è¡Œ + Possible anchor loop detected on horizontal anchor. + 横方å‘ã®ã‚¢ãƒ³ã‚«ãƒ¼ã«ã‚ˆã£ã¦ã‚¢ãƒ³ã‚«ãƒ¼ã®ãƒ«ãƒ¼ãƒ—ãŒç™ºç”Ÿã—ã¦ã„ã¾ã™ã€‚ - - Abort - 中止 + Cannot specify left, right, and hcenter anchors. + left, right, hcenter ã®ã©ã®ã‚¢ãƒ³ã‚«ãƒ¼ã‚’使用ã—ã¦ã„ã‚‹ã‹é™å®šã§ãã¾ã›ã‚“。 - - Help - ヘルプ + Cannot anchor to a null item. + 空ã®è¦ç´ ã«ã¯ã‚¢ãƒ³ã‚«ãƒ¼å‡ºæ¥ã¾ã›ã‚“。 - - Save - ä¿å­˜ + Cannot anchor a horizontal edge to a vertical edge. + 横方å‘ã®ã‚¨ãƒƒã‚¸ã‹ã‚‰ç¸¦æ–¹å‘ã®ã‚¨ãƒƒã‚¸ã¸ã¯ã‚¢ãƒ³ã‚«ãƒ¼å‡ºæ¥ã¾ã›ã‚“。 - - &Save - ä¿å­˜(&S) + Cannot anchor item to self. + 自分自身ã¸ã¯ã‚¢ãƒ³ã‚«ãƒ¼å‡ºæ¥ã¾ã›ã‚“。 - - Open - オープン + Cannot specify top, bottom, and vcenter anchors. + top, bottom, vcenter ã®ã©ã®ã‚¢ãƒ³ã‚«ãƒ¼ã‚’使用ã—ã¦ã„ã‚‹ã‹é™å®šã§ãã¾ã›ã‚“。 - - &Cancel - キャンセル(&C) + Baseline anchor cannot be used in conjunction with top, bottom, or vcenter anchors. + baseline アンカーを top, bottom, vcenter アンカーã¨çµ„ã¿åˆã‚ã›ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。 - - Close - é–‰ã˜ã‚‹ + Cannot anchor a vertical edge to a horizontal edge. + 縦方å‘ã®ã‚¨ãƒƒã‚¸ã‹ã‚‰æ¨ªæ–¹å‘ã®ã‚¨ãƒƒã‚¸ã¸ã¯ã‚¢ãƒ³ã‚«ãƒ¼å‡ºæ¥ã¾ã›ã‚“。 + + + QDeclarativeAnimatedImage - - &Close - é–‰ã˜ã‚‹(&C) + Qt was built without support for QMovie + Qt 㯠QMovie ã®ã‚µãƒãƒ¼ãƒˆã‚’外ã—ã¦ãƒ“ルドã•ã‚Œã¦ã„ã¾ã™ + + + QDeclarativeBehavior - - Reset - リセット + Cannot change the animation assigned to a Behavior. + Behavior ã¸å‰²ã‚Šå½“ã¦ã‚‰ã‚ŒãŸã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã¯å¤‰æ›´ã§ãã¾ã›ã‚“。 + + + QDeclarativeBinding - - Don't Save - ä¿å­˜ã—ãªã„ + Binding loop detected for property "%1" + プロパティ "%1" ã¸ã®ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã«ãƒ«ãƒ¼ãƒ—ãŒç™ºç”Ÿã—ã¦ã„ã¾ã™ + + + QDeclarativeCompiledBindings - - Close without Saving - ä¿å­˜ã›ãšã«é–‰ã˜ã‚‹ + Binding loop detected for property "%1" + プロパティ "%1" ã¸ã®ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã«ãƒ«ãƒ¼ãƒ—ãŒç™ºç”Ÿã—ã¦ã„ã¾ã™ + + + QDeclarativeCompiler - - Discard - 変更を破棄 + Invalid property assignment: "%1" is a read-only property + 無効ãªãƒ—ロパティã®å€¤: "%1" ã¯èª­è¾¼å°‚用ã®ãƒ—ロパティã§ã™ - - &Yes - ã¯ã„(&Y) + Invalid property assignment: unknown enumeration + 無効ãªãƒ—ロパティã®å€¤: 未知ã®åˆ—挙型ã§ã™ - - Yes to &All - å…¨ã¦ã«ã¯ã„(&A) + Invalid property assignment: string expected + 無効ãªãƒ—ロパティã®å€¤: 文字列を指定ã—ã¦ãã ã•ã„ - - &No - ã„ã„ãˆ(&N) + Invalid property assignment: url expected + 無効ãªãƒ—ロパティã®å€¤: URI を指定ã—ã¦ãã ã•ã„ - - N&o to All - å…¨ã¦ã«ã„ã„ãˆ(&O) + Invalid property assignment: unsigned int expected + 無効ãªãƒ—ロパティã®å€¤: 符å·ãªã—ã®æ•´æ•°ã‚’指定ã—ã¦ãã ã•ã„ - - Save All - ã™ã¹ã¦ä¿å­˜ + Invalid property assignment: int expected + 無効ãªãƒ—ロパティã®å€¤: 整数を指定ã—ã¦ãã ã•ã„ - - Restore Defaults - デフォルトã«æˆ»ã™ + Invalid property assignment: number expected + 無効ãªãƒ—ロパティã®å€¤: 数値を指定ã—ã¦ãã ã•ã„ - - &OK - OK(&O) + Invalid property assignment: color expected + 無効ãªãƒ—ロパティã®å€¤: 色を指定ã—ã¦ãã ã•ã„ - - - QDirModel - - Name - åå‰ + Invalid property assignment: date expected + 無効ãªãƒ—ロパティã®å€¤: 日付を指定ã—ã¦ãã ã•ã„ - - Size - サイズ + Invalid property assignment: time expected + 無効ãªãƒ—ロパティã®å€¤: 時間を指定ã—ã¦ãã ã•ã„ - - Date Modified - æ›´æ–°æ—¥ + Invalid property assignment: datetime expected + 無効ãªãƒ—ロパティã®å€¤: 日付ã¨æ™‚間を指定ã—ã¦ãã ã•ã„ - - Kind - Match OS X Finder - 種類 + Invalid property assignment: point expected + 無効ãªãƒ—ロパティã®å€¤: ä½ç½®ã‚’指定ã—ã¦ãã ã•ã„ - - Type - All other platforms - タイプ + Invalid property assignment: size expected + 無効ãªãƒ—ロパティã®å€¤: サイズを指定ã—ã¦ãã ã•ã„ - - - QDockWidget - - Close - é–‰ã˜ã‚‹ + Invalid property assignment: rect expected + 無効ãªãƒ—ロパティã®å€¤: 矩形を指定ã—ã¦ãã ã•ã„ - - Dock - ドック + Invalid property assignment: boolean expected + 無効ãªãƒ—ロパティã®å€¤: 真å½å€¤ã‚’指定ã—ã¦ãã ã•ã„ - - Float - フロート + Invalid property assignment: 3D vector expected + 無効ãªãƒ—ロパティã®å€¤: 3D ベクターを指定ã—ã¦ãã ã•ã„ - - - QDoubleSpinBox - - More - 増や㙠+ Invalid property assignment: unsupported type "%1" + 無効ãªãƒ—ロパティã®å€¤: 未知ã®åž‹ "%1" ã§ã™ - - Less - 減ら㙠+ Element is not creatable. + è¦ç´ ãŒä½œæˆã§ãã¾ã›ã‚“。 - - - QErrorMessage - - Debug Message: - デãƒãƒƒã‚°ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸: + Component elements may not contain properties other than id + コンãƒãƒ¼ãƒãƒ³ãƒˆè¦ç´ ã« ID 以外ã®ãƒ—ロパティãŒå«ã¾ã‚Œã¦ã„ã¾ã›ã‚“ - - Warning: - 警告: + Invalid component id specification + 無効ãªã‚³ãƒ³ãƒãƒ¼ãƒãƒ³ãƒˆ ID ã®æŒ‡å®šã§ã™ - - Fatal Error: - 致命的ãªã‚¨ãƒ©ãƒ¼: + id is not unique + ID ãŒé‡è¤‡ã—ã¦ã„ã¾ã™ - - &Show this message again - 次回もã“ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’表示ã™ã‚‹(&S) + Invalid component body specification + 無効ãªã‚³ãƒ³ãƒãƒ¼ãƒãƒ³ãƒˆãƒœãƒ‡ã‚£ã®æŒ‡å®šã§ã™ - - &OK - OK(&O) + Component objects cannot declare new properties. + コンãƒãƒ¼ãƒãƒ³ãƒˆã‚ªãƒ–ジェクトã«æ–°ã—ã„プロパティを宣言ã§ãã¾ã›ã‚“。 - - - QFile - - - Destination file exists - æ–°ã—ã„åå‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ã¯æ—¢ã«å­˜åœ¨ã—ã¾ã™ + Component objects cannot declare new signals. + コンãƒãƒ¼ãƒãƒ³ãƒˆã‚ªãƒ–ジェクトã«æ–°ã—ã„シグナルを宣言ã§ãã¾ã›ã‚“。 - - Cannot remove source file - å…ƒã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’削除ã§ãã¾ã›ã‚“ + Component objects cannot declare new functions. + コンãƒãƒ¼ãƒãƒ³ãƒˆã‚ªãƒ–ジェクトã«æ–°ã—ã„関数を宣言ã§ãã¾ã›ã‚“。 - - Cannot open %1 for input - コピー元ファイル %1 を読ã‚ã¾ã›ã‚“ + Cannot create empty component specification + 仕様ãŒç©ºã§ã‚るコンãƒãƒ¼ãƒãƒ³ãƒˆã¯ä½œæˆã§ãã¾ã›ã‚“ - - Cannot open for output - コピー先ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’オープンã§ãã¾ã›ã‚“ + Incorrectly specified signal assignment + 仕様ã¨ç•°ãªã‚‹ã‚·ã‚°ãƒŠãƒ«ãŒå‰²ã‚Šå½“ã¦ã‚‰ã‚Œã¦ã„ã¾ã™ - - Failure to write block - 書ãè¾¼ã¿ã«å¤±æ•—ã—ã¾ã—㟠+ Cannot assign a value to a signal (expecting a script to be run) + 値をシグナルã«å‰²ã‚Šå½“ã¦ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“(ãŸã ã—ã€ã‚¹ã‚¯ãƒªãƒ—トã¯é™¤ãã¾ã™) - - Cannot create %1 for output - コピー先ã¨ã—㦠%1 を作æˆã§ãã¾ã›ã‚“ + Empty signal assignment + シグナルã¸ã®å‰²ã‚Šå½“ã¦ãŒç©ºã§ã™ - - - QFileDialog - - - All Files (*) - ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ«(*) + Empty property assignment + プロパティã®å€¤ãŒç©ºã§ã™ - - Directories - ディレクトリ + Attached properties cannot be used here + アタッãƒã•ã‚ŒãŸãƒ—ロパティã¯ã“ã“ã§ã¯åˆ©ç”¨ã§ãã¾ã›ã‚“ - - - Directory: - ディレクトリ: + Non-existent attached object + アタッãƒã•ã‚ŒãŸã‚ªãƒ–ジェクトãŒå­˜åœ¨ã—ã¾ã›ã‚“ - - - File &name: - ファイルå(&N): + Invalid attached object assignment + 無効ãªã‚¢ã‚¿ãƒƒãƒã•ã‚ŒãŸã‚ªãƒ–ジェクトã¸ã®å‰²ã‚Šå½“㦠- - - - - &Open - オープン(&O) + Cannot assign to non-existent default property + 存在ã—ãªã„デフォルトプロパティã¸ã¯å‰²ã‚Šå½“ã¦ã§ãã¾ã›ã‚“ - - - &Save - ä¿å­˜(&S) + Cannot assign to non-existent property "%1" + 存在ã—ãªã„プロパティ "%1" ã¸ã¯å‰²ã‚Šå½“ã¦ã§ãã¾ã›ã‚“ - - Open - オープン + Invalid use of namespace + 無効ãªãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ã®ä½¿ç”¨æ³•ã§ã™ - Save - ä¿å­˜ + Not an attached property name + アタッãƒã•ã‚ŒãŸãƒ—ロパティã®åå‰ã§ã¯ã‚ã‚Šã¾ã›ã‚“ - -File not found. -Please verify the correct file name was given - -ファイルãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。 -æ­£ã—ã„ファイルåãŒå…¥åŠ›ã•ã‚ŒãŸã‹ã©ã†ã‹ç¢ºèªã—ã¦ãã ã•ã„ + Invalid use of id property + 無効㪠ID プロパティã®ä½¿ç”¨æ³•ã§ã™ - - %1 already exists. -Do you want to replace it? - %1 ã¯ã™ã§ã«å­˜åœ¨ã—ã¾ã™ã€‚ -ç½®ãæ›ãˆã¾ã™ã‹? + Property has already been assigned a value + プロパティã«ã¯æ—¢ã«å€¤ãŒå‰²ã‚Šå½“ã¦ã‚‰ã‚Œã¦ã„ã¾ã™ - - %1 -File not found. -Please verify the correct file name was given. - %1 -ファイルãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。 -æ­£ã—ã„ファイルåãŒå…¥åŠ›ã•ã‚ŒãŸã‹ã©ã†ã‹ç¢ºèªã—ã¦ãã ã•ã„。 + Invalid grouped property access + 無効ãªã‚°ãƒ«ãƒ¼ãƒ—化ã•ã‚ŒãŸãƒ—ロパティã¸ã®ã‚¢ã‚¯ã‚»ã‚¹ã§ã™ - - My Computer - マイ コンピュータ + Cannot assign a value directly to a grouped property + グループ化ã•ã‚ŒãŸãƒ—ロパティã«ç›´æŽ¥å€¤ã‚’割り当ã¦ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“ - - - %1 -Directory not found. -Please verify the correct directory name was given. - %1 -ディレクトリãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。 -æ­£ã—ã„ディレクトリåãŒå…¥åŠ›ã•ã‚ŒãŸã‹ã©ã†ã‹ç¢ºèªã—ã¦ãã ã•ã„。 + Invalid property use + 無効ãªãƒ—ロパティã®ä½¿ç”¨æ³•ã§ã™ - Sort - ソート + Property assignment expected + プロパティã«å€¤ãŒå¿…è¦ã§ã™ - - &Rename - åå‰ã®å¤‰æ›´(&R) + Single property assignment expected + プロパティã«è¤‡æ•°ã®å€¤ã¯å‰²ã‚Šå½“ã¦ã‚‰ã‚Œã¾ã›ã‚“ - - &Delete - 削除(&D) + Unexpected object assignment + オブジェクトを割り当ã¦ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“ - &Reload - リロード(&R) + Cannot assign object to list + オブジェクトをリストã«å‰²ã‚Šå½“ã¦ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“ - Sort by &Name - åå‰é †ã«ã‚½ãƒ¼ãƒˆ(&N) + Can only assign one binding to lists + リストã¸ã¯ä¸€ã¤ã®ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã®ã¿å‰²ã‚Šå½“ã¦ã‚‹ã“ã¨ãŒã§ãã¾ã™ - Sort by &Size - サイズ順ã«ã‚½ãƒ¼ãƒˆ(&S) + Cannot assign primitives to lists + プリミティブをリストã«å‰²ã‚Šå½“ã¦ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“ - Sort by &Date - 日付順ã«ã‚½ãƒ¼ãƒˆ(&D) + Cannot assign multiple values to a script property + 複数ã®å€¤ã‚’スクリプトプロパティã«å‰²ã‚Šå½“ã¦ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“ - &Unsorted - ソート解除(&U) + Invalid property assignment: script expected + 無効ãªãƒ—ロパティã®å€¤: スクリプトを指定ã—ã¦ãã ã•ã„ - - Show &hidden files - éš ã—ファイルã®è¡¨ç¤º(&H) + Cannot assign object to property + オブジェクトをプロパティã«å‰²ã‚Šå½“ã¦ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“ - - - Back - 戻る + "%1" cannot operate on "%2" + "%1" 㯠"%2" ã‚’æ“作ã§ãã¾ã›ã‚“ - - - Parent Directory - 親ディレクトリ + Duplicate default property + デフォルトプロパティãŒé‡è¤‡ã—ã¦ã„ã¾ã™ - - - Create New Folder - æ–°ã—ã„フォルダã®ä½œæˆ + Duplicate property name + プロパティã®åå‰ãŒé‡è¤‡ã—ã¦ã„ã¾ã™ - - - List View - 一覧表示 + Property names cannot begin with an upper case letter + プロパティã®åå‰ã‚’大文字ã‹ã‚‰å§‹ã‚ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“ - - - Detail View - 詳細表示 + Illegal property name + プロパティã®åå‰ãŒç„¡åŠ¹ã§ã™ - - - Look in: - 検索ã™ã‚‹å ´æ‰€: + Duplicate signal name + シグナルã®åå‰ãŒé‡è¤‡ã—ã¦ã„ã¾ã™ - - - Files of type: - ファイルã®ç¨®é¡ž: + Signal names cannot begin with an upper case letter + シグナルã®åå‰ã‚’大文字ã‹ã‚‰å§‹ã‚ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“ - - Drive - ドライブ + Illegal signal name + シグナルã®åå‰ãŒç„¡åŠ¹ã§ã™ - - - File - ファイル + Duplicate method name + メソッドã®åå‰ãŒé‡è¤‡ã—ã¦ã„ã¾ã™ - - File Folder - Match Windows Explorer - ファイルフォルダ + Method names cannot begin with an upper case letter + メソッドã®åå‰ã‚’大文字ã‹ã‚‰å§‹ã‚ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“ - - Folder - All other platforms - フォルダ + Illegal method name + メソッドã®åå‰ãŒç„¡åŠ¹ã§ã™ - - Alias - Mac OS X Finder - エイリアス + Property value set multiple times + 複数回プロパティã«å€¤ã‚’割り当ã¦ã¦ã„ã¾ã™ - - Shortcut - All other platforms - ショートカット + Invalid property nesting + 無効ãªãƒ—ロパティã®ãƒã‚¹ãƒˆã§ã™ - - Unknown - ä¸æ˜Ž + Cannot override FINAL property + FINAL プロパティを上書ãã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“ - - All Files (*.*) - ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ«(*.*) + Invalid property type + 無効ãªãƒ—ロパティã®åž‹ã§ã™ - - Save As - åå‰ã‚’付ã‘ã¦ä¿å­˜ + Invalid empty ID + 空㮠ID ã¯ç„¡åŠ¹ã§ã™ - Open - オープン + IDs cannot start with an uppercase letter + ID を大文字ã‹ã‚‰å§‹ã‚ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“ - Select a Directory - ディレクトリをé¸æŠž + IDs must start with a letter or underscore + ID ã¯è‹±å­—ã‚‚ã—ãã¯ã‚¢ãƒ³ãƒ€ãƒ¼ã‚¹ã‚³ã‚¢ã§å§‹ã‚ã¦ãã ã•ã„ - - '%1' is write protected. -Do you want to delete it anyway? - '%1' ã¯æ›¸ãè¾¼ã¿ãŒç¦æ­¢ã•ã‚Œã¦ã„ã¾ã™ã€‚ -本当ã«å‰Šé™¤ã—ã¾ã™ã‹? + IDs must contain only letters, numbers, and underscores + ID ã«ã¯è‹±æ•°å­—ãŠã‚ˆã³ã‚¢ãƒ³ãƒ€ãƒ¼ã‚¹ã‚³ã‚¢ã®ã¿ä½¿ç”¨ã§ãã¾ã™ - - Are sure you want to delete '%1'? - '%1' を本当ã«å‰Šé™¤ã—ã¾ã™ã‹? + ID illegally masks global JavaScript property + ID ã¯ã‚°ãƒ­ãƒ¼ãƒãƒ«ãª JavaScript ã®ãƒ—ロパティをä¸æ­£ã«éš ã—ã¦ã„ã¾ã™ - - Could not delete directory. - ディレクトリを削除ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ + No property alias location + プロパティã®ã‚¨ã‚¤ãƒªã‚¢ã‚¹ã®ãƒ‘スãŒã‚ã‚Šã¾ã›ã‚“ - - Find Directory - ディレクトリã®æ¤œç´¢ + Invalid alias location + 無効ãªã‚¨ã‚¤ãƒªã‚¢ã‚¹ã®ãƒ‘ス - - Show - 表示 + Invalid alias reference. An alias reference must be specified as <id> or <id>.<property> + 無効ãªã‚¨ã‚¤ãƒªã‚¢ã‚¹ã®å‚ç…§ã§ã™ã€‚エイリアスã®å‚照先㯠<ID> ã‚‚ã—ã㯠<ID>.<プロパティ> ã§ãªãã¦ã¯ã„ã‘ã¾ã›ã‚“ - - &New Folder - æ–°ã—ã„フォルダ(&N) + Invalid alias reference. Unable to find id "%1" + 無効ãªã‚¨ã‚¤ãƒªã‚¢ã‚¹ã®å‚ç…§ã§ã™ã€‚ ID "%1" ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ + + + QDeclarativeComponent - - - &Choose - é¸æŠž(&C) + Invalid empty URL + 空㮠URL ã¯ç„¡åŠ¹ã§ã™ + + + QDeclarativeCompositeTypeManager - - New Folder - æ–°ã—ã„フォルダ + Resource %1 unavailable + リソース %1 ãŒåˆ©ç”¨ã§ãã¾ã›ã‚“ - - Recent Places - 履歴 + Namespace %1 cannot be used as a type + ãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ %1 ã‚’åž‹ã¨ã—ã¦ä½¿ç”¨ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“ - - - Forward - 進む + %1 %2 + %1 %2 - - Remove - 削除 + Type %1 unavailable + åž‹ %1 ãŒåˆ©ç”¨ã§ãã¾ã›ã‚“ - QFileSystemModel + QDeclarativeConnections - - Name - åå‰ + Cannot assign to non-existent property "%1" + 存在ã—ãªã„プロパティ "%1" ã¸ã¯å‰²ã‚Šå½“ã¦ã§ãã¾ã›ã‚“ - - Size - サイズ + Connections: nested objects not allowed + 接続: オブジェクトã®ãƒã‚¹ãƒˆã¯è¨±å¯ã•ã‚Œã¦ã„ã¾ã›ã‚“ - - Date Modified - æ›´æ–°æ—¥ + Connections: syntax error + 接続: 構文エラー - - Kind - Match OS X Finder - 種類 + Connections: script expected + 接続: スクリプトを指定ã—ã¦ãã ã•ã„ + + + QDeclarativeEngine - - Type - All other platforms - タイプ + executeSql called outside transaction() + transaction() ã®å¤–部ã‹ã‚‰ executeSql ãŒå‘¼ã³å‡ºã•ã‚Œã¾ã—㟠- - - %1 TB - %1 TB + Read-only Transaction + 読込専用ã®ãƒˆãƒ©ãƒ³ã‚¶ã‚¯ã‚·ãƒ§ãƒ³ã§ã™ - - - %1 GB - %1 GB + Version mismatch: expected %1, found %2 + ãƒãƒ¼ã‚¸ãƒ§ãƒ³ãŒä¸€è‡´ã—ã¾ã›ã‚“: 予期ã—ãŸãƒãƒ¼ã‚¸ãƒ§ãƒ³ã¯ %1 ã§ã™ãŒã€ %2 ãŒè¦‹ã¤ã‹ã‚Šã¾ã—㟠- - - %1 MB - %1 MB + SQL transaction failed + SQL ã®ãƒˆãƒ©ãƒ³ã‚¶ã‚¯ã‚·ãƒ§ãƒ³ã‚’失敗ã—ã¾ã—㟠- - - %1 KB - %1 KB + transaction: missing callback + トランザクション: コールãƒãƒƒã‚¯ãŒæ¬ ã‘ã¦ã„ã¾ã™ - - - %1 bytes - %1 ãƒã‚¤ãƒˆ + SQL: database version mismatch + SQL: データーベースã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ãŒä¸€è‡´ã—ã¾ã›ã‚“ + + + QDeclarativeFlipable - - Invalid filename - 無効ãªãƒ•ã‚¡ã‚¤ãƒ«å + front is a write-once property + front ã¯ä¸€åº¦ã®ã¿æ›¸ãè¾¼ã¿å¯èƒ½ãªãƒ—ロパティã§ã™ - - <b>The name "%1" can not be used.</b><p>Try using another name, with fewer characters or no punctuations marks. - <b>ファイルå "%1" ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。</b><p>åå‰ã‚’短ãã—ãŸã‚Šã€ã‚¢ã‚¯ã‚»ãƒ³ãƒˆè¨˜å·ãªã©ã‚’削除ã—ã¦å†åº¦è©¦ã—ã¦ãã ã•ã„。 + back is a write-once property + back ã¯ä¸€åº¦ã®ã¿æ›¸ãè¾¼ã¿å¯èƒ½ãªãƒ—ロパティã§ã™ + + + QDeclarativeImportDatabase - - My Computer - マイ コンピュータ + module "%1" definition "%2" not readable + "%1" モジュールã®å®šç¾© "%2" ãŒèª­ã‚ã¾ã›ã‚“ - - Computer - コンピュータ + plugin cannot be loaded for module "%1": %2 + "%1" モジュール用ã®ãƒ—ラグインãŒãƒ­ãƒ¼ãƒ‰ã§ãã¾ã›ã‚“: %2 - - - QFontDatabase - - - Normal - ã“ã“ã¯ã©ã†è¨³ã™ã¹ãã‹... - æ˜Žæœ - - - - - - Bold - ゴシック - - - - - Demi Bold - Demi Bold + module "%1" plugin "%2" not found + "%1" モジュール㮠"%2" プラグインãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ - - - - Black - 太字 + module "%1" version %2.%3 is not installed + ãƒãƒ¼ã‚¸ãƒ§ãƒ³ %2.%3 ã® "%1" モジュールãŒã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•ã‚Œã¦ã„ã¾ã›ã‚“ - - Demi - Demi + module "%1" is not installed + "%1" モジュールãŒã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•ã‚Œã¦ã„ã¾ã›ã‚“ - - - Light - ç´°å­— + "%1": no such directory + "%1": ãã®ã‚ˆã†ãªãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¯ã‚ã‚Šã¾ã›ã‚“ - - - Italic - イタリック + import "%1" has no qmldir and no namespace + import ã™ã‚‹ "%1" ã« qmldir ã‚‚ãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ã‚‚ã‚ã‚Šã¾ã›ã‚“ - - - Oblique - 斜体 + - %1 is not a namespace + - %1 ã¯ãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ã§ã¯ã‚ã‚Šã¾ã›ã‚“ - - Any - ã™ã¹ã¦ + - nested namespaces not allowed + - ãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ã®ãƒã‚¹ãƒˆã¯è¨±å¯ã•ã‚Œã¦ã„ã¾ã›ã‚“ - - Latin - ラテン + local directory + ローカルディレクトリ - - Greek - ギリシャ + is ambiguous. Found in %1 and in %2 + を特定ã§ãã¾ã›ã‚“。%1 㨠%2 ã®åŒæ–¹ã§è¦‹ã¤ã‘ã¾ã—㟠- - Cyrillic - キリル + is ambiguous. Found in %1 in version %2.%3 and %4.%5 + を特定ã§ãã¾ã›ã‚“。%1 ã«ãƒãƒ¼ã‚¸ãƒ§ãƒ³ %2.%3 㨠%4.%5 ã®åŒæ–¹ã‚’見ã¤ã‘ã¾ã—㟠- - Armenian - アルメニア + is instantiated recursively + ã®ä½¿ç”¨ã®éš›ã«å†å¸°ãŒç™ºç”Ÿã—ã¦ã„ã¾ã™ - - Hebrew - ヘブライ + is not a type + ã¯åž‹ã§ã¯ã‚ã‚Šã¾ã›ã‚“ + + + QDeclarativeKeyNavigationAttached - - Arabic - アラビア + KeyNavigation is only available via attached properties + KeyNavigation ã¯ã‚¢ã‚¿ãƒƒãƒãƒ‰ãƒ»ãƒ—ロパティ(Attached Property: åž‹å.プロパティå)ã®å½¢å¼ã§ã®ã¿åˆ©ç”¨ã§ãã¾ã™ + + + QDeclarativeKeysAttached - - Syriac - シリア + Keys is only available via attached properties + Keys ã¯ã‚¢ã‚¿ãƒƒãƒãƒ‰ãƒ»ãƒ—ロパティ(Attached Property: åž‹å.プロパティå)ã®å½¢å¼ã§ã®ã¿åˆ©ç”¨ã§ãã¾ã™ + + + QDeclarativeListModel - - Thaana - ターナ + remove: index %1 out of range + remove: インデックス %1 ã¯æœ‰åŠ¹ç¯„囲外ã®å€¤ã§ã™ - - Devanagari - デーヴァナーガリー + insert: value is not an object + insert: オブジェクト以外ã®å€¤ã¯æŒ¿å…¥ã§ãã¾ã›ã‚“ - - Bengali - ベンガル + insert: index %1 out of range + insert: インデックス %1 ã¯æœ‰åŠ¹ç¯„囲外ã®å€¤ã§ã™ - - Gurmukhi - グルムキー + move: out of range + move: 有効範囲外ã®å€¤ã§ã™ - - Gujarati - グジャラート + append: value is not an object + append: オブジェクト以外ã®å€¤ã¯è¿½åŠ ã§ãã¾ã›ã‚“ - - Oriya - オリヤー + set: value is not an object + set: オブジェクト以外ã®å€¤ã¯ä»£å…¥ã§ãã¾ã›ã‚“ - - Tamil - タミル + set: index %1 out of range + set: インデックス %1 ã¯æœ‰åŠ¹ç¯„囲外ã®å€¤ã§ã™ - - Telugu - テルグ + ListElement: cannot contain nested elements + ListElement: ãƒã‚¹ãƒˆã—ãŸã‚¨ãƒ¬ãƒ¡ãƒ³ãƒˆã¯ä¿æŒã§ãã¾ã›ã‚“ - - Kannada - カンナダ + ListElement: cannot use reserved "id" property + ListElement: 予約語 "id" をプロパティã«ä½¿ç”¨ã§ãã¾ã›ã‚“ - - Malayalam - マラヤーラム + ListElement: cannot use script for property value + ListElement: スクリプトをプロパティã®å€¤ã«ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“ - - Sinhala - シンãƒãƒ© + ListModel: undefined property '%1' + ListModel: '%1' ã¯æœªå®šç¾©ã®ãƒ—ロパティã§ã™ + + + QDeclarativeLoader - - Thai - タイ + Loader does not support loading non-visual elements. + Loader ã¯å¯è¦–化ã§ããªã„è¦ç´ ã®èª­ã¿è¾¼ã¿ã‚’サãƒãƒ¼ãƒˆã—ã¦ã„ã¾ã›ã‚“。 + + + QDeclarativeParentAnimation - - Lao - ラーオ + Unable to preserve appearance under complex transform + 複雑ãªå¤‰æ›ã‚’ä¼´ã†å¤–観ã¯ä¿æŒã§ãã¾ã›ã‚“ - - Tibetan - ãƒãƒ™ãƒƒãƒˆ + Unable to preserve appearance under non-uniform scale + ä¸å‡ç­‰ãªæ‹¡å¤§/縮å°ã‚’ä¼´ã†å¤–観ã¯ä¿æŒã§ãã¾ã›ã‚“ - - Myanmar - ビルマ + Unable to preserve appearance under scale of 0 + サイズãŒ0ã«ç¸®å°ã•ã‚Œã‚‹å¤‰æ›ã‚’ä¼´ã†å¤–観ã¯ä¿æŒã§ãã¾ã›ã‚“ + + + QDeclarativeParentChange - - Georgian - グルジア + Unable to preserve appearance under complex transform + 複雑ãªå¤‰æ›ã‚’ä¼´ã†å¤–観ã¯ä¿æŒã§ãã¾ã›ã‚“ - - Khmer - クメール + Unable to preserve appearance under non-uniform scale + ä¸å‡ç­‰ãªæ‹¡å¤§/縮å°ã‚’ä¼´ã†å¤–観ã¯ä¿æŒã§ãã¾ã›ã‚“ - - Simplified Chinese - 簡体中国 + Unable to preserve appearance under scale of 0 + サイズãŒ0ã«ç¸®å°ã•ã‚Œã‚‹å¤‰æ›ã‚’ä¼´ã†å¤–観ã¯ä¿æŒã§ãã¾ã›ã‚“ + + + QDeclarativeParser - - Traditional Chinese - ç¹ä½“中国 + Illegal unicode escape sequence + 無効㪠Unicode ã®ã‚¨ã‚¹ã‚±ãƒ¼ãƒ—シーケンスã§ã™ - - Japanese - 日本 + Illegal character + 無効ãªæ–‡å­—ã§ã™ - - Korean - ãƒãƒ³ã‚°ãƒ« + Unclosed string at end of line + 文字列ãŒè¡Œæœ«ã§é–‰ã˜ã¦ã„ã¾ã›ã‚“ - - Vietnamese - ベトナム + Illegal escape squence + 無効ãªã‚¨ã‚¹ã‚±ãƒ¼ãƒ—シーケンスã§ã™ - - Symbol - è¨˜å· + Unclosed comment at end of file + コメントãŒè¡Œæœ«ã§é–‰ã˜ã¦ã„ã¾ã›ã‚“ - - Ogham - オガム + Illegal syntax for exponential number + 無効ãªæŒ‡æ•°ã®æ§‹æ–‡ã§ã™ - - Runic - ルーン + Identifier cannot start with numeric literal + 識別å­ã¯æ•°å­—ã§å§‹ã‚ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“ - - - QFontDialog - - &Font - フォント(&F) + Unterminated regular expression literal + æ­£è¦è¡¨ç¾ãƒªãƒ†ãƒ©ãƒ«ãŒé–‰ã˜ã¦ã„ã¾ã›ã‚“ - - Font st&yle - フォントスタイル(&Y) + Invalid regular expression flag '%0' + '%0' ã¯ç„¡åŠ¹ãªæ­£è¦è¡¨ç¾ã®ãƒ•ãƒ©ã‚°ã§ã™ - - &Size - サイズ(&S) + Unterminated regular expression backslash sequence + æ­£è¦è¡¨ç¾ã®ãƒãƒƒã‚¯ã‚¹ãƒ©ãƒƒã‚·ãƒ¥ã‚¨ã‚¹ã‚±ãƒ¼ãƒ—ãŒé–‰ã˜ã¦ã„ã¾ã›ã‚“ - - Effects - 文字飾り + Unterminated regular expression class + æ­£è¦è¡¨ç¾ã®æ–‡å­—クラスãŒé–‰ã˜ã¦ã„ã¾ã›ã‚“ - - Stri&keout - å–り消ã—ç·š(&K) + Syntax error + 構文エラー - - &Underline - 下線(&U) + Unexpected token `%1' + '%1' ã¯äºˆæœŸã—ãªã„トークンã§ã™ - - Sample - サンプル + Expected token `%1' + トークン '%1' を予期ã—ã¦ã¾ã™ - - Wr&iting System - 言語(&I) + Property value set multiple times + 複数回プロパティã«å€¤ã‚’割り当ã¦ã¦ã„ã¾ã™ - - - Select Font - フォントã®é¸æŠž + Expected type name + 予期ã™ã‚‹åž‹ã®åå‰ - - - QFtp - - - Not connected - 未接続ã§ã™ + Invalid import qualifier ID + import ã™ã‚‹ãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ã® ID ãŒç„¡åŠ¹ã§ã™ - - - Host %1 not found - ホスト %1 ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ã§ã—㟠+ Reserved name "Qt" cannot be used as an qualifier + 予約語 "Qt" ã‚’ import ã™ã‚‹ãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ã«ä½¿ç”¨ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“ - - - Connection refused to host %1 - ホスト %1 ã¸ã®æŽ¥ç¶šãŒæ‹’å¦ã•ã‚Œã¾ã—㟠+ Script import qualifiers must be unique. + スクリプトを import ã™ã‚‹ãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ã¯ä¸€æ„ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ - - Connection timed out to host %1 - ホスト %1 ã¸ã®æŽ¥ç¶šãŒã‚¿ã‚¤ãƒ ã‚¢ã‚¦ãƒˆã—ã¾ã—㟠+ Script import requires a qualifier + スクリプトを import ã™ã‚‹éš›ã«ã¯ãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ã®æŒ‡å®šãŒå¿…è¦ã§ã™ - - - - Connected to host %1 - ホスト %1 ã«æŽ¥ç¶šã—ã¾ã—㟠+ Library import requires a version + ライブラリ㮠import ã«ã¯ãƒãƒ¼ã‚¸ãƒ§ãƒ³ãŒå¿…è¦ã§ã™ - - - Connection refused for data connection - データ接続ã®ãŸã‚ã®æŽ¥ç¶šãŒæ‹’å¦ã•ã‚Œã¾ã—㟠+ Expected parameter type + 予期ã™ã‚‹ãƒ‘ラメータã®åž‹ - - - - - Unknown error - ä¸æ˜Žãªã‚¨ãƒ©ãƒ¼ + Invalid property type modifier + 無効ãªãƒ—ロパティã®åž‹ã®ä¿®é£¾å­ - - - Connecting to host failed: -%1 - ホストã¸ã®æŽ¥ç¶šã«å¤±æ•—ã—ã¾ã—ãŸ: -%1 + Unexpected property type modifier + 予期ã—ãªã„プロパティã®åž‹ã®ä¿®é£¾å­ - - - Login failed: -%1 - ログインã«å¤±æ•—ã—ã¾ã—ãŸ: -%1 + Expected property type + 予期ã™ã‚‹ãƒ—ロパティã®åž‹ - - - Listing directory failed: -%1 - ディレクトリã®ãƒªã‚¹ãƒˆã«å¤±æ•—ã—ã¾ã—ãŸ: -%1 + Readonly not yet supported + Readonly ã¯ã¾ã ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“ - - - Changing directory failed: -%1 - ディレクトリã®å¤‰æ›´ã«å¤±æ•—ã—ã¾ã—ãŸ: -%1 + JavaScript declaration outside Script element + Script è¦ç´ ã®å¤–部ã§ã® JavaScript ã®å®£è¨€ + + + QDeclarativePauseAnimation - - - Downloading file failed: -%1 - ファイルã®ãƒ€ã‚¦ãƒ³ãƒ­ãƒ¼ãƒ‰ã«å¤±æ•—ã—ã¾ã—ãŸ: -%1 + Cannot set a duration of < 0 + è² ã®å€¤ã¯ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³æ™‚é–“ã¨ã—ã¦è¨­å®šã§ãã¾ã›ã‚“ + + + QDeclarativePixmap - - - Uploading file failed: -%1 - ファイルã®ã‚¢ãƒƒãƒ—ロードã«å¤±æ•—ã—ã¾ã—ãŸ: -%1 + Error decoding: %1: %2 + デコード中ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: %1: %2 - - - Removing file failed: -%1 - ファイルã®å‰Šé™¤ã«å¤±æ•—ã—ã¾ã—ãŸ: -%1 + Failed to get image from provider: %1 + プロãƒã‚¤ãƒ€ãƒ¼ã‹ã‚‰ã®ç”»åƒã®å–å¾—ã«å¤±æ•—ã—ã¾ã—ãŸ: %1 - - - Creating directory failed: -%1 - ディレクトリã®ä½œæˆã«å¤±æ•—ã—ã¾ã—ãŸ: -%1 + Cannot open: %1 + é–‹ã‘ã¾ã›ã‚“ã§ã—ãŸ: %1 + + + QDeclarativePropertyAnimation - - - Removing directory failed: -%1 - ディレクトリã®å‰Šé™¤ã«å¤±æ•—ã—ã¾ã—ãŸ: -%1 + Cannot set a duration of < 0 + è² ã®å€¤ã¯ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³æ™‚é–“ã¨ã—ã¦è¨­å®šã§ãã¾ã›ã‚“ + + + QDeclarativePropertyChanges - - - - Connection closed - 接続ãŒé–‰ã˜ã‚‰ã‚Œã¾ã—㟠+ PropertyChanges does not support creating state-specific objects. + PropertyChanges ã¯çŠ¶æ…‹ç‰¹æœ‰ã®ã‚ªãƒ–ジェクトã®ä½œæˆã‚’サãƒãƒ¼ãƒˆã—ã¦ã„ã¾ã›ã‚“。 - - Host %1 found - ホスト %1 ãŒè¦‹ã¤ã‹ã‚Šã¾ã—㟠+ Cannot assign to non-existent property "%1" + 存在ã—ãªã„プロパティ "%1" ã¸ã¯å‰²ã‚Šå½“ã¦ã§ãã¾ã›ã‚“ - - Connection to %1 closed - %1 ã¸ã®æŽ¥ç¶šãŒé–‰ã˜ã‚‰ã‚Œã¾ã—㟠+ Cannot assign to read-only property "%1" + 読込専用ã®ãƒ—ロパティ "%1" ã¸ã¯å‰²ã‚Šå½“ã¦ã§ãã¾ã›ã‚“ + + + QDeclarativeTextInput - - Host found - ホストãŒè¦‹ã¤ã‹ã‚Šã¾ã—㟠+ Could not load cursor delegate + カーソルデリゲートãŒãƒ­ãƒ¼ãƒ‰ã§ãã¾ã›ã‚“ - - Connected to host - ホストã«æŽ¥ç¶šã—ã¾ã—㟠+ Could not instantiate cursor delegate + カーソルデリゲートã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã‚’作æˆã§ãã¾ã›ã‚“ - QHostInfo + QDeclarativeVME - - Unknown error - ä¸æ˜Žãªã‚¨ãƒ©ãƒ¼ + Unable to create object of type %1 + åž‹ %1 ã®ã‚ªãƒ–ジェクトを作æˆã§ãã¾ã›ã‚“ - - - QHostInfoAgent - - - - - - - - - Host not found - ホストãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ + Cannot assign value %1 to property %2 + プロパティ %2 ã¸å€¤ %1 を割り当ã¦ã§ãã¾ã›ã‚“ - - - - - Unknown address type - ä¸æ˜Žãªã‚¢ãƒ‰ãƒ¬ã‚¹åž‹ã§ã™ + Cannot assign object type %1 with no default method + åž‹ %1 ã®ã‚ªãƒ–ジェクトをデフォルトメソッドãªã—ã«å‰²ã‚Šå½“ã¦ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“ - - - - Unknown error - ä¸æ˜Žãªã‚¨ãƒ©ãƒ¼ + Cannot connect mismatched signal/slot %1 %vs. %2 + åž‹ã®åˆã‚ãªã„シグナルã¨ã‚¹ãƒ­ãƒƒãƒˆ(%1 %vs %2)を接続ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“ - - - QHttp - - HTTPS connection requested but SSL support not compiled in - HTTPSã«ã‚ˆã‚‹æŽ¥ç¶šãŒè¦æ±‚ã•ã‚Œã¾ã—ãŸãŒã€SSLã®ã‚µãƒãƒ¼ãƒˆãŒã‚³ãƒ³ãƒ‘イル時ã«çµ„ã¿è¾¼ã¾ã‚Œã¦ã„ãªã„ãŸã‚ã€æŽ¥ç¶šã§ãã¾ã›ã‚“ + Cannot assign an object to signal property %1 + オブジェクトをシグナルプロパティ %1 ã«å‰²ã‚Šå½“ã¦ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“ - - - - - Unknown error - ä¸æ˜Žãªã‚¨ãƒ©ãƒ¼ + Cannot assign object to list + オブジェクトをリストã«å‰²ã‚Šå½“ã¦ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“ - - - Request aborted - è¦æ±‚ãŒä¸­æ­¢ã•ã‚Œã¾ã—㟠+ Cannot assign object to interface property + オブジェクトをインターフェースプロパティã«å‰²ã‚Šå½“ã¦ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“ - - - No server set to connect to - 接続ãŒè¨­å®šã•ã‚Œã¦ã„るサーãƒãŒã‚ã‚Šã¾ã›ã‚“ + Unable to create attached object + アタッãƒã•ã‚ŒãŸã‚ªãƒ–ジェクトを作æˆã§ãã¾ã›ã‚“ - - - Wrong content length - コンテンツã®é•·ã•ãŒæ­£ã—ãã‚ã‚Šã¾ã›ã‚“ + Cannot set properties on %1 as it is null + %1 ã®ãƒ—ロパティãŒç©ºã®ãŸã‚値を代入ã§ãã¾ã›ã‚“ + + + QDeclarativeVisualDataModel - - - Server closed connection unexpectedly - サーãƒã®æŽ¥ç¶šãŒäºˆæœŸã›ãšé–‰ã˜ã‚‰ã‚Œã¾ã—㟠+ Delegate component must be Item type. + デリゲートコンãƒãƒ¼ãƒãƒ³ãƒˆã®åž‹ã¯ Item ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ + + + QDeclarativeXmlListModel - - Unknown authentication method - éžå¯¾å¿œã®èªè¨¼æ–¹æ³•ãŒè¦æ±‚ã•ã‚Œã¾ã—㟠+ Qt was built without support for xmlpatterns + Qt 㯠xmlpatterns ã®ã‚µãƒãƒ¼ãƒˆã‚’外ã—ã¦ãƒ“ルドã•ã‚Œã¦ã„ã¾ã™ + + + QDeclarativeXmlListModelRole - - Error writing response to device - デãƒã‚¤ã‚¹ã¸ã®æ›¸ãè¾¼ã¿æ™‚ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—㟠+ An XmlRole query must not start with '/' + XmlRorl ã®ã‚¯ã‚¨ãƒªãƒ¼ã‚’ '/' ã§å§‹ã‚ã¦ã¯ã„ã‘ã¾ã›ã‚“ + + + QDeclarativeXmlRoleList - - - Connection refused - 接続ãŒæ‹’å¦ã•ã‚Œã¾ã—㟠+ An XmlListModel query must start with '/' or "//" + XmlListModel ã®ã‚¯ã‚¨ãƒªãƒ¼ã¯ '/' ã‹ "//" ã§å§‹ã¾ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ + + + QDial - - - - Host %1 not found - ホスト %1 ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ã§ã—㟠+ QDial + ダイヤル - - - - - HTTP request failed - HTTPè¦æ±‚ã«å¤±æ•—ã—ã¾ã—㟠+ SpeedoMeter + スピードメータ - - - Invalid HTTP response header - 無効ãªHTTP応答ヘッダã§ã™ + SliderHandle + スライダãƒãƒ³ãƒ‰ãƒ« + + + QDialog - - - - - Invalid HTTP chunked body - 無効ãªHTTPãƒãƒ£ãƒ³ã‚¯ãƒ‰ãƒœãƒ‡ã‚£ã§ã™ + What's This? + ヒント? - - Host %1 found - ホスト %1 ãŒè¦‹ã¤ã‹ã‚Šã¾ã—㟠+ Done + 終了 + + + QDialogButtonBox + + OK + OK + + + Cancel + キャンセル + + + Apply + é©ç”¨ + + + Ignore + 無視 + + + Retry + å†è©¦è¡Œ + + + Abort + 中止 + + + Help + ヘルプ + + + Save + ä¿å­˜ + + + &Save + ä¿å­˜(&S) + + + Open + オープン + + + &Cancel + キャンセル(&C) + + + Close + é–‰ã˜ã‚‹ + + + &Close + é–‰ã˜ã‚‹(&C) + + + Reset + リセット + + + Don't Save + ä¿å­˜ã—ãªã„ + + + Close without Saving + ä¿å­˜ã›ãšã«é–‰ã˜ã‚‹ + + + Discard + 変更を破棄 + + + &Yes + ã¯ã„(&Y) + + + Yes to &All + å…¨ã¦ã«ã¯ã„(&A) + + + &No + ã„ã„ãˆ(&N) + + + N&o to All + å…¨ã¦ã«ã„ã„ãˆ(&O) + + + Save All + ã™ã¹ã¦ä¿å­˜ + + + Restore Defaults + デフォルトã«æˆ»ã™ + + + &OK + OK(&O) + + + + QDirModel + + Name + åå‰ + + + Size + サイズ + + + Date Modified + æ›´æ–°æ—¥ + + + Kind + Match OS X Finder + 種類 + + + Type + All other platforms + タイプ + + + + QDockWidget + + Close + é–‰ã˜ã‚‹ + + + Dock + ドック + + + Float + フロート + + + + QDoubleSpinBox + + More + 増や㙠+ + + Less + 減ら㙠+ + + + QErrorMessage + + Debug Message: + デãƒãƒƒã‚°ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸: + + + Warning: + 警告: + + + Fatal Error: + 致命的ãªã‚¨ãƒ©ãƒ¼: + + + &Show this message again + 次回もã“ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’表示ã™ã‚‹(&S) + + + &OK + OK(&O) + + + + QFile + + Destination file exists + æ–°ã—ã„åå‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ã¯æ—¢ã«å­˜åœ¨ã—ã¾ã™ + + + Will not rename sequential file using block copy + ブロックコピーを用ã„ã¦ã‚·ãƒ¼ã‚±ãƒ³ã‚·ãƒ£ãƒ«ãƒ•ã‚¡ã‚¤ãƒ«ã®åå‰ã‚’変更ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“ + + + Cannot remove source file + å…ƒã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’削除ã§ãã¾ã›ã‚“ + + + Cannot open %1 for input + コピー元ファイル %1 を読ã‚ã¾ã›ã‚“ + + + Cannot open for output + コピー先ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’オープンã§ãã¾ã›ã‚“ + + + Failure to write block + 書ãè¾¼ã¿ã«å¤±æ•—ã—ã¾ã—㟠+ + + Cannot create %1 for output + コピー先ã¨ã—㦠%1 を作æˆã§ãã¾ã›ã‚“ + + + + QFileDialog + + All Files (*) + ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ«(*) + + + Directories + ディレクトリ + + + Directory: + ディレクトリ: + + + File &name: + ファイルå(&N): + + + &Open + オープン(&O) + + + &Save + ä¿å­˜(&S) + + + Open + オープン + + + %1 already exists. +Do you want to replace it? + %1 ã¯ã™ã§ã«å­˜åœ¨ã—ã¾ã™ã€‚ +ç½®ãæ›ãˆã¾ã™ã‹? + + + %1 +File not found. +Please verify the correct file name was given. + %1 +ファイルãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。 +æ­£ã—ã„ファイルåãŒå…¥åŠ›ã•ã‚ŒãŸã‹ã©ã†ã‹ç¢ºèªã—ã¦ãã ã•ã„。 + + + My Computer + マイ コンピュータ + + + %1 +Directory not found. +Please verify the correct directory name was given. + %1 +ディレクトリãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。 +æ­£ã—ã„ディレクトリåãŒå…¥åŠ›ã•ã‚ŒãŸã‹ã©ã†ã‹ç¢ºèªã—ã¦ãã ã•ã„。 + + + &Rename + åå‰ã®å¤‰æ›´(&R) + + + &Delete + 削除(&D) + + + Show &hidden files + éš ã—ファイルã®è¡¨ç¤º(&H) + + + Back + 戻る + + + Parent Directory + 親ディレクトリ + + + Create New Folder + æ–°ã—ã„フォルダã®ä½œæˆ + + + List View + 一覧表示 + + + Detail View + 詳細表示 + + + Look in: + 検索ã™ã‚‹å ´æ‰€: + + + Files of type: + ファイルã®ç¨®é¡ž: + + + Drive + ドライブ + + + File + ファイル + + + File Folder + Match Windows Explorer + ファイルフォルダ + + + Folder + All other platforms + フォルダ + + + Alias + Mac OS X Finder + エイリアス + + + Shortcut + All other platforms + ショートカット + + + Unknown + ä¸æ˜Ž + + + All Files (*.*) + ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ«(*.*) + + + Save As + åå‰ã‚’付ã‘ã¦ä¿å­˜ + + + '%1' is write protected. +Do you want to delete it anyway? + '%1' ã¯æ›¸ãè¾¼ã¿ãŒç¦æ­¢ã•ã‚Œã¦ã„ã¾ã™ã€‚ +本当ã«å‰Šé™¤ã—ã¾ã™ã‹? + + + Are sure you want to delete '%1'? + '%1' を本当ã«å‰Šé™¤ã—ã¾ã™ã‹? + + + Could not delete directory. + ディレクトリを削除ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ + + + Find Directory + ディレクトリã®æ¤œç´¢ + + + Show + 表示 + + + &New Folder + æ–°ã—ã„フォルダ(&N) + + + &Choose + é¸æŠž(&C) + + + New Folder + æ–°ã—ã„フォルダ + + + Recent Places + 履歴 + + + Forward + 進む + + + Remove + 削除 + + + Go back + 戻る + + + Go forward + 進む + + + Go to the parent directory + 親ディレクトリã¸ç§»å‹• + + + Create a New Folder + æ–°ã—ã„フォルダã®ä½œæˆ + + + Change to list view mode + リスト表示モードã¸å¤‰æ›´ + + + Change to detail view mode + 詳細表示モードã¸å¤‰æ›´ + + + + QFileSystemModel + + Name + åå‰ + + + Size + サイズ + + + Date Modified + æ›´æ–°æ—¥ + + + Kind + Match OS X Finder + 種類 + + + Type + All other platforms + タイプ + + + %1 TB + %1 TB + + + %1 GB + %1 GB + + + %1 MB + %1 MB + + + %1 KB + %1 KB + + + %1 bytes + %1 ãƒã‚¤ãƒˆ + + + Invalid filename + 無効ãªãƒ•ã‚¡ã‚¤ãƒ«å + + + <b>The name "%1" can not be used.</b><p>Try using another name, with fewer characters or no punctuations marks. + <b>ファイルå "%1" ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。</b><p>åå‰ã‚’短ãã—ãŸã‚Šã€ã‚¢ã‚¯ã‚»ãƒ³ãƒˆè¨˜å·ãªã©ã‚’削除ã—ã¦å†åº¦è©¦ã—ã¦ãã ã•ã„。 + + + My Computer + マイ コンピュータ + + + Computer + コンピュータ + + + %1 byte(s) + %1 ãƒã‚¤ãƒˆ + + + + QFontDatabase + + Normal + ã“ã“ã¯ã©ã†è¨³ã™ã¹ãã‹... + æ˜Žæœ + + + Bold + ゴシック + + + Demi Bold + Demi Bold + + + Black + 太字 + + + Demi + Demi + + + Light + ç´°å­— + + + Italic + イタリック + + + Oblique + 斜体 + + + Any + ã™ã¹ã¦ + + + Latin + ラテン + + + Greek + ギリシャ + + + Cyrillic + キリル + + + Armenian + アルメニア + + + Hebrew + ヘブライ + + + Arabic + アラビア + + + Syriac + シリア + + + Thaana + ターナ + + + Devanagari + デーヴァナーガリー + + + Bengali + ベンガル + + + Gurmukhi + グルムキー + + + Gujarati + グジャラート + + + Oriya + オリヤー + + + Tamil + タミル + + + Telugu + テルグ + + + Kannada + カンナダ + + + Malayalam + マラヤーラム + + + Sinhala + シンãƒãƒ© + + + Thai + タイ + + + Lao + ラーオ + + + Tibetan + ãƒãƒ™ãƒƒãƒˆ + + + Myanmar + ビルマ + + + Georgian + グルジア + + + Khmer + クメール + + + Simplified Chinese + 簡体中国 + + + Traditional Chinese + ç¹ä½“中国 + + + Japanese + 日本 + + + Korean + ãƒãƒ³ã‚°ãƒ« + + + Vietnamese + ベトナム + + + Symbol + è¨˜å· + + + Ogham + オガム + + + Runic + ルーン + + + N'Ko + ンコ + + + + QFontDialog + + &Font + フォント(&F) + + + Font st&yle + フォントスタイル(&Y) + + + &Size + サイズ(&S) + + + Effects + 文字飾り + + + Stri&keout + å–り消ã—ç·š(&K) + + + &Underline + 下線(&U) + + + Sample + サンプル + + + Wr&iting System + 言語(&I) + + + Select Font + フォントã®é¸æŠž + + + + QFtp + + Not connected + 未接続ã§ã™ + + + Host %1 not found + ホスト %1 ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ã§ã—㟠+ + + Connection refused to host %1 + ホスト %1 ã¸ã®æŽ¥ç¶šãŒæ‹’å¦ã•ã‚Œã¾ã—㟠+ + + Connection timed out to host %1 + ホスト %1 ã¸ã®æŽ¥ç¶šãŒã‚¿ã‚¤ãƒ ã‚¢ã‚¦ãƒˆã—ã¾ã—㟠+ + + Connected to host %1 + ホスト %1 ã«æŽ¥ç¶šã—ã¾ã—㟠+ + + Connection refused for data connection + データ接続ã®ãŸã‚ã®æŽ¥ç¶šãŒæ‹’å¦ã•ã‚Œã¾ã—㟠+ + + Unknown error + 未知ã®ã‚¨ãƒ©ãƒ¼ + + + Connecting to host failed: +%1 + ホストã¸ã®æŽ¥ç¶šã«å¤±æ•—ã—ã¾ã—ãŸ: +%1 + + + Login failed: +%1 + ログインã«å¤±æ•—ã—ã¾ã—ãŸ: +%1 + + + Listing directory failed: +%1 + ディレクトリã®ãƒªã‚¹ãƒˆã«å¤±æ•—ã—ã¾ã—ãŸ: +%1 + + + Changing directory failed: +%1 + ディレクトリã®å¤‰æ›´ã«å¤±æ•—ã—ã¾ã—ãŸ: +%1 + + + Downloading file failed: +%1 + ファイルã®ãƒ€ã‚¦ãƒ³ãƒ­ãƒ¼ãƒ‰ã«å¤±æ•—ã—ã¾ã—ãŸ: +%1 + + + Uploading file failed: +%1 + ファイルã®ã‚¢ãƒƒãƒ—ロードã«å¤±æ•—ã—ã¾ã—ãŸ: +%1 + + + Removing file failed: +%1 + ファイルã®å‰Šé™¤ã«å¤±æ•—ã—ã¾ã—ãŸ: +%1 + + + Creating directory failed: +%1 + ディレクトリã®ä½œæˆã«å¤±æ•—ã—ã¾ã—ãŸ: +%1 + + + Removing directory failed: +%1 + ディレクトリã®å‰Šé™¤ã«å¤±æ•—ã—ã¾ã—ãŸ: +%1 + + + Connection closed + 接続ãŒé–‰ã˜ã‚‰ã‚Œã¾ã—㟠+ + + Host %1 found + ホスト %1 ãŒè¦‹ã¤ã‹ã‚Šã¾ã—㟠+ + + Connection to %1 closed + %1 ã¸ã®æŽ¥ç¶šãŒé–‰ã˜ã‚‰ã‚Œã¾ã—㟠+ + + Host found + ホストãŒè¦‹ã¤ã‹ã‚Šã¾ã—㟠+ + + Connected to host + ホストã«æŽ¥ç¶šã—ã¾ã—㟠+ + + + QHostInfo + + Unknown error + 未知ã®ã‚¨ãƒ©ãƒ¼ + + + No host name given + ホストãƒãƒ¼ãƒ ãŒä¸Žãˆã‚‰ã‚Œã¦ã„ã¾ã›ã‚“ + + + + QHostInfoAgent + + Host not found + ホストãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ + + + Unknown address type + 未知ã®ã‚¢ãƒ‰ãƒ¬ã‚¹åž‹ã§ã™ + + + No host name given + ホストãƒãƒ¼ãƒ ãŒä¸Žãˆã‚‰ã‚Œã¦ã„ã¾ã›ã‚“ + + + Invalid hostname + 無効ãªãƒ›ã‚¹ãƒˆå + + + Unknown error + 未知ã®ã‚¨ãƒ©ãƒ¼ + + + + QHttp + + HTTPS connection requested but SSL support not compiled in + HTTPSã«ã‚ˆã‚‹æŽ¥ç¶šãŒè¦æ±‚ã•ã‚Œã¾ã—ãŸãŒã€SSLã®ã‚µãƒãƒ¼ãƒˆãŒã‚³ãƒ³ãƒ‘イル時ã«çµ„ã¿è¾¼ã¾ã‚Œã¦ã„ãªã„ãŸã‚ã€æŽ¥ç¶šã§ãã¾ã›ã‚“ + + + Unknown error + 未知ã®ã‚¨ãƒ©ãƒ¼ + + + Request aborted + è¦æ±‚ãŒä¸­æ­¢ã•ã‚Œã¾ã—㟠+ + + No server set to connect to + 接続ãŒè¨­å®šã•ã‚Œã¦ã„るサーãƒãŒã‚ã‚Šã¾ã›ã‚“ + + + Wrong content length + コンテンツã®é•·ã•ãŒæ­£ã—ãã‚ã‚Šã¾ã›ã‚“ + + + Server closed connection unexpectedly + サーãƒã®æŽ¥ç¶šãŒäºˆæœŸã›ãšé–‰ã˜ã‚‰ã‚Œã¾ã—㟠+ + + Unknown authentication method + éžå¯¾å¿œã®èªè¨¼æ–¹æ³•ãŒè¦æ±‚ã•ã‚Œã¾ã—㟠+ + + Error writing response to device + デãƒã‚¤ã‚¹ã¸ã®æ›¸ãè¾¼ã¿æ™‚ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—㟠+ + + Connection refused + 接続ãŒæ‹’å¦ã•ã‚Œã¾ã—㟠+ + + Host %1 not found + ホスト %1 ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ã§ã—㟠+ + + HTTP request failed + HTTPè¦æ±‚ã«å¤±æ•—ã—ã¾ã—㟠+ + + Invalid HTTP response header + 無効ãªHTTP応答ヘッダã§ã™ + + + Invalid HTTP chunked body + 無効ãªHTTPãƒãƒ£ãƒ³ã‚¯ãƒ‰ãƒœãƒ‡ã‚£ã§ã™ + + + Host %1 found + ホスト %1 ãŒè¦‹ã¤ã‹ã‚Šã¾ã—㟠+ + + Connected to host %1 + ホスト %1 ã«æŽ¥ç¶šã—ã¾ã—㟠+ + + Connection to %1 closed + %1 ã¸ã®æŽ¥ç¶šãŒé–‰ã˜ã‚‰ã‚Œã¾ã—㟠+ + + Host found + ホストãŒè¦‹ã¤ã‹ã‚Šã¾ã—㟠+ + + Connected to host + ホストã«æŽ¥ç¶šã—ã¾ã—㟠+ + + Connection closed + 接続ãŒé–‰ã˜ã‚‰ã‚Œã¾ã—㟠+ + + Proxy authentication required + プロキシーã®èªè¨¼ãŒå¿…è¦ã§ã™ + + + Authentication required + èªè¨¼ãŒå¿…è¦ã§ã™ + + + Connection refused (or timed out) + 接続ãŒæ‹’å¦ã•ã‚ŒãŸã‹ã€ã‚¿ã‚¤ãƒ ã‚¢ã‚¦ãƒˆã—ã¾ã—㟠+ + + Proxy requires authentication + プロキシーã®èªè¨¼ãŒå¿…è¦ã§ã™ + + + Host requires authentication + ホストã®èªè¨¼ãŒå¿…è¦ã§ã™ + + + Data corrupted + データãŒç ´æã—ã¦ã„ã¾ã™ + + + Unknown protocol specified + 未対応ã®ãƒ—ロトコルã§ã™ + + + SSL handshake failed + SSLã®ãƒãƒ³ãƒ‰ã‚·ã‚§ãƒ¼ã‚¯ã«å¤±æ•—ã—ã¾ã—㟠+ + + + QHttpSocketEngine + + Did not receive HTTP response from proxy + プロキシーã‹ã‚‰HTTPレスãƒãƒ³ã‚¹ã‚’å—ä¿¡ã§ãã¾ã›ã‚“ã§ã—㟠+ + + Error parsing authentication request from proxy + プロキシーã‹ã‚‰ã®èªè¨¼è¦æ±‚ã®ãƒ‘ースã«å¤±æ•—ã—ã¾ã—㟠+ + + Authentication required + èªè¨¼ãŒå¿…è¦ã§ã™ + + + Proxy denied connection + プロキシーãŒæŽ¥ç¶šã‚’æ‹’å¦ã—ã¾ã—㟠+ + + Error communicating with HTTP proxy + HTTP プロキシーã¨ã®é€šä¿¡ã«ã¦ã€ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—㟠+ + + Proxy server not found + プロキシーサーãƒãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ + + + Proxy connection refused + プロキシーãŒæŽ¥ç¶šã‚’æ‹’å¦ã—ã¾ã—㟠+ + + Proxy server connection timed out + プロキシーã¨ã®æŽ¥ç¶šãŒã‚¿ã‚¤ãƒ ã‚¢ã‚¦ãƒˆã—ã¾ã—㟠+ + + Proxy connection closed prematurely + プロキシーã®æŽ¥ç¶šãŒé€šä¿¡ã®çµ‚了å‰ã«åˆ‡æ–­ã•ã‚Œã¾ã—㟠+ + + + QIBaseDriver + + Error opening database + データベースã®ã‚ªãƒ¼ãƒ—ンã§ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—㟠+ + + Could not start transaction + トランザクションを開始ã§ãã¾ã›ã‚“ã§ã—㟠+ + + Unable to commit transaction + トランザクションをコミットã§ãã¾ã›ã‚“ + + + Unable to rollback transaction + トランザクションをロールãƒãƒƒã‚¯ã§ãã¾ã›ã‚“ + + + + QIBaseResult + + Unable to create BLOB + ãƒã‚¤ãƒŠãƒªãƒ©ãƒ¼ã‚¸ã‚ªãƒ–ジェクトを作æˆã§ãã¾ã›ã‚“ + + + Unable to write BLOB + ãƒã‚¤ãƒŠãƒªãƒ©ãƒ¼ã‚¸ã‚ªãƒ–ジェクトを書ãè¾¼ã‚ã¾ã›ã‚“ + + + Unable to open BLOB + ãƒã‚¤ãƒŠãƒªãƒ©ãƒ¼ã‚¸ã‚ªãƒ–ジェクトをオープンã§ãã¾ã›ã‚“ + + + Unable to read BLOB + ãƒã‚¤ãƒŠãƒªãƒ©ãƒ¼ã‚¸ã‚ªãƒ–ジェクトを読ã¿è¾¼ã‚ã¾ã›ã‚“ + + + Could not find array + é…列ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ã§ã—㟠+ + + Could not get array data + é…列データをå–å¾—ã§ãã¾ã›ã‚“ã§ã—㟠+ + + Could not get query info + クエリー情報をå–å¾—ã§ãã¾ã›ã‚“ã§ã—㟠+ + + Could not start transaction + トランザクションを開始ã§ãã¾ã›ã‚“ã§ã—㟠+ + + Unable to commit transaction + トランザクションをコミットã§ãã¾ã›ã‚“ + + + Could not allocate statement + ステートメントã®é ˜åŸŸã‚’確ä¿ã§ãã¾ã›ã‚“ã§ã—㟠+ + + Could not prepare statement + プリペアステートメントを使ãˆã¾ã›ã‚“ã§ã—㟠+ + + Could not describe input statement + INPUT ステートメントã®æƒ…報をå–å¾—ã§ãã¾ã›ã‚“ã§ã—㟠+ + + Could not describe statement + ステートメントã®æƒ…報をå–å¾—ã§ãã¾ã›ã‚“ã§ã—㟠+ + + Unable to close statement + ステートメントをクローズã§ãã¾ã›ã‚“ + + + Unable to execute query + クエリーを実行ã§ãã¾ã›ã‚“ + + + Could not fetch next item + 次ã®ãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’フェッãƒã§ãã¾ã›ã‚“ã§ã—㟠+ + + Could not get statement info + ステートメントã®æƒ…報をå–å¾—ã§ãã¾ã›ã‚“ã§ã—㟠+ + + + QIODevice + + Permission denied + 許å¯ã•ã‚Œã¦ã„ã¾ã›ã‚“ + + + Too many open files + é–‹ã‹ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ãŒå¤šã™ãŽã¾ã™ + + + No such file or directory + ãã®ã‚ˆã†ãªãƒ•ã‚¡ã‚¤ãƒ«ã‚„ディレクトリã¯ã‚ã‚Šã¾ã›ã‚“ + + + No space left on device + デãƒã‚¤ã‚¹ã®æ®‹ã‚Šå®¹é‡ãŒã‚ã‚Šã¾ã›ã‚“ + + + Unknown error + 未知ã®ã‚¨ãƒ©ãƒ¼ + + + + QInputContext + + XIM + XIM + + + FEP + FEP + + + XIM input method + XIM 入力メソッド + + + Windows input method + Windows 入力メソッド + + + Mac OS X input method + Mac OS X 入力メソッド + + + S60 FEP input method + S60 FEP 入力メソッド + + + + QInputDialog + + Enter a value: + 数値を入力: + + + + QLibrary + + Could not mmap '%1': %2 + '%1' をメモリã«ãƒžãƒƒãƒ”ングã§ãã¾ã›ã‚“ã§ã—ãŸ: %2 + + + Plugin verification data mismatch in '%1' + '%1' ã§ãƒ—ラグイン検証データãŒä¸€è‡´ã—ã¾ã›ã‚“ + + + Could not unmap '%1': %2 + '%1' ã®ãƒžãƒƒãƒ”ングを解除ã§ãã¾ã›ã‚“ã§ã—ãŸ: %2 + + + The plugin '%1' uses incompatible Qt library. (%2.%3.%4) [%5] + プラグイン '%1' ã¯ã€äº’æ›æ€§ã®ãªã„ Qt ライブラリを使用ã—ã¦ã„ã¾ã™ã€‚(%2.%3.%4) [%5] + + + The plugin '%1' uses incompatible Qt library. Expected build key "%2", got "%3" + プラグイン '%1' ã¯ã€äº’æ›æ€§ã®ãªã„ Qt ライブラリを使用ã—ã¦ã„ã¾ã™ã€‚ビルドキー "%2" ãŒå¿…è¦ã§ã™ãŒã€"%3" ã—ã‹ã‚ã‚Šã¾ã›ã‚“ + + + Unknown error + 未知ã®ã‚¨ãƒ©ãƒ¼ + + + The shared library was not found. + 共有ライブラリãŒã¿ã¤ã‹ã‚Šã¾ã›ã‚“。 + + + The file '%1' is not a valid Qt plugin. + ファイル '%1' 㯠Qt プラグインã§ã¯ã‚ã‚Šã¾ã›ã‚“。 + + + The plugin '%1' uses incompatible Qt library. (Cannot mix debug and release libraries.) + プラグイン '%1' ã¯ã“ã® Qt ã¨äº’æ›æ€§ã®ãªã„ライブラリを使用ã—ã¦ã„ã¾ã™ã€‚ (デãƒãƒƒã‚¯ç‰ˆã¨ãƒªãƒªãƒ¼ã‚¹ç‰ˆã®ãƒ©ã‚¤ãƒ–ラリをåŒæ™‚ã«ä½¿ç”¨ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“) + + + Cannot load library %1: %2 + ライブラリ '%1' を読ã¿è¾¼ã‚€ã“ã¨ãŒã§ãã¾ã›ã‚“: %2 + + + Cannot unload library %1: %2 + ライブラリ %1 を解放ã™ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“: %2 + + + Cannot resolve symbol "%1" in %2: %3 + '%2'ã«å«ã¾ã‚Œã‚‹è­˜åˆ¥å­ "%1" を解決ã§ãã¾ã›ã‚“: %3 + + + + QLineEdit + + &Undo + å…ƒã«æˆ»ã™(&U) + + + &Redo + ã‚„ã‚Šç›´ã™(&R) + + + Cu&t + 切りå–ã‚Š(&T) + + + &Copy + コピー(&C) + + + &Paste + 貼り付ã‘(&P) + + + Delete + 削除 + + + Select All + ã™ã¹ã¦ã‚’é¸æŠž + + + + QLocalServer + + %1: Name error + %1: åå‰ã®è§£æ±ºã«å¤±æ•— + + + %1: Permission denied + %1: 許å¯ã•ã‚Œã¦ã„ã¾ã›ã‚“ + + + %1: Address in use + %1: アドレスã¯æ—¢ã«ä½¿ç”¨ã•ã‚Œã¦ã„ã¾ã™ + + + %1: Unknown error %2 + %1: 未知ã®ã‚¨ãƒ©ãƒ¼ %2 + + + + QLocalSocket + + %1: Connection refused + %1: 接続ãŒæ‹’å¦ã•ã‚Œã¾ã—㟠+ + + %1: Remote closed + %1: リモートã«ã‚ˆã‚ŠæŽ¥ç¶šãŒé–‰ã˜ã‚‰ã‚Œã¾ã—㟠+ + + %1: Invalid name + %1: 無効ãªåå‰ã§ã™ + + + %1: Socket access error + %1: ソケットアクセスã®ã‚¨ãƒ©ãƒ¼ã§ã™ + + + %1: Socket resource error + %1: ソケットリソースã®ã‚¨ãƒ©ãƒ¼ã§ã™ + + + %1: Socket operation timed out + %1: ソケットæ“作ãŒã‚¿ã‚¤ãƒ ã‚¢ã‚¦ãƒˆã—ã¾ã—㟠+ + + %1: Datagram too large + %1: データグラムãŒå¤§ãã™ãŽã¾ã™ + + + %1: Connection error + %1: 接続ã®ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—㟠+ + + %1: The socket operation is not supported + %1: ãã®ã‚½ã‚±ãƒƒãƒˆæ“作ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“ + + + %1: Unknown error + %1: 未知ã®ã‚¨ãƒ©ãƒ¼ã§ã™ + + + %1: Unknown error %2 + %1: 未知ã®ã‚¨ãƒ©ãƒ¼ %2 + + + + QMYSQLDriver + + Unable to open database ' + データベースをオープンã§ãã¾ã›ã‚“ ' + + + Unable to connect + 接続ã§ãã¾ã›ã‚“ + + + Unable to begin transaction + トランザクションを開始ã§ãã¾ã›ã‚“ + + + Unable to commit transaction + トランザクションをコミットã§ãã¾ã›ã‚“ + + + Unable to rollback transaction + トランザクションをロールãƒãƒƒã‚¯ã§ãã¾ã›ã‚“ + + + + QMYSQLResult + + Unable to fetch data + データをフェッãƒã§ãã¾ã›ã‚“ + + + Unable to execute query + クエリーを実行ã§ãã¾ã›ã‚“ + + + Unable to store result + 実行çµæžœã‚’記録ã§ãã¾ã›ã‚“ + + + Unable to prepare statement + プリペアステートメントを使ãˆã¾ã›ã‚“ + + + Unable to reset statement + ステートメントをリセットã§ãã¾ã›ã‚“ + + + Unable to bind value + 値をãƒã‚¤ãƒ³ãƒ‰ã§ãã¾ã›ã‚“ + + + Unable to execute statement + ステートメントを実行ã§ãã¾ã›ã‚“ + + + Unable to bind outvalues + 出力値をãƒã‚¤ãƒ³ãƒ‰ã§ãã¾ã›ã‚“ + + + Unable to store statement results + ステートメントã®å®Ÿè¡Œçµæžœã‚’記録ã§ãã¾ã›ã‚“ + + + Unable to execute next query + 次ã®ã‚¯ã‚¨ãƒªãƒ¼ã‚’実行ã§ãã¾ã›ã‚“ + + + Unable to store next result + 次ã®çµæžœã‚’記録ã§ãã¾ã›ã‚“ + + + + QMdiArea + + (Untitled) + (タイトルãªã—) + + + + QMdiSubWindow + + %1 - [%2] + %1 - [%2] + + + Close + é–‰ã˜ã‚‹ + + + Minimize + 最å°åŒ– + + + Restore Down + å…ƒã«æˆ»ã™ + + + &Restore + å…ƒã«æˆ»ã™(&R) + + + &Move + 移動(&M) + + + &Size + サイズ(&S) + + + Mi&nimize + 最å°åŒ–(&N) + + + Ma&ximize + 最大化(&X) + + + Stay on &Top + 常ã«æ‰‹å‰ã«è¡¨ç¤º(&T) + + + &Close + é–‰ã˜ã‚‹(&C) + + + - [%1] + - [%1] + + + Maximize + 最大化 + + + Unshade + ãŸã¶ã‚“é¸æŠžãƒ»éžé¸æŠžçŠ¶æ…‹ã®ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ã®ã“ã¨ã ã¨æ€ã†ã‘ã©ã€‚fvwmãªã©ã®x11ã§ä½¿ã‚ã‚Œã¦ã„る用語 + éžé¸æŠž + + + Shade + é¸æŠž + + + Restore + å…ƒã«æˆ»ã™ + + + Help + ヘルプ + + + Menu + メニュー + + + + QMenu + + Close + é–‰ã˜ã‚‹ + + + Open + オープン + + + Execute + 実行 + + + + QMenuBar + + Actions + アクション + + + + QMessageBox + + Help + ヘルプ + + + OK + OK + + + About Qt + Qt ã«ã¤ã„㦠+ + + Show Details... + 詳細を表示... + + + Hide Details... + 詳細を隠ã™... + + + <h3>About Qt</h3><p>This program uses Qt version %1.</p> + <h3>Qt ã«ã¤ã„ã¦</h3><p>ã“ã®ãƒ—ログラム㯠Qt ãƒãƒ¼ã‚¸ãƒ§ãƒ³ %1 を使用ã—ã¦ã„ã¾ã™ã€‚</p> + + + <p>Qt is a C++ toolkit for cross-platform application development.</p><p>Qt provides single-source portability across MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qt for Embedded Linux and Qt for Windows CE.</p><p>Qt is available under three different licensing options designed to accommodate the needs of our various users.</p><p>Qt licensed under our commercial license agreement is appropriate for development of proprietary/commercial software where you do not want to share any source code with third parties or otherwise cannot comply with the terms of the GNU LGPL version 2.1 or GNU GPL version 3.0.</p><p>Qt licensed under the GNU LGPL version 2.1 is appropriate for the development of Qt applications (proprietary or open source) provided you can comply with the terms and conditions of the GNU LGPL version 2.1.</p><p>Qt licensed under the GNU General Public License version 3.0 is appropriate for the development of Qt applications where you wish to use such applications in combination with software subject to the terms of the GNU GPL version 3.0 or where you are otherwise willing to comply with the terms of the GNU GPL version 3.0.</p><p>Please see <a href="http://qt.nokia.com/products/licensing">qt.nokia.com/products/licensing</a> for an overview of Qt licensing.</p><p>Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).</p><p>Qt is a Nokia product. See <a href="http://qt.nokia.com/">qt.nokia.com</a> for more information.</p> + + + + + QMultiInputContext + + Select IM + インプットメソッドをé¸æŠž + + + + QMultiInputContextPlugin + + Multiple input method switcher + 複数ã®ã‚¤ãƒ³ãƒ—ットメソッドを切り替㈠+ + + Multiple input method switcher that uses the context menu of the text widgets + テキストウィジェットã®ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆãƒ¡ãƒ‹ãƒ¥ãƒ¼ã‚’使ã£ãŸè¤‡æ•°ã®ã‚¤ãƒ³ãƒ—ットメソッドã®åˆ‡ã‚Šæ›¿ãˆã§ã™ + + + + QNativeSocketEngine + + Unable to initialize non-blocking socket + éžãƒ–ロック型ソケットをåˆæœŸåŒ–ã§ãã¾ã›ã‚“ + + + Unable to initialize broadcast socket + ブロードキャストソケットをåˆæœŸåŒ–ã§ãã¾ã›ã‚“ + + + Attempt to use IPv6 socket on a platform with no IPv6 support + IPv6 ãŒã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ãªã„プラットフォーム㧠IPv6 ソケットを使用ã—よã†ã¨ã—ã¦ã„ã¾ã™ + + + The remote host closed the connection + リモートホストã¯æŽ¥ç¶šã‚’é–‰ã˜ã¾ã—㟠+ + + Network operation timed out + ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯æ“作ãŒã‚¿ã‚¤ãƒ ã‚¢ã‚¦ãƒˆã—ã¾ã—㟠+ + + Out of resources + リソースãŒè¶³ã‚Šã¾ã›ã‚“ + + + Unsupported socket operation + サãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ãªã„ソケットæ“作ã§ã™ + + + Protocol type not supported + プロトコル型ãŒã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“ + + + Invalid socket descriptor + 無効ãªã‚½ã‚±ãƒƒãƒˆè¨˜è¿°å­ã§ã™ + + + Host unreachable + ホストã¸åˆ°é”ã§ãã¾ã›ã‚“ + + + Network unreachable + ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã¸åˆ°é”ã§ãã¾ã›ã‚“ + + + Permission denied + 許å¯ã•ã‚Œã¦ã„ã¾ã›ã‚“ + + + Connection timed out + 接続ãŒã‚¿ã‚¤ãƒ ã‚¢ã‚¦ãƒˆã—ã¾ã—㟠+ + + Connection refused + 接続を拒å¦ã•ã‚Œã¾ã—㟠+ + + The bound address is already in use + ãƒã‚¤ãƒ³ãƒ‰ã‚¢ãƒ‰ãƒ¬ã‚¹ã¯æ—¢ã«ä½¿ã‚ã‚Œã¦ã„ã¾ã™ + + + The address is not available + ãã®ã‚¢ãƒ‰ãƒ¬ã‚¹ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“ + + + The address is protected + ãã®ã‚¢ãƒ‰ãƒ¬ã‚¹ã¸ã®ã‚¢ã‚¯ã‚»ã‚¹æ¨©ãŒã‚ã‚Šã¾ã›ã‚“ + + + Datagram was too large to send + データグラムãŒå¤§ãéŽãŽã¦é€ä¿¡ã§ãã¾ã›ã‚“ã§ã—㟠+ + + Unable to send a message + メッセージをé€ä¿¡ã§ãã¾ã›ã‚“ + + + Unable to receive a message + メッセージをå—ä¿¡ã§ãã¾ã›ã‚“ + + + Unable to write + 書ãè¾¼ã¿ãŒã§ãã¾ã›ã‚“ + + + Network error + ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã‚¨ãƒ©ãƒ¼ + + + Another socket is already listening on the same port + 別ã®ã‚½ã‚±ãƒƒãƒˆãŒåŒã˜ãƒãƒ¼ãƒˆã§æ—¢ã«å¾…ã¡å—ã‘ã¦ã„ã¾ã™ + + + Operation on non-socket + éžã‚½ã‚±ãƒƒãƒˆã«å¯¾ã™ã‚‹æ“作ã§ã™ + + + Unknown error + 未知ã®ã‚¨ãƒ©ãƒ¼ + + + The proxy type is invalid for this operation + ã“ã®ãƒ—ロキシーã¯ã€ã“ã®æ“作ã«å¯¾å¿œã—ã¦ã„ã¾ã›ã‚“ + + + + QNetworkAccessCacheBackend + + Error opening %1 + オープンã®ã‚¨ãƒ©ãƒ¼ %1 + + + + QNetworkAccessDataBackend + + Operation not supported on %1 + %1 ã§ã¯ã“ã®æ“作ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“ + + + Invalid URI: %1 + 無効ãªURIã§ã™: %1 + + + + QNetworkAccessDebugPipeBackend + + Write error writing to %1: %2 + %1 ã¸ã®æ›¸ãè¾¼ã¿æ™‚ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: %2 + + + Socket error on %1: %2 + %1 ã®ã‚½ã‚±ãƒƒãƒˆã«ãŠã„ã¦ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: %2 + + + Remote host closed the connection prematurely on %1 + リモートホスト %1 ã¨ã®æŽ¥ç¶šãŒé€šä¿¡ã®çµ‚了å‰ã«åˆ‡æ–­ã•ã‚Œã¾ã—㟠+ + + + QNetworkAccessFileBackend + + Request for opening non-local file %1 + éžãƒ­ãƒ¼ã‚«ãƒ«ãƒ•ã‚¡ã‚¤ãƒ« %1 をオープンã™ã‚‹ã‚ˆã†è¦æ±‚ã•ã‚Œã¾ã—ãŸãŒã€ãƒ­ãƒ¼ã‚«ãƒ«ãƒ•ã‚¡ã‚¤ãƒ«ã®ã¿ã‚ªãƒ¼ãƒ—ンã§ãã¾ã™ + + + Error opening %1: %2 + %1 をオープンã™ã‚‹æ™‚ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: %2 + + + Write error writing to %1: %2 + %1 ã¸ã®æ›¸ãè¾¼ã¿æ™‚ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: %2 + + + Cannot open %1: Path is a directory + %1 をオープンã§ãã¾ã›ã‚“。指定ã•ã‚ŒãŸãƒ‘スã¯ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ã™ + + + Read error reading from %1: %2 + %1 を読ã¿è¾¼ã¿æ™‚ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: %2 + + + + QNetworkAccessFtpBackend + + No suitable proxy found + é©åˆ‡ãªãƒ—ロキシーãŒã¿ã¤ã‹ã‚Šã¾ã›ã‚“ + + + Cannot open %1: is a directory + %1 をオープンã§ãã¾ã›ã‚“。指定ã•ã‚ŒãŸãƒ‘スã¯ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ã™ + + + Logging in to %1 failed: authentication required + %1 ã¸ã®ãƒ­ã‚°ã‚¤ãƒ³ã«å¤±æ•—ã—ã¾ã—ãŸã€‚èªè¨¼ãŒå¿…è¦ã§ã™ + + + Error while downloading %1: %2 + %1 をダウンロード中ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: %2 + + + Error while uploading %1: %2 + %1 をアップロード中ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: %2 + + + + QNetworkAccessHttpBackend + + No suitable proxy found + é©åˆ‡ãªãƒ—ロキシーãŒã¿ã¤ã‹ã‚Šã¾ã›ã‚“ + + + + QNetworkAccessManager + + Network access is disabled. + ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã¸ã®ã‚¢ã‚¯ã‚»ã‚¹ãŒç¦æ­¢ã•ã‚Œã¦ã„ã¾ã™ã€‚ + + + + QNetworkReply + + Error downloading %1 - server replied: %2 + %1 をダウンロード中ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸã€‚サーãƒã®è¿”ç­”: %2 + + + Protocol "%1" is unknown + プロトコル "%1" ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“ + + + Network session error. + ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã‚»ãƒƒã‚·ãƒ§ãƒ³ã‚¨ãƒ©ãƒ¼ã€‚ + + + Temporary network failure. + 一時的ãªãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã®å¤±æ•—。 + + + + QNetworkReplyImpl + + Operation canceled + æ“作ã¯ã‚­ãƒ£ãƒ³ã‚»ãƒ«ã•ã‚Œã¾ã—㟠+ + + + QNetworkSession + + Invalid configuration. + 無効ãªè¨­å®šã§ã™ã€‚ + + + + QNetworkSessionPrivateImpl + + Roaming error + ローミングエラー + + + Session aborted by user or system + セッションã¯ãƒ¦ãƒ¼ã‚¶ã‚‚ã—ãã¯ã‚·ã‚¹ãƒ†ãƒ ã«ã‚ˆã£ã¦åœæ­¢ã•ã‚Œã¾ã—㟠+ + + Unidentified Error + 未知ã®ã‚¨ãƒ©ãƒ¼ + + + Unknown session error. + 未知ã®ã‚»ãƒƒã‚·ãƒ§ãƒ³ã‚¨ãƒ©ãƒ¼ã§ã™ã€‚ + + + The session was aborted by the user or system. + ã“ã®ã‚»ãƒƒã‚·ãƒ§ãƒ³ã¯ãƒ¦ãƒ¼ã‚¶ã‚‚ã—ãã¯ã‚·ã‚¹ãƒ†ãƒ ã«ã‚ˆã£ã¦åœæ­¢ã•ã‚Œã¾ã—ãŸã€‚ + + + The requested operation is not supported by the system. + è¦æ±‚ã•ã‚ŒãŸæ“作ã¯ã“ã®ã‚·ã‚¹ãƒ†ãƒ ã§ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。 + + + The specified configuration cannot be used. + ã“ã®è¨­å®šã¯åˆ©ç”¨ã§ãã¾ã›ã‚“。 + + + Roaming was aborted or is not possible. + ローミングã¯åœæ­¢ã•ã‚ŒãŸã‹åˆ©ç”¨ã§ãã¾ã›ã‚“。 + + + + QOCIDriver + + Unable to initialize + QOCIDriver + åˆæœŸåŒ–ã§ãã¾ã›ã‚“ + + + Unable to logon + ログオンã§ãã¾ã›ã‚“ + + + Unable to begin transaction + トランザクションを開始ã§ãã¾ã›ã‚“ + + + Unable to commit transaction + トランザクションをコミットã§ãã¾ã›ã‚“ + + + Unable to rollback transaction + トランザクションをロールãƒãƒƒã‚¯ã§ãã¾ã›ã‚“ + + + + QOCIResult + + Unable to bind column for batch execute + ãƒãƒƒãƒå‡¦ç†ç”¨ã«ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã‚’ãƒã‚¤ãƒ³ãƒ‰ã§ãã¾ã›ã‚“ + + + Unable to execute batch statement + ãƒãƒƒãƒã‚¹ãƒ†ãƒ¼ãƒˆãƒ¡ãƒ³ãƒˆã‚’実行ã§ãã¾ã›ã‚“ + + + Unable to goto next + 次ã®ãƒ¬ã‚³ãƒ¼ãƒ‰ã¸é€²ã‚ã¾ã›ã‚“ + + + Unable to alloc statement + ステートメントã®é ˜åŸŸã‚’確ä¿ã§ãã¾ã›ã‚“ + + + Unable to prepare statement + プリペアステートメントを使ãˆã¾ã›ã‚“ + + + Unable to get statement type + ステートメントã®åž‹ã‚’å–å¾—ã§ãã¾ã›ã‚“ + + + Unable to bind value + 値をãƒã‚¤ãƒ³ãƒ‰ã§ãã¾ã›ã‚“ + + + Unable to execute statement + ステートメントを実行ã§ãã¾ã›ã‚“ + + + + QODBCDriver + + Unable to connect + 接続ã§ãã¾ã›ã‚“ + + + Unable to connect - Driver doesn't support all functionality required + 接続ã§ãã¾ã›ã‚“ - ドライãƒã¯å¿…è¦ãªå…¨ã¦ã®æ©Ÿèƒ½ã‚’サãƒãƒ¼ãƒˆã—ã¦ã„ã¾ã›ã‚“ + + + Unable to disable autocommit + オートコミットを無効ã«ã§ãã¾ã›ã‚“ + + + Unable to commit transaction + トランザクションをコミットã§ãã¾ã›ã‚“ + + + Unable to rollback transaction + トランザクションをロールãƒãƒƒã‚¯ã§ãã¾ã›ã‚“ + + + Unable to enable autocommit + オートコミットを有効ã«ã§ãã¾ã›ã‚“ + + + + QODBCResult + + Unable to execute statement + ステートメントを実行ã§ãã¾ã›ã‚“ + + + Unable to fetch next + 次ã®ãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’フェッãƒã§ãã¾ã›ã‚“ + + + Unable to prepare statement + プリペアステートメントを使ãˆã¾ã›ã‚“ + + + Unable to bind variable + 変数をãƒã‚¤ãƒ³ãƒ‰ã§ãã¾ã›ã‚“ + + + QODBCResult::reset: Unable to set 'SQL_CURSOR_STATIC' as statement attribute. Please check your ODBC driver configuration + QODBCResult::reset: ステートメントã®å±žæ€§ã¨ã—㦠'SQL_CURSOR_STATUS' を設定ã§ãã¾ã›ã‚“。ODBC ドライãƒã®æ§‹æˆã‚’ãƒã‚§ãƒƒã‚¯ã—ã¦ãã ã•ã„ + + + Unable to fetch last + リストをå–å¾—ã§ãã¾ã›ã‚“ + + + Unable to fetch + フェッãƒã§ãã¾ã›ã‚“ + + + Unable to fetch first + 最åˆã®ãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’フェッãƒã§ãã¾ã›ã‚“ + + + Unable to fetch previous + å‰ã®ãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’フェッãƒã§ãã¾ã›ã‚“ + + + + QObject + + PulseAudio Sound Server + PulseAudio サウンドサーム+ + + "%1" duplicates a previous role name and will be disabled. + "%1" ã§ç›´å‰ã®ãƒ­ãƒ¼ãƒ«åを複製ã—ã€ç„¡åŠ¹åŒ–ã•ã‚Œã¾ã™ã€‚ + + + invalid query: "%1" + 無効ãªã‚¯ã‚¨ãƒªãƒ¼: "%1" + + + + QPPDOptionsModel + + Name + åå‰ + + + Value + 値 + + + + QPSQLDriver + + Unable to connect + 接続ã§ãã¾ã›ã‚“ + + + Could not begin transaction + トランザクションを開始ã§ãã¾ã›ã‚“ã§ã—㟠+ + + Could not commit transaction + トランザクションをコミットã§ãã¾ã›ã‚“ã§ã—㟠+ + + Could not rollback transaction + トランザクションをロールãƒãƒƒã‚¯ã§ãã¾ã›ã‚“ã§ã—㟠+ + + Unable to subscribe + subscribe ã§ãã¾ã›ã‚“ + + + Unable to unsubscribe + unsubscribe ã§ãã¾ã›ã‚“ + + + + QPSQLResult + + Unable to create query + クエリーを作æˆã§ãã¾ã›ã‚“ + + + Unable to prepare statement + プリペアステートメントを使ãˆã¾ã›ã‚“ + + + + QPageSetupWidget + + Centimeters (cm) + センãƒãƒ¡ãƒ¼ãƒˆãƒ« (cm) + + + Millimeters (mm) + ミリメートル (mm) + + + Inches (in) + インム(in) + + + Points (pt) + ãƒã‚¤ãƒ³ãƒˆ (pt) + + + Form + 書å¼è¨­å®š + + + Paper + 用紙 + + + Page size: + ページサイズ: + + + Width: + å¹…: + + + Height: + 高ã•: + + + Paper source: + 給紙装置: + + + Orientation + å°åˆ·æ–¹å‘ + + + Portrait + 縦 (ãƒãƒ¼ãƒˆãƒ¬ãƒ¼ãƒˆ) + + + Landscape + 横 (ランドスケープ) + + + Reverse landscape + 横 å転 (リãƒãƒ¼ã‚¹ãƒ©ãƒ³ãƒ‰ã‚¹ã‚±ãƒ¼ãƒ—) + + + Reverse portrait + 縦 å転 (リãƒãƒ¼ã‚¹ãƒãƒ¼ãƒˆãƒ¬ãƒ¼ãƒˆ) + + + Margins + 余白 + + + top margin + 上端余白 + + + left margin + 左端余白 + + + right margin + å³ç«¯ä½™ç™½ + + + bottom margin + 下端余白 + + + + QPluginLoader + + Unknown error + 未知ã®ã‚¨ãƒ©ãƒ¼ + + + The plugin was not loaded. + ãã®ãƒ—ラグインã¯ãƒ­ãƒ¼ãƒ‰ã•ã‚Œã¦ã„ã¾ã›ã‚“。 + + + + QPrintDialog + + OK + OK + + + locally connected + ローカルã«æŽ¥ç¶šã—ã¦ã„ã¾ã™ + + + Aliases: %1 + エイリアス: %1 + + + unknown + ä¸æ˜Ž + + + Print all + ã™ã¹ã¦å°åˆ· + + + Print range + å°åˆ·ç¯„囲 + + + A0 (841 x 1189 mm) + A0 (841 x 1189mm) + + + A1 (594 x 841 mm) + A1 (594 x 841mm) + + + A2 (420 x 594 mm) + A2 (420 x 594mm) + + + A3 (297 x 420 mm) + A3 (297 x 420mm) + + + A4 (210 x 297 mm, 8.26 x 11.7 inches) + A4 (210 x 297mmã€8.26 x 11.7インãƒ) + + + A5 (148 x 210 mm) + A5 (148 x 210mm) + + + A6 (105 x 148 mm) + A6 (105 x 148mm) + + + A7 (74 x 105 mm) + A7 (74 x 105mm) + + + A8 (52 x 74 mm) + A8 (52 x 74mm) + + + A9 (37 x 52 mm) + A9 (37 x 52mm) + + + B0 (1000 x 1414 mm) + B0 (1000 x 1414mm) + + + B1 (707 x 1000 mm) + B1 (707 x 1000mm) + + + B2 (500 x 707 mm) + B2 (500 x 707mm) + + + B3 (353 x 500 mm) + B3 (353 x 500mm) + + + B4 (250 x 353 mm) + B4 (250 x 353mm) + + + B5 (176 x 250 mm, 6.93 x 9.84 inches) + B5 (176 x 250mmã€6.93 x 9.84インãƒ) + + + B6 (125 x 176 mm) + B6 (125 x 176mm) + + + B7 (88 x 125 mm) + B7 (88 x 125mm) + + + B8 (62 x 88 mm) + B8 (62 x 88mm) + + + B9 (44 x 62 mm) + B9 (44 x 62mm) + + + B10 (31 x 44 mm) + B10 (31 x 44mm) + + + C5E (163 x 229 mm) + C5E (163 x 229mm) + + + DLE (110 x 220 mm) + DLE (110 x 220mm) + + + Executive (7.5 x 10 inches, 191 x 254 mm) + Executive (7.5 x 10インãƒã€191 x 254mm) + + + Folio (210 x 330 mm) + Folio (210 x 330mm) + + + Ledger (432 x 279 mm) + Ledger (432 x 279mm) + + + Legal (8.5 x 14 inches, 216 x 356 mm) + Legal (8.5 x 14インãƒã€216 x 356mm) + + + Letter (8.5 x 11 inches, 216 x 279 mm) + Letter (8.5 x 11インãƒã€216 x 279mm) + + + Tabloid (279 x 432 mm) + Tabloid (279 x 432mm) + + + US Common #10 Envelope (105 x 241 mm) + US Common #10 Envelope (105 x 241mm) + + + Print current page + ç¾åœ¨ã®ãƒšãƒ¼ã‚¸ã®å°åˆ· + + + Print + å°åˆ· + + + Print To File ... + ファイルã¸å‡ºåŠ›... + + + File %1 is not writable. +Please choose a different file name. + ファイル %1 ã¯æ›¸ãè¾¼ã¿å¯èƒ½ã§ã¯ã‚ã‚Šã¾ã›ã‚“。 +別ã®ãƒ•ã‚¡ã‚¤ãƒ«åã‚’é¸ã‚“ã§ãã ã•ã„。 + + + %1 already exists. +Do you want to overwrite it? + %1 ã¯ã™ã§ã«å­˜åœ¨ã—ã¾ã™ã€‚ +上書ãã—ã¾ã™ã‹? + + + File exists + ファイルã¯æ—¢ã«å­˜åœ¨ã—ã¦ã„ã¾ã™ + + + <qt>Do you want to overwrite it?</qt> + <qt>ファイルを上書ãã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹?</qt> + + + Print selection + é¸æŠžã•ã‚ŒãŸç¯„囲をå°åˆ· + + + %1 is a directory. +Please choose a different file name. + %1 ã¯ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ã™ã€‚ +ファイルåを指定ã—ã¦ãã ã•ã„。 + + + A0 + A0 + + + A1 + A1 + + + A2 + A2 + + + A3 + A3 + + + A4 + A4 + + + A5 + A5 + + + A6 + A6 + + + A7 + A7 + + + A8 + A8 + + + A9 + A9 + + + B0 + B0 + + + B1 + B1 + + + B2 + B2 + + + B3 + B3 + + + B4 + B4 + + + B5 + B5 + + + B6 + B6 + + + B7 + B7 + + + B8 + B8 + + + B9 + B9 + + + B10 + B10 + + + C5E + C5E + + + DLE + DLE + + + Executive + Exclusive + + + Folio + Folio + + + Ledger + Ledger + + + Legal + リーガルサイズ + + + Letter + レターサイズ + + + Tabloid + タブロイドサイズ + + + US Common #10 Envelope + US標準#10å°ç­’ + + + Custom + カスタム + + + &Options >> + オプション(&O) >> + + + &Print + å°åˆ·(&P) + + + &Options << + オプション(&O) << + + + Print to File (PDF) + PDFファイルã«å‡ºåŠ› + + + Print to File (Postscript) + Postscriptファイルã«å‡ºåŠ› + + + Local file + ローカルファイル + + + Write %1 file + ファイル %1 ã«æ›¸ãè¾¼ã¿ã¾ã—㟠+ + + The 'From' value cannot be greater than the 'To' value. + QPrintPropertiesWidgetã«Fromã¨ToãŒã‚ã£ã¦ãれを指ã—ã¦ã„ã‚‹ + å°åˆ·é–‹å§‹ãƒšãƒ¼ã‚¸ç•ªå·ã¯ã€å°åˆ·çµ‚了ページ番å·ã‚ˆã‚Šå°ã•ããªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 + + + + QPrintPreviewDialog + + Page Setup + ページã®è¨­å®š + + + %1% + %1% + + + Print Preview + å°åˆ·ã®ãƒ—レビュー + + + Next page + 次ã®ãƒšãƒ¼ã‚¸ + + + Previous page + å‰ã®ãƒšãƒ¼ã‚¸ + + + First page + 最åˆã®ãƒšãƒ¼ã‚¸ + + + Last page + 最後ã®ãƒšãƒ¼ã‚¸ + + + Fit width + å¹…ã‚’ã‚ã‚ã›ã‚‹ + + + Fit page + 高ã•ã‚’ã‚ã‚ã›ã‚‹ + + + Zoom in + 拡大 + + + Zoom out + ç¸®å° + + + Portrait + 縦 + + + Landscape + 横 + + + Show single page + 一枚ã®ãƒšãƒ¼ã‚¸ã‚’表示ã™ã‚‹ + + + Show facing pages + 見開ãã®ãƒšãƒ¼ã‚¸ã‚’表示ã™ã‚‹ + + + Show overview of all pages + ã™ã¹ã¦ã®ãƒšãƒ¼ã‚¸ã‚’表示ã™ã‚‹ + + + Print + å°åˆ· + + + Page setup + ページã®è¨­å®š + + + Close + é–‰ã˜ã‚‹ + + + Export to PDF + PDFã«å‡ºåŠ› + + + Export to PostScript + Postscriptã«å‡ºåŠ› + + + + QPrintPropertiesWidget + + Form + æ›¸å¼ + + + Page + ページ + + + Advanced + 高度ãªè¨­å®š + + + + QPrintSettingsOutput + + Form + æ›¸å¼ + + + Copies + å°åˆ·éƒ¨æ•° + + + Print range + å°åˆ·ç¯„囲 + + + Print all + ã™ã¹ã¦å°åˆ· + + + Pages from + 先頭ã®ãƒšãƒ¼ã‚¸ + + + to + 末尾ã®ãƒšãƒ¼ã‚¸ + + + Selection + é¸æŠžã—ãŸéƒ¨åˆ†ã‚’å°åˆ· + + + Output Settings + 出力設定 + + + Copies: + å°åˆ·éƒ¨æ•°: + + + Collate + ä¸åˆã„ + + + Reverse + 逆順 + + + Options + オプション + + + Color Mode + 色 + + + Color + カラー + + + Grayscale + グレースケール + + + Duplex Printing + 両é¢å°åˆ· + + + None + ãªã— + + + Long side + 長辺綴㘠+ + + Short side + 短辺綴㘠+ + + Current Page + ç¾åœ¨ã®ãƒšãƒ¼ã‚¸ + + + + QPrintWidget + + Form + æ›¸å¼ + + + Printer + プリンタ + + + &Name: + åå‰(&N): + + + P&roperties + プロパティ(&r) + + + Location: + 設置場所: + + + Preview + プレビュー + + + Type: + タイプ: + + + Output &file: + 出力ファイルå(&f): + + + ... + ... + + + + QProcess + + Could not open input redirection for reading + 標準入力リダイレクトを読ã¿è¾¼ã¿ã®ãŸã‚ã«ã‚ªãƒ¼ãƒ—ンã™ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“ + + + Could not open output redirection for writing + 標準出力リダイレクトを書ãè¾¼ã¿ã®ãŸã‚ã«ã‚ªãƒ¼ãƒ—ンã™ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“ + + + Resource error (fork failure): %1 + リソースエラー (fork ã«å¤±æ•—ã—ã¾ã—ãŸ): %1 + + + Process operation timed out + プロセス処ç†ãŒã‚¿ã‚¤ãƒ ã‚¢ã‚¦ãƒˆã—ã¾ã—㟠+ + + Error reading from process + プロセスã‹ã‚‰ã®èª­ã¿è¾¼ã¿ã«ãŠã„ã¦ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—㟠+ + + Error writing to process + プロセスã¸ã®æ›¸ãè¾¼ã¿ã«ãŠã„ã¦ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—㟠+ + + Process crashed + プロセスãŒã‚¯ãƒ©ãƒƒã‚·ãƒ¥ã—ã¾ã—㟠+ + + No program defined + プログラムåãŒæŒ‡å®šã•ã‚Œã¦ã„ã¾ã›ã‚“ + + + Process failed to start: %1 + プロセスã®èµ·å‹•ã«å¤±æ•—ã—ã¾ã—ãŸ: %1 + + + + QProgressDialog + + Cancel + キャンセル + + + + QPushButton + + Open + オープン + + + + QRadioButton + + Check + é¸æŠž + + + + QRegExp + + no error occurred + エラーã¯ç™ºç”Ÿã—ã¾ã›ã‚“ã§ã—㟠+ + + disabled feature used + 無効ãªæ©Ÿèƒ½ãŒä½¿ç”¨ã•ã‚Œã¾ã—㟠+ + + bad char class syntax + ä¸æ­£ãªcharクラス構文 + + + bad lookahead syntax + ä¸æ­£ãªlookahead構文 + + + bad repetition syntax + ä¸æ­£ãªrepetition構文 + + + invalid octal value + 無効ãª8進値 + + + missing left delim + å·¦ã®åŒºåˆ‡ã‚Šæ–‡å­—ãŒã‚ã‚Šã¾ã›ã‚“ + + + unexpected end + 予期ã—ãªã„末尾ã§ã™ + + + met internal limit + 内部制é™ã‚’満ãŸã—ã¾ã—㟠+ + + invalid interval + 無効ãªé–“éš” + + + invalid category + 無効ãªã‚«ãƒ†ã‚´ãƒªãƒ¼ + + + + QSQLite2Driver + + Error opening database + データベースã®ã‚ªãƒ¼ãƒ—ンã§ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—㟠+ + + Unable to begin transaction + トランザクションを開始ã§ãã¾ã›ã‚“ + + + Unable to commit transaction + トランザクションをコミットã§ãã¾ã›ã‚“ + + + Unable to rollback transaction + トランザクションをロールãƒãƒƒã‚¯ã§ãã¾ã›ã‚“ + + + + QSQLite2Result + + Unable to fetch results + 実行çµæžœã‚’フェッãƒã§ãã¾ã›ã‚“ + + + Unable to execute statement + ステートメントを実行ã§ãã¾ã›ã‚“ + + + + QSQLiteDriver + + Error opening database + データベースã®ã‚ªãƒ¼ãƒ—ンã§ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—㟠+ + + Error closing database + データベースã®ã‚¯ãƒ­ãƒ¼ã‚ºã§ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—㟠+ + + Unable to begin transaction + トランザクションを開始ã§ãã¾ã›ã‚“ + + + Unable to commit transaction + トランザクションをコミットã§ãã¾ã›ã‚“ + + + Unable to rollback transaction + トランザクションをロールãƒãƒƒã‚¯ã§ãã¾ã›ã‚“ + + + + QSQLiteResult + + Unable to fetch row + レコードをフェッãƒã§ãã¾ã›ã‚“ + + + Unable to execute statement + ステートメントを実行ã§ãã¾ã›ã‚“ + + + Unable to reset statement + ステートメントをリセットã§ãã¾ã›ã‚“ + + + Unable to bind parameters + パラメータをãƒã‚¤ãƒ³ãƒ‰ã§ãã¾ã›ã‚“ + + + Parameter count mismatch + パラメータã®æ•°ãŒåˆã£ã¦ã„ã¾ã›ã‚“ + + + No query + クエリーãŒã‚ã‚Šã¾ã›ã‚“ + + + + QScriptBreakpointsModel + + ID + ID + + + Location + ファイル:è¡Œç•ªå· + + + Condition + æ¡ä»¶ + + + Ignore-count + 無視ã™ã‚‹å›žæ•° + + + Single-shot + åˆå›žã®ã¿ + + + Hit-count + ヒットã—ãŸå›žæ•° + + + + QScriptBreakpointsWidget + + New + æ–°è¦ + + + Delete + 削除 + + + + QScriptDebugger + + Go to Line + 指定ã—ãŸè¡Œã¸ç§»å‹• + + + Line: + 行番å·: + + + Interrupt + 割り込㿠+ + + Shift+F5 + Shift+F5 + + + Continue + 続行 + + + F5 + F5 + + + Step Into + ステップイン + + + F11 + F11 + + + Step Over + ステップオーãƒãƒ¼ + + + F10 + F10 + + + Step Out + ステップアウト + + + Shift+F11 + Shift+F11 + + + Run to Cursor + カーソルä½ç½®ã¾ã§å®Ÿè¡Œ + + + Ctrl+F10 + Ctrl+F10 + + + Run to New Script + æ–°ãŸãªã‚¹ã‚¯ãƒªãƒ—トã¾ã§å®Ÿè¡Œ + + + Toggle Breakpoint + ブレークãƒã‚¤ãƒ³ãƒˆã®æœ‰åŠ¹/無効ã®åˆ‡ã‚Šæ›¿ãˆ + + + F9 + F9 + + + Clear Debug Output + デãƒãƒƒã‚°å‡ºåŠ›ã®ã‚¯ãƒªã‚¢ + + + Clear Error Log + エラーログã®ã‚¯ãƒªã‚¢ + + + Clear Console + コンソールã®ã‚¯ãƒªã‚¢ + + + &Find in Script... + スクリプト内を検索(&F)... + + + Ctrl+F + Ctrl+F + + + Find &Next + 次を検索(&N) + + + F3 + F3 + + + Find &Previous + å‰ã‚’検索(&P) + + + Shift+F3 + Shift+F3 + + + Ctrl+G + Ctrl+G + + + Debug + デãƒãƒƒã‚° + + + + QScriptDebuggerCodeFinderWidget - - Connected to host %1 - ホスト %1 ã«æŽ¥ç¶šã—ã¾ã—㟠+ Close + é–‰ã˜ã‚‹ - - Connection to %1 closed - %1 ã¸ã®æŽ¥ç¶šãŒé–‰ã˜ã‚‰ã‚Œã¾ã—㟠+ Previous + å‰ã‚’検索 - - Host found - ホストãŒè¦‹ã¤ã‹ã‚Šã¾ã—㟠+ Next + 次を検索 - - Connected to host - ホストã«æŽ¥ç¶šã—ã¾ã—㟠+ Case Sensitive + 大文字/å°æ–‡å­—を区別ã™ã‚‹ - - - Connection closed - 接続ãŒé–‰ã˜ã‚‰ã‚Œã¾ã—㟠+ Whole words + å˜èªžå˜ä½ã§æ¤œç´¢ã™ã‚‹ - - Proxy authentication required - プロキシーã®èªè¨¼ãŒå¿…è¦ã§ã™ + <img src=":/qt/scripttools/debugging/images/wrap.png">&nbsp;Search wrapped + <img src=":/qt/scripttools/debugging/images/wrap.png">&nbsp;先頭ã‹ã‚‰å†ã³æ¤œç´¢ã—ã¾ã™ + + + QScriptDebuggerLocalsModel - - Authentication required - èªè¨¼ãŒå¿…è¦ã§ã™ + Name + åå‰ - - Connection refused (or timed out) - 接続ãŒæ‹’å¦ã•ã‚ŒãŸã‹ã€ã‚¿ã‚¤ãƒ ã‚¢ã‚¦ãƒˆã—ã¾ã—㟠+ Value + 値 + + + QScriptDebuggerStackModel - - Proxy requires authentication - プロキシーã®èªè¨¼ãŒå¿…è¦ã§ã™ + Level + レベル - - Host requires authentication - ホストã®èªè¨¼ãŒå¿…è¦ã§ã™ + Name + åå‰ - - Data corrupted - データãŒç ´æã—ã¦ã„ã¾ã™ + Location + ファイル:è¡Œç•ªå· + + + QScriptEdit - - Unknown protocol specified - 未対応ã®ãƒ—ロトコルã§ã™ + Toggle Breakpoint + ブレークãƒã‚¤ãƒ³ãƒˆã®æœ‰åŠ¹/無効ã®åˆ‡ã‚Šæ›¿ãˆ - - SSL handshake failed - SSLã®ãƒãƒ³ãƒ‰ã‚·ã‚§ãƒ¼ã‚¯ã«å¤±æ•—ã—ã¾ã—㟠+ Disable Breakpoint + ブレークãƒã‚¤ãƒ³ãƒˆã‚’無効ã«ã™ã‚‹ + + + Enable Breakpoint + ブレークãƒã‚¤ãƒ³ãƒˆã‚’有効ã«ã™ã‚‹ + + + Breakpoint Condition: + ブレークãƒã‚¤ãƒ³ãƒˆã®æ¡ä»¶: - QHttpSocketEngine + QScriptEngineDebugger - - Did not receive HTTP response from proxy - プロキシーã‹ã‚‰HTTPレスãƒãƒ³ã‚¹ã‚’å—ä¿¡ã§ãã¾ã›ã‚“ã§ã—㟠+ Loaded Scripts + ロードã—ãŸã‚¹ã‚¯ãƒªãƒ—ト - - Error parsing authentication request from proxy - プロキシーã‹ã‚‰ã®èªè¨¼è¦æ±‚ã®ãƒ‘ースã«å¤±æ•—ã—ã¾ã—㟠+ Breakpoints + ブレークãƒã‚¤ãƒ³ãƒˆ - - Authentication required - èªè¨¼ãŒå¿…è¦ã§ã™ + Stack + スタック - - Proxy denied connection - プロキシーãŒæŽ¥ç¶šã‚’æ‹’å¦ã—ã¾ã—㟠+ Locals + ローカル変数 - - Error communicating with HTTP proxy - HTTP プロキシーã¨ã®é€šä¿¡ã«ã¦ã€ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—㟠+ Console + コンソール - - Proxy server not found - プロキシーサーãƒãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ + Debug Output + デãƒãƒƒã‚°å‡ºåŠ› - - Proxy connection refused - プロキシーãŒæŽ¥ç¶šã‚’æ‹’å¦ã—ã¾ã—㟠+ Error Log + エラーログ - - Proxy server connection timed out - プロキシーã¨ã®æŽ¥ç¶šãŒã‚¿ã‚¤ãƒ ã‚¢ã‚¦ãƒˆã—ã¾ã—㟠+ Search + 検索 - - Proxy connection closed prematurely - プロキシーã®æŽ¥ç¶šãŒé€šä¿¡ã®çµ‚了å‰ã«åˆ‡æ–­ã•ã‚Œã¾ã—㟠+ View + 表示 + + + Qt Script Debugger + Qt Script デãƒãƒƒã‚¬ - QIBaseDriver + QScriptNewBreakpointWidget - - Error opening database - データベースã®ã‚ªãƒ¼ãƒ—ンã§ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—㟠+ Close + é–‰ã˜ã‚‹ + + + QScrollBar - - Could not start transaction - トランザクションを開始ã§ãã¾ã›ã‚“ã§ã—㟠+ Scroll here + ã“ã“ã«ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ« - - Unable to commit transaction - トランザクションをコミットã§ãã¾ã›ã‚“ + Left edge + 左端 - - Unable to rollback transaction - トランザクションをロールãƒãƒƒã‚¯ã§ãã¾ã›ã‚“ + Top + 上端 + + + Right edge + å³ç«¯ + + + Bottom + 下端 + + + Page left + 1ページ左ã¸ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ« + + + Page up + 1ページ戻る + + + Page right + 1ページå³ã¸ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ« + + + Page down + 1ページ進む + + + Scroll left + å·¦ã¸ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ« + + + Scroll up + 上ã¸ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ« + + + Scroll right + å³ã¸ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ« + + + Scroll down + 下ã¸ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ« + + + Line up + 1行上㸠+ + + Position + ä½ç½® + + + Line down + 1行下㸠- QIBaseResult + QSharedMemory - - Unable to create BLOB - ãƒã‚¤ãƒŠãƒªãƒ©ãƒ¼ã‚¸ã‚ªãƒ–ジェクトを作æˆã§ãã¾ã›ã‚“ + %1: unable to set key on lock + 共有メモリ関連 + %1: ロックã™ã‚‹ãŸã‚ã®ã‚­ãƒ¼ã‚’設定ã§ãã¾ã›ã‚“ - - Unable to write BLOB - ãƒã‚¤ãƒŠãƒªãƒ©ãƒ¼ã‚¸ã‚ªãƒ–ジェクトを書ãè¾¼ã‚ã¾ã›ã‚“ + %1: create size is less then 0 + %1: 0よりå°ã•ã„サイズã®å…±æœ‰ãƒ¡ãƒ¢ãƒªã¯ä½œæˆã§ãã¾ã›ã‚“ - - Unable to open BLOB - ãƒã‚¤ãƒŠãƒªãƒ©ãƒ¼ã‚¸ã‚ªãƒ–ジェクトをオープンã§ãã¾ã›ã‚“ + %1: unable to lock + %1: ロックã§ãã¾ã›ã‚“ - - Unable to read BLOB - ãƒã‚¤ãƒŠãƒªãƒ©ãƒ¼ã‚¸ã‚ªãƒ–ジェクトを読ã¿è¾¼ã‚ã¾ã›ã‚“ + %1: unable to unlock + %1: アンロックã§ãã¾ã›ã‚“ - - - Could not find array - é…列ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ã§ã—㟠+ %1: permission denied + %1: 許å¯ã•ã‚Œã¦ã„ã¾ã›ã‚“ - - Could not get array data - é…列データをå–å¾—ã§ãã¾ã›ã‚“ã§ã—㟠+ %1: already exists + %1: æ—¢ã«å­˜åœ¨ã—ã¾ã™ + + + %1: doesn't exists + %1: 存在ã—ã¾ã›ã‚“ + + + %1: out of resources + %1: リソースä¸è¶³ã§ã™ + + + %1: unknown error %2 + %1: 未知ã®ã‚¨ãƒ©ãƒ¼ %2 + + + %1: key is empty + %1: キーãŒç©ºã§ã™ + + + %1: ftok failed + %1: fork ã«å¤±æ•—ã—ã¾ã—㟠+ + + %1: unable to make key + %1: キーを作æˆã§ãã¾ã›ã‚“ + + + %1: doesn't exist + %1: 存在ã—ã¾ã›ã‚“ + + + %1: UNIX key file doesn't exist + %1: UNIX key file ãŒå­˜åœ¨ã—ã¾ã›ã‚“ + + + %1: system-imposed size restrictions + EINVAL + %1: 指定ã•ã‚ŒãŸã‚µã‚¤ã‚ºã¯ã‚·ã‚¹ãƒ†ãƒ ã«ã‚ˆã‚Šæ‹’å¦ã•ã‚Œã¾ã—㟠+ + + %1: not attached + %1: アタッãƒã—ã¦ã„ã¾ã›ã‚“ + + + %1: invalid size + %1: 無効ãªã‚µã‚¤ã‚ºã§ã™ + + + %1: key error + safekey.isEmpty()==true + %1: キーã‹ã‚ã‚Šã¾ã›ã‚“ + + + %1: size query failed + %1: サイズã®ã‚¯ã‚¨ãƒªãƒ¼ã«å¤±æ•—ã—ã¾ã—㟠+ + + + QShortcut + + Space + This and all following "incomprehensible" strings in QShortcut context are key names. Please use the localized names appearing on actual keyboards or whatever is commonly used. + Space + + + Esc + Esc + + + Tab + Tab + + + Backtab + Backtab + + + Backspace + Backspace + + + Return + Return + + + Enter + Enter + + + Ins + Ins + + + Del + Del - - Could not get query info - クエリー情報をå–å¾—ã§ãã¾ã›ã‚“ã§ã—㟠+ Pause + Pause - - Could not start transaction - トランザクションを開始ã§ãã¾ã›ã‚“ã§ã—㟠+ Print + Print - - Unable to commit transaction - トランザクションをコミットã§ãã¾ã›ã‚“ + SysReq + SysReq - - Could not allocate statement - ステートメントã®é ˜åŸŸã‚’確ä¿ã§ãã¾ã›ã‚“ã§ã—㟠+ Home + Home - - Could not prepare statement - プリペアステートメントを使ãˆã¾ã›ã‚“ã§ã—㟠+ End + End - - - Could not describe input statement - INPUT ステートメントã®æƒ…報をå–å¾—ã§ãã¾ã›ã‚“ã§ã—㟠+ Left + → - - Could not describe statement - ステートメントã®æƒ…報をå–å¾—ã§ãã¾ã›ã‚“ã§ã—㟠+ Up + ↑ - - Unable to close statement - ステートメントをクローズã§ãã¾ã›ã‚“ + Right + ↠- - Unable to execute query - クエリーを実行ã§ãã¾ã›ã‚“ + Down + ↓ - - Could not fetch next item - 次ã®ãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’フェッãƒã§ãã¾ã›ã‚“ã§ã—㟠+ PgUp + PgUp - - Could not get statement info - ステートメントã®æƒ…報をå–å¾—ã§ãã¾ã›ã‚“ã§ã—㟠+ PgDown + PgDown - - - QIODevice - - Permission denied - 許å¯ã•ã‚Œã¦ã„ã¾ã›ã‚“ + CapsLock + CapsLock - - Too many open files - é–‹ã‹ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ãŒå¤šã™ãŽã¾ã™ + NumLock + NumLock - - No such file or directory - ãã®ã‚ˆã†ãªãƒ•ã‚¡ã‚¤ãƒ«ã‚„ディレクトリã¯ã‚ã‚Šã¾ã›ã‚“ + ScrollLock + ScrollLock - - No space left on device - デãƒã‚¤ã‚¹ã®æ®‹ã‚Šå®¹é‡ãŒã‚ã‚Šã¾ã›ã‚“ + Menu + メニュー - - Unknown error - ä¸æ˜Žãªã‚¨ãƒ©ãƒ¼ + Help + ヘルプ - - - QInputContext - - XIM - XIM + Back + 戻る - - XIM input method - XIM 入力メソッド + Forward + 進む - - Windows input method - Windows 入力メソッド + Stop + åœæ­¢ - - Mac OS X input method - Mac OS X 入力メソッド + Refresh + æ›´æ–°é–“éš” - - - QInputDialog - - Enter a value: - 数値を入力: + Volume Down + 音é‡ã‚’下ã’ã‚‹ - - - QLibrary - - Could not mmap '%1': %2 - '%1' をメモリã«ãƒžãƒƒãƒ”ングã§ãã¾ã›ã‚“ã§ã—ãŸ: %2 + Volume Mute + 消音 - - Plugin verification data mismatch in '%1' - '%1' ã§ãƒ—ラグイン検証データãŒä¸€è‡´ã—ã¾ã›ã‚“ + Volume Up + 音é‡ã‚’上ã’ã‚‹ - - Could not unmap '%1': %2 - '%1' ã®ãƒžãƒƒãƒ”ングを解除ã§ãã¾ã›ã‚“ã§ã—ãŸ: %2 + Bass Boost + 低音ブースト - - The plugin '%1' uses incompatible Qt library. (%2.%3.%4) [%5] - プラグイン '%1' ã¯ã€äº’æ›æ€§ã®ãªã„ Qt ライブラリを使用ã—ã¦ã„ã¾ã™ã€‚(%2.%3.%4) [%5] + Bass Up + 低音を上ã’ã‚‹ - - The plugin '%1' uses incompatible Qt library. Expected build key "%2", got "%3" - プラグイン '%1' ã¯ã€äº’æ›æ€§ã®ãªã„ Qt ライブラリを使用ã—ã¦ã„ã¾ã™ã€‚ビルドキー "%2" ãŒå¿…è¦ã§ã™ãŒã€"%3" ã—ã‹ã‚ã‚Šã¾ã›ã‚“ + Bass Down + 低音を下ã’ã‚‹ - - Unknown error - ä¸æ˜Žãªã‚¨ãƒ©ãƒ¼ + Treble Up + 高音を上ã’ã‚‹ - QLibrary::load_sys: Cannot load %1 (%2) - QLibrary::load_sys: %1 をロードã§ãã¾ã›ã‚“ (%2) + Treble Down + 高音を下ã’ã‚‹ - QLibrary::unload_sys: Cannot unload %1 (%2) - QLibrary::unload_sys: %1 をアンロードã§ãã¾ã›ã‚“ (%2) + Media Play + メディアã®å†ç”Ÿ - QLibrary::resolve_sys: Symbol "%1" undefined in %2 (%3) - QLibrary::resolve_sys: シンボル "%1" 㯠%2 ã§å®šç¾©ã•ã‚Œã¦ã„ã¾ã›ã‚“ (%3) + Media Stop + メディアã®åœæ­¢ - - - The shared library was not found. - 共有ライブラリãŒã¿ã¤ã‹ã‚Šã¾ã›ã‚“。 + Media Previous + å‰ã®ãƒ¡ãƒ‡ã‚£ã‚¢ - - The file '%1' is not a valid Qt plugin. - ファイル '%1' 㯠Qt プラグインã§ã¯ã‚ã‚Šã¾ã›ã‚“。 + Media Next + 次ã®ãƒ¡ãƒ‡ã‚£ã‚¢ - - The plugin '%1' uses incompatible Qt library. (Cannot mix debug and release libraries.) - プラグイン '%1' ã¯ã“ã® Qt ã¨äº’æ›æ€§ã®ãªã„ライブラリを使用ã—ã¦ã„ã¾ã™ã€‚ (デãƒãƒƒã‚¯ç‰ˆã¨ãƒªãƒªãƒ¼ã‚¹ç‰ˆã®ãƒ©ã‚¤ãƒ–ラリをåŒæ™‚ã«ä½¿ç”¨ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“) + Media Record + メディアã®éŒ²éŸ³ - - - Cannot load library %1: %2 - ライブラリ '%1' を読ã¿è¾¼ã‚€ã“ã¨ãŒã§ãã¾ã›ã‚“: %2 + Media Pause + Media player pause button + メディアã®ä¸€æ™‚åœæ­¢ - - - Cannot unload library %1: %2 - ライブラリ %1 を解放ã™ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“: %2 + Toggle Media Play/Pause + Media player button to toggle between playing and paused + メディアã®å†ç”Ÿã¨ä¸€æ™‚åœæ­¢ã®åˆ‡ã‚Šæ›¿ãˆ - - - Cannot resolve symbol "%1" in %2: %3 - '%2'ã«å«ã¾ã‚Œã‚‹è­˜åˆ¥å­ "%1" を解決ã§ãã¾ã›ã‚“: %3 + Home Page + ホームページ - - - QLineEdit - - &Undo - å…ƒã«æˆ»ã™(&U) + Favorites + ãŠæ°—ã«å…¥ã‚Š - - &Redo - ã‚„ã‚Šç›´ã™(&R) + Search + 検索 - - Cu&t - 切りå–ã‚Š(&T) + Standby + スタンãƒã‚¤ - - &Copy - コピー(&C) + Open URL + URLã‚’é–‹ã - - &Paste - 貼り付ã‘(&P) + Launch Mail + メールã®èµ·å‹• - - Delete - 削除 + Launch Media + メディアã®èµ·å‹• - - Select All - ã™ã¹ã¦ã‚’é¸æŠž + Launch (0) + (0)ã®èµ·å‹• - - - QLocalServer - - - %1: Name error - %1: åå‰ã®è§£æ±ºã«å¤±æ•— + Launch (1) + (1)ã®èµ·å‹• - - %1: Permission denied - %1: 許å¯ã•ã‚Œã¦ã„ã¾ã›ã‚“ + Launch (2) + (2)ã®èµ·å‹• - - %1: Address in use - %1: アドレスã¯æ—¢ã«ä½¿ç”¨ã•ã‚Œã¦ã„ã¾ã™ + Launch (3) + (3)ã®èµ·å‹• - - %1: Unknown error %2 - %1: 未知ã®ã‚¨ãƒ©ãƒ¼ %2 + Launch (4) + (4)ã®èµ·å‹• - - - QLocalSocket - - - %1: Connection refused - %1: 接続ãŒæ‹’å¦ã•ã‚Œã¾ã—㟠+ Launch (5) + (5)ã®èµ·å‹• - - - %1: Remote closed - %1: リモートã«ã‚ˆã‚ŠæŽ¥ç¶šãŒé–‰ã˜ã‚‰ã‚Œã¾ã—㟠+ Launch (6) + (6)ã®èµ·å‹• - - - - - %1: Invalid name - %1: 無効ãªåå‰ã§ã™ + Launch (7) + (7)ã®èµ·å‹• - - - %1: Socket access error - %1: ソケットアクセスã®ã‚¨ãƒ©ãƒ¼ã§ã™ + Launch (8) + (8)ã®èµ·å‹• - - - %1: Socket resource error - %1: ソケットリソースã®ã‚¨ãƒ©ãƒ¼ã§ã™ + Launch (9) + (9)ã®èµ·å‹• - - - %1: Socket operation timed out - %1: ソケットæ“作ãŒã‚¿ã‚¤ãƒ ã‚¢ã‚¦ãƒˆã—ã¾ã—㟠+ Launch (A) + (A)ã®èµ·å‹• - - - %1: Datagram too large - %1: データグラムãŒå¤§ãã™ãŽã¾ã™ + Launch (B) + (B)ã®èµ·å‹• - - - - %1: Connection error - %1: 接続ã®ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—㟠+ Launch (C) + (C)ã®èµ·å‹• - - - %1: The socket operation is not supported - %1: ãã®ã‚½ã‚±ãƒƒãƒˆæ“作ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“ + Launch (D) + (D)ã®èµ·å‹• - - %1: Unknown error - %1: 未知ã®ã‚¨ãƒ©ãƒ¼ã§ã™ + Launch (E) + (E)ã®èµ·å‹• - - - %1: Unknown error %2 - %1: 未知ã®ã‚¨ãƒ©ãƒ¼ %2 + Launch (F) + (F)ã®èµ·å‹• - - - QMYSQLDriver - - Unable to open database ' - データベースをオープンã§ãã¾ã›ã‚“ ' + Monitor Brightness Up + モニタã®è¼åº¦ã‚’上ã’ã‚‹ - - Unable to connect - 接続ã§ãã¾ã›ã‚“ + Monitor Brightness Down + モニタã®è¼åº¦ã‚’下ã’ã‚‹ - - Unable to begin transaction - トランザクションを開始ã§ãã¾ã›ã‚“ + Keyboard Light On/Off + キーボードライトã®ã‚ªãƒ³ãƒ»ã‚ªãƒ• - - Unable to commit transaction - トランザクションをコミットã§ãã¾ã›ã‚“ + Keyboard Brightness Up + キーボードã®è¼åº¦ã‚’上ã’ã‚‹ - - Unable to rollback transaction - トランザクションをロールãƒãƒƒã‚¯ã§ãã¾ã›ã‚“ + Keyboard Brightness Down + キーボードã®è¼åº¦ã‚’下ã’ã‚‹ + + + Power Off + é›»æºã‚ªãƒ• - - - QMYSQLResult - - Unable to fetch data - データをフェッãƒã§ãã¾ã›ã‚“ + Wake Up + èµ·å‹• - - Unable to execute query - クエリーを実行ã§ãã¾ã›ã‚“ + Eject + å–り出㗠- - Unable to store result - 実行çµæžœã‚’記録ã§ãã¾ã›ã‚“ + Screensaver + スクリーンセーム- - - Unable to prepare statement - プリペアステートメントを使ãˆã¾ã›ã‚“ + WWW + WWW - - Unable to reset statement - ステートメントをリセットã§ãã¾ã›ã‚“ + Sleep + スリープ - - Unable to bind value - 値をãƒã‚¤ãƒ³ãƒ‰ã§ãã¾ã›ã‚“ + LightBulb + ライト - - Unable to execute statement - ステートメントを実行ã§ãã¾ã›ã‚“ + Shop + ショップ - - - Unable to bind outvalues - 出力値をãƒã‚¤ãƒ³ãƒ‰ã§ãã¾ã›ã‚“ + History + 履歴 - - Unable to store statement results - ステートメントã®å®Ÿè¡Œçµæžœã‚’記録ã§ãã¾ã›ã‚“ + Add Favorite + ãŠæ°—ã«å…¥ã‚Šã«è¿½åŠ  - - Unable to execute next query - 次ã®ã‚¯ã‚¨ãƒªãƒ¼ã‚’実行ã§ãã¾ã›ã‚“ + Hot Links + - - Unable to store next result - 次ã®çµæžœã‚’記録ã§ãã¾ã›ã‚“ + Adjust Brightness + è¼åº¦ã®èª¿æ•´ - - - QMdiArea - - (Untitled) - (タイトルãªã—) + Finance + ファイナンス - - - QMdiSubWindow - - %1 - [%2] - %1 - [%2] + Community + コミュニティ - - Close - é–‰ã˜ã‚‹ + Audio Rewind + オーディオã®å·»ã戻㗠- - Minimize - 最å°åŒ– + Back Forward + - - Restore Down - å…ƒã«æˆ»ã™ + Application Left + - - &Restore - å…ƒã«æˆ»ã™(&R) + Application Right + - - &Move - 移動(&M) + Book + æ›¸ç± - - &Size - サイズ(&S) + CD + CD - - Mi&nimize - 最å°åŒ–(&N) + Calculator + é›»å“ - - Ma&ximize - 最大化(&X) + Clear + クリア - - Stay on &Top - 常ã«æ‰‹å‰ã«è¡¨ç¤º(&T) + Clear Grab + - - &Close - é–‰ã˜ã‚‹(&C) + Close + é–‰ã˜ã‚‹ - - - [%1] - - [%1] + Copy + コピー - - Maximize - 最大化 + Cut + 切りå–ã‚Š - - Unshade - ãŸã¶ã‚“é¸æŠžãƒ»éžé¸æŠžçŠ¶æ…‹ã®ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ã®ã“ã¨ã ã¨æ€ã†ã‘ã©ã€‚fvwmãªã©ã®x11ã§ä½¿ã‚ã‚Œã¦ã„る用語 - éžé¸æŠž + Display + ディスプレイ - - Shade - é¸æŠž + DOS + DOS - - Restore - å…ƒã«æˆ»ã™ + Documents + ドキュメント - - Help - ヘルプ + Spreadsheet + スプレッドシート - - Menu - メニュー + Browser + ブラウザ - - - QMenu - - - Close - é–‰ã˜ã‚‹ + Game + ゲーム - - - Open - オープン + Go + - - - - Execute - 実行 + iTouch + - - - QMenuBar - About Qt - Qt ã«ã¤ã„㦠+ Logoff + ログオフ - - - QMessageBox - - Help - ヘルプ + Market + マーケット - - - - - OK - OK + Meeting + 会議 - <h3>About Qt</h3>%1<p>Qt is a C++ toolkit for cross-platform application development.</p><p>Qt provides single-source portability across MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qtopia Core.</p><p>Qt is a Trolltech product. See <a href="http://qt.nokia.com/">qt.nokia.com</a> for more information.</p> - <h3>Qt ã«ã¤ã„ã¦</h3>%1 -<p>Qtã¯ã‚¯ãƒ­ã‚¹ãƒ—ラットフォームã®C++ アプリケーション開発ツールキットã§ã™ã€‚</p> -<p>Qt 㯠MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, 商用ã®Unix派生版ã§ã‚½ãƒ¼ã‚¹ã‚³ãƒ¼ãƒ‰äº’æ›ã‚’実ç¾ã—ã¾ã™ã€‚ã¾ãŸã€Qtopia Coreã®ã‚ˆã†ã«ã€å†…蔵デãƒã‚¤ã‚¹ã§ã‚‚利用å¯èƒ½ã§ã™ã€‚</p> -<p>Qtã¯Trolltechã®å•†å“ã§ã™ã€‚詳細ã¯<tt>http://qt.nokia.com/</tt>ã‚’å‚ç…§ã—ã¦ãã ã•ã„。</p> + Keyboard Menu + キーボードメニュー - <p>This program uses Qt version %1.</p> - <p>ã“ã®ãƒ—ログラム㯠Qt ãƒãƒ¼ã‚¸ãƒ§ãƒ³ %1 を使用ã—ã¦ã„ã¾ã™ã€‚</p> + Menu PB + - <p>This program uses Qt Open Source Edition version %1.</p><p>Qt Open Source Edition is intended for the development of Open Source applications. You need a commercial Qt license for development of proprietary (closed source) applications.</p><p>Please see <a href="http://qt.nokia.com/company/model/">qt.nokia.com/company/model/</a> for an overview of Qt licensing.</p> - <p>ã“ã®ãƒ—ログラム㯠Qt オープンソース版ãƒãƒ¼ã‚¸ãƒ§ãƒ³ %1 を使用ã—ã¦ã„ã¾ã™ã€‚</p> -<p>Qt オープンソース版ã¯ã‚ªãƒ¼ãƒ—ンソースã®ã‚¢ãƒ—リケーションã®é–‹ç™ºç”¨ã§ã™ã€‚ソースコードを公開ã—ãªã„商用アプリケーションを開発ã™ã‚‹ã«ã¯å•†ç”¨ç‰ˆã®ãƒ©ã‚¤ã‚»ãƒ³ã‚¹ãŒå¿…è¦ã§ã™ã€‚</p><p>Qtã®ãƒ©ã‚¤ã‚»ãƒ³ã‚¹ã«ã¤ã„ã¦ã¯<tt>http://qt.nokia.com/company/model.html</tt>ã‚’å‚ç…§ã—ã¦ãã ã•ã„。</p> + My Sites + マイサイト - - About Qt - Qt ã«ã¤ã„㦠+ News + ニュース - - Show Details... - 詳細を表示... + Home Office + ホームオフィス - - Hide Details... - 詳細を隠ã™... + Option + オプション - - <h3>About Qt</h3><p>This program uses Qt version %1.</p><p>Qt is a C++ toolkit for cross-platform application development.</p><p>Qt provides single-source portability across MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qt for Embedded Linux and Qt for Windows CE.</p><p>Qt is available under three different licensing options designed to accommodate the needs of our various users.</p>Qt licensed under our commercial license agreement is appropriate for development of proprietary/commercial software where you do not want to share any source code with third parties or otherwise cannot comply with the terms of the GNU LGPL version 2.1 or GNU GPL version 3.0.</p><p>Qt licensed under the GNU LGPL version 2.1 is appropriate for the development of Qt applications (proprietary or open source) provided you can comply with the terms and conditions of the GNU LGPL version 2.1.</p><p>Qt licensed under the GNU General Public License version 3.0 is appropriate for the development of Qt applications where you wish to use such applications in combination with software subject to the terms of the GNU GPL version 3.0 or where you are otherwise willing to comply with the terms of the GNU GPL version 3.0.</p><p>Please see <a href="http://qt.nokia.com/products/licensing">qt.nokia.com/products/licensing</a> for an overview of Qt licensing.</p><p>Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).</p><p>Qt is a Nokia product. See <a href="http://qt.nokia.com/">qt.nokia.com</a> for more information.</p> - <h3>Qtã«ã¤ã„ã¦</h3> -<p>ã“ã®ãƒ—ログラム㯠Qt ãƒãƒ¼ã‚¸ãƒ§ãƒ³ %1 を使用ã—ã¦ã„ã¾ã™ã€‚</p> -<p>Qt ã¯ã€ã‚¯ãƒ­ã‚¹ãƒ—ラットホームã®ã‚¢ãƒ—リケーション開発ã«ä½¿ç”¨ã•ã‚Œã‚‹ C++ ã®ãƒ„ールキットã§ã™ã€‚</p> -<p>Qt ã¯ã€ MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, ãã—ã¦å¤šæ•°ã® Unix ç³»OS環境ã«å¯¾ã—ã¦ã€å˜ä¸€ã®ã‚½ãƒ¼ã‚¹ã‹ã‚‰ãƒã‚¤ãƒŠãƒªã‚’生æˆã—ã¾ã™ã€‚ -ã¾ãŸã€ Linux ãŠã‚ˆã³ Windows CE ã‚’å…ƒã¨ã—ãŸçµ„ã¿è¾¼ã¿ç’°å¢ƒã«ã‚‚対応ã—ã¦ã„ã¾ã™ã€‚</p> -<p>Qt ã¯æ§˜ã€…ãªãƒ¦ãƒ¼ã‚¶ã®è¦æœ›ã«å¿œã˜ã‚‹ãŸã‚ã«ã€3ã¤ã®ç•°ãªã‚‹ãƒ©ã‚¤ã‚»ãƒ³ã‚¹ã§æä¾›ã•ã‚Œã¦ã„ã¾ã™ã€‚</p> -<p> -Qt 商用ライセンスã¯ã€ãƒ—ロプライエタリã¾ãŸã¯å•†ç”¨ã‚½ãƒ•ãƒˆã‚¦ã‚§ã‚¢ã«é©ç”¨ã§ãã¾ã™ã€‚ -ã“ã®å ´åˆã¯ã€ä»–者ã¨ã®ã‚½ãƒ¼ã‚¹ã‚³ãƒ¼ãƒ‰ã®å…±æœ‰ã‚’æ‹’å¦ã—〠GNU LGP ãƒãƒ¼ã‚¸ãƒ§ãƒ³ 2.1 ã¾ãŸã¯ GNU GPL ãƒãƒ¼ã‚¸ãƒ§ãƒ³ 3.0 を許容ã§ããªã„ソフトウェアã«ãŠã„㦠Qt を使用ã§ãã¾ã™ã€‚ -</p> -<p> -Qt GNU LGPL ãƒãƒ¼ã‚¸ãƒ§ãƒ³ 2.1 ライセンスã¯ã€ãƒ—ロプライエタリã¾ãŸã¯ã‚ªãƒ¼ãƒ—ンソースソフトウェアã«é©ç”¨ã§ãã¾ã™ã€‚ -ã“ã®å ´åˆã¯ã€ GNU LGPL ãƒãƒ¼ã‚¸ãƒ§ãƒ³ 2.1 ã«å¾“ã†å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ -</p> -<p> -Qt GNU General Public License ãƒãƒ¼ã‚¸ãƒ§ãƒ³ 3.0 ライセンスã¯ã€GNU GPL ãƒãƒ¼ã‚¸ãƒ§ãƒ³ 3.0 ã¾ãŸã¯ GPL 3.0 ã¨äº’æ›æ€§ã®ã‚るライセンスを採用ã—ã¦ã„るソフトウェアã«é©ç”¨ã•ã‚Œã¾ã™ã€‚ -ã“ã®å ´åˆã¯ã€GNU GPL ãƒãƒ¼ã‚¸ãƒ§ãƒ³ 3.0 ã«å¾“ã†å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ -</p> -<p> -ライセンスã®è©³ç´°ã«ã¤ã„ã¦ã¯ã€<a href="http://qt.nokia.com/products/licensing">qt.nokia.com/products/licensing</a> -ã‚’å‚ç…§ã—ã¦ãã ã•ã„。</p> -<p>Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).</p> -<p>Qt 㯠Nokia ã®è£½å“ã§ã™ã€‚詳細ã«ã¤ã„ã¦ã¯<a href="http://qt.nokia.com/">qt.nokia.com</a> ã‚’å‚ç…§ã—ã¦ãã ã•ã„。</p> -<p> -訳注: ライセンスã¯ã“ã“ã«ã‚る翻訳ã¯å‚考ã®ãŸã‚ã®ã‚‚ã®ã§ã‚ã‚Šã€ã‚ªãƒªã‚¸ãƒŠãƒ«ã®(英語ã®)ã‚‚ã®ãŒæ­£å¼ãªã‚‚ã®ã¨ãªã‚Šã¾ã™ã€‚ -</p> + Paste + 貼り付㑠- - - QMultiInputContext - - Select IM - インプットメソッドをé¸æŠž + Phone + 電話 - - - QMultiInputContextPlugin - - Multiple input method switcher - 複数ã®ã‚¤ãƒ³ãƒ—ットメソッドを切り替㈠+ Reply + 返信 - - Multiple input method switcher that uses the context menu of the text widgets - テキストウィジェットã®ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆãƒ¡ãƒ‹ãƒ¥ãƒ¼ã‚’使ã£ãŸè¤‡æ•°ã®ã‚¤ãƒ³ãƒ—ットメソッドã®åˆ‡ã‚Šæ›¿ãˆã§ã™ + Reload + リロード - - - QNativeSocketEngine - - Unable to initialize non-blocking socket - éžãƒ–ロック型ソケットをåˆæœŸåŒ–ã§ãã¾ã›ã‚“ + Rotate Windows + - - Unable to initialize broadcast socket - ブロードキャストソケットをåˆæœŸåŒ–ã§ãã¾ã›ã‚“ + Rotation PB + - - Attempt to use IPv6 socket on a platform with no IPv6 support - IPv6 ãŒã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ãªã„プラットフォーム㧠IPv6 ソケットを使用ã—よã†ã¨ã—ã¦ã„ã¾ã™ + Rotation KB + - - The remote host closed the connection - リモートホストã¯æŽ¥ç¶šã‚’é–‰ã˜ã¾ã—㟠+ Save + ä¿å­˜ - - Network operation timed out - ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯æ“作ãŒã‚¿ã‚¤ãƒ ã‚¢ã‚¦ãƒˆã—ã¾ã—㟠+ Send + é€ä¿¡ - - Out of resources - リソースãŒè¶³ã‚Šã¾ã›ã‚“ + Spellchecker + スペルãƒã‚§ãƒƒã‚«ãƒ¼ - - Unsupported socket operation - サãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ãªã„ソケットæ“作ã§ã™ + Split Screen + ç”»é¢ã®åˆ†å‰² - - Protocol type not supported - プロトコル型ãŒã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“ + Support + サãƒãƒ¼ãƒˆ - - Invalid socket descriptor - 無効ãªã‚½ã‚±ãƒƒãƒˆè¨˜è¿°å­ã§ã™ + Task Panel + タスクパãƒãƒ« - - Host unreachable - ホストã¸åˆ°é”ã§ãã¾ã›ã‚“ + Terminal + 端末 - - Network unreachable - ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã¸åˆ°é”ã§ãã¾ã›ã‚“ + Tools + ツール - - Permission denied - 許å¯ã•ã‚Œã¦ã„ã¾ã›ã‚“ + Travel + æ—…è¡Œ - - Connection timed out - 接続ãŒã‚¿ã‚¤ãƒ ã‚¢ã‚¦ãƒˆã—ã¾ã—㟠+ Video + å‹•ç”» - - Connection refused - 接続を拒å¦ã•ã‚Œã¾ã—㟠+ Word Processor + ワードプロセッサ - - The bound address is already in use - ãƒã‚¤ãƒ³ãƒ‰ã‚¢ãƒ‰ãƒ¬ã‚¹ã¯æ—¢ã«ä½¿ã‚ã‚Œã¦ã„ã¾ã™ + XFer + å¤‰æ› - - The address is not available - ãã®ã‚¢ãƒ‰ãƒ¬ã‚¹ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“ + Zoom In + 拡大 - - The address is protected - ãã®ã‚¢ãƒ‰ãƒ¬ã‚¹ã¸ã®ã‚¢ã‚¯ã‚»ã‚¹æ¨©ãŒã‚ã‚Šã¾ã›ã‚“ + Zoom Out + ç¸®å° - - Datagram was too large to send - データグラムãŒå¤§ãéŽãŽã¦é€ä¿¡ã§ãã¾ã›ã‚“ã§ã—㟠+ Away + 離席 - - Unable to send a message - メッセージをé€ä¿¡ã§ãã¾ã›ã‚“ + Messenger + メッセンジャー - - Unable to receive a message - メッセージをå—ä¿¡ã§ãã¾ã›ã‚“ + WebCam + Webカメラ - - Unable to write - 書ãè¾¼ã¿ãŒã§ãã¾ã›ã‚“ + Mail Forward + メールã®è»¢é€ - - Network error - ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã‚¨ãƒ©ãƒ¼ + Pictures + ç”»åƒ - - Another socket is already listening on the same port - 別ã®ã‚½ã‚±ãƒƒãƒˆãŒåŒã˜ãƒãƒ¼ãƒˆã§æ—¢ã«å¾…ã¡å—ã‘ã¦ã„ã¾ã™ + Music + 音楽 - - Operation on non-socket - éžã‚½ã‚±ãƒƒãƒˆã«å¯¾ã™ã‚‹æ“作ã§ã™ + Battery + ãƒãƒƒãƒ†ãƒª - - Unknown error - ä¸æ˜Žãªã‚¨ãƒ©ãƒ¼ + Bluetooth + ブルートゥース - - The proxy type is invalid for this operation - ã“ã®ãƒ—ロキシーã¯ã€ã“ã®æ“作ã«å¯¾å¿œã—ã¦ã„ã¾ã›ã‚“ + Wireless + ç„¡ç·š - - - QNetworkAccessCacheBackend - - Error opening %1 - オープンã®ã‚¨ãƒ©ãƒ¼ %1 + Ultra Wide Band + 超広帯域無線(UWB) - - - QNetworkAccessDebugPipeBackend - - Write error writing to %1: %2 - %1 ã¸ã®æ›¸ãè¾¼ã¿æ™‚ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: %2 + Audio Forward + オーディオã®æ—©é€ã‚Š - - - QNetworkAccessFileBackend - - Request for opening non-local file %1 - éžãƒ­ãƒ¼ã‚«ãƒ«ãƒ•ã‚¡ã‚¤ãƒ« %1 をオープンã™ã‚‹ã‚ˆã†è¦æ±‚ã•ã‚Œã¾ã—ãŸãŒã€ãƒ­ãƒ¼ã‚«ãƒ«ãƒ•ã‚¡ã‚¤ãƒ«ã®ã¿ã‚ªãƒ¼ãƒ—ンã§ãã¾ã™ + Audio Repeat + オーディオã®ç¹°ã‚Šè¿”ã— - - Error opening %1: %2 - %1 をオープンã™ã‚‹æ™‚ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: %2 + Audio Random Play + オーディオã®ãƒ©ãƒ³ãƒ€ãƒ å†ç”Ÿ - - Write error writing to %1: %2 - %1 ã¸ã®æ›¸ãè¾¼ã¿æ™‚ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: %2 + Subtitle + 字幕 - - Cannot open %1: Path is a directory - %1 をオープンã§ãã¾ã›ã‚“。指定ã•ã‚ŒãŸãƒ‘スã¯ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ã™ + Audio Cycle Track + - - Read error reading from %1: %2 - %1 を読ã¿è¾¼ã¿æ™‚ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: %2 + Time + 時間 - - - QNetworkAccessFtpBackend - - No suitable proxy found - é©åˆ‡ãªãƒ—ロキシーãŒã¿ã¤ã‹ã‚Šã¾ã›ã‚“ + View + 表示 - - Cannot open %1: is a directory - %1 をオープンã§ãã¾ã›ã‚“。指定ã•ã‚ŒãŸãƒ‘スã¯ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ã™ + Top Menu + トップメニュー - - Logging in to %1 failed: authentication required - %1 ã¸ã®ãƒ­ã‚°ã‚¤ãƒ³ã«å¤±æ•—ã—ã¾ã—ãŸã€‚èªè¨¼ãŒå¿…è¦ã§ã™ + Suspend + サスペンド - - Error while downloading %1: %2 - %1 をダウンロード中ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: %2 + Hibernate + 休止 - - Error while uploading %1: %2 - %1 をアップロード中ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: %2 + Print Screen + Print Screen - - - QNetworkAccessHttpBackend - - No suitable proxy found - é©åˆ‡ãªãƒ—ロキシーãŒã¿ã¤ã‹ã‚Šã¾ã›ã‚“ + Page Up + Page Up - - - QNetworkReply - - Error downloading %1 - server replied: %2 - %1 をダウンロード中ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸã€‚サーãƒã®è¿”ç­”: %2 + Page Down + Page Down - - Protocol "%1" is unknown - プロトコル "%1" ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“ + Caps Lock + Caps Lock - - - QNetworkReplyImpl - - - Operation canceled - æ“作ã¯ã‚­ãƒ£ãƒ³ã‚»ãƒ«ã•ã‚Œã¾ã—㟠+ Num Lock + Num Lock - - - QOCIDriver - - Unable to initialize - QOCIDriver - åˆæœŸåŒ–ã§ãã¾ã›ã‚“ + Number Lock + Number Lock - - Unable to logon - ログオンã§ãã¾ã›ã‚“ + Scroll Lock + Scroll Lock - - Unable to begin transaction - トランザクションを開始ã§ãã¾ã›ã‚“ + Insert + Insert - - Unable to commit transaction - トランザクションをコミットã§ãã¾ã›ã‚“ + Delete + Delete - - Unable to rollback transaction - トランザクションをロールãƒãƒƒã‚¯ã§ãã¾ã›ã‚“ + Escape + Escape - - - QOCIResult - - - - Unable to bind column for batch execute - ãƒãƒƒãƒå‡¦ç†ç”¨ã«ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã‚’ãƒã‚¤ãƒ³ãƒ‰ã§ãã¾ã›ã‚“ + System Request + System Request - - Unable to execute batch statement - ãƒãƒƒãƒã‚¹ãƒ†ãƒ¼ãƒˆãƒ¡ãƒ³ãƒˆã‚’実行ã§ãã¾ã›ã‚“ + Select + Select - - Unable to goto next - 次ã®ãƒ¬ã‚³ãƒ¼ãƒ‰ã¸é€²ã‚ã¾ã›ã‚“ + Yes + ã¯ã„ - - Unable to alloc statement - ステートメントã®é ˜åŸŸã‚’確ä¿ã§ãã¾ã›ã‚“ + No + ã„ã„㈠- - Unable to prepare statement - プリペアステートメントを使ãˆã¾ã›ã‚“ + Context1 + Context1 - - Unable to bind value - 値をãƒã‚¤ãƒ³ãƒ‰ã§ãã¾ã›ã‚“ + Context2 + Context2 - Unable to execute select statement - SELECT ステートメントを実行ã§ãã¾ã›ã‚“ + Context3 + Context3 - - Unable to execute statement - ステートメントを実行ã§ãã¾ã›ã‚“ + Context4 + Context4 - - - QODBCDriver - - Unable to connect - 接続ã§ãã¾ã›ã‚“ + Call + Button to start a call (note: a separate button is used to end the call) + Call - - Unable to connect - Driver doesn't support all needed functionality - 接続ã§ãã¾ã›ã‚“ - ドライãƒã¯å…¨ã¦ã®å¿…è¦ãªæ©Ÿèƒ½ã‚’サãƒãƒ¼ãƒˆã—ã¦ã„ã¾ã›ã‚“ + Hangup + Button to end a call (note: a separate button is used to start the call) + Hangup - - Unable to disable autocommit - オートコミットを無効ã«ã§ãã¾ã›ã‚“ + Toggle Call/Hangup + Button that will hang up if we're in call, or make a call if we're not. + - - Unable to commit transaction - トランザクションをコミットã§ãã¾ã›ã‚“ + Flip + Flip - - Unable to rollback transaction - トランザクションをロールãƒãƒƒã‚¯ã§ãã¾ã›ã‚“ + Voice Dial + Button to trigger voice dialling + ボイスダイアル - - Unable to enable autocommit - オートコミットを有効ã«ã§ãã¾ã›ã‚“ + Last Number Redial + Button to redial the last number called + ç›´å‰ã®ç•ªå·ã«ãƒªãƒ€ã‚¤ãƒ¤ãƒ« - - - QODBCResult - - - Unable to execute statement - ステートメントを実行ã§ãã¾ã›ã‚“ + Camera Shutter + Button to trigger the camera shutter (take a picture) + カメラシャッター - - Unable to fetch next - 次ã®ãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’フェッãƒã§ãã¾ã›ã‚“ + Camera Focus + Button to focus the camera + カメラフォーカス - - Unable to prepare statement - プリペアステートメントを使ãˆã¾ã›ã‚“ + Kanji + 漢字 - - Unable to bind variable - 変数をãƒã‚¤ãƒ³ãƒ‰ã§ãã¾ã›ã‚“ + Muhenkan + ç„¡å¤‰æ› - - - QODBCResult::reset: Unable to set 'SQL_CURSOR_STATIC' as statement attribute. Please check your ODBC driver configuration - QODBCResult::reset: ステートメントã®å±žæ€§ã¨ã—㦠'SQL_CURSOR_STATUS' を設定ã§ãã¾ã›ã‚“。ODBC ドライãƒã®æ§‹æˆã‚’ãƒã‚§ãƒƒã‚¯ã—ã¦ãã ã•ã„ + Henkan + å¤‰æ› - - - - Unable to fetch last - リストをå–å¾—ã§ãã¾ã›ã‚“ + Romaji + ローマ字 - - Unable to fetch - フェッãƒã§ãã¾ã›ã‚“ + Hiragana + ã²ã‚‰ãŒãª - - Unable to fetch first - 最åˆã®ãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’フェッãƒã§ãã¾ã›ã‚“ + Katakana + カタカナ - - Unable to fetch previous - å‰ã®ãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’フェッãƒã§ãã¾ã›ã‚“ + Hiragana Katakana + ã²ã‚‰ãŒãª/カタカナ - - - QObject - False - False + Zenkaku + 全角 - True - True + Hankaku + åŠè§’ - - Home - ホーム + Zenkaku Hankaku + 全角/åŠè§’ - - Operation not supported on %1 - %1 ã§ã¯ã“ã®æ“作ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“ + Touroku + å˜èªžç™»éŒ² - - Invalid URI: %1 - 無効ãªURIã§ã™: %1 + Massyo + å˜èªžæŠ¹æ¶ˆ - - Socket error on %1: %2 - %1 ã®ã‚½ã‚±ãƒƒãƒˆã«ãŠã„ã¦ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: %2 + Kana Lock + カナロック - - Remote host closed the connection prematurely on %1 - リモートホスト %1 ã¨ã®æŽ¥ç¶šãŒé€šä¿¡ã®çµ‚了å‰ã«åˆ‡æ–­ã•ã‚Œã¾ã—㟠+ Kana Shift + カナシフト - - - No host name given - ホストãƒãƒ¼ãƒ ãŒä¸Žãˆã‚‰ã‚Œã¦ã„ã¾ã›ã‚“ + Eisu Shift + 英数シフト - - - QPPDOptionsModel - - Name - åå‰ + Eisu toggle + 英数 - - Value - 値 + Code input + コード入力 - - - QPSQLDriver - - Unable to connect - 接続ã§ãã¾ã›ã‚“ + Multiple Candidate + 全候補 - - Could not begin transaction - トランザクションを開始ã§ãã¾ã›ã‚“ã§ã—㟠+ Previous Candidate + å‰å€™è£œ - - Could not commit transaction - トランザクションをコミットã§ãã¾ã›ã‚“ã§ã—㟠+ Hangul + ãƒãƒ³ã‚°ãƒ« - - Could not rollback transaction - トランザクションをロールãƒãƒƒã‚¯ã§ãã¾ã›ã‚“ã§ã—㟠+ Hangul Start + - - Unable to subscribe - subscribe ã§ãã¾ã›ã‚“ + Hangul End + - - Unable to unsubscribe - unsubscribe ã§ãã¾ã›ã‚“ + Hangul Hanja + - - - QPSQLResult - - Unable to create query - クエリーを作æˆã§ãã¾ã›ã‚“ + Hangul Jamo + - - Unable to prepare statement - プリペアステートメントを使ãˆã¾ã›ã‚“ + Hangul Romaja + - - - QPageSetupWidget - - Centimeters (cm) - センãƒãƒ¡ãƒ¼ãƒˆãƒ« (cm) + Hangul Jeonja + - - Millimeters (mm) - ミリメートル (mm) + Hangul Banja + - - Inches (in) - インム(in) + Hangul PreHanja + - - Points (pt) - ãƒã‚¤ãƒ³ãƒˆ (pt) + Hangul PostHanja + - - Form - 書å¼è¨­å®š + Hangul Special + - - Paper - 用紙 + Ctrl + Ctrl - - Page size: - ページサイズ: + Shift + Shift - - Width: - å¹…: + Alt + Alt - - Height: - 高ã•: + Meta + Meta - - Paper source: - 給紙装置: + + + + - - Orientation - å°åˆ·æ–¹å‘ + F%1 + F%1 + + + QSlider - - Portrait - 縦 (ãƒãƒ¼ãƒˆãƒ¬ãƒ¼ãƒˆ) + Page left + 1ページ左ã¸ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ« - - Landscape - 横 (ランドスケープ) + Page up + 1ページ戻る - - Reverse landscape - 横 å転 (リãƒãƒ¼ã‚¹ãƒ©ãƒ³ãƒ‰ã‚¹ã‚±ãƒ¼ãƒ—) + Position + ä½ç½® - - Reverse portrait - 縦 å転 (リãƒãƒ¼ã‚¹ãƒãƒ¼ãƒˆãƒ¬ãƒ¼ãƒˆ) + Page right + 1ページå³ã¸ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ« - - Margins - 余白 + Page down + 1ページ進む + + + QSocks5SocketEngine - - top margin - 上端余白 + Connection to proxy refused + プロキシーã¸ã®æŽ¥ç¶šãŒæ‹’å¦ã•ã‚Œã¾ã—㟠- - left margin - 左端余白 + Connection to proxy closed prematurely + プロキシーã®æŽ¥ç¶šãŒé€šä¿¡ã®çµ‚了å‰ã«åˆ‡æ–­ã•ã‚Œã¾ã—㟠- - right margin - å³ç«¯ä½™ç™½ + Proxy host not found + プロキシーホストãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ - - bottom margin - 下端余白 + Connection to proxy timed out + プロキシーã¨ã®æŽ¥ç¶šãŒã‚¿ã‚¤ãƒ ã‚¢ã‚¦ãƒˆã—ã¾ã—㟠- - - QPatternist::QtXmlPatterns - - An %1-attribute with value %2 has already been declared. - 属性 %1 ã®å€¤ %2 ã¯æ—¢ã«å®£è¨€ã•ã‚Œã¦ã„ã¾ã™ã€‚ + Proxy authentication failed + プロキシーã®èªè¨¼ã«å¤±æ•—ã—ã¾ã—㟠- - An %1-attribute must have a valid %2 as value, which %3 isn't. - 属性 %1 ã®å€¤ã¯ %2 ã®åž‹ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“ãŒã€ %3 ãŒæŒ‡å®šã•ã‚Œã¾ã—ãŸã€‚ + Proxy authentication failed: %1 + プロキシーã®èªè¨¼ã«å¤±æ•—ã—ã¾ã—ãŸ: %1 - - %1 is an unsupported encoding. - %1 ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ãªã„エンコーディングã§ã™ã€‚ + SOCKS version 5 protocol error + SOCKS ãƒãƒ¼ã‚¸ãƒ§ãƒ³ 5 プロトコルã®ã‚¨ãƒ©ãƒ¼ã§ã™ - - %1 contains octets which are disallowed in the requested encoding %2. - エンコーディング %2 ã§ã¯è¨±å¯ã•ã‚Œã¦ã„ãªã„オクテット㌠%1 ã«å«ã¾ã‚Œã¦ã„ã¾ã™ã€‚ + General SOCKSv5 server failure + SOCKS ãƒãƒ¼ã‚¸ãƒ§ãƒ³ 5 サーãƒã®ã‚¨ãƒ©ãƒ¼ã§ã™ - - The codepoint %1, occurring in %2 using encoding %3, is an invalid XML character. - %2 ã§ä½¿ç”¨ã•ã‚Œã¦ã„るエンコード %3 ã§ã¯ã€ã‚³ãƒ¼ãƒ‰ãƒã‚¤ãƒ³ãƒˆ %1 ã¯æœ‰åŠ¹ãª XML 表ç¾ã§ã¯ã‚ã‚Šã¾ã›ã‚“。 + Connection not allowed by SOCKSv5 server + SOCKSv5 サーãƒã‚ˆã‚ŠæŽ¥ç¶šã‚’æ‹’å¦ã•ã‚Œã¾ã—㟠- - Network timeout. - ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯æŽ¥ç¶šãŒã‚¿ã‚¤ãƒ ã‚¢ã‚¦ãƒˆã—ã¾ã—ãŸã€‚ + TTL expired + 実際ã¯ãƒ›ãƒƒãƒ—æ•°ã§ã™ + 有効期é™(TTL)ãŒãã‚Œã¾ã—㟠- - Element %1 can't be serialized because it appears outside the document element. - エレメント %1 ã¯ã‚·ãƒªã‚¢ãƒ©ã‚¤ã‚ºã§ãã¾ã›ã‚“。ã“ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã®ç¯„囲を越ãˆã‚‹ã‚¨ãƒ¬ãƒ¡ãƒ³ãƒˆã‚’å«ã‚“ã§ã„ã¾ã™ã€‚ + SOCKSv5 command not supported + ã“ã® SOCKSv5 コマンドã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“ - - Attribute %1 can't be serialized because it appears at the top level. - 属性 %1 ã¯ã‚·ãƒªã‚¢ãƒ©ã‚¤ã‚ºã§ãã¾ã›ã‚“。トップレベルã«ç¾ã‚Œã¦ã„ã‚‹ãŸã‚ã§ã™ã€‚ + Address type not supported + 指定ã•ã‚ŒãŸã‚¢ãƒ‰ãƒ¬ã‚¹ã‚¿ã‚¤ãƒ—ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“ - - Year %1 is invalid because it begins with %2. - %1 å¹´ã¯ã‚€ã“ã†ã§ã™ã€‚%2 ã§å§‹ã¾ã£ã¦ã„ã¾ã™ã€‚ + Unknown SOCKSv5 proxy error code 0x%1 + 未知㮠SOCKSv5 プロキシーエラーã§ã™: 0x%1 - - Day %1 is outside the range %2..%3. - %1 æ—¥ã¯ã€æœ‰åŠ¹ãªç¯„囲 %2..%3 を逸脱ã—ã¦ã„ã¾ã™ã€‚ + Network operation timed out + ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯æ“作ãŒã‚¿ã‚¤ãƒ ã‚¢ã‚¦ãƒˆã—ã¾ã—㟠+ + + QSoftKeyManager - - Month %1 is outside the range %2..%3. - %1 月ã¯ã€æœ‰åŠ¹ãªç¯„囲 %2..%3 を逸脱ã—ã¦ã„ã¾ã™ã€‚ + Ok + OK - - Overflow: Can't represent date %1. - オーãƒãƒ¼ãƒ•ãƒ­ãƒ¼: 日付 %1 ã‚’å†ç¾ã§ãã¾ã›ã‚“。 + Select + セレクト - - Day %1 is invalid for month %2. - %2 月ã«ã¯ã€%1 æ—¥ã¯å­˜åœ¨ã—ã¾ã›ã‚“。 + Done + 終了 - - Time 24:%1:%2.%3 is invalid. Hour is 24, but minutes, seconds, and milliseconds are not all 0; - 24:%1:%2.%3 ã¯ç„¡åŠ¹ã§ã™ã€‚24時0分0秒ã®ã¿ä½¿ç”¨ã§ãã¾ã™ + Options + オプション - - Time %1:%2:%3.%4 is invalid. - 時刻 %1時%2分%3.%4秒ã¯ç„¡åŠ¹ã§ã™ã€‚ + Cancel + キャンセル - - Overflow: Date can't be represented. - オーãƒãƒ¼ãƒ•ãƒ­ãƒ¼: 日付をå†ç¾ã§ãã¾ã›ã‚“。 + Exit + 終了 + + + QSpinBox - - - At least one component must be present. - å¹´ã€æœˆã€æ—¥ã®ã†ã¡ã„ãšã‚Œã‹ã‚’指定ã—ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 + More + 増や㙠- - At least one time component must appear after the %1-delimiter. - %1 ã®å¾Œã«ã¯ã€æ™‚刻を指定ã—ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 + Less + 減ら㙠+ + + QSql - - No operand in an integer division, %1, can be %2. - ゼロ除算? NaN? - æ•´æ•°ã®é™¤ç®—ã®ãŸã‚ã®ã‚ªãƒšãƒ©ãƒ³ãƒ‰ãŒä¸è¶³ã—ã¦ã„ã¾ã™ã€‚%1 㯠%2 ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 + Delete + 削除 - - The first operand in an integer division, %1, cannot be infinity (%2). - æ•´æ•°ã®é™¤ç®—ã«ãŠã‘る最åˆã®ã‚ªãƒšãƒ©ãƒ³ãƒ‰ %1 ã‚’èªè­˜ã§ãã¾ã›ã‚“ (%2)。 + Delete this record? + ã“ã®ãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’削除ã—ã¾ã™ã‹? - - The second operand in a division, %1, cannot be zero (%2). - æ•´æ•°ã®é™¤ç®—ã«ãŠã‘る二ã¤ç›®ã®ã‚ªãƒšãƒ©ãƒ³ãƒ‰ %1 ã¯ã‚¼ãƒ­ã§ã‚ã£ã¦ã¯ã„ã‘ã¾ã‚“(%2)。 + Yes + ã¯ã„ - - %1 is not a valid value of type %2. - %1 ã¯ã€%2 ã®åž‹ã«å¯¾ã—ã¦æœ‰åŠ¹ãªå€¤ã§ã¯ã‚ã‚Šã¾ã›ã‚“。 + No + ã„ã„㈠- - When casting to %1 from %2, the source value cannot be %3. - %2 ã‹ã‚‰ %1 ã¸ã®åž‹å¤‰æ›ã«éš›ã—ã¦ã¯ã€å€¤ %3 ã¯æœ‰åŠ¹ãªå€¤ã§ã¯ã‚ã‚Šã¾ã›ã‚“。 + Insert + 挿入 - - Integer division (%1) by zero (%2) is undefined. - æ•´æ•°ã®é™¤ç®—ã«ãŠã„㦠%1 をゼロ (%2) ã§å‰²ã£ãŸçµæžœã¯å®šç¾©ã•ã‚Œã¦ã„ã¾ã›ã‚“。 + Update + アップデート - - Division (%1) by zero (%2) is undefined. - 除算ã«ãŠã„㦠%1 をゼロ (%2) ã§å‰²ã£ãŸçµæžœã¯å®šç¾©ã•ã‚Œã¦ã„ã¾ã›ã‚“。 + Save edits? + 編集内容をä¿å­˜ã—ã¾ã™ã‹? - - Modulus division (%1) by zero (%2) is undefined. - 剰余を求ã‚ã‚‹ã«éš›ã—ã€%1 をゼロ (%2) ã§é™¤ã—ãŸçµæžœã¯å®šç¾©ã•ã‚Œã¦ã„ã¾ã›ã‚“。 + Cancel + キャンセル - - - Dividing a value of type %1 by %2 (not-a-number) is not allowed. - åž‹ %1 ã‚’éžæ•° %2 (NaN) ã§é™¤ã™ã“ã¨ã¯ã§ãã¾ã›ã‚“。 + Confirm + ç¢ºèª - - Dividing a value of type %1 by %2 or %3 (plus or minus zero) is not allowed. - åž‹ %1 ã‚’%2 ã¾ãŸã¯ %3 (æ­£ã¾ãŸã¯è² ã®ã‚¼ãƒ­) ã§é™¤ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。 + Cancel your edits? + 編集をキャンセルã—ã¾ã™ã‹? + + + QSslSocket - - Multiplication of a value of type %1 by %2 or %3 (plus or minus infinity) is not allowed. - åž‹ %1 ã‚’ %2 ã¾ãŸã¯ %3 (æ­£ã¾ãŸã¯è² ã®ã‚¼ãƒ­)ã§ä¹—ãšã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。 + Error creating SSL context (%1) + SSL content ã®ä½œæˆã«å¤±æ•—ã—ã¾ã—㟠(%1) - - A value of type %1 cannot have an Effective Boolean Value. - åž‹ %1 ã¯æœ‰åŠ¹ãªè«–ç†åž‹(bool)ã§ã¯ã‚ã‚Šã¾ã›ã‚“。 + Invalid or empty cipher list (%1) + æš—å·æ–¹å¼ãƒªã‚¹ãƒˆãŒä¸æ­£ã¾ãŸã¯ç©ºã§ã™ (%1) - - Effective Boolean Value cannot be calculated for a sequence containing two or more atomic values. - ?? - è«–ç†åž‹ã¯ã€è«–ç†åž‹ä»¥å¤–ã®è¤‡æ•°ã®å€¤ã‹ã‚‰ãªã‚‹è¨ˆç®—ã«ã‚ˆã£ã¦æ±‚ã‚ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。 + Cannot provide a certificate with no key, %1 + éµãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„ãŸã‚ã€è¨¼æ˜Žæ›¸ã‚’扱ãˆã¾ã›ã‚“。 %1 - - Value %1 of type %2 exceeds maximum (%3). - åž‹ %2 ã®å€¤ %1 ã¯ã€ä¸Šé™ (%3) を越ãˆã¦ã„ã¾ã™ã€‚ + Error loading local certificate, %1 + ローカルã®è¨¼æ˜Žæ›¸ã‚’ロードã§ãã¾ã›ã‚“。 %1 - - Value %1 of type %2 is below minimum (%3). - åž‹ %2 ã®å€¤ %1 ã¯ã€ä¸‹é™ (%3) を越ãˆã¦ã„ã¾ã™ã€‚ + Error loading private key, %1 + プライベートキーをロードã§ãã¾ã›ã‚“。 %1 - - A value of type %1 must contain an even number of digits. The value %2 does not. - åž‹ %1 ã®å€¤ã¯å¶æ•°å€‹ã®å進数文字を必è¦ã¨ã—ã¾ã™ã€‚ã—ã‹ã—ã€%2 ã¯ãã†ã§ã¯ã‚ã‚Šã¾ã›ã‚“。 + Private key does not certify public key, %1 + 秘密éµãŒå…¬é–‹éµ %1 を証明ã—ã¦ã„ã¾ã›ã‚“ - - %1 is not valid as a value of type %2. - åž‹ %2 ã«å¯¾ã—ã¦ã€å€¤ %1 ã¯æœ‰åŠ¹ã§ã¯ã‚ã‚Šã¾ã›ã‚“。 + Error creating SSL session, %1 + SSL セッションを作æˆã§ãã¾ã›ã‚“。 %1 - - Ambiguous rule match. - 曖昧ãªãƒ«ãƒ¼ãƒ«ã«ãƒžãƒƒãƒã—ã¾ã—ãŸã€‚ + Error creating SSL session: %1 + SSL セッションを作æˆã§ãã¾ã›ã‚“: %1 - - Operator %1 cannot be used on type %2. - åž‹ %2 ã«å¯¾ã—ã¦ã€ã‚ªãƒšãƒ¬ãƒ¼ã‚¿ %1 ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。 + Unable to write data: %1 + 書ãè¾¼ã¿ã§ãã¾ã›ã‚“: %1 - - Operator %1 cannot be used on atomic values of type %2 and %3. - アトミックãªåž‹ %2 㨠%3 ã«å¯¾ã—ã¦ã€ã‚ªãƒšãƒ¬ãƒ¼ã‚¿ %1 ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。 + Unable to decrypt data: %1 + データを解読ã§ãã¾ã›ã‚“: %1 - - The namespace URI in the name for a computed attribute cannot be %1. - computed attrib. ã£ã¦ãªã‚“ã¦ã‚„ãã™ã®ãŒé©å½“ã‹ãªã€‚ - çµåˆã•ã‚ŒãŸå±žæ€§ã«å¯¾ã™ã‚‹åå‰ç©ºé–“ã®URIã¨ã—ã¦ã€%1 を使用ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。 + Error while reading: %1 + 読ã¿è¾¼ã¿æ™‚ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: %1 - - The name for a computed attribute cannot have the namespace URI %1 with the local name %2. - çµåˆã•ã‚ŒãŸå±žæ€§ã®åå‰ç©ºé–“URI %1 ã¯ã€ãƒ­ãƒ¼ã‚«ãƒ«ãªåå‰ã§ã‚ã‚‹ %2 ã¨ä½µç”¨ã§ãã¾ã›ã‚“。 + Error during SSL handshake: %1 + SSL ãƒãƒ³ãƒ‰ã‚·ã‚§ãƒ¼ã‚¯æ™‚ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: %1 - - Type error in cast, expected %1, received %2. - 型変æ›æ™‚ã®ã‚¨ãƒ©ãƒ¼ã§ã™ã€‚望んã§ã„㟠%1 ã§ã¯ãªãã€%2 ã«ãªã‚Šã¾ã—ãŸã€‚ + No error + エラーã¯ã‚ã‚Šã¾ã›ã‚“ - - When casting to %1 or types derived from it, the source value must be of the same type, or it must be a string literal. Type %2 is not allowed. - %1 ã¾ãŸã¯ãれを継承ã—ã¦ã„ã‚‹åž‹ã¸ã®åž‹å¤‰æ›ã«ãŠã„ã¦ã¯ã€å…ƒã®å€¤ã®åž‹ã¯åŒã˜åž‹ã‹ã€ãƒªãƒ†ãƒ©ãƒ«ãªæ–‡å­—列ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚åž‹ %2 ã¯è¨±å¯ã•ã‚Œã¦ã„ã¾ã›ã‚“。 + The issuer certificate could not be found + 発行者証明書ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ - - No casting is possible with %1 as the target type. - 目標ã¨ã™ã‚‹åž‹ã« %1 を型変æ›ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。 + The certificate signature could not be decrypted + 証明書ã®ç½²åãŒå¾©å·ã§ãã¾ã›ã‚“ - - It is not possible to cast from %1 to %2. - åž‹ %1 ã‚’åž‹ %2 ã«åž‹å¤‰æ›ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。 + The public key in the certificate could not be read + 証明書ã®å…¬é–‹éµãŒèª­ã‚ã¾ã›ã‚“ - - Casting to %1 is not possible because it is an abstract type, and can therefore never be instantiated. - åž‹ %1 ã¸ã®åž‹å¤‰æ›ã¯ã§ãã¾ã›ã‚“。抽象型ã§ã‚ã‚Šã€ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹åŒ–ã™ã‚‹ã“ã¨ãŒã§ããªã„ã‹ã‚‰ã§ã™ã€‚ + The signature of the certificate is invalid + 証明書ã®ç½²åãŒä¸æ­£ã§ã™ - - It's not possible to cast the value %1 of type %2 to %3 - åž‹ %2 ã®å€¤ %1 ã‚’ã€åž‹ %3 ã«åž‹å¤‰æ›ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“ + The certificate is not yet valid + 証明書ãŒæœ‰åŠ¹ã§ã¯ã‚ã‚Šã¾ã›ã‚“ - - Failure when casting from %1 to %2: %3 - %1 ã‚’ %2 ã«åž‹å¤‰æ›ã™ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“: %3 + The certificate has expired + 証明書ã®æœ‰åŠ¹æœŸé™ãŒåˆ‡ã‚Œã¦ã„ã¾ã™ - - A comment cannot contain %1 - コメント㌠%1 ã‚’å«ã‚€ã“ã¨ã¯ã§ãã¾ã›ã‚“ + The certificate's notBefore field contains an invalid time + 証明書㮠notBefore フィールドã«ä¸æ­£ãªæ™‚刻ãŒå«ã¾ã‚Œã¦ã„ã¾ã™ - - A comment cannot end with a %1. - コメント㯠%1 ã§çµ‚了ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。 + The certificate's notAfter field contains an invalid time + 証明書㮠notAfter フィールドã«ä¸æ­£ãªæ™‚刻ãŒå«ã¾ã‚Œã¦ã„ã¾ã™ - - No comparisons can be done involving the type %1. - åž‹ %1 ã«å¯¾ã—ã¦æ¯”較を行ã†ã“ã¨ã¯ã§ãã¾ã›ã‚“。 + The certificate is self-signed, and untrusted + ã“ã®è¨¼æ˜Žæ›¸ã¯è‡ªå·±è¨¼æ˜Žæ›¸ã§ã‚ã‚Šã€ä¿¡é ¼ã•ã‚Œã¦ã„ã¾ã›ã‚“ - - Operator %1 is not available between atomic values of type %2 and %3. - オペレータ %1 ã¯ã€ã‚¢ãƒˆãƒŸãƒƒã‚¯ãªåž‹ã§ã‚ã‚‹ %2 㨠%3 ã«ã¯é©ç”¨ã§ãã¾ã›ã‚“。 + The root certificate of the certificate chain is self-signed, and untrusted + 証明書ãƒã‚§ã‚¤ãƒ³ã®ãƒ«ãƒ¼ãƒˆè¨¼æ˜Žæ›¸ãŒè‡ªå·±è¨¼æ˜Žæ›¸ã§ã‚ã‚Šã€ä¿¡é ¼ã•ã‚Œã¦ã„ã¾ã›ã‚“ - - In a namespace constructor, the value for a namespace cannot be an empty string. - åå‰ç©ºé–“ã®ã‚¹ãƒ³ãƒˆãƒ©ã‚¯ãƒˆã«ãŠã„ã¦ã€ç©ºç™½ã®æ–‡å­—列をåå‰ç©ºé–“ã®å€¤ã¨ã—ã¦ä½¿ç”¨ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。 + The issuer certificate of a locally looked up certificate could not be found + ローカルã§ç™ºè¦‹ã—ãŸè¨¼æ˜Žæ›¸ã®ç™ºè¡Œè€…証明書ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ - - The prefix must be a valid %1, which %2 is not. - プレフィックス㯠%1 ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。%2 ã¯ç„¡åŠ¹ã§ã™ã€‚ + No certificates could be verified + ã©ã®è¨¼æ˜Žæ›¸ã‚‚検証ã§ãã¾ã›ã‚“ã§ã—㟠- - The prefix %1 cannot be bound. - プレフィックス %1 ã¯ãƒã‚¦ãƒ³ãƒ‰ã§ãã¾ã›ã‚“。 + One of the CA certificates is invalid + CA 証明書ã«ä¸æ­£ãªè¨¼æ˜Žæ›¸ãŒã‚ã‚Šã¾ã™ - - Only the prefix %1 can be bound to %2 and vice versa. - プレフィックス %1 ã¯ã€%2 ã«ã®ã¿ãƒã‚¦ãƒ³ãƒ‰ã§ãã¾ã™ã€‚逆もåŒã˜ã§ã™ã€‚ + The basicConstraints path length parameter has been exceeded + 基本制約(basicConstraints)ã§åˆ¶é™ã•ã‚ŒãŸãƒ‘スã®é•·ã•ã‚’超ãˆã¦ã„ã¾ã™ - - An attribute node cannot be a child of a document node. Therefore, the attribute %1 is out of place. - ドキュメントノードã®å­ã¨ã—ã¦å±žæ€§ãƒŽãƒ¼ãƒ‰ã‚’指定ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。属性 %1 ã¯èª¤ã£ãŸå ´æ‰€ã«ã‚ã‚Šã¾ã™ã€‚ + The supplied certificate is unsuitable for this purpose + 与ãˆã‚‰ã‚ŒãŸè¨¼æ˜Žæ›¸ã¯ã“ã®ç›®çš„ã«ã¯åˆ©ç”¨ã§ãã¾ã›ã‚“ - - Circularity detected - 循環を検出ã—ã¾ã—㟠+ The root CA certificate is not trusted for this purpose + ルートCA証明書ã¯ã“ã®ç›®çš„ã«ã¯ä¿¡é ¼ã•ã‚Œã¦ã„ã¾ã›ã‚“ - - A library module cannot be evaluated directly. It must be imported from a main module. - ライブラリモジュールを直接評価ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。メインモジュールã‹ã‚‰ã‚¤ãƒ³ãƒãƒ¼ãƒˆã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ + The root CA certificate is marked to reject the specified purpose + ルートCA証明書を指定ã•ã‚ŒãŸç›®çš„ã«ä½¿ç”¨ã™ã‚‹ã“ã¨ã¯æ‹’å¦ã•ã‚Œã¦ã„ã¾ã™ - - No template by name %1 exists. - テンプレートå %1 ã¯å­˜åœ¨ã—ã¾ã›ã‚“。 + The current candidate issuer certificate was rejected because its subject name did not match the issuer name of the current certificate + 更新用ã«æº–å‚™ã•ã‚ŒãŸç™ºè¡Œè€…証明書ã¯ã€ãã®æ‰€æœ‰è€…åãŒç¾åœ¨ã®è¨¼æ˜Žæ›¸ã®ç™ºè¡Œè€…åã¨ç•°ãªã‚‹ãŸã‚æ‹’å¦ã•ã‚Œã¾ã—㟠- - A value of type %1 cannot be a predicate. A predicate must have either a numeric type or an Effective Boolean Value type. - åž‹ %1 ã¯è¿°éƒ¨ã¨ã—ã¦ä½¿ç”¨ã§ãã¾ã›ã‚“。数値型ã‹ã€è«–ç†åž‹ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ + The current candidate issuer certificate was rejected because its issuer name and serial number was present and did not match the authority key identifier of the current certificate + 更新用ã«æº–å‚™ã•ã‚ŒãŸç™ºè¡Œè€…証明書ã¯ã€ãã®ç™ºè¡Œè€…åã¨ã‚·ãƒªã‚¢ãƒ«ç•ªå·ãŒç¾åœ¨ã®è¨¼æ˜Žæ›¸ã®æ©Ÿé–¢éµè­˜åˆ¥å­ã¨ç•°ãªã‚‹ãŸã‚æ‹’å¦ã•ã‚Œã¾ã—㟠- - A positional predicate must evaluate to a single numeric value. - positional? - 述部ã¯è©•ä¾¡ã•ã‚ŒãŸã¨ãã€å˜ä¸€ã®æ•°å€¤ã«ãªã‚‹ã‚ˆã†ã«ã—ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 + The peer did not present any certificate + 通信相手ã¯è¨¼æ˜Žæ›¸ã‚’æ示ã—ã¾ã›ã‚“ã§ã—㟠- - The target name in a processing instruction cannot be %1 in any combination of upper and lower case. Therefore, is %2 invalid. - ターゲットã¨ã—ã¦ã„ã‚‹åå‰ã¯ã€%1 ã§ã‚ã£ã¦ã¯ãªã‚Šã¾ã›ã‚“。%2 ã¯ç„¡åŠ¹ã§ã™ã€‚ + The host name did not match any of the valid hosts for this certificate + ホストåãŒã“ã®è¨¼æ˜Žæ›¸ã®ã©ã®æœ‰åŠ¹ãªãƒ›ã‚¹ãƒˆã¨ã‚‚一致ã—ã¾ã›ã‚“ã§ã—㟠- - %1 is not a valid target name in a processing instruction. It must be a %2 value, e.g. %3. - %1 ã¯ã‚¿ãƒ¼ã‚²ãƒƒãƒˆã¨ã—ã¦ç„¡åŠ¹ã§ã™ã€‚%2 ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚例ãˆã° "%3" ã®ã‚ˆã†ã«ã§ã™ã€‚ + Unknown error + 未知ã®ã‚¨ãƒ©ãƒ¼ + + + QStateMachine - - The last step in a path must contain either nodes or atomic values. It cannot be a mixture between the two. - ãƒã‚¹ã®æœ«ç«¯ã§ã‚るリーフã¯ã€å˜ä¸€ã®ãƒŽãƒ¼ãƒ‰ã‹ã‚¢ãƒˆãƒŸãƒƒã‚¯ãªå€¤ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚複数ã®åž‹ã®çµ„ã¿åˆã‚ã›ã§ã‚ã£ã¦ã¯ã„ã‘ã¾ã›ã‚“。 + Missing initial state in compound state '%1' + 複åˆã‚¹ãƒ†ãƒ¼ãƒˆ '%1' ã«åˆæœŸã‚¹ãƒ†ãƒ¼ãƒˆãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ - - The data of a processing instruction cannot contain the string %1 - 処ç†ä¸­ã®ãƒ‡ãƒ¼ã‚¿ã¯ã€ä»¥ä¸‹ã®æ–‡å­—列をå«ã‚“ã§ã„ã¦ã¯ãªã‚Šã¾ã›ã‚“: %1 + Missing default state in history state '%1' + ヒストリーステート '%1' ã«ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã‚¹ãƒ†ãƒ¼ãƒˆãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ - - No namespace binding exists for the prefix %1 - プレフィックス %1 ã«ãƒã‚¤ãƒ³ãƒ‰ã•ã‚ŒãŸãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ãŒã‚ã‚Šã¾ã›ã‚“ + No common ancestor for targets and source of transition from state '%1' + ステート '%1' ã‹ã‚‰ã®é·ç§»ã®ã‚½ãƒ¼ã‚¹ãŠã‚ˆã³ã‚¿ãƒ¼ã‚²ãƒƒãƒˆã«å…±é€šã—ãŸç¥–å…ˆãŒã‚ã‚Šã¾ã›ã‚“ - - No namespace binding exists for the prefix %1 in %2 - %2 ã«ãŠã‘るプレフィックス %1 ã«ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã•ã‚ŒãŸãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ãŒå­˜åœ¨ã—ã¾ã›ã‚“ + Unknown error + 未知ã®ã‚¨ãƒ©ãƒ¼ + + + QSystemSemaphore - - - %1 is an invalid %2 - åž‹ %2 ã«å¯¾ã—ã€å€¤ %1 ã¯ç„¡åŠ¹ã§ã™ + %1: out of resources + %1: リソースä¸è¶³ã§ã™ - - The parameter %1 is passed, but no corresponding %2 exists. - パラメータ %1 を処ç†ã—ã¾ã—ãŸã€‚ã—ã‹ã—ã€å¯¾å¿œã™ã‚‹ %2 ãŒå­˜åœ¨ã—ã¾ã›ã‚“。 + %1: permission denied + %1: 許å¯ã•ã‚Œã¦ã„ã¾ã›ã‚“ - - The parameter %1 is required, but no corresponding %2 is supplied. - パメータ %1 ãŒå¿…è¦ã§ã™ã€‚ã—ã‹ã—ã€å¯¾å¿œã™ã‚‹ %2 ãŒã‚ã‚Šã¾ã›ã‚“。 - - - - %1 takes at most %n argument(s). %2 is therefore invalid. - - %1 ã¯ã€æœ€å¤§ã§ %n 個ã®å¼•æ•°ã‚’ã¨ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚%2 ã¯ç„¡åŠ¹ã§ã™ã€‚ - + %1: already exists + %1: æ—¢ã«å­˜åœ¨ã—ã¾ã™ - - - %1 requires at least %n argument(s). %2 is therefore invalid. - - %1 ã¯ã€å°‘ãã¨ã‚‚ %n 個ã®å¼•æ•°ã‚’å¿…è¦ã¨ã—ã¾ã™ã€‚%2 ã¯ç„¡åŠ¹ã§ã™ã€‚ - + + %1: does not exist + %1: 存在ã—ã¾ã›ã‚“ - - The first argument to %1 cannot be of type %2. It must be a numeric type, xs:yearMonthDuration or xs:dayTimeDuration. - %1 ã¸ã®æœ€åˆã®å¼•æ•°ã¯ã€åž‹ %2 ã§ã‚ã£ã¦ã¯ãªã‚Šã¾ã›ã‚“。数値型ã€xs:yerMonthDurationã€xs:dayTimeDurationã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ + %1: unknown error %2 + %1: 未知ã®ã‚¨ãƒ©ãƒ¼ã§ã™ %2 + + + QTDSDriver - - The first argument to %1 cannot be of type %2. It must be of type %3, %4, or %5. - %1 ã¸ã®æœ€åˆã®å¼•æ•°ã¯ã€åž‹ %2 ã§ã‚ã£ã¦ã¯ãªã‚Šã¾ã›ã‚“。%3, %4, %5 ã®ã„ãšã‚Œã‹ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ + Unable to open connection + 接続をオープンã§ãã¾ã›ã‚“ - - The second argument to %1 cannot be of type %2. It must be of type %3, %4, or %5. - %1 ã¸ã®äºŒã¤ç›®ã®å¼•æ•°ã¯ã€åž‹ %2 ã§ã‚ã£ã¦ã¯ãªã‚Šã¾ã›ã‚“。%3, %4, %5 ã®ã„ãšã‚Œã‹ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ + Unable to use database + データベースを使用ã§ãã¾ã›ã‚“ + + + QTabBar - - %1 is not a valid XML 1.0 character. - %1 㯠XML 1.0 ã«ãŠã„ã¦æœ‰åŠ¹ãªæ–‡å­—ã§ã¯ã‚ã‚Šã¾ã›ã‚“。 + Scroll Left + å·¦ã¸ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ« - - The first argument to %1 cannot be of type %2. - %1 ã¸ã®æœ€åˆã®å¼•æ•°ã¯ã€åž‹ %2 ã§ã‚ã£ã¦ã¯ãªã‚Šã¾ã›ã‚“。 + Scroll Right + å³ã¸ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ« + + + QTcpServer - - The root node of the second argument to function %1 must be a document node. %2 is not a document node. - %1 ã¸ã®äºŒã¤ç›®ã®å¼•æ•°ã®ãƒ«ãƒ¼ãƒˆãƒŽãƒ¼ãƒ‰ã¯ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆãƒŽãƒ¼ãƒ‰ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。ã—ã‹ã—ã€%2 ã¯ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆãƒŽãƒ¼ãƒ‰ã§ã¯ã‚ã‚Šã¾ã›ã‚“。 + Operation on socket is not supported + ã“ã®ã‚½ã‚±ãƒƒãƒˆã¸ã®æ“作ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“ + + + QTextControl - - If both values have zone offsets, they must have the same zone offset. %1 and %2 are not the same. - ゾーンオフセットã£ã¦ãªã«? xmlã«ãã‚“ãªã®ã‚ã£ãŸã£ã‘? - ã‚‚ã—二ã¤ã®å€¤ãŒã‚¾ãƒ¼ãƒ³ã‚ªãƒ•ã‚»ãƒƒãƒˆã‚’ã‚‚ã¤å ´åˆã€ä¸¡è€…ã¯åŒã˜ã‚¾ãƒ¼ãƒ³ã‚ªãƒ•ã‚»ãƒƒãƒˆã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。%1 㨠%2 ã¯åŒä¸€ã§ã¯ã‚ã‚Šã¾ã›ã‚“。 + &Undo + å…ƒã«æˆ»ã™(&U) - - %1 was called. - %1 ãŒå‘¼ã°ã‚Œã¾ã—ãŸã€‚ + &Redo + ã‚„ã‚Šç›´ã™(&R) - - %1 must be followed by %2 or %3, not at the end of the replacement string. - %1 ã®å¾Œã«ã¯ã€%2 ã‹ %3 ãŒç¶šã‹ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 + Cu&t + 切りå–ã‚Š(&T) - - In the replacement string, %1 must be followed by at least one digit when not escaped. - ç½®æ›æ“作ã«ãŠã„ã¦ã€%1 ã«ã¯å°‘ãã¨ã‚‚一文字以上ã®æ•°å€¤ãŒç¶šãå¿…è¦ãŒã‚ã‚Šã¾ã™(エスケープã•ã‚Œã¦ã„ã‚‹å ´åˆã‚’除ã)。 + &Copy + コピー(&C) - - In the replacement string, %1 can only be used to escape itself or %2, not %3 - ç½®æ›æ“作ã«ãŠã„ã¦ã€%1 ã¯ãれ自身ã¾ãŸã¯ %2 をエスケープã™ã‚‹ç‚ºã«ã®ã¿ä½¿ç”¨ã§ãã¾ã™ã€‚%3 ã«å¯¾ã—ã¦ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“ + Copy &Link Location + リンクã®å ´æ‰€ã‚’コピー(&L) - - %1 matches newline characters - %1 ã¯æ”¹è¡Œæ–‡å­—(列)ã«ãƒžãƒƒãƒã—ã¾ã—㟠+ &Paste + 貼り付ã‘(&P) - - %1 and %2 match the start and end of a line. - %1 㨠%2 ã¯ã€è¡Œã®å…ˆé ­ã¨æœ«å°¾ã«ãƒžãƒƒãƒã—ã¾ã—ãŸã€‚ + Delete + 削除 - - Matches are case insensitive - マッãƒã¯å¤§æ–‡å­—å°æ–‡å­—を区別ã—ã¾ã›ã‚“ + Select All + ã™ã¹ã¦ã‚’é¸æŠž + + + QToolButton - - Whitespace characters are removed, except when they appear in character classes - CDATA? - 空白文字ã¯å‰Šé™¤ã•ã‚Œã¾ã—ãŸã€‚ãŸã ã—ã€ã‚­ãƒ£ãƒ©ã‚¯ã‚¿ãƒ¼ã‚¯ãƒ©ã‚¹ã«å±žã™ã‚‹ã‚‚ã®ã¯é™¤ãã¾ã™ + Press + 押㙠- - %1 is an invalid regular expression pattern: %2 - %1 ã¯æœ‰åŠ¹ãªæ­£è¦è¡¨ç¾ã§ã¯ã‚ã‚Šã¾ã›ã‚“。: %2 + Open + オープン + + + QUdpSocket - - %1 is an invalid flag for regular expressions. Valid flags are: - %1 ã¯æ­£è¦è¡¨ç¾ã«ãŠã„ã¦ç„¡åŠ¹ãªãƒ•ãƒ©ã‚°ã§ã™ã€‚使用å¯èƒ½ãªãƒ•ãƒ©ã‚°ã¯æ¬¡ã®é€šã‚Šã§ã™: + This platform does not support IPv6 + ã“ã®ãƒ—ラットフォーム㯠IPv6 をサãƒãƒ¼ãƒˆã—ã¦ã„ã¾ã›ã‚“ + + + QUndoGroup - - If the first argument is the empty sequence or a zero-length string (no namespace), a prefix cannot be specified. Prefix %1 was specified. - ã‚‚ã—ã€æœ€åˆã®å¼•æ•°ãŒç©ºç™½ã‹ã‚‰ãªã‚‹æ–‡å­—列ã‹ã€é•·ã•ãŒ0 (åå‰ç©ºé–“ã‚’ã¨ã‚‚ãªã‚ãªã„)ã§ã‚ã‚‹å ´åˆã€ãƒ—レフィックスを指定ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。ã—ã‹ã—ã€ãƒ—レフィックスã¨ã—㦠%1 ãŒæŒ‡å®šã•ã‚Œã¦ã„ã¾ã™ã€‚ + Undo + å…ƒã«æˆ»ã™ - - It will not be possible to retrieve %1. - %1 ã‚’å–å¾—ã™ã‚‹ã“ã¨ã¯ã§ããªã„ã‹ã‚‚ã—ã‚Œã¾ã›ã‚“。 + Redo + ã‚„ã‚Šç›´ã™ + + + QUndoModel - - The default collection is undefined - デフォルトã®ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ãŒå®šç¾©ã•ã‚Œã¦ã„ã¾ã›ã‚“ + <empty> + <空> + + + QUndoStack - - %1 cannot be retrieved - %1 ã‚’å–å¾—ã§ãã¾ã›ã‚“ + Undo + å…ƒã«æˆ»ã™ - - The normalization form %1 is unsupported. The supported forms are %2, %3, %4, and %5, and none, i.e. the empty string (no normalization). - ã¤ã¾ã‚Šã€ç©ºç™½ã®æ–‡å­—ã§ã™ã€ã¯ã©ã†ã§ã‚‚ã„ã„よã­ã€‚ - æ­£è¦åŒ–ã•ã‚ŒãŸè¡¨ç¾ %1 ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。サãƒãƒ¼ãƒˆã•ã‚Œã¦ã„る表ç¾ã¯ã€%2, %3, %4, %5 ã®ã¿ã§ã™ã€‚ + Redo + ã‚„ã‚Šç›´ã™ + + + QUnicodeControlCharacterMenu - - A zone offset must be in the range %1..%2 inclusive. %3 is out of range. - ゾーンオフセットã¯ã€%1 ã‹ã‚‰ %2 ã®ç¯„囲ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™(境界をå«ã‚€)。%3 ã¯ç¯„囲外ã§ã™ã€‚ + LRM Left-to-right mark + LRM (左横書ã指定) - - %1 is not a whole number of minutes. - %1 ã¯ã€åˆ†ã‚’ç¾ã™å€¤ã§ã¯ã‚ã‚Šã¾ã›ã‚“。 + RLM Right-to-left mark + RLM (å³æ¨ªæ›¸ã指定) - - The URI cannot have a fragment - ã“ã® URI ã¯ãƒ•ãƒ©ã‚°ãƒ¡ãƒ³ãƒˆã‚’ã‚‚ã¤ã“ã¨ã¯ã§ãã¾ã›ã‚“ + ZWJ Zero width joiner + ZWJ (å¹…ã®ãªã„接続文字) - - Required cardinality is %1; got cardinality %2. - カーディナリティ %1 ãŒå¿…è¦ã§ã™ã€‚%2 ã§ã¯ã‚ã‚Šã¾ã›ã‚“。 + ZWNJ Zero width non-joiner + ZWNJ (å¹…ã®ãªã„éžæŽ¥ç¶šæ–‡å­—) - - The item %1 did not match the required type %2. - アイテム %1 ã¯ã€è¦æ±‚ã•ã‚ŒãŸåž‹ %2 ã«ãƒžãƒƒãƒã—ã¾ã›ã‚“。 + ZWSP Zero width space + ZWSP (å¹…ã®ç„¡ã„空白) - - Attribute %1 cannot appear on the element %2. Only the standard attributes can appear. - エレメント %2 ã«å±žæ€§ %1 を指定ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。標準ã®å±žæ€§ã®ã¿ãŒè¨±å¯ã•ã‚Œã¦ã„ã¾ã™ã€‚ + LRE Start of left-to-right embedding + LRE (左横書ã開始指定) - - Attribute %1 cannot appear on the element %2. Only %3 is allowed, and the standard attributes. - エレメント %2 ã«å±žæ€§ %1 を指定ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。%3 ã¨æ¨™æº–ã®å±žæ€§ã®ã¿ãŒè¨±å¯ã•ã‚Œã¦ã„ã¾ã™ã€‚ + RLE Start of right-to-left embedding + RLE (å³æ¨ªæ›¸ã開始指定) - - Attribute %1 cannot appear on the element %2. Allowed is %3, %4, and the standard attributes. - エレメント %2 ã«å±žæ€§ %1 を指定ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。%3, %4 ã¨æ¨™æº–ã®å±žæ€§ã®ã¿ãŒè¨±å¯ã•ã‚Œã¦ã„ã¾ã™ã€‚ + LRO Start of left-to-right override + LRO (左横書ã上書ã開始指定) - - Attribute %1 cannot appear on the element %2. Allowed is %3, and the standard attributes. - エレメント %2 ã« %1 ã¯æŒ‡å®šã§ãã¾ã›ã‚“。%3 ã¨æ¨™æº–ã®å±žæ€§ã®ã¿ãŒæŒ‡å®šã§ãã¾ã™ã€‚ + RLO Start of right-to-left override + RLO (å³æ¨ªæ›¸ã上書ã開始指定) - - XSL-T attributes on XSL-T elements must be in the null namespace, not in the XSL-T namespace which %1 is. - XSLT エレメントã«å¯¾ã™ã‚‹XSLT属性ã¯ã€åå‰ç©ºé–“ãŒnullã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。%1 ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。 + PDF Pop directional formatting + PDF (æ–¹å‘上書ãã®çµ‚了指定) - - The attribute %1 must appear on element %2. - 属性 %1 ã¯ã€ã‚¨ãƒ¬ãƒ¡ãƒ³ãƒˆ %2 ã«ã®ã¿è¨˜è¿°ã§ãã¾ã™ã€‚ + Insert Unicode control character + Unicode制御文字を挿入 + + + QWebFrame - - The element with local name %1 does not exist in XSL-T. - ローカルå %1 ã®ã‚¨ãƒ¬ãƒ¡ãƒ³ãƒˆã¯ã€XSLTã«å­˜åœ¨ã—ã¾ã›ã‚“。 + Request cancelled + リクエストã¯ã‚­ãƒ£ãƒ³ã‚»ãƒ«ã•ã‚Œã¾ã—㟠- - The variable %1 is unused - 値 %1 ã¯ä½¿ç”¨ã•ã‚Œã¾ã›ã‚“ã§ã—㟠+ Request blocked + リクエストã¯ãƒ–ロックã•ã‚Œã¾ã—㟠- - A construct was encountered which only is allowed in XQuery. - XQuery ã§ã®ã¿è¨±å¯ã•ã‚Œã¦ã„ã‚‹ construct ã«é­é‡ã—ã¾ã—ãŸã€‚ + Cannot show URL + URL を表示ã§ãã¾ã›ã‚“ - - - %1 is an unknown schema type. - %1 ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ãªã„スキーマã®ã‚¿ã‚¤ãƒ—ã§ã™ã€‚ + Frame load interrupted by policy change + ãƒãƒªã‚·ãƒ¼ãŒå¤‰æ›´ã•ã‚ŒãŸãŸã‚フレームã®ãƒ­ãƒ¼ãƒ‰ã‚’中断ã—ã¾ã—㟠- - A template by name %1 has already been declared. - テンプレートå '%1' ã¯ã€æ—¢ã«å®£è¨€ã•ã‚Œã¦ã„ã¾ã™ã€‚ + Cannot show mimetype + MIME Type を表示ã§ãã¾ã›ã‚“ - - %1 is not a valid numeric literal. - %1 ã¯æ•°å€¤ãƒªãƒ†ãƒ©ãƒ«ã¨ã—ã¦ç„¡åŠ¹ã§ã™ã€‚ + File does not exist + ファイルãŒå­˜åœ¨ã—ã¾ã›ã‚“ + + + QWebPage - - Only one %1 declaration can occur in the query prolog. - クェリーã®ãƒ—ロローグã§ã¯ã€%1 ã¯ä¸€å›žã®ã¿å®£è¨€ã§ãã¾ã™ã€‚ + Redirection limit reached + リダイレクトã®ä¸Šé™ã«é”ã—ã¾ã—㟠- - The initialization of variable %1 depends on itself - å†å¸°? - 値 %1 ã®åˆæœŸåŒ–ã¯ã€ãれ自身ã«ä¾å­˜ã—ã¦ã„ã¾ã™ + Bad HTTP request + 誤ã£ãŸ HTTP ã®ãƒªã‚¯ã‚¨ã‚¹ãƒˆã§ã™ - - No variable by name %1 exists - 変数 %1 ã¯å­˜åœ¨ã—ã¾ã›ã‚“ + Submit + default label for Submit buttons in forms on web pages + é€ä¿¡ - - Version %1 is not supported. The supported XQuery version is 1.0. - ãƒãƒ¼ã‚¸ãƒ§ãƒ³ %1 ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。XQuery ãƒãƒ¼ã‚¸ãƒ§ãƒ³ 1.0 ã®ã¿ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã™ã€‚ + Submit + Submit (input element) alt text for <input> elements with no alt, title, or value + é€ä¿¡ - - The encoding %1 is invalid. It must contain Latin characters only, must not contain whitespace, and must match the regular expression %2. - エンコーディング '%1' ã¯ç„¡åŠ¹ã§ã™ã€‚ラテン文字 (空白を除ã) ã‹ã‚‰ãªã‚‹ã‚‚ã®ã§ã€æ­£è¦è¡¨ç¾ '%2' ã«ãƒžãƒƒãƒã™ã‚‹ã‚‚ã®ã®ã¿ä½¿ç”¨ã§ãã¾ã™ã€‚ + Reset + default label for Reset buttons in forms on web pages + リセット - - No function with signature %1 is available - ã‚·ã‚°ãƒãƒãƒ£ %1 ã‚’ã‚‚ã¤é–¢æ•°ãŒã¿ã¤ã‹ã‚Šã¾ã›ã‚“ + This is a searchable index. Enter search keywords: + text that appears at the start of nearly-obsolete web pages in the form of a 'searchable index' + 検索ãŒå¯èƒ½ã§ã™ã€‚検索ã®ãŸã‚ã®ã‚­ãƒ¼ãƒ¯ãƒ¼ãƒ‰ã‚’入力ã—ã¦ãã ã•ã„: - - - A default namespace declaration must occur before function, variable, and option declarations. - 標準ã®åå‰ç©ºé–“ã®å®£è¨€ã¯ã€é–¢æ•°ã€å¤‰æ•°ã€ã‚ªãƒ—ションã®å®£è¨€ã®å‰ã«ã—ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 + Choose File + title for file button used in HTML forms + ファイルをé¸ã¶ - - Namespace declarations must occur before function, variable, and option declarations. - åå‰ç©ºé–“ã®å®£è¨€ã¯ã€é–¢æ•°ã€å¤‰æ•°ã€ã‚ªãƒ—ションã®å®£è¨€ã®å‰ã«ã—ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 + No file selected + text to display in file button used in HTML forms when no file is selected + ファイルãŒé¸æŠžã•ã‚Œã¦ã„ã¾ã›ã‚“ - - Module imports must occur before function, variable, and option declarations. - モジュールã®ã‚¤ãƒ³ãƒãƒ¼ãƒˆã¯ã€é–¢æ•°ã€å¤‰æ•°ã€ã‚ªãƒ—ションã®å®£è¨€ã®å‰ã«ã—ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 + Open in New Window + Open in New Window context menu item + æ–°ã—ã„ウィンドウã§é–‹ã - - The keyword %1 cannot occur with any other mode name. - キーワード %1 ã¯ã€ä»–ã®åã‚’ã¨ã‚‚ãªã£ã¦ä½¿ç”¨ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。 + Save Link... + Download Linked File context menu item + リンク先をä¿å­˜... - - The value of attribute %1 must of type %2, which %3 isn't. - 属性 '%1' ã®å€¤ã¨ã—㦠'%3' ãŒæŒ‡å®šã•ã‚Œã¾ã—ãŸãŒã€åž‹ '%2' ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 + Copy Link + Copy Link context menu item + リンク先をコピー - - It is not possible to redeclare prefix %1. - プレフィックス '%1' ã‚’å†å®šç¾©ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。 + Open Image + Open Image in New Window context menu item + イメージを開ã - - The prefix %1 can not be bound. By default, it is already bound to the namespace %2. - プレフィックス '%1' ã¯ãƒã‚¦ãƒ³ãƒ‰ã§ãã¾ã›ã‚“。デフォルトã§ã¯ã€ãã‚Œã¯æ—¢ã«åå‰ç©ºé–“ '%2' ã«ãƒã‚¦ãƒ³ãƒ‰ã•ã‚Œã¦ã„ã¾ã™ã€‚ + Save Image + Download Image context menu item + ç”»åƒã‚’ä¿å­˜ - - Prefix %1 is already declared in the prolog. - プロローグ部ã«ãŠã„ã¦ã€ãƒ—レフィックス '%1' ã¯ã™ã§ã«å®£è¨€ã•ã‚Œã¦ã„ã¾ã™ã€‚ + Copy Image + Copy Link context menu item + ç”»åƒã‚’コピー - - The name of an option must have a prefix. There is no default namespace for options. - オプションã®åå‰ã¯ãƒ—レフィックスをもãŸãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。ã“ã®ã‚ªãƒ—ションã«å¯¾ã™ã‚‹ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®åå‰ç©ºé–“ã¯å­˜åœ¨ã—ã¾ã›ã‚“。 + Open Frame + Open Frame in New Window context menu item + フレームを新ã—ã„ウィンドウã§é–‹ã - - The Schema Import feature is not supported, and therefore %1 declarations cannot occur. - ã“ã®ã‚¹ã‚­ãƒ¼ãƒžã®ã‚¤ãƒ³ãƒãƒ¼ãƒˆæ©Ÿèƒ½ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。ã¾ãŸã€'%1' 宣言も使用ã§ãã¾ã›ã‚“。 + Copy + Copy context menu item + コピー - - The target namespace of a %1 cannot be empty. - åå‰ç©ºé–“ '%1' ã¯ã€ç©ºã§ã‚ã£ã¦ã¯ãªã‚Šã¾ã›ã‚“。 + Go Back + Back context menu item + 戻る - - The module import feature is not supported - モジュールインãƒãƒ¼ãƒˆã®æ©Ÿèƒ½ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“ + Go Forward + Forward context menu item + 進む - - A variable by name %1 has already been declared. - åå‰ '%1' ã®å¤‰æ•°ã¯ã€ã™ã§ã«å®£è¨€ã•ã‚Œã¦ã„ã¾ã™ã€‚ + Stop + Stop context menu item + åœæ­¢ - - No value is available for the external variable by name %1. - 外部変数 '%1' ã®å€¤ãŒã¿ã¤ã‹ã‚Šã¾ã›ã‚“。 + Reload + Reload context menu item + リロード - - A stylesheet function must have a prefixed name. - スタイルシート関数ã¯ã€ãƒ—レフィックスåã‚’æŒãŸãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 + Cut + Cut context menu item + 切りå–ã‚Š - - The namespace for a user defined function cannot be empty (try the predefined prefix %1 which exists for cases like this) - ユーザ定義ã®é–¢æ•°ã®åå‰ç©ºé–“ã¯ã€ç©ºã§ã‚ã£ã¦ã¯ãªã‚Šã¾ã›ã‚“。(ã™ã§ã«å®šç¾©ã•ã‚Œã¦ã„るプレフィックス '%1' ãŒä½¿ç”¨ã§ãã¾ã™) + Paste + Paste context menu item + 貼り付㑠- - The namespace %1 is reserved; therefore user defined functions may not use it. Try the predefined prefix %2, which exists for these cases. - åå‰ç©ºé–“ '%1' ã¯äºˆç´„済ã§ã™ã€‚ユーザ定義ã®é–¢æ•°ã§ã¯ä½¿ç”¨ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。プレフィックス '%2' ãŒä½¿ç”¨ã§ãã¾ã™ã€‚ + No Guesses Found + No Guesses Found context menu item + 推測候補ã¯ã‚ã‚Šã¾ã›ã‚“ - - The namespace of a user defined function in a library module must be equivalent to the module namespace. In other words, it should be %1 instead of %2 - ライブラリモジュールã§ä½¿ç”¨ã•ã‚Œã¦ã„ã‚‹åå‰ç©ºé–“ã¯ã€ãƒ¢ã‚¸ãƒ¥ãƒ¼ãƒ«ã®åå‰ç©ºé–“ã¨åŒä¸€ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。ã¤ã¾ã‚Šã€'%2' ã§ã¯ãªãã€'%1' ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“ + Ignore + Ignore Spelling context menu item + 無視 - - A function already exists with the signature %1. - ã‚·ã‚°ãƒãƒãƒ£ãƒ¼ '%1' ã®é–¢æ•°ã¯ã™ã§ã«å­˜åœ¨ã—ã¦ã„ã¾ã™ã€‚ + Add To Dictionary + Learn Spelling context menu item + 辞書ã«è¿½åŠ  - - No external functions are supported. All supported functions can be used directly, without first declaring them as external - 外部関数ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。ã™ã¹ã¦ã®ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„る関数ã¯ã€å¤–部宣言をã™ã‚‹ã“ã¨ãªãã€ç›´æŽ¥ä½¿ç”¨ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ + Search The Web + Search The Web context menu item + Web を検索 - - An argument by name %1 has already been declared. Every argument name must be unique. - 引数å '%1' ã¯æ—¢ã«å®£è¨€ã•ã‚Œã¦ã„ã¾ã™ã€‚ã™ã¹ã¦ã®å¼•æ•°åã¯ãƒ¦ãƒ‹ãƒ¼ã‚¯ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ + Look Up In Dictionary + Look Up in Dictionary context menu item + 辞書ã‹ã‚‰æŽ¢ã™ - - When function %1 is used for matching inside a pattern, the argument must be a variable reference or a string literal. - パターン一致ã®å†…å´ã§é–¢æ•° '%1' を使用ã™ã‚‹å ´åˆã€å¼•æ•°ã¯ãƒªãƒ†ãƒ©ãƒ«ãªæ–‡å­—列をå‚ç…§ã™ã‚‹å€¤ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 + Open Link + Open Link context menu item + リンクを開ã - - In an XSL-T pattern, the first argument to function %1 must be a string literal, when used for matching. - XSL-T パターンマッãƒãƒ³ã‚°ã«ãŠã„ã¦ã€é–¢æ•° '%1' ã®æœ€åˆã®å¼•æ•°ã¯ã€ãƒªãƒ†ãƒ©ãƒ«ãªæ–‡å­—列ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 + Ignore + Ignore Grammar context menu item + 無視 - - In an XSL-T pattern, the first argument to function %1 must be a literal or a variable reference, when used for matching. - variable ref? - XSL-T パターンマッãƒãƒ³ã‚°ã«ãŠã„ã¦ã€é–¢æ•° '%1' ã¸ã®æœ€åˆã®å¼•æ•°ã¯ã€ãƒªãƒ†ãƒ©ãƒ«ã‹å¤‰æ•°ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 + Spelling + Spelling and Grammar context sub-menu item + スペル - - In an XSL-T pattern, function %1 cannot have a third argument. - XSL-T パターンã«ãŠã„ã¦ã€é–¢æ•° '%1' ã¯ä¸‰ã¤ã®å¼•æ•°ã‚’ã‚‚ã¤ã“ã¨ã¯ã§ãã¾ã›ã‚“。 + Show Spelling and Grammar + menu item title + スペルã¨æ–‡æ³•ã‚’表示 - - In an XSL-T pattern, only function %1 and %2, not %3, can be used for matching. - XSL-T パターンマッãƒãƒ³ã‚°ã«ãŠã„ã¦ã€é–¢æ•° '%1' 㨠'%2' ã®ã¿ä½¿ç”¨ã§ãã¾ã™ã€‚'%3' ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。 + Hide Spelling and Grammar + menu item title + スペルã¨æ–‡æ³•ã‚’éš ã™ - - In an XSL-T pattern, axis %1 cannot be used, only axis %2 or %3 can. - XSL-T パターンã«ãŠã„ã¦ã€axis %1 ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。%2 ã¾ãŸã¯ %3 ã®ã¿ä½¿ç”¨ã§ãã¾ã™ã€‚ + Check Spelling + Check spelling context menu item + スペルをãƒã‚§ãƒƒã‚¯ã™ã‚‹ - - %1 is an invalid template mode name. - %1 ã¯ãƒ†ãƒ³ãƒ—レートモジュールåã¨ã—ã¦ç„¡åŠ¹ã§ã™ã€‚ + Check Spelling While Typing + Check spelling while typing context menu item + 入力中ã«ã‚¹ãƒšãƒ«ã‚’ãƒã‚§ãƒƒã‚¯ã™ã‚‹ - - The name of a variable bound in a for-expression must be different from the positional variable. Hence, the two variables named %1 collide. - for 構文ã«ãŠã„ã¦ä½¿ç”¨ã™ã‚‹å¤‰æ•°ã¯ã€å ´æ‰€ã«é–¢ã™ã‚‹å¤‰æ•°ã¨ã¯ç•°ãªã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã¤ã¾ã‚Šã€'%1' ãŒé‡è¤‡ã—ã¦ä½¿ç”¨ã•ã‚Œã¦ã„ã¾ã™ã€‚ + Check Grammar With Spelling + Check grammar with spelling context menu item + スペルãŠã‚ˆã³æ–‡æ³•ã‚’ãƒã‚§ãƒƒã‚¯ã™ã‚‹ - - The Schema Validation Feature is not supported. Hence, %1-expressions may not be used. - スキーマã®æ¤œè¨¼æ©Ÿèƒ½ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。よã£ã¦ã€'%1' 構文ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。 + Fonts + Font context sub-menu item + フォント - - None of the pragma expressions are supported. Therefore, a fallback expression must be present - pragma 構文ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。fallback 構文ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“ + Bold + Bold context menu item + 太字 - - Each name of a template parameter must be unique; %1 is duplicated. - テンプレートパラメータåã¯ãƒ¦ãƒ‹ãƒ¼ã‚¯ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚'%1' ã¯é‡è¤‡ã—ã¦ã„ã¾ã™ã€‚ + Italic + Italic context menu item + イタリック - - The %1-axis is unsupported in XQuery - XQuery ã«ãŠã„ã¦ã€%1 axis ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“ + Underline + Underline context menu item + 下線 - - No function by name %1 is available. - 関数å '%1' ã¯ã¿ã¤ã‹ã‚Šã¾ã›ã‚“。 + Outline + Outline context menu item + アウトライン - - The namespace URI cannot be the empty string when binding to a prefix, %1. - プレフィックス '%1' ã«ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã™ã‚‹åå‰ç©ºé–“ã® URI ã¯ã€ç©ºã§ã‚ã£ã¦ã¯ãªã‚Šã¾ã›ã‚“。 + Direction + Writing direction context sub-menu item + æ–¹å‘ - - %1 is an invalid namespace URI. - %1 ã¯åå‰ç©ºé–“ URI ã¨ã—ã¦ç„¡åŠ¹ã§ã™ã€‚ + Text Direction + Text direction context sub-menu item + テキストã®æ–¹å‘ - - It is not possible to bind to the prefix %1 - プレフィックス %1 ã«ãƒã‚¤ãƒ³ãƒ‰ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“ + Default + Default writing direction context menu item + デフォルト - - Namespace %1 can only be bound to %2 (and it is, in either case, pre-declared). - ? - åå‰ç©ºé–“ %1 㯠%2 ã«ã®ã¿ãƒã‚¦ãƒ³ãƒ‰ã§ãã¾ã™ã€‚ + Left to Right + Left to Right context menu item + 左横書ã - - Prefix %1 can only be bound to %2 (and it is, in either case, pre-declared). - プリフィックス %1 㯠%2 ã«ã®ã¿ãƒã‚¦ãƒ³ãƒ‰ã§ãã¾ã™ã€‚ + Right to Left + Right to Left context menu item + å³æ¨ªæ›¸ã - - Two namespace declaration attributes have the same name: %1. - 二ã¤ã®åå‰ç©ºé–“宣言ã®å±žæ€§ãŒã€åŒã˜åå‰ '%1' ã‚’ã‚‚ã£ã¦ã„ã¾ã™ã€‚ + Loading... + Media controller status message when the media is loading + 読込中... - - The namespace URI must be a constant and cannot use enclosed expressions. - åå‰ç©ºé–“ URI ã¯ã€constantã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。å¼ã‚’å«ã‚€ã“ã¨ã¯ã§ãã¾ã›ã‚“。 + Live Broadcast + Media controller status message when watching a live broadcast + ライブブロードキャスト - - An attribute by name %1 has already appeared on this element. - 属性å '%1' ã¯ã€ã™ã§ã«ã“ã®ã‚¨ãƒ¬ãƒ¡ãƒ³ãƒˆã§ä½¿ç”¨ã•ã‚Œã¦ã„ã¾ã™ã€‚ + Audio Element + Media controller element + オーディオè¦ç´  - - A direct element constructor is not well-formed. %1 is ended with %2. - ç›´ç©çš„ãªæŒ‡å®šã®ã‚¨ãƒ¬ãƒ¡ãƒ³ãƒˆãŒwell formedã§ã¯ã‚ã‚Šã¾ã›ã‚“。'%1' ãŒã€'%2' ã§çµ‚ã‚ã£ã¦ã„ã¾ã™ã€‚ + Video Element + Media controller element + ビデオè¦ç´  - - The name %1 does not refer to any schema type. - åå‰ '%1' ã¯ã€ãªã‚“ã®ã‚¹ã‚­ãƒ¼ãƒžã‚¿ã‚¤ãƒ—ã‚‚å‚ç…§ã—ã¦ã„ã¾ã›ã‚“。 + Mute Button + Media controller element + 消音ボタン - - %1 is an complex type. Casting to complex types is not possible. However, casting to atomic types such as %2 works. - '%1' 㯠complex åž‹ã§ã™ã€‚complex åž‹ã¸ã®åž‹å¤‰æ›ã¯ã§ãã¾ã›ã‚“。ã—ã‹ã—ã€ã‚¢ãƒˆãƒŸãƒƒã‚¯ãªåž‹ã§ã‚ã‚‹ '%2' ã¸ã®å¤‰æ›ã¯ã§ãã¾ã™ã€‚ + Unmute Button + Media controller element + 消音解除ボタン - - %1 is not an atomic type. Casting is only possible to atomic types. - '%1' ã¯ã‚¢ãƒˆãƒŸãƒƒã‚¯ãªåž‹ã§ã¯ã‚ã‚Šã¾ã›ã‚“。型変æ›ã¯ã‚¢ãƒˆãƒŸãƒƒã‚¯ãªåž‹ã«å¯¾ã—ã¦ã®ã¿å¯èƒ½ã§ã™ã€‚ + Play Button + Media controller element + å†ç”Ÿãƒœã‚¿ãƒ³ - - %1 is not a valid name for a processing-instruction. - 処ç†æŒ‡å®šã«ãŠã„ã¦ã€'%1' ã¯ç„¡åŠ¹ã§ã™ã€‚ + Pause Button + Media controller element + 一時åœæ­¢ãƒœã‚¿ãƒ³ - - - %1 is not in the in-scope attribute declarations. Note that the schema import feature is not supported. - '%1' ã¯ã€ã‚¹ã‚³ãƒ¼ãƒ—属性宣言ã§ã¯ã‚ã‚Šã¾ã›ã‚“。スキーマインãƒãƒ¼ãƒˆæ©Ÿèƒ½ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。 + Slider + Media controller element + スライダ - - The name of an extension expression must be in a namespace. - æ‹¡å¼µå¼ (extension expression) ã®åå‰ã¯ã€åå‰ç©ºé–“ã®ä¸­ã«ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 + Slider Thumb + Media controller element + スライダーã®ã¤ã¾ã¿ - - Element %1 is not allowed at this location. - ã“ã®å ´æ‰€ã«ã‚¨ãƒ¬ãƒ¡ãƒ³ãƒˆ '%1' ã‚’ãŠãã“ã¨ã¯è¨±ã•ã‚Œã¦ã„ã¾ã›ã‚“。 + Rewind Button + Media controller element + å·»ã戻ã—ボタン - - Text nodes are not allowed at this location. - ã“ã®å ´æ‰€ã«ãƒ†ã‚­ã‚¹ãƒˆãƒŽãƒ¼ãƒ‰ã‚’ãŠãã“ã¨ã¯è¨±ã•ã‚Œã¦ã„ã¾ã›ã‚“。 + Return to Real-time Button + Media controller element + ç¾åœ¨æ™‚é–“ã«æˆ»ã‚‹ãƒœã‚¿ãƒ³ - - Parse error: %1 - パースエラー: %1 + Elapsed Time + Media controller element + 経éŽæ™‚é–“ - - The value of the XSL-T version attribute must be a value of type %1, which %2 isn't. - XSL-T ãƒãƒ¼ã‚¸ãƒ§ãƒ³å±žæ€§ã®å€¤ã¯ã€'%1' åž‹ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。'%2' ã¯ãã†ã§ã¯ã‚ã‚Šã¾ã›ã‚“。 + Remaining Time + Media controller element + 残り時間 - - Running an XSL-T 1.0 stylesheet with a 2.0 processor. - XSL-T 1.0 ã®ã‚¹ã‚¿ã‚¤ãƒ«ã‚·ãƒ¼ãƒˆã‚’ 2.0 ã®ãƒ—ロセッサã§ä½¿ç”¨ã—ã¾ã™ã€‚ + Status Display + Media controller element + ステータス表示 - - Unknown XSL-T attribute %1. - 未知㮠XSL-T 属性 %1 ãŒã‚ã‚Šã¾ã™ã€‚ + Fullscreen Button + Media controller element + フルスクリーンボタン - - Attribute %1 and %2 are mutually exclusive. - 属性 '%1' 㨠'%2' ã¯æŽ’ä»–çš„ã«ã®ã¿ä½¿ç”¨ã§ãã¾ã™ã€‚ + Seek Forward Button + Media controller element + æ—©é€ã‚Šãƒœã‚¿ãƒ³ - - In a simplified stylesheet module, attribute %1 must be present. - simplified stylesheet モジュールã«ãŠã„ã¦ã¯ã€å±žæ€§ '%1' を指定ã•ã‚Œãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 + Seek Back Button + Media controller element + å·»ã戻ã—ボタン - - If element %1 has no attribute %2, it cannot have attribute %3 or %4. - エレメント '%1' ãŒå±žæ€§ '%2' ã‚’æŒãŸãªã„å ´åˆã¯ã€å±žæ€§ '%3' ã‚„ '%4' を使用ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。 + Audio element playback controls and status display + Media controller element + オーディオè¦ç´ ã®å†ç”Ÿåˆ¶å¾¡ã¨ã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹ã®è¡¨ç¤º - - Element %1 must have at least one of the attributes %2 or %3. - エレメント '%1' ã¯ã€å±žæ€§ '%2' ã‹ '%3' ã®ã„ãšã‚Œã‹ã‚’æŒãŸãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 + Video element playback controls and status display + Media controller element + ビデオè¦ç´ ã®å†ç”Ÿåˆ¶å¾¡ã¨ã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹ã®è¡¨ç¤º - - At least one mode must be specified in the %1-attribute on element %2. - エレメント '%2' ã«ãŠã„ã¦ã€'%1' 属性ã¯å°‘ãã¨ã‚‚一ã¤ã®ãƒ¢ãƒ¼ãƒ‰ã‚’指定ã—ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 + Mute audio tracks + Media controller element + 音声を消音ã™ã‚‹ - - Element %1 must come last. - エレメント %1 ã¯æœ€å¾Œã«ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 + Unmute audio tracks + Media controller element + 音声ã®æ¶ˆéŸ³ã‚’解除ã™ã‚‹ - - At least one %1-element must occur before %2. - %2 ã®å‰ã«ã€å°‘ãã¨ã‚‚一ã¤ã¯ %1 エレメントãŒå­˜åœ¨ã—ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 + Begin playback + Media controller element + å†ç”Ÿã‚’開始ã™ã‚‹ - - Only one %1-element can appear. - %1 エレメントã¯ä¸€ã¤ã®ã¿å­˜åœ¨ã—ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 + Pause playback + Media controller element + å†ç”Ÿã‚’一時åœæ­¢ã™ã‚‹ - - At least one %1-element must occur inside %2. - %2 ã®å†…å´ã«ã¯ã€å°‘ãã¨ã‚‚一ã¤ã® '%1' エレメントãŒå­˜åœ¨ã—ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 + Movie time scrubber + Media controller element + å‹•ç”»å†ç”Ÿæ™‚間プログレスãƒãƒ¼ - - When attribute %1 is present on %2, a sequence constructor cannot be used. - %2 ã«å±žæ€§ %1 ãŒã‚ã‚‹å ´åˆã€sequence constructor ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。 + Movie time scrubber thumb + Media controller element + å‹•ç”»å†ç”Ÿæ™‚間プログレスãƒãƒ¼ã®ã¤ã¾ã¿ - - Element %1 must have either a %2-attribute or a sequence constructor. - エレメント %1 ã«ã¯ã€%2 属性ã¾ãŸã¯sequence constructorãŒãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 + Rewind movie + Media controller element + å‹•ç”»ã®å·»ã戻㗠- - When a parameter is required, a default value cannot be supplied through a %1-attribute or a sequence constructor. - パラメータãŒè¦æ±‚ã•ã‚Œã¦ã„ã‚‹ã¨ãã«ã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®å€¤ã¯ã€%1 属性ã¾ãŸã¯ sequence constructor ã«ã‚ˆã£ã¦æŒ‡å®šã•ã‚Œã¦ã„ã¦ã¯ãªã‚Šã¾ã›ã‚“。 + Return streaming movie to real-time + Media controller element + ストリーミング動画ã®å†ç”Ÿã‚’ç¾åœ¨æ™‚é–“ã«æˆ»ã‚‹ - - Element %1 cannot have children. - エレメント %1 ã¯ã€å­è¦ç´ ã‚’æŒã¤ã“ã¨ãŒã§ãã¾ã›ã‚“。 + Current movie time + Media controller element + ç¾åœ¨ã®å‹•ç”»å†ç”Ÿæ™‚é–“ - - Element %1 cannot have a sequence constructor. - エレメント %1 ã¯ã€sequence constructor ã‚’å«ã‚€ã“ã¨ãŒã§ãã¾ã›ã‚“。 + Remaining movie time + Media controller element + 残り動画å†ç”Ÿæ™‚é–“ - - - The attribute %1 cannot appear on %2, when it is a child of %3. - %2 ㌠%3 ã®å­è¦ç´ ã§ã‚ã‚‹ã¨ãã¯ã€å±žæ€§ %1 を使用ã—ã¦ã¯ãªã‚Šã¾ã›ã‚“。 + Current movie status + Media controller element + ç¾åœ¨ã®å‹•ç”»ã®ã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹ - - A parameter in a function cannot be declared to be a tunnel. - 関数ã¸ã®ãƒ‘ラメータã¯ã€ãƒˆãƒ³ãƒãƒ«ã§ã‚ã£ã¦ã¯ãªã‚Šã¾ã›ã‚“。 + Play movie in full-screen mode + Media controller element + フルスクリーンモードã§å‹•ç”»ã‚’å†ç”Ÿã™ã‚‹ - - This processor is not Schema-aware and therefore %1 cannot be used. - ã“ã®å‡¦ç†ç³»ã¯ã€Schema-aware ã§ã¯ã‚ã‚Šã¾ã›ã‚“。よã£ã¦ã€%1 ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。 + Seek quickly back + Media controller element + - - Top level stylesheet elements must be in a non-null namespace, which %1 isn't. - トップレベルã®ã‚¹ã‚¿ã‚¤ãƒ«ã‚·ãƒ¼ãƒˆã®ã‚¨ãƒ¬ãƒ¡ãƒ³ãƒˆã¯ã€non-nullãªåå‰ç©ºé–“ã‚’æŒã£ã¦ã„ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。ã—ã‹ã—ã€%1 ã¯ãã†ã§ã¯ã‚ã‚Šã¾ã›ã‚“。 + Seek quickly forward + Media controller element + - - The value for attribute %1 on element %2 must either be %3 or %4, not %5. - エレメント %2 ã®å±žæ€§ %1 ã®å€¤ã¯ã€%3 ã¾ãŸã¯ %4 ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。%5 ã¯ç•°ãªã‚Šã¾ã™ã€‚ + Indefinite time + Media time description + ç„¡æœŸé™ - - Attribute %1 cannot have the value %2. - 属性 %1 ã«ã€å€¤ %2 を指定ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。 + %1 days %2 hours %3 minutes %4 seconds + Media time description + %1 æ—¥ %2 時間 %3 分 %4 秒 - - The attribute %1 can only appear on the first %2 element. - 属性 %1 ã¯ã€æœ€åˆã® %2 エレメントã«ã®ã¿æŒ‡å®šã§ãã¾ã™ã€‚ + %1 hours %2 minutes %3 seconds + Media time description + %1 時間 %2 分 %3 秒 - - At least one %1 element must appear as child of %2. - %2 ã®å­è¦ç´ ã¨ã—ã¦ã¯ã€å°‘ãã¨ã‚‚一ã¤ã¯ %1 エレメントãŒãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 + %1 minutes %2 seconds + Media time description + %1 分 %2 秒 - - empty - 空 + %1 seconds + Media time description + %1 秒 - - zero or one - ゼロã¾ãŸã¯ä¸€ã¤ + Inspect + Inspect Element context menu item + ? + 検査 - - exactly one - 厳密ã«ä¸€ã¤ + No recent searches + Label for only item in menu that appears when clicking on the search field image, when no searches have been performed + 検索ã®å±¥æ­´ã¯ã‚ã‚Šã¾ã›ã‚“ - - one or more - 一ã¤ã¾ãŸã¯è¤‡æ•° + Recent searches + label for first item in the menu that appears when clicking on the search field image, used as embedded menu title + 検索ã®å±¥æ­´ - - zero or more - ゼロã¾ãŸã¯ãれ以上 + Clear recent searches + menu item in Recent Searches menu that empties menu's contents + 検索ã®å±¥æ­´ã‚’クリア - - Required type is %1, but %2 was found. - è¦æ±‚ã•ã‚Œã¦ã„る型㯠%1 ã§ã™ãŒã€ %2 ãŒã‚ã‚Šã¾ã™ã€‚ + Missing Plug-in + Label text to be used when a plug-in is missing + プラグインãŒã‚ã‚Šã¾ã›ã‚“ - - Promoting %1 to %2 may cause loss of precision. - %1 ã‚’ %2 ã«å¤‰æ›ã™ã‚‹éš›ã«ã€ç²¾åº¦ã®ãƒ­ã‚¹ãŒç”Ÿã˜ã¾ã™ã€‚ + Unknown + Unknown filesize FTP directory listing item + ä¸æ˜Ž - - The focus is undefined. - フォーカスãŒå®šç¾©ã•ã‚Œã¦ã„ã¾ã›ã‚“。 + %1 (%2x%3 pixels) + Title string for images + %1 (%2x%3 ピクセル) - - It's not possible to add attributes after any other kind of node. - ä»–ã®ç¨®é¡žã®ãƒŽãƒ¼ãƒ‰ã®ä¸­ã§ã¯ã€å±žæ€§ã‚’追加ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。 + Web Inspector - %2 + Web ã®æ¤œæŸ» - %2 - - An attribute by name %1 has already been created. - åå‰ '%1' ã®å±žæ€§ã¯ã€ã™ã§ã«ç”Ÿæˆã•ã‚Œã¦ã„ã¾ã™ã€‚ + Scroll here + ã“ã“ã«ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ« - - Only the Unicode Codepoint Collation is supported(%1). %2 is unsupported. - UNICODE Codepoint Collection ã®ã¿ä½¿ç”¨ã§ãã¾ã™(%1)。 %2 ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。 - - - - QPluginLoader + Left edge + 左端 + - - Unknown error - ä¸æ˜Žãªã‚¨ãƒ©ãƒ¼ + Top + 上端 - - The plugin was not loaded. - ãã®ãƒ—ラグインã¯ãƒ­ãƒ¼ãƒ‰ã•ã‚Œã¦ã„ã¾ã›ã‚“。 + Right edge + å³ç«¯ - - - QPrintDialog - Page size: - ページサイズ: + Bottom + 下端 - Orientation: - æ–¹å‘: + Page left + 1ページ左ã¸ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ« - Paper source: - 給紙装置: + Page up + 1ページ戻る - - OK - OK + Page right + 1ページå³ã¸ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ« - Cancel - キャンセル + Page down + 1ページ進む - Portrait - 縦 + Scroll left + å·¦ã¸ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ« - Landscape - 横 + Scroll up + 上ã¸ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ« - - locally connected - ローカルã«æŽ¥ç¶šã—ã¦ã„ã¾ã™ + Scroll right + å³ã¸ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ« - - - Aliases: %1 - エイリアス: %1 + Scroll down + 下ã¸ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ« + + + %n file(s) + number of chosen file + + %n 個ã®ãƒ•ã‚¡ã‚¤ãƒ« + - - - unknown - ä¸æ˜Ž + JavaScript Alert - %1 + JavaScript 警告 - %1 - Print in color if available - å¯èƒ½ã§ã‚ã‚Œã°ã‚«ãƒ©ãƒ¼ã§å°åˆ· + JavaScript Confirm - %1 + JavaScript ç¢ºèª - %1 - Print to file - ファイルã«å‡ºåŠ›: + JavaScript Prompt - %1 + JavaScript プロンプト - %1 - Browse - å‚ç…§... + JavaScript Problem - %1 + JavaScript å•é¡Œ - %1 - - Print all - ã™ã¹ã¦å°åˆ· + The script on this page appears to have a problem. Do you want to stop the script? + ã“ã®ãƒšãƒ¼ã‚¸ã®ã‚¹ã‚¯ãƒªãƒ—トã«ã¯å•é¡ŒãŒã‚るよã†ã§ã™ã€‚ スクリプトをåœæ­¢ã—ã¾ã™ã‹? - Selection - é¸æŠžã—ãŸéƒ¨åˆ†ã‚’å°åˆ· + Move the cursor to the next character + 次ã®æ–‡å­—ã¸ã‚«ãƒ¼ã‚½ãƒ«ã‚’移動 - - Print range - å°åˆ·ç¯„囲 + Move the cursor to the previous character + å‰ã®æ–‡å­—ã«ã‚«ãƒ¼ã‚½ãƒ«ã‚’移動 - Pages from - 先頭ã®ãƒšãƒ¼ã‚¸: + Move the cursor to the next word + 次ã®å˜èªžã«ã‚«ãƒ¼ã‚½ãƒ«ã‚’移動 - to - 末尾ã®ãƒšãƒ¼ã‚¸: + Move the cursor to the previous word + å‰ã®å˜èªžã«ã‚«ãƒ¼ã‚½ãƒ«ã‚’移動 - Print last page first - 末尾ã®ãƒšãƒ¼ã‚¸ã‹ã‚‰å°åˆ· + Move the cursor to the next line + 次ã®è¡Œã«ã‚«ãƒ¼ã‚½ãƒ«ã‚’移動 - Number of copies: - 部数: + Move the cursor to the previous line + å‰ã®è¡Œã«ã‚«ãƒ¼ã‚½ãƒ«ã‚’移動 - Paper format - 用紙ã®å½¢å¼ + Move the cursor to the start of the line + æ–‡ãªã®ã‹è¡Œãªã®ã‹ + 文頭ã«ã‚«ãƒ¼ã‚½ãƒ«ã‚’移動 - - A0 (841 x 1189 mm) - A0 (841 x 1189mm) + Move the cursor to the end of the line + 文末ã«ã‚«ãƒ¼ã‚½ãƒ«ã‚’移動 - - A1 (594 x 841 mm) - A1 (594 x 841mm) + Move the cursor to the start of the block + ブロックã®å…ˆé ­ã«ã‚«ãƒ¼ã‚½ãƒ«ã‚’移動 - - A2 (420 x 594 mm) - A2 (420 x 594mm) + Move the cursor to the end of the block + ブロックã®æœ«å°¾ã«ã‚«ãƒ¼ã‚½ãƒ«ã‚’移動 - - A3 (297 x 420 mm) - A3 (297 x 420mm) + Move the cursor to the start of the document + 文章ã®å…ˆé ­ã«ã‚«ãƒ¼ã‚½ãƒ«ã‚’移動 - - A4 (210 x 297 mm, 8.26 x 11.7 inches) - A4 (210 x 297mmã€8.26 x 11.7インãƒ) + Move the cursor to the end of the document + 文章ã®æœ«å°¾ã«ã‚«ãƒ¼ã‚½ãƒ«ã‚’移動 - - A5 (148 x 210 mm) - A5 (148 x 210mm) + Select all + ã™ã¹ã¦ã‚’é¸æŠž - - A6 (105 x 148 mm) - A6 (105 x 148mm) + Select to the next character + 次ã®æ–‡å­—ã‚’é¸æŠž - - A7 (74 x 105 mm) - A7 (74 x 105mm) + Select to the previous character + å‰ã®æ–‡å­—ã‚’é¸æŠž - - A8 (52 x 74 mm) - A8 (52 x 74mm) + Select to the next word + 次ã®å˜èªžã‚’é¸æŠž - - A9 (37 x 52 mm) - A9 (37 x 52mm) + Select to the previous word + å‰ã®å˜èªžã‚’é¸æŠž - - B0 (1000 x 1414 mm) - B0 (1000 x 1414mm) + Select to the next line + 次ã®è¡Œã‚’é¸æŠž - - B1 (707 x 1000 mm) - B1 (707 x 1000mm) + Select to the previous line + å‰ã®è¡Œã‚’é¸æŠž - - B2 (500 x 707 mm) - B2 (500 x 707mm) + Select to the start of the line + 文頭ã‹ã‚‰é¸æŠž - - B3 (353 x 500 mm) - B3 (353 x 500mm) + Select to the end of the line + 文末ã¾ã§é¸æŠž - - B4 (250 x 353 mm) - B4 (250 x 353mm) + Select to the start of the block + ブロックã®å…ˆé ­ã‹ã‚‰é¸æŠž - - B5 (176 x 250 mm, 6.93 x 9.84 inches) - B5 (176 x 250mmã€6.93 x 9.84インãƒ) + Select to the end of the block + ブロックã®æœ«å°¾ã¾ã§é¸æŠž - - B6 (125 x 176 mm) - B6 (125 x 176mm) + Select to the start of the document + ドキュメントã®å…ˆé ­ã‹ã‚‰é¸æŠž - - B7 (88 x 125 mm) - B7 (88 x 125mm) + Select to the end of the document + ドキュメントã®æœ«å°¾ã¾ã§é¸æŠž - - B8 (62 x 88 mm) - B8 (62 x 88mm) + Delete to the start of the word + å˜èªžã®å…ˆé ­ã¾ã§å‰Šé™¤ - - B9 (44 x 62 mm) - B9 (44 x 62mm) + Delete to the end of the word + å˜èªžã®æœ«å°¾ã¾ã§å‰Šé™¤ - - B10 (31 x 44 mm) - B10 (31 x 44mm) + Insert a new paragraph + æ–°ã—ã„段è½ã‚’挿入 - - C5E (163 x 229 mm) - C5E (163 x 229mm) + Insert a new line + æ–°ã—ã„行を挿入 - - DLE (110 x 220 mm) - DLE (110 x 220mm) + Paste and Match Style + ペースã¨ã—ã¦ã‚¹ã‚¿ã‚¤ãƒ«ã‚’åˆã‚ã›ã‚‹ - - Executive (7.5 x 10 inches, 191 x 254 mm) - Executive (7.5 x 10インãƒã€191 x 254mm) + Remove formatting + 装飾ã®å‰Šé™¤ - - Folio (210 x 330 mm) - Folio (210 x 330mm) + Strikethrough + å–り消ã—ç·š - - Ledger (432 x 279 mm) - Ledger (432 x 279mm) + Subscript + 下付ã文字 - - Legal (8.5 x 14 inches, 216 x 356 mm) - Legal (8.5 x 14インãƒã€216 x 356mm) + Superscript + 上付ã文字 - - Letter (8.5 x 11 inches, 216 x 279 mm) - Letter (8.5 x 11インãƒã€216 x 279mm) + Insert Bulleted List + 箇æ¡æ›¸ãã®æŒ¿å…¥ - - Tabloid (279 x 432 mm) - Tabloid (279 x 432mm) + Insert Numbered List + é †åºä»˜ãリストã®æŒ¿å…¥ - - US Common #10 Envelope (105 x 241 mm) - US Common #10 Envelope (105 x 241mm) + Indent + インデント - Print dialog - プリントダイアログ + Outdent + アウトデント - Size: - サイズ: + Center + センタリング - Printer - プリンタ + Justify + 両端æƒãˆ - Properties - プロパティ + Align Left + 左寄㛠- Printer info: - プリンタ情報: + Align Right + å³å¯„ã› + + + QWhatsThisAction - Copies - å°åˆ·éƒ¨æ•° + What's This? + ヒント? + + + QWidget - Collate - ä¸åˆã„ + * + * + + + QWizard - Other - ãã®ä»– + Go Back + 戻る - Double side printing - 両é¢å°åˆ· + Continue + 続ã - - - - Print - å°åˆ· + Commit + é©ç”¨ - File - ファイル + Done + 終了 - - Print To File ... - ファイルã¸å‡ºåŠ›... + Help + ヘルプ - - File %1 is not writable. -Please choose a different file name. - ファイル %1 ã¯æ›¸ãè¾¼ã¿å¯èƒ½ã§ã¯ã‚ã‚Šã¾ã›ã‚“。 -別ã®ãƒ•ã‚¡ã‚¤ãƒ«åã‚’é¸ã‚“ã§ãã ã•ã„。 + < &Back + < 戻る(&B) - - %1 already exists. -Do you want to overwrite it? - %1 ã¯ã™ã§ã«å­˜åœ¨ã—ã¾ã™ã€‚ -上書ãã—ã¾ã™ã‹? + &Finish + 完了(&F) - - File exists - ファイルã¯æ—¢ã«å­˜åœ¨ã—ã¦ã„ã¾ã™ + Cancel + キャンセル - - <qt>Do you want to overwrite it?</qt> - <qt>ファイルを上書ãã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹?</qt> + &Help + ヘルプ(&H) - - Print selection - é¸æŠžã•ã‚ŒãŸç¯„囲をå°åˆ· + &Next + 次ã¸(&N) - - %1 is a directory. -Please choose a different file name. - %1 ã¯ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ã™ã€‚ -ファイルåを指定ã—ã¦ãã ã•ã„。 + &Next > + 次ã¸(&N) > + + + QWorkspace - - A0 - A0 + &Restore + å…ƒã«æˆ»ã™(&R) - - A1 - A1 + &Move + 移動(&M) - - A2 - A2 + &Size + サイズを変更(&S) - - A3 - A3 + Mi&nimize + 最å°åŒ–(&N) - - A4 - A4 + Ma&ximize + 最大化(&X) - - A5 - A5 + &Close + é–‰ã˜ã‚‹(&C) - - A6 - A6 + Stay on &Top + 常ã«æ‰‹å‰ã«è¡¨ç¤º(&T) - - A7 - A7 + Sh&ade + シェード(&A) - - A8 - A8 + %1 - [%2] + %1 - [%2] - - A9 - A9 + Minimize + 最å°åŒ– - - B0 - B0 + Restore Down + å…ƒã«æˆ»ã™ - - B1 - B1 + Close + é–‰ã˜ã‚‹ - - B2 - B2 + &Unshade + シェードを解除(&U) + + + QXml - - B3 - B3 + no error occurred + エラーã¯ç™ºç”Ÿã—ã¾ã›ã‚“ã§ã—㟠- - B4 - B4 + error triggered by consumer + 消費者ã«ã‚ˆã£ã¦ã‚¨ãƒ©ãƒ¼ãŒèª˜ç™ºã•ã‚Œã¾ã—㟠- - B5 - B5 + unexpected end of file + 予期ã—ãªã„ファイルã®çµ‚ã‚Šã§ã™ - - B6 - B6 + more than one document type definition + ドキュメントタイプã®å®šç¾©ãŒè¤‡æ•°ã‚ã‚Šã¾ã™ - - B7 - B7 + error occurred while parsing element + è¦ç´ ã®è§£æžä¸­ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—㟠- - B8 - B8 + tag mismatch + ã‚¿ã‚°ãŒä¸€è‡´ã—ã¾ã›ã‚“ - - B9 - B9 + error occurred while parsing content + コンテンツã®è§£æžä¸­ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—㟠- - B10 - B10 + unexpected character + 予期ã—ãªã„文字ã§ã™ - - C5E - C5E + invalid name for processing instruction + 処ç†ã®æŒ‡ç¤ºã«ç„¡åŠ¹ãªåå‰ã§ã™ - - DLE - DLE + version expected while reading the XML declaration + XML宣言を読ã¿è¾¼ã‚€ã«ã¯ãƒãƒ¼ã‚¸ãƒ§ãƒ³ãŒå¿…è¦ã§ã™ - - Executive - Exclusive + wrong value for standalone declaration + スタンドアロン宣言ã¨ã—ã¦æ­£ã—ããªã„値ã§ã™ - - Folio - Folio + encoding declaration or standalone declaration expected while reading the XML declaration + XML宣言を読ã¿è¾¼ã‚€ã«ã¯ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‡ã‚£ãƒ³ã‚°å®£è¨€ã‹ã‚¹ã‚¿ãƒ³ãƒ‰ã‚¢ãƒ­ãƒ¼ãƒ³å®£è¨€ãŒå¿…è¦ã§ã™ - - Ledger - Ledger + standalone declaration expected while reading the XML declaration + XML宣言を読ã¿è¾¼ã‚€ã«ã¯ã‚¹ã‚¿ãƒ³ãƒ‰ã‚¢ãƒ­ãƒ¼ãƒ³å®£è¨€ãŒå¿…è¦ã§ã™ - - Legal - リーガルサイズ + error occurred while parsing document type definition + ドキュメントタイプã®å®šç¾©ã‚’解æžä¸­ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—㟠- - Letter - レターサイズ + letter is expected + 文字ãŒå¿…è¦ã§ã™ - - Tabloid - タブロイドサイズ + error occurred while parsing comment + コメントã®è§£æžä¸­ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—㟠- - US Common #10 Envelope - US標準#10å°ç­’ + error occurred while parsing reference + å‚ç…§ã®è§£æžä¸­ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—㟠- - Custom - カスタム + internal general entity reference not allowed in DTD + 内部一般エンティティå‚ç…§ã¯DTDã§è¨±å¯ã•ã‚Œã¦ã„ã¾ã›ã‚“ - - - &Options >> - オプション(&O) >> + external parsed general entity reference not allowed in attribute value + 解æžã•ã‚ŒãŸå¤–部一般エンティティå‚ç…§ã¯å±žæ€§å€¤ã§è¨±ã•ã‚Œã¦ã„ã¾ã›ã‚“ - - &Print - å°åˆ·(&P) + external parsed general entity reference not allowed in DTD + 解æžã•ã‚ŒãŸå¤–部一般エンティティå‚ç…§ã¯DTDã§è¨±ã•ã‚Œã¦ã„ã¾ã›ã‚“ - - &Options << - オプション(&O) << + unparsed entity reference in wrong context + ä¸æ­£ãªæ–‡è„ˆã§è§£æžã•ã‚Œãªã„エンティティå‚ç…§ã§ã™ - - Print to File (PDF) - PDFファイルã«å‡ºåŠ› + recursive entities + å†å¸°çš„エンティティ - - Print to File (Postscript) - Postscriptファイルã«å‡ºåŠ› + error in the text declaration of an external entity + 外部エンティティã®ãƒ†ã‚­ã‚¹ãƒˆå®£è¨€ã«ã‚¨ãƒ©ãƒ¼ãŒã‚ã‚Šã¾ã™ + + + QXmlPatternistCLI - - Local file - ローカルファイル + Warning in %1, at line %2, column %3: %4 + %1 ã«ã¦è­¦å‘Š(%2 行目, %3 列): %4 - - Write %1 file - ファイル %1 ã«æ›¸ãè¾¼ã¿ã¾ã—㟠+ Warning in %1: %2 + %1 ã«ã¦è­¦å‘Š: %2 - - The 'From' value cannot be greater than the 'To' value. - QPrintPropertiesWidgetã«Fromã¨ToãŒã‚ã£ã¦ãれを指ã—ã¦ã„ã‚‹ - å°åˆ·é–‹å§‹ãƒšãƒ¼ã‚¸ç•ªå·ã¯ã€å°åˆ·çµ‚了ページ番å·ã‚ˆã‚Šå°ã•ããªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 + Unknown location + 無効ãªãƒ‘ス - - - QPrintPreviewDialog - - - Page Setup - ページã®è¨­å®š + Error %1 in %2, at line %3, column %4: %5 + %2 ã«ã¦ã‚¨ãƒ©ãƒ¼ %1 (%3 行目, %4 列): %5 - - %1% - %1% + Error %1 in %2: %3 + %2 ã«ã¦ã‚¨ãƒ©ãƒ¼ %1: %3 + + + QXmlStream - - Print Preview - å°åˆ·ã®ãƒ—レビュー + Extra content at end of document. + ドキュメントã®æœ«å°¾ã«ä½™è¨ˆãªã‚‚ã®ãŒã¤ã„ã¦ã„ã¾ã™ã€‚ - - Next page - 次ã®ãƒšãƒ¼ã‚¸ + Invalid entity value. + エンティティã®å€¤ãŒç„¡åŠ¹ã§ã™ã€‚ - - Previous page - å‰ã®ãƒšãƒ¼ã‚¸ + Invalid XML character. + 無効㪠XML 文字ã§ã™ã€‚ - - First page - 最åˆã®ãƒšãƒ¼ã‚¸ + Sequence ']]>' not allowed in content. + ã“ã®ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆã§ã¯ã€']]>' ã¯è¨±å¯ã•ã‚Œã¦ã„ã¾ã›ã‚“。 - - Last page - 最後ã®ãƒšãƒ¼ã‚¸ + Encountered incorrectly encoded content. + æ­£ã—ããªã„エンコードã®æ–‡è„ˆã«é­é‡ã—ã¾ã—ãŸã€‚ - - Fit width - å¹…ã‚’ã‚ã‚ã›ã‚‹ + Namespace prefix '%1' not declared + åå‰ç©ºé–“ã®ãƒ–リフィックス '%1' ã¯å®£è¨€ã•ã‚Œã¦ã„ã¾ã›ã‚“ - - Fit page - 高ã•ã‚’ã‚ã‚ã›ã‚‹ + Attribute redefined. + 属性ãŒå†åº¦æŒ‡å®šã•ã‚Œã¦ã„ã¾ã™ã€‚ - - Zoom in - 拡大 + Unexpected character '%1' in public id literal. + DTD宣言ã®éƒ¨åˆ† + 公開 ID 指定ã«ä½¿ç”¨ã§ããªã„文字 '%1' ãŒä½¿ç”¨ã•ã‚Œã¦ã„ã¾ã™ã€‚ - - Zoom out - ç¸®å° + Invalid XML version string. + 無効㪠XML ãƒãƒ¼ã‚¸ãƒ§ãƒ³æŒ‡å®šã§ã™ã€‚ - - Portrait - 縦 + Unsupported XML version. + ã“ã® XML ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。 - - Landscape - 横 + The standalone pseudo attribute must appear after the encoding. + &ddd; ã¯ã€ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‡ã‚£ãƒ³ã‚°ã‚’指定ã—ã¦ã„ãªã„ã¨ä½¿ãˆãªã„ã¨ã„ã†ã“ã¨ã‹ãªã€‚utf8ã ã¨ãŠã‚‚ã†ã‘ã©ã€‚ + 仮想属性指定ã¯ã€ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‡ã‚£ãƒ³ã‚°æŒ‡å®šã®å¾Œã«ã®ã¿ä½¿ç”¨ã§ãã¾ã™ã€‚ - - Show single page - 一枚ã®ãƒšãƒ¼ã‚¸ã‚’表示ã™ã‚‹ + %1 is an invalid encoding name. + %1 ã¯ç„¡åŠ¹ãªã‚¨ãƒ³ã‚³ãƒ¼ãƒ‡ã‚£ãƒ³ã‚°ã®åå‰ã§ã™ã€‚ - - Show facing pages - 見開ãã®ãƒšãƒ¼ã‚¸ã‚’表示ã™ã‚‹ + Encoding %1 is unsupported + エンコーディング '%1' ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“ - - Show overview of all pages - ã™ã¹ã¦ã®ãƒšãƒ¼ã‚¸ã‚’表示ã™ã‚‹ + Standalone accepts only yes or no. + standalone ã®æŒ‡å®šã¯ yes ã¾ãŸã¯ no ã®ã¿æŒ‡å®šã§ãã¾ã™ã€‚ - - Print - å°åˆ· + Invalid attribute in XML declaration. + XML 宣言ã«ç„¡åŠ¹ãªå±žæ€§ãŒã¤ã„ã¦ã„ã¾ã™ã€‚ - - Page setup - ページã®è¨­å®š + Premature end of document. + ドキュメントãŒé€”中ã§çµ‚ã‚ã£ã¦ã„ã¾ã™ã€‚ - Close - é–‰ã˜ã‚‹ + Invalid document. + 無効ãªãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã§ã™ã€‚ - - Export to PDF - PDFã«å‡ºåŠ› + Expected + 予期ã—ã¦ã„ãŸè¡¨ç¾ã¯ã€ - - Export to PostScript - Postscriptã«å‡ºåŠ› + , but got ' + ã§ã™ãŒã€å–å¾—ã—ãŸè¡¨ç¾ã¯ä»¥ä¸‹ã®ã‚‚ã®ã§ã—㟠' - - - QPrintPropertiesDialog - PPD Properties - å°åˆ·ãƒ—ロパティã®ãƒ€ã‚¤ã‚¢ãƒ­ã‚°ã®ãƒ—ロパティ + Unexpected ' + 予期ã—ã¦ã„ãªã‹ã£ãŸè¡¨ç¾ ' - Save - ä¿å­˜ + Expected character data. + 予期ã—ã¦ã„ãŸæ–‡å­—列。 - OK - OK + Recursive entity detected. + å†å¸°ã—ã¦ã„るエンティティを発見ã—ã¾ã—ãŸã€‚ - - - QPrintPropertiesWidget - - Form - æ›¸å¼ + Start tag expected. + 開始タグを予期ã—ã¦ã„ã¾ã—ãŸãŒã€ã¿ã¤ã‹ã‚Šã¾ã›ã‚“。 - - Page - ページ + NDATA in parameter entity declaration. + パラメータエンティティã®å®£è¨€ã«ãŠã„㦠NDATA ãŒã‚ã‚Šã¾ã™ã€‚ - - Advanced - 高度ãªè¨­å®š + XML declaration not at start of document. + XML 宣言ãŒãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã®å…ˆé ­ã«ã‚ã‚Šã¾ã›ã‚“。 - - - QPrintSettingsOutput - - Form - æ›¸å¼ + %1 is an invalid processing instruction name. + XMLã«ãã‚“ãªã®ã‚ã£ãŸã£ã‘? + %1 ã¯ç„¡åŠ¹ãªå‡¦ç†æŒ‡å®šã®åå‰ã§ã™ã€‚ - - Copies - å°åˆ·éƒ¨æ•° + Invalid processing instruction name. + 無効ãªå‡¦ç†å‘½ä»¤ã§ã™ã€‚ - - Print range - å°åˆ·ç¯„囲 + %1 is an invalid PUBLIC identifier. + %1 ã¯ã€å…¬é–‹ (PUBLIC) 識別å­ã¨ã—ã¦ç„¡åŠ¹ã§ã™ã€‚ - - Print all - ã™ã¹ã¦å°åˆ· + Illegal namespace declaration. + 無効ãªåå‰ç©ºé–“ã®æŒ‡å®šã§ã™ã€‚ - - Pages from - 先頭ã®ãƒšãƒ¼ã‚¸ + Invalid XML name. + 無効㪠XML åã§ã™ã€‚ - - to - 末尾ã®ãƒšãƒ¼ã‚¸ + Opening and ending tag mismatch. + 開始タグã¨ã€çµ‚了タグãŒãƒžãƒƒãƒã—ã¾ã›ã‚“。 - - Selection - é¸æŠžã—ãŸéƒ¨åˆ†ã‚’å°åˆ· + Reference to unparsed entity '%1'. + ã¾ã ãƒ‘ースã—ã¦ã„ãªã„エンティティ '%1' ã‚’å‚ç…§ã—ã¦ã„ã¾ã™ã€‚ - - Output Settings - 出力設定 + Entity '%1' not declared. + エンティティ '%1' ã¯å®£è¨€ã•ã‚Œã¦ã„ã¾ã›ã‚“。 - - Copies: - å°åˆ·éƒ¨æ•°: + Reference to external entity '%1' in attribute value. + 属性値ã¨ã—ã¦ã€å¤–部エンティティ '%1' ã‚’å†åº¦æŒ‡å®šã—ã¦ã„ã¾ã™ã€‚ - - Collate - ä¸åˆã„ + Invalid character reference. + 無効ãªæ–‡å­—ã¸ã®å‚ç…§ã§ã™ã€‚ + + + QtXmlPatterns - - Reverse - 逆順 + %1 is an unsupported encoding. + %1 ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ãªã„エンコーディングã§ã™ã€‚ - - Options - オプション + %1 contains octets which are disallowed in the requested encoding %2. + エンコーディング %2 ã§ã¯è¨±å¯ã•ã‚Œã¦ã„ãªã„オクテット㌠%1 ã«å«ã¾ã‚Œã¦ã„ã¾ã™ã€‚ - - Color Mode - 色 + The codepoint %1, occurring in %2 using encoding %3, is an invalid XML character. + %2 ã§ä½¿ç”¨ã•ã‚Œã¦ã„るエンコード %3 ã§ã¯ã€ã‚³ãƒ¼ãƒ‰ãƒã‚¤ãƒ³ãƒˆ %1 ã¯æœ‰åŠ¹ãª XML 表ç¾ã§ã¯ã‚ã‚Šã¾ã›ã‚“。 - - Color - カラー + Network timeout. + ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯æŽ¥ç¶šãŒã‚¿ã‚¤ãƒ ã‚¢ã‚¦ãƒˆã—ã¾ã—ãŸã€‚ - - Grayscale - グレースケール + Element %1 can't be serialized because it appears outside the document element. + エレメント %1 ã¯ã‚·ãƒªã‚¢ãƒ©ã‚¤ã‚ºã§ãã¾ã›ã‚“。ã“ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã®ç¯„囲を越ãˆã‚‹ã‚¨ãƒ¬ãƒ¡ãƒ³ãƒˆã‚’å«ã‚“ã§ã„ã¾ã™ã€‚ - - Duplex Printing - 両é¢å°åˆ· + Attribute %1 can't be serialized because it appears at the top level. + 属性 %1 ã¯ã‚·ãƒªã‚¢ãƒ©ã‚¤ã‚ºã§ãã¾ã›ã‚“。トップレベルã«ç¾ã‚Œã¦ã„ã‚‹ãŸã‚ã§ã™ã€‚ - - None - ãªã— + Year %1 is invalid because it begins with %2. + %1 å¹´ã¯ã‚€ã“ã†ã§ã™ã€‚%2 ã§å§‹ã¾ã£ã¦ã„ã¾ã™ã€‚ - - Long side - 長辺綴㘠+ Day %1 is outside the range %2..%3. + %1 æ—¥ã¯ã€æœ‰åŠ¹ãªç¯„囲 %2..%3 を逸脱ã—ã¦ã„ã¾ã™ã€‚ - - Short side - 短辺綴㘠+ Month %1 is outside the range %2..%3. + %1 月ã¯ã€æœ‰åŠ¹ãªç¯„囲 %2..%3 を逸脱ã—ã¦ã„ã¾ã™ã€‚ - - - QPrintWidget - - Form - æ›¸å¼ + Overflow: Can't represent date %1. + オーãƒãƒ¼ãƒ•ãƒ­ãƒ¼: 日付 %1 ã‚’å†ç¾ã§ãã¾ã›ã‚“。 - - Printer - プリンタ + Day %1 is invalid for month %2. + %2 月ã«ã¯ã€%1 æ—¥ã¯å­˜åœ¨ã—ã¾ã›ã‚“。 - - &Name: - åå‰(&N): + Time 24:%1:%2.%3 is invalid. Hour is 24, but minutes, seconds, and milliseconds are not all 0; + 24:%1:%2.%3 ã¯ç„¡åŠ¹ã§ã™ã€‚24時0分0秒ã®ã¿ä½¿ç”¨ã§ãã¾ã™ - - P&roperties - プロパティ(&r) + Time %1:%2:%3.%4 is invalid. + 時刻 %1時%2分%3.%4秒ã¯ç„¡åŠ¹ã§ã™ã€‚ - - Location: - 設置場所: + Overflow: Date can't be represented. + オーãƒãƒ¼ãƒ•ãƒ­ãƒ¼: 日付をå†ç¾ã§ãã¾ã›ã‚“。 - - Preview - プレビュー + At least one component must be present. + å¹´ã€æœˆã€æ—¥ã®ã†ã¡ã„ãšã‚Œã‹ã‚’指定ã—ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 - - Type: - タイプ: + At least one time component must appear after the %1-delimiter. + %1 ã®å¾Œã«ã¯ã€æ™‚刻を指定ã—ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 - - Output &file: - 出力ファイルå(&f): + %1 is not a valid value of type %2. + %1 ã¯ã€%2 ã®åž‹ã«å¯¾ã—ã¦æœ‰åŠ¹ãªå€¤ã§ã¯ã‚ã‚Šã¾ã›ã‚“。 - - ... - ... + When casting to %1 from %2, the source value cannot be %3. + %2 ã‹ã‚‰ %1 ã¸ã®åž‹å¤‰æ›ã«éš›ã—ã¦ã¯ã€å€¤ %3 ã¯æœ‰åŠ¹ãªå€¤ã§ã¯ã‚ã‚Šã¾ã›ã‚“。 - - - QProcess - - - Could not open input redirection for reading - 標準入力リダイレクトを読ã¿è¾¼ã¿ã®ãŸã‚ã«ã‚ªãƒ¼ãƒ—ンã™ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“ + Integer division (%1) by zero (%2) is undefined. + æ•´æ•°ã®é™¤ç®—ã«ãŠã„㦠%1 をゼロ (%2) ã§å‰²ã£ãŸçµæžœã¯å®šç¾©ã•ã‚Œã¦ã„ã¾ã›ã‚“。 - - - Could not open output redirection for writing - 標準出力リダイレクトを書ãè¾¼ã¿ã®ãŸã‚ã«ã‚ªãƒ¼ãƒ—ンã™ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“ + Division (%1) by zero (%2) is undefined. + 除算ã«ãŠã„㦠%1 をゼロ (%2) ã§å‰²ã£ãŸçµæžœã¯å®šç¾©ã•ã‚Œã¦ã„ã¾ã›ã‚“。 - - Resource error (fork failure): %1 - リソースエラー (fork ã«å¤±æ•—ã—ã¾ã—ãŸ): %1 + Modulus division (%1) by zero (%2) is undefined. + 剰余を求ã‚ã‚‹ã«éš›ã—ã€%1 をゼロ (%2) ã§é™¤ã—ãŸçµæžœã¯å®šç¾©ã•ã‚Œã¦ã„ã¾ã›ã‚“。 - - - - - - - - - - Process operation timed out - プロセス処ç†ãŒã‚¿ã‚¤ãƒ ã‚¢ã‚¦ãƒˆã—ã¾ã—㟠+ Dividing a value of type %1 by %2 (not-a-number) is not allowed. + åž‹ %1 ã‚’éžæ•° %2 (NaN) ã§é™¤ã™ã“ã¨ã¯ã§ãã¾ã›ã‚“。 - - - - - Error reading from process - プロセスã‹ã‚‰ã®èª­ã¿è¾¼ã¿ã«ãŠã„ã¦ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—㟠+ Dividing a value of type %1 by %2 or %3 (plus or minus zero) is not allowed. + åž‹ %1 ã‚’%2 ã¾ãŸã¯ %3 (æ­£ã¾ãŸã¯è² ã®ã‚¼ãƒ­) ã§é™¤ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。 - - - - Error writing to process - プロセスã¸ã®æ›¸ãè¾¼ã¿ã«ãŠã„ã¦ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—㟠+ Multiplication of a value of type %1 by %2 or %3 (plus or minus infinity) is not allowed. + åž‹ %1 ã‚’ %2 ã¾ãŸã¯ %3 (æ­£ã¾ãŸã¯è² ã®ã‚¼ãƒ­)ã§ä¹—ãšã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。 - - Process crashed - プロセスãŒã‚¯ãƒ©ãƒƒã‚·ãƒ¥ã—ã¾ã—㟠+ A value of type %1 cannot have an Effective Boolean Value. + åž‹ %1 ã¯æœ‰åŠ¹ãªè«–ç†åž‹(bool)ã§ã¯ã‚ã‚Šã¾ã›ã‚“。 - - No program defined - プログラムåãŒæŒ‡å®šã•ã‚Œã¦ã„ã¾ã›ã‚“ + Effective Boolean Value cannot be calculated for a sequence containing two or more atomic values. + è«–ç†åž‹ã¯ã€è«–ç†åž‹ä»¥å¤–ã®è¤‡æ•°ã®å€¤ã‹ã‚‰ãªã‚‹è¨ˆç®—ã«ã‚ˆã£ã¦æ±‚ã‚ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。 - - Process failed to start - プロセスã®ã‚¹ã‚¿ãƒ¼ãƒˆã«å¤±æ•—ã—ã¾ã—㟠+ Value %1 of type %2 exceeds maximum (%3). + åž‹ %2 ã®å€¤ %1 ã¯ã€ä¸Šé™ (%3) を越ãˆã¦ã„ã¾ã™ã€‚ - - - QProgressDialog - - Cancel - キャンセル + Value %1 of type %2 is below minimum (%3). + åž‹ %2 ã®å€¤ %1 ã¯ã€ä¸‹é™ (%3) を越ãˆã¦ã„ã¾ã™ã€‚ - - - QPushButton - - Open - オープン + A value of type %1 must contain an even number of digits. The value %2 does not. + åž‹ %1 ã®å€¤ã¯å¶æ•°å€‹ã®å進数文字を必è¦ã¨ã—ã¾ã™ã€‚ã—ã‹ã—ã€%2 ã¯ãã†ã§ã¯ã‚ã‚Šã¾ã›ã‚“。 - - - QRadioButton - - Check - é¸æŠž + %1 is not valid as a value of type %2. + åž‹ %2 ã«å¯¾ã—ã¦ã€å€¤ %1 ã¯æœ‰åŠ¹ã§ã¯ã‚ã‚Šã¾ã›ã‚“。 - - - QRegExp - - no error occurred - エラーã¯ç™ºç”Ÿã—ã¾ã›ã‚“ã§ã—㟠+ Ambiguous rule match. + 曖昧ãªãƒ«ãƒ¼ãƒ«ã«ãƒžãƒƒãƒã—ã¾ã—ãŸã€‚ - - disabled feature used - 無効ãªæ©Ÿèƒ½ãŒä½¿ç”¨ã•ã‚Œã¾ã—㟠+ Operator %1 cannot be used on type %2. + åž‹ %2 ã«å¯¾ã—ã¦ã€ã‚ªãƒšãƒ¬ãƒ¼ã‚¿ %1 ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。 - - bad char class syntax - ä¸æ­£ãªcharクラス構文 + Operator %1 cannot be used on atomic values of type %2 and %3. + アトミックãªåž‹ %2 㨠%3 ã«å¯¾ã—ã¦ã€ã‚ªãƒšãƒ¬ãƒ¼ã‚¿ %1 ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。 - - bad lookahead syntax - ä¸æ­£ãªlookahead構文 + The namespace URI in the name for a computed attribute cannot be %1. + çµåˆã•ã‚ŒãŸå±žæ€§ã«å¯¾ã™ã‚‹åå‰ç©ºé–“ã®URIã¨ã—ã¦ã€%1 を使用ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。 - - bad repetition syntax - ä¸æ­£ãªrepetition構文 + The name for a computed attribute cannot have the namespace URI %1 with the local name %2. + çµåˆã•ã‚ŒãŸå±žæ€§ã®åå‰ç©ºé–“URI %1 ã¯ã€ãƒ­ãƒ¼ã‚«ãƒ«ãªåå‰ã§ã‚ã‚‹ %2 ã¨ä½µç”¨ã§ãã¾ã›ã‚“。 - - invalid octal value - 無効ãª8進値 + Type error in cast, expected %1, received %2. + 型変æ›æ™‚ã®ã‚¨ãƒ©ãƒ¼ã§ã™ã€‚望んã§ã„㟠%1 ã§ã¯ãªãã€%2 ã«ãªã‚Šã¾ã—ãŸã€‚ - - missing left delim - å·¦ã®åŒºåˆ‡ã‚Šæ–‡å­—ãŒã‚ã‚Šã¾ã›ã‚“ + When casting to %1 or types derived from it, the source value must be of the same type, or it must be a string literal. Type %2 is not allowed. + %1 ã¾ãŸã¯ãれを継承ã—ã¦ã„ã‚‹åž‹ã¸ã®åž‹å¤‰æ›ã«ãŠã„ã¦ã¯ã€å…ƒã®å€¤ã®åž‹ã¯åŒã˜åž‹ã‹ã€ãƒªãƒ†ãƒ©ãƒ«ãªæ–‡å­—列ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚åž‹ %2 ã¯è¨±å¯ã•ã‚Œã¦ã„ã¾ã›ã‚“。 - - unexpected end - 予期ã—ãªã„末尾ã§ã™ + A comment cannot contain %1 + コメント㌠%1 ã‚’å«ã‚€ã“ã¨ã¯ã§ãã¾ã›ã‚“ - - met internal limit - 内部制é™ã‚’満ãŸã—ã¾ã—㟠+ A comment cannot end with a %1. + コメント㯠%1 ã§çµ‚了ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。 - - - QSQLite2Driver - - Error to open database - データベースã®ã‚ªãƒ¼ãƒ—ンã§ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—㟠+ In a namespace constructor, the value for a namespace cannot be an empty string. + åå‰ç©ºé–“ã®ã‚¹ãƒ³ãƒˆãƒ©ã‚¯ãƒˆã«ãŠã„ã¦ã€ç©ºç™½ã®æ–‡å­—列をåå‰ç©ºé–“ã®å€¤ã¨ã—ã¦ä½¿ç”¨ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。 - - Unable to begin transaction - トランザクションを開始ã§ãã¾ã›ã‚“ + The prefix must be a valid %1, which %2 is not. + プレフィックス㯠%1 ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。%2 ã¯ç„¡åŠ¹ã§ã™ã€‚ - - Unable to commit transaction - トランザクションをコミットã§ãã¾ã›ã‚“ + The prefix %1 cannot be bound. + プレフィックス %1 ã¯ãƒã‚¦ãƒ³ãƒ‰ã§ãã¾ã›ã‚“。 - - Unable to rollback Transaction - トランザクションをロールãƒãƒƒã‚¯ã§ãã¾ã›ã‚“ + Only the prefix %1 can be bound to %2 and vice versa. + プレフィックス %1 ã¯ã€%2 ã«ã®ã¿ãƒã‚¦ãƒ³ãƒ‰ã§ãã¾ã™ã€‚逆もåŒã˜ã§ã™ã€‚ - - - QSQLite2Result - - Unable to fetch results - 実行çµæžœã‚’フェッãƒã§ãã¾ã›ã‚“ + An attribute node cannot be a child of a document node. Therefore, the attribute %1 is out of place. + ドキュメントノードã®å­ã¨ã—ã¦å±žæ€§ãƒŽãƒ¼ãƒ‰ã‚’指定ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。属性 %1 ã¯èª¤ã£ãŸå ´æ‰€ã«ã‚ã‚Šã¾ã™ã€‚ - - Unable to execute statement - ステートメントを実行ã§ãã¾ã›ã‚“ + A library module cannot be evaluated directly. It must be imported from a main module. + ライブラリモジュールを直接評価ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。メインモジュールã‹ã‚‰ã‚¤ãƒ³ãƒãƒ¼ãƒˆã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ - - - QSQLiteDriver - - Error opening database - データベースã®ã‚ªãƒ¼ãƒ—ンã§ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—㟠+ No template by name %1 exists. + テンプレートå %1 ã¯å­˜åœ¨ã—ã¾ã›ã‚“。 - - Error closing database - データベースã®ã‚¯ãƒ­ãƒ¼ã‚ºã§ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—㟠+ A value of type %1 cannot be a predicate. A predicate must have either a numeric type or an Effective Boolean Value type. + åž‹ %1 ã¯è¿°éƒ¨ã¨ã—ã¦ä½¿ç”¨ã§ãã¾ã›ã‚“。数値型ã‹ã€è«–ç†åž‹ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ - - Unable to begin transaction - トランザクションを開始ã§ãã¾ã›ã‚“ + A positional predicate must evaluate to a single numeric value. + 述部ã¯è©•ä¾¡ã•ã‚ŒãŸã¨ãã€å˜ä¸€ã®æ•°å€¤ã«ãªã‚‹ã‚ˆã†ã«ã—ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 - - Unable to commit transaction - トランザクションをコミットã§ãã¾ã›ã‚“ + The target name in a processing instruction cannot be %1 in any combination of upper and lower case. Therefore, %2 is invalid. + ターゲットã¨ã—ã¦ã„ã‚‹åå‰ã¯ã€%1 ã§ã‚ã£ã¦ã¯ãªã‚Šã¾ã›ã‚“。%2 ã¯ç„¡åŠ¹ã§ã™ã€‚ - Unable to roll back transaction - トランザクションをロールãƒãƒƒã‚¯ã§ãã¾ã›ã‚“ + %1 is not a valid target name in a processing instruction. It must be a %2 value, e.g. %3. + %1 ã¯ã‚¿ãƒ¼ã‚²ãƒƒãƒˆã¨ã—ã¦ç„¡åŠ¹ã§ã™ã€‚%2 ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚例ãˆã° "%3" ã®ã‚ˆã†ã«ã§ã™ã€‚ - - Unable to rollback transaction - トランザクションをロールãƒãƒƒã‚¯ã§ãã¾ã›ã‚“ + The last step in a path must contain either nodes or atomic values. It cannot be a mixture between the two. + ãƒã‚¹ã®æœ«ç«¯ã§ã‚るリーフã¯ã€å˜ä¸€ã®ãƒŽãƒ¼ãƒ‰ã‹ã‚¢ãƒˆãƒŸãƒƒã‚¯ãªå€¤ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚複数ã®åž‹ã®çµ„ã¿åˆã‚ã›ã§ã‚ã£ã¦ã¯ã„ã‘ã¾ã›ã‚“。 - - - QSQLiteResult - - - - Unable to fetch row - レコードをフェッãƒã§ãã¾ã›ã‚“ + The data of a processing instruction cannot contain the string %1 + 処ç†ä¸­ã®ãƒ‡ãƒ¼ã‚¿ã¯ã€ä»¥ä¸‹ã®æ–‡å­—列をå«ã‚“ã§ã„ã¦ã¯ãªã‚Šã¾ã›ã‚“: %1 - - Unable to execute statement - ステートメントを実行ã§ãã¾ã›ã‚“ + No namespace binding exists for the prefix %1 + プレフィックス %1 ã«ãƒã‚¤ãƒ³ãƒ‰ã•ã‚ŒãŸãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ãŒã‚ã‚Šã¾ã›ã‚“ - - Unable to reset statement - ステートメントをリセットã§ãã¾ã›ã‚“ + No namespace binding exists for the prefix %1 in %2 + %2 ã«ãŠã‘るプレフィックス %1 ã«ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã•ã‚ŒãŸãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ãŒå­˜åœ¨ã—ã¾ã›ã‚“ - - Unable to bind parameters - パラメータをãƒã‚¤ãƒ³ãƒ‰ã§ãã¾ã›ã‚“ + %1 is an invalid %2 + åž‹ %2 ã«å¯¾ã—ã€å€¤ %1 ã¯ç„¡åŠ¹ã§ã™ - - Parameter count mismatch - パラメータã®æ•°ãŒåˆã£ã¦ã„ã¾ã›ã‚“ + The parameter %1 is passed, but no corresponding %2 exists. + パラメータ %1 を処ç†ã—ã¾ã—ãŸã€‚ã—ã‹ã—ã€å¯¾å¿œã™ã‚‹ %2 ãŒå­˜åœ¨ã—ã¾ã›ã‚“。 - - No query - クェリーãŒã‚ã‚Šã¾ã›ã‚“ + The parameter %1 is required, but no corresponding %2 is supplied. + パメータ %1 ãŒå¿…è¦ã§ã™ã€‚ã—ã‹ã—ã€å¯¾å¿œã™ã‚‹ %2 ãŒã‚ã‚Šã¾ã›ã‚“。 + + + %1 takes at most %n argument(s). %2 is therefore invalid. + + %1 ã¯ã€æœ€å¤§ã§ %n 個ã®å¼•æ•°ã‚’ã¨ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚%2 ã¯ç„¡åŠ¹ã§ã™ã€‚ + + + + %1 requires at least %n argument(s). %2 is therefore invalid. + + %1 ã¯ã€å°‘ãã¨ã‚‚ %n 個ã®å¼•æ•°ã‚’å¿…è¦ã¨ã—ã¾ã™ã€‚%2 ã¯ç„¡åŠ¹ã§ã™ã€‚ + - - - QScrollBar - - Scroll here - ã“ã“ã«ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ« + The first argument to %1 cannot be of type %2. It must be a numeric type, xs:yearMonthDuration or xs:dayTimeDuration. + %1 ã¸ã®æœ€åˆã®å¼•æ•°ã¯ã€åž‹ %2 ã§ã‚ã£ã¦ã¯ãªã‚Šã¾ã›ã‚“。数値型ã€xs:yerMonthDurationã€xs:dayTimeDurationã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ - - Left edge - 左端 + The first argument to %1 cannot be of type %2. It must be of type %3, %4, or %5. + %1 ã¸ã®æœ€åˆã®å¼•æ•°ã¯ã€åž‹ %2 ã§ã‚ã£ã¦ã¯ãªã‚Šã¾ã›ã‚“。%3, %4, %5 ã®ã„ãšã‚Œã‹ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ - - Top - 上端 + The second argument to %1 cannot be of type %2. It must be of type %3, %4, or %5. + %1 ã¸ã®äºŒã¤ç›®ã®å¼•æ•°ã¯ã€åž‹ %2 ã§ã‚ã£ã¦ã¯ãªã‚Šã¾ã›ã‚“。%3, %4, %5 ã®ã„ãšã‚Œã‹ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ - - Right edge - å³ç«¯ + %1 is not a valid XML 1.0 character. + %1 㯠XML 1.0 ã«ãŠã„ã¦æœ‰åŠ¹ãªæ–‡å­—ã§ã¯ã‚ã‚Šã¾ã›ã‚“。 - - Bottom - 下端 + The root node of the second argument to function %1 must be a document node. %2 is not a document node. + %1 ã¸ã®äºŒã¤ç›®ã®å¼•æ•°ã®ãƒ«ãƒ¼ãƒˆãƒŽãƒ¼ãƒ‰ã¯ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆãƒŽãƒ¼ãƒ‰ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。ã—ã‹ã—ã€%2 ã¯ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆãƒŽãƒ¼ãƒ‰ã§ã¯ã‚ã‚Šã¾ã›ã‚“。 - - Page left - 1ページ左ã¸ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ« + If both values have zone offsets, they must have the same zone offset. %1 and %2 are not the same. + ã‚‚ã—二ã¤ã®å€¤ãŒã‚¾ãƒ¼ãƒ³ã‚ªãƒ•ã‚»ãƒƒãƒˆã‚’ã‚‚ã¤å ´åˆã€ä¸¡è€…ã¯åŒã˜ã‚¾ãƒ¼ãƒ³ã‚ªãƒ•ã‚»ãƒƒãƒˆã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。%1 㨠%2 ã¯åŒä¸€ã§ã¯ã‚ã‚Šã¾ã›ã‚“。 - - - Page up - 1ページ戻る + %1 was called. + %1 ãŒå‘¼ã°ã‚Œã¾ã—ãŸã€‚ - - Page right - 1ページå³ã¸ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ« + %1 must be followed by %2 or %3, not at the end of the replacement string. + %1 ã®å¾Œã«ã¯ã€%2 ã‹ %3 ãŒç¶šã‹ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 - - - Page down - 1ページ進む + In the replacement string, %1 must be followed by at least one digit when not escaped. + ç½®æ›æ“作ã«ãŠã„ã¦ã€%1 ã«ã¯å°‘ãã¨ã‚‚一文字以上ã®æ•°å€¤ãŒç¶šãå¿…è¦ãŒã‚ã‚Šã¾ã™(エスケープã•ã‚Œã¦ã„ã‚‹å ´åˆã‚’除ã)。 - - Scroll left - å·¦ã¸ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ« + In the replacement string, %1 can only be used to escape itself or %2, not %3 + ç½®æ›æ“作ã«ãŠã„ã¦ã€%1 ã¯ãれ自身ã¾ãŸã¯ %2 をエスケープã™ã‚‹ç‚ºã«ã®ã¿ä½¿ç”¨ã§ãã¾ã™ã€‚%3 ã«å¯¾ã—ã¦ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“ - - Scroll up - 上ã¸ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ« + %1 matches newline characters + %1 ã¯æ”¹è¡Œæ–‡å­—(列)ã«ãƒžãƒƒãƒã—ã¾ã—㟠- - Scroll right - å³ã¸ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ« + %1 and %2 match the start and end of a line. + %1 㨠%2 ã¯ã€è¡Œã®å…ˆé ­ã¨æœ«å°¾ã«ãƒžãƒƒãƒã—ã¾ã—ãŸã€‚ - - Scroll down - 下ã¸ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ« + Matches are case insensitive + マッãƒã¯å¤§æ–‡å­—å°æ–‡å­—を区別ã—ã¾ã›ã‚“ - - Line up - 1行上㸠+ Whitespace characters are removed, except when they appear in character classes + 空白文字ã¯å‰Šé™¤ã•ã‚Œã¾ã—ãŸã€‚ãŸã ã—ã€ã‚­ãƒ£ãƒ©ã‚¯ã‚¿ãƒ¼ã‚¯ãƒ©ã‚¹ã«å±žã™ã‚‹ã‚‚ã®ã¯é™¤ãã¾ã™ - - Position - ä½ç½® + %1 is an invalid regular expression pattern: %2 + %1 ã¯æœ‰åŠ¹ãªæ­£è¦è¡¨ç¾ã§ã¯ã‚ã‚Šã¾ã›ã‚“。: %2 - - Line down - 1行下㸠+ %1 is an invalid flag for regular expressions. Valid flags are: + %1 ã¯æ­£è¦è¡¨ç¾ã«ãŠã„ã¦ç„¡åŠ¹ãªãƒ•ãƒ©ã‚°ã§ã™ã€‚使用å¯èƒ½ãªãƒ•ãƒ©ã‚°ã¯æ¬¡ã®é€šã‚Šã§ã™: - - - QSharedMemory - - %1: unable to set key on lock - 共有メモリ関連 - %1: ロックã™ã‚‹ãŸã‚ã®ã‚­ãƒ¼ã‚’設定ã§ãã¾ã›ã‚“ + If the first argument is the empty sequence or a zero-length string (no namespace), a prefix cannot be specified. Prefix %1 was specified. + ã‚‚ã—ã€æœ€åˆã®å¼•æ•°ãŒç©ºç™½ã‹ã‚‰ãªã‚‹æ–‡å­—列ã‹ã€é•·ã•ãŒ0 (åå‰ç©ºé–“ã‚’ã¨ã‚‚ãªã‚ãªã„)ã§ã‚ã‚‹å ´åˆã€ãƒ—レフィックスを指定ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。ã—ã‹ã—ã€ãƒ—レフィックスã¨ã—㦠%1 ãŒæŒ‡å®šã•ã‚Œã¦ã„ã¾ã™ã€‚ - - %1: create size is less then 0 - %1: 0よりå°ã•ã„サイズã®å…±æœ‰ãƒ¡ãƒ¢ãƒªã¯ä½œæˆã§ãã¾ã›ã‚“ + It will not be possible to retrieve %1. + %1 ã‚’å–å¾—ã™ã‚‹ã“ã¨ã¯ã§ããªã„ã‹ã‚‚ã—ã‚Œã¾ã›ã‚“。 - - - %1: unable to lock - %1: ロックã§ãã¾ã›ã‚“ + The default collection is undefined + デフォルトã®ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ãŒå®šç¾©ã•ã‚Œã¦ã„ã¾ã›ã‚“ - - %1: unable to unlock - %1: アンロックã§ãã¾ã›ã‚“ + %1 cannot be retrieved + %1 ã‚’å–å¾—ã§ãã¾ã›ã‚“ - - - %1: permission denied - %1: 許å¯ã•ã‚Œã¦ã„ã¾ã›ã‚“ + The normalization form %1 is unsupported. The supported forms are %2, %3, %4, and %5, and none, i.e. the empty string (no normalization). + æ­£è¦åŒ–ã•ã‚ŒãŸè¡¨ç¾ %1 ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。サãƒãƒ¼ãƒˆã•ã‚Œã¦ã„る表ç¾ã¯ã€%2, %3, %4, %5 ã®ã¿ã§ã™ã€‚ - - - %1: already exists - %1: æ—¢ã«å­˜åœ¨ã—ã¾ã™ + A zone offset must be in the range %1..%2 inclusive. %3 is out of range. + ゾーンオフセットã¯ã€%1 ã‹ã‚‰ %2 ã®ç¯„囲ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™(境界をå«ã‚€)。%3 ã¯ç¯„囲外ã§ã™ã€‚ - - - %1: doesn't exists - %1: 存在ã—ã¾ã›ã‚“ + %1 is not a whole number of minutes. + %1 ã¯ã€åˆ†ã‚’ç¾ã™å€¤ã§ã¯ã‚ã‚Šã¾ã›ã‚“。 - - - %1: out of resources - %1: リソースä¸è¶³ã§ã™ + The URI cannot have a fragment + ã“ã® URI ã¯ãƒ•ãƒ©ã‚°ãƒ¡ãƒ³ãƒˆã‚’ã‚‚ã¤ã“ã¨ã¯ã§ãã¾ã›ã‚“ - - - %1: unknown error %2 - %1: 未知ã®ã‚¨ãƒ©ãƒ¼ %2 + Required cardinality is %1; got cardinality %2. + カーディナリティ %1 ãŒå¿…è¦ã§ã™ã€‚%2 ã§ã¯ã‚ã‚Šã¾ã›ã‚“。 - - %1: key is empty - %1: キーãŒç©ºã§ã™ + The item %1 did not match the required type %2. + アイテム %1 ã¯ã€è¦æ±‚ã•ã‚ŒãŸåž‹ %2 ã«ãƒžãƒƒãƒã—ã¾ã›ã‚“。 - - %1: unix key file doesn't exists - ? - %1: UNIX key file ãŒå­˜åœ¨ã—ã¾ã›ã‚“ + The variable %1 is unused + 値 %1 ã¯ä½¿ç”¨ã•ã‚Œã¾ã›ã‚“ã§ã—㟠- - %1: ftok failed - %1: fork ã«å¤±æ•—ã—ã¾ã—㟠+ W3C XML Schema identity constraint selector + - - - %1: unable to make key - %1: キーを作æˆã§ãã¾ã›ã‚“ + W3C XML Schema identity constraint field + - - %1: system-imposed size restrictions - EINVAL - %1: 指定ã•ã‚ŒãŸã‚µã‚¤ã‚ºã¯ã‚·ã‚¹ãƒ†ãƒ ã«ã‚ˆã‚Šæ‹’å¦ã•ã‚Œã¾ã—㟠+ A construct was encountered which is disallowed in the current language(%1). + - - %1: not attached - %1: アタッãƒã—ã¦ã„ã¾ã›ã‚“ + %1 is an unknown schema type. + %1 ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ãªã„スキーマã®ã‚¿ã‚¤ãƒ—ã§ã™ã€‚ - - %1: invalid size - %1: 無効ãªã‚µã‚¤ã‚ºã§ã™ + A template with name %1 has already been declared. + テンプレートå '%1' ã¯ã€æ—¢ã«å®£è¨€ã•ã‚Œã¦ã„ã¾ã™ã€‚ - - %1: key error - safekey.isEmpty()==true - %1: キーã‹ã‚ã‚Šã¾ã›ã‚“ + %1 is not a valid numeric literal. + %1 ã¯æ•°å€¤ãƒªãƒ†ãƒ©ãƒ«ã¨ã—ã¦ç„¡åŠ¹ã§ã™ã€‚ - - %1: size query failed - %1: サイズã®ã‚¯ã‚§ãƒªãƒ¼ã«å¤±æ•—ã—ã¾ã—㟠+ Only one %1 declaration can occur in the query prolog. + クエリーã®ãƒ—ロローグã§ã¯ã€%1 ã¯ä¸€å›žã®ã¿å®£è¨€ã§ãã¾ã™ã€‚ - - - QShortcut - - Space - Space + The initialization of variable %1 depends on itself + 値 %1 ã®åˆæœŸåŒ–ã¯ã€ãれ自身ã«ä¾å­˜ã—ã¦ã„ã¾ã™ - - Esc - Esc + No variable with name %1 exists + 変数 %1 ã¯å­˜åœ¨ã—ã¾ã›ã‚“ - - Tab - Tab + Version %1 is not supported. The supported XQuery version is 1.0. + ãƒãƒ¼ã‚¸ãƒ§ãƒ³ %1 ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。XQuery ãƒãƒ¼ã‚¸ãƒ§ãƒ³ 1.0 ã®ã¿ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã™ã€‚ - - Backtab - Backtab + The encoding %1 is invalid. It must contain Latin characters only, must not contain whitespace, and must match the regular expression %2. + エンコーディング '%1' ã¯ç„¡åŠ¹ã§ã™ã€‚ラテン文字 (空白を除ã) ã‹ã‚‰ãªã‚‹ã‚‚ã®ã§ã€æ­£è¦è¡¨ç¾ '%2' ã«ãƒžãƒƒãƒã™ã‚‹ã‚‚ã®ã®ã¿ä½¿ç”¨ã§ãã¾ã™ã€‚ - - Backspace - Backspace + No function with signature %1 is available + ã‚·ã‚°ãƒãƒãƒ£ %1 ã‚’ã‚‚ã¤é–¢æ•°ãŒã¿ã¤ã‹ã‚Šã¾ã›ã‚“ - - Return - Return + A default namespace declaration must occur before function, variable, and option declarations. + 標準ã®åå‰ç©ºé–“ã®å®£è¨€ã¯ã€é–¢æ•°ã€å¤‰æ•°ã€ã‚ªãƒ—ションã®å®£è¨€ã®å‰ã«ã—ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 - - Enter - Enter + Namespace declarations must occur before function, variable, and option declarations. + åå‰ç©ºé–“ã®å®£è¨€ã¯ã€é–¢æ•°ã€å¤‰æ•°ã€ã‚ªãƒ—ションã®å®£è¨€ã®å‰ã«ã—ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 - - Ins - Ins + Module imports must occur before function, variable, and option declarations. + モジュールã®ã‚¤ãƒ³ãƒãƒ¼ãƒˆã¯ã€é–¢æ•°ã€å¤‰æ•°ã€ã‚ªãƒ—ションã®å®£è¨€ã®å‰ã«ã—ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 - - Del - Del + The keyword %1 cannot occur with any other mode name. + キーワード %1 ã¯ã€ä»–ã®åã‚’ã¨ã‚‚ãªã£ã¦ä½¿ç”¨ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。 - - Pause - Pause + The value of attribute %1 must be of type %2, which %3 isn't. + 属性 '%1' ã®å€¤ã¨ã—㦠'%3' ãŒæŒ‡å®šã•ã‚Œã¾ã—ãŸãŒã€åž‹ '%2' ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 - - Print - Print + It is not possible to redeclare prefix %1. + プレフィックス '%1' ã‚’å†å®šç¾©ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。 - - SysReq - SysReq + The prefix %1 cannot be bound. By default, it is already bound to the namespace %2. + プレフィックス '%1' ã¯ãƒã‚¦ãƒ³ãƒ‰ã§ãã¾ã›ã‚“。デフォルトã§ã¯ã€ãã‚Œã¯æ—¢ã«åå‰ç©ºé–“ '%2' ã«ãƒã‚¦ãƒ³ãƒ‰ã•ã‚Œã¦ã„ã¾ã™ã€‚ - - Home - Home + Prefix %1 is already declared in the prolog. + プロローグ部ã«ãŠã„ã¦ã€ãƒ—レフィックス '%1' ã¯ã™ã§ã«å®£è¨€ã•ã‚Œã¦ã„ã¾ã™ã€‚ - - End - End + The name of an option must have a prefix. There is no default namespace for options. + オプションã®åå‰ã¯ãƒ—レフィックスをもãŸãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。ã“ã®ã‚ªãƒ—ションã«å¯¾ã™ã‚‹ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®åå‰ç©ºé–“ã¯å­˜åœ¨ã—ã¾ã›ã‚“。 - - Left - → + The Schema Import feature is not supported, and therefore %1 declarations cannot occur. + ã“ã®ã‚¹ã‚­ãƒ¼ãƒžã®ã‚¤ãƒ³ãƒãƒ¼ãƒˆæ©Ÿèƒ½ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。ã¾ãŸã€'%1' 宣言も使用ã§ãã¾ã›ã‚“。 - - Up - ↑ + The target namespace of a %1 cannot be empty. + åå‰ç©ºé–“ '%1' ã¯ã€ç©ºã§ã‚ã£ã¦ã¯ãªã‚Šã¾ã›ã‚“。 - - Right - ↠+ The module import feature is not supported + モジュールインãƒãƒ¼ãƒˆã®æ©Ÿèƒ½ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“ - - Down - ↓ + A variable with name %1 has already been declared. + åå‰ '%1' ã®å¤‰æ•°ã¯ã€ã™ã§ã«å®£è¨€ã•ã‚Œã¦ã„ã¾ã™ã€‚ - - PgUp - PgUp + No value is available for the external variable with name %1. + 外部変数 '%1' ã®å€¤ãŒã¿ã¤ã‹ã‚Šã¾ã›ã‚“。 - - PgDown - PgDown + A stylesheet function must have a prefixed name. + スタイルシート関数ã¯ã€ãƒ—レフィックスåã‚’æŒãŸãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 - - CapsLock - CapsLock + The namespace for a user defined function cannot be empty (try the predefined prefix %1 which exists for cases like this) + ユーザ定義ã®é–¢æ•°ã®åå‰ç©ºé–“ã¯ã€ç©ºã§ã‚ã£ã¦ã¯ãªã‚Šã¾ã›ã‚“。(ã™ã§ã«å®šç¾©ã•ã‚Œã¦ã„るプレフィックス '%1' ãŒä½¿ç”¨ã§ãã¾ã™) - - NumLock - NumLock + The namespace %1 is reserved; therefore user defined functions may not use it. Try the predefined prefix %2, which exists for these cases. + åå‰ç©ºé–“ '%1' ã¯äºˆç´„済ã§ã™ã€‚ユーザ定義ã®é–¢æ•°ã§ã¯ä½¿ç”¨ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。プレフィックス '%2' ãŒä½¿ç”¨ã§ãã¾ã™ã€‚ - - ScrollLock - ScrollLock + The namespace of a user defined function in a library module must be equivalent to the module namespace. In other words, it should be %1 instead of %2 + ライブラリモジュールã§ä½¿ç”¨ã•ã‚Œã¦ã„ã‚‹åå‰ç©ºé–“ã¯ã€ãƒ¢ã‚¸ãƒ¥ãƒ¼ãƒ«ã®åå‰ç©ºé–“ã¨åŒä¸€ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。ã¤ã¾ã‚Šã€'%2' ã§ã¯ãªãã€'%1' ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“ - - Menu - メニュー + A function already exists with the signature %1. + ã‚·ã‚°ãƒãƒãƒ£ãƒ¼ '%1' ã®é–¢æ•°ã¯ã™ã§ã«å­˜åœ¨ã—ã¦ã„ã¾ã™ã€‚ - - Help - ヘルプ + No external functions are supported. All supported functions can be used directly, without first declaring them as external + 外部関数ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。ã™ã¹ã¦ã®ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„る関数ã¯ã€å¤–部宣言をã™ã‚‹ã“ã¨ãªãã€ç›´æŽ¥ä½¿ç”¨ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ - - Back - 戻る + An argument with name %1 has already been declared. Every argument name must be unique. + 引数å '%1' ã¯æ—¢ã«å®£è¨€ã•ã‚Œã¦ã„ã¾ã™ã€‚ã™ã¹ã¦ã®å¼•æ•°åã¯ãƒ¦ãƒ‹ãƒ¼ã‚¯ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ - - Forward - 進む + When function %1 is used for matching inside a pattern, the argument must be a variable reference or a string literal. + パターン一致ã®å†…å´ã§é–¢æ•° '%1' を使用ã™ã‚‹å ´åˆã€å¼•æ•°ã¯ãƒªãƒ†ãƒ©ãƒ«ãªæ–‡å­—列をå‚ç…§ã™ã‚‹å€¤ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 - - Stop - åœæ­¢ + In an XSL-T pattern, the first argument to function %1 must be a string literal, when used for matching. + XSL-T パターンマッãƒãƒ³ã‚°ã«ãŠã„ã¦ã€é–¢æ•° '%1' ã®æœ€åˆã®å¼•æ•°ã¯ã€ãƒªãƒ†ãƒ©ãƒ«ãªæ–‡å­—列ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 - - Refresh - æ›´æ–°é–“éš” + In an XSL-T pattern, the first argument to function %1 must be a literal or a variable reference, when used for matching. + XSL-T パターンマッãƒãƒ³ã‚°ã«ãŠã„ã¦ã€é–¢æ•° '%1' ã¸ã®æœ€åˆã®å¼•æ•°ã¯ã€ãƒªãƒ†ãƒ©ãƒ«ã‹å¤‰æ•°ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 - - Volume Down - 音é‡ã‚’下ã’ã‚‹ + In an XSL-T pattern, function %1 cannot have a third argument. + XSL-T パターンã«ãŠã„ã¦ã€é–¢æ•° '%1' ã¯ä¸‰ã¤ã®å¼•æ•°ã‚’ã‚‚ã¤ã“ã¨ã¯ã§ãã¾ã›ã‚“。 - - Volume Mute - 消音 + In an XSL-T pattern, only function %1 and %2, not %3, can be used for matching. + XSL-T パターンマッãƒãƒ³ã‚°ã«ãŠã„ã¦ã€é–¢æ•° '%1' 㨠'%2' ã®ã¿ä½¿ç”¨ã§ãã¾ã™ã€‚'%3' ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。 - - Volume Up - 音é‡ã‚’上ã’ã‚‹ + In an XSL-T pattern, axis %1 cannot be used, only axis %2 or %3 can. + XSL-T パターンã«ãŠã„ã¦ã€axis %1 ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。%2 ã¾ãŸã¯ %3 ã®ã¿ä½¿ç”¨ã§ãã¾ã™ã€‚ - - Bass Boost - 低音ブースト + %1 is an invalid template mode name. + %1 ã¯ãƒ†ãƒ³ãƒ—レートモジュールåã¨ã—ã¦ç„¡åŠ¹ã§ã™ã€‚ - - Bass Up - 低音を上ã’ã‚‹ + The name of a variable bound in a for-expression must be different from the positional variable. Hence, the two variables named %1 collide. + for 構文ã«ãŠã„ã¦ä½¿ç”¨ã™ã‚‹å¤‰æ•°ã¯ã€å ´æ‰€ã«é–¢ã™ã‚‹å¤‰æ•°ã¨ã¯ç•°ãªã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã¤ã¾ã‚Šã€'%1' ãŒé‡è¤‡ã—ã¦ä½¿ç”¨ã•ã‚Œã¦ã„ã¾ã™ã€‚ - - Bass Down - 低音を下ã’ã‚‹ + The Schema Validation Feature is not supported. Hence, %1-expressions may not be used. + スキーマã®æ¤œè¨¼æ©Ÿèƒ½ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。よã£ã¦ã€'%1' 構文ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。 - - Treble Up - 高音を上ã’ã‚‹ + None of the pragma expressions are supported. Therefore, a fallback expression must be present + pragma 構文ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。fallback 構文ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“ - - Treble Down - 高音を下ã’ã‚‹ + Each name of a template parameter must be unique; %1 is duplicated. + テンプレートパラメータåã¯ãƒ¦ãƒ‹ãƒ¼ã‚¯ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚'%1' ã¯é‡è¤‡ã—ã¦ã„ã¾ã™ã€‚ - - Media Play - メディアã®å†ç”Ÿ + The %1-axis is unsupported in XQuery + XQuery ã«ãŠã„ã¦ã€%1 axis ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“ - - Media Stop - メディアã®åœæ­¢ + No function with name %1 is available. + 関数å '%1' ã¯ã¿ã¤ã‹ã‚Šã¾ã›ã‚“。 - - Media Previous - å‰ã®ãƒ¡ãƒ‡ã‚£ã‚¢ + The namespace URI cannot be the empty string when binding to a prefix, %1. + プレフィックス '%1' ã«ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã™ã‚‹åå‰ç©ºé–“ã® URI ã¯ã€ç©ºã§ã‚ã£ã¦ã¯ãªã‚Šã¾ã›ã‚“。 - - Media Next - 次ã®ãƒ¡ãƒ‡ã‚£ã‚¢ + %1 is an invalid namespace URI. + %1 ã¯åå‰ç©ºé–“ URI ã¨ã—ã¦ç„¡åŠ¹ã§ã™ã€‚ - - Media Record - メディアã®éŒ²éŸ³ + It is not possible to bind to the prefix %1 + プレフィックス %1 ã«ãƒã‚¤ãƒ³ãƒ‰ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“ - - Home Page - ホームページ + Namespace %1 can only be bound to %2 (and it is, in either case, pre-declared). + åå‰ç©ºé–“ %1 㯠%2 ã«ã®ã¿ãƒã‚¦ãƒ³ãƒ‰ã§ãã¾ã™ã€‚ - - Favorites - ãŠæ°—ã«å…¥ã‚Š + Prefix %1 can only be bound to %2 (and it is, in either case, pre-declared). + プリフィックス %1 㯠%2 ã«ã®ã¿ãƒã‚¦ãƒ³ãƒ‰ã§ãã¾ã™ã€‚ - - Search - 検索 + Two namespace declaration attributes have the same name: %1. + 二ã¤ã®åå‰ç©ºé–“宣言ã®å±žæ€§ãŒã€åŒã˜åå‰ '%1' ã‚’ã‚‚ã£ã¦ã„ã¾ã™ã€‚ - - Standby - スタンãƒã‚¤ + The namespace URI must be a constant and cannot use enclosed expressions. + åå‰ç©ºé–“ URI ã¯ã€constantã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。å¼ã‚’å«ã‚€ã“ã¨ã¯ã§ãã¾ã›ã‚“。 - - Open URL - URLã‚’é–‹ã + An attribute with name %1 has already appeared on this element. + 属性å '%1' ã¯ã€ã™ã§ã«ã“ã®ã‚¨ãƒ¬ãƒ¡ãƒ³ãƒˆã§ä½¿ç”¨ã•ã‚Œã¦ã„ã¾ã™ã€‚ - - Launch Mail - メールã®èµ·å‹• + A direct element constructor is not well-formed. %1 is ended with %2. + ç›´ç©çš„ãªæŒ‡å®šã®ã‚¨ãƒ¬ãƒ¡ãƒ³ãƒˆãŒwell formedã§ã¯ã‚ã‚Šã¾ã›ã‚“。'%1' ãŒã€'%2' ã§çµ‚ã‚ã£ã¦ã„ã¾ã™ã€‚ - - Launch Media - メディアã®èµ·å‹• + The name %1 does not refer to any schema type. + åå‰ '%1' ã¯ã€ãªã‚“ã®ã‚¹ã‚­ãƒ¼ãƒžã‚¿ã‚¤ãƒ—ã‚‚å‚ç…§ã—ã¦ã„ã¾ã›ã‚“。 - - Launch (0) - (0)ã®èµ·å‹• + %1 is an complex type. Casting to complex types is not possible. However, casting to atomic types such as %2 works. + '%1' 㯠complex åž‹ã§ã™ã€‚complex åž‹ã¸ã®åž‹å¤‰æ›ã¯ã§ãã¾ã›ã‚“。ã—ã‹ã—ã€ã‚¢ãƒˆãƒŸãƒƒã‚¯ãªåž‹ã§ã‚ã‚‹ '%2' ã¸ã®å¤‰æ›ã¯ã§ãã¾ã™ã€‚ - - Launch (1) - (1)ã®èµ·å‹• + %1 is not an atomic type. Casting is only possible to atomic types. + '%1' ã¯ã‚¢ãƒˆãƒŸãƒƒã‚¯ãªåž‹ã§ã¯ã‚ã‚Šã¾ã›ã‚“。型変æ›ã¯ã‚¢ãƒˆãƒŸãƒƒã‚¯ãªåž‹ã«å¯¾ã—ã¦ã®ã¿å¯èƒ½ã§ã™ã€‚ - - Launch (2) - (2)ã®èµ·å‹• + %1 is not a valid name for a processing-instruction. + 処ç†æŒ‡å®šã«ãŠã„ã¦ã€'%1' ã¯ç„¡åŠ¹ã§ã™ã€‚ - - Launch (3) - (3)ã®èµ·å‹• + %1 is not in the in-scope attribute declarations. Note that the schema import feature is not supported. + '%1' ã¯ã€ã‚¹ã‚³ãƒ¼ãƒ—属性宣言ã§ã¯ã‚ã‚Šã¾ã›ã‚“。スキーマインãƒãƒ¼ãƒˆæ©Ÿèƒ½ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。 - - Launch (4) - (4)ã®èµ·å‹• + The name of an extension expression must be in a namespace. + æ‹¡å¼µå¼ (extension expression) ã®åå‰ã¯ã€åå‰ç©ºé–“ã®ä¸­ã«ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 + + + Element %1 is not allowed at this location. + ã“ã®å ´æ‰€ã«ã‚¨ãƒ¬ãƒ¡ãƒ³ãƒˆ '%1' ã‚’ãŠãã“ã¨ã¯è¨±å¯ã•ã‚Œã¦ã„ã¾ã›ã‚“。 - - Launch (5) - (5)ã®èµ·å‹• + Text nodes are not allowed at this location. + ã“ã®å ´æ‰€ã«ãƒ†ã‚­ã‚¹ãƒˆãƒŽãƒ¼ãƒ‰ã‚’ãŠãã“ã¨ã¯è¨±å¯ã•ã‚Œã¦ã„ã¾ã›ã‚“。 - - Launch (6) - (6)ã®èµ·å‹• + Parse error: %1 + パースエラー: %1 - - Launch (7) - (7)ã®èµ·å‹• + The value of the XSL-T version attribute must be a value of type %1, which %2 isn't. + XSL-T ãƒãƒ¼ã‚¸ãƒ§ãƒ³å±žæ€§ã®å€¤ã¯ã€'%1' åž‹ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。'%2' ã¯ãã†ã§ã¯ã‚ã‚Šã¾ã›ã‚“。 - - Launch (8) - (8)ã®èµ·å‹• + Running an XSL-T 1.0 stylesheet with a 2.0 processor. + XSL-T 1.0 ã®ã‚¹ã‚¿ã‚¤ãƒ«ã‚·ãƒ¼ãƒˆã‚’ 2.0 ã®ãƒ—ロセッサã§ä½¿ç”¨ã—ã¾ã™ã€‚ - - Launch (9) - (9)ã®èµ·å‹• + Unknown XSL-T attribute %1. + 未知㮠XSL-T 属性 %1 ãŒã‚ã‚Šã¾ã™ã€‚ - - Launch (A) - (A)ã®èµ·å‹• + Attribute %1 and %2 are mutually exclusive. + 属性 '%1' 㨠'%2' ã¯æŽ’ä»–çš„ã«ã®ã¿ä½¿ç”¨ã§ãã¾ã™ã€‚ - - Launch (B) - (B)ã®èµ·å‹• + In a simplified stylesheet module, attribute %1 must be present. + simplified stylesheet モジュールã«ãŠã„ã¦ã¯ã€å±žæ€§ '%1' を指定ã•ã‚Œãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 - - Launch (C) - (C)ã®èµ·å‹• + If element %1 has no attribute %2, it cannot have attribute %3 or %4. + エレメント '%1' ãŒå±žæ€§ '%2' ã‚’æŒãŸãªã„å ´åˆã¯ã€å±žæ€§ '%3' ã‚„ '%4' を使用ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。 - - Launch (D) - (D)ã®èµ·å‹• + Element %1 must have at least one of the attributes %2 or %3. + エレメント '%1' ã¯ã€å±žæ€§ '%2' ã‹ '%3' ã®ã„ãšã‚Œã‹ã‚’æŒãŸãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 - - Launch (E) - (E)ã®èµ·å‹• + At least one mode must be specified in the %1-attribute on element %2. + エレメント '%2' ã«ãŠã„ã¦ã€'%1' 属性ã¯å°‘ãã¨ã‚‚一ã¤ã®ãƒ¢ãƒ¼ãƒ‰ã‚’指定ã—ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 - - Launch (F) - (F)ã®èµ·å‹• + Element %1 must come last. + エレメント %1 ã¯æœ€å¾Œã«ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 - - Print Screen - Print Screen + At least one %1-element must occur before %2. + %2 ã®å‰ã«ã€å°‘ãã¨ã‚‚一ã¤ã¯ %1 エレメントãŒå­˜åœ¨ã—ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 - - Page Up - Page Up + Only one %1-element can appear. + %1 エレメントã¯ä¸€ã¤ã®ã¿å­˜åœ¨ã—ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 - - Page Down - Page Down + At least one %1-element must occur inside %2. + %2 ã®å†…å´ã«ã¯ã€å°‘ãã¨ã‚‚一ã¤ã® '%1' エレメントãŒå­˜åœ¨ã—ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 - - Caps Lock - Caps Lock + When attribute %1 is present on %2, a sequence constructor cannot be used. + %2 ã«å±žæ€§ %1 ãŒã‚ã‚‹å ´åˆã€sequence constructor ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。 - - Num Lock - Num Lock + Element %1 must have either a %2-attribute or a sequence constructor. + エレメント %1 ã«ã¯ã€%2 属性ã¾ãŸã¯sequence constructorãŒãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 - - Number Lock - Number Lock + When a parameter is required, a default value cannot be supplied through a %1-attribute or a sequence constructor. + パラメータãŒè¦æ±‚ã•ã‚Œã¦ã„ã‚‹ã¨ãã«ã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®å€¤ã¯ã€%1 属性ã¾ãŸã¯ sequence constructor ã«ã‚ˆã£ã¦æŒ‡å®šã•ã‚Œã¦ã„ã¦ã¯ãªã‚Šã¾ã›ã‚“。 - - Scroll Lock - Scroll Lock + Element %1 cannot have children. + エレメント %1 ã¯ã€å­è¦ç´ ã‚’æŒã¤ã“ã¨ãŒã§ãã¾ã›ã‚“。 - - Insert - Insert + Element %1 cannot have a sequence constructor. + エレメント %1 ã¯ã€sequence constructor ã‚’å«ã‚€ã“ã¨ãŒã§ãã¾ã›ã‚“。 - - Delete - Delete + The attribute %1 cannot appear on %2, when it is a child of %3. + %2 ㌠%3 ã®å­è¦ç´ ã§ã‚ã‚‹ã¨ãã¯ã€å±žæ€§ %1 を使用ã—ã¦ã¯ãªã‚Šã¾ã›ã‚“。 - - Escape - Escape + A parameter in a function cannot be declared to be a tunnel. + 関数ã¸ã®ãƒ‘ラメータã¯ã€ãƒˆãƒ³ãƒãƒ«ã§ã‚ã£ã¦ã¯ãªã‚Šã¾ã›ã‚“。 - - System Request - System Request + This processor is not Schema-aware and therefore %1 cannot be used. + ã“ã®å‡¦ç†ç³»ã¯ã€Schema-aware ã§ã¯ã‚ã‚Šã¾ã›ã‚“。よã£ã¦ã€%1 ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。 - - Select - Select + Top level stylesheet elements must be in a non-null namespace, which %1 isn't. + トップレベルã®ã‚¹ã‚¿ã‚¤ãƒ«ã‚·ãƒ¼ãƒˆã®ã‚¨ãƒ¬ãƒ¡ãƒ³ãƒˆã¯ã€non-nullãªåå‰ç©ºé–“ã‚’æŒã£ã¦ã„ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。ã—ã‹ã—ã€%1 ã¯ãã†ã§ã¯ã‚ã‚Šã¾ã›ã‚“。 - - Yes - ã¯ã„ + The value for attribute %1 on element %2 must either be %3 or %4, not %5. + エレメント %2 ã®å±žæ€§ %1 ã®å€¤ã¯ã€%3 ã¾ãŸã¯ %4 ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。%5 ã¯ç•°ãªã‚Šã¾ã™ã€‚ - - No - ã„ã„㈠+ Attribute %1 cannot have the value %2. + 属性 %1 ã«ã€å€¤ %2 を指定ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。 - - Context1 - Context1 + The attribute %1 can only appear on the first %2 element. + 属性 %1 ã¯ã€æœ€åˆã® %2 エレメントã«ã®ã¿æŒ‡å®šã§ãã¾ã™ã€‚ - - Context2 - Context2 + At least one %1 element must appear as child of %2. + %2 ã®å­è¦ç´ ã¨ã—ã¦ã¯ã€å°‘ãã¨ã‚‚一ã¤ã¯ %1 エレメントãŒãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。 - - Context3 - Context3 + Empty particle cannot be derived from non-empty particle. + 空ã§ã¯ãªã„ particle ã‹ã‚‰ç©ºã® particle ã‚’å¾—ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。 - - Context4 - Context4 + Derived particle is missing element %1. + å–å¾—ã—㟠particle ã«è¦ç´  %1 ãŒã‚ã‚Šã¾ã›ã‚“。 - - Call - Call + Derived element %1 is missing value constraint as defined in base particle. + - - Hangup - Hangup + Derived element %1 has weaker value constraint than base particle. + - - Flip - Flip + Fixed value constraint of element %1 differs from value constraint in base particle. + - - - Ctrl - Ctrl + Derived element %1 cannot be nillable as base element is not nillable. + - - - Shift - Shift + Block constraints of derived element %1 must not be more weaker than in the base element. + - - - Alt - Alt + Simple type of derived element %1 cannot be validly derived from base element. + - - - Meta - Meta + Complex type of derived element %1 cannot be validly derived from base element. + - - + - + + Element %1 is missing in derived particle. + - - F%1 - F%1 + Element %1 does not match namespace constraint of wildcard in base particle. + - - - QSlider - - Page left - 1ページ左ã¸ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ« + Wildcard in derived particle is not a valid subset of wildcard in base particle. + - - Page up - 1ページ戻る + processContent of wildcard in derived particle is weaker than wildcard in base particle. + - - Position - ä½ç½® + Derived particle allows content that is not allowed in the base particle. + - - Page right - 1ページå³ã¸ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ« + %1 has inheritance loop in its base type %2. + - - Page down - 1ページ進む + Circular inheritance of base type %1. + - - - QSocks5SocketEngine - - Connection to proxy refused - プロキシーã¸ã®æŽ¥ç¶šãŒæ‹’å¦ã•ã‚Œã¾ã—㟠+ Circular inheritance of union %1. + - - Connection to proxy closed prematurely - プロキシーã®æŽ¥ç¶šãŒé€šä¿¡ã®çµ‚了å‰ã«åˆ‡æ–­ã•ã‚Œã¾ã—㟠+ %1 is not allowed to derive from %2 by restriction as the latter defines it as final. + - - Proxy host not found - プロキシーホストãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ + %1 is not allowed to derive from %2 by extension as the latter defines it as final. + - - Connection to proxy timed out - プロキシーã¨ã®æŽ¥ç¶šãŒã‚¿ã‚¤ãƒ ã‚¢ã‚¦ãƒˆã—ã¾ã—㟠+ Base type of simple type %1 cannot be complex type %2. + - - Proxy authentication failed - プロキシーã®èªè¨¼ã«å¤±æ•—ã—ã¾ã—㟠+ Simple type %1 cannot have direct base type %2. + - - Proxy authentication failed: %1 - プロキシーã®èªè¨¼ã«å¤±æ•—ã—ã¾ã—ãŸ: %1 + Simple type %1 is not allowed to have base type %2. + - - SOCKS version 5 protocol error - SOCKS ãƒãƒ¼ã‚¸ãƒ§ãƒ³ 5 プロトコルã®ã‚¨ãƒ©ãƒ¼ã§ã™ + Simple type %1 can only have simple atomic type as base type. + - - General SOCKSv5 server failure - SOCKS ãƒãƒ¼ã‚¸ãƒ§ãƒ³ 5 サーãƒã®ã‚¨ãƒ©ãƒ¼ã§ã™ + Simple type %1 cannot derive from %2 as the latter defines restriction as final. + - - Connection not allowed by SOCKSv5 server - SOCKSv5 サーãƒã‚ˆã‚ŠæŽ¥ç¶šã‚’æ‹’å¦ã•ã‚Œã¾ã—㟠+ Variety of item type of %1 must be either atomic or union. + - - TTL expired - 実際ã¯ãƒ›ãƒƒãƒ—æ•°ã§ã™ - 有効期é™(TTL)ãŒãã‚Œã¾ã—㟠+ Variety of member types of %1 must be atomic. + - - SOCKSv5 command not supported - ã“ã® SOCKSv5 コマンドã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“ + %1 is not allowed to derive from %2 by list as the latter defines it as final. + - - Address type not supported - 指定ã•ã‚ŒãŸã‚¢ãƒ‰ãƒ¬ã‚¹ã‚¿ã‚¤ãƒ—ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“ + Simple type %1 is only allowed to have %2 facet. + - - Unknown SOCKSv5 proxy error code 0x%1 - 未知㮠SOCKSv5 プロキシーエラーã§ã™: 0x%1 + Base type of simple type %1 must have variety of type list. + - Socks5 timeout error connecting to socks server - Socks5 ã¯ã‚½ãƒƒã‚¯ã‚¹ã‚µãƒ¼ãƒæŽ¥ç¶šã—よã†ã¨ã—ã¦ã‚¿ã‚¤ãƒ ã‚¢ã‚¦ãƒˆã«ãªã‚Šã¾ã—㟠+ Base type of simple type %1 has defined derivation by restriction as final. + - - Network operation timed out - ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯æ“作ãŒã‚¿ã‚¤ãƒ ã‚¢ã‚¦ãƒˆã—ã¾ã—㟠+ Item type of base type does not match item type of %1. + - - - QSpinBox - - More - 増や㙠+ Simple type %1 contains not allowed facet type %2. + - - Less - 減ら㙠+ %1 is not allowed to derive from %2 by union as the latter defines it as final. + - - - QSql - - Delete - 削除 + %1 is not allowed to have any facets. + - - Delete this record? - ã“ã®ãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’削除ã—ã¾ã™ã‹? + Base type %1 of simple type %2 must have variety of union. + - - - - Yes - ã¯ã„ + Base type %1 of simple type %2 is not allowed to have restriction in %3 attribute. + - - - - No - ã„ã„㈠+ Member type %1 cannot be derived from member type %2 of %3's base type %4. + - - Insert - 挿入 + Derivation method of %1 must be extension because the base type %2 is a simple type. + - - Update - アップデート + Complex type %1 has duplicated element %2 in its content model. + - - Save edits? - 編集内容をä¿å­˜ã—ã¾ã™ã‹? + Complex type %1 has non-deterministic content. + - - Cancel - キャンセル + Attributes of complex type %1 are not a valid extension of the attributes of base type %2: %3. + - - Confirm - ç¢ºèª + Content model of complex type %1 is not a valid extension of content model of %2. + - - Cancel your edits? - 編集をキャンセルã—ã¾ã™ã‹? + Complex type %1 must have simple content. + - - - QSslSocket - - Error creating SSL context (%1) - SSL content ã®ä½œæˆã«å¤±æ•—ã—ã¾ã—㟠(%1) + Complex type %1 must have the same simple type as its base class %2. + - - Invalid or empty cipher list (%1) - æš—å·æ–¹å¼ãƒªã‚¹ãƒˆãŒç„¡åŠ¹ã¾ãŸã¯ç©ºã§ã™ (%1) + Complex type %1 cannot be derived from base type %2%3. + - - Cannot provide a certificate with no key, %1 - éµãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„ãŸã‚ã€è¨¼æ˜Žæ›¸ã‚’扱ãˆã¾ã›ã‚“。 %1 + Attributes of complex type %1 are not a valid restriction from the attributes of base type %2: %3. + - - Error loading local certificate, %1 - ローカルã®è¨¼æ˜Žæ›¸ã‚’ロードã§ãã¾ã›ã‚“。 %1 + Complex type %1 with simple content cannot be derived from complex base type %2. + - - Error loading private key, %1 - プライベートキーをロードã§ãã¾ã›ã‚“。 %1 + Item type of simple type %1 cannot be a complex type. + - - Private key does not certificate public key, %1 - プライベートキーãŒã€ãƒ‘ブリックキーã®è¨¼æ˜Žæ›¸ã¨ãªã£ã¦ã„ã¾ã›ã‚“ %1 + Member type of simple type %1 cannot be a complex type. + - - Error creating SSL session, %1 - SSL セッションを作æˆã§ãã¾ã›ã‚“。 %1 + %1 is not allowed to have a member type with the same name as itself. + - - Error creating SSL session: %1 - SSL セッションを作æˆã§ãã¾ã›ã‚“: %1 + %1 facet collides with %2 facet. + - - Unable to write data: %1 - 書ãè¾¼ã¿ã§ãã¾ã›ã‚“: %1 + %1 facet must have the same value as %2 facet of base type. + - - Error while reading: %1 - 読ã¿è¾¼ã¿æ™‚ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: %1 + %1 facet must be equal or greater than %2 facet of base type. + - - Error during SSL handshake: %1 - SSL ãƒãƒ³ãƒ‰ã‚·ã‚§ãƒ¼ã‚¯æ™‚ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: %1 + %1 facet must be less than or equal to %2 facet of base type. + - - - QSystemSemaphore - - - %1: out of resources - %1: リソースä¸è¶³ã§ã™ + %1 facet contains invalid regular expression + - - - %1: permission denied - %1: 許å¯ã•ã‚Œã¦ã„ã¾ã›ã‚“ + Unknown notation %1 used in %2 facet. + - - %1: already exists - %1: æ—¢ã«å­˜åœ¨ã—ã¾ã™ + %1 facet contains invalid value %2: %3. + - - %1: does not exist - %1: 存在ã—ã¾ã›ã‚“ + %1 facet cannot be %2 or %3 if %4 facet of base type is %5. + - - - %1: unknown error %2 - %1: 未知ã®ã‚¨ãƒ©ãƒ¼ã§ã™ %2 + %1 facet cannot be %2 if %3 facet of base type is %4. + - - - QTDSDriver - - Unable to open connection - 接続をオープンã§ãã¾ã›ã‚“ + %1 facet must be less than or equal to %2 facet. + - - Unable to use database - データベースを使用ã§ãã¾ã›ã‚“ + %1 facet must be less than %2 facet of base type. + - - - QTabBar - - Scroll Left - å·¦ã¸ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ« + %1 facet and %2 facet cannot appear together. + - - Scroll Right - å³ã¸ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ« + %1 facet must be greater than %2 facet of base type. + - - - QTcpServer - Socket operation unsupported - ソケットæ“作ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“ + %1 facet must be less than %2 facet. + - - Operation on socket is not supported - ã“ã®ã‚½ã‚±ãƒƒãƒˆã¸ã®æ“作ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“ + %1 facet must be greater than or equal to %2 facet of base type. + - - - QTextControl - - &Undo - å…ƒã«æˆ»ã™(&U) + Simple type contains not allowed facet %1. + - - &Redo - ã‚„ã‚Šç›´ã™(&R) + %1, %2, %3, %4, %5 and %6 facets are not allowed when derived by list. + - - Cu&t - 切りå–ã‚Š(&T) + Only %1 and %2 facets are allowed when derived by union. + - - &Copy - コピー(&C) + %1 contains %2 facet with invalid data: %3. + - - Copy &Link Location - リンクã®å ´æ‰€ã‚’コピー(&L) + Attribute group %1 contains attribute %2 twice. + - - &Paste - 貼り付ã‘(&P) + Attribute group %1 contains two different attributes that both have types derived from %2. + - - Delete - 削除 + Attribute group %1 contains attribute %2 that has value constraint but type that inherits from %3. + - - Select All - ã™ã¹ã¦ã‚’é¸æŠž + Complex type %1 contains attribute %2 twice. + - - - QToolButton - - - Press - 押㙠+ Complex type %1 contains two different attributes that both have types derived from %2. + - - - Open - オープン + Complex type %1 contains attribute %2 that has value constraint but type that inherits from %3. + - - - QUdpSocket - - This platform does not support IPv6 - ã“ã®ãƒ—ラットフォーム㯠IPv6 をサãƒãƒ¼ãƒˆã—ã¦ã„ã¾ã›ã‚“ + Element %1 is not allowed to have a value constraint if its base type is complex. + - - - QUndoGroup - - Undo - å…ƒã«æˆ»ã™ + Element %1 is not allowed to have a value constraint if its type is derived from %2. + - - Redo - ã‚„ã‚Šç›´ã™ + Value constraint of element %1 is not of elements type: %2. + - - - QUndoModel - - <empty> - <空> + Element %1 is not allowed to have substitution group affiliation as it is no global element. + - - - QUndoStack - - Undo - å…ƒã«æˆ»ã™ + Type of element %1 cannot be derived from type of substitution group affiliation. + - - Redo - ã‚„ã‚Šç›´ã™ + Value constraint of attribute %1 is not of attributes type: %2. + - - - QUnicodeControlCharacterMenu - - LRM Left-to-right mark - LRM (左横書ã指定) + Attribute %1 has value constraint but has type derived from %2. + - - RLM Right-to-left mark - RLM (å³æ¨ªæ›¸ã指定) + %1 attribute in derived complex type must be %2 like in base type. + - - ZWJ Zero width joiner - ZWJ (å¹…ã®ãªã„接続文字) + Attribute %1 in derived complex type must have %2 value constraint like in base type. + - - ZWNJ Zero width non-joiner - ZWNJ (å¹…ã®ãªã„éžæŽ¥ç¶šæ–‡å­—) + Attribute %1 in derived complex type must have the same %2 value constraint like in base type. + - - ZWSP Zero width space - ZWSP (å¹…ã®ç„¡ã„空白) + Attribute %1 in derived complex type must have %2 value constraint. + - - LRE Start of left-to-right embedding - LRE (左横書ã開始指定) + processContent of base wildcard must be weaker than derived wildcard. + - - RLE Start of right-to-left embedding - RLE (å³æ¨ªæ›¸ã開始指定) + Element %1 exists twice with different types. + - - LRO Start of left-to-right override - LRO (左横書ã上書ã開始指定) + Particle contains non-deterministic wildcards. + - - RLO Start of right-to-left override - RLO (å³æ¨ªæ›¸ã上書ã開始指定) + Base attribute %1 is required but derived attribute is not. + - - PDF Pop directional formatting - PDF (æ–¹å‘上書ãã®çµ‚了指定) + Type of derived attribute %1 cannot be validly derived from type of base attribute. + - - Insert Unicode control character - Unicode制御文字を挿入 + Value constraint of derived attribute %1 does not match value constraint of base attribute. + - - - QWebFrame - - Request cancelled - リクエストã¯ã‚­ãƒ£ãƒ³ã‚»ãƒ«ã•ã‚Œã¾ã—㟠+ Derived attribute %1 does not exist in the base definition. + - - Request blocked - リクエストã¯ãƒ–ロックã•ã‚Œã¾ã—㟠+ Derived attribute %1 does not match the wildcard in the base definition. + - - Cannot show URL - URL を表示ã§ãã¾ã›ã‚“ + Base attribute %1 is required but missing in derived definition. + - - Frame load interruped by policy change - ãƒãƒªã‚·ãƒ¼ã®å¤‰æ›´ã«ã‚ˆã‚Šã€ãƒ•ãƒ¬ãƒ¼ãƒ ã®ãƒ­ãƒ¼ãƒ‰ãŒä¸­æ–­ã—ã¾ã—㟠+ Derived definition contains an %1 element that does not exists in the base definition + - - Cannot show mimetype - MIME Type を表示ã§ãã¾ã›ã‚“ + Derived wildcard is not a subset of the base wildcard. + - - File does not exist - ファイルãŒå­˜åœ¨ã—ã¾ã›ã‚“ + %1 of derived wildcard is not a valid restriction of %2 of base wildcard + - - - QWebPage - - Bad HTTP request - 誤ã£ãŸ HTTP ã®ãƒªã‚¯ã‚¨ã‚¹ãƒˆã§ã™ + Attribute %1 from base type is missing in derived type. + - - Submit - default label for Submit buttons in forms on web pages - é€ä¿¡ + Type of derived attribute %1 differs from type of base attribute. + - - Submit - Submit (input element) alt text for <input> elements with no alt, title, or value - é€ä¿¡ + Base definition contains an %1 element that is missing in the derived definition + - - Reset - default label for Reset buttons in forms on web pages - リセット + Can not process unknown element %1, expected elements are: %2. + - - This is a searchable index. Enter search keywords: - text that appears at the start of nearly-obsolete web pages in the form of a 'searchable index' - 検索ãŒå¯èƒ½ã§ã™ã€‚検索ã®ãŸã‚ã®ã‚­ãƒ¼ãƒ¯ãƒ¼ãƒ‰ã‚’入力ã—ã¦ãã ã•ã„: + Element %1 is not allowed in this scope, possible elements are: %2. + - - Choose File - title for file button used in HTML forms - ファイルをé¸ã¶ + Child element is missing in that scope, possible child elements are: %1. + - - No file selected - text to display in file button used in HTML forms when no file is selected - ファイルãŒé¸æŠžã•ã‚Œã¦ã„ã¾ã›ã‚“ + Document is not a XML schema. + - - Open in New Window - Open in New Window context menu item - æ–°ã—ã„ウィンドウã§é–‹ã + %1 attribute of %2 element contains invalid content: {%3} is not a value of type %4. + - - Save Link... - Download Linked File context menu item - リンク先をä¿å­˜... + %1 attribute of %2 element contains invalid content: {%3}. + - - Copy Link - Copy Link context menu item - リンク先をコピー + Target namespace %1 of included schema is different from the target namespace %2 as defined by the including schema. + - - Open Image - Open Image in New Window context menu item - イメージを開ã + Target namespace %1 of imported schema is different from the target namespace %2 as defined by the importing schema. + - - Save Image - Download Image context menu item - ç”»åƒã‚’ä¿å­˜ + %1 element is not allowed to have the same %2 attribute value as the target namespace %3. + - - Copy Image - Copy Link context menu item - ç”»åƒã‚’コピー + %1 element without %2 attribute is not allowed inside schema without target namespace. + - - Open Frame - Open Frame in New Window context menu item - フレームを新ã—ã„ウィンドウã§é–‹ã + %1 element is not allowed inside %2 element if %3 attribute is present. + - - Copy - Copy context menu item - コピー + %1 element has neither %2 attribute nor %3 child element. + - - Go Back - Back context menu item - 戻る + %1 element with %2 child element must not have a %3 attribute. + - - Go Forward - Forward context menu item - 進む + %1 attribute of %2 element must be %3 or %4. + - - Stop - Stop context menu item - åœæ­¢ + %1 attribute of %2 element must have a value of %3. + - - Reload - Reload context menu item - リロード + %1 attribute of %2 element must have a value of %3 or %4. + - - Cut - Cut context menu item - 切りå–ã‚Š + %1 element must not have %2 and %3 attribute together. + - - Paste - Paste context menu item - 貼り付㑠+ Content of %1 attribute of %2 element must not be from namespace %3. + - - No Guesses Found - No Guesses Found context menu item - 推測候補ã¯ã‚ã‚Šã¾ã›ã‚“ + %1 attribute of %2 element must not be %3. + - - Ignore - Ignore Spelling context menu item - 無視 + %1 attribute of %2 element must have the value %3 because the %4 attribute is set. + - - Add To Dictionary - Learn Spelling context menu item - 辞書ã«è¿½åŠ  + Specifying use='prohibited' inside an attribute group has no effect. + - - Search The Web - Search The Web context menu item - Web を検索 + %1 element must have either %2 or %3 attribute. + - - Look Up In Dictionary - Look Up in Dictionary context menu item - 辞書ã‹ã‚‰æŽ¢ã™ + %1 element must have either %2 attribute or %3 or %4 as child element. + - - Open Link - Open Link context menu item - リンクを開ã + %1 element requires either %2 or %3 attribute. + - - Ignore - Ignore Grammar context menu item - 無視 + Text or entity references not allowed inside %1 element + - - Spelling - Spelling and Grammar context sub-menu item - スペル + %1 attribute of %2 element must contain %3, %4 or a list of URIs. + - - Show Spelling and Grammar - menu item title - スペルã¨æ–‡æ³•ã‚’表示 + %1 element is not allowed in this context. + - - Hide Spelling and Grammar - menu item title - スペルã¨æ–‡æ³•ã‚’éš ã™ + %1 attribute of %2 element has larger value than %3 attribute. + - - Check Spelling - Check spelling context menu item - スペルをãƒã‚§ãƒƒã‚¯ã™ã‚‹ + Prefix of qualified name %1 is not defined. + - - Check Spelling While Typing - Check spelling while typing context menu item - 入力中ã«ã‚¹ãƒšãƒ«ã‚’ãƒã‚§ãƒƒã‚¯ã™ã‚‹ + %1 attribute of %2 element must either contain %3 or the other values. + - - Check Grammar With Spelling - Check grammar with spelling context menu item - スペルãŠã‚ˆã³æ–‡æ³•ã‚’ãƒã‚§ãƒƒã‚¯ã™ã‚‹ + Component with ID %1 has been defined previously. + - - Fonts - Font context sub-menu item - フォント + Element %1 already defined. + - - Bold - Bold context menu item - 太字 + Attribute %1 already defined. + - - Italic - Italic context menu item - イタリック + Type %1 already defined. + - - Underline - Underline context menu item - 下線 + Attribute group %1 already defined. + - - Outline - Outline context menu item - アウトライン + Element group %1 already defined. + - - Direction - Writing direction context sub-menu item - æ–¹å‘ + Notation %1 already defined. + - - Text Direction - Text direction context sub-menu item - テキストã®æ–¹å‘ + Identity constraint %1 already defined. + - - Default - Default writing direction context menu item - デフォルト + Duplicated facets in simple type %1. + - - LTR - Left to Right context menu item - 左横書ã + %1 references unknown %2 or %3 element %4. + - - RTL - Right to Left context menu item - å³æ¨ªæ›¸ã + %1 references identity constraint %2 that is no %3 or %4 element. + - - Inspect - Inspect Element context menu item - ? - 検査 + %1 has a different number of fields from the identity constraint %2 that it references. + - - No recent searches - Label for only item in menu that appears when clicking on the search field image, when no searches have been performed - 検索ã®å±¥æ­´ã¯ã‚ã‚Šã¾ã›ã‚“ + Base type %1 of %2 element cannot be resolved. + - - Recent searches - label for first item in the menu that appears when clicking on the search field image, used as embedded menu title - 検索ã®å±¥æ­´ + Item type %1 of %2 element cannot be resolved. + - - Clear recent searches - menu item in Recent Searches menu that empties menu's contents - 検索ã®å±¥æ­´ã‚’クリア + Member type %1 of %2 element cannot be resolved. + - - Unknown - Unknown filesize FTP directory listing item - ä¸æ˜Ž + Type %1 of %2 element cannot be resolved. + - - %1 (%2x%3 pixels) - Title string for images - %1 (%2x%3 ピクセル) + Base type %1 of complex type cannot be resolved. + - - Web Inspector - %2 - Web ã®æ¤œæŸ» - %2 + %1 cannot have complex base type that has a %2. + - - Scroll here - ã“ã“ã«ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ« + Content model of complex type %1 contains %2 element so it cannot be derived by extension from a non-empty type. + - - Left edge - 左端 + Complex type %1 cannot be derived by extension from %2 as the latter contains %3 element in its content model. + - - Top - 上端 + Type of %1 element must be a simple type, %2 is not. + - - Right edge - å³ç«¯ + Substitution group %1 of %2 element cannot be resolved. + - - Bottom - 下端 + Substitution group %1 has circular definition. + - - Page left - 1ページ左ã¸ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ« + Duplicated element names %1 in %2 element. + - - Page up - 1ページ戻る + Reference %1 of %2 element cannot be resolved. + - - Page right - 1ページå³ã¸ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ« + Circular group reference for %1. + - - Page down - 1ページ進む + %1 element is not allowed in this scope + - - Scroll left - å·¦ã¸ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ« + %1 element cannot have %2 attribute with value other than %3. + - - Scroll up - 上ã¸ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ« + %1 element cannot have %2 attribute with value other than %3 or %4. + - - Scroll right - å³ã¸ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ« + %1 or %2 attribute of reference %3 does not match with the attribute declaration %4. + - - Scroll down - 下ã¸ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ« + Attribute group %1 has circular reference. + - - - %n file(s) - number of chosen file - - %n 個ã®ãƒ•ã‚¡ã‚¤ãƒ« - + + %1 attribute in %2 must have %3 use like in base type %4. + - - JavaScript Alert - %1 - JavaScript アラート - %1 + Attribute wildcard of %1 is not a valid restriction of attribute wildcard of base type %2. + - - JavaScript Confirm - %1 - JavaScript ç¢ºèª - %1 + %1 has attribute wildcard but its base type %2 has not. + - - JavaScript Prompt - %1 - JavaScript è³ªå• - %1 + Union of attribute wildcard of type %1 and attribute wildcard of its base type %2 is not expressible. + - - Move the cursor to the next character - 次ã®æ–‡å­—ã¸ã‚«ãƒ¼ã‚½ãƒ«ã‚’移動 + Enumeration facet contains invalid content: {%1} is not a value of type %2. + - - Move the cursor to the previous character - å‰ã®æ–‡å­—ã«ã‚«ãƒ¼ã‚½ãƒ«ã‚’移動 + Namespace prefix of qualified name %1 is not defined. + - - Move the cursor to the next word - 次ã®å˜èªžã«ã‚«ãƒ¼ã‚½ãƒ«ã‚’移動 + %1 element %2 is not a valid restriction of the %3 element it redefines: %4. + - - Move the cursor to the previous word - å‰ã®å˜èªžã«ã‚«ãƒ¼ã‚½ãƒ«ã‚’移動 + %1 is not valid according to %2. + - - Move the cursor to the next line - 次ã®è¡Œã«ã‚«ãƒ¼ã‚½ãƒ«ã‚’移動 + String content does not match the length facet. + - - Move the cursor to the previous line - å‰ã®è¡Œã«ã‚«ãƒ¼ã‚½ãƒ«ã‚’移動 + String content does not match the minLength facet. + - - Move the cursor to the start of the line - æ–‡ãªã®ã‹è¡Œãªã®ã‹ - 文頭ã«ã‚«ãƒ¼ã‚½ãƒ«ã‚’移動 + String content does not match the maxLength facet. + - - Move the cursor to the end of the line - 文末ã«ã‚«ãƒ¼ã‚½ãƒ«ã‚’移動 + String content does not match pattern facet. + - - Move the cursor to the start of the block - ブロックã®å…ˆé ­ã«ã‚«ãƒ¼ã‚½ãƒ«ã‚’移動 + String content is not listed in the enumeration facet. + - - Move the cursor to the end of the block - ブロックã®æœ«å°¾ã«ã‚«ãƒ¼ã‚½ãƒ«ã‚’移動 + Signed integer content does not match the maxInclusive facet. + - - Move the cursor to the start of the document - 文章ã®å…ˆé ­ã«ã‚«ãƒ¼ã‚½ãƒ«ã‚’移動 + Signed integer content does not match the maxExclusive facet. + - - Move the cursor to the end of the document - 文章ã®æœ«å°¾ã«ã‚«ãƒ¼ã‚½ãƒ«ã‚’移動 + Signed integer content does not match the minInclusive facet. + - - Select all - ã™ã¹ã¦ã‚’é¸æŠž + Signed integer content does not match the minExclusive facet. + - - Select to the next character - 次ã®æ–‡å­—ã‚’é¸æŠž + Signed integer content is not listed in the enumeration facet. + - - Select to the previous character - å‰ã®æ–‡å­—ã‚’é¸æŠž + Signed integer content does not match pattern facet. + - - Select to the next word - 次ã®å˜èªžã‚’é¸æŠž + Signed integer content does not match in the totalDigits facet. + - - Select to the previous word - å‰ã®å˜èªžã‚’é¸æŠž + Unsigned integer content does not match the maxInclusive facet. + - - Select to the next line - 次ã®è¡Œã‚’é¸æŠž + Unsigned integer content does not match the maxExclusive facet. + - - Select to the previous line - å‰ã®è¡Œã‚’é¸æŠž + Unsigned integer content does not match the minInclusive facet. + - - Select to the start of the line - 文頭ã‹ã‚‰é¸æŠž + Unsigned integer content does not match the minExclusive facet. + - - Select to the end of the line - 文末ã¾ã§é¸æŠž + Unsigned integer content is not listed in the enumeration facet. + - - Select to the start of the block - ブロックã®å…ˆé ­ã‹ã‚‰é¸æŠž + Unsigned integer content does not match pattern facet. + - - Select to the end of the block - ブロックã®æœ«å°¾ã¾ã§é¸æŠž + Unsigned integer content does not match in the totalDigits facet. + - - Select to the start of the document - ドキュメントã®å…ˆé ­ã‹ã‚‰é¸æŠž + Double content does not match the maxInclusive facet. + - - Select to the end of the document - ドキュメントã®æœ«å°¾ã¾ã§é¸æŠž + Double content does not match the maxExclusive facet. + - - Delete to the start of the word - å˜èªžã®å…ˆé ­ã¾ã§å‰Šé™¤ + Double content does not match the minInclusive facet. + - - Delete to the end of the word - å˜èªžã®æœ«å°¾ã¾ã§å‰Šé™¤ + Double content does not match the minExclusive facet. + - - Insert a new paragraph - æ–°ã—ã„段è½ã‚’挿入 + Double content is not listed in the enumeration facet. + - - Insert a new line - æ–°ã—ã„行を挿入 + Double content does not match pattern facet. + - - - QWhatsThisAction - - What's This? - ヒント? + Decimal content does not match in the fractionDigits facet. + - - - QWidget - - * - * + Decimal content does not match in the totalDigits facet. + - - - QWizard - - Go Back - 戻る + Date time content does not match the maxInclusive facet. + - - Continue - 続ã + Date time content does not match the maxExclusive facet. + - - Commit - é©ç”¨ + Date time content does not match the minInclusive facet. + - - Done - 終了 + Date time content does not match the minExclusive facet. + - - Help - ヘルプ + Date time content is not listed in the enumeration facet. + - - < &Back - < 戻る(&B) + Date time content does not match pattern facet. + - - &Finish - 完了(&F) + Duration content does not match the maxInclusive facet. + - - Cancel - キャンセル + Duration content does not match the maxExclusive facet. + - - &Help - ヘルプ(&H) + Duration content does not match the minInclusive facet. + - - &Next - 次ã¸(&N) + Duration content does not match the minExclusive facet. + - - &Next > - 次ã¸(&N) > + Duration content is not listed in the enumeration facet. + - - - QWorkspace - - &Restore - å…ƒã«æˆ»ã™(&R) + Duration content does not match pattern facet. + - - &Move - 移動(&M) + Boolean content does not match pattern facet. + - - &Size - サイズを変更(&S) + Binary content does not match the length facet. + - - Mi&nimize - 最å°åŒ–(&N) + Binary content does not match the minLength facet. + - - Ma&ximize - 最大化(&X) + Binary content does not match the maxLength facet. + - - &Close - é–‰ã˜ã‚‹(&C) + Binary content is not listed in the enumeration facet. + - - Stay on &Top - 常ã«æ‰‹å‰ã«è¡¨ç¤º(&T) + Invalid QName content: %1. + - - - Sh&ade - シェード(&A) + QName content is not listed in the enumeration facet. + - - - %1 - [%2] - %1 - [%2] + QName content does not match pattern facet. + - - Minimize - 最å°åŒ– + Notation content is not listed in the enumeration facet. + - - Restore Down - å…ƒã«æˆ»ã™ + List content does not match length facet. + - - Close - é–‰ã˜ã‚‹ + List content does not match minLength facet. + - - &Unshade - シェードを解除(&U) + List content does not match maxLength facet. + - - - QXml - - no error occurred - エラーã¯ç™ºç”Ÿã—ã¾ã›ã‚“ã§ã—㟠+ List content is not listed in the enumeration facet. + - - error triggered by consumer - 消費者ã«ã‚ˆã£ã¦ã‚¨ãƒ©ãƒ¼ãŒèª˜ç™ºã•ã‚Œã¾ã—㟠+ List content does not match pattern facet. + - - unexpected end of file - 予期ã›ã¬ãƒ•ã‚¡ã‚¤ãƒ«ã®çµ‚ã‚Šã§ã™ + Union content is not listed in the enumeration facet. + - - more than one document type definition - ドキュメントタイプã®å®šç¾©ãŒè¤‡æ•°ã‚ã‚Šã¾ã™ + Union content does not match pattern facet. + - - error occurred while parsing element - è¦ç´ ã®è§£æžä¸­ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—㟠+ Data of type %1 are not allowed to be empty. + - - tag mismatch - ã‚¿ã‚°ãŒä¸€è‡´ã—ã¾ã›ã‚“ + Element %1 is missing child element. + - - error occurred while parsing content - コンテンツã®è§£æžä¸­ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—㟠+ There is one IDREF value with no corresponding ID: %1. + - - unexpected character - 予期ã—ãªã„文字ã§ã™ + Loaded schema file is invalid. + - - invalid name for processing instruction - 処ç†ã®æŒ‡ç¤ºã«ç„¡åŠ¹ãªåå‰ã§ã™ + %1 contains invalid data. + - - version expected while reading the XML declaration - XML宣言を読ã¿è¾¼ã‚€ã«ã¯ãƒãƒ¼ã‚¸ãƒ§ãƒ³ãŒå¿…è¦ã§ã™ + xsi:schemaLocation namespace %1 has already appeared earlier in the instance document. + - - wrong value for standalone declaration - スタンドアロン宣言ã¨ã—ã¦æ­£ã—ããªã„値ã§ã™ + xsi:noNamespaceSchemaLocation cannot appear after the first no-namespace element or attribute. + - - encoding declaration or standalone declaration expected while reading the XML declaration - XML宣言を読ã¿è¾¼ã‚€ã«ã¯ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‡ã‚£ãƒ³ã‚°å®£è¨€ã‹ã‚¹ã‚¿ãƒ³ãƒ‰ã‚¢ãƒ­ãƒ¼ãƒ³å®£è¨€ãŒå¿…è¦ã§ã™ + No schema defined for validation. + - - standalone declaration expected while reading the XML declaration - XML宣言を読ã¿è¾¼ã‚€ã«ã¯ã‚¹ã‚¿ãƒ³ãƒ‰ã‚¢ãƒ­ãƒ¼ãƒ³å®£è¨€ãŒå¿…è¦ã§ã™ + No definition for element %1 available. + - - error occurred while parsing document type definition - ドキュメントタイプã®å®šç¾©ã‚’解æžä¸­ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—㟠+ Specified type %1 is not known to the schema. + - - letter is expected - 文字ãŒå¿…è¦ã§ã™ + Element %1 is not defined in this scope. + - - error occurred while parsing comment - コメントã®è§£æžä¸­ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—㟠+ Declaration for element %1 does not exist. + - - error occurred while parsing reference - å‚ç…§ã®è§£æžä¸­ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—㟠+ Element %1 contains invalid content. + - - internal general entity reference not allowed in DTD - 内部一般エンティティå‚ç…§ã¯DTDã§è¨±ã•ã‚Œã¦ã„ã¾ã›ã‚“ + Element %1 is declared as abstract. + - - external parsed general entity reference not allowed in attribute value - 解æžã•ã‚ŒãŸå¤–部一般エンティティå‚ç…§ã¯å±žæ€§å€¤ã§è¨±ã•ã‚Œã¦ã„ã¾ã›ã‚“ + Element %1 is not nillable. + - - external parsed general entity reference not allowed in DTD - 解æžã•ã‚ŒãŸå¤–部一般エンティティå‚ç…§ã¯DTDã§è¨±ã•ã‚Œã¦ã„ã¾ã›ã‚“ + Attribute %1 contains invalid data: %2 + - - unparsed entity reference in wrong context - ä¸æ­£ãªæ–‡è„ˆã§è§£æžã•ã‚Œãªã„エンティティå‚ç…§ã§ã™ + Element contains content although it is nillable. + - - recursive entities - å†å¸°çš„エンティティ + Fixed value constraint not allowed if element is nillable. + - - error in the text declaration of an external entity - 外部エンティティã®ãƒ†ã‚­ã‚¹ãƒˆå®£è¨€ã«ã‚¨ãƒ©ãƒ¼ãŒã‚ã‚Šã¾ã™ + Specified type %1 is not validly substitutable with element type %2. + - - - QXmlStream - - - Extra content at end of document. - ドキュメントã®æœ«å°¾ã«ä½™è¨ˆãªã‚‚ã®ãŒã¤ã„ã¦ã„ã¾ã™ã€‚ + Complex type %1 is not allowed to be abstract. + - - Invalid entity value. - エンティティã®å€¤ãŒç„¡åŠ¹ã§ã™ã€‚ + Element %1 contains not allowed attributes. + - - Invalid XML character. - 無効㪠XML 文字ã§ã™ã€‚ + Element %1 contains not allowed child element. + - - Sequence ']]>' not allowed in content. - ã“ã®ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆã§ã¯ã€']]>' ã¯è¨±å¯ã•ã‚Œã¦ã„ã¾ã›ã‚“。 + Content of element %1 does not match its type definition: %2. + - - - Encountered incorrectly encoded content. - æ­£ã—ããªã„エンコードã®æ–‡è„ˆã«é­é‡ã—ã¾ã—ãŸã€‚ + Content of element %1 does not match defined value constraint. + - - Namespace prefix '%1' not declared - åå‰ç©ºé–“ã®ãƒ–リフィックス '%1' ã¯å®£è¨€ã•ã‚Œã¦ã„ã¾ã›ã‚“ + Element %1 contains not allowed child content. + - - Attribute redefined. - 属性ãŒå†åº¦æŒ‡å®šã•ã‚Œã¦ã„ã¾ã™ã€‚ + Element %1 contains not allowed text content. + - - Unexpected character '%1' in public id literal. - DTD宣言ã®éƒ¨åˆ† - 公開 ID 指定ã«ä½¿ç”¨ã§ããªã„文字 '%1' ãŒä½¿ç”¨ã•ã‚Œã¦ã„ã¾ã™ã€‚ + Element %1 cannot contain other elements, as it has a fixed content. + - - Invalid XML version string. - 無効㪠XML ãƒãƒ¼ã‚¸ãƒ§ãƒ³æŒ‡å®šã§ã™ã€‚ + Element %1 is missing required attribute %2. + - - Unsupported XML version. - ã“ã® XML ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。 + Attribute %1 does not match the attribute wildcard. + - - The standalone pseudo attribute must appear after the encoding. - &ddd; ã¯ã€ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‡ã‚£ãƒ³ã‚°ã‚’指定ã—ã¦ã„ãªã„ã¨ä½¿ãˆãªã„ã¨ã„ã†ã“ã¨ã‹ãªã€‚utf8ã ã¨ãŠã‚‚ã†ã‘ã©ã€‚ - 仮想属性指定ã¯ã€ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‡ã‚£ãƒ³ã‚°æŒ‡å®šã®å¾Œã«ã®ã¿ä½¿ç”¨ã§ãã¾ã™ã€‚ + Declaration for attribute %1 does not exist. + - - %1 is an invalid encoding name. - %1 ã¯ç„¡åŠ¹ãªã‚¨ãƒ³ã‚³ãƒ¼ãƒ‡ã‚£ãƒ³ã‚°ã®åå‰ã§ã™ã€‚ + Element %1 contains two attributes of type %2. + - - Encoding %1 is unsupported - エンコーディング '%1' ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“ + Attribute %1 contains invalid content. + - - Standalone accepts only yes or no. - standalone ã®æŒ‡å®šã¯ yes ã¾ãŸã¯ no ã®ã¿æŒ‡å®šã§ãã¾ã™ã€‚ + Element %1 contains unknown attribute %2. + - - Invalid attribute in XML declaration. - XML 宣言ã«ç„¡åŠ¹ãªå±žæ€§ãŒã¤ã„ã¦ã„ã¾ã™ã€‚ + Content of attribute %1 does not match its type definition: %2. + - - Premature end of document. - ドキュメントãŒé€”中ã§çµ‚ã‚ã£ã¦ã„ã¾ã™ã€‚ + Content of attribute %1 does not match defined value constraint. + - - Invalid document. - 無効ãªãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã§ã™ã€‚ + Non-unique value found for constraint %1. + - - Expected - 予期ã—ã¦ã„ãŸè¡¨ç¾ã¯ã€ + Key constraint %1 contains absent fields. + - - , but got ' - ã§ã™ãŒã€å–å¾—ã—ãŸè¡¨ç¾ã¯ä»¥ä¸‹ã®ã‚‚ã®ã§ã—㟠' + Key constraint %1 contains references nillable element %2. + - - Unexpected ' - 予期ã—ã¦ã„ãªã‹ã£ãŸè¡¨ç¾ ' + No referenced value found for key reference %1. + - - Expected character data. - 予期ã—ã¦ã„ãŸæ–‡å­—列。 + More than one value found for field %1. + - - Recursive entity detected. - å†å¸°ã—ã¦ã„るエンティティを発見ã—ã¾ã—ãŸã€‚ + Field %1 has no simple type. + - - Start tag expected. - 開始タグをよãã—ã¦ã„ã¾ã—ãŸãŒã€ã¿ã¤ã‹ã‚Šã¾ã›ã‚“。 + ID value '%1' is not unique. + - - NDATA in parameter entity declaration. - パラメータエンティティã®å®£è¨€ã«ãŠã„㦠NDATA ãŒã‚ã‚Šã¾ã™ã€‚ + '%1' attribute contains invalid QName content: %2. + - - XML declaration not at start of document. - XML 宣言ãŒãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã®å…ˆé ­ã«ã‚ã‚Šã¾ã›ã‚“。 + empty + 空 - - %1 is an invalid processing instruction name. - XMLã«ãã‚“ãªã®ã‚ã£ãŸã£ã‘? - %1 ã¯ç„¡åŠ¹ãªå‡¦ç†æŒ‡å®šã®åå‰ã§ã™ã€‚ + zero or one + ゼロã¾ãŸã¯ä¸€ã¤ - - Invalid processing instruction name. - 無効ãªå‡¦ç†å‘½ä»¤ã§ã™ã€‚ + exactly one + 厳密ã«ä¸€ã¤ - - %1 is an invalid PUBLIC identifier. - %1 ã¯ã€å…¬é–‹ (PUBLIC) 識別å­ã¨ã—ã¦ç„¡åŠ¹ã§ã™ã€‚ + one or more + 一ã¤ã¾ãŸã¯è¤‡æ•° - - - - - Illegal namespace declaration. - 無効ãªåå‰ç©ºé–“ã®æŒ‡å®šã§ã™ã€‚ + zero or more + ゼロã¾ãŸã¯ãれ以上 - - Invalid XML name. - 無効㪠XML åã§ã™ã€‚ + Required type is %1, but %2 was found. + è¦æ±‚ã•ã‚Œã¦ã„る型㯠%1 ã§ã™ãŒã€ %2 ãŒã‚ã‚Šã¾ã™ã€‚ - - Opening and ending tag mismatch. - 開始タグã¨ã€çµ‚了タグãŒãƒžãƒƒãƒã—ã¾ã›ã‚“。 + Promoting %1 to %2 may cause loss of precision. + %1 ã‚’ %2 ã«å¤‰æ›ã™ã‚‹éš›ã«ã€ç²¾åº¦ã®ãƒ­ã‚¹ãŒç”Ÿã˜ã¾ã™ã€‚ - - Reference to unparsed entity '%1'. - ã¾ã ãƒ‘ースã—ã¦ã„ãªã„エンティティ '%1' ã‚’å‚ç…§ã—ã¦ã„ã¾ã™ã€‚ + The focus is undefined. + フォーカスãŒå®šç¾©ã•ã‚Œã¦ã„ã¾ã›ã‚“。 - - - - Entity '%1' not declared. - エンティティ '%1' ã¯å®£è¨€ã•ã‚Œã¦ã„ã¾ã›ã‚“。 + It's not possible to add attributes after any other kind of node. + ä»–ã®ç¨®é¡žã®ãƒŽãƒ¼ãƒ‰ã®ä¸­ã§ã¯ã€å±žæ€§ã‚’追加ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。 - - Reference to external entity '%1' in attribute value. - 属性値ã¨ã—ã¦ã€å¤–部エンティティ '%1' ã‚’å†åº¦æŒ‡å®šã—ã¦ã„ã¾ã™ã€‚ + An attribute by name %1 has already been created. + åå‰ '%1' ã®å±žæ€§ã¯ã€ã™ã§ã«ç”Ÿæˆã•ã‚Œã¦ã„ã¾ã™ã€‚ - - Invalid character reference. - 無効ãªæ–‡å­—ã¸ã®å‚ç…§ã§ã™ã€‚ + Only the Unicode Codepoint Collation is supported(%1). %2 is unsupported. + UNICODE Codepoint Collection ã®ã¿ä½¿ç”¨ã§ãã¾ã™(%1)。 %2 ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。 diff --git a/translations/qtconfig_ja.ts b/translations/qtconfig_ja.ts new file mode 100644 index 0000000..e92a7d1 --- /dev/null +++ b/translations/qtconfig_ja.ts @@ -0,0 +1,919 @@ + + + + + MainWindow + + + Desktop Settings (Default) + デスクトップã®è¨­å®š(デフォルト) + + + + Choose style and palette based on your desktop settings. + デスクトップã®è¨­å®šã«å¿œã˜ã¦ã‚¹ã‚¿ã‚¤ãƒ«ã¨ãƒ‘レットをé¸æŠžã—ã¾ã™ã€‚ + + + + On The Spot + On The Spot + + + + + + + Auto (default) + 自動(デフォルト) + + + + Choose audio output automatically. + オーディオ出力を自動的ã«é¸æŠžã—ã¾ã™ã€‚ + + + + + aRts + aRts + + + + Experimental aRts support for GStreamer. + Gstreamer ã§ã® aRts ã®ã‚µãƒãƒ¼ãƒˆ(Experimental)。 + + + + Phonon GStreamer backend not available. + Phonon ã® GStreamer ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。 + + + + Choose render method automatically + æ画メソッドを自動的ã«é¸æŠžã—ã¾ã™ + + + + + X11 + X11 + + + + Use X11 Overlays + X11 ã®ã‚ªãƒ¼ãƒãƒ¼ãƒ¬ã‚¤ã‚’使用 + + + + + OpenGL + OpenGL + + + + Use OpenGL if available + OpenGL ãŒä½¿ç”¨å¯èƒ½ãªå ´åˆã¯ä½¿ç”¨ + + + + + Software + ソフトウェア + + + + Use simple software rendering + ソフトウェアã§ã®æ画を使用 + + + + No changes to be saved. + 内容ãŒå¤‰æ›´ã•ã‚Œã¦ã„ã¾ã›ã‚“。 + + + + Saving changes... + ä¿å­˜ä¸­â€¦ + + + + Over The Spot + Over The Spot + + + + Off The Spot + Off The Spot + + + + Root + Root + + + + Select a Directory + ディレクトリã®é¸æŠž + + + + <h3>%1</h3><br/>Version %2<br/><br/>Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). + <h3>%1</h3><br/>ãƒãƒ¼ã‚¸ãƒ§ãƒ³ %2<br/><br/>Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). + + + + + + Qt Configuration + Qt 設定ツール + + + + Save Changes + 変更ã®ä¿å­˜ + + + + Save changes to settings? + 変更内容を設定ã«ä¿å­˜ã—ã¾ã™ã‹ï¼Ÿ + + + + &Yes + ã¯ã„(&Y) + + + + &No + ã„ã„ãˆ(&N) + + + + &Cancel + キャンセル(&C) + + + + MainWindowBase + + + Qt Configuration + Qt 設定ツール + + + + Appearance + 外観 + + + + GUI Style + GUI スタイル + + + + Select GUI &Style: + GUI スタイルã®é¸æŠž(&S): + + + + Preview + プレビュー + + + + Select &Palette: + パレットã®é¸æŠž(&P): + + + + Active Palette + アクティブãªãƒ‘レット + + + + Inactive Palette + アクティブã§ã¯ãªã„パレット + + + + Disabled Palette + 無効時ã®ãƒ‘レット + + + + Build Palette + パレットã®è¨­å®š + + + + &3-D Effects: + &3D エフェクト: + + + + Window Back&ground: + ウィンドウã®ãƒãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰(&G): + + + + &Tune Palette... + パレットを調整(&T)... + + + + Please use the KDE Control Center to set the palette. + KDE ã®ã‚³ãƒ³ãƒˆãƒ­ãƒ¼ãƒ«ã‚»ãƒ³ã‚¿ãƒ¼ã§ãƒ‘レットã®è¨­å®šã‚’ã—ã¦ãã ã•ã„。 + + + + Fonts + フォント + + + + Default Font + デフォルトã®ãƒ•ã‚©ãƒ³ãƒˆ + + + + &Style: + スタイル(&S): + + + + &Point Size: + ãƒã‚¤ãƒ³ãƒˆã‚µã‚¤ã‚º(&P): + + + + F&amily: + ファミリー(&F): + + + + Sample Text + テキストã®ã‚µãƒ³ãƒ—ル + + + + Font Substitution + フォントã®ç½®æ› + + + + S&elect or Enter a Family: + ファミリーをé¸æŠžã™ã‚‹ã‹å…¥åŠ›ã—ã¦ãã ã•ã„(&E): + + + + Current Substitutions: + ç¾åœ¨ã®ç½®æ›å®šç¾©: + + + + + Up + 上㸠+ + + + + Down + 下㸠+ + + + + Remove + 削除 + + + + Select s&ubstitute Family: + ç½®æ›ã™ã‚‹ãƒ•ã‚¡ãƒŸãƒªãƒ¼ã®é¸æŠž(&U): + + + + + Add + 追加 + + + + Interface + インターフェース + + + + Feel Settings + 一般的ãªè¨­å®š + + + + + ms + ミリ秒 + + + + &Double Click Interval: + ダブルクリックã®é–“éš”(&D): + + + + No blinking + 点滅ã—ãªã„ + + + + &Cursor Flash Time: + カーソルã®ç‚¹æ»…ã®é–“éš”(&C): + + + + lines + è¡Œ + + + + Wheel &Scroll Lines: + マウスホイールã§ã®ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ«è¡Œæ•°(&S): + + + + Resolve symlinks in URLs + URL ã®ã‚·ãƒ³ãƒœãƒªãƒƒã‚¯ãƒªãƒ³ã‚¯ã®è§£æ±º + + + + GUI Effects + GUI ã®ã‚¨ãƒ•ã‚§ã‚¯ãƒˆ + + + + &Enable + 有効(&E) + + + + Alt+E + Alt+E + + + + &Menu Effect: + メニューã®ã‚¨ãƒ•ã‚§ã‚¯ãƒˆ(&E): + + + + C&omboBox Effect: + コンボボックスã®ã‚¨ãƒ•ã‚§ã‚¯ãƒˆ(&O): + + + + &ToolTip Effect: + ツールãƒãƒƒãƒ—ã®ã‚¨ãƒ•ã‚§ã‚¯ãƒˆ(&T): + + + + Tool&Box Effect: + ツールボックスã®ã‚¨ãƒ•ã‚§ã‚¯ãƒˆ(&B): + + + + + + + Disable + 無効 + + + + + + + Animate + アニメーション + + + + + Fade + フェード + + + + Global Strut + Global Strut + + + + Minimum &Width: + å¹…ã®æœ€å°å€¤(&W): + + + + Minimum Hei&ght: + 高ã•ã®æœ€å°å€¤(&G): + + + + + pixels + ピクセル + + + + Enhanced support for languages written right-to-left + å³ã‹ã‚‰å·¦ã«æ›¸ã‹ã‚Œã‚‹è¨€èªžã®ã‚µãƒãƒ¼ãƒˆã®å¼·åŒ– + + + + XIM Input Style: + XIM ã®ã‚¤ãƒ³ãƒ—ットスタイル: + + + + On The Spot + On The Spot + + + + Over The Spot + Over The Spot + + + + Off The Spot + Off The Spot + + + + Root + Root + + + + Default Input Method: + デフォルトã®ã‚¤ãƒ³ãƒ—ットメソッド: + + + + Printer + プリンタ + + + + Enable Font embedding + フォントを埋ã‚込む + + + + Font Paths + フォントã®ãƒ‘ス + + + + Browse... + ブラウズ... + + + + Press the <b>Browse</b> button or enter a directory and press Enter to add them to the list. + <b>ブラウズ</b>ボタンを押ã™ã‹ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’入力ã—ã€ã‚¨ãƒ³ã‚¿ãƒ¼ã‚­ãƒ¼ã‹è¿½åŠ ãƒœã‚¿ãƒ³ã§ãƒªã‚¹ãƒˆã«è¿½åŠ ã—ã¦ãã ã•ã„。 + + + + Phonon + Phonon + + + + About Phonon + Phonon ã«ã¤ã„㦠+ + + + + Current Version: + ç¾åœ¨ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³: + + + + + Not available + 使用ä¸å¯èƒ½ + + + + + Website: + ウェブサイト: + + + + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="http://phonon.kde.org"><span style=" text-decoration: underline; color:#0000ff;">http://phonon.kde.org</span></a></p></body></html> + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="http://phonon.kde.org"><span style=" text-decoration: underline; color:#0000ff;">http://phonon.kde.org</span></a></p></body></html> + + + + About GStreamer + GStreamer ã«ã¤ã„㦠+ + + + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="http://gstreamer.freedesktop.org/"><span style=" text-decoration: underline; color:#0000ff;">http://gstreamer.freedesktop.org/</span></a></p></body></html> + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="http://gstreamer.freedesktop.org/"><span style=" text-decoration: underline; color:#0000ff;">http://gstreamer.freedesktop.org/</span></a></p></body></html> + + + + GStreamer backend settings + GStreamer ã®ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰ã®è¨­å®š + + + + Preferred audio sink: + 優先ã™ã‚‹ã‚ªãƒ¼ãƒ‡ã‚£ã‚ªã‚·ãƒ³ã‚¯: + + + + Preferred render method: + 優先ã™ã‚‹æ画方法: + + + + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-style:italic;">Note: changes to these settings may prevent applications from starting up correctly.</span></p></body></html> + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-style:italic;">注: ã“れらã®è¨­å®šã®å¤‰æ›´ã«ã‚ˆã‚Šã‚¢ãƒ—リケーションãŒæ­£å¸¸ã«èµ·å‹•ã—ãªããªã‚‹å ´åˆãŒã‚ã‚Šã¾ã™ã€‚</span></p></body></html> + + + + &File + ファイル(&F) + + + + &Help + ヘルプ(&H) + + + + &Save + ä¿å­˜(&S) + + + + Save + ä¿å­˜ + + + + Ctrl+S + Ctrl+S + + + + E&xit + 終了(&X) + + + + Exit + 終了 + + + + &About + Qt 設定ツールã«ã¤ã„ã¦(&A) + + + + About + Qt 設定ツールã«ã¤ã„㦠+ + + + About &Qt + &Qt ã«ã¤ã„㦠+ + + + About Qt + Qt ã«ã¤ã„㦠+ + + + PaletteEditorAdvancedBase + + + Tune Palette + パレットã®èª¿æ•´ + + + + <b>Edit Palette</b><p>Change the palette of the current widget or form.</p><p>Use a generated palette or select colors for each color group and each color role.</p><p>The palette can be tested with different widget layouts in the preview section.</p> + <b>パレットã®ç·¨é›†</b><p>ç¾åœ¨ã®ã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã‚„フォームã®ãƒ‘レットを変更ã—ã¦ãã ã•ã„。</p><p>自動生æˆã•ã‚ŒãŸãƒ‘レットを使用ã™ã‚‹ã‹ã€ãã‚Œãžã‚Œã®ã‚°ãƒ«ãƒ¼ãƒ—ï¼å½¹å‰²ã«å¯¾ã—ã¦è‰²ã‚’é¸æŠžã—ã¦ãã ã•ã„。</p><p>パレットã®å†…容ã®ãƒ—レビューセクションã«ã‚る様々ãªã‚¦ã‚£ã‚¸ã‚§ãƒƒãƒˆã®ãƒ¬ã‚¤ã‚¢ã‚¦ãƒˆã§ç¢ºèªã§ãã¾ã™ã€‚</p> + + + + Select &Palette: + パレットã®é¸æŠž(&P): + + + + Active Palette + アクティブãªãƒ‘レット + + + + Inactive Palette + アクティブã§ã¯ãªã„パレット + + + + Disabled Palette + 無効時ã®ãƒ‘レット + + + + Auto + 自動 + + + + Build inactive palette from active + アクティブãªãƒ‘レットã‹ã‚‰ã‚¢ã‚¯ãƒ†ã‚£ãƒ–ã§ã¯ãªã„パレットを構築 + + + + Build disabled palette from active + アクティブãªãƒ‘レットã‹ã‚‰ç„¡åŠ¹æ™‚ã®ãƒ‘レットを構築 + + + + Central color &roles + 中央部ã®è‰²ã®å½¹å‰²(&R) + + + + Choose central color role + 中央部ã®è‰²ã®å½¹å‰²ã‚’é¸æŠžã—ã¦ãã ã•ã„ + + + + <b>Select a color role.</b><p>Available central roles are: <ul> <li>Window - general background color.</li> <li>WindowText - general foreground color. </li> <li>Base - used as background color for e.g. text entry widgets, usually white or another light color. </li> <li>Text - the foreground color used with Base. Usually this is the same as WindowText, in what case it must provide good contrast both with Window and Base. </li> <li>Button - general button background color, where buttons need a background different from Window, as in the Macintosh style. </li> <li>ButtonText - a foreground color used with the Button color. </li> <li>Highlight - a color to indicate a selected or highlighted item. </li> <li>HighlightedText - a text color that contrasts to Highlight. </li> <li>BrightText - a text color that is very different from WindowText and contrasts well with e.g. black. </li> </ul> </p> + <b>色ã®å½¹å‰²ã®é¸æŠžã€‚</b><p>é¸æŠžå¯èƒ½ãªä¸­å¤®éƒ¨ã®å½¹å‰²: <ul> <li>ウィンドウ - 一般的ãªèƒŒæ™¯è‰²ã€‚</li> <li>ウィンドウテキスト - 一般的ãªå‰æ™¯è‰²ã€‚ </li> <li>ベース - テキスト入力ウィジェット等ã®èƒŒæ™¯è‰²ã€‚通常ã¯ç™½ãªã©ã®æ˜Žã‚‹ã„色。 </li> <li>テキスト - ベースã¨å…±ã«ç”¨ã„られるå‰æ™¯è‰²ã€‚通常ã¯ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ãƒ†ã‚­ã‚¹ãƒˆã¨åŒã˜ã ãŒã€ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ã¨ãƒ™ãƒ¼ã‚¹ã«å¯¾ã—ã¦ã‚ˆã‚Šã‚ˆã„コントラストãŒå¿…è¦ãªå ´åˆã«ä½¿ç”¨ã•ã‚Œã‚‹ã€‚ </li> <li>ボタン - 一般的ãªãƒœã‚¿ãƒ³ã®èƒŒæ™¯è‰²ã€‚Macintosh スタイルã®ã‚ˆã†ã«ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ã¨ç•°ãªã‚‹èƒŒæ™¯è‰²ã‚’使用ã™ã‚‹å ´åˆã«ä½¿ç”¨ã•ã‚Œã‚‹ã€‚ </li> <li>ボタンテキスト - ボタンã¨å…±ã«ç”¨ã„られるå‰æ™¯è‰² </li> <li>ãƒã‚¤ãƒ©ã‚¤ãƒˆ - アイテムãŒé¸æŠžã•ã‚Œã¦ã„ãŸã‚Šã€ãƒã‚¤ãƒ©ã‚¤ãƒˆã•ã‚Œã¦ã„ã‚‹ã“ã¨ã‚’示ã™ãŸã‚ã«ä½¿ç”¨ã•ã‚Œã‚‹è‰²ã€‚ </li> <li>ãƒã‚¤ãƒ©ã‚¤ãƒˆã®ãƒ†ã‚­ã‚¹ãƒˆ - ãƒã‚¤ãƒ©ã‚¤ãƒˆæ™‚ã®ãƒ†ã‚­ã‚¹ãƒˆã®è‰²ã€‚ </li> <li>明るã„テキスト - é»’ãªã©ã®èƒŒæ™¯è‰²ã«å¯¾ã—ã¦ä½¿ç”¨ã•ã‚Œã‚‹ãƒ†ã‚­ã‚¹ãƒˆã®è‰²ã€‚ウィンドウテキストã®å対ã®è‰²ã€‚ </li> </ul> </p> + + + + Window + ウィンドウ + + + + WindowText + ウィンドウテキスト + + + + Button + ボタン + + + + Base + ベース + + + + Text + テキスト + + + + BrightText + 明るã„テキスト + + + + ButtonText + ボタンテキスト + + + + Highlight + ãƒã‚¤ãƒ©ã‚¤ãƒˆ + + + + HighlightedText + ãƒã‚¤ãƒ©ã‚¤ãƒˆã®ãƒ†ã‚­ã‚¹ãƒˆ + + + + &Select Color: + 色ã®é¸æŠž(&S): + + + + + Choose a color + 色をé¸æŠžã—ã¦ãã ã•ã„ + + + + Choose a color for the selected central color role. + é¸æŠžã•ã‚ŒãŸä¸­å¤®éƒ¨ã®è‰²ã®å½¹å‰²ã«ä½¿ç”¨ã™ã‚‹è‰²ã‚’é¸æŠžã—ã¦ãã ã•ã„。 + + + + 3-D shadow &effects + 3Dã®å½±ã®åŠ¹æžœ(&E) + + + + Build &from button color + ボタンã®è‰²ã‹ã‚‰æ§‹ç¯‰ã™ã‚‹(&F) + + + + Generate shadings + 影を生æˆã™ã‚‹ + + + + Check to let 3D-effect colors be calculated from button-color. + 3D効果ã®è‰²ã‚’ボタンã®è‰²ã‹ã‚‰è¨ˆç®—ã™ã‚‹ã«ã¯ãƒã‚§ãƒƒã‚¯ã—ã¦ãã ã•ã„。 + + + + Choose 3D-effect color role + 3D効果ã®è‰²ã®å½¹å‰²ã®é¸æŠž + + + + <b>Select a color role.</b><p>Available effect roles are: <ul> <li>Light - lighter than Button color. </li> <li>Midlight - between Button and Light. </li> <li>Mid - between Button and Dark. </li> <li>Dark - darker than Button. </li> <li>Shadow - a very dark color. </li> </ul> + <b>色ã®å½¹å‰²ã®é¸æŠžã€‚</b><p>é¸æŠžå¯èƒ½ãªä¸­å¤®éƒ¨ã®å½¹å‰²: <ul> <li>ライト - ボタンã®è‰²ã‚ˆã‚Šæ˜Žã‚‹ã„。 </li> <li>ミッドライト - ボタンã¨ãƒ©ã‚¤ãƒˆã®é–“。 </li> <li>ミッド - ボタンã¨ãƒ€ãƒ¼ã‚¯ã®é–“。 </li> <li>ダーク - ボタンより暗ã„。 </li> <li>シャドウ - ã¨ã¦ã‚‚æš—ã„色。 </li> </ul> + + + + Light + ライト + + + + Midlight + ミッドライト + + + + Mid + ミッド + + + + Dark + ダーク + + + + Shadow + シャドウ + + + + Select Co&lor: + 色ã®é¸æŠž(&L): + + + + Choose a color for the selected effect color role. + é¸æŠžã®åŠ¹æžœã®è‰²ã®å½¹å‰²ã«ä½¿ç”¨ã™ã‚‹è‰²ã‚’é¸æŠžã—ã¦ãã ã•ã„。 + + + + OK + OK + + + + Close dialog and apply all changes. + å…¨ã¦ã®å¤‰æ›´ã‚’é©ç”¨ã—ã¦ãƒ€ã‚¤ã‚¢ãƒ­ã‚°ã‚’é–‰ã˜ã‚‹ã€‚ + + + + Cancel + キャンセル + + + + Close dialog and discard all changes. + å…¨ã¦ã®å¤‰æ›´ã‚’破棄ã—ã¦ãƒ€ã‚¤ã‚¢ãƒ­ã‚°ã‚’é–‰ã˜ã‚‹ã€‚ + + + + PreviewFrame + + + Desktop settings will only take effect after an application restart. + デスクトップã®è¨­å®šã¯ã‚¢ãƒ—リケーションã®å†èµ·å‹•å¾Œã«å映ã•ã‚Œã¾ã™ã€‚ + + + + PreviewWidgetBase + + + Preview Window + プレビューウィンドウ + + + + ButtonGroup + ボタングループ + + + + RadioButton1 + ラジオボタン1 + + + + RadioButton2 + ラジオボタン2 + + + + RadioButton3 + ラジオボタン3 + + + + ButtonGroup2 + ボタングループ2 + + + + CheckBox1 + ãƒã‚§ãƒƒã‚¯ãƒœãƒƒã‚¯ã‚¹1 + + + + CheckBox2 + ãƒã‚§ãƒƒã‚¯ãƒœãƒƒã‚¯ã‚¹2 + + + + LineEdit + ラインエディタ + + + + ComboBox + コンボボックス + + + + PushButton + プッシュボタン + + + + <p> +<a href="http://qt.nokia.com">http://qt.nokia.com</a> +</p> +<p> +<a href="http://www.kde.org">http://www.kde.org</a> +</p> + <p> +<a href="http://qt.nokia.com">http://qt.nokia.com</a> +</p> +<p> +<a href="http://www.kde.org">http://www.kde.org</a> +</p> + + + diff --git a/translations/qvfb_ja.ts b/translations/qvfb_ja.ts new file mode 100644 index 0000000..cdf95c1 --- /dev/null +++ b/translations/qvfb_ja.ts @@ -0,0 +1,525 @@ + + + + + AnimationSaveWidget + + + + Record + 録画 + + + + Reset + リセット + + + + Save + ä¿å­˜ + + + + Save in MPEG format (requires netpbm package installed) + MPEGå½¢å¼ã§ä¿å­˜(netpbmパッケージã®ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ãŒå¿…è¦) + + + + + Click record to begin recording. + 録画を開始ã™ã‚‹ã«ã¯ã€ŒéŒ²ç”»ã€ã‚’クリックã—ã¦ãã ã•ã„。 + + + + + Finished saving. + ä¿å­˜ãŒå®Œäº†ã—ã¾ã—ãŸã€‚ + + + + Paused. Click record to resume, or save if done. + 一時åœæ­¢ä¸­ã€‚「録画ã€ã‚’クリックå†é–‹ã™ã‚‹ã‹ã€ä¿å­˜ã‚’ã—ã¦ãã ã•ã„。 + + + + Pause + 一時åœæ­¢ + + + + Recording... + 録画中... + + + + Saving... + ä¿å­˜ä¸­... + + + + + Save animation... + 動画をä¿å­˜ä¸­... + + + + Save canceled. + ä¿å­˜ãŒã‚­ãƒ£ãƒ³ã‚»ãƒ«ã•ã‚Œã¾ã—ãŸã€‚ + + + + Save failed! + ä¿å­˜ã«å¤±æ•—ã—ã¾ã—ãŸï¼ + + + + Config + + + Configure + 設定 + + + + Size + サイズ + + + + 176x220 "SmartPhone" + 176x220 "スマートフォン" + + + + 240x320 "PDA" + 240x320 "PDA" + + + + 320x240 "TV" / "QVGA" + 320x240 "TV" / "QVGA" + + + + 640x480 "VGA" + 640x480 "VGA" + + + + 800x480 + 800x480 + + + + 800x600 + 800x600 + + + + 1024x768 + 1024x768 + + + + Custom + ãれ以外 + + + + Depth + 色深度 + + + + 1 bit monochrome + 1 bit モノクロ + + + + 2 bit grayscale + 2 bit グレイスケール + + + + 4 bit grayscale + 4 bit グレイスケール + + + + 8 bit + 8 bit + + + + 12 (16) bit + 12(16) bit + + + + 15 bit + 15 bit + + + + 16 bit + 16 bit + + + + 18 bit + 18 bit + + + + 24 bit + 24 bit + + + + 32 bit + 32 bit + + + + 32 bit ARGB + 32 bit ARGB + + + + Swap red and blue channels + 赤ã¨é’ã®ãƒãƒ£ãƒ³ãƒãƒ«ã‚’入れ替ãˆã‚‹ + + + + BGR format + BGR フォーマット + + + + Skin + スキン + + + + None + ãªã— + + + + Emulate touch screen (no mouse move) + タッãƒã‚¹ã‚¯ãƒªãƒ¼ãƒ³ã®ã‚¨ãƒŸãƒ¥ãƒ¬ãƒ¼ãƒˆ(マウスムーブãŒç„¡åŠ¹ã«ãªã‚Šã¾ã™) + + + + Emulate LCD screen (Only with fixed zoom of 3.0 times magnification) + LCDスクリーンã®ã‚¨ãƒŸãƒ¥ãƒ¬ãƒ¼ãƒˆ(3å€å›ºå®šã®æ‹¡å¤§ã‚ºãƒ¼ãƒ ) + + + + <p>Note that any applications using the virtual framebuffer will be terminated if you change the Size or Depth <i>above</i>. You may freely modify the Gamma <i>below</i>. + <p><i>以上ã®</i>サイズや色深度を変更ã—ãŸå ´åˆã€ãƒ´ã‚¡ãƒ¼ãƒãƒ£ãƒ«ãƒ•ãƒ¬ãƒ¼ãƒ ãƒãƒƒãƒ•ã‚¡ä¸Šã§å‹•ä½œã—ã¦ã„るアプリケーションã¯çµ‚了ã—ã¾ã™ã€‚<i>以下ã®</i>ガンマ値ã®å¤‰æ›´ã®å ´åˆã¯ã‚¢ãƒ—リケーションã¯çµ‚了ã—ã¾ã›ã‚“。 + + + + Gamma + ガンマ + + + + Blue + é’ + + + + + + + 1.0 + 1.0 + + + + Green + ç·‘ + + + + All + 全㦠+ + + + Red + 赤 + + + + Set all to 1.0 + å…¨ã¦1.0ã«ã™ã‚‹ + + + + &OK + &OK + + + + &Cancel + キャンセル(&C) + + + + DeviceSkin + + + The image file '%1' could not be loaded. + ç”»åƒãƒ•ã‚¡ã‚¤ãƒ« "%1" を読ã¿è¾¼ã‚ã¾ã›ã‚“。 + + + + The skin directory '%1' does not contain a configuration file. + スキンã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª "%1" ã«è¨­å®šãƒ•ã‚¡ã‚¤ãƒ«ãŒã‚ã‚Šã¾ã›ã‚“。 + + + + The skin configuration file '%1' could not be opened. + スキンã®è¨­å®šãƒ•ã‚¡ã‚¤ãƒ« "%1" ãŒé–‹ã‘ã¾ã›ã‚“。 + + + + The skin configuration file '%1' could not be read: %2 + スキンã®è¨­å®šãƒ•ã‚¡ã‚¤ãƒ« "%1" ãŒèª­ã¿è¾¼ã‚ã¾ã›ã‚“: %2 + + + + Syntax error: %1 + シンタックスエラー: %1 + + + + The skin "up" image file '%1' does not exist. + スキン㮠"up" ã®ç”»åƒãƒ•ã‚¡ã‚¤ãƒ« "%1" ãŒã‚ã‚Šã¾ã›ã‚“。 + + + + The skin "down" image file '%1' does not exist. + スキン㮠"down" ã®ç”»åƒãƒ•ã‚¡ã‚¤ãƒ« "%1" ãŒã‚ã‚Šã¾ã›ã‚“。 + + + + The skin "closed" image file '%1' does not exist. + スキン㮠"closed" ã®ç”»åƒãƒ•ã‚¡ã‚¤ãƒ« "%1" ãŒã‚ã‚Šã¾ã›ã‚“。 + + + + The skin cursor image file '%1' does not exist. + スキンã®ã‚«ãƒ¼ã‚½ãƒ«ã®ç”»åƒãƒ•ã‚¡ã‚¤ãƒ« "%1" ãŒã‚ã‚Šã¾ã›ã‚“。 + + + + Syntax error in area definition: %1 + エリア定義ã®ã‚·ãƒ³ã‚¿ãƒƒã‚¯ã‚¹ã‚¨ãƒ©ãƒ¼: %1 + + + + Mismatch in number of areas, expected %1, got %2. + エリア数ãŒæ­£ã—ãã‚ã‚Šã¾ã›ã‚“。%2 ã¨ãªã£ã¦ã‚ã‚Šã¾ã™ãŒ %1 ã§ã‚ã‚‹ã¹ãã§ã™ã€‚ + + + + QVFb + + + &Save image... + ç”»åƒã®ä¿å­˜(&S)... + + + + &Animation... + å‹•ç”»ã®ä¿å­˜(&A)... + + + + &Quit + 終了(&Q) + + + + Show &Cursor + カーソルã®è¡¨ç¤º(&C) + + + + &Refresh Rate... + リフレッシュレート(&R)... + + + + Zoom scale &0.5 + ズームスケール &0.5 + + + + Zoom scale &1 + ズームスケール &1 + + + + Zoom scale &2 + ズームスケール &2 + + + + Zoom scale &3 + ズームスケール &3 + + + + Zoom scale &4 + ズームスケール &4 + + + + &File + ファイル(&F) + + + + &Configure... + 設定ã®å¤‰æ›´(&C)... + + + + &View + 表示(&V) + + + + &No rotation + ローテーションãªã—(&N) + + + + &90° rotation + &90° ローテーション + + + + 1&80° rotation + 1&80° ローテーション + + + + 2&70° rotation + 2&70° ローテーション + + + + Zoom scale 0.7&5 + ズームスケール 0.7&5 + + + + Zoom &scale... + ズームスケール(&S)... + + + + &Help + ヘルプ(&H) + + + + &About... + QVFB ã«ã¤ã„ã¦(&A)... + + + + Save Main Screen image + メインスクリーンã®ç”»åƒã®ä¿å­˜ + + + + + snapshot.png + スナップショット.png + + + + + Portable Network Graphics (*.png) + + + + + Save Main Screen Image + メインスクリーンã®ç”»åƒã®ä¿å­˜ + + + + + Save failed. Check that you have permission to write to the target directory. + ä¿å­˜ã«å¤±æ•—ã—ã¾ã—ãŸã€‚ä¿å­˜å…ˆã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªn書ãè¾¼ã¿æ¨©é™ãŒã‚ã‚‹ã‹ã‚’確èªã—ã¦ãã ã•ã„。 + + + + Save Second Screen image + サブスクリーンã®ç”»åƒã®ä¿å­˜ + + + + Save Second Screen Image + サブスクリーンã®ç”»åƒã®ä¿å­˜ + + + + About QVFB + QVFB ã«ã¤ã„㦠+ + + + <h2>The Qt for Embedded Linux Virtual X11 Framebuffer</h2><p>This application runs under Qt for X11, emulating a simple framebuffer, which the Qt for Embedded Linux server and clients can attach to just as if it was a hardware Linux framebuffer. <p>With the aid of this development tool, you can develop Qt for Embedded Linux applications under X11 without having to switch to a virtual console. This means you can comfortably use your other development tools such as GUI profilers and debuggers. + <h2>The Qt for Embedded Linux Virtual X11 Framebuffer</h2><p>ã“ã®ã‚¢ãƒ—リケーション㯠Qt for X11 上ã§å‹•ä½œã—ã€Qt for Embedded Linux ã®ã‚µãƒ¼ãƒãƒ¼ã¨ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆãŒãƒãƒ¼ãƒ‰ã‚¦ã‚§ã‚¢ã® Linux フレームãƒãƒƒãƒ•ã‚¡ã®ã‚ˆã†ã«æŽ¥ç¶šå¯èƒ½ãªã‚·ãƒ³ãƒ—ルãªãƒ•ãƒ¬ãƒ¼ãƒ ãƒãƒƒãƒ•ã‚¡ã‚’エミュレートã—ã¾ã™ã€‚ <p>ã“ã®é–‹ç™ºãƒ„ールを使用ã™ã‚‹ã¨ Qt for Embedded Linux å‘ã‘ã®ã‚¢ãƒ—リケーション㌠X11 上ã§ãƒ´ã‚¡ãƒ¼ãƒãƒ£ãƒ«ã‚³ãƒ³ã‚½ãƒ¼ãƒ«ã¸åˆ‡ã‚Šæ›¿ãˆã‚‹äº‹ãªã開発ã§ãるよã†ã«ãªã‚Šã¾ã™ã€‚GUI ã®ãƒ—ロファイラやデãƒãƒƒã‚¬ãªã©ã®ä»–ã®ãƒ„ールを一緒ã«ä½¿ç”¨ã™ã‚‹æ™‚ã«ä¾¿åˆ©ã§ã—ょã†ã€‚ + + + + Browse... + ä»–ã®ã‚¹ã‚­ãƒ³ã‚’å‚ç…§... + + + + Load Custom Skin... + カスタムスキンを開ã... + + + + All QVFB Skins (*.skin) + QVFB ã®ã‚¹ã‚­ãƒ³(*.skin) + + + + QVFbRateDialog + + + Target frame rate: + ターゲットã®ãƒ•ãƒ¬ãƒ¼ãƒ ãƒ¬ãƒ¼ãƒˆ: + + + + + %1fps + %1fps + + + + OK + OK + + + + Cancel + キャンセル + + + -- cgit v0.12 From 4aafc4e55e0906be0cc39911b2c1a4ffe71c4d91 Mon Sep 17 00:00:00 2001 From: Morten Engvoldsen Date: Fri, 20 Aug 2010 14:00:36 +0200 Subject: Doc: fixing creator bugs, removing menus and textbox in the header --- doc/src/template/style/narrow.css | 3 +++ doc/src/template/style/style.css | 4 ++++ tools/qdoc3/htmlgenerator.cpp | 13 +++++++------ 3 files changed, 14 insertions(+), 6 deletions(-) diff --git a/doc/src/template/style/narrow.css b/doc/src/template/style/narrow.css index 349048f..de5b0a0 100644 --- a/doc/src/template/style/narrow.css +++ b/doc/src/template/style/narrow.css @@ -203,6 +203,9 @@ *border: 1px solid #fff; *height: 17px; _height: 18px; + /* to be fixed */ + display: none; + /* to be fixed */ } .narrow .indexbox .indexIcon { diff --git a/doc/src/template/style/style.css b/doc/src/template/style/style.css index 6f2bdce..9afff03 100755 --- a/doc/src/template/style/style.css +++ b/doc/src/template/style/style.css @@ -1521,6 +1521,10 @@ .creator .toc { margin:10px 20px 10px 10px; } + + .creator #narrowsearch, .creator #narrowmenu{ + display:none; + } /* end of creator spec*/ } diff --git a/tools/qdoc3/htmlgenerator.cpp b/tools/qdoc3/htmlgenerator.cpp index 3e79a9f..cd2662c 100644 --- a/tools/qdoc3/htmlgenerator.cpp +++ b/tools/qdoc3/htmlgenerator.cpp @@ -1810,18 +1810,19 @@ void HtmlGenerator::generateHeader(const QString& title, // Adding jquery and functions - providing online tools and search features out() << " \n"; out() << " \n"; - // Adding style and js for small windows - out() << " \n"; - out() << " "; - out() << " \n"; - out() << " \n"; + // Adding syntax highlighter // future release - // Setting some additional style sheet related details depending on configuration (e.g. online/offline) + // Setting some additional style sheet related details depending on configuration (e.g. Online/Creator) switch (application) { case Online: + // Adding style and js for small windows + out() << " \n"; + out() << " "; + out() << " \n"; + out() << " \n"; // Browser spec styles out() << "