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 8e023477777982d3aeb53d26ed61f7e8c1eb753c Mon Sep 17 00:00:00 2001 From: Warwick Allison Date: Thu, 6 May 2010 09:34:51 +1000 Subject: Another initialization fix. Unleak. --- tools/qml/main.cpp | 2 +- tools/qml/qmlruntime.cpp | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/tools/qml/main.cpp b/tools/qml/main.cpp index 78f0c87..fb687ac 100644 --- a/tools/qml/main.cpp +++ b/tools/qml/main.cpp @@ -54,7 +54,7 @@ QT_USE_NAMESPACE -QtMsgHandler systemMsgOutput; +QtMsgHandler systemMsgOutput = 0; #if defined (Q_OS_SYMBIAN) #include diff --git a/tools/qml/qmlruntime.cpp b/tools/qml/qmlruntime.cpp index fe0f67c..d49b0f1 100644 --- a/tools/qml/qmlruntime.cpp +++ b/tools/qml/qmlruntime.cpp @@ -543,6 +543,7 @@ QDeclarativeViewer::QDeclarativeViewer(QWidget *parent, Qt::WindowFlags flags) QDeclarativeViewer::~QDeclarativeViewer() { + delete loggerWindow; canvas->engine()->setNetworkAccessManagerFactory(0); delete namFactory; } -- cgit v0.12 From 2df39e548264617b8e10fae32bdafbfe2edcd895 Mon Sep 17 00:00:00 2001 From: Martin Jones Date: Thu, 6 May 2010 09:39:31 +1000 Subject: Fix some compiler warnings. --- src/declarative/qml/qdeclarativeengine.cpp | 46 +++++++++++++++--------------- src/declarative/qml/qdeclarativeinfo.cpp | 3 +- 2 files changed, 25 insertions(+), 24 deletions(-) diff --git a/src/declarative/qml/qdeclarativeengine.cpp b/src/declarative/qml/qdeclarativeengine.cpp index 6ddd01e..cc6c5fe 100644 --- a/src/declarative/qml/qdeclarativeengine.cpp +++ b/src/declarative/qml/qdeclarativeengine.cpp @@ -962,7 +962,7 @@ QScriptValue QDeclarativeEnginePrivate::createComponent(QScriptContext *ctxt, QS Q_ASSERT(context); if(ctxt->argumentCount() != 1) { - return ctxt->throwError("Qt.createComponent(): Invalid arguments"); + return ctxt->throwError(QLatin1String("Qt.createComponent(): Invalid arguments")); }else{ QString arg = ctxt->argument(0).toString(); if (arg.isEmpty()) @@ -982,7 +982,7 @@ QScriptValue QDeclarativeEnginePrivate::createQmlObject(QScriptContext *ctxt, QS QDeclarativeEngine* activeEngine = activeEnginePriv->q_func(); if(ctxt->argumentCount() < 2 || ctxt->argumentCount() > 3) - return ctxt->throwError("Qt.createQmlObject(): Invalid arguments"); + return ctxt->throwError(QLatin1String("Qt.createQmlObject(): Invalid arguments")); QDeclarativeContextData* context = activeEnginePriv->getContext(ctxt); Q_ASSERT(context); @@ -1002,7 +1002,7 @@ QScriptValue QDeclarativeEnginePrivate::createQmlObject(QScriptContext *ctxt, QS QObject *parentArg = activeEnginePriv->objectClass->toQObject(ctxt->argument(1)); if(!parentArg) - return ctxt->throwError("Qt.createQmlObject(): Missing parent object"); + return ctxt->throwError(QLatin1String("Qt.createQmlObject(): Missing parent object")); QDeclarativeComponent component(activeEngine); component.setData(qml.toUtf8(), url); @@ -1027,7 +1027,7 @@ QScriptValue QDeclarativeEnginePrivate::createQmlObject(QScriptContext *ctxt, QS } if (!component.isReady()) - return ctxt->throwError("Qt.createQmlObject(): Component is not ready"); + return ctxt->throwError(QLatin1String("Qt.createQmlObject(): Component is not ready")); QObject *obj = component.beginCreate(context->asQDeclarativeContext()); if(obj) @@ -1076,7 +1076,7 @@ QScriptValue QDeclarativeEnginePrivate::isQtObject(QScriptContext *ctxt, QScript QScriptValue QDeclarativeEnginePrivate::vector(QScriptContext *ctxt, QScriptEngine *engine) { if(ctxt->argumentCount() != 3) - return ctxt->throwError("Qt.vector(): Invalid arguments"); + return ctxt->throwError(QLatin1String("Qt.vector(): Invalid arguments")); qsreal x = ctxt->argument(0).toNumber(); qsreal y = ctxt->argument(1).toNumber(); qsreal z = ctxt->argument(2).toNumber(); @@ -1087,7 +1087,7 @@ QScriptValue QDeclarativeEnginePrivate::formatDate(QScriptContext*ctxt, QScriptE { int argCount = ctxt->argumentCount(); if(argCount == 0 || argCount > 2) - return ctxt->throwError("Qt.formatDate(): Invalid arguments"); + return ctxt->throwError(QLatin1String("Qt.formatDate(): Invalid arguments")); QDate date = ctxt->argument(0).toDateTime().date(); Qt::DateFormat enumFormat = Qt::DefaultLocaleShortDate; @@ -1098,7 +1098,7 @@ QScriptValue QDeclarativeEnginePrivate::formatDate(QScriptContext*ctxt, QScriptE } else if (ctxt->argument(1).isNumber()) { enumFormat = Qt::DateFormat(ctxt->argument(1).toUInt32()); } else { - return ctxt->throwError("Qt.formatDate(): Invalid date format"); + return ctxt->throwError(QLatin1String("Qt.formatDate(): Invalid date format")); } } return engine->newVariant(qVariantFromValue(date.toString(enumFormat))); @@ -1108,7 +1108,7 @@ QScriptValue QDeclarativeEnginePrivate::formatTime(QScriptContext*ctxt, QScriptE { int argCount = ctxt->argumentCount(); if(argCount == 0 || argCount > 2) - return ctxt->throwError("Qt.formatTime(): Invalid arguments"); + return ctxt->throwError(QLatin1String("Qt.formatTime(): Invalid arguments")); QTime date = ctxt->argument(0).toDateTime().time(); Qt::DateFormat enumFormat = Qt::DefaultLocaleShortDate; @@ -1119,7 +1119,7 @@ QScriptValue QDeclarativeEnginePrivate::formatTime(QScriptContext*ctxt, QScriptE } else if (ctxt->argument(1).isNumber()) { enumFormat = Qt::DateFormat(ctxt->argument(1).toUInt32()); } else { - return ctxt->throwError("Qt.formatTime(): Invalid time format"); + return ctxt->throwError(QLatin1String("Qt.formatTime(): Invalid time format")); } } return engine->newVariant(qVariantFromValue(date.toString(enumFormat))); @@ -1129,7 +1129,7 @@ QScriptValue QDeclarativeEnginePrivate::formatDateTime(QScriptContext*ctxt, QScr { int argCount = ctxt->argumentCount(); if(argCount == 0 || argCount > 2) - return ctxt->throwError("Qt.formatDateTime(): Invalid arguments"); + return ctxt->throwError(QLatin1String("Qt.formatDateTime(): Invalid arguments")); QDateTime date = ctxt->argument(0).toDateTime(); Qt::DateFormat enumFormat = Qt::DefaultLocaleShortDate; @@ -1140,7 +1140,7 @@ QScriptValue QDeclarativeEnginePrivate::formatDateTime(QScriptContext*ctxt, QScr } else if (ctxt->argument(1).isNumber()) { enumFormat = Qt::DateFormat(ctxt->argument(1).toUInt32()); } else { - return ctxt->throwError("Qt.formatDateTime(): Invalid datetime format"); + return ctxt->throwError(QLatin1String("Qt.formatDateTime(): Invalid datetime format")); } } return engine->newVariant(qVariantFromValue(date.toString(enumFormat))); @@ -1150,7 +1150,7 @@ QScriptValue QDeclarativeEnginePrivate::rgba(QScriptContext *ctxt, QScriptEngine { int argCount = ctxt->argumentCount(); if(argCount < 3 || argCount > 4) - return ctxt->throwError("Qt.rgba(): Invalid arguments"); + return ctxt->throwError(QLatin1String("Qt.rgba(): Invalid arguments")); qsreal r = ctxt->argument(0).toNumber(); qsreal g = ctxt->argument(1).toNumber(); qsreal b = ctxt->argument(2).toNumber(); @@ -1172,7 +1172,7 @@ QScriptValue QDeclarativeEnginePrivate::hsla(QScriptContext *ctxt, QScriptEngine { int argCount = ctxt->argumentCount(); if(argCount < 3 || argCount > 4) - return ctxt->throwError("Qt.hsla(): Invalid arguments"); + return ctxt->throwError(QLatin1String("Qt.hsla(): Invalid arguments")); qsreal h = ctxt->argument(0).toNumber(); qsreal s = ctxt->argument(1).toNumber(); qsreal l = ctxt->argument(2).toNumber(); @@ -1193,7 +1193,7 @@ QScriptValue QDeclarativeEnginePrivate::hsla(QScriptContext *ctxt, QScriptEngine QScriptValue QDeclarativeEnginePrivate::rect(QScriptContext *ctxt, QScriptEngine *engine) { if(ctxt->argumentCount() != 4) - return ctxt->throwError("Qt.rect(): Invalid arguments"); + return ctxt->throwError(QLatin1String("Qt.rect(): Invalid arguments")); qsreal x = ctxt->argument(0).toNumber(); qsreal y = ctxt->argument(1).toNumber(); @@ -1209,7 +1209,7 @@ QScriptValue QDeclarativeEnginePrivate::rect(QScriptContext *ctxt, QScriptEngine QScriptValue QDeclarativeEnginePrivate::point(QScriptContext *ctxt, QScriptEngine *engine) { if(ctxt->argumentCount() != 2) - return ctxt->throwError("Qt.point(): Invalid arguments"); + return ctxt->throwError(QLatin1String("Qt.point(): Invalid arguments")); qsreal x = ctxt->argument(0).toNumber(); qsreal y = ctxt->argument(1).toNumber(); return QDeclarativeEnginePrivate::get(engine)->scriptValueFromVariant(qVariantFromValue(QPointF(x, y))); @@ -1218,7 +1218,7 @@ QScriptValue QDeclarativeEnginePrivate::point(QScriptContext *ctxt, QScriptEngin QScriptValue QDeclarativeEnginePrivate::size(QScriptContext *ctxt, QScriptEngine *engine) { if(ctxt->argumentCount() != 2) - return ctxt->throwError("Qt.size(): Invalid arguments"); + return ctxt->throwError(QLatin1String("Qt.size(): Invalid arguments")); qsreal w = ctxt->argument(0).toNumber(); qsreal h = ctxt->argument(1).toNumber(); return QDeclarativeEnginePrivate::get(engine)->scriptValueFromVariant(qVariantFromValue(QSizeF(w, h))); @@ -1227,7 +1227,7 @@ QScriptValue QDeclarativeEnginePrivate::size(QScriptContext *ctxt, QScriptEngine QScriptValue QDeclarativeEnginePrivate::lighter(QScriptContext *ctxt, QScriptEngine *engine) { if(ctxt->argumentCount() != 1 && ctxt->argumentCount() != 2) - return ctxt->throwError("Qt.lighter(): Invalid arguments"); + return ctxt->throwError(QLatin1String("Qt.lighter(): Invalid arguments")); QVariant v = ctxt->argument(0).toVariant(); QColor color; if (v.userType() == QVariant::Color) @@ -1249,7 +1249,7 @@ QScriptValue QDeclarativeEnginePrivate::lighter(QScriptContext *ctxt, QScriptEng QScriptValue QDeclarativeEnginePrivate::darker(QScriptContext *ctxt, QScriptEngine *engine) { if(ctxt->argumentCount() != 1 && ctxt->argumentCount() != 2) - return ctxt->throwError("Qt.darker(): Invalid arguments"); + return ctxt->throwError(QLatin1String("Qt.darker(): Invalid arguments")); QVariant v = ctxt->argument(0).toVariant(); QColor color; if (v.userType() == QVariant::Color) @@ -1282,7 +1282,7 @@ QScriptValue QDeclarativeEnginePrivate::desktopOpenUrl(QScriptContext *ctxt, QSc QScriptValue QDeclarativeEnginePrivate::fontFamilies(QScriptContext *ctxt, QScriptEngine *e) { if(ctxt->argumentCount() != 0) - return ctxt->throwError("Qt.fontFamilies(): Invalid arguments"); + return ctxt->throwError(QLatin1String("Qt.fontFamilies(): Invalid arguments")); QDeclarativeEnginePrivate *p = QDeclarativeEnginePrivate::get(e); QFontDatabase database; @@ -1292,7 +1292,7 @@ QScriptValue QDeclarativeEnginePrivate::fontFamilies(QScriptContext *ctxt, QScri QScriptValue QDeclarativeEnginePrivate::md5(QScriptContext *ctxt, QScriptEngine *) { if (ctxt->argumentCount() != 1) - return ctxt->throwError("Qt.md5(): Invalid arguments"); + return ctxt->throwError(QLatin1String("Qt.md5(): Invalid arguments")); QByteArray data = ctxt->argument(0).toString().toUtf8(); QByteArray result = QCryptographicHash::hash(data, QCryptographicHash::Md5); @@ -1303,7 +1303,7 @@ QScriptValue QDeclarativeEnginePrivate::md5(QScriptContext *ctxt, QScriptEngine QScriptValue QDeclarativeEnginePrivate::btoa(QScriptContext *ctxt, QScriptEngine *) { if (ctxt->argumentCount() != 1) - return ctxt->throwError("Qt.btoa(): Invalid arguments"); + return ctxt->throwError(QLatin1String("Qt.btoa(): Invalid arguments")); QByteArray data = ctxt->argument(0).toString().toUtf8(); @@ -1313,7 +1313,7 @@ QScriptValue QDeclarativeEnginePrivate::btoa(QScriptContext *ctxt, QScriptEngine QScriptValue QDeclarativeEnginePrivate::atob(QScriptContext *ctxt, QScriptEngine *) { if (ctxt->argumentCount() != 1) - return ctxt->throwError("Qt.atob(): Invalid arguments"); + return ctxt->throwError(QLatin1String("Qt.atob(): Invalid arguments")); QByteArray data = ctxt->argument(0).toString().toUtf8(); @@ -1414,7 +1414,7 @@ QScriptValue QDeclarativeEnginePrivate::quit(QScriptContext * /*ctxt*/, QScriptE QScriptValue QDeclarativeEnginePrivate::tint(QScriptContext *ctxt, QScriptEngine *engine) { if(ctxt->argumentCount() != 2) - return ctxt->throwError("Qt.tint(): Invalid arguments"); + return ctxt->throwError(QLatin1String("Qt.tint(): Invalid arguments")); //get color QVariant v = ctxt->argument(0).toVariant(); QColor color; diff --git a/src/declarative/qml/qdeclarativeinfo.cpp b/src/declarative/qml/qdeclarativeinfo.cpp index ffed14e..c980a2a 100644 --- a/src/declarative/qml/qdeclarativeinfo.cpp +++ b/src/declarative/qml/qdeclarativeinfo.cpp @@ -78,8 +78,9 @@ QT_BEGIN_NAMESPACE \endcode */ -struct QDeclarativeInfoPrivate +class QDeclarativeInfoPrivate { +public: QDeclarativeInfoPrivate() : ref (1), object(0) {} int ref; -- cgit v0.12 From ac0b3eec9fbf25fb72d5368fa7ba31b58bb7ed30 Mon Sep 17 00:00:00 2001 From: Martin Jones Date: Thu, 6 May 2010 09:46:49 +1000 Subject: Doc: more clarification of cacheBuffer --- src/declarative/graphicsitems/qdeclarativegridview.cpp | 3 +++ src/declarative/graphicsitems/qdeclarativelistview.cpp | 3 +++ 2 files changed, 6 insertions(+) diff --git a/src/declarative/graphicsitems/qdeclarativegridview.cpp b/src/declarative/graphicsitems/qdeclarativegridview.cpp index ef6d3df..869826c 100644 --- a/src/declarative/graphicsitems/qdeclarativegridview.cpp +++ b/src/declarative/graphicsitems/qdeclarativegridview.cpp @@ -1415,6 +1415,9 @@ void QDeclarativeGridView::setWrapEnabled(bool wrap) set to 40, then up to 2 delegates above and 2 delegates below the visible area may be retained. + Note that cacheBuffer is not a pixel buffer - it only maintains additional + instantiated delegates. + Setting this value can make scrolling the list smoother at the expense of additional memory usage. It is not a substitute for creating efficient delegates; the fewer elements in a delegate, the faster a view may be diff --git a/src/declarative/graphicsitems/qdeclarativelistview.cpp b/src/declarative/graphicsitems/qdeclarativelistview.cpp index 8485071..0811278 100644 --- a/src/declarative/graphicsitems/qdeclarativelistview.cpp +++ b/src/declarative/graphicsitems/qdeclarativelistview.cpp @@ -1848,6 +1848,9 @@ void QDeclarativeListView::setWrapEnabled(bool wrap) set to 40, then up to 2 delegates above and 2 delegates below the visible area may be retained. + Note that cacheBuffer is not a pixel buffer - it only maintains additional + instantiated delegates. + Setting this value can make scrolling the list smoother at the expense of additional memory usage. It is not a substitute for creating efficient delegates; the fewer elements in a delegate, the faster a view may be -- cgit v0.12 From c13db7e74887b648960161b5f4fa04ed8dfd3e64 Mon Sep 17 00:00:00 2001 From: Yann Bodson Date: Thu, 6 May 2010 10:16:25 +1000 Subject: doc fixes --- doc/src/declarative/animation.qdoc | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/doc/src/declarative/animation.qdoc b/doc/src/declarative/animation.qdoc index 88aca1b..6e98949 100644 --- a/doc/src/declarative/animation.qdoc +++ b/doc/src/declarative/animation.qdoc @@ -73,9 +73,9 @@ Rectangle { y: 0 SequentialAnimation on y { loops: Animation.Infinite - NumberAnimation { to: 200-img.height; easing.type: "OutBounce"; duration: 2000 } + NumberAnimation { to: 200-img.height; easing.type: Easing.OutBounce; duration: 2000 } PauseAnimation { duration: 1000 } - NumberAnimation { to: 0; easing.type: "OutQuad"; duration: 1000 } + NumberAnimation { to: 0; easing.type: Easing.OutQuad; duration: 1000 } } } } @@ -136,7 +136,7 @@ transitions: [ Transition { NumberAnimation { properties: "x,y" - easing.type: "OutBounce" + easing.type: Easing.OutBounce duration: 200 } } @@ -157,7 +157,7 @@ Transition { SequentialAnimation { NumberAnimation { duration: 1000 - easing.type: "OutBounce" + easing.type: Easing.OutBounce // animate myItem's x and y if they have changed in the state target: myItem properties: "x,y" @@ -199,7 +199,7 @@ Transition { ParallelAnimation { NumberAnimation { duration: 1000 - easing.type: "OutBounce" + easing.type: Easing.OutBounce targets: box1 properties: "x,y" } @@ -227,7 +227,7 @@ Rectangle { id: redRect color: "red" width: 100; height: 100 - Behavior on x { NumberAnimation { duration: 300; easing.type: "InOutQuad" } } + Behavior on x { NumberAnimation { duration: 300; easing.type: Easing.InOutQuad } } } \endqml -- cgit v0.12 From d6da01355fb436a04932131373579938dc4b7d8d Mon Sep 17 00:00:00 2001 From: Aaron Kennedy Date: Thu, 6 May 2010 10:49:57 +1000 Subject: Compile --- tests/auto/declarative/declarative.pro | 1 - 1 file changed, 1 deletion(-) diff --git a/tests/auto/declarative/declarative.pro b/tests/auto/declarative/declarative.pro index 9b3b3d0..b8e33cf 100644 --- a/tests/auto/declarative/declarative.pro +++ b/tests/auto/declarative/declarative.pro @@ -29,7 +29,6 @@ SUBDIRS += \ qdeclarativeitem \ # Cover qdeclarativelistview \ # Cover qdeclarativeloader \ # Cover - qdeclarativelayouts \ # Cover qdeclarativemousearea \ # Cover qdeclarativeparticles \ # Cover qdeclarativepathview \ # Cover -- cgit v0.12 From c628213c5b64b50e914d173d207f4fe64629d5e2 Mon Sep 17 00:00:00 2001 From: Aaron Kennedy Date: Thu, 6 May 2010 10:50:04 +1000 Subject: Add QML_XHR_DUMP option --- src/declarative/qml/qdeclarativexmlhttprequest.cpp | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/src/declarative/qml/qdeclarativexmlhttprequest.cpp b/src/declarative/qml/qdeclarativexmlhttprequest.cpp index b7e1832..94205fe 100644 --- a/src/declarative/qml/qdeclarativexmlhttprequest.cpp +++ b/src/declarative/qml/qdeclarativexmlhttprequest.cpp @@ -46,6 +46,7 @@ #include "private/qdeclarativerefcount_p.h" #include "private/qdeclarativeengine_p.h" #include "private/qdeclarativeexpression_p.h" +#include "qdeclarativeglobal_p.h" #include #include @@ -94,6 +95,8 @@ QT_BEGIN_NAMESPACE +DEFINE_BOOL_CONFIG_OPTION(xhrDump, QML_XHR_DUMP); + class DocumentImpl; class NodeImpl { @@ -1131,6 +1134,14 @@ void QDeclarativeXMLHttpRequest::requestFromUrl(const QUrl &url) } } + if (xhrDump()) { + qWarning().nospace() << "XMLHttpRequest: " << qPrintable(m_method) << " " << qPrintable(url.toString()); + if (!m_data.isEmpty()) { + qWarning().nospace() << " " + << qPrintable(QString::fromUtf8(m_data)); + } + } + if (m_method == QLatin1String("GET")) m_network = networkAccessManager()->get(request); else if (m_method == QLatin1String("HEAD")) @@ -1264,6 +1275,16 @@ void QDeclarativeXMLHttpRequest::finished() if (cbv.isError()) printError(cbv); } m_responseEntityBody.append(m_network->readAll()); + + if (xhrDump()) { + qWarning().nospace() << "XMLHttpRequest: RESPONSE " << qPrintable(m_url.toString()); + if (!m_responseEntityBody.isEmpty()) { + qWarning().nospace() << " " + << qPrintable(QString::fromUtf8(m_responseEntityBody)); + } + } + + m_data.clear(); destroyNetwork(); if (m_state < Loading) { -- cgit v0.12 From 1eb430a1f1ddb3d88ec44294606b365e119b2e01 Mon Sep 17 00:00:00 2001 From: Aaron Kennedy Date: Thu, 6 May 2010 10:55:13 +1000 Subject: Fix autotest --- tests/auto/declarative/examples/tst_examples.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/auto/declarative/examples/tst_examples.cpp b/tests/auto/declarative/examples/tst_examples.cpp index 058fda1..4f10a98 100644 --- a/tests/auto/declarative/examples/tst_examples.cpp +++ b/tests/auto/declarative/examples/tst_examples.cpp @@ -87,6 +87,7 @@ tst_examples::tst_examples() excludedDirs << "examples/declarative/gestures"; excludedDirs << "examples/declarative/imageprovider"; + excludedDirs << "examples/declarative/layouts/graphicsLayouts"; excludedDirs << "demos/declarative/minehunt"; excludedDirs << "doc/src/snippets/declarative/graphicswidgets"; -- cgit v0.12 From 4b0c60c6246fb7aacea3d74787a9e5a0cc507edd Mon Sep 17 00:00:00 2001 From: Martin Jones Date: Thu, 6 May 2010 11:00:51 +1000 Subject: Add missing test file. --- .../qdeclarativevisualdatamodel/data/objectlist.qml | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 tests/auto/declarative/qdeclarativevisualdatamodel/data/objectlist.qml diff --git a/tests/auto/declarative/qdeclarativevisualdatamodel/data/objectlist.qml b/tests/auto/declarative/qdeclarativevisualdatamodel/data/objectlist.qml new file mode 100644 index 0000000..f5198c9 --- /dev/null +++ b/tests/auto/declarative/qdeclarativevisualdatamodel/data/objectlist.qml @@ -0,0 +1,16 @@ +import Qt 4.7 + +ListView { + width: 100 + height: 100 + anchors.fill: parent + model: myModel + delegate: Component { + Rectangle { + height: 25 + width: 100 + color: model.modelData.color + Text { objectName: "name"; text: name } + } + } +} -- cgit v0.12 From c16cc8c4d03cb062c5164295cad75509ec31feaf Mon Sep 17 00:00:00 2001 From: Yann Bodson Date: Thu, 6 May 2010 11:16:45 +1000 Subject: Use enum for drag.axis in doc and examples. --- demos/declarative/flickr/common/Slider.qml | 2 +- doc/src/snippets/declarative/drag.qml | 2 +- examples/declarative/dial/dial-example.qml | 2 +- examples/declarative/mousearea/mouse.qml | 2 +- examples/declarative/slideswitch/content/Switch.qml | 2 +- examples/declarative/velocity/Day.qml | 2 +- src/declarative/graphicsitems/qdeclarativemousearea.cpp | 4 ++-- 7 files changed, 8 insertions(+), 8 deletions(-) diff --git a/demos/declarative/flickr/common/Slider.qml b/demos/declarative/flickr/common/Slider.qml index 4da370e..76f6303 100644 --- a/demos/declarative/flickr/common/Slider.qml +++ b/demos/declarative/flickr/common/Slider.qml @@ -29,7 +29,7 @@ Item { MouseArea { anchors.fill: parent; drag.target: parent - drag.axis: "XAxis"; drag.minimumX: 2; drag.maximumX: slider.xMax+2 + drag.axis: Drag.XAxis; drag.minimumX: 2; drag.maximumX: slider.xMax+2 onPositionChanged: { value = (maximum - minimum) * (handle.x-2) / slider.xMax + minimum; } } } diff --git a/doc/src/snippets/declarative/drag.qml b/doc/src/snippets/declarative/drag.qml index 9465efb..79469e3 100644 --- a/doc/src/snippets/declarative/drag.qml +++ b/doc/src/snippets/declarative/drag.qml @@ -9,7 +9,7 @@ Rectangle { MouseArea { anchors.fill: parent drag.target: pic - drag.axis: "XAxis" + drag.axis: Drag.XAxis drag.minimumX: 0 drag.maximumX: blurtest.width-pic.width } diff --git a/examples/declarative/dial/dial-example.qml b/examples/declarative/dial/dial-example.qml index fd899a5..2e102b0 100644 --- a/examples/declarative/dial/dial-example.qml +++ b/examples/declarative/dial/dial-example.qml @@ -37,7 +37,7 @@ Rectangle { MouseArea { anchors.fill: parent - drag.target: parent; drag.axis: "XAxis"; drag.minimumX: 2; drag.maximumX: container.width - 32 + drag.target: parent; drag.axis: Drag.XAxis; drag.minimumX: 2; drag.maximumX: container.width - 32 } } } diff --git a/examples/declarative/mousearea/mouse.qml b/examples/declarative/mousearea/mouse.qml index 67302a8..06134b7 100644 --- a/examples/declarative/mousearea/mouse.qml +++ b/examples/declarative/mousearea/mouse.qml @@ -33,7 +33,7 @@ Rectangle { MouseArea { anchors.fill: parent drag.target: parent - drag.axis: "XAxis" + drag.axis: Drag.XAxis drag.minimumX: 0 drag.maximumX: 150 diff --git a/examples/declarative/slideswitch/content/Switch.qml b/examples/declarative/slideswitch/content/Switch.qml index 1aa7696..526a171 100644 --- a/examples/declarative/slideswitch/content/Switch.qml +++ b/examples/declarative/slideswitch/content/Switch.qml @@ -45,7 +45,7 @@ Item { MouseArea { anchors.fill: parent - drag.target: knob; drag.axis: "XAxis"; drag.minimumX: 1; drag.maximumX: 78 + drag.target: knob; drag.axis: Drag.XAxis; drag.minimumX: 1; drag.maximumX: 78 onClicked: toggle() onReleased: dorelease() } diff --git a/examples/declarative/velocity/Day.qml b/examples/declarative/velocity/Day.qml index 433295b..350c1c4 100644 --- a/examples/declarative/velocity/Day.qml +++ b/examples/declarative/velocity/Day.qml @@ -61,7 +61,7 @@ Component { id: mouse anchors.fill: parent drag.target: stickyPage - drag.axis: "XandYAxis" + drag.axis: Drag.XandYAxis drag.minimumY: 0 drag.maximumY: page.height - 80 drag.minimumX: 100 diff --git a/src/declarative/graphicsitems/qdeclarativemousearea.cpp b/src/declarative/graphicsitems/qdeclarativemousearea.cpp index d178107..c5a995e 100644 --- a/src/declarative/graphicsitems/qdeclarativemousearea.cpp +++ b/src/declarative/graphicsitems/qdeclarativemousearea.cpp @@ -746,7 +746,7 @@ QDeclarativeDrag *QDeclarativeMouseArea::drag() /*! \qmlproperty Item MouseArea::drag.target \qmlproperty bool MouseArea::drag.active - \qmlproperty Axis MouseArea::drag.axis + \qmlproperty enumeration MouseArea::drag.axis \qmlproperty real MouseArea::drag.minimumX \qmlproperty real MouseArea::drag.maximumX \qmlproperty real MouseArea::drag.minimumY @@ -757,7 +757,7 @@ QDeclarativeDrag *QDeclarativeMouseArea::drag() \list \i \c target specifies the item to drag. \i \c active specifies if the target item is being currently dragged. - \i \c axis specifies whether dragging can be done horizontally (XAxis), vertically (YAxis), or both (XandYAxis) + \i \c axis specifies whether dragging can be done horizontally (Drag.XAxis), vertically (Drag.YAxis), or both (Drag.XandYAxis) \i the minimum and maximum properties limit how far the target can be dragged along the corresponding axes. \endlist -- cgit v0.12 From 3e4116ff5337d41466904b2e381dfa74267264a8 Mon Sep 17 00:00:00 2001 From: Yann Bodson Date: Thu, 6 May 2010 12:42:36 +1000 Subject: Cleanup --- examples/declarative/animations/color-animation.qml | 5 ++--- examples/declarative/animations/property-animation.qml | 1 - examples/declarative/connections/connections-example.qml | 1 - examples/declarative/dynamic/qml/PerspectiveItem.qml | 3 +-- examples/declarative/listview/dynamic.qml | 16 +++++++--------- examples/declarative/parallax/qml/ParallaxView.qml | 15 +++++++-------- examples/declarative/parallax/qml/Smiley.qml | 3 +-- 7 files changed, 18 insertions(+), 26 deletions(-) diff --git a/examples/declarative/animations/color-animation.qml b/examples/declarative/animations/color-animation.qml index 3616a31..61737e9 100644 --- a/examples/declarative/animations/color-animation.qml +++ b/examples/declarative/animations/color-animation.qml @@ -31,15 +31,14 @@ Item { // the sun, moon, and stars Item { width: parent.width; height: 2 * parent.height - transformOrigin: Item.Center NumberAnimation on rotation { from: 0; to: 360; duration: 10000; loops: Animation.Infinite } Image { source: "images/sun.png"; y: 10; anchors.horizontalCenter: parent.horizontalCenter - transformOrigin: Item.Center; rotation: -3 * parent.rotation + rotation: -3 * parent.rotation } Image { source: "images/moon.png"; y: parent.height - 74; anchors.horizontalCenter: parent.horizontalCenter - transformOrigin: Item.Center; rotation: -parent.rotation + rotation: -parent.rotation } Particles { x: 0; y: parent.height/2; width: parent.width; height: parent.height/2 diff --git a/examples/declarative/animations/property-animation.qml b/examples/declarative/animations/property-animation.qml index 6360511..87ac8ec 100644 --- a/examples/declarative/animations/property-animation.qml +++ b/examples/declarative/animations/property-animation.qml @@ -26,7 +26,6 @@ Item { Image { anchors.horizontalCenter: parent.horizontalCenter source: "images/shadow.png"; y: smiley.minHeight + 58 - transformOrigin: Item.Center // The scale property depends on the y position of the smiley face. scale: smiley.y * 0.5 / (smiley.minHeight - smiley.maxHeight) diff --git a/examples/declarative/connections/connections-example.qml b/examples/declarative/connections/connections-example.qml index 1dd10ab..e65a280 100644 --- a/examples/declarative/connections/connections-example.qml +++ b/examples/declarative/connections/connections-example.qml @@ -13,7 +13,6 @@ Rectangle { id: image source: "content/bg1.jpg" anchors.centerIn: parent - transformOrigin: Item.Center rotation: window.angle Behavior on rotation { diff --git a/examples/declarative/dynamic/qml/PerspectiveItem.qml b/examples/declarative/dynamic/qml/PerspectiveItem.qml index 3cbe64a..6d763c3 100644 --- a/examples/declarative/dynamic/qml/PerspectiveItem.qml +++ b/examples/declarative/dynamic/qml/PerspectiveItem.qml @@ -4,13 +4,12 @@ Image { id: tree 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 double scaledBottom: y + (height+height*scaleFactor)/2 property bool onLand: scaledBottom > window.height/2 property string image //Needed for compatibility with GenericItem 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 } diff --git a/examples/declarative/listview/dynamic.qml b/examples/declarative/listview/dynamic.qml index 236a9c5..952f6a7 100644 --- a/examples/declarative/listview/dynamic.qml +++ b/examples/declarative/listview/dynamic.qml @@ -56,7 +56,7 @@ Rectangle { Item { width: container.width; height: 55 - + Column { id: moveButtons x: 5; width: childrenRect.width; anchors.verticalCenter: parent.verticalCenter @@ -84,7 +84,7 @@ Rectangle { spacing: 5 Repeater { model: attributes - Component { + Component { Text { text: description; color: "White" } } } @@ -95,13 +95,12 @@ Rectangle { id: itemButtons anchors { right: removeButton.left; rightMargin: 35; verticalCenter: parent.verticalCenter } - width: childrenRect.width + width: childrenRect.width spacing: 10 Image { source: "content/pics/list-add.png" scale: clickUp.isPressed ? 0.9 : 1 - transformOrigin: Item.Center ClickAutoRepeating { id: clickUp @@ -115,9 +114,8 @@ Rectangle { Image { source: "content/pics/list-remove.png" scale: clickDown.isPressed ? 0.9 : 1 - transformOrigin: Item.Center - ClickAutoRepeating { + ClickAutoRepeating { id: clickDown anchors.fill: parent onClicked: fruitModel.setProperty(index, "cost", Math.max(0,cost-0.25)) @@ -158,7 +156,7 @@ Rectangle { } transitions: Transition { NumberAnimation { properties: "opacity"; duration: 400 } - } + } } Row { @@ -198,10 +196,10 @@ Rectangle { } } - Image { + Image { source: "content/pics/archive-remove.png" - MouseArea { + MouseArea { anchors.fill: parent onClicked: fruitModel.clear() } diff --git a/examples/declarative/parallax/qml/ParallaxView.qml b/examples/declarative/parallax/qml/ParallaxView.qml index 4b38d45..e869a21 100644 --- a/examples/declarative/parallax/qml/ParallaxView.qml +++ b/examples/declarative/parallax/qml/ParallaxView.qml @@ -18,9 +18,9 @@ Item { id: list currentIndex: root.currentIndex - onCurrentIndexChanged: root.currentIndex = currentIndex + onCurrentIndexChanged: root.currentIndex = currentIndex - orientation: "Horizontal" + orientation: Qt.Horizontal boundsBehavior: Flickable.DragOverBounds anchors.fill: parent model: VisualItemModel { id: visualModel } @@ -45,10 +45,10 @@ Item { anchors.horizontalCenter: parent.horizontalCenter width: Math.min(count * 50, parent.width - 20) interactive: width == parent.width - 20 - orientation: "Horizontal" + orientation: Qt.Horizontal - delegate: Item { - width: 50; height: 50 + delegate: Item { + width: 50; height: 50 id: delegateRoot Image { @@ -56,7 +56,6 @@ Item { source: modelData.icon smooth: true scale: 0.8 - transformOrigin: "Center" } MouseArea { @@ -64,10 +63,10 @@ Item { onClicked: { root.currentIndex = index } } - states: State { + states: State { name: "Selected" when: delegateRoot.ListView.isCurrentItem == true - PropertyChanges { + PropertyChanges { target: image scale: 1 y: -5 diff --git a/examples/declarative/parallax/qml/Smiley.qml b/examples/declarative/parallax/qml/Smiley.qml index cfa4fed..662addc 100644 --- a/examples/declarative/parallax/qml/Smiley.qml +++ b/examples/declarative/parallax/qml/Smiley.qml @@ -8,7 +8,6 @@ Item { Image { anchors.horizontalCenter: parent.horizontalCenter source: "../pics/shadow.png"; y: smiley.minHeight + 58 - transformOrigin: Item.Center // The scale property depends on the y position of the smiley face. scale: smiley.y * 0.5 / (smiley.minHeight - smiley.maxHeight) @@ -32,7 +31,7 @@ Item { from: smiley.minHeight; to: smiley.maxHeight easing.type: Easing.OutExpo; duration: 300 } - + // Then move back to minHeight in 1 second, using the OutBounce easing function NumberAnimation { from: smiley.maxHeight; to: smiley.minHeight -- cgit v0.12 From e909d9a200c7a75dc23542f4603ce86fdc135bab Mon Sep 17 00:00:00 2001 From: Yann Bodson Date: Thu, 6 May 2010 13:11:48 +1000 Subject: Cleanup --- demos/declarative/snake/snake.qml | 6 +++--- demos/declarative/webbrowser/content/FlickableWebView.qml | 6 +++--- doc/src/declarative/elements.qdoc | 1 + examples/declarative/fonts/fonts.qml | 6 +++--- examples/declarative/listview/sections.qml | 2 +- examples/declarative/webview/alerts.qml | 2 +- 6 files changed, 12 insertions(+), 11 deletions(-) diff --git a/demos/declarative/snake/snake.qml b/demos/declarative/snake/snake.qml index 47bced4..bc4a974 100644 --- a/demos/declarative/snake/snake.qml +++ b/demos/declarative/snake/snake.qml @@ -60,7 +60,7 @@ Rectangle { Image { id: title source: "content/pics/snake.jpg" - fillMode: "PreserveAspectCrop" + fillMode: Image.PreserveAspectCrop anchors.fill: parent anchors.horizontalCenter: parent.horizontalCenter anchors.verticalCenter: parent.verticalCenter @@ -69,7 +69,7 @@ Rectangle { Text { color: "white" font.pointSize: 24 - horizontalAlignment: "AlignHCenter" + horizontalAlignment: Text.AlignHCenter text: "Last Score:\t" + lastScore + "\nHighscore:\t" + highScores.topScore; anchors.horizontalCenter: parent.horizontalCenter anchors.bottom: parent.bottom @@ -78,7 +78,7 @@ Rectangle { } source: "content/pics/background.png" - fillMode: "PreserveAspectCrop" + fillMode: Image.PreserveAspectCrop anchors.left: parent.left anchors.right: parent.right diff --git a/demos/declarative/webbrowser/content/FlickableWebView.qml b/demos/declarative/webbrowser/content/FlickableWebView.qml index 46f45e0..50ea97d 100644 --- a/demos/declarative/webbrowser/content/FlickableWebView.qml +++ b/demos/declarative/webbrowser/content/FlickableWebView.qml @@ -105,14 +105,14 @@ Flickable { property: "scale" from: 1 to: 0 // set before calling - easing.type: "Linear" + easing.type: Easing.Linear duration: 200 } NumberAnimation { id: flickVX target: flickable property: "contentX" - easing.type: "Linear" + easing.type: Easing.Linear duration: 200 from: 0 // set before calling to: 0 // set before calling @@ -121,7 +121,7 @@ Flickable { id: flickVY target: flickable property: "contentY" - easing.type: "Linear" + easing.type: Easing.Linear duration: 200 from: 0 // set before calling to: 0 // set before calling diff --git a/doc/src/declarative/elements.qdoc b/doc/src/declarative/elements.qdoc index 79fe909..1dbc51b 100644 --- a/doc/src/declarative/elements.qdoc +++ b/doc/src/declarative/elements.qdoc @@ -142,6 +142,7 @@ The following table lists the QML elements provided by the \l {QtDeclarative}{Qt \o \l Loader \o \l Repeater \o \l SystemPalette +\o \l FontLoader \o \l LayoutItem \endlist diff --git a/examples/declarative/fonts/fonts.qml b/examples/declarative/fonts/fonts.qml index ae31b03..f3eac48 100644 --- a/examples/declarative/fonts/fonts.qml +++ b/examples/declarative/fonts/fonts.qml @@ -51,9 +51,9 @@ Rectangle { } Text { text: { - if (webFont.status == 1) myText - else if (webFont.status == 2) "Loading..." - else if (webFont.status == 3) "Error loading font" + if (webFont.status == FontLoader.Ready) myText + else if (webFont.status == FontLoader.Loading) "Loading..." + else if (webFont.status == FontLoader.Error) "Error loading font" } color: "lightsteelblue" width: parent.width diff --git a/examples/declarative/listview/sections.qml b/examples/declarative/listview/sections.qml index 0a81f63..21f9f03 100644 --- a/examples/declarative/listview/sections.qml +++ b/examples/declarative/listview/sections.qml @@ -61,7 +61,7 @@ Rectangle { height: 20 Text { x: 2; height: parent.height - verticalAlignment: 'AlignVCenter' + verticalAlignment: Text.AlignVCenter text: section font.bold: true } diff --git a/examples/declarative/webview/alerts.qml b/examples/declarative/webview/alerts.qml index 6a5a0d2..7684c3e 100644 --- a/examples/declarative/webview/alerts.qml +++ b/examples/declarative/webview/alerts.qml @@ -52,7 +52,7 @@ WebView { font.pixelSize: 20 width: webView.width*0.75 wrapMode: Text.WordWrap - horizontalAlignment: "AlignHCenter" + horizontalAlignment: Text.AlignHCenter } } } -- cgit v0.12 From 2dfa4fbcdc901b8cdd8df0087ecf5e3fa2523603 Mon Sep 17 00:00:00 2001 From: Yann Bodson Date: Thu, 6 May 2010 14:14:36 +1000 Subject: More cleanup --- demos/declarative/flickr/mobile/GridDelegate.qml | 2 +- demos/declarative/flickr/mobile/ImageDetails.qml | 12 ++++++++---- demos/declarative/twitter/TwitterCore/FatDelegate.qml | 2 +- demos/declarative/twitter/TwitterCore/HomeTitleBar.qml | 2 +- examples/declarative/listview/dynamic.qml | 2 +- examples/declarative/listview/itemlist.qml | 4 ++-- examples/declarative/listview/listview-example.qml | 4 ++-- examples/declarative/scrollbar/ScrollBar.qml | 16 ++++++++-------- examples/declarative/scrollbar/display.qml | 4 ++-- 9 files changed, 26 insertions(+), 22 deletions(-) diff --git a/demos/declarative/flickr/mobile/GridDelegate.qml b/demos/declarative/flickr/mobile/GridDelegate.qml index eccdc34..df608bc 100644 --- a/demos/declarative/flickr/mobile/GridDelegate.qml +++ b/demos/declarative/flickr/mobile/GridDelegate.qml @@ -38,7 +38,7 @@ states: [ State { - name: "Show"; when: thumb.status == 1 + name: "Show"; when: thumb.status == Image.Ready PropertyChanges { target: scaleMe; scale: 1 } }, State { diff --git a/demos/declarative/flickr/mobile/ImageDetails.qml b/demos/declarative/flickr/mobile/ImageDetails.qml index 310c9df..caf1571 100644 --- a/demos/declarative/flickr/mobile/ImageDetails.qml +++ b/demos/declarative/flickr/mobile/ImageDetails.qml @@ -54,7 +54,11 @@ Flipable { Rectangle { anchors.fill: parent; color: "black"; opacity: 0.4 } - Common.Progress { anchors.centerIn: parent; width: 200; height: 18; progress: bigImage.progress; visible: bigImage.status!=1 } + Common.Progress { + anchors.centerIn: parent; width: 200; height: 18 + progress: bigImage.progress; visible: bigImage.status != Image.Ready + } + Flickable { id: flickable; anchors.fill: parent; clip: true contentWidth: imageContainer.width; contentHeight: imageContainer.height @@ -69,7 +73,7 @@ Flipable { anchors.centerIn: parent; smooth: !flickable.moving onStatusChanged : { // Default scale shows the entire image. - if (status == 1 && width != 0) { + if (status == Image.Ready && width != 0) { slider.minimum = Math.min(flickable.width / width, flickable.height / height); prevScale = Math.min(slider.minimum, 1); slider.value = prevScale; @@ -81,12 +85,12 @@ Flipable { Text { text: "Image Unavailable" - visible: bigImage.status == 'Error' + visible: bigImage.status == Image.Error anchors.centerIn: parent; color: "white"; font.bold: true } Common.Slider { - id: slider; visible: { bigImage.status == 1 && maximum > minimum } + id: slider; visible: { bigImage.status == Image.Ready && maximum > minimum } anchors { bottom: parent.bottom; bottomMargin: 65 left: parent.left; leftMargin: 25 diff --git a/demos/declarative/twitter/TwitterCore/FatDelegate.qml b/demos/declarative/twitter/TwitterCore/FatDelegate.qml index 62ee11a..72e5ecc 100644 --- a/demos/declarative/twitter/TwitterCore/FatDelegate.qml +++ b/demos/declarative/twitter/TwitterCore/FatDelegate.qml @@ -27,7 +27,7 @@ Component { id: whiteRect; x: 6; width: 50; height: 50; color: "white"; smooth: true anchors.verticalCenter: parent.verticalCenter - Loading { x: 1; y: 1; width: 48; height: 48; visible: realImage.status != 1 } + Loading { x: 1; y: 1; width: 48; height: 48; visible: realImage.status != Image.Ready } Image { id: realImage; source: userImage; x: 1; y: 1; width:48; height:48 } } Text { id:txt; y:4; x: 56 diff --git a/demos/declarative/twitter/TwitterCore/HomeTitleBar.qml b/demos/declarative/twitter/TwitterCore/HomeTitleBar.qml index 11aa74f..26ad1a9 100644 --- a/demos/declarative/twitter/TwitterCore/HomeTitleBar.qml +++ b/demos/declarative/twitter/TwitterCore/HomeTitleBar.qml @@ -37,7 +37,7 @@ Item { UserModel { user: rssModel.authName; id: userModel } Component { id: imgDelegate; Item { - Loading { width:48; height:48; visible: realImage.status != 1 } + Loading { width:48; height:48; visible: realImage.status != Image.Ready } Image { source: image; width:48; height:48; id: realImage } } } diff --git a/examples/declarative/listview/dynamic.qml b/examples/declarative/listview/dynamic.qml index 952f6a7..9b05ad5 100644 --- a/examples/declarative/listview/dynamic.qml +++ b/examples/declarative/listview/dynamic.qml @@ -145,7 +145,7 @@ Rectangle { width: 8; height: view.height; anchors.right: view.right opacity: 0 - orientation: "Vertical" + orientation: Qt.Vertical position: view.visibleArea.yPosition pageSize: view.visibleArea.heightRatio diff --git a/examples/declarative/listview/itemlist.qml b/examples/declarative/listview/itemlist.qml index e387f28..b73b3a3 100644 --- a/examples/declarative/listview/itemlist.qml +++ b/examples/declarative/listview/itemlist.qml @@ -33,7 +33,7 @@ Rectangle { anchors { fill: parent; bottomMargin: 30 } model: itemModel preferredHighlightBegin: 0; preferredHighlightEnd: 0 - highlightRangeMode: "StrictlyEnforceRange" + highlightRangeMode: ListView.StrictlyEnforceRange orientation: ListView.Horizontal snapMode: ListView.SnapOneItem; flickDeceleration: 2000 } @@ -55,7 +55,7 @@ Rectangle { radius: 3 color: view.currentIndex == index ? "blue" : "white" - MouseArea { + MouseArea { width: 20; height: 20 anchors.centerIn: parent onClicked: view.currentIndex = index diff --git a/examples/declarative/listview/listview-example.qml b/examples/declarative/listview/listview-example.qml index 6feedf6..2e8cdda 100644 --- a/examples/declarative/listview/listview-example.qml +++ b/examples/declarative/listview/listview-example.qml @@ -75,7 +75,7 @@ Rectangle { highlight: petHighlight currentIndex: list1.currentIndex preferredHighlightBegin: 80; preferredHighlightEnd: 220 - highlightRangeMode: "ApplyRange" + highlightRangeMode: ListView.ApplyRange } ListView { @@ -87,7 +87,7 @@ Rectangle { highlight: Rectangle { color: "lightsteelblue" } currentIndex: list1.currentIndex preferredHighlightBegin: 125; preferredHighlightEnd: 125 - highlightRangeMode: "StrictlyEnforceRange" + highlightRangeMode: ListView.StrictlyEnforceRange flickDeceleration: 1000 } } diff --git a/examples/declarative/scrollbar/ScrollBar.qml b/examples/declarative/scrollbar/ScrollBar.qml index 5433156..c628a20 100644 --- a/examples/declarative/scrollbar/ScrollBar.qml +++ b/examples/declarative/scrollbar/ScrollBar.qml @@ -7,26 +7,26 @@ Item { // position and pageSize are in the range 0.0 - 1.0. They are relative to the // height of the page, i.e. a pageSize of 0.5 means that you can see 50% // of the height of the view. - // orientation can be either 'Vertical' or 'Horizontal' + // orientation can be either Qt.Vertical or Qt.Horizontal property real position property real pageSize - property variant orientation : "Vertical" + property variant orientation : Qt.Vertical // A light, semi-transparent background Rectangle { id: background anchors.fill: parent - radius: orientation == 'Vertical' ? (width/2 - 1) : (height/2 - 1) + radius: orientation == Qt.Vertical ? (width/2 - 1) : (height/2 - 1) color: "white" opacity: 0.3 } // Size the bar to the required size, depending upon the orientation. Rectangle { - x: orientation == 'Vertical' ? 1 : (scrollBar.position * (scrollBar.width-2) + 1) - y: orientation == 'Vertical' ? (scrollBar.position * (scrollBar.height-2) + 1) : 1 - width: orientation == 'Vertical' ? (parent.width-2) : (scrollBar.pageSize * (scrollBar.width-2)) - height: orientation == 'Vertical' ? (scrollBar.pageSize * (scrollBar.height-2)) : (parent.height-2) - radius: orientation == 'Vertical' ? (width/2 - 1) : (height/2 - 1) + x: orientation == Qt.Vertical ? 1 : (scrollBar.position * (scrollBar.width-2) + 1) + y: orientation == Qt.Vertical ? (scrollBar.position * (scrollBar.height-2) + 1) : 1 + width: orientation == Qt.Vertical ? (parent.width-2) : (scrollBar.pageSize * (scrollBar.width-2)) + height: orientation == Qt.Vertical ? (scrollBar.pageSize * (scrollBar.height-2)) : (parent.height-2) + radius: orientation == Qt.Vertical ? (width/2 - 1) : (height/2 - 1) color: "black" opacity: 0.7 } diff --git a/examples/declarative/scrollbar/display.qml b/examples/declarative/scrollbar/display.qml index cb1da16..b8a5e36 100644 --- a/examples/declarative/scrollbar/display.qml +++ b/examples/declarative/scrollbar/display.qml @@ -37,7 +37,7 @@ Rectangle { width: 12; height: view.height-12 anchors.right: view.right opacity: 0 - orientation: "Vertical" + orientation: Qt.Vertical position: view.visibleArea.yPosition pageSize: view.visibleArea.heightRatio } @@ -47,7 +47,7 @@ Rectangle { width: view.width-12; height: 12 anchors.bottom: view.bottom opacity: 0 - orientation: "Horizontal" + orientation: Qt.Horizontal position: view.visibleArea.xPosition pageSize: view.visibleArea.widthRatio } -- cgit v0.12 From f95a53ec1f88f819424aa3e894f91c1b875fd749 Mon Sep 17 00:00:00 2001 From: Michael Brasser Date: Thu, 6 May 2010 14:29:27 +1000 Subject: Make sure to call base class implementation. --- src/declarative/graphicsitems/qdeclarativepainteditem.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/declarative/graphicsitems/qdeclarativepainteditem.cpp b/src/declarative/graphicsitems/qdeclarativepainteditem.cpp index 6430fae..ce9b69f 100644 --- a/src/declarative/graphicsitems/qdeclarativepainteditem.cpp +++ b/src/declarative/graphicsitems/qdeclarativepainteditem.cpp @@ -210,6 +210,7 @@ void QDeclarativePaintedItem::geometryChanged(const QRectF &newGeometry, if (newGeometry.width() != oldGeometry.width() || newGeometry.height() != oldGeometry.height()) clearCache(); + QDeclarativeItem::geometryChanged(newGeometry, oldGeometry); } QVariant QDeclarativePaintedItem::itemChange(GraphicsItemChange change, -- cgit v0.12 From 3323eb86586240d8ddcde985d052478809a6bffb Mon Sep 17 00:00:00 2001 From: Yann Bodson Date: Thu, 6 May 2010 15:01:36 +1000 Subject: TextInput echoMode doc. --- src/declarative/graphicsitems/qdeclarativetextinput.cpp | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/src/declarative/graphicsitems/qdeclarativetextinput.cpp b/src/declarative/graphicsitems/qdeclarativetextinput.cpp index a1fa8c6..9ae4e1a 100644 --- a/src/declarative/graphicsitems/qdeclarativetextinput.cpp +++ b/src/declarative/graphicsitems/qdeclarativetextinput.cpp @@ -706,14 +706,15 @@ bool QDeclarativeTextInput::hasAcceptableInput() const } /*! - \qmlproperty TextInput.EchoMode TextInput::echoMode + \qmlproperty enumeration TextInput::echoMode Specifies how the text should be displayed in the TextInput. - The default is Normal, which displays the text as it is. Other values - are Password, which displays asterixes instead of characters, NoEcho, - which displays nothing, and PasswordEchoOnEdit, which displays all but the - current character as asterixes. - + \list + \o TextInput.Normal - Displays the text as it is. (Default) + \o TextInput.Password - Displays asterixes instead of characters. + \o TextInput.NoEcho - Displays nothing. + \o TextInput.PasswordEchoOnEdit - Displays all but the current character as asterixes. + \endlist */ QDeclarativeTextInput::EchoMode QDeclarativeTextInput::echoMode() const { @@ -1084,7 +1085,7 @@ void QDeclarativeTextInput::setPasswordCharacter(const QString &str) \qmlproperty string TextInput::displayText This is the text displayed in the TextInput. - + If \l echoMode is set to TextInput::Normal, this holds the same value as the TextInput::text property. Otherwise, this property holds the text visible to the user, while -- cgit v0.12 From d0a56df355cebc60176c3f449c1aee7bafd5562b Mon Sep 17 00:00:00 2001 From: Yann Bodson Date: Thu, 6 May 2010 15:52:38 +1000 Subject: qdoc fixes --- src/declarative/graphicsitems/qdeclarativegridview.cpp | 4 ++-- src/declarative/graphicsitems/qdeclarativeitem.cpp | 2 +- src/declarative/graphicsitems/qdeclarativelistview.cpp | 4 ++-- src/declarative/graphicsitems/qdeclarativepathview.cpp | 4 ++-- src/declarative/graphicsitems/qdeclarativetextedit.cpp | 2 +- .../graphicsitems/qdeclarativevisualitemmodel.cpp | 2 +- src/declarative/util/qdeclarativeanimation.cpp | 12 ++++++------ 7 files changed, 15 insertions(+), 15 deletions(-) diff --git a/src/declarative/graphicsitems/qdeclarativegridview.cpp b/src/declarative/graphicsitems/qdeclarativegridview.cpp index 869826c..0094213 100644 --- a/src/declarative/graphicsitems/qdeclarativegridview.cpp +++ b/src/declarative/graphicsitems/qdeclarativegridview.cpp @@ -1054,7 +1054,7 @@ void QDeclarativeGridView::setModel(const QVariant &model) } /*! - \qmlproperty component GridView::delegate + \qmlproperty Component GridView::delegate The delegate provides a template defining each item instantiated by the view. The index is exposed as an accessible \c index property. Properties of the @@ -1172,7 +1172,7 @@ int QDeclarativeGridView::count() const } /*! - \qmlproperty component GridView::highlight + \qmlproperty Component GridView::highlight This property holds the component to use as the highlight. An instance of the highlight component will be created for each view. diff --git a/src/declarative/graphicsitems/qdeclarativeitem.cpp b/src/declarative/graphicsitems/qdeclarativeitem.cpp index 0395766..9433ba0 100644 --- a/src/declarative/graphicsitems/qdeclarativeitem.cpp +++ b/src/declarative/graphicsitems/qdeclarativeitem.cpp @@ -720,7 +720,7 @@ void QDeclarativeKeyNavigationAttached::keyReleased(QKeyEvent *event) */ /*! - \qmlproperty List Keys::forwardTo + \qmlproperty list Keys::forwardTo This property provides a way to forward key presses, key releases, and keyboard input coming from input methods to other items. This can be useful when you want diff --git a/src/declarative/graphicsitems/qdeclarativelistview.cpp b/src/declarative/graphicsitems/qdeclarativelistview.cpp index 0811278..cff345e 100644 --- a/src/declarative/graphicsitems/qdeclarativelistview.cpp +++ b/src/declarative/graphicsitems/qdeclarativelistview.cpp @@ -1488,7 +1488,7 @@ void QDeclarativeListView::setModel(const QVariant &model) } /*! - \qmlproperty component ListView::delegate + \qmlproperty Component ListView::delegate The delegate provides a template defining each item instantiated by the view. The index is exposed as an accessible \c index property. Properties of the @@ -1608,7 +1608,7 @@ int QDeclarativeListView::count() const } /*! - \qmlproperty component ListView::highlight + \qmlproperty Component ListView::highlight This property holds the component to use as the highlight. An instance of the highlight component will be created for each list. diff --git a/src/declarative/graphicsitems/qdeclarativepathview.cpp b/src/declarative/graphicsitems/qdeclarativepathview.cpp index 5c3a3c0..040fc98 100644 --- a/src/declarative/graphicsitems/qdeclarativepathview.cpp +++ b/src/declarative/graphicsitems/qdeclarativepathview.cpp @@ -561,7 +561,7 @@ void QDeclarativePathViewPrivate::setOffset(qreal o) } /*! - \qmlproperty component PathView::highlight + \qmlproperty Component PathView::highlight This property holds the component to use as the highlight. An instance of the highlight component will be created for each view. @@ -790,7 +790,7 @@ void QDeclarativePathView::setInteractive(bool interactive) } /*! - \qmlproperty component PathView::delegate + \qmlproperty Component PathView::delegate The delegate provides a template defining each item instantiated by the view. The index is exposed as an accessible \c index property. Properties of the diff --git a/src/declarative/graphicsitems/qdeclarativetextedit.cpp b/src/declarative/graphicsitems/qdeclarativetextedit.cpp index d0ee2ee..d095dbe 100644 --- a/src/declarative/graphicsitems/qdeclarativetextedit.cpp +++ b/src/declarative/graphicsitems/qdeclarativetextedit.cpp @@ -728,7 +728,7 @@ void QDeclarativeTextEdit::setPersistentSelection(bool on) } /* - \qmlproperty number TextEdit::textMargin + \qmlproperty real TextEdit::textMargin The margin, in pixels, around the text in the TextEdit. */ diff --git a/src/declarative/graphicsitems/qdeclarativevisualitemmodel.cpp b/src/declarative/graphicsitems/qdeclarativevisualitemmodel.cpp index f01d4c2..306443b 100644 --- a/src/declarative/graphicsitems/qdeclarativevisualitemmodel.cpp +++ b/src/declarative/graphicsitems/qdeclarativevisualitemmodel.cpp @@ -759,7 +759,7 @@ void QDeclarativeVisualDataModel::setModel(const QVariant &model) } /*! - \qmlproperty component VisualDataModel::delegate + \qmlproperty Component VisualDataModel::delegate The delegate provides a template defining each item instantiated by a view. The index is exposed as an accessible \c index property. Properties of the diff --git a/src/declarative/util/qdeclarativeanimation.cpp b/src/declarative/util/qdeclarativeanimation.cpp index 206621b..0f7c946 100644 --- a/src/declarative/util/qdeclarativeanimation.cpp +++ b/src/declarative/util/qdeclarativeanimation.cpp @@ -755,7 +755,7 @@ void QDeclarativeScriptAction::setScript(const QDeclarativeScriptString &script) } /*! - \qmlproperty QString ScriptAction::scriptName + \qmlproperty string ScriptAction::scriptName This property holds the the name of the StateChangeScript to run. This property is only valid when ScriptAction is used as part of a transition. @@ -791,7 +791,7 @@ void QDeclarativeScriptActionPrivate::execute() if (ddata && ddata->outerContext && !ddata->outerContext->url.isEmpty()) expr.setSourceLocation(ddata->outerContext->url.toString(), ddata->lineNumber); expr.evaluate(); - if (expr.hasError()) + if (expr.hasError()) qmlInfo(q) << expr.error(); } } @@ -844,7 +844,7 @@ QAbstractAnimation *QDeclarativeScriptAction::qtAnimation() The PropertyAction is immediate - the target property is not animated to the selected value in any way. - + \sa QtDeclarative */ /*! @@ -2347,7 +2347,7 @@ QDeclarativeParentAnimation::~QDeclarativeParentAnimation() } /*! - \qmlproperty item ParentAnimation::target + \qmlproperty Item ParentAnimation::target The item to reparent. When used in a transition, if no target is specified all @@ -2370,7 +2370,7 @@ void QDeclarativeParentAnimation::setTarget(QDeclarativeItem *target) } /*! - \qmlproperty item ParentAnimation::newParent + \qmlproperty Item ParentAnimation::newParent The new parent to animate to. If not set, then the parent defined in the end state of the transition. @@ -2392,7 +2392,7 @@ void QDeclarativeParentAnimation::setNewParent(QDeclarativeItem *newParent) } /*! - \qmlproperty item ParentAnimation::via + \qmlproperty Item ParentAnimation::via The item to reparent via. This provides a way to do an unclipped animation when both the old parent and new parent are clipped -- cgit v0.12 From bf965a3b74a10636a63f72d72ad41e169a9851e3 Mon Sep 17 00:00:00 2001 From: Martin Jones Date: Thu, 6 May 2010 16:16:08 +1000 Subject: Avoid warnings as delegates with bindings to parent are created and destroyed. Task-number: QTBUG-10359 --- src/declarative/graphicsitems/qdeclarativegridview.cpp | 4 +++- src/declarative/graphicsitems/qdeclarativelistview.cpp | 4 +++- .../graphicsitems/qdeclarativevisualitemmodel.cpp | 8 ++++++++ src/declarative/qml/qdeclarativecontext.cpp | 17 +++++++++++------ src/declarative/qml/qdeclarativecontext_p.h | 1 + src/declarative/qml/qdeclarativeengine.cpp | 4 +++- 6 files changed, 29 insertions(+), 9 deletions(-) diff --git a/src/declarative/graphicsitems/qdeclarativegridview.cpp b/src/declarative/graphicsitems/qdeclarativegridview.cpp index 869826c..75b9d3c 100644 --- a/src/declarative/graphicsitems/qdeclarativegridview.cpp +++ b/src/declarative/graphicsitems/qdeclarativegridview.cpp @@ -378,9 +378,11 @@ FxGridItem *QDeclarativeGridViewPrivate::createItem(int modelIndex) if (model->completePending()) { // complete listItem->item->setZValue(1); + listItem->item->setParentItem(q->viewport()); model->completeItem(); + } else { + listItem->item->setParentItem(q->viewport()); } - listItem->item->setParentItem(q->viewport()); unrequestedItems.remove(listItem->item); } requestedIndex = -1; diff --git a/src/declarative/graphicsitems/qdeclarativelistview.cpp b/src/declarative/graphicsitems/qdeclarativelistview.cpp index 0811278..064a33f 100644 --- a/src/declarative/graphicsitems/qdeclarativelistview.cpp +++ b/src/declarative/graphicsitems/qdeclarativelistview.cpp @@ -573,9 +573,11 @@ FxListItem *QDeclarativeListViewPrivate::createItem(int modelIndex) if (model->completePending()) { // complete listItem->item->setZValue(1); + listItem->item->setParentItem(q->viewport()); model->completeItem(); + } else { + listItem->item->setParentItem(q->viewport()); } - listItem->item->setParentItem(q->viewport()); QDeclarativeItemPrivate *itemPrivate = static_cast(QGraphicsItemPrivate::get(item)); itemPrivate->addItemChangeListener(this, QDeclarativeItemPrivate::Geometry); if (sectionCriteria && sectionCriteria->delegate()) { diff --git a/src/declarative/graphicsitems/qdeclarativevisualitemmodel.cpp b/src/declarative/graphicsitems/qdeclarativevisualitemmodel.cpp index f01d4c2..c6a6b81 100644 --- a/src/declarative/graphicsitems/qdeclarativevisualitemmodel.cpp +++ b/src/declarative/graphicsitems/qdeclarativevisualitemmodel.cpp @@ -44,6 +44,7 @@ #include "qdeclarativeitem.h" #include +#include #include #include #include @@ -963,6 +964,13 @@ QDeclarativeVisualDataModel::ReleaseFlags QDeclarativeVisualDataModel::release(Q } if (d->m_cache.releaseItem(obj)) { + // Remove any bindings to avoid warnings due to parent change. + QObjectPrivate *p = QObjectPrivate::get(obj); + Q_ASSERT(p->declarativeData); + QDeclarativeData *d = static_cast(p->declarativeData); + if (d->ownContext && d->context) + d->context->clearExpressions(); + if (inPackage) { emit destroyingPackage(qobject_cast(obj)); } else { diff --git a/src/declarative/qml/qdeclarativecontext.cpp b/src/declarative/qml/qdeclarativecontext.cpp index ae4223e..b61b8cb 100644 --- a/src/declarative/qml/qdeclarativecontext.cpp +++ b/src/declarative/qml/qdeclarativecontext.cpp @@ -528,13 +528,8 @@ void QDeclarativeContextData::invalidate() parent = 0; } -void QDeclarativeContextData::destroy() +void QDeclarativeContextData::clearExpressions() { - if (linkedContext) - linkedContext->destroy(); - - if (engine) invalidate(); - QDeclarativeAbstractExpression *expression = expressions; while (expression) { QDeclarativeAbstractExpression *nextExpression = expression->m_nextExpression; @@ -546,6 +541,16 @@ void QDeclarativeContextData::destroy() expression = nextExpression; } expressions = 0; +} + +void QDeclarativeContextData::destroy() +{ + if (linkedContext) + linkedContext->destroy(); + + if (engine) invalidate(); + + clearExpressions(); while (contextObjects) { QDeclarativeData *co = contextObjects; diff --git a/src/declarative/qml/qdeclarativecontext_p.h b/src/declarative/qml/qdeclarativecontext_p.h index c7fb099..6b6cd0a 100644 --- a/src/declarative/qml/qdeclarativecontext_p.h +++ b/src/declarative/qml/qdeclarativecontext_p.h @@ -113,6 +113,7 @@ class QDeclarativeContextData public: QDeclarativeContextData(); QDeclarativeContextData(QDeclarativeContext *); + void clearExpressions(); void destroy(); void invalidate(); diff --git a/src/declarative/qml/qdeclarativeengine.cpp b/src/declarative/qml/qdeclarativeengine.cpp index cc6c5fe..9f5cafe 100644 --- a/src/declarative/qml/qdeclarativeengine.cpp +++ b/src/declarative/qml/qdeclarativeengine.cpp @@ -329,8 +329,10 @@ void QDeclarativePrivate::qdeclarativeelement_destructor(QObject *o) QObjectPrivate *p = QObjectPrivate::get(o); Q_ASSERT(p->declarativeData); QDeclarativeData *d = static_cast(p->declarativeData); - if (d->ownContext) + if (d->ownContext && d->context) { d->context->destroy(); + d->context = 0; + } } void QDeclarativeData::destroyed(QAbstractDeclarativeData *d, QObject *o) -- cgit v0.12 From d1ab59da5de38ce0df0e6b9961fc5bf6580e5607 Mon Sep 17 00:00:00 2001 From: Yann Bodson Date: Thu, 6 May 2010 17:04:55 +1000 Subject: qdoc fixes. --- doc/src/declarative/elements.qdoc | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/doc/src/declarative/elements.qdoc b/doc/src/declarative/elements.qdoc index 1dbc51b..574a187 100644 --- a/doc/src/declarative/elements.qdoc +++ b/doc/src/declarative/elements.qdoc @@ -120,11 +120,22 @@ The following table lists the QML elements provided by the \l {QtDeclarative}{Qt \list \o \l Item \o \l Rectangle + \list + \o \l Gradient + \list + \o \l GradientStop + \endlist + \endlist \o \l Image \o \l BorderImage \o \l AnimatedImage \o \l Text \o \l TextInput + \list + \o \l IntValidator + \o \l DoubleValidator + \o \l RegExpValidator + \endlist \o \l TextEdit \endlist -- cgit v0.12 From a0ff96a8fd1cbf1206afd12e0062949fa035f64f Mon Sep 17 00:00:00 2001 From: Aaron Kennedy Date: Thu, 6 May 2010 17:42:53 +1000 Subject: Call QDeclarativeItem::geometryChanged() base implementation --- src/declarative/graphicsitems/qdeclarativepainteditem.cpp | 2 ++ .../qdeclarativetextedit/data/geometrySignals.qml | 12 ++++++++++++ .../qdeclarativetextedit/tst_qdeclarativetextedit.cpp | 13 ++++++++++++- .../qdeclarativetextinput/data/geometrySignals.qml | 12 ++++++++++++ .../qdeclarativetextinput/tst_qdeclarativetextinput.cpp | 11 +++++++++++ 5 files changed, 49 insertions(+), 1 deletion(-) create mode 100644 tests/auto/declarative/qdeclarativetextedit/data/geometrySignals.qml create mode 100644 tests/auto/declarative/qdeclarativetextinput/data/geometrySignals.qml diff --git a/src/declarative/graphicsitems/qdeclarativepainteditem.cpp b/src/declarative/graphicsitems/qdeclarativepainteditem.cpp index 6430fae..c4f0b86 100644 --- a/src/declarative/graphicsitems/qdeclarativepainteditem.cpp +++ b/src/declarative/graphicsitems/qdeclarativepainteditem.cpp @@ -210,6 +210,8 @@ void QDeclarativePaintedItem::geometryChanged(const QRectF &newGeometry, if (newGeometry.width() != oldGeometry.width() || newGeometry.height() != oldGeometry.height()) clearCache(); + + QDeclarativeItem::geometryChanged(newGeometry, oldGeometry); } QVariant QDeclarativePaintedItem::itemChange(GraphicsItemChange change, diff --git a/tests/auto/declarative/qdeclarativetextedit/data/geometrySignals.qml b/tests/auto/declarative/qdeclarativetextedit/data/geometrySignals.qml new file mode 100644 index 0000000..b39ba5b --- /dev/null +++ b/tests/auto/declarative/qdeclarativetextedit/data/geometrySignals.qml @@ -0,0 +1,12 @@ +import Qt 4.7 + +Item { + width: 400; height: 500; + property int bindingWidth: text.width + property int bindingHeight: text.height + + TextInput { + id: text + anchors.fill: parent + } +} diff --git a/tests/auto/declarative/qdeclarativetextedit/tst_qdeclarativetextedit.cpp b/tests/auto/declarative/qdeclarativetextedit/tst_qdeclarativetextedit.cpp index 3307b7c..8cc0e3f 100644 --- a/tests/auto/declarative/qdeclarativetextedit/tst_qdeclarativetextedit.cpp +++ b/tests/auto/declarative/qdeclarativetextedit/tst_qdeclarativetextedit.cpp @@ -84,7 +84,7 @@ private slots: void navigation(); void readOnly(); void sendRequestSoftwareInputPanelEvent(); - + void geometrySignals(); private: void simulateKey(QDeclarativeView *, int key); QDeclarativeView *createView(const QString &filename); @@ -808,6 +808,17 @@ void tst_qdeclarativetextedit::sendRequestSoftwareInputPanelEvent() QApplication::processEvents(); QCOMPARE(ic.softwareInputPanelEventReceived, true); } + +void tst_qdeclarativetextedit::geometrySignals() +{ + QDeclarativeComponent component(&engine, SRCDIR "/data/geometrySignals.qml"); + QObject *o = component.create(); + QVERIFY(o); + QCOMPARE(o->property("bindingWidth").toInt(), 400); + QCOMPARE(o->property("bindingHeight").toInt(), 500); + delete o; +} + QTEST_MAIN(tst_qdeclarativetextedit) #include "tst_qdeclarativetextedit.moc" diff --git a/tests/auto/declarative/qdeclarativetextinput/data/geometrySignals.qml b/tests/auto/declarative/qdeclarativetextinput/data/geometrySignals.qml new file mode 100644 index 0000000..a9b50fe --- /dev/null +++ b/tests/auto/declarative/qdeclarativetextinput/data/geometrySignals.qml @@ -0,0 +1,12 @@ +import Qt 4.7 + +Item { + width: 400; height: 500; + property int bindingWidth: text.width + property int bindingHeight: text.height + + TextEdit { + id: text + anchors.fill: parent + } +} diff --git a/tests/auto/declarative/qdeclarativetextinput/tst_qdeclarativetextinput.cpp b/tests/auto/declarative/qdeclarativetextinput/tst_qdeclarativetextinput.cpp index 83ebe6c..0065ccf 100644 --- a/tests/auto/declarative/qdeclarativetextinput/tst_qdeclarativetextinput.cpp +++ b/tests/auto/declarative/qdeclarativetextinput/tst_qdeclarativetextinput.cpp @@ -76,6 +76,7 @@ private slots: void focusOutClearSelection(); void echoMode(); + void geometrySignals(); private: void simulateKey(QDeclarativeView *, int key); QDeclarativeView *createView(const QString &filename); @@ -805,6 +806,16 @@ void tst_qdeclarativetextinput::focusOutClearSelection() QTRY_COMPARE(input.selectedText(), QLatin1String("")); } +void tst_qdeclarativetextinput::geometrySignals() +{ + QDeclarativeComponent component(&engine, SRCDIR "/data/geometrySignals.qml"); + QObject *o = component.create(); + QVERIFY(o); + QCOMPARE(o->property("bindingWidth").toInt(), 400); + QCOMPARE(o->property("bindingHeight").toInt(), 500); + delete o; +} + QTEST_MAIN(tst_qdeclarativetextinput) #include "tst_qdeclarativetextinput.moc" -- 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