// ************************************************************************ //
// WARNING                                                                    
// -------                                                                    
// The types declared in this file were generated from data read from a       
// Type Library. If this type library is explicitly or indirectly (via        
// another type library referring to this type library) re-imported, or the   
// 'Refresh' command of the Type Library Editor activated while editing the   
// Type Library, the contents of this file will be regenerated and all        
// manual modifications will be lost.                                         
// ************************************************************************ //

// C++ TLBWRTR : 1.28
// File generated on 2/14/2006 12:34:33 PM from Type Library described below.

// ************************************************************************  //
// Type Lib: c:\Program Files\Microsoft OfficeXP\Office10\MSOUTL.olb (1)
// LIBID: {00062FFF-0000-0000-C000-000000000046}
// LCID: 0
// Helpfile: c:\Program Files\Microsoft OfficeXP\Office10\VBAOL10.CHM
// HelpString: Microsoft Outlook 10.0 Object Library
// DepndLst: 
//   (1) v2.0 stdole, (C:\WINDOWS\System32\stdole2.tlb)
//   (2) v2.2 Office, (C:\Program Files\Common Files\Microsoft Shared\Office10\MSO.DLL)
// ************************************************************************ //
#ifndef   Outlook_XP_SRVRH
#define   Outlook_XP_SRVRH

#pragma option push -b -w-inl

#include <oleserver.hpp>
#include <dbolectl.hpp>
#if !defined(__UTILCLS_H)
#include <utilcls.h>
#endif
#if !defined(__UTILCLS_H_VERSION) || (__UTILCLS_H_VERSION < 0x0700)
//
// The code generated by the TLIBIMP utility or the Import|TypeLibrary 
// and Import|ActiveX feature of C++Builder rely on specific versions of
// the header file UTILCLS.H found in the INCLUDE\VCL directory. If an 
// older version of the file is detected, you probably need an update/patch.
//
#error "This file requires a newer version of the header UTILCLS.H" \
       "You need to apply an update/patch to your copy of C++Builder"
#endif
#include <olectl.h>
#include <ocidl.h>
#if !defined(_NO_VCL)
#include <stdvcl.hpp>
#endif  //   _NO_VCL
#include <ocxproxy.h>
#include "Office_XP.h"

