The International Simutrans Forum

Development => Patches & Projects => Incorporated Patches and Solved Bug Reports => Topic started by: eipi on October 06, 2015, 02:51:04 PM

Title: Theme support for more dialogues
Post by: eipi on October 06, 2015, 02:51:04 PM
These four patches add theme support for the convoy window, the convoy detail window, the halt window and the depot window.

As regards the convoy window, I resized the speed bars such that they have the same length; in my opinion this looks better than the previous behaviour.
Which one do you think is better?
Title: Re: Theme support for more dialogues
Post by: Combuijs on October 06, 2015, 03:01:05 PM
I think the new one is better by a mile...
Title: Re: Theme support for more dialogues
Post by: TurfIt on October 06, 2015, 07:41:52 PM
1) convoy_detail.patch and convoy_window.patch conflict with each other. Can't apply both in either order.

2) convoy_window.patch does not compile:

In file included from gui/convoi_info_t.cc:10:0:
gui/convoi_info_t.h: In constructor 'convoy_info_t::convoy_info_t(convoihandle_t)':
gui/convoi_info_t.h:70:19: warning: 'convoy_info_t::scrolly' will be initialized after [-Wreorder]
gui/convoi_info_t.h:69:17: warning:   'gui_textarea_t convoy_info_t::freight_text' [-Wreorder]
gui/convoi_info_t.cc:97:1: warning:   when initialized here [-Wreorder]
In file included from gui/convoi_info_t.cc:10:0:
gui/convoi_info_t.h:69:17: warning: 'convoy_info_t::freight_text' will be initialized after [-Wreorder]
gui/convoi_info_t.h:52:13: warning:   'obj_view_t convoy_info_t::view' [-Wreorder]
gui/convoi_info_t.cc:97:1: warning:   when initialized here [-Wreorder]
gui/convoi_info_t.cc: In member function 'virtual void convoy_info_t::draw(scr_coord, scr_size)':
gui/convoi_info_t.cc:263:42: error: 'magic_convoy_detail' was not declared in this scope
gui/convoi_info_t.cc: In member function 'virtual bool convoy_info_t::action_triggered(gui_action_creator_t*, value_t)':

gui/convoi_info_t.cc:413:56: error: 'magic_convoy_detail' was not declared in this scope
In file included from gui/convoi_info_t.cc:10:0:
gui/convoi_info_t.h: In constructor 'convoy_info_t::convoy_info_t()':
gui/convoi_info_t.h:70:19: warning: 'convoy_info_t::scrolly' will be initialized after [-Wreorder]
gui/convoi_info_t.h:69:17: warning:   'gui_textarea_t convoy_info_t::freight_text' [-Wreorder]
gui/convoi_info_t.cc:630:1: warning:   when initialized here [-Wreorder]
In file included from gui/convoi_info_t.cc:10:0:
gui/convoi_info_t.h:69:17: warning: 'convoy_info_t::freight_text' will be initialized after [-Wreorder]
gui/convoi_info_t.h:52:13: warning:   'obj_view_t convoy_info_t::view' [-Wreorder]
gui/convoi_info_t.cc:630:1: warning:   when initialized here [-Wreorder]


3) From your convoi window screenshot, the route_bar was made longer. There's frequently insufficient space for the name of the next stop currently, extending the bar length makes this worse. (was also made worse when ellipsis started appearing...)

4) IMO, scroll bars belong adjacent to the window frame (no margin). Looks ridiculous having a scroll bar floating in the middle of the dialog.

5) Scroll panes need to be sized to fit an integral number of text rows. i.e. The last row of text shouldn't be horizontally clipped. e.g. the patched convoi detail window with the floating scroll bar. (The 'themes' patches from day one have messed this up...)

6) In the depot window, the vehicle action button and filter are purposely to the right leaving room for the vehicles stored here text and show all, show obsolete buttons. Moving them as per the patch results in overlapping text.

7) The vehicle info column 2 deliberately starts one row lower to allow room for the vehicle name which spans both columns. Now overlapping text with the patch.

8 ) In the halt info window, it would make sense to move the status color bar under the viewport; For consistency with the factory info window.

9) Nice to see scrolly text being clipped at the margin rather than the window frame once again. Shouldn't ellipsis be everywhere or nowhere?

10) convoi != convoy. convoi is untranslatable. convoy as an English word does not describe a simutrans convoi.

11) Patch files are full of unrelated whitespace changes. Frequently removing horizontal whitespace that is deliberately there for readability, but also adding whitespace where it wasn't before - totally inconsistent. Adding would be good except there's so much it's completely hiding the 'theme support' changes. (and yes there was never agreement on updating coding_style.txt, so maybe it is a free for all, but I hate seeing readability degraded...)

