home *** CD-ROM | disk | FTP | other *** search
/ The Datafile PD-CD 4 / DATAFILE_PDCD4.iso / utilities / utilsf / journal / !Journal / !Journal (.txt) < prev    next >
Encoding:
RISC OS BBC BASIC V Source  |  1996-03-02  |  10.4 KB  |  369 lines

  1.  > <Journal$Dir>.!Journal
  2.  "Hourglass_Smash"::
  3. $;" at line "+
  4.  "<Obey$Dir>.ShellLibRT"
  5.  "<Obey$Dir>.ScrapLib"
  6. 4void1%=
  7. shell_InstallLib(  "<Obey$Dir>.CalLib" )
  8. 6void2%=
  9. shell_InstallLib(  "<Obey$Dir>.DatePick" )
  10.     4void3%=
  11. shell_InstallLib(  "<Obey$Dir>.OLELib" )
  12. shell_FatalError
  13.  "Hourglass_On"
  14.  "Wimp_SlotSize",-1,-1 
  15.  progsize%
  16. pagesize%=1<<10
  17. freespace%=&8000+progsize%
  18. =freespace%+pagesize%
  19. =freespace%
  20. shell_HeapManagerInit("<Obey$Dir>.",freespace%)
  21. shell_Init
  22. *task%=
  23. shell_WimpInit_I(200,"Journal")
  24.  PROCshell_TraceInit("")
  25.  PROCshell_TraceOn
  26. shell_ResourcesInit
  27. app_init
  28. _closedown%     =
  29. changed%        =
  30.  "Hourglass_Off"
  31. shell_Error
  32. shell_Action(
  33. shell_Poll_I(0,task%))
  34.  _closedown%
  35. shell_ScrapRemoveDir( 
  36. shell_GetAppName )
  37. *UnSet Journal$Running
  38. shell_Exit:
  39. app_init
  40. *    no%=0
  41.  Entry$(31):
  42.  adr% 5000
  43. SetUp_Menus
  44. SetUp_Windows
  45. SetUp_IconBar
  46. shell_ScrapCreateDir( 
  47. shell_GetAppName )
  48. SetUp_Menus
  49.  void1%,void2%
  50. 5FMenuHandle_IconBar%=
  51. shell_MenuNew(
  52. shell_MessageNoArgs("MTIBar"))
  53. 6IMenuItem_Info%     =
  54. shell_MenuAdd(0,
  55. shell_MessageNoArgs("Info"),"")
  56. 7XMenuItem_Main%     =
  57. shell_MenuAdd(0,
  58. shell_MessageNoArgs("ChangeDate"),"_OpenMain")
  59. 8QMenuItem_Comp%  =
  60. shell_MenuAdd(0,
  61. shell_MessageNoArgs("Compile"),"_compile")
  62. 9KMenuItem_Year%  =
  63. shell_MenuAdd(0,
  64. shell_MessageNoArgs("Year"),"_year")
  65. ;Yvoid4%             =
  66. shell_MenuAdd(0,
  67. shell_MessageNoArgs("Quit"),"_MenuSelect_Quit")
  68. shell_AttachMenuDBox(MenuItem_Info%,"progInfo","_PreOpenInfo","")
  69. shell_CreateWindowStatic("xfer_send",xfer%)
  70. ?CMenuHandle_Main%=
  71. shell_MenuNew(
  72. shell_MessageNoArgs("MTIBar"))
  73. @IMenuItem_Info%     =
  74. shell_MenuAdd(0,
  75. shell_MessageNoArgs("Info"),"")
  76. AIMenuItem_Save%     =
  77. shell_MenuAdd(0,
  78. shell_MessageNoArgs("Save"),"")
  79. BYvoid5%             =
  80. shell_MenuAdd(0,
  81. shell_MessageNoArgs("Quit"),"_MenuSelect_Quit")
  82. shell_AttachMenuDBox(MenuItem_Info%,"progInfo","_PreOpenInfo","")
  83. shell_AttachSubMenu(MenuItem_Save%,xfer%,"")
  84. shell_CreateWindowStatic("Entries",entries%)
  85. GGMenuHandle_Entries%=
  86. shell_MenuNew(
  87. shell_MessageNoArgs("Entries"))
  88. HQMenuItem_Delete%  =
  89. shell_MenuAdd(0,
  90. shell_MessageNoArgs("Delete"),"_delete")
  91. ITMenuItem_Combine%  =
  92. shell_MenuAdd(0,
  93. shell_MessageNoArgs("Combine"),"_combine")
  94. JYvoid5%             =
  95. shell_MenuAdd(0,
  96. shell_MessageNoArgs("Quit"),"_MenuSelect_Quit")
  97. SetUp_Windows
  98. shell_CreateWindowStatic("mainw",mainw%)
  99. shell_CreateWindowStatic("xfer_sen2",xfert%)
  100. shell_CreateWindow("no",no%)
  101. shell_IconPutData(xfert%,1,"Selection",
  102. shell_AttachDataSave(xfert%,2,&100,&FFF,1,"_DataSavSel")
  103. shell_AttachDataSave(xfer%,2,&100,&FFF,1,"_DataSave")
  104. shell_AttachPopupDatePicker(mainw%,4,-1,"_A")
  105. shell_CalendarGetTodaysDate(date%,mont%,year%)
  106. shell_IconPutData(mainw%,1,
  107. shell_CalendarDateString(date%,mont%,year%),
  108. shell_AttachClickSelect(mainw%,-1,"_clickmain")
  109. shell_AttachClickSelect(entries%,-1,"_clickentries")
  110. shell_AttachMenu(mainw%,-1,MenuHandle_Main%,0,0,0)
  111. shell_AttachMenu(entries%,-1,MenuHandle_Entries%,0,0,0)
  112. \*mon$=
  113. shell_CalendarMonthString(mont%)
  114. name$=
  115. (date%)+"/"+mon$
  116. shell_IconPutData(xfer%,1,name$,
  117. SetUp_IconBar
  118. bSsicon=
  119. shell_Iconbar(-1,"!"+
  120. shell_GetAppName,"",120,MenuHandle_IconBar%,0,0,0)
  121. shell_AttachHelpTag(-1,sicon,"iconbar")
  122. shell_AttachClickSelect(-1,sicon,"_ClickSelect_IconBar")
  123. shell_AttachClickAdjust(-1,sicon,"_ClickAdjust_IconBar")
  124. _DataSave(fullname$)
  125. shell_FileExists("<Wimp$ScrapDir>.Journal.JournFile")=
  126. savefile(fullname$)
  127. openno
  128. _DataSavSel(fullname$)
  129. savesel(fullname$)
  130. _compile(A%)
  131. entries
  132. _year(A%)
  133. year(fullname$)
  134. _delete(blk%)
  135. delete
  136. _combine(blk%)
  137. combine
  138. _A (T$)
  139. ; date%=
  140. T$,2)):mont%=
  141. T$,4,2)):year%=
  142. ("19"+
  143. T$,2))
  144. shell_IconPutData(mainw%,1,
  145. shell_CalendarDateString(date%,mont%,year%),
  146. shell_IconPutData(xfer%,1,(
  147. (date%)+"/"+
  148. shell_CalendarMonthString(mont%)),
  149. shell_FileExists("<Journal$Dir>."+
  150. (year%))=
  151. ("COPY <Journal$Dir>.Year <Journal$Dir>."+
  152. (year%)+" R~CQ")
  153. _OpenPath
  154. *mon$=
  155. shell_CalendarMonthString(mont%)
  156. >=" <Journal$Dir>."+
  157. (year%)+"."+mon$+"."+
  158. (date%)+"/"+mon$
  159. _OpenYear(mont%,dat%)
  160. *mon$=
  161. shell_CalendarMonthString(mont%)
  162. ==" <Journal$Dir>."+
  163. (year%)+"."+mon$+"."+
  164. (dat%)+"/"+mon$
  165. _OpenMonth
  166. *mon$=
  167. shell_CalendarMonthString(mont%)
  168. ,=" <Journal$Dir>."+
  169. (year%)+"."+mon$+"."
  170. _PreOpenInfo(wh%)
  171. shell_IconPutData(wh%,0,
  172. shell_MessageNoArgs("progInfo0"),0)
  173. shell_IconPutData(wh%,1,
  174. shell_MessageNoArgs("progInfo1"),0)
  175. shell_IconPutData(wh%,2,
  176. shell_MessageNoArgs("progInfo2"),0)
  177. shell_IconPutData(wh%,3,
  178. shell_MessageNoArgs("progInfo3"),0)
  179. _ClickAdjust_IconBar(wh%,icon%)
  180. shell_OpenWindowStatic(mainw%)
  181. _ClickSelect_IconBar(wh%,icon%)
  182. _OLETransfer
  183. _OpenMain(a%)
  184. shell_OpenWindowStatic(mainw%)
  185. _OLETransfer
  186. *Set Edit$Options D
  187.  file_handle%, file_buffer%, OLE_file_name$ , X% ,A%
  188. Zfile_buffer% = 
  189. shell_HeapBlockFetch( 1256 ):filebuff% = 
  190. shell_HeapBlockFetch( 1256 )
  191. changed%=
  192.  $file_buffer% =""
  193. K OLE_file_name$ = "<Wimp$ScrapDir>." + 
  194. shell_GetAppName + ".JournFile"
  195. shell_OLEDeLinkFile( OLE_file_name$ )
  196. shell_FileExists(
  197. _OpenPath)=
  198.   X%=
  199. _OpenPath
  200. 7  $file_buffer% =
  201. shell_IconGetData(mainw%,1)+
  202. $  X%=
  203.  "<Journal$Dir>.JournFile"
  204. ' file_handle% = 
  205. ( OLE_file_name$ )
  206.  AA%=0:
  207. :AA%+=1
  208. +  $file_buffer% =$file_buffer% +
  209.  AA%=255 
  210.  "OS_GBPB", 2, file_handle%, file_buffer%, 
  211. ( $file_buffer% )
  212.  $file_buffer% =""
  213.  #file_handle%
  214. ( "SetType " + OLE_file_name$ + " FFF")
  215. shell_MessageSendDataLoad( &FFF, OLE_file_name$ )
  216. shell_OLELinkFile( OLE_file_name$, "_reload" )
  217.  key_ctrl_down% = &1AE
  218. shell_EnsurePoll
  219.  "Wimp_ProcessKey",key_ctrl_down%
  220. _MenuSelect_Quit(blk%)
  221. _closedown%=
  222. _reload(file$)
  223.  file_length%, buff% ,X%
  224. shell_Tracef0("reloading file0001")
  225. -file_length% = 
  226. shell_FileLength( file$ )
  227. 1buff% = 
  228. shell_HeapBlockFetch( file_length% )
  229. ("LOAD " + file$ + " " + 
  230. ~( buff% ) )
  231.  Store day's diary entry
  232. -year%=
  233. shell_IconGetData(mainw%,1),4))
  234. $filebuff%=
  235. _OpenPath
  236.  "OS_File",10,$filebuff%,&fff,,buff%,buff%+file_length%
  237. shell_HeapBlockReturn( buff% )
  238. *Set Edit$Options 0
  239. shell_DoBackgroundTask
  240. shell_OLEScanLinkedFiles
  241. savefile(filsave$)
  242.  file_length%, buff% ,X%
  243. Kfile_length% = 
  244. shell_FileLength( "<Wimp$ScrapDir>.Journal.JournFile" )
  245. 1buff% = 
  246. shell_HeapBlockFetch( file_length% )
  247. ("LOAD <Wimp$ScrapDir>.Journal.JournFile " + 
  248. ~( buff% ) )
  249. $filebuff%=filsave$
  250.  "OS_File",10,$filebuff%,&fff,,buff%,buff%+file_length%
  251. shell_HeapBlockReturn( buff% )
  252. _clickentries(wh%,icon%)
  253.  icon% 
  254.      A%=0
  255. :A%+=1
  256. shell_IconSelect(entries%,A%)
  257.  A%>=no%
  258. _clickmain(wh%,icon%)
  259.  icon% 
  260. _OLETransfer
  261. entries
  262.  A%,month$
  263.     no%=0
  264.  da%= 1 
  265. shell_FileExists(
  266. _OpenMonth+
  267. (da%)+"/"+mon$) 
  268.   no%+=1
  269. >  Entry$(no%)=
  270. (da%)+"/"+
  271. shell_CalendarMonthString(mont%)
  272. no%>0 
  273.  A%= 0 
  274. shell_IconDelete(entries%,A%)
  275. shell_WindowRetitle(entries%,
  276. shell_MessageNoArgs("Entries"))
  277. shell_WindowResize(entries%,10,-100,260,40+(no%*60),
  278. no%>0   
  279. aIcon%= 
  280. shell_IconCreate(entries%,30,((no%-A%)*60)-20,200,60,7,0,&1700313D,"",adr%,12,"r6,3")
  281. shell_IconPutData(entries%,Icon%,"Select All",
  282.  A%= 1 
  283. i  Icon%= 
  284. shell_IconCreate(entries%,30,((no%-A%)*60),200,50,7,0,&1700B139,"",adr%+15+(12*A%),12,"B0")
  285. shell_IconPutData(entries%,Icon%,Entry$(A%),
  286. shell_OpenWindowStatic(entries%)
  287. delete
  288.  filename%
  289. *filename%=
  290. shell_HeapBlockFetch( 256 )
  291.  A% = 0 
  292. shell_IsIconSelected(entries%,A%) =
  293.  ; $filename%=
  294. _OpenMonth+
  295. shell_IconGetData(entries%,A%)
  296.  "OS_File ",6,filename%
  297. shell_IconDelete2(entries%,A%)
  298. shell_CloseWindow(entries%)
  299. combine
  300.  file_length%,filename%,buff%,filebuff%
  301. +*filename%=
  302. shell_HeapBlockFetch( 256 )
  303. ,2$filename%="<Wimp$ScrapDir>.Journal.Selection"
  304. filebuff%=
  305.  ( $filename% )
  306.  A% = 0 
  307. shell_IsIconSelected(entries%,A%) =
  308. 07  file$=
  309. _OpenMonth+
  310. shell_IconGetData(entries%,A%)
  311. 1/  file_length% = 
  312. shell_FileLength( file$ )
  313. 23  buff% = 
  314. shell_HeapBlockFetch( file_length% )
  315. ("LOAD " + file$ + " " + 
  316. ~( buff% ) )
  317.  "OS_GBPB",2,filebuff%,buff%,file_length%
  318.   $buff%=
  319.  "OS_GBPB",2,filebuff%,buff%,2
  320. # filebuff%
  321. ( "SetType " + $filename% + " FFF")
  322. shell_HeapBlockReturn( buff% )
  323. shell_CloseWindow(entries%)
  324. shell_OpenWindowStatic(xfert%)
  325. year(fullname$)
  326.  file_length%,filename%,buff%,filebuff%
  327. E*filename%=
  328. shell_HeapBlockFetch( 256 )
  329. F2$filename%="<Wimp$ScrapDir>.Journal.Selection"
  330. filebuff%=
  331.  ( $filename% )
  332.  "Hourglass_On"
  333.  A% = 1 
  334.  B%= 1 
  335. shell_FileExists(
  336. _OpenYear(A%,B%))=
  337.   file$=
  338. _OpenYear(A%,B%)
  339. M/  file_length% = 
  340. shell_FileLength( file$ )
  341. N3  buff% = 
  342. shell_HeapBlockFetch( file_length% )
  343. ("LOAD " + file$ + " " + 
  344. ~( buff% ) )
  345.  "OS_GBPB",2,filebuff%,buff%,file_length%
  346.   $buff%=
  347.  "OS_GBPB",2,filebuff%,buff%,2
  348. # filebuff%
  349.  "Hourglass_Off"
  350. ( "SetType " + $filename% + " FFF")
  351. shell_HeapBlockReturn( buff% )
  352. shell_OpenWindowStatic(xfert%)
  353. savesel(fullname$)
  354.  file_length%, buff% ,filebuff%
  355. aKfile_length% = 
  356. shell_FileLength( "<Wimp$ScrapDir>.Journal.Selection" )
  357. b1buff% = 
  358. shell_HeapBlockFetch( file_length% )
  359. c+filebuff%= 
  360. shell_HeapBlockFetch( 255 )
  361. ("LOAD <Wimp$ScrapDir>.Journal.Selection " + 
  362. ~( buff% ) )
  363. $filebuff%=fullname$
  364.  "OS_File",10,filebuff%,&fff,,buff%,buff%+file_length%
  365. shell_HeapBlockReturn( buff% )
  366. openno
  367. shell_OpenWindowDynamic("no","","")
  368. shell_EnsurePoll
  369.