⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 release.txt

📁 在手机操作系统symbina上使用的一个脚本扩展语言的代码实现,可以参考用于自己的开发
💻 TXT
📖 第 1 页 / 共 5 页
字号:
	widthInChars% is the width of the edit box within which the text is wrapped.
	numberLines% is the number of lines displayed. Any more lines will be scrolled.
	maxLength% is the length in bytes of the buffer provided.

4) You can now read 'Data app' files with OPL (opening them  via OPEN "file" and 
OPEN "file SELECT f1 FROM table1".
This has actually been available since OPLR 038.

Types not supported by OPL will be ignored. The Opl field handle types  and order,
must match the types and  their order of the  'Data app' file's OPL supported types.
e.g. if the data app file "dat" contains a long, followed by a datetime, followed
by a string, followed by a long binary,  followed by a string ......
you could obtain access to those fields supported by OPL  with OPEN 'dat',A, f1&,f2$,f2$

Using SQL SELECT provides a more suitable method for accessing required fields. For this
to be possible it will be necessary to publish the default column naming mechanism that
data app uses when initially creating the columns.
Write enabled access is easily possible but dangerous as the data app file's LongBinary
fields would need to be set to NULL. This would through away the 'Rich text' formatting
information in the data app's file.

The OPL programmer could always copy the relevant DATA app information into an OPL
database and then (probably coming soon) view that database in data app.

5) Toolbar code now sets Compute mode off. Any app using a toolbar is required not to be
deaf to events unless it has set LOCK ON, so it can't be running compute intensively.

6) New dFILE flags%:
- KDFileSelectorWithSystem% ($200) to show system folder

7) New dDATE flags%:
- KDDateNoHours% (4) for no hours
- KDDate24Hour% (8) to force 24-hour clock
Const.oph now also has consts for OPL16 flags:
- KDDateWithSeconds% (1) for seconds
- KDDateDuration% (2) for duration

8) Font consts and sizes changed - UIDs unchanged:
- to Arial 8,11,13,27 (from 9,12,14,28)
- to Times 8,11 (from 9,12)

9) Eon.opx additions:
- IsBackLightPresent&: returns -1 if present
- ReadRscLong&:(id&) reads a 32-bit value from a resource file
- UidCheckSum&:(Uid1&,Uid2&,Uid3&) returns the Uid checksum
- SetPointerGrabOn:(WinId&,state&)
- MachineName$:
- MachineUniqueId:(BYREF high&,BYREF low&) sets high& and low& to the
  machine's unique id
- EndTask&:(threadId&,previous&) Set previous& to 0 to end first window group in thread
- KillTask&:(threadId&,previous&)
rem The rest are not fully tested yet 
- GetThreadIdFromOpenDoc&:(doc$,BYREF previous&)
- GetThreadIdFromAppUid&:(uid&,BYREF previous&)
- SetForeground:
- SetBackground:
- SetForegroundByThread&:(threadId&,previous&)
- SetBackgroundByThread&:(threadId&,previous&)
- GetNextWindowGroupName$:(threadId&,previous&)
- GetNextWindowId&:(threadId&,previous&)

10) Dbase.opx additions:
- DbGetFieldCount&:(dbase$,table$)
- DbGetFieldName$:(dbase$,table$,fieldNum&)
- DbGetFieldType&:(dbase$,table$,fieldNum&)

11) New Printer.opx:
	SendStringToPrinter:(string$)
	InsertString:(string$,pos&)
	SendNewParaToPrinter:
	InsertNewPara:(pos&)
	SetAlignment:(alignment%)
	InitialiseParaFormat:(Red&, Green&, Blue&, LeftMarginInTwips&, RightMarginInTwips&, IndentInTwips&,	HorizontalAlignment%, VerticalAlignment%, LineSpacingInTwips&, LineSpacingControl%, SpaceBeforeInTwips&, SpaceAfterInTwips&, KeepTogether%, KeepWithNext%, StartNewPage%, WidowOrphan%, Wrap%, BorderMarginInTwips&, DefaultTabWidthInTwips&)
	SetLocalParaFormat:
	SetGlobalParaFormat:
	RemoveSpecificParaFormat:
	SetFontName:(name$)
	SetFontHeight:(height%)
	SetFontPosition:(pos%)
	SetFontWeight:(weight%)
	SetFontPosture:(posture%)
	SetFontStrikethrough:(strikethrough%)
	SetFontUnderline:(underline%)
	SetGlobalCharFormat:
	RemoveSpecificCharFormat:
	SendBitmapToPrinter:(bitmapHandle&)
	InsertBitmap:(pos&, bitmapHandle&)
	SendScaledBitmapToPrinter:(bitmapHandle&, xScale&, yScale&)
	InsertScaledBitmap:(pos&, bitmapHandle&, xScale&, yScale&)
	SendRichTextToPrinter:(richTextAddress&)
	ResetPrinting:
	PageSetupDialog:
	PrintPreviewDialog:
	PrintRangeDialog:
	PrintDialog:

