Theme rework.
Change fonts; make use of the new feature to allow fonts to be specified using property from dialog xml. Ensure that all fonts are defined within the style.
This commit is contained in:
parent
eabece0148
commit
08fd851489
18 changed files with 516 additions and 426 deletions
BIN
Fonts/accid.txf
Normal file
BIN
Fonts/accid.txf
Normal file
Binary file not shown.
Binary file not shown.
|
@ -157,23 +157,23 @@ var dialog = {
|
|||
me.toggle_unit(); # set to imperial
|
||||
#
|
||||
# "private"
|
||||
var font = "";
|
||||
if (getprop("/sim/gui/current-syle"))
|
||||
font = {name: "FIXED_8x13" };
|
||||
else
|
||||
font = { name: "AvantGarde-Demi.txf"};
|
||||
me.font = { name: getprop("/sim/gui/selected-style/fonts/mp-list/name") or "FIXED_8x13",
|
||||
size: getprop("/sim/gui/selected-style/fonts/mp-list/size") or 20,
|
||||
slant: getprop("/sim/gui/selected-style/fonts/mp-list/slant") or 0,
|
||||
};
|
||||
|
||||
me.header = ["chat", " callsign"," code"," model", " brg", func dialog.dist_hdr, func dialog.alt_hdr ~ " ", "ignore" ~ " "];
|
||||
me.header = ["chat", " callsign"," code"," model", " brg", func dialog.dist_hdr, func dialog.alt_hdr ~ " ", "ver", "ignore" ~ " "];
|
||||
me.columns = [
|
||||
{ type: "button", legend: "", halign: "right", callback: "multiplayer.compose_message", "pref-height": 14, "pref-width": 14 },
|
||||
{ type: "text", property: "callsign", format: " %s", label: "-----------", halign: "fill" , font: font },
|
||||
{ type: "text", property: "id-code", format: " %s", label: "-----", halign: "fill" , font: font },
|
||||
{ type: "text", property: "model-short", format: "%s", label: "--------------", halign: "fill" , font: font },
|
||||
{ type: "text", property: "bearing-to", format: " %3.0f", label: "----", halign: "right", font: font },
|
||||
{ type: "text", property: func dialog.dist_node, format:" %8.2f", label: "---------", halign: "right", font: font },
|
||||
{ type: "text", property: func dialog.alt_node, format:" %7.0f", label: "---------", halign: "right", font: font },
|
||||
{ type: "text", property: "callsign", format: " %s", label: "-----------", halign: "fill" , font: me.font },
|
||||
{ type: "text", property: "id-code", format: " %s", label: "-----", halign: "fill" , font: me.font },
|
||||
{ type: "text", property: "model-short", format: " %s", label: "--------------", halign: "fill" , font: me.font },
|
||||
{ type: "text", property: "bearing-to", format: " %3.0f", label: "----", halign: "right", font: me.font },
|
||||
{ type: "text", property: func dialog.dist_node, format:" %8.2f", label: "---------", halign: "right", font: me.font },
|
||||
{ type: "text", property: func dialog.alt_node, format:" %7.0f", label: "---------", halign: "right", font: me.font },
|
||||
{ type: "text", property: "sim/multiplay/protocol-version", format: " %s", label: "--", halign: "fill" , font: me.font },
|
||||
{ type: "checkbox", property: "controls/invisible", callback: "multiplayer.dialog.toggle_ignore",
|
||||
argprop: "callsign", label: "---------", halign: "right", font: font },
|
||||
argprop: "callsign", label: "---------", halign: "right", font: me.font },
|
||||
];
|
||||
me.cs_warnings = {};
|
||||
me.name = "who-is-online";
|
||||
|
@ -193,6 +193,7 @@ var dialog = {
|
|||
me.dialog = gui.dialog[me.name] = gui.Widget.new();
|
||||
me.dialog.set("name", me.name);
|
||||
me.dialog.set("dialog-name", me.name);
|
||||
me.dialog.set("font", me.font.name);
|
||||
if (me.x != nil)
|
||||
me.dialog.set("x", me.x);
|
||||
if (me.y != nil)
|
||||
|
@ -233,6 +234,8 @@ var dialog = {
|
|||
var col = 0;
|
||||
foreach (var h; me.header) {
|
||||
var w = content.addChild("text");
|
||||
w.node.setValues({ "font" : me.font});
|
||||
|
||||
var l = typeof(h) == "func" ? h() : h;
|
||||
w.node.setValues({ "label": l, "row": row, "col": col, halign: me.columns[col].halign });
|
||||
w = content.addChild("hrule");
|
||||
|
|
|
@ -30,8 +30,8 @@ var sanitize = func(s, newline = 0) {
|
|||
|
||||
|
||||
|
||||
var theme_font = nil;
|
||||
|
||||
var theme_font = getprop("/sim/gui/selected-style/fonts/message-display/name") or "HELVETICA_14";
|
||||
var theme_fontsize = getprop("/sim/gui/selected-style/fonts/message-display/size") or 13;
|
||||
|
||||
|
||||
# screen.window
|
||||
|
@ -133,10 +133,11 @@ var window = {
|
|||
me.dialog.set("y", me.y);
|
||||
me.dialog.set("layout", "vbox");
|
||||
me.dialog.set("default-padding", 2);
|
||||
|
||||
if (me.font != nil)
|
||||
me.dialog.setFont(me.font);
|
||||
me.dialog.setFont(me.font, me.fontsize);
|
||||
elsif (theme_font != nil)
|
||||
me.dialog.setFont(theme_font);
|
||||
me.dialog.setFont(theme_font, theme_fontsize);
|
||||
|
||||
me.dialog.setColor(me.bg[0], me.bg[1], me.bg[2], me.bg[3]);
|
||||
|
||||
|
@ -209,7 +210,7 @@ var window = {
|
|||
#
|
||||
# var dpy = screen.display.new(20, 10); # x/y coordinate
|
||||
# dpy.setcolor(1, 0, 1); # magenta (default: white)
|
||||
# dpy.setfont("SANS_12B"); # see $FG_ROOT/gui/styles/*.xml
|
||||
# dpy.setfont("SANS_12B",12); # see $FG_ROOT/gui/styles/*.xml
|
||||
#
|
||||
# dpy.add("/position/latitude-deg", "/position/longitude-deg");
|
||||
# dpy.add(props.globals.getNode("/orientation").getChildren());
|
||||
|
@ -244,7 +245,8 @@ var display = {
|
|||
m.x = x;
|
||||
m.y = y;
|
||||
m.tags = show_tags;
|
||||
m.font = "HELVETICA_14";
|
||||
m.font = getprop("/sim/gui/selected-style/fonts/message-display/name") or "HELVETICA_14";
|
||||
m.fontsize = getprop("/sim/gui/selected-style/fonts/message-display/size") or 13;
|
||||
m.color = [1, 1, 1, 1];
|
||||
m.tagformat = "%s";
|
||||
m.format = "%.12g";
|
||||
|
@ -266,8 +268,9 @@ var display = {
|
|||
me.redraw();
|
||||
me;
|
||||
},
|
||||
setfont : func(font) {
|
||||
setfont : func(font, size=13) {
|
||||
me.font = font;
|
||||
me.fontsize = size;
|
||||
me.redraw();
|
||||
me;
|
||||
},
|
||||
|
@ -278,7 +281,7 @@ var display = {
|
|||
me.dialog.set("y", me.y);
|
||||
me.dialog.set("layout", "vbox");
|
||||
me.dialog.set("default-padding", 2);
|
||||
me.dialog.setFont(me.font);
|
||||
me.dialog.setFont(me.font, me.fontsize);
|
||||
me.dialog.setColor(0, 0, 0, 0);
|
||||
|
||||
foreach (var e; me.entries) {
|
||||
|
@ -416,8 +419,7 @@ _setlistener("/sim/signals/nasal-dir-initialized", func {
|
|||
});
|
||||
|
||||
setlistener("/sim/gui/current-style", func {
|
||||
var theme = getprop("/sim/gui/current-style");
|
||||
theme_font = getprop("/sim/gui/style[" ~ theme ~ "]/fonts/message-display/name");
|
||||
theme_font = getprop("/sim/gui/selected-style/fonts/message-display/name");
|
||||
}, 1);
|
||||
|
||||
log = window.new(nil, -30, 10, 10);
|
||||
|
|
|
@ -44,6 +44,18 @@ var trim = func(s, lr = 0, istrim = nil) {
|
|||
return r < l ? "" : substr(s, l, r - l + 1);
|
||||
}
|
||||
|
||||
##
|
||||
# truncate at the first match
|
||||
#
|
||||
# string.truncateAt("file.xml", ".xml"); # "file.xml" -> "file"
|
||||
# string.truncateAt("file.xml", ".txt"); # "file.xml" -> "file.xml"
|
||||
#
|
||||
var truncateAt = func(src, match){
|
||||
var pos = find(match,src);
|
||||
if (pos>=0)
|
||||
return substr(src,0,pos);
|
||||
return src;
|
||||
}
|
||||
|
||||
##
|
||||
# return string converted to lower case letters
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
<draggable>false</draggable>
|
||||
<default-padding>1</default-padding>
|
||||
<font>
|
||||
<name>HELVETICA_12</name>
|
||||
<property>sim/gui/selected-style/fonts/gui-small</property>
|
||||
</font>
|
||||
<color>
|
||||
<red>0</red>
|
||||
|
|
|
@ -81,7 +81,7 @@
|
|||
<alpha>1</alpha>
|
||||
</color-legend>
|
||||
<font>
|
||||
<name>FIXED_9x15</name>
|
||||
<property>sim/gui/selected-style/fonts/gui-small</property>
|
||||
</font>
|
||||
</input>
|
||||
|
||||
|
|
|
@ -62,7 +62,7 @@
|
|||
<editable>falsee</editable>
|
||||
<wrap>false</wrap>
|
||||
<font>
|
||||
<name>FIXED_8x13</name>
|
||||
<property>sim/gui/selected-style/fonts/fixed</property>
|
||||
</font>
|
||||
<property>/sim/gui/dialogs/doc-browser/edit</property>
|
||||
</textbox>
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
<layout>hbox</layout>
|
||||
<default-padding>2</default-padding>
|
||||
<font>
|
||||
<name>HELVETICA_12</name>
|
||||
<property>sim/gui/selected-style/fonts/gui-small</property>
|
||||
</font>
|
||||
<color>
|
||||
<red>0</red>
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
<layout>hbox</layout>
|
||||
<default-padding>0</default-padding>
|
||||
<font>
|
||||
<name>HELVETICA_12</name>
|
||||
<property>sim/gui/selected-style/fonts/gui-small</property>
|
||||
</font>
|
||||
<color>
|
||||
<red>0</red>
|
||||
|
|
|
@ -62,7 +62,7 @@
|
|||
<alpha>1</alpha>
|
||||
</color>
|
||||
<font>
|
||||
<name>HELVETICA_14</name>
|
||||
<property>sim/gui/selected-style/fonts/gui-large</property>
|
||||
</font>
|
||||
</text>
|
||||
|
||||
|
|
|
@ -62,7 +62,7 @@
|
|||
<alpha>1</alpha>
|
||||
</color>
|
||||
<font>
|
||||
<name>HELVETICA_14</name>
|
||||
<property>sim/gui/selected-style/fonts/gui-large</property>
|
||||
</font>
|
||||
</text>
|
||||
|
||||
|
|
|
@ -62,7 +62,7 @@
|
|||
<alpha>1</alpha>
|
||||
</color>
|
||||
<font>
|
||||
<name>HELVETICA_14</name>
|
||||
<property>sim/gui/selected-style/fonts/model-view</property>
|
||||
</font>
|
||||
</text>
|
||||
|
||||
|
|
|
@ -45,7 +45,7 @@
|
|||
<editable>true</editable>
|
||||
<wrap>false</wrap>
|
||||
<font>
|
||||
<name>AvantGarde-Book.txf</name>
|
||||
<property>sim/gui/selected-style/fonts/nasal-editor</property>
|
||||
</font>
|
||||
<property>/sim/gui/dialogs/nasal-console/edit</property>
|
||||
<binding>
|
||||
|
|
|
@ -102,7 +102,7 @@
|
|||
|
||||
<text>
|
||||
<font>
|
||||
<name>SANS_12B</name>
|
||||
<property>sim/gui/selected-style/fonts/replay</property>
|
||||
</font>
|
||||
<label>REPLAY</label>
|
||||
<color>
|
||||
|
@ -516,23 +516,6 @@
|
|||
<blue>0.3</blue>
|
||||
<alpha>0.8</alpha>
|
||||
</color>
|
||||
<visible>
|
||||
<and>
|
||||
<not><property>/sim/replay/disable-my-controls</property></not>
|
||||
<or>
|
||||
<equals>
|
||||
<property>/sim/flight-model</property>
|
||||
<value>yasim</value>
|
||||
</equals>
|
||||
<!-- Not supported yet...
|
||||
<equals>
|
||||
<property>/sim/flight-model</property>
|
||||
<value>jsb</value>
|
||||
</equals>
|
||||
-->
|
||||
</or>
|
||||
</and>
|
||||
</visible>
|
||||
<pref-width>90</pref-width>
|
||||
<binding>
|
||||
<command>property-assign</command>
|
||||
|
|
|
@ -89,7 +89,7 @@
|
|||
<live>true</live>
|
||||
<property>/sim/gui/dialogs/stopwatch-dialog/display</property>
|
||||
<font>
|
||||
<name>TIMES_24</name>
|
||||
<property>sim/gui/selected-style/fonts/gui-large</property>
|
||||
</font>
|
||||
<color>
|
||||
<red>1</red>
|
||||
|
|
|
@ -21,9 +21,48 @@
|
|||
<slant type="float">0</slant>
|
||||
</splash>
|
||||
|
||||
<gui-large>
|
||||
<name>HELVETICA_14</name>
|
||||
</gui-large>
|
||||
|
||||
<fixed>
|
||||
<name>FIXED_8x13</name>
|
||||
</fixed>
|
||||
|
||||
<gui-small>
|
||||
<name>HELVETICA_12</name>
|
||||
</gui-small>
|
||||
|
||||
<mp-list>
|
||||
<name>FIXED_8x13</name>
|
||||
</mp-list>
|
||||
|
||||
<replay>
|
||||
<name>SANS_12B</name>
|
||||
<size type="float">14</size>
|
||||
</replay>
|
||||
|
||||
<model-view>
|
||||
<name type="string">HELVETICA_14</name>
|
||||
</model-view>
|
||||
|
||||
<nasal-editor>
|
||||
<name type="string">HELVETICA_12</name>
|
||||
<size>6</size>
|
||||
</nasal-editor>
|
||||
|
||||
<message-display>
|
||||
<name type="string">SANS_12B</name>
|
||||
</message-display>
|
||||
|
||||
<screen>
|
||||
<name type="string">HELVETICA_14</name>
|
||||
<size type="float">13</size>
|
||||
</screen>
|
||||
|
||||
<stopwatch>
|
||||
<name>TIMES_24</name>
|
||||
</stopwatch>
|
||||
</fonts>
|
||||
|
||||
<colors>
|
||||
|
|
|
@ -23,17 +23,68 @@
|
|||
|
||||
<fonts>
|
||||
<gui>
|
||||
<name type="string">AvantGarde-Demi.txf</name>
|
||||
<!--<name type="string">accid.txf</name>
|
||||
<size type="float">10</size>-->
|
||||
<name type="string">accid.txf</name>
|
||||
<size type="float">16</size>
|
||||
<slant type="float">0</slant>
|
||||
</gui>
|
||||
|
||||
<splash>
|
||||
<name type="string">HELVETICA_18</name>
|
||||
<name type="string">AvantGarde-Demi.txf</name>
|
||||
<size type="float">15</size>
|
||||
<slant type="float">0</slant>
|
||||
</splash>
|
||||
<gui-small>
|
||||
<name>AvantGarde-Demi.txf</name>
|
||||
<size>12</size>
|
||||
</gui-small>
|
||||
<mp-list>
|
||||
<name>AvantGarde-Demi.txf</name>
|
||||
<size>12</size>
|
||||
</mp-list>
|
||||
|
||||
<model-view>
|
||||
<name>AvantGarde-Demi.txf</name>
|
||||
<size>12</size>
|
||||
</model-view>
|
||||
|
||||
<replay>
|
||||
<name>AvantGarde-Demi.txf</name>
|
||||
<size>11</size>
|
||||
</replay>
|
||||
<stopwatch>
|
||||
<name type="string">accid.txf</name>
|
||||
<size type="float">20</size>
|
||||
<slant type="float">0</slant>
|
||||
</stopwatch>
|
||||
<gui-large>
|
||||
<name type="string">accid.txf</name>
|
||||
<size type="float">17</size>
|
||||
<slant type="float">0</slant>
|
||||
</gui-large>
|
||||
|
||||
<fixed>
|
||||
<name>monoMMM_5.txf</name>
|
||||
<size>6</size>
|
||||
</fixed>
|
||||
<nasal-editor>
|
||||
<name>monoMMM_5.txf</name>
|
||||
<size>6</size>
|
||||
</nasal-editor>
|
||||
|
||||
<message-display>
|
||||
<name type="string">Helvetica-BoldOblique.txf</name>
|
||||
<!--helvetica_bold.txf-->
|
||||
<name type="string">accid.txf</name>
|
||||
<size type="float">16</size>
|
||||
<slant type="float">0</slant>
|
||||
</message-display>
|
||||
|
||||
<screen>
|
||||
<name type="string">accid.txf</name>
|
||||
<size type="float">16</size>
|
||||
<slant type="float">0</slant>
|
||||
</screen>
|
||||
|
||||
</fonts>
|
||||
|
||||
<colors>
|
||||
|
|
Loading…
Add table
Reference in a new issue