// This may look like C code, but it is really -*- C++ -*-
// Outils de manipulation des PIDrawer  R. Ansari 06/98
// LAL (Orsay) / IN2P3-CNRS  DAPNIA/SPP (Saclay) / CEA

#ifndef PIDRWTOOLS_H_SEEN
#define PIDRWTOOLS_H_SEEN

#include "pisysdep.h"
#include PISTDWDG_H
#include PIOPTMENU_H
#include PIWIN_H
#include PIAPP_H
#include "pibwdggen.h"

// --------- fenetre de dialogue pour modifs axes et options des Drawers ----------
// --------------------------------------------------------------------------------


class PIDrwTools : public PIWindow 
{
public :
  PIDrwTools(PIApplication* par);
  ~PIDrwTools();
  virtual void  Show();

  static PIDrwTools* curlutw;
  static void ShowPIDrwTools();
  static void SetCurrentBaseWdg(PIBaseWdgGen* cbw);
  static PIBaseWdgGen* GetCurrentBaseWdg();

protected:
  virtual void  UpdateAttFromDrawer();
  virtual void  Process(PIMessage msg, PIMsgHandler* sender, void* data=NULL);

private:
// Pour changer les axes
  PILabel* mLab[2];
  PIButton* mBut[2];
  PIText* mText[2];
  PICheckBox* mCkb[3];
// Pour couleur, fontes, etc 
  PIOptMenu* mOpt[6];
  PILabel* mNlb;
  PIButton* mButdr[2];
  PIButton* mButcf[4];
  int mNDr;
  int mtyp, msz;
//
  static PIBaseWdgGen* mCurBW;
  static PIDrwTools* cwdrwt;
};

#endif
