Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум на CrossPlatform.RU _ Переводы _ Ошибки в исходной документации

Автор: Litkevich Yuriy 11.8.2008, 22:02

Надо собирать ошибки обнаруженные в исходной документации
----

  1. qtxml.html
    • Описание:
      в файле qtscript.html навигация выглядит так:
      [Previous: QtSvg Module] [Qt's Modules] [Next: QtXml Module]
      а в qtxml.html так:
      [Previous: QtSvg Module] [Qt's Modules] [Next: QtDesigner Module]
      хотя в место [Previous: QtSvg Module]
      должно быть [Previous: QtScript Module]

    • Резюме:
      Исправленно в хранилище, но надо проверять в следующих версиях


  2. qmainwindow.html - обнаружила Анна
    • Описание:
      Есть упоминание несуществующей функции setDockWidgetCorner()

    • Резюме:
      Оставлено как есть (надо бы у тролей поинтерисоваться).


  3. annotated.html
    • Описание:
      Незавершенное предложение: QDBusObjectPath - Enables the programmer to identify the
      Должно быть: QDBusObjectPath - Enables the programmer to identify the OBJECT_PATH type provided by the D-BUS typesystem

    • Описание:
      Незавершенное предложение: QDBusSignature - Enables the programmer to identify the
      Должно быть: QDBusSignature - Enables the programmer to identify the SIGNATURE type provided by the D-BUS typesystem

    • Описание:
      Незавершенное предложение: QStyleOptionQ3DockWindow - Used to describe the parameters for drawing various parts of a
      Должно быть: QStyleOptionQ3DockWindow - Used to describe the parameters for drawing various parts of a Q3DockWindow

    • Резюме:
      Необходимо исправлять в оригинале перед переводом иначе сегмент получится один и тот же и перевод будет один.



  4. containers.html
    • Описание:
      Опечатка: "... but here are the guiding priciples:"
      Должно быть: "... but here are the guiding principles:"

    • Резюме:
      Необходимо исправлять в оригинале перед переводом.

  5. install-x11.html
    • Описание:
      Написано: "Run the Qt Examples and Demos either by typing qtdemo on the command line or through the desktop's Start menu."
      Должно быть: "Run the Qt Examples and Demos either by typing qtdemo on the command line or through the desktop's Main menu."

      В GNU/Linux дистрибутивах на основе KDE/GNOME это называется главное меню, а не "Пуск"

    • Резюме:
      Необходимо исправлять в оригинале перед переводом.

Автор: Анна 1.10.2008, 10:47

В статье QByteArray

в описании класса сказано:

Цитата
For historical reasons, QByteArray distinguishes between a null byte array and an empty byte array. A null byte array is a byte array that is initialized using QByteArray's default constructor or by passing (const char *)0 to the constructor. An empty byte array is any byte array with size 0. A null byte array is always empty, but an empty byte array isn't necessarily null:


Однако, при описании конструктора:
Цитата
QByteArray::QByteArray ()
Constructs an empty byte array.


Мне кажется, во втором случае все же правилнее перевести неинициализированный массив.

Автор: AD 1.10.2008, 11:03

Цитата(Анна @ 1.10.2008, 11:47) *
В статье QByteArray

в описании класса сказано:
Цитата
A null byte array is a byte array that is initialized using QByteArray's default constructor or by passing (const char *)0 to the constructor.


Однако, при описании конструктора:
Цитата
QByteArray::QByteArray ()
Constructs an empty byte array.


Мне кажется, во втором случае все же правилнее перевести неинициализированный массив.

Мне тоже так кажется. А в исходной поправить на null byte array!

Автор: Litkevich Yuriy 1.10.2008, 14:10

Цитата(Анна @ 1.10.2008, 14:47) *
Мне кажется, во втором случае все же правилнее перевести неинициализированный массив.
В этой теме надо решать не как перевести, а как должен выглядеть английский текст. Дабы при переводе с помощью OmegaT все было правильно. Т.е. сначало вносится правка в английскую документацию, а потом переводим с помощью OmegaT.

Анна, укажи в какой версии ты это обнаружила и какой именно файл.

P.S. z я пока непонял ошибка это или нет. Надо бы как-то поэксперементировать с этим классом.

Автор: Анна 1.10.2008, 16:24

http://doc.trolltech.com/4.3/qbytearray.html, примерно, один экран вверх от начала описания функций класса. Начинается со слов "For historical reasons, QByteArray distinguishes between a null byte array..." + описание первого конструктора.

В документации к 4.4.0 то же самое.

Проверяется легко

QByteArray dt;
bool res = dt.isNull();
// res будет равен true (во всяком случае в винде)
.

Автор: Litkevich Yuriy 1.10.2008, 16:59

это неподходящая проверка, isEmpty() тоже даст конкретный результат.

я такой тест провел:

#include <QtCore>
//#include "class.h"

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);

  QByteArray *dt1 = new QByteArray();
  QByteArray *dt2 = new QByteArray((const char *)0);
  
    qDebug() << "dt1->isNull() " << dt1->isNull() << "\n";        //true
    qDebug() << "dt1->isEmpty() " << dt1->isEmpty() << "\n";    //true
    qDebug() << dt1 << "\n";                                    //0x3f9358
    qDebug() << *dt1 << "\n";                                    // ""
    
    qDebug() << "dt2->isNull() " << dt2->isNull() << "\n";        // true
    qDebug() << "dt2->isEmpty() " << dt2->isEmpty() << "\n";    // true
    qDebug() << dt2 << "\n";                                    // 0x3f8ac8
    qDebug() << *dt2 << "\n";                                    // ""    
    
    
    return 0; //a.exec();
}


похоже что в документации правильно:
Цитата
Constructs an empty byte array.

там еще такие строчки есть:
Цитата
We recommend that you always use isEmpty() and avoid isNull().

Автор: alex977 2.10.2008, 10:11

misc.html

