summaryrefslogtreecommitdiff
path: root/packages/cocoaint/src/appkit/NSDatePickerCell.inc
blob: b82955e7b421f7468a38a87635b3058e92f020a7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
{ Parsed from Appkit.framework NSDatePickerCell.h }
{ Version: 2.1.2 - Wed Dec 8 10:06:06 CET 2010 }


{$ifdef TYPES}
{$ifndef NSDATEPICKERCELL_PAS_T}
{$define NSDATEPICKERCELL_PAS_T}

{ Constants }

const
  NSTextFieldAndStepperDatePickerStyle = 0;
  NSClockAndCalendarDatePickerStyle = 1;
  NSTextFieldDatePickerStyle = 2;

const
  NSSingleDateMode = 0;
  NSRangeDateMode = 1;

const
  NSHourMinuteDatePickerElementFlag = $000c;
  NSHourMinuteSecondDatePickerElementFlag = $000e;
  NSTimeZoneDatePickerElementFlag = $0010;
  NSYearMonthDatePickerElementFlag = $00c0;
  NSYearMonthDayDatePickerElementFlag = $00e0;
  NSEraDatePickerElementFlag = $0100;

{ Types }
type
  NSDatePickerStyle = NSUInteger;
  NSDatePickerStylePtr = ^NSDatePickerStyle;
  NSDatePickerMode = NSUInteger;
  NSDatePickerModePtr = ^NSDatePickerMode;
  NSDatePickerElementFlags = NSUInteger;
  NSDatePickerElementFlagsPtr = ^NSDatePickerElementFlags;

{$endif}
{$endif}

{$ifdef RECORDS}
{$ifndef NSDATEPICKERCELL_PAS_R}
{$define NSDATEPICKERCELL_PAS_R}

{$endif}
{$endif}

{$ifdef FUNCTIONS}
{$ifndef NSDATEPICKERCELL_PAS_F}
{$define NSDATEPICKERCELL_PAS_F}

{$endif}
{$endif}

{$ifdef EXTERNAL_SYMBOLS}
{$ifndef NSDATEPICKERCELL_PAS_S}
{$define NSDATEPICKERCELL_PAS_S}

{$endif}
{$endif}

{$ifdef FORWARD}
  NSDatePickerCellDelegateProtocol = objcprotocol;
  NSDatePickerCell = objcclass;
  NSDatePickerCellPointer = ^NSDatePickerCell;
  NSDatePickerCellPtr = NSDatePickerCellPointer;

{$endif}

{$ifdef CLASSES}
{$ifndef NSDATEPICKERCELL_PAS_C}
{$define NSDATEPICKERCELL_PAS_C}

{ NSDatePickerCell }
  NSDatePickerCell = objcclass(NSActionCell)
  private
    _timeInterval: NSTimeInterval;
    _minDate: NSDate;
    _maxDate: NSDate;
    __dcFlags: bitpacked record
      case byte of
       0: (_anonbitfield_NSDatePickerCell0: cuint);
       1: (
        elements: 0..((1 shl 16)-1);
        controlStyle: 0..((1 shl 3)-1);
        controlMode: 0..((1 shl 2)-1);
        trackingHand: 0..((1 shl 2)-1);
        reserved2: 0..((1 shl 4)-1);
        _drawsBackground: 0..1;
        digitsEntered: 0..((1 shl 2)-1);
        forcesLeadingZeroes: 0..1;
        wrapsDateComponentArithmetic: 0..1;
      );
      end;
    _delegate: id;
    _calendar: NSCalendar;
    _locale: NSLocale;
    _timeZone: NSTimeZone;
    _backgroundColor: NSColor;
    _textColor: NSColor;
    _indexOfSelectedSubfield: cint;
    _reserved0: cint;
    _reserved1: id;
    _reserved2: id;
    _reserved3: id;
    _reserved4: id;
    
  public
    class function alloc: NSDatePickerCell; message 'alloc';

    function datePickerStyle: NSDatePickerStyle; message 'datePickerStyle';
    procedure setDatePickerStyle(newStyle: NSDatePickerStyle); message 'setDatePickerStyle:';
    function drawsBackground: Boolean; message 'drawsBackground';
    procedure setDrawsBackground(flag: Boolean); message 'setDrawsBackground:';
    function backgroundColor: NSColor; message 'backgroundColor';
    procedure setBackgroundColor(color: NSColor); message 'setBackgroundColor:';
    function textColor: NSColor; message 'textColor';
    procedure setTextColor(color: NSColor); message 'setTextColor:';
    function datePickerMode: NSDatePickerMode; message 'datePickerMode';
    procedure setDatePickerMode(newMode: NSDatePickerMode); message 'setDatePickerMode:';
    function datePickerElements: NSDatePickerElementFlags; message 'datePickerElements';
    procedure setDatePickerElements(elementFlags: NSDatePickerElementFlags); message 'setDatePickerElements:';
    function calendar: NSCalendar; message 'calendar';
    procedure setCalendar(newCalendar: NSCalendar); message 'setCalendar:';
    function locale: NSLocale; message 'locale';
    procedure setLocale(newLocale: NSLocale); message 'setLocale:';
    function timeZone: NSTimeZone; message 'timeZone';
    procedure setTimeZone(newTimeZone: NSTimeZone); message 'setTimeZone:';
    function dateValue: NSDate; message 'dateValue';
    procedure setDateValue(newStartDate: NSDate); message 'setDateValue:';
    function timeInterval: NSTimeInterval; message 'timeInterval';
    procedure setTimeInterval(newTimeInterval: NSTimeInterval); message 'setTimeInterval:';
    function minDate: NSDate; message 'minDate';
    procedure setMinDate(date: NSDate); message 'setMinDate:';
    function maxDate: NSDate; message 'maxDate';
    procedure setMaxDate(date: NSDate); message 'setMaxDate:';
    function delegate: id; message 'delegate';
    procedure setDelegate(anObject: id); message 'setDelegate:';
  end; external;

{$endif}
{$endif}
{$ifdef PROTOCOLS}
{$ifndef NSDATEPICKERCELL_PAS_P}
{$define NSDATEPICKERCELL_PAS_P}
  
{ NSDatePickerCellDelegate Protocol }
  NSDatePickerCellDelegateProtocol = objcprotocol
    procedure datePickerCell_validateProposedDateValue_timeInterval(aDatePickerCell: NSDatePickerCell; proposedDateValue: NSDatePointer; proposedTimeInterval: NSTimeIntervalPtr); message 'datePickerCell:validateProposedDateValue:timeInterval:';
  end; external name 'NSDatePickerCellDelegate';
{$endif}
{$endif}