1 /* ==================================================================== 2 * Copyright (c) 2000-2003 by Soheil Seyfaie. All rights reserved. 3 * This program is free software; you can redistribute it and/or modify 4 * it under the same terms as Perl itself. 5 * ==================================================================== 6 * 7 * $Id$ 8 */ 9 10 11 #include "EXTERN.h" 12 #include "perl.h" 13 #include "XSUB.h" 14 15 #include "SWF.h" 16 #include "perl_swf.h" 17 18 19 MODULE = SWF::TextField PACKAGE = SWF::TextField PREFIX = SWFTextField_ 20 PROTOTYPES: ENABLE 21 22 SWF::TextField 23 SWFTextField_new(package="SWF::TextField", ...) 24 char *package 25 PREINIT: 26 int flags; 27 CODE: 28 RETVAL = newSWFTextField(); 29 ST(0) = sv_newmortal(); 30 sv_setref_pv(ST(0), package, (void*)RETVAL); 31 if(items>1){ 32 flags = (int)SvIV(ST(1)); 33 SWFTextField_setFlags(RETVAL, flags); 34 } 35 36 void 37 destroySWFTextField(field) 38 SWF::TextField field 39 ALIAS: 40 SWF::TextField::DESTROY = 1 41 CODE: 42 S_DEBUG(2, fprintf(stderr, "TextField DESTROY CALLED\n")); 43 swf_stash_refcnt_dec((SV*)SvRV(ST(0))); 44 destroySWFTextField(field); 45 46 void 47 SWFTextField_setFont(field, font) 48 SWF::TextField field 49 SWF::Block font = (SWF__Block) SvIV((SV*)SvRV(ST(1))); 50 CODE: 51 swf_stash_refcnt_inc((SV*)SvRV(ST(0)), (SV*)SvRV(ST(1))); 52 SWFTextField_setFont(field, font); 53 54 55 void 56 SWFTextField_setBounds(field, width, height) 57 SWF::TextField field 58 int width 59 int height 60 61 void 62 SWFTextField_setFlags(field, flags) 63 SWF::TextField field 64 int flags 65 66 void 67 SWFTextField_setColor(field, r, g, b, a=0xff) 68 SWF::TextField field 69 byte r 70 byte g 71 byte b 72 byte a 73 74 void 75 SWFTextField_setVariableName(field, name) 76 SWF::TextField field 77 char * name 78 ALIAS: 79 SWF::TextField::setName = 1 80 81 void 82 SWFTextField_addString(field, string) 83 SWF::TextField field 84 char * string 85 86 void 87 SWFTextField_addUTF8String(field, string) 88 SWF::TextField field 89 char * string 90 91 void 92 SWFTextField_setHeight(field, height) 93 SWF::TextField field 94 int height 95 96 void 97 SWFTextField_setPadding(field, padding) 98 SWF::TextField field 99 int padding 100 101 void 102 SWFTextField_setMargins(field, left, right) 103 SWF::TextField field 104 int left 105 int right 106 CODE: 107 SWFTextField_setLeftMargin(field, left); 108 SWFTextField_setRightMargin(field, right); 109 110 111 void 112 SWFTextField_setLeftMargin(field, leftMargin) 113 SWF::TextField field 114 int leftMargin 115 116 void 117 SWFTextField_setRightMargin(field, rightMargin) 118 SWF::TextField field 119 int rightMargin 120 121 void 122 SWFTextField_setIndentation(field, indentation) 123 SWF::TextField field 124 int indentation 125 126 void 127 SWFTextField_setLineSpacing(field, lineSpacing) 128 SWF::TextField field 129 int lineSpacing 130 131 void 132 SWFTextField_setAlignment(field, alignment) 133 SWF::TextField field 134 int alignment 135 ALIAS: 136 SWF::TextField::align = 1 137 138 void 139 SWFTextField_addChars(field, string) 140 SWF::TextField field 141 char * string 142 143 void 144 SWFTextField_addUTF8Chars(field, string) 145 SWF::TextField field 146 char * string 147 148 void 149 SWFTextField_setLength(field, len) 150 SWF::TextField field 151 int len 152 153 void 154 SWFTextField_setFieldHeight(field, height) 155 SWF::TextField field 156 int height 157 158