svn commit: r329624 - head/stand/lua

Kyle Evans kevans at FreeBSD.org
Tue Feb 20 04:23:44 UTC 2018


Author: kevans
Date: Tue Feb 20 04:23:43 2018
New Revision: 329624
URL: https://svnweb.freebsd.org/changeset/base/329624

Log:
  stand/lua: Reduce exposure of the drawer module
  
  As part of an effort to slowly reduce our exports overall to a set of stable
  properties/functions, go ahead and reduce what drawer exposes to others.
  
  The graphics should generally not be modified on their own, but their
  position could be modified if additional grahics also need to be drawn.
  Export position/shift information, but leave the actual graphic local to
  the module.
  
  The next step will be to create a 'menudef' that gets exported instead, with
  each entry in the menudef table describing the graphic to be drawn along
  with specific positioning information.

Modified:
  head/stand/lua/drawer.lua

Modified: head/stand/lua/drawer.lua
==============================================================================
--- head/stand/lua/drawer.lua	Tue Feb 20 04:14:12 2018	(r329623)
+++ head/stand/lua/drawer.lua	Tue Feb 20 04:23:43 2018	(r329624)
@@ -32,6 +32,13 @@ local screen = require("screen");
 
 local drawer = {};
 
+local fbsd_logo;
+local beastie_color;
+local beastie;
+local fbsd_logo_v;
+local orb;
+local none;
+
 drawer.menu_name_handlers = {
 	-- Menu name handlers should take the menu being drawn and entry being
 	-- drawn as parameters, and return the name of the item.
@@ -51,7 +58,14 @@ drawer.menu_name_handlers = {
 };
 
 drawer.brand_position = {x = 2, y = 1};
-drawer.fbsd_logo = {
+drawer.logo_position = {x = 46, y = 1};
+drawer.fbsd_logo_shift = {x = 5, y = 4};
+drawer.orb_shift = {x = 2, y = 4};
+drawer.none_shift = {x = 17, y = 0};
+drawer.menu_position = {x = 6, y = 11};
+drawer.box_pos_dim = {x = 3, y = 10, w = 41, h = 11};
+
+fbsd_logo = {
 	"  ______               ____   _____ _____  ",
 	" |  ____|             |  _ \\ / ____|  __ \\ ",
 	" | |___ _ __ ___  ___ | |_) | (___ | |  | |",
@@ -61,8 +75,7 @@ drawer.fbsd_logo = {
 	" |_|   |_|  \\___|\\___||____/|_____/|_____/ "
 };
 
-drawer.logo_position = {x = 46, y = 1};
-drawer.beastie_color = {
+beastie_color = {
 	"               \027[31m,        ,",
 	"              /(        )`",
 	"              \\ \\___   / |",
@@ -84,7 +97,7 @@ drawer.beastie_color = {
 	"         `--{__________)\027[37m"
 };
 
-drawer.beastie = {
+beastie = {
 	"               ,        ,",
 	"              /(        )`",
 	"              \\ \\___   / |",
@@ -106,8 +119,7 @@ drawer.beastie = {
 	"         `--{__________)"
 };
 
-drawer.fbsd_logo_shift = {x = 5, y = 4};
-drawer.fbsd_logo_v = {
+fbsd_logo_v = {
 	"  ______",
 	" |  ____| __ ___  ___ ",
 	" | |__ | '__/ _ \\/ _ \\",
@@ -123,8 +135,7 @@ drawer.fbsd_logo_v = {
 	" |____/|_____/|_____/"
 };
 
-drawer.orb_shift = {x = 2, y = 4};
-drawer.orb_color = {
+orb_color = {
 	"  \027[31m```                        \027[31;1m`\027[31m",
 	" s` `.....---...\027[31;1m....--.```   -/\027[31m",
 	" +o   .--`         \027[31;1m/y:`      +.\027[31m",
@@ -142,7 +153,7 @@ drawer.orb_color = {
 	"         .---.....----.\027[37m"
 };
 
-drawer.orb = {
+orb = {
 	"  ```                        `",
 	" s` `.....---.......--.```   -/",
 	" +o   .--`         /y:`      +.",
@@ -160,14 +171,8 @@ drawer.orb = {
 	"         .---.....----."
 };
 
-drawer.none = {""};
+none = {""};
 
-drawer.none_shift = {x = 17, y = 0};
-
-drawer.menu_position = {x = 6, y = 11};
-
-drawer.box_pos_dim = {x = 3, y = 10, w = 41, h = 11};
-
 function drawer.drawscreen(menu_opts)
 	-- drawlogo() must go first.
 	-- it determines the positions of other elements
@@ -277,7 +282,7 @@ function drawer.drawbrand()
 	    drawer.brand_position.y;
 
 	local logo = load("return " .. tostring(loader.getenv("loader_brand")))() or
-	    drawer.fbsd_logo;
+	    fbsd_logo;
 	drawer.draw(x, y, logo);
 end
 
@@ -293,25 +298,25 @@ function drawer.drawlogo()
 
 	if (logo == "beastie") then
 		if (colored) then
-			logo = drawer.beastie_color;
+			logo = beastie_color;
 		end
 	elseif (logo == "beastiebw") then
-		logo = drawer.beastie;
+		logo = beastie;
 	elseif (logo == "fbsdbw") then
-		logo = drawer.fbsd_logo_v;
+		logo = fbsd_logo_v;
 		s = drawer.fbsd_logo_shift;
 	elseif (logo == "orb") then
 		if (colored) then
-			logo = drawer.orb_color;
+			logo = orb_color;
 		end
 		s = drawer.orb_shift;
 	elseif (logo == "orbbw") then
-		logo = drawer.orb;
+		logo = orb;
 		s = drawer.orb_shift;
 	elseif (logo == "tribute") then
-		logo = drawer.fbsd_logo;
+		logo = fbsd_logo;
 	elseif (logo == "tributebw") then
-		logo = drawer.fbsd_logo;
+		logo = fbsd_logo;
 	elseif (logo == "none") then
 		--centre brand and text if no logo
 		drawer.brand_position.x = drawer.brand_position.x + drawer.none_shift.x;
@@ -323,13 +328,13 @@ function drawer.drawlogo()
 		--prevent redraws from moving menu further
 		drawer.none_shift.x = 0;
 		drawer.none_shift.y = 0;
-		logo = drawer.none;
+		logo = none;
 	end
 	if (not logo) then
 		if (colored) then
-			logo = drawer.orb_color;
+			logo = orb_color;
 		else
-			logo = drawer.orb;
+			logo = orb;
 		end
 	end
 	drawer.draw(x + s.x, y + s.y, logo);


More information about the svn-src-all mailing list