<snip> multi-window, multi-language GUI... <snip>
Haven't done this myself in MATLAB, but I'd suggest using a structure
containing a sub-structure for each language, whereby each text is in
a named field in the sub-structure. After selecting the desired
sub-structure, you may then be able to automate the filling of text
into your uicontrols e.g. by using the text field names as tag
T.EN.Hello = 'Welcome';
T.DE.Hello = 'Willkommen';
Note that English texts in general are mostly shorter than in many
other languages, so be generous with space in your layouts.
You may also find it useful to parameterise some texts and use e.g.
strrep(x,'%1','...') when generating them...