v0.40
-----
For ROM 014

(Released by Howard 24 April 1997)

Uses: Same as 039

1) Tidied OPL.IBY and changed OPXBMP.OPX to BMP.OPX

2) OPXBMP.OPX renamed to BMP.OPX





v0.39
-----
Not used in any ROM

(Released by Howard 23 April 1997)
Uses: e32=099,e32utils=012,f32=069,store=042,bafl=070,apparc=058
c32=043,esock=051,irda=053,opl1993util=016,plp=014,ealwl=054,wlddata=001
gdi=050,fntstore=039,fbserv=057,bitgdi=055,wserv=080,clock=055,cone=135
fonts=064,etext=080,form=103,pdrstore=038,printdrv=038,print=044
grid=103,dial=005,e32tools=063,gditools=033,rcomp=314,eiktools=122
eikon=177,dbms=034,oplt=028,texted=036,shell=018


1) OPLERR.H added to releasables for use by OPX developers.
2) CONST.OPH changed to use new font UIDs (for FONTS 064)
3) Lots of bugs fixed

v0.38
-----
Rom 011 - sent to some developers

1) Caption length defined to be the same as for Apparc (KApaMaxAppCaption==256)
and uses TApaAppCaption for the buffer declaration.
2) SETFLAGS and CLEARFLAGS now support:
        const KRestrictTo64K&=&0001
        const KAutoCompact&=&0002
        const KTwoDigitExponent&=&0004
        const KSendSwitchOnMessage=&010000
These consts are in CONST.OPH.
No other flags will be supported.
3) Data app docs now can be opened read-only. Details coming soon.
4) More release notes coming later.

v0.37
-----

ROM builders note: 
- sample OplEdit file added: z:\system\opl\TBARAPP
  This provides a minimal Opler1 Opl app, using command-line, all
  toolbar features including new support for latched toolbar
  buttons. Also supports CMD$(3)="C" and "O" but not yet "R")
  The sample doesn't yet support GETCMD$ to allow switch files.

As usual for samples:
- copy z:\system\opl\*.* to new folder c:\documents\opl\*.*
- open and translate DEMO or TBARAPP before programs can be run


Resource file change:
        "Icon mask missing" was missing from resource file.

Changes affecting OPL developers (manual still needs updating)

********************************************************************
NB. OPLR.DLL has swapped UIDs with OPL.APP so that OplEdit files
appear on the left of a folder sorted by type.
This means that all existing OPOs will no longer be recognised
and will need retranslation.
********************************************************************

1) TOOLBAR
   TbOffer%: name changed to TBarOffer%: in line with other public
   toolbar procedure names.

   z:\system\opl\TOOLBAR.OPH now specifies the public interface to TOOLBAR.OPO in the ROM
   as follows:
     rem Public procedures
     external TBarLink:(appLink$)
     external TBarInit:(title$,scrW%,scrH%)
     external TBarInitNonStd:(name$,scrW%,scrH%,width%)
     external TBarButt:(shortcut$,pos%,text$,state%,bit&,mask&,flags%)
     external TBarSetTitle:(name$)
     external TBarOffer%:(winId&,ptrType&,ptrX&,ptrY&)
     external TBarLatch:(comp%)
     external TBarShow:
     external TBarHide:

     rem The following are global toolbar variables usable by Opl programs
     rem or libraries: usable after toolbar initialisation:
     rem   TbWidth%      the pixel width of the toolbar
     rem   TbVis%        -1 if visible and otherwise 0
     rem   TbMenuSym%    the current 'Show toolbar' menu symbol (to be ORed with shortcut letter)

     rem Flags for toolbar buttons
     const KTbFlgCmdOnPtrDown%=$01

     rem The order and values of the following are significant so don't change without due care
     const KTbFlgLatchStart%=$12		rem start of latchable set
     const KTbFlgLatchMiddle%=$22	rem middle of latchable set
     const KTbFlgLatchEnd%=$32			rem end of latchable set
     const KTbFlgLatched%=$04			rem set for current latched item in set

   New support for latched toolbar buttons.
      A set of latchable option toolbar buttons can be specified in TBarButt:
      by setting flags% to:
        KTbFlgLatchStart%       for the first button in the latchjable set
        KTbFlgLatchMiddle%      for any middle buttons
        KTbFlgLatchEnd%         for the last button in the latchable set

      Only one button in a set is ever latched and pressing another
      button unlatches the one that was previously set.

      To latch a button down initially to represent the initial
      setting of the set, OR KTbFlgLatched% with one of the above
      settings.

      After pressing and releasing a previously unlatched button in a 
      latchable set, TOOLBAR.OPO will, as usual, call your command-handling
      procedure. If the command (such as to change view) has been successful
      set the new state of the button by calling TBarLatch:(<tbarComp>) where
      <tbarComp> is the button number to be latched. The trivial
      example below shows how a 'View1' button press, with "v" as
      shortcut, should be handled. The other latchable button in this
      rather set might be 'View2' with shortcut "w":
        proc cmdV%:
          if SetView1%:=0   rem if no error
            TBarLatch:(KView1TbarButton%) rem your const KView1TBarButton%
            CurrentView%=1
          endif
        endp

        proc cmdW%:
          if SetView2%:=0   rem if no error
            TBarLatch:(KView2TbarButton%) rem your const KView2TBarButton%
            CurrentView%=2
          endif
        endp

   New support for calling command on pointer down on toolbar button
      For TBarButt: pass flags%=KTbFlgCmdOnPtrDown% and provide a
      procedure named cmdTbDown<shortcut$>%: which could provide a
      popup menu:

        proc cmdTbDownC%:
          rem popup next to button with point specifying the top right corner of the popup
          if mPopup(ScrWid%-TbWidth%,97,KMPopupPosTopRight%,"Cancel",0,"Clear",%c)
            cmdC%: rem Do the command itself
          endif
        endp