Title: Re: Theme support for more dialogues
Post by: Ters on October 06, 2015, 08:03:19 PM
Quote from: TurfIt on October 06, 2015, 07:41:52 PM
4) IMO, scroll bars belong adjacent to the window frame (no margin). Looks ridiculous having a scroll bar floating in the middle of the dialog.

The load game window has a scrollbar that isn't next to the window edge. In that case it would look a bit silly having it at the edge, in my opinion. A few other places have the scrollbar far from the edge of the window, as only a small list in a big dialog is scrolled. For the factory dialog, having the scrollbar at the edge makes perfect sense, since it's not just a simple list that is scrolled, but a big part of that window's contents. The vehicle and station windows is in some gray area in between.

Quote from: TurfIt on October 06, 2015, 07:41:52 PM
10) convoi != convoy. convoi is untranslatable. convoy as an English word does not describe a simutrans convoi.

In fact, convoi is not a word in any language Simutrans is coded in. Whatever its origin is, it describes a concept that doesn't seem to have a name. The closest existing term that isn't unique to one mode of transport is perhaps vehicle, but that word can also describe the individual parts.
Title: Re: Theme support for more dialogues
Post by: TurfIt on October 06, 2015, 08:14:41 PM
Quote from: Ters on October 06, 2015, 08:03:19 PM
The load game window has a scrollbar that isn't next to the window edge. In that case it would look a bit silly having it at the edge, in my opinion. A few other places have the scrollbar far from the edge of the window, as only a small list in a big dialog is scrolled. For the factory dialog, having the scrollbar at the edge makes perfect sense, since it's not just a simple list that is scrolled, but a big part of that window's contents. The vehicle and station windows is in some gray area in between.

There's always the exception! Agreed the load game dialog looks best as is.  There are a lot of dialogs in the game with a scrolly pane in the bottom of the window that have auto hiding vertical and horizontal scroll bars. These scrolly pane scroll bars are specifically the ones that belong with no margin. There's even special code in the scroll bars to handle their placement as such.


Quote from: Ters on October 06, 2015, 08:03:19 PM
In fact, convoi is not a word in any language Simutrans is coded in. Whatever its origin is, it describes a concept that doesn't seem to have a name. The closest existing term that isn't unique to one mode of transport is perhaps vehicle, but that word can also describe the individual parts.

Exactly the issue with these 'helpful' translations...
Title: Re: Theme support for more dialogues
Post by: prissi on October 08, 2015, 09:20:00 PM
I personally think a scrollbar is best at the edge of a window if there are not very good rules against ist.

Convoi is the half-haertly translation attempt from Konvoi, which is a german word (albeit a rarely used one) and means consist (bunch of vehicles).
Title: Re: Theme support for more dialogues
Post by: Ters on October 09, 2015, 05:36:06 AM
Quote from: prissi on October 08, 2015, 09:20:00 PM
Convoi is the half-haertly translation attempt from Konvoi, which is a german word (albeit a rarely used one) and means consist (bunch of vehicles).

Interesting. My dictionary translates Konvoi simply to konvoi, which has the same meaning in Norwegian as convoy in English: A bunch of technically independent vehicles that travel together for company (whatever benefit they gain from it, but usually for the protection of some of them).
Title: Re: Theme support for more dialogues
Post by: Dwachs on October 09, 2015, 06:43:51 AM
The German 'Konvoi' is similar to English 'convoy': independent vehicles travelling together, mostly used in connection with military: convoys of military trucks or ships. (Think Battle of the Atlantic in WW2).

Imho the use of 'convoi' (aka Konvoi) in the code is not the direct German translation. On the other hand, I do not know of any word (German or English) that precisely describes what 'convoi_t' is code-wise. [/off-topic]
Title: Re: Theme support for more dialogues
Post by: Vladki on October 09, 2015, 04:33:29 PM
I always thought that convoy/i in simutrans was just used as generalisation of train for non-rail transports.
Title: Re: Theme support for more dialogues
Post by: Ters on October 09, 2015, 10:48:45 PM
Quote from: Vladki on October 09, 2015, 04:33:29 PM
I always thought that convoy/i in simutrans was just used as generalisation of train for non-rail transports.

It is, but that's not what convoy means in any other context, so we should not use it outside the code. (Train is by the way usable for road as well, although not as generic in English as in German and Norwegian.)
Title: Re: Theme support for more dialogues
Post by: Isaac Eiland-Hall on October 10, 2015, 08:34:34 PM
I think "convoi" is a useful term to have - meaning something like a "consist", but useful for any form of transportation, be it trucks with trailers, tugboats, or any of the things that use "trailers" to add capacity, like ships or whatever that show a floating envelope to carry mail (dunno if that's still in use, just remember seeing once or twice in a pak)...

I don't think there's a relevant term in English that covers that specific thing entirely. :)
Title: Re: Theme support for more dialogues
Post by: Ters on October 10, 2015, 08:49:18 PM
The problem is that it looks so similar to convoy that people might confuse them, especially as many/most of use don't have English as out native language.