OpenTTD: src/widgets/dropdown_type.h File Reference

OpenTTD

- Main Page
- Related Pages
- Modules
- Namespaces
- Data Structures
- Files

- File List
- Globals

Data Structures | Typedefs | Functions
dropdown_type.h File Reference

Types related to the drop down widget. More...

`#include "../window_type.h"`
`#include "../gfx_func.h"`
`#include "../core/smallvec_type.hpp"`
`#include "table/strings.h"`

Go to the source code of this file.

## Data Structures
class | DropDownListItem
| Base list item class from which others are derived. More...
class | DropDownListStringItem
| Common string list item. More...
class | DropDownListParamStringItem
| String list item with parameters. More...
class | DropDownListCharStringItem
| List item containing a C char string. More...

## Typedefs
typedef AutoDeleteSmallVector < const DropDownListItem *, 4 > | DropDownList
| A drop down list is a collection of drop down list items.

## Functions
void | ShowDropDownListAt (Window *w, const DropDownList *list, int selected, int button, Rect wi_rect, Colours wi_colour, bool auto_width=false, bool instant_close=false)
| Show a drop down list.
void | ShowDropDownList (Window *w, const DropDownList *list, int selected, int button, uint width=0, bool auto_width=false, bool instant_close=false)
| Show a drop down list.

## Detailed Description

Types related to the drop down widget.

Definition in file dropdown_type.h.

## Function Documentation

void ShowDropDownList | ( | Window * | w,
|  | const DropDownList * | list,
|  | int | selected,
|  | int | button,
|  | uint | width,
|  | bool | auto_width,
|  | bool | instant_close
| ) |  |

Show a drop down list.

Parameters

  w | Parent window for the list.
  list | Prepopulated DropDownList. Will be deleted when the list is closed.
  selected | The initially selected list item.
  button | The widget within the parent window that is used to determine the list's location.
  width | Override the width determined by the selected widget.
  auto_width | Maximum width is determined by the widest item in the list.
  instant_close | Set to true if releasing mouse button should close the list regardless of where the cursor is.

Definition at line 401 of file dropdown.cpp.

References _current_text_dir, NWidgetCore::colour, NWidgetBase::current_x, NWidgetBase::current_y, NWidgetCore::disp_flags, Window::GetWidget(), Window::LowerWidget(), ND_DROPDOWN_ACTIVE, NWID_BUTTON_DROPDOWN, NWidgetBase::pos_x, NWidgetBase::pos_y, Window::SetWidgetDirty(), ShowDropDownListAt(), TD_RTL, and NWidgetBase::type.

Referenced by GameOptionsWindow::OnClick(), ReplaceVehicleWindow::OnClick(), BuildAirportWindow::OnClick(), GenerateLandscapeWindow::OnClick(), VehicleGroupWindow::OnClick(), StoryBookWindow::OnClick(), NewGRFWindow::OnClick(), CreateScenarioWindow::OnClick(), OrdersWindow::OnClick(), VehicleListWindow::OnClick(), GameSettingsWindow::OnClick(), IndustryCargoesWindow::OnClick(), PopupMainToolbMenu(), SetDateWindow::ShowDateDropDown(), ShowDropDownMenu(), and ToolbarOptionsClick().

void ShowDropDownListAt | ( | Window * | w,
|  | const DropDownList * | list,
|  | int | selected,
|  | int | button,
|  | Rect | wi_rect,
|  | Colours | wi_colour,
|  | bool | auto_width,
|  | bool | instant_close
| ) |  |

Show a drop down list.

Parameters

  w | Parent window for the list.
  list | Prepopulated DropDownList. Will be deleted when the list is closed.
  selected | The initially selected list item.
  button | The widget which is passed to Window::OnDropdownSelect and OnDropdownClose. Unless you override those functions, this should be then widget index of the dropdown button.
  wi_rect | Coord of the parent drop down button, used to position the dropdown menu.
  auto_width | The width is determined by the widest item in the list, in this case only one of left or right is used (depending on text direction).
  instant_close | Set to true if releasing mouse button should close the list regardless of where the cursor is.

Definition at line 337 of file dropdown.cpp.

References _current_text_dir, SmallVector< T, S >::Begin(), DeleteWindowById(), SmallVector< T, S >::End(), GetMainViewBottom(), GetMainViewTop(), Window::left, SmallVector< T, S >::Length(), max(), TD_RTL, Window::top, and WC_DROPDOWN_MENU.

Referenced by NewGRFParametersWindow::OnClick(), AISettingsWindow::OnClick(), GameSettingsWindow::OnClick(), and ShowDropDownList().