GUI crash...

From: Radovan Chytracek (Radovan.Chytracek@cern.ch)
Date: Thu Mar 12 1998 - 23:44:48 MET


Hello ROOTers,

       so I tried to use new GUI in ROOT 2.0. The result is:

Processing xcls.C...

 *** Break *** segmentation violation

( 0)  0xc1378808   StackTrace__11TUnixSystemFv + 0x28
[/afs/cern.ch/user/c/chytrace/public/@sys/root/lib/libUnix.sl]
( 1)  0xc1377278   DispatchSignals__11TUnixSystemF8ESignals + 0x150
[/afs/cern.ch/user/c/chytrace/public/@sys/root/lib/libUnix.sl]
( 2)  0xc1375cb0   SigHandler__F8ESignals + 0x28
[/afs/cern.ch/user/c/chytrace/public/@sys/root/lib/libUnix.sl]
( 3)  0xc137a240   sighandler__Fi + 0x58
[/afs/cern.ch/user/c/chytrace/public/@sys/root/lib/libUnix.sl]
( 4)  0xc012f2e0   _sigreturn  [/usr/lib/libc.1]
( 5)  0xc2001934   G__basedestructor + 0xac
[/afs/cern.ch/user/c/chytrace/public/@sys/root/lib/libCint.sl]
( 6)  0xc1fdf8a4   G__getfunction + 0x76c
[/afs/cern.ch/user/c/chytrace/public/@sys/root/lib/libCint.sl]
( 7)  0xc2032f24   G__free_tempobject + 0x17c
[/afs/cern.ch/user/c/chytrace/public/@sys/root/lib/libCint.sl]
( 8)  0xc2037940   G__exec_statement + 0x2af0
[/afs/cern.ch/user/c/chytrace/public/@sys/root/lib/libCint.sl]
( 9)  0xc1ffe36c   G__interpret_func + 0x1dec
[/afs/cern.ch/user/c/chytrace/public/@sys/root/lib/libCint.sl]
(10)  0xc1fdf82c   G__getfunction + 0x6f4
[/afs/cern.ch/user/c/chytrace/public/@sys/root/lib/libCint.sl]
(11)  0xc201d1ac   G__new_operator + 0x34c
[/afs/cern.ch/user/c/chytrace/public/@sys/root/lib/libCint.sl]
(12)  0xc1fd9564   G__getpower + 0x294
[/afs/cern.ch/user/c/chytrace/public/@sys/root/lib/libCint.sl]
(13)  0xc1fc7d34   G__define_var + 0x19dc
[/afs/cern.ch/user/c/chytrace/public/@sys/root/lib/libCint.sl]
(14)  0xc205fab8   G__defined_type + 0x488
[/afs/cern.ch/user/c/chytrace/public/@sys/root/lib/libCint.sl]
(15)  0xc2036c3c   G__exec_statement + 0x1dec
[/afs/cern.ch/user/c/chytrace/public/@sys/root/lib/libCint.sl]
(16)  0xc1fc3d48   G__exec_tempfile + 0x1f0
[/afs/cern.ch/user/c/chytrace/public/@sys/root/lib/libCint.sl]
(17)  0xc203dd10   G__process_cmd + 0x4078
[/afs/cern.ch/user/c/chytrace/public/@sys/root/lib/libCint.sl]
(18)  0xc1aca914   ProcessLine__5TCintFPCc + 0xac
[/afs/cern.ch/user/c/chytrace/public/@sys/root/lib/libMeta.sl]
(19)  0xc1acaa40   ProcessLineSynch__5TCintFPCc + 0x78
[/afs/cern.ch/user/c/chytrace/public/@sys/root/lib/libMeta.sl]
(20)  0xc20eaca8   ProcessFile__12TApplicationFPCc + 0x658
[/afs/cern.ch/user/c/chytrace/public/@sys/root/lib/libBase.sl]
(21)  0xc20ea500   ProcessLine__12TApplicationFPCc + 0x478
[/afs/cern.ch/user/c/chytrace/public/@sys/root/lib/libBase.sl]
(22)  0xc1389e88   Run__5TRintFUc + 0x148
[/afs/cern.ch/user/c/chytrace/public/@sys/root/lib/libRint.sl]
(23)  0x000045c4   main + 0x94
[/afs/cern.ch/user/c/chytrace/public/@sys/root/bin/root.exe]
(24)  0xc006017c   _start + 0x8c  [/usr/lib/libc.1]
(25)  0x00003ecc   $START$ + 0x134
[/afs/cern.ch/user/c/chytrace/public/@sys/root/bin/root.exe]

In attachments are sources of my macros.

Happy ROOTing

		Radovan



{
// First interactive GUI interface in ROOT

class TGRadoFrame : TGMainFrame {

private:

    TGButton    *fRb;

public:

    TGRadoFrame( const TGWindow *p, UInt_t w, UInt_t h );
    virtual ~TGRadoFrame();
    virtual void CloseWindow();
    virtual Bool_t ProcessMessage( Long_t msg, Long_t parm1, Long_t );
};

TGRadoFrame::TGRadoFrame( const TGWindow *p, UInt_t w, UInt_t h )
            : TGMainFrame( p, w, h )
{
    fRb = new ::TGPictureButton( this,
                               gClient->GetPicture("beeravatar.xpm"),
                               ".x RMeth.C",
                               1
                             );
    fRb->Associate(this);                           

    MapSubwindows();

    Resize(GetDefaultSize());

    SetWindowName("Rado ROOT App");

    MapWindow();
}

TGRadoFrame::~TGRadoFrame()
{
    delete fRb;
}

TGRadoFrame::void CloseWindow()
{
    TGMainFrame::CloseWindow();
}

TGRadoFrame::Bool_t ProcessMessage( Long_t msg, Long_t parm1, Long_t )
{
    switch( GET_MSG(msg) )
        {
        case kC_COMMAND:
            switch( GET_SUBMSG(msg) )
                {
                case kCM_BUTTON:
                    switch( parm1 ):
                        {
                        case 1 :
                                break;

                        default:
                        }
                    break;

                default        :
                }
            break;
        
        default:
        }
    return( kTRUE );
}

}

{
//----------------------------------------

gROOT.LoadMacro("TGRadoFrame.C");

TGRadoFrame *mw = new TGRadoFrame( gClient->GetRoot(), 100, 100 );

return( 0 );
}

//----------------------------------------
}



This archive was generated by hypermail 2b29 : Tue Jan 04 2000 - 00:34:31 MET