FVWMANIMATE(1) Fvwm Modules FVWMANIMATE(1)

FvwmAnimate - ماژول متحرک‌سازی و پویانمایی پنجره‌ها در fvwm

Module FvwmAnimate [ModuleAlias]

FvwmAnimate فقط می‌تواند توسط fvwm فراخوانی شود. اجرای ماژول FvwmAnimate از خط فرمان کار نخواهد کرد.

از درون فایل .fvwm2rc، ماژول FvwmAnimate به صورت زیر اجرا می‌شود:

Module FvwmAnimate

یا از درون یک منوی جهنده (pop-up) در fvwm:

DestroyMenu Module-Popup
AddToMenu   Module-Popup "Modules" Title
+ "Fvwm Animate Icons" Module FvwmAnimate ModuleAlias

ماژول FvwmAnimate عمل تبدیل به آیکون (کوچک‌سازی) و بازگشت از آیکون (بزرگ‌سازی) پنجره‌ها یا پویانمایی بر اساس دستور را متحرک‌سازی می‌کند. در حال حاضر ۶ جلوه پویانمایی مختلف وجود دارد.

FvwmAnimate باید توسط مدیر پنجره fvwm فراخوانی شود. هنگامی که با آرگومان OptionalName فراخوانی شود، از ModuleAlias به جای "FvwmAnimate" برای یافتن دستورات پیکربندی، فایل‌های پیکربندی و نام‌گذاری منوها و فرم‌های تولیدشده داخلی استفاده می‌شود. در هنگام راه‌اندازی، FvwmAnimate منوها و فرم‌هایی را برای پیکربندی و کنترل FvwmAnimate تعریف می‌کند. نام پیش‌فرض منو "MenuFvwmAnimate" و نام فرم "FormFvwmAnimate" است. اگر نام اختیاری استفاده شود، منو "Menu<ModuleAlias>" و فرم "Form<ModuleAlias>" خواهد بود.

با فرض اینکه از قبل یک منوی توکار به نام "Module-Popup" داشته‌اید، می‌توانید FvwmAnimate را با پیکربندی زیر استفاده کنید:

AddToFunc "StartFunction" "I" Module FvwmAnimate
AddToMenu "Module-Popup" "Control Animation" Popup MenuFvwmAnimate

از آنجا که منوی جهنده "MenuFvwmAnimate" امکان کنترل کامل ماژول FvwmAnimate را فراهم می‌کند، واقعاً نیازی نیست بدانید که هر یک از دستورات پیکربندی چه هستند. با این حال، این بخش آن‌ها را شرح می‌دهد.

ماژول FvwmAnimate اطلاعات پیکربندی را از پایگاه داده پیکربندی ماژول‌های fvwm دریافت می‌کند (به fvwm(1)، بخش دستورات ماژول (MODULE COMMANDS) مراجعه کنید). علاوه بر این، FvwmAnimate فایل $HOME/.FvwmAnimate را می‌خواند و در حین اجرا، دستورات fvwm و ماژول‌های آن را می‌پذیرد.

اگر از ModuleAlias برای راه‌اندازی FvwmAnimate استفاده شود، نام اختیاری در تمام دستورات، پیام‌ها، منوها و فرم‌های تولیدشده توسط FvwmAnimate و در نام فایل پیکربندی استفاده می‌شود. برخلاف سایر ماژول‌های fvwm، دلیل چندانی برای استفاده از نام اختیاری وجود ندارد.

*FvwmAnimate: Color color

به FvwmAnimate می‌گوید با چه رنگی رسم کند. رنگ روی پس‌زمینه به‌صورت "XOR" (یا انحصاری) اعمال می‌شود. بسته به نوع نمایشگری که استفاده می‌کنید، جلوه‌ای که ایجاد می‌شود متفاوت خواهد بود. به‌ویژه در نمایشگرهای ۸ بیتی، یکدست بودن رنگ پس‌زمینه کمک می‌کند. باید با این گزینه آزمایش کنید تا نحوه عملکرد آن را ببینید.

رنگ پیش‌فرض یک رنگ واقعی نیست و می‌تواند به صورت "Black^White" یا به شکل ساده‌تر "None" وارد شود. این همان ماسک XOR پیش‌فرضی است که fvwm برای کادرهای جابه‌جایی و تغییر اندازه استفاده می‌کند.

سایر رنگ‌ها را می‌توان با استفاده از نمادگذاری استاندارد رنگ در X مشخص کرد؛ یعنی نام‌های رنگ مانند "LightBlue" یا مقادیر RGB مانند "#FFFFFF".

*FvwmAnimate: Pixmap pixmap

