Revert "Fix the bgcolor formspec element (#8716)" (#9018)

This reverts commit 1db3d252cf.
Temporary solution until a compatible solution is found to define both - formspec and fullscreen backgrounds.
This commit is contained in:
SmallJoker 2019-10-06 14:50:45 +02:00 committed by GitHub
parent dde0628976
commit dee22104b7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 11 additions and 14 deletions

View File

@ -2092,15 +2092,11 @@ Elements
* Show an inventory image of registered item/node * Show an inventory image of registered item/node
### `bgcolor[<color>]`
* Sets background color of formspec as `ColorString`
### `bgcolor[<color>;<fullscreen>]` ### `bgcolor[<color>;<fullscreen>]`
* If `color` is a valid `ColorString`, the fullscreen background color * Sets background color of formspec as `ColorString`
is set to `color`. * If `true`, a fullscreen background is drawn and the color is ignored
* If `fullscreen` is a true value, the fullscreen background color is drawn. (does not affect the size of the formspec)
### `background[<X>,<Y>;<W>,<H>;<texture name>]` ### `background[<X>,<Y>;<W>,<H>;<texture name>]`

View File

@ -1885,17 +1885,17 @@ void GUIFormSpecMenu::parseBox(parserData* data, const std::string &element)
errorstream<< "Invalid Box element(" << parts.size() << "): '" << element << "'" << std::endl; errorstream<< "Invalid Box element(" << parts.size() << "): '" << element << "'" << std::endl;
} }
void GUIFormSpecMenu::parseBackgroundColor(parserData *data, const std::string &element) void GUIFormSpecMenu::parseBackgroundColor(parserData* data, const std::string &element)
{ {
std::vector<std::string> parts = split(element,';'); std::vector<std::string> parts = split(element,';');
if (((parts.size() == 1) || (parts.size() == 2)) || if (((parts.size() == 1) || (parts.size() == 2)) ||
((parts.size() > 2) && (m_formspec_version > FORMSPEC_API_VERSION))) { ((parts.size() > 2) && (m_formspec_version > FORMSPEC_API_VERSION))) {
if (parts.size() == 1) { parseColorString(parts[0], m_bgcolor, false);
parseColorString(parts[0], m_bgcolor, false);
} else if (parts.size() == 2) { if (parts.size() == 2) {
parseColorString(parts[0], m_fullscreen_bgcolor, false); std::string fullscreen = parts[1];
m_bgfullscreen = is_yes(parts[1]); m_bgfullscreen = is_yes(fullscreen);
} }
return; return;
@ -2925,7 +2925,8 @@ void GUIFormSpecMenu::drawMenu()
if (m_bgfullscreen) if (m_bgfullscreen)
driver->draw2DRectangle(m_fullscreen_bgcolor, allbg, &allbg); driver->draw2DRectangle(m_fullscreen_bgcolor, allbg, &allbg);
driver->draw2DRectangle(m_bgcolor, AbsoluteRect, &AbsoluteClippingRect); else
driver->draw2DRectangle(m_bgcolor, AbsoluteRect, &AbsoluteClippingRect);
m_tooltip_element->setVisible(false); m_tooltip_element->setVisible(false);