http://www.dbi-tech.com/DeveloperBulletins/June08.htm


DBI Developer Bulletin June 2008

We're closing in on the end of the second quarter of 2008 and the outlook is still strong. Increasing development activity both in .NET and COM-based IDE's supports our latest product releases and confirms the new product upgrades and releases we have on tap for the balance of the year. This month our tech tips speak to development techniques for .NET and ActiveX using ctMDay and dbiDayView.


In this issue...
*
  June '08 Special Offer  -  Buy One get One FREE
TechTips  -   ctMDay all day ellipse click,  .NET combo box by enumerator and Intellisense for Access2003/2007 ActiveX
Released  -  dbiExplorerBar 2.0 for .NET 
Released  -  Calendar Tools 2.5 for .NET
*  Released  -  dbiList 1.0 for .NET
*  Released  -  Solutions Schedule 2.0 for .NET

DBI Product Info Quick Links

=================================================================

 

June '08 Special Offer:
   

Purchase a DBI product license* and receive a second license of equal or lesser value FREE

 
for example:
     a)    a purchase of Solutions::Schedule 2.0 for .NET - Standard ($989) and receive a second license FREE

     b)    purchase Solutions::Schedule 8.0  (COM)  and get Component Toolbox 7.0  FREE

 

Get the Details at:
https://www.dbi-tech.com/Special_Offers.asp

( Offer ends June 30,  2008, *special offer not combinable with other discounts or specials, upgrades, enterprise licenses and source code products are excluded )

 

=================================================================

Tech Tip  – ctMday all day ellipse click, .NET combo box by enumerator and Intellisense in MSAccess 2003/2007 ActiveX

 

Hello and welcome to this week’s DBI Tech Tips, since we are having a two-for promotion we thought we’d toss in a three-for tip…

 

For the COM developers out there, we have been asked how to trap the ellipse click in ctMday. By itself, the control just shows the ellipse to indicate that there are more all day appointments than are visible in the column. To that end, it was never intended to be clicked on, we always thought a whiteboard type approach with a listbox was within the domain of the developers. We’ve had some requests wherein people want to throw a dialog with a listbox or a custom tree view for that particular area when the ellipse is clicked.

 

 

So we put some ideas to the task and discovered that we can use the internal drag/drop methods/events to capture when the all day area has been clicked, but not on an appointment. Here is the code in vb6…

 

Dim booIsDragDrop As Boolean 'Used to indicate wether or not we are in true drag/drop mode.

Dim curX As Integer

Dim curY As Integer

 

Private Sub ctMDay1_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)

booIsDragDrop = False 'Set the booIsDragDrop to false, in case we are using actual drag/drop code

Me.ctMDay1.DragDrop x / Screen.TwipsPerPixelX, y / Screen.TwipsPerPixelY 'Fire the drag/drop event to get the current position in the control

End Sub

 

Private Sub ctMDay1_MouseMove(Button As Integer, Shift As Integer, x As Single, y As Single)

'Use the mousemove to capture the current x/y of the mouse

'for use in the appoinmentat function in DropList

curX = x / Screen.TwipsPerPixelX

curY = y / Screen.TwipsPerPixelY

End Sub

 

Private Sub ctMDay1_DropList(ByVal nIndex As Integer, ByVal nTime As Integer, ByVal nColumn As Integer)

If booIsDragDrop = False Then

  Me.Label1.Caption = CStr(nIndex)

    If nIndex = -1 And Me.ctMDay1.AppointmentAt(curX, curY) = 0 Then

        'Enter code here to throw a listbox or custom dialog listing all the allday appts.

        MsgBox "This is an ellipse or a blank area of allday for col:" & CStr(nColumn)

    End If

Else

    'Do our actual drag/drop code

End If

booIsDragDrop = True 'Set the default in case an actual drag/drop fires.

End Sub

 