به FvwmAnimate می‌گوید از pixmap برای رسم استفاده کند. این گزینه در صورتی که *FvwmAnimate: Color نتایج ضعیفی بدهد می‌تواند مفید باشد.

*FvwmAnimate: Delay msecs

به FvwmAnimate می‌گوید چند میلی‌ثانیه بین فریم‌های پویانمایی مکث کند.

*FvwmAnimate: Iterations iterations

به FvwmAnimate می‌گوید پویانمایی را به چند مرحله بشکند.

*FvwmAnimate: Twist twist

به FvwmAnimate می‌گوید کادر آیکون‌سازی را چند دور بتاباند (بچرخاند).

*FvwmAnimate: Width width

به FvwmAnimate می‌گوید خطوط را با چه ضخامتی رسم کند. ضخامت پیش‌فرض 0 (صفر) یک خط سریع با ضخامت ۱ است.

*FvwmAnimate: Effect mode

به FvwmAnimate می‌گوید از کدام جلوه پویانمایی استفاده کند. در حال حاضر جلوه‌ها عبارتند از: Frame، Lines، Flip، Turn، Zoom3D، Twist، Random و None. مقدار None معمولاً در فایل پیکربندی تنظیم می‌شود، برای مواقعی که FvwmAnimate به طور خودکار راه‌اندازی می‌شود اما یک کاربر خاص نمی‌خواهد آن را اجرا کند.

*FvwmAnimate: Stop

به FvwmAnimate دستور توقف می‌دهد.

*FvwmAnimate: Save

به FvwmAnimate می‌گوید پیکربندی فعلی را در فایلی به نام ".FvwmAnimate" در دایرکتوری خانگی کاربر ذخیره کند. همین فایل هنگام راه‌اندازی FvwmAnimate به طور خودکار خوانده می‌شود.

می‌توان از طریق دستور "SendToModule" از FvwmAnimate خواست تا یک پویانمایی ایجاد کند. قالب این دستور به صورت زیر است:

SendToModule FvwmAnimate animate sx sy sw sh dx dy dw dh

کلمه دوم باید با نامی که FvwmAnimate با آن راه‌اندازی شده مطابقت داشته باشد. ۸ فیلد پس از animate باید عدد باشند. ۴ عدد اول برای موقعیت مبدأ (یا نقطه شروع) پویانمایی هستند. ۴ عدد آخر برای مقصد پویانمایی هستند. این ۲ جفت عدد ۴تایی، نمایانگر مستطیل‌ها هستند. ۲ عدد اول، موقعیت x و y گوشه بالا-راست هستند. ۲ عدد بعدی، عرض و ارتفاع هستند. یک یا چند فاصله می‌توانند فیلدها را در دستور از یکدیگر جدا کنند.

ماژول‌ها می‌توانند از دستور "SendToModule" برای متحرک‌سازی پنجره‌های بدون آیکون ("NoIcon") استفاده کنند، یا می‌توانید روش‌های دلخواه خود را برای بهره‌گیری متنوع از این دستور بیابید.

دستورات اضافی موجود عبارتند از: pause، play، push، pop و reset. این دستورات ممکن است با فاصله از هم جدا شوند.

دستور pause باعث می‌شود ماژول موقتاً هیچ پویانمایی تولید نکند. play باعث می‌شود ماژول مجدداً پویانمایی ایجاد کند. push وضعیت پخش فعلی را برای آینده ذخیره می‌کند و pop آن را بازیابی می‌نماید. reset تمام وضعیت‌های ذخیره‌شده را حذف کرده و پخش را فعال می‌کند.

فرض کنید نمی‌خواهیم منتظر بمانیم تا تمام ۴۰ پنجره xterm متحرک‌سازی شوند:

SendToModule FvwmAnimate pause
All (XTerm) Iconify on

و اگر نخواهیم به وضعیت پخش فعلی آسیبی برسد:

SendToModule FvwmAnimate push pause
All (XTerm) Iconify on
SendToModule FvwmAnimate pop

ماژول FvwmAnimate بر پایه ماژول Animate از Afterstep 1.5pre6 توسعه یافته است. پورت کردن به fvwm و بسیاری تغییرات دیگر توسط Dan Espen <despen@telcordia.com>. انجام شد. در ادامه نویسنده اصلی و قدردانی‌ها آمده است.

Alfredo Kengi Kojima <kojima@inf.ufrgs.br>

افراد زیر در توسعه FvwmAnimate مشارکت داشته‌اند:

Kaj Groner <kajg@mindspring.com>

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

Frank Scheelen <scheelen@worldonline.nl>

2026-06-28