diff options
author | Ansariel <ansariel.hiller@phoenixviewer.com> | 2024-05-22 21:25:21 +0200 |
---|---|---|
committer | Andrey Lihatskiy <alihatskiy@productengine.com> | 2024-05-22 22:40:26 +0300 |
commit | e2e37cced861b98de8c1a7c9c0d3a50d2d90e433 (patch) | |
tree | 1bb897489ce524986f6196201c10ac0d8861aa5f /indra/llui/llviewborder.cpp | |
parent | 069ea06848f766466f1a281144c82a0f2bd79f3a (diff) |
Fix line endlings
Diffstat (limited to 'indra/llui/llviewborder.cpp')
-rw-r--r-- | indra/llui/llviewborder.cpp | 540 |
1 files changed, 270 insertions, 270 deletions
diff --git a/indra/llui/llviewborder.cpp b/indra/llui/llviewborder.cpp index 241192e21c..c1777c972c 100644 --- a/indra/llui/llviewborder.cpp +++ b/indra/llui/llviewborder.cpp @@ -1,270 +1,270 @@ -/**
- * @file llviewborder.cpp
- *
- * $LicenseInfo:firstyear=2001&license=viewerlgpl$
- * Second Life Viewer Source Code
- * Copyright (C) 2010, Linden Research, Inc.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation;
- * version 2.1 of the License only.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA
- * $/LicenseInfo$
- */
-
-#include "linden_common.h"
-#include "llviewborder.h"
-#include "llrender.h"
-#include "llfocusmgr.h"
-#include "lluictrlfactory.h"
-#include "lluiimage.h"
-
-static LLDefaultChildRegistry::Register<LLViewBorder> r("view_border");
-
-void LLViewBorder::BevelValues::declareValues()
-{
- declare("in", LLViewBorder::BEVEL_IN);
- declare("out", LLViewBorder::BEVEL_OUT);
- declare("bright", LLViewBorder::BEVEL_BRIGHT);
- declare("none", LLViewBorder::BEVEL_NONE);
-}
-
-void LLViewBorder::StyleValues::declareValues()
-{
- declare("line", LLViewBorder::STYLE_LINE);
- declare("texture", LLViewBorder::STYLE_TEXTURE);
-}
-
-LLViewBorder::Params::Params()
-: bevel_style("bevel_style", BEVEL_OUT),
- render_style("border_style", STYLE_LINE),
- border_thickness("border_thickness"),
- highlight_light_color("highlight_light_color"),
- highlight_dark_color("highlight_dark_color"),
- shadow_light_color("shadow_light_color"),
- shadow_dark_color("shadow_dark_color")
-{
- addSynonym(border_thickness, "thickness");
- addSynonym(render_style, "style");
-}
-
-
-LLViewBorder::LLViewBorder(const LLViewBorder::Params& p)
-: LLView(p),
- mTexture( NULL ),
- mHasKeyboardFocus( false ),
- mBorderWidth(p.border_thickness),
- mHighlightLight(p.highlight_light_color()),
- mHighlightDark(p.highlight_dark_color()),
- mShadowLight(p.shadow_light_color()),
- mShadowDark(p.shadow_dark_color()),
- mBevel(p.bevel_style),
- mStyle(p.render_style)
-{}
-
-void LLViewBorder::setColors( const LLColor4& shadow_dark, const LLColor4& highlight_light )
-{
- mShadowDark = shadow_dark;
- mHighlightLight = highlight_light;
-}
-
-void LLViewBorder::setColorsExtended( const LLColor4& shadow_light, const LLColor4& shadow_dark,
- const LLColor4& highlight_light, const LLColor4& highlight_dark )
-{
- mShadowDark = shadow_dark;
- mShadowLight = shadow_light;
- mHighlightLight = highlight_light;
- mHighlightDark = highlight_dark;
-}
-
-void LLViewBorder::setTexture( const LLUUID &image_id )
-{
- mTexture = LLUI::getUIImageByID(image_id);
-}
-
-
-void LLViewBorder::draw()
-{
- if( STYLE_LINE == mStyle )
- {
- if( 0 == mBorderWidth )
- {
- // no visible border
- }
- else
- if( 1 == mBorderWidth )
- {
- drawOnePixelLines();
- }
- else
- if( 2 == mBorderWidth )
- {
- drawTwoPixelLines();
- }
- else
- {
- llassert( false ); // not implemented
- }
- }
-
- LLView::draw();
-}
-
-void LLViewBorder::drawOnePixelLines()
-{
- gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE);
-
- LLColor4 top_color = mHighlightLight.get();
- LLColor4 bottom_color = mHighlightLight.get();
- switch( mBevel )
- {
- case BEVEL_OUT:
- top_color = mHighlightLight.get();
- bottom_color = mShadowDark.get();
- break;
- case BEVEL_IN:
- top_color = mShadowDark.get();
- bottom_color = mHighlightLight.get();
- break;
- case BEVEL_NONE:
- // use defaults
- break;
- default:
- llassert(0);
- }
-
- if( mHasKeyboardFocus )
- {
- top_color = gFocusMgr.getFocusColor();
- bottom_color = top_color;
-
- LLUI::setLineWidth(lerp(1.f, 3.f, gFocusMgr.getFocusFlashAmt()));
- }
-
- S32 left = 0;
- S32 top = getRect().getHeight();
- S32 right = getRect().getWidth();
- S32 bottom = 0;
-
- gGL.color4fv( top_color.mV );
- gl_line_2d(left, bottom, left, top);
- gl_line_2d(left, top, right, top);
-
- gGL.color4fv( bottom_color.mV );
- gl_line_2d(right, top, right, bottom);
- gl_line_2d(left, bottom, right, bottom);
-
- LLUI::setLineWidth(1.f);
-}
-
-void LLViewBorder::drawTwoPixelLines()
-{
- gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE);
-
- LLColor4 focus_color = gFocusMgr.getFocusColor();
-
- LLColor4 top_in_color;
- LLColor4 top_out_color;
- LLColor4 bottom_in_color;
- LLColor4 bottom_out_color;
-
- switch( mBevel )
- {
- case BEVEL_OUT:
- top_in_color = mHighlightLight.get();
- top_out_color = mHighlightDark.get();
- bottom_in_color = mShadowLight.get();
- bottom_out_color = mShadowDark.get();
- break;
- case BEVEL_IN:
- top_in_color = mShadowDark.get();
- top_out_color = mShadowLight.get();
- bottom_in_color = mHighlightDark.get();
- bottom_out_color = mHighlightLight.get();
- break;
- case BEVEL_BRIGHT:
- top_in_color = mHighlightLight.get();
- top_out_color = mHighlightLight.get();
- bottom_in_color = mHighlightLight.get();
- bottom_out_color = mHighlightLight.get();
- break;
- case BEVEL_NONE:
- top_in_color = mShadowDark.get();
- top_out_color = mShadowDark.get();
- bottom_in_color = mShadowDark.get();
- bottom_out_color = mShadowDark.get();
- // use defaults
- break;
- default:
- llassert(0);
- }
-
- if( mHasKeyboardFocus )
- {
- top_out_color = focus_color;
- bottom_out_color = focus_color;
- }
-
- S32 left = 0;
- S32 top = getRect().getHeight();
- S32 right = getRect().getWidth();
- S32 bottom = 0;
-
- // draw borders
- gGL.color3fv( top_out_color.mV );
- gl_line_2d(left, bottom, left, top-1);
- gl_line_2d(left, top-1, right, top-1);
-
- gGL.color3fv( top_in_color.mV );
- gl_line_2d(left+1, bottom+1, left+1, top-2);
- gl_line_2d(left+1, top-2, right-1, top-2);
-
- gGL.color3fv( bottom_out_color.mV );
- gl_line_2d(right-1, top-1, right-1, bottom);
- gl_line_2d(left, bottom, right, bottom);
-
- gGL.color3fv( bottom_in_color.mV );
- gl_line_2d(right-2, top-2, right-2, bottom+1);
- gl_line_2d(left+1, bottom+1, right-1, bottom+1);
-}
-
-bool LLViewBorder::getBevelFromAttribute(LLXMLNodePtr node, LLViewBorder::EBevel& bevel_style)
-{
- if (node->hasAttribute("bevel_style"))
- {
- std::string bevel_string;
- node->getAttributeString("bevel_style", bevel_string);
- LLStringUtil::toLower(bevel_string);
-
- if (bevel_string == "none")
- {
- bevel_style = LLViewBorder::BEVEL_NONE;
- }
- else if (bevel_string == "in")
- {
- bevel_style = LLViewBorder::BEVEL_IN;
- }
- else if (bevel_string == "out")
- {
- bevel_style = LLViewBorder::BEVEL_OUT;
- }
- else if (bevel_string == "bright")
- {
- bevel_style = LLViewBorder::BEVEL_BRIGHT;
- }
- return true;
- }
- return false;
-}
-
+/** + * @file llviewborder.cpp + * + * $LicenseInfo:firstyear=2001&license=viewerlgpl$ + * Second Life Viewer Source Code + * Copyright (C) 2010, Linden Research, Inc. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; + * version 2.1 of the License only. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA + * $/LicenseInfo$ + */ + +#include "linden_common.h" +#include "llviewborder.h" +#include "llrender.h" +#include "llfocusmgr.h" +#include "lluictrlfactory.h" +#include "lluiimage.h" + +static LLDefaultChildRegistry::Register<LLViewBorder> r("view_border"); + +void LLViewBorder::BevelValues::declareValues() +{ + declare("in", LLViewBorder::BEVEL_IN); + declare("out", LLViewBorder::BEVEL_OUT); + declare("bright", LLViewBorder::BEVEL_BRIGHT); + declare("none", LLViewBorder::BEVEL_NONE); +} + +void LLViewBorder::StyleValues::declareValues() +{ + declare("line", LLViewBorder::STYLE_LINE); + declare("texture", LLViewBorder::STYLE_TEXTURE); +} + +LLViewBorder::Params::Params() +: bevel_style("bevel_style", BEVEL_OUT), + render_style("border_style", STYLE_LINE), + border_thickness("border_thickness"), + highlight_light_color("highlight_light_color"), + highlight_dark_color("highlight_dark_color"), + shadow_light_color("shadow_light_color"), + shadow_dark_color("shadow_dark_color") +{ + addSynonym(border_thickness, "thickness"); + addSynonym(render_style, "style"); +} + + +LLViewBorder::LLViewBorder(const LLViewBorder::Params& p) +: LLView(p), + mTexture( NULL ), + mHasKeyboardFocus( false ), + mBorderWidth(p.border_thickness), + mHighlightLight(p.highlight_light_color()), + mHighlightDark(p.highlight_dark_color()), + mShadowLight(p.shadow_light_color()), + mShadowDark(p.shadow_dark_color()), + mBevel(p.bevel_style), + mStyle(p.render_style) +{} + +void LLViewBorder::setColors( const LLColor4& shadow_dark, const LLColor4& highlight_light ) +{ + mShadowDark = shadow_dark; + mHighlightLight = highlight_light; +} + +void LLViewBorder::setColorsExtended( const LLColor4& shadow_light, const LLColor4& shadow_dark, + const LLColor4& highlight_light, const LLColor4& highlight_dark ) +{ + mShadowDark = shadow_dark; + mShadowLight = shadow_light; + mHighlightLight = highlight_light; + mHighlightDark = highlight_dark; +} + +void LLViewBorder::setTexture( const LLUUID &image_id ) +{ + mTexture = LLUI::getUIImageByID(image_id); +} + + +void LLViewBorder::draw() +{ + if( STYLE_LINE == mStyle ) + { + if( 0 == mBorderWidth ) + { + // no visible border + } + else + if( 1 == mBorderWidth ) + { + drawOnePixelLines(); + } + else + if( 2 == mBorderWidth ) + { + drawTwoPixelLines(); + } + else + { + llassert( false ); // not implemented + } + } + + LLView::draw(); +} + +void LLViewBorder::drawOnePixelLines() +{ + gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE); + + LLColor4 top_color = mHighlightLight.get(); + LLColor4 bottom_color = mHighlightLight.get(); + switch( mBevel ) + { + case BEVEL_OUT: + top_color = mHighlightLight.get(); + bottom_color = mShadowDark.get(); + break; + case BEVEL_IN: + top_color = mShadowDark.get(); + bottom_color = mHighlightLight.get(); + break; + case BEVEL_NONE: + // use defaults + break; + default: + llassert(0); + } + + if( mHasKeyboardFocus ) + { + top_color = gFocusMgr.getFocusColor(); + bottom_color = top_color; + + LLUI::setLineWidth(lerp(1.f, 3.f, gFocusMgr.getFocusFlashAmt())); + } + + S32 left = 0; + S32 top = getRect().getHeight(); + S32 right = getRect().getWidth(); + S32 bottom = 0; + + gGL.color4fv( top_color.mV ); + gl_line_2d(left, bottom, left, top); + gl_line_2d(left, top, right, top); + + gGL.color4fv( bottom_color.mV ); + gl_line_2d(right, top, right, bottom); + gl_line_2d(left, bottom, right, bottom); + + LLUI::setLineWidth(1.f); +} + +void LLViewBorder::drawTwoPixelLines() +{ + gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE); + + LLColor4 focus_color = gFocusMgr.getFocusColor(); + + LLColor4 top_in_color; + LLColor4 top_out_color; + LLColor4 bottom_in_color; + LLColor4 bottom_out_color; + + switch( mBevel ) + { + case BEVEL_OUT: + top_in_color = mHighlightLight.get(); + top_out_color = mHighlightDark.get(); + bottom_in_color = mShadowLight.get(); + bottom_out_color = mShadowDark.get(); + break; + case BEVEL_IN: + top_in_color = mShadowDark.get(); + top_out_color = mShadowLight.get(); + bottom_in_color = mHighlightDark.get(); + bottom_out_color = mHighlightLight.get(); + break; + case BEVEL_BRIGHT: + top_in_color = mHighlightLight.get(); + top_out_color = mHighlightLight.get(); + bottom_in_color = mHighlightLight.get(); + bottom_out_color = mHighlightLight.get(); + break; + case BEVEL_NONE: + top_in_color = mShadowDark.get(); + top_out_color = mShadowDark.get(); + bottom_in_color = mShadowDark.get(); + bottom_out_color = mShadowDark.get(); + // use defaults + break; + default: + llassert(0); + } + + if( mHasKeyboardFocus ) + { + top_out_color = focus_color; + bottom_out_color = focus_color; + } + + S32 left = 0; + S32 top = getRect().getHeight(); + S32 right = getRect().getWidth(); + S32 bottom = 0; + + // draw borders + gGL.color3fv( top_out_color.mV ); + gl_line_2d(left, bottom, left, top-1); + gl_line_2d(left, top-1, right, top-1); + + gGL.color3fv( top_in_color.mV ); + gl_line_2d(left+1, bottom+1, left+1, top-2); + gl_line_2d(left+1, top-2, right-1, top-2); + + gGL.color3fv( bottom_out_color.mV ); + gl_line_2d(right-1, top-1, right-1, bottom); + gl_line_2d(left, bottom, right, bottom); + + gGL.color3fv( bottom_in_color.mV ); + gl_line_2d(right-2, top-2, right-2, bottom+1); + gl_line_2d(left+1, bottom+1, right-1, bottom+1); +} + +bool LLViewBorder::getBevelFromAttribute(LLXMLNodePtr node, LLViewBorder::EBevel& bevel_style) +{ + if (node->hasAttribute("bevel_style")) + { + std::string bevel_string; + node->getAttributeString("bevel_style", bevel_string); + LLStringUtil::toLower(bevel_string); + + if (bevel_string == "none") + { + bevel_style = LLViewBorder::BEVEL_NONE; + } + else if (bevel_string == "in") + { + bevel_style = LLViewBorder::BEVEL_IN; + } + else if (bevel_string == "out") + { + bevel_style = LLViewBorder::BEVEL_OUT; + } + else if (bevel_string == "bright") + { + bevel_style = LLViewBorder::BEVEL_BRIGHT; + } + return true; + } + return false; +} + |