From Anthony: Let’s Talk API 2.0, Part 2

They did it! Xojo reverted the event renaming in API 2.0 for Release 2019R2.1!

Continue reading →

From Anthony: Animating Xojo, Part 4

In Part 1 we covered the history of animating UI effects in Xojo. Part 2 we dug in to linear interpolation. Part 3 saw the addition of support for concurrent animations and color changes. In Part 4 we’ll cover easing, which can make the most drab User Interface interactions beautiful.

Continue reading →

From Anthony: Animating Xojo, Part 3

In Part 1 we covered the basic history of animating in Xojo using pre-calculated chunks to modify the width of our component. In Part 2 we went a bit further by using linear interpolation(lerp) to calculate our current width at each step of the animation process, and setup for concurrent animation.

In this part we’ll be covering a few different things, chiefly concurrent animations. But that’s not all, as I’ve added a lerpColor function to show you how to animate color changes.

Continue reading →

From Anthony: Animating Xojo Part 2

Continuing with what we previously learned, this version introduces the use of linear interpolation to calculate the current stage of the animation at each step, plus switching to a Dictionary object for variable storage to setup for future parts in this series.

Continue reading →

From Anthony: Xojo IDE Scripting

Background

Today I had the need to develop a method by which GraffitiSuite users could determine what version of GraffitiSuite a particular product was taken from. Normally I go through the rigmarole of telling them to follow these steps:

  1. Open the demo project
  2. Expand the App object
  3. Expand the Notes section
  4. Select “ChangeLog”
  5. The top line is the version

But a customer pointed out that this can be a fairly big ask when GraffitiSuite is so expansive. Coupled with that, as I thought more about it, once you take a product from the demo and add it to your project you really have no way of discerning what version that particular product is! So I needed something better. Something that stayed with each product, regardless of what project it was in. Enter IDE Scripting.

My plan was to add a Constant or Note for each part of GraffitiSuite that can be easily updated. Browsing through the documentation I saw a lot of listed caveats.

Continue reading →