func init // adds using namespace sys.add_use('System.Drawing') // initialize instance params = this.props('Constructor').value if(params == 'Constructor') params = '' + d("dw") elseif(params == 'Constructor2') params = '' + d("sz") elseif(params == 'Constructor3') params = '' + sys.get_typed_field(0, 'X', 1) + ', ' + sys.get_typed_field(0, 'Y', 1) end sys.add_object(this.codename, 'Point', params) // makes implementation methods for properties sys._prop_init('IsEmpty', 1, 0, 104) sys._prop_init('.X', 1, 1, 1) sys._prop_init('.Y', 1, 1, 1) // makes implementation of methods as properties sys._mtd_as_prop_init('GetHashCode()') sys._mtd_as_prop_init('ToString()') sys._mtd_as_prop_init('Point') end func doConstructor(data) blk.println(this.codename, ' = new Point(', d("dw"), ');') end func doConstructor2(data) blk.println(this.codename, ' = new Point(', d("sz"), ');') end func doConstructor3(data) blk.println(this.codename, ' = new Point(', d("x"), ', ', d("y"), ');') end func doPoint(data) blk.println(this.codename, ' = ', d("pt"), ';') end func Empty return('Point.Empty') end func doAdd(data) if(sys.is_linked(3)) blk.println(this.codename, ' = Point.Add(', d("pt"), ', ', d("sz"), ');') event("onAdd", this.codename) else event("onAdd", 'Point.Add(' + d("pt") + ', ' + d("sz") + ')') end end func doCeiling(data) if(sys.is_linked(3)) blk.println(this.codename, ' = Point.Ceiling(', d("value"), ');') event("onCeiling", this.codename) else event("onCeiling", 'Point.Ceiling(' + d("value") + ')') end end func doEquals(data) if(linked("onEquals")) event("onEquals", this.codename + '.Equals(' + d("obj") + ')') else blk.println(this.codename, '.Equals(', d("obj"), ');') end end func doOffset(data) blk.println(this.codename, '.Offset(', d("pt"), ');') end func doOffset2(data) blk.println(this.codename, '.Offset(', d("dx"), ', ', d("dy"), ');') end func doRound(data) if(sys.is_linked(3)) blk.println(this.codename, ' = Point.Round(', d("value"), ');') event("onRound", this.codename) else event("onRound", 'Point.Round(' + d("value") + ')') end end func doSubtract(data) if(sys.is_linked(3)) blk.println(this.codename, ' = Point.Subtract(', d("pt"), ', ', d("sz"), ');') event("onSubtract", this.codename) else event("onSubtract", 'Point.Subtract(' + d("pt") + ', ' + d("sz") + ')') end end func doTruncate(data) if(sys.is_linked(3)) blk.println(this.codename, ' = Point.Truncate(', d("value"), ');') event("onTruncate", this.codename) else event("onTruncate", 'Point.Truncate(' + d("value") + ')') end end