1
0
Fork 0
mirror of https://github.com/ctruLua/ctruLua.git synced 2025-10-27 16:39:29 +00:00

Moved ctr.gfx.set|getTextSize to ctr.gfx.font.set|getSize, added missing documentation to font:width

Started working again on the editor
This commit is contained in:
Reuh 2016-04-21 21:51:45 +02:00
parent b798818e99
commit 347e480d5a
7 changed files with 38 additions and 34 deletions

View file

@ -35,12 +35,13 @@ local coloredLines = syntax(lines, color)
-- Variables -- Variables
local lineHeight = 10 local lineHeight = 10
local fontSize = 9
local cursorX, cursorY = 1, 1 local cursorX, cursorY = 1, 1
local scrollX, scrollY = 0, 0 local scrollX, scrollY = 0, 0
-- Helper functions -- Helper functions
local function displayedText(text) local function displayedText(text)
return text:gsub("\t", " ") return text:gsub("\t", " "), nil
end end
-- Set defaults -- Set defaults
@ -48,6 +49,7 @@ gfx.set3D(false)
gfx.color.setDefault(color.default) gfx.color.setDefault(color.default)
gfx.color.setBackground(color.background) gfx.color.setBackground(color.background)
gfx.font.setDefault(font) gfx.font.setDefault(font)
gfx.font.setSize(fontSize)
while ctr.run() do while ctr.run() do
hid.read() hid.read()
@ -157,11 +159,7 @@ while ctr.run() do
for _,colored in ipairs(coloredLines[i]) do for _,colored in ipairs(coloredLines[i]) do
local str = displayedText(colored[1]) local str = displayedText(colored[1])
gfx.text(x, y, str, fontSize, colored[2])
gfx.color.setDefault(colored[2])
gfx.text(x, y, str)
gfx.color.setDefault(color.default)
x = x + font:width(str) x = x + font:width(str)
end end
end end

View file

@ -12,7 +12,7 @@ local function displayError(err, trace)
gfx.set3D(false) gfx.set3D(false)
gfx.color.setBackground(0xFF0000B3) gfx.color.setBackground(0xFF0000B3)
gfx.color.setDefault(0xFFFDFDFD) gfx.color.setDefault(0xFFFDFDFD)
gfx.setTextSize(12) gfx.font.setSize(12)
gfx.font.setDefault(gfx.font.load(ctr.root .. "resources/VeraMono.ttf")) gfx.font.setDefault(gfx.font.load(ctr.root .. "resources/VeraMono.ttf"))
while ctr.run() do while ctr.run() do

View file

@ -15,6 +15,8 @@ The `font` module
#include "font.h" #include "font.h"
u32 textSize = 9;
/*** /***
Load a TTF font. Load a TTF font.
@function load @function load
@ -70,6 +72,28 @@ static int font_getDefault(lua_State *L) {
return 1; return 1;
} }
/***
Set the default text size.
@function setSize
@tparam number size new default text size
*/
static int font_setSize(lua_State *L) {
textSize = luaL_checkinteger(L, 1);
return 0;
}
/***
Return the default text size.
@function getSize
@treturn number the default text size
*/
static int font_getSize(lua_State *L) {
lua_pushinteger(L, textSize);
return 1;
}
/*** /***
font object font object
@section Methods @section Methods
@ -79,6 +103,7 @@ font object
Return the width of a string with a font. Return the width of a string with a font.
@function :width @function :width
@tparam string text the text to test @tparam string text the text to test
@tparam[opt=default size] integer font size, in pixels
@treturn number the width of the text (in pixels) @treturn number the width of the text (in pixels)
*/ */
static int font_object_width(lua_State *L) { static int font_object_width(lua_State *L) {
@ -127,6 +152,8 @@ static const struct luaL_Reg font_lib[] = {
{ "load", font_load }, { "load", font_load },
{ "setDefault", font_setDefault }, { "setDefault", font_setDefault },
{ "getDefault", font_getDefault }, { "getDefault", font_getDefault },
{ "setSize", font_setSize },
{ "getSize", font_getSize },
{ NULL, NULL } { NULL, NULL }
}; };

View file

@ -5,4 +5,6 @@ typedef struct {
sftd_font *font; sftd_font *font;
} font_userdata; } font_userdata;
extern u32 textSize;
#endif #endif

View file

@ -26,7 +26,6 @@ typedef struct {
bool isGfxInitialized = false; bool isGfxInitialized = false;
bool is3DEnabled = false; //TODO: add a function for this in the ctrulib/sf2dlib. bool is3DEnabled = false; //TODO: add a function for this in the ctrulib/sf2dlib.
u32 textSize = 9;
/*** /***
The `ctr.gfx.color` module. The `ctr.gfx.color` module.
@ -373,26 +372,6 @@ static int gfx_calcBoundingBox(lua_State *L) {
return 2; return 2;
} }
/***
Set the default text size.
@function setTextSize
@tparam number size new default text size
*/
static int gfx_setTextSize(lua_State *L) {
textSize = luaL_checkinteger(L, 1);
return 0;
}
/***
Return the default text size.
@function getTextSize
@treturn number the default text size
*/
static int gfx_getTextSize(lua_State *L) {
lua_pushinteger(L, textSize);
return 1;
}
/*** /***
Enables or disable the scissor test. Enables or disable the scissor test.
When the scissor test is enabled, the drawing area will be limited to a specific rectangle, every pixel drawn outside will be discarded. When the scissor test is enabled, the drawing area will be limited to a specific rectangle, every pixel drawn outside will be discarded.
@ -593,8 +572,6 @@ static const struct luaL_Reg gfx_lib[] = {
{ "text", gfx_text }, { "text", gfx_text },
{ "wrappedText", gfx_wrappedText }, { "wrappedText", gfx_wrappedText },
{ "calcBoundingBox", gfx_calcBoundingBox }, { "calcBoundingBox", gfx_calcBoundingBox },
{ "setTextSize", gfx_setTextSize },
{ "getTextSize", gfx_getTextSize },
{ "scissor", gfx_scissor }, { "scissor", gfx_scissor },
{ "target", gfx_target }, { "target", gfx_target },
{ "console", gfx_console }, { "console", gfx_console },