home *** CD-ROM | disk | FTP | other *** search
/ Tools / WinSN5.0Ver.iso / NETSCAP.50 / WIN1998.ZIP / ns / cmd / macfe / Composer / CFontMenuAttachment.h < prev    next >
Encoding:
C/C++ Source or Header  |  1998-04-08  |  2.2 KB  |  74 lines

  1. /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
  2.  *
  3.  * The contents of this file are subject to the Netscape Public License
  4.  * Version 1.0 (the "NPL"); you may not use this file except in
  5.  * compliance with the NPL.  You may obtain a copy of the NPL at
  6.  * http://www.mozilla.org/NPL/
  7.  *
  8.  * Software distributed under the NPL is distributed on an "AS IS" basis,
  9.  * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
  10.  * for the specific language governing rights and limitations under the
  11.  * NPL.
  12.  *
  13.  * The Initial Developer of this code under the NPL is Netscape
  14.  * Communications Corporation.  Portions created by Netscape are
  15.  * Copyright (C) 1998 Netscape Communications Corporation.  All Rights
  16.  * Reserved.
  17.  */
  18.  
  19. #pragma once
  20.  
  21. #ifndef CFONTMENUATTACHMENT_H_
  22. #define CFONTMENUATTACHMENT_H_
  23.  
  24. #include <LAttachment.h>
  25. #include "CPatternButtonPopupText.h"
  26. #include "ntypes.h"    // MWContext
  27.  
  28.  
  29. class LMenu;
  30.  
  31. /***********************************************************************************
  32.  * CFontMenuAttachment
  33.  * Processes Font menu commands -- should be attached to application
  34.  * Currently, this menu is only used in the Editor and mail compose window
  35.  ***********************************************************************************/
  36. class CFontMenuAttachment: public LAttachment
  37. {
  38. public:
  39.     enum { menu_ID = 13, PERM_FONT_ITEMS = 3, cmd_ID_toSearchFor = 'FONT' };
  40.  
  41.     // ÑÑ constructors
  42.                         CFontMenuAttachment();
  43.     // ÑÑ╩events
  44.     virtual void        ExecuteSelf( MessageT inMessage, void* ioParam );
  45.  
  46.     static LMenu*        GetMenu();
  47.     static void            UpdateMenu();
  48.  
  49.     static void            RemoveMenus();
  50.     static void            InstallMenus();
  51.     
  52. protected:
  53.     static MWContext*    GetTopWindowContext();
  54.  
  55.     static LMenu*        sMenu;
  56. };
  57.  
  58.  
  59.  
  60. class CFontMenuPopup :     public CPatternButtonPopupText
  61. {
  62.     public:
  63.         enum { class_ID = 'Fpop' };
  64.         
  65.         static    void*    CreateCFontMenuPopupStream( LStream *inStream ) {return( new CFontMenuPopup (inStream ));};
  66.                         CFontMenuPopup( LStream *inStream );        //    Ñ Constructor
  67.                         ~CFontMenuPopup();                            //    Ñ Destructor
  68.  
  69.                         // Ñ drawing
  70.         void            FinishCreateSelf(void);
  71. };
  72.  
  73. #endif
  74.