پلاگین های Free Man

K@M@L

Well-Known Member
سلام دوست عزیز

اول تشکر می کنم از شما بخاطر پلاگین هایی که ساختید مخصوصا پلاگین Useful Objects

من چندتا پیشنهاد در رابطه با پلاگین Useful Objects داشتم که آنها را اینجا عرض میکنم

پیشنهاد اول اینه که در قسمت Combo Box برای کادر متنی یه دکمه فعال ، غیره فعال ایجاد کنید. چون کادر متنی میتونه برای بعضی موارد کاربردی و بعضی موارد غیره کاربردی باشه.

پیشنهاد دوم اینه که در قسمت Check List میتونیم نوشته ها را غیره فعال کنیم ، آیا این امکان رو هم میتونید برای قسمت List View طراحی کنید؟ یعنی اینکه یه ستون یا یه ردیف غیره فعال بشه.

پیشنهاد سوم من نیز قبلا گفته شده و من فقط یه مقدار کاملش میکنم. در قسمت List View اگر آیکون نیز قرار بدید و همچنین امکان تغییر این ایکونها در حین کار با برنامه وجود داشته باشه واقعا خیلی کاربردی میشه همچنین اگر بشه که آیکون برای همه ستون ها قرار داد ، از چیزی که هست خیلی عالی تر میشه.

پیشنهاد چهارم که یه مقدار برای من مشکل ساز شد اینه که در قسمت List View ، اگر بشه که یک ردیف رو بدون کلیک در رو پلاگین سلکت کرد یعنی با یک دکمه مثلا ردیف 3 رو سلکت کنه مشکل من نیز حل میشه.

پیشنهاد آخرم اینه که آیا میتونید در قسمت History Graph ، بیش از یک خط ( نمیدونم بهش چی میگن ) ایجاد کنید ؟

موفق باشید...
 

Free Man

کاربر متخصص مولتی مدیا بیلدر
kamalhamidi تشکر از نکاتی که بیان نمودید.

پیشنهاد اول : در نسخه ی جدید قرار خواهد گرفت.

پیشنهاد دوم : چنین امکانی را برای ListView ندیدم.

پیشنهاد سوم : این امکان در نسخه ی جدید قرار داده شده.

پیشنهاد چهارم : ListView یک آبجکت جهت نمایش اطلاعات می باشد ،

و کلا ساختار متفاوتی نسبت به ListBox دارد (این امکان به صورت پیش فرض

در این شی وجود ندارد).

پیشنهاد آخر : برای دو خط انجام شده ، اما تعداد بیشتر را امتحان نکردم

(سعی خودم را می کنم).

(نام استاندارد این شی ، History Graph می باشد

و با دارا بودن بیش از یک خط (نمودار) آن را Multi History Graph

می نامیم)
 

محمدمهدی

Well-Known Member
ایده میده

از تمامی دوستانی که نظر ، پیشنهاد و یا انتقادی در مورد

این پلاگین ها دارند ، خواهشمندم که مطالب خود را در

این مبحث بیان کنند ، تا من با این کمک بزرگ از طرف شما بتوانم

نسخه های آینده را پربار و کاربردی ارائه دهم.

با تشکر فراوان.


:paint:

آقا یه چیزی
اگر بتونی توی IMage Proccssor یه خاصیتی بزاری که ما توسط اون یه عکس رو لود کنیم توی ام ام بی و خود اون عکس یه آبجکت بشه و یا اینکه بتونیم پیکسلهاش رو بدون load کردنش از روی فایل یا clipboard بخونیم. اصلا بتونیم عکس رو از روی clipboard بهونیم، خیلی خوب میشه!

مثلا x=100 , y= 200 عکس چه رنگیه؟
____________________________
بعدشم اینکه بتونیم ببینیم پسوند یه فایل واقعای هست یا نه؟
____________________________
و اینکه اگر بتونی توسط ام ام بی با tree هم ارتباط برقرار کنی عالی میشه.
یا اینکه یه پلاگین با آبجکت tree به همراه تعیین تمام حالتهای parent و child بزار.

___________________________
اگه پلاگینت بتونه شب به شب بره سوسک ها رو بکشه هم خوبه!
 
آخرین ویرایش:

Free Man

کاربر متخصص مولتی مدیا بیلدر
محمدمهدی عزیز ، قصد لود کردن و نمایش فایل های تصویری

را در این پلاگین داشته ام اما به علت اینکه پلاگین تنها 4 فرمت از

فایل های تصویری را پشتیبانی می کرد ، این امکان را در

نسخه ی جاری قرار ندادم ،

در نسخه ی جدید ، این امکان با پشتیبانی از فرمت های

بیشتر ارائه خواهد شد.