Цитата
Maps open-standard MIME to Window Clipboard formats


и qwindowsmime.html

аналогично:

Цитата
The QWindowsMime class maps open-standard MIME to Window Clipboard formats.


Пропущена S в слове WindowS - речь идет о буфере обмена именно ОС WindowS.

Автор: Анна 2.10.2008, 10:24

Ты взял оба случая, когда создаются "null byte" массивы, как и сказано в описании класса (isNull() возвращает true).
А если взять конструктор QByteArray(""), то isNull() вернет false, а isEmpty() - true. Это создался "empty" массив

Вот где у них неточность:

QByteArray() они называют "empty" массивом
а про QByteArray ( const char * data, int size ) пишут, что при условии, что data=0, создается "null byte"
Хотя в обоих случаях isNul() вернет true., т.е. они оба "null byte".

"empty" массив создается конструктором QByteArray(""). isNull() вернет false, а isEmpty() - true.

---------------------------------------------
Резюме:

Цитата
QByteArray::QByteArray ()
Constructs an empty byte array.
See also isEmpty().

QByteArray::QByteArray ( const char * str )
Constructs a byte array initialized with the string str.


исправляем на

Цитата
QByteArray::QByteArray ()
Constructs an null byte array.
See also isEmpty() and isNull().

QByteArray::QByteArray ( const char * str )
Constructs a byte array initialized with the string str.
If str is 0, a null byte array is constructed.
QByteArray makes a deep copy of the string data.

Автор: ЙаМайскЫйПчОЛ 2.10.2008, 22:22

Анна, Если хочешь, я тролям в суппорт отпишу пусть пошерстят у себя???
Может вопрос терминов?

И вообще имея платный аккаунт у тролей грех им не пользоваться.
Давайте синхронизируем деятельность тов. переводчиков с багфиксингом у троллей.

Автор: Litkevich Yuriy 2.10.2008, 22:30

тут понять надо есть ошибка или нет, я что-то вообще непойму чем отличить эти два варианта, если не пользоватся штатными функциями (isNull() isEmpty()), да и троли рекомендуют избегать первую

Автор: Анна 3.10.2008, 10:30

Да, я даже не знаю, что решить. Они сами в нескольких местах делают упор на различиях, типа "Так исторически сложилось...", а потом сами смешивают эти два понятия. Можно, конечно, им на это попинать. Просто, когда читаешь текст целиком, эта путаница бросается в глаза. Обычно, никто не читает описание конструктора по умолчанию, поэтому и не обратили внимание на такую фигню.

Проверила, что во всех случаях возвращает data(). Везде возвращается указатель на 0. Другие функции тоже, я думаю, различий не делают. Так что, похоже,различия только в isNull() и isEmpty().

А к Троллям у меня есть более серьезная претензия. ЙаМайскЫйПчОЛ, если хочешь, отпишу о ней в личку.

Автор: Litkevich Yuriy 3.10.2008, 13:39

Анна, к нам тут заходил сотрудник трольтеха, надоб его на помощь позвать.

Автор: alex977 12.11.2008, 17:24

Файл examples-overview.html

Qt's painting system is able to render vector graphics, images, and outline font-based text with sub-pixel accuracy accuracy using anti-aliasing to improve rendering quality.

Два раза стоит accuracy.

Автор: alex977 22.12.2008, 18:31

Файл annotated.html

QDBusObjectPath
Enables the programmer to identify the
Должно быть (д.б.)
Enables the programmer to identify the OBJECT_PATH type provided by the D-BUS typesystem

QDBusSignature
Enables the programmer to identify the
д.б.
Enables the programmer to identify the SIGNATURE type provided by the D-BUS typesystem

QStyleOptionQ3DockWindow
Used to describe the parameters for drawing various parts of a
д.б.
Used to describe the parameters for drawing various parts of a Q3DockWindow

Phonon::BackendCapabilities::Notifier
(пусто)
д.б.
Notifications about backend capabilities

===============================
Файл model-view-model-subclassing.html:

Implementations must call beginRemoveRows() before inserting new columns into any underlying data structures, and call endRemoveRows() immediately afterwards.
д.б.
Implementations must call beginRemoveRows() before rows are removed from any underlying data structures, and call endRemoveRows() immediately afterwards.

Implementations must call beginInsertColumns() before rows are removed from any underlying data structures, and call endInsertColumns() immediately afterwards.
д.б.
Implementations must call beginInsertColumns() before inserting new columns into any underlying data, and call endInsertColumns() immediately afterwards.

Обратите внимание на курсив.
Проблемы при копи-пасте, очевидно.

================
Файл qlistview.html:

Screenshot of a Macintosh style table view
Screenshot of a Macintosh style list view

Screenshot of a Plastique style table view
Screenshot of a Plastique style list view

Автор: Litkevich Yuriy 24.12.2008, 20:38

запостил трольтехам, вот ответ:

Цитата
Hi Yuriy,

Thanks for reporting the bug to us. I've been able to reproduce your
problem, and have reported the bug to our developers.

Cheers,
Morten

On Tuesday, 23. des 2008 03:38 lit-uriyСОБАКАyandex.ru wrote:
> > You are receiving this mail because Yuriy Litkevich lit-uriyСОБАКАyandex.ru
> > is sending a bugreport to you from www.trolltech.com.
> > Short description: errors in documentation
> >
> > Did: Qt4 Russian Translation Team found errors in documentation.
> > Please look and correct them. Since Forum in Russian, you can benefit
> > from google-translate (Ru-> En). The main errors found in version
> > Qt4.3.2, but they have inherited and newer versions. Our page
> > collection of original documentation
> > errors:(http://www.forum.crossplatform.ru/index.php?showtopic=1074).

Best regards,
Morten

--
Morten Engvoldsen
Support Engineer

Qt Software, Nokia
Sandakerveien 116, NO-0484 Oslo
PO Box 4332 Nydalen, NO-0402 Oslo, Norway

Автор: Litkevich Yuriy 30.12.2008, 22:35

файл qt.html
Написано:

Цитата
Qt::WhatsThisCursor | 15 | An arrow with a question mark, typically used


предложение не завершено, надо выяснить, что должно быть.

Автор: Novak 12.1.2009, 19:59

Файл qxmlnodemodelindex.html

Цитата
Since that function is protected, it is usually a good ide to write a public function that creates a QXmlNodeModelIndex from arguments that are appropriate for your particular node model.

Мне кажется, что подразумевалось
it is usually a good idea.., а не не интегрированная среда разработки)

