| mwm(user cmd) | mwm(user cmd) |
نام (NAME)
mwm - مدیر پنجره موتیف (Motif Window Manager)
خلاصه دستور (SYNOPSIS)
mwm [گزینهها]
توضیحات (DESCRIPTION)
مدیر پنجره mwm توابعی را ارائه میدهد که کنترل وضعیت پنجره (توسط کاربر و برنامهنویس) از جمله جایگذاری، اندازه، نمایش آیکون/عادی و مالکیت تمرکز ورودی (input-focus) را تسهیل میکند.
این مدیر پنجره مستقل بخشی از CDE نیست و از ارتباط با سایر مؤلفههای محیط CDE مانند مدیر سبک (Style Manager) و مدیر نشست (Session Manager) پشتیبانی نمیکند.
گزینهها (Options)
- -display display
- این گزینه نمایشگر مورد استفاده را مشخص میکند؛ X(1) را ببینید.
- -xrm resourcestring
- این گزینه یک رشته منبع (resource string) را برای استفاده مشخص میکند.
- -multiscreen
- این گزینه باعث میشود mwm تمام صفحههای نمایش موجود در نمایشگر را مدیریت کند. حالت پیشفرض تنها مدیریت یک صفحه نمایش منفرد است.
- -name name
- این گزینه باعث میشود mwm منابع خود را با استفاده از نام مشخصشده بازیابی کند، مانند name*resource.
- -screens name [name [...]]
- این گزینه نام منابع مورد استفاده برای صفحههای نمایش تحت مدیریت mwm را مشخص میکند. اگر mwm یک صفحه نمایش منفرد را مدیریت کند، فقط اولین نام در فهرست استفاده میشود. اگر mwm چندین صفحه نمایش را مدیریت کند، نامها به ترتیب از صفحه نمایش ۰ به صفحهها اختصاص مییابند. صفحه نمایش ۰ نام اول، صفحه نمایش ۱ نام دوم و به همین ترتیب را دریافت میکنند.
ظاهر (Appearance)
بخشهای زیر رفتارهای پیشفرض اساسی پنجرهها، آیکونها، جعبه آیکون (icon box)، تمرکز ورودی و پشتهبندی پنجرهها را شرح میدهند. ظاهر و رفتار مدیر پنجره را میتوان با تغییر پیکربندی منابع خاص تغییر داد. منابع در زیر عنوان «X DEFAULTS» تعریف شدهاند.
صفحههای نمایش (Screens)
بهطور پیشفرض، mwm فقط یک صفحه نمایش منفرد را که با گزینه -display یا متغیر محیطی DISPLAY مشخص شده است (بهطور پیشفرض صفحه نمایش ۰) مدیریت میکند. اگر گزینه -multiscreen مشخص شده باشد یا منبع multiScreen برابر True باشد، mwm تلاش میکند تمام صفحههای نمایش موجود در نمایشگر را مدیریت کند.
هنگامی که mwm چندین صفحه نمایش را مدیریت میکند، میتوان از گزینه -screens برای اختصاص یک نام منبع یکتا به هر صفحه نمایش استفاده کرد. نامها با فاصله از هم جدا میشوند، به عنوان مثال -screens scr0 scr1. اگر تعداد صفحهها بیشتر از نامها باشد، منابع صفحههای باقیمانده با استفاده از نام اول بازیابی میشوند. بهطور پیشفرض، شماره صفحه نمایش به عنوان نام صفحه نمایش استفاده میشود.
پنجرهها (Windows)
قابهای پیشفرض پنجره در mwm دارای مؤلفههای متمایزی با عملکردهای مربوطه هستند:
- ناحیه عنوان (Title Area)
- علاوه بر نمایش عنوان کلاینت، ناحیه عنوان برای جابهجایی پنجره استفاده میشود. برای جابهجایی پنجره، اشارهگر ماوس را روی ناحیه عنوان قرار دهید، دکمه ۱ را فشار داده و پنجره را به مکان جدید بکشید. بهطور پیشفرض، در حین کشیدن، یک قاب سیمی برای نشان دادن مکان جدید حرکت میکند. با رها کردن دکمه، پنجره به مکان جدید منتقل میشود.
- نوار عنوان (Title Bar)
- نوار عنوان شامل ناحیه عنوان، دکمه کمینهسازی، دکمه بیشینهسازی و دکمه منوی پنجره است. در پنجرههای شکلدار (مانند پنجرههای گرد)، نوار عنوان به صورت شناور در بالای پنجره قرار میگیرد.
- دکمه کمینهسازی (Minimize Button)
- برای تبدیل پنجره به آیکون، روی دکمه کمینهسازی (جعبه قاب با یک مربع کوچک درون آن) با دکمه ۱ کلیک کنید.
- دکمه بیشینهسازی (Maximize Button)
- برای پر کردن صفحه نمایش توسط پنجره (یا بزرگ کردن به بیشترین اندازه مجاز توسط فایلهای پیکربندی)، روی دکمه بیشینهسازی (جعبه قاب با یک مربع بزرگ درون آن) با دکمه ۱ کلیک کنید.
- دکمه منوی پنجره (Window Menu Button)
- دکمه منوی پنجره جعبه قابی است که یک خط افقی در آن قرار دارد. برای باز کردن منوی کشویی پنجره، دکمه ۱ را فشار دهید. در حالی که دکمه را فشرده نگه داشتهاید، اشارهگر را روی منو به سمت گزینه مورد نظر بکشید و پس از برجسته شدن گزینه، دکمه را رها کنید. فشردن دکمه ۳ در نوار عنوان یا دستگیرههای کادر تغییر اندازه نیز منوی پنجره را باز میکند. بهطور جایگزین، میتوانید روی دکمه ۱ کلیک کنید تا منو باز شود و باز بماند؛ سپس اشارهگر را قرار داده و انتخاب کنید. همچنین میتوانید منوی پنجره را با فشردن <Shift> <Esc> یا <Alt> <Space> باز کنید. دوبار کلیک کردن با دکمه ۱ در حالی که اشارهگر روی دکمه منوی پنجره قرار دارد، پنجره را میبندد.
جدول زیر محتویات منوی پنجره را نشان میدهد.
منوی پیشفرض پنجره (Default Window Menu)
| گزینه | کلید میانبر | توضیحات |
| Restore | پنجره را به اندازه آن پیش از کمینهسازی یا بیشینهسازی بازمیگرداند. | |
| Move | امکان جابهجایی پنجره با کلیدها یا ماوس را فراهم میکند. | |
| Size | امکان تغییر اندازه پنجره را فراهم میکند. | |
| Minimize | پنجره را به یک آیکون تبدیل میکند. | |
| Maximize | باعث میشود پنجره کل صفحه را پر کند. | |
| Lower | پنجره را به انتهای پشته پنجرهها منتقل میکند. | |
| Close | Alt+F4 | باعث خاتمه کلاینت میشود. |
- دستگیرههای کادر تغییر اندازه (Resize Border Handles)
- برای تغییر اندازه یک پنجره، اشارهگر ماوس را روی دستگیره کادر تغییر اندازه ببرید (مکاننما تغییر میکند)، دکمه ۱ را فشار دهید و پنجره را به اندازه جدید بکشید. با رها کردن دکمه، اندازه پنجره تغییر میکند. در حین کشیدن، یک خط مرزی کشسان برای نشان دادن اندازه جدید پنجره نمایش داده میشود.
- حاشیه مات (Matte)
- میتوان یک تزیین مات اختیاری را بین ناحیه کلاینت و قاب پنجره اضافه کرد (منبع matteWidth را ببینید). یک matte در واقع بخشی از قاب پنجره نیست. هیچ عملکردی با مات همراه نیست.
آیکونها (Icons)
آیکونها نمایشهای گرافیکی کوچکی از پنجرهها هستند. پنجره را میتوان با استفاده از دکمه کمینهسازی در قاب پنجره کمینه (آیکون) کرد. آیکونها راهی برای کاهش شلوغی روی صفحه نمایش ارائه میدهند.
فشردن دکمه ۱ ماوس زمانی که اشارهگر روی یک آیکون قرار دارد، باعث باز شدن منوی پنجره آیکون میشود. رها کردن دکمه (فشار + رها کردن بدون حرکت ماوس = کلیک) باعث میشود منو باز بماند. منو شامل گزینههای زیر است:
منوی پنجره آیکون (Icon Window Menu)
| گزینه | کلید میانبر | توضیحات |
| Restore | پنجره مرتبط را باز میکند. | |
| Move | امکان جابهجایی آیکون با کلیدها را فراهم میکند. | |
| Size | غیرفعال (گزینهای برای آیکونها نیست). | |
| Minimize | غیرفعال (گزینهای برای آیکونها نیست). | |
| Maximize | پنجره مرتبط را باز کرده و آن را تمامصفحه میکند. | |
| Lower | آیکون را به انتهای پشته آیکونها منتقل میکند. | |
| Close | Alt+F4 | کلاینت را از مدیریت mwm خارج میکند. |
توجه داشته باشید که فشردن دکمه ۳ روی آیکون نیز باعث باز شدن منوی پنجره آیکون میشود. برای انتخاب از منو، اشارهگر را روی منو بکشید و هنگامی که مورد دلخواه برجسته شد دکمه ۳ را رها کنید.
دوبار کلیک کردن دکمه ۱ روی آیکون، تابع f.restore_and_raise را فراخوانی کرده و پنجره مرتبط با آیکون را به وضعیت قبلی خود بازمیگرداند. به عنوان مثال، اگر یک پنجره بیشینهشده تبدیل به آیکون شود، دوبار کلیک دکمه ۱ آن را به وضعیت بیشینهشده بازمیگرداند. دوبار کلیک دکمه ۱ روی آیکونِ جعبه آیکون (icon box)، جعبه آیکون را باز کرده و امکان دسترسی به آیکونهای درون آن را فراهم میکند. (بهطور کلی، دوبار کلیک دکمه ماوس راهی سریع برای اجرای یک تابع است.) فشردن <Shift> <Esc> یا <Menu> (کلید منوی پاپآپ) باعث باز شدن منوی پنجره آیکونِ آیکونِ انتخابشده فعلی میشود.
جعبه آیکون (Icon Box)
هنگامی که آیکونها باعث شلوغی صفحه نمایش میشوند، میتوان آنها را در یک جعبه آیکون جمعآوری کرد. (برای استفاده از جعبه آیکون، mwm باید با پیکربندی تنظیمشده جعبه آیکون راهاندازی شود.) جعبه آیکون یک پنجره mwm است که آیکونهای کلاینت را در خود نگه میدارد. این پنجره در صورتی که تعداد آیکونها بیشتر از گنجایش نمایش همزمان باشد، شامل یک یا چند نوار پیمایش است.
آیکونهای موجود در جعبه آیکون را میتوان با ماوس دستکاری کرد. جدول زیر رفتار این رابط را خلاصه میکند. عملکردهای دکمه هر زمان که اشارهگر روی هر بخشی از آیکون باشد اعمال میشوند. توجه داشته باشید که دوبار کلیک روی یک آیکون در جعبه آیکون، تابع f.restore_and_raise را فراخوانی میکند.
| دکمه | عمل | توضیحات |
| Button 1 | click | آیکون را انتخاب میکند. |
| Button 1 | double-click | پنجره مرتبط را به حالت عادی بازمیگرداند (باز میکند). پنجرهای را که از قبل باز است به بالای پشته میآورد. |
| Button 1 | drag | آیکون را جابهجا میکند. |
| Button 3 | press | باعث باز شدن منوی آن آیکون میشود. |
| Button 3 | drag | با حرکت اشارهگر روی منو، گزینهها را برجسته میکند. |
فشردن دکمه ۳ ماوس هنگامی که اشارهگر روی یک آیکون است، باعث باز شدن منوی آن آیکون میشود.
منوی آیکون برای جعبه آیکون (Icon Menu for the Icon Box)
| گزینه | کلید میانبر | توضیحات |
| Restore | پنجره مرتبط را باز میکند (اگر از قبل باز نباشد). | |
| Move | امکان جابهجایی آیکون با کلیدها را فراهم میکند. | |
| Size | غیرفعال. | |
| Minimize | غیرفعال. | |
| Maximize | پنجره مرتبط را باز کرده (اگر از قبل باز نباشد) و اندازه آن را بیشینه میکند. | |
| Lower | غیرفعال. | |
| Close | Alt+F4 | کلاینت را از مدیریت mwm خارج میکند. |
برای باز کردن منوی پنجره خود جعبه آیکون، در حالی که اشارهگر روی دکمه منوی جعبه آیکون قرار دارد، دکمه ۱ را فشار دهید. منوی پنجره جعبه آیکون با منوی پنجره یک کلاینت متفاوت است: گزینه «Close» با گزینه «PackIcons Shift+Alt+F7» جایگزین شده است. هنگام انتخاب، PackIcons آیکونها را در جعبه مرتب میکند تا ردیفهای مرتب و بدون شکاف خالی ایجاد شود.
همچنین میتوانید منوی پنجره را با فشردن <Shift>، <Esc> یا <Alt> <Space> باز کنید. فشردن <Menu> (کلید منوی پاپآپ) منوی پنجره آیکون مربوط به آیکون انتخابشده فعلی را باز میکند.
تمرکز ورودی (Input Focus)
مدیر پنجره mwm (بهطور پیشفرض) از خطمشی تمرکز ورودی صفحهکلید با انتخاب صریح (explicit selection) پشتیبانی میکند. این بدان معناست که وقتی پنجرهای برای دریافت ورودی صفحهکلید انتخاب میشود، تا زمانی که از مدیریت پنجره خارج نشود، پنجره دیگری صریحاً برای دریافت ورودی صفحهکلید انتخاب نشود یا پنجره به آیکون تبدیل نشود، به دریافت ورودی صفحهکلید ادامه میدهد. چندین منبع، تمرکز ورودی را کنترل میکنند. پنجره کلاینتی که تمرکز ورودی صفحهکلید را در اختیار دارد، ظاهر پنجره فعال را با یک قاب پنجره از نظر بصری متمایز نشان میدهد.
جدولهای زیر رفتار انتخاب تمرکز ورودی صفحهکلید را خلاصه میکنند:
| دکمه | عمل | شیء | شرح عملکرد |
| Button 1 | press | پنجره / قاب پنجره | انتخاب تمرکز صفحهکلید. |
| Button 1 | press | آیکون | انتخاب تمرکز صفحهکلید. |
| عمل کلید | شرح عملکرد |
| [Alt][Tab] | انتقال تمرکز ورودی به پنجره بعدی در پشته پنجرهها (فقط در حالت تمرکز صریح موجود است). |
| [Alt][Shift][Tab] | انتقال تمرکز ورودی به پنجره قبلی در پشته پنجرهها (فقط در حالت تمرکز صریح موجود است). |
پشتهبندی پنجرهها (Window Stacking)
دو نوع پشته پنجره وجود دارد: پشتههای پنجره سراسری و پشته پنجره خانواده محلی یک برنامه کاربردی.
ترتیب پشتهبندی سراسری پنجرهها ممکن است در نتیجه تنظیم تمرکز ورودی صفحهکلید، آیکون کردن یک پنجره یا اجرای یک تابع پشتهبندی پنجره مدیر پنجره تغییر کند. هنگامی که خطمشی تمرکز صفحهکلید صریح است، مقدار پیشفرض منبع focusAutoRaise برابر True است. این امر باعث میشود پنجره هنگام دریافت تمرکز ورودی، مثلاً با فشردن دکمه ۱ در نوار عنوان، به بالای پشته منتقل شود. بنابراین عملهای کلیدی تعریفشده در جدول قبلی، پنجره دریافتکننده تمرکز را به بالای پشته میآورند.
در حالت اشارهگر (pointer)، مقدار پیشفرض focusAutoRaise برابر False است؛ یعنی با دریافت تمرکز ورودی صفحهکلید توسط پنجره، ترتیب پشتهبندی پنجره تغییر نمیکند. عملهای کلیدی زیر میتوانند برای چرخش در پشته پنجرههای سراسری استفاده شوند.
| عمل کلید | شرح عملکرد |
| [Alt][ESC] | قرار دادن پنجره بالایی در انتهای پشته. |
| [Alt][Shift][ESC] | قرار دادن پنجره پایینی در بالای پشته. |
بهطور پیشفرض، هنگامی که پنجره کمینه (آیکون) میشود، آیکون پنجره در انتهای پشته قرار میگیرد؛ با این حال، مقدار پیشفرض را میتوان با منبع lowerOnIconify تغییر داد.
پنجرههای گذرا (پنجرههای فرعی مانند جعبههای محاوره) بهطور پیشفرض بالای پنجره والد خود باقی میمانند؛ با این حال، ترتیب پشتهبندی خانواده محلی یک برنامه ممکن است تغییر داده شود تا اجازه دهد یک پنجره گذرا زیر پنجره سطح بالای والد خود قرار گیرد. آرگومانهای زیر تغییر ترتیب پشتهبندی را برای تابع f.lower نشان میدهند.
- f.lower
- پنجره گذرا را درون خانواده پایین میآورد (بالای والد باقی میماند) و خانواده را در پشته پنجرههای سراسری پایین میبرد.
- f.lower [ within]
- پنجره گذرا را درون خانواده پایین میآورد (بالای والد باقی میماند) اما خانواده را در پشته پنجرههای سراسری پایین نمیبرد.
- f.lower [freeFamily ]
- پنجره را جدا از پشته خانوادهاش (زیر والد) پایین میآورد، اما خانواده را در پشته پنجرههای سراسری پایین نمیبرد.
آرگومانهای within و freeFamily همچنین میتوانند با f.raise و f.raise_lower استفاده شوند.
مدیریت نشست (Session Management)
مدیر پنجره یک کلاینت آگاه از پروتکل مدیریت نشست X (XSMP) است. این برنامه با ذخیره موقعیت و ابعاد کلاینتهای خود در یک فایل وضعیت، به SaveYourself (و سایر پیامهای مرتبط) پاسخ میدهد. سپس mwm میتواند توسط مدیر نشست XSMP مجدداً راهاندازی شود. مکان پیشفرض برای فایل وضعیت $HOME/.mwmclientdb است. این مکان را میتوان با منبع sessionClientDB لغو کرد.
منابع اکس (X Resources)
دستور mwm از پایگاهداده منابع خود پیکربندی میشود. این پایگاهداده از منابع زیر ساخته شده است. آنها به ترتیب اولویت، از کم به زیاد فهرست شدهاند:
/usr/X11R6/lib/X11/app-defaults/Mwm
$HOME/Mwm
ویژگی پنجره ریشه RESOURCE_MANAGER یا $HOME/.Xdefaults
متغیر XENVIRONMENT یا $HOME/.Xdefaults-host
گزینههای خط فرمان mwm
نامهای فایل /usr/X11R6/lib/X11/app-defaults/Mwm و $HOME/Mwm نشاندهنده مکانهای متداول برای این فایلها هستند. مکان واقعی فایل منبع کلاس در کل سیستم ممکن است به متغیر محیطی XFILESEARCHPATH و محیط زبان فعلی بستگی داشته باشد. مکان واقعی فایل منبع کلاس خاص کاربر ممکن است به متغیرهای محیطی XUSERFILESEARCHPATH و XAPPLRESDIR و محیط زبان فعلی وابسته باشد.
مدخلهای موجود در پایگاهداده منابع ممکن است به فایلهای منبع دیگری برای انواع خاص منابع اشاره کنند. این فایلها شامل بیتمپها، فونتها و منابع خاص mwm مانند منوها و مشخصات رفتاری (برای مثال، انتسابهای دکمه و کلید) هستند.
Mwm نام کلاس منبع mwm است و mwm نام منبع پیشفرضی است که توسط mwm برای جستجوی منابع استفاده میشود. گزینه خط فرمان -screens نام منابعی مانند "mwm_b+w" و "mwm_color" را مشخص میکند.) در مباحث بعدی پیرامون تعیین منابع، "Mwm" و "mwm" (و نامهای مستعار منبع mwm) میتوانند به جای یکدیگر استفاده شوند، اما "mwm" بر "Mwm" تقدم دارد.
دستور mwm از انواع زیر از منابع استفاده میکند:
- منابع ظاهر مؤلفه (Component Appearance Resources):
- این منابع ویژگیهای ظاهری مؤلفههای رابط کاربری مدیر پنجره را مشخص میکنند. آنها میتوانند بر ظاهر منوهای مدیر پنجره، پنجرههای بازخورد (مانند پنجره بازخورد بازپیکربندی پنجره)، قابهای پنجره کلاینت و آیکونها اعمال شوند.
- منابع ظاهر و رفتار عمومی (General Appearance and Behavior Resources):
- این منابع ظاهر و رفتار mwm را مشخص میکنند (برای مثال، خطمشیهای مدیریت پنجره). آنها بهطور جداگانه برای مؤلفههای مختلف رابط کاربری mwm تنظیم نمیشوند. آنها برای تمام صفحهها و فضاهای کاری اعمال میگردند.
- منابع ظاهر و رفتار ویژه صفحه نمایش (Screen Specific Appearance and Behavior Resources):
- این منابع ظاهر و رفتار عناصر mwm را که به ازای هر صفحه نمایش قابل تنظیم هستند مشخص میکنند.
- منابع ویژه کلاینت (Client Specific Resources):
- این منابع mwm را میتوان برای یک پنجره کلاینت خاص یا کلاسی از پنجرههای کلاینت تنظیم کرد. آنها ظاهر و رفتار آیکون و قاب پنجره کلاینت را مشخص میکنند.
شناسههای منبع میتوانند نام منبع (برای مثال foreground) یا کلاس منبع (برای مثال Foreground) باشند. اگر مقدار یک منبع نام فایل باشد و اگر پیشوند نام فایل "~/" باشد، نسبت به مسیر موجود در متغیر محیطی HOME (معمولاً دایرکتوری خانگی کاربر) در نظر گرفته میشود.
منابع ظاهر مؤلفه (Component Appearance Resources)
نحو مشخص کردن منابع ظاهر مؤلفه که برای آیکونها، منوها و قابهای پنجره کلاینت در مدیر پنجره اعمال میشوند بهصورت Mwm* resource_id است.
برای مثال، Mwm*foreground برای مشخص کردن رنگ پیشزمینه منوها، آیکونها، قابهای پنجره کلاینت و کادرهای محاورهای بازخورد در mwm استفاده میشود.
نحو مشخص کردن منابع ظاهر مؤلفه که برای یک مؤلفه خاص mwm اعمال میشوند بهصورت Mwm*[menu|icon|client|feedback] *resource_id است.
اگر menu مشخص شود، منبع فقط برای منوهای mwm اعمال میگردد؛ اگر icon مشخص شود، منبع برای آیکونها اعمال میشود؛ و اگر client مشخص شود، منبع بر قابهای پنجره کلاینت اعمال میگردد. برای مثال، Mwm*icon*foreground برای تعیین رنگ پیشزمینه آیکونهای mwm، Mwm*menu*foreground برای تعیین رنگ پیشزمینه منوهای mwm و Mwm*client*foreground برای تعیین رنگ پیشزمینه قابهای پنجره کلاینت mwm استفاده میشود.
ظاهر ناحیه عنوان قاب پنجره کلاینت (شامل دکمههای مدیریت پنجره) را میتوان بهطور جداگانه پیکربندی کرد. نحو پیکربندی ناحیه عنوان قاب پنجره کلاینت بهصورت Mwm*client*title* resource_id است.
برای مثال، Mwm*client*title*foreground رنگ پیشزمینه ناحیه عنوان را مشخص میکند. مقادیر پیشفرض منابع ناحیه عنوان بر اساس مقادیر منابع متناظر در قاب پنجره کلاینت تعیین میشوند.
ظاهر منوها را میتوان بر اساس نام منو پیکربندی کرد. نحو مشخص کردن ظاهر منو بر اساس نام بهصورت Mwm*menu* menu_name*resource_id است.
برای مثال، Mwm*menu*my_menu*foreground رنگ پیشزمینه منویی به نام my_menu را مشخص میکند. کاربر همچنین میتواند منابعی را برای مؤلفههای منوی مدیر پنجره، یعنی گجتهایی که منو را تشکیل میدهند، مشخص کند. این مؤلفهها ممکن است به عنوان مثال شامل عنوان منو، جداکننده عنوان، یک یا چند دکمه و جداکنندهها باشند. اگر یک منو شامل بیش از یک نمونه از یک کلاس باشد، مانند چند PushButtonGadgets، نام نمونه اول "PushButtonGadget1"، دومی "PushButtonGadget2" و به همین ترتیب خواهد بود. فهرست زیر قرارداد نامگذاری مورد استفاده برای مؤلفههای منوی مدیر پنجره را مشخص میکند:
- •
- Menu Title LabelGadget - "TitleName"
- •
- Menu Title SeparatorGadget - "TitleSeparator"
- •
- CascadeButtonGadget - "CascadeButtonGadget<n>"
- •
- PushButtonGadget - "PushButtonGadget<n>"
- •
- SeparatorGadget - "SeparatorGadget<n>"
برای مشاهده فهرست منابعی که میتوان مشخص کرد، به صفحه راهنمای هر کلاس مراجعه کنید.
منابع ظاهر مؤلفه زیر که برای همه بخشهای مدیر پنجره اعمال میشوند، قابل تعیین هستند:
منابع ظاهر مؤلفه - تمام بخشهای مدیر پنجره (Component Appearance Resources - All Window Manager Parts)
| نام | کلاس | نوع مقدار | پیشفرض |
| background | Background | color | varies† |
| backgroundPixmap | BackgroundPixmap | string†† | varies† |
| bottomShadowColor | Foreground | color | varies† |
| bottomShadowPixmap | Foreground | string†† | varies† |
| fontList | FontList | string††† | "fixed" |
| foreground | Foreground | color | varies† |
| saveUnder | SaveUnder | T/F | F |
| topShadowColor | Background | color | varies† |
| topShadowPixmap | TopShadowPixmap | string†† | varies† |
†مقدار پیشفرض بر اساس نوع بصری (visual type) صفحه نمایش انتخاب میشود. ††نام تصویر؛ XmInstallImage(3) را ببینید. †††توصیف فونت منطقی X11
- background (class Background)
- این منبع رنگ پسزمینه را مشخص میکند. هر رنگ معتبر در X را میتوان تعیین کرد. مقدار پیشفرض بر اساس نوع بصری صفحه نمایش انتخاب میشود.
- backgroundPixmap (class BackgroundPixmap)
- این منبع تصویر پسزمینه (Pixmap) تزیینات mwm را زمانی که پنجره غیرفعال است (تمرکز صفحهکلید را ندارد) مشخص میکند. مقدار پیشفرض بر اساس نوع بصری صفحه نمایش انتخاب میشود.
- bottomShadowColor (class Foreground)
- این منبع رنگ سایه پایینی را مشخص میکند. این رنگ برای لبههای مورب پایینی و راست تزیینات مدیر پنجره استفاده میشود. هر رنگ معتبر در X را میتوان مشخص کرد. مقدار پیشفرض بر اساس نوع بصری صفحه نمایش انتخاب میشود.
- bottomShadowPixmap (class BottomShadowPixmap)
- این منبع تصویر سایه پایینی (Pixmap) را مشخص میکند. این تصویر برای لبههای مورب پایینی و راست تزیینات مدیر پنجره استفاده میشود. مقدار پیشفرض بر اساس نوع بصری صفحه نمایش انتخاب میشود.
- fontList (class FontList)
- این منبع فونت مورد استفاده در تزیینات مدیر پنجره را مشخص میکند. کدگذاری نویسههای فونت باید با کدگذاری نویسههای رشتههای مورد استفاده مطابقت داشته باشد. مقدار پیشفرض "fixed" است.
- foreground (class Foreground)
- این منبع رنگ پیشزمینه را مشخص میکند. مقدار پیشفرض بر اساس نوع بصری صفحه نمایش انتخاب میشود.
- saveUnder (class SaveUnder)
- برای مشخص کردن اینکه آیا از "save unders" برای مؤلفههای mwm استفاده شود یا خیر به کار میرود. برای اینکه این مورد اثری داشته باشد، save unders باید توسط کارساز X پیادهسازی شده باشد. در صورت پیادهسازی، کارساز X محتویات پنجرههایی را که توسط پنجرههای دارای این ویژگی پوشانده شدهاند، ذخیره میکند. اگر منبع saveUnder برابر True باشد، mwm ویژگی save under را روی قاب مدیر پنجره هر کلاینتی که آن را تنظیم کرده باشد فعال میکند. اگر saveUnder برابر False باشد، در هیچ قاب مدیر پنجرهای استفاده نمیشود. مقدار پیشفرض False است.
- topShadowColor (class Background)
- این منبع رنگ سایه بالایی را مشخص میکند. این رنگ برای لبههای مورب بالایی و چپ تزیینات مدیر پنجره استفاده میشود. مقدار پیشفرض بر اساس نوع بصری صفحه نمایش انتخاب میشود.
- topShadowPixmap ( class TopShadowPixmap)
- این منبع تصویر سایه بالایی (Pixmap) را مشخص میکند. این تصویر برای لبههای مورب بالایی و چپ تزیینات مدیر پنجره استفاده میشود. مقدار پیشفرض بر اساس نوع بصری صفحه نمایش انتخاب میشود.
منابع ظاهر مؤلفه زیر که بر قاب و آیکونها اعمال میشوند، قابل تعیین هستند:
مؤلفههای قاب و آیکون (Frame and Icon Components)
| نام | کلاس | نوع مقدار | پیشفرض |
| activeBackground | Background | color | varies† |
| activeBackgroundPixmap | BackgroundPixmap | string†† | varies† |
| activeBottomShadowColor | Foreground | color | varies† |
| activeBottomShadowPixmap | BottomShadowPixmap | string†† | varies† |
| activeForeground | Foreground | color | varies† |
| activeTopShadowColor | Background | color | varies† |
| activeTopShadowPixmap | TopShadowPixmap | string†† | varies† |
†مقدار پیشفرض بر اساس نوع بصری صفحه نمایش انتخاب میشود. ††XmInstallImage(3) را ببینید.
- activeBackground (class Background)
- این منبع رنگ پسزمینه تزیینات mwm را زمانی که پنجره فعال است (تمرکز صفحهکلید را در اختیار دارد) مشخص میکند. مقدار پیشفرض بر اساس نوع بصری صفحه نمایش انتخاب میشود.
- activeBackgroundPixmap (class ActiveBackgroundPixmap)
- این منبع تصویر پسزمینه (Pixmap) تزیینات mwm را زمانی که پنجره فعال است (تمرکز صفحهکلید را در اختیار دارد) مشخص میکند. مقدار پیشفرض بر اساس نوع بصری صفحه نمایش انتخاب میشود.
- activeBottomShadowColor (class Foreground)
- این منبع رنگ سایه پایینی تزیینات mwm را زمانی که پنجره فعال است (تمرکز صفحهکلید را در اختیار دارد) مشخص میکند. مقدار پیشفرض بر اساس نوع بصری صفحه نمایش انتخاب میشود.
- activeBottomShadowPixmap (class BottomShadowPixmap)
- این منبع تصویر سایه پایینی (Pixmap) تزیینات mwm را زمانی که پنجره فعال است (تمرکز صفحهکلید را در اختیار دارد) مشخص میکند. مقدار پیشفرض بر اساس نوع بصری صفحه نمایش انتخاب میشود.
- activeForeground (class Foreground)
- این منبع رنگ پیشزمینه تزیینات mwm را زمانی که پنجره فعال است (تمرکز صفحهکلید را در اختیار دارد) مشخص میکند. مقدار پیشفرض بر اساس نوع بصری صفحه نمایش انتخاب میشود.
- activeTopShadowColor (class Background)
- این منبع رنگ سایه بالایی تزیینات mwm را زمانی که پنجره فعال است (تمرکز صفحهکلید را در اختیار دارد) مشخص میکند. مقدار پیشفرض بر اساس نوع بصری صفحه نمایش انتخاب میشود.
- activeTopShadowPixmap (class TopShadowPixmap)
- این منبع تصویر سایه بالایی (Pixmap) تزیینات mwm را زمانی که پنجره فعال است (تمرکز صفحهکلید را در اختیار دارد) مشخص میکند. مقدار پیشفرض بر اساس نوع بصری صفحه نمایش انتخاب میشود.
منابع ظاهر و رفتار عمومی (General Appearance and Behavior Resources)
نحو مشخص کردن منابع ظاهر و رفتار عمومی بهصورت Mwm*resource_id است.
برای مثال، Mwm*keyboardFocusPolicy خطمشی مدیر پنجره را برای تنظیم تمرکز صفحهکلید روی یک پنجره کلاینت خاص مشخص میکند.
منابع ظاهر و رفتار عمومی زیر قابل تعیین هستند:
منابع ظاهر و رفتار عمومی (General Appearance and Behavior Resources)
| نام | کلاس | نوع مقدار | پیشفرض |
| autoKeyFocus | AutoKeyFocus | T/F | T |
| autoRaiseDelay | AutoRaiseDelay | millisec | 500 |
| bitmap- | Bitmap- | directory | /usr/X11R6/include- |
| Directory | Directory | /X11/bitmaps | |
| clientAutoPlace | ClientAutoPlace | T/F | T |
| colormapFocus- | ColormapFocus- | string | keyboard |
| Policy | Policy | ||
| configFile | ConfigFile | file | $HOME/mwmrc |
| deiconifyKeyFocus | DeiconifyKeyFocus | T/F | T |
| doubleClick- | DoubleClick- | millisec. | multi-click |
| Time | Time | time† | |
| enableWarp | enableWarp | T/F | T |
| enforceKeyFocus | EnforceKeyFocus | T/F | T |
| frameStyle | FrameStyle | string | recessed |
| iconAutoPlace | IconAutoPlace | T/F | T |
| iconClick | IconClick | T/F | T |
| interactivePlacement | InteractivePlacement | T/F | T |
| keyboardFocus- | KeyboardFocus- | string | explicit |
| Policy | Policy | ||
| lowerOnIconify | LowerOnIconify | T/F | T |
| moveThreshold | MoveThreshold | pixels | 4 |
| multiScreen | MultiScreen | T/F | F |
| passButtons | PassButtons | T/F | F |
| passSelectButton | PassSelectButton | T/F | T |
| positionIsFrame | PositionIsFrame | T/F | T |
| positionOnScreen | PositionOnScreen | T/F | T |
| quitTimeout | QuitTimeout | millisec. | 1000 |
| raiseKeyFocus | RaiseKeyFocus | T/F | F |
| refreshByClearing | RefreshByClearing | T/F | T |
| rootButtonClick | RootButtonClick | T/F | F |
| screens | Screens | string | varies |
| sessionClientDB | SessionClientDB | string | $HOME/.mwmclientdb |
| showFeedback | ShowFeedback | string | all |
| startupKeyFocus | StartupKeyFocus | T/F | T |
| wMenuButtonClick | WMenuButtonClick | T/F | T |
| wMenuButtonClick2 | WMenuButtonClick2 | T/F | T |
†منبع doubleClickTime برای سازگاری با نسخههای پیشین گنجانده شده است. استفاده از منبع Xt به نام multiClickTime ترجیح داده میشود.
- autoKeyFocus (class AutoKeyFocus)
- این منبع فقط زمانی در دسترس است که خطمشی تمرکز ورودی صفحهکلید صریح (explicit) باشد. اگر به autoKeyFocus مقدار True داده شود، هنگامی که پنجره دارای تمرکز ورودی صفحهکلید از مدیریت پنجره خارج یا آیکون میشود، تمرکز روی پنجره قبلی که تمرکز را در اختیار داشت تنظیم میگردد. اگر مقدار False داده شود، هیچ تنظیم خودکاری برای تمرکز ورودی صفحهکلید انجام نمیشود. توصیه میشود برای کار با منوهای جداشونده (tear off menus)، هر دو منبع autoKeyFocus و startupKeyFocus برابر True باشند. مقدار پیشفرض True است.
- autoRaiseDelay (class AutoRaiseDelay)
- این منبع فقط زمانی در دسترس است که منبع focusAutoRaise برابر True و خطمشی تمرکز صفحهکلید اشارهگر (pointer) باشد. منبع autoRaiseDelay مقدار زمان (به میلیثانیه) را که mwm پس از دریافت تمرکز صفحهکلید توسط پنجره، پیش از بالا آوردن آن صبر میکند مشخص مینماید. مقدار پیشفرض این منبع ۵۰۰ (میلیثانیه) است.
- bitmapDirectory (class BitmapDirectory)
- این منبع دایرکتوری مورد جستجو را برای بیتمپهای مورد ارجاع توسط منابع mwm مشخص میکند. اگر بیتمپ بدون مسیر مطلق مشخص شده باشد، این دایرکتوری جستجو میشود. مقدار پیشفرض برای این منبع /usr/X11R6/include/X11/bitmaps است. دایرکتوری /usr/X11R6/include/X11/bitmaps نشاندهنده مکان مرسوم برای این دایرکتوری است. مکان واقعی این دایرکتوری ممکن است در برخی سیستمها متفاوت باشد. اگر بیتمپ در دایرکتوری مشخصشده پیدا نشود، XBMLANGPATH جستجو میشود.
- clientAutoPlace (class ClientAutoPlace)
- این منبع موقعیت پنجره را زمانی که توسط برنامه یا کاربر موقعیتی تعیین نشده باشد مشخص میکند. با مقدار True، پنجرهها با گوشههای بالا-چپ قابها که بهصورت افقی و عمودی جابهجا شدهاند قرار میگیرند. مقدار False باعث میشود موقعیت فعلی پیکربندیشده پنجره استفاده شود. در هر دو حالت، mwm تلاش میکند پنجرهها را کاملاً روی صفحه نمایش قرار دهد. مقدار پیشفرض True است.
- colormapFocusPolicy (class ColormapFocusPolicy)
- این منبع خطمشی تمرکز نقشه رنگی (colormap) را که باید استفاده شود نشان میدهد. اگر مقدار منبع explicit باشد، عمل انتخاب نقشه رنگی روی پنجره کلاینت انجام میشود تا تمرکز نقشه رنگی روی آن پنجره تنظیم شود. اگر مقدار pointer باشد، پنجره کلاینت حاوی اشارهگر دارای تمرکز نقشه رنگی خواهد بود. اگر مقدار keyboard باشد، پنجره کلاینتی که تمرکز ورودی صفحهکلید را در اختیار دارد، تمرکز نقشه رنگی را نیز خواهد داشت. مقدار پیشفرض این منبع keyboard است.
- configFile (class ConfigFile)
- مقدار منبع، مسیر فایل توصیف منبع mwm است. اگر مسیر با "~/" آغاز شود، mwm آن را نسبت به دایرکتوری خانگی کاربر (همانطور که توسط متغیر محیطی HOME مشخص شده است) در نظر میگیرد. اگر متغیر محیطی LANG تنظیم شده باشد، mwm به دنبال $HOME/$LANG/configFile میگردد. اگر آن فایل وجود نداشته باشد یا اگر LANG تنظیم نشده باشد، mwm به دنبال $HOME/configFile میگردد. اگر مسیر configFile با "~/" یا "/" آغاز نشود، mwm آن را نسبت به دایرکتوری کاری فعلی در نظر میگیرد. اگر منبع configFile مشخص نشده باشد یا آن فایل وجود نداشته باشد، mwm از چندین مسیر پیشفرض برای یافتن فایل پیکربندی استفاده میکند. ترتیب جستجو در زیر نشان داده شده است: /usr/X11R6/lib/X11/$LANG/system.mwmrc† /usr/X11R6/lib/X11/system.mwmrc† مسیرهای علامتگذاریشده با «†» وابسته به پیادهسازی هستند.
- deiconifyKeyFocus (class DeiconifyKeyFocus)
- این منبع فقط زمانی اعمال میشود که خطمشی تمرکز ورودی صفحهکلید صریح باشد. در صورت استفاده از مقدار True، پنجره هنگامی که به حالت عادی بازمیگردد (از آیکون خارج میشود) تمرکز ورودی صفحهکلید را دریافت میکند. مقدار پیشفرض True است.
- doubleClickTime (class DoubleClickTime)
- این منبع برای تنظیم بیشینه زمان (به میلیثانیه) بین کلیکها (فشردن دکمه) که یک دوبار کلیک را تشکیل میدهند استفاده میشود. استفاده از این منبع منسوخ شده است. به جای آن از منبع Xt به نام multiClickTime استفاده کنید. مقدار doubleClickTime بهطور پویا به مقدار multiClickTime پیشفرض میشود.
- enableWarp (class EnableWarp)
- مقدار پیشفرض این منبع، True، باعث میشود mwm اشارهگر را در حین عملیات تغییر اندازه و جابهجاییِ کنترلشده با صفحهکلید، به مرکز پنجره انتخابشده منتقل (warp) کند. تنظیم مقدار به False باعث میشود mwm اشارهگر را در مکان اصلی خود روی صفحه باقی بگذارد، مگر اینکه کاربر صریحاً آن را با کلیدهای مکاننما یا دستگاه اشارهگر حرکت دهد.
- enforceKeyFocus (class EnforceKeyFocus)
- اگر به این منبع مقدار True داده شود، تمرکز ورودی صفحهکلید همیشه صریحاً روی پنجرههای انتخابشده تنظیم میشود حتی اگر نشانهای وجود داشته باشد که آنها پنجرههای ورودی "سراسری فعال" هستند. (نمونهای از پنجره سراسری فعال، نوار پیمایشی است که میتواند بدون تنظیم تمرکز روی آن کلاینت کار کند.) اگر منبع False باشد، تمرکز ورودی صفحهکلید صریحاً روی پنجرههای سراسری فعال تنظیم نمیشود. مقدار پیشفرض True است.
- frameStyle (class frameStyle)
- اگر به این منبع مقدار "slab" داده شود، قاب مدیر پنجره بهگونهای رسم میشود که ناحیه کلاینت همارتفاع با بالای قاب پنجره به نظر برسد. اگر منبع روی "recessed" تنظیم شود، قاب پنجره بهگونهای رسم میشود که ناحیه کلاینت پایینتر از بالای قاب پنجره به نظر برسد. مقدار پیشفرض "recessed" است.
- iconAutoPlace (class IconAutoPlace)
- این منبع نشان میدهد که آیا مدیر پنجره آیکونها را در ناحیه خاصی از صفحه مرتب میکند یا هر آیکون را در جایی که پنجره هنگام تبدیل به آیکون قرار داشت میگذارد. مقدار True نشان میدهد که آیکونها در ناحیه خاصی از صفحه که توسط منبع iconPlacement تعیین میشود مرتب میشوند. مقدار False نشان میدهد که آیکون در مکان پنجره در هنگام آیکون شدن قرار میگیرد. پیشفرض True است.
- iconClick (class IconClick)
- هنگامی که به این منبع مقدار True داده شود، با کلیک روی یک آیکون، منوی سیستم باز شده و باز باقی میماند. مقدار پیشفرض True است.
- interactivePlacement (class InteractivePlacement)
- این منبع جایگذاری اولیه پنجرههای جدید روی صفحه نمایش را کنترل میکند. اگر مقدار True باشد، شکل اشارهگر قبل از قرار گرفتن پنجره جدید روی صفحه تغییر میکند تا به کاربر نشان دهد که باید موقعیتی برای گوشه بالا-چپ پنجره انتخاب شود. اگر مقدار False باشد، پنجرهها بر اساس ویژگیهای پیکربندی اولیه پنجره قرار میگیرند. مقدار پیشفرض این منبع False است.
- keyboardFocusPolicy (class KeyboardFocusPolicy)
- اگر روی pointer تنظیم شود، خطمشی تمرکز صفحهکلید این است که تمرکز صفحهکلید روی پنجره کلاینت حاوی اشارهگر قرار گیرد (اشارهگر میتواند در تزیینات پنجره کلاینت که mwm اضافه میکند نیز باشد). اگر روی explicit تنظیم شود، خطمشی این است که وقتی کاربر دکمه ۱ را با اشارهگر روی پنجره کلاینت یا هر بخشی از تزیینات mwm مرتبط فشار میدهد، تمرکز صفحهکلید روی آن پنجره کلاینت تنظیم شود. مقدار پیشفرض این منبع explicit است.
- lowerOnIconify (class LowerOnIconify)
- اگر به این منبع مقدار پیشفرض True داده شود، هنگامی که پنجره کمینه (آیکون) میشود، آیکون آن در انتهای پشته پنجرهها ظاهر میگردد. مقدار False آیکون را در همان جایگاه پشتهبندی پنجره مرتبط با آن قرار میدهد. مقدار پیشفرض این منبع True است.
- moveThreshold (class MoveThreshold)
- این منبع برای کنترل حساسیت عملیات کشیدن که پنجرهها و آیکونها را جابهجا میکند به کار میرود. مقدار این منبع تعداد پیکسلهایی است که نشانگر با دکمه فشرده حرکت میکند تا عملیات جابهجایی آغاز شود. این مورد برای جلوگیری از جابهجایی پنجره/آیکون هنگام کلیک یا دوبار کلیک که در آن حرکت ناخواسته اشارهگر با دکمه فشرده رخ میدهد استفاده میشود. مقدار پیشفرض این منبع ۴ (پیکسل) است.
- multiScreen (class MultiScreen)
- این منبع، در صورت True بودن، باعث میشود mwm تمام صفحههای نمایش موجود در نمایشگر را مدیریت کند. اگر False باشد، mwm فقط یک صفحه نمایش منفرد را مدیریت میکند. مقدار پیشفرض False است.
- passButtons (class PassButtons)
- این منبع نشان میدهد که آیا رویدادهای فشردن دکمه پس از استفاده برای انجام یک تابع مدیر پنجره در بافت کلاینت، به کلاینتها ارسال میشوند یا خیر. اگر مقدار منبع False باشد، فشردن دکمه به کلاینت منتقل نمیشود. اگر مقدار True باشد، فشردن دکمه به پنجره کلاینت ارسال میگردد. تابع مدیر پنجره در هر دو حالت انجام میشود. مقدار پیشفرض این منبع False است.
- passSelectButton (class PassSelectButton)
- این منبع نشان میدهد که آیا رویدادهای فشردن دکمه انتخاب (select button) پس از استفاده برای انجام تابع مدیر پنجره در بافت کلاینت، به کلاینتها منتقل شوند یا خیر. اگر مقدار منبع False باشد، فشردن دکمه به کلاینت ارسال نخواهد شد. اگر مقدار True باشد، فشردن دکمه به پنجره کلاینت فرستاده میشود. تابع مدیر پنجره در هر دو حالت انجام میگیرد. مقدار پیشفرض این منبع True است.
- positionIsFrame (class PositionIsFrame)
- این منبع نشان میدهد که اطلاعات موقعیت پنجره کلاینت (از ویژگی WM_NORMAL_HINTS و از درخواستهای پیکربندی) چگونه تفسیر شوند. اگر مقدار منبع True باشد، اطلاعات به عنوان موقعیت قاب پنجره کلاینت mwm تفسیر میشود. اگر مقدار False باشد، به عنوان موقعیت ناحیه کلاینت پنجره تفسیر میگردد. مقدار پیشفرض این منبع True است.
- positionOnScreen (class PositionOnScreen)
- این منبع برای نشان دادن این است که پنجرهها در ابتدا (در صورت امکان) بهگونهای قرار گیرند که توسط لبه صفحه نمایش بریده نشوند (اگر مقدار منبع True باشد). اگر پنجرهای بزرگتر از اندازه صفحه نمایش باشد، حداقل گوشه بالا-چپ پنجره روی صفحه قرار میگیرد. اگر مقدار منبع False باشد، پنجرهها در موقعیت درخواستی قرار میگیرند حتی اگر کاملاً خارج از صفحه باشند. مقدار پیشفرض این منبع True است.
- quitTimeout (class QuitTimeout)
- این منبع مدت زمانی (به میلیثانیه) را که mwm منتظر میماند تا کلاینت پس از ارسال پیام WM_SAVE_YOURSELF توسط mwm، ویژگی WM_COMMAND را بهروزرسانی کند، مشخص مینماید. مقدار پیشفرض این منبع ۱۰۰۰ (میلیثانیه) است. (برای اطلاعات بیشتر به توضیحات تابع f.kill مراجعه کنید.)
- raiseKeyFocus (class RaiseKeyFocus)
- این منبع فقط زمانی در دسترس است که خطمشی تمرکز ورودی صفحهکلید صریح باشد. با تنظیم روی True، این منبع مشخص میکند که پنجرهای که با استفاده از تابع f.normalize_and_raise بالا آورده شده است، تمرکز ورودی را نیز دریافت میکند. مقدار پیشفرض این منبع False است.
- refreshByClearing (class RefreshByClearing)
- این منبع سازوکار مورد استفاده برای نوسازی (refresh) یک پنجره (یا صفحه نمایش) را در هنگام اجرای تابع f.refresh_win (f.refresh) تعیین میکند. هنگامی که روی True تنظیم شود، یک XClearArea روی پنجره برای f.refresh_win انجام میشود. هنگامی که روی False تنظیم شود، یک پنجره پوششی روی پنجره مورد نوسازی ایجاد و نابود میشود. اگر تابع f.refresh باشد و این منبع روی True تنظیم شده باشد، یک XClearArea روی هر پنجره روی صفحه انجام میشود. اگر منبع روی False تنظیم شده باشد، یک پنجره بزرگ که کل صفحه را پوشش میدهد ایجاد و نابود میشود. مقدار پیشفرض این منبع True است.
- rootButtonClick (class RootButtonClick)
- منبع rootButtonClick کنترل میکند که آیا یک کلیک روی پنجره ریشه، منوی ریشه را در حالت "چسبنده" (sticky) باز میکند یا خیر. اگر این منبع روی True تنظیم شود، یک کلیک دکمه روی پنجره ریشه، منوی متصل به رویداد پایین رفتن دکمه (button down) را به صورت چسبنده باز میکند. اگر این منبع روی False تنظیم شود، همان کلیک دکمه فقط باعث چشمک زدن منو میشود زیرا پس از رویداد بالا آمدن دکمه، منو بسته خواهد شد. معیار مورد استفاده برای تعیین اینکه آیا یک کلیک دکمه است این است که اشارهگر بین رویدادهای پایین و بالا رفتن دکمه حرکت نکند. مقدار پیشفرض این منبع True است.
- screens (class Screens)
- این منبع نام منابع مورد استفاده برای صفحههای تحت مدیریت mwm را مشخص میکند. اگر mwm یک صفحه منفرد را مدیریت کند، فقط اولین نام در فهرست استفاده میشود. اگر mwm چندین صفحه را مدیریت کند، نامها به ترتیب از صفحه ۰ به صفحهها اختصاص مییابند. صفحه ۰ نام اول، صفحه ۱ نام دوم و به همین ترتیب را دریافت میکند. نامهای پیشفرض صفحه 0، 1 و غیره هستند.
- sessionClientDB (class SessionClientDB)
- این منبع نام فایلی را برای استفاده به عنوان ریشه هنگام ذخیره وضعیت به درخواست مدیر نشست XSMP مشخص میکند. با ذخیره نشست، مدیر پنجره نام فایل را با افزایش خودکار پسوند مجدداً استفاده میکند.
- showFeedback (class ShowFeedback)
- این منبع نمایش پنجرههای بازخورد یا کادرهای گفتگوی تأیید را کنترل میکند. پنجره بازخورد، جایگذاری اولیه پنجره کلاینت و موقعیت و ابعاد آن را در حین عملیات جابهجایی و تغییر اندازه نشان میدهد. کادرهای گفتگوی تأیید میتوانند برای عملیات خاصی نمایش داده شوند. مقدار این منبع فهرستی از نامهای گزینههای بازخورد برای فعال یا غیرفعال کردن است؛ نامها باید با فاصله جدا شوند. اگر علامتی منفی قبل از یک گزینه بیاید، آن گزینه از فهرست حذف میشود. علامت اولین مورد در فهرست، مجموعه اولیه گزینهها را تعیین میکند. اگر علامت اولین گزینه منفی باشد، mwm فرض میکند تمام گزینهها وجود دارند و شروع به کسر از آن مجموعه میکند. اگر علامت اولین مورد مثبت باشد (یا مشخص نشده باشد)، mwm بدون هیچ گزینهای شروع کرده و فهرستی را از منبع میسازد.
نام گزینههای بازخورد در زیر نشان داده شده است:
| نام | توضیحات |
| all | نمایش تمام بازخوردها (مقدار پیشفرض). |
| behavior | تأیید تغییر رفتار. |
| kill | تأیید هنگام دریافت سیگنال KILL. |
| move | نمایش موقعیت در حین جابهجایی. |
| none | عدم نمایش بازخورد. |
| placement | نمایش موقعیت و اندازه در حین جایگذاری اولیه. |
| quit | تأیید خروج از mwm. |
| resize | نمایش اندازه در حین تغییر اندازه. |
| restart | تأیید راهاندازی مجدد mwm. |
خط فرمان زیر نحو showFeedback را نشان میدهد:
Mwm*showFeedback: placement resize behavior restart
این مشخصات منبع، بازخورد را برای جایگذاری اولیه و تغییر اندازه کلاینت فراهم میکند و جعبههای محاوره را برای تأیید توابع راهاندازی مجدد و تنظیم رفتار فعال مینماید. بازخورد را برای تابع جابهجایی غیرفعال میکند. مقدار پیشفرض برای این منبع all است.
- startupKeyFocus (class StartupKeyFocus)
- این منبع فقط زمانی در دسترس است که خطمشی تمرکز ورودی صفحهکلید صریح باشد. با دریافت مقدار پیشفرض True، یک پنجره هنگام نگاشت شدن (یعنی مدیریت اولیه توسط مدیر پنجره) تمرکز ورودی صفحهکلید را دریافت میکند. توصیه میشود برای کار با منوهای جداشونده، هر دو منبع autoKeyFocus و startupKeyFocus برابر True باشند. مقدار پیشفرض True است.
- wMenuButtonClick (class WMenuButtonClick)
- این منبع نشان میدهد که آیا کلیک ماوس زمانی که اشارهگر روی دکمه منوی پنجره قرار دارد، منوی پنجره را باز کرده و باز میگذارد یا خیر. اگر مقدار داده شده به این منبع True باشد، منو باز میماند. مقدار پیشفرض این منبع True است.
- wMenuButtonClick2 (class WMenuButtonClick2)
- هنگامی که به این منبع مقدار پیشفرض True داده شود، دوبار کلیک روی دکمه منوی پنجره، تابع f.kill را انجام میدهد.
منابع ظاهر و رفتار ویژه صفحه نمایش (Screen Specific Appearance and Behavior Resources)
نحو مشخص کردن منابع ویژه صفحه نمایش بهصورت Mwm* screen_name*resource_id است. برای مثال، Mwm*1*keyBindings انتسابهای کلید مورد استفاده برای صفحه "1" را مشخص میکند.
منابع ویژه صفحه نمایش (Screen Specific Resources)
| نام | کلاس | نوع مقدار | پیشفرض |
| buttonBindings | ButtonBindings | string | DefaultButtonBindings |
| cleanText | CleanText | T/F | T |
| fadeNormalIcon | FadeNormalIcon | T/F | F |
| feedbackGeometry | FeedbackGeometry | string | center on screen |
| frameBorderWidth | FrameBorderWidth | pixels | varies |
| iconBoxGeometry | IconBoxGeometry | string | 6x1+0-0 |
| iconBoxName | IconBoxName | string | iconbox |
| iconBoxSBDisplayPolicy | IconBoxSBDisplayPolicy | string | all |
| iconBoxTitle | IconBoxTitle | XmString | Icons |
| iconDecoration | IconDecoration | string | varies |
| iconImageMaximum | IconImageMaximum | wxh | 48x48 |
| iconImageMinimum | IconImageMinimum | wxh | 16x16 |
| iconPlacement | IconPlacement | string | left bottom |
| iconPlacementMargin | IconPlacementMargin | pixels | varies |
| keyBindings | KeyBindings | string | DefaultKeyBindings |
| limitResize | LimitResize | T/F | T |
| maximumMaximumSize | MaximumMaximumSize | wxh (pixels) | 2X screen w&h |
| moveOpaque | MoveOpaque | T/F | F |
| resizeBorderWidth | ResizeBorderWidth | pixels | varies |
| resizeCursors | ResizeCursors | T/F | T |
| transientDecoration | TransientDecoration | string | menu title |
| transientFunctions | TransientFunctions | string | -minimize-maximize |
| useIconBox | UseIconBox | T/F | F |
- این منبع مجموعه انتسابهای دکمه را برای توابع مدیریت پنجره مشخص میکند. مجموعه نامگذاریشده از انتسابهای دکمه در فایل توصیف منبع mwm مشخص میشود. این انتسابهای دکمه با انتسابهای پیشفرض داخلی ادغام میشوند. مقدار پیشفرض این منبع "DefaultButtonBindings" است.
- cleanText (class CleanText)
- این منبع نمایش متن مدیر پنجره را در عنوان کلاینت و پنجرههای بازخورد کنترل میکند. اگر مقدار پیشفرض True استفاده شود، متن با پسزمینه واضح (بدون ترام یا stipple) رسم میشود. این کار خواندن متن را در سیستمهای تکرنگ که در آنها backgroundPixmap مشخص شده است آسانتر میکند. فقط ترام در ناحیه بلافاصله اطراف متن پاک میشود. اگر False باشد، متن مستقیماً روی پسزمینه موجود رسم میشود.
- fadeNormalIcon (class FadeNormalIcon)
- اگر به این منبع مقدار True داده شود، هر زمان که آیکونی به حالت عادی بازگردانده شود (پنجره آن باز شود)، آیکون خاکستری (کمرنگ) میشود. مقدار پیشفرض False است.
- feedbackGeometry (class FeedbackGeometry)
- این منبع موقعیت پنجره بازخورد جابهجایی و تغییر اندازه را تنظیم میکند. اگر این منبع مشخص نشود، پیشفرض قرار دادن پنجره بازخورد در مرکز صفحه است. مقدار منبع یک رشته هندسی استاندارد پنجره با نحو زیر است: [=]{ +-}xoffset{+-} yoffset]
- frameBorderWidth (class FrameBorderWidth)
- این منبع عرض (به پیکسل) کادر قاب پنجره کلاینت بدون دستگیرههای تغییر اندازه را مشخص میکند. عرض کادر شامل سایههای سهبعدی است. مقدار پیشفرض بر اساس اندازه و وضوح صفحه نمایش تعیین میشود.
- iconBoxGeometry (class IconBoxGeometry)
- این منبع موقعیت و ابعاد اولیه جعبه آیکون را نشان میدهد. مقدار منبع یک رشته هندسی استاندارد پنجره با نحو زیر است: [=][width xheight][{+-}xoffset {+-}yoffset] اگر آفستها ارائه نشوند، از خطمشی iconPlacement برای تعیین جایگذاری اولیه استفاده میشود. واحدهای عرض و ارتفاع، ستونها و ردیفها هستند. اندازه واقعی پنجره جعبه آیکون روی صفحه به منابع iconImageMaximum (اندازه) و iconDecoration بستگی دارد. مقدار پیشفرض اندازه برابر است با: عرض (6 * iconWidth + padding) در ارتفاع (1 * iconHeight + padding). مقدار پیشفرض موقعیت +0 -0 است.
- iconBoxName (class IconBoxName)
- این منبع نامی را که برای جستجوی منابع جعبه آیکون استفاده میشود مشخص میکند. نام پیشفرض iconbox است.
- iconBoxSBDisplayPolicy (class IconBoxSBDisplayPolicy)
- این منبع خطمشی نمایش نوار پیمایش مدیر پنجره در جعبه آیکون را مشخص میکند. این منبع دارای سه مقدار ممکن است: all، vertical و horizontal. مقدار پیشفرض "all" باعث میشود نوارهای پیمایش عمودی و افقی همیشه ظاهر شوند. مقدار "vertical" باعث میشود فقط یک نوار پیمایش عمودی در جعبه آیکون ظاهر شود و جهتگیری جعبه آیکون را به افقی تنظیم میکند (بدون توجه به مشخصات iconBoxGeometry). مقدار "horizontal" باعث ظاهر شدن یک نوار پیمایش افقی در جعبه آیکون شده و جهتگیری جعبه آیکون را به عمودی تنظیم میکند (بدون توجه به مشخصات iconBoxGeometry).
- iconBoxTitle (class IconBoxTitle)
- این منبع نام مورد استفاده در ناحیه عنوان قاب جعبه آیکون را مشخص میکند. مقدار پیشفرض Icons است.
- iconDecoration (class IconDecoration)
- این منبع تزیینات عمومی آیکون را مشخص میکند. مقدار منبع میتواند label (تنها بخش برچسب نمایش داده میشود)، image (تنها بخش تصویر نمایش داده میشود) یا label image (هر دو بخش برچسب و تصویر نمایش داده میشوند) باشد. مقدار activelabel نیز میتواند مشخص شود تا هنگام انتخاب آیکون، یک برچسب (بدون برش خوردن به عرض آیکون) نمایش داده شود. تزیین پیشفرض آیکون برای آیکونهای جعبه آیکون این است که هر آیکون دارای یک بخش برچسب و یک بخش تصویر است (label image). تزیین پیشفرض برای آیکونهای مستقل این است که هر آیکون دارای یک بخش برچسب فعال، یک بخش برچسب و یک بخش تصویر است (activelabel label image).
- iconImageMaximum (class IconImageMaximum)
- این منبع بیشینه اندازه تصویر آیکون را مشخص میکند. مقدار منبع بهصورت widthx height (برای مثال 64x64) است. بیشینه اندازه پشتیبانیشده 128x128 است. مقدار پیشفرض این منبع 50x50 است.
- iconImageMinimum (class IconImageMinimum)
- این منبع کمینه اندازه تصویر آیکون را مشخص میکند. مقدار منبع بهصورت widthx height (برای مثال 32x50) است. کمینه اندازه پشتیبانیشده 16x16 است. مقدار پیشفرض این منبع 16x16 است.
- iconPlacement (class IconPlacement)
- این منبع طرح جایگذاری آیکون را برای استفاده مشخص میکند. مقدار منبع دارای نحو زیر است:
- primary_layout secondary_layout [tight]
مقادیر چینش یکی از موارد زیر هستند:
| مقدار | توضیحات |
| top | چیدن آیکونها از بالا به پایین. |
| bottom | چیدن آیکونها از پایین به بالا. |
| left | چیدن آیکونها از چپ به راست. |
| right | چیدن آیکونها از راست به چپ. |
یک مقدار چینش افقی (عمودی) نباید هم برای primary_layout و هم برای secondary_layout استفاده شود (برای مثال، از top برای primary_layout و bottom برای secondary_layout استفاده نکنید).
مقدار primary_layout مشخص میکند که آیا در هنگام جایگذاری، آیکون در یک سطر قرار گیرد یا ستون و جهت جایگذاری چگونه باشد. مقدار secondary_layout نشان میدهد که سطرها یا ستونهای جدید در کجا قرار گیرند. برای مثال، top right نشان میدهد که آیکونها باید از بالا به پایین روی صفحه چیده شوند و ستونها از راست به چپ روی صفحه اضافه گردند.
جایگذاری پیشفرض left bottom است (آیکونها از چپ به راست روی صفحه چیده میشوند، بهطوری که اولین سطر در پایین صفحه قرار دارد و سطرهای جدید از پایین صفحه به سمت بالا اضافه میشوند). مقدار tight آیکونها را با فاصله صفر بین آنها قرار میدهد. این مقدار به دلایل زیباییشناختی و همچنین در پایانههای X با صفحههای نمایش کوچک مفید است.
- iconPlacementMargin (class IconPlacementMargin)
- این منبع فاصله بین لبه صفحه نمایش و آیکونهایی را که در امتداد لبه صفحه قرار میگیرند تنظیم میکند. این مقدار باید بزرگتر یا مساوی ۰ باشد. در صورت نامعتبر بودن مقدار مشخصشده، از مقدار پیشفرض (در زیر ببینید) استفاده میشود. مقدار پیشفرض این منبع برابر با فاصله بین آیکونها هنگام قرار گرفتن آنها روی صفحه است (این فاصله بر اساس بیشینهسازی تعداد آیکونها در هر سطر و ستون محاسبه میشود).
- keyBindings (class KeyBindings)
- این منبع مجموعه انتسابهای کلید را برای توابع مدیریت پنجره مشخص میکند. در صورت تعیین، این انتسابهای کلید جایگزین انتسابهای پیشفرض داخلی میشوند. مجموعه نامگذاریشده از انتسابهای کلید در فایل توصیف منبع mwm مشخص میشود. مقدار پیشفرض این منبع "DefaultKeyBindings" است.
- limitResize (class LimitResize)
- اگر این منبع True باشد، کاربر مجاز به تغییر اندازه پنجره به اندازهای بزرگتر از بیشینه اندازه نخواهد بود. مقدار پیشفرض این منبع True است.
- maximumMaximumSize (class MaximumMaximumSize)
- این منبع برای محدود کردن بیشینه اندازه یک پنجره کلاینت تنظیمشده توسط کاربر یا کلاینت به کار میرود. مقدار منبع بهصورت widthxheight (برای مثال 1024x1024) است که در آن عرض و ارتفاع بر حسب پیکسل هستند. مقدار پیشفرض این منبع دو برابر عرض و ارتفاع صفحه نمایش است.
- moveOpaque (class MoveOpaque)
- این منبع کنترل میکند که آیا خود پنجره جابهجا شود یا یک کادر مستطیلی از پنجره جابهجا گردد. مقدار پیشفرض False یک کادر مستطیلی را هنگام جابهجایی نمایش میدهد.
- resizeBorderWidth (class ResizeBorderWidth)
- این منبع عرض (به پیکسل) کادر قاب پنجره کلاینت با دستگیرههای تغییر اندازه را مشخص میکند. عرض کادر مشخصشده شامل سایههای سهبعدی است. مقدار پیشفرض بر اساس اندازه و وضوح صفحه نمایش تعیین میشود.
- resizeCursors (class ResizeCursors)
- برای نشان دادن اینکه آیا نشانگرهای تغییر اندازه همیشه در هنگامی که اشارهگر در حاشیه اندازه پنجره قرار دارد نمایش داده شوند یا خیر به کار میرود. اگر True باشد، نشانگرها نمایش داده میشوند؛ در غیر این صورت نشانگر مدیر پنجره نمایش داده میشود. مقدار پیشفرض True است.
- transientDecoration (class TransientDecoration)
- این منبع میزان تزییناتی را که mwm روی پنجرههای گذرا قرار میدهد کنترل میکند. مشخصات تزیینات دقیقاً همانند منبع clientDecoration (ویژه کلاینت) است. پنجرههای گذرا با ویژگی WM_TRANSIENT_FOR مشخص میشوند که توسط کلاینت اضافه میشود تا یک پنجره نسبتاً موقتی را نشان دهد. مقدار پیشفرض این منبع menu title است (یعنی پنجرههای گذرا دارای کادرهای قاب و یک نوار عنوان با دکمه منوی پنجره هستند).
- یک برنامه کاربردی همچنین میتواند مشخص کند که mwm چه تزییناتی را باید روی پنجرههایش اعمال کند. در این صورت، mwm فقط تزییناتی را اعمال میکند که هم توسط برنامه و هم توسط منبع transientDecoration مشخص شده باشند. در غیر این صورت، mwm تزیینات مشخصشده توسط منبع transientDecoration را اعمال میکند. برای اطلاعات بیشتر، توضیحات XmNmwmDecorations را در صفحه مرجع VendorShell(3) ببینید.
- transientFunctions (class TransientFunctions)
- این منبع برای مشخص کردن این است که کدام توابع مدیریت پنجره برای پنجرههای گذرا قابل اعمال (یا غیرقابل اعمال) هستند. مشخصات تابع دقیقاً مشابه منبع clientFunctions (ویژه کلاینت) است. مقدار پیشفرض این منبع -minimize -maximize است.
- یک برنامه کاربردی همچنین میتواند مشخص کند که mwm چه توابعی را باید روی پنجرههایش اعمال کند. در این صورت، mwm فقط توابعی را اعمال میکند که هم توسط برنامه و هم توسط منبع transientFunctions مشخص شده باشند. در غیر این صورت، mwm توابع مشخصشده توسط منبع transientFunctions را اعمال میکند. برای اطلاعات بیشتر، توضیحات XmNmwmFunctions را در صفحه مرجع VendorShell(3) ببینید.
- useIconBox (class UseIconBox)
- اگر به این منبع مقدار True داده شود، آیکونها در یک جعبه آیکون قرار میگیرند. زمانی که از جعبه آیکون استفاده نشود، آیکونها روی پنجره ریشه قرار میگیرند (مقدار پیشفرض).
منابع ویژه کلاینت (Client Specific Resources)
نحو مشخص کردن منابع ویژه کلاینت بهصورت زیر است:
Mwm*client_name_or_class *resource_id
برای مثال، Mwm*mterm*windowMenu برای مشخص کردن منوی پنجره مورد استفاده با کلاینتهای mterm به کار میرود. نحو تعیین منابع ویژه کلاینت برای همه کلاسهای کلاینت بهصورت زیر است:
Mwm*resource_id
مشخصات کلاینتهای خاص بر مشخصات عمومی همه کلاینتها اولویت دارند. برای مثال، Mwm*windowMenu برای مشخص کردن منوی پنجره برای تمام کلاسهای کلاینتی که منوی پنجره خاصی برای آنها مشخص نشده است به کار میرود.
نحو مشخص کردن مقادیر منابع برای پنجرههایی که نام و کلاس نامشخصی دارند (یعنی پنجرههایی که ویژگی WM_CLASS با آنها مرتبط نیست) بهصورت زیر است:
Mwm*defaults*resource_id
برای مثال، Mwm*defaults*iconImage برای مشخص کردن تصویر آیکون مورد استفاده برای پنجرههایی با نام و کلاس نامشخص استفاده میشود.
منابع ویژه کلاینت زیر قابل تعیین هستند:
منابع ویژه کلاینت (Client Specific Resources)
| نام | کلاس | نوع مقدار | پیشفرض |
| clientDecoration | ClientDecoration | string | all. |
| clientFunctions | ClientFunctions | string | all. |
| focusAutoRaise | FocusAutoRaise | T/F | varies |
| iconImage | IconImage | pathname | (image) |
| iconImage- | Background | color | icon background |
| Background | |||
| iconImageBottom- | Foreground | color | icon |
| ShadowColor | bottom shadow | ||
| iconImageBottom- | BottomShadow- | color | icon bottom |
| ShadowPixmap | Pixmap | shadow pixmap | |
| iconImageForeground | Foreground | color | varies |
| iconImageTopShadowColor | Background | color | icon top |
| shadow color | |||
| iconImageTop- | TopShadowPixmap | color | icon top |
| ShadowPixmap | shadow pixmap | ||
| matteBackground | Background | color | background |
| matteBottom- | Foreground | color | bottom |
| ShadowColor | shadow color | ||
| matteBottom- | BottomShadow- | color | bottom |
| ShadowPixmap | Pixmap | shadow pixmap | |
| matteForeground | Foreground | color | foreground |
| matteTopShadowColor | Background | color | top |
| shadow color | |||
| matteTopShadowPixmap | TopShadowPixmap | color | top |
| shadow pixmap | |||
| matteWidth | MatteWidth | pixels | 0 |
| maximumClientSize | MaximumClientSize | wxh | |
| vertical horizontal | fill the screen | ||
| useClientIcon | UseClientIcon | T/F | T |
| usePPosition | UsePPosition | string | nonzero |
| windowMenu | WindowMenu | string | DefaultWindowMenu |
- clientDecoration (class ClientDecoration)
- این منبع میزان تزیینات قاب پنجره را کنترل میکند. منبع بهصورت فهرستی از تزیینات برای مشخص کردن گنجاندن آنها در قاب تعریف میشود. اگر پیش از یک تزیین علامت منفی بیاید، آن تزیین از قاب حذف میشود. علامت اولین مورد در فهرست، مقدار اولیه تزیینات را تعیین میکند. اگر علامت اولین تزیین منفی باشد، mwm فرض میکند همه تزیینات وجود دارند و شروع به کسر از آن مجموعه میکند. اگر علامت اولین تزیین مثبت باشد (یا مشخص نشده باشد)، mwm بدون تزیینات شروع کرده و فهرستی را از منبع ایجاد میکند.
- یک برنامه
کاربردی
همچنین
میتواند
مشخص کند که
mwm چه
تزییناتی
را باید روی
پنجرههایش
اعمال کند.
در این
صورت، mwm
فقط
تزییناتی
را اعمال
میکند که
هم توسط
برنامه و هم
توسط منبع
clientDecoration مشخص
شده باشند.
در غیر این
صورت، mwm
تزیینات
مشخصشده
توسط منبع
clientDecoration را
اعمال
میکند.
برای
اطلاعات
بیشتر،
توضیحات
XmNmwmDecorations را در
صفحه مرجع
VendorShell(3) ببینید.
نام توضیحات all شامل تمام تزیینات (مقدار پیشفرض). border کادر پنجره. maximize دکمه بیشینهسازی (شامل نوار عنوان). minimize دکمه کمینهسازی (شامل نوار عنوان). none بدون تزیینات. resizeh دستگیرههای تغییر اندازه کادر (شامل کادر). menu دکمه منوی پنجره (شامل نوار عنوان). title نوار عنوان (شامل کادر).
مثالها: Mwm*XClock.clientDecoration: -resizeh -maximize این دستور دستگیرههای تغییر اندازه و دکمه بیشینهسازی را از پنجرههای XClock حذف میکند. Mwm*XClock.clientDecoration: menu minimize border این دستور همان کار بالا را انجام میدهد. توجه داشته باشید که هر یک از menu یا minimize بهطور ضمنی شامل title نیز هستند.
- clientFunctions (class ClientFunctions)
- این منبع برای نشان دادن این است که کدام توابع mwm برای پنجره کلاینت قابل اعمال (یا غیرقابل اعمال) هستند. مقدار این منبع فهرستی از توابع است. اگر اولین تابع در فهرست علامت منفی در جلو داشته باشد، mwm با تمام توابع شروع کرده و از آن مجموعه کسر میکند. اگر اولین تابع علامت مثبت داشته باشد، mwm بدون هیچ تابعی شروع کرده و فهرستی میسازد. هر تابع در فهرست باید با علامت مثبت یا منفی مناسب همراه بوده و با فاصله از تابع بعدی جدا شود.
- یک برنامه کاربردی همچنین میتواند مشخص کند که mwm چه توابعی را باید روی پنجرههایش اعمال کند. در این صورت، mwm فقط توابعی را اعمال میکند که هم توسط برنامه و هم توسط منبع clientFunctions مشخص شده باشند. در غیر این صورت، mwm توابع مشخصشده توسط منبع clientFunctions را اعمال میکند. برای اطلاعات بیشتر، توضیحات XmNmwmFunctions را در صفحه مرجع VendorShell(3) ببینید.
جدول زیر توابع موجود برای این منبع را فهرست میکند:
| نام | توضیحات |
| all | شامل تمام توابع (مقدار پیشفرض). |
| none | بدون توابع. |
| resize | f.resize†. |
| move | f.move†. |
| minimize | f.minimize†. |
| maximize | f.maximize†. |
| close | f.kill†. |
†See mwmrc(4).
- focusAutoRaise (class FocusAutoRaise)
- هنگامی که مقدار این منبع True باشد، کلاینتها هنگام دریافت تمرکز ورودی صفحهکلید بالا آورده میشوند. اگر مقدار False باشد، با دریافت تمرکز صفحهکلید توسط پنجره، ترتیب پشته پنجرهها روی صفحه تغییر نمیکند. مقدار پیشفرض زمانی که keyboardFocusPolicy برابر explicit باشد True و زمانی که pointer باشد False است.
- iconImage (class IconImage)
- از این منبع میتوان برای مشخص کردن تصویر آیکون یک کلاینت استفاده کرد (برای مثال، "Mwm*myclock*iconImage"). مقدار منبع مسیر فایل pixmap یا bitmap است. مقدار منبع useClientIcon (ویژه کلاینت) برای تعیین اینکه آیا تصاویر آیکون ارائهشده توسط کاربر به جای تصاویر ارائهشده توسط کلاینت استفاده شوند یا خیر به کار میرود. مقدار پیشفرض نمایش تصویر آیکون پیشفرض داخلی مدیر پنجره است.
- iconImageBackground (class Background)
- این منبع رنگ پسزمینه تصویر آیکون را که در بخش تصویر یک آیکون نمایش داده میشود مشخص میکند. مقدار پیشفرض این منبع رنگ پسزمینه آیکون است (یعنی مشخصشده با Mwm*background یا Mwm*icon*background).
- iconImageBottomShadowColor (class Foreground)
- این منبع رنگ سایه پایینی تصویر آیکون را که در بخش تصویر یک آیکون نمایش داده میشود مشخص میکند. مقدار پیشفرض این منبع رنگ سایه پایینی آیکون است (یعنی مشخصشده با Mwm*icon*bottomShadowColor).
- iconImageBottomShadowPixmap (class BottomShadowPixmap)
- این منبع تصویر سایه پایینی (Pixmap) تصویر آیکون را که در بخش تصویر یک آیکون نمایش داده میشود مشخص میکند. مقدار پیشفرض این منبع تصویر سایه پایینی آیکون است (یعنی مشخصشده با Mwm*icon*bottomShadowPixmap).
- iconImageForeground (class Foreground)
- این منبع رنگ پیشزمینه تصویر آیکون را که در بخش تصویر یک آیکون نمایش داده میشود مشخص میکند. مقدار پیشفرض این منبع بسته به پسزمینه آیکون متغیر است.
- iconImageTopShadowColor (class Background)
- این منبع رنگ سایه بالایی تصویر آیکون را که در بخش تصویر یک آیکون نمایش داده میشود مشخص میکند. مقدار پیشفرض این منبع رنگ سایه بالایی آیکون است (یعنی مشخصشده با Mwm*icon*topShadowColor).
- iconImageTopShadowPixmap (class TopShadowPixmap)
- این منبع تصویر سایه بالایی (Pixmap) تصویر آیکون را که در بخش تصویر یک آیکون نمایش داده میشود مشخص میکند. مقدار پیشفرض این منبع تصویر سایه بالایی آیکون است (یعنی مشخصشده با Mwm*icon*topShadowPixmap).
- matteBackground (class Background)
- این منبع رنگ پسزمینه حاشیه مات را در زمانی که matteWidth مثبت است مشخص میکند. مقدار پیشفرض این منبع رنگ پسزمینه کلاینت است (یعنی مشخصشده با Mwm*background یا Mwm*client*background).
- matteBottomShadowColor (class Foreground)
- این منبع رنگ سایه پایینی حاشیه مات را زمانی که matteWidth مثبت است مشخص میکند. مقدار پیشفرض این منبع رنگ سایه پایینی کلاینت است (یعنی مشخصشده با Mwm*bottomShadowColor یا Mwm*client*bottomShadowColor).
- matteBottomShadowPixmap (class BottomShadowPixmap)
- این منبع تصویر سایه پایینی (Pixmap) حاشیه مات را زمانی که matteWidth مثبت است مشخص میکند. مقدار پیشفرض این منبع تصویر سایه پایینی کلاینت است (یعنی مشخصشده با Mwm*bottomShadowPixmap یا Mwm*client*bottomShadowPixmap).
- matteForeground (class Foreground)
- این منبع رنگ پیشزمینه حاشیه مات را زمانی که matteWidth مثبت است مشخص میکند. مقدار پیشفرض این منبع رنگ پیشزمینه کلاینت است (یعنی مشخصشده با Mwm*foreground یا Mwm*client*foreground).
- matteTopShadowColor (class Background)
- این منبع رنگ سایه بالایی حاشیه مات را زمانی که matteWidth مثبت است مشخص میکند. مقدار پیشفرض این منبع رنگ سایه بالایی کلاینت است (یعنی مشخصشده با Mwm*topShadowColor یا Mwm*client*topShadowColor).
- matteTopShadowPixmap (class TopShadowPixmap)
- این منبع تصویر سایه بالایی (Pixmap) حاشیه مات را زمانی که matteWidth مثبت است مشخص میکند. مقدار پیشفرض این منبع تصویر سایه بالایی کلاینت است (یعنی مشخصشده با Mwm*topShadowPixmap یا Mwm*client*topShadowPixmap).
- matteWidth (class MatteWidth)
- این منبع عرض حاشیه مات اختیاری را مشخص میکند. مقدار پیشفرض 0 است که در عمل حاشیه مات را غیرفعال میکند.
- maximumClientSize (class MaximumClientSize)
- این منبع یا یک اندازه مشخص یا یک جهت است که نشان میدهد پنجره کلاینت چگونه بیشینه شود. مقدار منبع میتواند بهصورت یک اندازه widthxheight تعیین شود. عرض و ارتفاع در واحدهایی که کلاینت استفاده میکند تفسیر میشوند (برای مثال برای شبیهسازهای ترمینال معمولاً نویسه است). بهطور جایگزین، "vertical" یا "horizontal" میتواند مشخص شود تا جهتی را که کلاینت در آن بیشینه میشود نشان دهد.
- اگر این منبع مشخص نشود، بیشینه اندازه از ویژگی WM_NORMAL_HINTS در صورت تنظیم بودن استفاده میشود. در غیر این صورت مقدار پیشفرض اندازهای است که در آن پنجره کلاینت با کادرهای مدیریت پنجره کل صفحه را پر میکند. هنگامی که بیشینه اندازه کلاینت توسط منبع maximumClientSize تعیین نشود، مقدار منبع maximumMaximumSize به عنوان قیدی بر بیشینه اندازه استفاده میشود.
- useClientIcon (class UseClientIcon)
- اگر مقدار این منبع True باشد، تصویر آیکون ارائهشده توسط کلاینت بر تصویر آیکون ارائهشده توسط کاربر اولویت دارد. مقدار پیشفرض True است که به تصویر آیکون ارائهشده توسط کلاینت اولویت بالاتری نسبت به تصویر ارائهشده توسط کاربر میدهد.
- usePPosition (class UsePPosition)
- این منبع مشخص میکند که آیا Mwm در نبود موقعیت مشخصشده توسط کاربر، موقعیت مشخصشده توسط برنامه یعنی PPosition در ویژگی WM_NORMAL_HINTS را محترم بشمارد یا خیر. تنظیم این منبع روی on باعث میشود mwm همیشه موقعیت ارائهشده توسط برنامه را رعایت کند. تنظیم روی off باعث میشود mwm همیشه موقعیت برنامه را نادیده بگیرد. تنظیم روی مقدار پیشفرض nonzero باعث میشود mwm موقعیتهای برنامهای غیر از (0,0) را رعایت کند.
- windowMenu (class WindowMenu)
- این منبع نام پنجره منویی را که هنگام باز شدن منوی پنجره (معمولاً با فشردن دکمه ۱ روی دکمه منوی پنجره در قاب پنجره کلاینت) پدیدار میشود نشان میدهد. بخشهای منو در فایل توصیف منبع mwm مشخص میشوند. منوهای پنجره را میتوان با ایجاد منوهای سفارشی در فایل mwmrc (به mwmrc(4) مراجعه کنید) و تعیین منابع برای فعالسازی آنها، بر اساس کلاس کلاینت سفارشی کرد. این منابع دارای فرمت Mwm* client_name_or_class*windowMenu هستند. مقدار پیشفرض این منبع DefaultWindowMenu است.
فایل توصیف منبع (Resource Description File)
فایل توصیف منبع mwm یک فایل منبع تکمیلی است که حاوی توصیفات منبعی است که مدخلهای موجود در ویژگی مدیر منبع (به xrdb(1) مراجعه کنید) و فایلهای پیشفرض (.Xdefaults و app-defaults/Mwm) به آنها ارجاع میدهند. این فایل حاوی توصیفاتی از منابع است که باید توسط mwm استفاده شوند و بهسادگی در فایلهای پیشفرض قابل کدگذاری نیستند (یک فایل تصویر بیتمپ نمونهای مشابه از فایل توصیف منبع است). یک فایل توصیف منبع خاص mwm را میتوان با استفاده از منبع configFile انتخاب کرد.
انواع منابع زیر را میتوان در فایل توصیف منبع mwm توصیف کرد:
- دکمهها (Buttons)
- توابع مدیر پنجره را میتوان به رویدادهای دکمه متصل (مرتبط) کرد.
- کلیدها (Keys)
- توابع مدیر پنجره را میتوان به رویدادهای فشردن کلید متصل (مرتبط) کرد.
- منوها (Menus)
- بخشهای منو میتوانند برای منوی پنجره و سایر منوهای نمایش داده شده با انتسابهای کلید و دکمه استفاده شوند.
- فایل توصیف منبع mwm در mwmrc(4) شرح داده شده است.
محیط (Environment)
مدیر پنجره mwm از متغیر محیطی HOME برای مشخص کردن دایرکتوری خانگی کاربر استفاده میکند.
مدیر پنجره mwm از متغیر محیطی LANG برای مشخص کردن زبان انتخابی کاربر جهت کاتالوگ پیامهای mwm و فایل توصیف منبع mwm استفاده میکند.
مدیر پنجره mwm از متغیرهای محیطی XFILESEARCHPATH، XUSERFILESEARCHPATH، XAPPLRESDIR، XENVIRONMENT، LANG و HOME در تعیین مسیرهای جستجوی فایلهای پیشفرض منبع استفاده میکند. مدیر پنجره mwm همچنین ممکن است از XBMLANGPATH برای جستجوی فایلهای بیتمپ استفاده کند.
مدیر پنجره mwm فایل $HOME/.motifbind را در صورت وجود میخواند تا ویژگی انتسابهای کلید مجازی را روی پنجره ریشه نصب کند. برای اطلاعات بیشتر در مورد محتوای فایل .motifbind به منابع مربوطه مراجعه کنید.
مدیر پنجره mwm از متغیر محیطی MWMSHELL (یا SHELL در صورتی که MWMSHELL تنظیم نشده باشد) برای مشخص کردن شلی که هنگام اجرای دستورات از طریق تابع f.exec استفاده میشود بهره میگیرد.
فایلها (Files)
/usr/X11R6/lib/X11/$LANG/system.mwmrc
/usr/X11R6/lib/X11/system.mwmrc
/usr/X11R6/lib/X11/app-defaults/Mwm
$HOME/Mwm
$HOME/$LANG/.mwmrc
$HOME/.mwmrc
اطلاعات مرتبط (RELATED INFORMATION)
VendorShell(3), VirtualBindings(3), X(1), XmInstallImage(3), xrdb(1).