Changeset 3525


Ignore:
Timestamp:
03/16/04 18:00:25 (21 years ago)
Author:
tbretz
Message:
*** empty log message ***
Location:
trunk/MagicSoft/Mars/mastro
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/MagicSoft/Mars/mastro/MAstroCamera.cc

    r3519 r3525  
    275275                m->SetMarkerColor(kMagenta);
    276276                m->SetMarkerStyle(kDot);
    277                 fMapG.Add((Long_t)m, 0);
     277                AddMap(m);
    278278            }
    279279            if (h)
     
    308308            gPad->Update();
    309309            return;
     310
    310311        case kKey_Minus:
    311312            fTime->SetMjd(fTime->GetMjd()-0.25/24);
     
    316317        }
    317318
    318     MAstroCatalog::EventInfo(event, mp1, mp2);
    319     //MAstroCatalog::ExecuteEvent(event, mp1, mp2);
    320 }
     319    MAstroCatalog::ExecuteEvent(event, mp1, mp2);
     320}
  • trunk/MagicSoft/Mars/mastro/MAstroCatalog.cc

    r3519 r3525  
    445445    line->SetLineColor(kWhite+type*2);
    446446    line->SetBit(kCannotPick);
    447     fMapG.Add((Long_t)line, 0);
     447    AddMap(line);
    448448
    449449    const TVector2 deg = v*TMath::RadToDeg();
     
    456456    tip->SetBit(kCannotPick);
    457457    tip->SetMarkerColor(kWhite+type*2);
    458     fMapG.Add((Long_t)tip, (Long_t)new TString(txt));
     458    AddMap(tip, new TString(txt));
    459459
    460460    return kTRUE;
     
    585585    tip->SetBit(kCanDelete);
    586586    tip->SetBit(kCannotPick);
    587     fMapG.Add((Long_t)tip, (Long_t)new TString(str));
     587    AddMap(tip, new TString(str));
    588588}
    589589
     
    674674}
    675675
     676void MAstroCatalog::DrawMap()
     677{
     678    Long_t key, val;
     679    TExMapIter map(&fMapG);
     680    while (map.Next(key, val))
     681        ((TObject*)key)->Draw();
     682}
     683
    676684void MAstroCatalog::Draw(Option_t *o)
    677685{
     
    679687    AppendPad(o);
    680688
     689    // If contents have not previously changed make sure that
     690    // all primitives are recreated.
    681691    if (!TestBit(kHasChanged))
    682692        DrawPrimitives(o);
     
    705715void MAstroCatalog::EventInfo(Int_t event, Int_t px, Int_t py, TObject *selected)
    706716{
     717    TCanvas *c = (TCanvas*)gTQSender;
     718
     719    gPad = c ? c->GetSelectedPad() : NULL;
     720    if (!gPad)
     721        return;
     722
    707723    // Try to find a corresponding object with kCannotPick set and
    708724    // an available TString (for a tool tip)
     725    TString *str=0;
    709726    if (!selected || selected==this)
    710727    {
     
    721738
    722739            selected = o;
     740            str = (TString*)val;
    723741            break;
    724742        }
     
    728746        return;
    729747
    730     TCanvas *c = (TCanvas*)gTQSender;
    731 
    732     TVirtualPad* save=gPad;
    733 
    734     gPad = c ? c->GetSelectedPad() : NULL;
    735     if (!gPad)
    736         return;
    737 
    738748    switch (event)
    739749    {
    740750    case kMouseMotion:
    741         {
    742             TString *s = (TString*)fMapG.GetValue((Long_t)selected);
    743             if (!fToolTip->IsMapped() && s)
    744                 ShowToolTip(px, py, *s);
    745         }
     751        if (!fToolTip->IsMapped() && str)
     752            ShowToolTip(px, py, *str);
    746753        break;
    747754
     
    751758        break;
    752759
    753     case kKeyPress: // Unresolved keyboard event
    754         /*
    755         switch (px)
    756         {
    757         case kKey_Plus:
    758         case kKey_Minus:*/
    759             ExecuteEvent(kKeyPress, px, py);/*
    760             break;
    761         }
    762         break;*/
    763     }
    764 
    765     gPad=save;
     760    case kKeyPress:
     761        ExecuteEvent(kKeyPress, px, py);
     762        break;
     763    }
    766764}
    767765
     
    815813    if (event==kKeyPress)
    816814        ExecuteEventKbd(mp1, mp2);
    817 
    818815}
    819816
  • trunk/MagicSoft/Mars/mastro/MAstroCatalog.h

    r3519 r3525  
    3232
    3333    TString fName;
     34
    3435
    3536public:
     
    120121    void ExecuteEvent(Int_t event, Int_t mp1, Int_t mp2);
    121122
     123    void DrawMap();
     124    void AddMap(void *k, void *v=0) { fMapG.Add(fMapG.GetSize(), (Long_t)k, (Long_t)v); }
    122125    void DeleteMap()
    123126    {
     
    142145        }
    143146        fMapG.Delete();
    144     }
    145     void DrawMap()
    146     {
    147         Long_t key, val;
    148         TExMapIter map(&fMapG);
    149         while (map.Next(key, val))
    150             ((TObject*)key)->Draw();
    151147    }
    152148
     
    193189    void Draw(Option_t *o="");
    194190
    195     void EventInfo(Int_t event, Int_t px, Int_t py, TObject *selected=0);
     191    virtual void EventInfo(Int_t event, Int_t px, Int_t py, TObject *selected=0);
    196192
    197193    ClassDef(MAstroCatalog, 1)
Note: See TracChangeset for help on using the changeset viewer.