// @(#)root/base:$Name: $:$Id: TVirtualPadEditor.cxx,v 1.0 2003/11/25
// Author: Ilka Antcheva 25/11/03
/*************************************************************************
* 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. *
*************************************************************************/
#include "TROOT.h"
#include "TVirtualPadEditor.h"
#include "TPluginManager.h"
#include "TEnv.h"
#include "TVirtualPad.h"
TVirtualPadEditor *TVirtualPadEditor::fgPadEditor = 0;
TString TVirtualPadEditor::fgEditorName = "";
ClassImp(TVirtualPadEditor)
//______________________________________________________________________________
TVirtualPadEditor::TVirtualPadEditor()
{
// Virtual editor ctor.
}
//______________________________________________________________________________
TVirtualPadEditor::~TVirtualPadEditor()
{
// Virtual editor dtor.
}
//______________________________________________________________________________
TVirtualPadEditor *TVirtualPadEditor::LoadEditor()
{
// Static function returning a pointer to a new pad editor.
// This pointer can be adopted by a TCanvas (i.e. TRootCanvas)
// when it embeds the editor.
TPluginHandler *h;
if (fgEditorName.Length() == 0)
fgEditorName = gEnv->GetValue("Root.PadEditor","Ged");
h = gROOT->GetPluginManager()->FindHandler("TVirtualPadEditor",
fgEditorName);
if (h) {
if (h->LoadPlugin() == -1)
return 0;
return (TVirtualPadEditor*) h->ExecPlugin(1, gPad->GetCanvas());
}
return 0;
}
//______________________________________________________________________________
const char *TVirtualPadEditor::GetEditorName()
{
// Returns the type of the default pad editor. Static method.
return fgEditorName;
}
//______________________________________________________________________________
TVirtualPadEditor *TVirtualPadEditor::GetPadEditor(Bool_t load)
{
// Returns the pad editor dialog. Static method.
if (!fgPadEditor && load)
fgPadEditor = LoadEditor();
return fgPadEditor;
}
//______________________________________________________________________________
void TVirtualPadEditor::SetPadEditorName(const char *name)
{
// Set type of default pad editor. Static method.
if (fgEditorName == name) return;
delete fgPadEditor;
fgPadEditor = 0;
fgEditorName = name;
}
//______________________________________________________________________________
void TVirtualPadEditor::ShowEditor()
{
// Show the pad editor. Static method.
if (!fgPadEditor) GetPadEditor();
fgPadEditor->SetGlobal(kTRUE);
fgPadEditor->Show();
}
//______________________________________________________________________________
void TVirtualPadEditor::HideEditor()
{
// Hide the pad editor. Static method.
if (fgPadEditor)
fgPadEditor->Hide();
}
//______________________________________________________________________________
void TVirtualPadEditor::Terminate()
{
// Close the global pad editor. Static method.
if (!fgPadEditor) return;
fgPadEditor->DeleteEditors();
delete fgPadEditor;
fgPadEditor = 0;
}
//______________________________________________________________________________
void TVirtualPadEditor::UpdateFillAttributes(Int_t color, Int_t style)
{
// Update fill attributes via the pad editor
ShowEditor();
fgPadEditor->FillAttributes(color, style);
}
//______________________________________________________________________________
void TVirtualPadEditor::UpdateTextAttributes(Int_t align, Float_t angle,
Int_t col, Int_t font, Float_t tsize)
{
// Update text attributes via the pad editor
ShowEditor();
fgPadEditor->TextAttributes(align, angle, col, font, tsize);
}
//______________________________________________________________________________
void TVirtualPadEditor::UpdateLineAttributes(Int_t color, Int_t style,
Int_t width)
{
// Update line attributes via the pad editor
ShowEditor();
fgPadEditor->LineAttributes(color, style, width);
}
//______________________________________________________________________________
void TVirtualPadEditor::UpdateMarkerAttributes(Int_t color, Int_t style,
Float_t msize)
{
// Update marker attributes via the pad editor
ShowEditor();
fgPadEditor->MarkerAttributes(color, style, msize);
}
ROOT page - Class index - Class Hierarchy - 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.