Back to home page

EIC code displayed by LXR

 
 

    


Warning, file /include/root/TGMdiFrame.h was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).

0001 // @(#)root/gui:$Id$
0002 // Author: Bertrand Bellenot   20/08/2004
0003 
0004 /*************************************************************************
0005  * Copyright (C) 1995-2004, Rene Brun and Fons Rademakers.               *
0006  * All rights reserved.                                                  *
0007  *                                                                       *
0008  * For the licensing terms see $ROOTSYS/LICENSE.                         *
0009  * For the list of contributors see $ROOTSYS/README/CREDITS.             *
0010  *************************************************************************/
0011 
0012 /**************************************************************************
0013 
0014     This file is part of TGMdi, an extension to the xclass toolkit.
0015     Copyright (C) 1998-2002 by Harald Radke, Hector Peraza.
0016 
0017     This application is free software; you can redistribute it and/or
0018     modify it under the terms of the GNU Library General Public
0019     License as published by the Free Software Foundation; either
0020     version 2 of the License, or (at your option) any later version.
0021 
0022     This application is distributed in the hope that it will be useful,
0023     but WITHOUT ANY WARRANTY; without even the implied warranty of
0024     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
0025     Library General Public License for more details.
0026 
0027     You should have received a copy of the GNU Library General Public
0028     License along with this library; if not, write to the Free
0029     Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
0030 
0031 **************************************************************************/
0032 
0033 #ifndef ROOT_TGMdiFrame
0034 #define ROOT_TGMdiFrame
0035 
0036 #include "TGFrame.h"
0037 
0038 class TGPicture;
0039 class TGMdiMainFrame;
0040 class TGMdiDecorFrame;
0041 
0042 class TGMdiFrame : public TGCompositeFrame {
0043 
0044 friend class TGMdiMainFrame;
0045 friend class TGMdiDecorFrame;
0046 
0047 protected:
0048    enum { kDontCallClose = BIT(14) };
0049 
0050    TGMdiMainFrame  *fMain;       ///< pointer to the MDI main frame
0051    ULong_t          fMdiHints;   ///< MDI hints, also used to identify titlebar buttons
0052 
0053    TString GetMdiHintsString() const;
0054 
0055 public:
0056    TGMdiFrame(TGMdiMainFrame *main, Int_t w, Int_t h,
0057               UInt_t options = 0,
0058               Pixel_t back = GetDefaultFrameBackground());
0059    ~TGMdiFrame() override;
0060 
0061    void              Move(Int_t x, Int_t y) override;
0062    virtual Bool_t    CloseWindow();     //*SIGNAL*
0063    virtual Bool_t    Help() { return kFALSE; }
0064 
0065    virtual void      SetMdiHints(ULong_t mdihints);
0066    ULong_t           GetMdiHints() const { return fMdiHints; }
0067 
0068    void              DontCallClose();
0069    void              SetWindowName(const char *name) override;
0070    void              SetWindowIcon(const TGPicture *pic);
0071    const char       *GetWindowName();
0072    const TGPicture  *GetWindowIcon();
0073 
0074    void              SavePrimitive(std::ostream &out, Option_t *option = "") override;
0075 
0076    ClassDefOverride(TGMdiFrame, 0) // MDI Frame
0077 };
0078 
0079 #endif