Автор: Litkevich Yuriy 31.1.2009, 21:21

файл qt.html
Написано:

Цитата
Qt::BusyCursor | 16 | An hourglass or watch cursor, usually shown during operations that allow the user to interact with the application while they are performed in the background.


Хотя такой тип курсора не позволяет взаимодействовать.

Есть еще одно перечисление:
Цитата
Qt::WaitCursor | 3 | An hourglass or watch cursor, usually shown during operations that prevent the user from interacting with the application.


но изображения курсора одинаковы, видимо ошибка в картинках

В каталоге с картинками есть картинка cursor-busy.png ()

Автор: alex977 4.2.2009, 12:39

В файле qt4-interview.html:

Цитата
QStringListModel is a convenience model that can be used to hold strings for views such as QListView and QComboBox.


Возможно, вместо QComboBox должно быть QTreeView?
Поскольку выше упоминается именно эти два представления.

Автор: Litkevich Yuriy 4.2.2009, 12:42

скорее всего нет, т.к. речь идет о списковой модели, а ее используют списковое представление (QListView) и выподающий список в QComboBox

Автор: alex977 4.2.2009, 18:07

Хм-м, как-то не очень похоже на правду. Все равно чего-то не хватает.

Вот цитата из QStringListModel:

Цитата
QStringListModel is an editable model that can be used for simple cases where you need to display a number of strings in a view widget, such as a QListView or a QComboBox.


Если бы цитата в посте http://www.forum.crossplatform.ru/index.php?s=&showtopic=1074&view=findpost&p=13898 был такой:

Цитата
QStringListModel is a convenience model that can be used to hold strings for view widgets such as QListView and QComboBox.


я бы согласился.

Автор: Litkevich Yuriy 4.2.2009, 18:18

>>QStringListModel is a convenience model that can be used to hold strings for view widgets such as QListView and QComboBox.
QStringListModel - вспомогательная модель, которая может быть использована, чтобы держать (хранить) строки для виджетов-представлений таких как QListView и QComboBox.

из 19-го
>>QStringListModel is a convenience model that can be used to hold strings for views such as QListView and QComboBox.
QStringListModel - вспомогательная модель, которая может быть использована, чтобы держать (хранить) строки для представлений таких как QListView и QComboBox.

меня не смущает отсутствие слова виджет.

Автор: alex977 5.2.2009, 9:03

Ок.

Автор: Kagami 29.3.2009, 11:18

demos-mediaplayer-mediaplayer-cpp.html

Цитата
//we just ignore the cose events on the video widget

Судя из контекста имелось в виду close

Автор: Litkevich Yuriy 29.3.2009, 12:29

Цитата(Kagami @ 29.3.2009, 15:18) *
Судя из контекста имелось в виду close
да!
более полный контекст:
         case QEvent::Close:
             //we just ignore the cose events on the video widget

Автор: Kagami 29.3.2009, 15:11

graphicsview-padnavigator-panel-h.html

В описании класса Panel заметил такую строчку:

QGraphicsItem ***grid;

Выглядит очень подозрительно

Автор: ViGOur 29.3.2009, 15:24

А почему бы и нет, тот же трех мерный массив. :)

QGraphicsItem grid[][][];

Автор: Litkevich Yuriy 29.3.2009, 16:22

Kagami, похоже на правду:

 grid = new QGraphicsItem **[height];
это в graphicsview-padnavigator-panel-cpp.html

Автор: Kagami 29.3.2009, 18:13

Ну, может быть. Зато это точно очепятка :)

Цитата
The second process displays
the same image loaded from its new loaction in shared memory

Нашел в ipc-sharedmemory-dialog-cpp.html
Судя по всему, они хотели написать location

Там же:
Цитата
This slot function is called when the \tt {Load Image From File...}
button is pressed on the firs Dialog process.

Во-первых firs. Наверно имелось в виду first. Так же непонятно насчет "\tt {Load Image From File...}". Судя по всему они в исходной документации что-то где-то забыли закрыть. Такая же ошибка с \tt встречается в этом же файле еще раз, в следующем комментарии.

Там же два раза встретил ошибку вида:
Цитата
\sa loadFromFile()

Видимо она тоже появилась из-за ошибок в тегах исходной документации

Автор: Kagami 29.3.2009, 19:47

itemviews-chart-pieview-cpp.html

Опять проблема с незакрытыми тегами

Цитата
/*
Returns the rectangle of the item at position \a index in the
model. The rectangle is in contents coordinates.
*/

Автор: Litkevich Yuriy 30.3.2009, 4:21

Цитата(Kagami @ 29.3.2009, 22:13) *
Так же непонятно насчет "\tt {Load Image From File...}".
это и подобное - не ошибки. Дело в том, что эти html'ьники содержат исходники, следовательно ты видишь коментарии в них. А в коментариях содержатся всякие метки системы документирования.

Автор: molchanoviv 30.3.2009, 7:20

Цитата
\tt {Load Image From File...}


Это похоже на TeX

Автор: Litkevich Yuriy 30.3.2009, 9:15

