| 
									
										
										
										
											2015-02-13 08:53:02 +00:00
										 |  |  | #include "qt_helpers.hpp"
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #include <QString>
 | 
					
						
							|  |  |  | #include <QFont>
 | 
					
						
							| 
									
										
										
										
											2015-05-06 20:30:29 +00:00
										 |  |  | #include <QWidget>
 | 
					
						
							|  |  |  | #include <QStyle>
 | 
					
						
							|  |  |  | #include <QVariant>
 | 
					
						
							| 
									
										
										
										
											2015-02-13 08:53:02 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | QString font_as_stylesheet (QFont const& font) | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |   QString font_weight; | 
					
						
							|  |  |  |   switch (font.weight ()) | 
					
						
							|  |  |  |     { | 
					
						
							|  |  |  |     case QFont::Light: font_weight = "light"; break; | 
					
						
							|  |  |  |     case QFont::Normal: font_weight = "normal"; break; | 
					
						
							|  |  |  |     case QFont::DemiBold: font_weight = "demibold"; break; | 
					
						
							|  |  |  |     case QFont::Bold: font_weight = "bold"; break; | 
					
						
							|  |  |  |     case QFont::Black: font_weight = "black"; break; | 
					
						
							|  |  |  |     } | 
					
						
							| 
									
										
										
										
											2015-04-07 12:08:55 +00:00
										 |  |  |   return QString { | 
					
						
							| 
									
										
										
										
											2015-02-13 08:53:02 +00:00
										 |  |  |       " font-family: %1;\n" | 
					
						
							|  |  |  |       " font-size: %2pt;\n" | 
					
						
							|  |  |  |       " font-style: %3;\n" | 
					
						
							| 
									
										
										
										
											2015-04-07 12:08:55 +00:00
										 |  |  |       " font-weight: %4;\n"} | 
					
						
							| 
									
										
										
										
											2015-02-13 08:53:02 +00:00
										 |  |  |   .arg (font.family ()) | 
					
						
							|  |  |  |      .arg (font.pointSize ()) | 
					
						
							|  |  |  |      .arg (font.styleName ()) | 
					
						
							|  |  |  |      .arg (font_weight); | 
					
						
							|  |  |  | } | 
					
						
							| 
									
										
										
										
											2015-05-06 20:30:29 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | void update_dynamic_property (QWidget * widget, char const * property, QVariant const& value) | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |   widget->setProperty (property, value); | 
					
						
							|  |  |  |   widget->style ()->unpolish (widget); | 
					
						
							|  |  |  |   widget->style ()->polish (widget); | 
					
						
							|  |  |  |   widget->update (); | 
					
						
							|  |  |  | } |