Copy dialog layout
Moderators: Hacker, petermad, Stefan2, white
No, you don't need to increase other buttons' width, Options button should be made smaller. Buttons should be right-aligned. Options button may be moved to the right of 'Only files of this type:' at all (there is a nice place there and its disappearing won't bring empty spaces). Also borders/sizes should be aligned. All this required if you don't want to make dialog like this.
2MVV: The fundamental problem is that author simply does not see these things. No offense intended, that's just the fact. :) Few pixels here, few pixels there, ... Compared to some others, current copy dialog is a beauty. Check Synchronize directories, Multi-Rename Tool or basically any page in Options and you'll find something wrong everywhere. Misaligned or clipped controls or at least always present uneven spacing. I don't even see any effective way how to report all these things.
The best solution would be to export dialog definitions (no problem to get them from 32-bit TC) and get them back in Delphi as dummy event-less dialogs. Then fix the positions and sizes (no big changes at this point) and share the result with author. He might go for that, it wouldn't be too much work for him. At first sight it does not look too hard. But there are many custom controls to handle. Also it would have to be tested with all languages, so there's need to link it with language files and some quick switching mechanism. In the end, quite a lot of work I'm affraid, especially for "preparation phase".
The best solution would be to export dialog definitions (no problem to get them from 32-bit TC) and get them back in Delphi as dummy event-less dialogs. Then fix the positions and sizes (no big changes at this point) and share the result with author. He might go for that, it wouldn't be too much work for him. At first sight it does not look too hard. But there are many custom controls to handle. Also it would have to be tested with all languages, so there's need to link it with language files and some quick switching mechanism. In the end, quite a lot of work I'm affraid, especially for "preparation phase".
My idea is to start with small things, aligning controls, making spacing between them consistent, etc. There's nothing to not like about that. And only introduce new ideas when it's already established, how cool all those tiny modifications were so far. :)
Important thing is the format of changes. Check http://web.hisoftware.cz/sob/tc/TCDialogTesterSample.7z. It's in Delphi 5 (I don't have 2) and it has several other limitations (it shows that I haven't done much in Delphi for too long). But the basic idea is simple:
Important thing is the format of changes. Check http://web.hisoftware.cz/sob/tc/TCDialogTesterSample.7z. It's in Delphi 5 (I don't have 2) and it has several other limitations (it shows that I haven't done much in Delphi for too long). But the basic idea is simple:
- get dfms from TC
- automatically create dialogs (not yet, but I'm sure it's possible) without changing anything in dfm (so it needs fake custom controls)
- create translation function for each dialog (I'm affraid this won't be possible to automate)
- move controls as needed (currently not possible, because I missed something obvious and while Delphi compiles the thing, it refuses to show me the dialog for editing)
- run the application and test that texts in all languages fit (perfect for current "can't make buttons equally wide" problem, because it can be easily tested if they perhaps can be all a little smaller)
I didn't test it yet, but it seems that conversion is no problem at all, so I wouldn't worry too much about it.
The real problem seems to be translations, because changes must be tested with all languages, to be sure that everything fits and it must be really easy, otherwise nobody is going to do it. And I don't see any easy (= automatic) way how to assign strings from language file to individual controls in each dialog. So this is probably what blows up the whole idea.
The real problem seems to be translations, because changes must be tested with all languages, to be sure that everything fits and it must be really easy, otherwise nobody is going to do it. And I don't see any easy (= automatic) way how to assign strings from language file to individual controls in each dialog. So this is probably what blows up the whole idea.
The main problem is that in any case, I first have to say that control X should use string #x from language file. Unless I missed something, it would have to be done manually for all dialogs and all controls, one after another.
About different fonts, sizes and DPIs, you can't test or even expect it to work fine with everything. I'd stick with Windows defaults, which means Segoe UI 9 as largest supported font. Which btw, does not work well for all languages in current TC.
About different fonts, sizes and DPIs, you can't test or even expect it to work fine with everything. I'd stick with Windows defaults, which means Segoe UI 9 as largest supported font. Which btw, does not work well for all languages in current TC.
As I see, most of translate strings we can associate in two ways:
1. Generic buttons (object has Tag with value 4000-4005): object.Tag = LNG string index.
2. Context items (Tag with small value): object.Tag + Translate1.Tag = LNG string index.
Problem is that many items don't have a tag, or their contents generated dynamically.
1. Generic buttons (object has Tag with value 4000-4005): object.Tag = LNG string index.
2. Context items (Tag with small value): object.Tag + Translate1.Tag = LNG string index.
Problem is that many items don't have a tag, or their contents generated dynamically.
- ghisler(Author)
- Site Admin
- Posts: 50541
- Joined: 2003-02-04, 09:46 UTC
- Location: Switzerland
- Contact:
The problem isn't that I don't see it - I just can't make the Options button smaller because its width may actually be needed by one of the many languages supported by TC...
Author of Total Commander
https://www.ghisler.com
https://www.ghisler.com
2ghisler(Author): About what you (don't) see, if you are refering to my little criticism above, I mean all those tiny details in general (misaligned, inconsistent, clipped things and such).
Just for current copy dialog (http://web.hisoftware.cz/sob/tc/copy-dialog.png): (1) is aligned correctly. Button (2) is too much to the right and it also does not align correctly to combo on the left. It's two pixels too hight in Classic theme and shifted up by one pixel in Aero. About the difference between the two, unfortunately it seems system is to blame, because the drawing size is a little different with and without themes. So +-1px is what we must live with. But in any case, moving it down by one pixel would help both. Then there are buttons with big space at right (3) aligned with (1) but on the left it's completely off (4). Label (5) could also use a little more width and I never got the big space below, it does not wrap or anything.
Few other examples from elsewhere as bonus: http://web.hisoftware.cz/sob/tc/inconsistencies.png
-
And the Options button, find a "new home" for it somewhere else as discussed in other thread and problem solved. :)
Just for current copy dialog (http://web.hisoftware.cz/sob/tc/copy-dialog.png): (1) is aligned correctly. Button (2) is too much to the right and it also does not align correctly to combo on the left. It's two pixels too hight in Classic theme and shifted up by one pixel in Aero. About the difference between the two, unfortunately it seems system is to blame, because the drawing size is a little different with and without themes. So +-1px is what we must live with. But in any case, moving it down by one pixel would help both. Then there are buttons with big space at right (3) aligned with (1) but on the left it's completely off (4). Label (5) could also use a little more width and I never got the big space below, it does not wrap or anything.
Few other examples from elsewhere as bonus: http://web.hisoftware.cz/sob/tc/inconsistencies.png
-
And the Options button, find a "new home" for it somewhere else as discussed in other thread and problem solved. :)
- ghisler(Author)
- Site Admin
- Posts: 50541
- Joined: 2003-02-04, 09:46 UTC
- Location: Switzerland
- Contact:
Unfortunately the dialog elements have different dimentsions in classic and aero themes, so it's impossible to align them correctly in all cases. I would just do that for several weeks if I had to find and correct all these tiny differences. Sorry, I really don't have that free time. 

Author of Total Commander
https://www.ghisler.com
https://www.ghisler.com
I agree with you about differences between classic and aero. It's +-1px you can't do anything about (well in theory, as the differences are predictable... just kidding :).
But there are so many things that are equally off, no matter what theme is used. Like those button margins in multirename dialog. Or the whole options dialog where almost every page is somehow different. It does not affect usability, so it's not critical. But when people say TC does not look good, all these tiny details contribute to it.
I don't expect you to do anything about it now, but perhaps in long term, it might be a good idea to think about it.
But there are so many things that are equally off, no matter what theme is used. Like those button margins in multirename dialog. Or the whole options dialog where almost every page is somehow different. It does not affect usability, so it's not critical. But when people say TC does not look good, all these tiny details contribute to it.
I don't expect you to do anything about it now, but perhaps in long term, it might be a good idea to think about it.