summaryrefslogtreecommitdiff
path: root/rotord/src/nodes_drawing.h
diff options
context:
space:
mode:
authorComment <tim@gray.(none)>2013-11-26 00:57:58 +0000
committerComment <tim@gray.(none)>2013-11-26 00:57:58 +0000
commit9e5244e5c3e190cc0b03c24b1f63b49e8d52653e (patch)
treef76f4bc8b4fd2adbbf884d5d7a485c29e9e9e5e3 /rotord/src/nodes_drawing.h
parent81d0a2a1447724d81022b29c2c6c348dad032d83 (diff)
parent5d8f8a40b50aa9e7237d972fe6fbf30279acf518 (diff)
Merge branch 'master' of eclectronics.org@eclectronics.org:rotor
Diffstat (limited to 'rotord/src/nodes_drawing.h')
-rw-r--r--rotord/src/nodes_drawing.h34
1 files changed, 32 insertions, 2 deletions
diff --git a/rotord/src/nodes_drawing.h b/rotord/src/nodes_drawing.h
index 77a74cb..8fe5d71 100644
--- a/rotord/src/nodes_drawing.h
+++ b/rotord/src/nodes_drawing.h
@@ -62,7 +62,7 @@ namespace Rotor {
public:
Text_base(){
create_attribute("colour","Colour to fill","Colour","FFFFFF");
- create_attribute("font","font to use","Font","Sans",{"Sans","Sans Mono","Serif"});
+ create_attribute("font","font to use","Font","Akzidenz",{"Sans","Sans Mono","Serif","Akzidenz"});
create_parameter("size","number","Point size of font","size",50.0f);
NODEID="7da93b94-2d0b-11e3-8940-77bce0f9d3e8";
};
@@ -76,7 +76,18 @@ namespace Rotor {
string text=select_text(frame);
cairo_text_extents_t te;
cairo_set_source_rgb(cr, colour.Rfloat(),colour.Gfloat(),colour.Bfloat());
- cairo_select_font_face (cr, ("DejaVu "+attributes["font"]->value).c_str(),
+ string fontname;
+ switch (attributes["font"]->intVal){
+ case 1:
+ case 2:
+ case 3:
+ fontname="DejaVu "+attributes["font"]->value;
+ break;
+ case 4:
+ fontname="Akzidenz-Grotesk Condensed BQ";
+ break;
+ }
+ cairo_select_font_face (cr,fontname.c_str(),
CAIRO_FONT_SLANT_NORMAL, CAIRO_FONT_WEIGHT_BOLD);
cairo_set_font_size (cr, parameters["size"]->value*(((float)frame.w)/360.0f));
cairo_text_extents(cr, text.c_str(), &te);
@@ -111,6 +122,25 @@ namespace Rotor {
}
private:
};
+ class UI_text: public Text_base {
+ public:
+ UI_text(){
+ title="UI_text";
+ description="Draws text entered by the user";
+ create_attribute("text","Text to draw","Text","hello, world!");
+ NODEID="22b47bea-52a9-11e3-b2b3-74d02b29f6a6";
+ UItype="text";
+ };
+ UI_text(map<string,string> &settings):UI_text() {
+ base_settings(settings);
+ };
+ ~UI_text(){};
+ UI_text* clone(map<string,string> &_settings) { return new UI_text(_settings);};
+ string select_text(const Frame_spec &frame){
+ return attributes["text"]->value;
+ }
+ private:
+ };
class Lyrics: public Text_base {
public:
Lyrics(){