Example: /MacCG/CoreGraphics DirectDisplay/CGScreenRefreshEvent Test

Online Documentation   -   Statistics   -   FAQ   -   Plugin Parts (All, Dependencies)   -   Class hierarchy

New in Version 22.2 22.3 22.4 22.5 23.0 23.1 23.2 23.3 23.4 23.5 24.0 24.1

The list of the   topics,   classes,   interfaces,   controls,   modules,   global methods by category,   global methods by name,   screenshots,   licenses   and   examples.

Platforms to show: All Mac Windows Linux Cross-Platform

/MacCG/CoreGraphics DirectDisplay/CGScreenRefreshEvent Test


Required plugins for this example: MBS MacCG Plugin

You find this example project in your Plugins Download as a Xojo project file within the examples folder: /MacCG/CoreGraphics DirectDisplay/CGScreenRefreshEvent Test

This example is the version from Mon, 14th Feb 2016.

Project "CGScreenRefreshEvent Test.xojo_binary_project"
Class App Inherits Application
Const kEditClear = "&Löschen"
Const kFileQuit = "Beenden"
Const kFileQuitShortcut = ""
End Class
Class Window1 Inherits Window
Control List Inherits Listbox
ControlInstance List Inherits Listbox
End Control
EventHandler Sub Open() m = new MyCGScreenRefreshEvent m.list = list u = new MyCGScreenUpdateMoveEvent u.list = list End EventHandler
Property m As MyCGScreenRefreshEvent
Property u As MyCGScreenUpdateMoveEvent
End Class
MenuBar MenuBar1
MenuItem FileMenu = "&Ablage"
MenuItem FileQuit = "#App.kFileQuit"
MenuItem EditMenu = "&Bearbeiten"
MenuItem EditUndo = "&Rückgängig"
MenuItem UntitledMenu1 = "-"
MenuItem EditCut = "&Ausschneiden"
MenuItem EditCopy = "&Kopieren"
MenuItem EditPaste = "&Einfügen"
MenuItem EditClear = "#App.kEditClear"
MenuItem UntitledMenu0 = "-"
MenuItem EditSelectAll = "&Alles auswählen"
End MenuBar
Class MyCGScreenRefreshEvent Inherits CGScreenRefreshEventMBS
EventHandler Sub ScreenRefresh(rectCount as Integer, rects() as CGRectMBS) dim n as integer = 0 // filter our own window. dim c as integer = 0 dim wl as integer = window1.Left dim wt as integer = window1.top dim ww as integer = window1.Width dim wh as integer = window1.Height for each r as CGRectMBS in rects if r.Left >= wl and r.top >= wt then if r.Left + r.Width <= wl + ww and r.top + r.Height <= wh + wt then c = c + 1 end if end if next if c = rectCount then return // show others, e.g. seconds in menubar list.InsertRow n, "ScreenRefresh "+str(rectCount)+" rectangles" for each r as CGRectMBS in rects n = n + 1 list.InsertRow n, " pos: "+str(r.Left)+"/"+str(r.top)+", width: "+str(r.Width)+", height: "+str(r.Height) next End EventHandler
Property list As Listbox
End Class
Class MyCGScreenUpdateMoveEvent Inherits CGScreenUpdateMoveEventMBS
EventHandler Sub ScreenMove(deltaX as Integer, deltaY as Integer, rectCount as Integer, rects() as CGRectMBS) dim n as integer = 0 list.InsertRow n, "ScreenMove "+str(deltaX)+"/"+str(deltaY)+" with "+str(rectCount)+" rectangles" for each r as CGRectMBS in rects n = n + 1 list.InsertRow n, " pos: "+str(r.Left)+"/"+str(r.top)+", width: "+str(r.Width)+", height: "+str(r.Height) next End EventHandler
Property list As Listbox
End Class
End Project

See also:

The items on this page are in the following plugins: MBS MacCG Plugin.


💬 Ask a question or report a problem