OpenTTD Source: src/network/network_content_gui.h Source File

OpenTTD Source 14.0-beta1

network_content_gui.h
Go to the documentation of this file.
1 /*
2 * This file is part of OpenTTD.
3 * OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
4 * OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
5 * See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
6 */
7
10 #ifndef NETWORK_CONTENT_GUI_H
11 #define NETWORK_CONTENT_GUI_H
12
13 #include "network_content.h"
14 #include "../window_gui.h"
15 #include "../widgets/network_content_widget.h"
16
18 class BaseNetworkContentDownloadStatusWindow : public Window, ContentCallback {
19 protected:
20 uint total_bytes;
21 uint downloaded_bytes;
22 uint total_files;
23 uint downloaded_files;
24
25 uint32_t cur_id;
26 std::string name;
27
28 public:
33 BaseNetworkContentDownloadStatusWindow(WindowDesc *desc);
34
35 void Close([[maybe_unused]] int data = 0) override;
36 void UpdateWidgetSize(WidgetID widget, Dimension *size, [[maybe_unused]] const Dimension &padding, [[maybe_unused]] Dimension *fill, [[maybe_unused]] Dimension *resize) override;
37 void DrawWidget(const Rect &r, WidgetID widget) const override;
38 void OnDownloadProgress(const ContentInfo *ci, int bytes) override;
39 };
40
41 void BuildContentTypeStringList();
42
43 #endif /* NETWORK_CONTENT_GUI_H */
network_content.h
ContentCallback
Callbacks for notifying others about incoming data.
Definition: network_content.h:29
Dimension
Dimensions (a width and height) of a rectangle in 2D.
Definition: geometry_type.hpp:30
BaseNetworkContentDownloadStatusWindow
Base window for showing the download status of content.
Definition: network_content_gui.h:18
BaseNetworkContentDownloadStatusWindow::downloaded_files
uint downloaded_files
Number of files downloaded.
Definition: network_content_gui.h:23
BaseNetworkContentDownloadStatusWindow::cur_id
uint32_t cur_id
The current ID of the downloaded file.
Definition: network_content_gui.h:25
WindowDesc
High level window description.
Definition: window_gui.h:153
WidgetID
int WidgetID
Widget ID.
Definition: window_type.h:18
BuildContentTypeStringList
void BuildContentTypeStringList()
Build array of all strings corresponding to the content types.
Definition: network_content_gui.cpp:1029
Window::resize
ResizeInfo resize
Resize information.
Definition: window_gui.h:308
BaseNetworkContentDownloadStatusWindow::total_files
uint total_files
Number of files to download.
Definition: network_content_gui.h:22
BaseNetworkContentDownloadStatusWindow::total_bytes
uint total_bytes
Number of bytes to download.
Definition: network_content_gui.h:20
ContentInfo
Container for all important information about a piece of content.
Definition: tcp_content_type.h:52
BaseNetworkContentDownloadStatusWindow::name
std::string name
The current name of the downloaded file.
Definition: network_content_gui.h:26
BaseNetworkContentDownloadStatusWindow::downloaded_bytes
uint downloaded_bytes
Number of bytes downloaded.
Definition: network_content_gui.h:21
BaseNetworkContentDownloadStatusWindow::BaseNetworkContentDownloadStatusWindow
BaseNetworkContentDownloadStatusWindow(WindowDesc *desc)
Create the window with the given description.
Definition: network_content_gui.cpp:104
Window
Data structure for an opened window.
Definition: window_gui.h:267
Rect
Specification of a rectangle with absolute coordinates of all edges.
Definition: geometry_type.hpp:75