IndustryDirectoryWindow Class Reference

The list of industries. More...

Inheritance diagram for IndustryDirectoryWindow:

Window ZeroedMemoryAllocator

Public Member Functions

 IndustryDirectoryWindow (const WindowDesc *desc, WindowNumber number)
virtual void OnPaint ()
 This window is currently being repainted.
virtual void OnClick (Point pt, int widget)
 A click with the left mouse button has been made on the window.
virtual void OnDropdownSelect (int widget, int index)
 A dropdown option associated to this window has been selected.
virtual void OnResize (Point new_size, Point delta)
 Called when the window got resized.
virtual void OnInvalidateData (int data)
 Some data on this window has become invalid.

Protected Member Functions

void BuildIndustriesList ()
 (Re)Build industries list
void SortIndustriesList ()
 Sort the industries list.

Static Protected Member Functions

static int GetCargoTransportedPercentsIfValid (const Industry *i, uint id)
 Returns percents of cargo transported if industry produces this cargo, else -1.
static int GetCargoTransportedSortValue (const Industry *i)
 Returns value representing industry's transported cargo percentage for industry sorting.
static int CDECL IndustryNameSorter (const Industry *const *a, const Industry *const *b)
 Sort industries by name.
static int CDECL IndustryTypeSorter (const Industry *const *a, const Industry *const *b)
 Sort industries by type and name.
static int CDECL IndustryProductionSorter (const Industry *const *a, const Industry *const *b)
 Sort industries by production and name.
static int CDECL IndustryTransportedCargoSorter (const Industry *const *a, const Industry *const *b)
 Sort industries by transported cargo and name.

Protected Attributes

GUIIndustryList industries

Static Protected Attributes

static Listing last_sorting = {false, 0}
static const Industrylast_industry = NULL
static const StringID sorter_names []
static
GUIIndustryList::SortFunction
*const 
sorter_funcs []

Detailed Description

The list of industries.

Definition at line 723 of file industry_gui.cpp.


Member Function Documentation

static int IndustryDirectoryWindow::GetCargoTransportedPercentsIfValid ( const Industry i,
uint  id 
) [inline, static, protected]

Returns percents of cargo transported if industry produces this cargo, else -1.

Parameters:
i industry to check
id cargo slot
Returns:
percents of cargo transported, or -1 if industry doesn't use this cargo slot

Definition at line 760 of file industry_gui.cpp.

References Industry::last_month_pct_transported, lengthof, and Industry::produced_cargo.

Referenced by GetCargoTransportedSortValue().

static int IndustryDirectoryWindow::GetCargoTransportedSortValue ( const Industry i  )  [inline, static, protected]

Returns value representing industry's transported cargo percentage for industry sorting.

Parameters:
i industry to check
Returns:
value used for sorting

Definition at line 775 of file industry_gui.cpp.

References GetCargoTransportedPercentsIfValid(), and Swap().

Referenced by IndustryTransportedCargoSorter().

virtual void IndustryDirectoryWindow::OnClick ( Point  pt,
int  widget 
) [inline, virtual]

A click with the left mouse button has been made on the window.

Parameters:
pt the point inside the window that has been clicked.
widget the clicked widget.

Reimplemented from Window.

Definition at line 912 of file industry_gui.cpp.

References _ctrl_pressed, Scrollbar::cap, IsInsideMM(), Scrollbar::pos, Window::SetDirty(), Window::vscroll, and Point::y.

virtual void IndustryDirectoryWindow::OnDropdownSelect ( int  widget,
int  index 
) [inline, virtual]

A dropdown option associated to this window has been selected.

Parameters:
widget the widget (button) that the dropdown is associated with.
index the element in the dropdown that is selected.

Reimplemented from Window.

Definition at line 941 of file industry_gui.cpp.

References Window::SetDirty().

virtual void IndustryDirectoryWindow::OnResize ( Point  new_size,
Point  delta 
) [inline, virtual]

Called when the window got resized.

Parameters:
new_size the new size of the window.
delta the amount of which the window size changed.

Reimplemented from Window.

Definition at line 950 of file industry_gui.cpp.

References Scrollbar::cap, Window::vscroll, and Point::y.

virtual void IndustryDirectoryWindow::OnInvalidateData ( int  data  )  [inline, virtual]

Some data on this window has become invalid.

Parameters:
data information about the changed data.

Reimplemented from Window.

Definition at line 955 of file industry_gui.cpp.

References Window::InvalidateWidget().


Field Documentation

const StringID IndustryDirectoryWindow::sorter_names [static, protected]

Initial value:

 {
  STR_SORT_BY_DROPDOWN_NAME,
  STR_SORT_BY_TYPE,
  STR_SORT_BY_PRODUCTION,
  STR_SORT_BY_TRANSPORTED,
  INVALID_STRING_ID
}

Definition at line 730 of file industry_gui.cpp.

GUIIndustryList::SortFunction *const IndustryDirectoryWindow::sorter_funcs [static, protected]


The documentation for this class was generated from the following file:

Generated on Sun Mar 15 22:50:17 2009 for openttd by  doxygen 1.5.6