void DrawableButton::paintButton (Graphics& g, bool isMouseOverButton, bool isButtonDown) { if (style == ImageOnButtonBackground) { getLookAndFeel().drawButtonBackground (g, *this, getBackgroundColour(), isMouseOverButton, isButtonDown); } else { g.fillAll (getBackgroundColour()); const int textH = (style == ImageAboveTextLabel) ? jmin (16, proportionOfHeight (0.25f)) : 0; if (textH > 0) { g.setFont ((float) textH); g.setColour (findColour (DrawableButton::textColourId) .withMultipliedAlpha (isEnabled() ? 1.0f : 0.4f)); g.drawFittedText (getButtonText(), 2, getHeight() - textH - 1, getWidth() - 4, textH, Justification::centred, 1); } } }
void ObjectSimpleViewer:: setBackgroundColour() { QColor color = getBackgroundColour(); m_viewer->setBackgroundColor(SbColor(color.red()/255.0f, color.green()/255.0f, color.blue()/255.0f)); }
/** @brief ctor */ FocusArgs::FocusArgs(const PropertySet &props) : InteractArgs(props) { #ifdef kOfxInteractPropViewportSize // removed in OFX 1.4 viewportSize.x = viewportSize.y = 0.; props.propGetDoubleN(kOfxInteractPropViewportSize, &viewportSize.x, 2, false); #endif pixelScale = getPixelScale(props); backGroundColour = getBackgroundColour(props); }
/** @brief ctor */ PenArgs::PenArgs(const PropertySet &props) : InteractArgs(props) { #ifdef kOfxInteractPropViewportSize // removed in OFX 1.4 viewportSize.x = viewportSize.y = 0.; props.propGetDoubleN(kOfxInteractPropViewportSize, &viewportSize.x, 2, false); #endif pixelScale = getPixelScale(props); backGroundColour = getBackgroundColour(props); penPosition.x = penPosition.y = 0; props.propGetDoubleN(kOfxInteractPropPenPosition, &penPosition.x, 2); // Introduced in OFX 1.2. Return (-1,-1) if not available OfxPointI pen = {-1, -1}; props.propGetIntN(kOfxInteractPropPenViewportPosition, &pen.x, 2); penViewportPosition.x = pen.x; penViewportPosition.y = pen.y; penPressure = props.propGetDouble(kOfxInteractPropPenPressure); }
//============================================================================== void DocumentWindow::paint (Graphics& g) { ResizableWindow::paint (g); if (resizableBorder == 0) { g.setColour (getBackgroundColour().overlaidWith (Colour (0x80000000))); const BorderSize border (getBorderThickness()); g.fillRect (0, 0, getWidth(), border.getTop()); g.fillRect (0, border.getTop(), border.getLeft(), getHeight() - border.getTopAndBottom()); g.fillRect (getWidth() - border.getRight(), border.getTop(), border.getRight(), getHeight() - border.getTopAndBottom()); g.fillRect (0, getHeight() - border.getBottom(), getWidth(), border.getBottom()); } const Rectangle titleBarArea (getTitleBarArea()); g.setOrigin (titleBarArea.getX(), titleBarArea.getY()); g.reduceClipRegion (0, 0, titleBarArea.getWidth(), titleBarArea.getHeight()); int titleSpaceX1 = 6; int titleSpaceX2 = titleBarArea.getWidth() - 6; for (int i = 0; i < 3; ++i) { if (titleBarButtons[i] != 0) { if (positionTitleBarButtonsOnLeft) titleSpaceX1 = jmax (titleSpaceX1, titleBarButtons[i]->getRight() + (getWidth() - titleBarButtons[i]->getRight()) / 8); else titleSpaceX2 = jmin (titleSpaceX2, titleBarButtons[i]->getX() - (titleBarButtons[i]->getX() / 8)); } } getLookAndFeel().drawDocumentWindowTitleBar (*this, g, titleBarArea.getWidth(), titleBarArea.getHeight(), titleSpaceX1, jmax (1, titleSpaceX2 - titleSpaceX1), titleBarIcon, ! drawTitleTextCentred); }
void MidiPad::paintButton (Graphics& g, bool isMouseOverButton, bool isButtonDown) { Rectangle<float> imageSpace; const float insetX = getWidth()*(1.f-imageSize)*0.5f; const float insetY = getHeight()*(1.f-imageSize)*0.5f; imageSpace.setBounds (insetX, insetY, getWidth() - insetX * 2, getHeight() - insetY * 2); MidiPad::drawButtonBackground (g, *this, getBackgroundColour(), isMouseOverButton, isButtonDown); g.setImageResamplingQuality (Graphics::highResamplingQuality); g.setOpacity (1.0f); const Drawable* imageToDraw = 0; imageToDraw = getCurrentImage(); if (imageToDraw != 0) { imageToDraw->drawWithin (g, imageSpace, RectanglePlacement::centred, 1.f); } }
Colour JucerTreeViewBase::getContrastingColour (Colour target, float minContrast) const { return getBackgroundColour().contrasting (target, minContrast); }
Colour JucerTreeViewBase::getContrastingColour (float contrast) const { return getBackgroundColour().contrasting (contrast); }
/** @brief ctor */ FocusArgs::FocusArgs( const PropertySet& props ) : InteractArgs( props ) { pixelScale = getPixelScale( props ); backGroundColour = getBackgroundColour( props ); }
void DrawableButton::paintButton (Graphics& g, bool isMouseOverButton, bool isButtonDown) { Rectangle imageSpace; if (style == ImageOnButtonBackground) { const int insetX = getWidth() / 4; const int insetY = getHeight() / 4; imageSpace.setBounds (insetX, insetY, getWidth() - insetX * 2, getHeight() - insetY * 2); getLookAndFeel().drawButtonBackground (g, *this, getBackgroundColour(), isMouseOverButton, isButtonDown); } else { g.fillAll (getBackgroundColour()); const int textH = (style == ImageAboveTextLabel) ? jmin (16, proportionOfHeight (0.25f)) : 0; const int indentX = jmin (edgeIndent, proportionOfWidth (0.3f)); const int indentY = jmin (edgeIndent, proportionOfHeight (0.3f)); imageSpace.setBounds (indentX, indentY, getWidth() - indentX * 2, getHeight() - indentY * 2 - textH); if (textH > 0) { g.setFont ((float) textH); g.setColour (Colours::black.withAlpha (isEnabled() ? 1.0f : 0.4f)); g.drawFittedText (getButtonText(), 2, getHeight() - textH - 1, getWidth() - 4, textH, Justification::centred, 1); } } g.setImageResamplingQuality (Graphics::mediumResamplingQuality); g.setOpacity (1.0f); const Drawable* imageToDraw = 0; if (isEnabled()) { imageToDraw = getCurrentImage(); } else { imageToDraw = getToggleState() ? disabledImageOn : disabledImage; if (imageToDraw == 0) { g.setOpacity (0.4f); imageToDraw = getNormalImage(); } } if (imageToDraw != 0) { if (style == ImageRaw) { imageToDraw->draw (g, 1.0f); } else { imageToDraw->drawWithin (g, imageSpace.getX(), imageSpace.getY(), imageSpace.getWidth(), imageSpace.getHeight(), RectanglePlacement::centred, 1.0f); } } }
Colour TreeItemBase::getContrastingColour (const Colour& target, float minContrast) const { return getBackgroundColour().contrasting (target, minContrast); }
Colour TreeItemBase::getContrastingColour (float contrast) const { return getBackgroundColour().contrasting (contrast); }
//============================================================================== void DrawablePad::paintButton (Graphics& g, bool isMouseOverButton, bool isButtonDown) { const int insetX = getWidth() / 4; const int insetY = getHeight() / 4; Rectangle imageSpace; imageSpace.setBounds (insetX, insetY, getWidth() - insetX * 2, getHeight() - insetY * 2); drawButtonBackground (g, *this, getBackgroundColour(), isMouseOverButton, isButtonDown); g.setOpacity (1.0f); const Drawable* imageToDraw = 0; if (isEnabled()) { imageToDraw = getCurrentImage(); } else { imageToDraw = getToggleState() ? disabledImageOn : disabledImage; if (imageToDraw == 0) { g.setOpacity (0.4f); imageToDraw = getNormalImage(); } } if (imageToDraw != 0) { g.setImageResamplingQuality (Graphics::highResamplingQuality); imageToDraw->drawWithin (g, imageSpace.getX(), imageSpace.getY(), imageSpace.getWidth(), imageSpace.getHeight(), RectanglePlacement::centred, 1.0f); } float fontsize = jmin ((float)(proportionOfWidth(0.2f)),(float)(proportionOfHeight(0.15f))); if (fontsize < 5.0) fontsize=5.0; g.setFont (Font (fontsize, Font::bold)); g.setColour (getBackgroundColour().contrasting(0.8f)); g.drawText (Label, proportionOfWidth (0.0447f), proportionOfHeight (0.0499f), proportionOfWidth (0.9137f), proportionOfHeight (0.1355f), Justification::centred, true); if (showdot && ! hex) { g.setFont (Font (fontsize*0.9f, Font::plain)); String xy; if (showx && showy) xy = T("x:") + String((int)(x*127.1)) + T(" y:") + String((int)(y*127.1)); else if (showx) xy = T("x:") + String((int)(x*127.1)); else if (showy) xy = T("y:") + String((int)(y*127.1)); g.drawText (xy, proportionOfWidth (0.0447f), proportionOfHeight (0.8057f), proportionOfWidth (0.9137f), proportionOfHeight (0.1355f), Justification::centred, true); float diameter = jmin ((float)(proportionOfHeight(0.125f)), (float)(proportionOfWidth(0.5f))); g.setColour (Colour (0x88faa52a)); g.fillEllipse ((float)(proportionOfWidth(x)) - diameter*0.5f, (float)(proportionOfHeight(1.0f-y)) - diameter*0.5f, diameter, diameter); g.setColour (Colour (0x99a52a88)); g.drawEllipse ((float)(proportionOfWidth(x)) - diameter*0.5f, (float)(proportionOfHeight(1.0f-y)) - diameter*0.5f, diameter, diameter, diameter*0.1f); } }