منظورتون را از این جمله متوجه نشدم:
"بعدشم اینکه بتونیم ببینیم پسوند یه فایل واقعای هست یا نه؟"

آبجکت TreeView یکی از کاربردی ترین و پیچیده ترین اشیای موجود

می باشد که در حال تلاش برای ایجاد کردن این شی

برای UsefulObjects هستم.

با تشکر از نکات و پیشنهاداتی که بیان کردید.


موفق باشید.
 

peyman136

کاربر متخصص مولتی مدیا بیلدر
سلام به همه
FreeMan یه پیش نهاد برای ListView دارم اگه یه کد دیگه برای انتخاب نحوه نشون دادن خطوط پلاگین بذاری بهتره منظورم اینه که یه کد بذاری تا کاربر به انتخاب خودش بتونه خطوط رو نشون بده یا پنهان کنه مثل پلاگین ListView
 

Free Man

کاربر متخصص مولتی مدیا بیلدر
سلام دوست عزیز ،

ممنون از یاداوریتون ، بنده برای String Grid چنین

امکانی را قرار داده بودم اما فراموش کردم برای List View قرار بدهم.

این امکان را منظور خواهم کرد.
 

K@M@L

Well-Known Member
سلام

پیشنهاد دوم : چنین امکانی را برای ListView ندیدم.
خوب اول اینکه منظور من ردیف بود و دوم اینکه شما میتونید این کار رو برای اولین بار در پلاگین خودتو بسازید البته اگر این امکان
هست

در رابطه با جمله ای که آقای محمد مهدی فرمود
بعدشم اینکه بتونیم ببینیم پسوند یه فایل واقعای هست یا نه؟

اگر من منظور ایشان رو درست متوجه شدم این است که به عنوان مثال یک عکس png رو در نظر بگیرید ، این عکس توسط یک کاربر به jpg تغییر نام پیدا می کنه بدون اینکه تبدیل بشه ، خوب برنامه mmb نمی تونه فایل های png رو در برنامه لود کنه پس اگر بخواهیم این عکس رو در mmb لود کنیم برنامه یک پیغام خطا به کاربر میده.
بنابراین اگر پلاگین شما بتونه که تشخیص بده که این عکس ، یک عکس png هست دیگه پیغام خطایی داده نمیشه و از لود آن میتونیم جلو گیری کنیم.

من همچنین یک پیشنهاد دیگه برای این پلاگین داشتم و این هست که قدرت پلاگین رو بالا ببرید. منظورم این هست که بتونه تصویرها رو تغییر اندازه بده ، بتونه تصویر رو Crop کنه ، بتونه رنگهای تصویر رو تغییر بده مثلا background و ...

در رابطه با پلاگین System Rezone و قدرت قرار دادن یک برنامه در Internet Explorer . آیا میتونید امکان قرار دادن یک toolbar
جدید رو به پلاگین اضافه کنید و همچنین وسعت این کار رو بیشتر کنید یعنی بشه برای Firefox و ... نیز این کار رو کرد یا حداقل یک دکمه به بقیه ی مرورگرها اضافه کرد.

و مطلب آخر نیز در رابطه با treeview هست. طبق گفته شما ساخت این آبجکت سخت هست اما امیدوارم که قرار دادن آیکون و همچنین checkbox رو نیز فراموش نکنید.

موفق و پیروز باشید ...
 

Free Man

کاربر متخصص مولتی مدیا بیلدر
تشکر از پیشنهادهای شما.

kamalhamidi##

خیلی از کارها امکان انجام دادنشان وجود دارد اما باید

ببینیم که آیا این کارها ارزش صرف وقت زیاد را دارند یا خیر.

و یا شاید در این مدت زمان بشود کارهای مفیدتری انجام داد.

در Image Processor جدید چنین امکانی را قرار خواهم داد (تشخیص فرمت)

روی دیگر پیشنهادات شما در مورد این پلاگین نیز کار خواهم کرد.

در مورد System Rezone ، قرار دادن ToolBar نیز امکان پذیر می باشد.

اضافه کردن دکمه به مرورگرهای دیگر ، به سادگی مرورگر IE نمی باشد

زیرا که IE از استاندارد های موجود استفاده می کند اما در بعضی از نرم افزارها

جهت بالا بردن امنیت ، از چنین استانداردهایی پیروی نمی شود.

در List View امکان CheckBox را قرار داده بودم و در نسخه ی جدید ، امکان قرار

دادن آیکون و تصاویر نیز گنجانده شده.

حتما ، اگر در ایجاد Tree View موفق بودم ، به فکر چنین خصوصیاتی نیز خواهم بود.