#include "Outlook_XP.h"
namespace Outlook_xp
{

// *********************************************************************//
// HelpString: Microsoft Outlook 10.0 Object Library
// Version:    9.1
// *********************************************************************//

// SKIPPING COCLASS: SyncObject           - Lacks 'CanCreate' flag
// SKIPPING COCLASS: Explorer             - Lacks 'CanCreate' flag
// SKIPPING COCLASS: Inspector            - Lacks 'CanCreate' flag
// SKIPPING COCLASS: MailItem             - Lacks 'CanCreate' flag
// SKIPPING COCLASS: AppointmentItem      - Lacks 'CanCreate' flag
// SKIPPING COCLASS: MeetingItem          - Lacks 'CanCreate' flag
// SKIPPING COCLASS: TaskItem             - Lacks 'CanCreate' flag
// SKIPPING COCLASS: ContactItem          - Lacks 'CanCreate' flag
// SKIPPING COCLASS: DistListItem         - Lacks 'CanCreate' flag
// SKIPPING COCLASS: DocumentItem         - Lacks 'CanCreate' flag
// SKIPPING COCLASS: Explorers            - Lacks 'CanCreate' flag
// SKIPPING COCLASS: Inspectors           - Lacks 'CanCreate' flag
// SKIPPING COCLASS: Folders              - Lacks 'CanCreate' flag
// SKIPPING COCLASS: Items                - Lacks 'CanCreate' flag
// SKIPPING COCLASS: JournalItem          - Lacks 'CanCreate' flag
// SKIPPING COCLASS: NameSpace            - Lacks 'CanCreate' flag
// SKIPPING COCLASS: NoteItem             - Lacks 'CanCreate' flag
// SKIPPING COCLASS: OutlookBarGroups     - Lacks 'CanCreate' flag
// SKIPPING COCLASS: OutlookBarPane       - Lacks 'CanCreate' flag
// SKIPPING COCLASS: OutlookBarShortcuts  - Lacks 'CanCreate' flag
// SKIPPING COCLASS: PostItem             - Lacks 'CanCreate' flag
// SKIPPING COCLASS: RemoteItem           - Lacks 'CanCreate' flag
// SKIPPING COCLASS: ReportItem           - Lacks 'CanCreate' flag
// SKIPPING COCLASS: TaskRequestAcceptItem - Lacks 'CanCreate' flag
// SKIPPING COCLASS: TaskRequestDeclineItem - Lacks 'CanCreate' flag
// SKIPPING COCLASS: TaskRequestItem      - Lacks 'CanCreate' flag
// SKIPPING COCLASS: TaskRequestUpdateItem - Lacks 'CanCreate' flag
// SKIPPING COCLASS: _RecipientControl    - Configured to skip Controls
// SKIPPING COCLASS: _DocSiteControl      - Configured to skip Controls
// SKIPPING COCLASS: _DpxCtrl             - Configured to skip Controls
// SKIPPING COCLASS: _PageWrapCtrl        - Configured to skip Controls
// SKIPPING COCLASS: _InspectorCtrl       - Configured to skip Controls
// SKIPPING COCLASS: DataSourceObject     - Configured to skip Controls
// SKIPPING COCLASS: Results              - Lacks 'CanCreate' flag
// SKIPPING COCLASS: Views                - Lacks 'CanCreate' flag
// SKIPPING COCLASS: Reminder             - Lacks 'CanCreate' flag
// SKIPPING COCLASS: Reminders            - Lacks 'CanCreate' flag

// *********************************************************************//
// COM Component Proxy Class Declaration
// Component Name   : TOutlookApplication
// Help String      : 
// Default Interface: _Application
// Def. Intf. Object: _ApplicationPtr
// Def. Intf. DISP? : No
// Event   Interface: ApplicationEvents_10
// TypeFlags        : (11) AppObject CanCreate Predeclid
// *********************************************************************//
typedef void __fastcall (__closure * TOutlookApplicationItemSend)(System::TObject * Sender, 
                                                                  LPDISPATCH Item/*[in]*/, 
                                                                  VARIANT_BOOL* Cancel/*[in]*/);
typedef void __fastcall (__closure * TOutlookApplicationReminder)(System::TObject * Sender, 
                                                                  LPDISPATCH Item/*[in]*/);
typedef void __fastcall (__closure * TOutlookApplicationOptionsPagesAdd)(System::TObject * Sender, 
                                                                         Outlook_xp::PropertyPages* Pages/*[in]*/);
typedef void __fastcall (__closure * TOutlookApplicationAdvancedSearchComplete)(System::TObject * Sender, 
                                                                                Outlook_xp::Search* SearchObject/*[in]*/);
typedef void __fastcall (__closure * TOutlookApplicationAdvancedSearchStopped)(System::TObject * Sender, 
                                                                               Outlook_xp::Search* SearchObject/*[in]*/);

class PACKAGE TOutlookApplication : public Oleserver::TOleServer
{
  _ApplicationPtr m_DefaultIntf;
  _di_IUnknown __fastcall GetDunk();
public:
  __fastcall TOutlookApplication(TComponent* owner) : Oleserver::TOleServer(owner)
  {}

  _ApplicationPtr& GetDefaultInterface();
  void __fastcall InitServerData();
  void __fastcall Connect();
  void __fastcall Disconnect();
  void __fastcall BeforeDestruction();
  void __fastcall ConnectTo(_ApplicationPtr intf);

  virtual void __fastcall InvokeEvent(int DispID, Oleserver::TVariantArray& params);

