טיפ למשתמשי Palm OS Resource Editor

yoovee

New member
טיפ למשתמשי Palm OS Resource Editor

שלום, כל מי שמשתמש ב-PODS, הלא היא Palm OS Developer Suite, בוודאי מכיר את כלי הפיתוח השימושי: Palm OS Resource Editor מי שלא מכיר, זהו אותו כלי שימושי וחינמי שמספקת פאלם עצמה לפיתוח הממשק (GUI) ושאר משאבי אפליקציית פאלם טיפוסית (כולל אייקונים, השם שמופיע בלאונצ'ר, קטגוריות, מחרוזות טקסט בשפות שונות וכדומה). פורמט הקובץ הנוצר הוא XRD שמשמעו XML Resource Description, והגם שאינו הפורמט הנפוץ דווקא בקרב מפתחי הפאלם, מדובר עדיין בפורמט שימושי ומודולרי. בכל אופן, ע"י שימוש ב-Resource Compiler שהינו חלק מובנה ב-PODS, ניתן לשלב את ה-GUI שיצרתם (על כל משאביו השונים ואולי נוספים כאמור לעיל) בקובץ ה-PRC הסופי של האפליקציה שלכם, גם אם תבחרו לכתוב את הקוד בסביבת פיתוח אחרת. אופציה שימושית במיוחד ב-Palm OS Resource Compiler, היא האפשרות לייבא משאבים (Resources) אפילו מקובץ PRC סופי ומקומפל של כל אפליקציית פאלם אחרת - שימושי במיוחד אם תרצו להמיר פרוייקטים קודמים שלכם לסביבה החדשה. לאחר שהרעפנו מספיק שבחים על הכלי הנ"ל, ניגש לטיפ שבגינו פתחתי שרשור זה (אגב, האפשרות קיימת גם בכלים חינמיים [קוד-פתוח למעשה] אחרים כגון piBuilder, ואשמח לשמוע על חסרונות ויתרונות שאולי כשלתי מלראות בכל אחד מהכלים הללו): ובכן, תהיתי כיצד ניתן ליצור קובץ header (סיומת h. בשפת C) אוטומטי עם ה-ID של כל המשאבים (נחוץ ע"מ לגשת אליהם בקוד - למשל פתיחת טופס שהכנתם, או טיפול בלחיצת כפתור...), ולכאורה, ע"פ העזרה המובנית של פאלם הדבר בלתי אפשרי, כפי שמופיע באזכור שלהלן: http://www.palmos.com/dev/support/docs/dev_suite/ResourceEditor/ResEditor_Fundamentals.html#996925 מכיוון שברשותי גרסה 1.2 של PODS, החלטתי לסוח לרשת ולבדוק אם יש עדכונים כלשהם, ואכן ב-Combee on Palm OS (תודות לדוד גוגל) מצאתי שהדבר דווקא ניתן בהחלט לביצוע כבר מגירסה 1.1, ולהלן הפרוצדורה: http://palmos.combee.net/blog/PODS1.1GeneratingResource.html לאובססיביים שביניכם, ישנה אפילו האפשרות ללטש את השמות האוטומטיים של הפקדים השונים (בעיקר, אבל כל ה"משאבים" למעשה) בדיוק לפי רצונכם, והפרטים בקישור הבא מאותו האתר: http://palmos.combee.net/blog/PODS1.1MoreonResourceHead.html אבל לרוב האנשים תספיק הפרוצדורה הרגילה עם החופש המסויים בשדה Comment, שהיא בקצרה: 1. פתיחת קובץ ה-XRD ב-Palm OS Resource Editor (למשל ע"י לחיצה כפולה עליו מתוך הפרוייקט ב-PODS). 2. לחיצה על שם קובץ ה-XRD הספציפי בפאנל הימני במסך שנפתח, ע"מ להציג את ה-Properties שלו למטה. 3. סימון "וי" בתיבה Generate Header, ובחירת שם לקובץ, כולל הסיומת h. 4. השם לכל משאב יורכב ייחודית מסוגו ומספרו, אלא אם תמלאו ידנית את שדה Comment כאמור. 5. שמירה של קובץ ה-XRD תעדכן את קובץ ה-header שלכם שיווצר באותה הספרייה. (תרגום חופשי של ההוראות מ-Combee). תהנו, וחלקו טיפים משלכם בבקשה - הגיע הזמן להחיות את הפורום!!!
- יובל.
 

udifpalm

New member
ויש כאלה שמעדיפים להשאר מאחור...

ולהשתמש בקבצי RCP... יתרונות: נתמך על ידי יותר כלים פשוט יותר לתיקון וקריאה נתמך על ידי מספר רב של resource editors כולל תחת לינוקס. עבר זמן רב מאז שהשתמשתי ב-PODS ואיני יודע אם כל התכונות שיש ב-RCP נתמכות ב- XRD, למשל: 1. תחת palmresize, ניתן להגדיר איך תשתנה התנהגות של כפתורים במעבר מרוחב (או גובה) מסך של 320 ל-480 פיקסלים. 2. הגדרת מיקום של כפתור אחד יחסי לאחר. וכו'. הסיבה האמיתית לא לעבור ל-XRD היא שהפורמט יצא בסוף חייה הפעילים של PalmOS 5.x ולכן אף אחד לא טרח ממש להשקיע בו. אני בספק למשל אם אי פעם תצא גרסה חדשה יותר ל-PODS, ולחלופין אם אם XRD יתמך באיזו שהיא פלטפורמה עתידית. נ.ב. ב-PilRC כמובן שיש ייצור אוטומטי של headers.
 

yoovee

New member
אתה צודק לגמרי בעצם, יש אפילו יתרון

נוסף שניצלתי בעצמי פעם לגמרי במקרה, בתרגום של OpenChess לעברית, גיליתי שיש תמיכה מצויינת ביישור של פקדים לימין. מצאתי אפילו פיצ'ר שאני לא זוכר במדוייק, אבל זה היה משהו שעזר למפתח בתרגומים עתידיים לשפות נוספות. דווקא לגבי ה"פשוט יותר לתיקון וקריאה", ולמרות שאני אוהב להתעסק עם ה"קוד" עצמו בד"כ, אני חייב לציין שהתרגום היה קטסטרופלי לביצוע - העברית במחרוזות שיגעה לי לחלוטין את שאר שורת הטקסט של הקוד הממשקי...זה היה סיוט אבל התגברתי על זה איכשהו, הספקתי כבר לשכוח איך
אני מניח שבעיה כזו יכולה להיפתר על נקלה בעזרת איזושהי מעטפת לטיפול בקבצים האלה - אתה מכיר משהו חינמי וטוב חוץ מ-piBuilder? האמת? ככל שאני מתעסק עם PODS יותר, אני תוהה עד כמה הסביבה כולה שווה את ה"יתרון" שבאינטגרציה של הכלים, מה שמוביל אותי לשאלה נוספת: יש איזשהוא פתרון נוח לקימפול קוד C עם ה-SDK של פאלם ללא צורך בהתקנות מסובכות של cygwin וחבריה? תודה!
 

yoovee

New member
שאלה נוספת לא קשורה כ"כ לגבי VerStr

Version String Resource... ב-PPCompiler היה אפשר להטמיע בקוד compiler directive שימושי מאוד שהיה יוצר/מעדכן את המשאב הזה ב-PRC הסופי. הדבר היה מאוד נוח, כיוון שזה היזכיר לי ואיפשר להעלות גירסה באופן מיידי ופשוט כאשר תיקנתי באג או הוספתי פיצ'ר באותו קובץ קוד מקור עצמו. השאלה שלי, ואני בטוח שישנן לא מעט דרכים דרך שורת הפקודה וכו', אבל האם ניתן לבצע משהו דומה איכשהו ע"י עריכה של קובץ הקוד ב-C בלבד? אני לא מעוניין ב-builds אוטומטיים שיוסיפו לי מספרי גירסאות ללא שליטה, כי אני רוצה להחליט בעצמי על העלאה של major/minor. תודה מראש.
 
למעלה