(اکثر این اشیا را ساخته ام ، اما مشکل ارتباط آنها با MMB می باشد

به طور مثال یک ListView بسیار قدرتمند ایجاد کرده ام ، اما با ساختار پلاگین های

MMB سازگار نمی باشد.)
 

ubuntu

Member
من فکر کنم Tree View خيلي سنگين بشه. اگه يه پلاگ‌اين جدا بزني اختصاصي براش فکر کنم بهتر بشه.
راستي فکر کنم اگه همين جوري که دوستان از شما تقاضا مي‌کنن پيش بره، حجم پلاگ‌اينها به گيگابايت بکشه!!!
 
آخرین ویرایش:

Free Man

کاربر متخصص مولتی مدیا بیلدر
ubuntu ، دوست عزیز ، پلاگین UO ساختار متفاوتی با دیگر پلاگین ها دارد.

به این معنی که پس از ایجاد شی ، آن را در فرم پلاگین قرار نمی دهم ،

بلکه آن را به صورت کد خالص در آورده و در پلاگین قرار می دهم ، همین امر باعث

شده که حجم این پلاگین از چیزی که باید باشد بسیار کمتر باشد.

به طور مثال برای HistoryGraph اگر از کد خالص استفاده نمی کردم

و آن را مستقیم و با زحمتی اندک درون برنامه می گذاشتم ، باید جهت

تنها نمایش 10 دقیقه ای از این نمودار حدود 6 مگابایت حجم را تحمل می کردم.

زیرا که پس زمینه ی این نمودار یک عکس است که با کدهای گرافیکی

خط در آن بالا و پایین میشود ، و همان طور که می دانید این نمودار

بسمت چپ در حرکت است ، فکر می کنید اگر از یک عکس استفاده می کردم

باید آن عکس چه طولی داشت که پس از این همه بسمت چپ رفتن تمام نمیشد؟!!؟

پس مسلما برای نمایش مدت کوتاهی از این نمودار باید عکس بسیار حجیمی در پلاگین

قرار می دادم ، اما این کار را نکردم و عکس را با برنامه نویسی پیکسلی ایجاد کردم

، و سبب شد که حجم این نمودار به 7 کیلوبایت برسد.

به همین روش ، دیگر ابزار هم با کد در پلاگین قرار دادم ،

دوستان گرامی ، نگرانی از بابت حجم نداشته باشید ، پیچیده ترین آبجکت

حداکثر می تواند 50 کیلوبایت به حجم پلاگین اضافه کند.

لطفا تمامی نکات و نظرات خود را بیان کنید تا بتوانم کاری جامع و کاربر پسند ارائه دهم.


با تشکر...
 

silvercover

کاربر متخصص
درود بر جناب Free Man،

آیا این امکان برای شما وجود داره که رویداد ( Event ) های رخ داده در اشیا ویژوال پلاگین UO رو به بیلدر پاس کنید؟ مثلا در همین شی ListView رویداد دابل کلیک بر هدرش یا رویداد های پرکاربرد مشابه در سایر اشیا. به این صورت که برای هر رویداد خاص یک شی اسکریپت در بیلدر فراخوانی بشه تا کد های متناسب با رویداد درش درج بشه.

همون طور که آگاهید، فراخوانی شی اسکریپ بیلدر به دو طریق ارسال پیام ( API ) و فرخوانی شی اسکریپ با ارسال کلیدهای میانبر از جانب پلاگین به بیلدر امکان پذیر هست. حال بد ندیدم که برای انعطاف بیشتر این ویژگی هم در مجموعه پلاگین اعمال بشه در صورت صلاح دید شما.
 

Free Man

کاربر متخصص مولتی مدیا بیلدر
سلام به silvercover عزیز و گرامی ،

در نسخه ی جاری (1.4) ، چند نمونه از رویدادها موجود هستند که به MMB پاس می شوند.

هنگام انتخاب رنگ ، پلاگین ، اسکریپت دلخواه شما را که در MMB قرار دارد اجرا می کند.
کد:
** Set Event Script (Run This Script 'GetColor' , When You Select Color)
************************************************
text$='GetColor'
PluginSet("PlugIn","text$")
PluginRun("PlugIn","ColorBoxScript")

و به همین صورت برای CheckList, ComboBox, RadioPanel یک Event قرار داده شده.

ایده ی خوبی می باشد ، رویدادهایی که بیان نمودید را اعمال خواهم کرد.

راستی ، با امید به خدا Sort را برای ListView کامل کرده ام و در حال اعمال آن برای Header ها

هستم. (به این صورت که با کیلیک روی هر هدر ، لیست بر اساس مقادیر آن ستون مرتب می شود.)

تشکر جهت ارائه ی نظر و پیشنهادهایتان.

