This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
xojoapi2 [2019/10/10 19:16]
xojoapi2 [2019/11/22 13:45] (current)
Line 1: Line 1:
 ==== API 2.0 Support ==== ==== API 2.0 Support ====
 +=== Do Not Use ===
 +Xojo 2019R2 should be avoided. Please use Xojo 2019R2.1
 === Background === === Background ===
-As of Xojo 2019R2, ​a lot of changes were made that have been branded ​"API 2.0"​. ​This release, while making many desirable changes ​to the framework and languagealso creates ​plethora of issues for GraffitiSuiteFor the time being, it is recommended ​that all users continue to implement GraffitiSuite classes and functionality in 2019R1.1 or before and use 2019R2 for testing ​and compilation.+With the release ​of Xojo 2019R2.1GraffitiSuite should ​"just work" ​in most projectsIf you run in to specific issuesplease open [[https://​support.graffitisuite.com/​|ticket]] so that we may investigate ​and correct.
 === Transition Timeline === === Transition Timeline ===
-While we have no concrete date set for transitioning GraffitiSuite Desktop from API 1.0 to API 2.0, there will be a wait of at least one major Xojo release before this work will even begin. This is to allow time for Xojo to work out any subsequently discovered issues, or perhaps alleviate some of the issues we're facing in the conversion process. That means, tentatively,​ work will not begin on a full transition ​until at least 2020R1, but more likely 2020R2. This is in keeping with our plans when the "New Framework"​ was released ​few years ago, and this wait proved overwhelmingly beneficial. +As necessary, any code that is worked on will be transitioned ​to API 2.0. This will not be an immediate move as there is far too much code to tackle ​to make the transition in a single sweeping motion ​and appropriately retest everything.
- +
-=== Support === +
-GraffitiSuite is not being abandoned. All issues with API 2.0 will be addressed, and support will continue to be provided via the [[https://​support.graffitisuite.com/​|ticketing system]]. +
- +
-=== Events === +
-Adding new API 2.0 events to your control instances can cause errors and unexpected behavior. In particular, adding ''​Opening''​ and ''​Closing''​ events are the most problematic as they may cause controls to skip their initialization code or leave objects in memory that would otherwise have been disposed of. Below is a sample list of new API 2.0 events you should avoid with GraffitiSuite components until such time as GraffitiSuite is fully API 2.0 compatible:​ +
- +
-^ Old Event      ^ New Event       ^ +
-| Action | Pressed | +
-| Activate | Activated | +
-| Open | Opening | +
-| CellClick | CellPressed | +
-| CellTextChange | CellTextChanged | +
-| CollapseRow | RowCollapsed | +
-| Change | SelectionChanged | +
-| Close | Closing | +
-| Deactivated | Activated | +
-| ExpandRow | RowExpanded |+
 === New Classes === === New Classes ===
Line 37: Line 22:
   return new DateTime( d.Year, d.Month, d.Day, d.Hour, d.Minute, d.Second, d.GMTOffset * 3600 )   return new DateTime( d.Year, d.Month, d.Day, d.Hour, d.Minute, d.Second, d.GMTOffset * 3600 )
 End Function</​code>​ End Function</​code>​