| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- /*
- This file is part of Telegram Desktop,
- the official desktop application for the Telegram messaging service.
- For license and copyright information please follow this link:
- https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
- */
- #include "statistics/widgets/chart_header_widget.h"
- #include "ui/painter.h"
- #include "styles/style_statistics.h"
- namespace Statistic {
- Header::Header(not_null<Ui::RpWidget*> parent)
- : Ui::RpWidget(parent)
- , _height(st::statisticsChartHeaderHeight) {
- }
- QString Header::title() const {
- return _title.toString();
- }
- void Header::setTitle(QString title) {
- _title.setText(st::statisticsHeaderTitleTextStyle, std::move(title));
- }
- int Header::resizeGetHeight(int newWidth) {
- return _height;
- }
- void Header::setSubTitle(QString subTitle) {
- _height = subTitle.isEmpty()
- ? st::statisticsHeaderTitleTextStyle.font->height
- : st::statisticsChartHeaderHeight;
- _subTitle.setText(
- st::statisticsHeaderDatesTextStyle,
- std::move(subTitle));
- }
- void Header::paintEvent(QPaintEvent *e) {
- auto p = Painter(this);
- p.fillRect(rect(), st::boxBg);
- p.setPen(st::windowActiveTextFg);
- _title.drawLeftElided(p, 0, 0, width(), width());
- p.setPen(st::windowSubTextFg);
- _subTitle.drawLeftElided(p, 0, _infoTop, width(), width());
- }
- void Header::resizeEvent(QResizeEvent *e) {
- _infoTop = e->size().height()
- - st::statisticsHeaderDatesTextStyle.font->height;
- }
- } // namespace Statistic
|