tags:

views:

189

answers:

8

The question may sound silly and it might not even be a programming question. At least it's a programming meta question (about talking about programming).

What I want to know is if there is a generic, widely understood term for GUI elements. I have programmed so many GUI toolkits, I couldn't tell if Windows-only programmers know what the Java crowd means when they talk about widgets. Does a gtk-user know what a control is? And does anybody besides me remember gadgets?

p.s. "GUI element" is not the answer I am looking for ;-)

+1  A: 

Component?

Sean Bright
+5  A: 

Qt uses widgets, Swing uses Components. Most gui programmers will understand what you mean when you say a scroll-widget/component.

Marius
When I taught programming in a school, I got a kick out of using the word "widget" in kids reports. Guaranteed that everyone who proof-read circled it...
Matthew Schinckel
Could you explain that for non native speakers?
EricSchaefer
A: 

I would say "element". "Component" evokes COM object for me.

CommanderZ
s'funny because "element" evokes XML for me! And nothing evokes COM :)
MrWiggles
A: 

I don't think there is one term to cover it, but window, component, widget and control are all in widespread use, so I would think most developers understand them all, although they may mean slightly different things in different frameworks (i.e. which is the lowest common class/component in the framework).

Actually, I think GUi element (or graphical element/interface element) is a pretty good catch-all term.

Anders Sandvig
A: 

As noted in this SO question, naming is hard, and that makes this question very much program-related!

As specified in the javadoc of org.eclipse.swt.widgets.Widget, a Widget refers to "user interface objects" in general.
So it might be more precise than the too-generic term "component".

VonC
+2  A: 

As component is to generic, I'd say: Visual component.

It just describes exactly what it is: a visible, self-contained element, that does some well-defined task.

MicSim
+2  A: 

According to my Human-Computer Interaction teacher and to the this HCI manual the name is "widget".

tunnuz
A: 

Symbian (currently) uses controls, but S60 is in the process of moving to QT so this is likely to move to widgets.

I'd suggest that you stick to the convention of your GUI framework. That way people who invested the time to learn the framework will know what you mean, and those who don't wouldn't know what you meant till they did anyway. If it's for a framework independent article or some such, define what you mean either at the start or in an appendix (for example: control - a GUI element, also commonly known as component, widget, etc).

workmad3