Цитата(molchanoviv @ 30.3.2009, 11:20) *
Это похоже на TeX
это qdoc3 (тоже есть и в doxygen'е)

Автор: Sokoloff 7.4.2009, 10:28

Не то что бы ошибка, но на мой взгляд недочет в статье "An Introduction to Model/View Programming".
В главе "Creating New Models" http://www.doc.crossplatform.ru/qt/en/4.5.0/model-view-creating-models.html вначале описывается read-only модель и приведен код:

QVariant StringListModel::data(const QModelIndex &index, int role) const
{
     if (!index.isValid())
         return QVariant();

     if (index.row() >= stringList.size())
         return QVariant();

     if (role == Qt::DisplayRole)
         return stringList.at(index.row());
     else
         return QVariant();
}


Далее когда модель переделывают в редактируюмую описывают создание метода setData и изменение flags , но IMHO еще надо описать переделку метода data на что-то типа:
QVariant StringListModel::data(const QModelIndex &index, int role) const
{
     if (!index.isValid())
         return QVariant();

     if (index.row() >= stringList.size())
         return QVariant();

     if (role == Qt::DisplayRole or role == Qt::EditRole) // <-- Изменения
         return stringList.at(index.row());
     else
         return QVariant();
}

Иначе редактор создается пустым.

Автор: Litkevich Yuriy 7.4.2009, 10:47

Sokoloff, похоже, что ты прав.

Автор: Litkevich Yuriy 9.4.2009, 12:37

Sokoloff, я написал об этом тролям, вот их ответ:

Цитата
> in file http://doc.trolltech.com/4.5/model-view-creating-models.html
> > Section: "Making the Model Editable"
> > Change of StringListModel::data(...) function is not described.
> > In StringListModel::data(...) function need update too. There is need
> > add Qt::EditRole.
> > For example:
> > if (role == Qt::DisplayRole or role == Qt::EditRole)
> >

Thank you for reporting this.

I have created a task for our documentation team so that we can look
into this and update the documentation.

Have a nice day.

Автор: alex977 7.5.2009, 13:02

Файл style-reference.html

=====================

It can set the following states on the spin box.:

It can set the following states on the spin box:

=====================

When QMenu receives paint events ,it calculates the size of each menu item and draws them individually with CE_MenuItem

When QMenu receives paint events, it calculates the size of each menu item and draws them individually with CE_MenuItem

=====================

It is QMainWindowLayout that calculates the bounding rectangles (i.e., position and size of the toolbars and their contents.

It is QMainWindowLayout that calculates the bounding rectangles (i.e., position and size of the toolbars and their contents).

=====================

(Menu items do not have a separate element for their label (contents), so all drawing is done in CE_MenuItem.

(Menu items do not have a separate element for their label (contents), so all drawing is done in CE_MenuItem.)

=====================

QStyleOptionFrame is used for drawing the panel frame The lineWidth is set to PM_MenuBarPanelWidth.

QStyleOptionFrame is used for drawing the panel frame. The lineWidth is set to PM_MenuBarPanelWidth.

=====================


Файл stylesheet-reference.html:

The style of the border's right edge/

The style of the border's right edge.

=====================

For example, a lone tab in a <a0>QTabBar</a0>.

For example, alone tab in a QTabBar.

=====================

In addition to the usually supported pseudo states, item subcontrol supports the :selected, :default, :exclusive and the non-exclusive pseudo states.

In addition to the usually supported pseudo states, ::item subcontrol supports the :selected, :default, :exclusive and the :non-exclusive pseudo states.

=====================

ex: the ex width of the font (i.e., the height of 'x')

если должна быть ширина (width), то:

ex: the ex width of the font (i.e., the width of 'x')

или - если должна быть высота - то:

ex: the ex height of the font (i.e., the height of 'x')

Автор: Kagami 29.6.2009, 22:59

graphicsview-diagramscene.html:

Цитата
If the line is selected we draw to dotted lines that are parallel with the line of the arrow.
Наверно тут имелось в виду two.

Цитата
Vi reimplement the functions that handle mouse events to make it possible to alter the mouse behavior of QGraphicsTextItem.
Vi == We?

Цитата
DiagramScene uses the signal emitted when the text item looses remove the item if it is empty, i.e., it contains no text.
Вот тут вообще мозг сломал.
Наверно правильно так:
Цитата
DiagramScene uses the signal emitted when the text item looses focus to remove the item if it is empty, i.e., it contains no text.
Получилось примерно так: "DiagramScene использует сигнал, вырабатываемый когда текст теряет фокус, чтобы удалить текстовый элемент если он пустой, т.е. он не содержит текст"

Автор: Kagami 30.6.2009, 20:54

qgraphicsitem.html:

Цитата
{The Graphics View Coordinate System} describes the coordinate system in detail.
Лишние скобки, скорее всего пропущена ссылка

Цитата
<a0>keyPressEvent</a0>() and keyReleaseEvent handle key press and release events
Пропущена ссылка

Цитата
This functionaly is separate from from Qt's regular event filters (see <a0>QObject::installEventFilter</a0>()), which only work on subclasses of <a1>QObject</a1>.
Два раза "from".

Цитата
Do not call <a0>setEnabled</a0>() in <a1>itemChange</a1>() as this notification is delivered.
Такое ощущение что вместо "as" больше подходит "if"

Цитата
This notification is only sent when the item's local position changes, relative to its parent, has changed (i.e., as a result of calling <a0>setPos</a0>() or <a1>moveBy</a1>()).
Мне кажется что это слово тут лишнее

Цитата
Do not call <a0>setSelected</a0>() in <a1>itemChange</a1>() as this notification is delivered(); instead, you can return the new selected state from <a2>itemChange</a2>().
Лишние скобочки. Не говоря о ранее упомянутой проблеме с "as"

Ну что, стоит ли написать баг-репорт?

Автор: Litkevich Yuriy 1.7.2009, 5:58

Цитата(Kagami @ 1.7.2009, 0:54) *
Ну что, стоит ли написать баг-репорт?
надо удостовериться, что http://doc.crossplatform.ru/qt/4.6.x/ они есть.
Если есть, то можно написать сославшись прямо на твоё сообщение в форуме.
Поэтому можешь отредактировать своё сообщение добавив коментарий и на онглийском.

Автор: Kagami 1.7.2009, 14:31

Цитата
{The Graphics View Coordinate System} describes the coordinate system in detail.
и
Цитата
This notification is only sent when the item's local position changes, relative to its parent, has changed (i.e., as a result of calling <a0>setPos</a0>() or <a1>moveBy</a1>()).
я не нашел в 4.6. Остальные есть. Пойду писать баг-репорт.

UPD: Написал

Автор: Kagami 2.7.2009, 13:56

Странно.. Пришло письмо от автоответчика. В нем есть такая фраза:

Цитата
We have read your email but require more time to deal with it. We have
assigned it the issue number #257292. Please use this number if you email
us about the issue. We regret that we cannot guarantee a personal reply.

Но в баг-трекере ошибки с таким номером я не нашел

Автор: Litkevich Yuriy 2.7.2009, 17:00

Цитата(Kagami @ 2.7.2009, 17:56) *
issue number #257292
это регистрационный номер issue, по нашему "входящее" (термин документооборота).
Его рассмотрят, если посчитают полезным свяжутся с тобой, и, возможно, создадут "таску"

По моему опыту написания замечаний тролям по документации, они создают "таску" только внутреннюю для разработчиков и не публикуют её.
Т.е. ответ от человека примерно такой:
Цитата
Спасибо за замечание, я создал "таску" нашим разработчикам/команде документации. Такой-то инженер

Автор: Kagami 2.7.2009, 19:40

Теперь все понятно

Автор: AD 16.7.2009, 11:32

Ошибка в картинках на странице Qt Namespace Reference Qt 4.3.2:
картинки Qt::SplitHCursor, Qt::SplitVCursor следует поменять местами. Для вертикального QFrame::VLine присущ Qt::SplitHCursor при наведении, а для горизонтального - Qt::SplitVCursor. А в документации неверно указаны картинки данных курсоров.

Автор: Litkevich Yuriy 16.7.2009, 17:34

AD, это для перечисления enum Qt::CursorShape?

Автор: AD 16.7.2009, 17:41

Цитата(Litkevich Yuriy @ 16.7.2009, 18:34) *
AD, это для перечисления enum Qt::CursorShape?

Да.

Автор: Litkevich Yuriy 16.7.2009, 17:47

тогда там всё правильно.

Автор: AD 16.7.2009, 17:53

Цитата(Litkevich Yuriy @ 16.7.2009, 18:47) *
тогда там всё правильно.

Не понял? Почему? Ты проверял? Я проверял, потому и написал...

Автор: Litkevich Yuriy 16.7.2009, 18:00

да, я вот сейчас смотрю http://doc.crossplatform.ru/qt/4.5.0/qcursor.html#details и вижу, что по разному.

В http://doc.crossplatform.ru/qt/4.5.0/qt.html#CursorShape-enum

Автор: AD 16.7.2009, 18:01

Цитата(Litkevich Yuriy @ 16.7.2009, 19:00) *
да, я вот сейчас смотрю http://doc.crossplatform.ru/qt/4.5.0/qcursor.html#details и вижу, что по разному.

В http://doc.crossplatform.ru/qt/4.5.0/qt.html#CursorShape-enum

Вот-вот. Им что-ли написать и попросить поправить документацию для Qt 4.3.2? Или же самим поправить? :)

Автор: Litkevich Yuriy 16.7.2009, 18:07

тут даже не понятно как правильно должно быть, описание к картинке на странице документации пространства имён, соответствует самой картинке.

Вот пример:

EN: A cursor used for vertical splitters, indicating that a handle can be dragged horizontally to adjust the use of available space.
RU: Указатель используемый для вертикальных разделителей, указывающий, что рукоятка может перетаскиваться горизонтально, чтобы отрегулировать использование доступного пространства.

Автор: AD 16.7.2009, 18:07

Цитата(Litkevich Yuriy @ 16.7.2009, 19:05) *
тут даже не понятно как правильно должно быть, описание к картинке на странице документации пространства имён, соответствует самой картинке.

Ну е-мое! :) Сами обозначения, а не картинки, местами поменять. В принципе баг даже не в документации, а в Qt! Несоответствие какое-то!

Я потому первые 5 минут недоумевал. Перечитал данный момент в документации несколько раз, выставляю Qt::SplitVCursor, а у меня выскакивает символ из картинки, соответствующей Qt::SplitHCursor!

Автор: Litkevich Yuriy 16.7.2009, 18:17

Цитата(AD @ 16.7.2009, 22:07) *
В принципе баг даже не в документации, а в Qt! Несоответствие какое-то!
А почему в Qt?

Саша, проверь какое значение (цифирное) возвращает каждая из констант, может их тоже надо исправить.
qDebug() << "Qt::SplitVCursor =" << Qt::SplitVCursor << "Qt::SplitHCursor =" << Qt::SplitHCursor;


Подготовим конкретное решение по исправлениям и отправим тролям

Автор: AD 16.7.2009, 18:30

Цитата(Litkevich Yuriy @ 16.7.2009, 19:17) *
А почему в Qt?

Саша, проверь какое значение (цифирное) возвращает каждая из констант, может их тоже надо исправить.
qDebug() << "Qt::SplitVCursor =" << Qt::SplitVCursor << "Qt::SplitHCursor =" << Qt::SplitHCursor;


Подготовим кокретное решение по исправлениям и отправим тролям

Qt::SplitVCursor = 11
Qt::SplitHCursor = 12

Ну а как? Либо правка самой документации, как в Qt 4.5, либо правильное выставление картинки курсора при задании этих значений.

Заодно проверил значения
Qt::SizeVerCursor = 5
Qt::SizeHorCursor = 6

Автор: Litkevich Yuriy 16.7.2009, 18:33

Цитата(AD @ 16.7.2009, 22:30) *
Qt::SplitVCursor = 11
Qt::SplitHCursor = 12

Ну а как?
Т.е. получается, что перепутаны значения в последней колонке, и текст и рисунок.

Цитата(AD @ 16.7.2009, 22:30) *
Заодно проверил значения
Qt::SizeVerCursor = 5
Qt::SizeHorCursor = 6
а тут, что тоже неправильно?

Автор: AD 16.7.2009, 18:36

Цитата(Litkevich Yuriy @ 16.7.2009, 19:33) *
а тут, что тоже неправильно?

Нет-нет, все тут правильно. Уже так.... для перестраховки проверил.

Цитата(Litkevich Yuriy @ 16.7.2009, 19:33) *
Т.е. получается, что перепутаны значения в последней колонке, и текст и рисунок.

Видимо, да. Получается так!

Автор: Litkevich Yuriy 16.7.2009, 18:38

Кстати ещё нашёл багу:
Qt::BusyCursor, а конка, как у Qt::WaitCursor. Сравнил с дизайнером, точно не соответствует.

Саша ищи ещё, "чем больше сдадим, тем лучше"@ фильма
:)

