Skip to content

alonarbel/DeviceMonitor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 

Repository files navigation

DeviceMonitor

להלן הסברים על מה שעשיתי בעבודה: ראשית שמתי לב לבאג שכשקיבלנו את העבודה היו ברשימת הdevcies שלושה device וכאשר הוספנו device נוסף לא היה ניתן לבחור בו(היה ניתן לבחור רק בשלישייה הראשונה ברשימה וכדי לגשת אליו היה צריך למחוק אחד מהשלישייה הראשונה) כדי לתקן את זה הוספתי לפונקציה refreshListView את השורה הבאה : deviceListView.setItems(FXCollections.observableList(deviceMonitor.getDevices())) ובכל יצירת device או מחיקת device קראתי לפונקציה הנ"ל בסוף כל פוניקציה(יצירה או מחיקה).

סעיף 2. דאגתי שהפונקציה removeDevice שנמצאת בDeviceMonitor באמת תסיר את הdevice מהרשימה ולסיום קראתי לrefreshListView .

סעיף 3. מחקתי את generalDevice. הוספתי למחלקת Device את השדות החופפים בין HARDWARE לSOFTWARE ויצרתי את המחלקות שלהם אשר יורשות מDevice והוספתי את השדות הייחודיים לכל אחד מהם.

סעיף 4. כדי לתמוך בהוספה של hardware/software יצרתי radiobutton מכיוון שהוא מאפשר לבחור רק באופציה אחת. כמו כן הוספתי אלמנטים נוספים שאותם יש לבחור בעת יצירת device חדש מכיוון שבבנאי שיצרתי לכל אחד מהם צריך להכניס את הנתונים על הdevice החדש ומכיוון שידעתי שבהמשך יש משימה אשר תדרוש ממני להציג את המידע של כל device ברשימה.

סעיף 5. כדי לתמוך במידע הוספתי menuItem נוסף(בדומה לremove) אשר בעת לחיצה על קליק ימני עם העכבר על אחד מהdevices ברשימה יהיה אופציה לקבל עליו מידע אשר יוצג בחלונית data. את המידע הצגתי באמצעות פונקציית toString() שיצרתי עבור כל אחד מבין מחלקות הdevice שיצרתי בסעיף 2. בנוסף הוספתי כפתור CLEAR אשר בלחיצה עליו חלונית הdata מתרוקנת.

סעיף 6. בדומה לסעיף 5 גם כאן הוספתי menuItem. כדי לערוך device צריך להזין קודם את הפרטים עליו הdevice הערוך ולאחר מכן ללחוץ לחצן ימני וedit על הdevice אותו נרצה לערוך. הפונקציה אשר עורכת את הdevice תומכת גם בעריכת devices מtype זהה וגם מtype שונה. כמו כן בסיום הפעולה יוצג בחלונית הdata המידע על הdevice החדש ושמו גם ישתנה ברשימת הdevices.

סעיף 7. הוספתי כפתור אשר בלחיצה עליו נפתחת חלונית דיאלוג אשר בה מוצג מתי התרחש העדכון האחרון ומתי יתרחש העדכון הבא. ביצעתי זאת באמצעות משתני LocalTime ויצירת Dialog.

נ.ב בכל מיני מקרים כמו לדוגמא יצירת device ללא שם או יצירת software device ללא בחירת תאריך ועוד.. יצרתי label אשר מתריע על קח בטקסט אדום וכמובן לא תמכתי בפעולות אלה.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages