func init // adds using namespace sys.add_use('System.Drawing') // initialize instance params = this.props('Constructor').value if(params == 'Constructor') params = '' + d("pt") elseif(params == 'Constructor2') params = '' + d("Width") + ', ' + d("Height") end sys.add_object(this.codename, 'Size', params) // initialize properties sys.set_typed_field(1, 'Height') sys.set_typed_field(1, 'Width') // makes implementation methods for properties sys._prop_init('.Height', 1, 1, 1) sys._prop_init('IsEmpty', 1, 0, 104) sys._prop_init('.Width', 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('Size') end func doSize(data) blk.println(this.codename, ' = ', d("sz1"), ';') end func doConstructor(data) blk.println(this.codename, ' = new Size(', d("pt"), ');') end func doConstructor2(data) blk.println(this.codename, ' = new Size(', d("Width"), ', ', d("Height"), ');') end func Empty return('Size.Empty') end func doAdd(data) if(sys.is_linked(3)) blk.println(this.codename, ' = Size.Add(', d("sz1"), ', ', d("sz2"), ');') event("onAdd", this.codename) else event("onAdd", 'Size.Add(' + d("sz1") + ', ' + d("sz2") + ')') end end func doCeiling(data) if(sys.is_linked(3)) blk.println(this.codename, ' = Size.Ceiling(', d("value"), ');') event("onCeiling", this.codename) else event("onCeiling", 'Size.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 doRound(data) if(sys.is_linked(3)) blk.println(this.codename, ' = Size.Round(', d("value"), ');') event("onRound", this.codename) else event("onRound", 'Size.Round(' + d("value") + ')') end end func doSubtract(data) if(sys.is_linked(3)) blk.println(this.codename, ' = Size.Subtract(', d("sz1"), ', ', d("sz2"), ');') event("onSubtract", this.codename) else event("onSubtract", 'Size.Subtract(' + d("sz1") + ', ' + d("sz2") + ')') end end func doTruncate(data) if(sys.is_linked(3)) blk.println(this.codename, ' = Size.Truncate(', d("value"), ');') event("onTruncate", this.codename) else event("onTruncate", 'Size.Truncate(' + d("value") + ')') end end