Create and manage categories in OpenVista CIS. Removing a category will not remove content.
Loading...
OpenVista Clinical Information System (CIS) is a cross platform frontend for OpenVista Server based on C# and Gtk# / GTK. CIS runs on the MS and Mono .NET frameworks. It is based on the design of the VA's Computerized Patient Record System (CPRS) and includes image viewing and other commercial enhancements.
Quick Links
We've packaged and uploaded a new release candidate (RC2, a.k.a. 0.9.96) that includes a number of bugfixes that have been sitting on our code repository. The packaged release should make it easier for end users to download and install. You can grab the new release here.
Here's a list of the changes since the previous release:
Thanks to everyone who tested the previous RC!
One of the features of OpenVista CIS is that it is extensible. Without modifying the core of CIS, you can drop in additional functionality, such as new application tabs, new image format rendering support, new preferences tabs, etc.
In order to make OpenVista CIS extensible, it uses Mono.Addins for a plugin system. This allows developers to dynamically add more functionality to CIS without having to change its internals. Mono.Addins allows developers to specify "extension points" and then inspect and load all extensions that attach to that extension point. Here is a simple example showing one of the CIS extension points, and a simple extension that implements it.
Let's look at one of the core UI extension points in CIS, the IApplicationTab. This extension point is used to provide tabs visible in the main window of CIS. Here is the relevant code from the definition of that extension point interface:
using Gtk;
[Mono.Addins.TypeExtensionPoint ("/Interface/ApplicationTab")]
public interface IApplicationTab
{
Widget LabelWidget {
get;
}
Widget Widget {
get;
}
.
.
.
}
This extension node is found in the Medsphere.OpenVista.Core.UI.dll assembly, and must define an "AddinRoot" in order to let this extension point be used. The following is from the AssemblyInfo.cs file in that assembly:
using Mono.Addins;
[assembly:AddinRoot ("Medsphere.OpenVista.Core.UI", "1.0")]
We are going to create a new assembly that contains our application tab extension. We need to specify both our addins dependencies, as well as advertise it the addin itself, in the AssemblyInfo.cs file:
using Mono.Addins;
[assembly: Addin]
[assembly: AddinDependency ("Medsphere.OpenVista.Core.UI", "1.0")]
Next we will define our simple hello world extension in HelloWorldSheet.cs:
using System;
using Gtk;
using Medsphere.OpenVista.Core.UI;
[Mono.Addins.Extension ("/Interface/ApplicationTab")]
public class HelloWorldSheet : IApplicationTab
{
public Widget LabelWidget {
get { return _label; }
}
public Widget Widget {
get { return _widget; }
}
.
.
.
public HelloWorldSheet ()
{
_label = new Label ("Hello\nWorld");
_widget = new Label ("Hello World!");
}
Label _label, _widget;
}
We can now compile our addin with the following command line (of course, this could just as easily be done in Visual Studio, MonoDevelop, etc):
gmcs -r:Mono.Addins.dll -r:Medsphere.OpenVista.Core.UI.dll -pkg:gtk-sharp-2.0 \
-t:library -out:Medsphere.OpenVista.CIS.Demo.dll HelloWorldSheet.cs AssemblyInfo.cs
Now when we run CIS, we see that our hello world application tab has been automatically loaded:
For further reading on Mono.Addins, check out the Mono.Addins page on http://www.mono-project.com/. If you want to get started on extending CIS, grab the CIS source code! The full source code for the simple CIS tab plugin is attached to this document, so you can see the full details.
This instructions are the same instructions that are in the INSTALL file in our releases.
Prerequisite:
Download the latest release for OpenVistaCIS from http://medsphere.org/download/project/openvista-cis
Unzip it.
From VS .NET 2005, open the file OpenVista2k5.sln contained in the top level folder that the extraction process of the zip file created.
A few warning dialogs about the project location not being trusted will appear, just check the option of not showing the message again and click ok.
Right click the OpenVista2k5 solution and select Properties.
Click "Startup Project" from the left tree view.
Click the "Single startup project" radio button, and then change the selection in the combo to be OpenVistaCIS2k5.
Next, click the "Configuration Properties" item from the left tree view.
Uncheck the Build boxes next to Medsphere.OpenVista.Core.Test2k5, Medsphere.OpenVista.Shared.Test2k5, and OpenVistaCIS.Test2k5 to indicate that they should not be built. Click Ok.
Building:
You should finally be able to build the solution by clicking Build -> Build Solution from the menu bar or pressing F6.
Medsphere's OpenVistaCIS development team is happy and proud to announce OpenVistaCIS 1.0 Release Candidate 1.
Countless hours were spent to make this release happen by my team members Albert Gnandt, Andy Pardue, Bill Gibbons, Jon Tai, Peter Johanson, and our previous team members and friends Anthony Taranto, Brad Taylor, and Cody Russell; also kudos to our QA department's members Evangeline Nunez, Janet Michaels, Karthick Krishnan, Karuna Dantuluri, Kristina Borja, and Lynne Mundi; our documentation writer Kathy Steele; and project manager Fay Struble.
Some of the highlights for this release are:
For those users running the Windows operating system, make sure you use the latest Gtk# installer.
Novell has released a Gtk# Win32 installer for Gtk# 2.12.6, based on the installer source code released by Medsphere. This is really cool to see more work by Medsphere being integrated into the "upstream" open source communities.
The release announcement: http://lists.ximian.com/pipermail/mono-devel-list/2008-December/030125.html
I will still stress that this is not the officially supported installer or Gtk# version for Medsphere products, and we recommend not using it in a production environment.
OpenVista CIS requires a connection to an OpenVista Server instance.
If you just want to try CIS, the easiest way to get started is to connect Medsphere's OpenVista Public Demo Server.
Alternatively, you can download the OpenVista Appliance, which is a self-contained virtual machine. Inside, OpenVista CIS and OpenVista Server are already pre-configured.
Finally, if you want a more permanent setup, you can download and install OpenVista Server yourself.