<?xml version="1.0" encoding="UTF-8" ?>

<bugzilla version="5.2"
          urlbase="https://bugzilla.altlinux.org/"
          
          maintainer="jenya@basealt.ru"
>

    <bug>
          <bug_id>19618</bug_id>
          
          <creation_ts>2009-04-14 12:33:37 +0400</creation_ts>
          <short_desc>Виджет списка дополнительных групп при установке</short_desc>
          <delta_ts>2010-10-26 15:26:07 +0400</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Development</classification>
          <product>Sisyphus</product>
          <component>alterator-browser-qt</component>
          <version>unstable</version>
          <rep_platform>all</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>CLOSED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>usability</keywords>
          <priority>P3</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>23155</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Andrey Cherepanov">cas</reporter>
          <assigned_to name="Sergey V Turchin">zerg</assigned_to>
          <cc>boyarsh</cc>
    
    <cc>inger</cc>
    
    <cc>kharpost</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>89358</commentid>
    <comment_count>0</comment_count>
    <who name="Andrey Cherepanov">cas</who>
    <bug_when>2009-04-14 12:33:37 +0400</bug_when>
    <thetext>+++ Данная ошибка создана размножением ошибки 19611 +++

Для выбора групп пакетов требуется виджет выбора групп (checkbox&apos;ы, со значками, названием и описанием).

[x] значок название (полужирным)
           описание</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>89493</commentid>
    <comment_count>1</comment_count>
    <who name="Sergey V Turchin">zerg</who>
    <bug_when>2009-04-15 17:34:53 +0400</bug_when>
    <thetext>Есть идеи, для чего он может еще быть использован?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>89503</commentid>
    <comment_count>2</comment_count>
    <who name="Sergey V Turchin">zerg</who>
    <bug_when>2009-04-15 20:17:45 +0400</bug_when>
    <thetext>Есть идея доработать текущий:
Картинки можно справа помещать, а крыжики остануться слева.
Так же можно добавить event, который будет отправляться при нахождении курсора мыши над строкой. По нему в отдельном label можно будет показывать соотв. description. Это сэкономит место по высоте.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>89524</commentid>
    <comment_count>3</comment_count>
    <who name="Andrey Cherepanov">cas</who>
    <bug_when>2009-04-16 10:39:56 +0400</bug_when>
    <thetext>(В ответ на комментарий №2)
&gt; Есть идея доработать текущий:
&gt; Картинки можно справа помещать, а крыжики остануться слева.
&gt; Так же можно добавить event, который будет отправляться при нахождении курсора
&gt; мыши над строкой. По нему в отдельном label можно будет показывать соотв.
&gt; description. Это сэкономит место по высоте.
Не годится. Нынешний список очень сложно использовать.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>89528</commentid>
    <comment_count>4</comment_count>
    <who name="Andrey Cherepanov">cas</who>
    <bug_when>2009-04-16 11:03:35 +0400</bug_when>
    <thetext>Есть также предложение сделать выделение в виде дерева, а описание и (опционально) значок - в виде отдельного блока.

То есть примерно так:
Виджет списка:

&gt; [x] Работа с мультимедиа
   L [x] Редактирование звука
   L [x] Редактирование звука
   L [x] Редактирование звука

При нажатии на галочку (&gt;) ветка сворачивается или разворачивается. По умолчанию все ветки свёрнуты. При нажатии на текст пункта показывается его описание (пока без значка можно) в виджете 2 (обычный Label с переносом), расположенный под списком.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>89540</commentid>
    <comment_count>5</comment_count>
    <who name="Sergey V Turchin">zerg</who>
    <bug_when>2009-04-16 13:31:00 +0400</bug_when>
    <thetext>(В ответ на комментарий №3)
&gt; Нынешний список очень сложно использовать.
Кому? Пользователю? Чем? Почему &quot;очень&quot;?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>89542</commentid>
    <comment_count>6</comment_count>
    <who name="Sergey V Turchin">zerg</who>
    <bug_when>2009-04-16 13:37:04 +0400</bug_when>
    <thetext>(В ответ на комментарий №3)
&gt; Нынешний список очень сложно использовать.
Я подозреваю, что новый будет действительно &quot;очень сложно использовать&quot; Стасу, т.к. тот же ахалай-махалай, который он сделал с tree повторить(еще и с наворотами) не смогу, а сделаю по-своему.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>89573</commentid>
    <comment_count>7</comment_count>
    <who name="Andrey Cherepanov">cas</who>
    <bug_when>2009-04-17 11:04:38 +0400</bug_when>
    <thetext>(В ответ на комментарий №5)
