// @(#)root/gui:$Name: $:$Id: TRootApplication.cxx,v 1.2 2000/06/08 17:16:44 rdm Exp $
// Author: Fons Rademakers 15/01/98
/*************************************************************************
* 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. *
*************************************************************************/
//////////////////////////////////////////////////////////////////////////
// //
// TRootApplication //
// //
// This class create the ROOT native GUI version of the ROOT //
// application environment. This in contrast to the Win32 version. //
// Once the native widgets work on Win32 this class can be folded into //
// the TApplication class (since all graphic will go via TVirtualX). //
// //
//////////////////////////////////////////////////////////////////////////
#include "TRootApplication.h"
#include "TSystem.h"
#include "TString.h"
#include "TGClient.h"
ClassImp(TRootApplication)
//______________________________________________________________________________
TRootApplication::TRootApplication(const char *appClassName,
Int_t *argc, char **argv, void *, Int_t)
{
fAppClassName = StrDup(appClassName);
fDisplay = 0;
GetOptions(argc, argv);
if (!fDisplay)
// Set DISPLAY based on utmp (only if DISPLAY is not yet set).
gSystem->SetDisplay();
fClient = new TGClient(fDisplay);
}
//______________________________________________________________________________
TRootApplication::~TRootApplication()
{
// Delete ROOT application environment.
delete fAppClassName;
delete fDisplay;
delete fClient;
}
//______________________________________________________________________________
void TRootApplication::GetOptions(Int_t *argc, char **argv)
{
// Handle command line arguments. Arguments handled are removed from the
// argument array. Currently only option "-display xserver" is considered.
if (!argc) return;
int i, j;
for (i = 0; i < *argc; i++) {
if (!strcmp(argv[i], "-display")) {
if (argv[i+1] && strlen(argv[i+1]) && argv[i+1][0] != '-') {
fDisplay = StrDup(argv[i+1]);
argv[i] = 0;
argv[i+1] = 0;
i++;
}
}
}
j = 0;
for (i = 0; i < *argc; i++) {
if (argv[i]) {
argv[j] = argv[i];
j++;
}
}
*argc = j;
}
ROOT page - Class index - Top of the page
This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.