Автор: AD 16.7.2009, 18:52

Цитата(Litkevich Yuriy @ 16.7.2009, 19:38) *
Кстати ещё нашёл багу:
Qt::BusyCursor, а конка, как у Qt::WaitCursor. Сравнил с дизайнером, точно не соответствует.

Саша ищи ещё, "чем больше сдадим, тем лучше"@ фильма
:)

Кроме указанного тобою еще Qt::WaitCursor, Qt::BusyCursor, все остальное нормально.

P.S. можно ведь и поощрить за то, что нашел некорректность! :blush2:

Автор: Litkevich Yuriy 16.7.2009, 19:12

Резюме/summary
RU:
В файле qt.html
Описание перечисления http://doc.crossplatform.ru/qt/en/4.5.0/qt.html#CursorShape-enum, содержит ошибки:
1) У констант Qt::SplitVCursor и Qt::SplitHCursor перепутано описание (вместе с рисунком);
2) Неправильный рисунок в описании константы Qt::BusyCursor.

EN:
In the file qt.html
Type documentation for http://doc.crossplatform.ru/qt/en/4.5.0/qt.html#CursorShape-enum, have errors:
1) For constants Qt::SplitVCursor и Qt::SplitHCursor the description (together with a picture) is confused;
2) Incorrect picture in the description of Qt::BusyCursor.