And for our .NET users we came across an interesting use of the enum class for setting default items in a combo box. Basically you use the gettype and getValues methods inherited by all enums to bind the enum to the combo box. So with two lines of code, we can bind our dbi.enumFillType to a combobox and set the enum on a control as the value in the combo box changes. Here is a quick sample…

 

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

        Me.comboFillType.DataSource = System.Enum.GetValues(GetType(Dbi.enumFillType))

    End Sub

 

    Private Sub comboFillType_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles comboFillType.SelectedIndexChanged

        Me.dbiLabel1.FillType = Me.comboFillType.SelectedValue

    End Sub

 

 

Finally, we have always been troubled with the lack of intellisense surfaced from the OLE container in Access/VBA. After some digging and playing with early binding, there is a fairly straightforward way to surface the intellisense for our ActiveX controls... We basically declare a public variable that is based on our ActiveX class instead of a generic object. Then in the form load we set those variables equal to our actual controls. After that, simply reference the declared variables and you will see all the lovely properties/methods and function parameters for the controls. Here is a snippet from an Access Form. It assumes two ctList controls on the form (ctList1 and ctList3) and a standard command button (Command2).

Keep in mind that there may be repercussions to using early binding in your MDE/ACCDE files, see MSDN for more information on MSAccess and early vs. late binding.

Option Compare Database

Public ListBind1 As
ctList
Public ListBind2 As
ctList

Private Sub
Form_Load()
     Set
ListBind1 = ctList1.Object
     Set
ListBind2 = ctList3.Object
End Sub

Private Sub
ctList1_FirstDraw()
     ListBind1.AddItem ("The First One")
     ListBind2.AddItem ("The Second List")
End Sub

Private Sub ctList1_ItemClick(ByVal nIndex As Long, ByVal nColumn As Integer)
     MsgBox (ListBind1.ListText(nIndex))
End Sub

Private Sub Command2_Click()
     ListBind1.AddItem ("Intellitest List 1")
     ListBind2.AddItem ("Intellitest List 2")
End Sub

 

As always, take care and have a great day!

 

=================================================================

Released
=================================================================
 

dbiExplorerBar 2.0 for .NET  -  The Highlights:

*  Designed for Visual Studio 2005, compatible with Visual Studio 2008

*  Sample Applications included - Smart Client, C# and VB.NET.
*  ExplorerBar, OutlookBar, NavigationBar, TaskBar, ToolBar ...all in one control

 
Features include                          
* Background Image * Multi-Column
* Context Menu Strip * Smooth Scrolling
* Custom Arrow Button Images * Stock Vista & XP Styles:
* Multi-Column Drag-n-Drop      horizontal edge
* Host Lists & Panels      vertical edge
* Host other controls      Outlook
* Gradient background styles      Windows Explorer
* Independent List Header Image      Explorer - ToolBar
* Independent List Item Image      SideBar - Outlook
* Individual List Item Fill Types * Standard item collections
      (global or per list item) * XML presentation and data support
* List Item word wrapping ** Royalty Free RunTime Distribution

*** Prices starting at  $129 per developer

 

=================================================================


Calendar Tools 2.5 for .NET

This update includes a couple of minor component repairs and most significantly the entire Calendar Tools for .NET 2.0 Library has been recompiled under the .NET Framework V2.0. This is an interim update for licensed users of Calendar Tools 2.0 for .NET or Studio Controls R3.

For further details:

http://www.dbi-tech.com/updates_calendar_tools_2_NET.asp#CT25Update
 

=================================================================

dbiList 1.0 for .NET  -  The Highlights:

*  Designed for Visual Studio 2005, compatible with Visual Studio 2008.

*  Sample Applications included - Smart Client, C# and VB.NET.
*  ListView and TreeView in one control

When a hardcore reporting toolkit is too much dbiList is the number one choice for quick, stylized canned report generation. dbiList is the ideal control for detailed data presentations offering end-user multi column sorting, node item drag and drop, search and filtering features. With dbiList's integrated tree view - full hierarchical data presentations and drill down capabilities are only a mouse click away. 

 

Presentation Highlights

