อ่าน 3 นาที
ส่วนติดต่อผู้ใช้แบบมหัศจรรย์
Magic User Interface ( MUI ) เป็น ระบบ เชิงวัตถุที่พัฒนาโดย Stefan Stuntz เพื่อสร้างและบำรุงรักษาอินเทอร์เฟซผู้ใช้แบบกราฟิกด้วยความช่วยเหลือของโปรแกรมการตั้งค่า...
ส่วนติดต่อผู้ใช้แบบมหัศจรรย์
| ส่วนติดต่อผู้ใช้แบบมหัศจรรย์ | |
|---|---|
![]() | |
ภาพหน้าจอของเดสก์ท็อปAmbient ที่ใช้ MUI | |
| นักพัฒนา | สเตฟาน สตันซ์ |
| ปล่อย | พ.ศ. 2536 |
| เวอร์ชันเสถียร | 5.0 / 19 มิถุนายน 2558 |
| ระบบปฏิบัติการ | AmigaOS , MorphOS |
| แพลตฟอร์ม | อามิกา |
| พิมพ์ | ชุดเครื่องมือวิดเจ็ต |
| ใบอนุญาต | ซอฟต์แวร์กรรมสิทธิ์ / ซอฟต์แวร์แชร์แวร์ |
| เว็บไซต์ | www.sasg.com/mui/ |
Magic User Interface ( MUI ) เป็น ระบบ เชิงวัตถุที่พัฒนาโดย Stefan Stuntz เพื่อสร้างและบำรุงรักษาอินเทอร์เฟซผู้ใช้แบบกราฟิกด้วยความช่วยเหลือของโปรแกรมการตั้งค่า ผู้ใช้แอปพลิเคชันสามารถปรับแต่งระบบได้ตามความชอบส่วนตัว
อินเทอร์เฟซผู้ใช้ Magic User Interface ถูกเขียนขึ้นสำหรับAmigaOSและได้รับความนิยมในหมู่โปรแกรมเมอร์และผู้ใช้ มีการพอร์ตไปยัง โปรเซสเซอร์ PowerPCและนำมาใช้เป็นชุดเครื่องมือ GUI เริ่มต้นของ ระบบปฏิบัติการ MorphOSอินเทอร์เฟซโปรแกรมเมอร์แอปพลิเคชัน MUI ได้รับการจำลองโดย ชุดเครื่องมือ Zuneที่ใช้ในระบบปฏิบัติการวิจัย AROS [ 1 ]
ประวัติศาสตร์
การสร้างแอปพลิเคชัน GUI บน Amiga นั้นเป็นเรื่องยากมาเป็นเวลานาน โดยเฉพาะอย่างยิ่งเพราะโปรแกรมเมอร์ได้รับการสนับสนุนจากระบบปฏิบัติการน้อยมาก เริ่มตั้งแต่ Kickstart 2.0 เป็นต้นมา ไลบรารี gadtools.library ถือเป็นก้าวสำคัญไปในทิศทางที่ดีขึ้น อย่างไรก็ตาม แม้จะใช้ไลบรารีนี้ในการสร้างอินเทอร์เฟซที่ซับซ้อนและยืดหยุ่นได้ ก็ยังคงเป็นเรื่องยากและต้องใช้ความอดทนอย่างมาก
ปัญหาใหญ่ที่สุดในเครื่องมือที่มีอยู่สำหรับการสร้างส่วนติดต่อผู้ใช้คือ ความไม่ยืดหยุ่นของผลลัพธ์ โปรแกรมส่วนใหญ่ยังคงใช้ฟอนต์และขนาดหน้าต่างแบบสำเร็จรูป ทำให้การใช้การ์ดจอความละเอียดสูงรุ่นใหม่เป็นไปได้ยากมาก แม้แต่โปรแกรมตั้งค่าบน Workbench ก็ยังคงใช้ฟอนต์แบบความกว้างคงที่ตามค่าเริ่มต้นอยู่
ในปี 1992 Stefan Stuntz เริ่มพัฒนาชุดเครื่องมือ GUI เชิงวัตถุใหม่สำหรับ Amiga โดยมีเป้าหมายหลักดังนี้:
- ความไวต่อแบบอักษร:สามารถตั้งค่าแบบอักษรได้ในทุกแอปพลิ เคชัน
- ขนาดหน้าต่างที่ปรับเปลี่ยนได้:ระบบปฏิบัติการ Windows มีเครื่องมือปรับขนาดที่ช่วยให้ผู้ใช้สามารถเปลี่ยนขนาดหน้าต่างจนกว่าจะเหมาะสมกับความต้องการ
- ความยืดหยุ่น:ผู้ใช้สามารถเปลี่ยนแปลงองค์ประกอบต่างๆ ได้ตามความชอบส่วนตัว
- การควบคุมด้วยแป้นพิมพ์:วิดเจ็ตสามารถควบคุมได้ทั้งด้วยแป้นพิมพ์และเมาส์
- การบูรณาการระบบ:ทุกโปรแกรมมี พอร์ต ARexxและสามารถย่อหรือขยายเป็นไอคอนได้โดยการกดไอคอนหรือโดยการใช้โปรแกรมแลกเปลี่ยนสินค้าโภคภัณฑ์
- การปรับให้เข้ากับสภาพแวดล้อม:แอปพลิเคชันทุกตัวสามารถเปิดบนหน้าจอใดก็ได้และปรับตัวเองให้เข้ากับสภาพแวดล้อม[ 2 ]
MUI เปิดตัวในรูปแบบแชร์แวร์ตั้งแต่ MUI เวอร์ชัน 3.9 เป็นต้นไป เวอร์ชันที่ไม่จำกัดการใช้งานจะถูกรวมเข้ากับ MorphOS แต่ยังคงต้องใช้คีย์แชร์แวร์เพื่อเปิดใช้งานตัวเลือกการกำหนดค่าผู้ใช้ทั้งหมดใน AmigaOS
ทฤษฎีการประยุกต์ใช้
การพัฒนา UI ทำได้ในระดับซอร์สโค้ดโดยไม่ต้องใช้เครื่องมือสร้าง GUI ในแอปพลิเคชัน MUI โปรแกรมเมอร์จะกำหนดโครงสร้างเชิงตรรกะของ GUI เท่านั้น และเค้าโครงจะถูกกำหนดในระหว่างการทำงานโดยขึ้นอยู่กับการกำหนดค่าของผู้ใช้ แตกต่างจากชุดเครื่องมือ GUI อื่นๆ นักพัฒนาไม่จำเป็นต้องกำหนดพิกัดที่แน่นอนสำหรับวัตถุ UI แต่จะกำหนดตำแหน่งสัมพัทธ์ระหว่างกันโดยใช้กลุ่มวัตถุ ในการเขียนโค้ด UI แบบดั้งเดิม ที่ใช้ Intuitionโปรแกรมเมอร์ต้องคำนวณตำแหน่งของแกดเจ็ตโดยสัมพันธ์กับขนาดตัวอักษรและขอบ โดยค่าเริ่มต้น องค์ประกอบ UI ทั้งหมดสามารถปรับขนาดได้และเปลี่ยนขนาดให้ตรงกับขนาดหน้าต่าง นอกจากนี้ยังสามารถเปลี่ยนไปใช้แบบอักษรขนาดเล็กกว่าหรือซ่อนองค์ประกอบ UI โดยอัตโนมัติหากไม่มีพื้นที่บนหน้าจอเพียงพอที่จะแสดงหน้าต่างที่มีเนื้อหาทั้งหมด ทำให้ง่ายต่อการสร้าง UI ที่ปรับให้เข้ากับจอแสดงผลขนาดเล็กและขนาดใหญ่ได้เป็นอย่างดี[ 3 ] [ 4 ] [ 5 ]
ปัจจุบันมีคลาส MUI ในตัวมากกว่า 50 คลาส และยังมีคลาส MUI จากผู้พัฒนาภายนอกอีกมากมาย
ตัวอย่าง
// แอปพลิเคชัน MUI ที่สมบูรณ์#include <libraries/mui.h> #include <proto/muimaster.h>// ตัวอย่างแอปพลิเคชัน: ApplicationObject , SubWindow , WindowObject , WindowContents , VGroup , Child , TextObject , MUIA_Text_Contents , "Hello World!" , End , End , End , End ;โค้ดตัวอย่างนี้สร้างแอปพลิเคชัน MUI ขนาดเล็กที่มีข้อความ "Hello World!" แสดงอยู่บนหน้าจอ นอกจากนี้ยังสามารถฝังออบเจ็กต์ GUI toolkit อื่นๆ ที่ใช้ BOOPSIลงในแอปพลิเคชัน MUI ได้อีกด้วย
แอปพลิเคชัน
แอปพลิเคชันที่โดดเด่นบางส่วนที่ใช้ MUI เป็นชุดเครื่องมือวิดเจ็ต ได้แก่:
- Aladdin4D - แอปพลิเคชันสำหรับการเรนเดอร์/แอนิเมชั่น 3 มิติ
- สภาพแวดล้อม - เดสก์ท็อป
- AmIRC - ไคลเอนต์ IRC
- จักรวาลดิจิทัล - ท้องฟ้าจำลองบนเดสก์ท็อป
- iBrowse - เว็บเบราว์เซอร์
- Origyn Web Browser - เว็บเบราว์เซอร์
- PageStream - การจัดพิมพ์เอกสารบนเดสก์ท็อป
- SimpleMail - โปรแกรมรับส่งอีเมล
- วอยเอเจอร์ - เว็บเบราว์เซอร์
- YAM - โปรแกรมอีเมล
ชุดเครื่องมือ GUI อื่นๆ
ปัจจุบันมีชุดเครื่องมือวิดเจ็ตหลักสองชุดในโลกของ Amiga ซึ่งแข่งขันกันอยู่ ชุดที่ใช้กันอย่างแพร่หลายที่สุดคือ MUI (ซึ่งถูกนำมาใช้ในAROS , MorphOSและโปรแกรม Amiga ส่วนใหญ่) อีกชุดหนึ่งคือReAction ซึ่งถูกนำมาใช้ใน AmigaOS 3.5 กำลังมีการพัฒนาตัวห่อหุ้ม MUI สำหรับ GTK ซึ่งจะช่วยให้สามารถพอร์ต ซอฟต์แวร์ที่ใช้GTKต่างๆ ได้[ 6 ]นอกจากนี้ยังมีอินเทอร์เฟซที่ทันสมัยที่ใช้ XML คือ Feelin
การขยายพาเลทไปยังค่าเริ่มต้นของเวิร์กเบนช์
MUI ได้ขยายจานสีสี่สีของWorkbenchด้วยสีเพิ่มเติมอีกสี่สี ทำให้การไล่ระดับสี ราบรื่นขึ้น และลดการเกิดจุดรบกวน(dithering ) โปรแกรมเสริม MagicWBสำหรับ MUI ได้ใช้จานสีที่ขยายเพิ่มเติมนี้เพื่อสร้างไอคอนที่สวยงามยิ่งขึ้นมาแทนที่ไอคอนเริ่มต้นของ Workbench ที่ล้าสมัย MUI 4 เพิ่มการรองรับการ ผสมสี แบบโปร่งใส (alpha blending ) และการรองรับรูปทรงวิดเจ็ตที่ผู้ใช้กำหนดเอง
| พาเล็ตสีแปดสีของ MUI | ||||||||
|---|---|---|---|---|---|---|---|---|
| สี | ||||||||
| สีแดง | 149 | 000 | 255 | 59 | 123 | 175 | 170 | 255 |
| สีเขียว | 149 | 000 | 255 | 103 | 123 | 175 | 144 | 169 |
| สีฟ้า | 149 | 000 | 255 | 162 | 123 | 175 | 124 | 151 |
ดูเพิ่มเติม
- ReAction GUI (ClassAct)
- ซูน
ลิงก์ภายนอก
- หน้าแรกของ MUI
- ไดเร็กทอรีเวอร์ชันทดลองรายวันของ MUI ที่ไม่เป็นทางการ
- บทช่วยสอน
สรุปเนื้อหา
ข้อมูลสำคัญจากบทความ
ข้อมูลสำคัญเกี่ยวกับ ส่วนติดต่อผู้ใช้แบบมหัศจรรย์
Magic User Interface ( MUI ) เป็น ระบบ เชิงวัตถุที่พัฒนาโดย Stefan Stuntz เพื่อสร้างและบำรุงรักษาอินเทอร์เฟซผู้ใช้แบบกราฟิกด้วยความช่วยเหลือของโปรแกรมการตั้งค่า...
ประวัติศาสตร์
การสร้างแอปพลิเคชัน GUI บน Amiga นั้นเป็นเรื่องยากมาเป็นเวลานาน โดยเฉพาะอย่างยิ่งเพราะโปรแกรมเมอร์ได้รับการสนับสนุนจากระบบปฏิบัติการน้อยมาก เริ่มตั้งแต่ Kickstart 2.0 เป็นต้นมา ไลบรารี gadtools.
ทฤษฎีการประยุกต์ใช้
การพัฒนา UI ทำได้ในระดับซอร์สโค้ดโดยไม่ต้องใช้เครื่องมือสร้าง GUI ในแอปพลิเคชัน MUI โปรแกรมเมอร์จะกำหนดโครงสร้างเชิงตรรกะของ GUI เท่านั้น และเค้าโครงจะถูกกำหนดในระหว่างการทำงานโดยขึ้นอยู่กับการกำหนดค่าของผู้ใช้ แตกต่างจากชุดเครื่องมือ GUI อื่นๆ...
ตัวอย่าง
โค้ดตัวอย่างนี้สร้างแอปพลิเคชัน MUI ขนาดเล็กที่มีข้อความ "Hello World!" แสดงอยู่บนหน้าจอ นอกจากนี้ยังสามารถฝังออบเจ็กต์ GUI toolkit อื่นๆ ที่ใช้ BOOPSI ลงในแอปพลิเคชัน MUI ได้อีกด้วย