Автор: Анна 25.8.2009, 15:02

Статья QWidget:

Цитата
windowFlags : Qt::WindowFlags

Window flags are a combination of a type (e.g. Qt::Dialog) and zero or more hints to the window system (e.g. Qt::FramelessWindowHint).

If the widget had type Qt::Widget or Qt::SubWindow and becomes a window (Qt::Window, Qt::Dialog, etc.), it is put at position (0, 0) on the desktop. If the widget is a window and becomes a Qt::Widget or Qt::SubWindow, it is put at position (0, 0) relative to its parent widget.

Note: This function calls setParent() when changing the flags for a window, causing the widget to be hidden. You must call show() to make the widget visible again..

Access functions:
Qt::WindowFlags windowFlags () const
void setWindowFlags ( Qt::WindowFlags type )

See also windowType() and Window Flags Example.


Не понятно, к чему относитмся фраза из замечания "Эта функция...." Там речи нет ни о какой функции. Возможно, они имели ввиду функцию setWindowFlags(), тогда абзац с замечанием нужно поместить ниже "См. также..."

Автор: Анна 28.8.2009, 9:59

Цитата
Uses sizeHint() if valid (i.e if the size hint's width and height are >= 0); otherwise sets the size to the children rectangle that covers all child widgets (the union of all child widget rectangles).


Сдается мне тут должно стоять parent. Вообще, складывается впечатление, что эту статью писали все, кому не лень, и автор этого кусочка очень вольно обращается с английским. :)

Автор: alex977 28.8.2009, 11:40

Файл dbus-complexpingpong.html

Цитата
The Complex Ping Pong example demonstrates


Обрыв предложения - что демонстрирует пример, не ясно.

Также в примерах dbus-complexpingpong.html и dbus-dbus-chat.html пропущены картинки.
Так и написано:
Цитата
Missing image complexpingpong-example.png

и
Цитата
Missing image dbus-chat-example.png

соответственно

Автор: Анна 4.9.2009, 15:47

QWidget
Трудно назвать это ошибкой, трудно, но явно присутствует некоторая путаница в терминах

Цитата
bool QWidget::focusNextPrevChild ( bool next ) [virtual protected]

Finds a new widget to give the keyboard focus to, as appropriate for Tab and Shift+Tab, and returns true if it can find a new widget, or false if it can't.

If next is true, this function searches forward, if next is false, it searches backward.

Sometimes, you will want to reimplement this function. For example, a web browser might reimplement it to move its "current active link" forward or backward, and call focusNextPrevChild() only when it reaches the last or first link on the "page".

Child widgets call focusNextPrevChild() on their parent widgets, but only the window that contains the child widgets decides where to redirect focus. By reimplementing this function for an object, you thus gain control of focus traversal for all child widgets.


Наверное, все же под объектом имелось в виду окно. Как вы думаете?

Автор: Litkevich Yuriy 4.9.2009, 16:37

Цитата(Анна @ 4.9.2009, 19:47) *
Как вы думаете?
Я думаю слово "объект" достаточно общее, посему к тролям не прикопаешся. Ведь QWidget - объект.

Автор: igor_bogomolov 15.11.2009, 15:50

:blush2: Звиняюсь,был не внимателен.
Интерес возник в связи с http://www.prog.org.ru/index.php?topic=11283.msg69184#msg69184. К сожалению ничего кроме xterm, у которого есть флаг -into, пока встроить не удалось :(

Автор: Litkevich Yuriy 15.11.2009, 16:22

Сообщения удалил, чтобы столку не сбивали

