خیلی وقت پیش نسخهی اولیهی whiteboard را برای استفاده در کلاس آنلاین با استفاده از امکانات کلاس Graphics از ActionScript نوشتم. کار نسبتاً خوبی از آب در آمده بود. امّا مشکلاتی هم داشت.
دو سه ماه پیش با Degrafa آشنا شدم و در این مدّت از امکانات آن برای طراحی skin های جدید و component هایی با ظاهر غیر Flexی ( آخه دیگه از قیافهی سادهی Componentهای Flex حالم به هم میخوره :دی) بسیار کار کردم و لذت فراوان بردم. امّا چند روز پیش به ذهنم رسید از degrafa برای ساختن سریع و کارامد یک whiteboard جدید هم میتوان استفاده کرد. ضمن گشتی که در اینترنت زدم به این مثال رسیدم که بهصورت کد باز عرضه شده بود. با استفاده از کلاسهای آن و extend کردن آن برای رسم path به سوی یک whiteboard پیش رفتم.
برای این کار نیاز به update کردن مقدار data برای یک path (در Degrafa) داشتم. وقتی به طور معمولی مقدار یک String را (که dataی path به آن bind شده بود) تغییر میدادم cpu usage بسیار بالا میرفت. با جستجو در degrafa group به این صفحه رسیدم. البته مشکل مطرح شده در این صفحه چیز دیگری بود امّا راه حل ارائه شده مشکل من را هم حل کرد. راه حل ساده بود : مقدار dataی path را از حالت Bindable درآوردم و آن را به صورت دستی هر وقت نیاز بود set کردم امّا قبل از set کردن آن، مقدار segments را برای path به [ ] تغییر دادم.
Farid Arzpeyma
آبان ۱۸م، ۱۳۸۷ در زمان ۴:۳۸ ق.ظ
Nice Weblog