حدود یک هفته ی دیگر نسخه ی جدید SystemRezone را ارائه خواهم کرد.
 
آخرین ویرایش:

محمدمهدی

Well-Known Member
ارادت

منظورم دقیقا همین چیزهایی بود که متوجهش شدین

خیلی ممنون

اگر براتون جالبه یه دمو از پلاگینتون که توی یه نرم افزار بزرگ داوری برای Robocup ایران اوپن که اخیران برگزار شد میزارم.
فقط کافیه که بگین.
پلاگینتون واقعا بدون نقص بیشتر مشکلاتم رو حل کرد.
(این حرفا فقط محض رسوندن حسن نیت بود)

ممنون!
 

Free Man

کاربر متخصص مولتی مدیا بیلدر
محمدمهدی ، ممنون از لطف شما.

بله اگر زحمتی نیست قرار بدهید ، خوشحال هم خواهیم شد.

موفق باشید.
 

K@M@L

Well-Known Member
سلام

بازهم من یه پیشنهاد دیگه برای Useful Objects

در قسمت History Graph آیا امکان قرار دادن history برای آن هست؟ منظورم اینکه عملیلاتی که خط ها انجام میدهند رو بشه در یک فایل ذخیره کرد تا دوباره امکان نمایش ان وجود داشته باشه.

راستی ، با امید به خدا Sort را برای ListView کامل کرده ام و در حال اعمال آن برای Header ها

هستم. (به این صورت که با کیلیک روی هر هدر ، لیست بر اساس مقادیر آن ستون مرتب می شود.)
آیا مکان Sort رو میشه با یک دکمه انجام داد؟ یعنی رو هدرها کیلیک نکنیم.

دوست عزیز ببخشد که من این همه پیشنهاد میدم، تنها دلیل من از این همه پیشنهاد اینکه من واقعا از پلاگین شما خوشم آمده و دوست دارم از اینی که هست بهتر بشه

تشکر
 

Free Man

کاربر متخصص مولتی مدیا بیلدر
سلام ، اختیار دارید ما خوشحال می شویم پیشنهادات دوستان را دریافت کنیم.

روی این موضوع که داده های نمودار به صورت یک فایل ذخیره شود ، کار خواهم کرد.

این امکان وجود دارد ، sort را به صورت دستور نیز قرار خواهم داد.
 

K@M@L

Well-Known Member
باز هم سلام

یه سوال در واقع بیشتر یه پیشنهاده ، اگر امکان داره ...

آیا میشه برای ListView یک handler قرار داد؟

چیزی شبیه قسمت Color Box ، تا با کیلیک بر روی یک آیتم ، یک اسکریپ اجرا بشه.
 

Free Man

کاربر متخصص مولتی مدیا بیلدر
kamalhamidi ، دوست عزیز این مطلب را silvercover در چند بحث بالاتر مطرح کرده بود.

بله حتما ، به علت پیشنهادهای زیاد در مورد handler (رویداد ها Events) این امکان به

صورت گسترده در UO قرار خواهد گرفت.
 

K@M@L

Well-Known Member
سلام

نمی دونم در نسخه جدید پلاگین UO ، چیزی که من میخوام مطرح کنم وجود داره یا اصلا ارزش وقت گذاشتن دارد

نظرتون درباره قرار دادن یک RichTextBox در پلاگین چیه ؟

میدونم که پلاگین های زیادی برای این کار وجود داره مانند پلاگین قدرتمند TRichEditPlugIn ...

ولی همه این پلاگین ها دارای حجمی زیاد هستند و برای کسی که میخواد حجم برنامه ش کم باشه مشکل میشه لذا اگر این

آبجکت در پلاگین شما وجود داشته باشه میتونیم حجم برنامه رو کم کنیم و از سایر امکانات این پلاگین استفاده کنیم

راستی میشه یه اطلاعی در رابطه با تاریخ ارائه پلاگین UO بگید

تشکر
 

silvercover

کاربر متخصص
یدونم که پلاگین های زیادی برای این کار وجود داره مانند پلاگین قدرتمند tricheditplugin ...

ولی همه این پلاگین ها دارای حجمی زیاد هستند و برای کسی که میخواد حجم برنامه ش کم باشه مشکل میشه لذا اگر این

آبجکت در پلاگین شما وجود داشته باشه میتونیم حجم برنامه رو کم کنیم و از سایر امکانات این پلاگین استفاده کنیم


اکیدا مخالفم. بهتر هست که انرژی و وقت جناب Free Man صرف ساخت و روزآمد کردن پلاگین با ویژگی هایی بشه که از قبل در بیلدر و پلاگین هاش وجود نداشته باشه.
 

جدیدترین ارسال ها

بالا