  Outlook_xp::_ApplicationPtr __fastcall get_Application(void);
  Outlook_xp::OlObjectClass __fastcall get_Class(void);
  Outlook_xp::_NameSpacePtr __fastcall get_Session(void);
  LPDISPATCH      __fastcall get_Parent(void);
  Office_xp::AssistantPtr __fastcall get_Assistant(void);
  BSTR            __fastcall get_Name(void);
  BSTR            __fastcall get_Version(void);
  Office_xp::COMAddInsPtr __fastcall get_COMAddIns(void);
  Outlook_xp::_ExplorersPtr __fastcall get_Explorers(void);
  Outlook_xp::_InspectorsPtr __fastcall get_Inspectors(void);
  Office_xp::LanguageSettingsPtr __fastcall get_LanguageSettings(void);
  BSTR            __fastcall get_ProductCode(void);
  Office_xp::AnswerWizardPtr __fastcall get_AnswerWizard(void);
  Office_xp::MsoFeatureInstall __fastcall get_FeatureInstall(void);
  void            __fastcall set_FeatureInstall(Office_xp::MsoFeatureInstall FeatureInstall/*[in]*/);
  Outlook_xp::_RemindersPtr __fastcall get_Reminders(void);
  Outlook_xp::_Explorer* __fastcall ActiveExplorer(void);
  Outlook_xp::_Inspector* __fastcall ActiveInspector(void);
  LPDISPATCH      __fastcall CreateItem(Outlook_xp::OlItemType ItemType/*[in]*/);
  LPDISPATCH      __fastcall CreateItemFromTemplate(BSTR TemplatePath/*[in]*/, 
                                                    VARIANT InFolder/*[in,opt]*/= TNoParam());
  LPDISPATCH      __fastcall CreateObject(BSTR ObjectName/*[in]*/);
  Outlook_xp::_NameSpace* __fastcall GetNamespace(BSTR Type/*[in]*/);
  void            __fastcall Quit(void);
  LPDISPATCH      __fastcall ActiveWindow(void);
  LPDISPATCH      __fastcall CopyFile(BSTR FilePath/*[in]*/, BSTR DestFolderPath/*[in]*/);
  Outlook_xp::Search* __fastcall AdvancedSearch(BSTR Scope/*[in]*/, 
                                                VARIANT Filter/*[in,opt]*/= TNoParam(), 
                                                VARIANT SearchSubFolders/*[in,opt]*/= TNoParam(), 
                                                VARIANT Tag/*[in,opt]*/= TNoParam());
  VARIANT_BOOL    __fastcall IsSearchSynchronous(BSTR LookInFolders/*[in]*/);
  void            __fastcall GetNewNickNames(VARIANT* pvar/*[in]*/);
  __property Outlook_xp::_ApplicationPtr Application={ read=get_Application };
  __property Outlook_xp::OlObjectClass Class={ read=get_Class };
  __property Outlook_xp::_NameSpacePtr Session={ read=get_Session };
  __property LPDISPATCH Parent={ read=get_Parent };
  __property Office_xp::AssistantPtr Assistant={ read=get_Assistant };
  __property BSTR Name={ read=get_Name };
  __property BSTR Version={ read=get_Version };
  __property Office_xp::COMAddInsPtr COMAddIns={ read=get_COMAddIns };
  __property Outlook_xp::_ExplorersPtr Explorers={ read=get_Explorers };
  __property Outlook_xp::_InspectorsPtr Inspectors={ read=get_Inspectors };
  __property Office_xp::LanguageSettingsPtr LanguageSettings={ read=get_LanguageSettings };
  __property BSTR ProductCode={ read=get_ProductCode };
  __property Office_xp::AnswerWizardPtr AnswerWizard={ read=get_AnswerWizard };
  __property Office_xp::MsoFeatureInstall FeatureInstall={ read=get_FeatureInstall, write=set_FeatureInstall };
  __property Outlook_xp::_RemindersPtr Reminders={ read=get_Reminders };
private:
  TOutlookApplicationItemSend    FOnItemSend;
  TNotifyEvent                   FOnNewMail;
  TOutlookApplicationReminder    FOnReminder;
  TOutlookApplicationOptionsPagesAdd FOnOptionsPagesAdd;
  TNotifyEvent                   FOnStartup;
  TNotifyEvent                   FOnQuit;
  TOutlookApplicationAdvancedSearchComplete FOnAdvancedSearchComplete;
  TOutlookApplicationAdvancedSearchStopped FOnAdvancedSearchStopped;
  TNotifyEvent                   FOnMAPILogonComplete;
__published:
  __property TOutlookApplicationItemSend OnItemSend={ read=FOnItemSend, write=FOnItemSend };
  __property TNotifyEvent OnNewMail={ read=FOnNewMail, write=FOnNewMail };
  __property TOutlookApplicationReminder OnReminder={ read=FOnReminder, write=FOnReminder };
  __property TOutlookApplicationOptionsPagesAdd OnOptionsPagesAdd={ read=FOnOptionsPagesAdd, write=FOnOptionsPagesAdd };
  __property TNotifyEvent OnStartup={ read=FOnStartup, write=FOnStartup };
  __property TNotifyEvent OnQuit={ read=FOnQuit, write=FOnQuit };
  __property TOutlookApplicationAdvancedSearchComplete OnAdvancedSearchComplete={ read=FOnAdvancedSearchComplete, write=FOnAdvancedSearchComplete };
  __property TOutlookApplicationAdvancedSearchStopped OnAdvancedSearchStopped={ read=FOnAdvancedSearchStopped, write=FOnAdvancedSearchStopped };
  __property TNotifyEvent OnMAPILogonComplete={ read=FOnMAPILogonComplete, write=FOnMAPILogonComplete };
private:
  bool     FAutoQuit;
__published:
  __property bool AutoQuit = {read=FAutoQuit, write=FAutoQuit};
};

};     // namespace Outlook_xp

#if !defined(NO_IMPLICIT_NAMESPACE_USE)
using  namespace Outlook_xp;
#endif

#pragma option pop

#endif // Outlook_XP_SRVRH
