The try-catch seems to be needed because when OD first loads it calls LayoutControls and I don't think the plugins are quite initialized yet so it bombs. What I'm doing is calling ContrAppt.RefreshModuleScreenPeriod() and ContrAppt.RefreshPeriod() here.
Let me know what naming convention you want to use here. And, I only need this in the head (7.9).
Thanks.
Cheers,
Bill Starck, DDS Big Idea Software, LLC
Developer, EASy(Electronic Anesthesia System) for Open Dental
817-807-1709
TX, USA
We can't put a try-catch in that every customer is guaranteed to hit because it will slow down the load time. We need to find some other way of determining whether plugins are loaded yet.
public static Assembly AssemblyEHR;
public bool pluginsLoaded; <-------
.
.
.
private void FormOpenDental_Load(object sender, System.EventArgs e) {
.
.
Plugins.LoadAllPlugins(this);//moved up from right after optimizing tooth chart graphics. New position might cause problems.
pluginsLoaded = true; <------
.
}
NOTE: It doesn't matter whether any plugins have *actually loaded*, I just need to know that I'm past Plugins.LoadAllPlugins(this) on FormOpenDental, so if you think a different naming convention is appropriate for bool pluginsLoaded let me know.
Cheers,
Bill Starck, DDS Big Idea Software, LLC
Developer, EASy(Electronic Anesthesia System) for Open Dental
817-807-1709
TX, USA
You should be able to use the sender (FormOpenDental/this) to access ContrAppt2. Otherwise you may just need the hook inside ContrAppt. We won't use ContrAppt2 as the sender, because its not the sender. Sending ContrAppt2 was a mistake that we will correct when we move the hook.
So, can you confirm you still want me to move it to here, knowing it will have this as a sender?