qskinny/examples/iot-dashboard/DaytimeSkin.cpp

70 lines
1.8 KiB
C++
Raw Normal View History

2020-05-22 13:46:17 +00:00
#include "DaytimeSkin.h"
2020-09-23 15:45:06 +00:00
#include "Box.h"
2020-09-30 12:40:59 +00:00
#include "Diagram.h"
2020-09-23 15:45:06 +00:00
#include "LightIntensity.h"
#include "MainContent.h"
2020-06-12 10:53:28 +00:00
#include "MenuBar.h"
2020-09-18 15:36:33 +00:00
#include "QskShadowedRectangle.h"
#include "QskShadowedRectangleSkinlet.h"
2020-09-23 15:45:06 +00:00
#include "PieChartPainted.h"
#include "UpAndDownButton.h"
2020-05-22 13:46:17 +00:00
#include <QskBoxBorderMetrics.h>
#include <QskBoxBorderColors.h>
#include <QskFunctions.h>
2020-09-30 12:40:59 +00:00
#include <QskTextLabel.h>
#include <QFontDatabase>
namespace
{
2020-06-12 13:51:13 +00:00
static inline QFont qskFont( qreal pointSize, bool semiBold = false )
{
2020-09-07 15:25:32 +00:00
QFont font( "Proxima Nova" );
2020-08-12 13:54:11 +00:00
2020-09-07 15:25:32 +00:00
if( semiBold )
2020-08-12 13:54:11 +00:00
{
2020-09-07 15:25:32 +00:00
font.setWeight( QFont::Bold );
2020-08-12 13:54:11 +00:00
}
font.setPointSizeF( pointSize /*/ qskDpiScaled( 1.0 )*/ );
return font;
}
}
2020-05-22 13:46:17 +00:00
DaytimeSkin::DaytimeSkin( QObject* parent ) : QskSkin( parent )
{
2020-09-18 15:36:33 +00:00
declareSkinlet< QskShadowedRectangle, QskShadowedRectangleSkinlet >();
2020-05-22 13:46:17 +00:00
initHints();
}
void DaytimeSkin::initHints()
{
QFontDatabase db;
2020-09-07 15:25:32 +00:00
db.addApplicationFont( ":/fonts/ProximaNova-Regular.otf" ); // ### use fontconfig
setFont( QskSkin::DefaultFont, qskFont( 12 ) );
2020-09-07 15:25:32 +00:00
setFont( QskSkin::TinyFont, qskFont( 9 ) );
setFont( QskSkin::SmallFont, qskFont( 10 ) );
2020-06-12 13:51:13 +00:00
setFont( QskSkin::MediumFont, qskFont( 13 ) );
2020-08-12 13:54:11 +00:00
setFont( QskSkin::LargeFont, qskFont( 20 ) );
setFont( QskSkin::HugeFont, qskFont( 27, true ) );
2020-09-07 15:25:32 +00:00
setFont( DaytimeSkin::TitleFont, qskFont( 10, true ) );
2020-08-12 15:11:00 +00:00
2020-09-23 15:45:06 +00:00
setGradient( MainContent::Panel, {"#fbfbfb"} );
setGradient( Box::Panel, {"#ffffff"} );
setColor( LightDisplay::Panel, "#ffffff" );
setColor( PieChartPainted::Panel, "#ffffff" );
setGradient( RoundButton::Panel, {"#f7f7f7"} );
2020-09-30 12:40:59 +00:00
setBoxBorderColors( WeekdayBox::Panel, {"#f4f4f4"} );
setColor( QskTextLabel::Text, "#000000" );
2020-09-23 15:45:06 +00:00
2020-09-07 15:25:32 +00:00
QColor color( Qt::white );
color.setAlphaF( 0.09 );
2020-06-12 10:53:28 +00:00
setGradient( MenuItem::Panel | QskControl::Hovered, color );
2020-05-22 13:46:17 +00:00
}