[Wepg-devel] app wepgicon8.bmp,NONE,1.1 AUTHORS,1.1,1.2 Makefile,1.3,1.4 README,1.1,1.2 WepgAlarm.cx
Brought to you by:
leonvs
Update of /cvsroot/wepg/app In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv31690 Modified Files: AUTHORS Makefile README WepgAlarm.cxx WepgAlarm.h WepgAppInfo.cxx WepgApplic.cxx WepgApplic.h WepgBCInfView.cxx WepgBCInfView.h WepgBusy.cxx WepgBusy.h WepgDB.cxx WepgDB.h WepgLUT.h WepgListView.cxx WepgListView.h WepgPackedRec.cxx WepgPackedRec.h WepgRecord.cxx WepgRecord.h WepgTableView.h main.cxx resource.h resource.rcp wepgexg.h wepgnonp.cxx Added Files: wepgicon8.bmp Removed Files: palmwepg.h Log Message: ok Index: WepgListView.h =================================================================== RCS file: /cvsroot/wepg/app/WepgListView.h,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** WepgListView.h 17 Apr 2002 12:34:01 -0000 1.1.1.1 --- WepgListView.h 29 Jul 2004 15:52:08 -0000 1.2 *************** *** 2,6 **** #define __WEPGLISTVIEW_H ! #include "palmwepg.h" #include "WepgDB.h" #include "WepgTableView.h" --- 2,6 ---- #define __WEPGLISTVIEW_H ! #include "palmdef.h" #include "WepgDB.h" #include "WepgTableView.h" *************** *** 29,32 **** --- 29,33 ---- WepgTableView* getTable() const { return m_table; } + Boolean eventHook(EventPtr event); protected: Index: WepgApplic.h =================================================================== RCS file: /cvsroot/wepg/app/WepgApplic.h,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** WepgApplic.h 17 Apr 2002 12:33:56 -0000 1.1.1.1 --- WepgApplic.h 29 Jul 2004 15:52:08 -0000 1.2 *************** *** 2,6 **** #define __WEPGAPPLIC_H ! #include "palmwepg.h" #include "PalmApplic.h" --- 2,6 ---- #define __WEPGAPPLIC_H ! #include "palmdef.h" #include "PalmApplic.h" *************** *** 36,43 **** Boolean m_wasBacklit; ! class IRDevicePalm* m_irdev; class IRDBPalm* m_irdb; ! private: --- 36,43 ---- Boolean m_wasBacklit; ! #ifdef USEIR class IRDevicePalm* m_irdev; class IRDBPalm* m_irdb; ! #endif private: Index: wepgnonp.cxx =================================================================== RCS file: /cvsroot/wepg/app/wepgnonp.cxx,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** wepgnonp.cxx 17 Apr 2002 12:34:01 -0000 1.1.1.1 --- wepgnonp.cxx 29 Jul 2004 15:52:08 -0000 1.2 *************** *** 1,22 **** ! #include "wepgnonp.h" ! //#define NON_PORTABLE ! //#include <SystemPrv.h> ! ! Boolean ! wepg_isBacklightOn() { ! //return HwrBacklight( false, true ) == true; ! //return (GSysMiscFlags & sysMiscFlagBacklightDisable) ? false : true; ! return true; ! } ! ! ! void ! wepg_setBacklight( Boolean on ) ! { ! //fixme: figure out how to do this on >3.5 ! // HwrBacklight( true, on ); ! ! ! } ! ! --- 1,22 ---- ! #include "wepgnonp.h" ! //#define NON_PORTABLE ! //#include <SystemPrv.h> ! ! Boolean ! wepg_isBacklightOn() { ! //return HwrBacklight( false, true ) == true; ! //return (GSysMiscFlags & sysMiscFlagBacklightDisable) ? false : true; ! return true; ! } ! ! ! void ! wepg_setBacklight( Boolean on ) ! { ! //fixme: figure out how to do this on >3.5 ! // HwrBacklight( true, on ); ! ! ! } ! ! --- NEW FILE: wepgicon8.bmp --- (This appears to be a binary file; contents omitted.) Index: AUTHORS =================================================================== RCS file: /cvsroot/wepg/app/AUTHORS,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** AUTHORS 8 Mar 2003 10:16:05 -0000 1.1 --- AUTHORS 29 Jul 2004 15:52:08 -0000 1.2 *************** *** 1,6 **** original author: ! Leon van Stuivenberg leon.van.stuivenberg at iae dot nl contributions by: ! Anthony Veale veale at fafnir dot dyndns dot org --- 1,6 ---- original author: ! Leon van Stuivenberg leon van stuivenberg at chello nl contributions by: ! Anthony Veale veale at fafnir dyndns org Index: resource.h =================================================================== RCS file: /cvsroot/wepg/app/resource.h,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** resource.h 8 Mar 2003 09:59:05 -0000 1.2 --- resource.h 29 Jul 2004 15:52:08 -0000 1.3 *************** *** 1,50 **** ! #define FRM_LIST 1000 ! #define FRM_LIST_TABLE 1001 ! #define FRM_LIST_RATINGLIST 1002 ! #define FRM_LIST_LEFT 1004 ! #define FRM_LIST_RIGHT 1005 ! #define FRM_LIST_CAPTIONEX1 1006 ! #define FRM_LIST_CAPTIONEX2 1007 ! #define FRM_LIST_CAPTIONEX3 1008 ! #define FRM_LIST_CAP2LIST 1009 ! #define FRM_LIST_UP 1011 ! #define FRM_LIST_DOWN 1012 ! #define FRM_LIST_RATFLTTRIG 1013 ! #define FRM_LIST_RATFLTLIST 1014 ! #define FRM_LIST_GUIDE 1018 ! #define FRM_LIST_SCHED 1019 ! #define FRM_LIST_SCHEDLIST 1020 ! #define FRM_BCINF 1100 ! #define FRM_BCINF_TITLE 1101 ! #define FRM_BCINF_INFO 1102 ! #define FRM_BCINF_OK 1104 ! #define FRM_BCINF_MUSTSEE 1105 ! #define FRM_BCINF_WATCHED 1106 ! #define FRM_BCINF_SEENIT 1107 ! #define FRM_BCINF_ALARM 1108 ! #define FRM_BCINF_UP 1109 ! #define FRM_BCINF_DOWN 1110 ! #define FRM_BCINF_SYSSEENIT 1111 ! #define FRM_BCINF_RECORD 1112 ! #define FRM_BCINF_SYSRECORD 1113 ! #define FRM_BCINF_RECORDED 1114 ! #define FRM_GLOBALMENU 1200 ! #define FRM_GLOBALMENU_ARCHIVE 1201 ! #define FRM_GLOBALMENU_SENDDB 1202 ! #define FRM_GLOBALMENU_SETDAY 1203 ! #define FRM_GLOBALMENU_SETVIEW 1204 ! #define FRM_GLOBALMENU_SETTZ 1205 ! #define FRM_GLOBALMENU_TODAY 1206 ! #define ALERT_DBCORRUPT 1300 ! #define ALERT_DEBUG 1301 ! #define ALERT_ONNOW 1302 ! #define CAT_DEFAULT 1401 // +0..7 --- 1,52 ---- ! //1000 is reserved + #define FRM_LIST 2000 + #define FRM_LIST_TABLE 2001 + #define FRM_LIST_RATINGLIST 2002 + #define FRM_LIST_LEFT 2003 + #define FRM_LIST_RIGHT 2004 + #define FRM_LIST_CAPTIONEX1 2005 + #define FRM_LIST_CAPTIONEX2 2006 + #define FRM_LIST_CAPTIONEX3 2007 + #define FRM_LIST_CAP2LIST 2008 + #define FRM_LIST_UP 2009 + #define FRM_LIST_DOWN 2010 + #define FRM_LIST_RATFLTTRIG 2011 + #define FRM_LIST_RATFLTLIST 2012 + #define FRM_LIST_GUIDE 2013 + #define FRM_LIST_SCHED 2014 + #define FRM_LIST_SCHEDLIST 2015 ! #define FRM_BCINF 2100 ! #define FRM_BCINF_TITLE 2101 ! #define FRM_BCINF_INFO 2102 ! #define FRM_BCINF_OK 2103 ! #define FRM_BCINF_MUSTSEE 2104 ! #define FRM_BCINF_WATCHED 2105 ! #define FRM_BCINF_SEENIT 2106 ! #define FRM_BCINF_ALARM 2107 ! #define FRM_BCINF_UP 2108 ! #define FRM_BCINF_DOWN 2109 ! #define FRM_BCINF_SYSSEENIT 2110 ! #define FRM_BCINF_RECORD 2111 ! #define FRM_BCINF_SYSRECORD 2112 ! #define FRM_BCINF_RECORDED 2113 + #define FRM_GLOBALMENU 2200 + #define FRM_GLOBALMENU_ARCHIVE 2201 + #define FRM_GLOBALMENU_SENDDB 2202 + #define FRM_GLOBALMENU_SETDAY 2203 + #define FRM_GLOBALMENU_SETVIEW 2204 + #define FRM_GLOBALMENU_SETTZ 2205 + #define FRM_GLOBALMENU_TODAY 2206 ! #define ALERT_DBCORRUPT 2300 ! #define ALERT_DEBUG 2301 ! #define ALERT_ONNOW 2302 ! #define CAT_DEFAULT 2401 ! #define APPNAMEID 2501 // +0..7 Index: WepgListView.cxx =================================================================== RCS file: /cvsroot/wepg/app/WepgListView.cxx,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** WepgListView.cxx 8 Mar 2003 09:59:05 -0000 1.2 --- WepgListView.cxx 29 Jul 2004 15:52:08 -0000 1.3 *************** *** 33,37 **** #define SCHEDFILT_REC 3 //recorded #define SCHEDFILT_TOREC 4 //record ! --- 33,45 ---- #define SCHEDFILT_REC 3 //recorded #define SCHEDFILT_TOREC 4 //record ! ! //HACK! ! #ifndef vchrRockerUp ! #define vchrRockerUp 0x0132 // 5-way rocker up ! #define vchrRockerDown 0x0133 // 5-way rocker down ! #define vchrRockerLeft 0x0134 // 5-way rocker left ! #define vchrRockerRight 0x0135 // 5-way rocker right ! #endif ! *************** *** 159,162 **** --- 167,198 ---- Boolean + WepgListView::eventHook(EventPtr event) + { + Boolean handled = false; + + if (event->eType == keyDownEvent) { + + if (event->data.keyDown.modifiers & commandKeyMask) { + // virtual events + switch (event->data.keyDown.keyCode) { //FIXME doesnt work + case vchrRockerLeft: + if ( m_mode == lvm_Plan ) { + ui_selectNewStation( -1 ); + handled = true; + } + break; + case vchrRockerRight: + if ( m_mode == lvm_Plan ) { + ui_selectNewStation( 1 ); + handled = true; + } + break; + } + } + } + return handled; + } + + Boolean WepgListView::eventHandler( EventPtr event ) { *************** *** 164,174 **** if (event->eType == keyDownEvent) { ! if (event->data.keyDown.chr == pageUpChr) { ui_pageUp(); handled = true; ! } ! else if (event->data.keyDown.chr == pageDownChr) { ui_pageDown(); handled = true; } } --- 200,212 ---- if (event->eType == keyDownEvent) { ! switch (event->data.keyDown.chr) { ! case chrPageUp: ui_pageUp(); handled = true; ! break; ! case chrPageDown: ui_pageDown(); handled = true; + break; } } *************** *** 192,195 **** --- 230,234 ---- if ( m_mode == lvm_Plan ) { ui_selectNewStation( -1 ); + handled = true; } break; *************** *** 198,201 **** --- 237,241 ---- if ( m_mode == lvm_Plan ) { ui_selectNewStation( 1 ); + handled = true; } break; *************** *** 203,206 **** --- 243,247 ---- case FRM_LIST_GUIDE: ui_setViewMode( lvm_Plan ); + handled = true; break; *************** *** 210,221 **** --- 251,265 ---- else ui_setViewMode( lvm_OnNow ); + handled = true; break; case FRM_LIST_UP: ui_lineUp(); + handled = true; break; case FRM_LIST_DOWN: ui_lineDown(); + handled = true; break; } Index: WepgDB.cxx =================================================================== RCS file: /cvsroot/wepg/app/WepgDB.cxx,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** WepgDB.cxx 17 Apr 2002 12:34:00 -0000 1.1.1.1 --- WepgDB.cxx 29 Jul 2004 15:52:08 -0000 1.2 *************** *** 56,60 **** WepgDB::allocBusy( PalmBusy*& b ) { ! WepgBusy* busy = new WepgBusy(); if ( busy->init() != 0 ) { delete busy; --- 56,60 ---- WepgDB::allocBusy( PalmBusy*& b ) { ! PalmBusyGfx* busy = new WepgBusy(); if ( busy->init() != 0 ) { delete busy; Index: WepgBCInfView.cxx =================================================================== RCS file: /cvsroot/wepg/app/WepgBCInfView.cxx,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** WepgBCInfView.cxx 8 Mar 2003 09:59:05 -0000 1.2 --- WepgBCInfView.cxx 29 Jul 2004 15:52:08 -0000 1.3 *************** *** 5,8 **** --- 5,9 ---- + #define INFOHEIGHT 7 static WepgBCInfView* tmp_z = 0; *************** *** 121,125 **** //FldScrollField( z->fld_info, field_height, up ); ! for ( i=0; i<8; i++ ) FldScrollField( m_fldInfo, 1, winUp ); handled = true; --- 122,126 ---- //FldScrollField( z->fld_info, field_height, up ); ! for ( i=0; i<INFOHEIGHT; i++ ) FldScrollField( m_fldInfo, 1, winUp ); handled = true; *************** *** 131,135 **** //FldScrollField( z->fld_info, field_height, down ); ! for ( i=0; i<8; i++ ) FldScrollField( m_fldInfo, 1, winDown ); handled = true; --- 132,136 ---- //FldScrollField( z->fld_info, field_height, down ); ! for ( i=0; i<INFOHEIGHT; i++ ) FldScrollField( m_fldInfo, 1, winDown ); handled = true; Index: main.cxx =================================================================== RCS file: /cvsroot/wepg/app/main.cxx,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** main.cxx 17 Apr 2002 12:33:59 -0000 1.1.1.1 --- main.cxx 29 Jul 2004 15:52:08 -0000 1.2 *************** *** 3,84 **** started: feb 1999 ! author: Leon van Stuivenberg (le...@ia...) */ ! #include "palmwepg.h" #include "WepgApplic.h" ! #include "WepgAlarm.h" ! ! ! ! ! static Err mainLaunch() ! { ! Err err = 0; ! WepgApplic* applic = new WepgApplic(); ! if ( applic != NULL ) { ! err = applic->start(); ! if ( err == 0 ) { ! applic->run(); ! applic->stop(); ! } ! delete applic; ! } ! return err; ! } ! ! ! ! static Err mainSync() ! { ! Err err = 0; ! ! DmOpenRef hDb = DmOpenDatabaseByTypeCreator( WEPG_DB_TYPE, WEPG_CREATOR, dmModeReadOnly ); ! if ( hDb != 0 ) { ! ! // get local id of db ! LocalID dbId; ! UInt dbCard; ! err = DmOpenDatabaseInfo( ! hDb, ! &dbId, ! NULL,NULL, ! &dbCard, ! NULL ! ); ! ! LocalID appinfoId; ! err |= DmDatabaseInfo( ! dbCard,dbId, ! NULL,NULL,NULL,NULL,NULL,NULL,NULL, ! &appinfoId, ! NULL,NULL,NULL ! ); ! ! if ( !err ) { ! WepgAppInfoData* appinfo = (WepgAppInfoData*)MemLocalIDToLockedPtr( ! appinfoId, dbCard ); ! if ( appinfo != NULL ) { ! err = WepgAlarm_resetAll( hDb, appinfo, 1 ); ! MemPtrUnlock( appinfo ); ! } ! } ! ! DmCloseDatabase( hDb ); ! } ! ! return err; ! } ! ! ! DWord PilotMain( Word cmd, Ptr cmdPBP, Word launchFlags ) { if (cmd == sysAppLaunchCmdNormalLaunch) { return mainLaunch(); } ! else if (cmd == sysAppLaunchCmdSyncNotify) { ! return mainSync(); } return 0; } - --- 3,83 ---- started: feb 1999 ! author: Leon van Stuivenberg (leon van stuivenberg at chello nl) */ ! ! #include "palmdef.h" #include "WepgApplic.h" ! #include "WepgAlarm.h" ! ! static Err mainLaunch() ! { ! Err err = 0; ! WepgApplic* applic = new WepgApplic(); ! if ( applic != NULL ) { ! err = applic->start(); ! if ( err == 0 ) { ! applic->run(); ! applic->stop(); ! } ! delete applic; ! } ! return err; ! } ! ! ! ! static Err mainSync() ! { ! Err err = 0; ! ! DmOpenRef hDb = DmOpenDatabaseByTypeCreator( WEPG_DB_TYPE, WEPG_CREATOR, dmModeReadOnly ); ! if ( hDb != 0 ) { ! ! // get local id of db ! LocalID dbId; ! UInt dbCard; ! err = DmOpenDatabaseInfo( ! hDb, ! &dbId, ! NULL,NULL, ! &dbCard, ! NULL ! ); ! ! LocalID appinfoId; ! err |= DmDatabaseInfo( ! dbCard,dbId, ! NULL,NULL,NULL,NULL,NULL,NULL,NULL, ! &appinfoId, ! NULL,NULL,NULL ! ); ! ! if ( !err ) { ! WepgAppInfoData* appinfo = (WepgAppInfoData*)MemLocalIDToLockedPtr( ! appinfoId, dbCard ); ! if ( appinfo != NULL ) { ! err = WepgAlarm_resetAll( hDb, appinfo, 1 ); ! MemPtrUnlock( appinfo ); ! } ! } ! ! DmCloseDatabase( hDb ); ! } ! ! return err; ! } ! ! ! ! ! UInt32 PilotMain(UInt16 cmd, MemPtr cmdPBP, UInt16 launchFlags) { if (cmd == sysAppLaunchCmdNormalLaunch) { return mainLaunch(); } ! else if (cmd == sysAppLaunchCmdSyncNotify) { ! return mainSync(); } return 0; } --- palmwepg.h DELETED --- Index: WepgAlarm.cxx =================================================================== RCS file: /cvsroot/wepg/app/WepgAlarm.cxx,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** WepgAlarm.cxx 17 Apr 2002 12:34:01 -0000 1.1.1.1 --- WepgAlarm.cxx 29 Jul 2004 15:52:08 -0000 1.2 *************** *** 1,265 **** ! #include "WepgAlarm.h" ! #include "WepgLUT.h" ! #include "wepgutils.h" ! #include "WepgAppInfo.h" ! ! ! #if 0 ! ! ! extern "C" { ! #include "DateDB.h" ! #include "DateAlarm.h" ! } ! ! ! #define datebookDBType 'DATA' ! #define emptySlot -1 ! ! ! static Err addAlarmEntry( DmOpenRef dbP, ! DateType start_date, ! TimeType start_time, ! TimeType end_time, ! char* desc ) ! { ! Err error; ! UInt16 recordNum; ! ! ApptDBRecordType newAppt; ! ApptDateTimeType when; ! AlarmInfoType alarm; ! ! when.startTime = start_time; ! when.endTime = end_time; ! when.date = start_date; ! ! alarm.advance = 5; // default: 5 min ! alarm.advanceUnit = aauMinutes; ! ! MemSet( &newAppt, sizeof (newAppt), 0 ); ! newAppt.when = &when; ! newAppt.alarm = &alarm; ! newAppt.description = desc; ! error = ApptNewRecord( dbP, &newAppt, &recordNum ); ! ! if (error) ! return error; ! ! return 0; ! } ! ! ! static int checkExists( DmOpenRef dbP, DateType when, TimeType t_start, TimeType t_end, UInt16* found_recnr ) ! { ! MemHandle h_appts; ! UInt16 num_appts; ! ApptInfoPtr appts; ! UInt16 recnr = 0; ! ApptDBRecordType apptRec; ! MemHandle recordH; ! UInt16 i; ! int found; ! ! ApptGetAppointments( dbP, when, 1, &h_appts, &num_appts ); ! ! if ( h_appts == 0 ) { ! return 0; ! } ! ! appts = (ApptInfoPtr)MemHandleLock( h_appts ); ! ! found = 0; ! for ( i=0; (i<num_appts) && !found; i++ ) { ! recnr = appts[i].recordNum; ! if ( recnr != emptySlot ) { ! ApptGetRecord( dbP, recnr, &apptRec, &recordH); ! ! if ( apptRec.when ) { ! if ( ( *(short*)&apptRec.when->startTime == *(short*)&t_start ) && ! ( *(short*)&apptRec.when->endTime == *(short*)&t_end ) ) { ! found = 1; ! } ! } ! MemHandleUnlock( recordH ); ! } ! } ! MemPtrUnlock( appts ); ! MemHandleFree( h_appts ); ! if ( found ) ! *found_recnr = recnr; ! return found; ! } ! ! ! ! static void getAlarmProps( WepgPackedRec* rec, WepgAppInfoData* appinfo, ! DateType* start_date, ! TimeType* start_time, ! TimeType* end_time, ! char* desc, ! int cb_desc ! ) ! { ! const char* p; ! char* q; ! char* r; ! ! WepgTimeStampType rstart; ! WepgTimeStampType rend; ! ! rstart = rec->start_time; ! rend = rec->end_time; ! ! timeAdjustTS( &rstart, appinfo->timezone ); ! timeAdjustTS( &rend, appinfo->timezone ); ! ! start_date->year = rstart.t.year - firstYear; ! start_date->month = rstart.t.month; ! start_date->day = rstart.t.day; ! ! start_time->hours = rstart.t.hour; ! start_time->minutes = rstart.t.minute; ! if ( rend.t.day != rstart.t.day ) { ! // midnight wrap; datebook can't handle this, right? ! end_time->hours = 23; ! end_time->minutes = 59; ! } ! else { ! end_time->hours = rend.t.hour; ! end_time->minutes = rend.t.minute; ! } ! ! q = desc; ! r = desc + (cb_desc/sizeof(desc[0])) -1; ! ! #define QSTRCAT(a) { p = (a); while ( (*p) && (q<r) ) *q++ = *p++; } ! ! QSTRCAT( appinfo->station_labels[ rec->station_id ] ); ! ! const char* title = rec_getTitle( rec ); ! if ( title != NULL ) { ! QSTRCAT( ": " ); ! QSTRCAT( title ); ! } ! *q = '\0'; ! } ! ! ! ! ! ! static Err openAlarmDB( DmOpenRef* dbP ) ! { ! UInt16 mode; ! DmOpenRef date_db; ! ! mode = dmModeReadWrite | dmModeShowSecret; ! ! date_db = DmOpenDatabaseByTypeCreator( datebookDBType, sysFileCDatebook, mode ); ! if ( !date_db ) { ! return -1; ! } ! *dbP = date_db; ! return 0; ! } ! ! ! static Err ! WepgAlarm_modify( WepgPackedRec* rec, WepgAppInfoData* appinfo, int set ) ! { ! Err err; ! DmOpenRef date_db; ! ! DateType start_date; ! TimeType start_time; ! TimeType end_time; ! Char desc[ 128 ]; ! UInt16 recnr; ! int found; ! ! err = openAlarmDB( &date_db ); ! if ( err != 0 ) { ! return err; ! } ! ! getAlarmProps( rec, appinfo, ! &start_date, ! &start_time, ! &end_time, ! desc, sizeof(desc) ); ! ! found = checkExists( date_db, start_date, start_time, end_time, &recnr ); ! if ( set ) { ! if ( !found ) { ! err = addAlarmEntry( date_db, start_date, start_time, end_time, desc ); ! } ! } ! else { ! if ( found ) { ! err = DmRemoveRecord( date_db, recnr ); ! } ! } ! ! RescheduleAlarms( date_db ); ! ! DmCloseDatabase( date_db ); ! ! return err; ! } ! ! ! Err WepgAlarm_set( WepgPackedRec* rec, WepgAppInfoData* appinfo ) ! { ! return WepgAlarm_modify( rec, appinfo, 1 ); ! } ! ! Err WepgAlarm_clear( WepgPackedRec* rec, WepgAppInfoData* appinfo ) ! { ! return WepgAlarm_modify( rec, appinfo, 0 ); ! } ! ! ! ! Err WepgAlarm_resetAll( DmOpenRef hDb, WepgAppInfoData* appinfo, int set ) ! { ! UInt16 record_nr = 0; ! while ( true ) { ! MemHandle h_rec = DmQueryRecord( hDb, record_nr ); ! if ( h_rec == 0 ) ! break; ! WepgPackedRec* rec = (WepgPackedRec*)MemHandleLock( h_rec ); ! if ( rec == 0 ) ! break; ! if ( rec->flags.alarm ) { ! SndPlaySystemSound( sndClick ); ! WepgAlarm_modify( rec, appinfo, set ); ! } ! ! MemHandleUnlock( h_rec ); ! record_nr++; ! } ! return 0; ! } ! ! ! #else ! ! ! Err WepgAlarm_set( WepgPackedRec* rec, WepgAppInfoData* appinfo ) ! { ! return 0; ! } ! ! Err WepgAlarm_clear( WepgPackedRec* rec, WepgAppInfoData* appinfo ) ! { ! return 0; ! } ! ! Err WepgAlarm_resetAll( DmOpenRef hDb, WepgAppInfoData* appinfo, int set ) ! { ! return 0; ! } ! ! ! #endif --- 1,265 ---- ! #include "WepgAlarm.h" ! #include "WepgLUT.h" ! #include "wepgutils.h" ! #include "WepgAppInfo.h" ! ! ! #if 0 ! ! ! extern "C" { ! #include "DateDB.h" ! #include "DateAlarm.h" ! } ! ! ! #define datebookDBType 'DATA' ! #define emptySlot -1 ! ! ! static Err addAlarmEntry( DmOpenRef dbP, ! DateType start_date, ! TimeType start_time, ! TimeType end_time, ! char* desc ) ! { ! Err error; ! UInt16 recordNum; ! ! ApptDBRecordType newAppt; ! ApptDateTimeType when; ! AlarmInfoType alarm; ! ! when.startTime = start_time; ! when.endTime = end_time; ! when.date = start_date; ! ! alarm.advance = 5; // default: 5 min ! alarm.advanceUnit = aauMinutes; ! ! MemSet( &newAppt, sizeof (newAppt), 0 ); ! newAppt.when = &when; ! newAppt.alarm = &alarm; ! newAppt.description = desc; ! error = ApptNewRecord( dbP, &newAppt, &recordNum ); ! ! if (error) ! return error; ! ! return 0; ! } ! ! ! static int checkExists( DmOpenRef dbP, DateType when, TimeType t_start, TimeType t_end, UInt16* found_recnr ) ! { ! MemHandle h_appts; ! UInt16 num_appts; ! ApptInfoPtr appts; ! UInt16 recnr = 0; ! ApptDBRecordType apptRec; ! MemHandle recordH; ! UInt16 i; ! int found; ! ! ApptGetAppointments( dbP, when, 1, &h_appts, &num_appts ); ! ! if ( h_appts == 0 ) { ! return 0; ! } ! ! appts = (ApptInfoPtr)MemHandleLock( h_appts ); ! ! found = 0; ! for ( i=0; (i<num_appts) && !found; i++ ) { ! recnr = appts[i].recordNum; ! if ( recnr != emptySlot ) { ! ApptGetRecord( dbP, recnr, &apptRec, &recordH); ! ! if ( apptRec.when ) { ! if ( ( *(short*)&apptRec.when->startTime == *(short*)&t_start ) && ! ( *(short*)&apptRec.when->endTime == *(short*)&t_end ) ) { ! found = 1; ! } ! } ! MemHandleUnlock( recordH ); ! } ! } ! MemPtrUnlock( appts ); ! MemHandleFree( h_appts ); ! if ( found ) ! *found_recnr = recnr; ! return found; ! } ! ! ! ! static void getAlarmProps( WepgPackedRec* rec, WepgAppInfoData* appinfo, ! DateType* start_date, ! TimeType* start_time, ! TimeType* end_time, ! char* desc, ! int cb_desc ! ) ! { ! const char* p; ! char* q; ! char* r; ! ! WepgTimeStampType rstart; ! WepgTimeStampType rend; ! ! rstart = rec->start_time; ! rend = rec->end_time; ! ! timeAdjustTS( &rstart, appinfo->timezone ); ! timeAdjustTS( &rend, appinfo->timezone ); ! ! start_date->year = rstart.t.year - firstYear; ! start_date->month = rstart.t.month; ! start_date->day = rstart.t.day; ! ! start_time->hours = rstart.t.hour; ! start_time->minutes = rstart.t.minute; ! if ( rend.t.day != rstart.t.day ) { ! // midnight wrap; datebook can't handle this, right? ! end_time->hours = 23; ! end_time->minutes = 59; ! } ! else { ! end_time->hours = rend.t.hour; ! end_time->minutes = rend.t.minute; ! } ! ! q = desc; ! r = desc + (cb_desc/sizeof(desc[0])) -1; ! ! #define QSTRCAT(a) { p = (a); while ( (*p) && (q<r) ) *q++ = *p++; } ! ! QSTRCAT( appinfo->station_labels[ rec->station_id ] ); ! ! const char* title = rec_getTitle( rec ); ! if ( title != NULL ) { ! QSTRCAT( ": " ); ! QSTRCAT( title ); ! } ! *q = '\0'; ! } ! ! ! ! ! ! static Err openAlarmDB( DmOpenRef* dbP ) ! { ! UInt16 mode; ! DmOpenRef date_db; ! ! mode = dmModeReadWrite | dmModeShowSecret; ! ! date_db = DmOpenDatabaseByTypeCreator( datebookDBType, sysFileCDatebook, mode ); ! if ( !date_db ) { ! return -1; ! } ! *dbP = date_db; ! return 0; ! } ! ! ! static Err ! WepgAlarm_modify( WepgPackedRec* rec, WepgAppInfoData* appinfo, int set ) ! { ! Err err; ! DmOpenRef date_db; ! ! DateType start_date; ! TimeType start_time; ! TimeType end_time; ! Char desc[ 128 ]; ! UInt16 recnr; ! int found; ! ! err = openAlarmDB( &date_db ); ! if ( err != 0 ) { ! return err; ! } ! ! getAlarmProps( rec, appinfo, ! &start_date, ! &start_time, ! &end_time, ! desc, sizeof(desc) ); ! ! found = checkExists( date_db, start_date, start_time, end_time, &recnr ); ! if ( set ) { ! if ( !found ) { ! err = addAlarmEntry( date_db, start_date, start_time, end_time, desc ); ! } ! } ! else { ! if ( found ) { ! err = DmRemoveRecord( date_db, recnr ); ! } ! } ! ! RescheduleAlarms( date_db ); ! ! DmCloseDatabase( date_db ); ! ! return err; ! } ! ! ! Err WepgAlarm_set( WepgPackedRec* rec, WepgAppInfoData* appinfo ) ! { ! return WepgAlarm_modify( rec, appinfo, 1 ); ! } ! ! Err WepgAlarm_clear( WepgPackedRec* rec, WepgAppInfoData* appinfo ) ! { ! return WepgAlarm_modify( rec, appinfo, 0 ); ! } ! ! ! ! Err WepgAlarm_resetAll( DmOpenRef hDb, WepgAppInfoData* appinfo, int set ) ! { ! UInt16 record_nr = 0; ! while ( true ) { ! MemHandle h_rec = DmQueryRecord( hDb, record_nr ); ! if ( h_rec == 0 ) ! break; ! WepgPackedRec* rec = (WepgPackedRec*)MemHandleLock( h_rec ); ! if ( rec == 0 ) ! break; ! if ( rec->flags.alarm ) { ! SndPlaySystemSound( sndClick ); ! WepgAlarm_modify( rec, appinfo, set ); ! } ! ! MemHandleUnlock( h_rec ); ! record_nr++; ! } ! return 0; ! } ! ! ! #else ! ! ! Err WepgAlarm_set( WepgPackedRec* rec, WepgAppInfoData* appinfo ) ! { ! return 0; ! } ! ! Err WepgAlarm_clear( WepgPackedRec* rec, WepgAppInfoData* appinfo ) ! { ! return 0; ! } ! ! Err WepgAlarm_resetAll( DmOpenRef hDb, WepgAppInfoData* appinfo, int set ) ! { ! return 0; ! } ! ! ! #endif Index: WepgPackedRec.cxx =================================================================== RCS file: /cvsroot/wepg/app/WepgPackedRec.cxx,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** WepgPackedRec.cxx 17 Apr 2002 12:34:01 -0000 1.1.1.1 --- WepgPackedRec.cxx 29 Jul 2004 15:52:08 -0000 1.2 *************** *** 1,26 **** ! #include "WepgPackedRec.h" ! ! ! const char* ! rec_getTitle( WepgPackedRec* rec ) ! { ! if ( rec->flags.have_title ) { ! return (const char*)&rec->var_start; ! } ! return NULL; ! } ! ! ! const char* ! rec_getInfo( WepgPackedRec* rec ) ! { ! if ( rec->flags.have_info ) { ! const char* t = rec_getTitle( rec ); ! if ( t != NULL ) ! t = StrChr( t, '\0' )+1; ! else ! t = (const char*)&rec->var_start; ! return t; ! } ! return NULL; ! } --- 1,26 ---- ! #include "WepgPackedRec.h" ! ! ! const char* ! rec_getTitle( WepgPackedRec* rec ) ! { ! if ( rec->flags.have_title ) { ! return (const char*)&rec->var_start; ! } ! return NULL; ! } ! ! ! const char* ! rec_getInfo( WepgPackedRec* rec ) ! { ! if ( rec->flags.have_info ) { ! const char* t = rec_getTitle( rec ); ! if ( t != NULL ) ! t = StrChr( t, '\0' )+1; ! else ! t = (const char*)&rec->var_start; ! return t; ! } ! return NULL; ! } Index: WepgLUT.h =================================================================== RCS file: /cvsroot/wepg/app/WepgLUT.h,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** WepgLUT.h 17 Apr 2002 12:33:59 -0000 1.1.1.1 --- WepgLUT.h 29 Jul 2004 15:52:08 -0000 1.2 *************** *** 2,6 **** #define __WEPGLUT_H ! #include "palmwepg.h" #include "WepgAppInfo.h" --- 2,6 ---- #define __WEPGLUT_H ! #include "palmdef.h" #include "WepgAppInfo.h" Index: WepgAppInfo.cxx =================================================================== RCS file: /cvsroot/wepg/app/WepgAppInfo.cxx,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** WepgAppInfo.cxx 17 Apr 2002 12:33:59 -0000 1.1.1.1 --- WepgAppInfo.cxx 29 Jul 2004 15:52:08 -0000 1.2 *************** *** 1,34 **** ! #include "WepgAppInfo.h" ! #include "resource.h" ! ! ! WepgAppInfo::WepgAppInfo( PalmDB* db, LocalID id ) ! : PalmAppInfo( db, &m_storage, sizeof(WepgAppInfoData), id ) ! { ! } ! ! ! UInt16 ! WepgAppInfo::getLocalCategoriesResID() const ! { ! return CAT_DEFAULT; ! } ! ! ! void ! WepgAppInfo::initInfo() ! { ! WepgAppInfoData* z = getMirror(); ! ! z->timezone = 0; ! ! z->db_credit = 0; ! z->sort_order = -1; ! z->view_mode = -1; ! ! z->view_start_hour = 18; ! z->view_start_min = 0; ! z->day_end_hour = 2; ! z->day_end_min = 0; ! } ! --- 1,34 ---- ! #include "WepgAppInfo.h" ! #include "resource.h" ! ! ! WepgAppInfo::WepgAppInfo( PalmDB* db, LocalID id ) ! : PalmAppInfo( db, &m_storage, sizeof(WepgAppInfoData), id ) ! { ! } ! ! ! UInt16 ! WepgAppInfo::getLocalCategoriesResID() const ! { ! return CAT_DEFAULT; ! } ! ! ! void ! WepgAppInfo::initInfo() ! { ! WepgAppInfoData* z = getMirror(); ! ! z->timezone = 0; ! ! z->db_credit = 0; ! z->sort_order = -1; ! z->view_mode = -1; ! ! z->view_start_hour = 18; ! z->view_start_min = 0; ! z->day_end_hour = 2; ! z->day_end_min = 0; ! } ! Index: WepgAlarm.h =================================================================== RCS file: /cvsroot/wepg/app/WepgAlarm.h,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** WepgAlarm.h 17 Apr 2002 12:34:01 -0000 1.1.1.1 --- WepgAlarm.h 29 Jul 2004 15:52:08 -0000 1.2 *************** *** 2,6 **** #define __WEPGALARM_H ! #include "palmwepg.h" //#include "WepgRecord.h" //#include "WepgDB.h" --- 2,6 ---- #define __WEPGALARM_H ! #include "palmdef.h" //#include "WepgRecord.h" //#include "WepgDB.h" Index: WepgRecord.h =================================================================== RCS file: /cvsroot/wepg/app/WepgRecord.h,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** WepgRecord.h 17 Apr 2002 12:34:00 -0000 1.1.1.1 --- WepgRecord.h 29 Jul 2004 15:52:08 -0000 1.2 *************** *** 2,6 **** #define __WEPGRECORD_H ! #include "palmwepg.h" #include "PalmRecord.h" #include "WepgPackedRec.h" --- 2,6 ---- #define __WEPGRECORD_H ! #include "palmdef.h" #include "PalmRecord.h" #include "WepgPackedRec.h" Index: WepgBCInfView.h =================================================================== RCS file: /cvsroot/wepg/app/WepgBCInfView.h,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** WepgBCInfView.h 8 Mar 2003 09:59:05 -0000 1.2 --- WepgBCInfView.h 29 Jul 2004 15:52:08 -0000 1.3 *************** *** 2,6 **** #define __WEPGBCINFVIEW_H ! #include "palmwepg.h" #include "WepgDB.h" --- 2,6 ---- #define __WEPGBCINFVIEW_H ! #include "palmdef.h" #include "WepgDB.h" Index: WepgPackedRec.h =================================================================== RCS file: /cvsroot/wepg/app/WepgPackedRec.h,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** WepgPackedRec.h 17 Apr 2002 12:34:01 -0000 1.1.1.1 --- WepgPackedRec.h 29 Jul 2004 15:52:08 -0000 1.2 *************** *** 2,6 **** #define __WepgPackedRec_H ! #include "palmwepg.h" #ifdef __cplusplus --- 2,6 ---- #define __WepgPackedRec_H ! #include "palmdef.h" #ifdef __cplusplus Index: WepgDB.h =================================================================== RCS file: /cvsroot/wepg/app/WepgDB.h,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** WepgDB.h 17 Apr 2002 12:33:56 -0000 1.1.1.1 --- WepgDB.h 29 Jul 2004 15:52:08 -0000 1.2 *************** *** 2,6 **** #define __WEPGDB_H ! #include "palmwepg.h" #include "PalmDB.h" #include "WepgAppInfo.h" --- 2,6 ---- #define __WEPGDB_H ! #include "palmdef.h" #include "PalmDB.h" #include "WepgAppInfo.h" Index: wepgexg.h =================================================================== RCS file: /cvsroot/wepg/app/wepgexg.h,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** wepgexg.h 17 Apr 2002 12:34:02 -0000 1.1.1.1 --- wepgexg.h 29 Jul 2004 15:52:08 -0000 1.2 *************** *** 2,6 **** #define __wepgexg_H ! #include "palmwepg.h" Err wepgexg_sendDB(); --- 2,6 ---- #define __wepgexg_H ! #include "palmdef.h" Err wepgexg_sendDB(); Index: resource.rcp =================================================================== RCS file: /cvsroot/wepg/app/resource.rcp,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** resource.rcp 8 Mar 2003 09:59:05 -0000 1.2 --- resource.rcp 29 Jul 2004 15:52:08 -0000 1.3 *************** *** 161,170 **** ! ICON "wepgicon.bmp" CATEGORIES ID CAT_DEFAULT "All" ! ! // see makefile ! VERSION 1 "0.19b" --- 161,173 ---- ! ICON ! BEGIN ! BITMAP "wepgicon.bmp" BPP 1 DENSITY 72 ! BITMAP "wepgicon8.bmp" BPP 8 DENSITY 144 ! END + APPLICATIONICONNAME ID APPNAMEID "Whatch" CATEGORIES ID CAT_DEFAULT "All" ! VERSION 1 "0.20" Index: WepgTableView.h =================================================================== RCS file: /cvsroot/wepg/app/WepgTableView.h,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** WepgTableView.h 17 Apr 2002 12:34:01 -0000 1.1.1.1 --- WepgTableView.h 29 Jul 2004 15:52:08 -0000 1.2 *************** *** 2,6 **** #define __WEPGTABLEVIEW_H ! #include "palmwepg.h" #include "WepgDB.h" #include "WepgRecord.h" --- 2,6 ---- #define __WEPGTABLEVIEW_H ! #include "palmdef.h" #include "WepgDB.h" #include "WepgRecord.h" Index: WepgBusy.h =================================================================== RCS file: /cvsroot/wepg/app/WepgBusy.h,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** WepgBusy.h 17 Apr 2002 12:34:01 -0000 1.1.1.1 --- WepgBusy.h 29 Jul 2004 15:52:08 -0000 1.2 *************** *** 2,32 **** #define __WEPGBUSY_H ! #include "palmwepg.h" ! #include "PalmBusy.h" ! ! ! #define NBUSYBMP 8 ! class WepgBusy : public PalmBusy { public: WepgBusy(); - ~WepgBusy(); - - Err init(); - - virtual void yield(); - virtual void clear(); protected: - MemHandle m_hBmp[ NBUSYBMP ]; - BitmapPtr m_pBmp[ NBUSYBMP ]; - - RectangleType m_rect; - UInt16 m_bmpIdx; - UInt32 m_lastTicks; - private: }; --- 2,15 ---- #define __WEPGBUSY_H ! #include "PalmBusyGfx.h" ! class WepgBusy : public PalmBusyGfx { public: WepgBusy(); protected: private: }; Index: Makefile =================================================================== RCS file: /cvsroot/wepg/app/Makefile,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** Makefile 24 Feb 2003 18:54:50 -0000 1.3 --- Makefile 29 Jul 2004 15:52:08 -0000 1.4 *************** *** 1,5 **** # palmwepg makefile # ! # Leon van Stuivenberg le...@ia... # --- 1,5 ---- # palmwepg makefile # ! # Leon van Stuivenberg leon van stuivenberg at chello nl # *************** *** 30,42 **** -L../PalmDm \ -lPalmDm \ - -L../irXxD \ - -lIRXxD \ \ -lnoexcept CFLAGS = -Wall $(INCS) CFLAGS += -fno-exceptions -fno-rtti CFLAGS += -Os -fnonnull-objects ! CFLAGS += -DUSEIR #crash? : -fomit-frame-pointer --- 30,42 ---- -L../PalmDm \ -lPalmDm \ \ -lnoexcept + #LIBS += -L../irXxD -lIRXxD + CFLAGS = -Wall $(INCS) CFLAGS += -fno-exceptions -fno-rtti CFLAGS += -Os -fnonnull-objects ! #CFLAGS += -DUSEIR #crash? : -fomit-frame-pointer Index: WepgRecord.cxx =================================================================== RCS file: /cvsroot/wepg/app/WepgRecord.cxx,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** WepgRecord.cxx 17 Apr 2002 12:34:00 -0000 1.1.1.1 --- WepgRecord.cxx 29 Jul 2004 15:52:08 -0000 1.2 *************** *** 1,187 **** ! #include "WepgRecord.h" ! #include "WepgDB.h" ! #include "WepgAppInfo.h" ! #include "wepgutils.h" ! ! ! //////////////// ! ! static void printTime( char* p, WepgTimeStampType ts ) ! { ! p[0] = '0' + ts.t.hour/10; ! p[1] = '0' + ts.t.hour%10; ! p[2] = ':'; ! p[3] = '0' + ts.t.minute/10; ! p[4] = '0' + ts.t.minute%10; ! p[5] = 0; ! } ! ! //////////////// ! ! ! WepgRecord::WepgRecord( PalmDB* db, MemHandle recordH, PalmPackedRec* payload, UInt16 recnr ) ! : PalmRecord( db, recordH, payload, recnr ) ! { ! m_title = NULL; ! m_info = NULL; ! m_storage = NULL; ! ! PalmRecord::unpack(); ! } ! ! ! WepgRecord::~WepgRecord() ! { ! // freeMembers(); ! } ! ! ! /* ! void ! WepgRecord::freeMembers() ! { ! if ( m_title != NULL ) { ! if ( m_storage != m_pRec ) ! StrFree( m_title ); ! } ! m_title = NULL; ! if ( m_info != NULL ) { ! if ( m_storage != m_pRec ) ! StrFree( m_info ); ! } ! m_info = NULL; ! } ! */ ! ! ! Err ! WepgRecord::packedSize( UInt32& size ) ! { ! UInt32 l = (UInt32)(&((WepgPackedRec*)0)->var_start); ! ! if ( m_storage->flags.have_title && (m_title != NULL) ) ! l += StrLen( m_title ) + 1; ! ! if ( m_storage->flags.have_info && (m_info != NULL ) ) ! l += StrLen( m_info ) + 1; ! ! size = l; ! return 0; ! } ! ! ! Err ! WepgRecord::pack( void* dest ) ! { ! WepgPackedRec* packedrec = (WepgPackedRec*)dest; ! char * pbuf; ! UInt16 l; ! ! packedrec->flags = m_storage->flags; ! packedrec->start_time = m_storage->start_time; ! packedrec->end_time = m_storage->end_time; ! packedrec->station_id = m_storage->station_id; ! ! pbuf = (char*) &packedrec->var_start; ! ! if ( m_storage->flags.have_title ) { ! StrCopy( pbuf, m_title ); ! l = StrLen( m_title ); ! pbuf += l + 1; ! } ! ! if ( m_storage->flags.have_info ) { ! StrCopy( pbuf, m_info ); ! l = StrLen( m_info ); ! pbuf += l + 1; ! } ! ! return 0; ! } ! ! ! ! ! Err ! WepgRecord::unpack( void* src ) ! { ! // freeMembers(); ! ! //WepgPackedRec* packedrec = (WepgPackedRec*)src; ! // CharPtr pbuf; ! // Word l; ! ! if ( src != m_pRec ) ! return 1; ! m_storage = (WepgPackedRec*)src; ! ! ! //m_storage.flags = packedrec->flags; ! //m_storage.start_time = packedrec->start_time; ! //m_storage.end_time = packedrec->end_time; ! //m_storage.station_id = packedrec->station_id; ! ! /* ! pbuf = (CharPtr) &packedrec->var_start; ! ! // title ! if ( m_storage.flags.have_title ) { ! m_title = StrDup( pbuf ); ! l = StrLen( pbuf ); ! pbuf += l + 1; ! } ! else ! m_title = NULL; ! ! // info ! if ( m_storage.flags.have_info ) { ! m_info = StrDup( pbuf ); ! l = StrLen( pbuf ); ! pbuf += l + 1; ! } ! else ! m_info = NULL; ! */ ! m_title = rec_getTitle( m_storage ); ! m_info = rec_getInfo( m_storage ); ! ! ! WepgTimeStampType tmpts; ! ! tmpts = m_storage->start_time; ! timeAdjustTS( &tmpts, getDB()->getAppInfo()->getMirror()->timezone ); ! printTime( m_startTimeStr, tmpts ); ! ! tmpts = m_storage->end_time; ! timeAdjustTS( &tmpts, getDB()->getAppInfo()->getMirror()->timezone ); ! printTime( m_endTimeStr, tmpts ); ! ! return 0; ! } ! ! ! Err ! WepgRecord::edit() ! { ! m_editStorage.flags = m_storage->flags; ! m_editStorage.start_time = m_storage->start_time; ! m_editStorage.end_time = m_storage->end_time; ! m_editStorage.station_id = m_storage->station_id; ! ! m_storage = &m_editStorage; ! // title and info currently unmutable; no edit storage req. ! return 0; ! } ! ! ! Err ! WepgRecord::editDone() ! { ! Err err; ! ! err = write(); ! m_storage = (WepgPackedRec*)m_pRec; ! err = PalmRecord::unpack(); ! return err; ! } ! --- 1,187 ---- ! #include "WepgRecord.h" ! #include "WepgDB.h" ! #include "WepgAppInfo.h" ! #include "wepgutils.h" ! ! ! //////////////// ! ! static void printTime( char* p, WepgTimeStampType ts ) ! { ! p[0] = '0' + ts.t.hour/10; ! p[1] = '0' + ts.t.hour%10; ! p[2] = ':'; ! p[3] = '0' + ts.t.minute/10; ! p[4] = '0' + ts.t.minute%10; ! p[5] = 0; ! } ! ! //////////////// ! ! ! WepgRecord::WepgRecord( PalmDB* db, MemHandle recordH, PalmPackedRec* payload, UInt16 recnr ) ! : PalmRecord( db, recordH, payload, recnr ) ! { ! m_title = NULL; ! m_info = NULL; ! m_storage = NULL; ! ! PalmRecord::unpack(); ! } ! ! ! WepgRecord::~WepgRecord() ! { ! // freeMembers(); ! } ! ! ! /* ! void ! WepgRecord::freeMembers() ! { ! if ( m_title != NULL ) { ! if ( m_storage != m_pRec ) ! StrFree( m_title ); ! } ! m_title = NULL; ! if ( m_info != NULL ) { ! if ( m_storage != m_pRec ) ! StrFree( m_info ); ! } ! m_info = NULL; ! } ! */ ! ! ! Err ! WepgRecord::packedSize( UInt32& size ) ! { ! UInt32 l = (UInt32)(&((WepgPackedRec*)0)->var_start); ! ! if ( m_storage->flags.have_title && (m_title != NULL) ) ! l += StrLen( m_title ) + 1; ! ! if ( m_storage->flags.have_info && (m_info != NULL ) ) ! l += StrLen( m_info ) + 1; ! ! size = l; ! return 0; ! } ! ! ! Err ! WepgRecord::pack( void* dest ) ! { ! WepgPackedRec* packedrec = (WepgPackedRec*)dest; ! char * pbuf; ! UInt16 l; ! ! packedrec->flags = m_storage->flags; ! packedrec->start_time = m_storage->start_time; ! packedrec->end_time = m_storage->end_time; ! packedrec->station_id = m_storage->station_id; ! ! pbuf = (char*) &packedrec->var_start; ! ! if ( m_storage->flags.have_title ) { ! StrCopy( pbuf, m_title ); ! l = StrLen( m_title ); ! pbuf += l + 1; ! } ! ! if ( m_storage->flags.have_info ) { ! StrCopy( pbuf, m_info ); ! l = StrLen( m_info ); ! pbuf += l + 1; ! } ! ! return 0; ! } ! ! ! ! ! Err ! WepgRecord::unpack( void* src ) ! { ! // freeMembers(); ! ! //WepgPackedRec* packedrec = (WepgPackedRec*)src; ! // CharPtr pbuf; ! // Word l; ! ! if ( src != m_pRec ) ! return 1; ! m_storage = (WepgPackedRec*)src; ! ! ! //m_storage.flags = packedrec->flags; ! //m_storage.start_time = packedrec->start_time; ! //m_storage.end_time = packedrec->end_time; ! //m_storage.station_id = packedrec->station_id; ! ! /* ! pbuf = (CharPtr) &packedrec->var_start; ! ! // title ! if ( m_storage.flags.have_title ) { ! m_title = StrDup( pbuf ); ! l = StrLen( pbuf ); ! pbuf += l + 1; ! } ! else ! m_title = NULL; ! ! // info ! if ( m_storage.flags.have_info ) { ! m_info = StrDup( pbuf ); ! l = StrLen( pbuf ); ! pbuf += l + 1; ! } ! else ! m_info = NULL; ! */ ! m_title = rec_getTitle( m_storage ); ! m_info = rec_getInfo( m_storage ); ! ! ! WepgTimeStampType tmpts; ! ! tmpts = m_storage->start_time; ! timeAdjustTS( &tmpts, getDB()->getAppInfo()->getMirror()->timezone ); ! printTime( m_startTimeStr, tmpts ); ! ! tmpts = m_storage->end_time; ! timeAdjustTS( &tmpts, getDB()->getAppInfo()->getMirror()->timezone ); ! printTime( m_endTimeStr, tmpts ); ! ! return 0; ! } ! ! ! Err ! WepgRecord::edit() ! { ! m_editStorage.flags = m_storage->flags; ! m_editStorage.start_time = m_storage->start_time; ! m_editStorage.end_time = m_storage->end_time; ! m_editStorage.station_id = m_storage->station_id; ! ! m_storage = &m_editStorage; ! // title and info currently unmutable; no edit storage req. ! return 0; ! } ! ! ! Err ! WepgRecord::editDone() ! { ! Err err; ! ! err = write(); ! m_storage = (WepgPackedRec*)m_pRec; ! err = PalmRecord::unpack(); ! return err; ! } ! Index: WepgApplic.cxx =================================================================== RCS file: /cvsroot/wepg/app/WepgApplic.cxx,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** WepgApplic.cxx 17 Apr 2002 12:33:59 -0000 1.1.1.1 --- WepgApplic.cxx 29 Jul 2004 15:52:08 -0000 1.2 *************** *** 7,14 **** #include "wepgnonp.h" #include "IRDevicePalm.h" #include "IRDBPalm.h" #include "IRModules.h" ! --- 7,15 ---- #include "wepgnonp.h" + #ifdef USEIR #include "IRDevicePalm.h" #include "IRDBPalm.h" #include "IRModules.h" ! #endif *************** *** 23,29 **** m_db = new WepgDB(); ! m_irdev = new IRDevicePalm(); m_irdb = new IRDBPalm( 3 ); } --- 24,31 ---- m_db = new WepgDB(); ! #ifdef USEIR m_irdev = new IRDevicePalm(); m_irdb = new IRDBPalm( 3 ); + #endif } *************** *** 31,43 **** WepgApplic::~WepgApplic() { - if ( m_listView != NULL ) - delete m_listView; - - if ( m_bcInfView != NULL ) - delete m_bcInfView; - if ( m_db != NULL ) delete m_db; if ( m_irdev != NULL ) delete m_irdev; --- 33,40 ---- WepgApplic::~WepgApplic() { if ( m_db != NULL ) delete m_db; + #ifdef USEIR if ( m_irdev != NULL ) delete m_irdev; *************** *** 45,51 **** --- 42,50 ---- if ( m_irdb != NULL ) delete m_irdb; + #endif } + Err WepgApplic::unhideToday() *************** *** 135,138 **** --- 134,138 ---- } + #ifdef USEIR err = m_irdev->open( NULL ); if ( err ) { *************** *** 146,150 **** m_irdb->registerModule( new IRModSony12( m_irdb ) ); m_irdb->registerModule( new IRModKeyGap( m_irdb ) ); ! FrmGotoForm( FRM_LIST ); --- 146,150 ---- m_irdb->registerModule( new IRModSony12( m_irdb ) ); m_irdb->registerModule( new IRModKeyGap( m_irdb ) ); ! #endif FrmGotoForm( FRM_LIST ); *************** *** 159,170 **** Err err = 0; FrmCloseAllForms(); err = m_db->close(); err = m_irdev->close(); err = m_irdb->close(); ! return err; } --- 159,179 ---- Err err = 0; + if ( m_listView != NULL ) + delete m_listView; + m_listView = NULL; + + if ( m_bcInfView != NULL ) + delete m_bcInfView; + m_bcInfView = NULL; + FrmCloseAllForms(); err = m_db->close(); + #ifdef USEIR err = m_irdev->close(); err = m_irdb->close(); ! #endif return err; } *************** *** 269,272 **** --- 278,282 ---- { if ( attr_idx == ATTR_STATION ) { + #ifdef USEIR WepgRecord* rec = NULL; m_listView->getSelected( rec ); *************** *** 276,279 **** --- 286,290 ---- m_irdb->fireEvent( m_irdev, 'Wepg', ir_id, NULL ); } + #endif } } *************** *** 287,291 **** FormPtr frm; WepgRecord* rec; ! Err err; if (event->eType == frmLoadEvent) { --- 298,302 ---- FormPtr frm; WepgRecord* rec; ! // Err err; if (event->eType == frmLoadEvent) { *************** *** 365,372 **** if ( event->eType == menuEvent ) { switch ( event->data.menu.itemID ) { ! /* ! case FRM_GLOBALMENU_ARCHIVE: ! return (true); ! */ case FRM_GLOBALMENU_SETDAY: setDayEnd(); --- 376,381 ---- if ( event->eType == menuEvent ) { switch ( event->data.menu.itemID ) { ! // case FRM_GLOBALMENU_ARCHIVE: ! // return (true); case FRM_GLOBALMENU_SETDAY: setDayEnd(); *************** *** 383,389 **** case FRM_GLOBALMENU_SENDDB: ! err = m_irdev->close(); wepgexg_sendDB(); err = m_irdev->open( NULL ); return (true); --- 392,402 ---- case FRM_GLOBALMENU_SENDDB: ! #ifdef USEIR ! err = m_irdev->close(); ! #endif wepgexg_sendDB(); + #ifdef USEIR err = m_irdev->open( NULL ); + #endif return (true); *************** *** 413,421 **** --- 426,439 ---- wepg_setBacklight( 0xff ); //m_wasBacklit ); m_wasBacklit = 0; + #ifdef USEIR m_irdev->reInit(); + #endif return true; //} } } + if (m_listView != NULL) { + if (m_listView->eventHook(event)) return true; + } return false; } Index: README =================================================================== RCS file: /cvsroot/wepg/app/README,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** README 8 Mar 2003 10:16:05 -0000 1.1 --- README 29 Jul 2004 15:52:08 -0000 1.2 *************** *** 1,5 **** wepg - Whatch EPG ! Copyright (C) 1997-2003 Leon van Stuivenberg (le...@ia...) This program is free software; you can redistribute it and/or modify --- 1,5 ---- wepg - Whatch EPG ! Copyright (C) 1997-2004 Leon van Stuivenberg (leon van stuivenberg at chello nl) This program is free software; you can redistribute it and/or modify Index: WepgBusy.cxx =================================================================== RCS file: /cvsroot/wepg/app/WepgBusy.cxx,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** WepgBusy.cxx 17 Apr 2002 12:33:59 -0000 1.1.1.1 --- WepgBusy.cxx 29 Jul 2004 15:52:08 -0000 1.2 *************** *** 1,90 **** ! #include "WepgBusy.h" ! #include "resource.h" ! ! ! WepgBusy::WepgBusy() : PalmBusy() ! { ! for ( int i=0; i<NBUSYBMP; i++ ) ! m_hBmp[ i ] = NULL; ! } ! ! ! WepgBusy::~WepgBusy() ! { ! for ( int i=0; i<NBUSYBMP; i++ ) { ! if ( m_hBmp[ i ] != NULL ) { ! MemPtrUnlock( m_pBmp[ i ] ); ! DmReleaseResource( m_hBmp[ i ] ); ! } ! } ! } ! ! ! ! Err ! WepgBusy::init() ! { ! int load_error; ! ! load_error = false; ! for ( int i=0; i<NBUSYBMP; i++ ) { ! m_hBmp[ i ] = DmGetResource( bitmapRsc, BUSYRESID + i ); ! if ( m_hBmp[ i ] != NULL ) ! m_pBmp[ i ] = (BitmapPtr)MemHandleLock( m_hBmp[ i ] ); ! else ! load_error = true; ! } ! m_bmpIdx = 0; ! m_rect.topLeft.x = 0; //145; ! m_rect.topLeft.y = 0; ! m_rect.extent.x = 15; ! m_rect.extent.y = 15; ! m_lastTicks = TimGetTicks(); ! ! if ( load_error ) ! return 1; ! return 0; ! } ! ! ! ! ! void ! WepgBusy::yield() ! { ! UInt32 tik; ! UInt32 dtik; ! ! tik = TimGetTicks(); ! dtik = tik - m_lastTicks; ! if ( dtik > 15 ) { ! m_lastTicks = tik; ! ! WinDrawBitmap( m_pBmp[ m_bmpIdx ], m_rect.topLeft.x, m_rect.topLeft.y ); ! ! m_bmpIdx++; ! if ( m_bmpIdx == NBUSYBMP ) ! m_bmpIdx = 0; ! } ! } ! ! ! void ! WepgBusy::clear() ! { ! /* ! very irritating ! ! static Word pat[] = { 0xffff, 0xffff, 0xffff, 0xffff }; ! ! RectangleType t; ! t.topLeft.x = 0; ! t.topLeft.y = 0; ! t.extent.x = 1; ! t.extent.y = 1; ! WinSetPattern( (Word*)&pat ); ! WinFillRectangle( &m_rect, 0 ); ! WinEraseRectangle( &t, 0 ); ! */ ! } ! --- 1,7 ---- ! #include "WepgBusy.h" ! #include "resource.h" ! ! ! WepgBusy::WepgBusy() : PalmBusyGfx(BUSYRESID) ! { ! } |