comparison dwt/internal/cocoa/NSWhoseSpecifier.d @ 0:380af2bdd8e5

Upload of whole dwt tree
author Jacob Carlborg <doob@me.com> <jacob.carlborg@gmail.com>
date Sat, 09 Aug 2008 17:00:02 +0200
parents
children 8b48be5454ce
comparison
equal deleted inserted replaced
-1:000000000000 0:380af2bdd8e5
1 /*******************************************************************************
2 * Copyright (c) 2007 IBM Corporation and others.
3 * All rights reserved. This program and the accompanying materials
4 * are made available under the terms of the Eclipse Public License v1.0
5 * which accompanies this distribution, and is available at
6 * http://www.eclipse.org/legal/epl-v10.html
7 *
8 * Contributors:
9 * IBM Corporation - initial API and implementation
10 *
11 * Port to the D Programming language:
12 * Jacob Carlborg <jacob.carlborg@gmail.com>
13 *******************************************************************************/
14 module dwt.internal.cocoa.NSWhoseSpecifier;
15
16 import dwt.internal.cocoa.id;
17 import dwt.internal.cocoa.NSInteger;
18 import dwt.internal.cocoa.NSScriptClassDescription;
19 import dwt.internal.cocoa.NSScriptObjectSpecifier;
20 import dwt.internal.cocoa.NSScriptWhoseTest;
21 import dwt.internal.cocoa.NSString;
22 import dwt.internal.cocoa.OS;
23 import objc = dwt.internal.objc.runtime;
24
25
26
27 enum NSWhoseSubelementIdentifier
28 {
29 NSIndexSubelement = 0,
30 NSEverySubelement = 1,
31 NSMiddleSubelement = 2,
32 NSRandomSubelement = 3,
33 NSNoSubelement = 4
34 }
35
36 alias NSWhoseSubelementIdentifier.NSIndexSubelement NSIndexSubelement;
37 alias NSWhoseSubelementIdentifier.NSEverySubelement NSEverySubelement;
38 alias NSWhoseSubelementIdentifier.NSMiddleSubelement NSMiddleSubelement;
39 alias NSWhoseSubelementIdentifier.NSRandomSubelement NSRandomSubelement;
40 alias NSWhoseSubelementIdentifier.NSNoSubelement NSNoSubelement;
41
42
43
44 public class NSWhoseSpecifier : NSScriptObjectSpecifier
45 {
46
47 public this ()
48 {
49 super();
50 }
51
52 public this (objc.id id)
53 {
54 super(id);
55 }
56
57 public NSWhoseSubelementIdentifier endSubelementIdentifier ()
58 {
59 return cast(NSWhoseSubelementIdentifier) OS.objc_msgSend(this.id, OS.sel_endSubelementIdentifier);
60 }
61
62 public NSInteger endSubelementIndex ()
63 {
64 return cast(NSInteger) OS.objc_msgSend(this.id, OS.sel_endSubelementIndex);
65 }
66
67 public id initWithContainerClassDescription (NSScriptClassDescription classDesc, NSScriptObjectSpecifier container, NSString property,
68 NSScriptWhoseTest test)
69 {
70 objc.id result = OS.objc_msgSend(this.id, OS.sel_initWithContainerClassDescription_1containerSpecifier_1key_1test_1,
71 classDesc !is null ? classDesc.id : null, container !is null ? container.id : null, property !is null ? property.id : null,
72 test !is null ? test.id : null);
73 return result !is null ? new id(result) : null;
74 }
75
76 public void setEndSubelementIdentifier (NSWhoseSubelementIdentifier subelement)
77 {
78 OS.objc_msgSend(this.id, OS.sel_setEndSubelementIdentifier_1, subelement);
79 }
80
81 public void setEndSubelementIndex (NSInteger index)
82 {
83 OS.objc_msgSend(this.id, OS.sel_setEndSubelementIndex_1, index);
84 }
85
86 public void setStartSubelementIdentifier (NSWhoseSubelementIdentifier subelement)
87 {
88 OS.objc_msgSend(this.id, OS.sel_setStartSubelementIdentifier_1, subelement);
89 }
90
91 public void setStartSubelementIndex (NSInteger index)
92 {
93 OS.objc_msgSend(this.id, OS.sel_setStartSubelementIndex_1, index);
94 }
95
96 public void setTest (NSScriptWhoseTest test)
97 {
98 OS.objc_msgSend(this.id, OS.sel_setTest_1, test !is null ? test.id : null);
99 }
100
101 public NSWhoseSubelementIdentifier startSubelementIdentifier ()
102 {
103 return cast(NSWhoseSubelementIdentifier) OS.objc_msgSend(this.id, OS.sel_startSubelementIdentifier);
104 }
105
106 public NSInteger startSubelementIndex ()
107 {
108 return cast(NSInteger) OS.objc_msgSend(this.id, OS.sel_startSubelementIndex);
109 }
110
111 public NSScriptWhoseTest test ()
112 {
113 objc.id result = OS.objc_msgSend(this.id, OS.sel_test);
114 return result !is null ? new NSScriptWhoseTest(result) : null;
115 }
116
117 }