Автор: Kagami 7.12.2009, 17:10

Вот http://doc.crossplatform.ru/qt/en/4.6.x/qnetworkrequest.html#operator-not-eq

Цитата
bool QNetworkRequest::operator!= ( const QNetworkRequest & other ) const

Returns false if this object is not the same as other.

Если я ничего не путаю, то должно быть все наоборот

Автор: Litkevich Yuriy 7.12.2009, 17:24

Цитата(Kagami @ 7.12.2009, 20:10) *
Если я ничего не путаю, то должно быть все наоборот
по идее да, т.е. должен вернуть ИСТИНУ, если не равны. Надо бы исходник глянуть

Автор: alex977 8.2.2010, 0:20

http://doc.crossplatform.ru/qt/4.6.x/
http://doc.crossplatform.ru/qt/4.6.x/stylesheet-examples.html

Sine Qt 4.6 the close button can be customized as follow:
Since Qt 4.6 the close button can be customized as follow:

пропущена буква

===========

http://doc.crossplatform.ru/qt/4.6.x/stylesheet-reference.html

Close buttons using the ::close-button The tabs support the :only-one, :first, :last, :middle, :previous--selected, :next-selected, :selected pseudo states.
Close buttons using the ::close-button. The tabs support the :only-one, :first, :last, :middle, :previous--selected, :next-selected, :selected pseudo states.

Ie you can draw a combobox on any widget, not just on a QComboBox
If you can draw a combobox on any widget, not just on a QComboBox.

опечатка и точка в конце предложения.

===========
http://doc.crossplatform.ru/qt/4.6.x/porting4.html

It has bene renamed Q3SimpleRichText and moved to the Qt3Support library.
It has been renamed Q3SimpleRichText and moved to the Qt3Support library.

It has been renamed Q3Shared moved to the Qt3Support library.
It has been renamed Q3Shared and moved to the Qt3Support library.

пропущено "and"

// Or set a resonable default size
// Or set a reasonable default size

пропущена буква "a"

===========

http://doc.crossplatform.ru/qt/4.6.x/qt4-network.html

Qt 4 still provides QFtp, and it also proveds the QNetworkAccessManager.
Qt 4 still provides QFtp, and it also provides the QNetworkAccessManager.

===========

http://doc.crossplatform.ru/qt/4.6.x/qmake-platform-notes.html

Furthermore, The selected "Active Build Configuration" is stored in a .pbxuser file, which is generated by xcode on first load, not created by qmake.
Furthermore, the selected "Active Build Configuration" is stored in a .pbxuser file, which is generated by xcode on first load, not created by qmake.

In order to optain an official UID, please contact Nokia.
In order to obtain an official UID, please contact Nokia.

===========

http://doc.crossplatform.ru/qt/4.6.x/qmake-environment-reference.html

qmake has a system of persistant information, this allows you to set a variable in qmake once, and each time qmake is invoked this value can be queried.
qmake has a system of persistent information, this allows you to set a variable in qmake once, and each time qmake is invoked this value can be queried.

At this point, the Makefile is created as usual, and the libraries are linked explicitlyy against the application.
At this point, the Makefile is created as usual, and the libraries are linked explicitly against the application.

===========

http://doc.crossplatform.ru/qt/4.6.x/qtestlib-manual.html

Commmand-line Arguemnt
Commmand-line Argument

===========

http://doc.crossplatform.ru/qt/4.6.x/graphics-basicgraphicslayouts.html

The preferred size is the same as the minimum size hint, while we set maximum to be a large value
The preferred size is the same as the minimum size hint, while we set maximum to be a large value.

===========

http://doc.crossplatform.ru/qt/4.6.x/qnetworkaccessmanager.html

Posts a request to obtain the network headers for request and returns a new QNetworkReply object which will contain such headers
Posts a request to obtain the network headers for request and returns a new QNetworkReply object which will contain such headers.

===========

http://doc.crossplatform.ru/qt/4.6.x/qtestlib-manual.html

Several back-ends are available an can be selected on the command line:
Several back-ends are available and can be selected on the command line:

===========

http://doc.crossplatform.ru/qt/4.6.x/qt.html

On Mac OS X by default, Qt swaps the Control and Meta (Command) keys (i.e., whenever Control is pressed, Qt sends Meta and whenever Meta is pressed Control is sent.
On Mac OS X by default, Qt swaps the Control and Meta (Command) keys (i.e., whenever Control is pressed, Qt sends Meta and whenever Meta is pressed Control is sent).

Always use the longest variant when computing the size of a multi-variant string
Always use the longest variant when computing the size of a multi-variant string.

On Mac OS X adds a tool bar button (i.e., the oblong button that is on the top right of windows that have toolbars.
On Mac OS X adds a tool bar button (i.e., the oblong button that is on the top right of windows that have toolbars).

The item cannot draw or receive mouse, tablet, drag and drop or hover events outside ts shape.
The item cannot draw or receive mouse, tablet, drag and drop or hover events outside its shape.

===========

http://doc.crossplatform.ru/qt/4.6.x/scripting.html

In fact, as we have seen, in the technical sense all Qt Script functions can be seen as variable-argument functions).
In fact, as we have seen, in the technical sense all Qt Script functions can be seen as variable-argument functions.

Автор: Litkevich Yuriy 8.2.2010, 2:50

http://bugreports.qt.nokia.com/browse/QTBUG-7997

Автор: Kagami 8.2.2010, 9:21

Я когда нашел ошибки в доке по креатору не стал писать тролям, я клонировал репу, исправил сам и сделал merge request. Оно так быстрее и проще получается :)

Автор: Litkevich Yuriy 8.2.2010, 13:04

Цитата(Kagami @ 8.2.2010, 12:21) *
Я когда нашел ошибки в доке по креатору не стал писать тролям, я клонировал репу, исправил сам и сделал merge request. Оно так быстрее и проще получается
Да, к стати, сейчас же это стало проще чем раньше.