2) dCHOICE supports an unrestricted number of items (up to memory limits).
   To extend a dCHOICE list, add a comma after the last item on the line 
   followed by "..."

   E.g. the following specifies items i1,i2,i3,i4,i5,i6:
        - dCHOICE ch%,prompt$,"i1,i2,..."
          dCHOICE ch%,"",     "i3,14,..."
          dCHOICE ch%,"",     "i5,i6"
   ch% must be the same on all the lines, otherwise an error is raised.

   This is a workaround really for a major deficiency in OPL. There's
   no time for a more elegant fix using a block construct or multiple
   string args. Anyway this looks ok.

3) Fixed bug where failure to load a module left the file open

4) Reworked the file handling keywords to be more stack efficient

5) When running an OPO, set the window group name flags to say we
   won't respond to switch files and exit messages

6) When running an app the window group name is set to match the
   caption in the ICN file if one exists for the current language,
   otherwise it is set to the .APP file name


Internal changes affecting OPL team only:

1) Converted group\MNT.CMD to standard format. Doesn't use Eikon's
   MNT any more.
2) Type-safe linkage on OPX loading. Returns 'Not supported' error
   for a bad Uid2.


v0.36
-----
(Released by Howard 2/4/97)

Uses: dbms=031 oplt=025 texted=032 opl1993util=014 eikon=173 (and eikon 173's dependencies)


1. gINFO32 rewritten - still needs documentation in manual.
2. gCLOCK now supports mode=11. See manual \oplr\group\oplman32.doc
for details. Supports same format string as used in TTime::Format().
3. dCHECKBOX chk%,prompt$ implemented.
Set live variable chk%=0 for unchecked and any other value for
checked. The dialog sets chk% to 0 if unchecked and to -1 if checked.
4. Fixed bug in PAUSE where timer was not getting deleted.
5. BEEP uses unsigned pitch to avoid a divide by zero bug for pitch==-1.

v0.35
-----
(Released by Kevin on 26 March 1997)
Uses: d32=031, oplt=024, texted=032, opl1993util=014, eikon=171 (and eikon's dependencies)

1. New TOOLBAR.OPH:
- just defines two consts for now - more in next release:
const KTbFlgCmdOnPtrDown%=1
const KTbFlgLatch%=2

See TBarButt: changes below for usage of KTbFlgCmdOnPtrDown%.
KTbFlgLatch% is not yet fully implemented


2. TOOLBAR.OPO:

- uses locale conformat clock type (gCLOCK 6) and changes the system clock
type for all apps when OPL toolbar clock tapped (using new DATE.OPX
procs: LCSetClockFormat:(format&), LCClockFormat&:())

- TBarButt: now has an extra final parameter flags%:
        TBarButt:(shortCut$,pos%,text$,state%,bit&,mask&,flags%)
        flags% has KTbFlgCmdOnPtrDown% set to call command on pen down

        If flag is set, toolbar.opo calls integer-returning command proc
        in your app with name "CmdTbDown"+shortCut$:
        So, for example, you could provide CmdTbDownP%: for a popup menu
        as shown in the Demo app in the rom.
- 

3. CONST.OPH
- lots new definitions


4. DBASE: FOLDED and COLLATED Sql SELECTIONs supported.
eg. OPEN "Name COLLATED SELECT field1,field2",A,f1%,f2$

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -