1 /* -*- Mode: C; tab-width: 4 -*- 2 * 3 * Copyright (c) 2002-2004 Apple Computer, Inc. All rights reserved. 4 * 5 * Licensed under the Apache License, Version 2.0 (the "License"); 6 * you may not use this file except in compliance with the License. 7 * You may obtain a copy of the License at 8 * 9 * http://www.apache.org/licenses/LICENSE-2.0 10 * 11 * Unless required by applicable law or agreed to in writing, software 12 * distributed under the License is distributed on an "AS IS" BASIS, 13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 * See the License for the specific language governing permissions and 15 * limitations under the License. 16 */ 17 18 19 #pragma once 20 21 #include "stdafx.h" 22 23 //--------------------------------------------------------------------------------------------------------------------------- 24 // CCPApplet 25 //--------------------------------------------------------------------------------------------------------------------------- 26 27 class CCPApplet : public CCmdTarget 28 { 29 public: 30 31 CCPApplet( UINT nResourceID, UINT nDescriptionID, CRuntimeClass* pUIClass ); 32 33 virtual ~CCPApplet(); 34 35 protected: 36 37 virtual LRESULT OnRun(CWnd* pParentWnd); 38 virtual LRESULT OnStartParms(CWnd* pParentWnd, LPCTSTR lpszExtra); 39 virtual LRESULT OnInquire(CPLINFO* pInfo); 40 virtual LRESULT OnNewInquire(NEWCPLINFO* pInfo); 41 virtual LRESULT OnSelect(); 42 virtual LRESULT OnStop(); 43 44 CRuntimeClass * m_uiClass; 45 UINT m_resourceId; 46 UINT m_descId; 47 CString m_name; 48 int m_pageNumber; 49 50 friend class CCPApp; 51 52 DECLARE_DYNAMIC(CCPApplet); 53 }; 54 55 56 //--------------------------------------------------------------------------------------------------------------------------- 57 // CCPApp 58 //--------------------------------------------------------------------------------------------------------------------------- 59 60 class CCPApp : public CWinApp 61 { 62 public: 63 64 CCPApp(); 65 virtual ~CCPApp(); 66 67 void AddApplet( CCPApplet* pApplet ); 68 69 protected: 70 71 CList<CCPApplet*, CCPApplet*&> m_applets; 72 73 friend LONG APIENTRY 74 CPlApplet(HWND hWndCPl, UINT uMsg, LONG lParam1, LONG lParam2); 75 76 virtual LRESULT OnCplMsg(HWND hWndCPl, UINT msg, LPARAM lp1, LPARAM lp2); 77 virtual LRESULT OnInit(); 78 virtual LRESULT OnExit(); 79 80 DECLARE_DYNAMIC(CCPApp); 81 }; 82 83 84 CCPApp * GetControlPanelApp(); 85