1 /* 2 * Copyright 2009-2015, Haiku, Inc. All rights reserved. 3 * Distributed under the terms of the MIT License. 4 */ 5 #ifndef _CONTROL_LOOK_H 6 #define _CONTROL_LOOK_H 7 8 9 #include <Alignment.h> 10 #include <Font.h> 11 #include <Rect.h> 12 #include <Slider.h> 13 14 15 class BBitmap; 16 class BControl; 17 class BGradientLinear; 18 class BView; 19 20 21 // WARNING! This is experimental API and may change! Be prepared to 22 // recompile your software in a next version of haiku. 23 24 25 namespace BPrivate { 26 27 28 class BControlLook { 29 public: 30 BControlLook(); 31 virtual ~BControlLook(); 32 33 // TODO: Probably more convenient to pull these enums into global 34 // namespace and rename them to e.g. "B_CONTROL_LOOK_FOCUSED" instead of 35 // "BControlLook::B_FOCUSED". 36 37 enum frame_type { 38 B_BUTTON_FRAME, 39 B_GROUP_FRAME, 40 B_MENU_FIELD_FRAME, 41 B_SCROLL_VIEW_FRAME, 42 B_TEXT_CONTROL_FRAME, 43 }; 44 45 enum background_type { 46 B_BUTTON_BACKGROUND, 47 B_BUTTON_WITH_POP_UP_BACKGROUND, 48 B_MENU_BACKGROUND, 49 B_MENU_BAR_BACKGROUND, 50 B_MENU_FIELD_BACKGROUND, 51 B_MENU_ITEM_BACKGROUND, 52 B_HORIZONTAL_SCROLL_BAR_BACKGROUND, 53 B_VERTICAL_SCROLL_BAR_BACKGROUND, 54 }; 55 56 enum { 57 B_LEFT_BORDER = 1 << 0, 58 B_RIGHT_BORDER = 1 << 1, 59 B_TOP_BORDER = 1 << 2, 60 B_BOTTOM_BORDER = 1 << 3, 61 62 B_ALL_BORDERS = B_LEFT_BORDER | B_RIGHT_BORDER 63 | B_TOP_BORDER | B_BOTTOM_BORDER 64 }; 65 66 enum { 67 B_LEFT_ARROW = 0, 68 B_RIGHT_ARROW = 1, 69 B_UP_ARROW = 2, 70 B_DOWN_ARROW = 3, 71 B_LEFT_UP_ARROW = 4, 72 B_RIGHT_UP_ARROW = 5, 73 B_RIGHT_DOWN_ARROW = 6, 74 B_LEFT_DOWN_ARROW = 7 75 }; 76 77 enum { 78 B_FOCUSED = 1 << 0, 79 B_CLICKED = 1 << 1, // some controls activate on mouse up 80 B_ACTIVATED = 1 << 2, 81 B_HOVER = 1 << 3, 82 B_DISABLED = 1 << 4, 83 B_DEFAULT_BUTTON = 1 << 5, 84 B_IGNORE_OUTLINE = 1 << 6, 85 B_PARTIALLY_ACTIVATED = 1 << 7, // like B_ACTIVATED, but for tri-state 86 B_FLAT = 1 << 8, // flat look (e.g. button background) 87 B_INVALID = 1 << 9, // invalid value, use B_FAILURE_COLOR 88 B_IS_CONTROL = 1 << 10, // use control colors 89 90 B_BLEND_FRAME = 1 << 16, 91 }; 92 93 virtual BAlignment DefaultLabelAlignment() const; 94 virtual float DefaultLabelSpacing() const; 95 96 // TODO: Make methods virtual before R1 release 97 /*virtual*/ float DefaultItemSpacing() const; 98 99 static float ComposeSpacing(float spacing); 100 101 /*virtual*/ uint32 Flags(BControl* control) const; 102 103 virtual void DrawButtonFrame(BView* view, BRect& rect, 104 const BRect& updateRect, 105 const rgb_color& base, 106 const rgb_color& background, 107 uint32 flags = 0, 108 uint32 borders = B_ALL_BORDERS); 109 /*virtual*/ void DrawButtonFrame(BView* view, BRect& rect, 110 const BRect& updateRect, 111 float radius, 112 const rgb_color& base, 113 const rgb_color& background, 114 uint32 flags = 0, 115 uint32 borders = B_ALL_BORDERS); 116 /*virtual*/ void DrawButtonFrame(BView* view, BRect& rect, 117 const BRect& updateRect, 118 float leftTopRadius, 119 float rightTopRadius, 120 float leftBottomRadius, 121 float rightBottomRadius, 122 const rgb_color& base, 123 const rgb_color& background, 124 uint32 flags = 0, 125 uint32 borders = B_ALL_BORDERS); 126 127 virtual void DrawButtonBackground(BView* view, BRect& rect, 128 const BRect& updateRect, 129 const rgb_color& base, 130 uint32 flags = 0, 131 uint32 borders = B_ALL_BORDERS, 132 orientation orientation = B_HORIZONTAL); 133 /*virtual*/ void DrawButtonBackground(BView* view, BRect& rect, 134 const BRect& updateRect, 135 float radius, 136 const rgb_color& base, 137 uint32 flags = 0, 138 uint32 borders = B_ALL_BORDERS, 139 orientation orientation = B_HORIZONTAL); 140 /*virtual*/ void DrawButtonBackground(BView* view, BRect& rect, 141 const BRect& updateRect, 142 float leftTopRadius, 143 float rightTopRadius, 144 float leftBottomRadius, 145 float rightBottomRadius, 146 const rgb_color& base, 147 uint32 flags = 0, 148 uint32 borders = B_ALL_BORDERS, 149 orientation orientation = B_HORIZONTAL); 150 151 virtual void DrawMenuBarBackground(BView* view, BRect& rect, 152 const BRect& updateRect, 153 const rgb_color& base, 154 uint32 flags = 0, 155 uint32 borders = B_ALL_BORDERS); 156 157 virtual void DrawMenuFieldFrame(BView* view, BRect& rect, 158 const BRect& updateRect, 159 const rgb_color& base, 160 const rgb_color& background, 161 uint32 flags = 0, 162 uint32 borders = B_ALL_BORDERS); 163 /*virtual*/ void DrawMenuFieldFrame(BView* view, BRect& rect, 164 const BRect& updateRect, 165 float radius, 166 const rgb_color& base, 167 const rgb_color& background, 168 uint32 flags = 0, 169 uint32 borders = B_ALL_BORDERS); 170 /*virtual*/ void DrawMenuFieldFrame(BView* view, BRect& rect, 171 const BRect& updateRect, 172 float leftTopRadius, 173 float rightTopRadius, 174 float leftBottomRadius, 175 float rightBottomRadius, 176 const rgb_color& base, 177 const rgb_color& background, 178 uint32 flags = 0, 179 uint32 borders = B_ALL_BORDERS); 180 181 virtual void DrawMenuFieldBackground(BView* view, 182 BRect& rect, const BRect& updateRect, 183 const rgb_color& base, bool popupIndicator, 184 uint32 flags = 0); 185 /*virtual*/ void DrawMenuFieldBackground(BView* view, 186 BRect& rect, const BRect& updateRect, 187 float radius, const rgb_color& base, 188 bool popupIndicator, uint32 flags = 0); 189 /*virtual*/ void DrawMenuFieldBackground(BView* view, 190 BRect& rect, const BRect& updateRect, 191 float leftTopRadius, 192 float rightTopRadius, 193 float leftBottomRadius, 194 float rightBottomRadius, 195 const rgb_color& base, 196 bool popupIndicator, uint32 flags = 0); 197 virtual void DrawMenuFieldBackground(BView* view, 198 BRect& rect, const BRect& updateRect, 199 const rgb_color& base, uint32 flags = 0, 200 uint32 borders = B_ALL_BORDERS); 201 202 virtual void DrawMenuBackground(BView* view, 203 BRect& rect, const BRect& updateRect, 204 const rgb_color& base, uint32 flags = 0, 205 uint32 borders = B_ALL_BORDERS); 206 207 virtual void DrawMenuItemBackground(BView* view, 208 BRect& rect, const BRect& updateRect, 209 const rgb_color& base, uint32 flags = 0, 210 uint32 borders = B_ALL_BORDERS); 211 212 virtual void DrawStatusBar(BView* view, BRect& rect, 213 const BRect& updateRect, 214 const rgb_color& base, 215 const rgb_color& barColor, 216 float progressPosition); 217 218 virtual void DrawCheckBox(BView* view, BRect& rect, 219 const BRect& updateRect, 220 const rgb_color& base, 221 uint32 flags = 0); 222 223 virtual void DrawRadioButton(BView* view, BRect& rect, 224 const BRect& updateRect, 225 const rgb_color& base, 226 uint32 flags = 0); 227 228 virtual void DrawScrollBarBackground(BView* view, 229 BRect& rect1, BRect& rect2, 230 const BRect& updateRect, 231 const rgb_color& base, uint32 flags, 232 orientation orientation); 233 virtual void DrawScrollBarBackground(BView* view, 234 BRect& rect, const BRect& updateRect, 235 const rgb_color& base, uint32 flags, 236 orientation orientation); 237 238 /*virtual*/ void DrawScrollViewFrame(BView* view, 239 BRect& rect, const BRect& updateRect, 240 BRect verticalScrollBarFrame, 241 BRect horizontalScrollBarFrame, 242 const rgb_color& base, 243 border_style borderStyle, 244 uint32 flags = 0, 245 uint32 borders = B_ALL_BORDERS); 246 247 /*virtual*/ void DrawArrowShape(BView* view, 248 BRect& rect, const BRect& updateRect, 249 const rgb_color& base, uint32 direction, 250 uint32 flags = 0, 251 float tint = B_DARKEN_MAX_TINT); 252 253 virtual rgb_color SliderBarColor(const rgb_color& base); 254 255 virtual void DrawSliderBar(BView* view, BRect rect, 256 const BRect& updateRect, 257 const rgb_color& base, 258 rgb_color leftFillColor, 259 rgb_color rightFillColor, 260 float sliderScale, uint32 flags, 261 orientation orientation); 262 virtual void DrawSliderBar(BView* view, BRect rect, 263 const BRect& updateRect, 264 const rgb_color& base, rgb_color fillColor, 265 uint32 flags, orientation orientation); 266 267 virtual void DrawSliderThumb(BView* view, BRect& rect, 268 const BRect& updateRect, 269 const rgb_color& base, uint32 flags, 270 orientation orientation); 271 272 /*virtual*/ void DrawSliderTriangle(BView* view, BRect& rect, 273 const BRect& updateRect, 274 const rgb_color& base, uint32 flags, 275 orientation orientation); 276 virtual void DrawSliderTriangle(BView* view, BRect& rect, 277 const BRect& updateRect, 278 const rgb_color& base, 279 const rgb_color& fill, uint32 flags, 280 orientation orientation); 281 282 virtual void DrawSliderHashMarks(BView* view, BRect& rect, 283 const BRect& updateRect, 284 const rgb_color& base, int32 count, 285 hash_mark_location location, 286 uint32 flags, orientation orientation); 287 288 virtual void DrawActiveTab(BView* view, BRect& rect, 289 const BRect& updateRect, 290 const rgb_color& base, uint32 flags = 0, 291 uint32 borders = B_ALL_BORDERS, 292 uint32 side = B_TOP_BORDER); 293 294 virtual void DrawInactiveTab(BView* view, BRect& rect, 295 const BRect& updateRect, 296 const rgb_color& base, uint32 flags = 0, 297 uint32 borders = B_ALL_BORDERS, 298 uint32 side = B_TOP_BORDER); 299 300 /*virtual*/ void DrawSplitter(BView* view, BRect& rect, 301 const BRect& updateRect, 302 const rgb_color& base, 303 orientation orientation, 304 uint32 flags = 0, 305 uint32 borders = B_ALL_BORDERS); 306 307 // various borders 308 309 virtual void DrawBorder(BView* view, BRect& rect, 310 const BRect& updateRect, 311 const rgb_color& base, 312 border_style borderStyle, uint32 flags = 0, 313 uint32 borders = B_ALL_BORDERS); 314 315 virtual void DrawRaisedBorder(BView* view, BRect& rect, 316 const BRect& updateRect, 317 const rgb_color& base, uint32 flags = 0, 318 uint32 borders = B_ALL_BORDERS); 319 320 virtual void DrawGroupFrame(BView* view, BRect& rect, 321 const BRect& updateRect, 322 const rgb_color& base, 323 uint32 borders = B_ALL_BORDERS); 324 325 virtual void DrawTextControlBorder(BView* view, BRect& rect, 326 const BRect& updateRect, 327 const rgb_color& base, uint32 flags = 0, 328 uint32 borders = B_ALL_BORDERS); 329 330 // aligned labels 331 332 /*virtual*/ void DrawLabel(BView* view, const char* label, 333 BRect rect, const BRect& updateRect, 334 const rgb_color& base, uint32 flags, 335 const rgb_color* textColor = NULL); 336 virtual void DrawLabel(BView* view, const char* label, 337 BRect rect, const BRect& updateRect, 338 const rgb_color& base, uint32 flags, 339 const BAlignment& alignment, 340 const rgb_color* textColor = NULL); 341 // TODO: Would be nice to have a (non-virtual) version of this method 342 // which takes an array of labels and locations. That would save some 343 // setup with the view graphics state. 344 /*virtual*/ void DrawLabel(BView* view, const char* label, 345 const rgb_color& base, uint32 flags, 346 const BPoint& where, 347 const rgb_color* textColor = NULL); 348 349 void DrawLabel(BView* view, const char* label, 350 const BBitmap* icon, BRect rect, 351 const BRect& updateRect, 352 const rgb_color& base, uint32 flags, 353 const rgb_color* textColor = NULL); 354 virtual void DrawLabel(BView* view, const char* label, 355 const BBitmap* icon, BRect rect, 356 const BRect& updateRect, 357 const rgb_color& base, uint32 flags, 358 const BAlignment& alignment, 359 const rgb_color* textColor = NULL); 360 361 virtual void GetFrameInsets(frame_type frameType, 362 uint32 flags, float& _left, float& _top, 363 float& _right, float& _bottom); 364 virtual void GetBackgroundInsets( 365 background_type backgroundType, 366 uint32 flags, float& _left, float& _top, 367 float& _right, float& _bottom); 368 void GetInsets(frame_type frameType, 369 background_type backgroundType, 370 uint32 flags, float& _left, float& _top, 371 float& _right, float& _bottom); 372 373 virtual void DrawButtonWithPopUpBackground(BView* view, 374 BRect& rect, const BRect& updateRect, 375 const rgb_color& base, 376 uint32 flags = 0, 377 uint32 borders = B_ALL_BORDERS, 378 orientation orientation = B_HORIZONTAL); 379 virtual void DrawButtonWithPopUpBackground(BView* view, 380 BRect& rect, const BRect& updateRect, 381 float radius, 382 const rgb_color& base, 383 uint32 flags = 0, 384 uint32 borders = B_ALL_BORDERS, 385 orientation orientation = B_HORIZONTAL); 386 virtual void DrawButtonWithPopUpBackground(BView* view, 387 BRect& rect, const BRect& updateRect, 388 float leftTopRadius, 389 float rightTopRadius, 390 float leftBottomRadius, 391 float rightBottomRadius, 392 const rgb_color& base, 393 uint32 flags = 0, 394 uint32 borders = B_ALL_BORDERS, 395 orientation orientation = B_HORIZONTAL); 396 397 void SetBackgroundInfo( 398 const BMessage& backgroundInfo); 399 400 protected: 401 void _DrawButtonFrame(BView* view, BRect& rect, 402 const BRect& updateRect, 403 float leftTopRadius, 404 float rightTopRadius, 405 float leftBottomRadius, 406 float rightBottomRadius, 407 const rgb_color& base, 408 const rgb_color& background, 409 float contrast, float brightness = 1.0, 410 uint32 flags = 0, 411 uint32 borders = B_ALL_BORDERS); 412 413 void _DrawOuterResessedFrame(BView* view, 414 BRect& rect, const rgb_color& base, 415 float contrast = 1.0f, 416 float brightness = 1.0f, 417 uint32 flags = 0, 418 uint32 borders = B_ALL_BORDERS); 419 420 void _DrawFrame(BView* view, BRect& rect, 421 const rgb_color& left, 422 const rgb_color& top, 423 const rgb_color& right, 424 const rgb_color& bottom, 425 uint32 borders = B_ALL_BORDERS); 426 void _DrawFrame(BView* view, BRect& rect, 427 const rgb_color& left, 428 const rgb_color& top, 429 const rgb_color& right, 430 const rgb_color& bottom, 431 const rgb_color& rightTop, 432 const rgb_color& leftBottom, 433 uint32 borders = B_ALL_BORDERS); 434 435 void _DrawButtonBackground(BView* view, BRect& rect, 436 const BRect& updateRect, 437 float leftTopRadius, 438 float rightTopRadius, 439 float leftBottomRadius, 440 float rightBottomRadius, 441 const rgb_color& base, 442 bool popupIndicator = false, 443 uint32 flags = 0, 444 uint32 borders = B_ALL_BORDERS, 445 orientation orientation = B_HORIZONTAL); 446 void _DrawFlatButtonBackground(BView* view, 447 BRect& rect, const BRect& updateRect, 448 const rgb_color& base, 449 bool popupIndicator = false, 450 uint32 flags = 0, 451 uint32 borders = B_ALL_BORDERS, 452 orientation orientation = B_HORIZONTAL); 453 void _DrawNonFlatButtonBackground(BView* view, 454 BRect& rect, const BRect& updateRect, 455 BRegion& clipping, 456 float leftTopRadius, 457 float rightTopRadius, 458 float leftBottomRadius, 459 float rightBottomRadius, 460 const rgb_color& base, 461 bool popupIndicator = false, 462 uint32 flags = 0, 463 uint32 borders = B_ALL_BORDERS, 464 orientation orientation = B_HORIZONTAL); 465 466 void _DrawPopUpMarker(BView* view, const BRect& rect, 467 const rgb_color& base, uint32 flags); 468 469 void _DrawMenuFieldBackgroundOutside(BView* view, 470 BRect& rect, const BRect& updateRect, 471 float leftTopRadius, 472 float rightTopRadius, 473 float leftBottomRadius, 474 float rightBottomRadius, 475 const rgb_color& base, 476 bool popupIndicator = false, 477 uint32 flags = 0); 478 479 void _DrawMenuFieldBackgroundInside(BView* view, 480 BRect& rect, const BRect& updateRect, 481 float leftTopRadius, 482 float rightTopRadius, 483 float leftBottomRadius, 484 float rightBottomRadius, 485 const rgb_color& base, uint32 flags = 0, 486 uint32 borders = B_ALL_BORDERS); 487 488 // Rounded corner methods 489 void _DrawRoundCornerLeftTop(BView* view, 490 BRect& cornerRect, const BRect& updateRect, 491 const rgb_color& background, 492 const rgb_color& edgeColor, 493 const rgb_color& frameColor, 494 const rgb_color& bevelColor, 495 const BGradientLinear& fillGradient); 496 497 void _DrawRoundCornerFrameLeftTop(BView* view, 498 BRect& cornerRect, const BRect& updateRect, 499 const rgb_color& background, 500 const rgb_color& edgeColor, 501 const rgb_color& frameColor); 502 503 void _DrawRoundCornerBackgroundLeftTop(BView* view, 504 BRect& cornerRect, const BRect& updateRect, 505 const rgb_color& bevelColor, 506 const BGradientLinear& fillGradient); 507 508 void _DrawRoundCornerRightTop(BView* view, 509 BRect& cornerRect, const BRect& updateRect, 510 const rgb_color& background, 511 const rgb_color& edgeTopColor, 512 const rgb_color& edgeRightColor, 513 const rgb_color& frameTopColor, 514 const rgb_color& frameRightColor, 515 const rgb_color& bevelTopColor, 516 const rgb_color& bevelRightColor, 517 const BGradientLinear& fillGradient); 518 519 void _DrawRoundCornerFrameRightTop(BView* view, 520 BRect& cornerRect, const BRect& updateRect, 521 const rgb_color& background, 522 const rgb_color& edgeTopColor, 523 const rgb_color& edgeRightColor, 524 const rgb_color& frameTopColor, 525 const rgb_color& frameRightColor); 526 527 void _DrawRoundCornerBackgroundRightTop(BView* view, 528 BRect& cornerRect, const BRect& updateRect, 529 const rgb_color& bevelTopColor, 530 const rgb_color& bevelRightColor, 531 const BGradientLinear& fillGradient); 532 533 void _DrawRoundCornerLeftBottom(BView* view, 534 BRect& cornerRect, const BRect& updateRect, 535 const rgb_color& background, 536 const rgb_color& edgeLeftColor, 537 const rgb_color& edgeBottomColor, 538 const rgb_color& frameLeftColor, 539 const rgb_color& frameBottomColor, 540 const rgb_color& bevelLeftColor, 541 const rgb_color& bevelBottomColor, 542 const BGradientLinear& fillGradient); 543 544 void _DrawRoundCornerFrameLeftBottom(BView* view, 545 BRect& cornerRect, const BRect& updateRect, 546 const rgb_color& background, 547 const rgb_color& edgeLeftColor, 548 const rgb_color& edgeBottomColor, 549 const rgb_color& frameLeftColor, 550 const rgb_color& frameBottomColor); 551 552 void _DrawRoundCornerBackgroundLeftBottom(BView* view, 553 BRect& cornerRect, const BRect& updateRect, 554 const rgb_color& bevelLeftColor, 555 const rgb_color& bevelBottomColor, 556 const BGradientLinear& fillGradient); 557 558 void _DrawRoundCornerRightBottom(BView* view, 559 BRect& cornerRect, const BRect& updateRect, 560 const rgb_color& background, 561 const rgb_color& edgeColor, 562 const rgb_color& frameColor, 563 const rgb_color& bevelColor, 564 const BGradientLinear& fillGradient); 565 566 void _DrawRoundCornerFrameRightBottom(BView* view, 567 BRect& cornerRect, const BRect& updateRect, 568 const rgb_color& background, 569 const rgb_color& edgeColor, 570 const rgb_color& frameColor); 571 572 void _DrawRoundCornerBackgroundRightBottom( 573 BView* view, 574 BRect& cornerRect, const BRect& updateRect, 575 const rgb_color& bevelColor, 576 const BGradientLinear& fillGradient); 577 578 void _DrawRoundBarCorner(BView* view, BRect& rect, 579 const BRect& updateRect, 580 const rgb_color& edgeLightColor, 581 const rgb_color& edgeShadowColor, 582 const rgb_color& frameLightColor, 583 const rgb_color& frameShadowColor, 584 const rgb_color& fillLightColor, 585 const rgb_color& fillShadowColor, 586 float leftInset, float topInset, 587 float rightInset, float bottomInset, 588 orientation orientation); 589 590 // Border color methods 591 rgb_color _EdgeLightColor(const rgb_color& base, 592 float contrast, float brightness, 593 uint32 flags); 594 595 rgb_color _EdgeShadowColor(const rgb_color& base, 596 float contrast, float brightness, 597 uint32 flags); 598 599 rgb_color _FrameLightColor(const rgb_color& base, 600 uint32 flags); 601 602 rgb_color _FrameShadowColor(const rgb_color& base, 603 uint32 flags); 604 605 rgb_color _BevelLightColor(const rgb_color& base, 606 uint32 flags); 607 608 rgb_color _BevelShadowColor(const rgb_color& base, 609 uint32 flags); 610 611 // Background gradient methods 612 void _FillGradient(BView* view, const BRect& rect, 613 const rgb_color& base, float topTint, 614 float bottomTint, 615 orientation orientation = B_HORIZONTAL); 616 617 void _FillGlossyGradient(BView* view, 618 const BRect& rect, const rgb_color& base, 619 float topTint, float middle1Tint, 620 float middle2Tint, float bottomTint, 621 orientation orientation = B_HORIZONTAL); 622 623 void _MakeGradient(BGradientLinear& gradient, 624 const BRect& rect, const rgb_color& base, 625 float topTint, float bottomTint, 626 orientation orientation = B_HORIZONTAL) const; 627 628 void _MakeGlossyGradient(BGradientLinear& gradient, 629 const BRect& rect, const rgb_color& base, 630 float topTint, float middle1Tint, 631 float middle2Tint, float bottomTint, 632 orientation orientation = B_HORIZONTAL) const; 633 634 void _MakeButtonGradient(BGradientLinear& gradient, 635 BRect& rect, const rgb_color& base, 636 uint32 flags, orientation orientation = B_HORIZONTAL) const; 637 638 bool _RadioButtonAndCheckBoxMarkColor( 639 const rgb_color& base, rgb_color& color, 640 uint32 flags) const; 641 642 private: 643 bool fCachedOutline; 644 int32 fCachedWorkspace; 645 BMessage fBackgroundInfo; 646 647 uint32 _reserved[20]; 648 }; 649 650 extern BControlLook* be_control_look; 651 652 653 } // namespace BPrivate 654 655 using BPrivate::BControlLook; 656 using BPrivate::be_control_look; 657 658 659 #endif // _CONTROL_LOOK_H 660