From b3ff31825d9c3e9d139565024d424eb03299b5f5 Mon Sep 17 00:00:00 2001 From: Aleksandar Sasha Babic Date: Mon, 3 May 2010 12:38:28 +0200 Subject: Fixing small memory leak in testlib. Reviewed-by: Jason Barron --- src/testlib/qplaintestlogger.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/testlib/qplaintestlogger.cpp b/src/testlib/qplaintestlogger.cpp index 0888cfc..d516f62 100644 --- a/src/testlib/qplaintestlogger.cpp +++ b/src/testlib/qplaintestlogger.cpp @@ -181,6 +181,7 @@ namespace QTest { hbuffer->Des().Copy(ptr.Mid(i, size)); RDebug::Print(format, hbuffer); } + delete hbuffer; } else { // fast, no allocations, but truncates silently -- cgit v0.12 From fb2c7c62030f1e2bf314fc30b9786de611563116 Mon Sep 17 00:00:00 2001 From: Sami Merila Date: Mon, 3 May 2010 15:31:26 +0300 Subject: QS60Style: QTabWidget Usability issue with capacitive screens Normally Qt uses scrollbuttons together at right (for LeftToRight UI) side of the horizontal QTabBar; for vertical tab bar, scrollbuttons are displayed below/above the widget. Using QTabBar's scroll buttons with touch device that has capacitive screen, is somewhat hard as the touch area for either of the scroll buttons is somewhat smallish. So user is experiencing frequent wrong taps. Making the touch area larger, would make the tabbar tab shape area smaller, so it isn't a very good solution. Therefore, when QS60Style is in use, QTabWidget draws the scrollbuttons on either side of the QTabBar. Task-number: QT-3104 Reviewed-by: Alessandro Portale --- src/gui/styles/qs60style.cpp | 66 ++++++++++++++++++++++++++++++++++++-------- src/gui/widgets/qtabbar.cpp | 39 ++++++++++++++++++++++++++ 2 files changed, 94 insertions(+), 11 deletions(-) diff --git a/src/gui/styles/qs60style.cpp b/src/gui/styles/qs60style.cpp index 90b8be3..c0c1cdd 100644 --- a/src/gui/styles/qs60style.cpp +++ b/src/gui/styles/qs60style.cpp @@ -1546,18 +1546,35 @@ void QS60Style::drawControl(ControlElement element, const QStyleOption *option, QS60StylePrivate::pixelMetric(PM_DefaultFrameWidth); const int tabOverlap = QS60StylePrivate::pixelMetric(PM_TabBarTabOverlap) - borderThickness; - - if (skinElement==QS60StylePrivate::SE_TabBarTabEastInactive|| - skinElement==QS60StylePrivate::SE_TabBarTabEastActive|| - skinElement==QS60StylePrivate::SE_TabBarTabWestInactive|| - skinElement==QS60StylePrivate::SE_TabBarTabWestActive){ - optionTabAdj.rect.adjust(0, 0, 0, tabOverlap); - } else { - if (directionMirrored) - optionTabAdj.rect.adjust(-tabOverlap, 0, 0, 0); + const bool usesScrollButtons = + (widget) ? (qobject_cast(widget))->usesScrollButtons() : false; + const int roomForScrollButton = + usesScrollButtons ? QS60StylePrivate::pixelMetric(PM_TabBarScrollButtonWidth) : 0; + + // adjust for overlapping tabs and scrollbuttons, if necessary + if (skinElement == QS60StylePrivate::SE_TabBarTabEastInactive || + skinElement == QS60StylePrivate::SE_TabBarTabEastActive || + skinElement == QS60StylePrivate::SE_TabBarTabWestInactive || + skinElement == QS60StylePrivate::SE_TabBarTabWestActive){ + if (optionTabAdj.position == QStyleOptionTabV3::Beginning) + optionTabAdj.rect.adjust(0, roomForScrollButton, 0, tabOverlap); + else if (optionTabAdj.position == QStyleOptionTabV3::End) + optionTabAdj.rect.adjust(0, 0, 0, tabOverlap); else - optionTabAdj.rect.adjust(0, 0, tabOverlap, 0); + optionTabAdj.rect.adjust(0, 0, 0, tabOverlap); + } else { + if (directionMirrored) { + if (optionTabAdj.position == QStyleOptionTabV3::Beginning) + optionTabAdj.rect.adjust(-tabOverlap, 0, -roomForScrollButton, 0); + else + optionTabAdj.rect.adjust(-tabOverlap, 0, 0, 0); + } else { + if (optionTabAdj.position == QStyleOptionTabV3::Beginning) + optionTabAdj.rect.adjust(roomForScrollButton, 0, tabOverlap, 0); + else + optionTabAdj.rect.adjust(0, 0, tabOverlap, 0); } + } } QS60StylePrivate::drawSkinElement(skinElement, painter, optionTabAdj.rect, flags); } @@ -1570,7 +1587,10 @@ void QS60Style::drawControl(ControlElement element, const QStyleOption *option, const int borderThickness = QS60StylePrivate::pixelMetric(PM_DefaultFrameWidth); const int tabOverlap = QS60StylePrivate::pixelMetric(PM_TabBarTabOverlap) - borderThickness; - const QRect windowRect = painter->window(); + const bool usesScrollButtons = + (widget) ? (qobject_cast(widget))->usesScrollButtons() : false; + const int roomForScrollButton = + usesScrollButtons ? QS60StylePrivate::pixelMetric(PM_TabBarScrollButtonWidth) : 0; switch (tab->shape) { case QTabBar::TriangularWest: @@ -1605,6 +1625,17 @@ void QS60Style::drawControl(ControlElement element, const QStyleOption *option, || optionTab.shape == QTabBar::TriangularEast || optionTab.shape == QTabBar::TriangularWest; + //make room for scrollbuttons + if (!verticalTabs) { + if ((tab->position == QStyleOptionTabV3::Beginning && !directionMirrored)) + tr.adjust(roomForScrollButton, 0, 0, 0); + else if ((tab->position == QStyleOptionTabV3::Beginning && directionMirrored)) + tr.adjust(0, 0, -roomForScrollButton, 0); + } else { + if (tab->position == QStyleOptionTabV3::Beginning) + tr.adjust(0, roomForScrollButton, 0, 0); + } + if (verticalTabs) { painter->save(); int newX, newY, newRotation; @@ -2490,6 +2521,19 @@ QSize QS60Style::sizeFromContents(ContentsType ct, const QStyleOption *opt, sz = QCommonStyle::sizeFromContents(ct, opt, csz, widget); if (naviPaneSize.height() > sz.height()) sz.setHeight(naviPaneSize.height()); + // Adjust beginning tabbar item size, if scrollbuttons are used. This is to ensure that the + // tabbar item content fits, since scrollbuttons are making beginning tabbar item smaller. + int scrollButtonSize = 0; + if (const QTabBar *tabBar = qobject_cast(widget)) + scrollButtonSize = tabBar->usesScrollButtons() ? pixelMetric(PM_TabBarScrollButtonWidth) : 0; + if (const QStyleOptionTab *tab = qstyleoption_cast(opt)) { + const bool verticalTabs = tab->shape == QTabBar::RoundedEast + || tab->shape == QTabBar::RoundedWest + || tab->shape == QTabBar::TriangularEast + || tab->shape == QTabBar::TriangularWest; + if (tab->position == QStyleOptionTab::Beginning) + sz += QSize(verticalTabs ? 0 : scrollButtonSize, !verticalTabs ? 0 : scrollButtonSize); + } } break; case CT_MenuItem: diff --git a/src/gui/widgets/qtabbar.cpp b/src/gui/widgets/qtabbar.cpp index 22e8255..de1e3ad 100644 --- a/src/gui/widgets/qtabbar.cpp +++ b/src/gui/widgets/qtabbar.cpp @@ -67,6 +67,10 @@ #include #endif +#ifndef QT_NO_STYLE_S60 +#include "qs60style.h" +#endif + QT_BEGIN_NAMESPACE inline static bool verticalTabs(QTabBar::Shape shape) @@ -478,6 +482,9 @@ void QTabBarPrivate::layoutTabs() if (useScrollButtons && tabList.count() && last > available) { int extra = extraWidth(); +#ifndef QT_NO_STYLE_S60 + QS60Style *s60Style = qobject_cast(QApplication::style()); +#endif if (!vertTabs) { Qt::LayoutDirection ld = q->layoutDirection(); QRect arrows = QStyle::visualRect(ld, q->rect(), @@ -485,25 +492,57 @@ void QTabBarPrivate::layoutTabs() int buttonOverlap = q->style()->pixelMetric(QStyle::PM_TabBar_ScrollButtonOverlap, 0, q); if (ld == Qt::LeftToRight) { +// In S60style, tab scroll buttons are layoutted separately, on the sides of the tabbar. +#ifndef QT_NO_STYLE_S60 + if (s60Style) { + rightB->setGeometry(arrows.left() + extra / 2, arrows.top(), extra / 2, arrows.height()); + leftB->setGeometry(0, arrows.top(), extra / 2, arrows.height()); + } else { +#endif leftB->setGeometry(arrows.left(), arrows.top(), extra/2, arrows.height()); rightB->setGeometry(arrows.right() - extra/2 + buttonOverlap, arrows.top(), extra/2, arrows.height()); +#ifndef QT_NO_STYLE_S60 + } +#endif leftB->setArrowType(Qt::LeftArrow); rightB->setArrowType(Qt::RightArrow); } else { +#ifndef QT_NO_STYLE_S60 + if (s60Style) { + rightB->setGeometry(arrows.left() + extra / 2, arrows.top(), extra / 2, arrows.height()); + leftB->setGeometry(0, arrows.top(), extra / 2, arrows.height()); + } else { +#endif rightB->setGeometry(arrows.left(), arrows.top(), extra/2, arrows.height()); leftB->setGeometry(arrows.right() - extra/2 + buttonOverlap, arrows.top(), extra/2, arrows.height()); +#ifndef QT_NO_STYLE_S60 + } +#endif rightB->setArrowType(Qt::LeftArrow); leftB->setArrowType(Qt::RightArrow); } } else { +#ifndef QT_NO_STYLE_S60 + if (s60Style) { + QRect arrows = QRect(0, 0, size.width(), available ); + leftB->setGeometry(arrows.left(), arrows.top(), arrows.width(), extra / 2); + leftB->setArrowType(Qt::UpArrow); + rightB->setGeometry(arrows.left(), arrows.bottom() - extra / 2 + 1, + arrows.width(), extra / 2); + rightB->setArrowType(Qt::DownArrow); + } else { +#endif QRect arrows = QRect(0, available - extra, size.width(), extra ); leftB->setGeometry(arrows.left(), arrows.top(), arrows.width(), extra/2); leftB->setArrowType(Qt::UpArrow); rightB->setGeometry(arrows.left(), arrows.bottom() - extra/2 + 1, arrows.width(), extra/2); rightB->setArrowType(Qt::DownArrow); +#ifndef QT_NO_STYLE_S60 + } +#endif } leftB->setEnabled(scrollOffset > 0); rightB->setEnabled(last - scrollOffset >= available - extra); -- cgit v0.12 From f9ce9ae008d1e055d5cbbbef6dddd3dd8b226624 Mon Sep 17 00:00:00 2001 From: Sami Merila Date: Mon, 3 May 2010 16:19:05 +0300 Subject: QS60Style: QComboBoxPrivateScroller draws holes into menu canvas QComboBoxPrivateScroller calls eraserects for menu scroller areas, expecting the style to fill the gaps. Unfortunately, the QS60Style does not draw menu scrollers at all (but they are functional when interacted with). Therefore, these areas are now drawn as holes. As a fix, the eraseRect call from provate class QComboBoxPrivateScroller is removed when "s60 flag" is defined. Task-number: QTBUG-10371 Reviewed-by: Janne Koskinen --- src/gui/widgets/qcombobox_p.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/gui/widgets/qcombobox_p.h b/src/gui/widgets/qcombobox_p.h index 92d85cc..29a628c 100644 --- a/src/gui/widgets/qcombobox_p.h +++ b/src/gui/widgets/qcombobox_p.h @@ -200,7 +200,9 @@ protected: menuOpt.menuItemType = QStyleOptionMenuItem::Scroller; if (sliderAction == QAbstractSlider::SliderSingleStepAdd) menuOpt.state |= QStyle::State_DownArrow; +#ifndef Q_WS_S60 p.eraseRect(rect()); +#endif style()->drawControl(QStyle::CE_MenuScroller, &menuOpt, &p); } -- cgit v0.12 From 1d71aaecf680b086ead2ef4791bdd433feac3f69 Mon Sep 17 00:00:00 2001 From: Oswald Buddenhagen Date: Mon, 3 May 2010 13:47:30 +0200 Subject: rename qt_iw.ts to qt_he.ts iw comes from the obsolete ISO639. we are using ISO639-1 or something newer. --- translations/qt_he.ts | 7781 +++++++++++++++++++++++++++++++++++++++++ translations/qt_iw.ts | 7781 ----------------------------------------- translations/translations.pri | 2 +- 3 files changed, 7782 insertions(+), 7782 deletions(-) create mode 100644 translations/qt_he.ts delete mode 100644 translations/qt_iw.ts diff --git a/translations/qt_he.ts b/translations/qt_he.ts new file mode 100644 index 0000000..72a6df9 --- /dev/null +++ b/translations/qt_he.ts @@ -0,0 +1,7781 @@ + + + + + AudioOutput + + + <html>The audio playback device <b>%1</b> does not work.<br/>Falling back to <b>%2</b>.</html> + + + + + <html>Switching to the audio playback device <b>%1</b><br/>which just became available and has higher preference.</html> + + + + + Revert back to device '%1' + + + + + CloseButton + + + Close Tab + + + + + PPDOptionsModel + + Name + שם + + + + Phonon:: + + + Notifications + + + + + Music + + + + + Video + + + + + Communication + + + + + Games + + + + + Accessibility + + + + + Phonon::Gstreamer::Backend + + + Warning: You do not seem to have the package gstreamer0.10-plugins-good installed. + Some video features have been disabled. + + + + + Warning: You do not seem to have the base GStreamer plugins installed. + All audio and video support has been disabled + + + + + Phonon::Gstreamer::MediaObject + + + Cannot start playback. + +Check your Gstreamer installation and make sure you +have libgstreamer-plugins-base installed. + + + + + A required codec is missing. You need to install the following codec(s) to play this content: %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::VolumeSlider + + + + Volume: %1% + + + + + + + Use this slider to adjust the volume. The leftmost position is 0%, the rightmost is %1% + + + + + Q3Accel + + + %1, %2 not defined + + + + + Ambiguous %1 not handled + + + + + 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 + &אישור + + + + 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 + + + + <qt>Are you sure you wish to delete %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 + + + + + Could not create directory +%1 + + + + + Could not remove file or directory +%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 + ביטול + + + + Q3TabDialog + + + + OK + אישור + + + + Apply + החל + + + + Help + עזרה + + + + Defaults + ברירות מחדל + + + + Cancel + ביטול + + + + 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 + + + + + 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" אינו נתמך + + + + 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) + (לא ידוע) + + + + Q3Wizard + + + &Cancel + + + + + < &Back + + + + + &Next > + + + + + &Finish + + + + + &Help + + + + + 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 + + + + + QAbstractSpinBox + + + &Step up + + + + + Step &down + + + + + &Select All + + + + + QApplication + + + 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. + RTL + + + + Executable '%1' requires Qt %2, found Qt %3. + + + + + Incompatible Qt Library Error + + + + + Activate + + + + + Activates the program's main window + + + + + QAxSelect + + + Select ActiveX Control + + + + + OK + אישור + + + + &Cancel + + + + + COM &Object: + + + + + 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 >> + &הגדר צבעים מותאמים אישית >> + + + OK + אישור + + + Cancel + ביטול + + + + &Add to Custom Colors + ה&וסף לצבעים מותאמים אישית + + + Select color + בחירת צבע + + + + QComboBox + + + + Open + פתח + + + + False + שקר + + + + True + אמת + + + + Close + סגור + + + + QCoreApplication + + + %1: key is empty + QSystemSemaphore + + + + + %1: unable to make key + QSystemSemaphore + + + + + %1: ftok failed + QSystemSemaphore + + + + + QDB2Driver + + + Unable to connect + + + + + Unable to commit transaction + + + + + Unable to rollback transaction + + + + + Unable to set autocommit + + + + + QDB2Result + + + + Unable to execute statement + + + + + Unable to prepare statement + + + + + Unable to bind variable + + + + + Unable to fetch record %1 + + + + + Unable to fetch next + + + + + Unable to fetch first + + + + + QDateTimeEdit + + + AM + + + + + am + + + + + PM + + + + + pm + + + + + QDial + + + QDial + + + + + SpeedoMeter + + + + + SliderHandle + + + + + QDialog + + + What's This? + מה זה? + + + + Done + + + + + QDialogButtonBox + + + + + OK + אישור + + + + Save + שמור + + + + &Save + &שמור + + + + Open + פתח + + + + Cancel + ביטול + + + + &Cancel + + + + + Close + סגור + + + + &Close + &סגור + + + + Apply + החל + + + + Reset + + + + + Help + עזרה + + + + Don't Save + + + + + Discard + + + + + &Yes + &כן + + + + Yes to &All + + + + + &No + &לא + + + + N&o to All + + + + + Save All + + + + + Abort + + + + + Retry + + + + + Ignore + + + + + Restore Defaults + + + + + Close without Saving + + + + + &OK + &אישור + + + + QDirModel + + + Name + שם + + + + Size + גודל + + + + Kind + Match OS X Finder + + + + + Type + All other platforms + סוג + + + + Date Modified + + + + + QDockWidget + + + Close + סגור + + + + Dock + + + + + Float + + + + + QDoubleSpinBox + + + More + + + + + Less + + + + + QErrorMessage + + + &Show this message again + &הצג הודעה זו שנית + + + + &OK + &אישור + + + + Debug Message: + + + + + Warning: + + + + + Fatal Error: + + + + + QFile + + + + Destination file exists + + + + + Cannot remove source file + + + + + Cannot open %1 for input + + + + + Cannot open for output + + + + + Failure to write block + + + + + Cannot create %1 for output + + + + + QFileDialog + + + + All Files (*) + כל הקבצים (*) + + + + + Back + אחורה + + + + + List View + תצוגת רשימה + + + + + Detail View + תצוגת פרטים + + + + + File + קובץ + + + + Open + פתח + + + + Save As + שמירה בשם + + + + + + + &Open + &פתח + + + + + &Save + &שמור + + + + &Rename + ש&נה שם + + + + &Delete + &מחק + + + + Show &hidden files + הצג קבצים &מוסתרים + + + + New Folder + תיקיה חדשה + + + + Find Directory + חפש ספריה + + + + Directories + ספריות + + + + All Files (*.*) + כל הקבצים (*.*) + + + + %1 already exists. +Do you want to replace it? + + + + + %1 +File not found. +Please verify the correct file name was given. + + + + + My Computer + + + + + + Parent Directory + + + + + + Files of type: + + + + + + Directory: + + + + + + %1 +Directory not found. +Please verify the correct directory name was given. + + + + + '%1' is write protected. +Do you want to delete it anyway? + + + + + Are sure you want to delete '%1'? + + + + + Could not delete directory. + + + + + Recent Places + + + + + Drive + + + + + Unknown + + + + + Show + + + + + + Forward + + + + + &New Folder + + + + + + &Choose + + + + + Remove + + + + + + File &name: + &שם הקובץ: + + + + + Look in: + + + + + + Create New Folder + צור תיקיה חדשה + + + + QFileSystemModel + + + %1 TB + + + + + %1 GB + + + + + %1 MB + + + + + %1 KB + + + + + %1 bytes + + + + + Invalid filename + + + + + <b>The name "%1" can not be used.</b><p>Try using another name, with fewer characters or no punctuations marks. + + + + + Name + שם + + + + Size + גודל + + + + Kind + Match OS X Finder + + + + + Type + All other platforms + סוג + + + + Date Modified + + + + + My Computer + + + + + Computer + + + + + QFontDatabase + + + + Normal + + + + + + + Bold + + + + + + Demi Bold + + + + + + + Black + + + + + 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 + + + + + QFontDialog + + + &Font + &גופן + + + + Font st&yle + &סגנון גופן + + + + &Size + גו&דל + + + + Effects + אפקטים + + + + Stri&keout + קו &חוצה + + + + &Underline + קו &תחתי + + + + Sample + דוגמה + + + + + Select Font + בחר גופן + + + + Wr&iting System + + + + + QFtp + + + Host %1 found + המארח %1 נמצא + + + + Host found + המארח נמצא + + + + + + Connected to host %1 + מחובר למארח %1 + + + + Connected to host + מחובר למארח + + + + Connection to %1 closed + החיבור אל %1 נסגר + + + + + + Connection closed + החיבור נסגר + + + + + Host %1 not found + המארח %1 לא נמצא + + + + + Connection refused to host %1 + החיבור אל המארח %1 נדחה + + + + Connection timed out to host %1 + + + + + + + + Unknown error + + + + + + Connecting to host failed: +%1 + + + + + + Login failed: +%1 + + + + + + Listing directory failed: +%1 + + + + + + Changing directory failed: +%1 + + + + + + Downloading file failed: +%1 + + + + + + Uploading file failed: +%1 + + + + + + Removing file failed: +%1 + + + + + + Creating directory failed: +%1 + + + + + + Removing directory failed: +%1 + + + + + + Not connected + + + + + + Connection refused for data connection + + + + + QHostInfo + + + Unknown error + + + + + QHostInfoAgent + + + + + + + + + + Host not found + + + + + + + + Unknown address type + + + + + + + Unknown error + + + + + QHttp + + + + Connection refused + החיבור נדחה + + + + + + Host %1 not found + המארח %1 לא נמצא + + + + + Wrong content length + אורך תוכן שגוי + + + + HTTPS connection requested but SSL support not compiled in + + + + + + + + HTTP request failed + בקשת ה-HTTP נכשלה + + + + Host %1 found + המארח %1 נמצא + + + + Host found + המארח נמצא + + + + Connected to host %1 + מחובר למארח %1 + + + + Connected to host + מחובר למארח + + + + Connection to %1 closed + החיבור אל %1 נסגר + + + + + Connection closed + החיבור נסגר + + + + + + + Unknown error + + + + + + Request aborted + + + + + + No server set to connect to + + + + + + Server closed connection unexpectedly + + + + + + Invalid HTTP response header + + + + + Unknown authentication method + + + + + + + + Invalid HTTP chunked body + + + + + Error writing response to device + + + + + Proxy authentication required + + + + + Authentication required + + + + + Connection refused (or timed out) + + + + + Proxy requires authentication + + + + + Host requires authentication + + + + + Data corrupted + + + + + Unknown protocol specified + + + + + SSL handshake failed + + + + + QHttpSocketEngine + + + Did not receive HTTP response from proxy + + + + + Error parsing authentication request from proxy + + + + + Authentication required + + + + + Proxy denied connection + + + + + Error communicating with HTTP proxy + + + + + 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 + + + + + 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 input method + + + + + Windows input method + + + + + Mac OS X input method + + + + + QInputDialog + + + Enter a value: + + + + + QLibrary + + + Could not mmap '%1': %2 + + + + + Plugin verification data mismatch in '%1' + + + + + Could not unmap '%1': %2 + + + + + The plugin '%1' uses incompatible Qt library. (%2.%3.%4) [%5] + + + + + The plugin '%1' uses incompatible Qt library. Expected build key "%2", got "%3" + + + + + Unknown error + + + + + + The shared library was not found. + + + + + The file '%1' is not a valid Qt plugin. + + + + + The plugin '%1' uses incompatible Qt library. (Cannot mix debug and release libraries.) + + + + + + Cannot load library %1: %2 + + + + + + Cannot unload library %1: %2 + + + + + + Cannot resolve symbol "%1" in %2: %3 + + + + + QLineEdit + + + &Undo + &בטל + + + + &Redo + בצע &שוב + + + + Cu&t + &גזור + + + + &Copy + הע&תק + + + + &Paste + ה&דבק + + + + Select All + בחר הכל + + + + Delete + מחק + + + + QLocalServer + + + + %1: Name error + + + + + %1: Permission denied + + + + + %1: Address in use + + + + + + %1: Unknown error %2 + + + + + QLocalSocket + + + + %1: Connection refused + + + + + + %1: Remote closed + + + + + + + + %1: Invalid name + + + + + + %1: Socket access error + + + + + + %1: Socket resource error + + + + + + %1: Socket operation timed out + + + + + + %1: Datagram too large + + + + + + + %1: Connection error + + + + + + %1: The socket operation is not supported + + + + + %1: Unknown error + + + + + + %1: Unknown error %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 + ש&חזר + + + + &Move + ה&זז + + + + &Size + גו&דל + + + + Mi&nimize + &מזער + + + + Ma&ximize + &הגדל + + + + Stay on &Top + &תמיד עליון + + + + &Close + &סגור + + + + - [%1] + + + + + Maximize + הגדל + + + + Unshade + + + + + Shade + + + + + Restore + + + + + Help + עזרה + + + + Menu + + + + + QMenu + + + + Close + סגור + + + + + Open + פתח + + + + + + Execute + + + + + QMenuBar + + Options + אפשרויות + + + + QMessageBox + + + + + + OK + אישור + + + + About Qt + + + + + Help + עזרה + + + + Show Details... + + + + + Hide Details... + + + + + <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> + + + + + QMultiInputContext + + + Select IM + + + + + QMultiInputContextPlugin + + + Multiple input method switcher + + + + + Multiple input method switcher that uses the context menu of the text widgets + + + + + QNativeSocketEngine + + + The remote host closed the connection + + + + + Network operation timed out + + + + + Out of resources + + + + + Unsupported socket operation + + + + + Protocol type not supported + + + + + Invalid socket descriptor + + + + + 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 + + + + + Unable to send a message + + + + + Unable to receive a message + + + + + Unable to write + + + + + Network error + + + + + Another socket is already listening on the same port + + + + + Unable to initialize non-blocking socket + + + + + Unable to initialize broadcast socket + + + + + Attempt to use IPv6 socket on a platform with no IPv6 support + + + + + Host unreachable + + + + + Datagram was too large to send + + + + + Operation on non-socket + + + + + Unknown error + + + + + The proxy type is invalid for this operation + + + + + QNetworkAccessCacheBackend + + + Error opening %1 + + + + + QNetworkAccessFileBackend + + + Request for opening non-local file %1 + + + + + Error opening %1: %2 + + + + + Write error writing to %1: %2 + + + + + Cannot open %1: Path is a directory + + + + + Read error reading from %1: %2 + + + + + QNetworkAccessFtpBackend + + + No suitable proxy found + + + + + Cannot open %1: is a directory + + + + + Logging in to %1 failed: authentication required + + + + + Error while downloading %1: %2 + + + + + Error while uploading %1: %2 + + + + + QNetworkAccessHttpBackend + + + No suitable proxy found + + + + + QNetworkReply + + + Error downloading %1 - server replied: %2 + + + + + Protocol "%1" is unknown + + + + + QNetworkReplyImpl + + + + Operation canceled + + + + + QOCIDriver + + + Unable to logon + + + + + Unable to initialize + QOCIDriver + + + + + 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 bind value + + + + + Unable to execute statement + + + + + QODBCDriver + + + Unable to connect + + + + + Unable to connect - Driver doesn't support all needed functionality + + + + + Unable to disable autocommit + + + + + Unable to commit transaction + + + + + Unable to rollback transaction + + + + + Unable to enable autocommit + + + + + QODBCResult + + + + QODBCResult::reset: Unable to set 'SQL_CURSOR_STATIC' as statement attribute. Please check your ODBC driver configuration + + + + + + Unable to execute statement + + + + + Unable to fetch next + + + + + Unable to prepare statement + + + + + Unable to bind variable + + + + + + + Unable to fetch last + + + + + Unable to fetch + + + + + Unable to fetch first + + + + + Unable to fetch previous + + + + + QObject + + + Home + Home + + + + Operation not supported on %1 + + + + + Invalid URI: %1 + + + + + Write error writing to %1: %2 + + + + + Read error reading from %1: %2 + + + + + Socket error on %1: %2 + + + + + Remote host closed the connection prematurely on %1 + + + + + Protocol error: packet of size 0 received + + + + + + No host name given + + + + + 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 + + + Centimeters (cm) + + + + + Millimeters (mm) + + + + + Inches (in) + + + + + Points (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 + + + locally connected + מחוברת מקומית + + + + + Aliases: %1 + שמות נוספים: %1 + + + + + unknown + לא ידוע + + + + OK + אישור + + + Cancel + ביטול + + + Print in color if available + הדפס בצבע אם הדבר זמין + + + Printer + מדפסת + + + + Print all + הדפס הכל + + + + Print range + טווח הדפסה + + + Print last page first + הדפס את העמוד הראשון אחרון + + + Number of copies: + מספר עותקים: + + + Paper format + תבנית נייר + + + Portrait + לאורך + + + Landscape + לרוחב + + + + 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) + + + + 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) + + + + B0 (1000 x 1414 mm) + B0 (1000 x 1414 mm) + + + + B1 (707 x 1000 mm) + B1 (707 x 1000 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) + + + + 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) + + + + B10 (31 x 44 mm) + B10 (31 x 44 mm) + + + + C5E (163 x 229 mm) + C5E (163 x 229 mm) + + + + DLE (110 x 220 mm) + DLE (110 x 220 mm) + + + + Folio (210 x 330 mm) + Folio (210 x 330 mm) + + + + Ledger (432 x 279 mm) + Ledger (432 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) + + + + A4 (210 x 297 mm, 8.26 x 11.7 inches) + + + + + B5 (176 x 250 mm, 6.93 x 9.84 inches) + + + + + Executive (7.5 x 10 inches, 191 x 254 mm) + + + + + Legal (8.5 x 14 inches, 216 x 356 mm) + + + + + Letter (8.5 x 11 inches, 216 x 279 mm) + + + + + + + Print + הדפס + + + File + קובץ + + + + Print To File ... + + + + Other + אחר + + + + File %1 is not writable. +Please choose a different file name. + + + + + %1 already exists. +Do you want to overwrite it? + + + + + File exists + + + + + <qt>Do you want to overwrite it?</qt> + + + + + Print selection + + + + + %1 is a directory. +Please choose a different file name. + + + + + A0 + + + + + A1 + + + + + A2 + + + + + A3 + + + + + A4 + + + + + A5 + + + + + A6 + + + + + A7 + + + + + A8 + + + + + A9 + + + + + B0 + + + + + B1 + + + + + B2 + + + + + B3 + + + + + B4 + + + + + B5 + + + + + B6 + + + + + B7 + + + + + B8 + + + + + B9 + + + + + B10 + + + + + C5E + + + + + DLE + + + + + Executive + + + + + Folio + + + + + Ledger + + + + + Legal + + + + + Letter + + + + + Tabloid + + + + + US Common #10 Envelope + + + + + Custom + + + + + + &Options >> + + + + + &Print + + + + + &Options << + + + + + Print to File (PDF) + + + + + Print to File (Postscript) + + + + + Local file + + + + + Write %1 file + + + + + The 'From' value cannot be greater than the 'To' value. + + + + + 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 + + + + + Export to PostScript + + + + + QPrintPropertiesDialog + + Save + שמור + + + OK + אישור + + + + 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 + + + + + QPrintWidget + + + Form + + + + + Printer + מדפסת + + + + &Name: + + + + + P&roperties + + + + + Location: + + + + + Preview + + + + + Type: + + + + + Output &file: + + + + + ... + + + + + QProcess + + + + Could not open input redirection for reading + + + + + + Could not open output redirection for writing + + + + + Resource error (fork failure): %1 + + + + + + + + + + + + + Process operation timed out + + + + + + + + Error reading from process + + + + + + + Error writing to process + + + + + Process crashed + + + + + No program defined + + + + + Process failed to start + + + + + QProgressDialog + + + Cancel + ביטול + + + + QPushButton + + + Open + פתח + + + + QRadioButton + + + Check + + + + + QRegExp + + + no error occurred + לא אירעה כל שגיאה + + + + disabled feature used + + + + + bad char class syntax + + + + + bad lookahead syntax + + + + + bad repetition syntax + + + + + invalid octal value + + + + + missing left delim + + + + + unexpected end + + + + + met internal limit + + + + + QSQLite2Driver + + + Error to open 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 + + + + + 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 + + + + + + %1: unable to lock + + + + + %1: unable to unlock + + + + + + %1: permission denied + + + + + + %1: already exists + + + + + + %1: doesn't exists + + + + + + %1: out of resources + + + + + + %1: unknown error %2 + + + + + %1: key is empty + + + + + %1: unix key file doesn't exists + + + + + %1: ftok failed + + + + + + %1: unable to make key + + + + + %1: system-imposed size restrictions + + + + + %1: not attached + + + + + %1: invalid size + + + + + %1: key error + + + + + %1: size query failed + + + + + QShortcut + + + Space + רווח + + + + Esc + Esc + + + + Tab + Tab + + + + Backtab + Backtab + + + + Backspace + Backspace + + + + Return + Return + + + + Enter + Enter + + + + Ins + Ins + + + + Del + Del + + + + Pause + Pause + + + + 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 + + + + + Favorites + + + + + Search + + + + + Standby + + + + + Open URL + + + + + Launch Mail + + + + + Launch Media + + + + + Launch (0) + + + + + Launch (1) + + + + + Launch (2) + + + + + Launch (3) + + + + + Launch (4) + + + + + Launch (5) + + + + + Launch (6) + + + + + Launch (7) + + + + + Launch (8) + + + + + Launch (9) + + + + + Launch (A) + + + + + Launch (B) + + + + + Launch (C) + + + + + Launch (D) + + + + + Launch (E) + + + + + Launch (F) + + + + + Print Screen + + + + + Page Up + + + + + Page Down + + + + + Caps Lock + + + + + Num Lock + + + + + Number Lock + + + + + Scroll Lock + + + + + Insert + הוסף + + + + Delete + מחק + + + + Escape + + + + + System Request + + + + + Select + + + + + Yes + כן + + + + No + לא + + + + Context1 + + + + + Context2 + + + + + Context3 + + + + + Context4 + + + + + Call + + + + + Hangup + + + + + Flip + + + + + + Ctrl + Ctrl + + + + + Shift + Shift + + + + + Alt + Alt + + + + + Meta + + + + + + + + + + + + F%1 + F%1 + + + + Home Page + + + + + 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 + + + + + SOCKS version 5 protocol error + + + + + General SOCKSv5 server failure + + + + + Connection not allowed by SOCKSv5 server + + + + + TTL expired + + + + + SOCKSv5 command not supported + + + + + Address type not supported + + + + + Unknown SOCKSv5 proxy error code 0x%1 + + + + + Network operation timed out + + + + + QSpinBox + + + More + + + + + Less + + + + + QSql + + + Delete + מחק + + + + Delete this record? + האם למחוק רשומה זו? + + + + + + Yes + כן + + + + + + No + לא + + + + Insert + הוסף + + + + Update + עדכן + + + + Save edits? + האם לשמור את העריכה? + + + + Cancel + ביטול + + + + Confirm + אישור + + + + Cancel your edits? + האם לבטל את העריכה שלך? + + + + QSslSocket + + + Unable to write data: %1 + + + + + Error while reading: %1 + + + + + Error during SSL handshake: %1 + + + + + Error creating SSL context (%1) + + + + + Invalid or empty cipher list (%1) + + + + + Error creating SSL session, %1 + + + + + Error creating SSL session: %1 + + + + + Cannot provide a certificate with no key, %1 + + + + + Error loading local certificate, %1 + + + + + Error loading private key, %1 + + + + + Private key does not certificate public key, %1 + + + + + QSystemSemaphore + + + + %1: out of resources + + + + + + %1: permission denied + + + + + %1: already exists + + + + + %1: does not exist + + + + + + %1: unknown error %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 + + + + + QUndoGroup + + + Undo + בטל + + + + Redo + שחזר + + + + QUndoModel + + + <empty> + + + + + QUndoStack + + + Undo + בטל + + + + Redo + שחזר + + + + QUnicodeControlCharacterMenu + + + LRM Left-to-right mark + + + + + RLM Right-to-left mark + + + + + ZWJ Zero width joiner + + + + + ZWNJ Zero width non-joiner + + + + + ZWSP Zero width space + + + + + LRE Start of left-to-right embedding + + + + + RLE Start of right-to-left embedding + + + + + LRO Start of left-to-right override + + + + + RLO Start of right-to-left override + + + + + PDF Pop directional formatting + + + + + Insert Unicode control character + + + + + QWebFrame + + + Request cancelled + + + + + Request blocked + + + + + Cannot show URL + + + + + Frame load interruped by policy change + + + + + Cannot show mimetype + + + + + File does not exist + + + + + QWebPage + + + Bad HTTP request + + + + + 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 + + + + + Open Link + Open Link context menu item + + + + + Ignore + Ignore Grammar context menu item + + + + + Spelling + Spelling and Grammar context sub-menu item + + + + + Show Spelling and Grammar + menu item title + + + + + Hide Spelling and Grammar + menu item title + + + + + Check Spelling + Check spelling context menu item + + + + + Check Spelling While Typing + Check spelling while typing context menu item + + + + + Check Grammar With Spelling + Check grammar with spelling context menu item + + + + + Fonts + Font context sub-menu item + + + + + Bold + Bold context menu item + + + + + Italic + Italic context menu item + + + + + Underline + Underline context menu item + + + + + Outline + Outline context menu item + + + + + Direction + Writing direction context sub-menu item + + + + + Text Direction + Text direction context sub-menu item + + + + + Default + Default writing direction context menu item + + + + + LTR + Left to Right context menu item + + + + + RTL + Right to Left context menu item + + + + + Inspect + Inspect Element context menu item + + + + + No recent searches + Label for only item in menu that appears when clicking on the search field image, when no searches have been performed + + + + + Recent searches + label for first item in the menu that appears when clicking on the search field image, used as embedded menu title + + + + + Clear recent searches + menu item in Recent Searches menu that empties menu's contents + + + + + Unknown + Unknown filesize FTP directory listing item + + + + + %1 (%2x%3 pixels) + Title string for images + + + + + Web Inspector - %2 + + + + + Scroll here + + + + + Left edge + + + + + Top + + + + + Right edge + + + + + Bottom + + + + + Page left + + + + + Page up + + + + + Page right + + + + + Page down + + + + + Scroll left + + + + + Scroll up + + + + + Scroll right + + + + + Scroll down + + + + + %n file(s) + number of chosen file + + + + + + + JavaScript Alert - %1 + + + + + JavaScript Confirm - %1 + + + + + JavaScript Prompt - %1 + + + + + Move the cursor to the next character + + + + + Move the cursor to the previous character + + + + + Move the cursor to the next word + + + + + Move the cursor to the previous word + + + + + Move the cursor to the next line + + + + + Move the cursor to the previous line + + + + + Move the cursor to the start of the line + + + + + Move the cursor to the end of the line + + + + + Move the cursor to the start of the block + + + + + Move the cursor to the end of the block + + + + + Move the cursor to the start of the document + + + + + Move the cursor to the end of the document + + + + + Select all + + + + + Select to the next character + + + + + Select to the previous character + + + + + Select to the next word + + + + + Select to the previous word + + + + + Select to the next line + + + + + Select to the previous line + + + + + Select to the start of the line + + + + + Select to the end of the line + + + + + Select to the start of the block + + + + + Select to the end of the block + + + + + Select to the start of the document + + + + + Select to the end of the document + + + + + Delete to the start of the word + + + + + Delete to the end of the word + + + + + Insert a new paragraph + + + + + Insert a new line + + + + + QWhatsThisAction + + + What's This? + מה זה? + + + + QWidget + + + * + + + + + QWizard + + + Cancel + ביטול + + + + Help + עזרה + + + + Go Back + + + + + Continue + + + + + Commit + + + + + Done + + + + + < &Back + + + + + &Finish + + + + + &Help + + + + + &Next + + + + + &Next > + + + + + QWorkspace + + + &Restore + ש&חזר + + + + &Move + ה&זז + + + + &Size + &שנה גודל + + + + Mi&nimize + &מזער + + + + Ma&ximize + &הגדל + + + + &Close + &סגור + + + + Stay on &Top + &תמיד עליון + + + + + Sh&ade + &גלול + + + + + %1 - [%2] + %1 - [%2] + + + + Minimize + מזער + + + + Restore Down + שחזר למטה + + + + Close + סגור + + + + &Unshade + &בטל גלילה + + + + QXml + + + no error occurred + לא אירעה כל שגיאה + + + + error triggered by consumer + נגרמה שגיאה על ידי הצרכן + + + + unexpected end of file + סוף קובץ לא צפוי + + + + more than one document type definition + יותר מהגדרה אחת של סוג מסמך + + + + error occurred while parsing element + אירעה שגיאה בעת עיבוד המרכיב + + + + tag mismatch + אי-התאמה בתגית + + + + error occurred while parsing content + אירעה שגיאה בעת עיבוד התוכן + + + + unexpected character + תו לא צפוי + + + + invalid name for processing instruction + שם לא תקף עבור הוראת העיבוד + + + + version expected while reading the XML declaration + הייתה צפויה גירסה בעת קריאה ההכרזה על XML + + + + wrong value for standalone declaration + ערך שגוי עבור ההגדרה העצמאית + + + + encoding declaration or standalone declaration expected while reading the XML declaration + הייתה צפויה הכרזה על קידוד או הכרזה עצמאית בעת קריאת ההכרזה על XML + + + + standalone declaration expected while reading the XML declaration + הייתה צפויה הכרזה עצמאית בעת קריאת ההכרזה על XML + + + + error occurred while parsing document type definition + אירעה שגיאה בעת עיבוד הגדרת סוג המסמך + + + + letter is expected + הייתה צפויה אות + + + + error occurred while parsing comment + אירעה שגיאה בעת עיבוד ההערה + + + + error occurred while parsing reference + אירעה שגיאה בעת עיבוד ההתייחסות + + + + internal general entity reference not allowed in DTD + התייחסות ליישות כללית פנימית אינה מותרת ב-DTD + + + + external parsed general entity reference not allowed in attribute value + התייחסות ליישות כללית מעובדת חיצונית אינה מותרת בערך המאפיין + + + + external parsed general entity reference not allowed in DTD + התייחסות ליישות כללית מעובדת חיצונית אינה מותרת ב-DTD + + + + unparsed entity reference in wrong context + התייחסות ליישות לא מעובדת בהקשר שגוי + + + + recursive entities + יישות רקורסיבית + + + + error in the text declaration of an external entity + שגיאה בהכרזת טקסט של יישות חיצונית + + + + QXmlStream + + + + Extra content at end of document. + + + + + Invalid entity value. + + + + + Invalid XML character. + + + + + Sequence ']]>' not allowed in content. + + + + + Namespace prefix '%1' not declared + + + + + Attribute redefined. + + + + + Unexpected character '%1' in public id literal. + + + + + Invalid XML version string. + + + + + Unsupported XML version. + + + + + %1 is an invalid encoding name. + + + + + Encoding %1 is unsupported + + + + + Standalone accepts only yes or no. + + + + + Invalid attribute in XML declaration. + + + + + Premature end of document. + + + + + Invalid document. + + + + + Expected + + + + + , but got ' + + + + + Unexpected ' + + + + + Expected character data. + + + + + Recursive entity detected. + + + + + Start tag expected. + + + + + XML declaration not at start of document. + + + + + NDATA in parameter entity declaration. + + + + + %1 is an invalid processing instruction name. + + + + + Invalid processing instruction name. + + + + + + + + Illegal namespace declaration. + + + + + Invalid XML name. + + + + + Opening and ending tag mismatch. + + + + + Reference to unparsed entity '%1'. + + + + + + + Entity '%1' not declared. + + + + + Reference to external entity '%1' in attribute value. + + + + + Invalid character reference. + + + + + + Encountered incorrectly encoded content. + + + + + The standalone pseudo attribute must appear after the encoding. + + + + + %1 is an invalid PUBLIC identifier. + + + + + QtXmlPatterns + + + An %1-attribute with value %2 has already been declared. + + + + + An %1-attribute must have a valid %2 as value, which %3 isn't. + + + + + Network timeout. + + + + + Element %1 can't be serialized because it appears outside the document element. + + + + + Attribute %1 can't be serialized because it appears at the top level. + + + + + Year %1 is invalid because it begins with %2. + + + + + Day %1 is outside the range %2..%3. + + + + + Month %1 is outside the range %2..%3. + + + + + Overflow: Can't represent date %1. + + + + + Day %1 is invalid for month %2. + + + + + Time 24:%1:%2.%3 is invalid. Hour is 24, but minutes, seconds, and milliseconds are not all 0; + + + + + Time %1:%2:%3.%4 is invalid. + + + + + Overflow: Date can't be represented. + + + + + + At least one component must be present. + + + + + At least one time component must appear after the %1-delimiter. + + + + + No operand in an integer division, %1, can be %2. + + + + + The first operand in an integer division, %1, cannot be infinity (%2). + + + + + The second operand in a division, %1, cannot be zero (%2). + + + + + %1 is not a valid value of type %2. + + + + + When casting to %1 from %2, the source value cannot be %3. + + + + + Integer division (%1) by zero (%2) is undefined. + + + + + Division (%1) by zero (%2) is undefined. + + + + + Modulus division (%1) by zero (%2) is undefined. + + + + + + Dividing a value of type %1 by %2 (not-a-number) is not allowed. + + + + + Dividing a value of type %1 by %2 or %3 (plus or minus zero) is not allowed. + + + + + Multiplication of a value of type %1 by %2 or %3 (plus or minus infinity) is not allowed. + + + + + A value of type %1 cannot have an Effective Boolean Value. + + + + + Effective Boolean Value cannot be calculated for a sequence containing two or more atomic values. + + + + + Value %1 of type %2 exceeds maximum (%3). + + + + + Value %1 of type %2 is below minimum (%3). + + + + + A value of type %1 must contain an even number of digits. The value %2 does not. + + + + + %1 is not valid as a value of type %2. + + + + + Operator %1 cannot be used on type %2. + + + + + Operator %1 cannot be used on atomic values of type %2 and %3. + + + + + The namespace URI in the name for a computed attribute cannot be %1. + + + + + The name for a computed attribute cannot have the namespace URI %1 with the local name %2. + + + + + Type error in cast, expected %1, received %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. + + + + + No casting is possible with %1 as the target type. + + + + + It is not possible to cast from %1 to %2. + + + + + Casting to %1 is not possible because it is an abstract type, and can therefore never be instantiated. + + + + + It's not possible to cast the value %1 of type %2 to %3 + + + + + Failure when casting from %1 to %2: %3 + + + + + A comment cannot contain %1 + + + + + A comment cannot end with a %1. + + + + + No comparisons can be done involving the type %1. + + + + + Operator %1 is not available between atomic values of type %2 and %3. + + + + + An attribute node cannot be a child of a document node. Therefore, the attribute %1 is out of place. + + + + + A library module cannot be evaluated directly. It must be imported from a main module. + + + + + No template by name %1 exists. + + + + + A value of type %1 cannot be a predicate. A predicate must have either a numeric type or an Effective Boolean Value type. + + + + + A positional predicate must evaluate to a single numeric value. + + + + + The target name in a processing instruction cannot be %1 in any combination of upper and lower case. Therefore, is %2 invalid. + + + + + %1 is not a valid target name in a processing instruction. It must be a %2 value, e.g. %3. + + + + + The last step in a path must contain either nodes or atomic values. It cannot be a mixture between the two. + + + + + The data of a processing instruction cannot contain the string %1 + + + + + No namespace binding exists for the prefix %1 + + + + + No namespace binding exists for the prefix %1 in %2 + + + + + + %1 is an invalid %2 + + + + + %1 takes at most %n argument(s). %2 is therefore invalid. + + + + + + + %1 requires at least %n argument(s). %2 is therefore invalid. + + + + + + + The first argument to %1 cannot be of type %2. It must be a numeric type, xs:yearMonthDuration or xs:dayTimeDuration. + + + + + The first argument to %1 cannot be of type %2. It must be of type %3, %4, or %5. + + + + + The second argument to %1 cannot be of type %2. It must be of type %3, %4, or %5. + + + + + %1 is not a valid XML 1.0 character. + + + + + The first argument to %1 cannot be of type %2. + + + + + If both values have zone offsets, they must have the same zone offset. %1 and %2 are not the same. + + + + + %1 was called. + + + + + %1 must be followed by %2 or %3, not at the end of the replacement string. + + + + + In the replacement string, %1 must be followed by at least one digit when not escaped. + + + + + In the replacement string, %1 can only be used to escape itself or %2, not %3 + + + + + %1 matches newline characters + + + + + %1 and %2 match the start and end of a line. + + + + + Matches are case insensitive + + + + + Whitespace characters are removed, except when they appear in character classes + + + + + %1 is an invalid regular expression pattern: %2 + + + + + %1 is an invalid flag for regular expressions. Valid flags are: + + + + + If the first argument is the empty sequence or a zero-length string (no namespace), a prefix cannot be specified. Prefix %1 was specified. + + + + + It will not be possible to retrieve %1. + + + + + The root node of the second argument to function %1 must be a document node. %2 is not a document node. + + + + + The default collection is undefined + + + + + %1 cannot be retrieved + + + + + The normalization form %1 is unsupported. The supported forms are %2, %3, %4, and %5, and none, i.e. the empty string (no normalization). + + + + + A zone offset must be in the range %1..%2 inclusive. %3 is out of range. + + + + + %1 is not a whole number of minutes. + + + + + Required cardinality is %1; got cardinality %2. + + + + + The item %1 did not match the required type %2. + + + + + + %1 is an unknown schema type. + + + + + Only one %1 declaration can occur in the query prolog. + + + + + The initialization of variable %1 depends on itself + + + + + No variable by name %1 exists + + + + + The variable %1 is unused + + + + + Version %1 is not supported. The supported XQuery version is 1.0. + + + + + The encoding %1 is invalid. It must contain Latin characters only, must not contain whitespace, and must match the regular expression %2. + + + + + No function with signature %1 is available + + + + + + A default namespace declaration must occur before function, variable, and option declarations. + + + + + Namespace declarations must occur before function, variable, and option declarations. + + + + + Module imports must occur before function, variable, and option declarations. + + + + + It is not possible to redeclare prefix %1. + + + + + Prefix %1 is already declared in the prolog. + + + + + The name of an option must have a prefix. There is no default namespace for options. + + + + + The Schema Import feature is not supported, and therefore %1 declarations cannot occur. + + + + + The target namespace of a %1 cannot be empty. + + + + + The module import feature is not supported + + + + + No value is available for the external variable by name %1. + + + + + A construct was encountered which only is allowed in XQuery. + + + + + A template by name %1 has already been declared. + + + + + The keyword %1 cannot occur with any other mode name. + + + + + The value of attribute %1 must of type %2, which %3 isn't. + + + + + The prefix %1 can not be bound. By default, it is already bound to the namespace %2. + + + + + A variable by name %1 has already been declared. + + + + + A stylesheet function must have a prefixed name. + + + + + The namespace for a user defined function cannot be empty (try the predefined prefix %1 which exists for cases like this) + + + + + The namespace %1 is reserved; therefore user defined functions may not use it. Try the predefined prefix %2, which exists for these cases. + + + + + 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 + + + + + A function already exists with the signature %1. + + + + + No external functions are supported. All supported functions can be used directly, without first declaring them as external + + + + + An argument by name %1 has already been declared. Every argument name must be unique. + + + + + When function %1 is used for matching inside a pattern, the argument must be a variable reference or a string literal. + + + + + In an XSL-T pattern, the first argument to function %1 must be a string literal, when used for matching. + + + + + In an XSL-T pattern, the first argument to function %1 must be a literal or a variable reference, when used for matching. + + + + + In an XSL-T pattern, function %1 cannot have a third argument. + + + + + In an XSL-T pattern, only function %1 and %2, not %3, can be used for matching. + + + + + In an XSL-T pattern, axis %1 cannot be used, only axis %2 or %3 can. + + + + + %1 is an invalid template mode name. + + + + + The name of a variable bound in a for-expression must be different from the positional variable. Hence, the two variables named %1 collide. + + + + + The Schema Validation Feature is not supported. Hence, %1-expressions may not be used. + + + + + None of the pragma expressions are supported. Therefore, a fallback expression must be present + + + + + Each name of a template parameter must be unique; %1 is duplicated. + + + + + The %1-axis is unsupported in XQuery + + + + + %1 is not a valid name for a processing-instruction. + + + + + %1 is not a valid numeric literal. + + + + + No function by name %1 is available. + + + + + The namespace URI cannot be the empty string when binding to a prefix, %1. + + + + + %1 is an invalid namespace URI. + + + + + It is not possible to bind to the prefix %1 + + + + + Namespace %1 can only be bound to %2 (and it is, in either case, pre-declared). + + + + + Prefix %1 can only be bound to %2 (and it is, in either case, pre-declared). + + + + + Two namespace declaration attributes have the same name: %1. + + + + + The namespace URI must be a constant and cannot use enclosed expressions. + + + + + An attribute by name %1 has already appeared on this element. + + + + + A direct element constructor is not well-formed. %1 is ended with %2. + + + + + The name %1 does not refer to any schema type. + + + + + %1 is an complex type. Casting to complex types is not possible. However, casting to atomic types such as %2 works. + + + + + %1 is not an atomic type. Casting is only possible to atomic types. + + + + + + %1 is not in the in-scope attribute declarations. Note that the schema import feature is not supported. + + + + + The name of an extension expression must be in a namespace. + + + + + empty + + + + + zero or one + + + + + exactly one + + + + + one or more + + + + + zero or more + + + + + Required type is %1, but %2 was found. + + + + + Promoting %1 to %2 may cause loss of precision. + + + + + The focus is undefined. + + + + + It's not possible to add attributes after any other kind of node. + + + + + An attribute by name %1 has already been created. + + + + + Only the Unicode Codepoint Collation is supported(%1). %2 is unsupported. + + + + + %1 is an unsupported encoding. + + + + + %1 contains octets which are disallowed in the requested encoding %2. + + + + + The codepoint %1, occurring in %2 using encoding %3, is an invalid XML character. + + + + + Ambiguous rule match. + + + + + In a namespace constructor, the value for a namespace cannot be an empty string. + + + + + The prefix must be a valid %1, which %2 is not. + + + + + The prefix %1 cannot be bound. + + + + + Only the prefix %1 can be bound to %2 and vice versa. + + + + + Circularity detected + + + + + The parameter %1 is required, but no corresponding %2 is supplied. + + + + + The parameter %1 is passed, but no corresponding %2 exists. + + + + + The URI cannot have a fragment + + + + + Element %1 is not allowed at this location. + + + + + Text nodes are not allowed at this location. + + + + + Parse error: %1 + + + + + The value of the XSL-T version attribute must be a value of type %1, which %2 isn't. + + + + + Running an XSL-T 1.0 stylesheet with a 2.0 processor. + + + + + Unknown XSL-T attribute %1. + + + + + Attribute %1 and %2 are mutually exclusive. + + + + + In a simplified stylesheet module, attribute %1 must be present. + + + + + If element %1 has no attribute %2, it cannot have attribute %3 or %4. + + + + + Element %1 must have at least one of the attributes %2 or %3. + + + + + At least one mode must be specified in the %1-attribute on element %2. + + + + + Attribute %1 cannot appear on the element %2. Only the standard attributes can appear. + + + + + Attribute %1 cannot appear on the element %2. Only %3 is allowed, and the standard attributes. + + + + + Attribute %1 cannot appear on the element %2. Allowed is %3, %4, and the standard attributes. + + + + + Attribute %1 cannot appear on the element %2. Allowed is %3, and the standard attributes. + + + + + XSL-T attributes on XSL-T elements must be in the null namespace, not in the XSL-T namespace which %1 is. + + + + + The attribute %1 must appear on element %2. + + + + + The element with local name %1 does not exist in XSL-T. + + + + + Element %1 must come last. + + + + + At least one %1-element must occur before %2. + + + + + Only one %1-element can appear. + + + + + At least one %1-element must occur inside %2. + + + + + When attribute %1 is present on %2, a sequence constructor cannot be used. + + + + + Element %1 must have either a %2-attribute or a sequence constructor. + + + + + When a parameter is required, a default value cannot be supplied through a %1-attribute or a sequence constructor. + + + + + Element %1 cannot have children. + + + + + Element %1 cannot have a sequence constructor. + + + + + + The attribute %1 cannot appear on %2, when it is a child of %3. + + + + + A parameter in a function cannot be declared to be a tunnel. + + + + + This processor is not Schema-aware and therefore %1 cannot be used. + + + + + Top level stylesheet elements must be in a non-null namespace, which %1 isn't. + + + + + The value for attribute %1 on element %2 must either be %3 or %4, not %5. + + + + + Attribute %1 cannot have the value %2. + + + + + The attribute %1 can only appear on the first %2 element. + + + + + At least one %1 element must appear as child of %2. + + + + + VolumeSlider + + + Muted + + + + + + Volume: %1% + + + + diff --git a/translations/qt_iw.ts b/translations/qt_iw.ts deleted file mode 100644 index 72a6df9..0000000 --- a/translations/qt_iw.ts +++ /dev/null @@ -1,7781 +0,0 @@ - - - - - AudioOutput - - - <html>The audio playback device <b>%1</b> does not work.<br/>Falling back to <b>%2</b>.</html> - - - - - <html>Switching to the audio playback device <b>%1</b><br/>which just became available and has higher preference.</html> - - - - - Revert back to device '%1' - - - - - CloseButton - - - Close Tab - - - - - PPDOptionsModel - - Name - שם - - - - Phonon:: - - - Notifications - - - - - Music - - - - - Video - - - - - Communication - - - - - Games - - - - - Accessibility - - - - - Phonon::Gstreamer::Backend - - - Warning: You do not seem to have the package gstreamer0.10-plugins-good installed. - Some video features have been disabled. - - - - - Warning: You do not seem to have the base GStreamer plugins installed. - All audio and video support has been disabled - - - - - Phonon::Gstreamer::MediaObject - - - Cannot start playback. - -Check your Gstreamer installation and make sure you -have libgstreamer-plugins-base installed. - - - - - A required codec is missing. You need to install the following codec(s) to play this content: %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::VolumeSlider - - - - Volume: %1% - - - - - - - Use this slider to adjust the volume. The leftmost position is 0%, the rightmost is %1% - - - - - Q3Accel - - - %1, %2 not defined - - - - - Ambiguous %1 not handled - - - - - 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 - &אישור - - - - 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 - - - - <qt>Are you sure you wish to delete %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 - - - - - Could not create directory -%1 - - - - - Could not remove file or directory -%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 - ביטול - - - - Q3TabDialog - - - - OK - אישור - - - - Apply - החל - - - - Help - עזרה - - - - Defaults - ברירות מחדל - - - - Cancel - ביטול - - - - 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 - - - - - 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" אינו נתמך - - - - 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) - (לא ידוע) - - - - Q3Wizard - - - &Cancel - - - - - < &Back - - - - - &Next > - - - - - &Finish - - - - - &Help - - - - - 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 - - - - - QAbstractSpinBox - - - &Step up - - - - - Step &down - - - - - &Select All - - - - - QApplication - - - 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. - RTL - - - - Executable '%1' requires Qt %2, found Qt %3. - - - - - Incompatible Qt Library Error - - - - - Activate - - - - - Activates the program's main window - - - - - QAxSelect - - - Select ActiveX Control - - - - - OK - אישור - - - - &Cancel - - - - - COM &Object: - - - - - 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 >> - &הגדר צבעים מותאמים אישית >> - - - OK - אישור - - - Cancel - ביטול - - - - &Add to Custom Colors - ה&וסף לצבעים מותאמים אישית - - - Select color - בחירת צבע - - - - QComboBox - - - - Open - פתח - - - - False - שקר - - - - True - אמת - - - - Close - סגור - - - - QCoreApplication - - - %1: key is empty - QSystemSemaphore - - - - - %1: unable to make key - QSystemSemaphore - - - - - %1: ftok failed - QSystemSemaphore - - - - - QDB2Driver - - - Unable to connect - - - - - Unable to commit transaction - - - - - Unable to rollback transaction - - - - - Unable to set autocommit - - - - - QDB2Result - - - - Unable to execute statement - - - - - Unable to prepare statement - - - - - Unable to bind variable - - - - - Unable to fetch record %1 - - - - - Unable to fetch next - - - - - Unable to fetch first - - - - - QDateTimeEdit - - - AM - - - - - am - - - - - PM - - - - - pm - - - - - QDial - - - QDial - - - - - SpeedoMeter - - - - - SliderHandle - - - - - QDialog - - - What's This? - מה זה? - - - - Done - - - - - QDialogButtonBox - - - - - OK - אישור - - - - Save - שמור - - - - &Save - &שמור - - - - Open - פתח - - - - Cancel - ביטול - - - - &Cancel - - - - - Close - סגור - - - - &Close - &סגור - - - - Apply - החל - - - - Reset - - - - - Help - עזרה - - - - Don't Save - - - - - Discard - - - - - &Yes - &כן - - - - Yes to &All - - - - - &No - &לא - - - - N&o to All - - - - - Save All - - - - - Abort - - - - - Retry - - - - - Ignore - - - - - Restore Defaults - - - - - Close without Saving - - - - - &OK - &אישור - - - - QDirModel - - - Name - שם - - - - Size - גודל - - - - Kind - Match OS X Finder - - - - - Type - All other platforms - סוג - - - - Date Modified - - - - - QDockWidget - - - Close - סגור - - - - Dock - - - - - Float - - - - - QDoubleSpinBox - - - More - - - - - Less - - - - - QErrorMessage - - - &Show this message again - &הצג הודעה זו שנית - - - - &OK - &אישור - - - - Debug Message: - - - - - Warning: - - - - - Fatal Error: - - - - - QFile - - - - Destination file exists - - - - - Cannot remove source file - - - - - Cannot open %1 for input - - - - - Cannot open for output - - - - - Failure to write block - - - - - Cannot create %1 for output - - - - - QFileDialog - - - - All Files (*) - כל הקבצים (*) - - - - - Back - אחורה - - - - - List View - תצוגת רשימה - - - - - Detail View - תצוגת פרטים - - - - - File - קובץ - - - - Open - פתח - - - - Save As - שמירה בשם - - - - - - - &Open - &פתח - - - - - &Save - &שמור - - - - &Rename - ש&נה שם - - - - &Delete - &מחק - - - - Show &hidden files - הצג קבצים &מוסתרים - - - - New Folder - תיקיה חדשה - - - - Find Directory - חפש ספריה - - - - Directories - ספריות - - - - All Files (*.*) - כל הקבצים (*.*) - - - - %1 already exists. -Do you want to replace it? - - - - - %1 -File not found. -Please verify the correct file name was given. - - - - - My Computer - - - - - - Parent Directory - - - - - - Files of type: - - - - - - Directory: - - - - - - %1 -Directory not found. -Please verify the correct directory name was given. - - - - - '%1' is write protected. -Do you want to delete it anyway? - - - - - Are sure you want to delete '%1'? - - - - - Could not delete directory. - - - - - Recent Places - - - - - Drive - - - - - Unknown - - - - - Show - - - - - - Forward - - - - - &New Folder - - - - - - &Choose - - - - - Remove - - - - - - File &name: - &שם הקובץ: - - - - - Look in: - - - - - - Create New Folder - צור תיקיה חדשה - - - - QFileSystemModel - - - %1 TB - - - - - %1 GB - - - - - %1 MB - - - - - %1 KB - - - - - %1 bytes - - - - - Invalid filename - - - - - <b>The name "%1" can not be used.</b><p>Try using another name, with fewer characters or no punctuations marks. - - - - - Name - שם - - - - Size - גודל - - - - Kind - Match OS X Finder - - - - - Type - All other platforms - סוג - - - - Date Modified - - - - - My Computer - - - - - Computer - - - - - QFontDatabase - - - - Normal - - - - - - - Bold - - - - - - Demi Bold - - - - - - - Black - - - - - 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 - - - - - QFontDialog - - - &Font - &גופן - - - - Font st&yle - &סגנון גופן - - - - &Size - גו&דל - - - - Effects - אפקטים - - - - Stri&keout - קו &חוצה - - - - &Underline - קו &תחתי - - - - Sample - דוגמה - - - - - Select Font - בחר גופן - - - - Wr&iting System - - - - - QFtp - - - Host %1 found - המארח %1 נמצא - - - - Host found - המארח נמצא - - - - - - Connected to host %1 - מחובר למארח %1 - - - - Connected to host - מחובר למארח - - - - Connection to %1 closed - החיבור אל %1 נסגר - - - - - - Connection closed - החיבור נסגר - - - - - Host %1 not found - המארח %1 לא נמצא - - - - - Connection refused to host %1 - החיבור אל המארח %1 נדחה - - - - Connection timed out to host %1 - - - - - - - - Unknown error - - - - - - Connecting to host failed: -%1 - - - - - - Login failed: -%1 - - - - - - Listing directory failed: -%1 - - - - - - Changing directory failed: -%1 - - - - - - Downloading file failed: -%1 - - - - - - Uploading file failed: -%1 - - - - - - Removing file failed: -%1 - - - - - - Creating directory failed: -%1 - - - - - - Removing directory failed: -%1 - - - - - - Not connected - - - - - - Connection refused for data connection - - - - - QHostInfo - - - Unknown error - - - - - QHostInfoAgent - - - - - - - - - - Host not found - - - - - - - - Unknown address type - - - - - - - Unknown error - - - - - QHttp - - - - Connection refused - החיבור נדחה - - - - - - Host %1 not found - המארח %1 לא נמצא - - - - - Wrong content length - אורך תוכן שגוי - - - - HTTPS connection requested but SSL support not compiled in - - - - - - - - HTTP request failed - בקשת ה-HTTP נכשלה - - - - Host %1 found - המארח %1 נמצא - - - - Host found - המארח נמצא - - - - Connected to host %1 - מחובר למארח %1 - - - - Connected to host - מחובר למארח - - - - Connection to %1 closed - החיבור אל %1 נסגר - - - - - Connection closed - החיבור נסגר - - - - - - - Unknown error - - - - - - Request aborted - - - - - - No server set to connect to - - - - - - Server closed connection unexpectedly - - - - - - Invalid HTTP response header - - - - - Unknown authentication method - - - - - - - - Invalid HTTP chunked body - - - - - Error writing response to device - - - - - Proxy authentication required - - - - - Authentication required - - - - - Connection refused (or timed out) - - - - - Proxy requires authentication - - - - - Host requires authentication - - - - - Data corrupted - - - - - Unknown protocol specified - - - - - SSL handshake failed - - - - - QHttpSocketEngine - - - Did not receive HTTP response from proxy - - - - - Error parsing authentication request from proxy - - - - - Authentication required - - - - - Proxy denied connection - - - - - Error communicating with HTTP proxy - - - - - 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 - - - - - 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 input method - - - - - Windows input method - - - - - Mac OS X input method - - - - - QInputDialog - - - Enter a value: - - - - - QLibrary - - - Could not mmap '%1': %2 - - - - - Plugin verification data mismatch in '%1' - - - - - Could not unmap '%1': %2 - - - - - The plugin '%1' uses incompatible Qt library. (%2.%3.%4) [%5] - - - - - The plugin '%1' uses incompatible Qt library. Expected build key "%2", got "%3" - - - - - Unknown error - - - - - - The shared library was not found. - - - - - The file '%1' is not a valid Qt plugin. - - - - - The plugin '%1' uses incompatible Qt library. (Cannot mix debug and release libraries.) - - - - - - Cannot load library %1: %2 - - - - - - Cannot unload library %1: %2 - - - - - - Cannot resolve symbol "%1" in %2: %3 - - - - - QLineEdit - - - &Undo - &בטל - - - - &Redo - בצע &שוב - - - - Cu&t - &גזור - - - - &Copy - הע&תק - - - - &Paste - ה&דבק - - - - Select All - בחר הכל - - - - Delete - מחק - - - - QLocalServer - - - - %1: Name error - - - - - %1: Permission denied - - - - - %1: Address in use - - - - - - %1: Unknown error %2 - - - - - QLocalSocket - - - - %1: Connection refused - - - - - - %1: Remote closed - - - - - - - - %1: Invalid name - - - - - - %1: Socket access error - - - - - - %1: Socket resource error - - - - - - %1: Socket operation timed out - - - - - - %1: Datagram too large - - - - - - - %1: Connection error - - - - - - %1: The socket operation is not supported - - - - - %1: Unknown error - - - - - - %1: Unknown error %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 - ש&חזר - - - - &Move - ה&זז - - - - &Size - גו&דל - - - - Mi&nimize - &מזער - - - - Ma&ximize - &הגדל - - - - Stay on &Top - &תמיד עליון - - - - &Close - &סגור - - - - - [%1] - - - - - Maximize - הגדל - - - - Unshade - - - - - Shade - - - - - Restore - - - - - Help - עזרה - - - - Menu - - - - - QMenu - - - - Close - סגור - - - - - Open - פתח - - - - - - Execute - - - - - QMenuBar - - Options - אפשרויות - - - - QMessageBox - - - - - - OK - אישור - - - - About Qt - - - - - Help - עזרה - - - - Show Details... - - - - - Hide Details... - - - - - <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> - - - - - QMultiInputContext - - - Select IM - - - - - QMultiInputContextPlugin - - - Multiple input method switcher - - - - - Multiple input method switcher that uses the context menu of the text widgets - - - - - QNativeSocketEngine - - - The remote host closed the connection - - - - - Network operation timed out - - - - - Out of resources - - - - - Unsupported socket operation - - - - - Protocol type not supported - - - - - Invalid socket descriptor - - - - - 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 - - - - - Unable to send a message - - - - - Unable to receive a message - - - - - Unable to write - - - - - Network error - - - - - Another socket is already listening on the same port - - - - - Unable to initialize non-blocking socket - - - - - Unable to initialize broadcast socket - - - - - Attempt to use IPv6 socket on a platform with no IPv6 support - - - - - Host unreachable - - - - - Datagram was too large to send - - - - - Operation on non-socket - - - - - Unknown error - - - - - The proxy type is invalid for this operation - - - - - QNetworkAccessCacheBackend - - - Error opening %1 - - - - - QNetworkAccessFileBackend - - - Request for opening non-local file %1 - - - - - Error opening %1: %2 - - - - - Write error writing to %1: %2 - - - - - Cannot open %1: Path is a directory - - - - - Read error reading from %1: %2 - - - - - QNetworkAccessFtpBackend - - - No suitable proxy found - - - - - Cannot open %1: is a directory - - - - - Logging in to %1 failed: authentication required - - - - - Error while downloading %1: %2 - - - - - Error while uploading %1: %2 - - - - - QNetworkAccessHttpBackend - - - No suitable proxy found - - - - - QNetworkReply - - - Error downloading %1 - server replied: %2 - - - - - Protocol "%1" is unknown - - - - - QNetworkReplyImpl - - - - Operation canceled - - - - - QOCIDriver - - - Unable to logon - - - - - Unable to initialize - QOCIDriver - - - - - 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 bind value - - - - - Unable to execute statement - - - - - QODBCDriver - - - Unable to connect - - - - - Unable to connect - Driver doesn't support all needed functionality - - - - - Unable to disable autocommit - - - - - Unable to commit transaction - - - - - Unable to rollback transaction - - - - - Unable to enable autocommit - - - - - QODBCResult - - - - QODBCResult::reset: Unable to set 'SQL_CURSOR_STATIC' as statement attribute. Please check your ODBC driver configuration - - - - - - Unable to execute statement - - - - - Unable to fetch next - - - - - Unable to prepare statement - - - - - Unable to bind variable - - - - - - - Unable to fetch last - - - - - Unable to fetch - - - - - Unable to fetch first - - - - - Unable to fetch previous - - - - - QObject - - - Home - Home - - - - Operation not supported on %1 - - - - - Invalid URI: %1 - - - - - Write error writing to %1: %2 - - - - - Read error reading from %1: %2 - - - - - Socket error on %1: %2 - - - - - Remote host closed the connection prematurely on %1 - - - - - Protocol error: packet of size 0 received - - - - - - No host name given - - - - - 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 - - - Centimeters (cm) - - - - - Millimeters (mm) - - - - - Inches (in) - - - - - Points (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 - - - locally connected - מחוברת מקומית - - - - - Aliases: %1 - שמות נוספים: %1 - - - - - unknown - לא ידוע - - - - OK - אישור - - - Cancel - ביטול - - - Print in color if available - הדפס בצבע אם הדבר זמין - - - Printer - מדפסת - - - - Print all - הדפס הכל - - - - Print range - טווח הדפסה - - - Print last page first - הדפס את העמוד הראשון אחרון - - - Number of copies: - מספר עותקים: - - - Paper format - תבנית נייר - - - Portrait - לאורך - - - Landscape - לרוחב - - - - 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) - - - - 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) - - - - B0 (1000 x 1414 mm) - B0 (1000 x 1414 mm) - - - - B1 (707 x 1000 mm) - B1 (707 x 1000 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) - - - - 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) - - - - B10 (31 x 44 mm) - B10 (31 x 44 mm) - - - - C5E (163 x 229 mm) - C5E (163 x 229 mm) - - - - DLE (110 x 220 mm) - DLE (110 x 220 mm) - - - - Folio (210 x 330 mm) - Folio (210 x 330 mm) - - - - Ledger (432 x 279 mm) - Ledger (432 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) - - - - A4 (210 x 297 mm, 8.26 x 11.7 inches) - - - - - B5 (176 x 250 mm, 6.93 x 9.84 inches) - - - - - Executive (7.5 x 10 inches, 191 x 254 mm) - - - - - Legal (8.5 x 14 inches, 216 x 356 mm) - - - - - Letter (8.5 x 11 inches, 216 x 279 mm) - - - - - - - Print - הדפס - - - File - קובץ - - - - Print To File ... - - - - Other - אחר - - - - File %1 is not writable. -Please choose a different file name. - - - - - %1 already exists. -Do you want to overwrite it? - - - - - File exists - - - - - <qt>Do you want to overwrite it?</qt> - - - - - Print selection - - - - - %1 is a directory. -Please choose a different file name. - - - - - A0 - - - - - A1 - - - - - A2 - - - - - A3 - - - - - A4 - - - - - A5 - - - - - A6 - - - - - A7 - - - - - A8 - - - - - A9 - - - - - B0 - - - - - B1 - - - - - B2 - - - - - B3 - - - - - B4 - - - - - B5 - - - - - B6 - - - - - B7 - - - - - B8 - - - - - B9 - - - - - B10 - - - - - C5E - - - - - DLE - - - - - Executive - - - - - Folio - - - - - Ledger - - - - - Legal - - - - - Letter - - - - - Tabloid - - - - - US Common #10 Envelope - - - - - Custom - - - - - - &Options >> - - - - - &Print - - - - - &Options << - - - - - Print to File (PDF) - - - - - Print to File (Postscript) - - - - - Local file - - - - - Write %1 file - - - - - The 'From' value cannot be greater than the 'To' value. - - - - - 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 - - - - - Export to PostScript - - - - - QPrintPropertiesDialog - - Save - שמור - - - OK - אישור - - - - 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 - - - - - QPrintWidget - - - Form - - - - - Printer - מדפסת - - - - &Name: - - - - - P&roperties - - - - - Location: - - - - - Preview - - - - - Type: - - - - - Output &file: - - - - - ... - - - - - QProcess - - - - Could not open input redirection for reading - - - - - - Could not open output redirection for writing - - - - - Resource error (fork failure): %1 - - - - - - - - - - - - - Process operation timed out - - - - - - - - Error reading from process - - - - - - - Error writing to process - - - - - Process crashed - - - - - No program defined - - - - - Process failed to start - - - - - QProgressDialog - - - Cancel - ביטול - - - - QPushButton - - - Open - פתח - - - - QRadioButton - - - Check - - - - - QRegExp - - - no error occurred - לא אירעה כל שגיאה - - - - disabled feature used - - - - - bad char class syntax - - - - - bad lookahead syntax - - - - - bad repetition syntax - - - - - invalid octal value - - - - - missing left delim - - - - - unexpected end - - - - - met internal limit - - - - - QSQLite2Driver - - - Error to open 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 - - - - - 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 - - - - - - %1: unable to lock - - - - - %1: unable to unlock - - - - - - %1: permission denied - - - - - - %1: already exists - - - - - - %1: doesn't exists - - - - - - %1: out of resources - - - - - - %1: unknown error %2 - - - - - %1: key is empty - - - - - %1: unix key file doesn't exists - - - - - %1: ftok failed - - - - - - %1: unable to make key - - - - - %1: system-imposed size restrictions - - - - - %1: not attached - - - - - %1: invalid size - - - - - %1: key error - - - - - %1: size query failed - - - - - QShortcut - - - Space - רווח - - - - Esc - Esc - - - - Tab - Tab - - - - Backtab - Backtab - - - - Backspace - Backspace - - - - Return - Return - - - - Enter - Enter - - - - Ins - Ins - - - - Del - Del - - - - Pause - Pause - - - - 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 - - - - - Favorites - - - - - Search - - - - - Standby - - - - - Open URL - - - - - Launch Mail - - - - - Launch Media - - - - - Launch (0) - - - - - Launch (1) - - - - - Launch (2) - - - - - Launch (3) - - - - - Launch (4) - - - - - Launch (5) - - - - - Launch (6) - - - - - Launch (7) - - - - - Launch (8) - - - - - Launch (9) - - - - - Launch (A) - - - - - Launch (B) - - - - - Launch (C) - - - - - Launch (D) - - - - - Launch (E) - - - - - Launch (F) - - - - - Print Screen - - - - - Page Up - - - - - Page Down - - - - - Caps Lock - - - - - Num Lock - - - - - Number Lock - - - - - Scroll Lock - - - - - Insert - הוסף - - - - Delete - מחק - - - - Escape - - - - - System Request - - - - - Select - - - - - Yes - כן - - - - No - לא - - - - Context1 - - - - - Context2 - - - - - Context3 - - - - - Context4 - - - - - Call - - - - - Hangup - - - - - Flip - - - - - - Ctrl - Ctrl - - - - - Shift - Shift - - - - - Alt - Alt - - - - - Meta - - - - - + - + - - - - F%1 - F%1 - - - - Home Page - - - - - 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 - - - - - SOCKS version 5 protocol error - - - - - General SOCKSv5 server failure - - - - - Connection not allowed by SOCKSv5 server - - - - - TTL expired - - - - - SOCKSv5 command not supported - - - - - Address type not supported - - - - - Unknown SOCKSv5 proxy error code 0x%1 - - - - - Network operation timed out - - - - - QSpinBox - - - More - - - - - Less - - - - - QSql - - - Delete - מחק - - - - Delete this record? - האם למחוק רשומה זו? - - - - - - Yes - כן - - - - - - No - לא - - - - Insert - הוסף - - - - Update - עדכן - - - - Save edits? - האם לשמור את העריכה? - - - - Cancel - ביטול - - - - Confirm - אישור - - - - Cancel your edits? - האם לבטל את העריכה שלך? - - - - QSslSocket - - - Unable to write data: %1 - - - - - Error while reading: %1 - - - - - Error during SSL handshake: %1 - - - - - Error creating SSL context (%1) - - - - - Invalid or empty cipher list (%1) - - - - - Error creating SSL session, %1 - - - - - Error creating SSL session: %1 - - - - - Cannot provide a certificate with no key, %1 - - - - - Error loading local certificate, %1 - - - - - Error loading private key, %1 - - - - - Private key does not certificate public key, %1 - - - - - QSystemSemaphore - - - - %1: out of resources - - - - - - %1: permission denied - - - - - %1: already exists - - - - - %1: does not exist - - - - - - %1: unknown error %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 - - - - - QUndoGroup - - - Undo - בטל - - - - Redo - שחזר - - - - QUndoModel - - - <empty> - - - - - QUndoStack - - - Undo - בטל - - - - Redo - שחזר - - - - QUnicodeControlCharacterMenu - - - LRM Left-to-right mark - - - - - RLM Right-to-left mark - - - - - ZWJ Zero width joiner - - - - - ZWNJ Zero width non-joiner - - - - - ZWSP Zero width space - - - - - LRE Start of left-to-right embedding - - - - - RLE Start of right-to-left embedding - - - - - LRO Start of left-to-right override - - - - - RLO Start of right-to-left override - - - - - PDF Pop directional formatting - - - - - Insert Unicode control character - - - - - QWebFrame - - - Request cancelled - - - - - Request blocked - - - - - Cannot show URL - - - - - Frame load interruped by policy change - - - - - Cannot show mimetype - - - - - File does not exist - - - - - QWebPage - - - Bad HTTP request - - - - - 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 - - - - - Open Link - Open Link context menu item - - - - - Ignore - Ignore Grammar context menu item - - - - - Spelling - Spelling and Grammar context sub-menu item - - - - - Show Spelling and Grammar - menu item title - - - - - Hide Spelling and Grammar - menu item title - - - - - Check Spelling - Check spelling context menu item - - - - - Check Spelling While Typing - Check spelling while typing context menu item - - - - - Check Grammar With Spelling - Check grammar with spelling context menu item - - - - - Fonts - Font context sub-menu item - - - - - Bold - Bold context menu item - - - - - Italic - Italic context menu item - - - - - Underline - Underline context menu item - - - - - Outline - Outline context menu item - - - - - Direction - Writing direction context sub-menu item - - - - - Text Direction - Text direction context sub-menu item - - - - - Default - Default writing direction context menu item - - - - - LTR - Left to Right context menu item - - - - - RTL - Right to Left context menu item - - - - - Inspect - Inspect Element context menu item - - - - - No recent searches - Label for only item in menu that appears when clicking on the search field image, when no searches have been performed - - - - - Recent searches - label for first item in the menu that appears when clicking on the search field image, used as embedded menu title - - - - - Clear recent searches - menu item in Recent Searches menu that empties menu's contents - - - - - Unknown - Unknown filesize FTP directory listing item - - - - - %1 (%2x%3 pixels) - Title string for images - - - - - Web Inspector - %2 - - - - - Scroll here - - - - - Left edge - - - - - Top - - - - - Right edge - - - - - Bottom - - - - - Page left - - - - - Page up - - - - - Page right - - - - - Page down - - - - - Scroll left - - - - - Scroll up - - - - - Scroll right - - - - - Scroll down - - - - - %n file(s) - number of chosen file - - - - - - - JavaScript Alert - %1 - - - - - JavaScript Confirm - %1 - - - - - JavaScript Prompt - %1 - - - - - Move the cursor to the next character - - - - - Move the cursor to the previous character - - - - - Move the cursor to the next word - - - - - Move the cursor to the previous word - - - - - Move the cursor to the next line - - - - - Move the cursor to the previous line - - - - - Move the cursor to the start of the line - - - - - Move the cursor to the end of the line - - - - - Move the cursor to the start of the block - - - - - Move the cursor to the end of the block - - - - - Move the cursor to the start of the document - - - - - Move the cursor to the end of the document - - - - - Select all - - - - - Select to the next character - - - - - Select to the previous character - - - - - Select to the next word - - - - - Select to the previous word - - - - - Select to the next line - - - - - Select to the previous line - - - - - Select to the start of the line - - - - - Select to the end of the line - - - - - Select to the start of the block - - - - - Select to the end of the block - - - - - Select to the start of the document - - - - - Select to the end of the document - - - - - Delete to the start of the word - - - - - Delete to the end of the word - - - - - Insert a new paragraph - - - - - Insert a new line - - - - - QWhatsThisAction - - - What's This? - מה זה? - - - - QWidget - - - * - - - - - QWizard - - - Cancel - ביטול - - - - Help - עזרה - - - - Go Back - - - - - Continue - - - - - Commit - - - - - Done - - - - - < &Back - - - - - &Finish - - - - - &Help - - - - - &Next - - - - - &Next > - - - - - QWorkspace - - - &Restore - ש&חזר - - - - &Move - ה&זז - - - - &Size - &שנה גודל - - - - Mi&nimize - &מזער - - - - Ma&ximize - &הגדל - - - - &Close - &סגור - - - - Stay on &Top - &תמיד עליון - - - - - Sh&ade - &גלול - - - - - %1 - [%2] - %1 - [%2] - - - - Minimize - מזער - - - - Restore Down - שחזר למטה - - - - Close - סגור - - - - &Unshade - &בטל גלילה - - - - QXml - - - no error occurred - לא אירעה כל שגיאה - - - - error triggered by consumer - נגרמה שגיאה על ידי הצרכן - - - - unexpected end of file - סוף קובץ לא צפוי - - - - more than one document type definition - יותר מהגדרה אחת של סוג מסמך - - - - error occurred while parsing element - אירעה שגיאה בעת עיבוד המרכיב - - - - tag mismatch - אי-התאמה בתגית - - - - error occurred while parsing content - אירעה שגיאה בעת עיבוד התוכן - - - - unexpected character - תו לא צפוי - - - - invalid name for processing instruction - שם לא תקף עבור הוראת העיבוד - - - - version expected while reading the XML declaration - הייתה צפויה גירסה בעת קריאה ההכרזה על XML - - - - wrong value for standalone declaration - ערך שגוי עבור ההגדרה העצמאית - - - - encoding declaration or standalone declaration expected while reading the XML declaration - הייתה צפויה הכרזה על קידוד או הכרזה עצמאית בעת קריאת ההכרזה על XML - - - - standalone declaration expected while reading the XML declaration - הייתה צפויה הכרזה עצמאית בעת קריאת ההכרזה על XML - - - - error occurred while parsing document type definition - אירעה שגיאה בעת עיבוד הגדרת סוג המסמך - - - - letter is expected - הייתה צפויה אות - - - - error occurred while parsing comment - אירעה שגיאה בעת עיבוד ההערה - - - - error occurred while parsing reference - אירעה שגיאה בעת עיבוד ההתייחסות - - - - internal general entity reference not allowed in DTD - התייחסות ליישות כללית פנימית אינה מותרת ב-DTD - - - - external parsed general entity reference not allowed in attribute value - התייחסות ליישות כללית מעובדת חיצונית אינה מותרת בערך המאפיין - - - - external parsed general entity reference not allowed in DTD - התייחסות ליישות כללית מעובדת חיצונית אינה מותרת ב-DTD - - - - unparsed entity reference in wrong context - התייחסות ליישות לא מעובדת בהקשר שגוי - - - - recursive entities - יישות רקורסיבית - - - - error in the text declaration of an external entity - שגיאה בהכרזת טקסט של יישות חיצונית - - - - QXmlStream - - - - Extra content at end of document. - - - - - Invalid entity value. - - - - - Invalid XML character. - - - - - Sequence ']]>' not allowed in content. - - - - - Namespace prefix '%1' not declared - - - - - Attribute redefined. - - - - - Unexpected character '%1' in public id literal. - - - - - Invalid XML version string. - - - - - Unsupported XML version. - - - - - %1 is an invalid encoding name. - - - - - Encoding %1 is unsupported - - - - - Standalone accepts only yes or no. - - - - - Invalid attribute in XML declaration. - - - - - Premature end of document. - - - - - Invalid document. - - - - - Expected - - - - - , but got ' - - - - - Unexpected ' - - - - - Expected character data. - - - - - Recursive entity detected. - - - - - Start tag expected. - - - - - XML declaration not at start of document. - - - - - NDATA in parameter entity declaration. - - - - - %1 is an invalid processing instruction name. - - - - - Invalid processing instruction name. - - - - - - - - Illegal namespace declaration. - - - - - Invalid XML name. - - - - - Opening and ending tag mismatch. - - - - - Reference to unparsed entity '%1'. - - - - - - - Entity '%1' not declared. - - - - - Reference to external entity '%1' in attribute value. - - - - - Invalid character reference. - - - - - - Encountered incorrectly encoded content. - - - - - The standalone pseudo attribute must appear after the encoding. - - - - - %1 is an invalid PUBLIC identifier. - - - - - QtXmlPatterns - - - An %1-attribute with value %2 has already been declared. - - - - - An %1-attribute must have a valid %2 as value, which %3 isn't. - - - - - Network timeout. - - - - - Element %1 can't be serialized because it appears outside the document element. - - - - - Attribute %1 can't be serialized because it appears at the top level. - - - - - Year %1 is invalid because it begins with %2. - - - - - Day %1 is outside the range %2..%3. - - - - - Month %1 is outside the range %2..%3. - - - - - Overflow: Can't represent date %1. - - - - - Day %1 is invalid for month %2. - - - - - Time 24:%1:%2.%3 is invalid. Hour is 24, but minutes, seconds, and milliseconds are not all 0; - - - - - Time %1:%2:%3.%4 is invalid. - - - - - Overflow: Date can't be represented. - - - - - - At least one component must be present. - - - - - At least one time component must appear after the %1-delimiter. - - - - - No operand in an integer division, %1, can be %2. - - - - - The first operand in an integer division, %1, cannot be infinity (%2). - - - - - The second operand in a division, %1, cannot be zero (%2). - - - - - %1 is not a valid value of type %2. - - - - - When casting to %1 from %2, the source value cannot be %3. - - - - - Integer division (%1) by zero (%2) is undefined. - - - - - Division (%1) by zero (%2) is undefined. - - - - - Modulus division (%1) by zero (%2) is undefined. - - - - - - Dividing a value of type %1 by %2 (not-a-number) is not allowed. - - - - - Dividing a value of type %1 by %2 or %3 (plus or minus zero) is not allowed. - - - - - Multiplication of a value of type %1 by %2 or %3 (plus or minus infinity) is not allowed. - - - - - A value of type %1 cannot have an Effective Boolean Value. - - - - - Effective Boolean Value cannot be calculated for a sequence containing two or more atomic values. - - - - - Value %1 of type %2 exceeds maximum (%3). - - - - - Value %1 of type %2 is below minimum (%3). - - - - - A value of type %1 must contain an even number of digits. The value %2 does not. - - - - - %1 is not valid as a value of type %2. - - - - - Operator %1 cannot be used on type %2. - - - - - Operator %1 cannot be used on atomic values of type %2 and %3. - - - - - The namespace URI in the name for a computed attribute cannot be %1. - - - - - The name for a computed attribute cannot have the namespace URI %1 with the local name %2. - - - - - Type error in cast, expected %1, received %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. - - - - - No casting is possible with %1 as the target type. - - - - - It is not possible to cast from %1 to %2. - - - - - Casting to %1 is not possible because it is an abstract type, and can therefore never be instantiated. - - - - - It's not possible to cast the value %1 of type %2 to %3 - - - - - Failure when casting from %1 to %2: %3 - - - - - A comment cannot contain %1 - - - - - A comment cannot end with a %1. - - - - - No comparisons can be done involving the type %1. - - - - - Operator %1 is not available between atomic values of type %2 and %3. - - - - - An attribute node cannot be a child of a document node. Therefore, the attribute %1 is out of place. - - - - - A library module cannot be evaluated directly. It must be imported from a main module. - - - - - No template by name %1 exists. - - - - - A value of type %1 cannot be a predicate. A predicate must have either a numeric type or an Effective Boolean Value type. - - - - - A positional predicate must evaluate to a single numeric value. - - - - - The target name in a processing instruction cannot be %1 in any combination of upper and lower case. Therefore, is %2 invalid. - - - - - %1 is not a valid target name in a processing instruction. It must be a %2 value, e.g. %3. - - - - - The last step in a path must contain either nodes or atomic values. It cannot be a mixture between the two. - - - - - The data of a processing instruction cannot contain the string %1 - - - - - No namespace binding exists for the prefix %1 - - - - - No namespace binding exists for the prefix %1 in %2 - - - - - - %1 is an invalid %2 - - - - - %1 takes at most %n argument(s). %2 is therefore invalid. - - - - - - - %1 requires at least %n argument(s). %2 is therefore invalid. - - - - - - - The first argument to %1 cannot be of type %2. It must be a numeric type, xs:yearMonthDuration or xs:dayTimeDuration. - - - - - The first argument to %1 cannot be of type %2. It must be of type %3, %4, or %5. - - - - - The second argument to %1 cannot be of type %2. It must be of type %3, %4, or %5. - - - - - %1 is not a valid XML 1.0 character. - - - - - The first argument to %1 cannot be of type %2. - - - - - If both values have zone offsets, they must have the same zone offset. %1 and %2 are not the same. - - - - - %1 was called. - - - - - %1 must be followed by %2 or %3, not at the end of the replacement string. - - - - - In the replacement string, %1 must be followed by at least one digit when not escaped. - - - - - In the replacement string, %1 can only be used to escape itself or %2, not %3 - - - - - %1 matches newline characters - - - - - %1 and %2 match the start and end of a line. - - - - - Matches are case insensitive - - - - - Whitespace characters are removed, except when they appear in character classes - - - - - %1 is an invalid regular expression pattern: %2 - - - - - %1 is an invalid flag for regular expressions. Valid flags are: - - - - - If the first argument is the empty sequence or a zero-length string (no namespace), a prefix cannot be specified. Prefix %1 was specified. - - - - - It will not be possible to retrieve %1. - - - - - The root node of the second argument to function %1 must be a document node. %2 is not a document node. - - - - - The default collection is undefined - - - - - %1 cannot be retrieved - - - - - The normalization form %1 is unsupported. The supported forms are %2, %3, %4, and %5, and none, i.e. the empty string (no normalization). - - - - - A zone offset must be in the range %1..%2 inclusive. %3 is out of range. - - - - - %1 is not a whole number of minutes. - - - - - Required cardinality is %1; got cardinality %2. - - - - - The item %1 did not match the required type %2. - - - - - - %1 is an unknown schema type. - - - - - Only one %1 declaration can occur in the query prolog. - - - - - The initialization of variable %1 depends on itself - - - - - No variable by name %1 exists - - - - - The variable %1 is unused - - - - - Version %1 is not supported. The supported XQuery version is 1.0. - - - - - The encoding %1 is invalid. It must contain Latin characters only, must not contain whitespace, and must match the regular expression %2. - - - - - No function with signature %1 is available - - - - - - A default namespace declaration must occur before function, variable, and option declarations. - - - - - Namespace declarations must occur before function, variable, and option declarations. - - - - - Module imports must occur before function, variable, and option declarations. - - - - - It is not possible to redeclare prefix %1. - - - - - Prefix %1 is already declared in the prolog. - - - - - The name of an option must have a prefix. There is no default namespace for options. - - - - - The Schema Import feature is not supported, and therefore %1 declarations cannot occur. - - - - - The target namespace of a %1 cannot be empty. - - - - - The module import feature is not supported - - - - - No value is available for the external variable by name %1. - - - - - A construct was encountered which only is allowed in XQuery. - - - - - A template by name %1 has already been declared. - - - - - The keyword %1 cannot occur with any other mode name. - - - - - The value of attribute %1 must of type %2, which %3 isn't. - - - - - The prefix %1 can not be bound. By default, it is already bound to the namespace %2. - - - - - A variable by name %1 has already been declared. - - - - - A stylesheet function must have a prefixed name. - - - - - The namespace for a user defined function cannot be empty (try the predefined prefix %1 which exists for cases like this) - - - - - The namespace %1 is reserved; therefore user defined functions may not use it. Try the predefined prefix %2, which exists for these cases. - - - - - 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 - - - - - A function already exists with the signature %1. - - - - - No external functions are supported. All supported functions can be used directly, without first declaring them as external - - - - - An argument by name %1 has already been declared. Every argument name must be unique. - - - - - When function %1 is used for matching inside a pattern, the argument must be a variable reference or a string literal. - - - - - In an XSL-T pattern, the first argument to function %1 must be a string literal, when used for matching. - - - - - In an XSL-T pattern, the first argument to function %1 must be a literal or a variable reference, when used for matching. - - - - - In an XSL-T pattern, function %1 cannot have a third argument. - - - - - In an XSL-T pattern, only function %1 and %2, not %3, can be used for matching. - - - - - In an XSL-T pattern, axis %1 cannot be used, only axis %2 or %3 can. - - - - - %1 is an invalid template mode name. - - - - - The name of a variable bound in a for-expression must be different from the positional variable. Hence, the two variables named %1 collide. - - - - - The Schema Validation Feature is not supported. Hence, %1-expressions may not be used. - - - - - None of the pragma expressions are supported. Therefore, a fallback expression must be present - - - - - Each name of a template parameter must be unique; %1 is duplicated. - - - - - The %1-axis is unsupported in XQuery - - - - - %1 is not a valid name for a processing-instruction. - - - - - %1 is not a valid numeric literal. - - - - - No function by name %1 is available. - - - - - The namespace URI cannot be the empty string when binding to a prefix, %1. - - - - - %1 is an invalid namespace URI. - - - - - It is not possible to bind to the prefix %1 - - - - - Namespace %1 can only be bound to %2 (and it is, in either case, pre-declared). - - - - - Prefix %1 can only be bound to %2 (and it is, in either case, pre-declared). - - - - - Two namespace declaration attributes have the same name: %1. - - - - - The namespace URI must be a constant and cannot use enclosed expressions. - - - - - An attribute by name %1 has already appeared on this element. - - - - - A direct element constructor is not well-formed. %1 is ended with %2. - - - - - The name %1 does not refer to any schema type. - - - - - %1 is an complex type. Casting to complex types is not possible. However, casting to atomic types such as %2 works. - - - - - %1 is not an atomic type. Casting is only possible to atomic types. - - - - - - %1 is not in the in-scope attribute declarations. Note that the schema import feature is not supported. - - - - - The name of an extension expression must be in a namespace. - - - - - empty - - - - - zero or one - - - - - exactly one - - - - - one or more - - - - - zero or more - - - - - Required type is %1, but %2 was found. - - - - - Promoting %1 to %2 may cause loss of precision. - - - - - The focus is undefined. - - - - - It's not possible to add attributes after any other kind of node. - - - - - An attribute by name %1 has already been created. - - - - - Only the Unicode Codepoint Collation is supported(%1). %2 is unsupported. - - - - - %1 is an unsupported encoding. - - - - - %1 contains octets which are disallowed in the requested encoding %2. - - - - - The codepoint %1, occurring in %2 using encoding %3, is an invalid XML character. - - - - - Ambiguous rule match. - - - - - In a namespace constructor, the value for a namespace cannot be an empty string. - - - - - The prefix must be a valid %1, which %2 is not. - - - - - The prefix %1 cannot be bound. - - - - - Only the prefix %1 can be bound to %2 and vice versa. - - - - - Circularity detected - - - - - The parameter %1 is required, but no corresponding %2 is supplied. - - - - - The parameter %1 is passed, but no corresponding %2 exists. - - - - - The URI cannot have a fragment - - - - - Element %1 is not allowed at this location. - - - - - Text nodes are not allowed at this location. - - - - - Parse error: %1 - - - - - The value of the XSL-T version attribute must be a value of type %1, which %2 isn't. - - - - - Running an XSL-T 1.0 stylesheet with a 2.0 processor. - - - - - Unknown XSL-T attribute %1. - - - - - Attribute %1 and %2 are mutually exclusive. - - - - - In a simplified stylesheet module, attribute %1 must be present. - - - - - If element %1 has no attribute %2, it cannot have attribute %3 or %4. - - - - - Element %1 must have at least one of the attributes %2 or %3. - - - - - At least one mode must be specified in the %1-attribute on element %2. - - - - - Attribute %1 cannot appear on the element %2. Only the standard attributes can appear. - - - - - Attribute %1 cannot appear on the element %2. Only %3 is allowed, and the standard attributes. - - - - - Attribute %1 cannot appear on the element %2. Allowed is %3, %4, and the standard attributes. - - - - - Attribute %1 cannot appear on the element %2. Allowed is %3, and the standard attributes. - - - - - XSL-T attributes on XSL-T elements must be in the null namespace, not in the XSL-T namespace which %1 is. - - - - - The attribute %1 must appear on element %2. - - - - - The element with local name %1 does not exist in XSL-T. - - - - - Element %1 must come last. - - - - - At least one %1-element must occur before %2. - - - - - Only one %1-element can appear. - - - - - At least one %1-element must occur inside %2. - - - - - When attribute %1 is present on %2, a sequence constructor cannot be used. - - - - - Element %1 must have either a %2-attribute or a sequence constructor. - - - - - When a parameter is required, a default value cannot be supplied through a %1-attribute or a sequence constructor. - - - - - Element %1 cannot have children. - - - - - Element %1 cannot have a sequence constructor. - - - - - - The attribute %1 cannot appear on %2, when it is a child of %3. - - - - - A parameter in a function cannot be declared to be a tunnel. - - - - - This processor is not Schema-aware and therefore %1 cannot be used. - - - - - Top level stylesheet elements must be in a non-null namespace, which %1 isn't. - - - - - The value for attribute %1 on element %2 must either be %3 or %4, not %5. - - - - - Attribute %1 cannot have the value %2. - - - - - The attribute %1 can only appear on the first %2 element. - - - - - At least one %1 element must appear as child of %2. - - - - - VolumeSlider - - - Muted - - - - - - Volume: %1% - - - - diff --git a/translations/translations.pri b/translations/translations.pri index 9c70557..57089ff 100644 --- a/translations/translations.pri +++ b/translations/translations.pri @@ -17,7 +17,7 @@ LUPDATE += -locations relative -no-ui-lines ###### Qt Libraries -QT_TS = ar cs da de es fr iw ja_JP pl pt ru sk sl sv uk zh_CN zh_TW +QT_TS = ar cs da de es fr he ja_JP pl pt ru sk sl sv uk zh_CN zh_TW ts-qt.commands = (cd $$QT_SOURCE_TREE/src && $$LUPDATE \ -I../include -I../include/Qt \ -- cgit v0.12 From b4624855cf9cb5ea3f3d8bb2cb510cfa4e0e9076 Mon Sep 17 00:00:00 2001 From: Rhys Weatherley Date: Tue, 4 May 2010 08:39:03 +1000 Subject: PowerVR screen driver using undefined symbols The PowerVR screen driver was using QTransformedScreen::tranformation() which is in a class that is Q_AUTOTEST_EXPORT. That means that it would only work with a developer build. This contributed patch changes it to QScreen::transformOrientation() instead which is Q_GUI_EXPORT. Task-number: QTBUG-10193 Reviewed-by: Lorn Potter --- src/plugins/gfxdrivers/powervr/pvreglscreen/pvreglscreen.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/plugins/gfxdrivers/powervr/pvreglscreen/pvreglscreen.cpp b/src/plugins/gfxdrivers/powervr/pvreglscreen/pvreglscreen.cpp index 964fa53..9de2a34 100644 --- a/src/plugins/gfxdrivers/powervr/pvreglscreen/pvreglscreen.cpp +++ b/src/plugins/gfxdrivers/powervr/pvreglscreen/pvreglscreen.cpp @@ -259,7 +259,7 @@ int PvrEglScreen::transformation() const if (parent->classId() != QScreen::TransformedClass) return 0; return 90 * static_cast(parent) - ->transformation(); + ->transformOrientation(); } #else -- cgit v0.12 From 81f9fec83bc425d190a3159f9a7ab2672e094cb2 Mon Sep 17 00:00:00 2001 From: Sami Merila Date: Tue, 4 May 2010 10:26:05 +0300 Subject: QS60Style: QTabWidget icon size property doesn't work QS60Style did check if the tab icon size was larger than pixel metric for default tab icon size. If it was, then it reset the icon size to match pixel metric. It was impossible to set large icon to tab widget. As a fix, this check was removed from style. Task-number: QTBUG-3102 Reviewed-by: Jason Barron --- src/gui/styles/qs60style.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/gui/styles/qs60style.cpp b/src/gui/styles/qs60style.cpp index c0c1cdd..20297ae 100644 --- a/src/gui/styles/qs60style.cpp +++ b/src/gui/styles/qs60style.cpp @@ -1667,9 +1667,10 @@ void QS60Style::drawControl(ControlElement element, const QStyleOption *option, alignment |= Qt::TextHideMnemonic; if (!optionTab.icon.isNull()) { QSize iconSize = optionTab.iconSize; - int iconExtent = pixelMetric(PM_TabBarIconSize); - if (iconSize.height() > iconExtent || iconSize.width() > iconExtent) + if (!iconSize.isValid()) { + const int iconExtent = pixelMetric(PM_TabBarIconSize); iconSize = QSize(iconExtent, iconExtent); + } QPixmap tabIcon = optionTab.icon.pixmap(iconSize, (optionTab.state & State_Enabled) ? QIcon::Normal : QIcon::Disabled); if (tab->text.isEmpty()) -- cgit v0.12 From fd7d30ec02785084c357cf85c990501fbb97b9cf Mon Sep 17 00:00:00 2001 From: Joerg Bornemann Date: Tue, 4 May 2010 11:38:23 +0200 Subject: fix crash in QLocalServer::close on Windows If _q_onNewConnection failed, then QLocalServer got into a bad state. QLocalServer::isListening() still returned true and QLocalServer::close() crashed. Task-number: QTBUG-10388 Reviewed-by: ossi --- src/network/socket/qlocalserver_win.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/network/socket/qlocalserver_win.cpp b/src/network/socket/qlocalserver_win.cpp index e820f73..50d6ca4 100644 --- a/src/network/socket/qlocalserver_win.cpp +++ b/src/network/socket/qlocalserver_win.cpp @@ -167,8 +167,8 @@ void QLocalServerPrivate::_q_onNewConnection() q->incomingConnection((quintptr)handle); } else { if (GetLastError() != ERROR_IO_INCOMPLETE) { + q->close(); setError(QLatin1String("QLocalServerPrivate::_q_onNewConnection")); - closeServer(); return; } -- cgit v0.12 From 62db1b73220b77e1e424e76cae35aaddf2a0709d Mon Sep 17 00:00:00 2001 From: Kevin Ottens Date: Tue, 4 May 2010 10:48:00 +0200 Subject: When one of the spin button subcontrol is activated, the state member of the style option object should have QStyle::State_Sunken set in order for styles to paint the button as pressed. Merge-Request: 607 Reviewed-by: Andreas --- src/qt3support/widgets/q3spinwidget.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/qt3support/widgets/q3spinwidget.cpp b/src/qt3support/widgets/q3spinwidget.cpp index 3dc36c5..3bfad06 100644 --- a/src/qt3support/widgets/q3spinwidget.cpp +++ b/src/qt3support/widgets/q3spinwidget.cpp @@ -340,11 +340,13 @@ void Q3SpinWidget::paintEvent(QPaintEvent *) QPainter p(this); QStyleOptionSpinBox opt = getStyleOption(this); - if (d->theButton & 1) + if (d->theButton & 1) { opt.activeSubControls = QStyle::SC_SpinBoxDown; - else if (d->theButton & 2) + opt.state |= QStyle::State_Sunken; + } else if (d->theButton & 2) { opt.activeSubControls = QStyle::SC_SpinBoxUp; - else + opt.state |= QStyle::State_Sunken; + } else opt.activeSubControls = QStyle::SC_None; opt.rect = style()->subControlRect(QStyle::CC_SpinBox, &opt, QStyle::SC_SpinBoxFrame, this); opt.subControls = QStyle::SC_All; -- cgit v0.12 From 9439d7475e7ba558a5b455a8f2b7f90adf26db79 Mon Sep 17 00:00:00 2001 From: Martin Jones Date: Fri, 7 May 2010 09:14:54 +1000 Subject: Avoid repeated create/destroy at top list boundary with sub-pixel movement. --- src/declarative/graphicsitems/qdeclarativelistview.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/declarative/graphicsitems/qdeclarativelistview.cpp b/src/declarative/graphicsitems/qdeclarativelistview.cpp index 328f319..416e0a8 100644 --- a/src/declarative/graphicsitems/qdeclarativelistview.cpp +++ b/src/declarative/graphicsitems/qdeclarativelistview.cpp @@ -650,7 +650,7 @@ void QDeclarativeListViewPrivate::refill(qreal from, qreal to, bool doBuffer) FxListItem *item = 0; int pos = itemEnd + 1; while (modelIndex < model->count() && pos <= fillTo) { - //qDebug() << "refill: append item" << modelIndex << "pos" << pos; +// qDebug() << "refill: append item" << modelIndex << "pos" << pos; if (!(item = createItem(modelIndex))) break; item->setPosition(pos); @@ -661,8 +661,8 @@ void QDeclarativeListViewPrivate::refill(qreal from, qreal to, bool doBuffer) if (doBuffer) // never buffer more than one item per frame break; } - while (visibleIndex > 0 && visibleIndex <= model->count() && visiblePos > fillFrom) { - //qDebug() << "refill: prepend item" << visibleIndex-1 << "current top pos" << visiblePos; + while (visibleIndex > 0 && visibleIndex <= model->count() && visiblePos-1 >= fillFrom) { +// qDebug() << "refill: prepend item" << visibleIndex-1 << "current top pos" << visiblePos; if (!(item = createItem(visibleIndex-1))) break; --visibleIndex; @@ -678,7 +678,7 @@ void QDeclarativeListViewPrivate::refill(qreal from, qreal to, bool doBuffer) while (visibleItems.count() > 1 && (item = visibleItems.first()) && item->endPosition() < bufferFrom) { if (item->attached->delayRemove()) break; - //qDebug() << "refill: remove first" << visibleIndex << "top end pos" << item->endPosition(); +// qDebug() << "refill: remove first" << visibleIndex << "top end pos" << item->endPosition(); if (item->index != -1) visibleIndex++; visibleItems.removeFirst(); @@ -688,7 +688,7 @@ void QDeclarativeListViewPrivate::refill(qreal from, qreal to, bool doBuffer) while (visibleItems.count() > 1 && (item = visibleItems.last()) && item->position() > bufferTo) { if (item->attached->delayRemove()) break; - //qDebug() << "refill: remove last" << visibleIndex+visibleItems.count()-1; +// qDebug() << "refill: remove last" << visibleIndex+visibleItems.count()-1 << item->position(); visibleItems.removeLast(); releaseItem(item); changed = true; -- cgit v0.12 From 7c945e152c9abd0478bed5a4d251012944d93b44 Mon Sep 17 00:00:00 2001 From: Joona Petrell Date: Wed, 5 May 2010 14:57:53 +1000 Subject: Resize qmlruntime window to new dimensions when orientation changes Task-number: Reviewed-by: Warwick Allison --- src/declarative/util/qdeclarativeview.cpp | 16 ++- tests/auto/declarative/declarative.pro | 1 + .../qdeclarativeview/tst_qdeclarativeview.cpp | 4 +- .../qdeclarativeviewer/data/orientation.qml | 10 ++ .../qdeclarativeviewer/qdeclarativeviewer.pro | 11 +++ .../qdeclarativeviewer/tst_qdeclarativeviewer.cpp | 108 +++++++++++++++++++++ tools/qml/qmlruntime.cpp | 19 +++- tools/qml/qmlruntime.h | 5 +- 8 files changed, 156 insertions(+), 18 deletions(-) create mode 100644 tests/auto/declarative/qdeclarativeviewer/data/orientation.qml create mode 100644 tests/auto/declarative/qdeclarativeviewer/qdeclarativeviewer.pro create mode 100644 tests/auto/declarative/qdeclarativeviewer/tst_qdeclarativeviewer.cpp diff --git a/src/declarative/util/qdeclarativeview.cpp b/src/declarative/util/qdeclarativeview.cpp index 62d913c..833e284 100644 --- a/src/declarative/util/qdeclarativeview.cpp +++ b/src/declarative/util/qdeclarativeview.cpp @@ -484,10 +484,7 @@ QSize QDeclarativeViewPrivate::rootObjectSize() QSize rootObjectSize(0,0); int widthCandidate = -1; int heightCandidate = -1; - if (declarativeItemRoot) { - widthCandidate = declarativeItemRoot->width(); - heightCandidate = declarativeItemRoot->height(); - } else if (root) { + if (root) { QSizeF size = root->boundingRect().size(); widthCandidate = size.width(); heightCandidate = size.height(); @@ -614,16 +611,15 @@ bool QDeclarativeView::eventFilter(QObject *watched, QEvent *e) /*! \internal - Preferred size follows the root object in - resize mode SizeViewToRootObject and - the view in resize mode SizeRootObjectToView. + Preferred size follows the root object geometry. */ QSize QDeclarativeView::sizeHint() const { - if (d->resizeMode == SizeRootObjectToView) { + QSize rootObjectSize = d->rootObjectSize(); + if (rootObjectSize.isEmpty()) { return size(); - } else { // d->resizeMode == SizeViewToRootObject - return d->rootObjectSize(); + } else { + return rootObjectSize; } } diff --git a/tests/auto/declarative/declarative.pro b/tests/auto/declarative/declarative.pro index b8e33cf..05c4c26 100644 --- a/tests/auto/declarative/declarative.pro +++ b/tests/auto/declarative/declarative.pro @@ -64,6 +64,7 @@ SUBDIRS += \ qdeclarativestyledtext \ # Cover qdeclarativesqldatabase \ # Cover qdeclarativevisualdatamodel \ # Cover + qdeclarativeviewer \ # Cover qmlvisual # Cover contains(QT_CONFIG, webkit) { diff --git a/tests/auto/declarative/qdeclarativeview/tst_qdeclarativeview.cpp b/tests/auto/declarative/qdeclarativeview/tst_qdeclarativeview.cpp index 1ed51c1..dd2f46e 100644 --- a/tests/auto/declarative/qdeclarativeview/tst_qdeclarativeview.cpp +++ b/tests/auto/declarative/qdeclarativeview/tst_qdeclarativeview.cpp @@ -147,7 +147,7 @@ void tst_QDeclarativeView::resizemodedeclarativeitem() declarativeItem->setHeight(80); QCOMPARE(canvas->width(), 80); QCOMPARE(canvas->height(), 100); - QCOMPARE(canvas->size(), canvas->sizeHint()); + QCOMPARE(QSize(declarativeItem->width(), declarativeItem->height()), canvas->sizeHint()); QCOMPARE(sceneResizedSpy2.count(), 2); // size update from view @@ -230,7 +230,7 @@ void tst_QDeclarativeView::resizemodegraphicswidget() canvas->setResizeMode(QDeclarativeView::SizeRootObjectToView); graphicsWidget->resize(QSizeF(60,80)); QCOMPARE(canvas->size(), QSize(80,100)); - QCOMPARE(canvas->size(), canvas->sizeHint()); + QCOMPARE(QSize(graphicsWidget->size().width(), graphicsWidget->size().height()), canvas->sizeHint()); QCOMPARE(sceneResizedSpy2.count(), 2); // size update from view diff --git a/tests/auto/declarative/qdeclarativeviewer/data/orientation.qml b/tests/auto/declarative/qdeclarativeviewer/data/orientation.qml new file mode 100644 index 0000000..687fac6 --- /dev/null +++ b/tests/auto/declarative/qdeclarativeviewer/data/orientation.qml @@ -0,0 +1,10 @@ +import Qt 4.7 +Rectangle { + color: "black" + width: (runtime.orientation == Orientation.Landscape) ? 300 : 200 + height: (runtime.orientation == Orientation.Landscape) ? 200 : 300 + Text { + text: runtime.orientation == Orientation.Landscape ? "Landscape" : "Portrait" + color: "white" + } +} \ No newline at end of file diff --git a/tests/auto/declarative/qdeclarativeviewer/qdeclarativeviewer.pro b/tests/auto/declarative/qdeclarativeviewer/qdeclarativeviewer.pro new file mode 100644 index 0000000..dc10f5b --- /dev/null +++ b/tests/auto/declarative/qdeclarativeviewer/qdeclarativeviewer.pro @@ -0,0 +1,11 @@ +load(qttest_p4) +contains(QT_CONFIG,declarative): QT += declarative gui +macx:CONFIG -= app_bundle + +include(../../../../tools/qml/qml.pri) + +SOURCES += tst_qdeclarativeviewer.cpp + +DEFINES += SRCDIR=\\\"$$PWD\\\" + +CONFIG += parallel_test diff --git a/tests/auto/declarative/qdeclarativeviewer/tst_qdeclarativeviewer.cpp b/tests/auto/declarative/qdeclarativeviewer/tst_qdeclarativeviewer.cpp new file mode 100644 index 0000000..9429dc9 --- /dev/null +++ b/tests/auto/declarative/qdeclarativeviewer/tst_qdeclarativeviewer.cpp @@ -0,0 +1,108 @@ +/**************************************************************************** +** +** 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 +#include +#include +#include "qmlruntime.h" + +class tst_QDeclarativeViewer : public QObject + +{ + Q_OBJECT +public: + tst_QDeclarativeViewer(); + +private slots: + void orientation(); + +private: + QDeclarativeEngine engine; +}; + +tst_QDeclarativeViewer::tst_QDeclarativeViewer() +{ +} + +void tst_QDeclarativeViewer::orientation() +{ + QWidget window; + QDeclarativeViewer *viewer = new QDeclarativeViewer(&window); + QVERIFY(viewer); + viewer->open(SRCDIR "/data/orientation.qml"); + QVERIFY(viewer->view()); + QVERIFY(viewer->menuBar()); + QDeclarativeItem* rootItem = qobject_cast(viewer->view()->rootObject()); + QVERIFY(rootItem); + window.show(); + + QCOMPARE(rootItem->width(), 200.0); + QCOMPARE(rootItem->height(), 300.0); + QCOMPARE(viewer->view()->size(), QSize(200, 300)); + QCOMPARE(viewer->view()->sceneRect().size(), QSizeF(200, 300)); + QCOMPARE(viewer->size(), QSize(200, 300+viewer->menuBar()->height())); + QCOMPARE(viewer->size(), viewer->sizeHint()); + + viewer->toggleOrientation(); + qApp->processEvents(); + + QCOMPARE(rootItem->width(), 300.0); + QCOMPARE(rootItem->height(), 200.0); + QCOMPARE(viewer->view()->size(), QSize(300, 200)); + QCOMPARE(viewer->view()->sceneRect().size(), QSizeF(300, 200)); + QCOMPARE(viewer->size(), QSize(300, 200+viewer->menuBar()->height())); + QCOMPARE(viewer->size(), viewer->sizeHint()); + + viewer->toggleOrientation(); + qApp->processEvents(); + + QCOMPARE(rootItem->width(), 200.0); + QCOMPARE(rootItem->height(), 300.0); + QCOMPARE(viewer->view()->size(), QSize(200, 300)); + QCOMPARE(viewer->view()->sceneRect().size(), QSizeF(200, 300)); + QCOMPARE(viewer->size(), QSize(200, 300+viewer->menuBar()->height())); + QCOMPARE(viewer->size(), viewer->sizeHint()); +} + +QTEST_MAIN(tst_QDeclarativeViewer) + +#include "tst_qdeclarativeviewer.moc" diff --git a/tools/qml/qmlruntime.cpp b/tools/qml/qmlruntime.cpp index d49b0f1..06fa004 100644 --- a/tools/qml/qmlruntime.cpp +++ b/tools/qml/qmlruntime.cpp @@ -535,6 +535,8 @@ QDeclarativeViewer::QDeclarativeViewer(QWidget *parent, Qt::WindowFlags flags) connect(&autoStartTimer, SIGNAL(triggered()), this, SLOT(autoStartRecording())); connect(&autoStopTimer, SIGNAL(triggered()), this, SLOT(autoStopRecording())); connect(&recordTimer, SIGNAL(triggered()), this, SLOT(recordFrame())); + connect(DeviceOrientation::instance(), SIGNAL(orientationChanged()), + this, SLOT(orientationChanged()), Qt::QueuedConnection); autoStartTimer.setRunning(false); autoStopTimer.setRunning(false); recordTimer.setRunning(false); @@ -968,10 +970,8 @@ void QDeclarativeViewer::statusChanged() if (canvas->status() == QDeclarativeView::Ready) { initialSize = canvas->sizeHint(); if (canvas->resizeMode() == QDeclarativeView::SizeRootObjectToView) { - QSize newWindowSize = initialSize; - newWindowSize.setHeight(newWindowSize.height()+menuBarHeight()); updateSizeHints(); - resize(newWindowSize); + resize(QSize(initialSize.width(), initialSize.height()+menuBarHeight())); } } } @@ -1425,6 +1425,19 @@ void QDeclarativeViewer::recordFrame() } } +void QDeclarativeViewer::orientationChanged() +{ + if (canvas->resizeMode() == QDeclarativeView::SizeRootObjectToView) { + if (canvas->rootObject()) { + QSizeF rootObjectSize = canvas->rootObject()->boundingRect().size(); + QSize newSize(rootObjectSize.width(), rootObjectSize.height()+menuBarHeight()); + if (size() != newSize) { + resize(newSize); + } + } + } +} + void QDeclarativeViewer::setDeviceKeys(bool on) { devicemode = on; diff --git a/tools/qml/qmlruntime.h b/tools/qml/qmlruntime.h index 655feea..9551090 100644 --- a/tools/qml/qmlruntime.h +++ b/tools/qml/qmlruntime.h @@ -125,6 +125,7 @@ public slots: void showProxySettings (); void proxySettingsChanged (); void setScaleView(); + void toggleOrientation(); void statusChanged(); void setSlowMode(bool); void launch(const QString &); @@ -132,7 +133,6 @@ public slots: protected: virtual void keyPressEvent(QKeyEvent *); virtual bool event(QEvent *); - void createMenu(QMenuBar *menu, QMenu *flatmenu); private slots: @@ -144,9 +144,9 @@ private slots: void setScaleSkin(); void setPortrait(); void setLandscape(); - void toggleOrientation(); void startNetwork(); void toggleFullScreen(); + void orientationChanged(); void showWarnings(bool show); void warningsWidgetOpened(); @@ -199,7 +199,6 @@ private: QNetworkReply *wgtreply; QString wgtdir; - NetworkAccessManagerFactory *namFactory; bool useQmlFileBrowser; -- cgit v0.12 From d7ef9666e2a3c8d06c5f32b7f47f602b177a74f6 Mon Sep 17 00:00:00 2001 From: Leonardo Sobral Cunha Date: Thu, 6 May 2010 15:48:34 +1000 Subject: Avoid emitting release when the mouse is ungrabbed Added an onCanceled signal to mouse area, which is triggered when the mouse area rejects the event (propagates to the nearest mouse area beneath) or some other element steals the mouse grab (flickable, for example). Task-number: QTBUG-10162 Reviewed-by: Michael Brasser --- .../graphicsitems/qdeclarativemousearea.cpp | 19 ++++++++-- .../graphicsitems/qdeclarativemousearea_p.h | 1 + .../tst_qdeclarativemousearea.cpp | 44 ++++++++++++++++++++++ 3 files changed, 61 insertions(+), 3 deletions(-) diff --git a/src/declarative/graphicsitems/qdeclarativemousearea.cpp b/src/declarative/graphicsitems/qdeclarativemousearea.cpp index c5a995e..74f2338 100644 --- a/src/declarative/graphicsitems/qdeclarativemousearea.cpp +++ b/src/declarative/graphicsitems/qdeclarativemousearea.cpp @@ -288,6 +288,17 @@ QDeclarativeMouseAreaPrivate::~QDeclarativeMouseAreaPrivate() */ /*! + \qmlsignal MouseArea::onCanceled() + + This handler is called when the mouse events are canceled, either because the event was not accepted or + another element stole the mouse event handling. This signal is for advanced users, it's useful in case there + is more than one mouse areas handling input, or when there is a mouse area inside a flickable. In the latter + case, if you do some logic on pressed and then start dragging, the flickable will steal the mouse handling + from the mouse area. In these cases, to reset the logic when there is no mouse handling anymore, you should + use onCanceled, in addition to onReleased. +*/ + +/*! \internal \class QDeclarativeMouseArea \brief The QDeclarativeMouseArea class provides a simple mouse handling abstraction for use within Qml. @@ -562,10 +573,12 @@ bool QDeclarativeMouseArea::sceneEvent(QEvent *event) // state d->pressed = false; setKeepMouseGrab(false); - QDeclarativeMouseEvent me(d->lastPos.x(), d->lastPos.y(), d->lastButton, d->lastButtons, d->lastModifiers, false, false); - emit released(&me); + emit canceled(); emit pressedChanged(); - setHovered(false); + if (d->hovered) { + d->hovered = false; + emit hoveredChanged(); + } } } return rv; diff --git a/src/declarative/graphicsitems/qdeclarativemousearea_p.h b/src/declarative/graphicsitems/qdeclarativemousearea_p.h index e3f523b..df77ac6 100644 --- a/src/declarative/graphicsitems/qdeclarativemousearea_p.h +++ b/src/declarative/graphicsitems/qdeclarativemousearea_p.h @@ -163,6 +163,7 @@ Q_SIGNALS: void doubleClicked(QDeclarativeMouseEvent *mouse); void entered(); void exited(); + void canceled(); protected: void setHovered(bool); diff --git a/tests/auto/declarative/qdeclarativemousearea/tst_qdeclarativemousearea.cpp b/tests/auto/declarative/qdeclarativemousearea/tst_qdeclarativemousearea.cpp index eb4aa12..96e6b8c 100644 --- a/tests/auto/declarative/qdeclarativemousearea/tst_qdeclarativemousearea.cpp +++ b/tests/auto/declarative/qdeclarativemousearea/tst_qdeclarativemousearea.cpp @@ -56,6 +56,8 @@ private slots: void updateMouseAreaPosOnClick(); void updateMouseAreaPosOnResize(); void noOnClickedWithPressAndHold(); + void onMousePressRejected(); + private: QDeclarativeView *createView(); }; @@ -330,6 +332,48 @@ void tst_QDeclarativeMouseArea::noOnClickedWithPressAndHold() QVERIFY(canvas->rootObject()->property("held").toBool()); } +void tst_QDeclarativeMouseArea::onMousePressRejected() +{ + QDeclarativeView *canvas = createView(); + canvas->setSource(QUrl::fromLocalFile(SRCDIR "/data/rejectEvent.qml")); + canvas->show(); + canvas->setFocus(); + QVERIFY(canvas->rootObject() != 0); + + QVERIFY(!canvas->rootObject()->property("mr1_pressed").toBool()); + QVERIFY(!canvas->rootObject()->property("mr1_released").toBool()); + QVERIFY(!canvas->rootObject()->property("mr1_canceled").toBool()); + QVERIFY(!canvas->rootObject()->property("mr2_pressed").toBool()); + QVERIFY(!canvas->rootObject()->property("mr2_released").toBool()); + QVERIFY(!canvas->rootObject()->property("mr2_canceled").toBool()); + + QGraphicsScene *scene = canvas->scene(); + QGraphicsSceneMouseEvent pressEvent(QEvent::GraphicsSceneMousePress); + pressEvent.setScenePos(QPointF(100, 100)); + pressEvent.setButton(Qt::LeftButton); + pressEvent.setButtons(Qt::LeftButton); + QApplication::sendEvent(scene, &pressEvent); + + QVERIFY(canvas->rootObject()->property("mr1_pressed").toBool()); + QVERIFY(!canvas->rootObject()->property("mr1_released").toBool()); + QVERIFY(!canvas->rootObject()->property("mr1_canceled").toBool()); + QVERIFY(canvas->rootObject()->property("mr2_pressed").toBool()); + QVERIFY(!canvas->rootObject()->property("mr2_released").toBool()); + QVERIFY(canvas->rootObject()->property("mr2_canceled").toBool()); + + QTest::qWait(200); + + QGraphicsSceneMouseEvent releaseEvent(QEvent::GraphicsSceneMouseRelease); + releaseEvent.setScenePos(QPointF(100, 100)); + releaseEvent.setButton(Qt::LeftButton); + releaseEvent.setButtons(Qt::LeftButton); + QApplication::sendEvent(scene, &releaseEvent); + + QVERIFY(canvas->rootObject()->property("mr1_released").toBool()); + QVERIFY(!canvas->rootObject()->property("mr1_canceled").toBool()); + QVERIFY(!canvas->rootObject()->property("mr2_released").toBool()); +} + QTEST_MAIN(tst_QDeclarativeMouseArea) #include "tst_qdeclarativemousearea.moc" -- cgit v0.12 From 705a6ee8f08b1c0b360f1438301ce049e96ed450 Mon Sep 17 00:00:00 2001 From: Leonardo Sobral Cunha Date: Thu, 6 May 2010 16:06:43 +1000 Subject: Fix autotest bug in MouseArea Reviewed-by: Martin Jones --- .../declarative/qdeclarativemousearea/tst_qdeclarativemousearea.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/auto/declarative/qdeclarativemousearea/tst_qdeclarativemousearea.cpp b/tests/auto/declarative/qdeclarativemousearea/tst_qdeclarativemousearea.cpp index 96e6b8c..ff3bf45 100644 --- a/tests/auto/declarative/qdeclarativemousearea/tst_qdeclarativemousearea.cpp +++ b/tests/auto/declarative/qdeclarativemousearea/tst_qdeclarativemousearea.cpp @@ -322,7 +322,7 @@ void tst_QDeclarativeMouseArea::noOnClickedWithPressAndHold() QTest::qWait(1000); - QGraphicsSceneMouseEvent releaseEvent(QEvent::GraphicsSceneMousePress); + QGraphicsSceneMouseEvent releaseEvent(QEvent::GraphicsSceneMouseRelease); releaseEvent.setScenePos(QPointF(100, 100)); releaseEvent.setButton(Qt::LeftButton); releaseEvent.setButtons(Qt::LeftButton); -- cgit v0.12 From abd2c025d088064c31fd1b0e9c5ea29996e51bbe Mon Sep 17 00:00:00 2001 From: Leonardo Sobral Cunha Date: Fri, 7 May 2010 10:57:56 +1000 Subject: Update mouse area qmlvisual test to follow change QTBUG-10162 Reviewed-by: Michael Brasser --- .../qmlvisual/qdeclarativemousearea/mousearea-flickable.qml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/mousearea-flickable.qml b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/mousearea-flickable.qml index a0b787f..e223f5e 100644 --- a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/mousearea-flickable.qml +++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/mousearea-flickable.qml @@ -25,7 +25,7 @@ Rectangle { MouseArea { anchors.fill: parent onPressed: blue.color = "lightsteelblue" - onReleased: blue.color = "steelblue" + onCanceled: blue.color = "steelblue" } } Rectangle { @@ -36,7 +36,7 @@ Rectangle { MouseArea { anchors.fill: parent onEntered: { red.color = "darkred"; tooltip.opacity = 1 } - onExited: { red.color = "red"; tooltip.opacity = 0 } + onCanceled: { red.color = "red"; tooltip.opacity = 0 } } Rectangle { id: tooltip -- cgit v0.12 From 62a65081a37ed9a51b0d39d1e740345d77f7bec0 Mon Sep 17 00:00:00 2001 From: Bea Lam Date: Fri, 7 May 2010 12:10:33 +1000 Subject: Clean up example code, add white background behind text --- examples/declarative/dynamic/dynamic.qml | 193 +++++++++++---------- examples/declarative/dynamic/qml/Button.qml | 36 ++-- examples/declarative/dynamic/qml/GenericItem.qml | 13 -- examples/declarative/dynamic/qml/PaletteItem.qml | 16 +- .../declarative/dynamic/qml/PerspectiveItem.qml | 29 ++-- examples/declarative/dynamic/qml/Sun.qml | 32 +++- examples/declarative/dynamic/qml/itemCreation.js | 58 +++---- 7 files changed, 206 insertions(+), 171 deletions(-) delete mode 100644 examples/declarative/dynamic/qml/GenericItem.qml diff --git a/examples/declarative/dynamic/dynamic.qml b/examples/declarative/dynamic/dynamic.qml index 0e6e197..52c7c1e 100644 --- a/examples/declarative/dynamic/dynamic.qml +++ b/examples/declarative/dynamic/dynamic.qml @@ -4,44 +4,49 @@ import "qml" Item { id: window + + property int activeSuns: 0 + //This is a desktop-sized example width: 1024; height: 512 - property int activeSuns: 0 - //This is the message that pops up when there's an error - Rectangle{ + //This is the message box that pops up when there's an error + Rectangle { id: dialog + opacity: 0 anchors.centerIn: parent - width: dialogText.width + 6 - height: dialogText.height + 6 + width: dialogText.width + 6; height: dialogText.height + 6 border.color: 'black' color: 'lightsteelblue' z: 65535 //Arbitrary number chosen to be above all the items, including the scaled perspective ones. + function show(str){ dialogText.text = str; dialogAnim.start(); } - Text{ + + Text { id: dialogText - x:3 - y:3 + x: 3; y: 3 font.pixelSize: 14 } - SequentialAnimation{ + + SequentialAnimation { id: dialogAnim - NumberAnimation{target: dialog; property:"opacity"; to: 1; duration: 1000} - PauseAnimation{duration: 5000} - NumberAnimation{target: dialog; property:"opacity"; to: 0; duration: 1000} + NumberAnimation { target: dialog; property:"opacity"; to: 1; duration: 1000 } + PauseAnimation { duration: 5000 } + NumberAnimation { target: dialog; property:"opacity"; to: 0; duration: 1000 } } } // sky - Rectangle { id: sky + Rectangle { + id: sky anchors { left: parent.left; top: parent.top; right: toolbox.right; bottom: parent.verticalCenter } gradient: Gradient { - GradientStop { id: stopA; position: 0.0; color: "#0E1533" } - GradientStop { id: stopB; position: 1.0; color: "#437284" } + GradientStop { id: gradientStopA; position: 0.0; color: "#0E1533" } + GradientStop { id: gradientStopB; position: 1.0; color: "#437284" } } } @@ -49,109 +54,123 @@ Item { Particles { id: stars x: 0; y: 0; width: parent.width; height: parent.height / 2 - source: "images/star.png"; angleDeviation: 360; velocity: 0 - velocityDeviation: 0; count: parent.width / 10; fadeInDuration: 2800 + source: "images/star.png" + angleDeviation: 360 + velocity: 0; velocityDeviation: 0 + count: parent.width / 10 + fadeInDuration: 2800 opacity: 1 } - // ground, which has a z such that the sun can set behind it + // ground Rectangle { id: ground - z: 2 - anchors { left: parent.left; top: parent.verticalCenter; right: toolbox.right; bottom: parent.bottom } + z: 2 // just above the sun so that the sun can set behind it + anchors { left: parent.left; top: parent.verticalCenter; right: toolbox.left; bottom: parent.bottom } gradient: Gradient { GradientStop { position: 0.0; color: "ForestGreen" } GradientStop { position: 1.0; color: "DarkGreen" } } } - //Day state, for when you place a sun - states: State { - name: "Day"; when: window.activeSuns > 0 - PropertyChanges { target: stopA; color: "DeepSkyBlue"} - PropertyChanges { target: stopB; color: "SkyBlue"} - PropertyChanges { target: stars; opacity: 0 } - } - - transitions: Transition { - PropertyAnimation { duration: 3000 } - ColorAnimation { duration: 3000 } - } - SystemPalette { id: activePalette } - // toolbox + // right-hand panel Rectangle { id: toolbox - z: 3 //Above ground - color: activePalette.window; + width: 480 - anchors { right: parent.right; top:parent.top; bottom: parent.bottom } - Rectangle { //Not a child of any positioner - border.color: "black"; - width: toolRow.width + 4 - height: toolRow.height + 4 - x: toolboxPositioner.x + toolRow.x - 2 - y: toolboxPositioner.y + toolRow.y - 2 - } + color: activePalette.window + anchors { right: parent.right; top: parent.top; bottom: parent.bottom } + Column { - id: toolboxPositioner anchors.centerIn: parent spacing: 8 + Text { text: "Drag an item into the scene." } - Row { - id: toolRow - spacing: 8; - PaletteItem { - anchors.verticalCenter: parent.verticalCenter - file: "Sun.qml"; - image: "../images/sun.png" - } - PaletteItem { - file: "GenericItem.qml" - image: "../images/moon.png" - } - PaletteItem { - anchors.verticalCenter: parent.verticalCenter - file: "PerspectiveItem.qml" - image: "../images/tree_s.png" - } - PaletteItem { - anchors.verticalCenter: parent.verticalCenter - file: "PerspectiveItem.qml" - image: "../images/rabbit_brown.png" - } - PaletteItem { - anchors.verticalCenter: parent.verticalCenter - file: "PerspectiveItem.qml" - image: "../images/rabbit_bw.png" + + Rectangle { + width: childrenRect.width + 10; height: childrenRect.height + 10 + border.color: "black" + + Row { + anchors.centerIn: parent + spacing: 8 + + PaletteItem { + anchors.verticalCenter: parent.verticalCenter + componentFile: "Sun.qml" + image: "../images/sun.png" + } + PaletteItem { + anchors.verticalCenter: parent.verticalCenter + componentFile: "GenericSceneItem.qml" + image: "../images/moon.png" + } + PaletteItem { + anchors.verticalCenter: parent.verticalCenter + componentFile: "PerspectiveItem.qml" + image: "../images/tree_s.png" + } + PaletteItem { + anchors.verticalCenter: parent.verticalCenter + componentFile: "PerspectiveItem.qml" + image: "../images/rabbit_brown.png" + } + PaletteItem { + anchors.verticalCenter: parent.verticalCenter + componentFile: "PerspectiveItem.qml" + image: "../images/rabbit_bw.png" + } } } + Text { text: "Active Suns: " + activeSuns } - Rectangle { width: 440; height: 1; color: "black" } - Text { text: "Arbitrary QML: " } - TextEdit { - id: qmlText - width: 460 - height: 220 - readOnly: false - focusOnPress: true - font.pixelSize: 14 - - text: "import Qt 4.7\nImage {\n id: smile;\n x: 500*Math.random();\n y: 200*Math.random(); \n source: 'images/face-smile.png';\n NumberAnimation on opacity { \n to: 0; duration: 1500;\n }\n Component.onCompleted: smile.destroy(1500);\n}" + + Rectangle { width: parent.width; height: 1; color: "black" } + + Text { text: "Arbitrary QML:" } + + Rectangle { + width: 460; height: 240 + + TextEdit { + id: qmlText + anchors.fill: parent; anchors.margins: 5 + readOnly: false + focusOnPress: true + font.pixelSize: 14 + + text: "import Qt 4.7\nImage {\n id: smile\n x: 500 * Math.random()\n y: 200 * Math.random() \n source: 'images/face-smile.png'\n\n NumberAnimation on opacity { \n to: 0; duration: 1500\n }\n\n Component.onCompleted: smile.destroy(1500);\n}" + } } + Button { text: "Create" - function makeCustom() { - try{ + onClicked: { + try { Qt.createQmlObject(qmlText.text, window, 'CustomObject'); - }catch(err){ - dialog.show('Error on line ' + err.qmlErrors[0].lineNumber + '\n' + err.qmlErrors[0].message ); + } catch(err) { + dialog.show('Error on line ' + err.qmlErrors[0].lineNumber + '\n' + err.qmlErrors[0].message); } } - onClicked: makeCustom(); } } } + //Day state, for when a sun is added to the scene + states: State { + name: "Day" + when: window.activeSuns > 0 + + PropertyChanges { target: gradientStopA; color: "DeepSkyBlue" } + PropertyChanges { target: gradientStopB; color: "SkyBlue" } + PropertyChanges { target: stars; opacity: 0 } + } + + transitions: Transition { + PropertyAnimation { duration: 3000 } + ColorAnimation { duration: 3000 } + } + } diff --git a/examples/declarative/dynamic/qml/Button.qml b/examples/declarative/dynamic/qml/Button.qml index 53588bb..963a850 100644 --- a/examples/declarative/dynamic/qml/Button.qml +++ b/examples/declarative/dynamic/qml/Button.qml @@ -6,19 +6,35 @@ Rectangle { property variant text signal clicked - SystemPalette { id: activePalette } - height: text.height + 10 - width: text.width + 20 + height: text.height + 10; width: text.width + 20 border.width: 1 - radius: 4; smooth: true + radius: 4 + smooth: true + gradient: Gradient { - GradientStop { position: 0.0; - color: if(!mr.pressed){activePalette.light;}else{activePalette.button;} + GradientStop { + position: 0.0 + color: !mouseArea.pressed ? activePalette.light : activePalette.button } - GradientStop { position: 1.0; - color: if(!mr.pressed){activePalette.button;}else{activePalette.dark;} + GradientStop { + position: 1.0 + color: !mouseArea.pressed ? activePalette.button : activePalette.dark } } - MouseArea { id:mr; anchors.fill: parent; onClicked: container.clicked() } - Text { id: text; anchors.centerIn:parent; font.pointSize: 10; text: parent.text; color: activePalette.buttonText } + + SystemPalette { id: activePalette } + + MouseArea { + id: mouseArea + anchors.fill: parent + onClicked: container.clicked() + } + + Text { + id: text + anchors.centerIn:parent + font.pointSize: 10 + text: parent.text + color: activePalette.buttonText + } } diff --git a/examples/declarative/dynamic/qml/GenericItem.qml b/examples/declarative/dynamic/qml/GenericItem.qml deleted file mode 100644 index faac06d..0000000 --- a/examples/declarative/dynamic/qml/GenericItem.qml +++ /dev/null @@ -1,13 +0,0 @@ -import Qt 4.7 - -Item{ - property bool created: false - property string image - width: imageItem.width - height: imageItem.height - z: 2 - Image{ - id: imageItem - source: image; - } -} diff --git a/examples/declarative/dynamic/qml/PaletteItem.qml b/examples/declarative/dynamic/qml/PaletteItem.qml index e8f2ed4..dcb5cc3 100644 --- a/examples/declarative/dynamic/qml/PaletteItem.qml +++ b/examples/declarative/dynamic/qml/PaletteItem.qml @@ -1,13 +1,19 @@ import Qt 4.7 import "itemCreation.js" as Code -GenericItem { - id: itemButton - property string file +Image { + id: paletteItem + + property string componentFile + property string image + + source: image + MouseArea { - anchors.fill: parent; + anchors.fill: parent + onPressed: Code.startDrag(mouse); - onPositionChanged: Code.moveDrag(mouse); + onPositionChanged: Code.continueDrag(mouse); onReleased: Code.endDrag(mouse); } } diff --git a/examples/declarative/dynamic/qml/PerspectiveItem.qml b/examples/declarative/dynamic/qml/PerspectiveItem.qml index 3cbe64a..c04d3dc 100644 --- a/examples/declarative/dynamic/qml/PerspectiveItem.qml +++ b/examples/declarative/dynamic/qml/PerspectiveItem.qml @@ -1,16 +1,25 @@ import Qt 4.7 Image { - id: tree + id: rootItem + property bool created: false - property double scaleFactor: Math.max((y+height-250)*0.01, 0.3) - property double scaledBottom: y + (height+height*scaleFactor)/2 - property bool onLand: scaledBottom > window.height/2 - property string image //Needed for compatibility with GenericItem + property string image + + property double scaledBottom: y + (height + height*scale) / 2 + property bool onLand: scaledBottom > window.height / 2 + + source: image opacity: onLand ? 1 : 0.25 - onCreatedChanged: if (created && !onLand) { tree.destroy() } else { z = scaledBottom } - scale: scaleFactor - transformOrigin: "Center" - source: image; smooth: true - onYChanged: z = scaledBottom + scale: Math.max((y + height - 250) * 0.01, 0.3) + smooth: true + + onCreatedChanged: { + if (created && !onLand) + rootItem.destroy(); + else + z = scaledBottom; + } + + onYChanged: z = scaledBottom; } diff --git a/examples/declarative/dynamic/qml/Sun.qml b/examples/declarative/dynamic/qml/Sun.qml index 3627964..43dcb9a 100644 --- a/examples/declarative/dynamic/qml/Sun.qml +++ b/examples/declarative/dynamic/qml/Sun.qml @@ -2,23 +2,37 @@ import Qt 4.7 Image { id: sun + property bool created: false property string image: "../images/sun.png" - onCreatedChanged: if(created){window.activeSuns++;}else{window.activeSuns--;} - source: image; - z: 1 + source: image - //x and y get set when instantiated - //head offscreen + // once item is created, start moving offscreen NumberAnimation on y { - to: window.height / 2; + to: window.height / 2 running: created - onRunningChanged: if (running) duration = (window.height - sun.y) * 10; else state = "OffScreen"; + onRunningChanged: { + if (running) + duration = (window.height - sun.y) * 10; + else + state = "OffScreen" + } } states: State { - name: "OffScreen"; - StateChangeScript { script: { sun.created = false; sun.destroy() } } + name: "OffScreen" + StateChangeScript { + script: { sun.created = false; sun.destroy() } + } + } + + onCreatedChanged: { + if (created) { + sun.z = 1; // above the sky but below the ground layer + window.activeSuns++; + } else { + window.activeSuns--; + } } } diff --git a/examples/declarative/dynamic/qml/itemCreation.js b/examples/declarative/dynamic/qml/itemCreation.js index 3c1b975..92d345d 100644 --- a/examples/declarative/dynamic/qml/itemCreation.js +++ b/examples/declarative/dynamic/qml/itemCreation.js @@ -1,54 +1,39 @@ var itemComponent = null; var draggedItem = null; var startingMouse; -var startingZ; -//Until QT-2385 is resolved we need to convert to scene coordinates manually -var xOffset; -var yOffset; -function setSceneOffset() -{ - xOffset = 0; - yOffset = 0; - var p = itemButton; - while(p != window){ - xOffset += p.x; - yOffset += p.y; - p = p.parent; - } -} +var posnInWindow; function startDrag(mouse) { - setSceneOffset(); + posnInWindow = paletteItem.mapToItem(null, 0, 0); startingMouse = { x: mouse.x, y: mouse.y } loadComponent(); } -//Creation is split into two functions due to an asyncronous wait while +//Creation is split into two functions due to an asynchronous wait while //possible external files are loaded. function loadComponent() { - if (itemComponent != null) //Already loaded the component + if (itemComponent != null) { // component has been previously loaded createItem(); + return; + } - itemComponent = Qt.createComponent(itemButton.file); - //console.log(itemButton.file) - if(itemComponent.status == Component.Loading){ - component.statusChanged.connect(finishCreation); - }else{//Depending on the content, it can be ready or error immediately + itemComponent = Qt.createComponent(paletteItem.componentFile); + if (itemComponent.status == Component.Loading) //Depending on the content, it can be ready or error immediately + component.statusChanged.connect(createItem); + else createItem(); - } } function createItem() { if (itemComponent.status == Component.Ready && draggedItem == null) { draggedItem = itemComponent.createObject(); draggedItem.parent = window; - draggedItem.image = itemButton.image; - draggedItem.x = xOffset; - draggedItem.y = yOffset; - startingZ = draggedItem.z; - draggedItem.z = 4;//On top + draggedItem.image = paletteItem.image; + draggedItem.x = posnInWindow.x; + draggedItem.y = posnInWindow.y; + draggedItem.z = 3; // make sure created item is above the ground layer } else if (itemComponent.status == Component.Error) { draggedItem = null; console.log("error creating component"); @@ -56,25 +41,24 @@ function createItem() { } } -function moveDrag(mouse) +function continueDrag(mouse) { - if(draggedItem == null) + if (draggedItem == null) return; - draggedItem.x = mouse.x + xOffset - startingMouse.x; - draggedItem.y = mouse.y + yOffset - startingMouse.y; + draggedItem.x = mouse.x + posnInWindow.x - startingMouse.x; + draggedItem.y = mouse.y + posnInWindow.y - startingMouse.y; } function endDrag(mouse) { - if(draggedItem == null) + if (draggedItem == null) return; - if(draggedItem.x + draggedItem.width > toolbox.x){ //Don't drop it in the toolbox + if (draggedItem.x + draggedItem.width > toolbox.x) { //Don't drop it in the toolbox draggedItem.destroy(); draggedItem = null; - }else{ - draggedItem.z = startingZ; + } else { draggedItem.created = true; draggedItem = null; } -- cgit v0.12 From 4600f2053802ad41550a84573bdcbe4b50fb5a67 Mon Sep 17 00:00:00 2001 From: Bea Lam Date: Fri, 7 May 2010 13:29:34 +1000 Subject: Doc fix Task-number: QTBUG-10458 --- src/declarative/util/qdeclarativelistmodel.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/declarative/util/qdeclarativelistmodel.cpp b/src/declarative/util/qdeclarativelistmodel.cpp index 3810256..0985a6b 100644 --- a/src/declarative/util/qdeclarativelistmodel.cpp +++ b/src/declarative/util/qdeclarativelistmodel.cpp @@ -591,7 +591,7 @@ void QDeclarativeListModel::set(int index, const QScriptValue& valuemap) Changes the \a property of the item at \a index in the list model to \a value. \code - fruitModel.set(3, "cost", 5.95) + fruitModel.setProperty(3, "cost", 5.95) \endcode The \a index must be an element in the list. -- cgit v0.12 From 17837067e9dbda02669487bdd64419c38e8a2ebd Mon Sep 17 00:00:00 2001 From: Leonardo Sobral Cunha Date: Fri, 7 May 2010 14:17:27 +1000 Subject: Add missing qml file to qdeclarativemousearea --- .../qdeclarativemousearea/data/rejectEvent.qml | 28 ++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 tests/auto/declarative/qdeclarativemousearea/data/rejectEvent.qml diff --git a/tests/auto/declarative/qdeclarativemousearea/data/rejectEvent.qml b/tests/auto/declarative/qdeclarativemousearea/data/rejectEvent.qml new file mode 100644 index 0000000..fecfadf --- /dev/null +++ b/tests/auto/declarative/qdeclarativemousearea/data/rejectEvent.qml @@ -0,0 +1,28 @@ +import Qt 4.7 + +Rectangle { + id: root + color: "#ffffff" + width: 320; height: 240 + property bool mr1_pressed: false + property bool mr1_released: false + property bool mr1_canceled: false + property bool mr2_pressed: false + property bool mr2_released: false + property bool mr2_canceled: false + + MouseArea { + id: mouseRegion1 + anchors.fill: parent + onPressed: {console.log("press111"); root.mr1_pressed = true} + onReleased: {console.log("release111"); root.mr1_released = true} + onCanceled: {console.log("ungrab1111"); root.mr1_canceled = true} + } + MouseArea { + id: mouseRegion2 + width: 120; height: 120 + onPressed: {console.log("press222"); root.mr2_pressed = true; mouse.accepted = false} + onReleased: {console.log("release2222"); root.mr2_released = true} + onCanceled: {console.log("ungrab2222"); root.mr2_canceled = true} + } +} -- cgit v0.12 From 60a06af7200217aa16c8c130a1ed0afce31812ed Mon Sep 17 00:00:00 2001 From: Aaron Kennedy Date: Fri, 7 May 2010 14:23:56 +1000 Subject: Fix autotests (remove import Qt.widgets) --- .../auto/declarative/qdeclarativeanchors/data/anchorsqgraphicswidget.qml | 1 - tests/auto/declarative/qdeclarativeloader/data/GraphicsWidget250x250.qml | 1 - 2 files changed, 2 deletions(-) diff --git a/tests/auto/declarative/qdeclarativeanchors/data/anchorsqgraphicswidget.qml b/tests/auto/declarative/qdeclarativeanchors/data/anchorsqgraphicswidget.qml index 91973a3..d430c2c 100644 --- a/tests/auto/declarative/qdeclarativeanchors/data/anchorsqgraphicswidget.qml +++ b/tests/auto/declarative/qdeclarativeanchors/data/anchorsqgraphicswidget.qml @@ -1,5 +1,4 @@ import Qt 4.7 -import Qt.widgets 4.7 Rectangle { color: "white" diff --git a/tests/auto/declarative/qdeclarativeloader/data/GraphicsWidget250x250.qml b/tests/auto/declarative/qdeclarativeloader/data/GraphicsWidget250x250.qml index 9bb0b37..3b851c1 100644 --- a/tests/auto/declarative/qdeclarativeloader/data/GraphicsWidget250x250.qml +++ b/tests/auto/declarative/qdeclarativeloader/data/GraphicsWidget250x250.qml @@ -1,5 +1,4 @@ import Qt 4.7 -import Qt.widgets 4.6 QGraphicsWidget { size: "250x250" -- cgit v0.12 From 32c2d17680a04fced714aa103b40d7de24d9eb26 Mon Sep 17 00:00:00 2001 From: Aaron Kennedy Date: Fri, 7 May 2010 14:41:00 +1000 Subject: Fix autotests --- src/imports/imports.pro | 2 +- tests/auto/declarative/declarative.pro | 1 - tests/auto/declarative/examples/tst_examples.cpp | 23 +++---- .../graphicswidgets/data/graphicswidgets.qml | 52 --------------- .../graphicswidgets/graphicswidgets.pro | 10 --- .../graphicswidgets/tst_graphicswidgets.cpp | 74 ---------------------- 6 files changed, 9 insertions(+), 153 deletions(-) delete mode 100644 tests/auto/declarative/graphicswidgets/data/graphicswidgets.qml delete mode 100644 tests/auto/declarative/graphicswidgets/graphicswidgets.pro delete mode 100644 tests/auto/declarative/graphicswidgets/tst_graphicswidgets.cpp diff --git a/src/imports/imports.pro b/src/imports/imports.pro index 1754908..a9d600e 100644 --- a/src/imports/imports.pro +++ b/src/imports/imports.pro @@ -1,6 +1,6 @@ TEMPLATE = subdirs -SUBDIRS += particles +SUBDIRS += particles gestures contains(QT_CONFIG, webkit): SUBDIRS += webkit contains(QT_CONFIG, mediaservices): SUBDIRS += multimedia diff --git a/tests/auto/declarative/declarative.pro b/tests/auto/declarative/declarative.pro index 05c4c26..a9b069c 100644 --- a/tests/auto/declarative/declarative.pro +++ b/tests/auto/declarative/declarative.pro @@ -1,7 +1,6 @@ TEMPLATE = subdirs SUBDIRS += \ examples \ - graphicswidgets \ # Cover parserstress \ # Cover qmetaobjectbuilder \ # Cover qdeclarativeanimations \ # Cover diff --git a/tests/auto/declarative/examples/tst_examples.cpp b/tests/auto/declarative/examples/tst_examples.cpp index 4f10a98..3759cb5 100644 --- a/tests/auto/declarative/examples/tst_examples.cpp +++ b/tests/auto/declarative/examples/tst_examples.cpp @@ -80,16 +80,6 @@ tst_examples::tst_examples() // Add directories you want excluded here - excludedDirs << "examples/declarative/extending"; - excludedDirs << "examples/declarative/tutorials/extending"; - excludedDirs << "examples/declarative/plugins"; - excludedDirs << "examples/declarative/proxywidgets"; - excludedDirs << "examples/declarative/gestures"; - - excludedDirs << "examples/declarative/imageprovider"; - excludedDirs << "examples/declarative/layouts/graphicsLayouts"; - excludedDirs << "demos/declarative/minehunt"; - excludedDirs << "doc/src/snippets/declarative/graphicswidgets"; #ifdef QT_NO_WEBKIT @@ -160,11 +150,14 @@ QStringList tst_examples::findQmlFiles(const QDir &d) QStringList rv; - QStringList files = d.entryList(QStringList() << QLatin1String("*.qml"), - QDir::Files); - foreach (const QString &file, files) { - if (file.at(0).isLower()) { - rv << d.absoluteFilePath(file); + QStringList cppfiles = d.entryList(QStringList() << QLatin1String("*.cpp"), QDir::Files); + if (cppfiles.isEmpty()) { + QStringList files = d.entryList(QStringList() << QLatin1String("*.qml"), + QDir::Files); + foreach (const QString &file, files) { + if (file.at(0).isLower()) { + rv << d.absoluteFilePath(file); + } } } diff --git a/tests/auto/declarative/graphicswidgets/data/graphicswidgets.qml b/tests/auto/declarative/graphicswidgets/data/graphicswidgets.qml deleted file mode 100644 index d6cf4de..0000000 --- a/tests/auto/declarative/graphicswidgets/data/graphicswidgets.qml +++ /dev/null @@ -1,52 +0,0 @@ -import Qt 4.7 -import Qt.widgets 4.7 - -QGraphicsWidget { - geometry: "20,0,600x400" - layout: QGraphicsLinearLayout { - orientation: Qt.Horizontal - QGraphicsWidget { - layout: QGraphicsLinearLayout { - spacing: 10; orientation: Qt.Vertical - LayoutItem { - QGraphicsLinearLayout.stretchFactor: 1 - QGraphicsLinearLayout.spacing: 1 - objectName: "left" - minimumSize: "100x100" - maximumSize: "300x300" - preferredSize: "100x100" - Rectangle { objectName: "yellowRect"; color: "yellow"; anchors.fill: parent } - } - LayoutItem { - QGraphicsLinearLayout.stretchFactor: 10 - QGraphicsLinearLayout.spacing: 10 - objectName: "left" - minimumSize: "100x100" - maximumSize: "300x300" - preferredSize: "100x100" - Rectangle { objectName: "yellowRect"; color: "blue"; anchors.fill: parent } - } - } - } - QGraphicsWidget { - layout: QGraphicsLinearLayout { - spacing: 10; orientation: Qt.Horizontal; contentsMargin: 10 - LayoutItem { - objectName: "left" - minimumSize: "100x100" - maximumSize: "300x300" - preferredSize: "100x100" - Rectangle { objectName: "yellowRect"; color: "red"; anchors.fill: parent } - } - LayoutItem { - objectName: "left" - minimumSize: "100x100" - maximumSize: "300x300" - preferredSize: "100x100" - Rectangle { objectName: "yellowRect"; color: "green"; anchors.fill: parent } - } - } - } - } -} - diff --git a/tests/auto/declarative/graphicswidgets/graphicswidgets.pro b/tests/auto/declarative/graphicswidgets/graphicswidgets.pro deleted file mode 100644 index b77b430..0000000 --- a/tests/auto/declarative/graphicswidgets/graphicswidgets.pro +++ /dev/null @@ -1,10 +0,0 @@ -load(qttest_p4) -contains(QT_CONFIG,declarative): QT += declarative gui -macx:CONFIG -= app_bundle - -SOURCES += tst_graphicswidgets.cpp - -# Define SRCDIR equal to test's source directory -DEFINES += SRCDIR=\\\"$$PWD\\\" - -CONFIG += parallel_test diff --git a/tests/auto/declarative/graphicswidgets/tst_graphicswidgets.cpp b/tests/auto/declarative/graphicswidgets/tst_graphicswidgets.cpp deleted file mode 100644 index f1a71d5..0000000 --- a/tests/auto/declarative/graphicswidgets/tst_graphicswidgets.cpp +++ /dev/null @@ -1,74 +0,0 @@ -/**************************************************************************** -** -** 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 -#include -#include -#include - -class tst_graphicswidgets : public QObject - -{ - Q_OBJECT -public: - tst_graphicswidgets(); - -private slots: - void widgets(); -}; - -tst_graphicswidgets::tst_graphicswidgets() -{ -} - -void tst_graphicswidgets::widgets() -{ - QDeclarativeEngine engine; - QDeclarativeComponent c(&engine, QUrl::fromLocalFile(SRCDIR "/data/graphicswidgets.qml")); - QGraphicsWidget *obj = qobject_cast(c.create()); - - QVERIFY(obj != 0); - delete obj; -} - -QTEST_MAIN(tst_graphicswidgets) - -#include "tst_graphicswidgets.moc" -- cgit v0.12 From bdfa2d47fa1a6abee6e966f82fadf7a3d97bab0b Mon Sep 17 00:00:00 2001 From: Aaron Kennedy Date: Fri, 7 May 2010 15:48:58 +1000 Subject: Doc --- src/imports/webkit/qdeclarativewebview.cpp | 33 ++++++++++++++++++++++-------- 1 file changed, 24 insertions(+), 9 deletions(-) diff --git a/src/imports/webkit/qdeclarativewebview.cpp b/src/imports/webkit/qdeclarativewebview.cpp index 5db812c..9571470 100644 --- a/src/imports/webkit/qdeclarativewebview.cpp +++ b/src/imports/webkit/qdeclarativewebview.cpp @@ -437,24 +437,39 @@ void QDeclarativeWebView::paintPage(const QRect& r) /*! \qmlproperty list WebView::javaScriptWindowObjects - This property is a list of object that are available from within - the webview's JavaScript context. + A list of QML objects to expose to the web page. - The \a object will be inserted as a child of the frame's window - object, under the name given by the attached property \c WebView.windowObjectName. + Each object will be added as a property of the web frame's window object. The + property name is controlled by the value of \c WebView.windowObjectName + attached property. + + Exposing QML objects to a web page allows JavaScript executing in the web + page itself to communicate with QML, by reading and writing properties and + by calling methods of the exposed QML objects. + + This example shows how to call into a QML method using a window object. \qml WebView { - javaScriptWindowObjects: Object { - WebView.windowObjectName: "coordinates" + javaScriptWindowObjects: QtObject { + WebView.windowObjectName: "qml" + + function qmlCall() { + console.log("This call is in QML!"); + } } + + html: "" } \endqml - Properties of the object will be exposed as JavaScript properties and slots as - JavaScript methods. + The output of the example will be: + \code + This is in WebKit! + This call is in QML! + \endcode - If Javascript is not enabled for this page, then this property does nothing. + If Javascript is not enabled for the page, then this property does nothing. */ QDeclarativeListProperty QDeclarativeWebView::javaScriptWindowObjects() { -- cgit v0.12