&gt; (В ответ на комментарий №3)
&gt; &gt; Нынешний список очень сложно использовать.
&gt; Кому? Пользователю?
Да. И не одному.

&gt; Чем? Почему &quot;очень&quot;?
Потому что
а) слишком много пунктов, а в большом списке легко пропустить нужное
б) нет описаний
в) нет структурированности (как следствие — см. п. а)
г) выделение всей строки сбивает пользателя с толку, он привык что выделение показывает текущий фокус.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>89595</commentid>
    <comment_count>8</comment_count>
    <who name="Sergey V Turchin">zerg</who>
    <bug_when>2009-04-17 13:28:33 +0400</bug_when>
    <thetext>(В ответ на комментарий №7)
&gt; а) слишком много пунктов, а в большом списке легко пропустить нужное
С деревом меньше пунктов не станет

&gt; б) нет описаний
с описаниями их будет &quot;еще больше&quot;, поэтому предлагаю по накрытию мышкой показывать описание в одном отдельном месте (это далеко не моя идея, см. настройки virtualbox).

&gt; в) нет структурированности (как следствие — см. п. а)
Насчем неразвернутости дерева по умолчанию сомневаюсь, т.к. &quot;легко пропустить нужное&quot;.
А-а-а, там получиться плюс в том, что всю ветку отметить можно будет.

&gt; г) выделение всей строки сбивает пользателя с толку, он привык что выделение
&gt; показывает текущий фокус.
Там еще галки есть. Выделение, согласен, лишенее, но сбивать не должно, т.к. везде такое используется. В HTML списках с множественным выбором, например.

В общем, что-нибудь сварганю, но мне кажется, что это не быстро.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>89636</commentid>
    <comment_count>9</comment_count>
    <who name="Andrey Cherepanov">cas</who>
    <bug_when>2009-04-17 20:53:39 +0400</bug_when>
    <thetext>(В ответ на комментарий №8)
&gt; (В ответ на комментарий №7)
&gt; &gt; а) слишком много пунктов, а в большом списке легко пропустить нужное
&gt; С деревом меньше пунктов не станет
Будет меньше пунктов на верхнем уровне.
 
&gt; &gt; б) нет описаний
&gt; с описаниями их будет &quot;еще больше&quot;, поэтому предлагаю по накрытию мышкой
&gt; показывать описание в одном отдельном месте (это далеко не моя идея, см.
&gt; настройки virtualbox).
Читай мой комментарий #4 - я как раз это и предлагал.

&gt; &gt; в) нет структурированности (как следствие — см. п. а)
&gt; Насчем неразвернутости дерева по умолчанию сомневаюсь, т.к. &quot;легко пропустить
&gt; нужное&quot;.
&gt; А-а-а, там получиться плюс в том, что всю ветку отметить можно будет.
Угу. Зато не будет путаницы. Пользователь же идёт от общих задач.

&gt; &gt; г) выделение всей строки сбивает пользателя с толку, он привык что выделение
&gt; &gt; показывает текущий фокус.
&gt; Там еще галки есть. Выделение, согласен, лишенее, но сбивать не должно, т.к.
&gt; везде такое используется. В HTML списках с множественным выбором, например.
Неее, это только твоё творчество.

&gt; В общем, что-нибудь сварганю, но мне кажется, что это не быстро.
Я не тороплю ;)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>89822</commentid>
    <comment_count>10</comment_count>
    <who name="Sergey V Turchin">zerg</who>
    <bug_when>2009-04-21 12:35:16 +0400</bug_when>
    <thetext>(В ответ на комментарий №9)
&gt; &gt; везде такое используется. В HTML списках с множественным выбором, например.
&gt; Неее, это только твоё творчество.
Мое творчество -- галочки. А выделение везде есть.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>89823</commentid>
    <comment_count>11</comment_count>
    <who name="Andrey Cherepanov">cas</who>
    <bug_when>2009-04-21 12:41:00 +0400</bug_when>
    <thetext>(В ответ на комментарий №10)
&gt; Мое творчество -- галочки. А выделение везде есть.
Нет, выделение по включение галочки только у тебя есть. Что не есть правильно.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>89825</commentid>
    <comment_count>12</comment_count>
    <who name="Sergey V Turchin">zerg</who>
    <bug_when>2009-04-21 13:10:35 +0400</bug_when>
    <thetext>(В ответ на комментарий №11)
