21.6 Customizing Individual Windows
Sep/26/2008
Most of
the main windows in Tradepoint such as the Leads and Customer windows can be
extended to add additional functionality. To do so you will need to implement
the I(XXX)WindowConfig where (XXX) is the name of the window. For instance:
ICustomerWindowConfig - In this example, the
Customer Window can be overridden with its Interface.
RemoveTabs: This method will allow you
to return the tabs that you wish to remove. You can XOR the items to remove
multiple tabs within the window.
QuoteEdit/OrderEdit/InvoiceEdit/IncidentEdit:
These 3 methods allow you to override the edit window for each of these and
provide your own as may be necessary. Return null if you do not wish to override
the default. Note: Incident refers to a call log.
QuoteNew/OrderNew/InvoiceNew/IncidentNew:
These 3 methods allow you to override the creation process of each and provide
your own screen as necessary. Return null if you do not wish to override the
default.
AddButton: This method allows you to
intercept all of the various containers within the tab strip for the current
window and choose which container you wish to add your button to. The preferred method of finding the
right one is to set a break point and review the various different names of the
containers until you find the one you want. You can then use an if statement to
add your button if applicable.
Return null if you do not wish to add a button to the current container.
The
easiest way to add a button is to pass the information as applicable for all of
the items, but also to create a new form, and add a Darwin.Wizard control to
that form. You can add this to your toolbar in Visual Studio by right clicking
and choosing "Add Items" and browsing for the Darwin.Controls.dll file and
selecting that custom control for use. You can then put your controls directly
on one or more of the panels and pass the panel back to the AddButton
method.
Important
Note: Tradepoint makes heavy use of overriden controls from the base Dev Express
toolkit. To add these overriden controls, please "Add Items" for your toolbar
and browse for the Tradepoint.Windows.Dll and add the various controls as
applicable. More detail can be found below.
LoadPage: The load page method is
called when your custom page is selected. This allows you to do data binding and
more.
ValidatePage: This is called
immediately before any save operations on your custom page, and allows you to
validate, return any errors, and cancel the update process until such time as
all of the errors are resolved. The e.Cancel property is how you would cancel
the event.
UpdatePage: This is called by Tradepoint
to allow you to save your custom page data to the data source. You can return if
the item was successful or not using the e.Sucessful property. It is up to you
to persist and save your data back to the data source.
Note: Do not implement IContactWindowConfig
directly, it is an inherited class used for the specific windows.
Each
screen has its own interface that can be used in this manner to customize the
screen. The contents of an
existing screen are customized at this time so, you will need to remove that
tab, and then add your own with the customized layout. Version 3 of Tradepoint
for Windows will include complete customization functionality so that you can
provide default layouts for every screen with the information placed wherever
you wish within the window.