You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
115 lines
4.0 KiB
115 lines
4.0 KiB
/////////////////////////////////////////////////////////////////////////////
|
|
// FILE : OutboundRules.h //
|
|
// //
|
|
// DESCRIPTION : Header file for the Fax Outbound Routing Rules Node //
|
|
// //
|
|
// AUTHOR : yossg //
|
|
// //
|
|
// HISTORY : //
|
|
// Sep 29 1999 yossg Create //
|
|
// Dec 24 1999 yossg Reogenize as node with result children list //
|
|
// Dec 30 1999 yossg create ADD/REMOVE rule //
|
|
// //
|
|
// Copyright (C) 1999 Microsoft Corporation All Rights Reserved //
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
|
|
#ifndef H_FAXOUTBOUNDROUTINGRULES_H
|
|
#define H_FAXOUTBOUNDROUTINGRULES_H
|
|
|
|
#include "snapin.h"
|
|
#include "snpnres.h"
|
|
|
|
#include "OutboundRule.h"
|
|
|
|
class CFaxOutboundRoutingNode;
|
|
class CFaxOutboundRoutingRuleNode;
|
|
|
|
class CFaxOutboundRoutingRulesNode : public CNodeWithResultChildrenList<
|
|
CFaxOutboundRoutingRulesNode,
|
|
CFaxOutboundRoutingRuleNode,
|
|
CSimpleArray<CFaxOutboundRoutingRuleNode*>,
|
|
FALSE>
|
|
{
|
|
|
|
public:
|
|
|
|
BEGIN_SNAPINCOMMAND_MAP(CFaxOutboundRoutingRuleNode, FALSE)
|
|
SNAPINCOMMAND_ENTRY(IDM_NEW_OUTRULE, OnNewRule)
|
|
END_SNAPINCOMMAND_MAP()
|
|
|
|
BEGIN_SNAPINTOOLBARID_MAP(CFaxOutboundRoutingRuleNode)
|
|
END_SNAPINTOOLBARID_MAP()
|
|
|
|
SNAPINMENUID(IDR_OUTRULES_MENU)
|
|
|
|
//
|
|
// Constructor
|
|
//
|
|
CFaxOutboundRoutingRulesNode(CSnapInItem * pParentNode, CSnapin * pComponentData) :
|
|
CNodeWithResultChildrenList<CFaxOutboundRoutingRulesNode, CFaxOutboundRoutingRuleNode, CSimpleArray<CFaxOutboundRoutingRuleNode*>, FALSE>(pParentNode, pComponentData )
|
|
{
|
|
m_dwNumOfOutboundRules = 0;
|
|
}
|
|
|
|
//
|
|
// Destructor
|
|
//
|
|
~CFaxOutboundRoutingRulesNode()
|
|
{
|
|
}
|
|
|
|
//
|
|
// get data from RPC
|
|
//
|
|
HRESULT InitRPC(PFAX_OUTBOUND_ROUTING_RULE *pFaxRulesConfig);
|
|
|
|
virtual HRESULT PopulateResultChildrenList();
|
|
|
|
virtual HRESULT InsertColumns(IHeaderCtrl *pHeaderCtrl);
|
|
|
|
virtual HRESULT SetVerbs(IConsoleVerb *pConsoleVerb);
|
|
|
|
void InitParentNode(CFaxOutboundRoutingNode *pParentNode)
|
|
{
|
|
m_pParentNode = pParentNode;
|
|
}
|
|
|
|
virtual HRESULT OnRefresh(LPARAM arg,
|
|
LPARAM param,
|
|
IComponentData *pComponentData,
|
|
IComponent * pComponent,
|
|
DATA_OBJECT_TYPES type);
|
|
|
|
HRESULT DoRefresh(CSnapInObjectRootBase *pRoot);
|
|
|
|
STDMETHOD(QueryPagesFor)(DATA_OBJECT_TYPES type)
|
|
{
|
|
if (type == CCT_SCOPE || type == CCT_RESULT)
|
|
return S_OK;
|
|
return S_FALSE;
|
|
}
|
|
|
|
HRESULT InitDisplayName();
|
|
|
|
HRESULT DeleteRule(DWORD dwAreaCode, DWORD dwCountryCode,
|
|
CFaxOutboundRoutingRuleNode *pChildNode);
|
|
|
|
HRESULT OnNewRule (bool &bHandled, CSnapInObjectRootBase *pRoot);
|
|
|
|
|
|
HRESULT OnShowContextHelp(
|
|
IDisplayHelp* pDisplayHelp, LPOLESTR helpFile);
|
|
|
|
private:
|
|
|
|
static CColumnsInfo m_ColsInfo;
|
|
|
|
DWORD m_dwNumOfOutboundRules;
|
|
|
|
CFaxOutboundRoutingNode * m_pParentNode;
|
|
};
|
|
|
|
typedef CNodeWithResultChildrenList<CFaxOutboundRoutingRulesNode, CFaxOutboundRoutingRuleNode, CSimpleArray<CFaxOutboundRoutingRuleNode*>, FALSE>
|
|
CBaseFaxOutboundRulesNode;
|
|
|
|
#endif //H_FAXOUTBOUNDROUTINGRULES_H
|