In the general case, an application does not have the
ability to do these things, because these things are
controlled by the window manager. It may be possible
in certain cases, i.e., with window managers that provide
a mechanism for it, but if so it wouldn't be the least
bit portable: as soon as somebody runs the app under a
different window manager, it won't work. Probably the
most common way to accomplish these things is to eschew
the standard window widget altogether and draw your own
shape; media players such as yamp and xmms tend to do
this. However, this too is somewhat unportable, and I
don't think Tk provides the ability to do it. (Tk is,
after all, a widget set, and applications that do this
don't use a standard widget set; they have to draw just
about everything themselves, I think; at least, that's
the approach most of them seem to take.) And like I said,
it's unportable; xmms had to have a new frontend created
to run under Ion. (Fortunately, xmms has the functional
backend cleanly separated from the graphical frontend so
that this was easy to do; it also has a frontend for
Emacs and a text-based one for consoles and terminals.)

When putting a smiley right before a closing parenthesis, do you:

Use two parentheses: (Like this: :) )
Use one parenthesis: (Like this: :)
Reverse direction of the smiley: (Like this: (: )
Use angle/square brackets instead of parentheses
Use C-style commenting to set the smiley off from the closing parenthesis
Make the smiley a dunce: (:>
I disapprove of emoticons
Other