&gt; Нет, выделение по включение галочки только у тебя есть.
Еще раз повторяю. У меня включение галочки по выделению. Галочки туда я запихал. Остальное стандартное, как в HTML, например.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>108053</commentid>
    <comment_count>13</comment_count>
    <who name="Andrey Cherepanov">cas</who>
    <bug_when>2010-03-23 17:08:19 +0300</bug_when>
    <thetext>Реанимируем тему для Кентавра. Сергей, что необходимо чтобы реализовать?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>108055</commentid>
    <comment_count>14</comment_count>
    <who name="Andrey Cherepanov">cas</who>
    <bug_when>2010-03-23 17:26:16 +0300</bug_when>
    <thetext>Как минимум, пока можно реализовать без значков и описаний. Просто иерархический список с контролируемым включением/выключением флажков и управлением первоначальным сворачиванием (до первого уровня).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>108056</commentid>
    <comment_count>15</comment_count>
    <who name="Sergey V Turchin">zerg</who>
    <bug_when>2010-03-23 17:28:06 +0300</bug_when>
    <thetext>(В ответ на комментарий №13)
&gt; Сергей, что необходимо чтобы реализовать?
Мне врубиться в &quot;Model/View Programming&quot;, но пока не врубаюсь</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>108058</commentid>
    <comment_count>16</comment_count>
    <who name="Andrey Cherepanov">cas</who>
    <bug_when>2010-03-23 17:50:28 +0300</bug_when>
    <thetext>(В ответ на комментарий №15)
&gt; Мне врубиться в &quot;Model/View Programming&quot;, но пока не врубаюсь
А зачем? Внешний вид переключаться не будет. Так что парадигма MVC здесь не особо уместна и избыточна.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>108060</commentid>
    <comment_count>17</comment_count>
    <who name="Sergey V Turchin">zerg</who>
    <bug_when>2010-03-23 18:50:32 +0300</bug_when>
    <thetext>Тогда я просто не знаю, как сделать. Если есть исходники необходимого класса, дайте -- встрою.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>108061</commentid>
    <comment_count>18</comment_count>
    <who name="Andrey Cherepanov">cas</who>
    <bug_when>2010-03-23 19:55:04 +0300</bug_when>
    <thetext>(В ответ на комментарий №17)
&gt; Тогда я просто не знаю, как сделать. Если есть исходники необходимого класса,
&gt; дайте -- встрою.
Нужно на этапе создания строки добавить что-то типа (внимание! неработающий прототип!)

--- a/alterator-browser-qt/widgets/al_listbox.cc
+++ b/alterator-browser-qt/widgets/al_listbox.cc
@@ -124,6 +124,25 @@ void AListBox::addRow(QStringList&amp; data, RowType row_type)
     int col = 0;
 
     AListBoxItem *item = new AListBoxItem(this);
+               
+    /*
+    else if (&quot;parent&quot; == name)
+       {
+               // Lookup parent if it name is defined
+               if( ! value.isEmpty() ) {
+                       QTreeWidgetItem *parent = NULL;
+                       QList&lt;QTreeWidgetItem *&gt; l = wnd_-&gt;findItems( value );
+                       if( l.count() &gt; 0 ) {
+                               parent = l.at(0);
+                       }
+               }
+
+               // Set parent by create new item and move under new parent
+               if( parent ) {
+                       parent-&gt;addChild(  );
+               }
+       }
+    */</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>108062</commentid>
    <comment_count>19</comment_count>
    <who name="Andrey Cherepanov">cas</who>
    <bug_when>2010-03-23 19:57:28 +0300</bug_when>
    <thetext>Есть две проблемы:
1. addRow не принимает сторонних свойств (name, parent,...)
2. Не факт, что элемент родителя будет создан раньше дочернего элемента.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>108078</commentid>
    <comment_count>20</comment_count>
    <who name="Sergey V Turchin">zerg</who>
    <bug_when>2010-03-24 11:51:13 +0300</bug_when>
    <thetext>(В ответ на комментарий №18)
&gt; неработающий прототип!
Да таких я много могу сделать, а толку?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>109887</commentid>
    <comment_count>21</comment_count>
    <who name="Sergey V Turchin">zerg</who>
    <bug_when>2010-06-15 17:02:15 +0400</bug_when>
    <thetext>alterator-browser-qt-2.13.0-alt1</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>