ROOT logo
// @(#)root/base:$Id$
// Author: Fons Rademakers   22/12/95

/*************************************************************************
 * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers.               *
 * All rights reserved.                                                  *
 *                                                                       *
 * For the licensing terms see $ROOTSYS/LICENSE.                         *
 * For the list of contributors see $ROOTSYS/README/CREDITS.             *
 *************************************************************************/


#ifndef ROOT_TApplicationImp
#define ROOT_TApplicationImp

//////////////////////////////////////////////////////////////////////////
//                                                                      //
// TApplicationImp                                                      //
//                                                                      //
// ABC describing GUI independent application implementation protocol.  //
//                                                                      //
//////////////////////////////////////////////////////////////////////////

#ifndef ROOT_TString
#include "TString.h"
#endif

class TGWin32Command;


class TApplicationImp {

protected:
   TString   fApplicationName;    // application name

public:
   TApplicationImp(): fApplicationName() { }
   TApplicationImp(const char *appClassName, int *argc, char **argv);
   virtual ~TApplicationImp() { }

   virtual const char *ApplicationName() const { return fApplicationName.Data(); }
   virtual void        Show() { }
   virtual void        Hide() { }
   virtual void        Iconify() { }
   virtual Bool_t      IsCmdThread() { return kTRUE; } // by default (for UNIX) ROOT is a single thread application
   virtual void        Init() { }
   virtual void        Open() { }
   virtual void        Raise() { }
   virtual void        Lower() { }
   virtual Int_t       ExecCommand(TGWin32Command *code, Bool_t synch);

   ClassDef(TApplicationImp,0)  //ABC describing application protocol
};

inline TApplicationImp::TApplicationImp(const char *appClassName, int *, char **)
  : fApplicationName(appClassName) { }
inline Int_t TApplicationImp::ExecCommand(TGWin32Command *, Bool_t) { return 0; }

#endif
 TApplicationImp.h:1
 TApplicationImp.h:2
 TApplicationImp.h:3
 TApplicationImp.h:4
 TApplicationImp.h:5
 TApplicationImp.h:6
 TApplicationImp.h:7
 TApplicationImp.h:8
 TApplicationImp.h:9
 TApplicationImp.h:10
 TApplicationImp.h:11
 TApplicationImp.h:12
 TApplicationImp.h:13
 TApplicationImp.h:14
 TApplicationImp.h:15
 TApplicationImp.h:16
 TApplicationImp.h:17
 TApplicationImp.h:18
 TApplicationImp.h:19
 TApplicationImp.h:20
 TApplicationImp.h:21
 TApplicationImp.h:22
 TApplicationImp.h:23
 TApplicationImp.h:24
 TApplicationImp.h:25
 TApplicationImp.h:26
 TApplicationImp.h:27
 TApplicationImp.h:28
 TApplicationImp.h:29
 TApplicationImp.h:30
 TApplicationImp.h:31
 TApplicationImp.h:32
 TApplicationImp.h:33
 TApplicationImp.h:34
 TApplicationImp.h:35
 TApplicationImp.h:36
 TApplicationImp.h:37
 TApplicationImp.h:38
 TApplicationImp.h:39
 TApplicationImp.h:40
 TApplicationImp.h:41
 TApplicationImp.h:42
 TApplicationImp.h:43
 TApplicationImp.h:44
 TApplicationImp.h:45
 TApplicationImp.h:46
 TApplicationImp.h:47
 TApplicationImp.h:48
 TApplicationImp.h:49
 TApplicationImp.h:50
 TApplicationImp.h:51
 TApplicationImp.h:52
 TApplicationImp.h:53
 TApplicationImp.h:54
 TApplicationImp.h:55
 TApplicationImp.h:56
 TApplicationImp.h:57
 TApplicationImp.h:58
 TApplicationImp.h:59