* Body Text * Headers/Footers/
* Node/cell images * Zoom/Shrink
* Custom Node Text * Body Column Alignment
* Word wrapping * Independent Header List Image
* Per node formatting * Independent List Item Image
* Alternating row colors * Individual List Item Fill Types
* Printing * Background Image
   

Data Interaction Highlights

 

User Interaction Highlights

* Drag & Drop List  items * Node Navigation Methods      * Excel Style Resizing
* XML data read and write * Soft-seek search      * Incremental Search
* Hierarchical Data support * Node Item Tag property      * RunTime Editing
* Node/multi-column Sorting * Drag & Drop Node items      * Cell Tips
* Multi-Node Select      
       
To view additional new features and receive further information more...

 

=================================================================

 

Solutions Schedule 2.0 for .NET  -  The Highlights:

*  Designed for Visual Studio 2005, compatible with Visual Studio 2008.

*  Sample Applications included - Smart Client, C# and VB.NET.

The following new feature highlights are in addition to the new Windows Vista styles, extended Windows XP styles and the features found in the Standard Edtion also highlighted below:
 

* User-Drawn TimeBars provide developers an opportunity to take over the painting of any or all time bars in the dbiSchedule control.
* Scroll to Date Time method - an effective means for programmatically navigating to specific points in time on a schedule.
* TimeBar Linking styles - Start to Start, Start to End, End to Start and End to End with Standard, Reciprocal or Direct Links. Link lines can also be given unique colours enhancing visual presentation of TimeBar relationships.


Standard Edition new key feature highlights:

* ListView & TreeView in one - The list object in the dbiSchedule control acts as both a List View and a Tree View.
* Copy TimeBar - which when invoked provides a keyboard short-cut with a click and drag action to copy one or more TimeBars simultaneously.
* TimeBar Activity display - a timebar within a timebar ideally suited for visually presenting the percentage of completion of an activity.

* TimeBar Split Edit - indicated by the scissors mouse cursor, this edit mode effectively splits a TimeBar into two sections at the cursor position.    

To view additional new features and receive
further information on new licensing options and upgrades more...

 

=========================================

Quick links:
 

dbiExplorerBar 2.0 for .NET - Quick, stylized multi-bar presentation

http://www.dbi-tech.com/product_page_dbiExplorerBar.asp 

dbiList 1.0 for .NET - reporting made easy

http://www.dbi-tech.com/product_page_dbiList.asp
 

Solutions::Schedule 2.0 for .NET -
http://www.dbi-tech.com/product_page_SolutionsSchedule_DotNet.asp 

Component Toolbox .NET v2.0 -
http://www.dbi-tech.com/Product_Page_Component_Toolbox_NET.asp

Solutions::Schedule 8.0 (COM) -
http://www.dbi-tech.com/Product_Page_Solutions_Schedule.htm 

Studio Controls R3 (.NET & COM) -
http://www.dbi-tech.com/product_page_Studio_Controls.asp


Component ToolBox 7.0 (COM) -
http://www.dbi-tech.com/product_page_Component_Toolbox.asp

Calendar Tools 2.0 for .NET -
http://www.dbi-tech.com/product_page_Calendar_Tools_DotNet.asp

Calendar Tools 3.0 (COM) -
http://www.dbi-tech.com/product_page_Calendar_Tools.asp

Solutions::PIM Professional 3.0 (COM) -
http://www.dbi-tech.com/Product_Page_Solutions_PIM.asp

Staff-Scheduler Source Code -
http://www.dbi-tech.com/Product_Page_Staff_Scheduler_Source_Code.asp

Extractor 7.2 SDK - Web content summarization in real time
http://www.extractor.com  |  http://www.ExtractorLive.com

=========================================
=========================================
          HAVE A GREAT PROGRAMMING DAY!
=========================================
=========================================

Contact:
www.dbi-tech.com  | www.extractor.com  | www.staff-scheduler.com  | DBI Sales
 800.670.8045 | 204.985.5770