[Engine-devel] GUI widget for adding/removing entries

Lior Vernia lvernia at redhat.com
Thu Oct 10 07:59:43 UTC 2013



On 09/10/13 23:34, Itamar Heim wrote:
> On 10/09/2013 03:32 PM, Lior Vernia wrote:
>> Of course, my bad. Attached is a screenshot of the add/edit VM dialog,
>> note the vNIC part on the bottom half of the dialog.
> 
> how is it different from the custom properties one?
> 

Design-wise, there are a couple of small differences. There's only one
button next to each row, plus if it's the last row or minus otherwise
(so items can only be added at the end, as I replied to Malini order
hasn't been important so far). A row appears as disabled until it is
edited, and a disabled row is ignored when the view is flushed back to
the model (e.g. when the user presses OK in the dialog).

Code-wise, it's constructed to be reusable, which the custom properties
widget wasn't :)

>>
>> On 09/10/13 13:24, Einav Cohen wrote:
>>> Hi Lior - can you please provide a screen-shot, so we will know which
>>> widget
>>> you are referring to?
>>> will make it easier for people to decide if and where to use this
>>> widget.
>>>
>>> Many thanks!
>>>
>>> ----
>>> Regards,
>>> Einav
>>>
>>> ----- Original Message -----
>>>> From: "Lior Vernia" <lvernia at redhat.com>
>>>> To: "engine-devel" <engine-devel at ovirt.org>
>>>> Sent: Wednesday, October 9, 2013 4:34:29 AM
>>>> Subject: [Engine-devel] GUI widget for adding/removing entries
>>>>
>>>> Hello,
>>>>
>>>> Lately a patch has been merged that introduces a widget for
>>>> adding/removing entries (e.g. network interfaces when
>>>> creating/editing a
>>>> VM):
>>>>
>>>> http://gerrit.ovirt.org/#/c/19530/
>>>>
>>>> This kind of widgets is becoming common in oVirt, so the idea is to
>>>> make
>>>> adding one easy rather than copying & pasting code. AddRemoveRowWidget
>>>> takes care of the plus/minus button logic, disabling an entry that
>>>> hasn't been edited, and the arranging in rows.
>>>>
>>>> In order to use it, one is required to override a couple of abstract
>>>> methods that are dependent upon the specific entry implementation. An
>>>> example may be found in ProfilesInstanceTypeEditor, which handles
>>>> adding/removing network interfaces in the new/edit VM dialog.
>>>>
>>>> Yours, Lior.
>>>> _______________________________________________
>>>> Engine-devel mailing list
>>>> Engine-devel at ovirt.org
>>>> http://lists.ovirt.org/mailman/listinfo/engine-devel
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> Engine-devel mailing list
>>>> Engine-devel at ovirt.org
>>>> http://lists.ovirt.org/mailman/listinfo/engine-devel
> 



More information about the Engine-devel mailing list