home *** CD-ROM | disk | FTP | other *** search
/ OpenStep 4.2 / Openstep-4.2-Intel-Developer.iso / NextLibrary / Frameworks / AppKit.framework / Versions / B / Headers / NSScroller.h < prev    next >
Text File  |  1996-10-17  |  2KB  |  78 lines

  1. /*
  2.     NSScroller.h
  3.     Application Kit
  4.     Copyright (c) 1994-1996, NeXT Software, Inc.
  5.     All rights reserved.
  6. */
  7.  
  8. #import <AppKit/NSControl.h>
  9.  
  10. typedef enum _NSScrollArrowPosition {
  11.     NSScrollerArrowsMaxEnd        = 0,
  12.     NSScrollerArrowsMinEnd        = 1,
  13.     NSScrollerArrowsNone        = 2
  14. } NSScrollArrowPosition;
  15.  
  16. typedef enum _NSUsableScrollerParts {
  17.     NSNoScrollerParts            = 0,
  18.     NSOnlyScrollerArrows        = 1,
  19.     NSAllScrollerParts            = 2
  20. } NSUsableScrollerParts;
  21.  
  22. typedef enum _NSScrollerPart {
  23.     NSScrollerNoPart            = 0,
  24.     NSScrollerDecrementPage        = 1,
  25.     NSScrollerKnob            = 2,
  26.     NSScrollerIncrementPage        = 3,
  27.     NSScrollerDecrementLine            = 4,
  28.     NSScrollerIncrementLine         = 5,
  29.     NSScrollerKnobSlot            = 6
  30. } NSScrollerPart;
  31.  
  32. typedef enum _NSScrollerArrow {
  33.     NSScrollerIncrementArrow        = 0,
  34.     NSScrollerDecrementArrow        = 1
  35. } NSScrollerArrow;
  36.  
  37. @interface NSScroller : NSControl
  38. {
  39.     float               _curValue;
  40.     float               _percent;
  41.     float        _knobSize;
  42.     int                 _hitPart;
  43.     id                  _target;
  44.     SEL                 _action;
  45.     struct _sFlags {
  46.     unsigned int        isHoriz:1;
  47.         NSScrollArrowPosition    arrowsLoc:2;
  48.         NSUsableScrollerParts    partsUsable:2;
  49.     unsigned int        fine:1;
  50.     unsigned int        needsEnableFlush:1;
  51.     unsigned int        thumbing:1;
  52.     unsigned int        slotDrawn:1;
  53.     unsigned int        knobDrawn:1;
  54.         unsigned int            lit:1;
  55.         unsigned int        RESERVED:21;
  56.     } sFlags;
  57. }
  58.  
  59. + (float)scrollerWidth;
  60.  
  61. - (void)drawParts;
  62. - (NSRect)rectForPart:(NSScrollerPart)partCode;
  63. - (void)checkSpaceForParts;
  64. - (NSUsableScrollerParts)usableParts;
  65. - (void)setArrowsPosition:(NSScrollArrowPosition)where;
  66. - (NSScrollArrowPosition)arrowsPosition;
  67. - (void)drawArrow:(NSScrollerArrow)whichArrow highlight:(BOOL)flag;
  68. - (void)drawKnob;
  69. - (void)highlight:(BOOL)flag;
  70. - (NSScrollerPart)testPart:(NSPoint)thePoint;
  71. - (void)trackKnob:(NSEvent *)theEvent;
  72. - (void)trackScrollButtons:(NSEvent *)theEvent;
  73. - (NSScrollerPart)hitPart;
  74. - (void)setFloatValue:(float)aFloat knobProportion:(float)percent;
  75. - (float)knobProportion;
  76.  
  77. @end
  78.