Автор: Litkevich Yuriy 13.2.2010, 17:07

http://bugreports.qt.nokia.com/browse/QTBUG-7997?page=com.atlassian.jira.plugin.system.issuetabpanels%3Aall-tabpanel

Автор: Litkevich Yuriy 15.2.2010, 20:47

alex977, все найденные тобой ошибки исправлены, http://bugreports.qt.nokia.com/browse/QTBUG-7997?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
Состояние в Git-хранилище - http://qt.gitorious.org/qt/qt/commit/826066dbe5f298ec0515d21fa182d15ee3762f37

Автор: alex977 28.5.2010, 15:51

http://doc.crossplatform.ru/qt/4.6.x/activeqt-multiple.html

The linewith is exposed as a property.
The linewidth is exposed as a property.

Пропущена буква

=============
http://doc.crossplatform.ru/qt/4.6.x/activeqt-hierarchy.html

QParentWidget is exported as a full class (which can be created ),
QParentWidget is exported as a full class (which can be created),

Лишний пробел.

=============
http://doc.crossplatform.ru/qt/4.6.x/activeqt-dotnet.html

Instead, the QAxFactory implementation in the otherwise completely cross-platform Qt project provides the glue that .NET needs to to generate the RCW.
Instead, the QAxFactory implementation in the otherwise completely cross-platform Qt project provides the glue that .NET needs to generate the RCW.

Два раза "to".

=============
http://doc.crossplatform.ru/qt/4.6.x/dialogs-extension.html

We need a QLineEdit with an associated QLabel to let the user type a word to search for, we need several QCheckBoxes to facilitate the search options, and we need three QPushButtons: the Find button to start a search and the More button to enable an advanced search.
We need a QLineEdit with an associated QLabel to let the user type a word to search for, we need several QCheckBoxes to facilitate the search options, and we need three QPushButtons: the Find button to start a search, the More button to enable an advanced search, and the Close button to exit the application.


Возможно не ошибка. В предыдущих версиях описывалась и кнопка Close.

Да, это не ошибка - в документации Assistant-а картинка с кнопкой, в то время как сам пример - уже без кнопки Close.

=============
http://doc.crossplatform.ru/qt/4.6.x/dialogs-findfiles.html

The default policy is is QComboBox::InsertAtBottom.
The default policy is QComboBox::InsertAtBottom.

Два раза "is".

In showHelp(), we display help texts that are appropiate for the current page.
In showHelp(), we display help texts that are appropriate for the current page.

Пропущена буква.

=============
http://doc.crossplatform.ru/qt/4.6.x/porting4-overview.html

Some Qt 3 features have changed significantly for Qt 4. and the recommended way of using them has therefore changed significantly, too.
Some Qt 3 features have changed significantly for Qt 4, and the recommended way of using them has therefore changed significantly, too.

Вместо точки должна быть запятая.

=============
http://doc.crossplatform.ru/qt/4.6.x/qdrawutil-h.html

The provide palette specifies the shading colors (light, dark and middle colors.
The provided palette specifies the shading colors (light, dark and middle colors).

Пропущена буква, пропущена закрывающая скобка.

Warning: This function does not look at QWidget::style() or QApplication::style()-> Use the drawing functions in QStyle to make widgets that follow the current GUI style.
Warning: This function does not look at QWidget::style() or QApplication::style(). Use the drawing functions in QStyle to make widgets that follow the current GUI style.

Непонятно к чему относящаяся конструкция "->". По-видимому, должна была быть точка.

=============
http://doc.crossplatform.ru/qt/4.6.x/porting4-dnd.html

Qt 3 relies on subclasses of QDragObject to provide support for specific MIME types; in Qt 4, the use of QMimeData as a generic container for data makes the relationship between MIME type and data more tranparent.
Qt 3 relies on subclasses of QDragObject to provide support for specific MIME types; in Qt 4, the use of QMimeData as a generic container for data makes the relationship between MIME type and data more transparent.

Пропущена буква.

Автор: ViGOur 11.8.2010, 19:22

На странице http://doc.crossplatform.ru/qt/4.6.x/classes.html нет класса http://doc.crossplatform.ru/qt/4.6.x/qhttp.html, а должен быть!
Причем это только в документации 4.6.x.

Или это из-за того, что класс устаревший?

Автор: alex977 11.8.2010, 19:46

Похоже на то
Ни один из устаревших классов
http://doc.crossplatform.ru/qt/4.6.x/obsoleteclasses.html
в общем указателе отсутствуют

Автор: igor_bogomolov 21.1.2011, 8:55

Вот этом сообщении описана опечатка в исходной документации http://www.forum.crossplatform.ru/index.php?s=&showtopic=6311&view=findpost&p=45243

Автор: iReset 15.8.2012, 10:40

Файл qtestlib-tutorial.html в версиях 4.5 - 4.6.
It is divided into four chapters:
It is divided into five chapters:

Количество глав поменялось, а тут осталось старое. Исправлено только в версии 4.7 (в 4.7.3 уже точно).

Расскажите пожалуйста, а каким образом информация об ошибке вносится в оригинальную документацию (я имею в виду не ту, что на серверах Nokia, а ту, что есть у нас)? Ручным исправлением исходных файлов? А если эта ошибка по какой-то причине вдруг остаётся неисправленной в следующей версии документации?
Вопрос к alex977: а внесены ли замеченные тут ошибки в исходную документацию, выложенную на FTP в qtrtt/tm/etalon? Беглый взгляд показал, что все файлы в каждой из версий с одной и той же датой.
Может, для таких ситуаций завести отдельный проект, который будет предназначен для "перевода" оригинальной документации на её исправленный вариант? Заносим в ПП исправления; при переходе на новую версию документации прогоняем оригинал через эту ПП. Получаем исправленную оригинальную документацию. Конечно, нет гарантии того, что все исправления применятся, но хоть что-то.

Форум Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)