Re: Dialog.addRadioButtonGroup labels alignment

Posted by Michael Schmid on
URL: http://imagej.273.s1.nabble.com/Dialog-addRadioButtonGroup-labels-alignment-tp5020956p5020972.html

Hi Kaiming & everybody,

the justification of the labels of Checkboxes (The RadioButtonGroup is
named CheckboxGroup in Java) in a GridLayout depends on the operating
system; I can confirm that they are center-aligned also on Linux Ubuntu
16.04 (Java 1.8); it does not look nice.
On my old Mac (OS X 10.6, Java 1.6) the labels are nicely left-justified.
This is not controlled by ImageJ code, it depends how Java AWT
implements its interaction with the toolkit of the operating system.

Also the image on the Java documentation page for Checkboxes
   https://docs.oracle.com/javase/8/docs/api/java/awt/Checkbox.html
does not look like nice alignment...

I guess that the alignment would be fine with a GridBagLayout instead of
a GridLayout, but then the columns of a multi-column RadioButtonGroup
would have different width. I think that this would be also undesirable.

By the way, you don't need a macro for testing what it looks like on
your system; the Plugins>Utilities>Search command uses a  RadioButtonGroup.
And here is a macro including multi-column RadioButtonGroups:
   http://mirror.imagej.net/macros/examples/RadioButtonDemo.txt


Michael
________________________________________________________________
On 17/07/2018 18:29, Kaiming Yin wrote:

> I tried without spaces, and in Linux-FIJI it looks like to align the labels
> centrally, see attached image.
>
> Thanks,
> Kaiming
>
> On 17 July 2018 at 17:19, Straatman, Kees (Dr.) <[hidden email]>
> wrote:
>
>> If you want to align to the left, just delete all the spaces
>>
>> Dialog.create("Different ImageJ versions"); Dialog.setInsets(0, 20, 0);
>> items = newArray("ImageJ", "ImageJv1.52e", "ImageJ v1.52a to ImageJ
>> v1.52e","ImageJv1.50 to ImageJ v1.51 to ImageJ v1.52e");
>> Dialog.addRadioButtonGroup("Versions:", items, 4, 1,"ImageJ");
>> Dialog.show();
>>
>>
>> Best wishes
>>
>> Kees
>>
>> -----Original Message-----
>> From: Kaiming Yin [mailto:[hidden email]]
>> Sent: 17 July 2018 17:00
>> To: [hidden email]
>> Subject: Re: Dialog.addRadioButtonGroup labels alignment
>>
>> Dear Kees,
>>
>> Thanks for your reply and I also want to align all menu labels to the left.
>> I don't know how to do it with Linux version FIJI and the only way I see
>> is to add spaces to adjust the positions of labels little by little which
>> is time consuming. So I wonder if there are any parameters which can define
>> the position/alignment of labels in ButtonGroup or even other similar tools
>> which need a list of labels too?
>>
>> Thanks,
>> Kaiming
>>
>> On 17 July 2018 at 16:51, Straatman, Kees (Dr.) <[hidden email]>
>> wrote:
>>
>>> Dear Kaiming,
>>>
>>> Do you want to centre the menu labels, as that is what your image shows ?
>>>
>>> It seems there is a difference in the way the menu is displayed in
>>> Windows compared to Linux. In Windows (same versions as you use) the
>>> spaces have no effect on the menu labels as I showed in my previous
>>> post, only the title "Versions" is positioned different when the
>>> spaces are there compared with code without spaces. All menu labels
>>> are aligned to the left (and I must say I also would prefer this).
>>>
>>> Best wishes
>>>
>>> Kees
>>>
>>>
>>> Dr Ir K.R. Straatman
>>> Senior Experimental Officer
>>> Advanced Imaging Facility
>>> Centre for Core Biotechnology Services University of Leicester
>>> www.le.ac.uk/advanced-imaging-facility
>>>
>>>
>>> -----Original Message-----
>>> From: Kaiming Yin [mailto:[hidden email]]
>>> Sent: 17 July 2018 15:53
>>> To: [hidden email]
>>> Subject: Re: Dialog.addRadioButtonGroup labels alignment
>>>
>>> Dear Kees,
>>>
>>> Sorry for my unclear question. Here I attach the command lines I ran
>>> in a macro in FIJI and also the output panel in attached image. I'm
>>> running Ubuntu 18.04 and FIJI version is ImageJ 2.0.0-rc-68/1.52e;
>>> java 1.8.0_66 [64-bit].
>>>
>>> Command lines in macro:
>>>
>>> Dialog.create("Different ImageJ versions"); Dialog.setInsets(0, 20, 0);
>>> items = newArray("ImageJ                              ", "ImageJ
>>> v1.52e                ", "ImageJ v1.52a to ImageJ v1.52e       ", "
>> ImageJ
>>> v1.50 to ImageJ v1.51 to ImageJ v1.52e");
>>> Dialog.addRadioButtonGroup("             Versions:", items, 4, 1,
>>> "ImageJ                              ");
>>> Dialog.show();
>>>
>>> Thanks,
>>> Kaiming
>>>
>>> On 17 July 2018 at 08:44, Straatman, Kees (Dr.) <[hidden email]>
>>> wrote:
>>>
>>>> Dear Kaiming,
>>>>
>>>> Not sure what the problem is. Without all the spaces the labels
>>>> align to the left as well see attached image.
>>>>
>>>> Kees
>>>>
>>>> -----Original Message-----
>>>> From: Kaiming Yin [mailto:[hidden email]]
>>>> Sent: 16 July 2018 18:42
>>>> To: [hidden email]
>>>> Subject: Dialog.addRadioButtonGroup labels alignment
>>>>
>>>> Dear guys,
>>>>
>>>> Can I ask if I want to add a Dialog.addRadioButtonGroup in my panel,
>>>> and the button group has four choices with labels at different
>>>> lengths for each choice. How can I align the four labels to the left
>>>> in one
>>> column please?
>>>> For example, currently I'm using command lines as below:
>>>>
>>>> items = newArray("ImageJ                              ", "ImageJ
>>>> v1.52e                ", "ImageJ v1.52a to ImageJ v1.52e       ", "
>>> ImageJ
>>>> v1.50 to ImageJ v1.51 to ImageJ v1.52e");
>>>>
>>>> Dialog.addRadioButtonGroup("             Versions:", items, 4, 1,
>>>> "ImageJ                              ");
>>>>
>>>> Currently I use spaces to try to align all the labels but seems
>>>> quite clumsy. Is there any other way to do this?
>>>>
>>>> Thanks,
>>>> Kaiming
>>>>
>>>> --
>>>> ImageJ mailing list: http://imagej.nih.gov/ij/list.html
>>>>
>>>> --
>>>> ImageJ mailing list: http://imagej.nih.gov/ij/list.html
>>>>
>>>
>>> --
>>> ImageJ mailing list: http://imagej.nih.gov/ij/list.html
>>>
>>> --
>>> ImageJ mailing list: http://imagej.nih.gov/ij/list.html
>>>
>>
>> --
>> ImageJ mailing list: http://imagej.nih.gov/ij/list.html
>>
>> --
>> ImageJ mailing list: http://imagej.nih.gov/ij/list.html
>>
>
> --
> ImageJ mailing list: http://imagej.nih.gov/ij/list.html
>

--
ImageJ mailing list: http://imagej.nih.gov/ij/list.html