{"id":1327,"date":"2022-04-16T14:54:40","date_gmt":"2022-04-16T20:54:40","guid":{"rendered":"https:\/\/www.great-white-software.com\/blog\/?p=1327"},"modified":"2022-04-16T14:54:40","modified_gmt":"2022-04-16T20:54:40","slug":"xojoscript","status":"publish","type":"post","link":"https:\/\/www.great-white-software.com\/blog\/2022\/04\/16\/xojoscript\/","title":{"rendered":"XojoScript"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">An interesting question posed on TOF<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>is there any way to inject code into a control\u2019s events at runtime?<br>Or, is there a way to create a function or sub procedure and create its methods, parameters, and insert code at runtime?<\/p><\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">The consensus is, to alter compiled code &#8211; no. Which I agree with.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The suggestion was to investigate Xojoscript &#8211; which I also agree with.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">And with careful planning and configuration you CAN make controls that can actually have their &#8220;event handlers&#8221; altered at runtime.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Here&#8217;s a very <a href=\"http:\/\/great-white-software.com\/miscellaneous\/xojo_script_control.xojo_binary_project\">rudimentary sample<\/a> that might spark some imagination &amp; use<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>An interesting question posed on TOF is there any way to inject code into a control\u2019s events at runtime?Or, is there a way to create a function or sub procedure and create its methods, parameters, and insert code at runtime? The consensus is, to alter compiled code &#8211; no. Which I agree with. The suggestion &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/www.great-white-software.com\/blog\/2022\/04\/16\/xojoscript\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;XojoScript&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_post_was_ever_published":false},"categories":[1],"tags":[],"class_list":["post-1327","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/www.great-white-software.com\/blog\/wp-json\/wp\/v2\/posts\/1327","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.great-white-software.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.great-white-software.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.great-white-software.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.great-white-software.com\/blog\/wp-json\/wp\/v2\/comments?post=1327"}],"version-history":[{"count":1,"href":"https:\/\/www.great-white-software.com\/blog\/wp-json\/wp\/v2\/posts\/1327\/revisions"}],"predecessor-version":[{"id":1328,"href":"https:\/\/www.great-white-software.com\/blog\/wp-json\/wp\/v2\/posts\/1327\/revisions\/1328"}],"wp:attachment":[{"href":"https:\/\/www.great-white-software.com\/blog\/wp-json\/wp\/v2\/media?parent=1327"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.great-white-software.com\/blog\/wp-json\/wp\/v2\/categories?post=1327"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.great-white-software.com\/blog\/wp-json\/wp\/v2\/tags?post=1327"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}