本文整理汇总了C++中BRect::RightTop方法的典型用法代码示例。如果您正苦于以下问题:C++ BRect::RightTop方法的具体用法?C++ BRect::RightTop怎么用?C++ BRect::RightTop使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类BRect
的用法示例。
在下文中一共展示了BRect::RightTop方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: if
void
BScrollView::Draw(BRect updateRect)
{
if (fBorder == B_PLAIN_BORDER) {
SetHighColor(tint_color(ui_color(B_PANEL_BACKGROUND_COLOR), B_DARKEN_2_TINT));
StrokeRect(Bounds());
return;
} else if (fBorder != B_FANCY_BORDER)
return;
BRect bounds = Bounds();
SetHighColor(tint_color(ui_color(B_PANEL_BACKGROUND_COLOR), B_DARKEN_2_TINT));
StrokeRect(bounds.InsetByCopy(1, 1));
if (fHighlighted) {
SetHighColor(ui_color(B_NAVIGATION_BASE_COLOR));
StrokeRect(bounds);
} else {
SetHighColor(tint_color(ui_color(B_PANEL_BACKGROUND_COLOR), B_DARKEN_1_TINT));
StrokeLine(bounds.LeftBottom(), bounds.LeftTop());
bounds.left++;
StrokeLine(bounds.LeftTop(), bounds.RightTop());
SetHighColor(ui_color(B_SHINE_COLOR));
StrokeLine(bounds.LeftBottom(), bounds.RightBottom());
bounds.top++;
bounds.bottom--;
StrokeLine(bounds.RightBottom(), bounds.RightTop());
}
}
示例2: Draw
void HDlogView::Draw(BRect update)
{
BView::Draw(update);
if (fLines.size() > 0)
{
vector<BRect>::iterator ri;
BeginLineArray(fLines.size() * 2);
for (ri = fLines.begin(); ri != fLines.end(); ri++)
{
BRect r = *ri;
if (r.Width() > r.Height())
{
AddLine(r.LeftTop(), r.RightTop(), tint_color(ui_color(B_PANEL_BACKGROUND_COLOR), B_DARKEN_1_TINT));
AddLine(r.LeftBottom(), r.RightBottom(), kWhite);
}
else
{
AddLine(r.LeftTop(), r.LeftBottom(), tint_color(ui_color(B_PANEL_BACKGROUND_COLOR), B_DARKEN_1_TINT));
AddLine(r.RightTop(), r.RightBottom(), kWhite);
}
}
EndLineArray();
}
} /* HDlogView::Draw */
示例3: Draw
void BarView :: Draw( BRect r )
{
r = Bounds() ;
BeginLineArray( 4 ) ;
AddLine( r.LeftTop() ,
( fOrientation == B_VERTICAL ? r.LeftBottom() : r.RightTop() ) ,
Colours::Grey40 ) ;
AddLine( r.RightBottom() ,
( fOrientation == B_VERTICAL ? r.RightTop() : r.LeftBottom() ) ,
Colours::Grey40 ) ;
if( fOrientation == B_VERTICAL )
r.InsetBy(1,0) ;
else
r.InsetBy(0,1) ;
AddLine( r.LeftTop() ,
( fOrientation == B_VERTICAL ? r.LeftBottom() : r.RightTop() ) ,
Colours::White ) ;
AddLine( r.RightBottom() ,
( fOrientation == B_VERTICAL ? r.RightTop() : r.LeftBottom() ) ,
Colours::Grey25 ) ;
EndLineArray() ;
}
示例4: Draw
/*------------------------------------------------------------------------------*\
( )
-
\*------------------------------------------------------------------------------*/
void BmCaption::Draw( BRect updateRect) {
BRect r = Bounds();
if (mHighlight) {
if (BeamOnDano)
SetLowColor( keyboard_navigation_color());
else {
rgb_color highlightCol = {255, 217, 121, 255};
SetLowColor( highlightCol);
}
}
else
SetLowColor( ui_color( B_PANEL_BACKGROUND_COLOR));
#ifndef __HAIKU__
FillRect( r.InsetByCopy(1.0, 1.0), B_SOLID_LOW);
#else
FillRect( BRect(r.top + 1, r.left + 1, r.right, r.bottom - 1), B_SOLID_LOW);
#endif
SetHighColor( ui_color( B_SHINE_COLOR));
StrokeLine( BPoint(0.0,1.0), BPoint(r.right,1.0));
StrokeLine( BPoint(0.0,1.0), r.LeftBottom());
SetHighColor( BmWeakenColor( B_SHADOW_COLOR, BeShadowMod));
if (BeamOnDano)
StrokeLine( r.RightTop(), r.RightBottom());
#ifndef __HAIKU__
else
// looks better on R5, as it blends with scrollbar:
StrokeLine( r.RightTop(), r.RightBottom(), B_SOLID_LOW);
#endif
StrokeLine( r.LeftTop(), r.RightTop());
StrokeLine( r.LeftBottom(), r.RightBottom());
SetHighColor( ui_color( B_PANEL_TEXT_COLOR));
font_height fInfo;
BFont captionFont;
GetFont(&captionFont);
captionFont.GetHeight( &fInfo);
float offset = (1.0f+r.Height()-(fInfo.ascent+fInfo.descent))/2.0f;
float freeWidth = r.Width();
if (mHighlight && mHighlightLabel.Length()) {
freeWidth -= StringWidth(mHighlightLabel.String())+2;
BPoint pos( 2.0, fInfo.ascent+offset);
DrawString( mHighlightLabel.String(), pos);
}
const char* text = mText.String();
float width;
while(1) {
width = StringWidth(text);
if (width+4.0 < freeWidth)
break;
text++;
while((*text & 0xc0) == 0x80)
text++; // skip UTF8 subsequence chars
if (!*text)
break;
}
BPoint pos( r.Width()-width-2.0f, fInfo.ascent+offset);
DrawString( text, pos);
}
示例5: Draw
void TPanelWindowView::Draw( BRect updateRect )
{
BRegion Region;
Region.Include(updateRect);
ConstrainClippingRegion(&Region);
float w, h;
w = Bounds().Width();
h = Bounds().Height();
SetHighColor( fColor2 );
FillRect( BRect( 0, 0, h, h ) );
FillRect( BRect( w-h, 0, w, h ) );
FillRect( BRect( h/2, 0, w-(h/2), h/2) );
FillRect( BRect( 0, h/2, w, h ) );
SetHighColor( 196, 196, 176 );
FillRect( BRect( 0, h - 2, w, h ) );
fPanels.Lock();
for ( int i=0; i<fPanels.CountItems(); i++ )
{
TInnerPanel *panel = fPanels.ItemAt(i);
if ( panel->Frame().Intersects( updateRect ) )
{
BRect rect( panel->Frame() );
if ( rect.left < updateRect.left )
rect.left = updateRect.left;
if ( rect.right > updateRect.right )
rect.right = updateRect.right;
if ( rect.top < updateRect.top )
rect.top = updateRect.top;
if ( rect.bottom > updateRect.bottom )
rect.bottom = updateRect.bottom;
panel->Draw(rect);
}
}
fPanels.Unlock();
if ( fDrawOuterFrame )
{
SetDrawingMode( B_OP_COPY );
SetHighColor( fOuterFrameColor );
BRect bounds = Bounds();
StrokeLine( bounds.LeftTop(), bounds.RightTop() );
StrokeLine( bounds.LeftTop(), bounds.LeftBottom() );
StrokeLine( bounds.RightTop(), bounds.RightBottom() );
}
ConstrainClippingRegion(NULL);
}
示例6: Draw
void Mover::Draw(BRect rect)
{
/* BRect r = Bounds();
r.top+=1;
r.left+=1;
r.right-=1;
r.bottom-=1;
SetHighColor(192,192,192);
FillRect(r);
r=Bounds();
SetHighColor(255,255,255);
StrokeLine(r.LeftBottom(),r.LeftTop());
StrokeLine(r.LeftTop(),r.RightTop());
SetHighColor(168,168,168);
StrokeLine(r.RightTop(),r.RightBottom());
StrokeLine(r.RightBottom(),r.LeftBottom());
SetHighColor(208,208,208);
StrokeLine(r.LeftBottom(),r.LeftBottom());
StrokeLine(r.RightTop(),r.RightTop());
*/
BRect r = Bounds();
SetHighColor(152,152,152);
if (vertical)
{
StrokeLine(r.LeftTop(),r.LeftBottom());
StrokeLine(r.RightTop()+BPoint(-1,0),r.RightBottom()+BPoint(-1,0));
StrokeLine(r.RightTop(),r.RightBottom());
}
else
{
StrokeLine(r.LeftTop(),r.RightTop());
StrokeLine(r.LeftBottom()+BPoint(0,-1),r.RightBottom()+BPoint(0,-1));
StrokeLine(r.LeftBottom(),r.RightBottom());
}
SetHighColor(255,255,255);
if (vertical)
StrokeLine(r.LeftTop()+BPoint(1,0),r.LeftBottom()+BPoint(1,0));
else
StrokeLine(r.LeftTop()+BPoint(0,1),r.RightTop()+BPoint(0,1));
SetHighColor(232,232,232);
if (vertical)
StrokeLine(r.RightTop()+BPoint(-2,0),r.RightBottom()+BPoint(-2,0));
else
StrokeLine(r.LeftBottom()+BPoint(0,-2),r.RightBottom()+BPoint(0,-2));
}
示例7:
void
_MediaSlider_::UpdateThumb(
bool force)
{
fBitmap->Lock();
BRect bounds = fOffscreenView->Bounds();
bounds.left += 2.0;
bounds.right -= kThumbWidth + 3.0;
BRect thumbRect = fThumbRect;
thumbRect.OffsetTo(bounds.left + (bounds.right * ((float)fCurTime / (float)fTotalTime)), thumbRect.top);
if ((!force) && (thumbRect == fThumbRect)) {
fBitmap->Unlock();
return;
}
fOffscreenView->SetLowColor(kSliderBackgroundColor);
fOffscreenView->FillRect(fThumbRect, B_SOLID_LOW);
BRect drawRect = fThumbRect | thumbRect;
fThumbRect = thumbRect;
fOffscreenView->SetHighColor(kBlack);
fOffscreenView->StrokeRect(thumbRect, B_SOLID_HIGH);
thumbRect.InsetBy(1.0, 1.0);
fOffscreenView->BeginLineArray(4);
fOffscreenView->AddLine(thumbRect.RightTop(), thumbRect.RightBottom(), kThumbDarkColor);
fOffscreenView->AddLine(thumbRect.RightBottom(), thumbRect.LeftBottom(), kThumbDarkColor);
fOffscreenView->AddLine(thumbRect.LeftBottom(), thumbRect.LeftTop(), kThumbLightColor);
fOffscreenView->AddLine(thumbRect.LeftTop(), thumbRect.RightTop(), kThumbLightColor);
fOffscreenView->EndLineArray();
thumbRect.InsetBy(1.0, 1.0);
fOffscreenView->SetHighColor(kThumbBackgroundColor);
fOffscreenView->FillRect(thumbRect, B_SOLID_HIGH);
fOffscreenView->Sync();
fBitmap->Unlock();
BPoint drawLoc(0.0, (Bounds().Height() - kSliderHeight) / 2);
BRect dstRect = drawRect;
dstRect.OffsetBy(drawLoc);
DrawBitmap(fBitmap, drawRect, dstRect);
}
示例8: Bounds
void
_MediaBar_::Draw(
BRect updateRect)
{
BRect bounds = Bounds();
rgb_color viewColor = ViewColor();
rgb_color light = {255, 255, 255, 255};
rgb_color dark = tint_color(viewColor, B_DARKEN_3_TINT);
BeginLineArray(4);
AddLine(bounds.RightTop(), bounds.RightBottom(), dark);
AddLine(bounds.RightBottom(), bounds.LeftBottom(), dark);
AddLine(bounds.LeftBottom(), bounds.LeftTop(), light);
AddLine(bounds.LeftTop(), bounds.RightTop(), light);
EndLineArray();
}
示例9: p
// ToolDraw
void
PickManipulator::ToolDraw(BView* into, BRect itemFrame)
{
if (itemFrame.IntegerWidth() < 4)
return;
itemFrame.InsetBy(1, 1);
int32 dotCount = itemFrame.IntegerHeight() / 3;
BPoint p(itemFrame.LeftTop());
for (int32 i = 0; i < dotCount; i++) {
into->SetHighColor(0, 0, 0, 75);
into->StrokeLine(p, p);
p = p + BPoint(1, 1);
into->SetHighColor(255, 255, 255, 200);
into->StrokeLine(p, p);
p = p + BPoint(-1, 2);
}
itemFrame.right--;
if (itemFrame.IntegerWidth() < 6)
return;
p = itemFrame.RightTop();
for (int32 i = 0; i < dotCount; i++) {
into->SetHighColor(0, 0, 0, 75);
into->StrokeLine(p, p);
p = p + BPoint(1, 1);
into->SetHighColor(255, 255, 255, 200);
into->StrokeLine(p, p);
p = p + BPoint(-1, 2);
}
}
示例10:
// SetOrigin
void
DragCornerState::SetOrigin(BPoint origin)
{
fOldTransform = *fParent;
fOldTransform.InverseTransform(&origin);
BRect box = fParent->Box();
switch (fCorner) {
case LEFT_TOP_CORNER:
fOffsetFromCorner = origin - box.LeftTop();
break;
case RIGHT_TOP_CORNER:
fOffsetFromCorner = origin - box.RightTop();
break;
case LEFT_BOTTOM_CORNER:
fOffsetFromCorner = origin - box.LeftBottom();
break;
case RIGHT_BOTTOM_CORNER:
fOffsetFromCorner = origin - box.RightBottom();
break;
}
DragState::SetOrigin(origin);
}
示例11: buttonRect
void
AppGroupView::_DrawCloseButton(const BRect& updateRect)
{
PushState();
BRect closeRect = fCloseRect;
rgb_color base = ui_color(B_PANEL_BACKGROUND_COLOR);
float tint = B_DARKEN_2_TINT;
if (fCloseClicked) {
BRect buttonRect(closeRect.InsetByCopy(-4, -4));
be_control_look->DrawButtonFrame(this, buttonRect, updateRect,
base, base,
BControlLook::B_ACTIVATED | BControlLook::B_BLEND_FRAME);
be_control_look->DrawButtonBackground(this, buttonRect, updateRect,
base, BControlLook::B_ACTIVATED);
tint *= 1.2;
closeRect.OffsetBy(1, 1);
}
base = tint_color(base, tint);
SetHighColor(base);
SetPenSize(2);
StrokeLine(closeRect.LeftTop(), closeRect.RightBottom());
StrokeLine(closeRect.LeftBottom(), closeRect.RightTop());
PopState();
}
示例12: Draw
void DropView::Draw(BRect update)
{
BRect bounds = Bounds();
//draw our bevel
// top and left edges
SetHighColor(150,150,150,255); // dark grey
StrokeLine(bounds.LeftTop(), bounds.RightTop());
StrokeLine(bounds.LeftTop(), bounds.LeftBottom());
// bottom and right edges
SetHighColor(250,250,250,255); // lightest grey
StrokeLine(bounds.RightBottom(), BPoint(bounds.right, bounds.top - 1.0));
StrokeLine(bounds.RightBottom(), BPoint(bounds.left - 1.0, bounds.bottom));
// draw our highlight, or don't
if (drawHighlight)
{
SetHighColor(highlightColor);
StrokeRect(highlightRect);
}
// draw our icon
if (hasOccupant)
{
SetDrawingMode(B_OP_OVER);
DrawBitmap(iconBitmap, BPoint(3.0, 3.0));
}
else
DrawBitmap(iconBitmapDark, BPoint(3.0, 3.0));
}
示例13: DrawButton
void SpinButton::DrawButton(BRect rect, int32 button)
{
rgb_color color = ViewColor();
rgb_color topColor = tint_color(color,
button == kSpinButtonNone ?
(IsEnabled() ? B_DARKEN_2_TINT : B_DARKEN_2_TINT) :
(button == fButton ? B_DARKEN_1_TINT : B_LIGHTEN_MAX_TINT));
rgb_color bottomColor = tint_color(color,
button == kSpinButtonNone ?
(IsEnabled() ? B_DARKEN_4_TINT : B_DARKEN_3_TINT) :
(button == fButton ? B_LIGHTEN_2_TINT : B_DARKEN_1_TINT));
BeginLineArray(4);
AddLine(rect.LeftBottom(), rect.LeftTop(), topColor);
AddLine(rect.LeftTop(), rect.RightTop(), topColor);
AddLine(rect.RightTop(), rect.RightBottom(), bottomColor);
AddLine(rect.RightBottom(), rect.LeftBottom(), bottomColor);
EndLineArray();
if (button != kSpinButtonNone) {
rect.InsetBy(1, 1);
SetHighColor(tint_color(color, B_LIGHTEN_1_TINT));
FillRect(rect);
BPoint point(0.5f * (rect.left + rect.right) - 2.0f,
0.5f * (rect.top + rect.bottom) - 0.25f +
(button == kSpinButtonUp ? 1.0f : -1.0f) +
(button == fButton ? 1.0f : 0.0f));
rgb_color arrowColor = tint_color(color,
IsEnabled() ? B_DARKEN_4_TINT : B_DISABLED_LABEL_TINT);
BeginLineArray(3);
for (int32 delta = 0; delta < 3; delta++) {
AddLine(point, point + BPoint(4 - delta - delta, 0), arrowColor);
point += BPoint(1, button == kSpinButtonUp ? -1 : 1);
}
EndLineArray();
}
}
示例14: DrawItem
void NetListItem::DrawItem(BView *owner, BRect itemRect, bool drawEverything = false)
{
rgb_color bgColor = {255, 255, 255, 255};
switch(fType)
{
case INFO_EVENT:
bgColor.blue = 220;
break;
case DATA_RECEIVED_EVENT:
bgColor.red = 128;
bgColor.green = 128;
break;
case DATA_SENT_EVENT:
bgColor.green = 128;
bgColor.blue = 128;
break;
default:
bgColor = ui_color(B_PANEL_BACKGROUND_COLOR);
break;
}
owner->SetHighColor(bgColor);
owner->FillRect(itemRect);
rgb_color tintedColor = tint_color(bgColor, B_DARKEN_2_TINT);
owner->SetHighColor(tintedColor);
owner->StrokeLine(itemRect.LeftBottom(), itemRect.RightBottom());
owner->StrokeLine(itemRect.RightTop(), itemRect.RightBottom());
tintedColor = tint_color(bgColor, B_LIGHTEN_2_TINT);
owner->SetHighColor(tintedColor);
owner->StrokeLine(itemRect.LeftTop(), itemRect.RightTop());
owner->StrokeLine(itemRect.LeftTop(), itemRect.LeftBottom());
owner->SetLowColor(bgColor);
owner->SetHighColor(0, 0, 0, 255);
BPoint stringPos = itemRect.LeftTop();
stringPos.x += 4;
stringPos.y += fFontAscent + 2;
for(int lineNum = 0; fStartChar[lineNum] > -1; lineNum++)
{
owner->DrawString(&fText[fStartChar[lineNum]], fLineLen[lineNum], stringPos);
stringPos.y += fLineHeight;
}
}
示例15: ViewColor
void
AppGroupView::Draw(BRect updateRect)
{
rgb_color menuColor = ViewColor();
BRect bounds = Bounds();
rgb_color hilite = tint_color(menuColor, B_DARKEN_1_TINT);
rgb_color vlight = tint_color(menuColor, B_LIGHTEN_2_TINT);
bounds.bottom = bounds.top + kHeaderSize;
// Draw the header background
SetHighColor(tint_color(menuColor, 1.22));
SetLowColor(ui_color(B_PANEL_BACKGROUND_COLOR));
StrokeLine(bounds.LeftTop(), bounds.LeftBottom());
uint32 borders = BControlLook::B_TOP_BORDER
| BControlLook::B_BOTTOM_BORDER | BControlLook::B_RIGHT_BORDER;
be_control_look->DrawButtonBackground(this, bounds, bounds, menuColor,
0, borders);
// Draw the buttons
fCollapseRect.top = (kHeaderSize - kExpandSize) / 2;
fCollapseRect.left = kEdgePadding * 2;
fCollapseRect.right = fCollapseRect.left + 1.5 * kExpandSize;
fCollapseRect.bottom = fCollapseRect.top + kExpandSize;
fCloseRect = bounds;
fCloseRect.top = (kHeaderSize - kExpandSize) / 2;
fCloseRect.right -= kEdgePadding * 2;
fCloseRect.left = fCloseRect.right - kCloseSize;
fCloseRect.bottom = fCloseRect.top + kCloseSize;
uint32 arrowDirection = fCollapsed
? BControlLook::B_DOWN_ARROW : BControlLook::B_UP_ARROW;
be_control_look->DrawArrowShape(this, fCollapseRect, fCollapseRect,
LowColor(), arrowDirection, 0, B_DARKEN_3_TINT);
SetPenSize(kPenSize);
// Draw the dismiss widget
BRect closeCross = fCloseRect;
closeCross.InsetBy(kSmallPadding, kSmallPadding);
rgb_color detailCol = ui_color(B_CONTROL_BORDER_COLOR);
detailCol = tint_color(detailCol, B_LIGHTEN_2_TINT);
StrokeRoundRect(fCloseRect, kSmallPadding, kSmallPadding);
StrokeLine(closeCross.LeftTop(), closeCross.RightBottom());
StrokeLine(closeCross.RightTop(), closeCross.LeftBottom());
// Draw the label
SetHighColor(ui_color(B_PANEL_TEXT_COLOR));
BString label = fLabel;
if (fCollapsed)
label << " (" << fInfo.size() << ")";
SetFont(be_bold_font);
DrawString(label.String(), BPoint(fCollapseRect.right + 2 * kEdgePadding,
fCloseRect.bottom));
}